@charset "utf-8";
@viewport { zoom: 1.0; width: extend-to-zoom; }
html { -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS. */ }
ul, ol, li { list-style: none; }
* { min-height: 0; min-width: 0; }
html, body, :root { font-size: 14px; }
@media (min-width: 789px) {
	html, body, :root { font-size: 16px; }
}
body {
	background: #fff;
	color: #404040;
	overflow-x: hidden;
}


/* LP専用 */
.lp24-main {
	font-family: "source-han-sans-japanese", sans-serif;
	font-weight: 400;
	font-style: normal;
	background: #fff;
	color: #404040;
	overflow-x: hidden;
}
.lp24-main img { max-width: 100%; }
.lp24-main * { margin: 0; padding: 0; position: relative;
	-webkit-margin-before:0; -webkit-margin-after:0; -webkit-margin-start:0; -webkit-margin-end:0;
	-webkit-padding-before:0; -webkit-padding-after:0; -webkit-padding-start:0; -webkit-padding-end:0;
	-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
	-moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;
}
.lp24-main h1, .lp24-main h2, .lp24-main h3, .lp24-main h4, .lp24-main h5, .lp24-main h6 {
	font-weight: bold;
	font-size: 1rem;
}
.lp24-main p {
	line-height: 1.6;
}
@media (min-width: 901px) {
	.lp24-main p {
		line-height: 1.9;
	}
}
.lp24-main hr {
	height: 2px;
	border: none;
	background: #171717;
	margin: 3rem 0;
}


/* リンク */
.lp24-main a {
	text-decoration: none!important;
	transition: .2s;
	color: #4DA1E2;
}
.lp24-main a:active, .lp24-main a:focus, .lp24-main a:visited,
.lp24-main a:hover {
	color: #EA7C9A;
}


/* ボタン */
.lp24-main a.lp24-btn {
	display: inline-block;
	min-width: 9rem;
	font-size: 1rem;
	font-weight: 600;
	text-align: center;
	line-height: 1;
	padding: 15px 45px 15px 10px;
	color: #fff;
	background-color: #EA7C9A;
	border: 2px solid #EA7C9A;
	border-radius: 4rem;
	background-image: url("../img/btn-chevron.png");
	background-repeat: no-repeat;
	background-size: 30px;
	background-position: center right 10px;
}
.lp24-main a.lp24-btn:focus,
.lp24-main a.lp24-btn:active,
.lp24-main a.lp24-btn:visited {
	color: #fff;
}
.lp24-main a.b-btn {
	color: #EA7C9A!important;
	background-color: #FDF2F9!important;
	border-radius: 4rem!important;
	border: 2px solid #EA7C9A!important;
	background-image: url("../img/btn-chevron-pink.png")!important;
	background-size: 30px!important;
	background-position: center right 10px!important;
}
.lp24-main a.b-btn.blue {
	color: #4DA1E2!important;
	border-color: #4DA1E2!important;
	background-color: #E2F2FF!important;
	background-image: url("../img/btn-chevron-blue.png")!important;
}
@media (hover:hover) {
	.lp24-main a.lp24-btn:hover {
		transform: scale(1.1)!important;
		z-index: 10!important;
	}
	.lp24-main a.lp24-btn:not(.b-btn):hover {
		color: #fff!important;
	}
}


/* レイアウト */
.lp24-container {
	max-width: 100%;
	width: 1130px;
	min-height: 1px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 10px;
}
.lp24-container.slim {
	width: 1060px;
}
.lp24-sect {
	padding: 1rem 0;
}
@media (min-width:901px) {
	.lp24-sect {
		padding: 2rem 0;
	}
	.lp24-container {
		padding: 0 15px;
	}
}


/* メインビジュアル */
.lp24-mv * {
	font-size: 0;
	line-height: 0;
}
.lp24-mv img {
	width: 100%;
}


