@charset "utf-8";

:root {
	/* colors */
	--beige: #998B67;
	--koi-beige: #8A7D5D;
	--usui-beige: #ADA285;
	--sapporo-pink: #F19595;
	--saitama-yellow: #FFE23C;
	--nerima-blue: #25B7C0;
	--shinkoiwa-green: #AACF53;
	--black: #000000;
	--white: #FFFFFF;
	--red: #D60000;
	--gray-eee: #EEEEEE;
	--gray-ccc: #CCCCCC;
	--gray-666: #666666;
	--line-beige: #CBC5B7;
	--btn-blue: #64AFE6;
	--btn-orange: #F77B45;
	--btn-blue-hover: #329CEA;
	--btn-orange-hover: #EA652C;
	/* typo */
	--text-fv-title: 30px;
	--text-title: 25px;
	--text-title-en: 25px;
	--text-merit-title: 22px;
	--text-base: 15px;
	--text-subtitle: 15px;
	--text-link: 14px;
	--text-sm: 14px;
	/* sp */
	--sp-text-fv-title: 24px;
	--sp-text-title: 20px;
	--sp-text-title-en: 22px;
	--sp-text-merit-title: 18px;
	--sp-text-base: 14px;

	--content-width: 1440px;
	--gothic: futura-pt, yu-gothic-pr6n, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic";
	--yu-gothic: yu-gothic-pr6n, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	--mincho: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;

	font-size: 16px;
}

@media (max-width: 959px) {
	:root {
		--text-fv-title: var(--sp-text-fv-title);
		--text-title: var(--sp-text-title);
		--text-title-en: var(--sp-text-title-en);
		--text-merit-title: var(--sp-text-merit-title);
		--text-base: var(--sp-text-base);
		/* --text-subtitle: 15px; */
		--text-link: var(--sp-text-link);
		/* --text-sm: 14px; */
	}
}

@media (max-width: 519px) {}

body {
	color: var(--black);
	font-size: var(--text-base);
	font-family: var(--gothic);
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 1px;
}

.content-width {
	max-width: var(--content-width);
	margin: auto;
}

.yu-gothic {
	font-family: var(--yu-gothic);
}

.text-fv-title {
	font-size: var(--text-fv-title);
}

.text-title {
	font-size: var(--text-title);
}

.text-title-en {
	font-size: var(--text-title-en);
}

.text-merit-title {
	font-size: var(--text-merit-title);
}

.text-base {
	font-size: var(--text-base);
}

.text-subtitle {
	font-size: var(--text-subtitle);
}

.text-link {
	font-size: var(--text-link);
}

.text-sm {
	font-size: var(--text-sm);
}

@media (min-width: 960px) {
	.hide-l  { display: none !important; }
}
@media (min-width: 520px) {
	.hide-ml  { display: none !important; }
}
@media (max-width: 959px) and (min-width: 520px) {
	.hide-m  { display: none !important; }
}
@media (max-width: 959px) {
	.hide-sm  { display: none !important; }
}
@media (max-width: 519px) {
	.hide-s  { display: none !important; }
}

.btn {
	position: relative;
	isolation: isolate;
	outline: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 18px 30px;
	background-color: var(--beige);
	overflow: hidden;
	color: var(--white);
	transform: translateZ(0);
	transition: all ease 0.3s;
}

.btn:hover {
	background-color: #827658;
}

.btn.contact {
	background-color: var(--koi-beige);
	gap: 7px;
}


.btn.contact:hover {
	background-color: #6E644A;
}

.btn.apply {
	gap: 11px;
}

.btn.contact::before {
	content: '';
	background: url(../img/icon_mail.svg) no-repeat;
	display: block;
	width: 23px;
	height: 24px;
	flex-shrink: 0;
}

.btn.apply::before {
	content: '';
	background: url(../img/icon_docs.svg) no-repeat;
	display: block;
	width: 23px;
	height: 24px;
	flex-shrink: 0;
}

.btn.arrow {
	overflow: visible;
}

.btn.arrow::after {
	content: '';
	background: url(../img/contact_arrow.svg) no-repeat;
	position: absolute;
	display: block;
	margin: auto;
	right: -30px;
	top: 0;
	bottom: 0;
	width: 63px;
	height: 14px;
}

