@charset "utf-8";

/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Old+Mincho:wght@400;500;600;700&display=swap');

.fontNotoSans {
	font-family: "Noto Sans JP", sans-serif;
}

/*-------------------------*/

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;
}
body {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  text-align: left !important;
  line-break: strict;
  word-break: normal;
}
header {
  background: #000;
  border-bottom: 1px solid #fff;
  padding: 6px 10px 6px 10px;
  height: 30px;
  overflow: hidden !important;
}

.alc {
	text-align: center;
}
.all {
	text-align: left;
}
.alr {
	text-align: right;
}

a:hover {
  opacity: 0.8;
}
a {
  transition: opacity 0.3s ease-out;
}
.sp {
  display: none;
}
.pc {
  display: block;
}
@media (max-width: 750px) {
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}
.ml-10 {
  margin-left: 10px;
}
.ml-20 {
  margin-left: 20px;
}
.ml-30 {
  margin-left: 30px;
}
.ml-40 {
  margin-left: 40px;
}
.ml-50 {
  margin-left: 50px;
}
.ml-60 {
  margin-left: 60px;
}
.ml-70 {
  margin-left: 70px;
}
.ml-80 {
  margin-left: 80px;
}
.ml-90 {
  margin-left: 90px;
}
.ml-100 {
  margin-left: 100px;
}
.ml-110 {
  margin-left: 110px;
}
.ml-120 {
  margin-left: 120px;
}
.ml-130 {
  margin-left: 130px;
}
.ml-140 {
  margin-left: 140px;
}
.ml-150 {
  margin-left: 150px;
}
.ml-160 {
  margin-left: 160px;
}
.ml-170 {
  margin-left: 170px;
}
.ml-180 {
  margin-left: 180px;
}
.ml-190 {
  margin-left: 190px;
}
.ml-200 {
  margin-left: 200px;
}
@media (max-width: 750px) {
  .ml-10 {
    margin-left: 1.333333333vw;
  }
  .ml-20 {
    margin-left: 2.666666667vw;
  }
  .ml-30 {
    margin-left: 4vw;
  }
  .ml-40 {
    margin-left: 5.333333333vw;
  }
  .ml-50 {
    margin-left: 6.666666667vw;
  }
  .ml-60 {
    margin-left: 8vw;
  }
  .ml-70 {
    margin-left: 9.333333333vw;
  }
  .ml-80 {
    margin-left: 10.66666667vw;
  }
  .ml-90 {
    margin-left: 12vw;
  }
  .ml-100 {
    margin-left: 13.33333333vw;
  }
  .ml-110 {
    margin-left: 14.66666667vw;
  }
  .ml-120 {
    margin-left: 16vw;
  }
  .ml-130 {
    margin-left: 17.33333333vw;
  }
  .ml-140 {
    margin-left: 18.66666667vw;
  }
  .ml-150 {
    margin-left: 20vw;
  }
  .ml-160 {
    margin-left: 21.33333333vw;
  }
  .ml-170 {
    margin-left: 22.66666667vw;
  }
  .ml-180 {
    margin-left: 24vw;
  }
  .ml-190 {
    margin-left: 25.33333333vw;
  }
  .ml-200 {
    margin-left: 26.66666667vw;
  }
}
.mb-5 {
  margin-bottom: 5px !important;
}
.mb-10 {
  margin-bottom: 10px !important;
}
.mb-15 {
  margin-bottom: 15px !important;
}
.mb-20 {
  margin-bottom: 20px !important;
}
.mb-30 {
  margin-bottom: 30px !important;
}
.mb-40 {
  margin-bottom: 40px !important;
}
.mb-50 {
  margin-bottom: 50px !important;
}
.mb-60 {
  margin-bottom: 60px !important;
}
.mb-70 {
  margin-bottom: 70px !important;
}
.mb-80 {
  margin-bottom: 80px !important;
}
.mb-90 {
  margin-bottom: 90px !important;
}
.mb-100 {
  margin-bottom: 100px !important;
}
.mb-110 {
  margin-bottom: 110px !important;
}
.mb-120 {
  margin-bottom: 120px !important;
}
.mb-130 {
  margin-bottom: 130px !important;
}
.mb-140 {
  margin-bottom: 140px !important;
}
.mb-150 {
  margin-bottom: 150px !important;
}
.mb-160 {
  margin-bottom: 160px !important;
}
.mb-170 {
  margin-bottom: 170px !important;
}
.mb-180 {
  margin-bottom: 180px !important;
}
.mb-190 {
  margin-bottom: 190px !important;
}
.mb-200 {
  margin-bottom: 200px !important;
}
@media (max-width: 750px) {
	.mb-5 {
		margin-bottom: 0.66vw !important;
	}
  .mb-10 {
    margin-bottom: 1.333333333vw !important;
  }
	.mb-15 {
		margin-bottom: 2vw !important;
	}
  .mb-20 {
    margin-bottom: 2.666666667vw !important;
  }
  .mb-30 {
    margin-bottom: 4vw !important;
  }
  .mb-40 {
    margin-bottom: 5.333333333vw !important;
  }
  .mb-50 {
    margin-bottom: 6.666666667vw !important;
  }
  .mb-60 {
    margin-bottom: 8vw !important;
  }
  .mb-70 {
    margin-bottom: 9.333333333vw !important;
  }
  .mb-80 {
    margin-bottom: 10.66666667vw !important;
  }
  .mb-90 {
    margin-bottom: 12vw !important;
  }
  .mb-100 {
    margin-bottom: 13.33333333vw !important;
  }
  .mb-110 {
    margin-bottom: 14.66666667vw !important;
  }
  .mb-120 {
    margin-bottom: 16vw !important;
  }
  .mb-130 {
    margin-bottom: 17.33333333vw !important;
  }
  .mb-140 {
    margin-bottom: 18.66666667vw !important;
  }
  .mb-150 {
    margin-bottom: 20vw !important;
  }
  .mb-160 {
    margin-bottom: 21.33333333vw !important;
  }
  .mb-170 {
    margin-bottom: 22.66666667vw !important;
  }
  .mb-180 {
    margin-bottom: 24vw !important;
  }
  .mb-190 {
    margin-bottom: 25.33333333vw !important;
  }
  .mb-200 {
    margin-bottom: 26.66666667vw !important;
  }
}

