@charset "UTF-8";

/*
Theme Name: child
Theme URI:
Description:
Template: twentytwentyone
Author: makesview
Author URI: https://makes-view.co.jp/
Version: 1.0.0
*/

:root {
	--main-color: #000;
	--sub-color: #fff;
}

body {
	color: #363738;
	font-size: 16px;
	line-height: 1.7;
	-webkit-text-size-adjust: 100%;
	min-width: 1440px;
	font-family: "Noto Sans JP", sans-serif;
	background: linear-gradient(#f5f7f0 0%, #fffef5 0%, #f8fff7 45.81%, #f7fbff 100%);
}

.wrap {
	width: 1140px;
	margin: 0 auto;
}

.wrap.mid {
	width: 1240px;
}

.wrap.lr {
	width: 1340px;
}

/* PC固定ページ 共通設定 */
.common_page_main {
	background: #F5F5F5;
	padding-block: 140px;
	margin-block: 0 1em;
}

.common_page_main .title_box {
	text-align: center;
}

.common_page_main .title_box .title {
	font-size: 40px;
	letter-spacing: .08em;
	font-weight: 700;
	line-height: 1.5;
}

.common_page_wrap {
	padding: 100px 0;
}

.not_found .text {
	text-align: center;
}

.reserve_text {
	text-align: center;
	font-size: 30px;
}

/* パンくず */
.breadcrumb {
	font-size: 12px;
	color: #3E3E3E;
	letter-spacing: .08em;
}

.breadcrumb a {
	text-decoration: none;
	color: #3E3E3E;
}

/* PC固定ページ お問い合わせ */
.contact_form_disc {
	color: #3E3E3E;
	letter-spacing: .08em;
	font-weight: 400;
	text-align: center;
	margin-block: 0 3.8em;
}

.contact_form_disc .text {
	font-size: 16px;
	margin-block: 0 1em;
}

.contact_form_disc .caution {
	font-size: 14px;
}

.common_contact_form .form_box {
	margin-block: 0 50px;
}

.common_contact_form .form_box dl {
	display: grid;
	grid-template-columns: 26.5% 1fr;
	align-items: center;
	gap: 80px;
}

.common_contact_form .form_box dl.start {
	align-items: flex-start;
}

.common_contact_form .form_box dl+dl {
	margin-block: 1.6em 0;
}

.common_contact_form .form_box dl dt {
	display: flex;
	align-items: center;
	gap: 1.3em;
	font-size: 16px;
	letter-spacing: .08em;
	font-weight: 700;
	padding-inline: 0 0.5em;
	position: relative;
}

.common_contact_form .form_box dl dt .label {
	flex-shrink: 0;
	color: #3E3E3E;
	font-size: 12px;
	letter-spacing: .2em;
	font-weight: 700;
	border-radius: 100vmax;
	padding: 0.2em 0.9em;
}

.common_contact_form .form_box dl dt .label.hissu {
	background: #C70000;
	color: #fff;
}

.common_contact_form .form_box dl dt .label.ninni {
	background: #E0E0E0;
}

.common_contact_form .form_box dl dt::after {
	content: "";
	width: 1px;
	height: 30px;
	background: #AAA;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.common_contact_form input[type="text"],
.common_contact_form input[type="email"],
.common_contact_form #zip {
	width: 100%;
	background: #F8F8F8;
	border: 1px solid #E6E6E6;
	border-radius: 4px;
	font-size: 14px;
	letter-spacing: .08em;
	font-weight: 400;
	padding: 0.8em 1em;
}

.common_contact_form textarea {
	width: 100%;
	height: 180px;
	background: #F8F8F8;
	border: 1px solid #E6E6E6;
	border-radius: 4px;
	padding: 1em;
	font-size: 14px;
	letter-spacing: .08em;
	font-weight: 400;
}

.common_contact_form input::placeholder,
.common_contact_form textarea::placeholder {
	color: #C7C4C4;
}

.common_contact_form select {
	width: 47.5%;
	background: #F8F8F8;
	border: 1px solid #E6E6E6;
	border-radius: 4px;
	font-size: 14px;
	letter-spacing: .08em;
	padding: 1.1em 1em;
}

.common_contact_form select.empty {
	color: #C7C4C4;
}

.page_contact #btn_wrap {
	justify-content: center;
	text-align: right;
	width: 74%;
	margin: auto;
}

.page_contact #btn_wrap button {
	background-color: var(--main-color);
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	color: #fff;
	display: block;
	width: 310px;
	line-height: 60px;
	font-size: 18px;
	font-weight: 900;
	transition: .3s;
	text-align: center;
	letter-spacing: .08em;
	margin: auto;
}

.page_contact #btn_wrap button[name="submitBack"] {
	background: #333;
	margin-top: 20px;
}

.page_contact #btn_wrap button:hover {
	opacity: .8;
}

.privacy_term_outer .privacy_term_inner {
	height: 138px;
	margin: auto;
	overflow: auto;
}

.privacy_term_outer .privacy_term_inner .privacy_index {
	font-size: 14px;
}

.privacy_term_outer .privacy_term_inner .main_text {
	font-size: 13px;
	margin-bottom: 25px;
}

.privacy_term_outer .privacy_term_inner dl dt {
	font-size: 13px;
	border-left: solid 3px #ccc;
	padding-left: 1em;
	margin-bottom: 5px;
}

.privacy_term_outer .privacy_term_inner dl dd {
	font-size: 13px;
}

