@charset "utf-8";

/* visual
-------------------------------------------------------------------*/
@keyframes fedein1 {
	0% {
		opacity: 0;
	}
	30% {
		opacity: 0;
	}
	99% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@keyframes ups {
	0% {
		transform: translateY(20px);
		opacity: 0;
	}
	99% {
		transform: translateY(0px);
		opacity: 1;
	}
	100% {
		transform: translateY(0px);
		opacity: 1;
	}
}
@keyframes popup {
	0% { transform:translateY(-20px) ; opacity:0 ;}
	60% { transform:translateY(3px); opacity:1;}
	99% { transform:translateY(0px); opacity:1;}
	100% { transform:translateY(0px); opacity:1;}
  }
@media screen {
	.feder {
		opacity: 0;
		transform: translateY(0);
	}
	.once.feder {
		animation: fedein1 1.2s forwards;
	}
	.feders > *{
		opacity:0 ;
	}
	.once.feders > *{
		animation:fedein1 1.8s forwards;
	}
	.ups {
		opacity: 0;
		transform: translateY(-20px);
	}
	.once.ups {
		animation: ups 1.8s forwards;
	}
	.popups > *{
		opacity:0;
		transform:translateY(-20px);
	}
	.once.popups{
		animation:none;
		opacity:1 ;
		transform:translateY(0)
	}
	.once.popups > *{
		animation:popup 1.4s forwards;
	}
	.once.popups > *:nth-child(2){ animation-delay: 0.3s;}
	.once.popups > *:nth-child(3){ animation-delay: 0.6s;}
	.once.popups > *:nth-child(4){ animation-delay: 0.9s;}
	.once.popups > *:nth-child(5){ animation-delay: 1.2s;}
	.once.popups > *:nth-child(6){ animation-delay: 1.5s;}
	.once.popups > *:nth-child(7){ animation-delay: 1.8s;}
	.once.popups > *:nth-child(8){ animation-delay: 2.1s;}
	.once.popups > *:nth-child(9){ animation-delay: 2.4s;}
	.once.popups > *:nth-child(10){ animation-delay: 2.7s;}
	.once.delay_set>*:nth-child(2),
	.once.delay_1 { animation-delay: 0.3s;}
	.once.delay_set>*:nth-child(3),
	.once.delay_2 {	animation-delay: 0.6s;}
	.once.delay_set>*:nth-child(4),
	.once.delay_3 {	animation-delay: 0.9s;}
	.once.delay_set>*:nth-child(5),
	.once.delay_4 {	animation-delay: 1.2s;}
	.once.delay_set>*:nth-child(6),
	.once.delay_5 {	animation-delay: 1.5s;}
	.once.delay_set>*:nth-child(7),
	.once.delay_6 {	animation-delay: 1.8s;}
}
.fair_2025spring{
	font-size:16px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	overflow: hidden;
	box-sizing:border-box;
}
.fair_2025spring .noto,
.fair_2025spring .noto *{
	font-family: "Noto Sans JP", serif;
}
.fair_2025spring p{
	line-height:1.875;
}
.fair_2025spring img{
	max-width:100%;
	height: auto;
}
.fair_2025spring .display_pc{
	display:block;
}
.fair_2025spring .display_sp{
	display:none;
}
#content .fair_2025spring .base_btn{
	width:100%;
}
#content .fair_2025spring .base_btn a{
	width:100%;
	max-width:335px;
	height:50px;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:34px;
	font-size:1rem;
	font-weight:500;
	padding-right:2em;
	position:relative;
	transition:.5s transform;
	background: #404040;
	color: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.3);
	margin:0 auto;
}
#content .fair_2025spring .base_btn a i{
	width:21px;
	height:7px;
	background:url(../img/fair/2024early_summer/btn_arrow.png);
	position:absolute;
	top:0;
	bottom:0;
	right:30px;
	margin:auto;
	transition:.5s transform;
	background-size:contain;
}
#content .fair_2025spring .base_btn a:hover{
	transform:translateY(5px);
	text-decoration:none;
}
#content .fair_2025spring .base_btn a:hover i{
	transform:translateX(5px);
}
#content .fair_2025spring .txt_indent{
	text-indent:-1em;
	padding-left:1em;
}


