
@charset "utf-8";


@font-face {
	font-family: 'NotoSansJP';
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: url("../fonts/NotoSansJP-Regular.woff2") format("woff2"),
		 url("../fonts/NotoSansJP-Regular.woff") format("woff");
}
@font-face {
	font-family: 'NotoSansJP';
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2"),
		url("../fonts/NotoSansJP-Bold.woff") format("woff");
}



/* ////////////////////////////////////////////
 *                 Reset
 * //////////////////////////////////////////// */

/* Reset
------------------------------------------*/
*{
	margin: 0;
	box-sizing: border-box;
}
a,
input{
	outline: none;
}
p{
	margin-bottom: 30px;
}
p:empty,
p:last-child{
	margin-bottom: 0;
}
ul, ol, dl{
	margin: 0;
	padding: 0;
}
dt, dd{
	margin: 0;
}
li{
	list-style: none;
}
img{
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
iframe{
	max-width: 100%;
}
em{
	font-style: italic;
}
table{
	border-collapse: collapse;
	border-spacing: 0;
}
i{
	font-style: normal;
}
select,
textarea,
[type="password"],
[type="number"],
[type="text"]{
	-webkit-appearance: none;
	border-radius: 0;
	box-shadow: none;
}

/* Typography
------------------------------------------*/
body{
	color: #333;
	font-size: 16px;
	font-family: 'NotoSansJP';
	line-height: 2;
	letter-spacing: 0.8px;
}
a{
	color: #333;
	text-decoration: none;
	cursor: pointer;
}
a:hover,
a:focus{
	color: #333;
	text-decoration: none;
}
img{
    transition: all .3s;
}
a:hover img{
	opacity: 0.7;
}
.mt0{margin-top: 0px!important;}
.mt5{margin-top: 5px!important;}
.mt10{margin-top: 10px!important;}
.mt15{margin-top: 15px!important;}
.mt20{margin-top: 20px!important;}
.mt25{margin-top: 25px!important;}
.mt30{margin-top: 30px!important;}
.mt35{margin-top: 35px!important;}
.mt40{margin-top: 40px!important;}
.mt45{margin-top: 45px!important;}
.mt50{margin-top: 50px!important;}
.mt55{margin-top: 55px!important;}
.mt60{margin-top: 60px!important;}
.mt65{margin-top: 65px!important;}
.mt70{margin-top: 70px!important;}
.mt75{margin-top: 75px!important;}
.mt80{margin-top: 80px!important;}
.mt85{margin-top: 85px!important;}
.mt90{margin-top: 90px!important;}
.mt95{margin-top: 95px!important;}
.mt100{margin-top: 100px!important;}
.mb0{margin-bottom: 0px!important;}
.mb5{margin-bottom: 5px!important;}
.mb10{margin-bottom: 10px!important;}
.mb15{margin-bottom: 15px!important;}
.mb20{margin-bottom: 20px!important;}
.mb25{margin-bottom: 25px!important;}
.mb30{margin-bottom: 30px!important;}
.mb35{margin-bottom: 35px!important;}
.mb40{margin-bottom: 40px!important;}
.mb45{margin-bottom: 45px!important;}
.mb50{margin-bottom: 50px!important;}
.mb55{margin-bottom: 55px!important;}
.mb60{margin-bottom: 60px!important;}
.mb65{margin-bottom: 65px!important;}
.mb70{margin-bottom: 70px!important;}
.mb75{margin-bottom: 75px!important;}
.mb80{margin-bottom: 80px!important;}
.mb85{margin-bottom: 85px!important;}
.mb90{margin-bottom: 90px!important;}
.mb95{margin-bottom: 95px!important;}
.mb100{margin-bottom: 100px!important;}
.mlr10{margin-left: 10px!important;margin-right: 10px!important;}
.mlr20{margin-left: 20px!important;margin-right: 20px!important;}
.mlr30{margin-left: 30px!important;margin-right: 30px!important;}
.mlr40{margin-left: 40px!important;margin-right: 40px!important;}
.mlr50{margin-left: 50px!important;margin-right: 50px!important;}
.mlr60{margin-left: 60px!important;margin-right: 60px!important;}
.mlr70{margin-left: 70px!important;margin-right: 70px!important;}
.mlr80{margin-left: 80px!important;margin-right: 80px!important;}
.mlr90{margin-left: 90px!important;margin-right: 90px!important;}
.mlr100{margin-left: 100px!important;margin-right: 100px!important;}
.r9{
	transform: rotate( 90deg );
}
.z18{
	transform: rotateY( 180deg );
}
.tb,
.sp{
	display: none;
}

@media screen and (max-width:767px) {
	.mb5{margin-bottom: 1vw!important;}
	.mb10{margin-bottom: 1.5vw!important;}
	.mb15{margin-bottom: 2vw!important;}
	.mb20{margin-bottom: 2.5vw!important;}
	.mb25{margin-bottom: 3vw!important;}
	.mb30{margin-bottom: 3.5vw!important;}
	.mb35{margin-bottom: 4vw!important;}
	.mb40{margin-bottom: 4.5vw!important;}
	.mb45{margin-bottom: 5vw!important;}
	.mb50{margin-bottom: 5.5vw!important;}
	.mb55{margin-bottom: 6vw!important;}
	.mb60{margin-bottom: 6.5vw!important;}
	.mb65{margin-bottom: 7vw!important;}
	.mb70{margin-bottom: 7.5vw!important;}
	.mb75{margin-bottom: 8vw!important;}
	.mb80{margin-bottom: 8.5vw!important;}
	.mb85{margin-bottom: 9vw!important;}
	.mb90{margin-bottom: 9.5vw!important;}
	.mb95{margin-bottom: 10vw!important;}
	.mb100{margin-bottom: 11vw!important;}
}

@media screen and (max-width:820px) {
	.tb{
		display: block;
	}
}

/* Layout
------------------------------------------*/
body{
	background: #fff;
}
#container{
	padding-top: 60px;
	overflow: hidden;
}
.wrap{
	margin: 0 auto;
	padding: 0 20px;
	max-width: 1040px;
}

/*ipad*/
@media screen and (max-width:768px) {

}

@media screen and (max-width:767px) {
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
	#container{
		padding-top: 75px;
		padding-bottom: 80px;
	}
	.wrap{
		padding: 0 15px;
	}
}