.privacy_term_outer .privacy_term_inner dl+dl {
	margin-top: 30px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar {
	width: 8px;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-track {
	background: transparent;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-thumb {
	background-color: #333;
	border-radius: 10px;
}

.privacy_term_outer {
	border-top: solid 1px #e3e3e3;
	padding: 30px 0;
	border-bottom: solid 1px #e3e3e3;
	width: 60%;
	margin: 0 auto 50px;
}

.privacy_check_list .mwform-checkbox-field-text {
	padding-right: 0;
}

.privacy_check_list .error {
	font-size: 12px;
}

.privacy_term_detail {
	text-align: center;
	font-size: 13px;
	margin: 20px 0;
	position: relative;
	font-weight: 600;
}

.privacy_term_detail::after {
	content: "";
	margin: 5px auto 0;
	border: solid #333;
	border-width: 2px 2px 0 0;
	width: 10px;
	aspect-ratio: 1 / 1;
	min-width: 0;
	rotate: 135deg;
	display: block;
}

.mw_wp_form_confirm .privacy_check_list,
.mw_wp_form_confirm .privacy_term_detail {
	display: none;
}

/* ラジオボタン デザイン */
.radio_btns,
.checkboxes {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em 1.5em;
	padding: .5em 0;
}

/* ラジオボタンを隠す */
.radio_btns input[type=radio].radio_btns__item {
	display: none;
}

.radio_btns label {
	display: inline-block;
	cursor: pointer;
}

/* spanの左側にボタンを配置するスペースを作る */
.radio_btns .radio_btns__item+span {
	color: #3E3E3E;
	font-size: 15px;
	letter-spacing: .08em;
	font-weight: 600;
	padding-left: 2em;
	display: inline-block;
	position: relative;
}

/* 各パーツを作成 */
.radio_btns .radio_btns__item+span::before,
.radio_btns .radio_btns__item+span::after {
	content: '';
	display: block;
	position: absolute;
	border: 1px solid #E6E6E6;
	background: #F8F8F8;
	border-radius: 50%;
	width: 20px;
	aspect-ratio: 1;
	min-width: 0;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}

/* after上書き */
.radio_btns .radio_btns__item+span::after {
	width: 10px;
	aspect-ratio: 1;
	min-width: 0;
	top: 0px;
	left: 5px;
	border: none;
	background: #5A5A5A;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	transition: all .3s;
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.radio_btns .radio_btns__item:checked+span::after {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

/* チェックボックス デザイン */
.page_contact input[type="checkbox"] {
	/* デフォルトcheckボックス非表示*/
	display: none;
}

.mwform-checkbox-field label {
	cursor: pointer;
}

.mwform-checkbox-field-text {
	color: #3E3E3E;
	font-size: 15px;
	letter-spacing: .08em;
	font-weight: 600;
	display: inline-block;
	position: relative;
	padding: 0 0 0 30px;
}

.mwform-checkbox-field-text::before,
.mwform-checkbox-field-text::after {
	content: "";
	position: absolute;
	display: block;
}

.mwform-checkbox-field-text::before {
	background: #F8F8F8;
	border: 1px solid #E6E6E6;
	border-radius: 2px;
	width: 20px;
	aspect-ratio: 1 / 1;
	min-width: 0;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.mwform-checkbox-field-text::after {
	border-width: 3px;
	border-color: transparent transparent #333 #333;
	border-style: solid;
	width: 20px;
	aspect-ratio: 2/1;
	min-width: 0;
	margin-top: -0.2em;
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(-45deg);
	opacity: 0;
}

input[type="checkbox"]:checked+.mwform-checkbox-field-text::after {
	opacity: 1;
}

.mw_wp_form .horizontal-item {
	display: inline-block;
}

.mw_wp_form .horizontal-item+.horizontal-item {
	margin-left: 0 !important;
}

/* サンクスページ */

.page_contact .thanks_textArea .name {
	font-size: 16px;
	line-height: 2;
	text-align: center;
	margin-bottom: 20px;
}

.page_contact .thanks_textArea .contact_text {
	margin: 0 auto 50px;
	width: 62%;
}

.page_contact .thanks_textArea .ichiran_link {
	background-color: var(--main-color);
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	color: #fff;
	display: block;
	width: 300px;
	line-height: 50px;
	border-radius: 4px;
	font-size: 16px;
	transition: .3s;
	margin: 0 auto;
	text-decoration: none;
	font-weight: 600;
	letter-spacing: .08em;
	text-align: center;
}

.page_contact .thanks_textArea .ichiran_link:hover {
	opacity: .8;
}

.page_contact .thanks_textArea .contact_text .space {
	display: block;
}

.page_contact .thanks_textArea .contact_text .space {
	display: block;
	margin-top: 10px;
}

/* ステップバー デザイン */
.page_contact .progressbar {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5.6em;
	margin-block: 0 3em;
}

.page_contact .progressbar .item {
	color: #3E3E3E;
	font-size: 14px;
	letter-spacing: .08em;
	font-weight: 400;
	text-align: center;
	line-height: 1.5;
	position: relative;
}

.page_contact .progressbar .item+.item::before {
	content: "";
	width: 50px;
	height: 1px;
	background: #E6E6E6;
	position: absolute;
	top: 64%;
	left: -5em;
}

.page_contact .progressbar .item .mark {
	width: 36px;
	aspect-ratio: 1;
	background: #fff;
	border: 1px solid #AFAFAF;
	border-radius: 50%;
	display: block;
	margin: 0 auto 0.5em;
	position: relative;
}

.page_contact .progressbar .item .mark::before {
	content: "";
	width: 41%;
	aspect-ratio: 1;
	background: #5A5A5A;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	opacity: 0;
}

.page_contact .progressbar .item.active .mark::before {
	opacity: 1;
}

.page_contact .progressbar .item .en {
	display: block;
	color: #A7A7A7;
	letter-spacing: 0;
	font-family: 'Helvetica', 'Arial', sans-serif;
}

.privacy_check_list {
	justify-content: center;
	align-items: center;
	margin-bottom: 25px;
}

.privacy_check_list .hissu {
	background: #c70200;
	color: #fff;
	padding: 2px 15px;
	font-size: 10px;
	letter-spacing: .08em;
	border-radius: 30px;
	font-weight: 600;
}

.mw_wp_form .privacy_check_list .horizontal-item {
	margin: 0;
}

/* PC固定ページ 404ページ */
#page_404 {
	text-align: center;
}

#page_404 .num {
	font-size: 100px;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#page_404 .text {
	margin-bottom: 1em;
	font-size: 16px;
}

/* PC固定ページ アーカイブページ */
/* 投稿リスト表示 */
.archive_page_list>article {
	padding-bottom: 15px;
	padding-top: 15px;
	border-bottom: 1px dashed #eee;
	padding-right: 30px;
}

.archive_page_list>article:after {
	content: "";
	position: absolute;
	width: 10px;
	height: 10px;
	top: 0;
	right: 5px;
	bottom: 0;
	margin: auto;
	border: solid #ccc;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg);
}

.archive_page_list>article .date {
	font-weight: bold;
	font-size: 80%;
	width: 100px;
}

.archive_page_list>article .content_area {
	width: calc(100% - 100px);
}

.archive_page_list>article .content_area .ttl {
	font-weight: bold;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.archive_page_list>article .content_area .content {
	font-size: 80%;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

/* wp-pagenavi base */
.wp-pagenavi {
	text-align: center;
	margin-top: 50px;
}

.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
	color: #999;
	background-color: #FFF;
	border: solid 1px #e0e0d2;
	padding: 8px 15px;
	margin: 0 2px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration: none;
}

.wp-pagenavi a:hover {
	color: #FFF;
	background-color: var(--main-color);
	border-color: var(--main-color);
}

.wp-pagenavi .current {
	color: #FFF;
	background-color: var(--main-color);
	border-color: var(--main-color);
	font-weight: bold;
}


/* -----------------------------------------------------------------------------------------------------------------------------------
↓↓↓ stlink CSS (pc)
----------------------------------------------------------------------------------------------------------------------------------- */


@font-face {
	src: url("/wp-content/themes/child/font/QuotesScript-Regular.woff") format("woff");
	font-family: "QuotesScript";
}

.font_quotes {
	font-family: "QuotesScript", sans-serif;
}

.font_barlow {
	font-family: "Barlow Condensed", sans-serif;
}

main {
	overflow: hidden;
}

html {
	scroll-behavior: smooth;
}

html.active {
	overflow: hidden;
}

/* 共通部分 (pc) ------------------------------------------------------------------------------------------------------ */

span,
a {
	display: inline-block;
	font-weight: inherit;
}

body figure {
	margin: 0;
}

img {
	-o-object-fit: cover;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

a.common_btn {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 0;
	position: relative;
	align-items: center;
	aspect-ratio: 320/70;
	width: 320px;
	padding: 0 20px;
	background-color: #363738;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
	transition: background 0.3s ease 0s;
}

a.common_btn::after {
	aspect-ratio: 1/1;
	width: 20px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/common_arrow_white.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

a.common_btn::before {
	-webkit-transform: scaleX(0);
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	-webkit-transform-origin: top left;
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: top left;
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

a.common_btn:hover::before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}

.common_recruit {
	padding: 100px 0 90px;
	background-image: url(/wp-content/themes/child/image/common_recruit_bg.webp);
	background-position: center center;
	background-size: cover;
	color: #FFF;
	position: relative;
	z-index: 10;
}

.common_recruit .recruit_heading_en {
	z-index: 0;
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

.common_recruit .recruit_heading_en::before {
	z-index: -10;
	position: absolute;
	top: -40px;
	right: -125px;
	aspect-ratio: 150/109;
	width: 150px;
	background-image: url(/wp-content/themes/child/image/common_recruit_deco.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.common_recruit .recruit_heading_ja {
	margin-top: 10px;
	font-weight: 500;
	font-size: 16px;
	text-align: center;
}

.common_recruit .recruit_text {
	margin-top: 10px;
	font-weight: 500;
	font-size: 16px;
	text-align: center;
}

.common_recruit .recruit_btns {
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 20px;
	justify-content: center;
	margin-top: 50px;
}

.common_recruit .recruit_btn {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 0;
	position: relative;
	align-items: center;
	aspect-ratio: 280/60;
	width: 280px;
	padding: 0 20px;
	background-color: #FFF;
	color: #363738;
	font-weight: 700;
	font-size: 16px;
	transition: background 0.3s ease 0s;
}

.common_recruit .recruit_btn::after {
	-webkit-transition: background 0.3s ease 0s;
	aspect-ratio: 1/1;
	width: 20px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/common_arrow_black.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

.common_recruit .recruit_btn::before {
	-webkit-transform: scaleX(0);
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	-webkit-transform-origin: top left;
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: top left;
	background-color: #363738;
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.common_recruit .recruit_btn:hover {
	color: #FFF;
}

.common_recruit .recruit_btn:hover::before {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}

.common_recruit .recruit_btn:hover::after {
	background-image: url(/wp-content/themes/child/image/common_arrow_white.svg);
}

.common_recruit .recruit_entry {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 280/60;
	width: 280px;
	margin: 20px auto 0;
	padding: 0 20px;
	background-color: #8FC31F;
	color: #FFF;
	font-weight: 700;
	font-size: 24px;
	text-transform: uppercase;
	transition: background 0.3s ease 0s;
}

.common_recruit .recruit_entry:hover {
	background-color: #45B035;
}

.common_recruit .recruit_entry::before {
	aspect-ratio: 1/1;
	width: 18px;
	margin-right: 10px;
	background-image: url(/wp-content/themes/child/image/entry_icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.common_recruit .recruit_entry::after {
	aspect-ratio: 1/1;
	width: 20px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/entry_arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.common_fv {
	z-index: 10;
	position: relative;
	margin-top: 80px;
	padding-top: 100px;
}

.common_fv .wrap {
	width: 1340px;
}

.common_fv .common_fv_heading {
	padding-left: 50px;
}

.common_fv .common_fv_heading_en {
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

.common_fv .common_fv_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 25px;
	padding: 3px 15px;
	background-color: #45B035;
	color: #FFF;
	font-weight: 700;
	font-size: 20px;
}

.common_fv .common_fv_bread {
	margin-top: 55px;
	padding-left: 50px;
}

.common_fv .common_fv_items {
	-ms-flex-wrap: wrap;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 20px;
	flex-wrap: wrap;
}

.common_fv .common_fv_items span a span {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #363738;
	transition: opacity 0.3s ease 0s;
}

.common_fv .common_fv_items span a span:hover {
	opacity: 0.7;
}

.common_fv .common_fv_items span>span {
	color: #BEBEBE;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.common_fv .common_fv_img {
	height: 320px;
	margin-top: 55px;
}

.common_section {
	padding: 150px 0;
}

.common_fade {
	-webkit-transform: translateY(100px);
	transform: translateY(100px);
	opacity: 0;
}

/* pagenavi (pc) -------------------------------------------------------------------------------------------------------------------- */

.wp-pagenavi a,
.wp-pagenavi span {
	border: 1px solid #151515;
	background-color: #FFF;
	color: #151515;
}

.wp-pagenavi a:hover {
	border: 1px solid transparent !important;
	background-color: #151515 !important;
	color: #FFF;
}

.wp-pagenavi span.current {
	border: 1px solid transparent !important;
	background-color: #151515;
	color: #FFF;
}

/* header (pc) ------------------------------------------------------------------------------------------------------ */

.header {
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.16);
	z-index: 30;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	min-width: 1440px;
	height: 80px;
	background-color: #FFF;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.16);
}

.header .header_inner {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	height: inherit;
	padding: 0 50px;
}

.header .header_logo {
	-webkit-transition: opacity 0.3s ease 0s;
	aspect-ratio: 200/46;
	width: 200px;
	background-image: url(/wp-content/themes/child/image/common_logo_green.svg);
	background-size: contain;
	background-repeat: no-repeat;
	transition: opacity 0.3s ease 0s;
}

.header .header_logo:hover {
	opacity: 0.7;
}

.header .header_nav {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	height: inherit;
	margin-left: auto;
}

.header .header_items {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 35px;
	-moz-column-gap: 35px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 35px;
	align-items: center;
	height: inherit;
}

.header .header_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	align-items: center;
	height: inherit;
}

.header .header_link {
	-webkit-transition: opacity 0.3s ease 0s;
	position: relative;
	color: #363738;
	font-weight: 700;
	font-size: 14px;
	transition: opacity 0.3s ease 0s;
}

.header .header_link:hover {
	opacity: 0.7;
}

.header .header_lead {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-weight: 700;
	font-size: 14px;
	cursor: pointer;
}

.header .header_lead::after {
	-webkit-transform: translateY(-2px) rotate(135deg);
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	aspect-ratio: 1/1;
	width: 5px;
	margin-left: 8px;
	transform: translateY(-2px) rotate(135deg);
	border: 1px solid #151515;
	border-bottom: none;
	border-left: none;
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.header .header_lead.is_active::after {
	-webkit-transform: translateY(1px) rotate(-45deg);
	transform: translateY(1px) rotate(-45deg);
}

.header .header_drawer {
	-webkit-transform: translateX(-50%);
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.16);
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	width: 200px;
	padding: 15px 0 15px 20px;
	transform: translateX(-50%);
	background-color: #FFF;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.16);
}

.header .drawer_link {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #363738;
	font-weight: 500;
	font-size: 13px;
	transition: opacity 0.3s ease 0s;
}

.header .drawer_link:hover {
	opacity: 0.7;
}

.header .header_entry {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 180/45;
	width: 180px;
	margin-left: 55px;
	padding: 0 20px;
	background-color: #8FC31F;
	color: #FFF;
	font-weight: 700;
	text-transform: uppercase;
	transition: background 0.3s ease 0s;
}

.header .header_entry:hover {
	background-color: #45B035;
}

.header .header_entry::before {
	aspect-ratio: 1/1;
	width: 15px;
	margin-right: 5px;
	background-image: url(/wp-content/themes/child/image/entry_icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.header .header_entry::after {
	aspect-ratio: 1/1;
	width: 16px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/entry_arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.header.top_page {
	-webkit-box-shadow: none;
	background-color: initial;
	box-shadow: none;
}

.header.top_page .header_logo {
	background-image: url(/wp-content/themes/child/image/common_logo_white.svg);
}

.header.top_page .header_link {
	color: #FFF;
}

.header.top_page .header_lead {
	color: #FFF;
}

.header.top_page .header_lead::after {
	border: 1px solid #FFF;
	border-bottom: none;
	border-left: none;
}

/* footer (pc) ------------------------------------------------------------------------------------------------------ */

.footer {
	background-color: #EFEFEF;
	position: relative;
	z-index: 10;
}

.footer .footer_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	padding: 150px 0 90px;
}

.footer .footer_logo {
	-webkit-transition: opacity 0.3s ease 0s;
	width: 280px;
	transition: opacity 0.3s ease 0s;
}

.footer .footer_logo:hover {
	opacity: 0.7;
}

.footer .footer_recruit {
	margin-top: 10px;
	font-weight: 700;
	font-size: 12px;
}

.footer .footer_recruit span {
	font-size: 16px;
	margin-left: 0.5em;
}

.footer .footer_address {
	margin-top: 20px;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.5;
}

.footer .footer_tel {
	margin-top: 20px;
	color: #363738;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
	text-transform: uppercase;
}

.footer .footer_tel span {
	font-size: 32px;
}

.footer .footer_time {
	margin-top: 10px;
	font-weight: 500;
	font-size: 14px;
}

.footer .footer_entry {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 280/60;
	width: 280px;
	margin-top: 30px;
	padding: 0 20px;
	background-color: #8FC31F;
	color: #FFF;
	font-weight: 700;
	font-size: 24px;
	text-transform: uppercase;
	transition: background 0.3s ease 0s;
}

.footer .footer_entry:hover {
	background-color: #45B035;
}

.footer .footer_entry::before {
	aspect-ratio: 1/1;
	width: 18px;
	margin-right: 10px;
	background-image: url(/wp-content/themes/child/image/entry_icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.footer .footer_entry::after {
	aspect-ratio: 1/1;
	width: 20px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/entry_arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.footer .footer_links {
	-webkit-column-gap: 80px;
	-moz-column-gap: 80px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 80px;
	margin-right: 50px;
	margin-left: auto;
}

.footer .footer_lead {
	font-weight: 700;
	font-size: 16px;
}

.footer .footer_text {
	padding-left: 15px;
	font-weight: 500;
	font-size: 14px;
}

.footer .footer_text+.footer_text,
.footer .footer_lead+.footer_text {
	margin-top: 15px;
}

.footer .footer_text+.footer_lead {
	margin-top: 55px;
}

.footer .footer_lead+.footer_lead {
	margin-top: 35px;
}

.footer a.footer_lead,
.footer a.footer_text {
	-webkit-transition: opacity 0.3s ease 0s;
	display: block;
	color: #363738;
	transition: opacity 0.3s ease 0s;
}

.footer a.footer_lead:hover,
.footer a.footer_text:hover {
	opacity: 0.7;
}

.footer .footer_bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 25px 0 50px;
	border-top: 1px solid #BEBEBE;
}

.footer .footer_group {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 10px;
	align-items: center;
}

.footer .footer_icon {
	width: 50px;
}

.footer .footer_company {
	font-weight: 600;
	font-size: 12px;
	line-height: 1.4;
}

.footer .footer_outer {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: end;
	-ms-flex-align: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	margin-left: auto;
}

.footer .footer_others {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 30px;
	align-items: center;
}

.footer .footer_other {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #363738;
	font-weight: 500;
	font-size: 12px;
	transition: opacity 0.3s ease 0s;
}

.footer .footer_other:hover {
	opacity: 0.7;
}

.footer .footer_copy {
	margin-top: 5px;
	font-weight: 500;
	font-size: 12px;
}

.footer .footer_copy small {
	font-size: 100%;
}

.fix_btn {
	display: none;
}

/* top_fv (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_fv {
	position: relative;
	height: 100vh;
}

.top_fv .fv_heading {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding-top: 80px;
	color: #FFF;
	font-weight: 600;
	font-size: 40px;
	letter-spacing: 0.05em;
}

.top_fv .fv_img {
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.top_fv .fv_img video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* top_message (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_message {
	padding-top: 180px;
}

.top_message .message_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 120px;
	-moz-column-gap: 120px;
	display: grid;
	position: relative;
	grid-template-columns: 430px 1fr;
	column-gap: 120px;
	align-items: center;
}

.top_message .message_wrapper::before {
	z-index: -10;
	position: absolute;
	top: -180px;
	left: -310px;
	aspect-ratio: 750/1063;
	width: 750px;
	background-image: url(/wp-content/themes/child/image/top_message_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_message .message_body {
	position: relative;
}

.top_message .message_body::before {
	z-index: -10;
	position: absolute;
	right: -100px;
	bottom: -165px;
	aspect-ratio: 250/266;
	width: 250px;
	background-image: url(/wp-content/themes/child/image/top_message_deco3.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_message .message_img {
	aspect-ratio: 430/580;
}

.top_message .message_heading_en {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

.top_message .message_heading_en::before {
	z-index: -10;
	position: absolute;
	top: -70px;
	right: -105px;
	aspect-ratio: 150/140;
	width: 150px;
	background-image: url(/wp-content/themes/child/image/top_message_deco2.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_message .message_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 25px;
	padding: 3px 15px;
	background-color: #45B035;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

.top_message .message_text {
	margin-top: 30px;
	font-weight: 500;
	font-size: 18px;
	line-height: 2;
}

.top_message .message_text+.message_text {
	margin-top: 40px;
}

/* top_job (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_job {
	padding-top: 180px;
	padding-bottom: max(calc(200/1440*100vw), 200px);
	padding-bottom: 200px;
}

.top_job .job_heading {
	-webkit-box-align: end;
	-ms-flex-align: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-end;
}

.top_job .job_heading_en {
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

.top_job .job_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-bottom: 10px;
	margin-left: 10px;
	padding: 3px 15px;
	background-color: #0081CC;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

.top_job .job_items {
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	display: grid;
	grid-template-columns: repeat(3, 360px);
	column-gap: 30px;
	margin-top: 40px;
}

.top_job .job_item {
	-webkit-transition: margin 0.3s ease 0s;
	z-index: 10;
	position: relative;
	aspect-ratio: 360/350;
	padding: 15px;
	background-position: center center;
	background-size: cover;
	transition: margin 0.3s ease 0s;
}

.top_job .job_item::before {
	z-index: 10;
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_job .job_item::after {
	position: absolute;
	right: 25px;
	bottom: 25px;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/top_job_arrow1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_job .job_item:nth-child(1) {
	background-image: url(/wp-content/themes/child/image/top_job_bg1.webp);
}

.top_job .job_item:nth-child(1)::before {
	top: -50px;
	right: -30px;
	aspect-ratio: 170/152;
	width: 170px;
	background-image: url(/wp-content/themes/child/image/top_job_deco1.webp);
}

.top_job .job_item:nth-child(1)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow1.svg);
}

.top_job .job_item:nth-child(2) {
	z-index: 5;
	background-image: url(/wp-content/themes/child/image/top_job_bg2.webp);
}

.top_job .job_item:nth-child(2)::before {
	bottom: -80px;
	left: -65px;
	aspect-ratio: 180/186;
	width: 180px;
	background-image: url(/wp-content/themes/child/image/top_job_deco2.webp);
}

.top_job .job_item:nth-child(2)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow2.svg);
}

.top_job .job_item:nth-child(2) .job_title span {
	margin-left: 5px;
}

.top_job .job_item:nth-child(3) {
	background-image: url(/wp-content/themes/child/image/top_job_bg3.webp);
}

.top_job .job_item:nth-child(3)::before {
	top: -45px;
	right: -45px;
	aspect-ratio: 170/152;
	width: 170px;
	background-image: url(/wp-content/themes/child/image/top_job_deco3.webp);
}

.top_job .job_item:nth-child(3)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow3.svg);
}

.top_job .job_item:nth-child(3) .job_title span {
	margin-right: 5px;
}

.top_job .job_item:hover {
	margin-top: -10px;
}

.top_job .job_item:hover .job_wrapper::before {
	opacity: 0.5;
}

.top_job .job_wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 0;
	position: relative;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.top_job .job_wrapper::before {
	-webkit-backdrop-filter: blur(25px);
	-webkit-transition: opacity 0.3s ease 0s;
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(25px);
	background: transparent;
	background-color: rgba(0, 0, 0, 0.05);
	content: "";
	transition: opacity 0.3s ease 0s;
}

.top_job .job_number {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #FFF;
	font-weight: 700;
	font-size: 24px;
	text-transform: uppercase;
}

.top_job .job_number::after {
	width: 2px;
	height: 25px;
	margin-top: 0;
	background-color: #FFF;
	content: "";
}

.top_job .job_title {
	margin-top: 10px;
	color: #FFF;
	font-weight: 700;
	font-size: 24px;
}

.top_job .job_title span {
	padding: 0 5px;
	background-color: #FFF;
	color: #363738;
}

.top_job .job_img {
	height: 145px;
	margin-top: 20px;
}

.top_job .job_img img {
	width: auto;
}

/* top_interview (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_interview {
	overflow: hidden;
	padding-top: 800px;
	margin-top: -800px;
}

.top_interview .interview_heading_en {
	position: relative;
	color: #FFF;
	font-size: 144px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

.top_interview .interview_heading_en::after {
	-webkit-transform: translateX(-50%);
	z-index: -5;
	position: absolute;
	bottom: min(calc(-274/1440*100vw), -274px);
	left: max(calc(50% + calc(100/1440*100vw)), calc(50% + 100px));
	aspect-ratio: 1231/884;
	width: calc(1231/1440*100vw);
	min-width: 1231px;
	transform: translateX(-50%);
	background-image: url(/wp-content/themes/child/image/top_interview_deco.webp);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top;
	content: "";
}

.top_interview .interview_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 15px auto 0;
	padding: 0 15px;
	background-color: #005BAC;
	color: #FFF;
	font-weight: 700;
	font-size: 32px;
	line-height: 1.5;
}

.top_interview .interview_wrapper {
	position: relative;
	margin-top: -140px;
	padding-top: 160px;
	padding-bottom: 140px;
}

.top_interview .interview_wrapper::before {
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(/wp-content/themes/child/image/top_interview_bg.webp);
	background-size: cover;
	content: "";
}

.top_interview .top_interview_swiper {
	margin: 0 -20px;
	padding: 75px 20px 110px;
}

.top_interview .interview_info {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: -25px;
	right: -25px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1/1;
	width: 120px;
	border-radius: 50%;
	background-color: #FCCE25;
	color: #FFF;
	font-weight: 700;
	opacity: 0;
}

.top_interview .interview_title {
	font-size: 16px;
}

.top_interview .interview_year {
	font-size: 14px;
}

.top_interview .swiper-slide {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	position: relative;
	width: 320px;
	height: 480px;
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.top_interview .swiper-slide::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 185, 239, 0)), color-stop(84.24%, rgba(0, 140, 207, 0.1)), to(rgba(0, 91, 172, 0.6)));
	background: linear-gradient(rgba(0, 185, 239, 0) 0%, rgba(0, 140, 207, 0.1) 84.24%, rgba(0, 91, 172, 0.6) 100%);
	content: "";
}

.top_interview .swiper-slide::after {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, left top, left bottom, from(#005bac), color-stop(58.7%, #0081cc), to(#00b9ef));
	background: linear-gradient(#005bac 0%, #0081cc 58.7%, #00b9ef 100%);
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.top_interview .swiper-slide:hover::after {
	-webkit-transform: rotate(5deg);
	transform: rotate(5deg);
}

.top_interview .swiper-slide.swiper-slide-active {
	-webkit-transform: scale(1.187);
	transform: scale(1.187);
}

.top_interview .swiper-slide.swiper-slide-active .interview_info,
.top_interview .swiper-slide.swiper-slide-active .interview_text {
	opacity: 1;
}

.top_interview .swiper-slide.swiper-slide-active .interview_number {
	top: 20px;
	left: 20px;
	font-size: 72px;
}

.top_interview .swiper-slide.swiper-slide-active .interview_number span {
	font-size: 14px;
}

.top_interview .interview_number {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: 15px;
	left: 15px;
	align-items: center;
	color: #0081CC;
	font-weight: 700;
	font-size: 56px;
	line-height: 1;
}

.top_interview .interview_number span {
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	margin-top: 5px;
	margin-right: 5px;
	font-size: 12px;
	text-transform: uppercase;
	writing-mode: vertical-lr;
}

.top_interview .interview_img {
	width: 100%;
	height: 100%;
}

.top_interview .interview_text {
	position: absolute;
	bottom: 20px;
	left: -10px;
	line-height: 1.9;
	opacity: 0;
}

.top_interview .interview_text span {
	display: inline;
	padding: 2px 10px;
	background: -webkit-gradient(linear, left top, left bottom, from(#363738), to(#363738));
	background: linear-gradient(#363738, #363738);
	background-position: bottom left;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	color: #FFF;
	font-weight: 700;
	font-size: 20px;
	text-decoration: none;
}

.top_interview .swiper-pagination {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 20px;
	justify-content: center;
}

.top_interview .swiper-pagination-bullet {
	width: 15px;
	height: 15px;
	margin: 0 !important;
	background-color: #D5E8F8;
	opacity: 1;
}

.top_interview .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #0081CC;
}

.top_interview .interview_btn {
	margin: 35px auto 0;
}

.top_interview .interview_btn::before {
	background-color: #0081CC;
}

/* top_company (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_company {
	padding-top: 180px;
	padding-bottom: 100px;
	overflow: hidden;
}

.top_company .company_heading {
	-webkit-box-align: end;
	-ms-flex-align: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-end;
}

.top_company .company_heading_en {
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

.top_company .company_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-bottom: 5px;
	margin-left: 20px;
	padding: 3px 15px;
	background-color: #FF8C03;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

.top_company .company_mission {
	position: relative;
	margin-top: 50px;
}

.top_company .company_mission::after {
	-webkit-transform: translateY(-50%);
	z-index: -10;
	position: absolute;
	top: calc(50% - 100px);
	right: -630px;
	transform: translateY(-50%);
	aspect-ratio: 1569/1214;
	width: 1569px;
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_company .mission_lead {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.top_company .mission_lead_en {
	font-weight: 700;
	font-size: 24px;
	text-transform: uppercase;
}

.top_company .mission_lead_ja {
	margin-left: 20px;
	font-weight: 700;
	font-size: 16px;
}

.top_company .mission_copy {
	font-weight: 700;
	font-size: 56px;
	line-height: 1.3;
}

.top_company .mission_copy span {
	color: #FF8C00;
}

.top_company .mission_text {
	margin-top: 25px;
	font-weight: 500;
	font-size: 20px;
	line-height: 2;
}

.top_company .mission_btn {
	z-index: 10;
	position: relative;
	margin-top: 40px;
}

.top_company .mission_btn::before {
	background-color: #FFB300;
}

.top_company .top_company_swiper {
	margin: -160px calc(50% - 50vw) 0;
	padding-top: 180px;
	padding-bottom: 50px;
}

.top_company .swiper-wrapper {
	-webkit-transition-timing-function: linear;
	transition-timing-function: linear;
}

.top_company .swiper-slide {
	width: 300px;
	height: 300px;
	margin-top: 180px;
}

.top_company .company_greeting {
	position: relative;
	margin: -320px calc(50% - 50vw) 0 -100px;
	padding: 270px 0 180px 100px;
	background-image: url(/wp-content/themes/child/image/top_company_bg.webp);
	background-position: center center;
	background-size: cover;
	color: #FFF;
}

.top_company .company_greeting::before {
	position: absolute;
	bottom: -90px;
	left: -130px;
	aspect-ratio: 350/328;
	width: 350px;
	background-image: url(/wp-content/themes/child/image/top_company_deco2.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_company .greeting_wrapper {
	-webkit-column-gap: 120px;
	-moz-column-gap: 120px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 1fr 581px;
	column-gap: 120px;
	align-items: center;
	max-width: 1140px;
}

.top_company .greeting_lead {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.top_company .greeting_lead_en {
	font-weight: 700;
	font-size: 24px;
	text-transform: uppercase;
}

.top_company .greeting_lead_ja {
	margin-left: 20px;
	font-weight: 700;
	font-size: 16px;
}

.top_company .greeting_copy {
	margin-top: 10px;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.3;
}

.top_company .greeting_text {
	font-weight: 500;
	font-size: 16px;
}

.top_company .greeting_text+.greeting_text {
	margin-top: 30px;
}

.top_company .greeting_btn {
	margin-top: 35px;
}

.top_company .greeting_btn::before {
	background-color: #FFC92E;
}

/* top_environment (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_environment {
	margin-top: -140px;
	padding: 120px 0 150px;
	overflow: hidden;
}

.top_environment .environment_heading_en {
	margin-left: -50px;
	font-size: 144px;
	line-height: 1.5;
	text-transform: uppercase;
	opacity: 0.1;
}

.top_environment .environment_heading_ja {
	margin-top: -100px;
	font-weight: 700;
	font-size: 56px;
	line-height: 1;
}

.top_environment .environment_items {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	display: grid;
	position: relative;
	grid-template-columns: repeat(2, 545px);
	column-gap: 50px;
	margin-top: 50px;
}

.top_environment .environment_items::before {
	-webkit-transform: translateY(-50%);
	position: absolute;
	top: calc(50% - 100px);
	right: -360px;
	aspect-ratio: 825/1417;
	width: 825px;
	transform: translateY(-50%);
	background-image: url(/wp-content/themes/child/image/top_environment_deco.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_environment .environment_item {
	position: relative;
	aspect-ratio: 545/350;
}

.top_environment .environment_item::before {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #363738;
	content: "";
	opacity: 0.55;
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.top_environment .environment_item::after {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	z-index: 10;
	position: absolute;
	right: 50px;
	bottom: 50px;
	aspect-ratio: 1/1;
	width: 30px;
	background-image: url(/wp-content/themes/child/image/common_arrow_white.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

.top_environment .environment_item:nth-child(2) {
	margin-top: -50px;
}

.top_environment .environment_item:hover::before {
	-webkit-transform: scaleX(0.963) scaleY(0.943);
	transform: scaleX(0.963) scaleY(0.943);
}

.top_environment .environment_item:hover::after {
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}

.top_environment .environment_img {
	width: 100%;
	height: 100%;
}

.top_environment .environment_title {
	position: absolute;
	bottom: 50px;
	left: 50px;
	color: #FFF;
}

.top_environment .environment_title_en {
	font-weight: 700;
	font-size: 24px;
	text-transform: uppercase;
}

.top_environment .environment_title_ja {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
}

/* page_philosophy (pc) ------------------------------------------------------------------------------------------------------ */

#page_philosophy {
	overflow: initial;
}

#page_philosophy .philosophy {
	margin-top: -300px;
	padding-top: 460px;
	overflow: hidden;
}

#page_philosophy .philosophy .philosophy_mission {
	position: relative;
}

#page_philosophy .philosophy .philosophy_mission::after {
	-webkit-transform: translateY(-50%);
	z-index: -10;
	position: absolute;
	top: calc(50% - 100px);
	right: -630px;
	aspect-ratio: 1569/1214;
	width: 1569px;
	transform: translateY(-50%);
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_philosophy .philosophy .mission_heading {
	-webkit-box-align: end;
	-ms-flex-align: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-end;
}

#page_philosophy .philosophy .mission_heading_en {
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

#page_philosophy .philosophy .mission_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-bottom: 10px;
	margin-left: 30px;
	padding: 3px 15px;
	background-color: #FF8C03;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_philosophy .philosophy .mission_copy {
	margin-top: 50px;
	font-weight: 700;
	font-size: 56px;
	line-height: 1.3;
}

#page_philosophy .philosophy .mission_copy span {
	color: #FF8C00;
}

#page_philosophy .philosophy .mission_text {
	margin-top: 25px;
	font-weight: 500;
	font-size: 20px;
	line-height: 2;
}

#page_philosophy .philosophy .philosophy_swiper {
	margin: -160px calc(50% - 50vw) 0;
	padding-top: 180px;
	padding-bottom: 50px;
}

#page_philosophy .philosophy .swiper-wrapper {
	-webkit-transition-timing-function: linear;
	transition-timing-function: linear;
}

#page_philosophy .philosophy .swiper-slide {
	width: 300px;
	height: 300px;
	margin-top: 180px;
}

#page_philosophy .philosophy .philosophy_vision {
	margin: -320px calc(50% - 50vw) 0 -100px;
	padding: 300px 0 180px 100px;
	background-image: url(/wp-content/themes/child/image/top_company_bg.webp);
	background-position: center center;
	background-size: cover;
	color: #FFF;
}

#page_philosophy .philosophy .vision_wrapper {
	-webkit-column-gap: 80px;
	-moz-column-gap: 80px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 1fr 825px;
	column-gap: 80px;
	align-items: center;
	max-width: 1140px;
}

#page_philosophy .philosophy .vision_heading_en {
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

#page_philosophy .philosophy .vision_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 20px;
	padding: 3px 15px;
	background-color: #8FC31F;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_philosophy .philosophy .vision_lead {
	font-weight: 700;
	font-size: 48px;
	line-height: 1.5;
}

#page_philosophy .philosophy .vision_lead span {
	color: #D2FF71;
}

#page_philosophy .philosophy .vision_text {
	margin-top: 35px;
	font-weight: 500;
	font-size: 20px;
	line-height: 2;
}

#page_philosophy .value {
	padding-top: 150px;
}

#page_philosophy .value .value_heading_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_philosophy .value .value_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 20px auto 0;
	padding: 3px 15px;
	background-color: #FCCE25;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_philosophy .value .value_items {
	-ms-flex-wrap: wrap;
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 30px;
	row-gap: 50px;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 55px;
}

#page_philosophy .value .value_item {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 0;
	position: relative;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	aspect-ratio: 360/350;
	width: 360px;
	background-position: center center;
	background-size: cover;
	color: #FFF;
}