.btn.blue {
	background-color: var(--btn-blue);
}

.btn.blue:hover {
	background-color: var(--btn-blue-hover);
}

.btn.orange {
	background-color: var(--btn-orange);
}

html[lang="en"] .btn.orange {
	line-height: 1.4;
}

.btn.orange:hover {
	background-color: var(--btn-orange-hover);
}

.area {
	display: flex;
	flex-direction: column;
}

.area .top {
	display: flex;
	align-items: center;
	font-size: 20px;
}

.area .bottom {
	font-size: var(--text-link);
}

.area .pref {
	font-size: var(--text-base);
}

.area .pref::after {
	content: '/';
	margin: 0 10px;
}


/* table_wrapper */
.table_wrapper {
  position: relative;
  overflow: auto;
  white-space: nowrap;
}
.table_wrapper::-webkit-scrollbar {
  height: 5px;
}
.table_wrapper::-webkit-scrollbar-track {
  background: #F1F1F1;
}
.table_wrapper::-webkit-scrollbar-thumb {
  background: #BCBCBC;
}
.table_wrapper::before {
  content: "右にスクロールできます";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 40px;
  margin: auto;
  padding: 5px 10px;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  color: #fff;
  font-size: 14px;
  opacity: 1;
  transition: all 0.3s ease;
  pointer-events: none;
}
.table_wrapper.scrolled::before {
  opacity: 0;
}
.table_wrapper  table {
  width: 100%;
}

.lower_fv {
	display: flex;
	justify-content: center;
	align-items: center;
	background-size: cover;
	background-position: center;
	aspect-ratio: 1440 / 500;
}
.lower_fv .page_ttl {
}
.lower_fv span {
	display: block;
	color: #fff;
	text-align: center;
}
.lower_fv .en {
	font-size: 60px;
	font-family: var(--gothic);
}
.lower_fv .ja {
	font-size: 25px;
	font-weight: bold;
}
html[lang="en"] .lower_fv .ja {
	display: none;
}
@media (max-width: 959px) {
	.lower_fv {
		aspect-ratio: 1024 / 500;
	}
	.lower_fv .en {
		font-size: 40px;
	}
	.lower_fv .ja {
		font-size: 20px;
	}
}
@media (max-width: 519px) {
	.lower_fv {
		aspect-ratio: 393 / 426;
	}
	.lower_fv .en {
		font-size: 32px;
	}
	.lower_fv .ja {
		font-size: 18px;
	}
}

#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 500;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 63px;
}

.scrolled #header {
	background: #00000066;
}

#header-logo {
	padding-left: 18px;
	margin-right: auto;
}

#header > .lang {
	color: var(--white);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px 30px;
	cursor: pointer;
}

#header .lang-pop {
	display: none;
	top: 70px;
	/* left: 0; */
	padding: 8px;
	width: 120px;
}

#header .lang-pop.active {
	display: block;
	position: absolute;
	background: var(--white);
	color: var(--black);
	border-radius: 6px;
	padding: 8px;
}

#header .lang-pop a {
    display: block;
    padding: 6px 10px;
    border-radius: 4px;
}

#header .lang-pop .selected {
	background: var(--beige);
	color: var(--white);
}

#header .lang svg {
	margin-right: 6px;
}

html[lang="ja"] #header > .btn br {
	display: none;
}

.scrolled #header > .lang,
.scrolled #header > .btn {
	display: none;
}

#header .h_right {
	display: flex;
	align-items: center;
}

/* gnavi_btn */
.gnavi_btn {
	position: relative;
	z-index: 520;
	height: 63px;
	padding: 20px;
	background-color: var(--white);
	transition: all 0.4s ease;
	cursor: pointer;
}

.gnavi_btn.open {}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all 0.3s ease;
	box-sizing: border-box;
}

.menu-trigger {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 34px;
	height: 100%;
}

.menu-trigger span {
	position: relative;
	width: 100%;
	height: 2px;
	background-color: var(--beige);
}

.gnavi_btn .menu-trigger span:nth-of-type(1) {
	top: 0%;
}

.gnavi_btn .menu-trigger span:nth-of-type(3) {
	bottom: 0%;
}

.gnavi_btn.open .menu-trigger span:nth-of-type(1) {
	top: 50%;
	transform-origin: center;
	transform: translateY(-50%) rotate(-45deg);
}