#wrap .visual{
	position:relative;
	z-index:5;
}
#wrap .visual > img{
	width:100%;
	height:auto;
}
#wrap .visual .mv_wrap{
	position:absolute;
	left:0;
	bottom:8%;
	width: 52%;
}
#wrap .visual .mv_wrap img{
	max-width:100%;
	height:auto;
}
#wrap .intro{
	position:relative;
	background: #f9f8f3;
	padding: 125px 15px 195px;
}
#wrap .intro .sitewrap{
	padding:0;
}
#wrap .intro_wrap{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap: 8%;
}
#wrap .intro_wrap .tit_area{
	width:45%;
}
#wrap .intro_wrap .tit_area .intro_style{
	font-size:3.6rem;
	font-weight:bold;
	color:#3c7d53;
	line-height: 3;
}
#wrap .intro_wrap .txt_area{
	width:50%;
}
#wrap .intro_wrap .txt_area p{
	font-size:1.8rem;
	font-weight: 500;
	line-height:2.5;
}
@media (max-width:768px) {
	.fair_2025spring .display_pc{
		display:none;
	}
	.fair_2025spring .display_sp{
		display:block;
	}
	#wrap .visual .mv_bg{
		height: 70vw;
	}
	#wrap .visual .mv_bg img{
		width:auto;
		height: 100%;
		object-fit:cover;
		position: relative;
	}
	#wrap .visual .mv_wrap{
		width:100%;
		bottom:5%;
	}
	#wrap .visual .mv_wrap em{
		display:block;
		width:70%;
	}
	#wrap .visual .mv_wrap span{
		display:block;
		width: 110%;
		position:relative;
		left: -13%;
	}
	#wrap .intro{
		padding-block: 30px 40px;
		margin-bottom: 3.5em;
	}
	#wrap .intro_wrap{
		flex-wrap:wrap;
		gap:1em;
	}
	#wrap .intro_wrap .tit_area{
		width:100%;
	}
	#wrap .intro_wrap .tit_area .intro_style{
		font-size:1.8rem;
		line-height:1.5;
	}
	#wrap .intro_wrap .txt_area{
		width:100%;
	}
	#wrap .intro_wrap .txt_area p{
		font-size:1.4rem;
		line-height:1.8;
	}
	}
	#wrap .strengths{
	position:relative;
	margin-bottom: 90px;
}
#wrap .strengths .strengths_wrap{
	position:relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap:5%;
	max-width: 1560px;
}
#wrap .strengths .strengths_wrap .sitewrap{
	padding:0;
	width: auto;
	margin-left: 0;
}
#wrap .strengths .strengths_txt{
	position: relative;
	z-index:5;
	width: 548px;
	padding-top: 0%;
	bottom:0;
}
#wrap .strengths .strengths01,
#wrap .strengths .strengths03{
	flex-direction:row-reverse;
}
#wrap .strengths .strengths02,
#wrap .strengths .strengths04{
	margin-left:auto;
}
#wrap .strengths .strengths02 .sitewrap,
#wrap .strengths .strengths04 .sitewrap{
	margin-left:auto;
}
#wrap .strengths .strengths_style{
	position:relative;
	margin-bottom: 2.5em;
	display:flex;
	justify-content:flex-start;
	align-items: center;
	gap:1em;
}
#wrap .strengths .strengths_style .ico_area{
	width: 7em;
	position: relative;
}
#wrap .strengths .strengths_style .ico_area img{
	position:relative;
	z-index:5;
}
#wrap .strengths .strengths_style .ico_area:before{
	content:"";
	width:160px;
	height:135px;
	background:url(image/deco-maru01.png) no-repeat center / contain;
	position:absolute;
	left: 0;
	top:0;
	bottom: 72%;
	margin:auto;
	z-index: 0;
}
#wrap .strengths .strengths02 .strengths_style .ico_area:before,
#wrap .strengths .strengths04 .strengths_style .ico_area:before{
	background-image:url(image/deco-maru02.png);
	bottom: 0%;
	left: 14%;
}
#wrap .strengths .strengths_style .tit_area{
	width: calc(100% - 8em);
	position: relative;
	z-index: 5;
}
#wrap .strengths .strengths_style .tit_area span{
	display:block;
	font-size:1.4rem;
	margin-bottom: 0.5em;
	letter-spacing: 0.1em;
}
#wrap .strengths .strengths_style .tit_area em{
	display:block;
	font-size:3.6rem;
	font-style: normal;
	line-height:1.4;
	position: relative;
	z-index: 5;
	font-feature-settings: 'palt';
	letter-spacing: 0.075em;
	font-weight: 500;
	white-space: nowrap;
}
#wrap .strengths .txt_area{
	position:relative;
}
#wrap .strengths .txt_area p{
	font-size:1.8rem;
	line-height: 2.8;
	font-weight: 500;
	letter-spacing: -0.05em;
}
#wrap .strengths .txt_area .logo_ara{
	margin-top:4em;
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
	gap: 5%;
	font-size:1.5rem;
}
#wrap .strengths .txt_area .logo_ara .logo_item img{
	margin-bottom:1em;
}
#wrap .strengths .txt_area .logo_ara .logo_item p{
	font-size:1.6rem;
	line-height:1.4;
}
#wrap .strengths .slider_area{
	width: 55.25%;
	position:relative;
	margin-bottom: 5em;
}
#wrap .fair-commitment_slider .slick-list{
	max-width: 1400px;
	margin: 0px auto 3em;
}
#wrap  .prev-arrow,
#wrap  .next-arrow{
	width:25px;
	height:19px;
	background:url(image/arrow-slider.svg) no-repeat center / contain;
	position:absolute;
	bottom: -8%;
	right:0;
	cursor: pointer;
	pointer-events: all;
	margin: 0;
	z-index: 15;
}
#wrap .prev-arrow{
	right:6%;
	transform:rotate(180deg);
}
#wrap .fair-commitment_slider .next-arrow{
	right: 7%;
	bottom: -20%;
}
#wrap .fair-commitment_slider .prev-arrow{
	right: 10%;
	bottom: -20%;
}
#wrap .strengths .strengths02 .slider_area .prev-arrow,
#wrap .strengths .strengths04 .slider_area .prev-arrow{
	right:auto;
	left:60%;
}
#wrap .strengths .strengths02 .slider_area .next-arrow,
#wrap .strengths .strengths04 .slider_area .next-arrow{
	right:auto;
	left:66%;
}
#wrap .strengths .slider_area .slick-dots{
	bottom: -8%;
	width: 460px;
	margin-right: 0;
	right: 15%;
}
#wrap .strengths .strengths02 .slider_area .slick-dots,
#wrap .strengths .strengths04 .slider_area .slick-dots{
	margin-left:0;
}
#wrap  .slick-dots li{
	width: calc(100% / 4);
	margin: 0;
	background:#c5c9cb;
	height: 2px;
}
#wrap .fair-commitment_slider .slick-dots{
	max-width: 72.769%;
	bottom: -20%;
}
#wrap .fair-commitment_slider .slick-dots li{
	width: calc(100% / 9);
}
#wrap .slick-dots li button {
	width: auto;
	height: auto;
	padding: 0;
	border-radius: 0;
}
#wrap .slick-dots li button:before {
	display: none;
}
#wrap .slick-dots li button:hover:before,
#wrap .slick-dots li button:focus:before {
	display: none;
}
#wrap .slick-dots li.slick-active {
	position: relative;
}
#wrap .slick-dots li.slick-active::after {
	content: "";
	width:100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #404b54;
	position: absolute;
	display: block;
}
#wrap .fair-commitment_slider .cloned-dots{
	max-width:100%;
	position:absolute;
	left: 8.5%;
	bottom: -18%;
	text-align: left;
}
#wrap .fair-commitment_slider .cloned-dots li{
	width:auto;
	position:absolute;
}
#wrap .fair-commitment_slider .cloned-dots li{
	width: auto;
	background:transparent;
	list-style-type: none;
	counter-increment: cnt;
	opacity:0;
	transition:.3s opacity;
}
#wrap .fair-commitment_slider .cloned-dots li.slick-active{
	opacity:1;
}
#wrap .fair-commitment_slider .cloned-dots li.slick-active::after{
	display:none;
}
#wrap .fair-commitment_slider .cloned-dots li button{
	width:auto;
	font-size: 2.4rem;
	font-family: "Roboto", sans-serif;
	font-weight: normal;
	color: #68615c;
}
@media (max-width:1580px) {
	#wrap .strengths .strengths_txt{
		padding:0 15px;
	}
}
@media (max-width:1420px) {
	#wrap .strengths .strengths02 .slider_area .prev-arrow,
	#wrap .strengths .strengths04 .slider_area .prev-arrow{
		left:500px;
	}
	#wrap .strengths .strengths02 .slider_area .next-arrow,
	#wrap .strengths .strengths04 .slider_area .next-arrow{
		left:550px;
	}
	#wrap .fair-commitment_slider .cloned-dots{
		left:7.5%;
	}
	#wrap .strengths .strengths_wrap{
		gap:3%;
	}
	#wrap .strengths .strengths_txt{
		width: 630px;
		padding: 0 30px 0px 30px;
	}
	#wrap .strengths .slider_area{
		width:50%;
	}
}
@media (max-width:768px) {
	#wrap .strengths{
		margin-bottom: 30px;
	}
	#wrap .strengths .strengths_wrap{
		gap: 1em;
		flex-wrap: wrap;
		margin-bottom: 3em;
	}
	#wrap .strengths .strengths02,
	#wrap .strengths .strengths04{
		margin-left:auto;
	}
	#wrap .strengths .strengths02 .sitewrap,
	#wrap .strengths .strengths04 .sitewrap{
		margin-left:auto;
	}
	#wrap .strengths .strengths_txt{
		padding:0 15px
		
	}
	#wrap .strengths .strengths_style{
		margin-bottom: 1.5em;
		gap:1em;
	}
	#wrap .strengths .strengths_style .ico_area{
		width: 3.5em;
		position: relative;
	}
	#wrap .strengths .strengths_style .ico_area img{
		position:relative;
		z-index:5;
	}
	#wrap .strengths .strengths_style .ico_area:before{
		width: 90px;
		height: 85px;
		left: 51%;
		bottom: 30%;
	}
	#wrap .strengths .strengths_style .tit_area{
		width: calc(100% - 5em);
	}
	#wrap .strengths .strengths_style .tit_area span{
		font-size: 1.2rem;
		margin-bottom: 0;
	}
	#wrap .strengths .strengths_style .tit_area em{
		font-size: 2rem;
	}
	#wrap .strengths .txt_area p{
		font-size: 1.4rem;
		line-height:2;
	}
	#wrap .strengths .txt_area .logo_ara .logo_item p{
		font-size: 1.2rem;
		line-height:1.6;
	}
	#wrap .strengths .txt_area .logo_ara{
		font-size: 1.2rem;
		width: 80%;
		margin: 3em auto 0;
	}
	#wrap .strengths .txt_area .logo_ara .logo_item img{
		margin-bottom:1em;
	}
	#wrap .strengths .slider_area{
		width: 100%;
		margin-bottom: 0;
		padding: 0 15px;
	}
	#wrap .fair-commitment_slider .slick-list{
		max-width:1200px;
		margin:0 auto 1em;
	}
	#wrap  .prev-arrow,
	#wrap  .next-arrow{
		width: 20px;
		height: 11px;
		bottom: -7.5%;
	}
	#wrap .prev-arrow{
		right: 8.5%;
	}
	#wrap .fair-commitment_slider .next-arrow{
		right:3%;
		bottom: -12%;
	}
	#wrap .fair-commitment_slider .prev-arrow{
		right: 11%;
		bottom: -12%;
	}
	#wrap .strengths .strengths02 .slider_area .prev-arrow,
	#wrap .strengths .strengths04 .slider_area .prev-arrow{
		right: 8.5%;
		left: auto;
	}
	#wrap .strengths .strengths02 .slider_area .next-arrow,
	#wrap .strengths .strengths04 .slider_area .next-arrow{
		right: 0;
		left: auto;
	}
	#wrap .strengths .slider_area .slick-dots{
		bottom: -8%;
		width: 80%;
		margin-right: 0;
		right: 0;
		margin-right: auto;
		margin-left: 0;
	}
	#wrap .strengths .strengths02 .slider_area .slick-dots,
	#wrap .strengths .strengths04 .slider_area .slick-dots{
		margin-left:0;
	}
	#wrap .fair-commitment_slider .slick-dots{
		max-width: 63%;
		bottom: -13%;
	}
	#wrap .fair-commitment_slider .slick-dots li{
		width: calc(100% / 9);
	}
	#wrap .slick-dots li button {
		width: auto;
		height: auto;
		padding: 0;
		border-radius: 0;
	}
	#wrap .slick-dots li button:before {
		display: none;
	}
	#wrap .slick-dots li button:hover:before,
	#wrap .slick-dots li button:focus:before {
		display: none;
	}
	#wrap .slick-dots li.slick-active {
		position: relative;
	}
	#wrap .slick-dots li.slick-active::after {
		content: "";
		width:100%;
		height: 100%;
		left: 0;
		top: 0;
		background: #404b54;
		position: absolute;
		display: block;
	}
	#wrap .fair-commitment_slider .cloned-dots{
		max-width:100%;
		left: 3.5%;
		bottom: -9.5%;
	}
	#wrap .fair-commitment_slider .cloned-dots:last-child{
		display: none !important;
	}
	#wrap .fair-commitment_slider .cloned-dots li{
		width:auto;
		position:absolute;
	}
	#wrap .fair-commitment_slider .cloned-dots li{
		width: auto;
		background:transparent;
		list-style-type: none;
		counter-increment: cnt;
		opacity:0;
		transition:.3s opacity;
	}
	#wrap .fair-commitment_slider .cloned-dots li.slick-active{
		opacity:1;
	}
	#wrap .fair-commitment_slider .cloned-dots li.slick-active::after{
		display:none;
	}
	#wrap .fair-commitment_slider .cloned-dots li button{
		font-size: 1.4rem;
	}
}
#wrap .shindan{
	background:#fff;
	max-width: 1414px;
	margin:0 auto;
	position:relative;
	z-index:15;
	padding-block:120px;
}
#wrap .shindan_wrap{
	position: relative;
	z-index:5;
	background: url(image/bg-shindan.png) no-repeat center / contain;
	padding: 48px 100px;
}
#wrap .shindan_wrap .shindan_col{
	display:flex;
	justify-content:space-between;
	align-items: center;
	gap:3%;
}
#wrap .shindan_wrap .shindan_col .shindan_image{
	width: 46%;
}
#wrap .shindan_wrap .shindan_col .shindan_txt{
	width: 46%;
}
#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style{
	position:relative;
	z-index:5;
	margin-bottom: 0.75em;
	font-size:2.8rem;
	font-weight:bold;
	color: #412c24;
}
#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style:before{
	content:"";
	width:245px;
	height:218px;
	background:url(image/img-shindan01.png) no-repeat center / contain;
	position:absolute;
	right:-13%;
	top:0;
	bottom:0;
	margin:auto;
	z-index: 0;
}
#wrap .shindan_wrap .shindan_col .shindan_txt p{
	font-size:1.8rem;
	line-height:1.875;
	font-feature-settings:'palt';
	color: #412c24;
	font-weight: 500;
}
#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style span{
	display:block;
	position:relative;
}
#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style span + span{
	margin-top:0.25em;
}
#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style .shindan_line01{
	background: url(image/line-shindan01.png) no-repeat bottom -4px left 5px /auto;
	line-height: 1.5;
	padding-bottom: 10px;
}
#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style .shindan_line02{
	background: url(image/line-shindan02.png) no-repeat bottom -3px left 5px /auto;
	line-height: 1.5;
	padding-bottom: 20px;
}
#wrap .shindan_wrap .shindan_col .common_btn{
	margin-top:1.5em;
}
#wrap .shindan_wrap .shindan_col .common_btn a{
	position:relative;
	width:100%;
	max-width:420px;
	font-size:1.8rem;
	height: 4.6115em;
	background:#412c24;
	display:flex;
	justify-content:center;
	align-items:center;
	color:#fff;
	text-decoration:none;
	border:1px solid #412c24;
}
#wrap .shindan_wrap .shindan_col .common_btn a:before{
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	right:5%;
	top: 0;
	bottom:0;
	transform: rotate(55deg) skew(25deg);
	margin:auto;
}
@media (max-width:1450px) {
	#wrap .shindan_wrap .shindan_col .shindan_image{
		width:40%;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt{
		width:55%;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style{
		font-size:2.4rem;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt p{
		font-size:1.6rem;
	}
	#wrap .shindan_wrap{
		padding-right:40px;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style:before{
		right: 6%;
		width: 170px;
		height: 152px;
	}
}
@media (max-width:768px) {
	#wrap .shindan{
		padding: 3em 15px 0;
		margin-bottom: 3em;
	}
	#wrap .shindan.last{
		margin-bottom:60px;
	}
	#wrap .shindan_wrap{
		background-image: url(image/bg-shindan_sp02.jpg);
		padding: 40px 15px 20px;
		background-size: contain;
		background-position: top center;
		background-repeat: repeat-y;
	}
	#wrap .shindan_wrap:before,
	#wrap .shindan_wrap:after{
		content:"";
		width:100%;
		height:9%;
		position:absolute;
		left:0;
		right:0;
		margin:auto;
		z-index:15;
	}
	#wrap .shindan_wrap:before{
		background: url(image/bg-shindan_sp01.jpg) no-repeat top center /contain;
		top:0;
	}
	#wrap .shindan_wrap:after{
		background: url(image/bg-shindan_sp03.jpg) no-repeat bottom center /contain;
		bottom:0;
	}
	#wrap .shindan_wrap .shindan_col{
		gap:2em;
		flex-wrap:wrap;
		position: relative;
		z-index: 20;
	}
	#wrap .shindan_wrap .shindan_col .shindan_image{
		width: 85%;
		margin: 0 auto;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt{
		width:100%;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style{
		font-size:1.6rem;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style:before{
		width: 36%;
		height: 133%;
		right: -5.5%;
		bottom: 0;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt p{
		font-size: 1.4rem;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style span{
		display:block;
		position:relative;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style span + span{
		margin-top:0.5em;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style .shindan_line01{
		background-size: 70%;
		background-position: bottom -2px left 0;
	}
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style .shindan_line02{
		background-size: 75%;
		padding-bottom: 10px;
		background-position: bottom -2px left 0;
	}
	#wrap .shindan_wrap .shindan_col .common_btn{
		margin-top: 1em;
	}
	#wrap .shindan_wrap .shindan_col .common_btn a{
		font-size: 1.6rem;
		height: 3.8em;
	}
	#wrap .shindan_wrap .shindan_col .common_btn a:before{
		width:8px;
		height:8px;
	}
}
@media (max-width:360px) {
	#wrap .shindan_wrap .shindan_col .shindan_txt .shindan_style:before{
		width: 27%;
		height: 81%;
		right: -5%;
		bottom: 80%;
	}
}

#wrap .model{
	position:relative;
	z-index:5;
	background:#fafcf7;
	padding-block: 40px 160px;
	margin-bottom: 5em;
}
#wrap .model .model_style{
	font-size:4rem;
	font-weight:bold;
	padding-top: 2em;
	text-align:center;
	margin-bottom:2em;
	position: relative;
	line-height: 1;
}
#wrap .model .model_style:before{
	content:"";
	width:171px;
	height:70px;
	background:url(image/img-model.png) no-repeat top center / contain;
	position:absolute;
	right:0;
	left:0;
	top:0;
	margin:auto;
	z-index: 0;
}
#wrap .model .model_style2{
	font-size:2.8rem;
	line-height:1.875;
	color:#3c7d53;
	position: relative;
	left: 0.5em;
}
#wrap .model .model_col,
#wrap .model .model_col2{
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	gap: 2%;
	margin-bottom: 9em;
}
#wrap .model .model_col2{
	max-width:1460px;
	margin:0 auto;
}
#wrap .model .model_col .model_image{
	width: 51%;
}
#wrap .model .model_col .model_image2{
	width: 47%;
	display:flex;
	justify-content:flex-start;
	align-items: center;
	gap: 0 3%;
	flex-wrap:wrap;
	position: relative;
	top: -1em;
}
#wrap .model .model_col .model_image2 .model_txt{
	width: 50%;
}
#wrap .model .model_col .model_image2 .model_circle{
	width: 32%;
}
#wrap .model .model_col .model_image2 .model_desk{
	width:100%;
}
#wrap .model .model_col2 .model_image2{
	width: 42.5%;
}
#wrap .model .model_col2 .model_movie{
	width: 50%;
}
#wrap .model .model_col2 .model_movie iframe{
	aspect-ratio:16/9;
	width:100%;
	height:auto;
}
#wrap .model .model_col2 .model_image2 .model_txt p{
	font-size:1.8rem;
	line-height: 2.5;
	font-feature-settings:'palt';
	font-weight: 500;
}
#wrap .model .model_col2 .model_image2 .model_txt .model_style2{
	margin-bottom:1em;
	left: 0;
}
#wrap .model .model_col2 .model_image2 .model_txt .common_btn{
	margin-top: 3.5em;
}
#wrap .model .model_col2 .model_image2 .model_txt .common_btn a{
	position:relative;
	width:100%;
	max-width:420px;
	font-size:1.8rem;
	height: 5em;
	background:#719976;
	display:flex;
	justify-content:center;
	align-items:center;
	color:#fff;
	text-decoration:none;
	border:1px solid #719976;
}
#wrap .model .model_col2 .model_image2 .model_txt .common_btn a:before{
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	position: absolute;
	right:5%;
	top: 0;
	bottom:0;
	transform: rotate(55deg) skew(25deg);
	margin:auto;
}
@media (max-width:1850px) {
	#wrap .model .model_style2{
		left:0;
	}
	#wrap .model .model_col .model_image2 .model_txt{
		width:60%;
	}
	#wrap .model .model_style2{
		font-size: 2.2rem;
	}
}
@media (max-width:1540px) {
	#wrap .model .model_col .model_image2 .model_txt{
		width:65%;
	}
	#wrap .model .model_col .model_image2 .model_circle{
		padding-right:15px;
	}
	#wrap .model .model_col2{
		padding:0 15px;
	}
}
@media (max-width:768px) {
	#wrap .model{
		padding-block: 20px 40px;
		margin-bottom: 4em;
	}
	#wrap .model .model_style{
		font-size:2.5rem;
		margin-bottom: 1.5em;
	}
	#wrap .model .model_style:before{
		width:120px;
		height: 48px;
	}
	#wrap .model .model_style2{
		font-size: 1.6rem;
	}
	#wrap .model .model_col,
	#wrap .model .model_col2{
		gap: 1em;
		margin-bottom: 2em;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	#wrap .model .model_col2{
		padding: 0 15px;
		margin-bottom: 0;
		flex-direction: column-reverse;
		gap: 1em;
	}
	#wrap .model .model_col .model_image{
		width: 100%;
	}
	#wrap .model .model_col .model_image2{
		width: 100%;
		padding:0 15px;
		top: 0;
		gap: 0 1%;
	}
	#wrap .model .model_col .model_image2 .model_txt{
		width: 71%;
	}
	#wrap .model .model_col .model_image2 .model_circle{
		width: 28%;
		padding-right: 0;
	}
	#wrap .model .model_col .model_image2 .model_desk{
		width:100%;
	}
	#wrap .model .model_col2 .model_image2{
		width:100%;
	}
	#wrap .model .model_col2 .model_movie{
		width:100%;
	}
	#wrap .model .model_col2 .model_image2 .model_txt p{
		font-size: 1.4rem;
		line-height: 1.8;
	}
	#wrap .model .model_col2 .model_image2 .model_txt .model_style2{
		margin-bottom:1em;
	}
	#wrap .model .model_col2 .model_image2 .model_txt .common_btn{
		margin-top:1.5em;
	}
	#wrap .model .model_col2 .model_image2 .model_txt .common_btn a{
		font-size:1.6rem;
		height:3.5em;
	}
	#wrap .model .model_col2 .model_image2 .model_txt .common_btn a:before{
		width:8px;
		height:8px;
	}
}

