@charset "utf-8";

/* =======================================================================================
	COMMON
======================================================================================= */

/* =======================================================================================
	PAGE 
======================================================================================= */
	.wrapper { 
		overflow: inherit;
	}
@media screen and (min-width: 736.02px) and (max-width: 1200px) { /*{TB}*/
	.mainVisualWrap {
		margin-top:64px;
	}
}
/* ------------------------------------------------------------------------
 mainVisualWrap
------------------------------------------------------------------------ */
	.mainVisualWrap {
		position: relative;
		overflow: hidden;
	}
	.mainVisualBox {
		width: 100%;
		margin: 0 auto;
	}
	.swiper-slide  [class*="mvUnit"]  {
		position: relative;
	}

/*mvUnit01--------------*/
	.mvUnit01 .txtBox {
		position: absolute;
		top: clamp(50px, (50 / 1200 * 100vw), 90px);
		right: clamp(80px, (80 / 1200 * 100vw), 120px);
		z-index: 2;
		/*width: 28.42%;*/
		width: 22%;
	}
	.mvUnit01 .txtBox > p {
		position: absolute;
		top:0;
		left:0;
		z-index: 0;
		width: 100%;
		opacity: 0;
	}
	.swiper-slide  [class*="mvUnit"] .imgcapkeep {
		z-index: 2;
	}


/*animation-------------------------*/
	.swiper-slide-active .mvUnit01 .txtBox [class*="txt"]  {
	  animation-name: fade-text;
	  animation-duration: 1.6s;
		animation-delay: 1.8s;
	   animation-fill-mode: forwards;
	}
	/*.swiper-slide-active .mvUnit01 .txtBox .txt01 {  animation-delay: 1.8s;}*/
	.swiper-slide-active .mvUnit01 .txtBox .txt02 { animation-delay: 2.6s;}
	.swiper-slide-active .mvUnit01 .txtBox .txt03 { animation-delay: 3.6s;}
	.swiper-slide-active .mvUnit01 .txtBox .txt04 { animation-delay:4.6s;}

@keyframes fade-text {
  from {opacity: 0; }
  to {  opacity: 1; }
}

@media screen and (max-width: 1200px) { /*{belowTB}*/
	.mvUnit01 .txtBox {
		top: clamp(30px, (30 / 736 * 100vw), 50px);
		right: clamp(50px, (50 / 736 * 100vw), 80px);
		right: clamp(50px, (50 / 736 * 100vw), 80px);
	}
}

@media screen and (max-width: 736px) { /*{SP}*/
	.mvUnit01 .txtBox {
		top: clamp(110px, (110 / 480 * 100vw), 130px);
		right: clamp(30px, (30 / 480 * 100vw), 60px);
		width: 40%;
	}
}
@media screen and (max-width: 480px) { /*{SPs}*/
	.mvUnit01 .txtBox {
		top: clamp(60px, (60 / 320 * 100vw), 90px);
		right: clamp(30px, (30 / 320 * 100vw), 50px);
		z-index: 2;
		/*width: 45%;*/
		width: 39%;
	}
}


	 .mvUnit01 .picBox img {
		
	}
	 .swiper-slide-active .mvUnit01 .picBox img {
		animation:  ANIME-mv-unit1-picImg 4.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s normal both;
	}
/*animation-------------------------*/
    @keyframes  ANIME-mv-unit1-picImg {
		0% {
			transform: scale(1.2);
			filter: blur(3px) brightness(5);
			
		}

		100% {
			transform: scale(1);
			filter: blur(0) brightness(1);
			
		}
    }



	 .mvUnit02 .picBox img {
		
	}
	.swiper-slide-active .mvUnit02 .picBox img {
		animation: ANIME-mv-unit2-picImg 3.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s normal both;
	}

/*animation-------------------------*/

	@keyframes ANIME-mv-unit2-picImg {
		0%   {	scale: 1.2;	}
		100% {	scale: 1;	}
	}