.gnavi_btn.open .menu-trigger span:nth-of-type(2) {
	opacity: 0;
}

.gnavi_btn.open .menu-trigger span:nth-of-type(3) {
	bottom: 50%;
	transform-origin: center;
	transform: translateY(50%) rotate(45deg);
}

@media (max-width: 1399px) {
	.gnavi_btn {
		display: flex;
	}
}

@media (max-width: 959px) {

	#header > .lang,
	#header > .btn {
		display: none;
	}

	.gnavi_btn {
		background-color: transparent;
	}

	.menu-trigger span {
		background-color: var(--white);
	}

	.gnavi_btn.open .menu-trigger span {
		background-color: var(--beige);
	}
}

@media (max-width: 519px) {
	.gnavi_btn {
		/* padding: 20px 15px; */
	}
}

/* .gnavi */
#header .gnavi {
	position: fixed;
	z-index: 510;
	top: 0;
	right: 0;
	opacity: 0;
	max-width: 100%;
	width: 840px;
	height: 100%;
	color: var(--black);
	transition: all ease 0.3s;
	pointer-events: none;
}

@media (max-width: 959px) {
	#header .gnavi {
		width: 100%;
	}
}

#header .gnavi.active {
	opacity: 1;
	pointer-events: initial;
}

#header .gnavi-title {
	color: var(--beige);
	position: absolute;
	top: 24px;
	right: 84px;
}

#header .gnavi .wrapper {
	max-width: 1340px;
	display: flex;
	flex-direction: row-reverse;
	height: 100%;
}

#header .gnavi .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 60px;
}

#header .gnavi .wrapper > div {
	width: 50%;
	padding-top: 137px;
	padding-bottom: 10px;
	overflow-y: auto;
}

#header .gnavi .right {
	background-color: var(--white);
}

#header .gnavi .left {
	background-color: rgba(0, 0, 0, 0.8);
	color: var(--white);
}

#header .gnavi .left .content {
	max-width: 300px;
	margin: auto;
}

@media (max-width: 959px) {
	#header .gnavi .left .content {
		max-width: 250px;
	}
}

#header .gnavi .left .btns .btn {
	justify-content: flex-start;
}

#header .gnavi .lang {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

#header .gnavi .lang select {
	color: var(--black);
	background: var(--white);
	border: 1px solid #888888;
	padding: 18px;
	cursor: pointer;
	width: 100%;
	text-align: center;
}

#header .gnavi .lang svg {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 30%;
	margin: auto;
	color: var(--beige);
}

#header .gnavi .btns li + li {
	margin-top: 30px;
}

#header .gnavi .btns .btn {
	width: 100%;
}

html[lang="ja"] #header .gnavi .btns .btn br {
	display: none;
}

#header .gnavi .sns {
	margin: 30px 0;
	display: flex;
	align-items: center;
	gap: 20px 10px;
}

#header .gnavi .sns-logo {
	display: flex;
	gap: 15px;
}

#header .gnavi .logo {
	margin-top: 80px;
	text-align: center;
}

#header .gnavi .list-top {
	margin-bottom: 20px;
}

#header .gnavi .right .content {
	max-width: 230px;
	margin: auto;
}

#header .gnavi .right ul + ul {
	margin-top: 20px;
}

#header .gnavi .right li + li {
	margin-top: 10px;
}

#header .gnavi .list-area a {
	border-bottom: 1px solid #000000;
}

#header .gnavi .list-area a::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	transition: all ease 0.3s;
}

#header .gnavi .list-area a svg {
	position: absolute;
	right: 35px;
	top: 0;
	bottom: 0;
	margin: auto;
}

.sapporo .bottom,
.sapporo svg {
	color: var(--sapporo-pink);
}

.sapporo a:hover::before {
	background: #FCEAEA;
}

.sapporo svg {
	position: absolute;
	right: 35px;
}

.nerima .bottom,
.nerima svg {
	color: var(--nerima-blue);
}

.nerima a:hover::before {
	background: #E9F8F9;
}

.shinkoiwa .bottom,
.shinkoiwa svg {
	color: var(--shinkoiwa-green);
}

.shinkoiwa a:hover::before {
	background: #F7FAEE;
}