#wrap .fair-commitment_box {
	padding-top: 19em;
	position: relative;
	z-index: 5;
	background: #fff;
	overflow: hidden;
}
#wrap .fair-commitment_box.no-circle{
	padding-top: 5em;
}
#wrap .fair-commitment_box:last-child {
	padding-bottom: 10em;
}
#wrap .fair-commitment_box.image-left .fair-commitment_inner {
	flex-direction: row-reverse;
}
#wrap .fair-commitment_box.image-bottom .fair-commitment_inner {
	justify-content: center;
}
#wrap .fair-commitment_box .fair-commitment_text {
	width: 521px;
}
#wrap .fair-commitment_box.image-bottom .fair-commitment_text {
	width: 928px;
}
#wrap .fair-commitment_box .fair-commitment_ttl {
	font-size: 3.8rem;
	font-weight: 500;
	line-height: 1.4;
	margin-bottom: 1.5em;
}
#wrap .fair-commitment_box .fair-commitment_ttl em {
	position: relative;
	z-index: 10;
	font-style: normal;
}
#wrap .fair-commitment_box .fair-commitment_ttl em::after {
	position: absolute;
	z-index: -10;
	display: inline-block;
	content: "";
	width: 100%;
	height: 100%;
	background: url(image/bg-commitment02.png) no-repeat;
	background-size: contain;
	background-position: left bottom;
	left: 0;
	bottom: -30%;
	opacity: 0.6;
}
#wrap .fair-commitment_box02 .fair-commitment_ttl em::after {
	background-image: url(image/bg-commitment03.png);
	bottom: -20%;
	opacity: 1;
}
#wrap .fair-commitment_box04 .fair-commitment_ttl em::after {
	background-image: url(image/bg-commitment05.png);
	bottom: 0;
	opacity: 1;
}
#wrap .fair-commitment_box05 .fair-commitment_ttl em::after {
	background-image: url(image/bg-commitment04.png);
	bottom: -20%;
}
#wrap .fair-commitment_box .fair-commitment_text p {
	font-size: 1.8rem;
	line-height: 1.8;
}
#wrap .fair-commitment_box .fair-commitment_inner02 {
	margin-top: 8em;
}
#wrap .fair-commitment_box .fair-commitment_subttl{
	text-align: center;
	font-size: 4rem;
	line-height: 1.4;
	margin-bottom: 0.75em;
	position: relative;
	z-index: 3;
	font-weight: bold;
}
#wrap .fair-commitment_box .fair-commitment_subttl:before{
	content:"";
	width:1400px;
	background: url(image/circle-font01.png) no-repeat top center / contain;
	position:absolute;
	top: 0;
	left: 50%;
	margin:auto;
	z-index: -1;
	transform: translate(-50%,-23%);
	animation: 80s linear infinite rotation1;
	pointer-events:none;
	aspect-ratio: 1 / 1;
}
#wrap .fair-commitment_box.no-circle .fair-commitment_subttl:before{
	display:none;
}
#wrap .fair-commitment_box .fair-commitment_slider{
	position:relative;
	z-index:5;
	background:#fafcf7;
	padding-block: 90px 50px;
}
#wrap .fair-commitment_box .fair-commitment_sublead {
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin: 0 auto 2.5em;
	text-align: center;
}
#wrap .fair-commitment_box .fair-flex_box {
	position: relative;
	z-index: 10;
	max-width: 940px;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin: auto;
}
#wrap .fair-commitment_box .fair-flex_box::after {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 18px;
	border-color: transparent transparent transparent #AAAAAA;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#wrap .fair-commitment_box .fair-flex_box .fair-flex_item {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 1em;
}
#wrap .fair-commitment_box .fair-flex_box .fair-flex_item p {
	font-size: 1.6rem;
	font-weight: 500;
}
#wrap .fair-commitment_box .fair-commitment_image01 {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 4em;
	margin-top: 4em;
}
#wrap .fair-commitment_box .fair-commitment_image01 span {
	max-width: 200px;
	display: block;
	line-height: 1.6;
	margin-top: 1em;
}
#wrap .fair-commitment_slidebox {
	width: 360vw;
	display: flex;
	white-space: nowrap;
	overflow: hidden;
	margin-top: 8em;
}
#wrap .fair-commitment_slideinner {
	display: flex;
	white-space: nowrap;
	animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