/* -----------------------------------------
contents
-----------------------------------------*/
#container {
  position: relative;
  /* display: flex;
  justify-content: flex-start;
  column-gap: 80px; */
}
#contents {
  margin: auto;
	/*font-family: "Noto Sans JP", sans-serif;*/
	font-family: "Zen Old Mincho", serif;
  line-height: 1.6;
  font-size: 26px;
  width: 100%;
  max-width: 750px;
  display: block;
  font-feature-settings: "palt";
}
@media (max-width: 1690px) {
  #contents {
    margin: 0 auto;
  }
}

@media (max-width: 750px) {
  #contents {
    font-size: 3.45vw;
  }
}

#contents img {
  width: 100%;
  height: auto;
}

/* サンプル用 */
header,
footer {
  position: relative;
  z-index: 2;
}

#main {
  position: relative;
  /*background-color: #004d30;*/
  z-index: 1;
}

#main::after {
  content: "";
  position: fixed;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/251110/cont_pc_bg01.webp");
  background-size: cover;
  background-repeat: no-repeat;
 /* mix-blend-mode: screen;*/
  z-index: -1;
}

.weightM {
	font-weight: 500;
}
.weightSB {
	font-weight: 600;
}
.weightB {
	font-weight: bold;
}

.posiRe {
	position: relative;
}

/*-----------------------------
	2025/12/10
------------------------------*/

#page-top {
	width: 100px;
	position: fixed;
	right: 40px;
	bottom: 80px;
	z-index: 100;
}
#page-top img {
	width: 100%;
	height: auto;
}


/*------------------*/

.contPd_0_40 {
	padding-left: 40px;
	padding-right: 40px;
}
.contPd_0_65 {
	padding-left: 65px;
	padding-right: 65px;
}
.contPd_0_75 {
	padding-left: 75px;
	padding-right: 75px;
}
.contPd_0_100 {
	padding-left: 100px;
	padding-right: 100px;
}