.shiki .bottom,
.shiki svg {
	color: var(--saitama-yellow);
}

.shiki a:hover::before {
	background: #FFFCEC;
}

#header .gnavi .right li a {
	display: block;
	position: relative;
	padding: 10px;
}

#header .gnavi .right li a:hover {
}

#header .gnavi .right li a::after {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	display: block;
	width: 19px;
	height: 14px;
	background: url(../img/navi_arrow.svg) no-repeat;
	transition: all ease 0.3s;
}

#header .gnavi .right li a:hover::after {
	translate: 10px;
}

#header .gnavi .lang.sp {
	display: none;
}

@media (max-width: 519px) {
	#header .gnavi .wrapper {
		flex-direction: column;
	}

	#header .gnavi .wrapper {
		overflow-y: auto;
		position: relative;
	}

	#header .gnavi .wrapper > div {
		width: 100%;
		overflow-y: initial;
	}

	#header .gnavi .wrapper > div.right {
		padding-top: 66px;
		padding-bottom: 20px;
	}

	#header .gnavi .wrapper > div.left {
		padding-top: 40px;
		padding-bottom: 50px;
	}

	#header .gnavi .left .content,
	#header .gnavi .right .content {
		max-width: 80%;
	}

	#header .gnavi .logo {
		margin-top: 40px;
	}

	#header .gnavi .list-area a svg {
		right: auto;
		left: 140px;
	}

	#header .gnavi .lang.pc {
		display: none;
	}

	#header .gnavi .lang.sp {
		display: flex;
		margin-bottom: 30px;
	}
}



/* ---------- footer ---------- */
#footer_contact {
	padding: 80px 0;
	background-image: url("../img/footer_contact_bg.webp");
	background-size: cover;
	background-position: center;
	color: #fff;
	text-align: center;
}
#footer_contact .inner {
	max-width: 750px;
	padding-inline: 20px;
	margin-inline: auto;
}
#footer_contact .ttl {
}
#footer_contact .ttl .en {
	font-size: 14px;
	line-height: 1.3;
}
#footer_contact h2 {
	margin-top: 20px;
	font-size: 20px;
	font-weight: bold;
	line-height: 2;
}
#footer_contact .content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px 30px;
	margin-top: 30px;
}
#footer_contact .contact,
#footer_contact .apply {
}
#footer_contact .contact {
}
#footer_contact .apply {
}
#footer_contact .contact a,
#footer_contact .apply a {
	display: block;
	height: 100%;
	padding: 20px;
	background-color: rgba(0, 0, 0, 0.6);
	border: 1px solid;
}
#footer_contact .contact a img,
#footer_contact .apply a img {
	width: 46px;
}
#footer_contact .contact a div,
#footer_contact .apply a div {
	position: relative;
	width: fit-content;
	margin-top: 30px;
	margin-inline: auto;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
}
#footer_contact .contact a div::after,
#footer_contact .apply a div::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: -35px;
	display: block;
	margin-top: auto;
	margin-bottom: auto;
	width: 20px;
	height: 8px;
	background-image: url("../img/navi_arrow_white.svg");
	transition: all ease 0.3s;
}
#footer_contact .contact a:hover div::after,
#footer_contact .apply a:hover div::after {
	right: -45px;
}
#footer_contact .sns {
	grid-column: 1 / 3;
	display: flex;
	gap: 40px;
	justify-content: center;
	align-items: center;
	padding: 20px;
	background-color: rgba(0, 0, 0, 0.6);
	border: 1px solid;
}
#footer_contact .subttl {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
}
#footer_contact ul {
	display: flex;
	justify-content: center;
	gap: 20px;
}
#footer_contact li {
}
#footer_contact li a {
}
#footer_contact li img {
	width: 30px;
}
@media (max-width: 959px) {
}
@media (max-width: 519px) {
	#footer_contact {
		background-image: url("../img/footer_contact_bg_sp.webp");
	}
	#footer_contact h2 {
		margin-top: 10px;
	}
	#footer_contact .content {
		display: block;
		max-width: 300px;
		margin-inline: auto;
	}
	#footer_contact .contact,
	#footer_contact .apply {
		margin-bottom: 20px;
	}
	#footer_contact .contact a div,
	#footer_contact .apply a div {
		margin-top: 15px;
	}
	#footer_contact .sns {
		display: block;
		padding: 30px 20px;
	}
	#footer_contact ul {
		margin-top: 15px;
	}
}