#page_philosophy .value .value_item::before {
	-webkit-transform: translate(-50%, -50%);
	-webkit-backdrop-filter: blur(35px);
	z-index: -10;
	position: absolute;
	top: 50%;
	left: 50%;
	width: calc(100% - 30px);
	height: calc(100% - 30px);
	transform: translate(-50%, -50%);
	backdrop-filter: blur(35px);
	background: transparent;
	background-color: rgba(0, 0, 0, 0.05);
	content: "";
}

#page_philosophy .value .value_item::after {
	position: absolute;
	width: 170px;
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_philosophy .value .value_item:nth-child(1) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg1.webp);
}

#page_philosophy .value .value_item:nth-child(1)::after {
	top: -60px;
	right: -30px;
	aspect-ratio: 170/152;
	width: 170px;
	background-image: url(/wp-content/themes/child/image/philosophy_deco1.webp);
}

#page_philosophy .value .value_item:nth-child(2) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg2.webp);
}

#page_philosophy .value .value_item:nth-child(2)::after {
	bottom: -50px;
	left: -60px;
	aspect-ratio: 180/186;
	width: 180px;
	background-image: url(/wp-content/themes/child/image/philosophy_deco2.webp);
}

#page_philosophy .value .value_item:nth-child(3) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg3.webp);
}

#page_philosophy .value .value_item:nth-child(3)::after {
	top: -40px;
	right: -40px;
	aspect-ratio: 170/142;
	width: 170px;
	background-image: url(/wp-content/themes/child/image/philosophy_deco3.webp);
}

#page_philosophy .value .value_item:nth-child(4) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg4.webp);
}

#page_philosophy .value .value_item:nth-child(4)::after {
	bottom: -50px;
	left: -45px;
	aspect-ratio: 170/195;
	width: 170px;
	background-image: url(/wp-content/themes/child/image/philosophy_deco4.webp);
}

#page_philosophy .value .value_item:nth-child(5) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg5.webp);
}

#page_philosophy .value .value_item:nth-child(5)::after {
	top: -35px;
	right: -70px;
	aspect-ratio: 170/178;
	width: 170px;
	background-image: url(/wp-content/themes/child/image/philosophy_deco5.webp);
}

#page_philosophy .value .value_heading {
	padding: 0 15px;
	background-color: #FFF;
	color: #363738;
	font-weight: 700;
	font-size: 32px;
}

#page_philosophy .value .value_lead {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	align-items: center;
	font-weight: 700;
	font-size: 16px;
}

#page_philosophy .value .value_lead::after {
	width: 2px;
	height: 20px;
	margin-top: 5px;
	background-color: #FFF;
	content: "";
}

#page_philosophy .value .value_text {
	margin-top: 5px;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.5;
	text-align: center;
}

#page_philosophy .message {
	padding: 250px 0 250px;
}

#page_philosophy .message .message_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 120px;
	-moz-column-gap: 120px;
	display: grid;
	position: relative;
	grid-template-columns: 430px 1fr;
	column-gap: 120px;
	align-items: center;
}

#page_philosophy .message .message_wrapper::before {
	z-index: -10;
	position: absolute;
	top: -180px;
	left: -310px;
	aspect-ratio: 750/1063;
	width: 750px;
	background-image: url(/wp-content/themes/child/image/top_message_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_philosophy .message .message_body {
	position: relative;
}

#page_philosophy .message .message_body::before {
	z-index: -10;
	position: absolute;
	right: -100px;
	bottom: -165px;
	aspect-ratio: 250/266;
	width: 250px;
	background-image: url(/wp-content/themes/child/image/top_message_deco3.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_philosophy .message .message_img {
	aspect-ratio: 430/580;
}

#page_philosophy .message .message_heading_en {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	font-size: 88px;
	line-height: 1;
	text-transform: uppercase;
}

#page_philosophy .message .message_heading_en::before {
	z-index: -10;
	position: absolute;
	top: -70px;
	right: -105px;
	aspect-ratio: 150/140;
	width: 150px;
	background-image: url(/wp-content/themes/child/image/top_message_deco2.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_philosophy .message .message_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-top: 25px;
	padding: 3px 15px;
	background-color: #45B035;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_philosophy .message .message_text {
	margin-top: 30px;
	font-weight: 500;
	font-size: 18px;
	line-height: 2;
}

#page_philosophy .message .message_text+.message_text {
	margin-top: 40px;
}

#page_philosophy .message .message_name {
	margin-top: 50px;
	font-weight: 700;
	font-size: 18px;
}

#page_philosophy .message .message_name span {
	margin-left: 10px;
	font-size: 24px;
}

/* page_business (pc) ------------------------------------------------------------------------------------------------------ */

#page_business {
	overflow: initial;
}

#page_business .business .business_wrap {
	position: relative;
	overflow: hidden;
	padding-top: 500px;
	margin-top: -500px;
}

#page_business .business .business_wrap::before {
	position: absolute;
	aspect-ratio: 1569/1214;
	width: 800px;
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	right: -100px;
	top: 150px;
	z-index: -10;
	transform: rotate(270deg);
}

#page_business .business .business_links {
	-webkit-column-gap: 1.5%;
	-moz-column-gap: 1.5%;
	display: grid;
	grid-template-columns: repeat(2, 49.25%);
	column-gap: 1.5%;
	row-gap: 20px;
	position: relative;
}

#page_business .business .business_link {
	z-index: 0;
	position: relative;
	padding: 30px 20px;
	background-position: center center;
	background-size: cover;
	color: #FFF;
}

#page_business .business .business_link:nth-child(1) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg1.webp);
}

#page_business .business .business_link:nth-child(2) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg2.webp);
}

#page_business .business .business_link:nth-child(3) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg4.webp);
}

#page_business .business .business_link:nth-child(4) {
	background-image: url(/wp-content/themes/child/image/philosophy_bg3.webp);
}

#page_business .business .business_link::before {
	-webkit-transform: translate(-50%, -50%);
	-webkit-backdrop-filter: blur(25px);
	-webkit-transition: opacity 0.3s ease 0s;
	z-index: -10;
	position: absolute;
	top: 50%;
	left: 50%;
	width: calc(100% - 20px);
	height: calc(100% - 20px);
	transform: translate(-50%, -50%);
	backdrop-filter: blur(25px);
	background: transparent;
	background-color: rgba(0, 0, 0, 0.1);
	content: "";
	transition: opacity 0.3s ease 0s;
}

#page_business .business .business_link::after {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	position: absolute;
	right: 25px;
	bottom: 25px;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/top_job_arrow1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

#page_business .business .business_link:nth-child(1)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow1.svg);
}

#page_business .business .business_link:nth-child(2)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow2.svg);
}

#page_business .business .business_link:nth-child(3)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow4.svg);
}

#page_business .business .business_link:nth-child(4)::after {
	background-image: url(/wp-content/themes/child/image/top_job_arrow3.svg);
}

#page_business .business .business_link:hover::after {
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
}

#page_business .business .link_heading {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 21px;
}

#page_business .business .link_heading span {
	margin-right: 5px;
	font-size: 28px;
}

#page_business .business .link_text {
	font-weight: 500;
	font-size: 16px;
	text-align: center;
}

#page_business .business .business_wrapper {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	display: grid;
	position: relative;
	grid-template-columns: 400px 1fr;
	column-gap: 50px;
	margin-top: 100px;
}

#page_business .business .business_head {
	position: relative;
}

#page_business .business .business_lists::before {
	position: absolute;
	aspect-ratio: 1569/1214;
	width: 1000px;
	background-image: url(/wp-content/themes/child/image/common_deco_yellow.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	left: -600px;
	bottom: -800px;
	z-index: -10;
}

#page_business .business .business_lists {
	position: sticky;
	top: 120px;
	z-index: 0;
}

#page_business .business .business_list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: color 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	color: #363738;
	transition: color 0.3s ease 0s;
}

#page_business .business .business_list+.business_list {
	margin-top: 15px;
}

#page_business .business .business_list:nth-child(1).is_active,
#page_business .business .business_list:nth-child(1):hover,
#page_business .business .business_item:nth-child(1) .business_heading {
	color: #FCCE25;
}

#page_business .business .business_list:nth-child(2).is_active,
#page_business .business .business_list:nth-child(2):hover,
#page_business .business .business_item:nth-child(2) .business_heading {
	color: #45B035;
}

#page_business .business .business_list:nth-child(3).is_active,
#page_business .business .business_list:nth-child(3):hover,
#page_business .business .business_item:nth-child(3) .business_heading {
	color: #FF8C00;
}

#page_business .business .business_list:nth-child(4).is_active,
#page_business .business .business_list:nth-child(4):hover,
#page_business .business .business_item:nth-child(4) .business_heading {
	color: #005BAC;
}

#page_business .business .business_item:nth-child(1) .other_title {
	background-color: #FCCE25;
}

#page_business .business .business_item:nth-child(2) .other_title {
	background-color: #45B035;
}

#page_business .business .business_item:nth-child(3) .other_title {
	background-color: #FF8C00;
}

#page_business .business .business_item:nth-child(4) .other_title {
	background-color: #005BAC;
}

#page_business .business .business_num {
	margin-right: 5px;
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
}

#page_business .business .business_message {
	font-weight: 700;
	font-size: 18px;
}

#page_business .business .business_items {
	position: relative;
	z-index: 10;
}

#page_business .business .business_item+.business_item {
	margin-top: 80px;
}

#page_business .business .business_heading {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	color: #FF8C00;
	font-weight: 700;
	font-size: 28px;
}

#page_business .business .business_heading span {
	margin-right: 5px;
	font-size: 42px;
}

#page_business .business .business_lead {
	margin-top: 10px;
	font-weight: 700;
	font-size: 21px;
}

#page_business .business .business_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 16px;
}

#page_business .business .business_img {
	aspect-ratio: 5/3;
	margin-top: 20px;
	overflow: hidden;
	border-radius: 10px;
}

#page_business .business .business_other {
	margin-top: 30px;
}

#page_business .business .other_title {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 3px 15px;
	background-color: #FF8C00;
	color: #FFF;
	font-weight: 700;
	font-size: 18px;
}

#page_business .business .other_lead {
	margin-top: 10px;
	font-weight: 700;
	font-size: 21px;
}

#page_business .business .other_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 16px;
}

/* page_schedule (pc) ------------------------------------------------------------------------------------------------------ */

#page_schedule {
	overflow: initial;
}

#page_schedule .schedule {
	position: relative;
	overflow: hidden;
	padding-top: 500px;
	margin-top: -350px;
}

#page_schedule .schedule::before {
	width: 800px;
	right: -100px;
	top: 150px;
	position: absolute;
	aspect-ratio: 1569/1214;
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	z-index: -10;
	transform: rotate(270deg);
}

#page_schedule .schedule .schedule_lead {
	font-weight: 700;
	font-size: 24px;
}

#page_schedule .schedule .schedule_text {
	margin-top: 10px;
	font-weight: 500;
	font-size: 18px;
}

#page_schedule .schedule .schedule_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	display: grid;
	grid-template-columns: 500px 1fr;
	column-gap: 50px;
	align-items: center;
	margin-top: 40px;
}

