@charset "utf-8";




/* -------------------------------
  PCのみの設定
------------------------------- */
@media print,screen and (min-width: 737px) {

#spbar,#spmenu{ display:none !important;}
.sp{ display:none !important;}
.pc{ display:inline-block !important; /display:inline !important; /zoom:1 !important; vertical-align:top !important;}

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

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





/* main */

#wrapper{ width:100%; text-align:center; }

main{} /* aka container */
#main{ width:100%; margin:0 auto; text-align: center; font-size: 14px; line-height:1.8;}

article{} /* aka contents */
section{ padding:60px 0 60px !important;}
section.bbg{ background: url(../img/cmn_img/bg2.png) top center no-repeat #f1f0f7 !important;}

header{}
#header{ width:100%; }
#home #header h1{ padding:51px 0 43px 0 !important; margin:0 0 0 0 !important;}
#header h1{ padding:9px 0 17px 0 !important; margin:0 0 0 0 !important;}

nav{ width:100% !important; background:url(../img/cmn_img/bg.gif) repeat-x !important; height:55px !important;}
#nav{ width:1000px; margin:0 auto;}
#nav ul{ font-size:0; position: relative;}
#nav ul li{ display:inline-block; /display:inline; /zoom:1; vertical-align:top;}



/* プルダウン */
#nav ul li{ position:relative;}
#nav ul li ul { font-size:0; position: absolute; top: 55px; left:0; z-index: 100; line-height:0;}
#nav ul li ul li { background:rgba(239, 238, 246, 0.85);/*サブメニューの背景色*/ margin:0; padding:8px 0 0 0px; border:none; line-height:2;white-space: nowrap;}
#nav ul li ul,#nav ul li ul li{ width:196px; font-size:12px !important;}
#nav ul li ul li a{width:196px; display:inline-block; /display:inline; /zoom:1; vertical-align:top;}

#nav ul li ul li a{ text-decoration:none; float:left;}
#nav ul li ul li a:hover{ color:#151370; text-decoration:none;}

#nav ul li ul li:hover { background:rgba(191, 191, 227, 0.85); /*ホバー時のサブメニューの背景色*/ }

#nav ul li ul li , #nav ul li ul li a { opacity:0; height: 0;}
#nav ul li:hover ul li, #nav ul li a:hover ul li , #nav ul li ul li a{ opacity:1; height:30px;/*サブメニューの高さ*/ z-index: 10;}

#nav ul li ul li { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s;}


footer{}
#footer{ width:100%; margin:0 auto; padding:30px 0 30px 0; }
#footer .fmn{ width:100%; margin:30px auto 35px; padding:12px 0 12px; background:#f1f0f7; }
#footer .fmn ul{ font-size:0;}
#footer .fmn ul li{ font-size:14px; line-height:1.8; display:inline-block; /display:inline; /zoom:1; vertical-align:top;}
#footer .fmn ul li:after{ content: "　|　";}
#footer .fmn ul li:first-child:before,
#footer .fmn ul li:nth-of-type(5):before
{ content: "　|　";}

/* page-top */
#page-top { position: fixed; bottom: 220px; right: 20px;}
#page-top a { display:block;  background:url(../img/cmn_img/btn.png) no-repeat top left;width:60px; height:60px;  text-indent:-9999px; }

}


/* -------------------------------
スマホのみの設定
------------------------------- */
@media screen and (max-width: 736px) {

/* androidのみ */
/*body.Android #footer .sp ul li{ width:49.9% !important;}*/

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

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

/* スマホドロワーメニュー */
.spMenu a{ display: block; width:30px; height:40px;	/*position:absolute; top:10px; right:10px;*/ z-index:100;}

/* ▽▽開閉ボタンのライン▽▽ */
.spMenu { position:relative; width:30px; height:19px; cursor:pointer; display:block; float:right; z-index: 2;}
.spMenu::before { -webkit-box-shadow:#151370 0 8px 0; box-shadow:#151370 0 8px 0;}
.spMenu::after { bottom: 0;}
.spMenu::before,.spMenu::after { width:30px; height:3px; background:#151370; display:block; content:''; position:absolute;}
.spMenu span{ font-family: 'Poppins', sans-serif; font-weight:500; font-size:9px; color:#151370; position:absolute; top:25px; left:0; width:30px; text-align:center; letter-spacing:0.1em;}

.mm-menu.mm-theme-dark{ background:#151370 !important;}
.mm-listview > li:not(.mm-divider)::after{ border-color: rgba(255,255,255,0.1);}
ul.mm-listview li a{ background-color:#151370;}
ul.mm-listview li a:hover{ background-color:#151370;}
div#menu{ background-color:#151370; }
/*div.mm-navbar{ display:none !important;}*/
#menu{ display: none !important;}
ul.mm-listview li img{ display:none !important;}

/* 固定ボトム */
.mm-navbar-bottom{ display:none;}
.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;}




/* main */

#wrapper{ width:100%; text-align:center; background:#fff;}

main{} /* aka container */
#main{ width:100%; margin:0 auto; text-align: center; font-size: 13px; line-height:1.8;}

article{} /* aka contents */
section{ padding:30px 0 30px !important;}
section.bbg{ background: url(../img/cmn_img/bg2.png) top center no-repeat #f1f0f7 !important;}

header{}
#header{ width:90%; margin:0 auto;}
#home #header h1{ width:240px; padding:30px 0 0px !important; margin:0 auto 0 !important;}
#home #header h1 a{ pointer-events: none;}
#header h1{ padding:18px 0 17px 0 !important; margin:0 auto 0 !important; width:220px;}

nav{}
#nav{  position:absolute; top:20px; right:15px;}
#nav ul{ }



footer{}
#footer{ width:100%; margin:0 auto; padding:0px 0 30px 0; }
#footer > p:nth-of-type(1){ width:100px; margin:0 auto;}

#footer .fmn{ width:100%; margin:30px auto 35px; padding:0px 0 0px; background:#f1f0f7; }
#footer .fmn ul{ font-size:0;}
#footer .fmn ul li{ font-size:13px; line-height:1.8; display:block; border-bottom:1px solid #d9d8d7;}
#footer .fmn ul li:last-child{ border-bottom:none;}
#footer .fmn ul li a{ display:block; padding:10px 0; text-decoration:none;}
#footer .fmn ul li:after{}
#footer .fmn ul li:first-child:before,
#footer .fmn ul li:nth-of-type(5):before{}

#footer .fmn + p{ width:280px; margin:0 auto;}

/* page-top */
#page-top { position: fixed; bottom:60px; right:5px; z-index:100;}
#page-top a { display:block;  background:url(../img/cmn_img/btn.png) no-repeat top left; background-size:100% auto; width:40px; height:40px;  text-indent:-9999px;}

}




/* hover
----------------------------------------------------------------------------------*/
a,a:link, a:visited { color:#151370; text-decoration:underline;
 -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s;}
a:hover { color:#6361b1; text-decoration:underline;}



/* common style 
----------------------------------------------------------------------------------*/
html,
body,
#wrapper {
  width: 100%; max-height: 100%; /* android対策 意図しない文字が大きくなったりする問題FIX */
}

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  line-height: 1;
  word-break: break-all;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro",serif;
  /*font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;*/
  color: #3f3a39;
}

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, small, 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, summary, time, mark, audio, video, input, textarea {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 100%;
/*  font-weight: normal;*/
  vertical-align: baseline;
  background: transparent;
}

img {
  vertical-align: top;
}

article, aside, details, figcaption, figure, footer, header, menu, nav, section, div, address, iframe, canvas, hr, textarea {
  display: block;
/*  line-height: 1;*/
}

a, label {
  cursor: pointer;
}

blockquote {
  padding: 0;
  margin: 0;
  display: block;
}

address, em {
  font-style: normal;
}

hr {
  border: 0;
  margin: 0;
  padding: 0;
}

ul, ol, li {
  list-style: none;
}

textarea {
  resize: vertical;
  overflow: hidden;
  -webkit-appearance: none;
  border: none;
}

input, button, select {
  vertical-align: middle;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  -o-border-radius: 0px;
  border-radius: 0px;
  border: none;
  cursor: pointer;
  background: transparent;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
}

*:before,
*:after {
  padding: 0;
  margin: 0;
  line-height: 1;
}

.clr:before,.clr:after{ content: " "; display: table; overflow: hidden;}
.clr:after{ clear: both; overflow: hidden; }
.clr{ *zoom: 1; overflow: hidden; }
.clear { clear:both; }  
.clear hr { display:none; }  


/*Android、Xperiaで途中改行されるバグfix*/
p { background-image:url(1px-transparent.gif);}

/* テキスト両端揃え
p { text-align: justify; text-justify: inter-ideograph; line-break: normal; }
*/


/* 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%;}