@charset "utf-8";


/* main */
body{ font-size: 13px;}
#wrapper{ width:100%; text-align:left;}
#container{ width:100%; background: url(../img/cmn_img/bg03.jpg) top repeat-x; padding:40px 0 60px; line-height:180%;}
#contents{ width:1000px; margin:0 auto; text-align: left; position:relative; }
#headerW{ background:url(../img/cmn_img/bg01.png) no-repeat top center; height:85px;/* -moz-box-shadow: 0px 0px 6px #969696; -webkit-box-shadow: 0px 0px 6px #969696; box-shadow: 0px 0px 6px #969696;*/}
#header{ width:1000px; height:85px; margin:0 auto; position:relative;}
#header #h01{ position:absolute; top:13px; left:209px; width: 119px;}
#header #h01 img{ width: 100%; height: auto;}
#header #h02{ position:absolute; top:0; right:-33px;}
#header #h02 span{ display: none;}
#header #fsize{ width:140px; height:20px; position:absolute; top:11px; left:365px; background:url(../img/cmn_img/h03.png) no-repeat 0 5px;}
#header #fsize ul#fontSize{ float:right; position:relative;}
#header #fsize ul#fontSize li{ float:left; cursor: pointer;}
#header #fsize ul#fontSize li#fsize01{ position:relative; left:-9px;}
#header #smn{ position:absolute; width:300px; top:13px; left:525px;}
#header #smn ul{ font-size:0;}
#header #smn ul li{ font-size:11px; padding:0 0 0 8px; display:inline-block; background:url(../img/cmn_img/h02.png) no-repeat 0 5px; margin:0 15px 0 0;}
#header #smn ul li a{ color:#2f2f2f; text-decoration:none; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; -ms-transition: 0.3s; transition: 0.3s;}
#header #smn ul li a:hover{ color:#a44cb2; text-decoration:underline;}


#menu{ position:absolute; top:41px; left:0px; z-index:100;}

#menu ul#navi{ position: relative; line-height:1; }
#menu ul#navi li{ }
#menu ul#navi li span{ display: none;}

#menu ul#navi ul { position: absolute; top: 44px; left:2px; background:rgba(255, 255, 255, 0.85); display: none;
border-bottom:1px solid #eaeaea; border-left:1px solid #eaeaea; border-right:1px solid #eaeaea; }
#menu ul#navi ul li { text-align:center;line-height:160%; font-size:90%; }
#menu ul#navi ul li:last-child a{ border-bottom:none !important;}
#menu ul#navi ul li a { width: 145px; min-height:20px; padding:6px 10px;border-bottom:1px dotted #d9d9d9;  float:left; text-decoration:none; }
#menu ul#navi ul li a:hover{ background:rgba(0, 148, 224, 0.5); color:#ffffff; text-decoration:none;}


*:first-child+html #menu #nav ul { line-height:0; }
* html ul#menu #nav ul { line-height: 0; }
*:first-child+html #menu ul#nav ul li a { margin-bottom:-3px !important ; filter: none ; }
/* margin-bottom:-3px !importantはIE7隙間回避 */ 
/* filter: noneはIE7残像回避 */ 

#menu ul li#m01{ position:absolute; top:0px; left:152px;}
#menu ul li#m02{ position:absolute; top:0px; left:317px;}
#menu ul li#m03{ position:absolute; top:0px; left:483px;}
#menu ul li#m04{ position:absolute; top:0px; left:652px;}
#menu ul li#m05{ position:absolute; top:0px; left:822px;}

h1{ padding:14px 0 0 0 !important; margin:0 0 0 0 !important; width: 121px;}
h1 img{ width: 100%; height: auto;}
h1 a{}

h2{ width:100%; height:80px;}
h2 span{ width:1000px; margin:0 auto; display:block;}
h2 span img{ margin:22px 0 0 0;}

h3{ margin:0 0 30px 0 !important;}
h4{ margin:0 0 30px 0 !important;}

#footerW{ background: url(../img/cmn_img/bg02.jpg) no-repeat top center; width:100%; height:134px;}
#footer{ width:1000px; height:78px; margin:0 auto; position:relative; }
#footer #f01{ position:absolute; top:87px; left:0;}
#footer #f01 span{ display: none;}
#footer #f02{ position:absolute; top:87px; right:0; width: 374px;}
#footer #f02 img{ width: 100%; height: auto;}