.slideTit01 {
	text-align: center;
	margin-bottom: 25px;
}
.slideTit01 .p01 {
	background-image: url("../img/251216/cont01_slide_tit01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 301px;
	height: 41px;
	margin: auto;
	font-size: 22px;
	line-height: 1.4em;
	font-weight: bold;
	color: #b9323c;
}
.slideIn01 {
	position: relative;
	background-color: #ffffff;
}
.slideIn01::before {
	content: "";
	width: calc( 100% - 20px );
	height: calc( 100% - 20px );
	border: 1px solid #b9323c;
	position: absolute;
	top: 10px;
	left: 10px;
}
.slideBoxIn01 {
	padding: 16px 40px 35px;
	letter-spacing: -0.05em;
}

/*-------------------*/

.donationSlick01 {
	position: relative;
}

.contSwiperBlock01 {
	padding: 0px 0px 30px;
	overflow: hidden;
	position: relative;
}
.contSwiperBlock01 .swiper-slide {
	box-sizing: border-box;
	padding: 0px 25px;
}
.contBtn01 {}
.contBtn01 img {
	width: 256px !important;
	height: auto;
}

.swiper-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0px 10px;
	padding: 30px 0px 0px;
}
.swiper-pagination-bullet {
	box-sizing: border-box;
	width: 12px;
	height: 12px;
	/*border: 2px solid #bc9652;*/
	border-radius: 20px;
	background-color: #ffffff;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #fcee21;
}