/* イントロ */
.lp24-intro {
	text-align: center;
	background: #F5F5F5;
}
.lp24-intro-h {
	position: absolute;
	top: 0; left: 0; right: 0;
	margin: auto;
	transform: translateY(-48%);
}
@media (max-width:800px) {
	.lp24-intro {
		background: #F5F5F5;
		margin: 6rem 0 0;
		padding: 4rem 0 2rem;
	}
	.lp24-intro::before {
		content: ""; display: block;
		width: 100%; height: 100%;
		position: absolute;
		bottom: -30px; left: 0;
		background: url("../img/intro-bg_sp.png") bottom left no-repeat;
		background-size: 100%;
	}
	.lp24-intro .lp24-container {
		padding: 0;
	}
	.lp24-intro-h {
		margin: 0 1rem 2rem;
	}
	.lp24-intro-sub {
		margin: 2rem 1rem 1rem;
	}
}
@media (min-width:801px) {
	.lp24-intro {
		margin: 6rem 0 0;
		padding: 6rem 0 2rem;
	}
	.lp24-intro-h {
		z-index: 10;
	}
	.lp24-intro::after,
	.lp24-intro::before {
		content: ""; display: block;
		width: 20%; height: 110%;
		background: url("../img/intro-bg-01.png") top left no-repeat;
		background-size: contain;
		position: absolute;
		left: 0; bottom: 0;
		margin: auto;
		z-index: 1;
	}
	.lp24-intro::after {
		left: auto; right: 0;
		bottom: auto; top: 0;
		background: url("../img/intro-bg-02.png") top right no-repeat;
		background-size: contain;
	}
}