#fmn{width:1000px;height:51px;margin:0px 0 0 0;font-size:100%;}
#fmn ul{ text-align:center;}
#fmn li { border-left:1px #CCCCCC solid; padding:5px 8px 5px 13px; margin-top:1.4%; display:inline-block; }
#fmn li:last-child { border-right:1px #CCCCCC solid; padding-right:13px;}
#fmn li a{ color:#0088c6; text-decoration:underline;}
#fmn li a:hover{ color:#fc8200; text-decoration:underline;}
#fmn li a.on{ background-color:#0088c6; padding:0px 3px; color:#FFFFFF;}

#infoW{ width:100%; background:url(../img/cmn_img/f06.gif) repeat-x #f8f8f8; font-size:90%; line-height:150%; padding:10px 0 30px 0; border-bottom:1px solid #e6e6e6; margin:0 0 1px 0;}
#info{ width:1000px; margin:0 auto;}
#info ul{ width:1100px; display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center;}
#info ul li{ display:inline-block; vertical-align:top; margin:30px 0px 0 0; width:300px;}
#info ul li.f06{ width:calc(100% / 3 - 20px);}
#info ul li.f07{ width:calc(100% / 3 - 20px);}
#info ul li:nth-of-type(1) { width:calc(100% / 3 - 20px);}
#info ul li:nth-of-type(2) { width: 747px;}
#info ul li p#f03{ position:relative; top:-10px;}
#info ul li p#f04{ background:url(../img/cmn_img/f05.gif) no-repeat 0 4px; padding:0 0 0 20px; font-size:190%; line-height:105%; margin:6px 0 0 0; }
#info ul li p#f04 span{ font-size:50% !important;}
#info ul li p.f05{ border-left:3px solid #0094e0; font-weight:bold; padding:0px 0 2px 7px; margin:0 0 7px 0; font-size:105%;}



#cL{ width:720px; float:left; margin:10px 0 0 0;}
#cR{ width:230px; float:right; margin:10px 0 0 0;}
#cR #cr1{ margin:0 0 35px 0; padding:4px; background:url(../img/cmn_img/mn-bg.jpg) top left;}
#cR #cr1 ul{ background:#ffffff;
-moz-box-shadow: inset 0px 0px 4px #d9d9d9;
-webkit-box-shadow: inset 0px 0px 4px #d9d9d9;
box-shadow: inset 0px 0px 4px #d9d9d9;
padding:6px 6px 1px;}
#cR #cr1 ul li{ /*width:210px; height:40px; */ line-height:120%; }
#cR #cr1 ul li:last-child{ margin:5px 0 0 0; border-bottom:none !important;}
#cR #cr1 ul li a{ float:left; width:174px; min-height:17px; padding:9px 8px 11px 28px; margin:0px 0 5px 0; background:url(../img/cmn_img/mn-ic02.png) no-repeat 8px 12px; color:#2f2f2f;
text-decoration:none; -webkit-transition: 0.2s; -moz-transition: 0.2s; -o-transition: 0.2s; -ms-transition: 0.2s; transition: 0.2s; }
#cR #cr1 ul li a:hover,#cR #cr1 ul li a.active{ background:url(../img/cmn_img/mn-ic01.png) no-repeat 8px 12px #4cb4e9; color:#ffffff;}
#cR #cr1 ul li.bdr{ float:left; border-bottom:1px dotted #d9d9d9; width:210px; margin:0 0 5px 0; }
#cR #cr2 p{ margin-bottom: 15px;}
#cR #cr2 p:last-child{ margin-bottom:0;}
#cR .bnr2{ margin-bottom: 15px;}

/* page-top */
#page-top { position: fixed; bottom:136px; right:0px;}
#page-top a { display:block;  background:url(../img/cmn_img/btn-pt.gif) no-repeat top left;width:55px; height:55px;  text-indent:-9999px; }