/* ------------------------------------------------------------------------
 meritSection
------------------------------------------------------------------------ */
	.meritSection {
	}

	.meritSection .meritWrap {
		max-width:1600px;
		/*background: tan;*/
	}
	.meritSection .meritWrap .para1 {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: center;
		padding:1.5em 0;
		/*margin: 0 auto;
		max-width:1200px;*/
	}
	.meritSection .meritWrap .para2 {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: center;
		padding:1.5em 0;
		border-top:1px solid #a9a8a6;
	}
	.meritSection .meritWrap .para2 .txtSizeS {
		margin-bottom: -0.3em;
	}
	.meritSection .meritWrap .meritBox {
		position: relative;
		display: flex;
		align-items: center;
		--M-fluidFontSize-max-fontsize: 18;
		--M-fluidFontSize-min-fontsize: 16;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1050;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		letter-spacing: 0.09em;
		line-height: 1.6;
	}
	.meritSection .meritWrap .meritBox .bTxt {
		font-size:1.7em;
		line-height: 1;
	}
	.meritSection .meritWrap .meritBox .bTxt.jp {
		font-size:1.6em;
	}
	.meritSection .meritWrap .meritBox .color {
		color:#8b7c5c;
	}
	.meritSection .meritWrap .meritBox .txtSizeSS{
		letter-spacing: 0.02em;
	}

@media screen and (min-width: 1050.02px) and (max-width: 1300px) { /*{TBl}*/
	.meritSection .meritWrap.contbox {
		width: 100%;
	}
}	

@media screen and (max-width: 1050px) { /*{belowTBs}*/
	.meritSection .meritWrap .para1 {
		padding:0 0;
	}
	.meritSection .meritWrap .para2 .txtSizeS {
		margin-bottom: 0;
	}
	.meritSection .meritWrap .meritBox {
		width: 100%;
	}
	.meritSection .meritWrap .meritBox .bTxt {
		font-size:1.4em;
	}
	.meritSection .meritWrap .meritBox p {
		margin-left:auto;
		margin-right:auto;
		text-align: center;
	}
	
	.meritSection .meritWrap .para1 .meritBox,
	.meritSection .meritWrap .para2 .meritBox{
		padding:0.7em 0;
		border-bottom:1px solid #a9a8a6;
	}
	.meritSection .meritWrap .para1 .meritBox:first-of-type {
		padding-top:1em;
	}
	.meritSection .meritWrap .para1 .meritBox:last-of-type,
	.meritSection .meritWrap .para2 .meritBox:last-of-type{
		border-bottom:none;
	}
	.meritSection .meritWrap .para2 {
		  padding: 0 0 0.7em;
	}
}

@media screen and (max-width: 736px) { /*{SP}*/
	.meritSection .meritWrap.contbox {
		width: 90%;
		
	}
}



/* ------------------------------------------------------------------------
 informationSection
------------------------------------------------------------------------ */
/* informationWrap
-------------------------------------------------------------*/
/*title
--------------------------*/
	.informationSection .informationWrap .title {
		--M-fluidFontSize-max-fontsize: 26;
		--M-fluidFontSize-min-fontsize: 22;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-en_1);
		color: rgba(var(--site-variationColor-gold_1), 1); 
	}
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.informationSection .informationWrap .title {
		text-align: center;
	}
}


/*informationBox
--------------------------*/
	.informationSection .informationWrap .informationBox {
		display: flex;
		justify-content: space-between;
		margin-top:1em;
	}
	.informationSection .informationWrap .informationBox .txtUnit {
		width: 54%;
	}
	.informationSection .informationWrap .informationBox .btnUnit {
		width: 40%;
	}
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.informationSection .informationWrap .informationBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.informationSection .informationWrap .informationBox .txtUnit {
		width: 100%;
		text-align: center;
	}
	.informationSection .informationWrap .informationBox .btnUnit {
		width: 100%;
		margin-top:2em;
	}
}

	
/* subTxtBox
--------------------------*/
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.subTxtBox .txt {
		margin-inline: auto;
		max-inline-size: max-content;

	}
	
}


/* ------------------------------------------------------------------------
 entryMeritSection
------------------------------------------------------------------------ */
	.entryMeritSection {
		width: 94%;
		max-width: 1400px;
		margin:0 auto;
	}
	