/* まずは学生会館と学生マンションの違いをポイントで見てみよう！ */
.lp24-sect-01-h {
	text-align: center;
	transform: translateY(20%);
	z-index: 10;
	padding: 0 1rem;
}
.lp24-housing-col {
	background-color: #FDF2F9;
	padding: 3rem 1rem 2rem;
}
.lp24-housing-col.blue {
	background-color: #E2F2FF;
}
.lp24-housing-col-h {
	text-align: center;
	transform: translateY(20px);
}
.lp24-housing-body {
	background: #fff;
	padding: 1rem;
	width: 100%;
}
.pink .lp24-housing-body {
	display: block;
	margin-left: auto;
}
.lp24-housing-body-img {
	margin: 1rem 0;
}
.lp24-housing-body::before {
	display: block;
	content: "";
	width: 0; height: 0;
	position: absolute;
	top: 0; left: 0;
	border: 20px solid transparent;
	border-top-color: #EA7C9A;
	border-left-color: #EA7C9A;
}
.blue .lp24-housing-body::before {
	border-top-color: #4DA1E2;
	border-left-color: #4DA1E2;
}
.lp24-housing-item {
	border: 2px solid #404040;
	border-radius: 20px;
	margin: 0 0 2rem;
}
.lp24-housing-item-head {
	text-align: center;
	padding: 1rem;
	background-color: #EA7C9A;
	color: #fff;
	border-radius: 10px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.blue .lp24-housing-item-head { background-color: #4DA1E2; }
.lp24-housing-item-h {
	font-size: 1.2rem;
}
.lp24-housing-item-h small {
	display: block;
	font-size: .8em;
}
.lp24-housing-item p {
	z-index: 2;
}
.lp24-housing-item::before,
.lp24-housing-item::after {
	content: ""; display: block;
	position: absolute;
	z-index: 1;
}
.lp24-housing-item-foot {
	text-align: right;
	width: 100%;
	z-index: 10;
}
.lp24-housing-item-foot .lp24-btn {
	margin: 0 0 1rem;
}
@media (max-width:900px) {
	.lp24-sect-01 {
		padding: 0;
	}
	.lp24-housing-item-h small {
		font-size: 14px;
		line-height: 1.3;
		margin: 4px 0 0;
	}
	.lp24-housing-item {
		padding: 1rem;
	}
	.lp24-housing-item-foot .lp24-btn {
		font-size: 16px;
	}
	.lp24-housing-item-foot .b-btn {
		margin: 0 0 0 1rem;
	}
	.lp24-housing-item-foot {
		margin: 2rem 0 0;
	}
	.lp24-housing-item-foot.flex-row {
		display: flex;
		flex-direction: column-reverse;
	}
	.lp24-housing-item-foot.flex-row .lp24-btn {
		flex: 0 0 auto;
		width: auto;
	}
	.lp24-housing-item-foot.flex-row .b-btn {
		width: 9rem;
		margin: 0 0 1rem auto;
	}
	.lp24-housing-col {
		background-image: url("../img/col-pink.png");
		background-position: top;
		background-size: 100%;
		background-repeat: no-repeat;
	}
	.lp24-housing-col.blue {
		background-image: url("../img/col-blue.png");
		border-bottom: 2px solid #4DA1E2;
	}
	.lp24-housing-body-img {
		margin: 2rem 0 1rem;
	}
	.blue .lp24-housing-body-img {
		margin: 2rem 0;
	}
}
@media (max-width:460px) {
	.lp24-housing-item-foot.flex-row {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	.lp24-housing-item-foot.flex-row .lp24-btn {
		flex: 0 0 fit-content;
	}
}
@media (min-width:901px) {
	.lp24-housing-item-foot {
		position: absolute;
		bottom: 0; left: 0;
		padding: 0 1rem;
	}
	.lp24-housing {
		display: flex;
		overflow: hidden;
	}
	.lp24-housing-col {
		flex: 1;
		border: 2px solid #EA7C9A;
		border-right: none;
		border-radius: 100px 0 0 0;
		padding: 3rem 2rem 2rem;
		margin-left: -2px;
	}
	.lp24-housing-col.blue {
		margin-left: 0;
		margin-right: -2px;
		border: 2px solid #4DA1E2;
		border-left: none;
		border-radius: 0 100px 0 0;
	}
	.lp24-housing-item {
		padding: 0;
	}
	.lp24-housing-item-body {
		min-height: 46rem;
		padding: 1rem 1rem 5rem;
	}
	.lp24-housing-item:nth-of-type(1) .lp24-housing-item-body {
		min-height: 39rem;
	}
	.lp24-housing-item-head {
		margin: 1rem;
		pointer-events: none;
	}
	.lp24-housing-item-h small {
		margin: .5rem 0 0;
	}
	.lp24-housing-body {
		max-width: 500px;
	}
	.lp24-housing-col-h {
		width: 100%;
		max-width: 500px;
	}
	.pink .lp24-housing-col-h {
		margin-left: auto;
	}
	.lp24-housing-item::before {
		background: #fff;
		width: 50%; height: 4px;
		top: -2px; left: 40px;
	}
	.lp24-housing-item::after {
		background: #fff url("../img/bg-corner.png") bottom right no-repeat;
		background-size: 95%;
		border-radius: 0 0 20px 0;
		bottom: -3px; right: -3px;
		width: 45px; height: 100px;
	}
}


/* 学生会館と学生マンション　アコーディオン */
.lp24-dot-list a {
	text-decoration: underline;
}
@media (max-width:900px) {
	.lp24-housing-item-body {
		display: none;
		padding: 1rem 0 0;
	}
	.lp24-housing-item-head {
		cursor: pointer;
		padding: 1rem 3rem 1rem .7rem;
		background: #EA7C9A url("../img/plus-pink.png") center right 10px no-repeat;
		background-size: 25px;
	}
	.lp24-housing-item-h {
		line-height: 1.5;
		font-size: 16px;
	}
	.blue .lp24-housing-item-head {
		background-color: #4DA1E2;
		background-image: url("../img/plus-blue.png");
	}
	.lp24-housing-item-head.active {
		background-image: url("../img/minus-pink.png");
	}
	.blue .lp24-housing-item-head.active {
		background-image: url("../img/minus-blue.png");
	}
}


/* 実際に住まいサポートを活用している学生のリアルな声を... */
.lp24-sect-02-h {
	text-align: center;
	margin: 2rem 0;
	padding: 0 1rem;
}
.lp24-sect-02-h-sub {
	text-align: center;
	padding: 0 0 4rem;
	background: #fff url("../img/sect-02-bg.jpg") bottom center no-repeat;
	background-size: 100% 100px;
}
.lp24-main .bg-gray {
	background: #F5F5F5;
	padding: 0 0 4rem;
}
@media (max-width:800px) {
	.lp24-sect-02-h-sub {
		padding: 0 1rem 2rem;
	}
	.lp24-main .bg-gray {
		padding: 0 0 2rem;
		margin: 0 0 2rem;
	}
}


/* 声 */
.lp24-voice {
	margin: 0 0 4rem;
}
.lp24-voice-block {
	background: #FDF2F9;
	border: 2px solid #EA7C9A;
	padding: 0 1rem 2rem;
}
.lp24-voice-block.blue {
	background: #E2F2FF;
	border: 2px solid #4DA1E2;
}
.lp24-voice-block-h {
	text-align: center;
	margin: 2rem 0;
}
.lp24-voice-block > img:nth-of-type(1) {
	margin: 0 0 3rem;
}
@media (min-width:801px) {
	.lp24-voice {
		display: flex;
	}
	.lp24-voice-block {
		flex: 0 0 50%;
		border-right: none;
		padding: 0 2rem 2rem;
	}
	.lp24-voice-block.blue {
		border-left: none;
	}
	.lp24-voice::after {
		content: ""; display: block;
		width: 120px; height: 120px;
		position: absolute;
		bottom: 0; left: 0;
		background: #F5F5F5 url("../img/bg-bottom-01.png") bottom left no-repeat;
		background-size: contain;
	}
	.lp24-voice-block.bg {
		background: #FDF2F9 url("../img/bg-bottom-02.png") bottom left 150px no-repeat;
		background-size: auto 110px;
	}
}

/* 使用している学生の「声」 タブ */
.lp24-voice-tabs-nav {
	display: none;
}
@media (max-width:800px) {
	.lp24-voice-block-h {
		display: none;
	}
	.lp24-voice-block {
		padding: 1rem;
	}
	.lp24-voice-tabs-nav {
		text-align: center;
		display: flex;
		margin: 0 0 -2px;
		z-index: 10;
	}
	.lp24-voice-tabs-nav a {
		flex: 1;
		background-color: #FDF2F9;
		border: 2px solid #EA7C9A;
		border-bottom: none;
		padding: 1rem 0;
		margin: 0 5px 0 0;
	}
	.lp24-voice-tabs-nav a::after {
		content: ""; display: block;
		width: calc(100% + 4px); height: 2px;
		background: #4da1e2;
		position: absolute;
		bottom: 0; left: -2px;
		z-index: 10;
	}
	.lp24-voice-tabs-nav a.active::after {
		display: none;
	}
	.lp24-voice-tabs-nav a:nth-of-type(2)::after {
		background: #EA7C9A;
	}
	.lp24-voice-tabs-nav a:nth-of-type(2) {
		margin: 0 0 0 5px;
		background-color: #E2F2FF;
		border-color: #4da1e2;
	}
	.lp24-main .lp24-tabs-content {
		display: none;
		opacity: 0;
		z-index: 1;
		height: 0;
		overflow: hidden;
	}
	.lp24-main .lp24-tabs-content.active {
		display: block;
		opacity: 1;
		z-index: 3;
		height: auto;
		overflow: auto;
		padding: 2rem 1rem;
	}
}

.lp24-main .lp24-tabs-content picture:nth-of-type(1) img {
	margin: 0 0 2rem;
}

/* 学生会館/学生マンションを選んだ学生に共通している意見 */
.lp24-box-group .lp24-box {
	background: #fff;
	border: 2px solid #404040;
	border-radius: 20px;
	padding: 1rem;
	text-align: center;
}
.lp24-box-group .lp24-box::after {
	content: ""; display: block;
	position: absolute;
	bottom: -3px; right: -3px;
	width: 45px; height: 100px;
	background: #fff url("../img/bg-corner.png") bottom right no-repeat;
	background-size: 95%;
	border-radius: 0 0 20px 0;
}
.lp24-box-h {
	text-align: center;
	background: #EA7C9A;
	color: #fff;
	border-radius: 10px 10px 0 0;
	margin: 0 0 1rem;
	padding: 1rem;
	line-height: 1.6;
}
.lp24-box img {
	z-index: 10;
}
.lp24-box-h.blue { background: #4DA1E2!important; }
.lp24-box-h strong {
	display: block;
	color: #FFFFA0;
	font-weight: 900;
}
.lp24-box-foot {
	z-index: 4;
	padding: 1rem;
	margin: 1rem 0 0;
	text-align: center;
	background: #FDF2F9;
	color: #EA6666;
	border-radius: 0 0 10px 10px;
	font-size: .9rem!important;
	font-weight: 500;
}
@media (max-width:700px) {
	.lp24-box-group .lp24-box {
		margin: 0 0 2rem;
	}
	.lp24-box-h {
		font-size: 14px!important;
	}
	.lp24-box-h strong {
		font-size: 18px!important;
	}
	.lp24-box-group .lp24-box img {
		width: 100%;
	}
}
@media (min-width:701px) {
	.lp24-box-group {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -1rem;
	}
	.lp24-box-group .lp24-box {
		flex: 1 1 45%;
		margin: 0 1rem 2rem;
	}
	.lp24-box-h {
		font-size: 1.2rem!important;
	}
	.lp24-box-h strong {
		font-size: 1.2em!important;
	}
}


/* バナー */
.lp24-sect-banners {
	background: url("../img/bg-banners.jpg") no-repeat left center;
	background-size: 100%;
}
.lp24-banner-link {
	display: block;
	margin: 0 0 2rem;
}
@media (min-width:901px) {
	.lp24-sect-banners {
		padding: 6rem 0 0;
	}
	.lp24-banner-link {
		margin: 0 0 4rem;
	}
}


/* あなたへのおすすめ */
.lp24-sect-related {
	padding: 0 0 6rem;
}
.lp24-related-h {
	color: #0068B7;
	font-size: 1.8rem!important;
	margin: 0 0 2rem;
}
.lp24-related-links a {
	display: block;
	color: #FFF;
	line-height: 0;
	font-size: 0;
}
.lp24-related-links a:active,
.lp24-related-links a:focus,
.lp24-related-links a:hover,
.lp24-related-links a:visited {
	color: #FFF;
}
.lp24-related-links a span {
	display: block;
	line-height: normal;
	font-size: 1rem;
	font-weight: bold;
	padding: .5rem 1rem;
	background: linear-gradient(90deg, #0068B7 0, #1ECBE0 100%);
}
@media (max-width:900px) {
	.lp24-related-links a {
		margin: 0 0 2rem;
	}
	.lp24-related-links a img {
		width: 100%; height: 200px;
		object-fit: cover;
	}
}
@media (min-width:901px) {
	.lp24-related-links {
		display: flex;
		margin: 0 -1rem;
	}
	.lp24-related-links a {
		flex: 1;
		margin: 0 1rem;
	}
}


/* リスト */
.lp24-dot-list {
	margin: 1rem 0;
}
.lp24-dot-list li {
	display: block;
	padding: 0 0 0 1.5rem;
}
.lp24-dot-list li::before {
	content: "・"; display: inline-block;
	position: absolute;
	top: 0; left: 0;
	width: 1rem; height: 1rem;
}


/* スライダー */
.slick-dots {
	text-align: center;
	padding: 1rem 0;
}
.slick-dots li {
	display: inline-block;
	margin: 0 5px;
}
.slick-dots button {
	font-size: 0; line-height: 0;
	width: 10px; height: 10px;
	background: #fff;
	border: 2px solid #4DA1E2;
	border-radius: 10px;
}
.slick-dots .slick-active button {
	background: #4DA1E2;
}
.slick-arrow {
	font-size: 0; line-height: 0;
	width: 35px; height: 35px;
	background: url("../img/slider-arrow.png") no-repeat center;
	background-size: contain;
	border: none;
	position: absolute;
	bottom: 3px; right: 0; left: 0;
	margin: auto;
	transform: translateX(-70px);
	z-index: 10;
}
.slick-arrow.slick-next {
	transform: rotate(180deg) translateX(-70px);
}

/* その他 */
.br { display: inline-block; }

/* スクロールバー */
::-webkit-scrollbar {
  width: .5rem;
}
::-webkit-scrollbar-track {
  background: #fff;
}
::-webkit-scrollbar-thumb {
  background: #ccc;
	border-radius: 1rem;
}
::-webkit-scrollbar-thumb:hover {
  background: #555;
	cursor: pointer;
}