/* hover
----------------------------------------------------------------------------------*/
a,a:link, a:visited { color:#0091db; text-decoration:underline; -webkit-transition: 0.2s; -moz-transition: 0.2s; -o-transition: 0.2s; -ms-transition: 0.2s; transition: 0.2s;}
a:hover { color:#ff7200; text-decoration:underline;}



/* ---------------------------------------------------------------
                              smph
--------------------------------------------------------------- */
@media screen and (max-width: 767px) { 

/* main */
body{ font-size:14px;}
#wrapper{ width:100%;}
#container{ width:100%; padding:25px 0 50px;}
#contents{ width:100%; margin:0 auto;}
#headerW{ background:none; height:auto;}
#header{ width:100%; height:60px; margin:0 auto; position:relative; background: linear-gradient(to bottom, #ffffff 0%,#f4f3f4 100%); padding: 0 3%; box-sizing: border-box;}
/*#header:before{ content: ""; width: 100%; height:3px; display: block; background: linear-gradient(to bottom, #009be2 0%,#008bdc 100%);}*/
#header #h01{ position:absolute; top:31px; left:113px; width: 78px;}
#header #h02{ right:60px !important; width: 60px; height: 60px; background: linear-gradient(to bottom, #a15fad 0%,#9855a3 100%); font-size: 8px; text-align: center;}
#header #h02 a{ display: block; height: 100%; color: #fff; text-decoration: none; position: relative; padding: 17px 0 0; box-sizing: border-box; font-family: 'Noto Sans JP', sans-serif; font-weight: 300;}
#header #h02 a:before{ content: ""; content:"\f0e0"; font-family:"Font Awesome 5 Pro"; font-weight: 900; font-size: 22px; display: block; margin-bottom:9px;}
#header #h02 img{ display: none;}
#header #h02 span{ display: block;}
#header #fsize{ display: none;}
#header #smn{ display: none;}


#menu{ }

#menu ul#navi{ }
#menu ul#navi li{ }

nav{ width: 60px; height: 60px; position: absolute; top: 0; right: 0; background: linear-gradient(to bottom, #009bdf 0%,#0084d5 100%);}
.mm-listview li img{ display: none;}
.mm-listview li span{ display: block;}
.mm-listview li.sp{ display: block !important;}

h1{ padding:9px 0 0 0 !important; margin:0 0 0 0 !important; width:92px;}
h1 a{}

h2{ width:100%; height:80px;}
h2 span{ width:auto; height: 24px; margin:0; display:block; position: absolute; top: 50%; transform: translateY(-50%); left: 5%;}
h2 span img{ margin:0px 0 0 0; width:auto; height:100%;}

h3{ margin:0 0 30px 0 !important;}
h4{ margin:0 0 30px 0 !important;}

#footerW{ background: none; width:100%; height:auto;}
#footer{ width:100%; height:auto; margin:0 auto; position:relative; }
#footer #f01{ position:relative; top:auto; left:auto; text-align: center; margin: 0 auto 20px;}
#footer #f01 img{ width: 180px; margin: 0 auto 10px;}
#footer #f01 span{ display: block; font-size: 12px; line-height: 1.8;}
#footer #f02{ position:relative; top:auto; right:auto; width: 90%; margin: 20px auto;}
#footer .crWrap{ background: linear-gradient(to bottom, #ffffff 0%,#faf9f9 100%); border-bottom: 1px solid #e1e1e1; border-top: 4px solid #0094e0; padding: 20px 0 0;}

#fmn{ width:100%; height:auto; margin:0px 0 0 0; font-size:100%; background: url("../img/cmn_img/mn-bgSp.jpg") repeat-x; position: relative;}
#fmn::before{ content: ""; width: 100%; height: 5px; position: absolute; top: 0; left: 0; background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%,rgba(255,255,255,0) 100%);}
#fmn ul{ text-align:center; display: flex; justify-content: space-between; flex-wrap: wrap;}
#fmn li { width: 50%; border-left: none; border-right:1px #CCCCCC solid; border-bottom: 1px #CCCCCC solid; padding:0; margin-top:0; display:block; box-sizing: border-box;}
#fmn li:last-child { border-right:1px #CCCCCC solid; padding-right:0px;}
#fmn li:nth-of-type(2n){ border-right:none;}
#fmn li a{ color:#0088c6; text-decoration:none; padding: 15px 0%; display: block; width: 100%;}
#fmn li a:hover{ color:#fc8200; text-decoration:underline;}
#fmn li a.on{ background-color:#0088c6; padding:0px 3px; color:#FFFFFF;}

#infoW{ width:100%; background:url(../img/cmn_img/f06.gif) repeat-x #f8f8f8; font-size:90%; line-height:150%; padding:10px 0 30px 0; border-bottom:1px solid #e6e6e6; margin:0 0 1px 0;}
#info{ width:90%; margin:0 auto; padding-top: 10px;}
#info ul{ width:100%;}
#info ul li{ display:inline-block; vertical-align:top; margin:20px 0px 0 0; width:300px;}
#info ul li.f06{ width:100%; display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; }
#info ul li.f06 p{ width: 100%; display: block;}
#info ul li.f07{ width:100%;}
#info ul li p#f03{ position:relative; top:-10px; width: 61px; margin: 0px auto 0;}
#info ul li p#f04{ /*background:url(../img/cmn_img/f05.gif) no-repeat 58px 2px;*/ background: none; padding:0 0 0 0px; font-size:190%; line-height:105%; margin:6px 0 0 0; text-align: center;}
#info ul li p#f04::before{ content: "\f879"; font-family: "Font Awesome 5 Pro"; font-weight: 900; display: inline-block; color:#0094e0; font-size: 18px; transform: rotate(10deg); position: relative; top: -2px; margin-right:3px;}
#info ul li p#f04 span{ font-size:50% !important; line-height: 1.5;}
#info ul li p.f05{ border-left:3px solid #0094e0; font-weight:bold; padding:0px 0 2px 7px; margin:0 0 7px 0; font-size:105%;}



#cL{ width:90%; margin:10px auto 0; float: none;}
#cR{ width:90%; margin:10px auto 0; float: none; display: flex; flex-wrap: wrap; justify-content: space-between;}
#cR #cr1{ margin:0 0 35px 0; padding:4px; background:url(../img/cmn_img/mn-bg.jpg) top left; background-size: 100% 100%; width: 100%;}
#cR #cr1 ul{ background:#ffffff; box-shadow: inset 0px 0px 4px #d9d9d9; padding:6px 6px 1px;}
#cR #cr1 ul li{ line-height:120%; display: block;}
#cR #cr1 ul li:last-child{ margin:5px 0 0 0; border-bottom:none !important;}
#cR #cr1 ul li a{ float:left; width:100%; min-height:100%; padding:12px 0 12px 28px; margin:0px 0 5px 0; background:url(../img/cmn_img/mn-ic02.png) no-repeat 8px 14px; color:#2f2f2f; box-sizing: border-box;
text-decoration:none; -webkit-transition: 0.2s; transition: 0.2s; }
#cR #cr1 ul li a:hover,
#cR #cr1 ul li a.active{ background:url(../img/cmn_img/mn-ic01.png) no-repeat 8px 14px #4cb4e9; color:#ffffff;}
#cR #cr1 ul li.bdr{ float:left; border-bottom:1px dotted #d9d9d9; width:100%; margin:0 0 5px 0; box-sizing: border-box;}
#cR #cr2{ display: flex; flex-wrap: wrap; justify-content: space-between;}
#cR #cr2 p{ margin-bottom: 15px;}
#cR #cr2 p:nth-of-type(1){ display: block; width: 100%;}
#cR #cr2 p:nth-of-type(1) img{ width: 124px;}
#cR #cr2 p:last-child{ margin-bottom:0;}
#cR .bnr1, #cR .bnr2{ width: 48.5%; margin-bottom: 10px !important;}
#cR .bnr3{ margin-bottom:30px !important;}

/* page-top */
#page-top { position: fixed; bottom:0px; left:0px; z-index: 100;}
#page-top a { display:block;  background:url(../img/cmn_img/btn-pt.gif) no-repeat top left; background-size: cover; width:40px; height:40px;  text-indent:-9999px; }


} /* smph */



/* -------------------------------
  PCのみの設定
------------------------------- */
@media print,screen and (min-width: 737px) {
#spbar,#spmenu{ display:none !important;}
.sp{ display:none !important;}
.pc{ display:inline-block !important; vertical-align:top !important;}

#mm-menu{ display: none !important;}
.spMenu span{ display:none;}

/* スマホのみtellink有効（init.jsにも要設定） */
a[href^="tel:"] { cursor: default; }
}

/* -------------------------------
スマホのみの設定
------------------------------- */
@media screen and (max-width: 736px) {
/* androidのみ */
/*body.Android #footer .sp ul li{ width:49.9% !important;}*/

img{ width:100%; height:auto;}
.sp{ display:inline-block !important; vertical-align:top !important;}
.pc{ display:none !important; margin:0; padding:0; width:0; height:0;}

/* TELリンク */
.tel-link {/* color: #06F; font-size: 16px; font-weight: bold;*/}

/* スマホドロワーメニュー */

/* ▽▽開閉ボタンのライン▽▽ */
.spMenu { position:relative; width:60px; height:60px; cursor:pointer; display:block; float:right; z-index:1000;}
.spMenu a{ display: block; height: 100%; padding-top: 14px; box-sizing:border-box;}
.spMenu a:before { box-shadow:#fff 0 7px 0;}
.spMenu a:after { top:29px;}
.spMenu a:before,.spMenu a:after { width:30px; height:1px; background:#fff; display:block; content:''; position:absolute; left: 0; right: 0; margin: auto;}
.spMenu span{ font-size:9px; color:#fff; position:absolute; top:38px; left:0; right: 0; margin: auto; text-align:center; letter-spacing:0.1em; font-family: 'Open Sans', sans-serif; font-weight:500; white-space: nowrap;}


.mm-menu, .mm-panel{ background: #fff !important;}
.mm-navbar{ background: linear-gradient(to bottom, #ffffff 0%,#f4f3f4 100%) !important; color: #0086d6 !important;}
ul.mm-listview li{ border-color: rgba(0,0,0,0.1) !important; font-size: 16px !important;}
ul.mm-listview li a{ background-color:#fff; text-align: left; color: #0086d6 !important;}
ul.mm-listview li a:hover{ background-color:#0086d6 !important; color: #fff;}
.mm-btn_next::after, .mm-btn_prev::before{ border-color:#0086d6 !important;}
div#menu{ background-color:#232323; }
/*div.mm-navbar{ display:none !important;}*/
#menu{ display: none !important;}

/* 固定ボトム */
.mm-navbars_bottom{ display: none !important;}
.mm-navbar-bottom a{ width:33.3%; height:40px;
-webkit-transition: 0.5s; -moz-transition: 0.5s; -o-transition: 0.5s; -ms-transition: 0.5s; transition: 0.5s;}
.mm-navbar-bottom a:hover{ opacity:0.5;}

/* 下部アイコンをオリジナルにする場合 */
.spFb{ background:url() center no-repeat;}
.spInst{ background:url() center no-repeat;}
.spPin{ background:url() center no-repeat;}
.spFb,.spInst,.spPin{ background-size:15px;}
}


/* common style 
----------------------------------------------------------------------------------*/
html { height:100%;}
body { height:100%; margin:0; padding:0;	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Osaka, Verdana, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, sans-serif;
	color: #2f2f2f;	text-align:center; line-height:100%; background:#ffffff; -webkit-text-size-adjust: 100%;}
.left  {float:left;}.right {float:right;}
div:after { content: "."; display: block; visibility: hidden; height: 0px; font-size: 0.1em; line-height: 0; clear: both;}  
/*
div { display: inline-block; }
*/
.clr:before,.clr:after{ content: " "; display: table; overflow: hidden;}
.clr:after{ clear: both; overflow: hidden; }
.clr{ *zoom: 1; overflow: hidden; }


/* reset
----------------------------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,span,blockquote,img{margin:0;padding:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
ol,ul {list-style:none;}
caption,th {text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;font-style:normal;}
q:before,q:after{content:'';}abbr,acronym {border:0;}
img { vertical-align:top; }
/*Android、Xperiaで途中改行されるバグfix*/
p {background-image:url(1px-transparent.gif);}


/* 回り込み解除
----------------------------------------------------------------------------------*/
.clear { clear:both; }.clear hr { display:none; }  
/* tools 
----------------------------------------------------------------------------------*/
.mt05{ margin-top:5px !important;}.mt10{ margin-top:10px !important;}.mt15{ margin-top:15px !important;}.mt20{ margin-top:20px !important;}.mt30{ margin-top:30px !important;}.mt40{ margin-top:40px !important;}.mt50{ margin-top:50px !important;}.mt60{ margin-top:60px !important;}.mt70{ margin-top:70px !important;}.mt80{ margin-top:80px !important;}.mt90{ margin-top:90px !important;}.mt100{ margin-top:100px !important;}
.mb05{ margin-bottom:5px !important;}.mb10{ margin-bottom:10px !important;}.mb15{ margin-bottom:15px !important;}.mb20{ margin-bottom:20px !important;}.mb30{ margin-bottom:30px !important;}.mb40{ margin-bottom:40px !important;}.mb50{ margin-bottom:50px !important;}.mb60{ margin-bottom:60px !important;}.mb70{ margin-bottom:70px !important;}.mb80{ margin-bottom:80px !important;}.mb90{ margin-bottom:90px !important;}.mb100{ margin-bottom:100px !important;}
.ml05{ margin-left:5px !important;}.ml10{ margin-left:10px !important;}.ml15{ margin-left:15px !important;}.ml20{ margin-left:20px !important;}.ml30{ margin-left:30px !important;}.ml50{ margin-left:50px !important;}
.mr05{ margin-right:5px !important;}.mr10{ margin-right:10px !important;}.mr15{ margin-right:15px !important;}.mr20{ margin-right:20px !important;}.mr30{ margin-right:30px !important;}.mr50{ margin-right:50px !important;}
/* fonts 
----------------------------------------------------------------------------------*/
.cap13{font-size:11px;line-height:130%;}.cap15{font-size:11px;line-height:150%;}