.swiper-button-prev {
	background-image: url("../img/251216/cont01_slide_prev.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 50px;
	height: 80px;
	position: absolute;
	top: 228px;
	left: 58px;
	z-index: 2;
}
.swiper-button-next {
	background-image: url("../img/251216/cont01_slide_next.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 50px;
	height: 80px;
	position: absolute;
	top: 228px;
	right: 58px;
	z-index: 2;
}

/*-----------------------------*/

.mainBlock01 {
	background-color: #fff8d2;
	padding-bottom: 80px;
}
.mainTextBox01 {
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0px;
	top: 1060px;
}
.mainText01 {
	background-image: url("../img/251216/main_text_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 670px;
	height: 61px;
	margin: auto;
}
.mainText01 .p01 {
	font-size: 34px;
	line-height: 1.6em;
	font-weight: 600;
}
.mainText01 .p01 .s01 {
	font-size: 25px;
}
.text31_16_n {
	font-size: 31px;
	line-height: 1.6em;
}
.text22_16_n {
	font-size: 22px;
	line-height: 1.6em;
}
.text27_22_n {
	font-size: 27px;
	line-height: 2.2em;
}
.ancNavi02 li {
	margin-top: -2px;
}

/*-----------------*/

.contBlock01 {
	background-color: #b9323c;
}
.cont01Box01 {
	text-align: center;
	background-color: #ffffff;
	position: relative;
	padding: 10px 20px 12px 40px;
	color: #b9323c;
	font-size: 32px;
	line-height: 1.3em;
	font-weight: 600;
}
.cont01Badge01 {
	width: 141px;
	position: absolute;
	left: 55px;
	top: 50%;
	transform: translateY(-50%);
}
.cont01Text01 {
	text-align: center;
	color: #ffffff;
	font-size: 27px;
	line-height: 1.65em;
	font-weight: 600;
}
.text25_15_n {
	font-size: 25px;
	line-height: 1.5em;
}
.colRed01 {
	color: #b9323c;
}
.slideMore01 {
	color: #af782d;
	font-size: 22px;
	line-height: 2.0em;
	font-weight: 600;
	border-bottom: 2px solid #af782d;
	margin: 10px auto 5px;
}

.slideImg01 {
	padding-top: 40px;
	text-align: center;
}
.slideImg01 img {
	width: 391px !important;
	height: auto !important;
	margin: auto;
}

/*----------------------*/

.contBlock0102 {
	background-image: url("../img/251216/cont01_bg01.webp");
	background-repeat: repeat-y;
	background-position: center top;
	background-size: 100% auto;
	padding: 110px 40px;
}

.block02Box01 {
	background-color: #ffffff;
	position: relative;
	padding: 80px 60px 40px;
	letter-spacing: -0.05em;
}
.block02Box01::before {
	content: "";
	width: calc( 100% - 20px );
	height: calc( 100% - 20px );
	border: 1px solid #af782d;
	position: absolute;
	top: 10px;
	left: 10px;
}
.contH301 {
	background-image: url("../img/251216/cont01_tit_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	box-sizing: border-box;
	padding: 18px 10px;
	width: 385px;
	height: auto;
	min-height: 86px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #ffffff;
	font-size: 32px;
	line-height: 1.2em;
	font-weight: 500;
	position: absolute;
	top: -114px;
	left: 50%;
	transform: translateX(-50%);
}

.text27_16_n {
	font-size: 27px;
	line-height: 1.6em;
}
.colGold01 {
	color: #af782d;
}
.text20_16_n {
	font-size: 20px;
	line-height: 1.6em;
}

.whSpNoWrap {
	white-space: nowrap;
}
.cyusyaku01 {
	font-size: 18px;
	line-height: 1.6em;
	text-align: right;
}

/*------------------------*/

.contBlock02 {
	background-color: #fdeeef;
	padding-bottom: 70px;
	position: relative;
	border-top: 3px solid #dc6ea0;
}
.contBlock02::before {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #dc6ea0;
	position: absolute;
	left: 0px;
	top: -8px;
}

.block02TextBox01 {
	margin-top: -70px;
}
.block02Btn01 {
	width: 601px;
	margin-left: auto;
	margin-right: auto;
}

.contBlock02 .slideMore01 {
	color: #d7629a;
	border-bottom: 1px solid #d7629a;
}
.block02Box02 {
	background-color: #ffffff;
	padding: 35px 0px 50px;
	margin: 70px 40px 40px;
	letter-spacing: -0.05em;
}

.block02H301 {
	background-color: #d7629a;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	padding: 5px 10px;
	width: 540px;
	margin-left: auto;
	margin-right: auto;
	height: 120px;
	color: #ffffff;
	font-size: 27px;
	line-height: 1.25em;
	font-weight: 600;
}
.block02Text01 {
	color: #d7629a;
	font-size: 27px;
	line-height: 1.6em;
	font-weight: 600;
	letter-spacing: -0.05em;
	text-align: center;
	white-space: nowrap;
}

.block02Line01 {
	height: 1px;
	background-color: #000000;
	margin: 15px auto;
}
.block02Line02 {
	height: 1px;
	background-color: #d7629a;
	margin: 15px auto;
}

.block02Flex01 {
	display: flex;
	align-items: center;
	gap: 18px;
	border-top: 1px solid #d7629a;
	border-bottom: 1px solid #d7629a;
	padding: 13px 0px;
	margin: 13px auto;
}
.block02Flex02 {
	display: flex;
	gap: 22px;
	letter-spacing: -0.05em;
}
.flexImg01 {
	width: 326px;
	flex-shrink: 0;
}
.text18_16_n {
	font-size: 18px;
	line-height: 1.6em;
}

/*-------------------*/

.contBlock03 {
	background-image: url("../img/251216/cont03_bg01.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	padding: 40px 40px 80px;
}
.contH201 {
	color: #41a5a2;
	font-size: 45px;
	line-height: 1.4em;
	font-weight: 600;
	text-align: center;
}
.contH302 {
	text-align: center;
}
.contH302 .s01 {
	font-size: 30px;
	line-height: 1.6em;
	font-weight: 500;
}
.contH302 .s02 {
	color: #b9323c;
	font-size: 45px;
	line-height: 1.0em;
	font-weight: 600;
}

.block03Box01 .contH302 .s02 {
	font-size: 38px;
}
.block03Box01 .contH302 {
	padding: 20px 0px;
}

.block03Box01 {
	background-color: #ffffff;
}
.block03Flex01 {
	display: flex;
	gap: 10px;
}
.block03Flex01 .box01 {
	width: 308px;
	flex-shrink: 0;
}
.block03Flex01 .box02 {
	padding: 10px 0px 0px;
}

.text29_18_n {
	font-size: 29px;
	line-height: 1.8em;
}
.text48_115_n {
	font-size: 48px;
	line-height: 1.15em;
}
.block03Flex02 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 34px;
	box-sizing: border-box;
	padding: 5px 0px;
	height: 76px;
	border-top: 2px solid #41a5a2;
	border-bottom: 2px solid #41a5a2;
}
.text56_13_n {
	font-size: 56px;
	line-height: 1.3em;
}
.contBox01 {
	text-align: center;
	padding-bottom: 42px;
}

ruby rt {
	margin-bottom: -8px;
}
.block03Box02 {
	background-color: #ffffff;
}
.block03BoxIn01 {
	padding: 20px 55px 30px;
}
.block03Box03 {
	padding: 7px 0px;
	margin: 10px auto 8px;
	border-top: 2px solid #41a5a2;
	border-bottom: 2px solid #41a5a2;
}

.block03Box04 {
	background-color: #ffffff;
	padding: 40px 10px 30px;
}
.block03Text01 {
	display: inline-block;
	background-color: #41a5a2;
	padding: 4px 30px 6px;
	color: #ffffff;
}
.block03ImgBox01 {
	padding: 0px 60px;
}

/*-------------------*/

.contBlock04 {
	background-image: url("../img/251216/cont04_bg01.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	padding: 50px 42px;
	position: relative;
	border-bottom: 3px solid #af782d;
}
.contBlock04::before {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #af782d;
	position: absolute;
	left: 0px;
	bottom: 7px;
}

.contBlock04 .contH201 {
	color: #af782d;
}
.block03Ul01 li {
	margin-bottom: 36px;
}

/*-------------------*/

.bottomBlock01 {
	background-color: #e6e6e6;
	padding: 50px 40px 80px;
}
.bottomH301 {
	width: 424px;
	margin: auto auto 35px;
}
.bottomBtn01 {
	width: 500px;
	margin-left: auto;
	margin-right: auto;
}
.bottomFlex01 {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.bottomFlex01 li {
	box-sizing: border-box;
	width: 100%;
}
.bottomFlex01 li.li01 {
	padding: 0px 30px;
}

/*-----------------------*/

.block02Box01.box02 {
	padding-top: 105px;
}

.contH301.h302 {
	top: -150px;
}






@media (max-width: 750px) {

	#page-top {
		width: 13.33vw;
		right: 5.33vw;
		bottom: 10.66vw;
	}

	/*------------------*/

	.contPd_0_40 {
		padding-left: 5.33vw;
		padding-right: 5.33vw;
	}
	.contPd_0_65 {
		padding-left: 8.66vw;
		padding-right: 8.66vw;
	}
	.contPd_0_75 {
		padding-left: 10vw;
		padding-right: 10vw;
	}
	.contPd_0_100 {
		padding-left: 13.33vw;
		padding-right: 13.33vw;
	}

	.slideTit01 {
		margin-bottom: 3.33vw;
	}
	.slideTit01 .p01 {
		width: 40.13vw;
		height: 5.46vw;
		font-size: 2.93vw;
	}
	.slideIn01::before {
		width: calc( 100% - 2.66vw );
		height: calc( 100% - 2.66vw );
		top: 1.33vw;
		left: 1.33vw;
	}
	.slideBoxIn01 {
		padding: 2.13vw 5.33vw 4.66vw;
	}

	/*-------------------*/


	.contSwiperBlock01 {
		padding: 0px 0px 4vw;
	}
	.contSwiperBlock01 .swiper-slide {
		padding: 0px 3.33vw;
	}
	.contBtn01 img {
		width: 34.13vw !important;
	}

	.swiper-pagination {
		gap: 0px 1.33vw;
		padding: 4vw 0px 0px;
	}
	.swiper-pagination-bullet {
		width: 1.6vw;
		height: 1.6vw;
		border-radius: 2.66vw;
	}

	.swiper-button-prev {
		width: 6.66vw;
		height: 10.66vw;
		top: 30.4vw;
		left: 7.73vw;
	}
	.swiper-button-next {
		width: 6.66vw;
		height: 10.66vw;
		top: 30.4vw;
		right: 7.73vw;
	}

	/*-----------------------------*/

	.mainBlock01 {
		padding-bottom: 10.66vw;
	}
	.mainTextBox01 {
		top: 141.33vw;
	}
	.mainText01 {
		width: 89.33vw;
		height: 8.13vw;
	}
	.mainText01 .p01 {
		font-size: 4.53vw;
	}
	.mainText01 .p01 .s01 {
		font-size: 3.33vw;
	}
	.text31_16_n {
		font-size: 4.13vw;
	}
	.text22_16_n {
		font-size: 2.93vw;
	}
	.text27_22_n {
		font-size: 3.6vw;
	}
	.ancNavi02 li {
		margin-top: -0.26vw;
	}

	/*-----------------*/

	.cont01Box01 {
		padding: 1.33vw 2.66vw 1.6vw 5.33vw;
		font-size: 4.26vw;
	}
	.cont01Badge01 {
		width: 18.8vw;
		left: 7.33vw;
	}
	.cont01Text01 {
		font-size: 3.6vw;
	}
	.text25_15_n {
		font-size: 3.33vw;
	}
	.slideMore01 {
		font-size: 2.93vw;
		margin: 1.33vw auto 0.66vw;
	}

	.slideImg01 {
		padding-top: 5.33vw;
	}
	.slideImg01 img {
		width: 52.13vw !important;
	}

	/*----------------------*/

	.contBlock0102 {
		padding: 14.66vw 5.33vw;
	}

	.block02Box01 {
		padding: 10.66vw 8vw 5.33vw;
	}
	.block02Box01::before {
		width: calc( 100% - 2.66vw );
		height: calc( 100% - 2.66vw );
		top: 1.33vw;
		left: 1.33vw;
	}
	.contH301 {
		padding: 2.4vw 1.33vw;
		width: 51.33vw;
		min-height: 11.46vw;
		font-size: 4.26vw;
		top: -15.2vw;
	}

	.text27_16_n {
		font-size: 3.6vw;
	}
	.text20_16_n {
		font-size: 2.66vw;
	}

	.cyusyaku01 {
		font-size: 2.4vw;
	}

	/*------------------------*/

	.contBlock02 {
		padding-bottom: 9.33vw;
	}
	.contBlock02::before {
		top: -1.86vw;
	}

	.block02TextBox01 {
		margin-top: -9.33vw;
	}
	.block02Btn01 {
		width: 80.13vw;
	}

	.block02Box02 {
		padding: 4.66vw 0px 6.66vw;
		margin: 9.33vw 5.33vw 5.33vw;
	}

	.block02H301 {
		padding: 0.66vw 1.33vw;
		width: 72vw;
		height: 16vw;
		font-size: 3.6vw;
	}
	.block02Text01 {
		font-size: 3.6vw;
	}

	.block02Line01 {
		margin: 2vw auto;
	}
	.block02Line02 {
		margin: 2vw auto;
	}

	.block02Flex01 {
		gap: 2.4vw;
		padding: 1.73vw 0px;
		margin: 1.73vw auto;
	}
	.block02Flex02 {
		gap: 2.93vw;
	}
	.flexImg01 {
		width: 43.46vw;
	}
	.text18_16_n {
		font-size: 2.4vw;
	}

	/*-------------------*/

	.contBlock03 {
		padding: 5.33vw 5.33vw 10.66vw;
	}
	.contH201 {
		font-size: 6vw;
	}
	.contH302 .s01 {
		font-size: 4vw;
	}
	.contH302 .s02 {
		font-size: 6vw;
	}

	.block03Box01 .contH302 .s02 {
		font-size: 5.06vw;
	}
	.block03Box01 .contH302 {
		padding: 2.66vw 0px;
	}

	.block03Flex01 {
		gap: 1.33vw;
	}
	.block03Flex01 .box01 {
		width: 41.06vw;
	}
	.block03Flex01 .box02 {
		padding: 1.33vw 0px 0px;
	}

	.text29_18_n {
		font-size: 3.86vw;
	}
	.text48_115_n {
		font-size: 6.4vw;
	}
	.block03Flex02 {
		gap: 4.53vw;
		padding: 0.66vw 0px;
		height: 10.13vw;
	}
	.text56_13_n {
		font-size: 7.46vw;
	}
	.contBox01 {
		padding-bottom: 5.6vw;
	}

	ruby rt {
		margin-bottom: -1.06vw;
	}
	.block03BoxIn01 {
		padding: 2.66vw 7.33vw 4vw;
	}
	.block03Box03 {
		padding: 0.93vw 0px;
		margin: 1.33vw auto 1.06vw;
	}

	.block03Box04 {
		background-color: #ffffff;
		padding: 5.33vw 1.33vw 4vw;
	}
	.block03Text01 {
		padding: 0.53vw 4vw 0.8vw;
	}
	.block03ImgBox01 {
		padding: 0px 8vw;
	}

	/*-------------------*/

	.contBlock04 {
		padding: 6.66vw 5.6vw;
	}
	.contBlock04::before {
		bottom: 0.93vw;
	}

	.block03Ul01 li {
		margin-bottom: 4.8vw;
	}

	/*-------------------*/

	.bottomBlock01 {
		padding: 6.66vw 5.33vw 10.66vw;
	}
	.bottomH301 {
		width: 56.53vw;
		margin: auto auto 4.66vw;
	}
	.bottomBtn01 {
		width: 66.66vw;
	}
	.bottomFlex01 {
		gap: 5.33vw;
	}
	.bottomFlex01 li.li01 {
		padding: 0px 4vw;
	}

	/*-----------------------*/

	.block02Box01.box02 {
		padding-top: 14vw;
	}

	.contH301.h302 {
		top: -20vw;
	}




}



/*---*/