/* 共通
------------------------------------------*/
.btn-s1{
	position: relative;
	display: inline-block;
	padding-left: 45px;
	color: #fff;
	width: 395px;
	height: 62px;
	font-size: 20px;
	font-weight: bold;
	text-align: left;
	line-height: 60px;
	letter-spacing: 0.8px;
	text-shadow: 2px 2px 2px rgba(0,0,0,0.16);
	background: linear-gradient(180deg, rgba(204, 77, 76,1) 1.9990458015267176%,rgba(203, 76, 75,1) 1.9990458015267176%,rgba(198, 54, 54,1) 97.22805343511449%);
	border-radius: 5px;
    transition: all .3s;
}
.btn-s1:before{
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	background: linear-gradient(180deg, rgba(217, 93, 91,1) 2.4397591510450987%,rgba(216, 92, 90,1) 2.4397591510450987%,rgba(209, 60, 61,1) 95.49433440089692%);
    transition: all .3s;
}
.btn-s1:after{
	content: '';
	position: absolute;
	top: 0;
	left: 15px;
	width: 100%;
	height: 100%;
	background: url(../images/icon-arrow.svg) no-repeat 0 20px;
	background-size: 20px auto;
    transition: all .3s;
}
.btn-s1.s{
	padding-left: 23px;
	width: 274px;
	height: 40px;
	font-size: 15px;
	line-height: 36px;
}
.btn-s1.s:before{
	top: 2px;
	left: 2px;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
}
.btn-s1.s:after{
	left: 8px;
	background: url(../images/icon-arrow.svg) no-repeat 0 center;
	background-size: 11px auto;
}
.btn-s1.l{
	padding-left: 48px;
	width: 500px;
	height: 80px;
	font-size: 27px;
	line-height: 74px;
}
.btn-s1.l:after{
	left: 16px;
	background: url(../images/icon-arrow.svg) no-repeat 0 center;
	background-size: 22px auto;
}
.btn-s1:hover{
	color: #fff;
	background: linear-gradient(180deg, rgba(220, 117, 116,1) 1.9990458015267176%,rgba(220, 116, 115,1) 1.9990458015267176%,rgba(232, 24, 25,1) 97.22805343511449%);
}
.btn-s1:hover:before{
	background: linear-gradient(178.1329034352034deg, rgba(235, 134, 133,1) 1.9990458015267176%,rgba(235, 134, 133,1) 4.57816475826972%,rgba(254, 30, 31,1) 97.22805343511449%);
}
.btn-s1 span{
	position: relative;
}
.flex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.text-center{
	text-align: center;
}
.header-s1{
	margin-bottom: 35px;
	padding-top: 100px;
	text-align: center;
	background: url(../images/ribbon.png) no-repeat center 0;
	background-size: 64px auto;
}
.header-s1 h2{
	margin-bottom: 25px;
	font-size: 30px;
}
.content-s1 {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 130px;
	padding: 50px 0;
	min-height: 580px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	background: #111;
}
.content-s1.s {
	min-height: 520px;
}
.content-s1:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.content-s1 .wrap{
	position: relative;
	opacity: 1;
}
.content-s1 .upper{
	margin-bottom: 30px;
	font-size: 30px;
	line-height: 1.6;
}
.content-s1 .upper b{
	display: block;
	font-size: 40px;
}
.content-s1 .bottom{
	font-size: 20px;
}
.content-s1 .contact{
	margin-bottom: 15px;
}
.content-s2 .wrap-inr{
	padding: 10px;
	background: linear-gradient(180deg, rgba(255, 216, 108,1) 1.9879519221294357%,rgba(255, 216, 108,1) 4.240076823068991%,rgba(208, 169, 39,1) 96.81432033920005%);
}
.content-s2 .wrap-box{
	padding: 40px;
	background: #F8F7F5;
}
.content-s2 h2{
	margin-bottom: 55px;
	padding-bottom: 15px;
	font-size: 35px;
	text-align: center;
	border-bottom: #333 8px solid;
}
.label-s1{
	display: inline-block;
	margin-bottom: 10px;
	position: relative;
	padding-left: 2px;
	padding-right: 20px;
	height: 32px;
	color: #fff;
	font-weight: bold;
	line-height: 32px;
	background: #4dabb9;
}
.label-s1:before{
	content: '';
	position: absolute;
	top: -1px;
	right: -1px;
	width: 12px;
	height: calc(100% + 2px);
	background: #fff;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.f1{
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-style: normal;
}

@media screen and (max-width:820px) {
	.content-s1 {
		margin-bottom: 12vw;
		min-height: 380px;
	}
	.content-s1.s {
		min-height: 320px;
	}
	.content-s2 h2 {
	    font-size: 30px;
	    line-height: 1.5;
	}
}

@media screen and (max-width:767px) {
	.btn-s1{
		display: flex;
		align-items: center;
		padding-left: 55px;
		width: 345px;
		height: 80px;
		line-height: 1.2;
	}
	.btn-s1:after{
		left: 20px;
		background: url(../images/icon-arrow.svg) no-repeat 0 center;
		background-size: 22px auto;
	}
	.btn-s1 b{
		display: block;
		font-size: 30px;
	}
	.flex.s1 .image{
		order: 0;
	}
	.flex.s1 .text{
		order: 1;
	}
	.flex>div{
		width: 100%!important;
	}
	.content-s1 {
		padding: 35px 0;
		min-height: 304px;
	}
	.content-s1 .upper{
		margin-bottom: 15px;
		font-size: 20px;
	}
	.content-s1 .upper b{
		font-size: 20px;
	}
	.content-s1 .bottom{
		font-size: 16px;
	}
	.content-s1 .contact{
		margin-bottom: 10px;
	}
	.content-s2 .wrap-box {
	    padding: 25px 10px;
	}
	.content-s2 h2 {
		margin-bottom: 10vw;
	    font-size: 20px;
	    border-bottom: #333 4px solid;
	}
	.header-s1{
		margin-bottom: 17vw;
		padding-top: 80px;
	}
	.header-s1 h2 {
	    margin-bottom: 3vw;
	    font-size: 25px;
	}
	.label-s1{
		margin-bottom: 20px;
	}
}

/* header
------------------------------------------*/
#header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #fff;
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);
	z-index: 10;
}
#header #hinr{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	padding: 10px;
}
#header .logo{
	width: 117px;
}

@media screen and (max-width:820px) {
	#header{
		text-align: center;
	}
	#header #hinr{
		justify-content: center;
		padding: 0;
	}
	#header .logo{
		padding: 5px 0;
		width: 111px;
	}
	#header .text{
		width: 100%;
		color: #fff;
		font-size: 14px;
		background: #d0a927;
	}
	#header .contact{
		display: flex;
		justify-content: center;
		align-items: center;
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 80px;
		text-align: center;
	    background: rgba(51,51,51, 0.64);
	    backdrop-filter: blur(7px);
	    -webkit-backdrop-filter: blur(7px);
	    z-index: 99;
	}
}

