/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Comfortaa:wght@300..700&family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho:wght@400;500;600;700&display=swap');

/*-----------------------------*/

body {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	/*word-break: keep-all;
	line-break: strict;
	word-wrap: break-word;
	overflow-wrap: break-word;
	font-feature-settings: "palt";*/
}

header {
	background: #000;
	border-bottom: 1px solid #FFF;
	padding: 6px 10px 6px 10px;
	height: 30px;
	overflow: hidden !important;
}
header img {
	max-width: 100%;
	width: 131px;
	height: auto;
}


a:hover {
	opacity: 0.8;
}

a {
	transition: opacity 0.3s ease-out;
}

img {
	max-width: 100%;
	width: auto;
	height: auto;
}

.posiRe01 {
	position: relative;
}

/*----------------------------------*/

.alc {
	text-align: center;
}

.weightM {
	font-weight: 500;
}

.mb-5 {margin-bottom: 5px;}
.mb-10 {margin-bottom: 10px;}
.mb-15 {margin-bottom: 15px;}
.mb-20 {margin-bottom: 20px;}
.mb-30 {margin-bottom: 30px;}
.mb-40 {margin-bottom: 40px;}
.mb-50 {margin-bottom: 50px;}
.mb-60 {margin-bottom: 60px;}
.mb-70 {margin-bottom: 70px;}
.mb-80 {margin-bottom: 80px;}
.mb-90 {margin-bottom: 90px;}
.mb-100 {margin-bottom: 100px;}
.mb-110 {margin-bottom: 110px;}
.mb-120 {margin-bottom: 120px;}
.mb-130 {margin-bottom: 130px;}
.mb-140 {margin-bottom: 140px;}
.mb-150 {margin-bottom: 150px;}
.mb-160 {margin-bottom: 160px;}
.mb-170 {margin-bottom: 170px;}
.mb-180 {margin-bottom: 180px;}
.mb-190 {margin-bottom: 190px;}
.mb-200 {margin-bottom: 200px;}
.mb-250 {margin-bottom: 250px;}
.mb-270 {margin-bottom: 270px;}
.mb-280 {margin-bottom: 280px;}
.mb-300 {margin-bottom: 300px;}
.mb-360 {margin-bottom: 360px;}
.mb-390 {margin-bottom: 390px;}
.mb-410 {margin-bottom: 410px;}

.mt-80 {
	margin-top: 80px;
}

@media (max-width: 750px) {
	.mb-5 {margin-bottom: 0.66vw;}
	.mb-10 {margin-bottom: 1.33vw;}
	.mb-15 {margin-bottom: 2.0vw;}
    .mb-20 {margin-bottom: 2.67vw;}
    .mb-30 {margin-bottom: 4vw;}
    .mb-40 {margin-bottom: 5.33vw;}
    .mb-50 {margin-bottom: 6.67vw;}
    .mb-60 {margin-bottom: 8vw;}
    .mb-70 {margin-bottom: 9.33vw;}
    .mb-80 {margin-bottom: 10.67vw;}
    .mb-90 {margin-bottom: 12vw;}
    .mb-100 {margin-bottom: 13.33vw;}
    .mb-110 {margin-bottom: 14.67vw;}
    .mb-120 {margin-bottom: 16vw;}
    .mb-130 {margin-bottom: 17.33vw;}
    .mb-140 {margin-bottom: 18.67vw;}
    .mb-150 {margin-bottom: 20vw;}
    .mb-160 {margin-bottom: 21.33vw;}
    .mb-170 {margin-bottom: 22.67vw;}
    .mb-180 {margin-bottom: 24vw;}
    .mb-190 {margin-bottom: 25.33vw;}
    .mb-200 {margin-bottom: 26.67vw;}
	.mb-250 {margin-bottom: 33.34vw;}
	.mb-270 {margin-bottom: 36vw;}
	.mb-280 {margin-bottom: 37.34vw;}
	.mb-300 {margin-bottom: 40vw;}
	.mb-360 {margin-bottom: 48vw;}
	.mb-390 {margin-bottom: 52vw;}
	.mb-410 {margin-bottom: 54.67vw;}
.mt-80 {margin-top: 10.67vw;}
}


/* -----------------------------------------
contents
-----------------------------------------*/

#container {
	font-family: "Noto Sans JP", serif;
	margin: auto;
	width: 100%;
	max-width: 750px;
	overflow: hidden;
	color: #000000;
}