/* ttl-------------*/
	.entryMeritSection .entryMeritWrap .ttl {
		margin-bottom:0.8em;
		text-align: center;
		--M-fluidFontSize-max-fontsize: 36;
		--M-fluidFontSize-min-fontsize: 26;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-en_1);
		line-height: 1;
		color: rgba(var(--site-variationColor-gold_1), 1); 
	}

	.entryMeritSection .entryMeritWrap .ttl::after {
		content:"";
		display:block;
		margin:0.8em auto 0;
		height:1px;
		width:60px;
		background:rgba(var(--site-variationColor-gold_1), 1);
	}	







/*entryMeritSwipeWrap
-------------------------------*/
	.entryMeritSwiperWrap  {
		position: relative;
		margin-bottom:var(--site-marpad-M);
	}
	.entryMeritSwiperWrap .entryMeritSwiperBox .txtBox {
		text-align: center;
		font-size:1.1em;
		margin-top:1.2em;
		line-height: 1.4;
	}
/* ドットカスタマイズ */
	.entryMeritSwiperWrap .swiper-pagination-bullets.swiper-pagination-horizontal {
		bottom:-30px;
	}
	.entryMeritSwiperWrap .swiper-pagination-bullet-active {
		background: rgba(var(--site-variationColor-gold_1), 1);
	}

@media print, screen and (min-width: 900.02px) {
	.entryMeritSwiperWrap .swiper-wrapper {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
	}
/* ドットカスタマイズ */
	.entryMeritSwiperWrap .swiper-pagination {display: none;}
}

@media screen and (max-width: 900px) {
	.entryMeritSwiperWrap  {
		margin-bottom:var(--site-marpad-XL);
	}
}


/* digitalBtn
----------------------*/
	.entryMeritSection .stepWrap .digitalBtn a {
		position: relative;
		display: inline-block;
		padding:0.5em 60px 0.5em 30px;
		background: #fff;
	}
	.entryMeritSection .stepWrap .digitalBtn .en {
		padding-right:1em;
		font-size:1.2em;
		font-family: var(--site-font_family-en_1);
		line-height: 1;
		color: rgba(var(--site-variationColor-gold_1), 1); 
	}
	.entryMeritSection .stepWrap .digitalBtn .ja {
		font-size:0.8em;
	}
	
@media (hover: hover) and (pointer: fine) {
	.entryMeritSection .stepWrap .digitalBtn a {
		transition: all 0.5s ease-in-out 0s;
	}
	.entryMeritSection .stepWrap .digitalBtn a:hover {
		background: #dbd9cb;
	}
	/*.entryMeritSection .stepWrap .digitalBtn a:hover .ico.gold {
	  background-image: url("../images/share/ico_arr_white.svg");	
	}*/
}
@media screen and (max-width: 736px) { /*{SP}*/
	.entryMeritSection .stepWrap .digitalBtn {
		padding: 0 0 0 0;
		width: 100%;
	}
	.entryMeritSection .stepWrap .digitalBtn a {
		display: block;
		width: 100%;
	}
}

@media screen and (max-width: 480px) { /*{SPs}*/
	.entryMeritSection .stepWrap .digitalBtn a {
		padding:5px 15px 5px 15px;
	}
	.entryMeritSection .stepWrap .digitalBtn .ja {
		font-size:0.95em;
		line-height: 1;
	}
	.entryMeritSection .stepWrap [data-buttonicon^="bgico_"] span.ico {
		right:10px;
	}
}


/* ------------------------------------------------------------------------
 conceptSection 
------------------------------------------------------------------------ */
	.conceptSection {
		position: relative;
		overflow: hidden;
		min-height:100lvh;
	}
	.conceptSection .sectionBg_Inner {
		position: absolute;
		top: 0;
		left: 1%;
		width: 98%;
		height: 100%;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); 
		z-index: -1;
		background: #fff;
	}
	.conceptSection .sectionBg_Inner::before {
		content: '';
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100lvh;
		background-image: url("../images/index/concept_bg.jpg");
		background-position: bottom center;
		background-size: cover;
		background-repeat: no-repeat;
		opacity: 0;
		transform: scale(1.5);
	}
	.conceptSection .sectionBg_Inner.js_showTargetAnimate::before {
		animation: concept 4s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s forwards;
	}
	@keyframes concept {
	  0% { 
	  	opacity: 0; 
		filter: blur(5px) brightness(2);
		transform: scale(1.5);
		}
	  20% { 
	  	opacity: 1; 
		}
	  100% { 
	  	opacity: 1;
		filter: blur(0) brightness(1);
		transform: scale(1);
		}
	}


	.conceptSection .imgcapkeep {
		right:1%;
	}
	