/* main
------------------------------------------*/
/* .mv {
	margin-bottom: 90px;
} */
.mv .upper{
	position: relative;
	background: url(../images/mv.jpg) no-repeat center center;
	background-size: cover;
}
.mv .upper:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    background: rgba(255,255,255, 0);
    backdrop-filter: blur(28px);
    -webkit-backdrop-filter: blur(28px);
}
.mv .upper .wrap{
	position: relative;
}
.mv .image{
	position: relative;
	text-align: center;
}
.mv .image:before{
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 4000px;
	height: 270px;
	background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.8));
	z-index: 1;
    transform: translateX(-50%);
}
.mv .image img{
	position: relative;
}
.mv .text {
	position: absolute;
	top: 50%;
	left: 60px;
	color: #fff;
	font-weight: bold;
	line-height: 0;
	z-index: 2;
    transform: translateY(-45%);
}
.mv .text .u{
	display: block;
	padding: 0 20px;
	padding-right: 5px;
	height: 87px;
	font-size: 40px;
	line-height: 87px;
	background: #201f1b;
}
.mv .text .u i{
	font-size: 35px;
}
.mv .text .m{
	display: flex;
	align-items: end;
	font-size: 40px;
}
.mv .text .m b{
	display: inline-block;
	padding: 0 20px;
	height: 87px;
	color: #333;
	font-size: 60px;
	line-height: 82px;
	background: #fff;
}
.mv .text .m span{
	display: inline-block;
	padding: 0 20px;
	height: 67px;
	line-height: 67px;
	background: #201f1b;
}
.mv .text .m i{
	font-size: 35px;
}
.mv .text .b{
	display: inline-block;
	padding: 0 20px;
	height: 67px;
	font-size: 30px;
	line-height: 67px;
	background: #201f1b;
}
.mv .text .b b{
	color: #d0a927;
}
.mv .contact {
	position: absolute;
	left: 0;
	bottom: 50px;
	width: 100%;
	text-align: center;
	z-index: 2;
}
.mv .bottom {
	padding: 10px;
	color: #fff;
	font-size: 20px;
	text-align: center;
	background: #d0a927;
}
.after-mv-section {
	background-color: #F8F7F5;
	padding: 90px 0 40px;
    background-color: #F8F7F5;
    margin-bottom: 90px;
}
.after-mv-section .flex{
	flex-wrap: nowrap;
}
.after-mv-section .top-text{
	background-color: #201F1B;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	padding: 20px 25px 24px;
	letter-spacing: 0.02em;
	line-height: 1.4;
	margin-bottom: 3px;
}
.after-mv-section .annotation{
	font-size: 13px;
	letter-spacing: 0.02em;
	line-height: 1.53;
	margin-bottom: 21px;
}
.after-mv-section .wrap .flex:nth-child(3) {
	column-gap: 29px;
	align-items: stretch;
	margin-bottom: 30px;
}
.after-mv-section .wrap .flex:nth-child(3) img {
    width: 47.1%;
    object-fit: cover;
}
.after-mv-section .wrap .flex:nth-child(3) .text-right{
	display: flex;
	flex-direction: column-reverse;
	row-gap: 34px;
}
.after-mv-section .wrap .flex:nth-child(3) .text-right h3{
	font-size: 25px;
	line-height: 1.6;
}
/* .after-mv-section .flex:nth-child(3) .text-right p{
	font-size: 20px;
} */
.after-mv-section .flex:nth-child(4) {
	column-gap: 60px;
}
.after-mv-section .flex:nth-child(4) .text-left{
	font-size: 29px;
	font-weight: bold;
	line-height: 1.33;
}
.after-mv-section .flex:nth-child(4) .text-pink{
	color: #FF4A6F;
}
.after-mv-section .flex:nth-child(4) .gold-bg-text{
	display: inline-block;
    max-width: 420px;
    font-size: 20px;
    letter-spacing: 0.02em;
    height: 42px;
    line-height: 42px;
    padding: 0 22px 0 8px;
    background-color: #D0A927;
    color: #fff;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
	margin-bottom: 10px;
}
.after-mv-section .flex:nth-child(4) .contact {
    flex: 1 0 auto;
	padding-top: 42px;
}
.after-mv-section .flex:nth-child(4) .contact .btn-s1 {
	width: 100%;
	line-height: 1.5;
	height: 120px;
	font-size: 30px;
	padding: 18px 23px 16px 45px;
	letter-spacing: 0.04em;
	max-width: 420px;
}
.after-mv-section .flex:nth-child(4) .contact .btn-s1:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 20.8px;
	width: 17px;
	height: 24.2px;
	background: url(../images/icon-arrow.svg) no-repeat 0;
	background-size: 100% 100%;
	transition: all .3s;
	transform: translateY(-50%);
}

