@charset "utf-8";

@media screen and (min-width:768px){
/*pc・タブレットcss*/

/* +++++++++++++++++++++++++ */

#wrapper{
	position:relative;
}
.content-area{
	width:100%;
	max-width:1100px;
	margin-left: auto;
	margin-right: auto;
}


/* +++++++++++++++++++++++++ */

.ttl01{
	position:relative;
	padding:30px 0;
	margin-bottom:70px;
	font-size:56px;
	line-height:1.2;
	text-align:center;
	color:#000;
	font-weight:700;
	letter-spacing:0.2em;
	text-indent:-0.2em;
}
.ttl01:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:6px;
	background:url(../img/common/ttl_line.png) repeat-x;
}
.ttl01:after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:6px;
	background:url(../img/common/ttl_line.png) repeat-x;
}
.ttl01 .c01{ color:#FE9306;}
.ttl01 .c02{ color:#FFBF1F;}

/* +++++++++++++++++++++++++ */

.ttl02{
	text-align:center;
	margin-bottom:70px;
}
.ttl02 .en{
	display:block;
	font-size:60px;
	line-height:1.2;
	font-weight:700;
	vertical-align: bottom;
	color:#F08C00;
	margin-bottom:10px;
}
.ttl02 .jp{
	display:block;
	font-size:20px;
	line-height:1;
	font-weight:700;
	vertical-align: bottom;
}

/* +++++++++++++++++++++++++ */

.ttl03{
	position:relative;
	margin-bottom:40px;
	padding-bottom:20px;
	font-size:30px;
	font-weight:700;
	border-bottom:solid 1px #E1E1E1;
}
.ttl03:before{
	content:"";
	position:absolute;
	bottom:-1px;
	left:0;
	width:30%;
	height:1px;
	background-color:#F08C00;
}

/* +++++++++++++++++++++++++ */

.ttl04{
	position:relative;
	padding-left:20px;
	margin-bottom:10px;
	font-size:26px;
	font-weight:700;
}
.ttl04:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:5px;
	height:100%;
	background-color:#ccc;
}


/* +++++++++++++++++++++++++　table */

.base-table{
	width:100%;
	border: solid 1px #E1E1E1;
	border-collapse:collapse;
}
.base-table th,
.base-table td{
	padding: 20px 10px;
	vertical-align:top;
	border: solid 1px #E1E1E1;
}
.base-table thead th{
	background-color:#F08C00;
	color:#fff;
	line-height:1.6;
}
.base-table tbody th{
	background-color:#FFFCD1;
	line-height:1.6;
}
.base-table td{
	line-height:1.6;
	vertical-align:middle;
}
.base-table .w05{ width:5%;}
.base-table .w10{ width:5%;}
.base-table .w20{ width:20%;}
.base-table .w30{ width:30%;}
.base-table .w40{ width:40%;}

/* +++++++++++++++++++++++++　btn */

.base-btn{
}
.base-btn a{
	position:relative;
	display:block;
	padding:20px 20px;
	text-align:center;
	color: #fff;
	line-height:1;
	border: solid 1px #fff;
	text-decoration:none;
	-webkit-transition: all .25s;
	transition: all .25s;
	border-radius:1000px;
}
.base-btn a:after{
	content:"";
	position:absolute;
	right: 20px;
	top:50%;
	width: 10px;
	height: 10px;
	margin-top:-5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.base-btn a:hover{
	border: solid 1px #fff;
	background:#fff;
	color: #333;
	filter: alpha(opacity=100); -moz-opacity:1; opacity:1; 
}
.base-btn a:hover:after{
	border-top: 1px solid #333;
	border-right: 1px solid #333;
}
.base-btn.btn-inline{
	min-width:300px;
	display:inline-block;
}

/* +++++++++++++++++++++++++ */

#mv {
	position: relative;
	background:url(../img/common/mv_bg.jpg) no-repeat center center / cover;
}
#mv:before{
	content:"";
	position:absolute;
	bottom:-2px;
	left:0;
	width:100%;
	padding-top:20%;
	background: url(../img/common/mv_deco.png) no-repeat center bottom / cover;
}
#mv.inner-page{
	margin-bottom:100px;
}
#mv.inner-page:before{
	padding-top:8.5%;
	background: url(../img/common/inner_mv_deco.png) no-repeat center bottom / cover;
}
#mv #common-header {
	width:100%;
	padding: 0 2vw;
	margin-bottom:4vw;
}
#mv .header-logo{
	width:30vw;
	background-color:#fff;
	padding:2vw;
	border-radius:0 0 10px 10px;
}

#inner-page-mv{
	padding:0vw 0 15vw;
}
.inner-page-ttl{
	font-size:60px;
	line-height:1.2;
	text-align:center;
	color:#fff;
	font-weight:700;
	letter-spacing:0.2em;
	text-indent:-0.2em;
}



/* +++++++++++++++++++++++++ */