@keyframes infinity-scroll-left {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
	}
}
#wrap .fair-commitment_slideimage {
	flex-grow: 1;
	margin-right: 4px;
}
#wrap .fair-slide_box .fair-slide_item {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin: 0;
	text-decoration: none;
	transform: translateX(-2.5em);
	gap: 1em;
}
#wrap .fair-slide_box .fair-slide_text {
	font-size: 2rem;
	font-weight: bold;
}
#wrap .bg-blue {
	background-image: url(image/bg-blue01.png);
	background-size: 160%;
	background-position: center;
	padding: 5em 0 10em;
}
#wrap .fair-present_item {
	position: relative;
	z-index: 10;
	border: 1px solid #c7c4b5;
	border-radius: 20px;
	background: #ede9da;
	margin: 0 auto 1em;
	max-width: 1200px;
}
#wrap .fair-present_item .fair-present_name {
	position: absolute;
	z-index: 10;
	top: -38px;
	left: -7%;
}
#wrap .fair-present_item .fair-present_image {
	position: absolute;
	right: 5%;
	bottom: 3.5em;
}
#wrap .fair-present_item .fair-present_image:before{
	content:"";
	width:132px;
	height:161px;
	background:url(image/img-present03.png) no-repeat center / contain;
	position:absolute;
	right:-7%;
	top:-35%;
	margin:auto;
	z-index: 0;	
}
#wrap .fair-present_item .present_circle{
	position:absolute;
	right:-5%;
	bottom:-2.5em;
	width: 34.5%;
}
#wrap .fair-present_item .fair-present_txt {
	padding: 2em 3.25em 3em;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
}
#wrap .fair-present_item .fair-present_wrap{
	background: #f5f2ea;
	border:1px solid #c7c4b5;
	border-radius:13px;
	padding:20px;
}
#wrap .fair-present_item .fair-present_ttl {
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 0em;
	background: #719976;
	border-radius: 10px 10px 0 0;
	padding: 1em 1em 1em 7.5em;
	color: #fff;
}
#wrap .fair-present_item .fair-present_ttl i {
	font-style: normal;
	margin-right: 0;
}
#wrap .fair-present_item .fair-present_ttl em {
	font-style: normal;
	font-size: 5rem;
	display: block;
	line-height: 1;
	margin-top: 0.25em;
}
#wrap .fair-present_item .fair-present_text{
	width: 51%;
}
#wrap .fair-present_item .fair-present_text p {
	font-size: 2rem;
	line-height: 1.8;
	margin-bottom: 1.5em;
	font-weight: 500;
}
#wrap .fair-present_item .fair-present_text p em {
	font-style: normal;
	font-size: 2.2rem;
	font-weight: bold;
	background: rgb(252, 236, 130);
	background: linear-gradient(0deg, rgba(252, 236, 130, 1) 15%, rgba(252, 236, 130, 0) 15%);
}
#wrap .fair-present_item .fair-present_text p.fair-present_dimension {
	font-size: 1.6rem;
	font-weight: 500;
	margin-bottom: 0;
	line-height: 1.8;
}
#wrap .fair-present_caution li {
	text-indent: -1.25em;
	padding-left: 1.25em;
	line-height: 1.4;
	font-size: 1.6rem;
	font-weight: 500;
}
#wrap .fixed-btn_box {
	position: fixed;
	z-index: 100;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.8);
	filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.2));
	padding: 1em;
	bottom: 4%;
	right: 50px;
  }
  #wrap .fixed-btn_box p {
	text-align: center;
	font-size: 1.6rem;
	font-weight: 600;
	margin-bottom: 0.75em;
  }
  #wrap .fixed-btn_box p em {
	font-style: normal;
	background: rgb(252, 236, 130);
	background: linear-gradient(0deg, rgba(252, 236, 130, 1) 15%, rgba(1252, 236, 130, 0) 15%);
	}
  #wrap .fixed-btn_box .fixed-btn_flex {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 1em;
  }
  #wrap .fixed-btn_box .fair-btn a {
	width: 240px;
}
#wrap .fair-btn a {
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	min-width: 220px;
	width: fit-content;
	min-height: 3em;
	font-size: 1.6rem;
	font-weight: 500;
	font-family: "Zen Kaku Gothic New", serif;
	background: #77B5DB;
	border-radius: 3em;
	padding: 0.5em 1.5em;
	filter: drop-shadow(0 3px 3px rgba(0, 0, 0, 0.2));
	text-decoration: none;
	transition: transform .4s, filter .4s;
  }
  #wrap .fair-btn.btn-yellow a {
	background: #f7f8da;
	color: #5a514c;
	}
  #wrap .fair-btn a::after {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.35em 0 0.35em 0.55em;
	border-color: transparent transparent transparent #5a514c;
	top: 0;
	right: 0.75em;
	bottom: 0;
	margin: auto;
	}
  #wrap .fair-btn a:hover {
	opacity: 1;
	transform: translateY(2px);
	filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0.2));
  }
