@charset "utf-8";

:root {
	--blue: #0068B7;
	--yellow: #FFEC00;
	--pink: #D8295D;
}

#zensenfree {
	color: #0D0D0D;
	background-color: #fff;
	font-family:"Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	overflow-wrap: break-word;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#zensenfree img {
	max-width: 100% !important;
	height: auto;
	vertical-align: bottom;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#zensenfree .pc_only {
	display: block;
}

#zensenfree .sp_only {
	display: none;
}

@media screen and (max-width: 767px) {
	#zensenfree .pc_only {
		display: none;
	}

	#zensenfree .sp_only {
		display: block;
	}
}

#zensenfree.offerContents {margin-top: 0;}
#main_rn__zensenfree {padding-bottom: 0;}

#zensenfree .sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}


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

main_kv

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

#zensenfree .main_kv__wrapper {
	padding: 43px 40px 0;
	background: url('../img/bg.jpg') no-repeat center center;
	background-size: cover;
}

#zensenfree .main_kv {
	max-width: 1421px;
	margin: 0 auto;
	position: relative;
}

#zensenfree .main_kv_image {
	width: 100%;
}

#zensenfree .main_kv_image img {
	width: 100%;
}

#zensenfree .main_kv_item_wrapper_red {
	position: absolute;
	width: 976px;
	max-width: 69%;
	bottom: 43.3vw;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
}

#zensenfree .main_kv_item_1,#zensenfree .main_kv_item_2 {
	width: 41.8%;
}

#zensenfree .main_kv_blue__wrapper {
	position: absolute;
	width: 1191px;
	max-width: 85%;
	bottom: 14.2vw;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
}

#zensenfree .main_kv_item_wrapper_blue01,#zensenfree .main_kv_item_wrapper_blue02 {
	width: 45.256%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

#zensenfree .main_kv_item_3,#zensenfree .main_kv_item_4,#zensenfree .main_kv_item_5,#zensenfree .main_kv_item_6 {
	width: 48%;
}

#zensenfree .main_kv_item_btn {
	width: 100%;
	transition: all .25s ease;
}

#zensenfree .main_kv_item_btn img {
	width: 100%;
}

#zensenfree .main_kv_item_btn:hover {
	opacity: 0.7;
}


#zensenfree .main_kv_card {
	position: absolute;
	top: 1.3vw;
	right: 0.9vw;
	width: 14%;
}

#zensenfree .main_kv_card_btn {
	display: block;
	width: 100%;
	transition: all .25s ease;
}

#zensenfree .main_kv_card_btn:hover {
	opacity: 0.7;
}

#zensenfree .main_kv__area {
	max-width: 1400px;
	margin: 0 auto;
	padding: 48px 0 56px;
}

#zensenfree .main_kv__area_map {
	width: 100%;
}

#zensenfree .main_kv__area_map img {
	width: 100%;
}

@media screen and (min-width: 1501px) {

	#zensenfree .main_kv_item_wrapper_red {
		bottom: 650px;
	}

	#zensenfree .main_kv_blue__wrapper {
		bottom: 213px;
	}

	#zensenfree .main_kv_card {
		top: 19px;
		right: 28px;
		width: 185px;
	}

}


@media screen and (max-width: 1180px) {

	#zensenfree .main_kv_item_wrapper_red {
		bottom: 510px;
	}

	#zensenfree .main_kv_blue__wrapper {
		bottom: 168px;
	}

	#zensenfree .main_kv_card {
		top: 15px;
		right: 11px;
		width: 154px;
	}

}

@media screen and (max-width: 767px) {

	#zensenfree .main_kv__wrapper {
		padding: 3.6vw 0 0;
		background: url('../img/bg_sp.jpg') no-repeat center center;
		background-size: cover;
	}

	#zensenfree .main_kv {
		max-width: 92vw;
	}

	#zensenfree .main_kv_item_wrapper_red {
		position: absolute;
		width: 976px;
		max-width: 88.5%;
		bottom: 144.5vw;
	}

	#zensenfree .main_kv_item_1,#zensenfree .main_kv_item_2 {
		width: 47%;
	}

	#zensenfree .main_kv_blue__wrapper {
		position: static;
		width: 100%;
		max-width: 100%;
		bottom: unset;
		left: unset;
		transform: none;
		display: contents;
	}

	#zensenfree .main_kv_item_wrapper_blue01,#zensenfree .main_kv_item_wrapper_blue02 {
		width: 45.256%;
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		position: absolute;
		width: 976px;
		max-width: 88.5%;
		left: 50%;
		transform: translateX(-50%);
	}

	#zensenfree .main_kv_item_wrapper_blue01 {
		bottom: 85.5vw;
	}

	#zensenfree .main_kv_item_wrapper_blue02 {
		bottom: 45.5vw;
	}

	#zensenfree .main_kv_item_3,#zensenfree .main_kv_item_4,#zensenfree .main_kv_item_5,#zensenfree .main_kv_item_6 {
		width: 47%;
	}

	#zensenfree .main_kv_item_btn:hover {
		opacity: 1;
	}

	#zensenfree .main_kv_card {
		top: 1vw;
		right: 2vw;
		width: 26.8%;
	}

	#zensenfree .main_kv_card_btn:hover {
		opacity: 1;
	}

	#zensenfree .main_kv__area {
		max-width: 92vw;
		margin: 0 auto;
		padding: 0 0 12vw;
	}

}


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

otoku

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

#zensenfree .otoku {
	background: #0070B6;
	padding: 68px 50px 74px;
}

#zensenfree .otoku-inner {
	max-width: 1400px;
	margin: 0 auto;
}

#zensenfree .otoku_image img {
	width: 100%;
}

@media screen and (max-width: 767px) {

	#zensenfree .otoku {
		padding: 0 0 9.7vw;
	}
	
	#zensenfree .otoku-inner {
		max-width: 92vw;
	}

}


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

jwestcard

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

#zensenfree .jwestcard {
	background: #E9F6FE;
	padding: 75px 50px 93px;
}

#zensenfree .jwestcard-inner {
	max-width: 1400px;
	margin: 0 auto;
}

.jwestcard_ttl__point {
	margin-bottom: 62px;
	text-align: center;
}

.jwestcard_list__wrap {
	margin-bottom: 105px;
}

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

.jwestcard_list__item {
	width: 48.142%;
}

.jwestcard_list__item img {
	width: 100%;
}

.jwestcard_ttl__addmission {
	text-align: center;
	margin-bottom: 74px;
}

.jwestcard_bnr__wrapper {
	text-align: center;
}

.jwestcard_bnr {
	transition: all .25s ease;
}

.jwestcard_bnr:hover {
	opacity: 0.7;
}

@media screen and (max-width: 767px) {
	
	#zensenfree .jwestcard {
		padding: 6vw 0 15vw;
	}

	#zensenfree .jwestcard-inner {
		max-width: 89vw;
	}

	.jwestcard_ttl__point {
		margin-bottom: 6vw;
	}

	.jwestcard_list__wrap {
		margin-bottom: 12.9vw;
	}

	.jwestcard_list {
		flex-direction: column;
		gap: 3.8vw;
		max-width: 87vw;
		margin: 0 auto;
	}

	.jwestcard_list__item {
		width: 100%;
	}

	.jwestcard_ttl__addmission {
		width: 76vw;
		margin: 0 auto 5.4vw;
	}

	.jwestcard_bnr__wrapper {
		text-align: center;
		width: 85.8vw;
		margin: 0 auto;
	}

	.jwestcard_bnr:hover {
		opacity: 1;
	}
}