.fontShipporiMincho {
	font-family: "Shippori Mincho", serif;
}
.fontComfortaa {
	font-family: "Comfortaa", sans-serif;
}

.fontNotoSans {
	font-family: "Noto Sans JP", serif;
}

/*-------------------------*/

.colGreen01 {
	color: #024121;
}

.mainvisualBlock01 {
	position: relative;
}
.mainTit01 {
	text-align: center;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 390px;
}
.mainTit01 img {
	width: 543px !important;
	height: auto;
}
.mainTextBox01 {
	text-align: center;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 1246px;
}
.mainText01 {
	color: #d4bf6b;
	font-size: 31px;
	line-height: 1.65em;
}
.mainText01 .s01 {
	font-size: 41px;
	font-weight: bold;
	letter-spacing: 0.15em;
	font-family: "Comfortaa", sans-serif;
}
.mainText01 .s02 {
	font-size: 33px;
	font-weight: bold;
	letter-spacing: 0.15em;
	font-family: "Comfortaa", sans-serif;
}
.mainDeco01 {
	text-align: center;
	margin: 72px auto;
}
.mainDeco01 img {
	width: 38px !important;
	height: auto;
}
.mainText02 {
	color: #ffffff;
	font-size: 30px;
	line-height: 1.95em;
	letter-spacing: -0.05em;
}

/*-------------------*/

.ancBlock01 {
	background-color: #004121;
	padding-bottom: 80px;
}

.ancTit01 {
	color: #d4bf6b;
	font-size: 28px;
	line-height: 1.6em;
	text-align: center;
}
.ancBtnWrap01 {
	text-align: right;
}
.ancBtnWrap01 li {
	margin-top: 36px;
}
.ancBtnWrap01 li img {
	width: auto !important;
	height: 146px !important;
}
.ancBtnWrap01 li.li03 {
	padding-right: 85px;
}
.ancBtnWrap01 li.li05 {
	padding-right: 85px;
}

/*---------------------*/