.c01 {
	margin-bottom: 75px;
}
.c01 .box:not(:last-child){
	margin-bottom: 180px;
}
.c01 .inr{
	padding: 0 50px;
}
.c01 .header{
	margin-bottom: 45px;
	padding-left: 20px;
	border-left: #333 6px solid;
}
.c01 .b2 .header,
.c01 .b1 .header{
	margin-bottom: 70px;
}
.c01 .header .sub{
	display: inline-block;
	position: relative;
	margin-left: 20px;
	margin-bottom: 15px;
	padding-left: 5px;
	height: 47px;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	line-height: 47px;
	background: #ff92a9;
}
.c01 .header .sub:before{
	content: '';
	position: absolute;
	top: 0;
	left: -20px;
	width: 20px;
	height: 100%;
	background: #ff92a9;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.c01 .header .sub i{
	display: inline-block;
	margin-left: 10px;
	padding: 0 10px;
	background: #ff4a6f;
}
.c01 h2{
	font-size: 40px;
	line-height: 1.4;
}
.c01 h2 i{
	color: #747474;
}
.c01 h2 b{
	color: #d95d5b;
}
.c01 h2 span{
	display: inline-block;
	margin-bottom: 5px;
	font-size: 30px;
	line-height: 1.5;
}
.c01 .b1 .u{
	margin-right: -60px;
	margin-bottom: 65px;
}
.c01 .b1 .u .l{
	width: 46%;
}
.c01 .b1 .u .l b{
	margin: 0 5px;
	font-size: 25px;
}
.c01 .b1 .u .l i{
	font-size: 13px;
}
.c01 .b1 .u .l span{
	color: #d95d5b;
	font-size: 20px;
	font-weight: bold;
}
.c01 .b1 .u .r{
	width: 52%;
}
.c01 .b1 .m{
	margin-bottom: 60px;
}
.c01 .b1 .m .s1{
	margin-bottom: 60px;
}
.c01 .b1 .m .s1 b{
	font-size: 20px;
}
.c01 .b1 .m .s1 span{
	font-weight: bold;
}
.c01 .b1 .m .s2{
	color: #d95d5b;
	font-weight: bold;
	font-size: 20px;
}
.c01 .b1 .b .l{
	padding-top: 10px;
	width: 46.5%;
}
.c01 .b1 .b .r{
	width: 50%;
}
.c01 .b1 .b .r b{
	font-size: 20px;
	line-height: 1.8;
}
.c01 .b1 .b .r span{
	color: #d95d5b;
	font-size: 20px;
	font-weight: bold;
}
.c01 .b1 .b .r span b{
	font-size: 35px;
}
.c01 .b2 .u{
	margin-bottom: 50px;
}
.c01 .b2 .u b{
	font-size: 20px;
}
.c01 .b2 figure{
	text-align: center;
}
.c01 .b2 figure img{
	max-width: 600px;
}
.c01 .b2 figure figcaption{
	max-width: 600px;
	margin: 0 auto;
	text-align: right;
}
.c01 .b3 {
	font-size: 15px;
}
.c01 .b3 .u{
	margin-bottom: 45px;
}
.c01 .b3 .b .list{
	min-width: 500px;
}
.c01 .b3 .u b{
	font-size: 20px;
}
.c01 .b3 h3{
	text-align: center;
	margin-bottom: 20px;
}
.c01 .b3 h3 span{
	display: inline-block;
	padding: 0 45px;
	height: 36px;
	color: #fff;
	font-size: 20px;
	line-height: 36px;
	background: #d0a927;
	border-radius: 18px;
}
.c01 .b3 dl{
	display: flex;
	justify-content: space-between;
	border: #ccc 1px solid;
	border-bottom: none;
}
.c01 .b3 dl:last-child{
	border-bottom: #ccc 1px solid;
}
.c01 .b3 dt{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
	width: 29%;
	background: #f8f7f5;
	border-right: #ccc 1px solid;
}
.c01 .b3 dd{
	padding: 20px;
	padding-right: 24%;
	width: 71%;
}
.c01 .b4 .u {
    margin-bottom: 50px;
}
.c01 .b4 .u b{
	font-size: 20px;
}
.c02:before {
	background: url(../images/c02-bg2.jpg) no-repeat center 0;
	background-size: cover;
}
.c03 {
	margin-bottom: 200px;
}
.c03 .upper{
	margin-bottom: 30px;
}
.c03 .l{
	width: 35%;
	font-size: 15px;
	text-align: center;
}
.c03 .l img{
	margin-bottom: 15px;
	border-radius: 100%;
}
.c03 .r{
	padding-top: 20px;
	width: 58%;
}
.c03 h3{
	margin-bottom: 35px;
	font-size: 30px;
	line-height: 1.6;
}
.c04 {
	margin-bottom: 120px;
}
.c04 .box:not(:last-child){
	margin-bottom: 150px;
}
.c04 .box .u{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin-bottom: 130px;
	padding: 30px 0;
	min-height: 240px;
	color: #fff;
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
}
.c04 .box .u:before{
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 5000px;
	height: 100%;
	background: linear-gradient(180deg, rgba(255, 216, 108,1) 2.2944297082228116%,rgba(254, 215, 107,1) 2.2944297082228116%,rgba(208, 169, 39,1) 96.72414393471364%);
    transform: translateX(-50%);
    z-index: -1;
}
.c04 .inr-box{
	margin-bottom: 135px;
}
.c04 .box h3{
	display: inline-block;
	margin-bottom: 15px;
	padding: 0 45px;
	height: 52px;
	font-size: 30px;
	line-height: 52px;
	background: #d0a927;
	border-radius: 26px;
}
.c04 .box .u p{
	text-shadow: 0px 3px 6px rgba(0,0,0,0.16);
}
.c04 .box .b{
	padding: 0 50px;
}
.c04 .inr-box.s2{
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
	gap: 80px calc(17.5% / 2);
	margin: 0 -50px;
}
.c04 .inr-box.s2 .bx2{
	width: 27.5%;
}
.c04 .box h4{
	margin-bottom: 50px;
	font-size: 30px;
	text-align: center;
}
.c04 .box h4 span{
	display: inline-block;
	padding: 5px 0;
	border-top: #000 1px solid;
	border-bottom: #000 1px solid;
}
.c04 .box .l{
	width: 50%;
}
.c04 .box .r{
	margin-bottom: -10px;
	width: 45.5%;
	font-size: 20px;
	font-weight: bold;
}
.c04 .box .r dl{
    display: flex;
    flex-flow:column;
    justify-content: space-between;
    height: 100%;
}
.c04 .box dt{
	line-height: 1.4;
}
.c04 .box .date{
	display: inline-block;
	position: relative;
	padding: 0 5px;
	padding-right: 20px;
	height: 32px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 32px;
	background: #ff4a6f;
}
.c04 .box .date:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 11px;
	height: 100%;
	background: #fff;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.c04 .box .flex{
	margin-bottom: 50px;
}
.c04 .box ul li{
    list-style: disc;
	margin-left: 1em;
}
.c04 .box ul li::marker{
    font-size: 75%;
}
.c04 .box .payment{
	display: block;
	margin-bottom: 5px;
	font-size: 30px;
	line-height: 1.2;
}
.c04 .box .payment b{
	font-size: 40px;
}
.c04 .box .payment i{
	font-size: 20px;
}
.c04 .bx2 dt{
	margin-bottom: 8px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.c04 .bx2 dd{
	font-size: 15px;
}
.c04 .bx2 dd img{
	margin-bottom: 5px;
}
.c04 .bx2 figcaption{
	line-height: 1.5;
}
.c04 .bottom{
	margin-top: 80px;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	line-height: 1.6;
}
.c05 {
	padding-top: 120px;
	padding-bottom: 200px;
	background: #f8f7f5;
	border-top: #c4b9a5 1px solid;
}
.c05 .header{
	margin-bottom: 60px;
}
.c05 .box{
	margin-bottom: 65px;
	padding: 50px;
	font-size: 15px;
	background: #ddf0f3;
}
.c05 .box:last-child{
	margin-bottom: 0;
}
.c05 .box.b1{
	font-size: 16px;
}
.c05 .box-inr{
	padding: 50px;
	background: #fff;
}
.c05 .upper{
	margin-bottom: 45px;
}
.c05 h3{
	font-size: 30px;
}
.c05 .text{
	margin-top: -5px;
	width: 57.5%;
}
.c05 .list{
	margin-bottom: 50px;
	max-width: 320px;
}
.c05 .list dt::after{
	content: "：";
}
.c05 .text .list dt,
.c05 .text .list dd{
	display: inline-block;
}
.c05 .image{
	width: 38%;
}
.c05 .b1 .text{
	width: 61%;
}
.c05 .b1 .image{
	width: 33%;
}
.c06:before {
	background: url(../images/c06-bg.jpg) no-repeat center 0;
	background-size: cover;
}
.c07 {
	margin-bottom: 160px;
}
.c07 .header{
	margin-bottom: 80px;
}
.c07 .box{
	margin-bottom: 150px;
	font-size: 15px;
}
.c07 .box:last-child{
	margin-bottom: 0;
}
.c07 .upper{
	margin-bottom: 45px;
	padding-left: 20px;
	border-left: #333 6px solid;
}
.c07 .sub{
	display: inline-block;
	position: relative;
	margin-left: 20px;
	margin-bottom: 15px;
	padding-left: 10px;
	padding-right: 15px;
	height: 47px;
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	line-height: 47px;
	background: #6799e5;
}
.c07 .sub:before{
	content: '';
	position: absolute;
	top: 0;
	left: -20px;
	width: 20px;
	height: 100%;
	background: #6799e5;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.c07 h3{
	font-size: 30px;
	line-height: 1.5;
}
.c07 h3 b{
	display: block;
	font-size: 40px;
}
.c07 .bottom{
	padding: 0 50px;
}
.c07 .u{
	margin-bottom: 50px;
}
.c07 .b img{
	width: 100%;
	border-radius: 10px;
}
.c08:before {
	background: url(../images/c08-bg.jpg) no-repeat center 0;
	background-size: cover;
}
.c09 {
	margin-bottom: 160px;
}
.c09 .header{
	margin-bottom: 80px;
}
.c09 .inr{
	padding: 0 50px;
}
.c09 .box:not(:last-child){
	margin-bottom: 150px;
}
.c09 h3{
	margin-bottom: 50px;
	font-size: 30px;
	text-align: center;
}
.c09 h3 span{
	display: inline-block;
	padding: 10px 0;
	border-top: #000 1px solid;
	border-bottom: #000 1px solid;
}
.c09 .flex .image{
	width: 50%;
}
.c09 .image img{
	border-radius: 10px;
}
.c09 .text{
	margin-bottom: 50px;
}
.c09 .flex .text{
	margin-bottom: 0;
	width: 45%;
}
.c09 .text p{
	margin-bottom: 50px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
}
.c09 .text p:last-child{
	margin-bottom: 0;
}
.c10:before {
	background: url(../images/c10-bg-2.jpg) no-repeat center 0;
	background-size: cover;
}
.c10.content-s1 .upper b {
	display: inline-block;
}
.c11 {
	margin-bottom: 70px;
}
.c11 .header{
	margin-bottom: 60px;
}
.c11 h3{
	margin-bottom: 75px;
	font-size: 30px;
	text-align: center;
}
.c11 h3 span{
	display: inline-block;
	padding: 5px 0;
	min-width: 565px;
	border-top: #000 1px solid;
	border-bottom: #000 1px solid;
}
.c11 .box{
	width: 27.2%;
}
.c11 dt{
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	line-height: 1.5;
}
.c11 dt b{
	font-size: 40px;
}
.c11 dd{
	font-size: 15px;
	line-height: 1.5;
}
.c11 dd img{
	margin-bottom: 20px;
	border-radius: 10px;
	aspect-ratio: 272 / 350;
    object-fit: cover;
}
.c12 {
	margin-bottom: 100px;
}
.c12 .header{
	margin-bottom: 50px;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.5;
}
.c12 .header p{
	letter-spacing: 0.05em;
}
.c12 h2{
	margin-bottom: 40px;
}
.c12 .upper{
	margin-bottom: 50px;
}
.c12 h3{
	display: inline-block;
	margin-bottom: 35px;
	padding: 5px 30px 5px 10px;
	color: #fff;
	font-size: 30px;
	line-height: 1.5;
	background: #d0a927;
	border-radius: 0 25px 25px 0;
}
.c12 dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	font-size: 15px;
	border: #ccc 1px solid;
	border-bottom: none;
}
.c12 dl:last-child{
	border-bottom: #ccc 1px solid;
}
.c12 dl:not(:nth-of-type(2)) dd{
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.c12 dt{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px;
	width: 29%;
	background: #f8f7f5;
	border-right: #ccc 1px solid;
}
.c12 dd{
	padding: 20px;
	width: 71%;
	background: #fff;
}
.c12 .bottom{
	position: relative;
}
.c12 .bottom h2{
	position: absolute;
	top: 15px;
	left: 50%;
	margin: 0;
	height: 45px;
	font-size: 20px;
	line-height: 45px;
	background: #fff;
	border: none;
	border-radius: 23px;
    transform: translateX(-50%);
}
.c12 .bottom h2 span{
	display: block;
	position: relative;
	padding: 0 50px;
}
.c12 .bottom h2 span:after,
.c12 .bottom h2 span:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 24px;
	width: 19px;
	height: 24px;
	background: url(../images/ribbon.png) no-repeat center center;
	background-size: 100% auto;
    transform: translateY(-50%);
}
.c12 .bottom h2 span:after{
	left: auto;
	right: 24px;
}
.c12 .bottom .u{
	margin-bottom: 30px;
}
.c12 .bottom .u img{
	border-radius: 10px;
}
.c12 .bottom .b{
	font-size: 15px;
}
.c13 {
	margin-bottom: 145px;
}
.c13 .header{
	display: flex;
	align-items: center;
	position: relative;
	margin-bottom: 100px;
	padding: 50px 0;
	min-height: 480px;
	color: #d0a927;
	font-weight: bold;
	font-size: 20px;
	background: #232323;
}
.c13 .header:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.2;
	background: url(../images/c13-bg.jpg) no-repeat center center;
	background-size: cover;
}
.c13 .header .wrap{
	position: relative;
	text-align: center;
	line-height: 1.6;
}
.c13 h2{
	margin-bottom: 5px;
	padding-top: 120px;
	color: #fff;
	font-size: 30px;
	background: url(../images/ribbon02.png) no-repeat center 0;
	background-size: 114px auto;
}
.c13 .header b{
	display: block;
	font-size: 30px;
}
.c13 .box{
	margin-bottom: 110px;
	font-size: 15px;
}
.c13 .box:last-child{
	margin-bottom: 0;
}
.c13 .u{
	margin-bottom: 35px;
}
.c13 h3{
	margin-bottom: 20px;
	font-size: 30px;
}
.c13 .u .sub{
	position: relative;
	padding-left: 50px;
	font-weight: bold;
}
.c13 .u .sub:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 40px;
	height: 1px;
	background: #d0a927;
    transform: translateY(-50%);
}
.c13 .text{
	width: 55.5%;
}
.c13 .image{
	width: 40%;
}
.c13 .image img{
	border-radius: 10px;
}
.c14 {
	margin-bottom: 140px;
	padding-top: 90px;
	padding-bottom: 130px;
	background: #f8f7f5;
}
.c14 .header{
	margin-bottom: 100px;
}
.c14 h2{
	font-size: 20px;
}
.c14 .inr{
	margin: 0 auto;
	max-width: 800px;
	gap: 60px 0;
}
.c14 .box{
	width: 46%;
}
.c14 h3{
	margin-bottom: 5px;
}
.c14 .sub{
	margin-bottom: 20px;
}
.c14 .sub.label-s1{
	padding-left: 10px;
	padding-right: 25px;
}
.c14 .sub.label-s1:before{
	background: #f8f7f5;
}
.c14 .m{
	margin-bottom: 20px;
}
.c14 .m img{
	border-radius: 10px;
}
.c14 .b{
	letter-spacing: 0.6px;
}
.c15 {
	margin-bottom: 230px;
}
.c15 .inr{
	padding: 0 50px;
}
.c15 .box:not(:last-child){
	margin-bottom: 160px;
}
.c15 .box p:not(:last-child){
	margin-bottom: 45px;
}
.c15 .header{
	margin-bottom: 80px;
}
.c15 .b2 .header{
	margin-bottom: 60px;
}
.c15 .bottom{
	gap: 60px 0;
	font-size: 20px;
	font-weight: bold;
}
.c15 .image{
	margin-bottom: 45px;
}
.c15 .image img{
	border-radius: 10px;
}
.c15 .inr-box{
    display: flex;
    flex-direction: column;
	width: 32%;
	font-weight: normal;
	font-size: 15px;
	line-height: 1.5;
}
.c15 .inr-box .image{
	margin-bottom: 20px;
}
.c15 .inr-box .image img{
	border: #ccc 1px solid;
}
.c15 h3{
	display: flex;
	align-items: center;
    flex-grow: 1;
	margin-bottom: 20px;
	font-size: 20px;
}
.c16 {
	margin-bottom: 110px;
	padding: 130px 0;
	background: #f8f7f5;
}
.c16 .wrap-inr{
	margin: 0 auto;
	max-width: 900px;
	padding: 70px 100px 150px 100px;
	background: #fff;
	border: #ccc 1px solid;
}
.c16 h2{
	margin-bottom: 50px;
	font-size: 60px;
	text-align: center;
}
.c16 h2 i{
	font-size: 40px;
}
.c16 dl{
	padding-top: 30px;
	padding-bottom: 25px;
	border-bottom: #ccc 1px solid;
}
.c16 dt{
	margin-bottom: 20px;
	padding-top: 10px;
	padding-left: 55px;
	font-size: 18px;
	font-weight: bold;
	background: url(../images/q.png) no-repeat 0 0;
}
.c16 dd{
	padding-top: 5px;
	padding-left: 55px;
	background: url(../images/a.png) no-repeat 17px 5px;
}
.c17 {
	margin-bottom: 90px;
}
.c17 .content-s2{
	margin-bottom: 25px;
}
.c17 .wrap-box{
	padding-top: 30px;
	padding-bottom: 30px;
}
.c17 .upper{
	margin-bottom: 30px;
}
.c17 h2{
	margin-bottom: 30px;
	padding-bottom: 10px;
	text-align: left;
	line-height: 1.5;
	border-bottom: #333 3px solid;
}
.c17 h3{
	margin-bottom: 10px;
	font-size: 30px;
	line-height: 1.5;
}
.c17 .upper .image{
	margin-bottom: 30px;
}
.c17 .upper .image img{
	border-radius: 10px;
}
.c17 .middle{
	margin-bottom: 40px;
}
.c17 .flex .image{
	width: 35.5%;
}
.c17 .flex .image span{
	display: block;
	background: #fff;
	padding: 20px;
	border-radius: 0 0 10px 10px;
}
.c17 figcaption{
	display: block;
	height: 48px;
	color: #fff;
	font-size: 18px;
	text-align: center;
	line-height: 48px;
	background: #d0a927;
	border-radius: 10px 10px 0 0;
}
.c17 .text{
	width: 61%;
}
.c17 .bottom{
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.c17 .bottom-text{
	color: #f5476b;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.05em;
}
.c17 .contact{
	margin-bottom: 30px;
}
.c18 {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding: 50px 0;
	min-height: 764px;
	background: linear-gradient(177.78665727427904deg, rgba(51, 51, 51,1) 2.24236641221374%,rgba(50, 50, 50,1) 2.24236641221374%,rgba(0, 0, 0,1) 97.02607539875007%);
}
.c18:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/c18-bg.jpg) no-repeat center center;
	background-size: cover;
	opacity: 0.1;
}
.c18 .wrap{
	position: relative;
	width: 100%;
}
.c18 .header{
	margin-bottom: 50px;
	color: #d0a927;
	text-align: center;
}
.c18 h2{
	padding-top: 120px;
	color: #fff;
	font-size: 30px;
    background: url(../images/ribbon02.png) no-repeat center 0;
    background-size: 114px auto;
}
.c18 .box{
	width: 48%;
	aspect-ratio: 16 / 9;
}
.c18 iframe{
	display: block;
	width: 100%!important;
	height: 100%!important;
}
.c19 {
	position: relative;
	padding-top: 60px;
	padding-bottom: 85px;
	font-weight: bold;
	line-height: 1.6;
	background: #d0a927;
}
.c19:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    background: url(../images/c19-bg.jpg) no-repeat center center;
    background-size: cover;
	opacity: 0.2;
}
.c19 .inr{
	position: relative;
	padding: 0 50px;
}
.c19 h2{
	margin-bottom: 25px;
	color: #fff;
	font-size: 30px;
	text-align: center;
	text-shadow: 3px 3px 20px rgba(0,0,0,0.26);
}
.c19 .text{
	position: relative;
	padding: 40px 30px 40px 250px;
	font-size: 30px;
	background: #fff;
	box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.16);
	overflow: hidden;
}
.c19 .text:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 20px;
	width: 210px;
	height: 210px;
    background: url(../images/c19-01.jpg) no-repeat center center;
    background-size: 100% auto;
    transform: translateY(-50%);
}