.gnavi{
}
.navi-child{
	-js-display: flex !important; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex !important;
}
.sp-navi-btn{
	display:none;
}
.gnavi li{
	position:relative;
	padding:0 1.5em;
}
.gnavi li:after{
	content:"";
	position:absolute;
	top:50%;
	right:0;
	height:1em;
	width:1px;
	margin-top:-0.5em;
	background-color:#fff;
}
.gnavi li:last-child{
	padding-right:0;
}
.gnavi li:last-child:after{
	display:none;
}
.gnavi a{
	color:#fff;
	line-height:1;
	font-size:1.2vw;
	text-decoration:none;
}

/* +++++++++++++++++++++++++ */


#common-footer{
	padding:30px 0;
	background-color:#584D43;
	color:#fff;
}
#common-footer .copyright{
	font-size:12px;
	text-align:center;
	color:rgba(255,255,255,0.7);
}



}

@media screen and (min-width:768px) and ( max-width:1200px) {
	
	.content-area{
		padding-left:5vw;
		padding-right:5vw;
	}


}

@media (max-width: 768px) {
	
	.dammy-box{
		padding-bottom:20vw;
	}

	.content-area{
		padding-left:5vw;
		padding-right:5vw;
	}
					
	
	/* +++++++++++++++++++++++++ */
	
	.ttl01{
		position:relative;
		padding:5vw 0;
		margin-bottom:7vw;
		font-size:32px;
		line-height:1.2;
		text-align:center;
		color:#000;
		font-weight:700;
		letter-spacing:0.1em;
		text-indent:-0.1em;
	}
	.ttl01:before{
		content:"";
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:6px;
		background:url(../img/common/ttl_line_sp.png) repeat-x;
	}
	.ttl01:after{
		content:"";
		position:absolute;
		bottom:0;
		left:0;
		width:100%;
		height:6px;
		background:url(../img/common/ttl_line_sp.png) repeat-x;
	}
	.ttl01 .c01{ color:#FE9306;}
	.ttl01 .c02{ color:#FFBF1F;}
	
	/* +++++++++++++++++++++++++ */
	
	.ttl02{
		text-align:center;
		margin-bottom:7vw;
	}
	.ttl02 .en{
		display:block;
		font-size:50px;
		line-height:1.2;
		font-weight:700;
		vertical-align: bottom;
		color:#F08C00;
		margin-bottom:10px;
	}
	.ttl02 .jp{
		display:block;
		font-size:18px;
		line-height:1;
		font-weight:700;
		vertical-align: bottom;
	}
	
	
	/* +++++++++++++++++++++++++ */
	
	.ttl03{
		position:relative;
		margin-bottom:5vw;
		padding-bottom:3vw;
		font-size:22px;
		font-weight:700;
		border-bottom:solid 1px #E1E1E1;
	}
	.ttl03:before{
		content:"";
		position:absolute;
		bottom:-1px;
		left:0;
		width:30%;
		height:1px;
		background-color:#F08C00;
	}
	
	
	/* +++++++++++++++++++++++++ */
	
	.ttl04{
		position:relative;
		padding-left:20px;
		margin-bottom:3vw;
		font-size:18px;
		font-weight:700;
	}
	.ttl04:before{
		content:"";
		position:absolute;
		top:10%;
		left:0;
		width:5px;
		height:80%;
		background-color:#ccc;
	}
	
		
	
	/* +++++++++++++++++++++++++　table */
	
	.base-table{
		width:100%;
		border: solid 1px #E1E1E1;
		border-collapse:collapse;
	}
	.base-table th,
	.base-table td{
		padding: 2vw;
		vertical-align:top;
		border: solid 1px #E1E1E1;
	}
	.base-table thead th{
		background-color:#F08C00;
		color:#fff;
		line-height:1.6;
	}
	.base-table tbody th{
		background-color:#FFFCD1;
		line-height:1.6;
	}
	.base-table td{
		line-height:1.6;
		vertical-align:middle;
	}
	.base-table .w05{ width:5%;}
	.base-table .w10{ width:5%;}
	.base-table .w20{ width:20%;}
	.base-table .w30{ width:30%;}
	.base-table .w40{ width:40%;}
	
		
	
	
	/* +++++++++++++++++++++++++　btn */
	
	.base-btn{
	}
	.base-btn a{
		position:relative;
		display:block;
		padding:20px 20px;
		text-align:center;
		color: #fff;
		line-height:1;
		border: solid 1px #fff;
		text-decoration:none;
		-webkit-transition: all .25s;
		transition: all .25s;
		border-radius:1000px;
	}
	.base-btn a:after{
		content:"";
		position:absolute;
		right: 20px;
		top:50%;
		width: 10px;
		height: 10px;
		margin-top:-5px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.base-btn a:hover{
		border: solid 1px #fff;
		background:#fff;
		color: #333;
		filter: alpha(opacity=100); -moz-opacity:1; opacity:1; 
	}
	.base-btn a:hover:after{
		border-top: 1px solid #333;
		border-right: 1px solid #333;
	}
	.base-btn.btn-inline{
		min-width:100%;
		display:block;
	}
	
	/* +++++++++++++++++++++++++ */
	
	
	#mv {
		position: relative;
		background:url(../img/common/mv_bg.jpg) no-repeat center center / cover;
	}
	#mv:before{
		content:"";
		position:absolute;
		bottom:-2px;
		left:0;
		width:100%;
		padding-top:20%;
		background: url(../img/common/mv_deco_sp.png) no-repeat center bottom / cover;
	}
	#mv #common-header {
		width:100%;
		padding:0 2vw;
		margin-bottom:7vw;
	}
	#mv .header-logo{
		width:56vw;
		background-color:#fff;
		padding:4vw 2vw;
		border-radius:0 0 10px 10px;
	}
	#mv.inner-page{
		margin-bottom:10vw;
	}
	#mv.inner-page:before{
		padding-top:8.5%;
		background: url(../img/common/inner_mv_deco.png) no-repeat center bottom / cover;
	}
	#inner-page-mv{
		padding:0vw 0 15vw;
	}
	.inner-page-ttl{
		font-size:30px;
		line-height:1.2;
		text-align:center;
		color:#fff;
		font-weight:700;
		letter-spacing:0.1em;
		text-indent:-0.1em;
	}
		
	/* +++++++++++++++++++++++++ */
	
	
	.gnavi{
		display:block;
	}
	
	.sp-navi-btn{
		position: fixed;
		z-index:1000;
		top:0;
		right:0;
		display:block;
		width:14vw;
		height:14vw;
		padding:3.5vw 2.5vw;
		background-color:#584D43;
	}
	.sp-navi-btn .gnavi-toggle{
		cursor:pointer;
		font-size:9px;
		text-align:center;
		color:#fff;
	}
	.sp-navi-btn .gnavi-toggle .gnavi-toggle-inner{
		position:relative;
		width:70%;
		height:3.5vw;
		margin: 0 auto 1vw;
	}
	.sp-navi-btn .gnavi-toggle span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 1px;
		background-color: #fff;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.sp-navi-btn .gnavi-toggle span:nth-of-type(1) {
		top: 0;
	}
	.sp-navi-btn .gnavi-toggle span:nth-of-type(2) {
		top: 50%;
		margin-top:-1px;
	}
	.sp-navi-btn span:nth-of-type(3) {
		bottom: 0;
	}
	.sp-navi-btn .gnavi-toggle.active span {
		height: 1px;
		border-radius: 0;
	}
	.sp-navi-btn .gnavi-toggle.active span:nth-of-type(1) {
		-webkit-transform: translateY(1.7vw) rotate(-315deg);
		transform: translateY(1.7vw) rotate(-315deg);
	}
	.sp-navi-btn .gnavi-toggle.active span:nth-of-type(2) {
		opacity: 0;
	}
	.sp-navi-btn .gnavi-toggle.active span:nth-of-type(3) {
		width:100%;
		margin-left:0%;
		-webkit-transform: translateY(-1.7vw) rotate(315deg);
		transform: translateY(-1.7vw) rotate(315deg);
	}
	
	/* +++++++++++++++++++++++++　gnavi */
	
	.navi-bg{
		display:none;
		position: fixed;
		z-index:100;
		width: 100%;
		height:100%;
		background-color:rgba(0,0,0,0.9);
	}
	.navi-bg.active{
		display: block;
	}
	.sp-navi-box,
	.navi-child{
		display:block;
	}
	.navi-child{
		display:none;
		position:absolute;
		top: -webkit-calc(13vw - 3px) ;
		top: calc(13vw - 3px) ;	
		left:0;
		z-index:101;
		width:100%;
		overflow:scroll;
		padding-bottom:5vw;
	}
	.navi-child.active{
		display:block;
	}
	#common-header.active{
		position:relative;
		display: block;
	}
	body.active,
	html.active{
		overflow:hidden;
		height:100%;
	}
	.navi-child li a{
		display:block;
		padding:5vw;
		border-bottom: solid 1px rgba(255,255,255,0.3);
		color:#fff;
		text-decoration:none;
	}
		
	
	
	
	/* +++++++++++++++++++++++++ */
	
	#thanks{
		padding-top:10vw;
	}
	#thanks .thanks-ttl{
		font-size:18px;
		font-weight:700;
		text-align:center;
		margin-bottom:3vw;
	}
	
	/* +++++++++++++++++++++++++ */
	
	
	#common-footer{
		padding:5vw 0;
		background-color:#211713;
		color:#fff;
	}
	#common-footer .footer-logo{
		width:40%;
		margin: 0 auto 5vw;
	}
	#common-footer .footer-address{
		margin-bottom:5vw;
		-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
		-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
		-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
	}
	#common-footer .footer-address li{
		width:100%;
		margin-bottom:3vw;
		font-size:12px;
		line-height:1.7;
		text-align:center;
	}
	#common-footer .copyright{
		font-size:11px;
		text-align:center;
		color:rgba(255,255,255,0.7);
	}
	
}


/* 20250423-フッター-プライバシーポリシー */

#common-footer{
	padding:30px 0;
	background-color:#584D43;
	text-align:center;
	font-size:12px;
	color:rgba(255,255,255,0.7);
}
#common-footer a{
	color:rgba(255,255,255,0.7);
}