@charset "UTF-8";
body {
	-webkit-print-color-adjust: exact;
}
/* ロードまち ////////// */
#loader-bg {
  display: block;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 9998;
}
#loader {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin-top: -35px;
  margin-left: -35px;
  text-align: center;
  color: #fff;
  z-index: 9999;
}
#loadend{
	display: none;
}
/* ロードまち ////////// */
.logo{
	text-align: center;
	display:table-cell;
	vertical-align: middle;
	line-height: 0.5em;
}
.tel-icon,.tel-icon span,.tel-icon-tab{
    color:#525252;
}
object{
    pointer-events: none;
}
.global-nav-wrap{
	background-color: #E3002D;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:9990;
	justify-content: space-between;
	padding: 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.global-nav{
	position: relative;
}
.nav-list li a{
	height:100%;
	position: relative;
	transition: color 0.8s ease;
	color:#fff;
}
.nav-list li:last-child a{
	margin-right:0;
}
/* ////////////////////////////////////////
スクロールボタン
//////////////////////////////////////// */
.pagetop-btn {
  width: 112px;
  transition: all 0.3s;
}
.pagetop-btn.abs {
  position: absolute;
  right: 35px;
  top: -130px;
  z-index: 100;
}
.fixed {
  position: fixed;
  right: 35px;
  bottom: 25px;
  z-index: 100;
}
/* ////////////////////////////////////////
フッター
//////////////////////////////////////// */
footer{
  	position: relative;
}
footer .copyright-bg{
  	position: relative;
	color:#fff;
	background: url("../img/common/wood-bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	padding:20px;
	text-align: center;
}
footer .insect5:before{
	position:absolute;
	content:'';
	background-image: url("../img/index/insect5.png");
	background-size: contain;
	width:51px;
	height:51px;
	left:50%;
	margin-left:-600px;
	top:-20px;
}
/*多言語ボタン用*/
.auto-translate-btn{
	position: fixed;
    background: #fff;
    box-shadow: 1px 2px 3px rgba(0, 0, 0, .16);
    overflow: hidden;
    z-index: 999999999;
    border: 1px solid #eee;
	left:0;
	bottom:0;
	border-radius: 0 5px 0 0;
	line-height: 1em;
    color: #333;
	font-size: 12px;
}
.auto-translate-btn .icon{
	cursor: pointer;
	display: block;
	position: relative;
    padding: 14px 26px 14px 32px;
}
.auto-translate-btn .icon:before {
	position: absolute;
	content:'';
	background-image: url("../img/common/icon-lang.png");
	background-size: contain;
	background-repeat: no-repeat;
	width:14px;
	height:14px;
	top:50%;
	left:13px;
	margin-top:-6px;
}
.auto-translate-btn .icon:after {
    content: '▼';
    display: block;
    position: absolute;
    top: 15px;
    right: 9px;
    font-size: 10px;
    color: #999;
}
.auto-translate-inner{
	display: none;
	padding: 0 0 0 16px;
}
.auto-translate-inner>*{
	cursor: pointer;
	position: relative;
    padding: 7px 26px 7px 0;
}
/*アクティブな言語のスタイル*/
.auto-translate-btn [data-stt-active]:after{
	display: block;
	content: '●';
    position: absolute;
    font-size: 10px;
    top: 8px;
    right: 9px;
    color: #999;
}
/* ////////////////////////////////////////
PC・印刷時のみ
//////////////////////////////////////// */
@media screen and (min-width:1101px) , print{
	.global-nav{
		width:100%;
		display: table;
	}
	.global-nav>*{
		display: table-cell;
		vertical-align: middle;
	}
	/* ////////////////////////////////////////
	ロゴ周り
	//////////////////////////////////////// */
	.logo img{
		position: absolute;
		top:0;
		left:0;
		width:320px;
		height:auto;
		z-index: 3;
        transition: 0.3s;
	}
	.logo:after{
		position: absolute;
		content:'';
		top:0;
		left:0;
		background-image: url("../img/common/logo-base.png");
		background-repeat: no-repeat;
		background-size: contain;
		width:320px;
		height:157px;
	}
	.logo a{
		display: block;
	}
	.logo a:hover img{
		opacity: 0.8;
	}
	/* ////////////////////////////////////////
	ナビゲーション
	//////////////////////////////////////// */
  	.nav-wrap {
    	display: table-cell !important;
		vertical-align: middle;
		text-align: right;
  	}
  	.nav-button {
	  display: none !important;
  	}
    .other-box li,.mail-headerbox,.cvb-headerbox{
        display: none;
    }
    /*メインメニューの上*/
	.nav-other-pc{
		text-align: left;
	}
    /*メインメニュー*/
	.nav-list{
		margin-top:0;
		margin-bottom:0;
	}
  	.nav-list > li {
	  	display: inline-block;
		text-align: center;
	}
  	.nav-list > li > a{
		position: relative;
		line-height: 1em;
	  	display: block;
		width:100%;
	 	padding: 30px 20px 30px 20px;
		transition: 0.3s;
	 }
  	.nav-list > li:last-child > a{
		padding-right:40px;
	}
  	.nav-list > li > a:hover{
		opacity: 0.7;
	 }
  	.nav-list > li:last-child a:after{
		background-image: none;
	 }
  	.nav-list > li > a > span{
    	position: relative;
		display: inline-block;
	 }
	/* ////////////////////////////////////////
	フッター
	//////////////////////////////////////// */
}
@media screen and (min-width:1101px) and (max-width:1300px){
	.nav-list > li {
		width:150px;
		font-size:1rem;
	}
}
/* ////////////////////////////////////////
タブレット・PC以上
//////////////////////////////////////// */
@media screen and (min-width:768px),print{
}
/* ////////////////////////////////////////
タブレット・SPのみ
//////////////////////////////////////// */
@media screen and (max-width: 1100px) {
	.no-scroll{
    	overflow-y: hidden;
	}
	.global-nav{
		background-color: #E3002D;
	}
	.global-nav-inner{
		width:100%;
		display: table;
	}
	/* ////////////////////////////////////////
	ロゴ周り
	//////////////////////////////////////// */
	.logo{
		position: relative;
    	z-index: 11;
	}
	.logo img{
		position: absolute;
		top:0;
		left:0;
		width:200px;
		height:auto;
		z-index: 3;
        transition: 0.3s;
	}
	.logo:after{
		position: absolute;
		content:'';
		top:0;
		left:0;
		background-image: url("../img/common/logo-base.png");
		background-repeat: no-repeat;
		background-size: contain;
		width:200px;
		height:98px;
	}
	.logo a{
		display: block;
	}
	.logo a:hover img{
		opacity: 0.8;
	}
	/* ////////////////////////////////////////
	タブレット・スマホ用表に出るナビゲーション
    //////////////////////////////////////// */
	.main-menu-bg{
		background-color: #fff68a;
		padding-bottom:0;
	}
    .main-menu{
		margin-bottom:0;
		position: relative;
		z-index: 100;
        display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:flex;
		-webkit-box-lines:multiple;
		-moz-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		width:100%;
    }
    .main-menu > li{
        margin-top:10px;
        margin-right:2%;
        width:32%;
	   	float: left;
        border-radius:10px;
        background-color: #fff;
        text-align: center;
		border:2px solid #040000;
        box-shadow: 0 3px 0px #ee7800;
    }
    .main-menu > li:nth-child(3){
        margin-right:0;
    }
    .main-menu > li:nth-child(4){
        margin-left:17%;
    }
    .main-menu > li:last-child{
        margin-right:0;
    }
    .main-menu > li > a{
        display: block;
        padding:8px 1px;
        line-height: 1.3em;
		position: relative;
		color:#040000;
    }
  	.main-menu > li > a > span{
    	position: relative;
		display: inline-block;
		padding-top:48px;
	 }
  	.main-menu > li > a > span:before{
		content:'';
		position: absolute;
		top:0;
		left:50%;
		margin-left:-30px;
		width: 60px;
		height: 46px;
		background-repeat: no-repeat;
        background-size: contain;
	}
  	.main-menu > li:nth-child(1) > a > span:before{
		background-image: url("../img/common/menu-icon1.png?ver250422");
	}
  	.main-menu > li:nth-child(2) > a > span:before{
		background-image: url("../img/common/menu-icon2.png?ver250422");
	}
  	.main-menu > li:nth-child(3) > a > span:before{
		background-image: url("../img/common/menu-icon3.png?ver250422");
	}
  	.main-menu > li:nth-child(4) > a > span:before{
		background-image: url("../img/common/menu-icon4.png?ver250422");
	}
  	.main-menu > li:nth-child(5) > a > span:before{
		background-image: url("../img/common/menu-icon5.png?ver250422");
	}
	/* ////////////////////////////////////////
	ナビゲーション
	//////////////////////////////////////// */
	.sp-menu-wrap{
		padding-left:15px;
		padding-right:15px;
	}
	.nav-wrap {
		padding-top:30px;
		padding-bottom:100px;
		position: relative;
  		display: none;
    	width: 100%;
		height:100vh;
		background-color: #E3002D;
		transition: .5s transform ease-in-out;
    	z-index: 10;
		/*スクロールするようにする*/
  		overflow: scroll;
		 /*滑らかスクロール*/
  		-webkit-overflow-scrolling: touch;
   	}
	.nav-open {
	  display: block;
	  animation: showAni .5s ease 0s 1 normal;
	  opacity:1;
	}
	.nav-close {
	  display: none;
	}
   .nav-list > li {
		display: block;
	}
	.nav-list > li a{
		display: block;
		line-height:1.5em;
		padding:0 10px 20px 10px;
		text-align: center;
	}
	/* ////////////////////////////////////////
	ナビゲーションボタン
	//////////////////////////////////////// */
  	.nav-button {
        line-height: 1em;
		display:table-cell;
    	width: 18%;
		padding-top:5px;
		padding-bottom:10px;
		background-color: #E3002D;
		vertical-align: middle;
  	}
  	.nav-button span{
        margin-top:6px;
        display: block;
        color:#fff;
        text-align: center;
    }
 	.nav-button ul {
		position: relative;
    	width: 38px;
        margin:8px auto 0 auto;
    	height: 18px;
    	cursor: pointer;
 	}
 	.nav-button.active ul {
    	height: 18px;
 	}
  	.nav-button li {
		position: absolute;
		box-sizing: border-box;
		width: 100%;
		height: 2px;
		background-color: #fff;
		border-radius:40px;
		transition: all 0.4s;
	  }
	  .nav-button li:nth-of-type(1) {
		top: 0;
	  }
	  .nav-button li:nth-of-type(2) {
		top: 8px;
	  }
	  .nav-button li:nth-of-type(3) {
		top: 16px;
	  }
	  .nav-button.active li:nth-of-type(1) {
		-webkit-transform: translateY(8px) rotate(-315deg);
		transform: translateY(8px) rotate(-315deg);
	  }
	  .nav-button.active li:nth-of-type(2) {
		opacity: 0;
	  }
	  .nav-button.active li:nth-of-type(3) {
		-webkit-transform: translateY(-8px) rotate(315deg);
		transform: translateY(-8px) rotate(315deg);
	  }
    .other-box .sub-menu {
        display: table;
        width:100%;
    }
    .other-box .sub-menu >* {
        display: table-cell;
    }
    /* ////////////////////////////////////////
	スクロールボタン
	//////////////////////////////////////// */
	.pagetop-btn{
		width:80px;
		transition: all 0.3s;
	}
	.pagetop-btn.abs{
		position: absolute;
		right: 10px;
		top:-80px;
	}
	.fixed {
		position: fixed;
		right: 10px;
		bottom: 10px;
	}
	/* ////////////////////////////////////////
	フッター
	//////////////////////////////////////// */
	footer .copyright-bg{
		background: url("../img/index/date-bg-sp.png");
		background-size: 100% auto;
	}
	footer .insect5:before{
		margin-left:0;
		left:20px;
	}
	.text-credit{
		text-shadow: 
		#F9E8A5 2px 0px 2px, #F9E8A5 -2px 0px 2px,
		#F9E8A5 0px -2px 2px, #F9E8A5 -2px 0px 2px,
		#F9E8A5 2px 2px 2px, #F9E8A5 -2px 2px 2px,
		#F9E8A5 2px -2px 2px, #F9E8A5 -2px -2px 2px,
		#F9E8A5 1px 2px 2px, #F9E8A5 -1px 2px 2px,
		#F9E8A5 1px -2px 2px, #F9E8A5 -1px -2px 2px,
		#F9E8A5 2px 1px 2px, #F9E8A5 -2px 1px 2px,
		#F9E8A5 2px -1px 2px, #F9E8A5 -2px -1px 2px,
		#F9E8A5 1px 1px 2px, #F9E8A5 -1px 1px 2px,
		#F9E8A5 1px -1px 2px, #F9E8A5 -1px -1px 2px;
	}
}
/* ////////////////////////////////////////
スマホ横
//////////////////////////////////////// */
@media screen and (min-width: 500px) and (max-width: 767px) {
}
/* ////////////////////////////////////////
タブレットのみ
//////////////////////////////////////// */
@media screen and (min-width: 767px) and (max-width: 1100px) {
	/* ////////////////////////////////////////
	フッター
	//////////////////////////////////////// */
}
@media screen and (min-width: 501px) and (max-width: 1100px) {
	.nav-button {
		width:10%;
	}
}
/* ////////////////////////////////////////
SPのみ
//////////////////////////////////////// */
@media screen and (max-width: 767px){
    /* ////////////////////////////////////////
	フッター
	//////////////////////////////////////// */
}
/* ////////////////////////////////////////
SPのみ(小)
//////////////////////////////////////// */
@media screen and (max-width: 380px){
}