@charset "utf-8";

/* --------------------------------------------------------- */
/* base.css */
/* --------------------------------------------------------- */

#wrap{position:relative;overflow:hidden;font-feature-settings: "palt";}
.section{width:100%;margin:0 auto;}
.content{width:100%;max-width:1400px;margin:0 auto;}
.layer{width:100%;max-width:1120px;margin:0 auto;}

.float:after{content:'';display:block;clear:both;}
.float .left{float:left;}
.float .right{float:right;}

.flex{display:-webkit-box;display:-ms-flexbox;display:flex;}
.flex.wrap{-ms-flex-wrap:wrap;flex-wrap:wrap;}
.flex.pack-j{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;}
.flex.pack-d{-ms-flex-pack:distribute;justify-content:space-around;}
.flex.pack-c{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;}
.flex.pack-e{justify-content: flex-end;}
.flex.align-c{-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
.flex.align-e{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;}
.flex.rev{flex-direction: row-reverse;}

a{display:block;}

img{width:auto;max-width:100%;height:auto;}

.tab,
.sp{display:none;}


/* ヘッダー
----------------------- */
#header{background:#fff;}

#header #gbmenu{position:relative;padding:35px 0;}
#gbmenu a{display:block;text-decoration:none;transition:opacity ease 0.3s;}
#gbmenu .logo{width:280px;position:absolute;top:50%;left:0;transform:translateY(-50%);}
#gbmenu .logo a:hover{opacity:0.7;}
#gbmenu .menu{}
#gbmenu .menu li{float:left;margin:0 0;padding:0 1em;font-size:17px;line-height:1;border-right:1px solid #000;}
#gbmenu .sns li{float:left;width:22px;margin-left:10px;}
#gbmenu .sns li:last-of-type{margin-right:10px;}
#gbmenu .sns a:hover{opacity:0.7;}


/* メイン
----------------------- */
#main{position:relative;background:url(../img/bg.jpg) repeat top center;}
#main:after{content:'';display:block;width:1120px;padding-top:175px;margin-bottom:-14px;position:absolute;bottom:0;left:50%;transform:translateX(-50%);background:url(../img/footer_image.png) no-repeat;background-position:bottom left;}
#main .dummy{height:1200px;}

#main h1{background-repeat:no-repeat;}
#main h1 img{width:400px;margin:0 auto;}



/* ページトップへ戻る
----------------------- */
#gotop{position:fixed;right:0;bottom:0;width:81px;padding-top:59px;margin:0 15px 15px 0;background:url(../img/pagetop.png) no-repeat;background-size:100% auto;cursor:pointer;z-index:14;}
#gotop:hover{opacity:0.7;}


/* フッター
----------------------- */
#footer{background:#04287e;}
#footer .logo{width:230px;margin:0 auto;padding:20px 0;}
#footer .contact{width:100%;}
#footer .contact li{position:relative;margin:0 1em;padding-left:20px;color:#fff;font-size:15px;}
#footer .contact li img{position:absolute;top:50%;left:0;width:15px;transform:translateY(-50%);}
#footer .copy{padding:20px 0 25px;color:#fff;font-size:13px;text-align:center;}



/* ----------------------- */
/* PC～SP
/* ----------------------- */
@media screen and (max-width: 1400px){

.layer{width:calc(100% - 20px);}

img{width:100%;}

.tab{display:block;}


/* ヘッダー
----------------------- */
#header{position:fixed;z-index:15;}
#gbmenu .menu,
#gbmenu .sns{display:none;}
#gbmenu .toggle{width:30px;margin-right:10px;cursor:pointer;transition:opacity ease 0.3s;}
#gbmenu .toggle:hover{opacity:0.7;}
#gbmenu .toggle.open{background:url(../img/sp/icon_close.png) no-repeat;background-size:100% auto;}
#gbmenu .toggle.open img{opacity:0;}

#sp-gbmenu{position:relative}
#sp-gbmenu .togglewrap{display:none;position:absolute;top:0;width:100%;background:#fff;z-index:10;}
#sp-gbmenu .togglemenu li{border-top:1px solid #fff;}
#sp-gbmenu .togglemenu li:last-of-type{border-bottom:1px solid #000;}
#sp-gbmenu .togglemenu a{padding:0.6em;color:#fff;font-size:17px;text-align:center;text-decoration:none;background:#04287e;}
#sp-gbmenu .togglesns li{width:42px;margin:10px;}
#sp-gbmenu .togglesns a{transition:opacty ease 0.3s;}
#sp-gbmenu .togglesns a:hover{opacity:0.7;}


/* メイン
----------------------- */
#main:after{width:calc(100% - 20px);max-width:1120px;}

	
}



/* ----------------------- */
/* SP
/* ----------------------- */
@media screen and (max-width: 750px){
	
.pc{display:none;}
.sp{display:block;}

.layer{width:93.333%;/*700*/}

img{width:100%;}


/* ヘッダー
----------------------- */
#header{}

#header #gbmenu{padding:3.6% 0;}
#gbmenu a{}
#gbmenu .logo{width:49.6%;}
#gbmenu .logo a:hover{opacity:1;}
#gbmenu .toggle{width:8%;margin-right:3.33%;}
#gbmenu .toggle:hover{opacity:1;}

#sp-gbmenu .togglemenu a{font-size:4.53vw;}
#sp-gbmenu .togglesns li{width:11.2vw;margin:2.66vw 2.4vw;}
#sp-gbmenu .togglesns a:hover{opacity:1;}


/* メイン
----------------------- */
#main{background:url(../img/bg.jpg) repeat top center;}
#main:after{width:89.2%;padding-top:24%;margin-bottom:-1.733%;background-size:100% auto;}

#main h1 img{width:80%;/*600*/}



/* ページトップへ戻る
----------------------- */
#gotop{width:16%;padding-top:11.87%;margin:0 2.8% 2.8% 0;background-image:url(../img/sp/pagetop.png);}
#gotop:hover{opacity:1;}


/* フッター
----------------------- */
#footer{}
#footer .layer{position:relative;}
#footer .logo{position:absolute;top:0;left:0;width:45.857%;margin:11% 0 0;padding:0;}
#footer .contact{width:46%;display:block;margin:0 0 0 auto;padding-top:6.428%;}
#footer .contact li{margin:0.25em 0;padding-left:20px;font-size:2.93vw;}
#footer .contact li img{width:2vw;}
#footer .copy{padding:5% 0 5.71%;font-size:2.93vw;}
	
}