#footer_banner {
	position: fixed;
	z-index: 450;
	right: 16px;
	bottom: 14px;
	max-width: calc(100% - 30px);
}
#footer_banner a {
	transition: all ease 0.3s;
}
#footer_banner a:hover {
	opacity: 0.8;
}
#footer_banner img {
	max-width: 100%;
}
#footer_banner .close {
	position: absolute;
	right: 0;
	top: -14px;
	width: 32px;
	height: 32px;
	background-color: rgba(0, 0, 0, 0.7);
	border-radius: 50px;
	cursor: pointer;
}
#footer_banner .close::before,
#footer_banner .close::after {
	content: "";
	position: absolute;
	inset: 0;
	display: block;
	width: 2px;
	height: 18px;
	margin: auto;
	background-color: #fff;
	border-radius: 10px;
}
#footer_banner .close::before {
	transform: rotate(45deg);
}
#footer_banner .close::after {
	transform: rotate(-45deg);
}
@media (max-width: 519px) {
	#footer_banner {
		bottom: 80px;
	}
}


#footer {
	max-width: 1100px;
	margin: auto;
	padding-top: 70px;
	padding-bottom: 13px;
}

#footer .content {
	display: flex;
	gap: 10px 60px;
	justify-content: space-between;
}

@media (max-width: 959px) {
	#footer {
		padding-bottom: 70px;
	}

	#footer .content {
		flex-direction: column;
		align-items: center;
		padding: 0 30px;
	}

	#footer .content .left {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		border-bottom: 1px solid var(--gray-ccc);
	}
}

#footer .sns {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 30px 0;
}

#footer .sns-logo {
	display: flex;
	gap: 10px;
}

#footer .sns-logo a {
	display: flex;
	border-radius: 6px;
	box-shadow: 0px 0px 10px 0px #0000001A;
	padding: 6px;
}

.sns-logo a:hover {
	opacity: 0.9;
}

@media (max-width: 959px) {
	#footer .btns {
		display: none;
	}
}

#footer .btns li + li {
	margin-top: 10px;
}

#footer .btns .btn {
	justify-content: flex-start;
	width: 275px;
}

html[lang="en"] #footer .btns .btn {
	line-height: 1.4;
}

html[lang="ja"] #footer .btns .btn br {
	display: none;
}

#footer .content .right .top {
	display: flex;
	gap: 50px 100px;
	border-bottom: 1px solid #CCCCCC;
	padding-bottom: 30px;
}

@media (max-width: 959px) {
	#footer .content .right {
		width: 100%;
		padding-top: 30px;
	}

	#footer .content .right .top {
		flex-wrap: wrap;
		border-bottom: none;
	}
}

#footer .address li + li {
	margin-top: 20px;
}

#footer .area {
	flex-direction: row;
}

html[lang="en"] #footer .menu {
	flex-shrink: 0;
	width: 160px;
}

@media (max-width: 959px) {
	#footer .menu {
		width: 100%;
	}
}

#footer .menu li + li {
	margin-top: 10px;
}

#footer .menu a {
	position: relative;
	display: inline-block;
	padding: 8px 0;
}

#footer .menu a::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 10px;
	width: 0px;
	height: 1px;
	background-color: var(--beige);
	transition: all ease 0.3s;
}

#footer .menu a:hover::before {
	width: 100%;
}

@media (max-width: 959px) {
	#footer .menu a {
		display: block;
	}
}

#footer .content .right .bottom {
	display: flex;
	justify-content: space-between;
	padding-top: 30px;
	gap: 20px 40px;
}

#footer .content .right .bottom .logo {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}

#footer .company .text a {
	color: var(--beige);
	text-decoration: underline;
}

#footer .company .text a:hover {
	text-decoration: none;
}

#footer .company .text .address {
	margin: 12px 0;
}

#footer .company .text .sp {
	display: none;
}

@media (max-width: 959px) {
	#footer .content .right .bottom {
		/* background: var(--gray-eee); */
		flex-direction: column;
		align-items: flex-start;
		padding: 30px;
		border-image: linear-gradient(var(--gray-eee), var(--gray-eee)) fill 0 / 1 / 0 100vw 0 100vw;
	}

	#footer .content .right .bottom .logo {
		flex-direction: row-reverse;
	}

	#footer .company .text .sp {
		display: inline;
	}
}