#page_schedule .schedule .schedule_img {
	aspect-ratio: 10/7;
}

#page_schedule .schedule .schedule_class {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 3px 15px;
	background-color: #FCCE25;
	color: #FFF;
	font-weight: 500;
	font-size: 16px;
}

#page_schedule .schedule .schedule_name {
	font-weight: 700;
	font-size: 32px;
}

#page_schedule .schedule .schedule_year {
	font-weight: 500;
	font-size: 16px;
}

#page_schedule .schedule .schedule_info {
	margin-top: 30px;
	font-weight: 500;
}

#page_schedule .schedule .schedule_time {
	margin-top: 100px;
	font-size: 60px;
	text-transform: uppercase;
}

#page_schedule .schedule .schedule_items {
	margin-top: 20px;
	position: relative;
}

#page_schedule .schedule .schedule_items::before {
	aspect-ratio: 750/1063;
	width: 750px;
	background-image: url(/wp-content/themes/child/image/top_message_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	position: absolute;
	top: 100px;
	right: -250px;
}


#page_schedule .schedule .schedule_item {
	-webkit-column-gap: 60px;
	-moz-column-gap: 60px;
	display: grid;
	position: relative;
	grid-template-columns: 1fr 400px;
	column-gap: 60px;
}

#page_schedule .schedule .schedule_item+.schedule_item {
	margin-top: 50px;
}

#page_schedule .schedule .schedule_item::before {
	position: absolute;
	top: 40px;
	left: 10px;
	width: 10px;
	height: calc(100% + 40px);
	background-color: rgba(69, 176, 53, 0.5);
	content: "";
}

#page_schedule .schedule .schedule_item:last-child::before {
	display: none;
}

#page_schedule .schedule .item_head {
	padding-left: 50px;
}

#page_schedule .schedule .item_time {
	position: relative;
	color: #45B035;
	font-weight: 700;
	font-size: 60px;
	line-height: 1;
}

#page_schedule .schedule .item_time::before,
#page_schedule .schedule .item_time::after {
	position: absolute;
	aspect-ratio: 1/1;
	border-radius: 50%;
	content: "";
}

#page_schedule .schedule .item_time::before {
	top: 19px;
	left: -50px;
	width: 30px;
	background-color: #45B035;
}

#page_schedule .schedule .item_time::after {
	top: 24px;
	left: -45px;
	width: 20px;
	background-color: #FFF;
}

#page_schedule .schedule .item_lead {
	margin-top: 10px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.5;
}

#page_schedule .schedule .item_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 16px;
}

#page_schedule .schedule .item_img {
	aspect-ratio: 10/7;
}

#page_schedule .schedule .schedule_lists {
	position: relative;
	margin-top: 20px;
}

#page_schedule .schedule .schedule_lists::before {
	position: absolute;
	content: "";
	width: 600px;
	aspect-ratio: 1045/1416;
	background-image: url(/wp-content/themes/child/image/common_deco_blue.webp);
	background-size: contain;
	background-repeat: no-repeat;
	bottom: -500px;
	left: -400px;
	z-index: -10;
	transform: rotate(-45deg);
}

#page_schedule .schedule .schedule_list {
	position: relative;
	padding-left: 40px;
}

#page_schedule .schedule .schedule_list+.schedule_list {
	margin-top: 50px;
}

#page_schedule .schedule .schedule_list::before {
	position: absolute;
	top: 30px;
	left: 7px;
	width: 7px;
	height: calc(100% + 40px);
	content: "";
	background-color: #005BAC;
	opacity: 0.5;
}

#page_schedule .schedule .schedule_list:last-child::before {
	display: none;
}

#page_schedule .schedule .list_time {
	position: relative;
	color: #005BAC;
	font-weight: 700;
	font-size: 40px;
	line-height: 1;
}

#page_schedule .schedule .list_time::before {
	position: absolute;
	top: 14px;
	left: -40px;
	aspect-ratio: 1/1;
	width: 20px;
	border-radius: 50%;
	background-color: #005BAC;
	content: "";
}

#page_schedule .schedule .list_text {
	margin-top: 10px;
	font-weight: 500;
	font-size: 16px;
}

/* page_numbers (pc) ------------------------------------------------------------------------------------------------------ */

#page_numbers .work {
	padding-top: 150px;
}

#page_numbers .work .wrap {
	width: 1340px;
}

#page_numbers .work .work_heading_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_numbers .work .work_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 10px auto 0;
	padding: 3px 15px;
	background-color: #0081CC;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_numbers .work .work_items {
	-webkit-column-gap: 1.33%;
	-moz-column-gap: 1.33%;
	display: grid;
	grid-template-columns: repeat(3, 32%);
	column-gap: 1.33%;
	row-gap: 20px;
	margin-top: 30px;
	position: relative;
	z-index: 0;
}

#page_numbers .work .work_items::after {
	position: absolute;
	content: "";
	width: 600px;
	aspect-ratio: 1045/1416;
	background-image: url(/wp-content/themes/child/image/common_deco_blue.webp);
	background-size: contain;
	background-repeat: no-repeat;
	top: -550px;
	right: -200px;
	z-index: -10;
	transform: rotate(-45deg);
}

#page_numbers .work .work_items::before {
	position: absolute;
	content: "";
	width: 800px;
	aspect-ratio: 1045/1416;
	background-image: url(/wp-content/themes/child/image/common_deco_blue.webp);
	background-size: contain;
	background-repeat: no-repeat;
	top: 50%;
	transform: translateY(-50%);
	left: -450px;
	z-index: -10;
}

#page_numbers .work .work_item {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	padding: 30px;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	background-color: #FFF;
}

#page_numbers .work .work_img {
	width: 20%;
	margin: 0 auto;
}

#page_numbers .work .work_lead {
	margin-top: 10px;
	font-weight: 700;
	font-size: 21px;
	text-align: center;
}

#page_numbers .work .work_number {
	font-weight: 700;
	font-size: 16px;
	text-align: center;
}

#page_numbers .work .work_number span {
	margin: 0 3px;
	color: #0081CC;
	font-size: 56px;
}

#page_numbers .work .work_lists {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 20px;
	justify-content: center;
}

#page_numbers .work .work_text {
	margin-top: 5px;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.5;
}

#page_numbers .work .graph_items {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-column-gap: 12px;
	-moz-column-gap: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 12px;
	justify-content: center;
	margin-top: 20px;
}

#page_numbers .work .graph_item {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
}

#page_numbers .work .graph_number {
	margin-bottom: 5px;
	font-weight: 700;
	font-size: 13px;
}

#page_numbers .work .graph_text {
	margin-top: 5px;
	font-weight: 700;
	font-size: 13px;
}

#page_numbers .work .graph_bar {
	-webkit-transform: scaleY(0);
	-webkit-transform-origin: bottom center;
	width: 30px;
	margin: 0 auto;
	transform: scaleY(0);
	transform-origin: bottom center;
	background-color: #0081CC;
}

#page_numbers .work .work_item.salary .graph_item:nth-child(1) .graph_bar {
	height: 116.85px;
}

#page_numbers .work .work_item.salary .graph_item:nth-child(2) .graph_bar {
	height: 147.34px;
}

#page_numbers .work .work_item.salary .graph_item:nth-child(3) .graph_bar {
	height: 168.56px;
}

#page_numbers .work .work_item.salary .graph_item:nth-child(4) .graph_bar {
	height: 184.65px;
}

#page_numbers .work .work_item.salary .graph_item:nth-child(5) .graph_bar {
	height: 200px;
}

#page_numbers .work .work_item.best .graph_item:nth-child(1) .graph_bar {
	height: 104.09px;
}

#page_numbers .work .work_item.best .graph_item:nth-child(2) .graph_bar {
	height: 114.57px;
}

#page_numbers .work .work_item.best .graph_item:nth-child(3) .graph_bar {
	height: 145.52px;
}

#page_numbers .work .work_item.best .graph_item:nth-child(4) .graph_bar {
	height: 157.14px;
}

#page_numbers .work .work_item.best .graph_item:nth-child(5) .graph_bar {
	height: 200px;
}

#page_numbers .work .work_item.old .graph_items {
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	column-gap: 20px;
}

#page_numbers .work .work_item.old .graph_item:nth-child(1) .graph_bar {
	height: 200px;
}

#page_numbers .work .work_item.old .graph_item:nth-child(2) .graph_bar {
	height: 148.93px;
}

#page_numbers .work .work_item.old .graph_item:nth-child(3) .graph_bar {
	height: 51.06px;
}

#page_numbers .work .work_item.old .graph_item:nth-child(4) .graph_bar {
	height: 25.53px;
}

#page_numbers .questionnaire {
	padding: 150px 0;
}

#page_numbers .questionnaire .wrap {
	width: 1340px;
}

#page_numbers .questionnaire .questionnaire_heading_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_numbers .questionnaire .questionnaire_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 10px auto 0;
	padding: 3px 15px;
	background-color: #FF8C00;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_numbers .questionnaire .questionnaire_items {
	-webkit-column-gap: 2%;
	-moz-column-gap: 2%;
	display: grid;
	grid-template-columns: repeat(2, 49%);
	column-gap: 2%;
	row-gap: 20px;
	margin-top: 30px;
	position: relative;
	z-index: 0;
}

#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::before,
#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::after,
#page_numbers .questionnaire .questionnaire_items+.questionnaire_items::before {
	aspect-ratio: 1569/1214;
	width: 800px;
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	position: absolute;
	z-index: -10;
}

#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::before {
	top: -300px;
	right: -300px;
}

#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::after {
	top: 500px;
	left: -300px;
	transform: rotate(180deg);
}

#page_numbers .questionnaire .questionnaire_items+.questionnaire_items::before {
	bottom: -200px;
	right: -400px;
	transform: rotate(90deg);
}

#page_numbers .questionnaire .questionnaire_items+.questionnaire_items {
	-webkit-column-gap: 1.33%;
	-moz-column-gap: 1.33%;
	grid-template-columns: repeat(3, 32%);
	column-gap: 1.33%;
	margin-top: 20px;
}

#page_numbers .questionnaire .questionnaire_items+.questionnaire_items .questionnaire_img {
	width: 20%;
}

#page_numbers .questionnaire .questionnaire_item {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	padding: 30px;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	background-color: #FFF;
}

#page_numbers .questionnaire .questionnaire_img {
	width: 15%;
	margin: 0 auto;
}

#page_numbers .questionnaire .questionnaire_lead {
	margin-top: 10px;
	font-weight: 700;
	font-size: 21px;
	text-align: center;
}

#page_numbers .questionnaire .questionnaire_number {
	margin-top: 10px;
	font-weight: 700;
	font-size: 16px;
	text-align: center;
}

#page_numbers .questionnaire .questionnaire_number span {
	margin: 0 3px;
	color: #FF8C00;
	font-size: 56px;
	line-height: 1;
}

#page_numbers .questionnaire .questionnaire_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 16px;
}

#page_numbers .questionnaire .questionnaire_lists {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-column-gap: 25px;
	-moz-column-gap: 25px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 25px;
	justify-content: center;
	margin-top: 10px;
}

#page_numbers .questionnaire .questionnaire_ranks {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 20px auto 0;
}

#page_numbers .questionnaire .questionnaire_rank {
	font-weight: 700;
	font-size: 18px;
	border-bottom: 1px solid #A7A7A7;
	padding-bottom: 5px;
}

#page_numbers .questionnaire .questionnaire_rank span {
	margin-right: 3px;
	color: #FF8C00;
	font-weight: 700;
	font-size: 28px;
	line-height: 1;
}

#page_numbers .questionnaire .questionnaire_rank+.questionnaire_rank {
	margin-top: 5px;
}

#page_numbers .questionnaire .graph_items {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 30px 20px 0 0;
}

#page_numbers .questionnaire .graph_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 10px;
	align-items: center;
}

#page_numbers .questionnaire .graph_item+.graph_item {
	margin-top: 15px;
}

#page_numbers .questionnaire .graph_text {
	width: 200px;
	font-weight: 700;
	font-size: 16px;
	text-align: right;
}

#page_numbers .questionnaire .graph_number {
	font-weight: 700;
	font-size: 16px;
}

#page_numbers .questionnaire .graph_bar {
	-webkit-transform: scaleX(0);
	-webkit-transform-origin: center left;
	height: 30px;
	transform: scaleX(0);
	transform-origin: center left;
	background-color: #FF8C00;
}

#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(1) .graph_bar {
	width: 200px;
}

#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(2) .graph_bar {
	width: 100px;
}	
#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(3) .graph_bar,
#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(4) .graph_bar,
#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(5) .graph_bar {
	width: 20.57px;
}

#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(1) .graph_bar {
	width: 150px;
}

#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(2) .graph_bar {
	width: 75px;
}	

#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(3) .graph_bar {
	width: 43.90px;
}

#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(6) .graph_bar {
	width: 10px;
}

#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(4) .graph_bar {
	width: 35px;
}

#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(5) .graph_bar {
	width: 21.95px;
}

/* page_staff_archive (pc) ------------------------------------------------------------------------------------------------------ */

#page_staff_archive {
	overflow: initial;
}

#page_staff_archive .staff {
	position: relative;
	padding-top: 500px;
	margin-top: -350px;
	overflow: hidden;
}

#page_staff_archive .staff::before {
	position: absolute;
	content: "";
	width: 800px;
	aspect-ratio: 1045/1416;
	background-image: url(/wp-content/themes/child/image/common_deco_blue.webp);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: -10;
	transform: rotate(-45deg);
	right: -200px;
	top: -150px;
}

#page_staff_archive .staff .staff_message {
	font-weight: 500;
	font-size: 18px;
	text-align: center;
}

#page_staff_archive .staff .staff_items {
	-webkit-column-gap: 5%;
	-moz-column-gap: 5%;
	display: grid;
	grid-template-columns: repeat(3, 30%);
	column-gap: 5%;
	row-gap: 70px;
	margin-top: 80px;
	position: relative;
}

#page_staff_archive .staff .staff_items::before,
#page_staff_archive .staff .staff_items::after {
	position: absolute;
	content: "";
	width: 800px;
	aspect-ratio: 1045/1416;
	background-image: url(/wp-content/themes/child/image/common_deco_blue.webp);
	background-size: contain;
	background-repeat: no-repeat;
	z-index: -10;
}

#page_staff_archive .staff .staff_items::before {
	top: 50%;
	transform: translateY(-50%) rotate(-15deg);
	left: -500px;
}

#page_staff_archive .staff .staff_items::after {
	transform: rotate(45deg);
	right: -550px;
	bottom: -550px;
}

#page_staff_archive .staff .staff_info {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: -25px;
	right: -25px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1/1;
	width: 120px;
	border-radius: 50%;
	background-color: #FCCE25;
}

#page_staff_archive .staff .staff_title {
	color: #FFF;
	font-weight: 700;
	font-size: 18px;
}

#page_staff_archive .staff .staff_item {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	position: relative;
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

#page_staff_archive .staff .staff_item::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 185, 239, 0)), color-stop(84.24%, rgba(0, 140, 207, 0.1)), to(rgba(0, 91, 172, 0.6)));
	background: linear-gradient(rgba(0, 185, 239, 0) 0%, rgba(0, 140, 207, 0.1) 84.24%, rgba(0, 91, 172, 0.6) 100%);
	content: "";
}

#page_staff_archive .staff .staff_item::after {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, left top, left bottom, from(#005bac), color-stop(58.7%, #0081cc), to(#00b9ef));
	background: linear-gradient(#005bac 0%, #0081cc 58.7%, #00b9ef 100%);
	content: "";
	transition: -webkit-transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s;
	transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
}

#page_staff_archive .staff .staff_item:hover::after {
	-webkit-transform: rotate(5deg);
	transform: rotate(5deg);
}

#page_staff_archive .staff .staff_number {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: 15px;
	left: 15px;
	align-items: center;
	color: #0081CC;
	font-weight: 700;
	font-size: 56px;
	line-height: 1;
}

#page_staff_archive .staff .staff_number span {
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	margin-top: 5px;
	margin-right: 5px;
	font-size: 12px;
	text-transform: uppercase;
	writing-mode: vertical-lr;
}

#page_staff_archive .staff .interview_img {
	aspect-ratio: 320/480;
}

#page_staff_archive .staff .staff_status {
	position: absolute;
	bottom: 20px;
	left: -10px;
}

#page_staff_archive .staff .staff_text {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 2px 10px;
	background-color: #363738;
	color: #FFF;
	font-weight: 700;
	font-size: 20px;
}

#page_staff_archive .staff .staff_text+.staff_text {
	margin-top: 5px;
}

/* page_staff_single (pc) ------------------------------------------------------------------------------------------------------ */

#page_staff_single {
	overflow: initial;
}

#page_staff_single .staff .common_fv_items {
	-ms-flex-wrap: wrap;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 20px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

#page_staff_single .staff .common_fv_items span a span {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #363738;
	transition: opacity 0.3s ease 0s;
}

#page_staff_single .staff .common_fv_items span a span:hover {
	opacity: 0.7;
}

#page_staff_single .staff .common_fv_items span>span {
	color: #BEBEBE;
	text-decoration: underline;
	text-underline-offset: 3px;
}

#page_staff_single .staff .staff_head {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	display: grid;
	grid-template-columns: 1fr 500px;
	column-gap: 50px;
	align-items: center;
	margin-left: calc(50% - 50vw + 10px);
	margin-top: 40px;
	position: relative;
	/* overflow: hidden; */
	padding-bottom: 500px;
}

#page_staff_single .staff .staff_head::before {
	position: absolute;
	aspect-ratio: 1569/1214;
	width: 500px;
	background-image: url(/wp-content/themes/child/image/common_deco_yellow.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	right: -250px;
	bottom: 150px;
	z-index: -10;
	transform: rotate(270deg);
}

#page_staff_single .staff .staff_copy span {
	display: inline;
	padding: 5px 14px;
	background: -webkit-gradient(linear, left top, left bottom, from(#363738), to(#363738));
	background: linear-gradient(#363738, #363738);
	background-position: bottom left;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	color: #FFF;
	font-weight: 700;
	font-size: 28px;
	line-height: 2;
	text-decoration: none;
}

#page_staff_single .staff .staff_department {
	margin-top: 30px;
	font-weight: 700;
	font-size: 18px;
}

#page_staff_single .staff .staff_year {
	font-weight: 700;
	font-size: 18px;
	line-height: 1.2;
}

