@charset "utf-8";


/* ==========================================================

	全体

========================================================== */
body {
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.05rem;
	height: 100%;
}

main { padding-bottom: 0;}

.lp_wrapper {
	width: 84vw; /* cqw未サポートiPhone15以前対策 */
	width: 84cqw;
	margin-right: auto; margin-left: auto;
}

.fc_red           { color: #DC000C;}
.fc_malibu        { color: #3FA9F5;}
.fc_purple        { color: #B779CD;}
.fc_lightseagreen { color: #00BDCE;}

.notes {
	font-size: calc(14 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(14 / 430 * 100cqw);
}

/* TB以上 */
@media screen and (min-width: 768px) {
	.pc_non { display: none !important;}
}

/* TB */
@media screen and (min-width : 768px) and (max-width : 1199.98px) {
}

/* sp */
@media screen and (max-width : 767.98px) {
	.sp_non { display: none !important;}

	.cmn_banner_cta { display: none;}
}


/* bg
===========================================================*/
.bg_sky {
	background: url(../img/lp/2023-05_fair/bg_sky.jpg) no-repeat;
	background-size: cover;
}

.bg_sky_dark {
	background: url(../img/lp/2024-05_fair/bg_sky.jpg) repeat-y;
	background-size: 100% auto;
	background-position: left -250px;
}

.bg_yellow { background: #fff9dc;}


/* section
===========================================================*/
main section {
	padding-top: 8vw; padding-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 8cqw; padding-bottom: 8cqw;
}


/* title
===========================================================*/
.title_je {
	margin-bottom: calc(34 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	margin-bottom: calc(34 / 430 * 100cqw);
	font-weight: 500;
	line-height: 1.1;
	color: #3FA9F5;
}

.title_je span {
	display: flex;
	flex-wrap: wrap; justify-content: flex-start; align-items: flex-start;
}

.title_je .__sub { font-size: 28px;}

.title_je .__ja {
	font-size: 44px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(44 / 430 * 100cqw);
}

.title_je .__ja span:nth-child(1) { color: #DC000C;}
.title_je .__ja span:nth-child(2) { color: #3FA9F5;}

.title_je .__en {
	color: #FFD71A;
	margin-top: calc(22 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(22 / 430 * 100cqw);
	font-size: 24px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(24 / 430 * 100cqw);
}


.setA {
	position: absolute;
	width: 80vw; /* cqw未サポートiPhone15以前対策 */
	width: 80cqw;
}





/* ==========================================================

	btn

========================================================== */
/* フェアボタン
===========================================================*/
.btn_detail {
	background: #fff url(../img/lp/2023-05_fair/ico_arrow_red.png) no-repeat right 20px center;
	background-size: 5.34vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 5.34cqw auto;
	color: #3FA9F5;
	border: 2px solid #3FA9F5;
	border-radius: 5px;
	text-align: center;
	text-decoration: none;
	width: 100%;
	box-sizing: border-box;
	padding-right: 15px; padding-top: 3vw; padding-bottom: 3vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 3cqw; padding-bottom: 3cqw;
	font-weight: bold;
}

.btn_detail.__up {
	background: #fff url(../img/lp/2024-05_fair/ico_arrow_red_up.png) no-repeat right 20px center;
	background-size: 5.34vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 5.34cqw auto;
}


/* 会場ボタン
===========================================================*/
.btn_place {
	/* display: flex;
	flex-wrap: wrap; justify-content: space-between; align-items: stretch; */
	display: grid;
    grid-template-columns: repeat(3, 1fr);
	gap: calc(10 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
    gap: calc(10 / 430 * 100cqw);
	width: 94vw; /* cqw未サポートiPhone15以前対策 */
	width: 94cqw;
	margin-right: -5vw; margin-left: -5vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: -5cqw; margin-left: -5cqw;
}

.btn_place a {
	background: #EB3943;
	color: #fff;
	border-radius: 8px;
	text-align: center;
	text-decoration: none;
	padding-top: 4vw; padding-bottom: 4vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 4cqw; padding-bottom: 4cqw;
	margin-top: calc(20 / 375 * 100vw); /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(20 / 375 * 100cqw);
}
.btn_place a:hover { opacity: 0.7;}

.btn_place a span { display: block;}

.btn_place a span:nth-child(1) {
	font-weight: bold;
	font-size: 20px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(20 / 430 * 100cqw);
}

.btn_place a span:nth-child(2) {
	letter-spacing: 0;
	font-size: 13px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw); 
}

.btn_place a img {
	width: 5vw; /* cqw未サポートiPhone15以前対策 */
	width: 5cqw;
    height: auto;
	position: relative; top: 1px; left: 3px;
}

.btn_past a{
	background-color: #E70012;
    border: none;
    border-radius: 0.5rem;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: bold;
    height: 5rem;
    margin: 1rem auto;
    padding: 0;
    position: relative;
    text-decoration: none;
    width: 100%;
}

.device_pc .btn_past a {
    transition: opacity 0.25s;
}





/* ==========================================================

	スライダー

========================================================== */
.js_sliders { position: relative;}

.js_sliders .-_slider {
	position: relative;
	overflow: hidden;
	margin: 20px auto;
}

.js_sliders .-__slides {
	display: flex;
	transition: transform 0.5s ease;
}

.js_sliders .__slide {
	flex-shrink: 0;
}

.js_sliders .-_controls {
	text-align: center;
	margin-top: 10px;
}

.js_sliders .-_controls .-__prev,
.js_sliders .-_controls .-__next {
	position: absolute; bottom: 0;
	width: calc(40 / 430 * 100vw); height: calc(40 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(40 / 430 * 100cqw); height: calc(40 / 430 * 100cqw);
	background-color: transparent;
	background-size: 100% auto;
	border: none;
	cursor: pointer;
}

.js_sliders .-_controls .-__prev {
	left: 0;
	background-image: url(../img/lp/2025-10_fair/ico_arrow_blue-s.png);
	transform: scale(-1, 1);
}

.js_sliders .-_controls .-__next {
	right: 0;
	background-image: url(../img/lp/2025-10_fair/ico_arrow_blue-s.png);
}

.js_sliders .-_indicators {
	text-align: center;
	margin-top: 5px;
}

.js_sliders .-__indicator {
	display: inline-block;
	width: 12px;
	height: 12px;
	margin: 0 7px;
	background-color: #ccc;
	border-radius: 50%;
	cursor: pointer;
}

.js_sliders .-__indicator.active {
	background-color: #3FA9F5;
}

.js_sliders button {
	padding: 5px 10px;
}






/* ==========================================================

	スライダー（swiper）

========================================================== */
.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}

.carousel_mv {
	padding-bottom: calc((40 / 375 * 100vw) + (16 / 375 * 100vw)); /* cqw未サポートiPhone15以前対策 */
	padding-bottom: calc((40 / 375 * 100cqw) + (16 / 375 * 100cqw));
}

/* スライダー内高さ揃え */
.swiper-slide          { height: auto;}
.swiper-slide .__block { height: 100%; box-sizing: border-box;}
/* ----------------- */

.swiper-pagination {
	padding-top: calc(6 / 375 *100vw); padding-bottom: calc(6 / 375 *100vw); /* cqw未サポートiPhone15以前対策 */
	padding-top: calc(6 / 375 *100cqw); padding-bottom: calc(6 / 375 *100cqw);
}

.swiper-button-prev,
.swiper-button-next {
	display: block; /* home引用のためhomeの指定打消し */
	background: #3069CF;
	width: calc(40 / 375 * 100vw); height: calc(40 / 375 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(40 / 375 * 100cqw); height: calc(40 / 375 * 100cqw);
	border-radius: 50%;
	top: auto; margin-top: 0; /* swiper打消し */
	bottom: 0;
}

.swiper-button-prev { left: 0;}
.swiper-button-next { right: 0;	}

.swiper-button-prev::before { content: '←';}
.swiper-button-next::before { content: '→';}

.swiper-button-prev::before,
.swiper-button-next::before {
	font-weight: bold;
	color: #fff;
	display: flex;
	justify-content: center; align-items: center;
	height: 100%;
}





/* ==========================================================

	配置

========================================================== */
/* main
===========================================================*/
.main_wrapper {
	width: 100%; max-width: 430px;
	margin-right: auto; margin-left: auto;
	background: #fff;
	container-type: inline-size;
	position: relative;
	z-index: 5;
}

/* SP以外 */
@media screen and (min-width: 576px) {
	.main_wrapper::before,
	.main_wrapper::after {
		content: '';
		display: block;
		width: 10px; height: 100%;
		position: absolute; top: 0;
		background: #3069cf;
	}

	.main_wrapper::before { left: -10px;}
	.main_wrapper::after  { right: -10px;}
}

/* SPのみ */
@media screen and (max-width: 575.98px) {
	.main_wrapper { max-width: initial;}
}


main {
	font-size: 16px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(16 / 430 * 100cqw);
	overflow: hidden;
}

/* 860px未満 header固定のため上余白 */
@media screen and (max-width: 859.98px) {
	main {
		padding-top: 16.2cqw; /* cqw未サポートiPhone15以前対策 */
		padding-top: 16.2cqw;
	}
}


/* ディスプレイ余白(860以上)
===========================================================*/
.fixed-background {
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: url(../img/lp/2025-10_fair/bg_sky_pc.jpg) no-repeat center top;
    background-size: cover;
	z-index: -1;
}


/* 860以上 2カラム・3カラム共通設定 */
@media screen and (min-width: 860px) {
	.sideRight { position: absolute; top: 0;}

	.sideLeft,
	.sideRight {
		position: fixed;
		container-type: inline-size;
		height: 100%;
		display: flex;
		z-index: 10;
		justify-content: center; align-items: center;
		box-sizing: border-box;
	}

	.sideLeft .-_logo,
	.sideRight .-_menu { width: clamp(330px, 76cqw, 378px);}

	.sideRight .-_menu {
		background: #fff;
		border-radius: 8px;
		border: 2px solid #3FA9F5;
		container-type: inline-size;
		padding-top: 32px; padding-bottom: 32px;
	}

	.sideRight .-_menu .-__lists h3 {
		margin-right: calc(24 / 378 * 100cqw); margin-left: calc(24 / 378 * 100cqw);
	}

	.sideRight .-_menu .-__lists img {
		width: 82px; height: auto;
		margin-bottom: 16px;
	}

	.sideRight .-_menu .-__lists ul {
		width: 298px;
		margin-right: auto; margin-left: auto;
		border-top: 1px dotted #D9D9D9;
	}

	.sideRight .-_menu .-__lists li {
		font-size: 14px;
		border-bottom: 1px dotted #D9D9D9;
	}

	.sideRight .-_menu .-__lists li a {
		display: block;
		color: #3FA9F5;
		font-weight: bold;
		text-decoration: none;
		padding: 8px 10px 8px 30px;
	}

	.sideRight .-_menu .-__lists li a:hover {
		color: #EB3943;
		background: url(../img/lp/2025-10_fair/ico_plane.png) no-repeat 3px center;
		background-size: 20px auto;
	}

	.sideRight .-__btns {
		display: flex;
		flex-direction: column; justify-content: center; align-items: center;
		margin-top: 16px;
	}

	.sideRight .-__btns p {
		display: inline-block;
		position: relative;
	}

	.sideRight .-__btns p::before,
	.sideRight .-__btns p::after {
		content: '';
		display: block;
		width: 29px; height: 29px;
		position: absolute; top: -5px;
	}

	.sideRight .-__btns p::before { border-left: 2px solid #FFD71A;  transform: rotate(-30deg); left: -26px;}
	.sideRight .-__btns p::after  { border-right: 2px solid #FFD71A; transform: rotate(30deg);  right: -26px;}

	.sideRight .btn_place {
		margin-right: 0; margin-left: 0;
		max-width: 330px;
	}

	.sideRight .btn_place a span:nth-child(1) { font-size: 18px;}
	.sideRight .btn_place a span:nth-child(2) { font-size: 13px;}
}

/* 860～1170 2カラムのみ */
@media screen and (min-width: 860px) and (max-width: 1169.98px) {
	.fixed-background {
		background-position: 70% top;
	}

	.main_wrapper { margin-left: 5%;}

	.sideRight {
		left: calc(5% + 430px + 10px);
		width: calc(100% - 5% - 430px - 10px);
	}
}

/* 1170以上 3カラムのみ */
@media screen and (min-width: 1170px) {
	.sideRight {
		left: calc((100% - 430px - (10px * 2)) / 2 + 430px + (10px * 2));
	}

	.sideLeft,
	.sideRight {
		width: calc((100% - 430px - (10px * 2)) / 2);
	}

	.sideLeft .-_logo {
		width: clamp(330px, 76cqw, 378px);
	}
}


/* 1170未満 2カラム以下 */
@media screen and (max-width: 1169.98px) {
	.sideLeft { display: none;}
}


/* 860未満 両サイド無 */
@media screen and (max-width: 859.98px) {
	.sideRight { display: none;}
}

/* 576未満 背景無 */
@media screen and (max-width: 575.98px) {
	.fixed-background { display: none;}
}







/* ==========================================================

	menu

========================================================== */
/* 860px以上 右サイド表示 */
@media screen and (min-width: 860px) {
	.fixedMenuSP { display: none;}
}


/* 860px未満 header固定 */
@media screen and (max-width: 859.98px) {
	.fixedMenuSP {
		position: fixed; top: 0; left: 50%; z-index: 100;
		transform: translateX(-50%);
		width: 430px;
		background: #EB3943;
		color: #fff;
	}

	.fixedMenuSP a {
		display: block;
		color: #fff;
		text-decoration: none;
		position: relative;
	}

	.fixedMenuSP ul {
		display: flex;
		align-items: stretch;
	}

	.fixedMenuSP li {
		width: 20.2cqw;
		font-size: 2.66cqw;
		text-align: center;
		letter-spacing: 0;
	}

	.fixedMenuSP li a {
		display: flex;
		flex-direction: column; justify-content: center; align-items: center;
		padding-top: 2.5cqw; padding-bottom: 2cqw;
		line-height: 1.2;
		position: relative;
	}

	.fixedMenuSP li .__ico {
		height: 7.7cqw;
		display: flex;
		justify-content: center; align-items: flex-end;
		margin-bottom: 1cqw;
	}

	.fixedMenuSP .-_m_school  img { width: 9vw; width: 9cqw; margin-bottom: 2px;}
	.fixedMenuSP .-_m_seminar img { width: 10vw; width: 10cqw;}
	.fixedMenuSP .-_m_access  img { width: 6vw; width: 6cqw;}
	.fixedMenuSP .-_m_how-to  img { width: 10vw; width: 10cqw;}
	.fixedMenuSP .-_m_step    img { width: 6.3vw; width: 6.3cqw; margin-right: 1vw; margin-right: 1cqw;}

	.fixedMenuSP .-_m_step {
		display: flex;
		flex-direction: column; justify-content: center; align-items: center;
		width: 37cqw;
		font-size: 5.06cqw;
	}

	.fixedMenuSP .-_m_step a {
		background: #fff;
		color: #EB3943;
		border-radius: 40px;
		width: 100%;
		flex-direction: row;
		padding-top: 2cqw; padding-bottom: 2cqw;
		font-size: 4.26cqw;
	}

	
}

/* 576px未満 ディスプレイ幅100%に切り替え */
@media screen and (max-width: 575.98px) {
	.fixedMenuSP { width: 100%;}

	.fixedMenuSP li {
		width: 20.2cqw;
		font-size: 2.66cqw;
	}

	.fixedMenuSP li a { padding-top: 2.5cqw; padding-bottom: 2cqw;}

	.fixedMenuSP li .__ico {
		height: 7.7cqw;
		margin-bottom: 1cqw;
	}

	.fixedMenuSP .-_m_seminar img { width: 10cqw;}
	.fixedMenuSP .-_m_access  img { width: 6cqw;}
	.fixedMenuSP .-_m_how-to  img { width: 10cqw;}
	.fixedMenuSP .-_m_step    img { width: 6.3cqw; margin-right: 1cqw;}

	.fixedMenuSP .-_m_step {
		width: 37cqw;
		font-size: 5.06cqw;
	}

	.fixedMenuSP .-_m_step a {
		padding-top: 2cqw; padding-bottom: 2cqw;
		font-size: 4.26cqw;
	}
}





/* ==========================================================

	各sectionレイアウト

========================================================== */
.rp_plane,
.rp_airplane {
    position: relative;
}

.setP {
	position: absolute;
	bottom: -16.6cqw;
	left: -31cqw;
	width: calc(100% + 27cqw);
}

.setA { width: 80cqw;}


/* YouTube
===========================================================*/
.youtube {
	position: relative;
	width: 90%; max-width: 560px;
	aspect-ratio: 560 / 315;
	margin-right: auto; margin-left: auto;
}

.youtube iframe {
	width: 100%; height: 100%;
}

.youtube.__down { margin-bottom: -27cqw;}

.youtube.__up { margin-top: -28cqw;}

.youtube p {
	position: absolute; top: -2em; left: 50%;
	transform: translateX(-50%);
	color: #3FA9F5;
	font-size: 22px;  /* cqw未サポートiPhone15以前対策 */
	font-size: calc(22 / 430 * 100cqw);
	font-weight: bold;
}

.youtube p::before {
	content: '';
	height: 1.5em;
	border-left: 2px solid #3FA9F5;
	position: absolute; left: -1em; top: 3px;
	transform: rotate(-35deg)
}

.youtube p::after {
	content: '';
	height: 1.5em;
	border-right: 2px solid #3FA9F5;
	position: absolute; right: -0.3em; top: 3px;
	transform: rotate(35deg)
}

.youtube.__up p {
	width: 11.5em;
	
}





/* ==========================================================

	MV

========================================================== */
.mv {
	position: relative;
	height: 92.44cqw;
}

.mv_sky {
	width: 100%; height: 100%;
	background: url(../img/lp/2025-05_fair/mv_sky_sp.jpg) no-repeat left bottom;
	background-size: cover;
	position: absolute; top: 0; left: 0;
	clip-path: polygon(0 0, 100% 0, 100% 88%, 0% 100%);
}

.mv_letter {
	position: absolute;
	left: 8vw; top: 14vw; /* cqw未サポートiPhone15以前対策 */
	left: 8cqw; top: 14cqw;
    width: calc(295 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(295 / 430 * 100cqw);
}

.mv_airplane {
	position: absolute; right: -15cqw; bottom: -3cqw;
	width: 95cqw;
	z-index: 20;
}

.mv_emblem {
	position: absolute;
	right: 7vw; bottom: 22vw; /* cqw未サポートiPhone15以前対策 */
	right: 7cqw; bottom: 22cqw;
	width: calc(147 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(147 / 430 * 100cqw);
}




/* ==========================================================

	留学フェア概要(.fair_outset)

========================================================== */
.fair_outset {
	background: url(../img/lp/2024-10_fair/bg_halloween_sp.png) no-repeat left bottom -1px;
	background-size: 100% auto;
	padding-bottom: calc(120 /430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding-bottom: calc(120 /430 * 100cqw);
}


.fair_info {
	padding-top: 4vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 4cqw;
	line-height: 1.5;
	position: relative;
}

.fair_info h1 {
	text-align: center;
	width: 92vw; /* cqw未サポートiPhone15以前対策 */
	width: 92cqw;
	margin-right: auto; margin-left: auto;
	display: flex;
	justify-content: flex-start; align-items: flex-start;
	position: relative;
}

.fair_info h1 img:nth-of-type(1) {
	width: 42.93vw; margin-right: 2vw; /* cqw未サポートiPhone15以前対策 */
	width: 42.93cqw; margin-right: 2cqw;
}

.fair_info h1 img:nth-of-type(2) {
	width: 47vw; margin-top: 5vw; /* cqw未サポートiPhone15以前対策 */
	width: 47cqw; margin-top: 5cqw;
}

.fair_info h1 img:nth-of-type(3) {
	width: 19.2vw; /* cqw未サポートiPhone15以前対策 */
	width: 19.2cqw;
	position: absolute; right: 0;
	top: 4.7vw; /* cqw未サポートiPhone15以前対策 */
	top: 4.7cqw;
}

.fair_info p {
	background: linear-gradient(90deg, rgba(244,117,25,1) 0%, rgba(250,191,2,1) 50%, rgba(244,117,25,1) 100%);
	color: #fff;
	text-align: center;
	width: 47.7vw; /* cqw未サポートiPhone15以前対策 */
	width: 47.7cqw;
	font-size: 4vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 4cqw;
	position: absolute;
	top: 21.5vw; right: 4vw; /* cqw未サポートiPhone15以前対策 */
	top: 21.5cqw; right: 4cqw;
}

.fair_info p span {
	display: inline-block;
	background: #fff;
	color: #FABF00;
	padding-right: 1vw; padding-left: 1vw; /* cqw未サポートiPhone15以前対策 */
	padding-right: 1cqw; padding-left: 1cqw;
	font-size: 3.2vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.2cqw;
	margin-left: 1vw; /* cqw未サポートiPhone15以前対策 */
	margin-left: 1cqw;
	position: relative; top: -1px;
}

.fair_info ul {
	display: flex;
	flex-wrap: wrap; justify-content: center; align-items: flex-start;
	letter-spacing: 0.1rem;
	margin: 2vw 4vw 3.7vw; /* cqw未サポートiPhone15以前対策 */
	margin: 2cqw 4cqw 3.7cqw; 
	font-size: 10px;
}

.fair_info li {
	position: relative;
	padding: 0.5vw 1cqw 0.5vw 2vw; /* cqw未サポートiPhone15以前対策 */
	padding: 0.5cqw 1cqw 0.5cqw 2cqw;
}

.fair_info li::before {
	content: '';
	display: block;
	position: absolute; left: 0;
	background: #FFD71A;
	top: 50%;
	transform: translateY(-50%);
	width: 1.06vw; height: 1.06vw; /* cqw未サポートiPhone15以前対策 */
	width: 1.06cqw; height: 1.06cqw;
	border-radius: 50%;
}


/* .fair_place
===========================================================*/
.fair_place {
	/* display: flex;
	flex-wrap: wrap; justify-content: space-between; align-items: stretch;
	margin: 5cqw 4cqw; */
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: calc(10 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	gap: calc(10 / 430 * 100cqw);
	line-height: 1.3;
	width: calc(386 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(386 / 430 * 100cqw);
	margin-right: auto; margin-left: auto;
}

.fair_place a {
	box-sizing: border-box;
	border: 2px solid #3FA9F5;
	background: #fff;
	text-decoration: none;
	color: inherit;
	border-radius: 5px;
	flex-direction: column; justify-content: flex-start; align-items: center;
	text-align: center;
	position: relative;
}

.fair_place .__inf {
	text-align: center;
}

.fair_place h2 {
	background: #3FA9F5;
	color: #fff;
	text-align: center;
	font-size: 4.8cqw;
}

.fair_place .__time,
.fair_place .__date span:nth-of-type(1) { font-family: 'Roboto', sans-serif;}

.fair_place .__date_time {
	position: relative;
	padding-top: 6px;
	padding-bottom: calc(34 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding-bottom: calc(34 / 430 * 100cqw);
}

.fair_place .__date span:nth-of-type(1) {
	font-weight: bold;
	font-size: calc(38 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(38 / 430 * 100cqw);
}

.fair_place .__date span:nth-of-type(2) {
	font-weight: bold;
	letter-spacing: 0; margin-left: -0.3em; margin-right: -0.3em;
	font-size: 4.53cqw;
	line-height: 1.1;
}

.fair_place .__time { font-size: 4.53cqw; margin-bottom: 2cqw;}

.fair_place .__venue {
	color: #3FA9F5;
	letter-spacing: 0;
	font-weight: bold;
	font-size: 3.2cqw;
}

.fair_place .__detail {
	background: url(../img/lp/2023-05_fair/ico_arrow_red.png) no-repeat right 2px center;
	line-height: 25px;
	transform: translateX(-50%);
	text-align: left;
	font-size: 10px;
	position: absolute; bottom: 3px; left: 50%;
	background-size: 20px 20px;
	padding-right: 24px;
	width: calc(8em + 24px);
}





/* ==========================================================

	ISS留学ライフの留学フェアとは？

========================================================== */
.fair { padding-top: 14cqw; padding-bottom: 20cqw;}

.fair .__area {
	display: flex;
	flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
}

.fair h2 {
	width: 480px;
	color: #3FA9F5;
	font-size: calc(32 / 430 * 100cqw);
	line-height: 1.3;
	margin-bottom: 13cqw;
}

.fair h2 .__sub {
	display: block;
	font-size: 1.6rem;
	margin-bottom: 2cqw;
}

.fair .fade_plane { bottom: -11cqw;}

.fair p {
	color: #3169CF;
	font-size: calc(18 / 430 * 100cqw);
}





/* ==========================================================

	留学フェアでできること

========================================================== */
.detail {
	padding-top: 42vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 42cqw;
}

.detail h2 {
	color: #3FA9F5;
	line-height: 1.3;
	font-size: 33px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(33 / 430 * 100cqw);
	margin-bottom: 13vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 13cqw;
}

.detail h3 {
	color: #3FA9F5;
	line-height: 1.3;
	font-size: 5.33vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 5.33cqw;
	margin-top: 3vw; margin-bottom: 4vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 3cqw; margin-bottom: 4cqw;
}

.detail section {
	padding-top: 0; padding-bottom: 0;
	margin-bottom: 12vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 12cqw;
}

.detail section .__img img { border-radius: 10px;}

.detail section .__text { flex: 1;}
.detail section.__guest .__text { margin-left: 0;}

.detail p { margin-bottom: 1.5rem; margin-left: 0;}

.detail .__btn {
	display: flex;
	justify-content: flex-end; align-items: flex-start;
}

.detail .__guest { margin-top: 100px;}

.detail .__guest h3 { font-size: 2.36rem;}

.detail .__guest h3 .__sub {
	display: block;
	font-size: 4.26vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 4.26cqw;
}

.detail .__guest h3 > span {
	font-size: 5.6vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 5.6cqw;
}

.detail .__guest h3 .__red {
	color: #DC000C;
	font-size: 7.46vw;  /* cqw未サポートiPhone15以前対策 */
	font-size: 7.46cqw;
}

.detail .__guest h3 .__red span { font-size: 1.5rem;}

.detail .__guest p { margin-bottom: 0;}

.detail .__guest .__img { width: 330px;}

.detail .__guest .__point {
	font-size: 1.36rem;
	color: #3FA9F5;
	font-weight: bold;
	margin-bottom: 0.6rem;
}

.detail .__guest .__point  span {
	background: #FFD71A;
	color: #fff;
	padding: 2px 10px;
	border-radius: 3px;
	font-size: 0.8rem;
}

.detail .__guest img {
	display: block;
	width: 76vw;          /* cqw未サポートiPhone15以前対策 */
	margin: 2vw auto 3vw; /* cqw未サポートiPhone15以前対策 */
	width: 76cqw;
	margin: 2cqw auto 3cqw;
}





/* ==========================================================

	参加校紹介

========================================================== */
.school {
	padding-top: 10vw; padding-bottom: 10vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 10cqw; padding-bottom: 10cqw;
}

.school_lists {
	margin-top: 7vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 7cqw;
}

.school_lists .school_host-place {
	background-color: #3169CF;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    cursor: pointer;
    font-weight: bold;
    padding: 20px 90px 20px 30px;
    position: relative;
    line-height: 1.5;
}

.school_lists .school_host-place::before {
    content: '';
    background-color: #fff;
    height: 2px;
    position: absolute;
    top: 50%;
    right: 22px;
    transform: translateY(-50%);
    width: 16px;
}

.school_lists .school_host-place::after {
    content: '';
    background-color: #fff;
    height: 16px;
    position: absolute;
    top: 50%;
    right: 30px;
    transform-origin: center;
    transition: transform 0.2s;
    transform: translateY(-50%);
    width: 2px;
}

.school_lists .school_host-place.is-open::after {
    transform: translateY(-50%) rotate(90deg);
}

.school_index_list > dt {
    margin-top: 0.5rem;
}

.school_lists a.__nolink:hover { color: inherit; cursor: default;}

.school_index_sublist a.__nolink::after { content: none;}





/* ==========================================================

	セミナー情報

========================================================== */
.seminar { padding-bottom: 50px;}

.seminar .__summary { margin-bottom: 1rem;}

.seminar .__special {
	background: #eaf2f6;
	position: relative;
	border-radius: 0 10px 10px 0;
	left: -8vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 12vw; /* cqw未サポートiPhone15以前対策 */
	padding: 5vw 4vw 5vw 8vw; /* cqw未サポートiPhone15以前対策 */
	width: calc(100% + 10vw); /* cqw未サポートiPhone15以前対策 */
	left: -8cqw;
	margin-top: 12cqw;
	padding: 5cqw 4cqw 5cqw 8cqw;
	width: calc(100% + 10cqw);
}

.seminar .__special.__purple { background: #F7E9FC;}

.seminar .__special .__point {
	position: absolute; left: 0;
	top: calc(-1rem - 1vw); /* cqw未サポートiPhone15以前対策 */
	top: calc(-1rem - 1cqw);
	color: #fff;
	background:#3FA9F5 url(../img/lp/2023-05_fair/ico_airplane.png) no-repeat right 4vw center;
	background:#3FA9F5 url(../img/lp/2023-05_fair/ico_airplane.png) no-repeat right 4cqw center;
	background-size: 5vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 5cqw auto;
	padding: 1vw 10vw 1vw 8vw; /* cqw未サポートiPhone15以前対策 */
	padding: 1cqw 10cqw 1cqw 8cqw;
	border-radius: 0 20px 20px 0;
	font-size: 13px;
	font-size: calc(13 / 430 * 100cqw); /* cqw未サポートiPhone15以前対策 */
}

.seminar .__special.__purple .__point { background-color: #B779CD;}

.seminar .__special h3 {
	color: #3169CF;
	line-height: 1.6;
	font-size: 22px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(22 / 430 * 100cqw);
	margin-bottom: 3vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 3cqw;
	letter-spacing: 0;
}

.seminar .__special.__purple h3 { color: #B779CD;}

.seminar .__special h3 span {
	display: block;
	font-size: 3.74vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.74cqw;
}

.seminar .__special .__area { position: relative;}

.seminar .__special .__professor {
	margin-bottom: 16px;
}

.seminar .__special .__professor span {
	line-height: 1.5;
	display: flex;
	justify-content: flex-start; align-items: flex-end;
}

.seminar .__special .__photo {
	width: 30vw; /* cqw未サポートiPhone15以前対策 */
	width: 30cqw;
	position: absolute;
	top: -9vw; right: -2vw; /* cqw未サポートiPhone15以前対策 */
	top: -9cqw; right: -2cqw;
}

.seminar .__special .__professor span:nth-child(1) { font-size: 14px; font-size: calc(14 / 430 * 100cqw);}
.seminar .__special .__professor span:nth-child(2) span:nth-child(1) { font-size: 23px; font-size: calc(23 / 430 * 100cqw); font-weight: bold;}
.seminar .__special .__professor span:nth-child(2) span:nth-child(2) { font-size: 17px; font-size: calc(17 / 430 * 100cqw); position: relative; top: -1px; left: 2px;}

.seminar dl { margin-bottom: 24px;}

.seminar .__special .__text dl {
	font-size: 13px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw);
	letter-spacing: 0;
}

.seminar .__p-t {
	display: flex;
	flex-wrap: wrap; justify-content: flex-start; align-items: center;
}

.seminar .__p-t p { width: 48%;}

.seminar .__p-t .__place {
	font-size: 13px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw);
	border-radius: 5px;
	color: #fff;
	padding: 4px 2vw 5px; /* cqw未サポートiPhone15以前対策 */
	margin-right: 1vw; /* cqw未サポートiPhone15以前対策 */
	padding: 4px 2cqw;
	margin-right: 1cqw;
}

.seminar .__p-t .__place.__osaka {background: #3FA9F5;}
.seminar .__p-t .__place.__tokyo {background: #3169CF}

.seminar .__p-t .__time {
	font-size: 15px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(15 / 430 * 100cqw);
}





/* ==========================================================

	セミナースケジュール

========================================================== */
.schedule {
	padding-bottom: 10vw; /* cqw未サポートiPhone15以前対策 */
	padding-bottom: 10cqw;
}

.schedule .__timeline_wp {
	margin-right: -3vw; margin-left: -3vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: -3cqw; margin-left: -3cqw;
}

.schedule h3 {
	background-color: #3169CF;
	color: #fff;
	text-align: center;
	border-radius: 10px;
    cursor: pointer;
    font-weight: bold;
    padding: 20px 90px 20px 30px;
    position: relative;
    line-height: 1.5;
	margin-top: 6vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 6cqw;
}

.schedule h3::before {
    content: '';
    background-color: #fff;
    height: 2px;
    position: absolute;
    top: 50%;
    right: 22px;
    transform: translateY(-50%);
    width: 16px;
}

.schedule h3::after {
    content: '';
    background-color: #fff;
    height: 16px;
    position: absolute;
    top: 50%;
    right: 30px;
    transform-origin: center;
    transition: transform 0.2s;
    transform: translateY(-50%);
    width: 2px;
}
.schedule h3.is-open::after {
    transform: translateY(-50%) rotate(90deg);
}

.schedule .__timeline {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	position: relative;
	padding-top: 8vw; padding-bottom: 2vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 8cqw; padding-bottom: 2cqw;
}

.schedule .__timeline::before {
	content: '';
	display: block;
	height: calc(100% - 26vw); /* cqw未サポートiPhone15以前対策 */
	height: calc(100% - 26cqw);
	border: 1px solid #dce9f0;
	position: absolute;
	top: 14vw; right: 85.5vw;
	top: 14cqw; right: 85.5cqw; /* cqw未サポートiPhone15以前対策 */
}

.schedule .__timeline .__oc {
	width: 5vw; height: 5vw; /* cqw未サポートiPhone15以前対策 */
	width: 5cqw; height: 5cqw;
	position: absolute; left: 50%;
	transform: translateX(-50%);
	color: #3169CF;
	font-family: 'Roboto', sans-serif;
	font-weight: bold;
	line-height: 1;
}
.schedule .__timeline .__oc.__open {
	top: 7vw; /* cqw未サポートiPhone15以前対策 */
	top: 7cqw;
}
.schedule .__timeline .__oc.__close { bottom: 0;}

.schedule .__timeline .__oc::before {
	content: '';
	display: block;
	width: 5vw; height: 5vw; /* cqw未サポートiPhone15以前対策 */
	width: 5cqw; height: 5cqw;
	border-radius: 35px;
	background: #FFD71A;
	position: absolute; left: 0; top: 0;
}

.schedule .__timeline .__oc span {
	position: absolute; top: calc(50% - 0.5rem);
	font-size: 3.73vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.73cqw;
}

.schedule .__timeline .__oc span:nth-of-type(1) {
	right: 8vw; /* cqw未サポートiPhone15以前対策 */
	right: 8cqw;
}

.schedule .__timeline .__oc span:nth-of-type(2) {
	left: 8vw; /* cqw未サポートiPhone15以前対策 */
	left: 8cqw;
}

.schedule .__timeline .__tl_r {
	display: flex;
	justify-content: flex-end; align-items: flex-start;
}

.schedule .__timeline .__later10 { margin-top: 80px;}
.schedule .__timeline .__mb20 { margin-bottom: 20px;}

.schedule .__timeline .__box {
	width: 77.6vw; /* cqw未サポートiPhone15以前対策 */
	width: 77.6cqw;
	padding: calc(18 / 430 * 100vw) 3vw 4vw; /* cqw未サポートiPhone15以前対策 */
	padding: calc(18 / 430 * 100cqw) 3cqw 4cqw;
	margin-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 8cqw;
	font-size: 14px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(14 / 430 * 100cqw);
	border-radius: 10px;
	box-sizing: border-box;
	position: relative;
}

.schedule .__timeline .__box_second {
	position: relative;
	margin-top: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 8cqw;
}

.schedule .__timeline .__box::after,
.schedule .__timeline .__box_second::after {
	content: '';
	border-top: 2vw solid transparent; /* cqw未サポートiPhone15以前対策 */
	border-top: 2cqw solid transparent;
	border-bottom: 2vw solid transparent; /* cqw未サポートiPhone15以前対策 */
	border-bottom: 2cqw solid transparent;
	position: absolute; top: 20px;
}

.schedule .__timeline .__later60  { margin-top: 20vw; margin-top: 20cqw;}
.schedule .__timeline .__later60p { margin-top: 30vw; margin-top: 30cqw;}
.schedule .__timeline .__mb20     { margin-bottom: 5.33vw; margin-bottom: 5.33cqw;}

.schedule .__timeline .__later60p .__box_second {
	margin-top: 25vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 25cqw;
}

.schedule .__timeline .__tl_l .__box::after { right: -3.8vw; right: -3.8cqw;}
.schedule .__timeline .__tl_r .__box::after { left: -3.8vw; left: -3.8cqw;}

.schedule .__timeline .__tl_l .__box_second::after { right: -6.8vw; right: -6.8cqw;}
.schedule .__timeline .__tl_r .__box_second::after { left: -6.8vw; left: -6.8cqw;}

.schedule .__timeline .__box.__cyan { background: #e2fbfd;}
.schedule .__timeline .__box.__blue { background: #edf3ff;}
.schedule .__timeline .__box.__azure { background: #f1f6f9;}
.schedule .__timeline .__box.__purple { background: #f7e9fc;}

.schedule .__timeline .__tl_l .__box.__cyan::after { border-left: 4vw solid #e2fbfd; border-left: 4cqw solid #e2fbfd;}
.schedule .__timeline .__tl_r .__box.__cyan::after { border-right: 4vw solid #e2fbfd; border-right: 4cqw solid #e2fbfd;}

.schedule .__timeline .__tl_l .__box.__blue::after { border-left: 4vw solid #edf3ff; border-left: 4cqw solid #edf3ff;}
.schedule .__timeline .__tl_r .__box.__blue::after { border-right: 4vw solid #edf3ff; border-right: 4cqw solid #edf3ff;}

.schedule .__timeline .__tl_l .__box.__azure::after,
.schedule .__timeline .__tl_l .__box.__azure .__box_second::after { border-left: 4vw solid #f1f6f9; border-left: 4cqw solid #f1f6f9;}
.schedule .__timeline .__tl_r .__box.__azure::after { border-right: 4vw solid #f1f6f9; border-right: 4cqw solid #f1f6f9;}

.schedule .__timeline .__tl_l .__box.__purple::after { border-left: 4vw solid #F7E9FC; border-left: 4cqw solid #F7E9FC;}
.schedule .__timeline .__tl_r .__box.__purple::after,
.schedule .__timeline .__tl_r .__box.__purple .__box_second::after { border-right: 4vw solid #F7E9FC; border-right: 4cqw solid #F7E9FC;}

.schedule .__timeline .__box h4 {
	font-size: calc(26 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(26 / 430 * 100cqw);
	line-height: 1.4;
}

.schedule .__timeline .__box h5 { font-size: 20px; margin-bottom: 8px;}

.schedule .__timeline .__box.__cyan h4,
.schedule .__timeline .__box.__cyan h5   { color: #00BDCE;}
.schedule .__timeline .__box.__blue h4,
.schedule .__timeline .__box.__blue h5   { color: #5481DB;}
.schedule .__timeline .__box.__azure h4,
.schedule .__timeline .__box.__azure h5  { color: #3FA9F5;}
.schedule .__timeline .__box.__purple h4,
.schedule .__timeline .__box.__purple h5 { color: #B779CD;}

.schedule .__timeline .__box h4 .__small {
	display: inline-block;
	font-size: 3.74vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.74cqw;
	line-height: 1.4;
}

.schedule .__timeline .__box h4 .__sub {
	display: block;
	margin-top: 5px;
	font-size: calc(19 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(19 / 430 * 100cqw);
}

.schedule .__timeline .__box.__cyan .__target span.__small:nth-of-type(1)  { color: #333; margin-left: 3px;}

.schedule .__timeline .__box .__time {
	font-family: 'Roboto', sans-serif;
	position: absolute;
	top: -2vw; /* cqw未サポートiPhone15以前対策 */
	top: -2cqw;
	color: #3169CF;
	font-weight: bold;
}

.schedule .__timeline .__tl_l .__box .__time { right: -8vw; right: -8cqw; transform: translateX(50%);}
.schedule .__timeline .__tl_r .__box .__time { left: -8vw; left: -8cqw; transform: translateX(-50%);}

.schedule .__timeline .__tl_l .__box_second .__time { right: -11vw; right: -11cqw;}
.schedule .__timeline .__tl_r .__box_second .__time { left: -11vw; left: -11cqw;}

.schedule .__timeline .__target2c {
	margin-top: 3vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 3cqw;
}

.schedule .__timeline .__target2c .__box {
	padding-top: 7vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 7cqw;
}

.schedule .__timeline .__box .__time::after {
	content: '';
	display: block;
	width: 3vw; height: 3vw; /* cqw未サポートiPhone15以前対策 */
	width: 3cqw; height: 3cqw;
	border-radius: 3vw;
	border-radius: 3cqw; /* cqw未サポートiPhone15以前対策 */
	background: #FFD71A;
	position: absolute; left: 50%;
	transform: translateX(-50%);
	bottom: -3vw; /* cqw未サポートiPhone15以前対策 */
	bottom: -3cqw;
}

.schedule .__timeline .__box .__target {
	max-width: 95%;
	position: absolute; top: 0; left: 0;
	padding: 0 calc(28 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding: 0 calc(28 / 430 * 100cqw);
	color: #fff;
	border-radius: calc(1px / 0);
	transform: translate(8px, -50%);
}

.schedule .__timeline .__box .__target span {
	font-size: calc(12 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(12 / 430 * 100cqw);
	display: block;
	line-height: 1.3;
	padding-top: 4px;
}

.schedule .__timeline .__box.__cyan .__target   { background: #00BDCE;}
.schedule .__timeline .__box.__blue .__target   { background: #5481DB;}
.schedule .__timeline .__box.__azure .__target  { background: #3FA9F5;}
.schedule .__timeline .__box.__purple .__target { background: #B779CD;}

.schedule .__timeline .__box .__timeSlot {
	font-size: 3.73vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.73cqw;
	margin-top: 5px; margin-bottom: 5px;
	font-weight: bold;
}

.schedule .__timeline .__box .__note { font-size: 12px; margin-top: 8px;}

.schedule .btn_place {
	margin-top: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 8cqw;
}





/* ==========================================================

	会場の歩き方

========================================================== */
.how-to .__box {
	border-radius: 10px;
	padding-top: 0; padding-bottom: 0;
	background: #fff;
	margin-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 8cqw;
}

.js-acc_btn { cursor: pointer;}

.how-to .__box1,
.how-to .__box1 .__click .__ico { border: 3px solid #00BDCE;}
.how-to .__box2,
.how-to .__box2 .__click .__ico { border: 3px solid #3FA9F5;}
.how-to .__box3,
.how-to .__box3 .__click .__ico { border: 3px solid #B779CD;}

.how-to .__box3 {
	margin-bottom: 18vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 18cqw;
}

.how-to .__box .__click {
	width: 10.67vw; /* cqw未サポートiPhone15以前対策 */
	width: 10.67cqw;
	margin-right: auto; margin-left: auto;
}

.how-to .__box .__click .__ico {
	position: relative;
	display: block;
	width: 10.67vw; height: 10.67vw; /* cqw未サポートiPhone15以前対策 */
	width: 10.67cqw; height: 10.67cqw;
	border-radius: 50%;
}

.how-to .__box .__click .__ico::before,
.how-to .__box .__click .__ico::after  {
	content: '';
	border-radius: 3px;
	position: absolute; left: 50%; top: 50%;
	transform: translate(-50%, -50%);
}

.how-to .__box .__click .__ico::before {
    width: 4.27vw; /* cqw未サポートiPhone15以前対策 */
	width: 4.27cqw;
	height: 3px;
}

.how-to .__box .__click .__ico::after {
    width: 3px;
	height: 4.27vw; /* cqw未サポートiPhone15以前対策 */
	height: 4.27cqw;
    transform-origin: center;
    transition: transform 0.2s;
}

.how-to .__box .is-open .__click .__ico::after {
    transform: translateY(-50%) rotate(90deg);
}

.how-to .__box1 .__click .__ico::before,
.how-to .__box1 .__click .__ico::after { background: #00BDCE;}
.how-to .__box2 .__click .__ico::before,
.how-to .__box2 .__click .__ico::after { background: #3FA9F5;}
.how-to .__box3 .__click .__ico::before,
.how-to .__box3 .__click .__ico::after { background: #B779CD;}

.how-to .__box1 .__click .__txt { color: #00BDCE;}
.how-to .__box2 .__click .__txt { color: #3FA9F5;}
.how-to .__box3 .__click .__txt { color: #B779CD;}

.how-to .__box .__click .__txt { display: block; text-align: center;}
.how-to .__box .__click .__txt::before { content: 'tap';}
.how-to .__box .is-open .__click .__txt::before { content: 'close';}

.how-to .__box .__pattern .__img {
	width: 26.67vw; /* cqw未サポートiPhone15以前対策 */
	width: 26.67cqw;
	height: auto;
	margin-right: auto; margin-left: auto;
}

.how-to .__box .__pattern .__text { text-align: center;}

.how-to .__box .__pattern .__text h3 {
	font-size: 4.8vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 4.8cqw;
	font-weight: bold;
	margin-top: 2vw; margin-bottom: 4.27vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 2cqw; margin-bottom: 4.27cqw;
	text-align: center;
}

.how-to .__box .__pattern .__text .__progress img {
	width: 58.7vw; /* cqw未サポートiPhone15以前対策 */
	width: 58.7cqw;
}


/* .__contetns
===========================================*/
.how-to .__contents {
	position: relative;
	padding-top: 8vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 8cqw;
}

.how-to .__contents::before {
	content: '';
	width: 100%; height: 9px;
	background-size: 9px 9px;
    background-repeat: repeat-x;
	position: absolute; left: 0; top: -3px;
}

.how-to .__box1 .__contents::before { background-image: radial-gradient(#00BDCE 15%, transparent 30%);}
.how-to .__box2 .__contents::before { background-image: radial-gradient(#3FA9F5 15%, transparent 30%);}
.how-to .__box3 .__contents::before { background-image: radial-gradient(#B779CD 15%, transparent 30%);}

.how-to .__contents .__step {
	background: url(../img/lp/2023-05_fair/step_arrow.png) no-repeat center bottom;
	padding-right: 5vw; padding-bottom: 13.34vw; padding-left: 5vw; /* cqw未サポートiPhone15以前対策 */
	padding-right: 5cqw; padding-bottom: 13.34cqw; padding-left: 5cqw;
	margin-bottom: 5.34vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 5.34cqw;
	background-size: 23.33vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 23.33cqw auto;
}

.how-to .__contents .__step.__arr_non { background: none; margin-bottom: 0;}

.how-to .__contents .__step .__title {
	margin-bottom: 2.66vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 2.66cqw;
}

.how-to .__contents .__step .__title > span {
	display: block;
	font-size: 5.34vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 5.34cqw;
}

.how-to .__contents .__step .__title .__num {
	background: #FABF00;
	color: #fff;
	width: 11.47vw; height: 11.47vw; /* cqw未サポートiPhone15以前対策 */
	width: 11.47cqw; height: 11.47cqw;
	border-radius: 50%;
	display: flex;
	justify-content: center; align-items: center;
}

.how-to .__contents .__step .__text .__have-time {
	color: #3FA9F5;
	font-weight: bold;
	font-size: 4vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 4cqw;
	margin-top: 8vw; margin-bottom: -8vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 8cqw; margin-bottom: -8cqw;
	text-align: center;
}

.how-to .__contents .__message {
	text-align: center;
	position: relative;
	width: 90%;
	margin-right: auto; margin-left: auto;
}

.how-to .__contents .__message .__grand {
	font-size: 6.66vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 6.66cqw;
}

.how-to .__contents .__message .__normal  {
	font-size: 4.8vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 4.8cqw;
}

.how-to .__contents .__message::before,
.how-to .__contents .__message::after {
	content: '';
	display: block;
	width: 94px; height: 3px;
	background: #FABF00;
	position: absolute;
	bottom: 40vw; /* cqw未サポートiPhone15以前対策 */
	bottom: 40cqw;
}

.how-to .__contents .__message::before { transform: rotate(70deg); left: -9vw; transform: rotate(70deg); left: -9cqw;}
.how-to .__contents .__message::after  { transform: rotate(-70deg); right: -9vw; transform: rotate(-70deg); right: -9cqw;}

.how-to .__contents .__message p  { font-weight: bold;}

.how-to .__contents .__message img {
	width: 40vw; /* cqw未サポートiPhone15以前対策 */
	width: 40cqw;
	height: auto;
	margin-left: 46vw; /* cqw未サポートiPhone15以前対策 */
	margin-left: 46cqw;
}

.how-to .__contents .__btn {
	display: flex;
	justify-content: center; align-items: center;
	margin-top: 20px;
}

.how-to .__contents .btn_detail { font-size: 14px;}



/* 各section別
=======================*/
.how-to .__contents .__special {
	position: relative;
    margin-top: 53px;
	margin-right: -5vw; margin-left: -5vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: -5cqw; margin-left: -5cqw;
    padding: 42px 10%;
    background: #ECFCFE;
}

.how-to .__contents .__special .__point {
    position: absolute;
    left: 0;
    top: calc(-1rem - 1vw); /* cqw未サポートiPhone15以前対策 */
	top: calc(-1rem - 1cqw);
    color: #fff;
    padding: 1vw 10vw 1vw 8vw; /* cqw未サポートiPhone15以前対策 */
	padding: 1cqw 10cqw 1cqw 8cqw;
    border-radius: 0 40px 40px 0;
    background: #00BDCE url(../img/lp/2023-05_fair/ico_airplane.png) no-repeat right 20px center;
    background-size: 5vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 5cqw auto;
	font-size: 20px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(20 / 430 * 100cqw);
}

.how-to .__contents .__special h3 {
    color: #00BDCE;
    line-height: 1.6;
    font-size: 5.34vw;
	font-size: 5.34cqw;
}

.how-to .__contents .__special .__p-t {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
	margin-top: 24px; margin-bottom: 33px;
}

.how-to .__contents .__special .__p-t p { margin-bottom: 2px;}

.how-to .__contents .__special .__p-t .__place {
    font-size: 3.2vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.2cqw;
    border-radius: 5px;
    color: #fff;
    padding: 4px 20px 5px;
    margin-right: 10px;
}

.how-to .__contents .__special .__p-t .__place.__osaka { background: #3FA9F5;}
.how-to .__contents .__special .__p-t .__place.__tokyo { background: #3169CF;}

.how-to .__contents .__special .__p-t .__time {
	font-size: 3.74vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.74cqw;
}

.how-to .__contents .__hint {
	padding: 8.53vw 6vw; /* cqw未サポートiPhone15以前対策 */
	padding: 8.53cqw 6cqw;
	margin-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 8cqw;
}

.how-to .__box2 .__contents .__hint { background: #F1F6F9;}
.how-to .__box3 .__contents .__hint { background: #FBF3FD;}

.how-to .__contents .__hint h4 {
	font-size: 5.34vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 5.34cqw;
	margin-bottom: 14px;
}

.how-to .__box2 .__contents .__hint h4 { color: #3FA9F5; letter-spacing: -0.01em;}
.how-to .__box3 .__contents .__hint h4 { color: #B779CD;}





/* ==========================================================

	豪華来場特典

========================================================== */
.novelty {
	padding-bottom: 58vw; /* cqw未サポートiPhone15以前対策 */
	padding-bottom: 58cqw;
}

.novelty .__container {
	margin-right: -4vw; margin-left: -4vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: -4cqw; margin-left: -4cqw;
}

.novelty h2 {
	margin-top: 8vw; margin-bottom: 18vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 8cqw; margin-bottom: 18cqw;
}

.novelty .setA {
	top: -15.5vw; right: -20vw; /* cqw未サポートiPhone15以前対策 */
	top: -15.5cqw; right: -20cqw;
}

.novelty .__block { 
	margin: 8vw 1vw 0; /* cqw未サポートiPhone15以前対策 */
	margin: 8cqw 1cqw 0;
	padding: 9vw 5vw 7vw 5vw; /* cqw未サポートiPhone15以前対策 */
	padding: 9cqw 5cqw 7cqw 5cqw;
	background: #fff;
	border-radius: 10px;
	position: relative;
}

.novelty .swiper-slide .__block {
	/* swiper高さ揃え訂正 */
	height: calc(100% - 8vw); /* cqw未サポートiPhone15以前対策 */
	height: calc(100% - 8cqw);
}

.novelty .__special {
	background: #EB3943;
	border-radius: 8vw; /* cqw未サポートiPhone15以前対策 */
	border-radius: 8cqw;
	padding-bottom: 3pw;
	padding-right: 8vw; padding-bottom: 3px; padding-left: 7vw; /* cqw未サポートiPhone15以前対策 */
	padding-right: 8cqw; padding-bottom: 3cqx; padding-left: 7cqw;
	display: flex;
	justify-content: flex-start; align-items: center;
	position: absolute;
	top: -4vw; /* cqw未サポートiPhone15以前対策 */
	top: -4cqw;
}

.novelty .__special span:nth-child(1) {
	color: #fff;
	font-size: 16px;
	position: relative; top: 1px;
	margin-right: 1vw;
}

.novelty .__special span:nth-child(2) {
	color: #FFD71A;
	font-size: 33px;
	line-height: 1;
	font-weight: bold;
}

.novelty h3 {
	margin-bottom: 20px;
}

.novelty h3 span {
	letter-spacing: 0;
	display: block;
}

.novelty h3 span.__blue { color: #3FA9F5;}
.novelty h3 span.__red 	{ color: #DC000C;}

.novelty h3 span.__fb { font-weight: bold;}
.novelty h3 span.__fn { font-weight: normal;}

.novelty h3 span.__fz20 { font-size: 4.26vw; font-size: 4.26cqw; line-height: 1.3;}
.novelty h3 span.__fz28 { font-size: 5.33vw; font-size: 5.33cqw;}
.novelty h3 span.__fz30 { font-size: 5.86vw; font-size: 5.86cqw;}
.novelty h3 span.__fz33 { font-size: 6.4vw; font-size: 6.4cqw; line-height: 1.3;}
.novelty h3 span.__fz40 { font-size: 8vw; font-size: 8cqw; line-height: 1.3;}

.novelty h3 span.__mb05 { margin-bottom: calc(5 / 430 * 100vw); margin-bottom: calc(5 / 430 * 100cqw);}
.novelty h3 span.__mb16 { margin-bottom: calc(16 / 430 * 100vw); margin-bottom: calc(16 / 430 * 100cqw);}

.novelty h3 span.__dp-ib { display: inline-block;}


.novelty .__block img {
	position: absolute;
	height: auto;
	width: 27vw; /* cqw未サポートiPhone15以前対策 */
	width: 27cqw;
	right: 4vw; /* cqw未サポートiPhone15以前対策 */
	right: 4cqw;
}

.novelty .__novelty1 img { top: 7vw; top: 7cqw;}
.novelty .__novelty2 img { top: 7vw; top: 7cqw;}

.novelty .__novelty3 img {
	top: 4vw; right: 2vw; /* cqw未サポートiPhone15以前対策 */
	top: 4cqw; right: 2cqw;
}

.novelty .__novelty_text { margin-bottom: 3vw; margin-bottom: 3cqw;}





/* ==========================================================

	参加方法

========================================================== */
.step {
	padding-top: 10vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 10cqw;
}

.step .__number {
	display: inline-block;
	background: #FABF00;
	width: 11.46vw; height: 11.46vw; /* cqw未サポートiPhone15以前対策 */
	width: 11.46cqw; height: 11.46cqw;
	border-radius: 11.46vw; /* cqw未サポートiPhone15以前対策 */
	border-radius: 11.46cqw;
	color: #fff;
	display: flex;
	justify-content: center; align-items: center;
	font-size: 21px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(21 / 430 * 100cqw);
}

.step .__text {
	font-size: 22px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(22 / 430 * 100cqw);
	font-weight: bold;
}

.step .__text span { color: #3FA9F5;}

.step .__arr {
	width: 22.6vw; /* cqw未サポートiPhone15以前対策 */
	width: 22.6cqw;
	display: block;
	margin-right: auto; margin-left: auto;
}

.step .__here { text-align: center;}

.step .__here p {
	display: inline-block;
	position: relative;
	margin-bottom: 20px;
}

.step .__here p::before {
	content: '';
	display: block;
	width: 30px; height: 30px;
	border-left: 2px solid #FFD71A;
	transform: rotate(-30deg);
	position: absolute; top: -7px; left: -30px;
}

.step .__here p::after {
	content: '';
	display: block;
	width: 30px; height: 30px;
	border-right: 2px solid #FFD71A;
	transform: rotate(30deg);
	position: absolute; top: -7px; right: -30px;
}

.step .__step1 {
	background-image: url(../img/lp/2025-10_fair/step01.png);
	background-repeat: no-repeat;
	background-position: right 5.3vw; /* cqw未サポートiPhone15以前対策 */
	background-position: right 5.3cqw;
	background-size: 37.3vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 37.3cqw auto;
	padding-bottom: 22vw; /* cqw未サポートiPhone15以前対策 */
	padding-bottom: 22cqw;
}

.step .__step2 {
	background-image: url(../img/lp/2024-10_fair/step02.png);
	background-repeat: no-repeat;
	background-position: right 5.3vw; /* cqw未サポートiPhone15以前対策 */
	background-position: right 5.3cqw;
	background-size: 35.4vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 35.4cqw auto;
}

.step .__step3 {
	background-image: url(../img/lp/2024-10_fair/step03.png);
	background-repeat: no-repeat;
	background-position: right 5.3vw; /* cqw未サポートiPhone15以前対策 */
	background-position: right 5.3cqw;
	background-size: 40.5vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 40.5cqw auto;
	padding-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	padding-bottom: 8cqw;
}

.step .fadeDown {
	margin-top: 10vw; margin-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 10cqw; margin-bottom: 8cqw;
}

.step .__here p { margin-bottom: 0;}

.step .__here p::before {
	width: 5vw; height: 5vw; /* cqw未サポートiPhone15以前対策 */
	width: 5cqw; height: 5cqw;
	top: 0;
	left: -6vw; /* cqw未サポートiPhone15以前対策 */
	left: -6cqw;
}

.step .__here p::after {
	width: 5vw; height: 5vw; /* cqw未サポートiPhone15以前対策 */
	width: 5cqw; height: 5cqw;
	top: 0;
	right: -5vw; /* cqw未サポートiPhone15以前対策 */
	right: -5cqw;
}





/* ==========================================================

	来場者の声

========================================================== */
.voice { padding-bottom: 15vw; padding-bottom: 15cqw;}

.voice .title_je .__ja span:nth-child(1) { color: #3FA9F5;}
.voice .title_je .__ja span:nth-child(2) { color: #DC000C;}

.voice .__summary {
	margin-bottom: 8vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 8cqw;
}

.voice .__block { 
	margin-right: 1vw; margin-bottom: 0; margin-left: 1vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: 1cqw; margin-bottom: 0; margin-left: 1cqw;
	padding: 8vw 5vw 21.33vw; /* cqw未サポートiPhone15以前対策 */
	padding: 8cqw 5cqw 21.33cqw;
	background: #fff;
	border-radius: 10px;
	position: relative;
	display: flex;
	flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
	letter-spacing: 0;
}

.voice .__block .__text {
	font-size: 3.74vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.74cqw;
}

.voice .__block .__text h3 {
	font-size: 5.34vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 5.34cqw;
	margin-bottom: 2.66vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 2.66cqw;
}

.voice .__block.__odd .__text h3  { color: #3169CF;}
.voice .__block.__even .__text h3 { color: #3FA9F5;}

.voice .__block .__name {
	font-weight: bold;
	margin-top: 5.34vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 5.34cqw;
	position: absolute; bottom: 13cqw;
}

.voice .__block.__odd .__name { left: 4.5vw; left: 4.5cqw;}
.voice .__block.__even .__name { right: 4.5vw; right: 4.5cqw;}

.voice .__block img {
	width: 26.67vw; /* cqw未サポートiPhone15以前対策 */
	width: 26.67cqw;
}

.voice .__block.__odd img  {
	position: absolute; bottom: 0;
	right: 5vw; /* cqw未サポートiPhone15以前対策 */
	right: 5cqw;
}

.voice .__block.__even img {
	position: absolute; bottom: 0;
	left: 5vw; /* cqw未サポートiPhone15以前対策 */
	left: 5cqw;
}





/* ==========================================================

	会場アクセス

========================================================== */
.access {
	padding: 16vw 0 4vw; /* cqw未サポートiPhone15以前対策 */
	padding: 16cqw 0 4cqw;
}

.access section {
	background: #fff;
	padding: 12vw 4vw 4vw; /* cqw未サポートiPhone15以前対策 */
	padding: 12cqw 4cqw 4cqw;
	position: relative;
	border-radius: 10px;
	margin-right: -4vw; margin-left: -4vw; margin-bottom: 15vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: -4cqw; margin-left: -4cqw; margin-bottom: 15cqw;
}

.access section::before {
	content: '';
	display: block;
	width: 9.3vw; height: 12.2vw; /* cqw未サポートiPhone15以前対策 */
	width: 9.3cqw; height: 12.2cqw;
	background: url(../img/lp/2023-05_fair/ico_gps.png) no-repeat;
	background-size: cover;
	position: absolute;
	left: calc(50% - 4.65vw); top: -3.2vw; /* cqw未サポートiPhone15以前対策 */
	left: calc(50% - 4.65cqw); top: -3.2cqw;
}

.access h3 {
	color: #3FA9F5;
	font-size: 33px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(33 / 430 * 100cqw);
	text-align: center;
	margin-bottom: 10px;
}

.access h4 {
	font-family: 'Roboto', sans-serif;
	display: flex;
	flex-wrap: wrap; justify-content: center; align-items: flex-end;
	line-height: 1;
	letter-spacing: 0;
	margin-bottom: 1vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 1cqw;
}

.access h4 span:nth-child(1) {
	font-size: 47px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(47 / 430 * 100cqw);
}

.access h4 span:nth-child(2) {
	font-size: 18px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(18 / 430 * 100cqw);
	font-weight: normal; position: relative; top: -2px;
}

.access p {
	margin-right: 4vw; margin-left: 4vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: 4cqw; margin-left: 4cqw;
}

.access .__img img { border-radius: 10px;}

.access .__time span:nth-child(1) {
	font-size: calc(23 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(23 / 430 * 100cqw);
	margin-right: 0.2em;
}

.access .__time span:nth-child(2) {
	font-size: calc(16 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(16 / 430 * 100cqw);
	letter-spacing: -1px;
}

.access .__text .__btn {
	margin-top: 2vw; margin-bottom: 2vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 2cqw; margin-bottom: 2cqw;
}

.access .__venue {
	display: inline-block;
	background: #3FA9F5;
	color: #fff;
	text-align: center;
	border-radius: 7vw; /* cqw未サポートiPhone15以前対策 */
	border-radius: 7cqw;
	padding-left: 5vw; padding-right: 5vw; /* cqw未サポートiPhone15以前対策 */
	padding-left: 5cqw; padding-right: 5cqw;
	font-size: 13px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw); 
	margin-top: 2vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 2cqw;
	margin-bottom: 10px;
}

.access .__place {
	font-size: 19px;
	font-size: calc(19 / 430 * 100cqw); /* cqw未サポートiPhone15以前対策 */
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 1vw;
}

.access .__place span {
	display: block;
	font-size: 16px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(16 / 430 * 100cqw);
}

.access .__access {
	font-size: 14px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(14 / 430 * 100cqw);
	margin-bottom: 3vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 3cqw;
}

.access .__map {
	margin-top: 3vw; margin-bottom: 4vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 3cqw; margin-bottom: 4cqw;
	display: flex;
	justify-content: flex-end; align-items: center;
	font-size: 12px; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.2cqw;
	min-height: 5.4vw; /* cqw未サポートiPhone15以前対策 */
	min-height: 5.4cqw;
	font-weight: bold;
}

.access .__map a {
	color: inherit;
	text-decoration: none;
	background: url(../img/lp/2023-05_fair/ico_arrow_blue.png) no-repeat right 1px center;
	background-size: 25px 25px;
	padding-right: 30px;
	line-height: 27px;
}

.access .__btn a {
	display: block;
	width: 76vw; /* cqw未サポートiPhone15以前対策 */
	width: 76cqw;
	margin-right: auto; margin-left: auto;
	padding-top: 3.8vw; padding-bottom: 3.8vw;
	padding-top: 3.8cqw; padding-bottom: 3.8cqw;
	text-decoration: none;
	font-size: 14px;
	font-weight: bold;
	border-radius: 5px;
	text-align: center;
	letter-spacing: 0;
}

.access .youtube { margin-bottom: 20px;}

.btn_pdf {
	border: 2px solid #3169CF;
	color: #3169CF;
	background-image: url(../img/lp/2023-05_fair/ico_pdf.png);
	background-repeat: no-repeat;
	background-position: right 6vw center; /* cqw未サポートiPhone15以前対策 */
	background-position: right 6cqw center;
	background-size: 4.3vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 4.3cqw auto;
	margin-bottom: 4vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 4cqw;
}

.btn_reserve {
	background-color: #EB3943;
	background-image: url(../img/lp/2023-05_fair/ico_arrow_white.png);
	background-repeat: no-repeat;
	background-position: right 6vw center; /* cqw未サポートiPhone15以前対策 */
	background-position: right 6cqw center;
	background-size: 5.3vw auto; /* cqw未サポートiPhone15以前対策 */
	background-size: 5.3cqw auto;
	color: #fff;
}





/* ==========================================================

	よくあるご質問

========================================================== */
.faq {
	padding-top: 16vw; /* cqw未サポートiPhone15以前対策 */
	padding-top: 16cqw;
}

.faq dl {
	position: relative; z-index: 10;
	margin-right: -4vw; margin-left: -4vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: -4cqw; margin-left: -4cqw;
}

.faq dt {
    background-color: #ebf1f9;
    cursor: pointer;
    display: flex;
    align-items: stretch;
    font-weight: bold;
    padding: 4.5vw 15vw 3vw 4vw; /* cqw未サポートiPhone15以前対策 */
	padding: 4.5cqw 15cqw 3cqw 4cqw;
    position: relative;
	margin-top: 6vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 6cqw;
	line-height: 1.5;
	border-radius: 10px;
}

.faq dt span:nth-child(1) {
	color: #fff;
	font-family: 'Comfortaa', cursive;
	font-weight: 500;
	font-size: 5.33vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 5.33cqw;
	margin-right: 3vw; /* cqw未サポートiPhone15以前対策 */
	margin-right: 3cqw;
	position: relative;
	top: -0.3vw; /* cqw未サポートiPhone15以前対策 */
	top: -0.3cqw;
}

.faq dt span:nth-child(2) {
	color: #3169CF;
	flex: 1;
	font-size: 3.73vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.73cqw;
} 

.faq dt::before {
    content: '';
    background-color: #abc0df;
    height: 2px;
    position: absolute; top: 50%; right: 22px;
    transform: translateY(-50%);
    width: 17px;
}

.faq dt::after {
	content: '';
    background-color: #abc0df;
    height: 17px;
	position: absolute; top: 50%; right: 30px;
    transform-origin: center;
    transition: transform 0.2s;
	transform: translateY(-50%);
    width: 2px;
}

.faq dt.is-open::after {
    transform: translateY(-50%) rotate(90deg);
}

.faq dd {
	padding: 4vw; /* cqw未サポートiPhone15以前対策 */
	padding: 4cqw;
	font-size: 3.73vw; /* cqw未サポートiPhone15以前対策 */
	font-size: 3.73cqw;
}





/* ==========================================================

	主催・協賛

========================================================== */
.sponsor {
	position: relative;
	padding-right: 0;
	padding-left: 4vw; /* cqw未サポートiPhone15以前対策 */
	padding-left: 4cqw;
}

.sponsor .setA {
	top: -3vw; right: -11vw; /* cqw未サポートiPhone15以前対策 */
	top: -3cqw; right: -11cqw;
}

.sponsor .__block {
	background: #3169CF;
	color: #fff;
	border-radius: 10px 0 0 10px;
	padding: 16vw 4vw 16vw 8vw; /* cqw未サポートiPhone15以前対策 */
	padding: 16cqw 4cqw 16cqw 8cqw;
	line-height: 2;
}

.sponsor h2 {
	font-size: 33px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(33 / 430 * 100cqw);
	margin-bottom: 3vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 3cqw;
}

.sponsor .__block p {
	margin-bottom: 2vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 2cqw;
}





/* ==========================================================

	フェアに関するお問合せ

========================================================== */
.contact {
	border-top: 2px solid #DCE9F0;
	border-bottom: 2px solid #DCE9F0;
	text-align: center;
	padding-top: 0; padding-bottom: 0;
}

.contact .lp_wrapper { padding-top: 70px; padding-bottom: 70px;}

.contact h2 {
	font-size: 19px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(19 / 430 * 100cqw);
	margin-bottom: 6.6vw; /* cqw未サポートiPhone15以前対策 */
	margin-bottom: 6.6cqw;
}

.btn_contact {
	border-radius: 40px;
	background: #7FD4F3;
    color: #fff;
    display: flex;
    flex-direction: column; justify-content: center;
    font-size: 19px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(19 / 430 * 100cqw);
    font-weight: bold;
    line-height: 1.4;
	height: 70px; /* cqw未サポートiPhone15以前対策 */
	height: calc(70 / 430 * 100cqw);
    padding: 0 calc(36 /430 * 100vw) 0 calc(40 /430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding: 0 calc(36 /430 * 100cqw) 0 calc(40 /430 * 100cqw);
    position: relative;
    text-decoration: none;
}

.btn_contact::after {
    content: '';
    border-top: 0.1rem solid #fff;
	border-right: 0.1rem solid #fff;
    display: block;
    width: calc(12 / 430 * 100vw); height: calc(12 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
    width: calc(12 / 430 * 100cqw); height: calc(12 / 430 * 100cqw);
    position: absolute;
    top: 50%;
	right: 2rem;
    transform: translateY(-50%) rotate(45deg);
    
}

.contact .__tel {
	margin-top: 3vw; /* cqw未サポートiPhone15以前対策 */
	margin-top: 3cqw;
	font-size: 33px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(33 / 430 * 100cqw);
	font-weight: bold;
	letter-spacing: 0.05rem;
}

.contact .__time {
	font-size: 13px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw);
}





/* ==========================================================

	lp_footer

========================================================== */
.footer_contact_wrap {
	margin-top: 0;
	padding: 30px 0 68px;
}


/* 留学に関する お問合せ・ご相談
===========================================================*/
.lp_footer .cmn_title_border {
	font-size: calc(25 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(25 / 430 * 100cqw);
	padding-top: calc(34 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding-top: calc(34 / 430 * 100cqw);
}

.lp_footer .cmn_container {
    margin: 0 auto;
    padding-right: calc(30 / 430 * 100vw); padding-left: calc(30 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding-right: calc(30 / 430 * 100cqw); padding-left: calc(30 / 430 * 100cqw);
    position: relative;
    width: 100%;
}

.lp_footer .footer_contact_list {
	flex-direction: column;
}

.lp_footer .footer_contact_list a {
	font-size: 19px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(19 / 430 * 100cqw);
	height: 70px; /* cqw未サポートiPhone15以前対策 */
	height: calc(70 / 430 * 100cqw);
	border-radius: calc(1px / 0);
	padding: 0 calc(38 /430 * 100vw) 0 calc(66 /430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding: 0 calc(38 /430 * 100cqw) 0 calc(66 /430 * 100cqw);
}

.lp_footer .footer_contact_list li + li { margin-top: 11px;}

.lp_footer .footer_contact_list li,
.lp_footer .line_frends_ui .contact_list li { width: 100%;}

.lp_footer .line_frends_ui .contact_list li { margin-bottom: 0;}

.lp_footer .footer_contact_list li:first-child a {
	background-position: calc(24 / 430 * 100vw) center, center; /* cqw未サポートiPhone15以前対策 */
	background-position: calc(24 / 430 * 100cqw) center, center;
	background-size: auto calc(27 / 430 * 100vw), 100%; /* cqw未サポートiPhone15以前対策 */
	background-size: auto calc(27 / 430 * 100cqw), 100%;
}

.footer_contact_list li:last-child a {
    background-position: calc(23 / 430 * 100vw) center, center; /* cqw未サポートiPhone15以前対策 */
	background-position: calc(23 / 430 * 100cqw) center, center;
    background-size: auto calc(16 / 430 * 100vw), 100%; /* cqw未サポートiPhone15以前対策 */
	background-size: auto calc(16 / 430 * 100cqw), 100%;
}

.lp_footer .footer_contact_list li.cmn_btn_back a::after,
.lp_footer .footer_contact_list a::after,
.lp_footer .line_frends_ui .contact_list a::after {
	width: calc(12 / 430 * 100vw); height: calc(12 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(12 / 430 * 100cqw); height: calc(12 / 430 * 100cqw);
}

.lp_footer .line_frends_ui .contact_list { margin-top: 0;}

.lp_footer .line_frends_ui .contact_list a {
	padding: 0 calc(38 /430 * 100vw) 0 calc(66 /430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding: 0 calc(38 /430 * 100cqw) 0 calc(66 /430 * 100cqw);
	font-size: 19px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(19 / 430 * 100cqw);
	height: 70px; /* cqw未サポートiPhone15以前対策 */
	height: calc(70 / 430 * 100cqw);
	border-radius: calc(1px / 0);
}

.lp_footer .line_frends_ui .contact_list li.cmn_btn_line a {
	background-position: left calc(20 / 430 * 100vw) top 52%; /* cqw未サポートiPhone15以前対策 */
	background-position: left calc(20 / 430 * 100cqw) top 52%;
	background-size: auto calc(30 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	background-size: auto calc(30 / 430 * 100cqw);
}

.footer_contact_tel {
	margin-top: 18px; /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(18 / 430 * 100cqw);
}

.lp_footer .footer_contact_tel a {
    color: #333;
    display: block;
    padding: calc(20 / 430 * 100vw) 0 calc(16 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	padding: calc(20 / 430 * 100cqw) 0 calc(16 / 430 * 100cqw);
    text-decoration: none;
}

.lp_footer .footer_contact_tel p {
	font-size: calc(33 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(33 / 430 * 100cqw);
}

.lp_footer .footer_contact_tel dl {
	font-size: calc(13 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw);
	margin-top: 7px; /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(7 / 430 * 100cqw);
}

.lp_footer .footer_contact_tel dt {
	margin-right: 3px;
    padding: 3px 5px;
}


/* お近くのISS留学ライフはこちら
===========================================================*/
.lp_footer .footer_index_wrap { padding-bottom: 34px;}

.lp_footer .footer_map_wrap .cmn_title_border {
	margin-right: 2vw; margin-left: 2vw;
	margin-right: 2cqw; margin-left: 2cqw;
}

.lp_footer .footer_map {
	flex-direction: column;
}

.lp_footer .footer_map_img {
	width: 90%;
}

.lp_footer .footer_map_list {
	width: 100%;
	margin-top: 33px; /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(33 /430 * 100cqw);
}

.footer_map_list li {
	height: 57px; /* cqw未サポートiPhone15以前対策 */
	height: calc(57 /430 * 100cqw);
}

.lp_footer .footer_map_list a {
	border-radius: 5px;
	font-size: 15px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(15 /430 * 100cqw);
	padding: 0 22px 0 33px; /* cqw未サポートiPhone15以前対策 */
	padding: 0 calc(22 /430 * 100cqw) 0 calc(33 /430 * 100cqw);
}

.lp_footer .footer_map_list li:nth-child(n+3) {
	margin-top: 12px; /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(12 / 430 * 100cqw);
}

.lp_footer .footer_map_list a::after {
	border-radius: 5px 0 5px 0;
	font-size: calc(16 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(16 / 430 * 100cqw);
	width: 23px; height: 23px; /* cqw未サポートiPhone15以前対策 */
	width: calc(23 / 430 * 100cqw); height: calc(23 / 430 * 100cqw);
}

.lp_footer .footer_breadcrumb_list {
	font-size: 13px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw);
}



/* footer_index
===========================================================*/
.lp_footer .footer_logo {
	width: calc(230 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(230 / 430 * 100cqw);
}

.lp_footer .footer_pagetop {
	width: calc(24 / 430 * 100vw); height: calc(108 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	width: calc(24 / 430 * 100cqw); height: calc(108 / 430 * 100cqw);
	top: calc(-28 / 430 * 100vw); right: calc(21 /430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	top: calc(-28 / 430 * 100cqw); right: calc(21 /430 * 100cqw);
}

.lp_footer .footer_index_inner > ul:first-child { width: 50%;}

.lp_footer .footer_index_inner > ul:nth-child(2) { width: 47%; margin-left: 3%;}

.lp_footer .footer_index_list li a {
	font-size: calc(13 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	font-size: calc(13 / 430 * 100cqw);
}

.lp_footer .footer_index_pdf {
	width: 100%;
	margin-top: calc(45 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(45 / 430 * 100cqw);
	padding-right: 0;
}

.lp_footer .footer_index_pdf h3 { font-size: 15px;}

.lp_footer .footer_index_pdf p {
	padding-right: 0;
	font-size: 11px;
}

.lp_footer .footer_country {
	text-align: left;
	font-size: 12px; /* cqw未サポートiPhone15以前対策 */
	font-size: calc(12 / 430 * 100cqw);
}

.lp_footer .footer_sns {
	position: relative; top: auto; right: auto;
	display: flex;
    justify-content: center;
	width: 100%;
	margin-top: 40px;
}

.lp_footer .footer_sns li { margin: 0 15px;}

.lp_footer .footer_sns .sns_link { width: 50px; height: 50px;}

.lp_footer .footer_sns .icon.instagram::before { width: 22px; height: 22px;}
.lp_footer .footer_sns .icon.twitter::before { width: 23px; height: 18px;}
.footer_sns .icon.facebook::before { width: 11px; height: 22px;}

.lp_footer .footer_copyright {
	margin-top: calc(68 / 430 * 100vw); /* cqw未サポートiPhone15以前対策 */
	margin-top: calc(68 / 430 * 100cqw);
	font-size: 11px;
}




/* footer_z-kai
===========================================================*/
.lp_footer .footer_z-kai {
	padding-top: 66px; padding-bottom: 176px; /* cqw未サポートiPhone15以前対策 */
	padding-top: calc(66 / 430 * 100cqw); padding-bottom: calc(176 / 430 * 100cqw);;
}

.lp_footer .footer_z-kai_logo { max-width: 165px;}