/* conceptWrap
----------------------------------*/
	.conceptSection .conceptWrap {
		padding:clamp(200px, (200 / 1200 * 100vw), 300px) 0;
		max-width:600px;
	}
	.conceptSection .conceptWrap .ttlBox {
		margin-left:auto;
		margin-right:auto;
		max-width:500px;
		padding: clamp(40px, (40 / 1200 * 100vw), 50px) 10px;
		text-align: center;
		color:#fff;
		border:0 solid rgba(255,255,255,.5);
		border-width:1px 0;
	}
	.conceptSection .conceptWrap .ttl {
		--M-fluidFontSize-max-fontsize: 50;
		--M-fluidFontSize-min-fontsize: 30;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		letter-spacing: 0.05em;
		line-height: 1.8;
	}
	
	.conceptSection .conceptWrap .subTtl {
		margin-top:1em;
		--M-fluidFontSize-max-fontsize: 18;
		--M-fluidFontSize-min-fontsize: 16;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */

		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		letter-spacing: 0.05em;
	}	
	.conceptSection .conceptWrap .txtBox {
		margin-top:clamp(50px, (50 / 1200 * 100vw), 60px);
		--M-fluidFontSize-max-fontsize: 15;
		--M-fluidFontSize-min-fontsize: 14;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 736;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		text-align: center;
		line-height: 2.8;
		color:#fff;
	}
@media screen and (max-width: 1200px) { /*{belowTB}*/
	.conceptSection .conceptWrap {
		padding:clamp(100px, (100 / 736 * 100vw), 200px) 0;
	}
}
@media screen and (max-width: 736px) { /*{SP}*/
	.conceptSection .conceptWrap .txtBox {
		--M-fluidFontSize-max-fontsize: 15;
		--M-fluidFontSize-min-fontsize: 13;
		--M-fluidFontSize-max-viewport: 736;
		--M-fluidFontSize-min-viewport: 480;
		line-height: 2.6;
	}
}
@media screen and (max-width: 480px) { /*{SPs}*/
	.conceptSection .conceptWrap.contbox {
		width: 88%;
	}
}



/* ------------------------------------------------------------------------
 setagayaSection 
------------------------------------------------------------------------ */
/*setagayaTxtWrap
-----------------------------------------*/
/*headingTtl--------------*/
	.setagayaSection .setagayaTxtWrap .headingTtl {
		--M-fluidFontSize-max-fontsize: 80;
		--M-fluidFontSize-min-fontsize: 60;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-en_1);
		line-height: 1;
		letter-spacing: 0.01em;
		color: rgba(var(--site-variationColor-gold_1), 1); 
		white-space: nowrap;
	}
	.setagayaSection .setagayaTxtWrap .headingTtl .heading_Line05 {
		display: block;
	}
	.setagayaSection .setagayaTxtWrap .headingTtl .heading_Line05_inner::after {
		background-color: rgba(var(--site-themeColor-base_text-accent), 0.5);
		margin-left: 2.5rem;
	}

@media screen and (max-width: 736px) { /*{SP}*/
	.setagayaSection .setagayaTxtWrap .headingTtl {
		--M-fluidFontSize-max-fontsize: 60;
		--M-fluidFontSize-min-fontsize: 40;
		--M-fluidFontSize-max-viewport: 736;
		--M-fluidFontSize-min-viewport: 480;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		font-family: var(--site-font_family-en_1);
		letter-spacing: 0.01em;
		color: rgba(var(--site-variationColor-gold_1), 1); 
		white-space: nowrap;
	}
	.setagayaSection .setagayaTxtWrap .headingTtl .heading_Line05_inner::after {
		width: 100%;
		min-width: auto;
		margin-left: 1rem;
	}
}