#footer .ttl {
	color: var(--beige);
	font-size: var(--text-base);
	margin-bottom: 20px;
}

.copyright {
	margin-top: 50px;
	text-align: right;
	font-size: 11px;
}

@media (max-width: 959px) {
	.copyright {
		margin-top: 0;
		text-align: center;
		padding-top: 10px;
	}
}

#contact-menu {
	position: fixed;
	left: 62px;
	bottom: 38px;
	width: 415px;
	z-index: 1;
}

#contact-menu .pc {
	display: none;
	/* display: flex; */
	align-items: center;
	flex-direction: column;
	gap: 6px;
	color: var(--black);
	width: 100%;
}

.scrolled #contact-menu .pc {
	color: var(--white);
}

#contact-menu .pc .btns {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 62px;
	opacity: 0;
	pointer-events: none;
	color: var(--white);
	transition: all ease 0.3s;
}

.scrolled #contact-menu .pc .btns {
	opacity: 1;
	pointer-events: initial;
}

#contact-menu .pc .btns a {
	position: relative;
	isolation: isolate;
	outline: none;
	display: block;
	width: 50%;
	height: 100%;
	overflow: hidden;
	transform: translateZ(0);
	transition: all ease 0.3s;
}

#contact-menu .pc .btns a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform 0.3s ease 0s;
}

#contact-menu .pc .btns a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

#contact-menu .pc .btns span {
	position: relative;
	z-index: 3;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
	padding: 4px 28px;
	line-height: 1.4;
}

html[lang="en"] #contact-menu .pc .btns span {
	padding: 4px 20px;
}

#contact-menu .pc .btns span::after {
	content: '';
	position: absolute;
	right: 28px;
	top: 0;
	bottom: 0;
	margin: auto;
	display: block;
	width: 19px;
	height: 14px;
	background: url(../img/navi_arrow_white.svg) no-repeat;
	transition: all ease 0.3s;
}

html[lang="en"] #contact-menu .pc .btns span::after {
	right: 12px;
}

#contact-menu .pc .btns span:hover::after {
	translate: 10px;
}

#contact-menu .pc .btns .contact {
	background: var(--btn-orange);
}

#contact-menu .pc .btns .contact::before {
	background-color: var(--btn-orange-hover);
}

#contact-menu .pc .btns .apply {
	background: var(--btn-blue);
}

#contact-menu .pc .btns .apply::before {
	background-color: var(--btn-blue-hover);
}

#contact-menu .pc .sns {
	color: var(--black);
	background: #FFFFFFCC;
	border: 1px solid var(--line-beige);
	width: 100%;
	height: 62px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 4px 28px;
	transition: all ease 0.3s;
}

.scrolled #contact-menu .pc .sns {
	color: var(--white);
	background: var(--usui-beige);
}

#contact-menu .pc .sns-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	border-left: 1px solid var(--white);
	padding-left: 28px;
	gap: 16px;
}

#contact-menu .pc .sns-logo .w {
	display: none;
}

.scrolled #contact-menu .pc .sns-logo .w {
	display: block;
}

.scrolled #contact-menu .pc .sns-logo .n {
	display: none;
}

#contact-menu .sp {
	display: none;
}

@media (max-width: 959px) {
	#contact-menu {
		left: 0;
		bottom: 0;
		width: 100%;
		overflow: hidden;
	}

	#contact-menu .pc {
		display: none;
	}

	#contact-menu .sp {
		display: flex;
		height: 62px;
		overflow: hidden;
	}

	#contact-menu .sp a {
		width: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 6px;
		line-height: 1.4;
	}

	#contact-menu .apply {
		color: var(--white);
		background: var(--beige);
	}

	#contact-menu .contact {
		color: var(--white);
		background: var(--koi-beige);
	}

	#contact-menu .line {
		color: var(--beige);
		background: var(--white);
	}

	#contact-menu .line .text {
		text-align: center;
	}
}



/* ----- wp-activate.php ----- */
#signup-content {
	padding: 200px 0 100px;
	background-image: linear-gradient(to bottom, #00000066 66px, transparent 66px);
}