/** 基本構築 **/
html {
}
/** 追加 **/
.info_sc {
    max-width: 800px;
    height: 300px;
    margin: 0px auto;
    overflow: scroll;
}

/** 追加ここまで **/
body {
    font-family: "Rounded Mplus 1c";
    margin: 0;
    letter-spacing: 0.05em;
    color: #2d2d2d;
    background:#f9f9f9;
    background-image: -webkit-radial-gradient(#ffdddd 12%, transparent 0), radial-gradient(#ffef9f 11%, transparent 0);
    background-image: radial-gradient(#ffdddd 12%, transparent 0), radial-gradient(#ffef9f 11%, transparent 0);
    background-position: 0 0, 10px 10px;
    -webkit-background-size: 20px 20px;
    background-size: 20px 20px;
}
img{
	outline:none;
	border-style:none;
}

a{
    color:blue;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
	text-decoration:none;
}
a:visited{
    color:blue;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}
a:hover {
    color: #c1261c;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

header {
    background-image: url(images/background-ab.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 350px;
	margin-top: 60px;
}

article {
	width:100%;
}
ul {
	list-style-type:none;
}
li {
	list-style-type:none;
	text-indent:0;
}
li a {
	text-indent:0;
}

.half {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
p {
	text-align:center;
	margin:20px 0px;
}
br.clear {
	clear:both;
}


#wrap {
	width:100%;
	margin:0px auto;
}


h1 {
	color: #5fb7da;
    font-size:24px;
    text-shadow: 1px 1px 1px #04386d;
    text-align: center;
    height: 250px;
    line-height: 250px;
    font-family: "Rounded Mplus 1c";
}


.contents {
	min-height:1200px;
}



/**** ナビゲーション ****/
nav {
	position: fixed;
    top: 0;
	font-size:11px;
    width: 100%;
    height: 60px;
    line-height: 60px;
    background-color: rgba(41, 173, 236, 0.8);
	z-index:999;
}

ul.main_nav {
    display: flex;
	-webkit-display: flex;
	-moz-display: flex;
	-ms-display: flex;
	-o-display: flex;
    justify-content: space-around;
	font-family: "Rounded Mplus 1c";
}
/**
ul.main_nav::after {
	content: 'ひだまり';
    color: #fff;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 0px;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 0px 0px 50px 50px;
    background-color: rgba(239, 111, 4, 0.8);
    width: 115px;
    height: 50px;
    line-height: 47px;
}
**/

.main_nav li {
}
.main_navi li.nodis {
	dislay:none;
}
.main_nav li a {
	color:#fff;
	position: relative;
	display: inline-block;
	text-decoration: none;
}
.main_nav li a:hover {
    color: #fff;
}
.main_nav li a::after {
	position: absolute;
	bottom: 15px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #fff;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
.main_nav li a:hover::after {
	transform: scale(1, 1);
}

/**** 見出し ****/
h2.title_sea {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 26px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h2.title_sea::after {
	content: '';
    border-bottom: 7px dotted #02cbef;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}
h2.title_mount {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 26px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h2.title_mount::after {
	content: '';
    border-bottom: 7px dotted #12bb49;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}
h3.title {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 26px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h3.title::after {
	content: '';
    border-bottom: 7px dotted #fd20d7;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}
h4.title {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 26px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h4.title::after {
	content: '';
    border-bottom: 7px dotted #adadad;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}

/**** セクション集 ****/
section.sea {
	position:relative;
    padding-top: 42px;
	box-sizing:border-box;
	overflow:hidden;
}
section.mount {
	position:relative;
    padding-top: 42px;
	box-sizing:border-box;
	overflow:hidden;
}
section.infomation {
	min-height:350px;
	background-color:#fff;
	overflow:hidden;
}

section.eninfo {
	width:100%;
	height:500px;
	background: url("images/eninfo_back.jpg") no-repeat fixed center center /cover;
}
/** スマホ対応 **/
section.eninfo:before {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    z-index: -1;
}
/* スマホの場合は同じ要素の背景画像を変更する */
section.eninfo.bgA:before {
    background-image: url("images/eninfo_back.jpg");
}
.eninfo p.entitle {
	color: #fff;
    text-shadow: 1px 1px 1px #000;
    line-height: 500px;
    font-size: 32px;
    letter-spacing: 0.1em;
}
/**** テーブル ****/
table.detail {
    width: 99%;
    margin: 0px auto;
    font-size: 14px;
    letter-spacing: 0.1em;
    background-color: rgba(214, 214, 214, 0.5);
    border-radius: 15px;
    margin-bottom: 100px;
}
.detail th {
	display: block;
    border: 1px #fff solid;
    /* border-bottom: 0; */
    padding: 17px;
    width: 100%;
    box-sizing: border-box;
    min-height: 45px;
    vertical-align: middle;
    -moz-text-align-last: justify;
    text-align: left;
	background-color: rgba(197, 197, 197, 0.8);
    border-radius: 5px;
}
.detail td {
	display: block;
    border: 1px #fff solid;
    /* border-bottom: 0; */
    /* border-right: 0; */
    padding: 17px;
    box-sizing: border-box;
    width: 100%;
    min-height: 45px;
    /* line-height: 35px; */
    /* vertical-align: middle; */
    text-align: left;
}
.detail a {
	color:#000;
}
/**** アニメーション ****/
#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #02cbef;
  z-index: 100000;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 200000;
}


img.cloud_ani {
    position: absolute;
    top: 5%;
    left: -14%;
	animation-name: clouds;
	animation-duration: 3s;
	animation-timing-function: ease;
	animation-iteration-count: infinite;
}
@keyframes clouds {
    0%{
        -ms-transform:translateY(-10px);
        -webkit-transform:translateY(-10px);
        transform:translateY(-10px);
    }
    54%{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
    }
	100%{
        -ms-transform:translateY(-10px);
        -webkit-transform:translateY(-10px);
        transform:translateY(-10px);
    }
}
img.sun_ani {
	position: absolute;
	top: 2%;
    left: 73%;
	animation-name: suns;
	animation-duration: 3s;
	animation-timing-function: ease;
	animation-iteration-count: infinite;
}
@keyframes suns {
    0%{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
    }
    60%{
        -ms-transform:translateY(-10px);
        -webkit-transform:translateY(-10px);
        transform:translateY(-10px);
    }
	100%{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
    }
}

.fade-in-up-ky {
    -webkit-animation: fade-in-up-ky 2s ease 0s 1 forwards;
    animation: fade-in-up-ky 2s ease 0s 1 forwards;
}
@keyframes fade-in-up-ky {
    from{
        -ms-transform:translateY(30px);
        -webkit-transform:translateY(30px);
        transform:translateY(30px);
		opacity:0;
    }
    to{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
		opacity:1;
    }
}



.fade-in-ky {
    -webkit-animation: fade-in-ky 2s ease 0s 1 forwards;
    animation: fade-in-ky 2s ease 0s 1 forwards;
}
@keyframes fade-in-ky {
    from{
		opacity:0;
    }
    to{
		opacity:1;
    }
}


#page-top_bt {
    color: #fff;
    opacity: 0.8;
    transition: opacity 1s;
    z-index: 2;
    background-color: #dc0101;
    font-size: 17px;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 20px;
}
#page-top_bt.fade-in {
    color: #000;
    opacity: 0.6;
    transition: opacity 1s;
}

/**** フッター ****/
footer {
	position:relative;
	width: 100%;
    height: 66px;
    background-color: #56bcef;
    color: #fff;
    padding: 20px;
    box-sizing: border-box;
}
p.copyright {
	position:absolute;
	bottom:0;
	right:0;
	left:0;
}
p.news {
    width: 93%;
    margin: 0px auto;
    line-height: 24px;
    background-color: #e3f6ff;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 24px;
    text-align: left;
}
.text_wrap {
    width: 93%;
    margin: 0px auto;
    line-height: 24px;
    background-color: #f7f7f7;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 24px;
    text-align: left;
}
p.text {
    text-align: left;
}
/**********************************************************************************************************************************************************************************************************************************************************************************************/


@media screen and (min-width:718px) {
body {
    font-family: "Rounded Mplus 1c";
    margin: 0;
    letter-spacing: 0.05em;
    color: #2d2d2d;
    background:#f9f9f9;
    background-image: -webkit-radial-gradient(#ffdddd 12%, transparent 0), radial-gradient(#ffef9f 11%, transparent 0);
    background-image: radial-gradient(#ffdddd 12%, transparent 0), radial-gradient(#ffef9f 11%, transparent 0);
    background-position: 0 0, 10px 10px;
    -webkit-background-size: 20px 20px;
    background-size: 20px 20px;
}
img{
	outline:none;
	border-style:none;
}

a{
    color:blue;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
	text-decoration:none;
}
a:visited{
    color:blue;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}
a:hover {
    color: #c1261c;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

header {
    background-image: url(images/background-ab.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 350px;
	margin-top: 60px;
}

article {
	width:100%;
}
ul {
	list-style-type:none;
}
li {
	list-style-type:none;
	text-indent:0;
}
li a {
	text-indent:0;
}

.half {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
p {
	text-align:center;
	margin:20px 0px;
}
br.clear {
	clear:both;
}


#wrap {
	width:100%;
	margin:0px auto;
}


h1 {
	color: #5fb7da;
    font-size:32px;
    text-shadow: 1px 1px 1px #04386d;
    text-align: center;
    height: 280px;
    line-height: 280px;
	padding-top:30px;
	box-sizing:border-box;
    font-family: "Rounded Mplus 1c";
}


.contents {
	min-height:1200px;
}



/**** ナビゲーション ****/
nav {
	position: fixed;
    top: 0;
    width: 100%;
    height: 60px;
    line-height: 60px;
    background-color: rgba(41, 173, 236, 0.8);
	z-index:999;
}

ul.main_nav {
    display: flex;
	-webkit-display: flex;
	-moz-display: flex;
	-ms-display: flex;
	-o-display: flex;
    justify-content: space-around;
	font-family: "Rounded Mplus 1c";
	font-size:16px;
}
/**
ul.main_nav::after {
	content: 'ひだまり';
    color: #fff;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 0px;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 0px 0px 50px 50px;
    background-color: rgba(239, 111, 4, 0.8);
    width: 115px;
    height: 50px;
    line-height: 47px;
}
**/

.main_nav li {
}
.main_navi li.nodis {
	dislay:block;
}
.main_nav li a {
	color:#fff;
	position: relative;
	display: inline-block;
	text-decoration: none;
}
.main_nav li a:hover {
    color: #fff;
}
.main_nav li a::after {
	position: absolute;
	bottom: 15px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #fff;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
.main_nav li a:hover::after {
	transform: scale(1, 1);
}

/**** 見出し ****/
h2.title_sea {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 32px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h2.title_sea::after {
	content: '';
    border-bottom: 7px dotted #02cbef;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}
h2.title_mount {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 32px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h2.title_mount::after {
	content: '';
    border-bottom: 7px dotted #12bb49;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}
h3.title {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 32px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h3.title::after {
	content: '';
    border-bottom: 7px dotted #fd20d7;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}
h4.title {
	position:relative;
	text-align: center;
    height: 170px;
    line-height: 170px;
    font-size: 32px;
    font-weight: bold;
    color: #636363;
    font-family: "Rounded Mplus 1c";
    text-shadow: 1px 1px 3px #ccc;
}
h4.title::after {
	content: '';
    border-bottom: 7px dotted #adadad;
    text-align: center;
    margin: 0px auto;
    position: absolute;
    top: 90px;
    right: 0;
    bottom: 0;
    left: 0;
    /* border-radius: 0px 0px 50px 50px; */
    /* background-color: rgba(239, 111, 4, 0.8); */
    width: 115px;
    height: 47px;
    line-height: 47px;
}

/**** セクション集 ****/
section.sea {
	position:relative;
	padding-top:135px;
	box-sizing:border-box;
}
section.mount {
	position:relative;
	padding-top:135px;
	box-sizing:border-box;
}
section.infomation {
	min-height:350px;
	background-color:#fff;
}

/**** テーブル ****/
table.detail {
    width: 600px;
    margin: 0px auto;
    font-size: 16px;
    letter-spacing: 0.1em;
    background-color: rgba(214, 214, 214, 0.5);
    border-radius: 15px;
    margin-bottom: 100px;
}
.detail th {
    border: 1px #fff solid;
    border-bottom: 0;
    padding: 5px 20px;
    width: 129px;
    box-sizing: border-box;
    height: 45px;
    vertical-align: middle;
    -moz-text-align-last: justify;
    text-align-last: justify;
    display: table-cell;
}
.detail td {
	border: 1px #fff solid;
    border-bottom: 0;
    border-right: 0;
    padding: 5px;
    box-sizing: border-box;
    height: 45px;
    vertical-align: middle;
	width: 500px;
    display: table-cell;
}
.detail a {
	color:#000;
}
/**** アニメーション ****/
#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #02cbef;
  z-index: 100000;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 200000;
}


img.cloud_ani {
    position: absolute;
    top: 14%;
    left: 28%;
	animation-name: clouds;
	animation-duration: 3s;
	animation-timing-function: ease;
	animation-iteration-count: infinite;
}
@keyframes clouds {
    0%{
        -ms-transform:translateY(-10px);
        -webkit-transform:translateY(-10px);
        transform:translateY(-10px);
    }
    54%{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
    }
	100%{
        -ms-transform:translateY(-10px);
        -webkit-transform:translateY(-10px);
        transform:translateY(-10px);
    }
}
img.sun_ani {
	position: absolute;
	top: 6%;
    left: 59%;
	animation-name: suns;
	animation-duration: 3s;
	animation-timing-function: ease;
	animation-iteration-count: infinite;
}
@keyframes suns {
    0%{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
    }
    60%{
        -ms-transform:translateY(-10px);
        -webkit-transform:translateY(-10px);
        transform:translateY(-10px);
    }
	100%{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
    }
}

.fade-in-down-ky {
    -webkit-animation: fade-in-down-ky 2s ease 0s 1 forwards;
    animation: fade-in-down-ky 2s ease 0s 1 forwards;
}
@keyframes fade-in-down-ky {
    from{
        -ms-transform:translateY(-30px);
        -webkit-transform:translateY(-30px);
        transform:translateY(-30px);
		opacity:0;
    }
    to{
        -ms-transform:translateY(0);
        -webkit-transform:translateY(0);
        transform:translateY(0);
		opacity:1;
    }
}


#page-top_bt {
    color: #fff;
    opacity: 0.8;
    transition: opacity 1s;
    z-index: 2;
    background-color: #dc0101;
    font-size: 17px;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 20px;
}
#page-top_bt.fade-in {
    color: #000;
    font-size: 60px;
    opacity: 0.6;
    transition: opacity 1s;
}

/**** フッター ****/
footer {
	position:relative;
	width: 100%;
    height: 66px;
    background-color: #56bcef;
    color: #fff;
    padding: 20px;
    box-sizing: border-box;
}
p.copyright {
	position:absolute;
	bottom:0;
	right:0;
	left:0;
}
p.news {
    width: 60%;
    margin: 0px auto;
    line-height: 24px;
    background-color: #e3f6ff;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 24px;
    text-align: left;
}
.text_wrap {
    width: 60%;
    margin: 0px auto;
    line-height: 24px;
    background-color: #f7f7f7;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 24px;
    text-align: left;
}
p.text {
    text-align: left;
}
}