/*txtBox--------------*/
	.setagayaSection .setagayaTxtWrap .txtBox {
		display: flex;
		/*flex-wrap: wrap;*/
	}

@media screen and (max-width: 736px) { /*{SP}*/
	.setagayaSection .setagayaTxtWrap .txtBox {
		flex-wrap: wrap;
	}
	.setagayaSection .setagayaTxtWrap .txtBox .ttlUnit,
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit {width: 100%;}
}

/*ttlUnit-----*/
	.setagayaSection .setagayaTxtWrap .txtBox .ttlUnit {
		padding-right:clamp(40px, (40 / 1200 * 100vw), 60px);
		--M-fluidFontSize-max-fontsize: 26;
		--M-fluidFontSize-min-fontsize: 20;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		color: #4498a0;
	}
	.setagayaSection .setagayaTxtWrap .txtBox .ttlUnit > span {
		display: block;
		white-space: nowrap;
	}
	.setagayaSection .setagayaTxtWrap .txtBox .ttlUnit .deco {
		display: inline-block;
		padding:0.3em 0.5em;
		font-size:0.8em;
		line-height: 1;
		color:#fff;
		background: #4498a0;
	}
@media screen and (max-width: 736px) { /*{SP}*/
	.setagayaSection .setagayaTxtWrap .txtBox .ttlUnit {
		padding-right:0;
	}
}
/*leadUnit-----*/
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit {
		padding-left:clamp(40px, (40 / 1200 * 100vw), 60px);
		border-left:1px solid rgba(var(--site-themeColor-base_text-accent), 0.5);
	}
@media screen and (max-width: 736px) { /*{SP}*/
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit {
		margin-top:1em;
		padding-left:0;
		border-left:0px solid rgba(var(--site-themeColor-base_text-accent), 0.5);
	}
}

/*.setagayaBtn*/
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit a.setagayaBtn {
		position: relative;
		display: inline-block;
		margin-top:20px;
		padding:0.3em 50px 0.5em;
		color:#4498a0;
		background: #fff;
		border:1px solid #4498a0;
	}
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit a.setagayaBtn[data-buttonicon^="bgico_"] span.ico {
		right:10px!important;
	}
@media (hover: hover) and (pointer: fine) {
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit a.setagayaBtn {
		transition: all 0.5s ease-in-out 0s;
	}
	.setagayaSection .setagayaTxtWrap .txtBox .leadUnit a.setagayaBtn:hover {
		background: #e4f4f5;
	}
}


/*rankingWrap
-----------------------------------------*/
	.setagayaSection .rankingWrap {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 2px;
		max-width:1920px;
		margin-left:auto;
		margin-right:auto;
	}

	.setagayaSection .rankingWrap .rankingBox .txtUnit .ttl {
		text-align: center;
		--M-fluidFontSize-max-fontsize: 20;
		--M-fluidFontSize-min-fontsize: 18;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
		line-height: 1;
	}
	.setagayaSection .rankingWrap .rankingBox .txtUnit .ttl .rank {
		--M-fluidFontSize-max-fontsize: 24;
		--M-fluidFontSize-min-fontsize: 20;
		--M-fluidFontSize-max-viewport: 1600;
		--M-fluidFontSize-min-viewport: 1200;
		min-height: 0.001vw; /* for safari | font-sizeにclamp()使用時必須 */
		font-size: clamp(
			calc(var(--M-fluidFontSize-min-fontsize) * .1rem),
			calc(calc(var(--M-fluidFontSize-min-fontsize) * .1rem) + (1vw - calc(var(--M-fluidFontSize-min-viewport) / 100 * .1rem)) * (100 * (var(--M-fluidFontSize-max-fontsize) - var(--M-fluidFontSize-min-fontsize)) / (var(--M-fluidFontSize-max-viewport) - var(--M-fluidFontSize-min-viewport)))),
			calc(var(--M-fluidFontSize-max-fontsize) * .1rem)
		);
	}
	.setagayaSection .rankingWrap .rankingBox .txtUnit .ttl .rank em {
		font-size:2em;
		font-family: var(--site-font_family-en_2);
		color:#8b7c5c;
	}
	.setagayaSection .rankingWrap .rankingBox .txtUnit .cap {
		display: block;
		margin-inline: auto;
		max-inline-size: max-content;
		padding:0.5em 0.5em 0 0.5em;
		line-height: 1.4;
	}

	
	
	