@media screen and (max-width:820px) {
	.mv .image{
		margin: 0 -20px;
	}
	.mv .text .u{
		display: inline-block;
		margin-bottom: 10px;
		padding: 0 10px;
		padding-right: 5px;
		height: 53px;
		font-size: 23px;
		line-height: 53px;
	}
	.mv .text .u i{
		font-size: 20px;
	}
	.mv .text .m{
		margin-bottom: 10px;
		font-size: 40px;
	}
	.mv .text .m b{
		padding: 0 10px;
		height: 54px;
		font-size: 36px;
		line-height: 54px;
	}
	.mv .text .m span{
		padding: 0 10px;
		height: 41px;
		font-size: 24px;
		line-height: 41px;
	}
	.mv .text .m i{
		font-size: 21px;
	}
	.mv .text .b{
		padding: 0 10px;
		height: 55px;
		font-size: 25px;
		line-height: 55px;
	}
	.mv .bottom {
		line-height: 1.3;
	}
	.c01 h2 {
	    font-size: 30px;
	}
	.c01 h2 span{
		font-size: 24px;
	}
	.c01 .box:not(:last-child) {
	    margin-bottom: 14vw;
	}
	.c03 {
	    margin-bottom: 16vw;
	}
	.c03 h3 {
	    font-size: 26px;
	}
	.c04 .box:not(:last-child) {
	    margin-bottom: 14vw;
	}
	.c04 .box .u {
		margin-bottom: 8vw;
	    font-size: 33px;
	}
	.c04 .box h4 {
	    font-size: 25px;
	}
	.c04 .box .b {
	    padding: 0;
	}
	.c04 .inr-box {
	    margin-bottom: 10vw;
	}
	.c04 .inr-box.s2{
		gap: 80px 5%;
	}
	.c04 .inr-box.s2 .bx2{
		width: 30%;
	}
	.c04 .inr-box.s2 {
	    margin: 0;
	}
	.c04 .bottom {
	    font-size: 26px;
	}
	.c05 {
	    padding-top: 12vw;
	    padding-bottom: 16vw;
	}
	.c05 .box {
	    padding: 20px;
	}
	.c07 {
	    margin-bottom: 16vw;
	}
	.c07 .header {
	    margin-bottom: 6vw;
	}
	.c07 .box {
	    margin-bottom: 12vw;
	}
	.c07 h3 {
	    font-size: 22px;
	}
	.c07 h3 b {
	    font-size: 30px;
	}
	.c07 .sub {
		margin-left: 15px;
	    height: 33px;
	    font-size: 20px;
	    line-height: 33px;
	}
	.c07 .sub:before {
	    left: -15px;
	    width: 15px;
	}
	.c09 {
	    margin-bottom: 16vw;
	}
	.c09 .header {
	    margin-bottom: 6vw;
	}
	.c09 .inr {
	    padding: 0;
	}
	.c09 .box:not(:last-child) {
	    margin-bottom: 12vw;
	}
	.c09 h3 {
		font-size: 26px;
	}
	.c11 .box {
	    width: 30%;
	}
	.c12 .header {
	    font-size: 24px;
	}
	.c12 .header br{
		display: none;
	}
	.c12 h3 {
	    font-size: 25px;
	    border-radius: 0 40px 40px 0;
	}
	.c13 {
	    margin-bottom: 16vw;
	}
	.c13 .header {
		margin-bottom: 6vw;
	    min-height: 350px;
	}
	.c13 .box {
	    margin-bottom: 10vw;
	}
	.c14 {
		margin-bottom: 16vw;
	    padding-top: 12vw;
	    padding-bottom: 16vw;
	}
	.c15 {
	    margin-bottom: 16vw;
	}
	.c15 .inr {
		padding: 0;
	}
	.c15 .header {
	    margin-bottom: 6vw;
	}
	.c15 .box:not(:last-child) {
	    margin-bottom: 12vw;
	}
	.c16 {
	    margin-bottom: 16vw;
	    padding: 10vw 0;
	}
	.c16 .wrap-inr {
	    padding: 30px;
	    padding-bottom: 60px;
	}
	.c17 h3 {
	    font-size: 24px;
	}
	.c18 {
	    min-height: 564px;
	}
	.c19 .inr {
	    padding: 0;
	}
	.c19 .text br{
		display: none;
	}
}