@media (max-width:1400px) {
	#wrap .fair-present_item{
		width:calc(100% - 30px);
	}
	#wrap .fair-present_item .fair-present_name {
		top: -38px;
		left: -1.25%;
		width: 17%;
	}
}
@media (max-width: 768px) {
	#wrap .fair-commitment_box {
		padding-top: 5.25em;
	}
	#wrap .fair-commitment_box.no-circle{
		padding-top:3em;
	}
	#wrap .fair-commitment_box .fair-commitment_slider{
		padding-block: 10px 20px;
	}
	#wrap .fair-commitment_box:last-child {
		padding-bottom: 6em;
	}
	#wrap .fair-commitment_box .fair-commitment_inner,
	#wrap .fair-commitment_box.image-left .fair-commitment_inner {
		flex-direction: column;
		gap: 1em 0;
	}
	#wrap .fair-commitment_box .fair-commitment_text,
	#wrap .fair-commitment_box.image-bottom .fair-commitment_text {
		width: 100%;
	}
	#wrap .fair-commitment_box .fair-commitment_ttl {
		font-size: 2.2rem;
		margin-bottom: 1.5em;
	}
	#wrap .fair-commitment_box .fair-commitment_text p {
		font-size: 1.4rem;
	}
	#wrap .fair-commitment_box .fair-commitment_inner02 {
		margin-top: 2em;
	}
	#wrap .fair-commitment_box .fair-commitment_subttl {
		font-size: 1.8rem;
		margin-bottom: 1em;
	}
	#wrap .fair-commitment_box .fair-commitment_subttl:before{
		width: 170%;
		animation: 80s linear infinite rotation2;
	}
	#wrap .fair-commitment_box .fair-commitment_sublead,
	#wrap .fair-commitment_box.fair-commitment_box05 .fair-commitment_sublead {
		width: 100%;
		font-size: 1.4rem;
		margin: 0 auto 1.5em;
	}
	#wrap .fair-commitment_box .fair-flex_box {
		max-width: 100%;
		flex-direction: column;
		gap: 3em 0;
	}
	#wrap .fair-commitment_box .fair-flex_box::after {
		border-width: 8px 0 8px 14px;
		transform: translate(-50%, -50%) rotate(90deg);
	}
	#wrap .fair-commitment_box .fair-flex_box .fair-flex_item {
		gap: 0.5em;
	}
	#wrap .fair-commitment_box .fair-flex_box .fair-flex_item p {
		font-size: 1.4rem;
	}
	#wrap .fair-commitment_box .fair-commitment_image01 {
		max-width: 280px;
		gap: 1.5em;
		margin: 2em auto 0;
	}
	#wrap .fair-commitment_box .fair-commitment_image01 span {
		max-width: 100%;
		line-height: 1.4;
		margin-top: 0.56em;
	}
	#wrap .fair-commitment_slidebox {
		width: 800vw;
		margin-top: 2em;
	}
	#wrap .fair-slide_box {
		margin-top: 0;
	}
	#wrap .fair-slide_box .fair-slide_item {
		margin: 0;
		text-decoration: none;
		transform: none;
	}
	#wrap .fair-slide_box .fair-slide_text {
		font-size: 1.6rem;
	}
	#wrap .bg-blue {
		padding: 5em 0;
	}
	#wrap .fair-present_item {
		max-width: 100%;
		flex-direction: column;
		border-radius: 10px;
		margin: 0 auto;
		width: calc(100% - 30px);
	}
	#wrap .fair-present_item .fair-present_name {
		width: 110px;
		top: -58px;
		right: auto;
		left: -10px;
	}
	#wrap .fair-present_item .fair-present_image {
		border-radius: 10px 10px 0 0;
		position: relative;
		width: 100%;
		right: 0;
		bottom: 0;
	}
	#wrap .fair-present_item .fair-present_text {
		width: 100%;
		padding: 0;
	}
	#wrap .fair-present_item .fair-present_ttl {
		margin-bottom: 0;
		padding: 1em;
		font-size: 2rem;
		text-align: center;
	}
	#wrap .fair-present_item .fair-present_ttl em {
		font-size: 2rem;
		margin-top: 0;
	}
	#wrap .fair-present_item .fair-present_text p {
		font-size: 1.4rem;
	}
	#wrap .fair-present_item .fair-present_text p em {
		font-size: 1.6rem;
	}
	#wrap .fair-present_item .fair-present_txt{
		flex-wrap:wrap;
		padding: 20px 15px;
		gap: 3.5em;
	}
	#wrap .fair-present_item .fair-present_image:before{
		width: 61px;
		height: 76px;
		right: -3%;
		top: -32%;
		margin:auto;
		z-index: 0;
	}
	#wrap .fair-present_item .fair-present_wrap{
		border-radius:8px;
		padding:15px;
	}
	#wrap .fair-present_item .fair-present_text p.fair-present_dimension,
	#wrap .fair-present_caution li {
		font-size: 1.2rem;
	}
	#wrap .fixed-btn_box {
		border-radius: 6px 6px 0 0;
		padding: 1em 0.5em 1.5em;
		bottom: 0;
		left:0;
		right: 0;
		}
	  #wrap .fixed-btn_box p {
		font-size: min(1.6rem,3.5vw);
		line-height: 1.4;
	  }
	  #wrap .fixed-btn_box .fixed-btn_flex {
		flex-direction: row;
		gap: 0.5em;
	  }
	  #wrap .fixed-btn_box .fair-btn a {
		width: 100%;
		min-width: 0;
		font-size: min(1em,3.25vw);
	  }
}