@media screen and (max-width: 1050px) { /*{belowTBs}*/
	.setagayaSection .rankingWrap {
		grid-template-columns: repeat(2, 1fr);
		width: 80%;
		max-width:800px;
	}
	.setagayaSection .rankingWrap .rankingBox {
		margin-bottom:30px;
	}
}
@media screen and (max-width: 736px) { /*{SP}*/
	.setagayaSection .rankingWrap {
		width: 100%;
	}
}
@media screen and (max-width: 480px) { /*{SPs}*/
	.setagayaSection .rankingWrap {
		grid-template-columns: repeat(1, 1fr);
		width: 80%;
		max-width:400px;
	}
	.setagayaSection .rankingWrap .rankingBox {
		width: 100%;
	}
}





/* ------------------------------------------------------------------------
 innerLinkSection 
------------------------------------------------------------------------ */
	.innerLinkSection {
		background:url("../images/index/innerlink_bg.jpg") top right / 100% auto no-repeat #dbeef1;
	}
	
@media screen and (max-width: 736px) { /*{SP}*/
	.innerLinkSection {
		background:url("../images/index/innerlink_bg.jpg") top right / 150% auto no-repeat #dbeef1;
	}
}	
	
/*innerLinkWrap
-----------------------------------------*/
	.innerLinkSection .innerLinkWrap {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 2px;
	}

@media screen and (max-width: 736px) { /*{SP}*/
	.innerLinkSection .innerLinkWrap {
		grid-template-columns: repeat(1, 1fr);
		gap: 0;
	}
}

/*innerLinkBox
-----------------------------------------*/
	.innerLinkSection .innerLinkWrap .innerLinkBox .ttl {
		margin-top:clamp(30px, (30 / 1200 * 100vw), 40px);
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox .ttl .heading_Line05_inner::after {
		min-width: 80px;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox .txt {
		margin-top:0.8em;
		font-size:1.2em;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox .pic {
		overflow: hidden;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox .pic img {
		mask-image: linear-gradient(black 50%, transparent 100%);
		mask-size: 100% 0%;
		mask-position: top;
		mask-repeat: no-repeat;
		transition: all 8s cubic-bezier(0.25, 1, 0.5, 1) 0.1s;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox .pic.js_showTargetAnimate img {
		mask-size: 100% 200%;
	}
	
	
@media screen and (max-width: 736px) { /*{SP}*/
	.innerLinkSection .innerLinkWrap .innerLinkBox .ttl.heading_Line05 {
		display: block;
		margin-left:auto;
		margin-right:auto;
		width: 80%;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox .txt {
		text-align: center;
	}
}

/*.innerLinkBtn*/
	.innerLinkSection .innerLinkWrap .innerLinkBox a.innerLinkBtn {
		position: relative;
		display: inline-block;
		margin-top:30px;
		padding:8px 80px 10px;
		background: #fff;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox a.innerLinkBtn[data-buttonicon^="bgico_"] span.ico {
		right:10px!important;
	}
@media (hover: hover) and (pointer: fine) {
	.innerLinkSection .innerLinkWrap .innerLinkBox a.innerLinkBtn {
		transition: all 0.5s ease-in-out 0s;
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox a.innerLinkBtn:hover {
		background: #dbd9cb;
	}
}

@media screen and (max-width: 1200px) { /*{belowTB}*/


}
@media screen and (max-width: 736px) { /*{SP}*/
	.innerLinkSection .innerLinkWrap .innerLinkBox:not(:first-of-type) {
		margin-top:clamp(60px, (60 / 480 * 100vw), 80px);
	}
	.innerLinkSection .innerLinkWrap .innerLinkBox a.innerLinkBtn {
		display: block;
		margin-left:auto;
		margin-right:auto;
		width: 80%;
		text-align: center;
		padding:8px 5px 10px;
	}


}



