@charset "UTF-8";
/* loading ---------------------------------------*/
.pace {
	-webkit-pointer-events: none;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.pace-inactive {
	display: none;
}

.pace .pace-progress {
	background: #000;
	position: fixed;
	z-index: 2000;
	top: 0;
	right: 100%;
	width: 100%;
	height: 2px;
}

.loading {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 9999;
}

.logo-mask {
	opacity: 0;
}


/* index kv ---------------------------------------*/
.indexkv {
	position: relative;
	z-index: 2;
	margin-top: -80px;
	height: 100vh;
	min-height: calc(800 / 1440 * 100vw);
}

.indexkv-video {
	width: 100%;
	height: 100%;
}

.indexkv-video video {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.indexkv-tentative {
	width: 100%;
	height: 100%;
}

.indexkv-tentative img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.indexkv-title {
	position: absolute;
	top: 52%;
	left: 50%;
	z-index: 10;
	transform: translate(-50%, -50%);
	opacity: 0;
	transition: opacity 1s ease;
}

.indexkv.is-active .indexkv-title {
	opacity: 1;
}

.indexkv-title::after {
	position: absolute;
	top: -19%;
	left: -16.5%;
	transform: translateX(-50%);
	z-index: 1;
	width: calc(92 / 1440 * 100vw);
	aspect-ratio: 92 / 67;
	background: url('../img/index/kv_title_deco.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexkv-title strong {
	display: block;
	font-size: calc(38 / 1440 * 100vw);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.1em;
	color: #fff;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	white-space: nowrap;
}

.indexkv-title b {
	display: block;
	width: fit-content;
	padding-bottom: calc(20 / 1440 * 100vw);
	margin: 0 auto calc(6 / 1440 * 100vw);
	font-size: calc(29 / 1440 * 100vw);
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.05em;
	color: #fff;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	white-space: nowrap;
	border-bottom: 1px solid #fff;
}

.indexkv-title span {
	display: block;
	font-size: calc(24 / 1440 * 100vw);
	text-align: center;
	letter-spacing: 0.1em;
	color: #fff;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	white-space: nowrap;
}

.indexkv-bg {
	
}

.indexkv-bg img {
	position: absolute;
}

.indexkv-bg picture:first-of-type img {
	top: 0;
	left: 0;
	width: calc(896 / 1440 * 100vw);
	z-index: 2;
}
.indexkv-bg picture:nth-of-type(2) img {
	top: 0;
	right: 0;
	width: calc(657 / 1440 * 100vw);
	z-index: 3;
}
.indexkv-bg picture:nth-of-type(3) img {
	bottom: -9%;
	left: 0;
	width: calc(603 / 1440 * 100vw);
	z-index: 4;
}
.indexkv-bg picture:nth-of-type(4) img {
	bottom: -3.5%;
	right: 0;
	width: calc(858 / 1440 * 100vw);
	z-index: 5;
}

.indexkv-image {
}

.indexkv-image img {
	position: absolute;
	transform: translateX(-50%);
	z-index: 7;
}

.indexkv-image img:first-of-type {
	top: 3.5%;
	left: 18%;
	width: calc(383 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(2) {
	top: 27%;
	left: 2.6%;
	z-index: 6;
	width: calc(136 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(3) {
	top: 26%;
	left: 11%;
	z-index: 6;
	width: calc(39 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(4) {
	top: 33%;
	left: 11.4%;
	z-index: 6;
	width: calc(106 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(5) {
	top: 7%;
	left: 52.8%;
	z-index: 6;
	width: calc(157 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(6) {
	top: 6%;
	left: 64.8%;
	z-index: 6;
	width: calc(145 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(7) {
	top: 8%;
	left: 80.7%;
	z-index: 6;
	width: calc(136 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(8) {
	top: 16.6%;
	left: 90.8%;
	z-index: 6;
	width: calc(204 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(9) {
	top: 18.5%;
	left: 77.3%;
	width: calc(169 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(10) {
	top: 26%;
	left: 92.4%;
	width: calc(188 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(11) {
	top: 33.5%;
	left: 100%;
	width: calc(283 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(12) {
	bottom: 46%;
	left: 4.2%;
	width: calc(145 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(13) {
	bottom: 30.3%;
	left: 4.2%;
	width: calc(165 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(14) {
	bottom: 9.3%;
	left: 13.1%;
	width: calc(228 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(15) {
	bottom: 6%;
	left: 22%;
	z-index: 6;
	width: calc(330 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(16) {
	bottom: 7.3%;
	left: 6%;
	z-index: 6;
	width: calc(81 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(17) {
	bottom: -15.3%;
	left: 28.3%;
	width: calc(376 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(18) {
	bottom: -13%;
	left: 7.8%;
	width: calc(95 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(19) {
	bottom: -1.5%;
	left: 65%;
	width: calc(56 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(20) {
	bottom: 1%;
	left: 76.8%;
	width: calc(76 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(21) {
	bottom: 4.3%;
	left: 89.6%;
	width: calc(299 / 1440 * 100vw);
}
.indexkv-image img:nth-of-type(22) {
	bottom: 35.6%;
	left: 95.9%;
	z-index: 6;
	width: calc(148 / 1440 * 100vw);
}

.indexkv-scroll {
	position: absolute;
	bottom: 5.3%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 8;
	width: max(calc(26 / 1440 * 100vw), 26px);
	animation: scroll 1.2s ease-out infinite;
}

@keyframes scroll {
	0% {transform: translate(-50%, 0);}
	30% {transform: translate(-50%, 8px);}
	70% {transform: translate(-50%, 8px);}
	100% {transform: translate(-50%, 0);}
}

.indexkv-scroll img {
	width: 100%;
}


/* indexintro ---------------------------------------*/
.indexintro {
	position: relative;
	z-index: 1;
	background: #ff9149;
	padding: calc(72 / 1440 * 100vw) 20px calc(36 / 1440 * 100vw);
}

.indexintro-title {
	position: relative;
	z-index: 1;
	padding-top: 86px;
	margin-bottom: 32px;
	font-size: 35px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.035em;
	color: #fff;
}

.indexintro-title::before {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	width: calc(118 / 1200 * 100%);
	aspect-ratio: 118 / 66;
	background: url('../img/index/img_intro.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexintro-title b {
	position: relative;
	font-weight: 700;
}

.indexintro-title b::after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 260px;
	height: 27px;
	background: url('../img/common/img_marker_01.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexintro-text {
	font-size: 27px;
	line-height: calc(68 / 54);
	text-align: center;
	letter-spacing: 0.1em;
	color: #fff;
}


/* indexconcept ---------------------------------------*/
.indexconcept {
	position: relative;
	z-index: 2;
	background: linear-gradient(180deg, #ff9149 0%, #ff9149 calc(333 / 1440 * 100vw), #fff calc(333 / 1440 * 100vw), #fff 100%);
	padding: calc(126 / 1440 * 100vw) 20px calc(100 / 1440 * 100vw);
}

.indexconcept::before {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 100%;
	aspect-ratio: 1440 / 343;
	background: url('../img/index/bg_concept.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexconcept-block {
	position: relative;
	margin-left: calc(476 / 1200 * 100%);
	max-width: 510px;
}

.indexconcept-block::before,
.indexconcept-block::after {
	position: absolute;
	z-index: 1;
	content: '';
}

.indexconcept-block::before {
	top: -112px;
	left: 194px;
	width: 76px;
	aspect-ratio: 152 / 186;
	background: url('../img/index/img_concept_03.png') no-repeat;
	background-size: contain;
}

.indexconcept-block::after {
	top: 274px;
	right: -26%;
	width: 99px;
	aspect-ratio: 198 / 194;
	background: url('../img/index/img_concept_04.png') no-repeat;
	background-size: contain;
}

.indexconcept-image {
	position: absolute;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.indexconcept-image-01 {
	top: 17.7%;
	left: calc(50% - 520px);
	width: min(calc(648 / 1440 * 100vw), 648px);
}

.indexconcept-image-02 {
	top: -20%;
	left: calc(50% + 750px);
	width: min(calc(838 / 1440 * 100vw), 838px);
}

.indexconcept-image-03 {
	top: 80.8%;
	left: calc(50% - 616px);
	width: min(calc(216 / 1440 * 100vw), 216px);
}

.indexconcept-image img {
	width: 100%;
}


/* indexreason ---------------------------------------*/
.indexreason {
	position: relative;
	z-index: 3;
	background: linear-gradient(180deg, #fff 0%, #fff calc(265 / 1440 * 100vw), #e5e5e5 calc(265 / 1440 * 100vw), #e5e5e5 100%);
	padding: calc(76 / 1440 * 100vw) 20px 0;
}

.indexreason::before {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 100%;
	aspect-ratio: 1440 / 275;
	background: url('../img/index/bg_reason.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexreason-block {
	position: relative;
	margin: 0 auto 40px 6px;
	max-width: 570px;
	width: 100%;
}

.indexreason-title {
	margin-bottom: 20px;
}

.indexreason-list {

}

.indexreason-list > li {
	position: relative;
	background: #fff;
	padding: 22px 80px 22px 106px;
	max-width: 533px;
	border-radius: 30px;
}

.indexreason-list > li:nth-of-type(2) {margin: 10px calc(42 / 1200 * 100%) 0 auto;}
.indexreason-list > li:nth-of-type(3) {margin: 150px auto 0 calc(156 / 1200 * 100%);}

.indexreason-list > li::after {
	position: absolute;
	z-index: 1;
	content: '';
}

.indexreason-list > li:first-of-type::after {
	top: 184px;
	right: -31%;
	width: 66px;
	height: 64px;
	background: url('../img/index/img_reason_04.png') no-repeat;
	background-size: contain;
}

.indexreason-list > li:nth-of-type(2)::after {
	top: 188px;
	right: -32%;
	width: 119px;
	height: 70px;
	background: url('../img/index/img_reason_06.png') no-repeat;
	background-size: contain;
}

.indexreason-list > li:nth-of-type(3)::after {
	top: -44px;
	right: -39.8%;
	width: 57px;
	height: 85px;
	background: url('../img/index/img_reason_07.png') no-repeat;
	background-size: contain;
}

.indexreason-list-num {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 14px;
	left: 16px;
	width: 63px;
	height: 63px;
	border-radius: 50%;
	background: #ff9149;
}

.indexreason-list-num-01 img {width: 36px;}
.indexreason-list-num-02 img {width: 49px;}
.indexreason-list-num-03 img {width: 44px;}

.indexreason-list-title {
	margin-bottom: 10px;
	font-size: 26px;
	line-height: 1.75;
	letter-spacing: 0.05em;
	color: #ff9149;
}

.indexreason-list-image {
	position: absolute;
}

.indexreason-list-image-01 {
	top: -36px;
	right: 22px;
	width: 140px;
}

.indexreason-list-image-02 {
	top: -84px;
	right: 84px;
	width: 72px;
}

.indexreason-list-image-03 {
	top: -68px;
	right: -32px;
	width: 151px;
}

.indexreason-list-image img {
	width: 100%;
}

.indexreason-image {
	position: absolute;
	transform: translateX(-50%);
	z-index: -1;
}

.indexreason-image img {
	width: 100%;
}

.indexreason-image-01 {
	top: -12.6%;
	left: calc(50% - 146px);
	width: min(calc(361 / 1440 * 100vw), 361px);
}

.indexreason-image-02 {
	top: -4.2%;
	left: calc(50% + 380px);
	width: min(calc(258 / 1440 * 100vw), 258px);
}

.indexreason-image-03 {
    top: 21.6%;
    left: calc(50% + 436px);
	width: min(calc(625 / 1440 * 100vw), 625px);
}

.indexreason-image-04 {
    bottom: 21.8%;
    left: calc(50% - 538px);
	width: min(calc(585 / 1440 * 100vw), 585px);
}

.indexreason-image-05 {
	bottom: 6.1%;
	left: calc(50% + 522px);
	width: min(calc(234 / 1440 * 100vw), 234px);
}



/* indexstrength ---------------------------------------*/
.indexstrength {
	position: relative;
	z-index: 3;
	background: linear-gradient(180deg, #e5e5e5 0%, #e5e5e5 calc(290 / 1440 * 100vw), #fff calc(290 / 1440 * 100vw), #fff 100%);
	padding: min(calc(212 / 1440 * 100vw),212px) 20px 50px;
}

.indexstrength::before {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 100%;
	aspect-ratio: 1440 / 301;
	background: url('../img/index/bg_strength.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexstrength-title {
	margin-bottom: 66px;
	font-size: 40px;
	text-align: center;
	letter-spacing: 0.12em;
	color: #ff9149;
}

.indexstrength-wrapper {
	display: flex;
	justify-content: space-between;
	gap: calc(20 / 1200 * 100%);
}

.indexstrength-sub {
	flex-shrink: 0;
	position: sticky;
	top: 100px;
	padding-bottom: min(calc(400 / 1240 * 100vw), 400px);
	width: calc(320 / 1200 * 100%);
	height: fit-content;
}

.indexstrength-sub-list {

}

.indexstrength-sub-list > li {
	display: flex;
	gap: 12px;
}

.indexstrength-sub-list > li + li {
	margin-top: 12px;
}

.indexstrength-sub-list strong {
	display: block;
	flex-shrink: 0;
	font-size: 67px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.035em;
	color: #ff9149;
}

.indexstrength-sub-list-summary {
	flex: 1;
	margin-top: 12px;
}

.indexstrength-sub-list-summary span {
	display: block;
	padding: 2px 10px 3px;
	width: fit-content;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	letter-spacing: 0.2em;
	color: #fff;
	background: #ff9149;
	border-radius: 20px;
}

.indexstrength-sub-list-summary b {
	display: block;
	margin-top: 8px;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.05em;
}

.indexstrength-sub-image {
	margin-top: 40px;
	margin-right: calc(20 / 320 * 100%);
	width: calc(150 / 320 * 100%);
}

.indexstrength-sub-image img {
	width: 100%;
}

.indexstrength-main {
	width: calc(860 / 1200 * 100%);
}

.indexstrength-main-list {

}

/* ↓↓変更予定↓↓ */
.indexstrength-main-list > li {
	position: relative;
}

.indexstrength-main-list > li:nth-of-type(2)::after {
	position: absolute;
	bottom: 4px;
	right: -48px;
	z-index: 1;
	width: min(calc(153 / 1440 * 100vw), 153px);
	aspect-ratio: 153 / 100;
	background: url('../img/index/img_strength_07.png') no-repeat;
	background-size: contain;
	content: '';
}

.indexstrength-main-list > li img {
	width: 100%;
}

.indexstrength-main-list > li + li {
	margin-top: 72px;
}
/* ↑↑変更予定↑↑ */


.indexstrength-image {
	position: absolute;
    transform: translateX(-50%);
    z-index: -1;
}

.indexstrength-image img {
	width: 100%;
}

.indexstrength-image-01 {
	top: 0.8%;
	left: calc(50% - 562px);
	width: min(calc(608 / 1440 * 100vw), 608px);
}
.indexstrength-image-02 {
	top: 5.7%;
	left: calc(50% + 476px);
	width: min(calc(82 / 1440 * 100vw), 82px);
}
.indexstrength-image-03 {
	bottom: 5.3%;
	left: calc(50% - 600px);
	width: min(calc(604 / 1440 * 100vw), 604px);
}
.indexstrength-image-04 {
	bottom: 10.8%;
	left: calc(50% - 402px);
	width: min(calc(107 / 1440 * 100vw), 107px);
}


/* indexnews ---------------------------------------*/
.indexnews {

}

.indexnews-deco {

}

.indexnews-block {

}

.indexnews-title {

}

.indexnews-info {

}

.indexnews-info-catlist {

}

.indexnews-info-catlist > li {

}

.indexnews-info-list {

}

.indexnews-info-list > li {

}

.indexnews-info-list > li > a {

}

.indexnews-info-list-cat {

}

.indexnews-info-list-title {

}


/* indexblog ---------------------------------------*/
.indexblog {

}

.indexblog-deco {

}

.indexblog-title {

}

.indexblog-slider {

}

.indexblog-slider-list {

}

.indexblog-slider-list > li {

}

.indexblog-slider-list > li > a {

}

.indexblog-slider-image {

}

.indexblog-slider-image img {

}

.indexblog-slider-info {

}

.indexblog-slider-title {

}

.indexblog-slider-info time {

}


/* indexmessage ---------------------------------------*/
.indexmessage {
	position: relative;
	z-index: 6;
}

.indexmessage-block {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.indexmessage-title {
	margin-bottom: 24px;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.75;
	letter-spacing: 0.035em;
	color: #fff;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	white-space: nowrap;
}

.indexmessage-text {
	margin-left: 14px;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}

.indexmessage-image-wrapper {
	position: absolute;
	top: 49%;
	left: calc(50% - 460px);
	transform: translate(-50%, -50%);
	z-index: 2;
}

.indexmessage-image {
	margin: 0 auto 0 min(calc(36 / 1440 * 100vw), 36px);
	width: min(calc(138 / 1440 * 100vw), 138px);
}

.indexmessage-image img {
	width: 100%;
}

.indexmessage-image-text {
	font-size: min(calc(32 / 1440 * 100vw), 32px);
	text-align: center;
	letter-spacing: 0.14em;
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
	color: #fff;	
}

.indexmessage-slider {
	overflow: visible;
}

.indexmessage-slider-list {
	transition-timing-function: linear;
}

.indexmessage-slider-list > li {

}

.indexmessage-slider-list img {
	width: 100%;
}


/* pc only */
@media screen and (min-width: 768px){
}


/* small pc */
@media screen and (min-width: 768px) and (max-width: 1439px) {
	.indexconcept-image-01 {left: 13.8%;}
	.indexconcept-image-02 {left: 102%;}
	.indexconcept-image-03 {left: 7.3%;}

	/* .indexreason-image-01 {left: 39.8%;} */
	.indexreason-image-02 {left: 76.4%;}
	.indexreason-image-03 {left: 80.2%;}
	.indexreason-image-04 {left: 12.7%;}
	.indexreason-image-05 {left: 86.2%;}

	.indexstrength-image-01 {left: 11%;}
	.indexstrength-image-02 {left: 83%;}
	.indexstrength-image-03 {left: 7%;}
	.indexstrength-image-04 {left: 22%;}

	.indexmessage-image-wrapper {left: 18%;}

	.indexmessage-slider-list > li {
		width: 330px !important;
	}
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
	.indexconcept-block::before {
		top: -60px;
		left: 164px;
		width: 60px;
	}

	.indexconcept-image-02 {
		top: -10%;
		left: 102%;
		width: calc(700 / 1440 * 100vw);
	}

	.indexreason-image-03 {
		top: 17%;
	}

	.indexmessage-image-wrapper {
        left: 13%;
    }
}

@media screen and (min-width: 768px) and (max-width: 850px) {
	.indexreason-image-05 {left: 92%;}
}


/* sp only */
@media screen and (max-width: 767px){
	/* index kv ---------------------------------------*/
	.indexkv {
		margin-top: 0;
		height: 100vh;
		min-height: calc(600 / 375 * 100vw);
	}

	.indexkv-title {
		top: 40.8%;
	}

	.indexkv-title::after {
		top: -26%;
		left: 16.5%;
		/* width: calc(46 / 375 * 100vw); */
		width: 46px;
	}

	.indexkv-title strong {
		/* margin-left: calc(20 / 375 * 100vw);
		font-size: calc(30 / 375 * 100vw); */
		margin-left: 20px;
		font-size: 30px;
	}

	.indexkv-title b {
		/* padding-bottom: calc(16 / 375 * 100vw);
		margin: 0 auto calc(6 / 375 * 100vw);
		font-size: calc(23 / 375 * 100vw); */
		padding-bottom: 16px;
		margin: 0 auto 6px;
		font-size: 23px;
	}

	.indexkv-title span {
		/* font-size: calc(19 / 375 * 100vw); */
		font-size: 19px;
	}

	.indexkv-bg picture:first-of-type img,
	.indexkv-bg picture:nth-of-type(2) img {
		width: 100vw;
	}
	.indexkv-bg picture:nth-of-type(3) img,
	.indexkv-bg picture:nth-of-type(4) img {
		bottom: 0;
		width: 100vw;
	}

	.indexkv-image img:first-of-type {
		top: 5%;
		left: 26%;
		width: calc(170 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(2) {
		top: 19%;
		left: 3.4%;
		width: calc(68 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(3) {
		top: 15.8%;
		left: 13.5%;
		width: calc(20 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(4) {
		top: unset;
		bottom: 48.5%;
		left: 8.5%;
		width: calc(54 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(5) {
		top: 11.2%;
		left: 60.6%;
		width: calc(52 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(6),
	.indexkv-image img:nth-of-type(7),
	.indexkv-image img:nth-of-type(8) {
		display: none;
	}
	.indexkv-image img:nth-of-type(9) {
		top: 6.8%;
		left: 83.3%;
		width: calc(71 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(10) {
		top: 14%;
		left: 86.4%;
		width: calc(66 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(11) {
		top: 17.5%;
		left: 96.8%;
		width: calc(100 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(12) {
		bottom: 36.6%;
		left: 8%;
		width: calc(73 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(13) {
		bottom: 26.4%;
		left: 7.7%;
		width: calc(83 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(14) {
		bottom: 7.7%;
		left: 23%;
		width: calc(114 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(15) {
		bottom: 7.8%;
		left: 32%;
		width: calc(144 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(16) {
		bottom: 6.5%;
		left: 4.5%;
		width: calc(42 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(17) {
		bottom: -1.7%;
		left: 21.8%;
		width: calc(121 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(18) {
		bottom: 2.6%;
		left: 5.3%;
		width: calc(34 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(19) {
		bottom: 3.2%;
		left: 70%;
		width: calc(23 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(20) {
		bottom: 1.7%;
		left: 83.3%;
		width: calc(27 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(21) {
		bottom: 6%;
		left: 84.1%;
		width: calc(124 / 375 * 100vw);
	}
	.indexkv-image img:nth-of-type(22) {
		bottom: 24.7%;
		left: 92%;
		width: calc(75 / 375 * 100vw);
	}

	.indexkv-scroll {
		bottom: 10.5%;
		width: calc(22 / 375 * 100vw);
	}


	/* indexintro ---------------------------------------*/
	.indexintro {
		padding: 40px 16px 20px;
	}

	.indexintro-title {
		padding-top: 38px;
		margin-bottom: 16px;
		font-size: 18px;
	}

	.indexintro-title::before {
		width: 59px;
	}

	.indexintro-title b::after {
		bottom: -3px;
		left: 44%;
		width: 130px;
		height: 14px;
	}

	.indexintro-text {
		font-size: 14px;
	}


	/* indexconcept ---------------------------------------*/
	.indexconcept {
		background: linear-gradient(180deg, #ff9149 0%, #ff9149 calc(115 / 375 * 100vw), #fff calc(115 / 375 * 100vw), #fff 100%);
		padding: 204px 16px calc(50 / 375 * 100vw);
	}

	.indexconcept::before {
		aspect-ratio: 375 / 120;
		background: url('../img/index/bg_concept_sp.png') no-repeat;
		background-size: contain;
	}

	.indexconcept-block {
		margin-left: 100px;
		max-width: unset;
	}

	.indexconcept-block::before {
		top: -56px;
		left: 26%;
		width: 38px;
	}

	.indexconcept-block::after {
		top: 44px;
		right: unset;
		left: 190px;
		width: 36px;
	}

	.indexconcept-image-01 {
		top: 12.8%;
		left: calc(50% - 138px);
		width: 204px;
	}

	.indexconcept-image-02 {
		top: 2.5%;
		left: calc(50% + 210px);
		width: 306px;
	}

	.indexconcept-image-03 {
		top: 32.6%;
		left: 56px;
		width: 60px;
	}


	/* indexreason ---------------------------------------*/
	.indexreason {
		background: linear-gradient(180deg, #fff 0%, #fff calc(52 / 375 * 100vw), #e5e5e5 calc(52 / 375 * 100vw), #e5e5e5 100%);
		padding: 70px 16px 314px;
	}

	.indexreason::before {
		aspect-ratio: 375 / 57;
		background: url('../img/index/bg_reason_sp.png') no-repeat;
		background-size: contain;
	}

	.indexreason-block {
		margin: 0 auto 60px 0;
		max-width: calc(285 / 343 * 100%);
	}

	.indexreason-list > li {
		padding: 12px 24px 12px 60px;
		max-width: calc(303 / 343 * 100%);
		border-radius: 15px;
	}

	.indexreason-list > li:nth-of-type(2) {margin: 56px 0 0 auto;}
	.indexreason-list > li:nth-of-type(3) {margin: 56px auto 0 0;}

	.indexreason-list > li:first-of-type::after {
		top: 180px;
		right: -14%;
		width: 33px;
		height: 32px;
	}

	.indexreason-list > li:nth-of-type(2)::after {
		top: 108px;
		right: 102%;
		width: 60px;
		height: 35px;
	}

	.indexreason-list > li:nth-of-type(3)::after {
		top: 124%;
		right: 23.2%;
		width: 29px;
		height: 43px;
	}

	.indexreason-list-num {
		top: 16px;
		left: 14px;
		width: 36px;
		height: 36px;
	}

	.indexreason-list-num-01 img {width: 22px;}
	.indexreason-list-num-02 img {width: 25px;}
	.indexreason-list-num-03 img {width: 22px;}

	.indexreason-list-title {
		margin-bottom: 4px;
		font-size: 15px;
		letter-spacing: 0;
	}

	.indexreason-list-image-01 {
		top: -20px;
		right: unset;
		left: 210px;
		width: 80px;
	}

	.indexreason-list-image-02 {
		top: -38px;
		right: unset;
		left: 218px;
		width: 36px;
	}

	.indexreason-list-image-03 {
		top: -37px;
		right: unset;
		left: 234px;
		width: 76px;
	}

	.indexreason-image-01 {
		top: -3.6%;
		left: calc(50% - 90px);
		width: 114px;
	}

	.indexreason-image-02 {
		top: -1.8%;
		left: calc(50% + 54px);
		width: 72px;
	}

	.indexreason-image-03 {
		top: 14.8%;
		left: 90%;
		width: 310px;
	}

	.indexreason-image-04 {
		bottom: 2.1%;
		left: calc(50% - 116px);
		width: 244px;
	}

	.indexreason-image-05 {
		bottom: 2.9%;
		left: calc(50% + 104px);
		width: max(calc(68 / 375 * 100vw), 68px);
	}


	/* indexstrength ---------------------------------------*/
	.indexstrength {
		background: linear-gradient(180deg, #e5e5e5 0%, #e5e5e5 calc(100 / 375 * 100vw), #fff calc(100 / 375 * 100vw), #fff 100%);
		padding: 118px 16px 130px;
	}

	.indexstrength::before {
		aspect-ratio: 375 / 105;
		background: url('../img/index/bg_strength_sp.png') no-repeat;
		background-size: contain;
	}

	.indexstrength-inner {
		max-width: 500px;
	}

	.indexstrength-title {
		margin-bottom: 26px;
		font-size: 24px;
	}

	.indexstrength-wrapper {
		display: block;
	}

	.indexstrength-sub {
		display: none;
	}
	
	.indexstrength-main {
		width: 100%;
	}

	/* ↓↓変更予定↓↓ */
	.indexstrength-main-list > li:first-of-type::after {
		position: absolute;
		bottom: -8.2%;
		left: calc(50% + 20px);
		z-index: 1;
		transform: translateX(50%);
		width: 51px;
		aspect-ratio: 150 / 201;
		background: url('../img/index/img_strength_03.png') no-repeat;
		background-size: contain;
		content: '';
	}

	.indexstrength-main-list > li:nth-of-type(2)::after {
		bottom: 47.7%;
		right: -10px;
		width: calc(62 / 375 * 100vw);
	}

	.indexstrength-main-list > li + li {
		margin-top: 54px;
	}
/* ↑↑変更予定↑↑ */


	.indexstrength-main-list-head {
		display: flex;
		gap: 10px;
		margin-bottom: 4px;
	}

	.indexstrength-main-list-head strong {
		display: block;
		flex-shrink: 0;
		font-size: 46px;
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0.035em;
		color: #ff9149;
	}

	.indexstrength-main-list-head-summary {
		flex: 1;
		margin-top: 8px;
	}

	.indexstrength-main-list-head-summary span {
		display: block;
		padding: 1px 8px 2px;
		width: fit-content;
		font-size: 11px;
		line-height: 1;
		text-align: center;
		letter-spacing: 0.2em;
		color: #fff;
		background: #ff9149;
		border-radius: 20px;
	}

	.indexstrength-main-list-head-summary b {
		display: block;
		margin-top: 5px;
		font-size: 15px;
		font-weight: 500;
		letter-spacing: 0.05em;
	}

	.indexstrength-image-01 {
		top: 1.9%;
		left: calc(50% - 244px);
		width: 304px;
	}
	.indexstrength-image-02 {
		top: 6%;
		left: calc(50% + 120px);
		width: 41px;
	}
	.indexstrength-image-03 {
		bottom: -30px;
		left: calc(50% - 80px);
		width: 302px;
	}
	.indexstrength-image-04 {
		bottom: 40px;
		left: calc(50% + 110px);
		width: 50px;
	}


	/* indexnews ---------------------------------------*/
	.indexnews {

	}

	.indexnews-deco {

	}

	.indexnews-block {

	}

	.indexnews-title {

	}

	.indexnews-info {

	}

	.indexnews-info-catlist {

	}

	.indexnews-info-catlist > li {

	}

	.indexnews-info-list {

	}

	.indexnews-info-list > li {

	}

	.indexnews-info-list > li > a {

	}

	.indexnews-info-list-cat {

	}

	.indexnews-info-list-title {

	}


	/* indexblog ---------------------------------------*/
	.indexblog {

	}

	.indexblog-deco {

	}

	.indexblog-title {

	}

	.indexblog-slider {

	}

	.indexblog-slider-list {

	}

	.indexblog-slider-list > li {

	}

	.indexblog-slider-list > li > a {

	}

	.indexblog-slider-image {

	}

	.indexblog-slider-image img {

	}

	.indexblog-slider-info {

	}

	.indexblog-slider-title {

	}

	.indexblog-slider-info time {

	}


	/* indexmessage ---------------------------------------*/
	.indexmessage-block {
		top: 34%;
		max-width: 343px;
		width: 100%;
	}

	.indexmessage-title {
		margin: 0 auto 12px;
		width: fit-content;
		font-size: 20px;
	}

	.indexmessage-text {
		margin-left: 0;
	}

	.indexmessage-image-wrapper {
		top: 77%;
		left: 50%;
	}

	.indexmessage-image {
        margin: 0 auto 0 20px;
        width: 60px;
	}

	.indexmessage-image-text {
		font-size: 16px;
	}

	.indexmessage-slider-list > li {
		width: 280px !important;
	}


}


/* iphone5 iphoneSE用 */
@media screen and (max-width: 370px){

}