.mainBlock01 {
	position: relative;
	background-color: #004121;
	padding: 0px 0px 0px;
}
.mainBlock01::before {
	content: "";
	background-image: url("../img/251113/cont_main_bg02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	mix-blend-mode: screen;
	width: 100%;
	height: 624px;
	position: absolute;
	left: 0px;
	top: 0px;
}
.mainBlockIn01 {
	background-image: url("../img/251113/cont_main_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	box-sizing: border-box;
	padding-top: 10px;
	height: 3203px;
}
.mainH201 {
	text-align: center;
	margin-top: -50px;
}
.mainH201 img {
	width: 403px !important;
	height: auto;
}

.mainText03 {
	color: #9c0000;
	text-align: center;
	font-size: 27px;
	line-height: 1.3em;
}
.mainTextBox02 {
	color: #9c0000;
	padding-left: 100px;
}
.mainUl01 li {
	font-size: 28px;
	line-height: 1.65em;
	text-indent: -1em;
	padding-left: 1em;
}

.contPd20 {
	padding: 0px 20px;
}

.mainH301 {
	text-align: center;
}
.mainH301 img {
	width: 598px !important;
	height: auto;
}
.contPd100 {
	padding: 0px 100px;
}
.text28_16_n {
	font-size: 28px;
	line-height: 1.6em;
}
.mainBtnWrap01 {
	text-align: center;
}
.mainBtnWrap01 img {
	width: 458px !important;
	height: auto;
}
.message01 {
	text-align: center;
	color: #004121;
	font-size: 31px;
	line-height: 1.4em;
}

/*-------------------*/

.contBlock01 {
	position: relative;
	background-color: #004121;
}
.contBlock01::before {
	content: "";
	background-image: url("../img/251113/cont01_bg02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 280px;
	height: 628px;
	mix-blend-mode: screen;
	position: absolute;
	right: 0px;
	top: -180px;
}

.contBgDeco01 {
	width: 100%;
	mix-blend-mode: screen;
	position: absolute;
	left: 0px;
	bottom: 0px;
}

.contBlock01In {
	position: relative;
	background-image: url("../img/251113/cont01_bg01_2.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	box-sizing: border-box;
	padding-top: 10px;
	height: 1840px;
}

.contH201 {
	margin-top: -35px;
	margin-left: 10px;
}
.contH201 img {
	width: 664px !important;
	height: auto;
}
.contText01 {
	text-align: center;
	font-size: 30px;
	line-height: 1.65em;
}
.contTitDeco01 {
	text-align: center;
}
.contTitDeco01 img {
	width: 52px !important;
	height: auto;
}

.contFlex01 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 50px 0px;
}
.contFlex01 li {
	box-sizing: border-box;
	width: 49%;
	background-color: #ffffff;
	border: 1px solid #c5bfa4;
	padding: 35px 18px 140px;
	color: #405734;
	position: relative;
}
.contFlex01.flex02 li {
	padding-bottom: 50px;
}

.contH301 {
	text-align: center;
	font-size: 35px;
	line-height: 1.4em;
	font-weight: bold;
	height: 130px;
}
.contH301 .s01 {
	font-size: 29px;
}

.contBtn01 {
	box-sizing: border-box;
	padding: 0px 20px;
	width: 100%;
	position: absolute;
	left: 0px;
	bottom: 55px;
}

/*-------------------*/

.contBlock02 {
	position: relative;
	background-color: #004121;
	padding-top: 200px;
}
.contBlock02::before {
	content: "";
	background-image: url("../img/251113/cont02_bg02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 280px;
	height: 632px;
	mix-blend-mode: screen;
	position: absolute;
	right: 0px;
	top: -50px;
}

.contBlock02In {
	position: relative;
	background-image: url("../img/251113/cont02_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	box-sizing: border-box;
	padding-top: 10px;
	height: 3180px;
}
.contH202 {
	margin-top: -100px;
	margin-left: 10px;
}
.contH202 img {
	width: 561px !important;
	height: auto;
}

.contH302 {
	text-align: center;
	color: #405734;
	font-size: 35px;
	line-height: 1.55em;
	font-weight: bold;
}
.contBtn02 {
	text-align: left;
	margin-top: 15px;
}
.contBtn02 img {
	width: 305px !important;
	height: auto;
}

/*-------------------*/

.contBlock03 {
	position: relative;
	background-color: #004121;
	padding-top: 150px;
}
.contBlock03::before {
	content: "";
	background-image: url("../img/251113/cont03_bg02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 280px;
	height: 628px;
	mix-blend-mode: screen;
	position: absolute;
	right: 0px;
	top: -70px;
}

.contBlock03In {
	position: relative;
	background-image: url("../img/251113/cont03_bg01.webp"), url("../img/251113/cont03_bg01_03.webp");
	background-repeat: no-repeat, no-repeat;
	background-position: center top, center top 300px;
	background-size: 100% auto, 100% auto;
	box-sizing: border-box;
	padding-top: 10px;
}
.contH203 {
	margin-top: -40px;
	margin-left: 10px;
}
.contH203 img {
	width: 561px !important;
	height: auto;
}
.cont03Box01 {
	padding-left: 104px;
}
.cont03Box01In {
	background-image: url("../img/251113/cont03_bg03.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% 100%;
	padding-top: 60px;
	padding-right: 100px;
}
.contH303 {
	font-size: 35px;
	line-height: 1.55em;
	font-weight: bold;
	text-align: center;
}
.contText02 {
	color: #666666;
	font-size: 24px;
	line-height: 1.5em;
}
.cont03Box02 {
	background-image: url("../img/251113/cont03_bg04.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	padding: 154px 20px 280px;
}
.contBtnWrap01 {
	text-align: center;
	margin-top: 30px;
}
.contBtnWrap01 .contBtn02 {
	display: inline-block;
}

/*-------------------*/

.contBlock04 {
	position: relative;
	background-color: #004121;
	padding-top: 80px;
}
.contBlock04::before {
	content: "";
	background-image: url("../img/251113/cont04_bg02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 281px;
	height: 628px;
	mix-blend-mode: screen;
	position: absolute;
	right: 0px;
	top: -70px;
}

.contBlock04In {
	position: relative;
	background-image: url("../img/251113/cont04_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% auto;
	height: 3761px;
	box-sizing: border-box;
	padding-top: 10px;
}
.contH204 {
	margin-top: -40px;
	margin-left: 10px;
}
.contH204 img {
	width: 561px !important;
	height: auto;
}
.text26_16_n {
	font-size: 26px;
	line-height: 1.6em;
}
.leterSp-005 {
	letter-spacing: -0.05em;
}

.cont04Box01 {
	padding: 0px 80px;
	margin-top: 200px;
}

.cont04Img01 {
	text-align: center;
}
.cont04Img01 img {
	width: 492px !important;
	height: auto;
}

/*-------------------*/

.contBlock05 {
	position: relative;
	background-color: #004121;
	padding-top: 80px;
}
.contBlock05::before {
	content: "";
	background-image: url("../img/251113/cont05_bg02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 281px;
	height: 629px;
	mix-blend-mode: screen;
	position: absolute;
	right: 0px;
	top: -150px;
}

.contBlock05In {
	position: relative;
	background-image: url("../img/251113/cont05_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	height: 2067px;
	box-sizing: border-box;
	padding-top: 10px;
}
.contH205 {
	margin-top: -76px;
	margin-left: 10px;
}
.contH205 img {
	width: 543px !important;
	height: auto;
}
.cont05BgDeco01 {
	width: 100%;
	mix-blend-mode: screen;
	position: absolute;
	left: 0px;
	bottom: 0px;
}
.cont05BgDeco02 {
	width: 188px;
	position: absolute;
	left: 358px;
	bottom: 350px;
}

/*-------------------*/

.bottomBlock01 {
	padding: 80px 40px 30px;
	text-align: center;
}
.text37_16_n {
	font-size: 37px;
	line-height: 1.6em;
}
.bottomTel01 {
	font-size: 37px;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	padding-bottom: 3px;
	border-bottom: 1px solid #000000;
}
.bottomTel01 .s01 {
	font-size: 34px;
}
.bottomTel01 a {
	font-size: 59px;
}
.bottomTelWrap01 {
	display: inline-block;
	text-align: left;
}

.bottomSns01 li {
	margin-top: 40px;
}
.topBtn01 {
	margin: 75px auto auto;
}
.bottomTextWrap01 {
	text-align: left;
	font-size: 24px;
	line-height: 1.7em;
	font-weight: 500;
	margin-top: 80px;
}

/*-------------------*/

.cont03Box01In02 {
	padding-right: 100px;
}



@media (max-width: 750px) {

	/*------------------*/

	.mainTit01 {
		top: 52vw;
	}
	.mainTit01 img {
		width: 72.4vw !important;
	}
	.mainTextBox01 {
		top: 166.13vw;
	}
	.mainText01 {
		font-size: 4.13vw;
	}
	.mainText01 .s01 {
		font-size: 5.46vw;
	}
	.mainText01 .s02 {
		font-size: 4.4vw;
	}
	.mainDeco01 {
		margin: 9.6vw auto;
	}
	.mainDeco01 img {
		width: 5.06vw !important;
	}
	.mainText02 {
		font-size: 4vw;
	}

	/*-------------------*/

	.ancBlock01 {
		padding-bottom: 10.66vw;
	}

	.ancTit01 {
		font-size: 3.73vw;
	}
	.ancBtnWrap01 li {
		margin-top: 4.8vw;
	}
	.ancBtnWrap01 li img {
		height: 19.46vw !important;
	}
	.ancBtnWrap01 li.li03 {
		padding-right: 11.33vw;
	}
	.ancBtnWrap01 li.li05 {
		padding-right: 11.33vw;
	}

	/*---------------------*/

	.mainBlock01::before {
		height: 83.2vw;
	}
	.mainBlockIn01 {
		padding-top: 1.33vw;
		height: 427.06vw;
	}
	.mainH201 {
		margin-top: -6.66vw;
	}
	.mainH201 img {
		width: 53.73vw !important;
	}

	.mainText03 {
		font-size: 3.6vw;
	}
	.mainTextBox02 {
		padding-left: 13.33vw;
	}
	.mainUl01 li {
		font-size: 3.73vw;
	}

	.contPd20 {
		padding: 0px 2.66vw;
	}

	.mainH301 img {
		width: 79.73vw !important;
	}
	.contPd100 {
		padding: 0px 13.33vw;
	}
	.text28_16_n {
		font-size: 3.73vw;
	}
	.mainBtnWrap01 img {
		width: 61.06vw !important;
	}
	.message01 {
		font-size: 4.13vw;
	}

	/*-------------------*/

	.contBlock01::before {
		width: 37.33vw;
		height: 83.73vw;
		top: -24vw;
	}

	.contBlock01In {
		padding-top: 1.33vw;
		height: 245.33vw;
	}

	.contH201 {
		margin-top: -4.66vw;
		margin-left: 1.33vw;
	}
	.contH201 img {
		width: 88.53vw !important;
	}
	.contText01 {
		font-size: 4vw;
	}
	.contTitDeco01 img {
		width: 6.93vw !important;
	}

	.contFlex01 {
		gap: 6.66vw 0px;
	}
	.contFlex01 li {
		padding: 4.66vw 2.4vw 18.66vw;
	}
	.contFlex01.flex02 li {
		padding-bottom: 6.66vw;
	}

	.contH301 {
		font-size: 4.66vw;
		height: 17.33vw;
	}
	.contH301 .s01 {
		font-size: 3.86vw;
	}

	.contBtn01 {
		padding: 0px 2.66vw;
		bottom: 7.33vw;
	}

	/*-------------------*/

	.contBlock02 {
		padding-top: 26.66vw;
	}
	.contBlock02::before {
		width: 37.33vw;
		height: 84.26vw;
		top: -6.66vw;
	}

	.contBlock02In {
		padding-top: 1.33vw;
		height: 424vw;
	}
	.contH202 {
		margin-top: -13.33vw;
		margin-left: 1.33vw;
	}
	.contH202 img {
		width: 74.8vw !important;
	}

	.contH302 {
		font-size: 4.66vw;
	}
	.contBtn02 {
		margin-top: 2vw;
	}
	.contBtn02 img {
		width: 40.66vw !important;
	}

	/*-------------------*/

	.contBlock03 {
		padding-top: 20vw;
	}
	.contBlock03::before {
		width: 37.33vw;
		height: 83.73vw;
		top: -9.33vw;
	}

	.contBlock03In {
		background-position: center top, center top 40vw;
		padding-top: 1.33vw;
	}
	.contH203 {
		margin-top: -5.33vw;
		margin-left: 1.33vw;
	}
	.contH203 img {
		width: 74.8vw !important;
		height: auto;
	}
	.cont03Box01 {
		padding-left: 13.86vw;
	}
	.cont03Box01In {
		padding-top: 8vw;
		padding-right: 13.33vw;
	}
	.contH303 {
		font-size: 4.66vw;
	}
	.contText02 {
		font-size: 3.2vw;
	}
	.cont03Box02 {
		padding: 20.53vw 2.66vw 37.33vw;
	}
	.contBtnWrap01 {
		margin-top: 4vw;
	}

	/*-------------------*/

	.contBlock04 {
		padding-top: 10.66vw;
	}
	.contBlock04::before {
		width: 37.46vw;
		height: 83.73vw;
		top: -9.33vw;
	}

	.contBlock04In {
		height: 501.46vw;
		padding-top: 1.33vw;
	}
	.contH204 {
		margin-top: -5.33vw;
		margin-left: 1.33vw;
	}
	.contH204 img {
		width: 74.8vw !important;

	}
	.text26_16_n {
		font-size: 3.46vw;
	}

	.cont04Box01 {
		padding: 0px 10.66vw;
		margin-top: 26.66vw;
	}

	.cont04Img01 img {
		width: 65.6vw !important;
	}

	/*-------------------*/

	.contBlock05 {
		padding-top: 10.66vw;
	}
	.contBlock05::before {
		width: 37.46vw;
		height: 83.86vw;
		top: -20vw;
	}

	.contBlock05In {
		height: 275.6vw;
		padding-top: 1.33vw;
	}
	.contH205 {
		margin-top: -10.13vw;
		margin-left: 1.33vw;
	}
	.contH205 img {
		width: 72.4vw !important;
	}
	.cont05BgDeco02 {
		width: 25.06vw;
		left: 47.73vw;
		bottom: 46.66vw;
	}

	/*-------------------*/

	.bottomBlock01 {
		padding: 10.66vw 5.33vw 4vw;
	}
	.text37_16_n {
		font-size: 4.93vw;
	}
	.bottomTel01 {
		font-size: 4.93vw;
		padding-bottom: 0.4vw;
	}
	.bottomTel01 .s01 {
		font-size: 4.53vw;
	}
	.bottomTel01 a {
		font-size: 7.86vw;
	}

	.bottomSns01 li {
		margin-top: 5.33vw;
	}
	.topBtn01 {
		margin: 10vw auto auto;
	}
	.bottomTextWrap01 {
		font-size: 3.2vw;
		margin-top: 10.66vw;
	}



}


/**/

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 9000;
	width: 84px;
}

@media (max-width: 750px) {

	#page-top {
		bottom: 2.66vw;
		right: 2.66vw;
		width: 11.2vw;
	}
}