@media screen and (max-width:767px) {
	.mv{
		position: relative;
	}
	.mv .text {
		top: 30px;
		left: 15px;
		width: calc(100% - 30px);
		overflow: hidden;
	    transform: translateY(0);
	}
	.mv .text .u {
	    padding: 0 10px;
	    padding-right: 0;
	}
	.mv .image{
		height: calc(100vh - 75px);
	}
	.mv .image:before{
		height: 250px;
	}
	.mv .image img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center 0;
	}
	.mv .contact{
		display: none;
	}
	.mv .bottom{
		position: absolute;
		left: 0;
		bottom: 80px;
		padding: 15px 10px;
		width: 100%;
		font-size: 18px;
		z-index: 2;
	}
	.after-mv-section{
		padding-top: 48px;
	}
	.after-mv-section .top-text{
		margin-bottom: 10px;
	}
	.after-mv-section .top-text{
		font-size: 20px;
	}
	.after-mv-section .wrap .flex{
		flex-direction: column;
		row-gap: 20px;
	}
	.after-mv-section .wrap .flex:nth-child(3) img {
		width: 100%;
	}
	.after-mv-section .wrap .flex:nth-child(3) .text-right h3{
		font-size: 23px;
	}
	.after-mv-section .flex:nth-child(4) .text-left{
		font-size: 25px;
	}
	.after-mv-section .flex:nth-child(4) .gold-bg-text{
		font-size: 16px;
	}
	.after-mv-section .flex:nth-child(4) .contact {
		padding: 0;
	}
	.after-mv-section .flex:nth-child(4) .contact .btn-s1{
		padding: 18px 23px 16px 32px;
		font-size: 25px;
	}
	.after-mv-section .flex:nth-child(4) .contact .btn-s1 b {
		font-size: 25px;
	}
	.after-mv-section .flex:nth-child(4) .contact .btn-s1:after {
		width: 13px;
		height: 18.5px;
	}
	.c01 {
	    margin-bottom: 20vw;
	}
	.c01 .header{
		margin-bottom: 6vw;
		padding-left: 10px;
		border-left: #333 4px solid;
	}
	.c01 .b2 .header,
	.c01 .b1 .header{
		margin-bottom: 8vw;
	}
	.c01 .header .sub{
		margin-left: 10px;
		margin-bottom: 10px;
		height: 30px;
		font-size: 15px;
		line-height: 30px;
	}
	.c01 .header .sub:before{
		left: -12px;
		width: 12px;
	}
	.c01 .header .sub i{
		margin-left: 5px;
		padding: 0 5px;
	}
	.c01 .inr {
	    padding: 0;
	}
	.c01 .box:not(:last-child) {
	    margin-bottom: 20vw;
	}
	.c01 h2{
		margin-right: -5px;
		font-size: 23px;
		line-height: 1.4;
	}
	.c01 h2 span {
	    font-size: 18px;
	}
	.c01 .b1 .u{
		margin-right: 0;
		margin-bottom: 14vw;
	}
	.c01 .b1 .u .l{
		margin-bottom: 18vw;
	}
	.c01 .b1 .u .r{
		padding-left: 9vw;
	}
	.c01 .b3 .u b,
	.c01 .b2 .u b,
	.c01 .b1 .b .r b,
	.c01 .b1 .m .s2,
	.c01 .b1 .m .s1 b,
	.c01 .b1 .u .l span,
	.c01 .b1 .u .l b{
		font-size: 16px;
	}
	.c01 .b1 .m .s1 {
	    margin-bottom: 30px;
	}
	.c01 .b1 .b .l {
		margin-bottom: 8vw;
	}
	.c01 .b1 .b .r b i{
		font-size: 20px;
	}
	.c01 .b2 figure img{
		max-width: 100%;
	}
	.c01 .b2 figure figcaption{
		text-align: center;
	}
	.c01 .b3 .u {
	    margin-bottom: 20vw;
	}
	.c01 .b3 .b .list-wrap{
		overflow-x: scroll;
	}
	.c01 .b3 dt,
	.c01 .b3 dd{
		padding: 5px 10px;
	}
	.c01 .b3 dt{
		width: 35%;
	}
	.c01 .b3 dd {
		width: 65%;
	}
	.c02:before {
	    background: url(../images/c02-bg-sp-2.jpg) no-repeat center 0;
	    background-size: cover;
	}
	.c03 {
	    margin-bottom: 24vw;
	}
	.c03 h3 {
		margin-bottom: 5vw;
	    font-size: 20px;
	    text-align: center;
	}
	.c03 .l img{
		margin-bottom: 10px;
		width: 80%;
	}
	.c04 {
	    margin-bottom: 15vw;
	}
	.c04 .box:not(:last-child) {
	    margin-bottom: 28vw;
	}
	.c04 .box .u {
	    margin-bottom: 10vw;
	    min-height: 220px;
	    font-size: 25px;
	}
	.c04 .box h3 {
	    padding: 0 30px;
	    font-size: 25px;
	}
	.c04 .inr-box {
	    margin-bottom: 16vw;
	}
	.c04 .box h4 {
		margin-bottom: 5vw;
	    font-size: 20px;
	    text-align: left;
	    line-height: 1.5;
	}
	.c04 .box h4 span{
		display: block;
		padding: 10px 0;
	}
	.c04 .box .l {
		margin-bottom: 8vw;
	}
	.c04 .box .r {
		margin-bottom: 0;
	    font-size: 18px;
	}
	.c04 .box dt {
	    margin-bottom: 6vw;
	    font-size: 20px;
	}
	.c04 .box.b1 dt {
	    font-size: 18px;
	}
	.c04 .inr-box.s2 {
	    gap: 8vw 5%;
	}
	.c04 .inr-box.s2 .bx2 {
	    width: 47.5%;
	}
	.c04 .box .payment b.s1 {
		display: inline-block;
		margin-top: 5px;
	    font-size: 30px;
	}
	.c04 .bottom {
	    font-size: 20px;
	}
	.c05 .header {
	    margin-bottom: 8vw;
	}
	.c05 .box {
	    padding: 6px;
	    margin-bottom: 9vw;
	}
	.c05 .box-inr {
	    padding: 20px 15px;
	    padding-bottom: 25px;
	}
	.c05 .upper {
	    margin-bottom: 5vw;
	}
	.c05 h3 {
	    font-size: 20px;
	    line-height: 1.4;
	}
	.c05 .b1 .text {
	    margin-bottom: 8vw;
	}
	.c05 .image {
	    margin-bottom: 7vw;
	}
	.c05 .flex.mb30{
		margin-bottom: 0!important;
	}
	.c06{
		margin-bottom: 20vw;
	}
	.c06:before {
	    background: url(../images/c06-bg-sp.jpg) no-repeat center 0;
	    background-size: cover;
	}
	.c06.content-s1 .upper{
		text-align: left;
	}
	.c06.content-s1 .upper b{
		font-size: 25px;
	}
	.c07 .header {
	    margin-bottom: 14vw;
	}
	.c07 .box {
	    margin-bottom: 15vw;
	}
	.c07 .upper {
		margin-bottom: 7vw;
	    border-left: #333 4px solid;
	}
	.c07 .sub {
		margin-left: 13px;
		margin-bottom: 10px;
	    height: 30px;
	    font-size: 15px;
	    line-height: 30px;
	}
	.c07 .sub:before {
	    left: -13px;
	    width: 13px;
	}
	.c07 h3 {
	    font-size: 18px;
	}
	.c07 h3 br{
		display: none;
	}
	.c07 h3 b {
		margin-top: 10px;
	    font-size: 23px;
	}
	.c07 .u {
	    margin-bottom: 3vw;
	}
	.c07 .bottom {
	    padding: 0;
	}
	.c08{
		margin-bottom: 22vw;
	}
	.c08:before {
	    background: url(../images/c08-bg-sp.jpg) no-repeat center 0;
	    background-size: cover;
	}
	.c09 {
	    margin-bottom: 20vw;
	}
	.c09 .header {
	    margin-bottom: 14vw;
	}
	.c09 h3 {
		margin-bottom: 5vw;
	}
	.c09 h3 span{
	    font-size: 20px;
		line-height: 1.5;
		text-align: left;
	}
	.c09 .flex .image{
		margin-bottom: 4vw;
	}
	.c09 .text p {
	    margin-bottom: 30px;
	    font-size: 16px;
	    font-weight: normal;
	    line-height: 2;
	}
	.c10 {
		margin-bottom: 22vw;
	}
	.c10:before {
	    background: url(../images/c10-bg-sp-2.jpg) no-repeat center 0;
	    background-size: cover;
	}
	.c11 {
	    margin-bottom: 16vw;
	}
	.c11 h3 {
	    margin-bottom: 6vw;
	    font-size: 20px;
	}
	.c11 h3 span {
	    min-width: 100%;
	}
	.c11 .box {
		margin-right: 20px;
	}
	.c11 .flex{
		display: block!important;
		width: calc(58% + 20px);
	}
	.c11 dt{
		margin-bottom: 0;
		font-size: 18px;
	}
	.c11 dt b {
	    font-size: 30px;
	}
	.c11 dd img {
	    margin-bottom: 10px;
	}
	.c11 .slick-list{
		overflow: visible;
	}
	.c12{
		margin: 0 -15px;
	}
	.c12.content-s2 .wrap-inr{
		padding: 15px;
	}
	.c12 .header {
		margin-bottom: 7vw;
	    font-size: 20px;
	}
	.c12 h2{
		margin-bottom: 5vw;
		padding-bottom: 5px;
		font-size: 25px;
	}
	.c12 h3 {
		margin-bottom: 3vw;
	    padding: 10px 30px 10px 10px;
	    font-size: 20px;
	    border-radius: 0 40px 40px 0;
	}
	.c12 .upper {
	    margin-bottom: 15vw;
	}
	.c12 dt,
	.c12 dd{
		padding: 10px;
		text-align: center;
		line-height: 1.6;
	}
	.c12 dt{
		width: 23%;
	}
	.c12 dd{
		width: 77%;
	}
	.c12 .bottom h2 {
		top: 20px;
	    left: 50%;
	    transform: translateX(0);
	    margin-left: -138px;
	}
	.c12 .bottom h2 span {
	    padding: 0px 45px;
	}
	.c12 .bottom .u {
	    margin-bottom: 2vw;
	}
	.c13 {
	    margin-bottom: 18vw;
	}
	.c13 .header {
	    margin-bottom: 8vw;
	    min-height: 480px;
	    font-size: 16px;
	}
	.c13 h2 {
		margin-bottom: 4vw;
	    font-size: 25px;
	}
	.c13 .header b {
	    font-size: 16px;
	}
	.c13 .header b i{
	    font-size: 25px;
	}
	.c13 .box {
	    margin-bottom: 15vw;
	}
	.c13 h3 {
	    margin-bottom: 4vw;
	    font-size: 20px;
	    line-height: 1.5;
	}
	.c13 .image{
		margin-bottom: 5vw;
	}
	.c14 .header {
	    margin-bottom: 15vw;
	}
	.c14 .header br{
		display: none;
	}
	.c14 .inr {
	    gap: 12vw 0;
	}
	.c14 .m {
	    margin-bottom: 2vw;
	}
	.c15 {
	    margin-bottom: 20vw;
	}
	.c15 .header {
	    margin-bottom: 10vw;
	}
	.c15 .header br{
		display: none;
	}
	.c15 .box:not(:last-child) {
	    margin-bottom: 35vw;
	}
	.c15 .bottom {
	    font-size: 16px;
	    font-weight: normal;
	}
	.c15 .box p:not(:last-child) {
	    margin-bottom: 30px;
	}
	.c15 .image {
	    margin-bottom: 6vw;
	}
	.c15 .b2 .header {
	    margin-bottom: 12vw;
	}
	.c15 .bottom {
	    gap: 20vw 0;
	}
	.c15 .inr-box{
		font-size: 16px;
		line-height: 2;
	}
	.c16 {
	    margin-bottom: 0;
	}
	.c16 .wrap-inr {
	    padding: 20px;
	    padding-bottom: 0;
	}
	.c16 h2 {
	    margin-bottom: 0;
	    font-size: 30px;
	}
	.c16 h2 i{
		font-size: 20px;
	}
	.c16 dl {
	    padding-top: 25px;
	    padding-bottom: 20px;
	}
	.c16 .box:last-child dl{
		border: none;
	}
	.c16 dt {
	    margin-bottom: 3vw;
	    padding: 5px 0;
	    padding-left: 32px;
	    font-size: 16px;
	    line-height: 1.5;
	    background: url(../images/q.png) no-repeat 0 7px;
	    background-size: 26px auto;
	}
	.c16 dd {
	    padding: 5px 0;
	    padding-left: 32px;
	    background: url(../images/a.png) no-repeat 0 9px;
	    background-size: 26px auto;
	}
	.c17 {
	    margin-bottom: 16vw;
	}
	.c17 .content-s2 {
		margin: 0 -15px;
	    margin-bottom: 5vw;
	}
	.c17 .content-s2 .wrap-inr{
		padding: 15px;
		padding-top: 40px;
	}
	.c17 .wrap-box{
		padding: 20px;
		padding-top: 15px;
		padding-bottom: 30px;
	}
	.c17 h2 {
	    margin-bottom: 4vw;
	    font-size: 25px;
	}
	.c17 h3 {
		margin-bottom: 5vw;
	    font-size: 20px;
	}
	.c17 .upper .image {
	    margin-bottom: 4vw;
	}
	.c17 .flex .image {
	    margin-bottom: 5vw;
	}
	.c17 figcaption {
	    font-size: 17px;
	}
	.c17 .middle {
	    margin-bottom: 6vw;
	}
	.c17 .contact{
		margin-bottom: 5vw;
	}
	.c17 .btn-s1.l {
	    padding-left: 48px;
	    width: 305px;
	    font-size: 20px;
	    line-height: 1.2;
	}
	.c17 .bottom{
		line-height: 1.5;
	}
	.c17 .bottom-text {
	    font-size: 20px;
	    line-height: 1.5;
	}
	.c18{
		padding-top: 10vw;
		padding-bottom: 20vw;
	}
	.c18 .header {
	    margin-bottom: 8vw;
	}
	.c18 h2 {
		margin-bottom: 3vw;
		padding-top: 130px;
	    font-size: 25px;
	    line-height: 1.5;
	}
	.c18 .flex{
		gap: 20px 0;
	}
	.c19 {
		padding: 12vw 0;
	}
	.c19 h2 {
		margin-bottom: 8vw;
	    font-size: 20px;
	}
	.c19 .text {
	    padding: 200px 20px 40px 20px;
	    font-size: 20px;
	}
	.c19 .text:before {
	    top: 10px;
	    left: 50%;
	    transform: translateX(-50%);
	}
	.c19 .text span{
		position: relative;
	}
}

/* footer
------------------------------------------*/
#footer {
	padding-top: 55px;
	font-size: 14px;
	text-align: center;
	background: #faf6e9;
}
#footer .logo{
	margin: 0 auto;
	margin-bottom: 35px;
	width: 329px;
}
#footer .company{
	margin-bottom: 35px;
}
#footer .name{
	font-weight: bold;
}
#footer address{
	margin-bottom: 20px;
	font-style: normal;
}
#footer .tel{
	font-size: 12px;
}
#footer .tel a{
	margin-right: 15px;
	padding-left: 15px;
	font-weight: bold;
	font-size: 14px;
	background: url(../images/icon-phone.svg) no-repeat 0 center;
	background-size: 13px auto;
}
#footer .copyright{
	color: #fff;
	height: 30px;
	font-size: 12px;
	font-weight: normal;
	text-align: center;
	line-height: 30px;
	background: #d0a927;
}

@media screen and (max-width:767px) {
	#footer {
	    padding-top: 22vw;
	}
	#finr{
		line-height: 1.7;
	}
	#footer .logo{
		margin-bottom: 6vw;
		width: 217px;
	}
	#footer .company {
	    margin-bottom: 18vw;
	}
}