@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


@charset "utf-8";
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form, label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main,summary,time,mark,audio,video,a,input,textarea{ margin:0;padding:0; border:0; font-size:100%; background:transparent; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main{ display:block;}
nav ul{ list-style:none;}
blockquote,q{ quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{ content:''; content:none;}
pre,code,kbd,samp{ font-family:monospace,monospace; font-size:inherit;}
table{ border-collapse:collapse; border-spacing:0;}
img{ border:0;}
address,caption,cite,code,dfn,em,th,var{ font-style:normal; font-weight:normal;}
caption,th{ text-align:left;}
h1,h2,h3,h4,h5,h6{ font-size:100%; font-weight:normal}
sup{ vertical-align:text-top; font-size:75%;}
sub{ vertical-align:text-bottom; font-size:75%;}
input,textarea,select{ z-index:auto; font-family:inherit; font-size:inherit; font-weight:inherit; vertical-align:middle;}
a{ outline:none;}
audio:not([controls]){ display:none;}
time{ display:inline;}
[hidden]{ display:none;}
input::-ms-clear,input::-ms-reveal,input:focus::-ms-clear,input:focus::-ms-reveal{visibility:hidden; display:none;}
button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner{ padding:0; border:0;}
button{cursor:pointer;}

/* ===== Common ===== */
body,input,button,select,textarea{-webkit-text-size-adjust:100%; -webkit-font-smoothing:antialiased; line-height:1; color:#444;}
a:link{ color:#00ada9; text-decoration:none;}
a:visited{ color:#00ada9; text-decoration:underline !important;}
a:hover{ color:#00ada9; text-decoration:none;}
a:active{ color:#00ada9;}
*{-webkit-tap-highlight-color:rgba(0,0,0,0);}
.clr{clear:both;}
section {clear:both; zoom:1;}
article:after,section:after,.clrFx:after{content:''; clear:both; display:block;}
a,button{transition:all .2s ease-in;}
a img{transition:all .3s ease-in;}
a:hover img{opacity:0.7;}
.aCt{text-align:center;}
.mCt{margin: 0 auto;}
.aLt{text-align:left;}
.aRt{text-align:right;}
.fLt{float:left;}
.fRt{float:right;}
.sp{display:none !important;}
.pc{display:block !important;}
.tetB{font-size: 1.25rem;}
.tetBg{font-size: 2.0rem;}
.txtR{color: #ff0000;}

@media screen and (min-width:768px){
.spbr{display:none;}
.pcbr{display:inline;}
}

/* ===== Font ===== */
body,button,select,section,#siteHeader,article h1,article h2,article h3,h1.titH1,
article h4,footer nav ul,.topWhat,.topNew{font-family:"Noto Sans JP", "Noto Sans","Hiragino Kaku Gothic ProN","Meiryo", Arial,sans-serif;}


/* ===== Base ===== */
#wrapper{min-width:1285px; background:url("../img/bg.jpg") top center repeat; background-size: cover;}
.spToggle{display:none;}
#siteHeader{z-index: 100; width: 100%; background:#00ada9; height: 21px; min-width: 1285px;}
#siteHeader img{width: 100%;}
#siteHeader .headNav{min-width: 1285px; padding: 80px 0;}
#siteFooter{background:#00ada9; text-align:center; color:#fff; padding:10px 0 40px 0; min-width: 1200px;}
#siteFooter nav ul{}
#siteFooter .footwrap{max-width:1285px; margin: 0 auto; text-align: left;}
#siteFooter .footwrap p{line-height: 1.6; margin-bottom: 15px; font-size: 0.85rem;}
#siteFooter .footwrap p:last-child{margin: 0px;}
#siteFooter a:link,footer a:visited,footer a:hover{color:#fff; text-decoration: none;}
#siteFooter address{font-size:16px; margin-top:20px;}
#siteFooter p{margin-bottom: 20px;}
.footMenu{background:#00ada9; padding: 30px 0;  min-width: 1285px; }
.footMenu .footMenuCont{margin: 0 auto; padding:20px;max-width: 1285px;}
.footMenu .footMenuCont nav ul{margin-bottom: 0px !important; font-size: 1.0rem; font-weight: bold;}
.footMenu .footMenuCont nav ul li{display:inline-flex; position:relative; padding-right:20px; line-height: 1.4; margin-bottom:10px; }
.footMenu .footMenuCont nav ul li:last-child{ padding-right:0px;}
.footMenu .footMenuCont nav ul li:last-child:after{content:"";}
.footMenu .footMenuCont nav ul li a{color: #fff;}
.footMenu .footMenuCont nav ul li a:hover{color: #fff; text-decoration: none;}
nav.gNav{ font-weight: bold; width: 100%; }
nav.gNav ul{padding-left: 0px; margin-bottom: 0px;}
nav.gNav ul li{font-size: 1.15rem; line-height: 1.2; text-align: left; border-bottom:2px solid #1a6aa7;}
nav.gNav ul li a{text-decoration: none; padding: 20px 23px; width:100%; height: 100%;  color: #333; display: block; line-height: 1.7; }
nav.gNav ul li a small{display:block;}
nav.gNav ul li a span{padding-top: 15px;}
nav.gNav ul li a span.navBt{padding-top: 25px;}
nav.gNav ul li a:hover{background: #1a6aa7; color: #fff;}
nav.gNav ul li a.active{background: #1a6aa7; color: #fff;}
.pageWrap {display: flex; flex-direction: row;max-width: 1285px; margin: 0 auto; padding: 0 0px 50px 0px; background:#fff;}
.pageWrap aside {width:337px;}
.pageWrap aside .bnr{margin:20px 0; padding: 0 20px;}
.pageWrap aside .listLink{margin-bottom:20px;  padding: 0 20px;}
.pageWrap aside .listLink ul{margin-left:0.2em; list-style: none;}
.pageWrap aside .listLink ul li img{margin-bottom:10px; text-align: center; display: block;}
.pageWrap aside .listLink ul li fas{color: #15649d; font-size:1.5em;}
.pageWrap aside .listLink ul li a{margin-left:12px; color: #333;}
.pageWrap aside .listLink ul li a:hover{margin-left:12px; color: #333; text-decoration:underline;}
.pageWrap article{ flex: 1; min-width: 0; }

section{padding:20px 0px;}
.pageCont .pageWrap section p,.pageCont ul,.pageCont ol{font-size: 1.2rem; line-height: 1.8;}
.pageCont .pageWrap ul li,.pageCont .pageWrap ol li{margin-bottom: 40px;}
.titP{font-size: 1.8rem; text-align: center; color: #166ca9;}

article strong{font-weight:bold;}
article h1{font-size:3.0rem; margin-bottom:70px; line-height: 1.5; }
article h1 small{font-size: 2.0rem;}
article h2{font-size:2.3rem; margin-bottom:50px; line-height: 1.5; color: #333; font-weight: bold;}
article h3{font-size:1.5625rem; margin-bottom:20px; color:#166ca9;}
article h4{font-size:1.35rem; margin-bottom:25px; }
article h2 small{display: block; font-size:1.56rem;}
h1.titH1{position: relative; padding-left: 25px; font-size:2.3rem; margin-bottom:50px; font-weight:bold;}
h1.titH1:before{position: absolute; left: 0px; top: 0px; width: 8px; height: 100%; content: ""; border:8px solid #00ada9; box-sizing: border-box;}
h1.titH1 small{display: block; font-size: 1.3rem;}
article h2.titH2h3,article h3.titH3{font-size:1.8rem; margin-bottom:30px; line-height: 1.5; color: #333; font-weight: bold; border-bottom:3px solid #00ada9;}

article p{line-height:1.7; margin-bottom: 30px;}
article p:last-child{margin-bottom: 0px;}
section ul,section ol{margin:0px 0 40px 1.5em; line-height:1.5;}
section ul li,section ol li{margin-bottom: 5px;}
section ul li:last-child,section ol li:last-child{margin-bottom: 5px;}
article .listMd{line-height:1.7; margin-bottom:30px; font-size: 1.1rem;}
article .listMd dt{font-weight:bold; color:#166ca9; }
article .listMd dd{border-bottom:1px solid #166ca9; margin-bottom:20px; position:relative;}
article .fLt{margin:0 20px 20px 0px;}
article .fRt{margin:0 0px 20px 20px;}
article figure{margin-bottom: 30px;}
article figure figcaption{font-size:15px; padding-top: 5px; text-align: center;}
article .mc{display:flex; flex-wrap:wrap; justify-content:space-between;}
article .mc .col{margin-bottom:30px; /*flex: auto !important;*/}
article .mc .col img{width: 100%; height: auto;}
article .mc .col img.def{width: auto; height: auto;}
article .mc.duo .col{width:calc(50% - 10px);}
article .mc.trio .col{width:calc(33.5% - 15px);}
article .mc.trio .col.g2{width:calc(66% - 15px);}
article .mc.fort .col.g3{width:calc(75% - 15px);}
article .mc.fort .col{width:calc(25% - 15px);}
article .mc.fort .col img{width: 100%; height: auto;}
article .smWrap{max-width: 500px; margin: 0 auto 50px auto;}
article .btn.rt{position:absolute; top:50%; right:30px; margin-top:-30px;}
article a.btn.mCt span,
article a.btn.mCt{margin:20px auto 20px auto;}
article .col a.btn{width: 100%; margin: 0px;}
article a.btn {background:#166ca9; color:#FFFFFF; width:350px; padding:20px; display:block; margin:40px 0 55px 0; text-align:center; text-decoration: none; border-radius: 10px;transition:all 1.0s; font-weight: bold; box-shadow: inset 0 1px 0 #008C64,inset 0 0 40px 5px rgba(0,0,0,.3),0 0 2px 1px rgba(0,0,0,.5);}
article a.btn:hover{text-decoration:none; background:#00ada9; color: #fff; box-shadow: none;}
article a.btn.btnB{width: 600px;}
article .col a.btn{width: 100%;}
article table{margin-bottom:40px; width:100%;}
article table th,article table td{border:1px solid #404040; padding:20px; line-height:1.5;}
article table th{background:#c6c6c6; font-weight:bold;}
article table tbody th{background:#f3f3f3;}
article table td p{margin-bottom: 15px;}
article table td p:last-child{margin-bottom: 0px;}
article table.gr tr:nth-child(2n){background:#F8F8F8;}
article .noteCont{background:#fff799; padding: 25px; margin:40px 0;}
article .noteCont h3{font-size: 1.5rem; margin-bottom: 30px; color: #444; font-weight: bold;}
article .noteCont p,article .noteCont ul{margin-bottom: 25px;}
article .noteCont p:last-child,article .noteCont ul:last-child{margin-bottom: 0px;}
article .mc.trio .col:after{content:''; clear:both; display:block;}
.map iframe{width:100%;}
.breadcrumbs{max-width: 1285px; margin:20px auto 0px auto;  line-height: 30px;}
.breadcrumbs ul{list-style: none; font-size: 1.0rem; margin-left: 0px;}
.breadcrumbs ul li{display: inline-block; position: relative; padding-right: 20px;}
.breadcrumbs ul li:after{content:">"; position: absolute; top: 0px; right: 0px; }
.breadcrumbs ul li:last-child{font-weight: bold;}
.breadcrumbs ul li:last-child:after{content: "";}
.breadcrumbs .langCont{text-align:right; display:flex; justify-content:flex-end; margin-right: 10px; align-items: center;}
.breadcrumbs .langCont i{color: #166ca9; font-size: 1.25rem;}
.breadcrumbs p{text-align: right; margin-bottom: 0px; font-weight: bold; margin-right: 5px;}


/* ===== Top ===== */
#kv{text-align: center; margin-bottom: 66px;}
#kv img{width: 100%; height: auto;}
.topWhat h2{font-weight: bold; color: #166ca9; margin-bottom: 80px; font-size:20px;}
.topWhat p{font-weight: bold; font-size: 1.5rem; color: #333;}
.topNew{padding:0 20px 80px 20px;}
.topNew section{padding: 0px;}
.topNew h2.titN{font-weight: bold; font-size: 1.5rem;  color: #166ca9; margin-bottom: 40px; border-bottom: 2px solid #166ca9;}
.topNew .newCont {color: #333; margin: 0; position: relative; z-index: 1; }
.topNew .newCont dl.newslist{justify-content:flex-start; flex-wrap:wrap; display: flex;  color: #333; font-size: 1.15rem; line-height: 1.5;}
.topNew .newCont dl.newslist small{font-size:0.9rem;}
.topNew .newCont dl.newslist dt{width:15%; border-bottom: 2px solid #166ca9; margin-bottom: 20px;}
.topNew .newCont dl.newslist dd{width:80%; padding-left:20px; border-bottom: 2px solid #166ca9; margin-bottom: 20px;}
.topNew .newCont a:link{color: #333;}
.topNew .newCont a:visited{ color:#333; text-decoration:none !important;}
.topNew .newCont a:hover{color: #333; text-decoration: underline;}
.topCont,.contBg{padding: 20px; margin-bottom: 50px;}
.gImg img{border-radius:150px;}
ol.maru-list {counter-reset: maru;}
ol.maru-list li,ul.list li{margin-bottom: 10px;}
ol.maru-list li:last-child,ul.list:last-child{margin-bottom: 0px;}
.videoBox{margin-bottom: 40px;}

@media screen and (max-width:768px){
#wrapper,#kv{min-width:320px; }
.footMenu .footMenuCont{padding: 40px 0px 80px 0px;}
.footMenu .footMenuCont nav ul li{margin-bottom:10px !important;}
article h2{font-size:1.9rem; margin-bottom:50px; line-height: 1.6;}
article h2 small{font-size: 1.3rem;}
article h3{line-height: 1.6;}
.topPage,.pageCont{padding-top: 0px;}
.sp{display:block !important;}
.pc{display:none !important;}
.fLt,.fRt{float: none;}
article .fLt{margin:0 0px 20px 0px;}
article .fRt{margin:0 0px 20px 0px;}
article img{width:100%; height:auto;}
article img.def{width: auto; height: auto;}
article a.btn.btnB{width:100%;}
section,article .pageWrap section{padding:0px 10px; min-width: 320px;}
article .mc{display:block;}
article .mc .col{margin-bottom:30px;}
article .mc.duo .col,article .mc.trio .col.g2,article .mc.fort .col.g2,
article .mc.fort .col,article .mc.trio .col{width:100%;}
article .mc.duo .col.btn{margin: 20px 0;}
article .mc.gPhoto{display:flex; flex-wrap:wrap; justify-content:space-between;}
article .mc.gPhoto .col{width:50%;}

article .btn.rt{position:static; top:auto; right:auto; margin-top:0px;}
article .btn span,
article .btn a{width:100%; padding:20px 10px;}
article .btn.bgbtn a{width: 100%;}
article.top{padding-top:25px;}
#siteHeader{height:auto; position: relative; z-index: 5;}
#siteHeader p.siteLogo{width: 250px; z-index: 5; height: 50px;}
#siteHeader .headNav{padding: 50px; color:#166ca9; min-width: 320px; height: 70px;}
.spToggle a,
.spToggle a.open{background-image:url(../img/sprite.png);  background-size:500px auto; width:40px; height:40px; display:block; position:absolute; right:10px; top:15px; text-indent:-9999px; z-index:2000;}
.spToggle{ display:block;}
.spToggle a{background-position:0 0px;}
.spToggle a.open{background-position:-50px 0px ;}
nav.gNav{position:static; top:auto; right:auto; margin:0px; background: none;}
nav.gNav ul{z-index:1000; position:fixed; top: 0px; left: 0px; background:#166ca9; height:100%; width:100%; padding-top:70px; display: none;}
nav.gNav ul li{width:100%; padding: 0px; display:block; height: auto;}
nav.gNav ul li a{padding: 15px; border: 1px solid #fff;  color:#fff; border-top: 0px; display: block; justify-content: center; align-items: center;}
.pageCont .spToggle a{top:20px;}
.pageCont .spToggle a.open{top: 10px;}
.pageWrap {display:block;padding:0px 0px 50px 0px; }
	.pageWrap .sphead{background: #00ada9; padding: 70px 0 0 0;}
.pageWrap aside {width:100%;}
.pageWrap article{ flex:auto; min-width: 0; }
.pageWrap aside .bnr{}
.pageWrap aside .listLink{}

#siteFooter .footwrap{padding:20px;}
#siteFooter,.footMenu{min-width: 320px; padding:30px 15px;} 
#slider{width: 100%; min-width: 320px;}
article table{margin-bottom:20px;border-bottom:1px solid #404040; width: 100%;}
article button{width:100%; display:block; margin:0  0 15px 0;}
.breadcrumbs{margin:15px 0px 40px 0px;}
.breadcrumbs .langCont{margin-top:15px;}
	
/* Top */
.topNew h2.titN{margin-bottom: 20px;}
.topNew .newCont{padding: 0 20px 30px 20px;}
.topNew .newCont dl.newslist{display:block; font-size: 1.0rem;}
.topNew .newCont dl.newslist dt,.topNew .newCont dl.newslist dd{width: 100%;}
.topNew .newCont dl.newslist dt{margin-bottom: 10px; border: none;}
.topNew .newCont dl.newslist dd{padding-left: 0px;}
.topWhat h2{font-size: 2.3rem;}
footer .footNav{font-size: 15px; line-height: 1.5;}

#footerInsertTarget {padding: 20px 15px; background: #f9f9f9;}
#footerInsertTarget .bnr {margin-bottom:40px; text-align: center;}
#footerInsertTarget .listLink {margin-top: 10px;}
.videoBox {position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden;}
.videoBox iframe{position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important;}
}