#page_staff_single .staff .staff_title {
	margin-top: 10px;
	font-weight: 700;
	font-size: 36px;
	line-height: 1;
}

#page_staff_single .staff .staff_biography {
	margin-top: 40px;
	font-weight: 500;
	font-size: 16px;
}

#page_staff_single .staff .staff_main {
	aspect-ratio: 10/7;
	order: -1;
}

#page_staff_single .staff .staff_wrapper {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	display: grid;
	position: relative;
	grid-template-columns: 400px 1fr;
	column-gap: 50px;
	margin: -350px -100px 0;
}

#page_staff_single .staff .staff_outer {
	position: sticky;
	top: 120px;
}

#page_staff_single .staff .staff_outer::before {
	position: absolute;
	aspect-ratio: 170/142;
	width: 200px;
	background-image: url(/wp-content/themes/child/image/philosophy_deco3.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	right: 20px;
	top: 40px;
	z-index: -10;
}

#page_staff_single .staff .staff_inner .staff_copy span {
	padding: 3px 10px;
	font-size: 21px;
	line-height: 2;
}

#page_staff_single .staff .staff_inner .staff_department {
	margin-top: 20px;
	font-size: 16px;
}

#page_staff_single .staff .staff_inner .staff_year {
	font-size: 16px;
}

#page_staff_single .staff .staff_inner .staff_title {
	margin-top: 10px;
	font-size: 24px;
}

#page_staff_single .staff .staff_lists {
	margin-top: 80px;
}

#page_staff_single .staff .staff_list {
	-webkit-transition: color 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	color: #363738;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.5;
	transition: color 0.3s ease 0s;
}

#page_staff_single .staff .staff_list+.staff_list {
	margin-top: 15px;
}

#page_staff_single .staff .staff_list:nth-child(4n + 1).is_active,
#page_staff_single .staff .staff_list:nth-child(4n + 1):hover,
#page_staff_single .staff .staff_item:nth-child(4n + 1) .item_title {
	color: #FF8C00;
}

#page_staff_single .staff .staff_list:nth-child(4n + 2).is_active,
#page_staff_single .staff .staff_list:nth-child(4n + 2):hover,
#page_staff_single .staff .staff_item:nth-child(4n + 2) .item_title {
	color: #005BAC;
}

#page_staff_single .staff .staff_list:nth-child(4n + 3).is_active,
#page_staff_single .staff .staff_list:nth-child(4n + 3):hover,
#page_staff_single .staff .staff_item:nth-child(4n + 3) .item_title {
	color: #45B035;
}

#page_staff_single .staff .staff_list:nth-child(4n).is_active,
#page_staff_single .staff .staff_list:nth-child(4n):hover,
#page_staff_single .staff .staff_item:nth-child(4n) .item_title {
	color: #FCCE25;
}

#page_staff_single .staff .staff_item+.staff_item {
	margin-top: 100px;
}

#page_staff_single .staff .item_title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-weight: 700;
	font-size: 32px;
	line-height: 1.5;
}

#page_staff_single .staff .item_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 16px;
}

#page_staff_single .staff .item_img {
	aspect-ratio: 5/3;
	margin-top: 25px;
}

/* page_welfare (pc) ------------------------------------------------------------------------------------------------------ */

#page_welfare {
	overflow: initial;
}

#page_welfare .welfare {
	overflow: hidden;
	padding-top: 500px;
	margin-top: -350px;
}

#page_welfare .welfare_items {
	-webkit-column-gap: 3.33%;
	-moz-column-gap: 3.33%;
	display: grid;
	grid-template-columns: repeat(3, 30%);
	column-gap: 3.33%;
	row-gap: 40px;
	position: relative;
}

#page_welfare .welfare_items::before,
#page_welfare .welfare_items::after {
	position: absolute;
	aspect-ratio: 825/1417;
	width: 500px;
	background-image: url(/wp-content/themes/child/image/top_message_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	z-index: -10;
}

#page_welfare .welfare_items::before {
	right: -300px;
	top: -450px;
}

#page_welfare .welfare_items::after {
	left: -300px;
	bottom: -450px;
	transform: rotate(-90deg);
}

#page_welfare .welfare_item {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	padding: 30px 20px;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	background-color: #FFF;
}

#page_welfare .welfare_img {
	width: 30%;
	margin: 0 auto;
}

#page_welfare .welfare_title {
	margin: 20px auto 0;
	font-weight: 700;
	font-size: 21px;
	text-align: center;
	color: #FFF;
	background-color: #45B035;
	padding: 0 15px;
	width: fit-content;
}

#page_welfare .welfare_text {
	margin-top: 10px;
	font-weight: 500;
	font-size: 16px;
}

/* page_education (pc) ------------------------------------------------------------------------------------------------------ */

#page_education {
	overflow: initial;
}

#page_education .education {
	position: relative;
	overflow: hidden;
	padding-top: 500px;
	margin-top: -350px;
}

#page_education .education::before {
	width: 800px;
	right: -100px;
	top: 150px;
	position: absolute;
	aspect-ratio: 1569/1214;
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	z-index: -10;
	transform: rotate(270deg);
}

#page_education .education .education_lead {
	font-weight: 700;
	font-size: 32px;
	line-height: 1.5;
	text-align: center;
	color: #FF8C00;
}

#page_education .education .education_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 18px;
	text-align: center;
}

#page_education .education .education_container {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	display: grid;
	grid-template-columns: 200px 1fr;
	column-gap: 40px;
	align-items: center;
	margin-top: 30px;
	padding: 20px;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	background-color: #FFF;
}

#page_education .education .education_icon {
	width: 60%;
	margin: 0 auto;
}

#page_education .education .education_title {
	font-weight: 700;
	font-size: 21px;
	text-align: center;
}

#page_education .education .education_body {
	font-weight: 500;
	font-size: 16px;
}

#page_education .education .education_follow {
	position: relative;
	margin-top: 120px;
	padding: 120px 0 80px;
}

#page_education .education .education_follow::before {
	-webkit-transform: translateX(-50%);
	z-index: -10;
	position: absolute;
	top: 0;
	left: 50%;
	width: 100vw;
	height: 100%;
	transform: translateX(-50%);
	background-color: #85D0DF;
	content: "";
	opacity: 0.1;
}

#page_education .education .education_follow::after {
	position: absolute;
	content: "";
	width: 500px;
	aspect-ratio: 1045/1416;
	background-image: url(/wp-content/themes/child/image/common_deco_blue.webp);
	background-size: contain;
	background-repeat: no-repeat;
	top: -350px;
	left: -450px;
	z-index: -10;
	transform: rotate(-45deg);
}

#page_education .education .follow_title_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_education .education .follow_title_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 10px auto;
	padding: 3px 20px;
	background-color: #85D0DF;
	color: #FFF;
	font-weight: 700;
	font-size: 20px;
	text-align: center;
}

#page_education .education .follow_message {
	margin-top: 30px;
	font-weight: 500;
	font-size: 18px;
	text-align: center;
}

#page_education .education .follow_items {
	margin-top: 50px;
}

#page_education .education .follow_item {
	position: relative;
	padding-left: 35px;
}

#page_education .education .follow_item+.follow_item {
	margin-top: 50px;
}

#page_education .education .follow_item::before {
	position: absolute;
	top: 20px;
	left: 7px;
	width: 7px;
	height: calc(100% + 40px);
	background-color: rgba(133, 208, 223, 0.5);
	content: "";
}

#page_education .education .follow_item:last-child::before {
	display: none;
}

#page_education .education .follow_time {
	position: relative;
	color: #85D0DF;
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
}

#page_education .education .follow_time::before {
	position: absolute;
	top: 5px;
	left: -35px;
	aspect-ratio: 1/1;
	width: 20px;
	border-radius: 50%;
	background-color: #85D0DF;
	content: "";
}

#page_education .education .follow_heading {
	margin-top: 20px;
	font-weight: 700;
	font-size: 28px;
	line-height: 1;
}

#page_education .education .follow_text {
	margin-top: 10px;
	font-weight: 500;
	font-size: 16px;
}

#page_education .education .education_other {
	padding-top: 120px;
	position: relative;
}

#page_education .education .education_other::before,
#page_education .education .education_other::after {
	position: absolute;
	aspect-ratio: 825/1417;
	width: 500px;
	background-image: url(/wp-content/themes/child/image/top_message_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	z-index: -10;
}

#page_education .education .education_other::before {
	right: -250px;
	top: -350px;
	transform: rotate(90deg);
}

#page_education .education .education_other::after {
	left: -300px;
	bottom: -450px;
}

#page_education .education .other_title_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_education .education .other_title_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 10px auto;
	padding: 3px 20px;
	background-color: #45B035;
	color: #FFF;
	font-weight: 700;
	font-size: 20px;
	text-align: center;
}

#page_education .education .other_message {
	margin-top: 30px;
	font-weight: 500;
	font-size: 18px;
	text-align: center;
}

#page_education .education .other_items {
	-webkit-column-gap: 1.33%;
	-moz-column-gap: 1.33%;
	display: grid;
	grid-template-columns: repeat(3, 32%);
	column-gap: 1.33%;
	margin-top: 50px;
}

#page_education .education .other_item {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	padding: 30px 15px;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	background-color: #FFF;
}

#page_education .education .other_heading {
	margin-bottom: 20px;
	color: #45B035;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.5;
	text-align: center;
}

#page_education .education .other_text {
	margin-top: auto;
	font-weight: 500;
	font-size: 16px;
}

/* page_requirements (pc) ------------------------------------------------------------------------------------------------------ */

#page_requirements {
	overflow: initial;
}

#page_requirements .requirements {
	position: relative;
	overflow: hidden;
	padding-top: 500px;
	margin-top: -350px;
}

#page_requirements .requirements::before {
	width: 800px;
	right: -100px;
	top: 150px;
	position: absolute;
	aspect-ratio: 1569/1214;
	background-image: url(/wp-content/themes/child/image/top_company_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	z-index: -10;
	transform: rotate(270deg);
}

#page_requirements .requirements .requirements_heading_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_requirements .requirements .requirements_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 10px auto 0;
	padding: 3px 20px;
	background-color: #FCCE25;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_requirements .requirements .requirements_items {
	margin-top: 50px;
}

#page_requirements .requirements .requirements_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 200px 1fr;
	align-items: center;
	padding: 25px 0;
	border-top: 1px solid rgba(0, 0, 0, 0.3);
}

#page_requirements .requirements .requirements_item:last-child {
	border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

#page_requirements .requirements .requirements_item dt {
	padding-left: 20px;
	font-weight: 700;
	font-size: 18px;
}

#page_requirements .requirements .requirements_item dd {
	font-weight: 500;
	font-size: 16px;
}

#page_requirements .process {
	padding-top: 120px;
	padding-bottom: 150px;
}

#page_requirements .process .process_heading_en {
	font-size: 88px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

#page_requirements .process .process_heading_ja {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 10px auto 0;
	padding: 3px 20px;
	background-color: #45B035;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
}

#page_requirements .process .process_items {
	-webkit-column-gap: 4%;
	-moz-column-gap: 4%;
	display: grid;
	grid-template-columns: repeat(2, 48%);
	column-gap: 4%;
	margin-top: 50px;
	position: relative;
}

#page_requirements .process .process_items::before {
	z-index: -10;
	position: absolute;
	top: -180px;
	left: -310px;
	aspect-ratio: 750/1063;
	width: 750px;
	background-image: url(/wp-content/themes/child/image/top_message_deco1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	z-index: -10;
}

#page_requirements .process .process_item {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	padding: 30px 20px;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	background-color: #FFF;
}

#page_requirements .process .process_title {
	color: #45B035;
	font-weight: 700;
	font-size: 24px;
	text-align: center;
}

#page_requirements .process .process_lists {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 30px auto 0;
	padding-left: 35px;
}

#page_requirements .process .process_lists::before {
	-webkit-transform: translateY(-50%);
	position: absolute;
	top: 50%;
	left: 6px;
	width: 8px;
	height: calc(100% - 30px);
	transform: translateY(-50%);
	background-color: #45B035;
	content: "";
	opacity: 0.5;
}

#page_requirements .process .process_list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 15px;
	-moz-column-gap: 15px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	column-gap: 15px;
	align-items: center;
}

#page_requirements .process .process_list::before {
	position: absolute;
	top: 11px;
	left: -35px;
	aspect-ratio: 1/1;
	width: 20px;
	border-radius: 50%;
	background-color: #45B035;
	content: "";
}

#page_requirements .process .process_list+.process_list {
	margin-top: 20px;
}

#page_requirements .process .process_step {
	font-weight: 700;
	font-size: 24px;
}

#page_requirements .process .process_text {
	font-weight: 700;
	font-size: 21px;
}

/* page_error (pc) ------------------------------------------------------------------------------------------------------ */

#page_error .error_text {
	font-size: 18px;
}

#page_error .common_btn.error_btn {
	margin-top: 30px;
}

#page_error .common_btn.error_btn::before {
	background-color: #0081CC;
}


@media (max-width: 750px) {
	.wrap {
		max-width: 90%;
	}

	a[href $='.pdf']::before {
		width: 7vw;
		height: 8vw;
		margin-right: 2.5vw;
	}

	a[href $='.pdf']:hover {
		text-decoration: underline;
	}

	body {
		font-size: 13px;
		padding-top: 0;
		min-width: initial;
	}

	/* SPヘッダー */
	#sp_header {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		background: #fff;
		box-shadow: 1px 1px #ccc;
		z-index: 999;
		height: 55px;
	}

	#sp_header .logo {
		position: absolute;
		left: 10px;
		top: 10px;
		line-height: 0;
	}

	#sp_header .logo img {
		height: 40px;
	}

	#sp_header .icon {
		color: #000;
		position: absolute;
	}

	#sp_header .mail {
		right: 70px;
		top: 13px;
		font-size: 25px;
	}

	#sp_header .tel {
		right: 110px;
		top: 15px;
		font-size: 20px;
	}

	/* SP固定ページ 共通設定 */
	.common_page_main {
		padding-block: 20vw;
	}

	.common_page_main .title_box .title {
		font-size: 5.6vw;
	}

	.common_page_wrap {
		padding: 20vw 0;
	}

	.reserve_text {
		font-size: 6vw;
	}

	/* パンくず */
	.breadcrumb {
		font-size: 3vw;
	}

	/* SP固定ページ お問い合わせ */
	.contact_form_disc {
		margin-block: 0 2em;
	}

	.contact_form_disc .text {
		font-size: 3.6vw;
		margin-block: 0 0.8em;
	}

	.contact_form_disc .caution {
		font-size: 3.1vw;
		letter-spacing: .06em;
	}

	.common_contact_form .form_box {
		margin-block: 0 10vw;
	}

	.common_contact_form .form_box dl {
		grid-template-columns: 1fr;
		gap: 0.6em;
	}

	.common_contact_form .form_box dl+dl {
		margin-block: 1.3em 0;
	}

	.common_contact_form .form_box dl dt {
		flex-direction: row-reverse;
		justify-content: space-between;
		font-size: 4.1vw;
		padding-inline: 0;
	}

	.common_contact_form .form_box dl dt .label {
		font-size: 3.1vw;
	}

	.common_contact_form .form_box dl dt::after {
		content: none;
	}

	.common_contact_form input[type="text"],
	.common_contact_form input[type="email"],
	.common_contact_form #zip {
		font-size: 3.6vw;
	}

	.common_contact_form select {
		width: 100%;
		font-size: 3.6vw;
	}

	.common_contact_form textarea {
		height: 33vw;
		font-size: 3.6vw;
	}

	.radio_btns,
	.checkboxes {
		gap: 0.5em 2.5em;
	}

	.page_contact #btn_wrap button {
		width: 83%;
		line-height: 15.5vw;
		font-size: 4.6vw;
	}

	.page_contact #btn_wrap button[name="submitBack"] {
		margin-top: 4vw;
	}

	.mwform-checkbox-field.horizontal-item {
		display: block;
	}

	.page_contact #btn_wrap {
		width: 100%;
		text-align: center;
	}

	.privacy_check_list .mwform-checkbox-field-text {
		font-size: 3.8vw;
		padding-left: 11vw;
	}

	.mw_wp_form .privacy_check_list .horizontal-item {
		margin-right: 4vw;
	}

	.privacy_check_list .hissu {
		padding: 0.3vw 4vw;
	}

	.privacy_check_list {
		margin-bottom: 6vw;
	}

	.privacy_term_detail {
		font-size: 3.4vw;
		margin: 5vw 0;
	}

	.privacy_term_outer {
		width: 96%;
		padding: 5vw 0;
	}

	.privacy_term_outer .privacy_term_inner .main_text {
		font-size: 3.4vw;
		line-height: 1.6;
		margin-bottom: 5vw;
	}

	.privacy_term_outer .privacy_term_inner dl dt {
		font-size: 3.5vw;
		margin-bottom: 1.5vw;
	}

	.privacy_term_outer .privacy_term_inner dl dd {
		font-size: 3.5vw;
		line-height: 1.6;
	}

	.privacy_term_outer .privacy_term_inner dl+dl {
		margin-top: 7vw;
	}

	.privacy_term_detail::after {
		width: 2.5vw;
		margin: 1.5vw auto 0;
	}

	/* サンクスページ */
	.page_contact .thanks_textArea .name {
		font-size: 4vw;
		margin-bottom: 3vw;
	}

	.page_contact .thanks_textArea .contact_text {
		font-size: 3.5vw;
		margin-bottom: 2em;
		width: 100%;
	}

	.page_contact .thanks_textArea .ichiran_link {
		width: 80%;
		line-height: 12vw;
		font-size: 4vw;
	}

	/* ステップバー デザイン */
	.page_contact .progressbar {
		gap: 4.5em;
		margin-block: 0 2.5em;
	}

	.page_contact .progressbar .item {
		font-size: 3.1vw;
	}

	.page_contact .progressbar .item+.item::before {
		width: 5.7vw;
		top: 63%;
		left: -3.3em;
	}

	.page_contact .progressbar .item .mark {
		width: 7.7vw;
		margin: 0 auto 0.4em;
	}

	/* SP固定ページ 404ページ */
	#page_404 .num {
		font-size: 20vw;
		line-height: 1.5;
	}

	#page_404 .text {
		font-size: 3.5vw;
	}

	/* SP投稿ページ アーカイブページ */
	.archive_page_list>article {
		padding-right: 20px;
	}

	.archive_page_list>article .date {
		width: 80px;
	}

	.archive_page_list>article .content_area {
		width: calc(100% - 80px);
	}

	.archive_page_list>article:after {
		width: 7px;
		height: 7px;
	}

	/* SP固定ページ サイトマップ */
	ul#sitemap_list li {
		margin: 0;
	}

	body #sitemap_list li a {
		font-size: 4vw;
		padding: 1vw 2vw;
		line-height: 9vw;
		margin-bottom: 1vw;
	}

	body #sitemap_list li.home-item {
		margin-bottom: 4vw;
	}

	body #sitemap_list {
		padding: 0;
	}


	/* -----------------------------------------------------------------------------------------------------------------------------------
    ↓↓↓ stlink CSS (pc)
    ----------------------------------------------------------------------------------------------------------------------------------- */


	a.common_btn {
		width: 80vw;
		padding: 0 5vw;
		font-size: 4vw;
	}

	a.common_btn::after {
		width: 5vw;
	}

	a.common_btn::before {
		display: none;
	}

	.common_recruit {
		padding: 20vw 0;
		background-image: url(/wp-content/themes/child/image/common_recruit_bg_sp.webp);
		background-position: 28% 50%;
	}

	.common_recruit .recruit_heading_en {
		font-size: 14vw;
	}

	.common_recruit .recruit_heading_en::before {
		top: -7vw;
		right: -18vw;
		width: 25vw;
	}

	.common_recruit .recruit_heading_ja {
		margin-top: 2vw;
		font-size: 4vw;
	}

	.common_recruit .recruit_text {
		margin-top: 2vw;
		font-size: 3.8vw;
	}

	.common_recruit .recruit_btns {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		row-gap: 2.5vw;
		flex-direction: column;
		align-items: center;
		margin-top: 8vw;
	}

	.common_recruit .recruit_btn {
		width: 70vw;
		padding: 0 5vw;
		font-size: 4vw;
	}

	.common_recruit .recruit_btn::after {
		width: 5vw;
	}

	.common_recruit .recruit_btn::before {
		display: none;
	}

	.common_recruit .recruit_btn:hover {
		color: #363738;
	}

	.common_recruit .recruit_btn:hover::after {
		background-image: url(/wp-content/themes/child/image/common_arrow_black.svg);
	}

	.common_recruit .recruit_entry {
		width: 70vw;
		margin: 5vw auto 0;
		padding: 0 5vw;
		font-size: 6vw;
	}

	.common_recruit .recruit_entry:hover {
		background-color: #8FC31F;
	}

	.common_recruit .recruit_entry::before {
		width: 4.5vw;
		margin-right: 2.5vw;
	}

	.common_recruit .recruit_entry::after {
		width: 5vw;
	}

	.common_fv {
		margin-top: 70px;
		padding-top: 15vw;
	}

	.common_fv .wrap {
		max-width: 95%;
	}

	.common_fv .common_fv_heading {
		padding-left: 0;
	}

	.common_fv .common_fv_heading_en {
		font-size: 16vw;
	}

	.common_fv .common_fv_heading_ja {
		margin-top: 4vw;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	.common_fv .common_fv_bread {
		margin-top: 12vw;
		padding-left: 0;
	}

	.common_fv .common_fv_items {
		-webkit-column-gap: 6vw;
		-moz-column-gap: 6vw;
		column-gap: 6vw;
		font-size: 3vw;
	}

	.common_fv .common_fv_items span a span:hover {
		opacity: 1;
	}

	.common_fv .common_fv_img {
		aspect-ratio: 370/250;
		height: auto;
		margin-top: 8vw;
	}

	.common_fv .common_fv_img img {
		-o-object-position: 50% 50%;
		object-position: 50% 50%;
	}

	.common_section {
		padding: 15vw 0;
	}

	/* header (sp) ------------------------------------------------------------------------------------------------------ */

	.header {
		min-width: initial;
		height: 70px;
	}

	.header .header_inner {
		padding: 0 0 0 10px;
	}

	.header .header_logo {
		width: 150px;
	}

	.header .header_logo:hover {
		opacity: 1;
	}

	.header .header_nav {
		display: none;
	}

	.header.top_page {
		-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.16);
		background-color: #FFF;
		box-shadow: 0 0 3px rgba(0, 0, 0, 0.16);
	}

	.header.top_page .header_logo {
		background-image: url(/wp-content/themes/child/image/common_logo_green.svg);
	}

	.header .header_btn {
		position: relative;
		aspect-ratio: 1/1;
		height: 100%;
		margin-left: auto;
		background-color: #363738;
	}

	.header .header_btn span {
		-webkit-transform: translateX(-50%);
		-webkit-transition: -webkit-transform 0.3s ease 0s;
		position: absolute;
		left: 50%;
		width: 25px;
		height: 2px;
		transform: translateX(-50%);
		background-color: #FFF;
		transition: -webkit-transform 0.3s ease 0s;
		transition: transform 0.3s ease 0s;
		transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
	}

	.header .header_btn span:nth-child(1) {
		-webkit-transform: translateX(-50%) scaleX(0.5);
		-webkit-transform-origin: center right;
		top: 26px;
		transform: translateX(-50%) scaleX(0.5);
		transform-origin: center right;
	}

	.header .header_btn span:nth-child(2) {
		top: 34px;
	}

	.header .header_btn span:nth-child(3) {
		-webkit-transform: translateX(-50%) scaleX(0.5);
		-webkit-transform-origin: center left;
		top: 42px;
		transform: translateX(-50%) scaleX(0.5);
		transform-origin: center left;
	}

	.header .header_btn.active span:nth-child(1) {
		-webkit-transform: translateX(-50%) scaleX(1) rotate(135deg);
		-webkit-transform-origin: center center;
		top: 34px;
		transform: translateX(-50%) scaleX(1) rotate(135deg);
		transform-origin: center center;
	}

	.header .header_btn.active span:nth-child(2) {
		display: none;
	}

	.header .header_btn.active span:nth-child(3) {
		-webkit-transform: translateX(-50%) scaleX(1) rotate(-135deg);
		-webkit-transform-origin: center center;
		top: 34px;
		transform: translateX(-50%) scaleX(1) rotate(-135deg);
		transform-origin: center center;
	}

	/* drawer (sp) ------------------------------------------------------------------------------------------------------ */

	.drawer {
		-webkit-transition: opacity 0.3s ease 0s;
		visibility: hidden;
		z-index: 30;
		position: fixed;
		top: 70px;
		right: 0;
		left: 0;
		height: calc(100dvh - 70px);
		height: calc(100vh - 70px);
		padding: 10vw 0 15vw;
		overflow: scroll;
		background-color: #EFEFEF;
		opacity: 0;
		transition: opacity 0.3s ease 0s;
	}

	.drawer.active {
		visibility: visible;
		opacity: 1;
	}

	.drawer::-webkit-scrollbar {
		display: none;
	}

	.drawer .drawer_items {
		padding-bottom: 8vw;
		border-bottom: 1px solid #BEBEBE;
	}

	.drawer .drawer_item+.drawer_item {
		margin-top: 3vw;
	}

	.drawer .drawer_link,
	.drawer .drawer_trigger {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		color: #363738;
		font-weight: 700;
		font-size: 3.5vw;
	}

	.drawer .drawer_link span,
	.drawer .drawer_trigger span {
		margin-right: 2vw;
		font-size: 6vw;
		text-transform: uppercase;
	}

	.drawer .drawer_link::after,
	.drawer .drawer_trigger::after {
		margin-left: auto;
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	.drawer .drawer_trigger::after {
		-webkit-transition: -webkit-transform 0.3s ease 0s;
		aspect-ratio: 2/1;
		width: 4vw;
		margin-right: 1.2vw;
		background-image: url(/wp-content/themes/child/image/drawer_arrow.svg);
		transition: -webkit-transform 0.3s ease 0s;
		transition: transform 0.3s ease 0s;
		transition: transform 0.3s ease 0s, -webkit-transform 0.3s ease 0s;
	}

	.drawer .drawer_trigger.active::after {
		-webkit-transform: rotate(180deg) translate(0.5vw, -0.3vw);
		transform: rotate(180deg) translate(0.5vw, -0.3vw);
	}

	.drawer .drawer_link::after {
		aspect-ratio: 1/1;
		width: 5vw;
		margin-right: 1vw;
		background-image: url(/wp-content/themes/child/image/common_arrow_black.svg);
	}

	.drawer .drawer_lists {
		display: none;
		margin-top: 1vw;
	}

	.drawer .drawer_list {
		background-color: #FFF;
	}

	.drawer .drawer_list a {
		width: 100%;
		height: 100%;
		padding: 2vw 0;
		color: #363738;
		font-weight: 500;
		font-size: 3.5vw;
		text-align: center;
	}

	.drawer .drawer_list+.drawer_list {
		margin-top: 1.5vw;
	}

	.drawer .drawer_address {
		margin-top: 10vw;
		font-weight: 500;
		font-size: 3.5vw;
		line-height: 1.5;
		text-align: center;
	}

	.drawer .drawer_tel {
		width: 100%;
		margin-top: 5vw;
		color: #363738;
		font-weight: 700;
		font-size: 3.5vw;
		line-height: 1;
		text-align: center;
		text-transform: uppercase;
	}

	.drawer .drawer_tel span {
		font-size: 8vw;
	}

	.drawer .drawer_time {
		margin-top: 2vw;
		font-weight: 500;
		font-size: 3.5vw;
		text-align: center;
	}

	.drawer .drawer_entry {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		aspect-ratio: 280/60;
		width: 70vw;
		margin: 7vw auto 0;
		padding: 0 5vw;
		background-color: #8FC31F;
		color: #FFF;
		font-weight: 700;
		font-size: 6vw;
		text-transform: uppercase;
	}

	.drawer .drawer_entry::before {
		aspect-ratio: 1/1;
		width: 4.5vw;
		margin-right: 2vw;
		background-image: url(/wp-content/themes/child/image/entry_icon.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	.drawer .drawer_entry::after {
		aspect-ratio: 1/1;
		width: 5vw;
		margin-left: auto;
		background-image: url(/wp-content/themes/child/image/entry_arrow.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	.drawer .drawer_others {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-column-gap: 7vw;
		-moz-column-gap: 7vw;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		column-gap: 7vw;
		justify-content: center;
		margin-top: 6vw;
	}

	.drawer .drawer_other {
		color: #363738;
		font-weight: 500;
		font-size: 3vw;
	}

	/* footer (sp) ------------------------------------------------------------------------------------------------------ */

	.footer .footer_wrapper {
		display: block;
		padding: 20vw 0 8vw;
	}

	.footer .footer_logo {
		display: block;
		width: 58vw;
		margin: 0 auto;
	}

	.footer .footer_logo:hover {
		opacity: 1;
	}

	.footer .footer_recruit {
		margin-top: 2vw;
		font-size: 3vw;
		text-align: center;
	}

	.footer .footer_recruit span {
		font-size: 4vw;
	}

	.footer .footer_address {
		margin-top: 5vw;
		font-size: 3.5vw;
		text-align: center;
	}

	.footer .footer_tel {
		display: block;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin: 5vw auto 0;
		font-size: 3.5vw;
	}

	.footer .footer_tel span {
		font-size: 8vw;
	}

	.footer .footer_time {
		margin-top: 2vw;
		font-size: 3.5vw;
		text-align: center;
	}

	.footer .footer_entry {
		width: 70vw;
		margin: 8vw auto 0;
		padding: 0 5vw;
		font-size: 6vw;
	}

	.footer .footer_entry:hover {
		background-color: #8FC31F;
	}

	.footer .footer_entry::before {
		width: 4.5vw;
		margin-right: 2vw;
	}

	.footer .footer_entry::after {
		width: 5vw;
	}

	.footer .footer_links {
		display: none;
	}

	.footer .footer_bottom {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		flex-direction: column;
		align-items: center;
		padding: 8vw 0 26vw;
	}

	.footer .footer_group {
		-webkit-column-gap: 3vw;
		-moz-column-gap: 3vw;
		column-gap: 3vw;
	}

	.footer .footer_icon {
		width: 10vw;
	}

	.footer .footer_company {
		font-size: 2.5vw;
	}

	.footer .footer_outer {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin-top: 8vw;
		margin-left: 0;
	}

	.footer .footer_others {
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-column-gap: 30px;
		-moz-column-gap: 30px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		column-gap: 30px;
		align-items: center;
	}

	.footer .footer_other {
		font-size: 3vw;
	}

	.footer .footer_other:hover {
		opacity: 1;
	}

	.footer .footer_copy {
		margin-top: 1vw;
		font-size: 3vw;
	}

	/* fix_btn (sp) ------------------------------------------------------------------------------------------------------ */

	.fix_btn {
		display: grid;
		z-index: 20;
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		grid-template-columns: repeat(2, 50%);
		width: 100%;
		height: 55px;
	}

	.fix_btn .fix_btn_link {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100%;
		color: #FFF;
	}

	.fix_btn .fix_btn_link:nth-child(1) {
		background-color: #363738;
		font-weight: 700;
		font-size: 14px;
	}

	.fix_btn .fix_btn_link:nth-child(2) {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		background: -webkit-gradient(linear, left top, right top, from(#8fc31f), color-stop(64.29%, #45b035), to(#008a33));
		background: linear-gradient(90deg, #8fc31f 0%, #45b035 64.29%, #008a33 100%);
		font-weight: 700;
		font-size: 18px;
		text-transform: uppercase;
	}

	.fix_btn .fix_btn_link:nth-child(2)::before {
		aspect-ratio: 1/1;
		width: 18px;
		margin-right: 10px;
		background-image: url(/wp-content/themes/child/image/entry_icon.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	/* top_fv (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_fv {
		height: calc(100vh - 125px);
		margin-top: 70px;
	}

	.top_fv .fv_heading {
		padding-top: 0;
		font-size: 6vw;
	}

	/* top_message (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_message {
		padding-top: 20vw;
	}

	.top_message .message_wrapper {
		grid-template-columns: 1fr;
	}

	.top_message .message_wrapper::before {
		-webkit-transform: translateX(-50%);
		top: auto;
		bottom: -59vw;
		left: 50%;
		width: 130vw;
		transform: translateX(-50%);
	}

	.top_message .message_body::before {
		right: -14vw;
		bottom: -39vw;
		width: 62vw;
	}

	.top_message .message_img {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
		aspect-ratio: 350/350;
		margin-top: 12vw;
	}

	.top_message .message_heading_en {
		font-size: 14vw;
	}

	.top_message .message_heading_en::before {
		top: -9vw;
		right: -14vw;
		width: 20vw;
	}

	.top_message .message_heading_ja {
		margin-top: 4vw;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	.top_message .message_text {
		margin-top: 6vw;
		font-size: 4vw;
	}

	.top_message .message_text+.message_text {
		margin-top: 8vw;
	}

	/* top_job (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_job {
		padding-top: 25vw;
		padding-bottom: 30vw;
	}

	.top_job .job_heading {
		-webkit-box-align: end;
		-ms-flex-align: end;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: flex-end;
	}

	.top_job .job_heading_en {
		font-size: 14vw;
	}

	.top_job .job_heading_ja {
		margin-bottom: 1.5vw;
		margin-left: 4vw;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	.top_job .job_items {
		margin-top: 7vw;
		display: block;
	}

	.top_job .job_item {
		aspect-ratio: 350/200;
		padding: 2.5vw;
		width: 100%;
	}

	.top_job .job_item+.job_item {
		margin-top: 2.5vw;
	}

	.top_job .job_item::after {
		right: 5vw;
		bottom: 5vw;
		width: 5vw;
	}

	.top_job .job_item:nth-child(1)::before {
		-webkit-transform: rotateX(180deg);
		z-index: -10;
		top: -8vw;
		right: -5vw;
		width: 25vw;
		transform: rotateX(180deg);
	}

	.top_job .job_item:nth-child(2) {
		z-index: 10;
	}

	.top_job .job_item:nth-child(2)::before {
		top: -10vw;
		bottom: auto;
		left: -8vw;
		width: 25vw;
	}

	.top_job .job_item:nth-child(2) .job_title span {
		margin-top: 1vw;
		margin-left: 0;
	}

	.top_job .job_item:nth-child(3)::before {
		top: -6vw;
		right: -6vw;
		width: 25vw;
	}

	.top_job .job_item:nth-child(3) .job_title span {
		margin-right: 0;
	}

	.top_job .job_item:nth-child(3) .job_img {
		margin-right: 4vw;
	}

	.top_job .job_item:hover {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	.top_job .job_item:hover .job_wrapper::before {
		opacity: 1;
	}

	.top_job .job_wrapper {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		flex-direction: row;
		justify-content: flex-start;
		padding: 0 5vw;
	}

	.top_job .job_outer {
		flex-shrink: 0;
	}

	.top_job .job_number {
		-webkit-box-align: start;
		-ms-flex-align: start;
		z-index: 10;
		position: relative;
		align-items: flex-start;
		font-size: 6vw;
	}

	.top_job .job_number::after {
		width: 5vw;
		height: 1px;
		margin-top: 1vw;
		content: "";
	}

	.top_job .job_title {
		margin-top: 4vw;
		font-size: 5vw;
	}

	.top_job .job_title span {
		padding: 0 2vw;
	}

	.top_job .job_img {
		height: 30vw;
		margin-top: 0;
		margin-left: auto;
	}

	.top_job .job_img img {
		width: auto;
	}


	/* top_interview (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_interview .interview_heading_en {
		font-size: 16vw;
	}

	.top_interview .interview_heading_en::after {
		-webkit-transform: translateX(-50%);
		bottom: -26vw;
		left: calc(50% - 1vw);
		aspect-ratio: 390/415;
		width: 100vw;
		min-width: initial;
		transform: translateX(-50%);
		background-image: url(/wp-content/themes/child/image/top_interview_deco_sp.webp);
	}

	.top_interview .interview_heading_ja {
		margin: 3vw auto 0;
		padding: 1vw 3vw;
		font-size: 6vw;
	}

	.top_interview .interview_wrapper {
		margin-top: -22vw;
		padding-top: 30vw;
		padding-bottom: 28vw;
	}

	.top_interview .top_interview_swiper {
		margin: 0 calc(50% - 50vw);
		padding: 10vw 0 20vw;
	}

	.top_interview .interview_info {
		top: -4vw;
		right: -4vw;
		width: 23vw;
	}

	.top_interview .interview_title {
		font-size: 3.5vw;
	}

	.top_interview .interview_year {
		font-size: 3vw;
	}

	.top_interview .swiper-slide {
		-webkit-transform: translateX(5vw);
		width: 60vw;
		height: 90vw;
		margin-right: 10vw;
		transform: translateX(5vw);
	}

	.top_interview .swiper-slide::after {
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}

	.top_interview .swiper-slide:hover::after {
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}

	.top_interview .swiper-slide.swiper-slide-active {
		-webkit-transform: scale(1.1) translateX(5vw);
		transform: scale(1.1) translateX(5vw);
	}

	.top_interview .swiper-slide.swiper-slide-active .staff_number {
		top: 3vw;
		left: 3vw;
		font-size: 14vw;
	}

	.top_interview .swiper-slide.swiper-slide-active .staff_number span {
		font-size: 3vw;
	}

	.top_interview .swiper-slide.swiper-slide-active::after {
		-webkit-transform: rotate(3deg);
		transform: rotate(3deg);
	}

	.top_interview .interview_number {
		top: 3vw;
		left: 3vw;
		font-size: 10vw;
	}

	.top_interview .interview_number span {
		margin-top: 1vw;
		margin-right: 1vw;
		font-size: 2vw;
	}

	.top_interview .interview_text {
		bottom: 3vw;
		left: -2.5vw;
		line-height: 2.3;
	}

	.top_interview .interview_text span {
		padding: 1vw 2vw;
		font-size: 3.8vw;
	}

	.top_interview .swiper-pagination {
		-webkit-column-gap: 5vw;
		-moz-column-gap: 5vw;
		column-gap: 5vw;
	}

	.top_interview .swiper-pagination-bullet {
		width: 4vw;
		height: 4vw;
	}

	.top_interview .interview_btn {
		margin: 8vw auto 0;
	}

	/* top_company (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_company {
		padding-top: 42vw;
		padding-bottom: 10vw;
	}

	.top_company .company_heading {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		flex-direction: column;
		align-items: flex-start;
	}

	.top_company .company_heading_en {
		font-size: 14vw;
	}

	.top_company .company_heading_ja {
		margin: 2vw 0 0 0;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	.top_company .company_mission {
		margin-top: 6vw;
	}

	.top_company .company_mission::after {
		-webkit-transform: rotate(-90deg);
		top: -142vw;
		right: auto;
		left: 0;
		aspect-ratio: 1213/1569;
		width: 151vw;
		transform: rotate(-90deg);
	}

	.top_company .mission_lead_en {
		font-size: 6vw;
	}

	.top_company .mission_lead_ja {
		margin-left: 4vw;
		font-size: 3.5vw;
	}

	.top_company .mission_copy {
		font-size: 6vw;
	}

	.top_company .mission_text {
		margin-top: 8vw;
		font-size: 4.5vw;
	}

	.top_company .mission_btn {
		margin-top: 10vw;
	}

	.top_company .top_company_swiper {
		margin: -15vw calc(50% - 50vw) 0;
		padding-top: 0;
		padding-bottom: 10vw;
	}

	.top_company .swiper-slide {
		width: 38vw;
		height: 38vw;
		margin-top: 45vw;
	}

	.top_company .company_greeting {
		margin: -40vw calc(50% - 50vw) 0 -2.5vw;
		padding: 45vw 5vw 20vw;
		background-image: url(/wp-content/themes/child/image/top_company_bg_sp.webp);
	}

	.top_company .company_greeting::before {
		bottom: -12vw;
		left: -10vw;
		width: 38vw;
	}

	.top_company .greeting_wrapper {
		grid-template-columns: 1fr;
		max-width: initial;
	}

	.top_company .greeting_lead_en {
		font-size: 5vw;
	}

	.top_company .greeting_lead_ja {
		margin-left: 3vw;
		font-size: 3.5vw;
	}

	.top_company .greeting_copy {
		margin-top: 2vw;
		font-size: 6vw;
		line-height: 1.5;
	}

	.top_company .greeting_text {
		margin-top: 7vw;
		font-size: 3.8vw;
	}

	.top_company .greeting_text+.greeting_text {
		margin-top: 4vw;
	}

	.top_company .greeting_btn {
		margin-top: 6vw;
	}

	/* top_environment (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_environment {
		margin-top: -10vw;
		padding: 16vw 0 25vw;
		overflow: hidden;
	}

	.top_environment .environment_heading_en {
		margin-left: -2.5vw;
		font-size: 16vw;
		line-height: 1.2;
		padding: 0 2vw;
		margin-left: -2vw;
	}

	.top_environment .environment_heading_ja {
		margin-top: -6vw;
		font-size: 6vw;
	}

	.top_environment .environment_items {
		margin-top: 5vw;
		display: block;
	}

	.top_environment .environment_items::before {
		top: 50vw;
		right: -5vw;
		aspect-ratio: 236/720;
		width: 60vw;
		background-image: url(/wp-content/themes/child/image/top_environment_deco_sp.webp);
	}

	.top_environment .environment_item {
		aspect-ratio: 350/200;
		width: 100%;
	}

	.top_environment .environment_item::after {
		right: 6vw;
		bottom: 6vw;
		width: 7.5vw;
	}

	.top_environment .environment_item:nth-child(2) {
		margin-top: 4vw;
	}

	.top_environment .environment_item:hover::before {
		-webkit-transform: scaleX(1) scaleY(1);
		transform: scaleX(1) scaleY(1);
	}

	.top_environment .environment_item:hover::after {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	.top_environment .environment_title {
		bottom: 6vw;
		left: 6vw;
	}

	.top_environment .environment_title_en {
		font-size: 4.5vw;
	}

	.top_environment .environment_title_ja {
		font-size: 6vw;
	}

	/* page_philosophy (sp) ------------------------------------------------------------------------------------------------------ */

	#page_philosophy {
		overflow: initial;
	}

	#page_philosophy .philosophy {
		margin-top: -300px;
		padding-top: 460px;
		overflow: hidden;
	}

	#page_philosophy .philosophy .philosophy_mission {
		margin-top: 6vw;
	}

	#page_philosophy .philosophy .philosophy_mission::after {
		-webkit-transform: rotate(-90deg);
		top: -110vw;
		right: auto;
		left: 0;
		aspect-ratio: 1213/1569;
		width: 151vw;
		transform: rotate(-90deg);
	}

	#page_philosophy .philosophy .mission_heading {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		flex-direction: column;
		align-items: flex-start;
	}

	#page_philosophy .philosophy .mission_heading_en {
		font-size: 14vw;
	}

	#page_philosophy .philosophy .mission_heading_ja {
		margin: 2vw 0 0 0;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	#page_philosophy .philosophy .mission_copy {
		margin-top: 8vw;
		font-size: 6vw;
		line-height: 1.4;
	}

	#page_philosophy .philosophy .mission_text {
		margin-top: 8vw;
		font-size: 4.5vw;
	}

	#page_philosophy .philosophy .philosophy_swiper {
		margin: -15vw calc(50% - 50vw) 0;
		padding-top: 0;
		padding-bottom: 10vw;
	}

	#page_philosophy .philosophy .swiper-slide {
		width: 38vw;
		height: 38vw;
		margin-top: 40vw;
	}

	#page_philosophy .philosophy .philosophy_vision {
		margin: -40vw calc(50% - 50vw) 0 -2.5vw;
		padding: 45vw 5vw 20vw 5vw;
		background-image: url(/wp-content/themes/child/image/top_company_bg_sp.webp);
	}

	#page_philosophy .philosophy .vision_wrapper {
		grid-template-columns: 1fr;
		max-width: initial;
	}

	#page_philosophy .philosophy .vision_heading {
		-webkit-box-align: end;
		-ms-flex-align: end;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: flex-end;
	}

	#page_philosophy .philosophy .vision_heading_en {
		font-size: 16vw;
	}

	#page_philosophy .philosophy .vision_heading_ja {
		margin: 3vw 0 1vw 4vw;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	#page_philosophy .philosophy .vision_lead {
		margin-top: 8vw;
		font-size: 5.4vw;
	}

	#page_philosophy .philosophy .vision_text {
		margin-top: 6vw;
		font-size: 4vw;
	}

	#page_philosophy .value {
		padding-top: 25vw;
		overflow: hidden;
	}

	#page_philosophy .value .value_heading_en {
		font-size: 16vw;
	}

	#page_philosophy .value .value_heading_ja {
		margin: 5vw auto 0;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	#page_philosophy .value .value_items {
		row-gap: 6vw;
		margin-top: 12vw;
	}

	#page_philosophy .value .value_item {
		aspect-ratio: initial;
		width: 100%;
		padding: 8vw 0;
	}

	#page_philosophy .value .value_item::before {
		width: calc(100% - 5vw);
		height: calc(100% - 5vw);
	}

	#page_philosophy .value .value_item::after {
		position: absolute;
		width: 30vw !important;
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	#page_philosophy .value .value_item:nth-child(1)::after {
		top: -10vw;
		right: -5vw;
	}

	#page_philosophy .value .value_item:nth-child(2)::after {
		bottom: -10vw;
		left: -14vw;
	}

	#page_philosophy .value .value_item:nth-child(3)::after {
		top: -8vw;
		right: -8vw;
	}

	#page_philosophy .value .value_item:nth-child(4)::after {
		bottom: -10vw;
		left: -10vw;
	}

	#page_philosophy .value .value_item:nth-child(5)::after {
		top: -6vw;
		right: -10vw;
	}

	#page_philosophy .value .value_heading {
		padding: 0 3vw;
		font-size: 6vw;
	}

	#page_philosophy .value .value_lead {
		font-size: 4vw;
	}

	#page_philosophy .value .value_lead::after {
		height: 5vw;
		margin-top: 1vw;
	}

	#page_philosophy .value .value_text {
		margin-top: 1vw;
		font-size: 4vw;
	}

	#page_philosophy .message {
		padding: 25vw 0;
		overflow: hidden;
	}

	#page_philosophy .message .message_wrapper {
		grid-template-columns: 1fr;
	}

	#page_philosophy .message .message_wrapper::before {
		-webkit-transform: translateX(-50%);
		top: -30vw;
		left: 50%;
		width: 125vw;
		transform: translateX(-50%);
	}

	#page_philosophy .message .message_body {
		display: contents;
	}

	#page_philosophy .message .message_body::before {
		right: -14vw;
		bottom: -39vw;
		width: 62vw;
	}

	#page_philosophy .message .message_img {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 2;
		aspect-ratio: 350/300;
		margin: 8vw -2.5vw 0;
	}

	#page_philosophy .message .message_img img {
		object-position: 50% 12%;
	}

	#page_philosophy .message .message_heading {
		order: 1;
	}

	#page_philosophy .message .message_heading_en {
		font-size: 14vw;
	}

	#page_philosophy .message .message_heading_en::before {
		top: -9vw;
		right: -14vw;
		width: 20vw;
	}

	#page_philosophy .message .message_heading_ja {
		margin-top: 4vw;
		padding: 0.5vw 3vw;
		font-size: 3.8vw;
	}

	#page_philosophy .message .message_text {
		margin-top: 8vw;
		font-size: 3.5vw;
		order: 4;
	}

	#page_philosophy .message .message_text+.message_text {
		margin-top: 6vw;
	}

	#page_philosophy .message .message_name {
		margin-top: 2vw;
		font-size: 4vw;
		order: 3;
	}

	#page_philosophy .message .message_name span {
		margin-left: 2vw;
		font-size: 5vw;
	}

	/* page_business (sp) ------------------------------------------------------------------------------------------------------ */

	#page_business .business .business_wrap::before {
		width: 100vw;
		right: -20vw;
		top: 90vw;
	}

	#page_business .business .business_links {
		grid-template-columns: 1fr;
		row-gap: 4vw;
	}

	#page_business .business .business_link {
		padding: 6vw 4vw;
	}

	#page_business .business .business_link::before {
		width: calc(100% - 4vw);
		height: calc(100% - 4vw);
	}

	#page_business .business .business_link::after {
		display: none;
	}

	#page_business .business .link_heading {
		font-size: 4vw;
	}

	#page_business .business .link_heading span {
		margin-right: 1vw;
		font-size: 5vw;
	}

	#page_business .business .link_text {
		font-size: 3.5vw;
	}

	#page_business .business .business_wrapper {
		grid-template-columns: 1fr;
		margin-top: 15vw;
	}

	#page_business .business .business_item+.business_item {
		margin-top: 15vw;
	}

	#page_business .business .business_heading {
		font-size: 6vw;
		display: flex;
		align-items: flex-start;
		line-height: 1.4;
	}

	#page_business .business .business_heading span {
		margin-right: 1vw;
		font-size: 7vw;
		margin-top: -0.9vw;
	}

	#page_business .business .business_lead {
		margin-top: 2vw;
		font-size: 4vw;
	}

	#page_business .business .business_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	#page_business .business .business_img {
		aspect-ratio: 5/3;
		margin-top: 4vw;
	}

	#page_business .business .business_other {
		margin-top: 6vw;
	}

	#page_business .business .other_title {
		padding: 0.5vw 3vw;
		font-size: 4vw;
	}

	#page_business .business .other_lead {
		margin-top: 2vw;
		font-size: 4.5vw;
	}

	#page_business .business .other_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	/* page_schedule (sp) ------------------------------------------------------------------------------------------------------ */

	#page_schedule {
		overflow: initial;
	}

	#page_schedule .schedule {
		overflow: hidden;
		padding-top: 30vw;
		margin-top: -22vw;
	}

	#page_schedule .schedule::before {
		width: 100vw;
		right: -30vw;
		top: -10vw;
	}

	#page_schedule .schedule .schedule_lead {
		font-size: 5vw;
		line-height: 1.5;
	}

	#page_schedule .schedule .schedule_text {
		margin-top: 3vw;
		font-size: 4vw;
	}

	#page_schedule .schedule .schedule_wrapper {
		grid-template-columns: 1fr;
		margin-top: 10vw;
	}

	#page_schedule .schedule .schedule_img {
		aspect-ratio: 10/7;
	}

	#page_schedule .schedule .schedule_head {
		margin-top: 3vw;
	}

	#page_schedule .schedule .schedule_class {
		padding: 0.5vw 3vw;
		font-size: 4vw;
	}

	#page_schedule .schedule .schedule_name {
		font-size: 6vw;
	}

	#page_schedule .schedule .schedule_year {
		font-size: 4vw;
	}

	#page_schedule .schedule .schedule_info {
		margin-top: 5vw;
	}

	#page_schedule .schedule .schedule_time {
		margin-top: 20vw;
		font-size: 12vw;
	}

	#page_schedule .schedule .schedule_items {
		margin: 0 -2.5vw;
	}

	#page_schedule .schedule .schedule_items::before {
		display: none;
	}

	#page_schedule .schedule .schedule_item {
		display: block;
		padding-left: 8vw;
	}

	#page_schedule .schedule .schedule_item+.schedule_item {
		margin-top: 10vw;
	}

	#page_schedule .schedule .schedule_item::before {
		top: 8vw;
		left: 2vw;
		width: 2vw;
		height: calc(100% + 8vw);
	}

	#page_schedule .schedule .item_head {
		padding-left: 0;
	}

	#page_schedule .schedule .item_time {
		font-size: 12vw;
	}

	#page_schedule .schedule .item_time::before {
		top: 3.5vw;
		left: -8vw;
		width: 6vw;
	}

	#page_schedule .schedule .item_time::after {
		top: 4.5vw;
		left: -7vw;
		width: 4vw;
	}

	#page_schedule .schedule .item_lead {
		margin-top: 2vw;
		font-size: 5vw;
	}

	#page_schedule .schedule .item_text {
		margin-top: 5vw;
		font-size: 3.5vw;
	}

	#page_schedule .schedule .item_img {
		aspect-ratio: 5/3;
		margin-top: 4vw;
	}

	#page_schedule .schedule .schedule_lists {
		margin: 0 -2.5vw;
	}

	#page_schedule .schedule .schedule_lists::before {
		width: 50vw;
		bottom: -30vw;
		left: -30vw;
	}

	#page_schedule .schedule .schedule_list {
		padding-left: 8vw;
	}

	#page_schedule .schedule .schedule_list+.schedule_list {
		margin-top: 10vw;
	}

	#page_schedule .schedule .schedule_list::before {
		top: 6vw;
		left: 2.5vw;
		width: 1.5vw;
		height: calc(100% + 8vw);
	}

	#page_schedule .schedule .list_time {
		font-size: 8vw;
	}

	#page_schedule .schedule .list_time::before {
		top: 3vw;
		left: -7vw;
		width: 4.5vw;
	}

	#page_schedule .schedule .list_text {
		margin-top: 2vw;
		font-size: 3.5vw;
	}

	/* page_numbers (sp) ------------------------------------------------------------------------------------------------------ */

	#page_numbers .work {
		padding-top: 15vw;
	}

	#page_numbers .work .work_heading_en {
		font-size: 12vw;
	}

	#page_numbers .work .work_heading_ja {
		margin: 2vw auto 0;
		padding: 0.5vw 3vw;
		font-size: 4vw;
	}

	#page_numbers .work .work_items {
		grid-template-columns: 1fr;
		row-gap: 4vw;
		margin-top: 5vw;
	}

	#page_numbers .work .work_items::after {
		width: 50vw;
		top: -65vw;
		right: -20vw;
	}

	#page_numbers .work .work_items::before {
		width: 150vw;
		left: -80vw;
	}

	#page_numbers .work .work_item {
		padding: 5vw 2vw;
	}

	#page_numbers .work .work_lead {
		margin-top: 2vw;
		font-size: 4.5vw;
	}

	#page_numbers .work .work_number {
		font-size: 4vw;
	}

	#page_numbers .work .work_number span {
		font-size: 10vw;
	}

	#page_numbers .work .work_lists {
		-webkit-column-gap: 3vw;
		-moz-column-gap: 3vw;
		column-gap: 3vw;
	}

	#page_numbers .work .work_text {
		margin-top: 1vw;
		font-size: 3.5vw;
		padding-inline: 5vw;
	}

	#page_numbers .work .graph_items {
		-webkit-column-gap: 2vw;
		-moz-column-gap: 2vw;
		column-gap: 2vw;
		margin-top: 4vw;
	}

	#page_numbers .work .graph_number {
		margin-bottom: 1vw;
		font-size: 3vw;
	}

	#page_numbers .work .graph_text {
		margin-top: 1vw;
		font-size: 3vw;
	}

	#page_numbers .work .graph_bar {
		width: 6vw;
	}

	#page_numbers .work .work_item.salary .graph_item:nth-child(1) .graph_bar {
		height: 17.52vw;
	}

	#page_numbers .work .work_item.salary .graph_item:nth-child(2) .graph_bar {
		height: 22.10vw;
	}

	#page_numbers .work .work_item.salary .graph_item:nth-child(3) .graph_bar {
		height: 25.28vw;
	}

	#page_numbers .work .work_item.salary .graph_item:nth-child(4) .graph_bar {
		height: 27.69vw;
	}

	#page_numbers .work .work_item.salary .graph_item:nth-child(5) .graph_bar {
		height: 30vw;
	}

	#page_numbers .work .work_item.best .graph_item:nth-child(1) .graph_bar {
		height: 15.61vw;
	}

	#page_numbers .work .work_item.best .graph_item:nth-child(2) .graph_bar {
		height: 17.18vw;
	}

	#page_numbers .work .work_item.best .graph_item:nth-child(3) .graph_bar {
		height: 21.82vw;
	}

	#page_numbers .work .work_item.best .graph_item:nth-child(4) .graph_bar {
		height: 23.57vw;
	}

	#page_numbers .work .work_item.best .graph_item:nth-child(5) .graph_bar {
		height: 30vw;
	}

	#page_numbers .work .work_item.old .graph_items {
		-webkit-column-gap: 4vw;
		-moz-column-gap: 4vw;
		column-gap: 4vw;
	}

	#page_numbers .work .work_item.old .graph_item:nth-child(1) .graph_bar {
		height: 30vw;
	}

	#page_numbers .work .work_item.old .graph_item:nth-child(2) .graph_bar {
		height: 22.34vw;
	}

	#page_numbers .work .work_item.old .graph_item:nth-child(3) .graph_bar {
		height: 7.65vw;
	}

	#page_numbers .work .work_item.old .graph_item:nth-child(4) .graph_bar {
		height: 3.82vw;
	}

	#page_numbers .questionnaire {
		padding: 15vw 0;
	}

	#page_numbers .questionnaire .questionnaire_heading_en {
		font-size: 12vw;
	}

	#page_numbers .questionnaire .questionnaire_heading_ja {
		margin: 2vw auto 0;
		padding: 0.5vw 3vw;
		font-size: 4vw;
	}

	#page_numbers .questionnaire .questionnaire_items {
		display: block;
		margin-top: 5vw;
	}

	#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::before,
	#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::after,
	#page_numbers .questionnaire .questionnaire_items+.questionnaire_items::before {
		width: 100vw;
	}

	#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::before {
		top: -40vw;
		right: -40vw;
	}

	#page_numbers .questionnaire .questionnaire_heading+.questionnaire_items::after {
		top: 150vw;
		left: -40vw;
	}

	#page_numbers .questionnaire .questionnaire_items+.questionnaire_items::before {
		bottom: -30vw;
		right: -40vw;
	}

	#page_numbers .questionnaire .questionnaire_items+.questionnaire_items {
		margin-top: 4vw;
	}

	#page_numbers .questionnaire .questionnaire_items+.questionnaire_items .questionnaire_img {
		width: 20%;
	}

	#page_numbers .questionnaire .questionnaire_item {
		padding: 5vw 3vw;
	}

	#page_numbers .questionnaire .questionnaire_item+.questionnaire_item {
		margin-top: 4vw;
	}

	#page_numbers .questionnaire .questionnaire_img {
		width: 15%;
	}

	#page_numbers .questionnaire .questionnaire_lead {
		margin-top: 2vw;
		font-size: 4.5vw;
	}

	#page_numbers .questionnaire .questionnaire_number {
		margin-top: 1vw;
		font-size: 4vw;
	}

	#page_numbers .questionnaire .questionnaire_number span {
		font-size: 10vw;
	}

	#page_numbers .questionnaire .questionnaire_text {
		margin-top: 5vw;
		font-size: 3.5vw;
		padding-inline: 3vw;
	}

	#page_numbers .questionnaire .questionnaire_lists {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		margin-top: 2vw;
	}

	#page_numbers .questionnaire .questionnaire_lists .questionnaire_number {
		margin-top: 2vw;
		line-height: 1;
	}

	#page_numbers .questionnaire .questionnaire_ranks {
		margin: 4vw auto 0;
	}

	#page_numbers .questionnaire .questionnaire_rank {
		font-size: 4vw;
		padding-bottom: 1.5vw;
	}

	#page_numbers .questionnaire .questionnaire_rank span {
		font-size: 6vw;
	}

	#page_numbers .questionnaire .questionnaire_rank+.questionnaire_rank {
		margin-top: 1.5vw;
	}

	#page_numbers .questionnaire .graph_items {
		margin: 5vw 0 0 0;
	}

	#page_numbers .questionnaire .graph_item {
		-webkit-column-gap: 2vw;
		-moz-column-gap: 2vw;
		column-gap: 2vw;
	}

	#page_numbers .questionnaire .graph_item+.graph_item {
		margin-top: 3vw;
	}

	#page_numbers .questionnaire .graph_text {
		width: 28vw;
		font-size: 3.5vw;
		line-height: 1.5;
		text-align: right;
	}

	#page_numbers .questionnaire .graph_number {
		font-size: 3.5vw;
	}

	#page_numbers .questionnaire .graph_bar {
		height: 5vw;
	}

	#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(1) .graph_bar {
		width: 30vw;
	}

	#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(2) .graph_bar {
		width: 20vw;
	}
	
	#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(3) .graph_bar {
		width: 7vw;
	}
	
	#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(4) .graph_bar {
		width: 4vw;
	}
	
	#page_numbers .questionnaire .questionnaire_item.job .graph_item:nth-child(5) .graph_bar {
		width: 2.74vw;
	}

	#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(1) .graph_bar {
		width: 30vw;
	}

	#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(2) .graph_bar {
		width: 15vw;
	}
	
	#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(3) .graph_bar {
		width: 10vw;
	}
	
	#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(6) .graph_bar {
		width: 2vw;
	}

	#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(4) .graph_bar {
		width: 6vw;
	}
	
	#page_numbers .questionnaire .questionnaire_item.company .graph_item:nth-child(5) .graph_bar {
		width: 4vw;
	}

	/* page_staff_archive (sp) ------------------------------------------------------------------------------------------------------ */

	#page_staff_archive .staff {
		padding-top: 30vw;
		margin-top: -15vw;
	}

	#page_staff_archive .staff::before {
		width: 60vw;
		right: -15vw;
		top: -30vw;
	}

	#page_staff_archive .staff .staff_message {
		font-size: 4vw;
	}

	#page_staff_archive .staff .staff_items {
		-webkit-column-gap: 2%;
		-moz-column-gap: 2%;
		grid-template-columns: repeat(2, 49%);
		column-gap: 2%;
		row-gap: 10vw;
		margin: 15vw -2.5vw 0;
	}

	#page_staff_archive .staff .staff_items::before,
	#page_staff_archive .staff .staff_items::after {
		width: 100vw;
	}

	#page_staff_archive .staff .staff_items::before {
		left: -50vw;
	}

	#page_staff_archive .staff .staff_items::after {
		right: -50vw;
		bottom: -80vw;
	}

	#page_staff_archive .staff .staff_info {
		-webkit-transform: translateY(-50%);
		top: 0;
		right: 2vw;
		aspect-ratio: initial;
		width: auto;
		padding: 0.5vw 2vw;
		transform: translateY(-50%);
		border-radius: 2vw;
	}

	#page_staff_archive .staff .staff_title {
		font-size: 4vw;
	}

	#page_staff_archive .staff .staff_item::after {
		display: none;
	}

	#page_staff_archive .staff .staff_number {
		top: 2vw;
		left: 2vw;
		font-size: 10vw;
	}

	#page_staff_archive .staff .staff_number span {
		margin-top: 1vw;
		margin-right: 1vw;
		font-size: 2vw;
	}

	#page_staff_archive .staff .staff_status {
		bottom: 2vw;
		left: 0;
	}

	#page_staff_archive .staff .staff_text {
		padding: 0.5vw 2vw;
		font-size: 3.5vw;
	}

	#page_staff_archive .staff .staff_text+.staff_text {
		margin-top: 1vw;
	}

	/* page_staff_single (sp) ------------------------------------------------------------------------------------------------------ */

	#page_staff_single {
		overflow: hidden;
	}

	#page_staff_single .staff {
		padding-top: calc(5vw + 70px);
	}

	#page_staff_single .staff .common_fv_items {
		-webkit-column-gap: 6vw;
		-moz-column-gap: 6vw;
		column-gap: 6vw;
		font-size: 3vw;
	}

	#page_staff_single .staff .common_fv_items span a span:hover {
		opacity: 1;
	}

	#page_staff_single .staff .staff_head {
		grid-template-columns: 1fr;
		margin: 5vw -2.5vw 0;
		padding-bottom: 0;
	}

	#page_staff_single .staff .staff_head::before {
		width: 50vw;
		right: -20vw;
		bottom: auto;
		top: 70vw;
	}

	#page_staff_single .staff .staff_copy span {
		padding: 0.5vw 2.5vw;
		font-size: 5vw;
	}

	#page_staff_single .staff .staff_department {
		margin-top: 5vw;
		font-size: 4vw;
	}

	#page_staff_single .staff .staff_year {
		font-size: 4vw;
	}

	#page_staff_single .staff .staff_title {
		margin-top: 2vw;
		font-size: 8vw;
	}

	#page_staff_single .staff .staff_biography {
		margin-top: 6vw;
		font-size: 4vw;
	}

	#page_staff_single .staff .staff_main {
		aspect-ratio: 10/7;
		margin-top: 3vw;
		order: -1;
	}

	#page_staff_single .staff .staff_wrapper {
		grid-template-columns: 1fr;
		margin: 15vw -2.5vw 0;
	}

	#page_staff_single .staff .staff_item+.staff_item {
		margin-top: 20vw;
	}

	#page_staff_single .staff .item_title {
		font-size: 5vw;
	}

	#page_staff_single .staff .item_title br {
		display: none;
	}

	#page_staff_single .staff .item_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	#page_staff_single .staff .item_img {
		margin-top: 5vw;
	}

	/* page_welfare (sp) ------------------------------------------------------------------------------------------------------ */

	#page_welfare .welfare {
		padding-top: 30vw;
		margin-top: -15vw;
	}

	#page_welfare .welfare_items {
		-webkit-column-gap: 2%;
		-moz-column-gap: 2%;
		grid-template-columns: repeat(2, 49%);
		column-gap: 2%;
		row-gap: 3vw;
		margin: 0 -2.5vw;
	}

	#page_welfare .welfare_items::before,
	#page_welfare .welfare_items::after {
		width: 50vw;
	}

	#page_welfare .welfare_items::before {
		right: -30vw;
		top: -35vw;
	}

	#page_welfare .welfare_items::after {
		left: -20vw;
		bottom: -50vw;
	}

	#page_welfare .welfare_item {
		padding: 4vw 2.5vw;
	}

	#page_welfare .welfare_title {
		margin-top: 3vw;
		font-size: 4.5vw;
		padding: 0 3vw;
	}

	#page_welfare .welfare_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	/* page_education (sp) ------------------------------------------------------------------------------------------------------ */
	#page_education {
		overflow: initial;
	}

	#page_education .education {
		overflow: hidden;
		padding-top: 30vw;
		margin-top: -22vw;
	}

	#page_education .education::before {
		width: 100vw;
		right: -30vw;
		top: -10vw;
	}

	#page_education .education .education_lead {
		font-size: 6vw;
	}

	#page_education .education .education_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	#page_education .education .education_container {
		grid-template-columns: 1fr;
		margin-top: 5vw;
		padding: 5vw;
	}

	#page_education .education .education_icon {
		width: 30%;
	}

	#page_education .education .education_title {
		font-size: 4.5vw;
	}

	#page_education .education .education_body {
		margin-top: 3vw;
		font-size: 3.5vw;
	}

	#page_education .education .education_follow {
		margin-top: 15vw;
		padding: 15vw 0;
	}

	#page_education .education .education_follow::after {
		width: 60vw;
		top: -35vw;
		left: -30vw;
		transform: rotate(45deg);
	}

	#page_education .education .follow_title_en {
		font-size: 10vw;
	}

	#page_education .education .follow_title_ja {
		margin: 2vw auto;
		padding: 0.5vw 3vw;
		font-size: 3.5vw;
	}

	#page_education .education .follow_message {
		margin-top: 5vw;
		font-size: 3.5vw;
	}

	#page_education .education .follow_items {
		margin: 10vw -2.5vw 0;
	}

	#page_education .education .follow_item {
		padding-left: 6vw;
	}

	#page_education .education .follow_item+.follow_item {
		margin-top: 10vw;
	}

	#page_education .education .follow_item::before {
		top: 4vw;
		left: 1.4vw;
		width: 1.5vw;
		height: calc(100% + 8vw);
	}

	#page_education .education .follow_time {
		font-size: 5vw;
	}

	#page_education .education .follow_time::before {
		top: 1vw;
		left: -6vw;
		width: 4vw;
	}

	#page_education .education .follow_heading {
		margin-top: 4vw;
		font-size: 6vw;
	}

	#page_education .education .follow_text {
		margin-top: 2vw;
		font-size: 3.5vw;
	}

	#page_education .education .education_other {
		padding-top: 15vw;
	}

	#page_education .education .education_other::before,
	#page_education .education .education_other::after {
		width: 70vw;
	}

	#page_education .education .education_other::before {
		right: -25vw;
		top: -60vw;
		transform: rotate(90deg);
	}

	#page_education .education .education_other::after {
		left: -30vw;
		bottom: -60vw;
	}

	#page_education .education .other_title_en {
		font-size: 10vw;
	}

	#page_education .education .other_title_ja {
		margin: 2vw auto;
		padding: 0.5vw 3vw;
		font-size: 3.5vw;
	}

	#page_education .education .other_message {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	#page_education .education .other_items {
		grid-template-columns: 1fr;
		row-gap: 5vw;
		margin-top: 10vw;
	}

	#page_education .education .other_item {
		padding: 5vw 2.5vw;
	}

	#page_education .education .other_heading {
		margin-bottom: 4vw;
		font-size: 5vw;
	}

	#page_education .education .other_text {
		font-size: 3.5vw;
	}

	/* page_requirements (sp) ------------------------------------------------------------------------------------------------------ */

	#page_requirements {
		overflow: initial;
	}

	#page_requirements .requirements {
		padding-top: 15vw;
		overflow: hidden;
		padding-top: 35vw;
		margin-top: -22vw;
	}

	#page_requirements .requirements::before {
		width: 100vw;
		right: -30vw;
		top: -10vw;
	}

	#page_requirements .requirements .requirements_heading_en {
		font-size: 12vw;
	}

	#page_requirements .requirements .requirements_heading_ja {
		margin: 2vw auto 0;
		padding: 0.5vw 3vw;
		font-size: 4vw;
	}

	#page_requirements .requirements .requirements_items {
		margin-top: 10vw;
	}

	#page_requirements .requirements .requirements_item {
		grid-template-columns: 1fr;
		padding: 4vw 0;
	}

	#page_requirements .requirements .requirements_item dt {
		padding-left: 0;
		color: #FCCE25;
		font-size: 4.5vw;
	}

	#page_requirements .requirements .requirements_item dd {
		margin-top: 4vw;
		font-size: 4vw;
	}

	#page_requirements .process {
		padding-top: 15vw;
		padding-bottom: 15vw;
	}

	#page_requirements .process .process_heading_en {
		font-size: 12vw;
	}

	#page_requirements .process .process_heading_ja {
		margin: 2vw auto 0;
		padding: 0.5vw 3vw;
		font-size: 4vw;
	}

	#page_requirements .process .process_items {
		grid-template-columns: 1fr;
		row-gap: 5vw;
		margin-top: 10vw;
	}

	#page_requirements .process .process_items::before {
		-webkit-transform: translateX(-50%);
		top: auto;
		bottom: -59vw;
		left: 50%;
		width: 130vw;
		transform: translateX(-50%);
	}

	#page_requirements .process .process_item {
		padding: 6vw 4vw;
	}

	#page_requirements .process .process_title {
		font-size: 6vw;
	}

	#page_requirements .process .process_lists {
		margin: 5vw auto 0;
		padding-left: 8vw;
		width: initial;
	}

	#page_requirements .process .process_lists::before {
		-webkit-transform: translateY(0);
		top: 3vw;
		left: 1.3vw;
		width: 1.5vw;
		height: calc(100% - 12vw);
		transform: translateY(0);
	}

	#page_requirements .process .process_list {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		flex-direction: column;
		align-items: flex-start;
	}

	#page_requirements .process .process_list::before {
		top: 2.5vw;
		left: -8vw;
		width: 4vw;
	}

	#page_requirements .process .process_list+.process_list {
		margin-top: 6vw;
	}

	#page_requirements .process .process_step {
		font-size: 5vw;
	}

	#page_requirements .process .process_text {
		font-size: 5vw;
		line-height: 1;
	}

	/* page_error (sp) ------------------------------------------------------------------------------------------------------ */

	#page_error .error_text {
		font-size: 4vw;
	}

	#page_error .error_btn {
		margin: 8vw auto 0;
	}

}

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

	.pc_tel {
		pointer-events: none;
	}

}