@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: #333;
	font-size: 16px;
	line-height: 1.7;
	-webkit-text-size-adjust: 100%;
	min-width: 1340px;
	font-family: "Noto Sans JP", sans-serif;
}

.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;
}


/* K-ROOM CSS (pc) --------------------------------------------------------------------------------------------------------------------------------------------------------------- */
@font-face {
	font-weight: 700;
	src: url("/wp-content/themes/child/font/CenturyGothic-bold.woff") format("woff");
	font-family: "CenturyGothic";
}

.font_century {
	font-family: "CenturyGothic", 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: opacity 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 280/60;
	width: 280px;
	padding-left: 25px;
	background-color: #333;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
	transition: opacity 0.3s ease 0s;
}

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

a.common_btn:hover {
	opacity: 0.6;
}

.common_fv {
	position: relative;
	margin-top: 100px;
}

.common_fv .wrap {
	width: 1240px;
}

.common_fv .common_fv_heading {
	padding: 85px 0;
}

.common_fv .common_fv_heading_en {
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	opacity: 0.8;
}

.common_fv .common_fv_heading_en span {
	margin-right: 5px;
	font-size: 40px;
	line-height: 1;
}

.common_fv .common_fv_heading_ja {
	margin-top: 5px;
	color: #FFF;
	font-weight: 700;
	font-size: 48px;
	line-height: 1;
	letter-spacing: 0.13em;
}

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

.common_fv .common_fv_bg {
	z-index: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.3)), to(rgba(255, 255, 255, 0)));
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0) 100%);
}

.common_bread {
	margin-top: 15px;
}

.common_bread .wrap {
	width: 1240px;
}

.common_bread .common_bread_items {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	-webkit-column-gap: 5px;
	-moz-column-gap: 5px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 5px;
	flex-wrap: wrap;
	justify-content: flex-end;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.09em;
}

.common_bread .common_bread_items span a span {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #808080;
	transition: opacity 0.3s ease 0s;
}

.common_bread .common_bread_items span a span:hover {
	opacity: 0.7;
}

.common_bread .common_bread_items span>span {
	color: #FC4501;
}

.common_articles {
	-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;
}

.common_articles .common_article {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.1);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	flex-direction: column;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.1);
	color: #333;
}

.common_articles .common_article:hover .article_img img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.common_articles .common_article:hover .article_title {
	color: #FC4501;
}

.common_articles .article_lead {
	z-index: 10;
	position: absolute;
	top: 0;
	right: 0;
	padding: 0 15px 3px;
	background-color: #FC4501;
	color: #FFF;
	font-weight: 700;
	font-size: 18px;
}

.common_articles .article_img {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	aspect-ratio: 5/3;
	overflow: hidden;
}

.common_articles .article_img img {
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	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_articles .article_body {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 15px;
}

.common_articles .article_sold {
	margin-bottom: 10px;
	color: #FC4501;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.common_articles .article_title {
	-webkit-transition: color 0.3s ease 0s;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.1em;
	transition: color 0.3s ease 0s;
}

.common_articles .article_layout {
	margin-top: 10px;
	margin-bottom: 10px;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.05em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

.common_articles .article_traffic {
	margin-bottom: 20px;
	font-weight: 500;
	font-size: 16px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

.common_articles .article_address {
	margin-top: 10px;
	font-weight: 500;
	font-size: 16px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

.common_articles .article_price {
	margin-top: auto;
	font-weight: 700;
	font-size: 16px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}

.common_articles .article_price span {
	font-size: 28px;
	color: #FC4501;
	margin-right: 3px;
}

.common_section {
	padding: 80px 0 160px;
}

.common_single .single_tag {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	padding: 5px 15px;
	background-color: #FC4501;
	color: #FFF;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
}

.common_single .single_title {
	margin-top: 15px;
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.1em;
}

.common_single .single_items {
	-webkit-column-gap: 4%;
	-moz-column-gap: 4%;
	display: grid;
	grid-template-columns: 48% 48%;
	column-gap: 4%;
}

.common_single .single_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 170px 1fr;
	align-items: center;
	padding: 15px 0;
	border-bottom: 1px solid #E2E2E2;
}

.common_single .single_item dt,
.common_single .single_item dd {
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.05em;
}

.common_single .single_lead {
	margin-top: 60px;
	font-size: 21px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.common_single .single_lead.after {
	color: #FC4501;
}

.common_single .single_imgs {
	-webkit-column-gap: 1.33%;
	-moz-column-gap: 1.33%;
	display: grid;
	grid-template-columns: repeat(4, 24%);
	column-gap: 1.33%;
	row-gap: 20px;
	margin-top: 60px;
}

.common_single .single_img_small {
	-webkit-transition: opacity 0.3s ease 0s;
	position: relative;
	aspect-ratio: 5/4;
	cursor: pointer;
	transition: opacity 0.3s ease 0s;
}

.common_single .single_img_small::before,
.common_single .single_img_small::after {
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

.common_single .single_img_small::before {
	z-index: 2;
	right: 5px;
	bottom: 5px;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/common_icon_single1.svg);
	background-size: contain;
	background-repeat: no-repeat;
}

.common_single .single_img_small::after {
	z-index: 1;
	right: 0;
	bottom: 0;
	width: 30px;
	background-color: #FFF;
}

.common_single .single_img_small:hover {
	opacity: 0.7;
}

.common_single .single_wrap {
	-webkit-transition: opacity 0.3s ease 0s;
	visibility: hidden;
	z-index: 3;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 0.3s ease 0s;
}

.common_single .single_wrap.is_open {
	visibility: visible;
	opacity: 1;
}

.common_single .single_img_big {
	-webkit-transform: translate(-50%, -50%);
	z-index: 4;
	position: absolute;
	top: calc(50% + 50px);
	left: 50%;
	aspect-ratio: 5/3;
	width: 50%;
	transform: translate(-50%, -50%);
}

.common_single .single_img_big span {
	position: absolute;
	aspect-ratio: 1/1;
	cursor: pointer;
}

.common_single .single_img_big span.single_space {
	top: 0;
	right: 0;
	width: 50px;
	background-color: #FFF;
}

.common_single .single_img_big span.single_icon {
	top: 10px;
	right: 10px;
	width: 30px;
	background-image: url(/wp-content/themes/child/image/common_icon_single2.svg);
	background-size: contain;
	background-repeat: no-repeat;
}

.common_single span.single_bg {
	z-index: 3;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
	opacity: 0.2;
}

.common_simulator {
	-webkit-transform: translateX(-10px);
	width: calc(100% + 20px);
	margin-top: 50px;
	transform: translateX(-10px);
}

.common_simulator .simulator_text {
	-webkit-transform: translateY(30px);
	padding-left: 10px;
	transform: translateY(30px);
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.1em;
}

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

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

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

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

.header {
	z-index: 20;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	min-width: 1340px;
	height: 100px;
	padding-left: 50px;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(rgba(255, 255, 255, 0.82)));
	background: linear-gradient(#fff 0%, rgba(255, 255, 255, 0.82) 100%);
}

.header .header_inner,
.header .header_nav,
.header .header_items,
.header .header_item,
.header .header_trigger,
.header .header_btns,
.header .header_btn {
	height: 100%;
}

.header .header_inner {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.header .header_logo {
	-webkit-transition: opacity 0.3s ease 0s;
	width: 200px;
	transition: opacity 0.3s ease 0s;
}

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

.header .header_nav {
	margin-left: auto;
}

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

.header .header_item {
	position: relative;
}

.header .header_trigger {
	-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;
	color: #333;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.09em;
}

.header a.header_trigger {
	-webkit-transition: opacity 0.3s ease 0s;
	transition: opacity 0.3s ease 0s;
}

.header a.header_trigger:hover {
	opacity: 0.7;
}

.header p.header_trigger::after {
	-webkit-transform: translateY(-2px) rotate(135deg);
	-webkit-transition: -webkit-transform 0.3s ease 0s;
	aspect-ratio: 1/1;
	width: 10px;
	margin-left: 12px;
	transform: translateY(-2px) rotate(135deg);
	border: 2px solid #333;
	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 p.header_trigger.is_active::after {
	-webkit-transform: translateY(3px) rotate(-45deg);
	transform: translateY(3px) rotate(-45deg);
}

.header .header_item:nth-child(2) .header_drawer {
	width: 380px;
}

.header .header_item:nth-child(2) .header_links {
	grid-template-columns: 100px 1fr;
}

.header .header_item:nth-child(3) .header_drawer {
	width: 280px;
}

.header .header_item:nth-child(3) .header_links {
	grid-template-columns: 1fr;
}

.header .header_item:nth-child(4) .header_drawer {
	width: 350px;
}

.header .header_item:nth-child(4) .header_links {
	grid-template-columns: 155px 1fr;
}

.header .header_drawer {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	padding: 24px 20px;
	background-color: rgba(255, 255, 255, 0.9);
}

.header .header_links {
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	display: grid;
	column-gap: 30px;
	row-gap: 10px;
}

.header .header_link a {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #333;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
	transition: opacity 0.3s ease 0s;
}

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

.header .header_info {
	margin-left: 30px;
}

.header .header_tel {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-weight: 700;
	font-size: 20px;
	line-height: 1;
}

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

.header .header_time {
	margin-top: 5px;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.065em;
}

.header .header_btns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-left: 30px;
}

.header .header_btn {
	-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;
	-webkit-transition: background 0.3s, color 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1/1;
	font-weight: 700;
	font-size: 13px;
	transition: background 0.3s, color 0.3s ease 0s;
}

.header .header_btn::before {
	-webkit-transition: background 0.3s ease 0s;
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

.header .header_btn.reserve {
	border: 2px solid #333;
	background-color: #333;
	color: #FFF;
}

.header .header_btn.reserve::before {
	aspect-ratio: 21/25;
	width: 21px;
	margin-bottom: 8px;
	background-image: url(/wp-content/themes/child/image/common_icon_reserve.svg);
}

.header .header_btn.reserve:hover {
	background-color: #FFF;
	color: #333;
}

.header .header_btn.reserve:hover::before {
	background-image: url(/wp-content/themes/child/image/common_icon_reserve_hover.svg);
}

.header .header_btn.calc {
	border: 2px solid #FFF;
	background-color: #FFF;
	color: #333;
}

.header .header_btn.calc::before {
	aspect-ratio: 19/26;
	width: 19px;
	margin-bottom: 8px;
	background-image: url(/wp-content/themes/child/image/common_icon_calculator.svg);
}

.header .header_btn.calc:hover {
	background-color: #333;
	color: #FFF;
}

.header .header_btn.calc:hover::before {
	background-image: url(/wp-content/themes/child/image/common_icon_calculator_hover.svg);
}

.header .header_btn.mail {
	padding-top: 5px;
	border: 2px solid #FC4501;
	background-color: #FC4501;
	color: #FFF;
}

.header .header_btn.mail::before {
	aspect-ratio: 23/18;
	width: 23px;
	margin-bottom: 10px;
	background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
}

.header .header_btn.mail:hover {
	background-color: #FFF;
	color: #FC4501;
}

.header .header_btn.mail:hover::before {
	background-image: url(/wp-content/themes/child/image/common_icon_mail_hover.svg);
}

/* common_contact (pc) ------------------------------------------------------------------------------------------------------ */

.common_contact {
	z-index: 0;
	z-index: 30;
	position: relative;
	position: relative;
	padding: 85px 0;
	background-image: url(/wp-content/themes/child/image/common_contact_img.webp);
	background-position: center center;
	background-size: cover;
	color: #FFF;
}

.common_contact::before,
.common_contact::after {
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
}

.common_contact::before {
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	background: transparent;
}

.common_contact::after {
	background-color: #000;
	opacity: 0.5;
}

.common_contact .contact_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 1fr 550px;
	align-items: center;
}

.common_contact .contact_heading_en {
	font-weight: 700;
	font-size: 80px;
	line-height: 1;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.common_contact .contact_heading_ja {
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
}

.common_contact .contact_lead {
	margin-top: 30px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.4;
	letter-spacing: 0.11em;
}

.common_contact .contact_lead span {
	font-size: 20px;
}

.common_contact .contact_outer {
	display: block;
	width: 400px;
	margin-left: auto;
	padding: 20px 20px 20px 30px;
	border: 1px solid #FFF;
}

.common_contact .contact_links {
	border-left: 1px solid #FFF;
}

.common_contact .contact_text {
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
}

.common_contact .contact_tel {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	margin-top: 8px;
	color: #FFF;
	font-weight: 700;
	font-size: 40px;
	line-height: 1;
}

.common_contact .contact_tel::before {
	aspect-ratio: 1/1;
	width: 30px;
	margin-top: 3px;
	margin-right: 5px;
	background-image: url(/wp-content/themes/child/image/common_icon_tel_white.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.common_contact .contact_time {
	margin-top: 5px;
	color: #FFF;
	font-weight: 500;
	font-size: 13px;
	margin-left: -5px;
}

.common_contact .contact_btn {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s, color 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 400/90;
	width: 400px;
	margin-top: 20px;
	margin-left: auto;
	padding-left: 25px;
	background-color: #FC4501;
	color: #FFF;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.09em;
	transition: background 0.3s, color 0.3s ease 0s;
}

.common_contact .contact_btn::before {
	-webkit-transition: background 0.3s ease 0s;
	aspect-ratio: 33/26;
	width: 33px;
	margin-right: 20px;
	background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

.common_contact .contact_btn::after {
	-webkit-transition: background 0.3s ease 0s;
	aspect-ratio: 1/1;
	width: 30px;
	margin-right: 25px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/common_arrow3.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

.common_contact .contact_btn:hover {
	background-color: #FFF;
	color: #FC4501;
}

.common_contact .contact_btn:hover::before {
	background-image: url(/wp-content/themes/child/image/common_icon_mail_hover.svg);
}

.common_contact .contact_btn:hover::after {
	background-image: url(/wp-content/themes/child/image/common_arrow6.svg);
}

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

.footer {
	z-index: 30;
	position: relative;
	padding-top: 90px;
	background-color: #FFF;
}

.footer .footer_head {
	display: grid;
	grid-template-columns: 1fr 500px;
	padding-bottom: 60px;
	border-bottom: 1px solid #C9C9C9;
}

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

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

.footer .footer_company {
	margin-top: 30px;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.09em;
}

.footer .footer_address {
	margin-top: 15px;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.09em;
}

.footer .footer_insta {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: opacity 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	margin-top: 30px;
	color: #333;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.09em;
	transition: opacity 0.3s ease 0s;
}

.footer .footer_insta::before {
	aspect-ratio: 1/1;
	width: 30px;
	margin-right: 20px;
	background-image: url(/wp-content/themes/child/image/footer_icon_insta.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

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

.footer .footer_map {
	aspect-ratio: 500/220;
	width: 500px;
}

.footer .footer_map iframe {
	width: 100%;
	height: 100%;
}

.footer .footer_text {
	margin-top: 10px;
	color: #696969;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.09em;
}

.footer .footer_links {
	-webkit-column-gap: 108px;
	-moz-column-gap: 108px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 108px;
	margin-top: 60px;
}

.footer .footer_lead {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: opacity 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	color: #333;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
	transition: opacity 0.3s ease 0s;
}

.footer .footer_lead:hover {
	opacity: 0.6;
}

.footer .footer_lead::before {
	aspect-ratio: 1/1;
	width: 12px;
	margin-right: 12px;
	background-color: #333;
	content: "";
}

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

.footer .footer_item {
	margin-top: 15px;
}

.footer .footer_item a {
	-webkit-transition: opacity 0.3s ease 0s;
	padding-left: 30px;
	color: #717171;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
	transition: opacity 0.3s ease 0s;
}

.footer .footer_item a:hover {
	opacity: 0.6;
}

.footer .footer_others {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 30px;
	justify-content: flex-end;
	margin-top: 40px;
}

.footer .footer_other a {
	-webkit-transition: opacity 0.3s ease 0s;
	color: #717171;
	font-weight: 700;
	font-size: 14px;
	transition: opacity 0.3s ease 0s;
}

.footer .footer_other a:hover {
	opacity: 0.6;
}

.footer .footer_other:first-child {
	position: relative;
}

.footer .footer_other:first-child::after {
	-webkit-transform: translateY(-50%);
	position: absolute;
	top: calc(50% + 2px);
	right: -15px;
	width: 1px;
	height: 13px;
	transform: translateY(-50%);
	background-color: #717171;
	content: "";
}

.footer .footer_bottom {
	margin-top: 20px;
	background-color: #333;
}

.footer .footer_copy {
	padding: 10px 0;
	color: #FFF;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-align: center;
}

.footer .footer_copy span {
	font-family: "Noto Sans JP", sans-serif;
}

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

.top_fv {
	position: relative;
}

.top_fv .swiper-pagination {
	-webkit-column-gap: 12px;
	-moz-column-gap: 12px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 15;
	bottom: 40px;
	column-gap: 12px;
	padding-left: 50px;
}

.top_fv .swiper-pagination-bullet {
	aspect-ratio: 1/1;
	width: 8px;
	margin: 0 !important;
	background-color: #FFF;
	opacity: 1;
}

.top_fv .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #FC4501;
}

.top_fv .fv_bg {
	z-index: 5;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0)), to(rgba(0, 0, 0, 0.73)));
	background: linear-gradient(-90deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.73) 100%);
}

.top_fv .fv_wrapper {
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-top: 60px;
}

.top_fv .fv_outer {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 1340px;
	height: 100%;
	margin: 0 auto;
}

.top_fv .fv_items {
	display: grid;
	position: relative;
	grid-template-columns: 184px 184px;
	gap: 15px;
}

.top_fv .fv_items::after {
	position: absolute;
	bottom: -40px;
	left: 0;
	aspect-ratio: 384/22;
	width: 384px;
	background-image: url(/wp-content/themes/child/image/top_fv_deco.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

.top_fv .fv_item {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 3s, color 3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 184/50;
	width: 184px;
	padding-left: 8px;
	border: 1px solid #FFF;
	color: #FFF;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.13em;
	transition: background 3s, color 3s ease 0s;
}

.top_fv .fv_item span {
	margin-top: -5px;
	font-size: 32px;
}

.top_fv .fv_item.is_active {
	background-color: #FFF;
	color: #333;
}

.top_fv .fv_message {
	margin-top: 50px;
	color: #FFF;
	font-weight: 900;
	font-size: 72px;
	line-height: 1.2;
	letter-spacing: 0.15em;
}

.top_fv .fv_scroll {
	z-index: 10;
	position: absolute;
	right: 70px;
	bottom: 30px;
}

.top_fv .fv_scroll::before,
.top_fv .fv_scroll::after {
	position: absolute;
	right: -10px;
	width: 1px;
	content: "";
}

.top_fv .fv_scroll::before {
	top: 0;
	height: 135px;
	background-color: #FFF;
}

.top_fv .fv_scroll::after {
	top: 135px;
	height: 35px;
	background-color: #333;
}

.top_fv .fv_text {
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	position: relative;
	color: #FFF;
	font-size: 12px;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	writing-mode: vertical-lr;
}

.top_fv .fv_text::before {
	-webkit-animation: animation_scroll 5s linear infinite;
	position: absolute;
	top: 0;
	right: -15px;
	aspect-ratio: 1/1;
	width: 10px;
	border-radius: 50%;
	background-color: #FFF;
	content: "";
	animation: animation_scroll 5s linear infinite;
}

.top_bg {
	position: relative;
}

.top_bg::after {
	z-index: -15;
	position: absolute;
	top: -120px;
	right: -50px;
	aspect-ratio: 1988/4190;
	width: 1988px;
	background-image: url(/wp-content/themes/child/image/top_bg.webp);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

/* top_concept (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_concept {
	padding-top: 260px;
}

.top_concept .concept_wrapper {
	-webkit-box-align: end;
	-ms-flex-align: end;
	display: grid;
	grid-template-columns: 625px 570px;
	align-items: flex-end;
}

.top_concept .concept_body {
	z-index: 10;
	position: relative;
	padding-bottom: 40px;
}

.top_concept .concept_heading {
	font-weight: 700;
	font-size: 48px;
	line-height: 1.2;
	letter-spacing: 0.09em;
}

.top_concept .concept_heading span.family {
	font-size: 50px;
}

.top_concept .concept_heading span.size {
	font-size: 32px;
}

.top_concept .concept_heading span.color {
	color: #E53E00;
	font-size: 66px;
	letter-spacing: 0.05em;
}

.top_concept .concept_text {
	margin-top: 35px;
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.09em;
}

.top_concept .concept_outer {
	margin-top: 60px;
}

.top_concept .concept_img {
	position: relative;
	aspect-ratio: 570/552;
	width: 570px;
	margin-left: -55px;
}

.top_concept .concept_img::before {
	position: absolute;
	top: -145px;
	right: -50px;
	aspect-ratio: 451/461;
	width: 451px;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.24)), to(#fceee8));
	background: linear-gradient(rgba(255, 255, 255, 0.24) 0%, #fceee8 100%);
	content: "";
	-webkit-clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
	clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
}

.top_concept .concept_img::after {
	-webkit-clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
	clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.4)), to(rgba(255, 255, 255, 0)));
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 100%);
	content: "";
}

.top_concept .concept_img img {
	-webkit-clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
	clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
}

/* top_service (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_service {
	padding-top: 190px;
}

.top_service .wrap {
	width: 1340px;
}

.top_service .service_heading {
	padding-left: 100px;
}

.top_service .service_heading_en {
	font-weight: 700;
	font-size: 60px;
	line-height: 1;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.top_service .service_heading_ja {
	margin-top: 10px;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
}

.top_service .service_items {
	margin-top: 80px;
}

.top_service .service_item {
	-webkit-column-gap: 100px;
	-moz-column-gap: 100px;
	display: grid;
	position: relative;
	grid-template-columns: 570px 1fr;
	column-gap: 100px;
}

.top_service .service_item:not(:first-child) {
	margin-top: 280px;
}

.top_service .service_item:nth-child(2) {
	grid-template-columns: 1fr 570px;
	padding: 0 50px;
	column-gap: 75px;
}

.top_service .service_item:nth-child(3) {
	padding-left: 130px;
}

.top_service .service_item:nth-child(2) .service_img {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}

.top_service .service_item:nth-child(2) .service_img::before {
	right: -25px;
	left: auto;
}

.top_service .service_item:nth-child(2) .service_img::after {
	right: -50px;
	left: auto;
}

.top_service .service_item:nth-child(2) .service_deco {
	-webkit-transform: translateX(-20%);
	right: auto;
	bottom: -110px;
	left: -50px;
	transform: translateX(-20%);
}

.top_service .service_item:nth-child(2) .service_body {
	padding-left: 50px;
}

.top_service .service_deco {
	-webkit-transform: translateX(20%);
	transform: translateX(20%);
	z-index: -10;
	position: absolute;
	right: -50px;
	bottom: -110px;
	aspect-ratio: 1105/480;
	width: 1105px;
	background-color: #F4F4F4;
	opacity: 0;
}

.top_service .service_img {
	position: relative;
	aspect-ratio: 570/480;
}

.top_service .service_img::before,
.top_service .service_img::after {
	z-index: -10;
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

.top_service .service_img::before {
	top: -25px;
	left: -25px;
	width: 60px;
	background-color: #FFC5AF;
}

.top_service .service_img::after {
	top: -50px;
	left: -50px;
	width: 18px;
	background-color: #FFE6DD;
}

.top_service .service_bg {
	z-index: -5;
	position: absolute;
	top: 15px;
	left: 15px;
	width: 100%;
	height: 100%;
	background-color: #000;
}

.top_service .service_number {
	color: #FC4501;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.top_service .service_number span {
	margin-right: 10px;
	font-size: 48px;
	letter-spacing: -0.05em;
}

.top_service .service_title {
	position: relative;
	font-weight: 700;
	font-size: 60px;
	line-height: 1;
	letter-spacing: 0.13em;
}

.top_service .service_title::after {
	position: absolute;
	bottom: -35px;
	left: 0;
	width: 75px;
	height: 2px;
	background-color: #333;
	content: "";
}

.top_service .service_lists {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	display: grid;
	column-gap: 40px;
	row-gap: 15px;
	margin-top: 70px;
}

.top_service .service_item:nth-child(1) .service_lists {
	grid-template-columns: 320px 1fr;
}

.top_service .service_item:nth-child(2) .service_lists {
	grid-template-columns: 250px 1fr;
}

.top_service .service_item:nth-child(3) .service_lists {
	grid-template-columns: 165px 1fr;
}

.top_service .service_list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
}

.top_service .service_list::before {
	aspect-ratio: 1/1;
	width: 12px;
	margin-right: 12px;
	background-color: #333;
	content: "";
}

.top_service .service_list span {
	margin-left: 5px;
	font-size: 13px;
}

.top_service .service_outer {
	margin-top: 60px;
}

/* top_news (pc) -------------------------------------------------------------------------------------------------------------------- */

.top_news {
	padding: 0 0 180px;
}

.top_news .news_outer {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.top_news .news_heading {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.top_news .news_heading_en {
	font-weight: 700;
	font-size: 60px;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.top_news .news_heading_ja {
	margin-left: 20px;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
}

.top_news .news_btn {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s, color 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 280/60;
	width: 280px;
	margin-left: auto;
	padding-left: 25px;
	border: 1px solid #333;
	color: #333;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.09em;
	transition: background 0.3s, color 0.3s ease 0s;
}

.top_news .news_btn::after {
	-webkit-transition: background 0.3s ease 0s;
	aspect-ratio: 1/1;
	width: 24px;
	margin-right: 25px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/common_arrow4.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

.top_news .news_btn {
	font-weight: 700;
}

.top_news .news_btn:hover {
	background-color: #333;
	color: #FFF;
}

.top_news .news_btn:hover::after {
	background-image: url(/wp-content/themes/child/image/common_arrow3.svg);
	content: "";
}

.top_news .news_items {
	margin-top: 30px;
}

.top_news .news_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: opacity 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	padding: 24px 0;
	border-bottom: 1px solid #EBEBEB;
	transition: opacity 0.3s ease 0s;
}

.top_news .news_item::after {
	-webkit-transition: background 0.3s ease 0s;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	aspect-ratio: 1/1;
	width: 32px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/common_arrow2.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

.top_news .news_item:hover {
	opacity: 0.6;
}

.top_news .news_item:hover::after {
	background-image: url(/wp-content/themes/child/image/common_arrow4.svg);
}

.top_news .news_time {
	color: #E83F00;
	font-weight: 700;
	font-size: 16px;
}

.top_news .news_title {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	margin-left: 40px;
	padding-right: 50px;
	overflow: hidden;
	color: #333;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
}

/* page_construction (pc) ------------------------------------------------------------------------------------------------------ */

#page_construction .restoration {
	padding-top: 80px;
}

#page_construction .restoration .restoration_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_construction .restoration .restoration_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .restoration .restoration_heading_ja span {
	color: #FC4501;
}

#page_construction .restoration .restoration_text {
	margin-top: 15px;
	color: #5C5C5C;
	font-weight: 500;
	font-size: 15px;
	text-align: center;
}

#page_construction .restoration .restoration_wrapper {
	-webkit-column-gap: 90px;
	-moz-column-gap: 90px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 520px 1fr;
	column-gap: 90px;
	align-items: center;
	margin-top: 60px;
	padding-left: 30px;
}

#page_construction .restoration .restoration_img {
	position: relative;
	aspect-ratio: 520/280;
}

#page_construction .restoration .restoration_img::before,
#page_construction .restoration .restoration_img::after {
	z-index: -10;
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

#page_construction .restoration .restoration_img::before {
	top: -30px;
	left: -30px;
	width: 60px;
	background-color: #FFC5AF;
}

#page_construction .restoration .restoration_img::after {
	right: -30px;
	bottom: -30px;
	width: 40px;
	background-color: #FFE5DB;
}

#page_construction .restoration .restoration_bg {
	z-index: -5;
	position: absolute;
	top: 10px;
	left: 10px;
	width: 100%;
	height: 100%;
	background-color: #000;
}

#page_construction .restoration .restoration_item {
	position: relative;
	padding-bottom: 20px;
	padding-left: 43px;
	border-bottom: 1px dashed #707070;
	font-weight: 600;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: 0.09em;
}

#page_construction .restoration .restoration_item::before {
	position: absolute;
	top: 3px;
	left: 0;
	aspect-ratio: 32/26;
	width: 32px;
	background-image: url(/wp-content/themes/child/image/construction_icon_check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .restoration .restoration_item span {
	color: #1A1A1A;
	font-weight: 700;
	font-size: 23px;
}

#page_construction .restoration .restoration_item:last-child {
	margin-top: 20px;
}

#page_construction .flow {
	padding-top: 120px;
	padding-bottom: 100px;
}

#page_construction .flow .flow_heading {
	font-weight: 700;
	font-size: 34px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .flow .flow_heading span {
	color: #FC4501;
}

#page_construction .flow .flow_items {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	display: grid;
	grid-template-columns: 530px 530px;
	column-gap: 20px;
	margin-top: 25px;
	padding: 30px;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
}

#page_construction .flow .flow_item:nth-child(1) .flow_title {
	background-color: #333;
}

#page_construction .flow .flow_item:nth-child(2) .flow_title {
	background-color: #E36130;
}

#page_construction .flow .flow_title {
	padding: 5px 0;
	color: #FFF;
	font-weight: 700;
	font-size: 28px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .flow .flow_lists {
	position: relative;
	margin-top: 35px;
}

#page_construction .flow .flow_lists::before {
	position: absolute;
	top: 10px;
	left: 49px;
	width: 2px;
	height: 75%;
	background-color: #5D5D5D;
	content: "";
}

#page_construction .flow .flow_list {
	padding-top: 17px;
	padding-left: 95px;
	border-bottom: 1px dashed #B7B7B7;
}

#page_construction .flow .flow_list:nth-child(1) {
	height: 73px;
	padding-top: 0;
}

#page_construction .flow .flow_list:nth-child(2) {
	height: 154px;
}

#page_construction .flow .flow_list:nth-child(3) {
	height: 108px;
	border-bottom: none;
}

#page_construction .flow .flow_lead {
	position: relative;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
}

#page_construction .flow .flow_lead span {
	font-size: 21px;
	color: #FC4501;
}


#page_construction .flow .flow_lead::before {
	position: absolute;
	top: 7px;
	left: -55px;
	aspect-ratio: 1/1;
	width: 20px;
	border: 2px solid #5D5D5D;
	border-radius: 50%;
	background-color: #FFF;
	content: "";
}

#page_construction .flow .flow_text {
	margin-top: 20px;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
}

#page_construction .flow .flow_text span {
	color: #FC4501;
	font-size: 21px;
}

#page_construction .flow .flow_message {
	color: #646464;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.13em;
}

#page_construction .flow .flow_arrow {
	aspect-ratio: 280/74;
	width: 280px;
	margin: 40px auto 0;
}

#page_construction .flow .flow_start {
	position: relative;
	aspect-ratio: 438/100;
	width: 438px;
	margin: 30px auto 0;
	padding-top: 5px;
	font-weight: 700;
	font-size: 34px;
	letter-spacing: 0.13em;
}

#page_construction .flow .flow_start::before,
#page_construction .flow .flow_start::after,
#page_construction .flow .flow_start span.outer::before,
#page_construction .flow .flow_start span.outer::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .flow .flow_start::before {
	top: 0;
	left: 0;
}

#page_construction .flow .flow_start::after {
	-webkit-transform: rotate(90deg);
	top: 0;
	right: 0;
	transform: rotate(90deg);
}

#page_construction .flow .flow_start span.outer {
	-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;
	width: 100%;
	height: 100%;
}

#page_construction .flow .flow_start span.outer::before {
	-webkit-transform: rotate(-90deg);
	bottom: 0;
	left: 0;
	transform: rotate(-90deg);
}

#page_construction .flow .flow_start span.outer::after {
	-webkit-transform: rotate(180deg);
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}

#page_construction .flow .flow_start span.dod {
	margin-top: -0.2em;
	padding-top: 0.2em;
	background-image: radial-gradient(circle at center, #FC4501 20%, transparent 20%);
	background-position: top right;
	background-size: 1.15em 0.3em;
	background-repeat: repeat-x;
	color: #FC4501;
}

#page_construction .move {
	z-index: 0;
	position: relative;
	padding-top: 120px;
	background-color: #FAFAFA;
}

#page_construction .move .move_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_construction .move .move_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .move .move_heading_ja span {
	color: #FC4501;
}

#page_construction .move .move_lead {
	margin-top: 40px;
	color: #FC4501;
	font-weight: 700;
	font-size: 30px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .move .move_text {
	margin-top: 10px;
	color: #5C5C5C;
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.09em;
	text-align: center;
}

#page_construction .move .move_items {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	display: grid;
	grid-template-columns: 545px 555px;
	column-gap: 40px;
	margin-top: 35px;
}

#page_construction .move .move_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	display: grid;
	grid-template-columns: 120px 1fr;
	column-gap: 40px;
	align-items: center;
	padding-bottom: 20px;
	border-bottom: 1px dashed #B7B7B7;
}

#page_construction .move .move_img {
	aspect-ratio: 1/1;
}

#page_construction .move .move_number {
	color: #BEBEBE;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

#page_construction .move .move_message {
	position: relative;
	margin-top: 10px;
	font-weight: 700;
	font-size: 17px;
	line-height: 1.5;
	letter-spacing: 0.13em;
}

#page_construction .move .move_message::before,
#page_construction .move .move_message::after {
	z-index: -10;
	position: absolute;
	color: #EBEBEB;
	font-weight: 700;
	font-size: 100px;
	line-height: 1;
	font-family: "CenturyGothic", sans-serif;
}

#page_construction .move .move_message::before {
	top: -30px;
	left: -30px;
	content: "“";
}

#page_construction .move .move_message::after {
	right: 96px;
	bottom: -72px;
	content: "”";
}

#page_construction .move .move_message span {
	font-size: 22px;
}

#page_construction .move .move_attention {
	margin-top: 5px;
	color: #808080;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.09em;
	text-align: right;
}

#page_construction .move .move_arrow {
	aspect-ratio: 280/76;
	width: 280px;
	margin: 40px auto 0;
}

#page_construction .move .move_title {
	margin-top: 40px;
	font-weight: 700;
	font-size: 34px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .move .move_title span.deco {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-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;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}

#page_construction .move .move_title span.deco::before,
#page_construction .move .move_title span.deco::after {
	width: 2px;
	height: 30px;
	background-color: #333;
	content: "";
}

#page_construction .move .move_title span.deco::before {
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg);
}

#page_construction .move .move_title span.deco::after {
	-webkit-transform: rotate(30deg);
	margin-left: -10px;
	transform: rotate(30deg);
}

#page_construction .move .move_title span.size {
	font-size: 26px;
}

#page_construction .move .move_title span.color {
	color: #FC4501;
}

#page_construction .agency {
	z-index: 0;
	position: relative;
	padding: 120px 0;
	background-color: #FAFAFA;
}

#page_construction .agency .agency_text {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	font-weight: 700;
	font-size: 25px;
	letter-spacing: 0.13em;
}

#page_construction .agency .agency_text::after {
	position: absolute;
	bottom: -12px;
	left: -2px;
	aspect-ratio: 220/12;
	width: 100%;
	background-image: url(/wp-content/themes/child/image/construction_deco2.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .agency .agency_wrapper {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
	position: relative;
	margin-top: 45px;
	padding: 0 30px 30px;
	background-color: #FFF;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
}

#page_construction .agency .agency_wrapper::before,
#page_construction .agency .agency_wrapper::after {
	z-index: -10;
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

#page_construction .agency .agency_wrapper::before {
	top: -20px;
	left: -20px;
	width: 60px;
	background-color: #FFC5AF;
}

#page_construction .agency .agency_wrapper::after {
	right: -20px;
	bottom: -20px;
	width: 50px;
	background-color: #FFE5DB;
}

#page_construction .agency .agency_lead {
	-webkit-transform: translateY(-50%);
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding: 2px 25px;
	transform: translateY(-50%);
	background-color: #E36130;
	color: #FFF;
	font-weight: 700;
	font-size: 28px;
	letter-spacing: 0.13em;
}

#page_construction .agency .agency_outer {
	position: relative;
	margin-top: -20px;
}

#page_construction .agency .agency_outer::before,
#page_construction .agency .agency_outer::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .agency .agency_outer::before {
	-webkit-transform: rotate(-90deg);
	bottom: 0;
	left: 0;
	transform: rotate(-90deg);
}

#page_construction .agency .agency_outer::after {
	-webkit-transform: rotate(180deg);
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}

#page_construction .agency .agency_wrap {
	display: grid;
	position: relative;
	grid-template-columns: 590px 1fr;
	padding: 30px 80px;
	align-items: flex-end;
}

#page_construction .agency .agency_wrap::before,
#page_construction .agency .agency_wrap::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	content: "";
}

#page_construction .agency .agency_wrap::before {
	top: 0;
	left: 0;
}

#page_construction .agency .agency_wrap::after {
	-webkit-transform: rotate(90deg);
	top: 0;
	right: 0;
	transform: rotate(90deg);
}

#page_construction .agency .agency_body {
	padding-right: 60px;
	border-right: 1px solid #E2E2E2;
}

#page_construction .agency .agency_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px dashed #B7B7B7;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.09em;
}

#page_construction .agency .agency_item::before {
	aspect-ratio: 32/26;
	width: 32px;
	margin-right: 12px;
	background-image: url(/wp-content/themes/child/image/construction_icon_check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .agency .agency_item:first-child {
	padding-top: 10px;
}

#page_construction .agency .agency_attention {
	margin-top: 10px;
	color: #808080;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.09em;
}

#page_construction .agency .agency_head {
	padding-left: 60px;
}

#page_construction .agency .agency_point {
	width: 112px;
}

#page_construction .agency .agency_img {
	z-index: 0;
	position: relative;
	aspect-ratio: 264/140;
	width: 264px;
	margin-top: 7px;
}

#page_construction .agency .agency_bg {
	z-index: -10;
	position: absolute;
	top: 6px;
	left: 6px;
	width: 100%;
	height: 100%;
	background-color: #333;
}

#page_construction .agency .agency_photo {
	margin-top: 12px;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.09em;
}

#page_construction .agency .agency_price {
	margin-top: 100px;
}

#page_construction .agency .price_outer {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 15px;
	-moz-column-gap: 15px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 15px;
	align-items: center;
	justify-content: center;
}

#page_construction .agency .price_text {
	padding: 5px 10px;
	border-top: 2px solid #707070;
	border-bottom: 2px solid #707070;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .agency .price_number {
	position: relative;
	color: #FC4501;
	font-weight: 700;
	font-size: 80px;
	line-height: 1;
}

#page_construction .agency .price_number::after {
	position: absolute;
	top: 21px;
	right: -8px;
	content: "(税別)";
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.13em;
}

#page_construction .agency .price_number span {
	margin-left: 15px;
	font-size: 34px;
	font-family: "Noto Sans JP", sans-serif;
}

#page_construction .agency .price_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-column-gap: 15px;
	-moz-column-gap: 15px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 15px;
	align-items: center;
	justify-content: center;
	margin-top: 15px;
}

#page_construction .agency .price_point {
	width: 130px;
}

#page_construction .agency .price_lead {
	padding: 0 10px;
	background-color: #333;
	color: #FFF;
	font-weight: 800;
	font-size: 24px;
	letter-spacing: 0.13em;
}

#page_construction .agency .price_lead span {
	font-size: 30px;
}

#page_construction .agency .agency_contact {
	display: grid;
	grid-template-columns: 50% 50%;
	max-width: 980px;
	margin: 60px auto 0;
	padding: 40px 0;
	background-color: #FFF;
}

#page_construction .agency .contact_item:first-child {
	border-right: 1px solid #E2E2E2;
}

#page_construction .agency .contact_text {
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
	text-align: center;
}

#page_construction .agency .contact_tel {
	-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;
	margin-top: 10px;
	color: #333;
	font-size: 38px;
	line-height: 1;
}

#page_construction .agency .contact_tel::before {
	aspect-ratio: 1/1;
	width: 30px;
	margin-top: 4px;
	margin-right: 5px;
	background-image: url(/wp-content/themes/child/image/common_icon_tel_orange.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .agency .contact_time {
	margin-top: 5px;
	color: #838383;
	font-weight: 500;
	font-size: 14px;
	text-align: center;
}

#page_construction .agency .contact_btn {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: background 0.3s, color 0.3s ease 0s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	aspect-ratio: 350/70;
	width: 350px;
	margin: 7px auto 0;
	padding-left: 25px;
	border: 1px solid #FC4501;
	background-color: #FC4501;
	color: #FFF;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.09em;
	transition: background 0.3s, color 0.3s ease 0s;
}

#page_construction .agency .contact_btn::before {
	-webkit-transition: background 0.3s ease 0s;
	aspect-ratio: 27/21;
	width: 27px;
	margin-right: 35px;
	background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

#page_construction .agency .contact_btn::after {
	-webkit-transition: background 0.3s ease 0s;
	aspect-ratio: 1/1;
	width: 30px;
	margin-right: 15px;
	margin-left: auto;
	background-image: url(/wp-content/themes/child/image/common_arrow3.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
	transition: background 0.3s ease 0s;
}

#page_construction .agency .contact_btn:hover {
	background-color: #FFF;
	color: #FC4501;
}

#page_construction .agency .contact_btn:hover::before {
	background-image: url(/wp-content/themes/child/image/common_icon_mail_hover.svg);
}

#page_construction .agency .contact_btn:hover::after {
	background-image: url(/wp-content/themes/child/image/common_arrow6.svg);
}

#page_construction .service {
	padding-top: 110px;
	padding-bottom: 120px;
}

#page_construction .service .service_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_construction .service .service_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .service .service_heading_ja span {
	color: #FC4501;
}

#page_construction .service .service_text {
	margin-top: 15px;
	color: #5C5C5C;
	font-weight: 500;
	font-size: 15px;
	text-align: center;
}

#page_construction .service .service_items {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	display: grid;
	grid-template-columns: 550px 550px;
	column-gap: 40px;
	margin-top: 40px;
}

#page_construction .service .service_item {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
	position: relative;
	padding: 25px;
	background-color: #FFF;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
}

#page_construction .service .service_item:nth-child(1)::before,
#page_construction .service .service_item:nth-child(1)::after {
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

#page_construction .service .service_item:nth-child(1)::before {
	z-index: -5;
	top: -25px;
	left: -25px;
	width: 60px;
	background-color: #FFC5AF;
}

#page_construction .service .service_item:nth-child(1)::after {
	z-index: -10;
	top: -40px;
	left: -40px;
	width: 30px;
	background-color: #FFE5DB;
}

#page_construction .service .service_item:nth-child(1) .service_lead {
	border: 2px solid #333;
	background-color: #333;
	color: #FFF;
}

#page_construction .service .service_item:nth-child(1) .service_list::before {
	background-color: #333;
}

#page_construction .service .service_item:nth-child(2)::before {
	z-index: -10;
	position: absolute;
	right: -40px;
	bottom: -20px;
	aspect-ratio: 1/1;
	width: 70px;
	background-color: #FFE5DB;
	content: "";
}

#page_construction .service .service_item:nth-child(2) .service_lead {
	border: 2px solid #707070;
}

#page_construction .service .service_lead {
	padding: 2px 0 4px;
	font-weight: 700;
	font-size: 26px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .service .service_list {
	-webkit-box-align: start;
	-ms-flex-align: start;
	-ms-flex-negative: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-shrink: 0;
	align-items: flex-start;
	padding: 30px 60px 20px 30px;
	border-bottom: 1px dashed #B7B7B7;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.4;
	letter-spacing: 0.13em;
}

#page_construction .service .service_list:last-child {
	border-bottom: none;
}

#page_construction .service .service_list::before {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	aspect-ratio: 1/1;
	width: 20px;
	margin-top: 5px;
	margin-right: 20px;
	border: 2px solid #333;
	border-radius: 50%;
	content: "";
}

#page_construction .service .service_message {
	position: relative;
	aspect-ratio: 735/100;
	width: 735px;
	margin: 50px auto 0;
	padding-top: 5px;
	font-weight: 700;
	font-size: 34px;
	letter-spacing: 0.13em;
}

#page_construction .service .service_message::before,
#page_construction .service .service_message::after,
#page_construction .service .service_message span.outer::before,
#page_construction .service .service_message span.outer::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .service .service_message::before {
	top: 0;
	left: 0;
}

#page_construction .service .service_message::after {
	-webkit-transform: rotate(90deg);
	top: 0;
	right: 0;
	transform: rotate(90deg);
}

#page_construction .service .service_message span.outer {
	-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;
	width: 100%;
	height: 100%;
}

#page_construction .service .service_message span.outer::before {
	-webkit-transform: rotate(-90deg);
	bottom: 0;
	left: 0;
	transform: rotate(-90deg);
}

#page_construction .service .service_message span.outer::after {
	-webkit-transform: rotate(180deg);
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}

#page_construction .service .service_message span.size {
	font-size: 26px;
}

#page_construction .service .service_message span.dod {
	margin-top: -0.2em;
	padding-top: 0.2em;
	background-image: radial-gradient(circle at center, #FC4501 20%, transparent 20%);
	background-position: top right;
	background-size: 1.15em 0.3em;
	background-repeat: repeat-x;
	color: #FC4501;
}

#page_construction .support {
	padding-top: 120px;
	padding-bottom: 160px;
	background-color: #FAFAFA;
}

#page_construction .support .support_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_construction .support .support_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_construction .support .support_heading_ja span {
	color: #FC4501;
}

#page_construction .support .support_text {
	margin-top: 15px;
	color: #5C5C5C;
	font-weight: 500;
	font-size: 15px;
	text-align: center;
}

#page_construction .support .support_items {
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	display: grid;
	grid-template-columns: 550px 550px;
	column-gap: 40px;
	margin-top: 40px;
}

#page_construction .support .support_item {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
	z-index: 0;
	position: relative;
	padding: 45px 30px 30px;
	background-color: #FFF;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
}

#page_construction .support .support_number {
	color: #BEBEBE;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_construction .support .support_lead {
	position: relative;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	font-weight: 700;
	font-size: 25px;
	letter-spacing: 0.09em;
	text-align: center;
}

#page_construction .support .support_lead::before,
#page_construction .support .support_lead::after {
	z-index: -10;
	position: absolute;
	color: #EBEBEB;
	font-weight: 700;
	font-size: 100px;
	line-height: 1;
	font-family: "CenturyGothic", sans-serif;
}

#page_construction .support .support_lead::before {
	top: -20px;
	left: -35px;
	content: "“";
}

#page_construction .support .support_lead::after {
	right: -30px;
	bottom: -70px;
	content: "”";
}

#page_construction .support .support_lead span {
	color: #FC4501;
}

#page_construction .support .support_lists {
	min-height: 210px;
	margin-top: 30px;
	padding: 10px 50px 20px;
	background-color: #FAFAFA;
}

#page_construction .support .support_list {
	-webkit-box-align: start;
	-ms-flex-align: start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-start;
	padding: 25px 0;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: 0.09em;
}

#page_construction .support .support_list::before {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	aspect-ratio: 28/22;
	width: 28px;
	margin-top: 4px;
	margin-right: 12px;
	background-image: url(/wp-content/themes/child/image/construction_icon_check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_construction .support .support_list:nth-child(2) {
	border-top: 1px dashed #B7B7B7;
}

/* page_contact (pc) ------------------------------------------------------------------------------------------------------ */

.page_contact .common_contact_form .form_text {
	margin-bottom: 15px;
	font-weight: 700;
	font-size: 21px;
}

.page_contact .common_contact_form dl+.form_text {
	margin-top: 80px;
}

.page_contact .common_contact_form dl.went .outer {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-column-gap: 20px;
	-moz-column-gap: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	column-gap: 20px;
	align-items: center;
}

.page_contact .common_contact_form dl.went span.day {
	-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_contact .common_contact_form dl.went span.day select {
	width: 70px;
	height: 45px;
	padding: 0 0 0 5px;
}

.page_contact .common_contact_form dl.went span.time {
	-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;
	margin-top: 20px;
}

.page_contact .common_contact_form dl.went span.time select {
	width: 200px;
	height: 45px;
	padding: 0 0 0 5px;
}

/* page_concept (pc) ------------------------------------------------------------------------------------------------------ */

#page_concept .concept {
	padding: 80px 0 120px;
}

#page_concept .concept .concept_img {
	width: 80%;
	margin: 0 auto;
}

#page_concept .concept .concept_heading {
	margin-top: 80px;
}

#page_concept .concept .concept_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_concept .concept .concept_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_concept .concept .concept_heading_ja span {
	color: #FC4501;
}

#page_concept .concept .concept_wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	grid-template-columns: 1fr 450px;
	align-items: center;
	margin-top: 40px;
}

#page_concept .concept .concept_lead {
	color: #FC4501;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.5;
}

#page_concept .concept .concept_text {
	margin-top: 30px;
	font-size: 16px;
	letter-spacing: 0.05em;
}

#page_concept .concept .concept_text+.concept_text {
	margin-top: 15px;
}

#page_concept .message {
	z-index: 0;
	z-index: 30;
	position: relative;
	position: relative;
	padding: 85px 0;
	background-image: url(/wp-content/themes/child/image/common_contact_img.webp);
	background-position: center center;
	background-size: cover;
	color: #FFF;
}

#page_concept .message::before,
#page_concept .message::after {
	z-index: -10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
}

#page_concept .message::before {
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	background: transparent;
}

#page_concept .message::after {
	background-color: #000;
	opacity: 0.5;
}

#page_concept .message .message_lead {
	font-weight: 700;
	font-size: 32px;
	letter-spacing: 0.1em;
}

#page_concept .message .message_text {
	margin-top: 15px;
}

#page_concept .message .message_btn {
	margin-top: 60px;
}

#page_concept .strength {
	padding: 120px 0 160px;
	background-color: #FAFAFA;
}

#page_concept .strength .strength_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_concept .strength .strength_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_concept .strength .strength_heading_ja span {
	color: #FC4501;
}

#page_concept .strength .strength_items {
	-webkit-column-gap: 4%;
	-moz-column-gap: 4%;
	display: grid;
	grid-template-columns: 48% 48%;
	column-gap: 4%;
	row-gap: 50px;
	margin-top: 40px;
}

#page_concept .strength .strength_img {
	aspect-ratio: 5/3;
	overflow: hidden;
	border-radius: 10px;
}

#page_concept .strength .strength_number {
	-webkit-transform: translateY(-50%);
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 auto;
	padding: 2px 15px;
	transform: translateY(-50%);
	border-radius: 5px;
	background-color: #FC4501;
	color: #FFF;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

#page_concept .strength .strength_lead {
	color: #FC4501;
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.05em;
	text-align: center;
}

#page_concept .strength .strength_text {
	margin-top: 15px;
	font-size: 16px;
	letter-spacing: 0.02em;
	text-align: justify;
}

/* page_sales (pc) ------------------------------------------------------------------------------------------------------ */

#page_sales .message {
	padding: 80px 0 120px;
}

#page_sales .message .message_lead {
	font-weight: 700;
	font-size: 30px;
	letter-spacing: 0.1em;
	text-align: center;
}

#page_sales .message .message_lead span {
	color: #FC4501;
}

#page_sales .message .message_text {
	margin-top: 40px;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.05em;
	text-align: center;
}

#page_sales .message .message_text+.message_text {
	margin-top: 20px;
}

#page_sales .message .message_text span {
	color: #FC4501;
}

#page_sales .service {
	z-index: 0;
	position: relative;
	padding: 120px 0 160px;
	background-color: #FAFAFA;
}

#page_sales .service .service_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_sales .service .service_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_sales .service .service_heading_ja span {
	color: #FC4501;
}

#page_sales .service .service_wrapper {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
	position: relative;
	margin-top: 45px;
	padding: 30px;
	background-color: #FFF;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
}

#page_sales .service .service_wrapper::before,
#page_sales .service .service_wrapper::after {
	z-index: -10;
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

#page_sales .service .service_wrapper::before {
	top: -20px;
	left: -20px;
	width: 60px;
	background-color: #FFC5AF;
}

#page_sales .service .service_wrapper::after {
	right: -20px;
	bottom: -20px;
	width: 50px;
	background-color: #FFE5DB;
}

#page_sales .service .service_outer {
	position: relative;
}

#page_sales .service .service_outer::before,
#page_sales .service .service_outer::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_sales .service .service_outer::before {
	-webkit-transform: rotate(-90deg);
	bottom: 0;
	left: 0;
	transform: rotate(-90deg);
}

#page_sales .service .service_outer::after {
	-webkit-transform: rotate(180deg);
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}

#page_sales .service .service_wrap {
	position: relative;
	padding: 30px 100px;
}

#page_sales .service .service_wrap::before,
#page_sales .service .service_wrap::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_sales .service .service_wrap::before {
	top: 0;
	left: 0;
}

#page_sales .service .service_wrap::after {
	-webkit-transform: rotate(90deg);
	top: 0;
	right: 0;
	transform: rotate(90deg);
}

#page_sales .service .service_lists {
	-webkit-column-gap: 4%;
	-moz-column-gap: 4%;
	display: grid;
	grid-template-columns: 48% 48%;
	column-gap: 4%;
}

#page_sales .service .service_list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	padding: 15px 0;
	border-bottom: 1px dashed #B7B7B7;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.09em;
}

#page_sales .service .service_list::before {
	aspect-ratio: 32/26;
	width: 32px;
	margin-right: 12px;
	background-image: url(/wp-content/themes/child/image/construction_icon_check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_sales .service .service_list:first-child {
	padding-top: 10px;
}

#page_sales .service .service_item {
	-webkit-column-gap: 80px;
	-moz-column-gap: 80px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	position: relative;
	grid-template-columns: 570px 1fr;
	column-gap: 80px;
	align-items: center;
}

#page_sales .service .service_item:first-child {
	padding-top: 120px;
}

#page_sales .service .service_item:not(:first-child) {
	padding-top: 150px;
}

#page_sales .service .service_item:last-child {
	padding-top: 180px;
}

#page_sales .service .service_img {
	position: relative;
	aspect-ratio: 570/480;
}

#page_sales .service .service_img::before,
#page_sales .service .service_img::after {
	z-index: -10;
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

#page_sales .service .service_img::before {
	top: -25px;
	left: -25px;
	width: 60px;
	background-color: #FFC5AF;
}

#page_sales .service .service_img::after {
	top: -50px;
	left: -50px;
	width: 18px;
	background-color: #FFE6DD;
}

#page_sales .service .service_bg {
	z-index: -5;
	position: absolute;
	top: 15px;
	left: 15px;
	width: 100%;
	height: 100%;
	background-color: #000;
}

#page_sales .service .service_number {
	color: #FC4501;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

#page_sales .service .service_number span {
	margin-right: 10px;
	font-size: 48px;
	letter-spacing: -0.05em;
}

#page_sales .service .service_title {
	position: relative;
	font-weight: 700;
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.13em;
}

#page_sales .service .service_title::after {
	position: absolute;
	bottom: -35px;
	left: 0;
	width: 75px;
	height: 2px;
	background-color: #333;
	content: "";
}

#page_sales .service .service_lead {
	margin-top: 60px;
	color: #FC4501;
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.1em;
}

#page_sales .service .service_text {
	margin-top: 30px;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.05em;
}

#page_sales .service .service_text+.service_text {
	margin-top: 15px;
}

#page_sales .service .service_contents {
	margin-top: 80px;
}

#page_sales .service .article_heading {
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.1em;
}

#page_sales .service .common_articles {
	margin-top: 15px;
}

#page_sales .service .service_btn {
	margin: 40px auto 0;
}

/* page_rental (pc) ------------------------------------------------------------------------------------------------------ */

#page_rental .strength {
	padding: 80px 0 120px;
}

#page_rental .strength .wrap {
	width: 1340px;
}

#page_rental .strength .strength_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_rental .strength .strength_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_rental .strength .strength_heading_ja span {
	color: #FC4501;
}

#page_rental .strength .strength_lead {
	margin-top: 40px;
	color: #FC4501;
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.1em;
	text-align: center;
}

#page_rental .strength .strength_lists {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 40px auto 0;
}

#page_rental .strength .strength_list {
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.05em;
}

#page_rental .strength .strength_list span.color {
	margin-right: 5px;
	color: #FC4501;
}

#page_rental .strength .strength_list span.color span {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	font-size: 32px;
}

#page_rental .strength .strength_list span.size1 {
	color: #FC4501;
	font-size: 42px;
	margin: 0 4px;
}

#page_rental .strength .strength_list span.size2 {
	color: #FC4501;
	font-size: 24px;
}

#page_rental .strength .strength_list span.size3 {
	margin-left: -15px;
	font-size: 36px;
	color: #FC4501;
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
}

#page_rental .strength .strength_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: 40px;
}

#page_rental .strength .strength_item {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.1);
	padding: 20px;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.1);
}

#page_rental .strength .strength_title {
	padding: 5px 15px;
	background-color: #333;
	color: #FFF;
	font-weight: 700;
	font-size: 21px;
	letter-spacing: 0.1em;
	text-align: center;
}

#page_rental .strength .strength_text {
	margin-top: 20px;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.05em;
}

#page_rental .strength .strength_text span {
	color: #FC4501;
	font-weight: 700;
	font-size: 24px;
}

#page_rental .strength .strength_text+.strength_text {
	margin-top: 30px;
}

#page_rental .package {
	z-index: 0;
	position: relative;
	padding: 120px 0 160px;
	background-color: #FAFAFA;
}

#page_rental .package .package_heading {
	font-weight: 700;
	font-size: 32px;
	letter-spacing: 0.1em;
	text-align: center;
	line-height: 1.5;
}

#page_rental .package .package_heading span {
	color: #FC4501;
	font-size: 40px;
}

#page_rental .package .package_wrapper {
	-webkit-box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
	position: relative;
	margin-top: 45px;
	padding: 30px;
	background-color: #FFF;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.08);
}

#page_rental .package .package_wrapper::before,
#page_rental .package .package_wrapper::after {
	z-index: -10;
	position: absolute;
	aspect-ratio: 1/1;
	content: "";
}

#page_rental .package .package_wrapper::before {
	top: -20px;
	left: -20px;
	width: 60px;
	background-color: #FFC5AF;
}

#page_rental .package .package_wrapper::after {
	right: -20px;
	bottom: -20px;
	width: 50px;
	background-color: #FFE5DB;
}

#page_rental .package .package_outer {
	position: relative;
}

#page_rental .package .package_outer::before,
#page_rental .package .package_outer::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_rental .package .package_outer::before {
	-webkit-transform: rotate(-90deg);
	bottom: 0;
	left: 0;
	transform: rotate(-90deg);
}

#page_rental .package .package_outer::after {
	-webkit-transform: rotate(180deg);
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}

#page_rental .package .package_wrap {
	position: relative;
	padding: 50px;
}

#page_rental .package .package_wrap::before,
#page_rental .package .package_wrap::after {
	position: absolute;
	aspect-ratio: 1/1;
	width: 20px;
	background-image: url(/wp-content/themes/child/image/construction_deco1.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_rental .package .package_wrap::before {
	top: 0;
	left: 0;
}

#page_rental .package .package_wrap::after {
	-webkit-transform: rotate(90deg);
	top: 0;
	right: 0;
	transform: rotate(90deg);
}

#page_rental .package .package_items {
	-webkit-column-gap: 3.33%;
	-moz-column-gap: 3.33%;
	display: grid;
	grid-template-columns: repeat(3, 30%);
	column-gap: 3.33%;
}

#page_rental .package .package_lead {
	padding: 5px 15px;
	background-color: #FC4501;
	color: #FFF;
	font-weight: 700;
	font-size: 21px;
	text-align: center;
}

#page_rental .package .package_lists {
	margin-top: 20px;
}

#page_rental .package .package_list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	padding: 15px 0 15px 15px;
	border-bottom: 1px dashed #B7B7B7;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.09em;
}

#page_rental .package .package_list::before {
	aspect-ratio: 32/26;
	width: 32px;
	margin-right: 12px;
	background-image: url(/wp-content/themes/child/image/construction_icon_check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	content: "";
}

#page_rental .package .package_list:first-child {
	padding-top: 10px;
}

#page_rental .package .package_message {
	margin-top: 80px;
	font-weight: 700;
	font-size: 28px;
	text-align: center;
}

#page_rental .package .package_q {
	margin-top: 60px;
	padding-bottom: 10px;
	border-bottom: 1px dashed #B7B7B7;
	color: #FC4501;
	font-weight: 700;
	font-size: 24px;
	text-align: center;
}

#page_rental .package .package_a {
	margin-top: 30px;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.05em;
	text-align: center;
}

#page_rental .package .package_a+.package_a {
	margin-top: 15px;
}

/* page_company (pc) ------------------------------------------------------------------------------------------------------ */

#page_company .message {
	padding: 80px 0 120px;
}

#page_company .message .message_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_company .message .message_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_company .message .message_heading_ja span {
	color: #FC4501;
}

#page_company .message .message_wrapper {
	-webkit-column-gap: 50px;
	-moz-column-gap: 50px;
	display: grid;
	grid-template-columns: 400px 1fr;
	column-gap: 50px;
	margin-top: 40px;
}

#page_company .message .message_img img {
	aspect-ratio: 1/1;
	object-position: 82% 50%;
}

#page_company .message .message_img figcaption {
	margin-top: 5px;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
}

#page_company .message .message_img figcaption span {
	color: #FC4501;
}

#page_company .message .message_text {
	font-weight: 500;
	font-size: 16px;
}

#page_company .message .message_text+.message_text {
	margin-top: 20px;
}

#page_company .company {
	padding-top: 100px;
	background-color: #FAFAFA;
}

#page_company .company .company_heading_en {
	color: #989898;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
}

#page_company .company .company_heading_ja {
	font-weight: 700;
	font-size: 36px;
	letter-spacing: 0.13em;
	text-align: center;
}

#page_company .company .company_heading_ja span {
	color: #FC4501;
}

#page_company .company .company_items {
	max-width: 940px;
	margin: 30px auto 0;
}

#page_company .company .company_item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: grid;
	position: relative;
	grid-template-columns: 150px 1fr;
	align-items: center;
	padding: 15px 0;
	border-bottom: 1px solid #EBEBEB;
}

#page_company .company .company_item dt {
	padding-left: 10px;
}

#page_company .company .company_item dt,
#page_company .company .company_item dd {
	color: #333;
	font-weight: 500;
	font-size: 16px;
}

#page_company .company .company_item dt a,
#page_company .company .company_item dd a {
	color: #333;
}

#page_company .company .company_item dt a.url,
#page_company .company .company_item dd a.url {
	-webkit-transition: opacity 0.3s ease 0s;
	text-decoration: underline;
	transition: opacity 0.3s ease 0s;
}

#page_company .company .company_item dt a.url:hover,
#page_company .company .company_item dd a.url:hover {
	opacity: 0.7;
}

#page_company .company .company_item::before {
	z-index: 10;
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 85px;
	height: 2px;
	background-color: #FC4501;
	content: "";
}

#page_company .company .company_map {
	aspect-ratio: 5/2;
	margin-top: 100px;
}

#page_company .company .company_map iframe {
	width: 100%;
	height: 100%;
}

#page_company .company .company_text {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 20px auto 0;
	font-weight: 500;
	color: #646464;
}

#page_company .gallery {
	padding: 120px 0 160px;
	background-color: #FAFAFA;
}

#page_company .gallery .swiper-wrapper {
	-webkit-transition-timing-function: linear;
	transition-timing-function: linear;
}

#page_company .gallery .swiper-slide {
	width: 350px;
	height: 250px;
}

/* page_housing_single (pc) ------------------------------------------------------------------------------------------------------ */

#page_housing_single .housing_single_main {
	aspect-ratio: 3/2;
	width: 500px;
}

#page_housing_single .common_single {
	margin-top: 40px;
}

/* page_sale_single (pc) ------------------------------------------------------------------------------------------------------ */

#page_sale_single .sale_single_main {
	aspect-ratio: 3/2;
	width: 500px;
}

#page_sale_single .common_single {
	margin-top: 40px;
}

/* page_works_single (pc) ------------------------------------------------------------------------------------------------------ */

#page_works_single .works_outer {
	-webkit-column-gap: 4%;
	-moz-column-gap: 4%;
	display: grid;
	grid-template-columns: 48% 48%;
	column-gap: 4%;
	border-bottom: 1px dashed #B7B7B7;
	padding-bottom: 50px;
}

#page_works_single .works_outer+.works_outer {
	margin-top: 30px;
}

#page_works_single .works_single_main {
	aspect-ratio: 5/3;
	position: relative;
}

#page_works_single .works_wrap:nth-child(1) .works_single_main::after {
	position: absolute;
	content: "";
	clip-path: polygon(0 0, 0% 100%, 80% 50%);
	width: 30px;
	aspect-ratio: 1/1;
	background-color: #FC4501;
	top: 50%;
	transform: translateY(-50%);
	right: -42px;
}

#page_works_single .works_lead {
	font-size: 24px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

#page_works_single .works_lead.after {
	color: #FC4501;
}

#page_works_single .common_single {
	margin-top: 40px;
}

#page_works_single .common_single .single_imgs {
	margin-top: 5px;
}

/* page_sitemap (pc) ------------------------------------------------------------------------------------------------------ */

#page_sitemap {
	padding: 120px 0;
}

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

#page_error {
	padding: 120px 0;
}

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

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

/* 物件 */

.flex-sb {
	flex-wrap: wrap;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content: space-between;
}

.loan_area {
	padding-top: 70px;
}

p.loan_ttl_en {
	color: #FC4501;
	font-size: 16px;
	letter-spacing: 0.08em;
	font-family: futura-pt, sans-serif;
	font-weight: 500;
	font-style: normal;
}

p.loan_ttl_ja {
	color: #FC4501;
	font-size: 24px;
	letter-spacing: 0.15em;
	margin-top: 2px;
	font-family: a-otf-jun-pro, sans-serif;
	font-weight: 300;
	font-style: normal;
}

.single_works_madori_box ul li {
	width: 400px;
	margin: 0 24px;
}

.single_works_madori_box ul {
	justify-content: center;
}

.single_works_madori_box ul li p.ttl {
	font-weight: 700;
	letter-spacing: 0.15em;
	font-size: 22px;
	border-left: 3px solid #FC4501;
	line-height: 1.5;
	padding-left: 0.5em;
	margin-bottom: 10px;
}

.single_works_madori_box ul li .img {
	height: 300px;
	background-color: #f1f1f1;
}

.single_works_madori_box ul li:first-child p.ttl::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -12px;
	width: 0;
	height: 0;
	border-top: 30px solid #FC4501;
	border-right: 30px solid transparent;
	transform: rotate(135deg);
	z-index: 100;
}

.single_new_intro {
	align-items: center;
	position: relative;
}

.single_new_intro .text_box {
	width: 48%;
}

.single_new_intro .img {
	width: 550px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.single_new_intro .text_box .ttl_box p.en {
	color: #FC4501;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.single_new_intro .text_box .ttl_box p.ttl {
	color: #FC4501;
	font-size: 24px;
	letter-spacing: 0.15em;
	margin-top: 2px;
}

.single_new_intro .text_box p.text {
	font-size: 14px;
	line-height: 2.2;
	letter-spacing: 0.08em;
	margin-top: 20px;
}

.single_new_intro::before,
.single_new_intro::after {
	content: '';
	position: absolute;
	left: 0;
	top: 106px;
	width: 200px;
	height: 625px;
	background-color: #f7f7f7;
	z-index: -1;
}

.single_new_intro::after {
	left: -35%;
	width: 500px;
}

.new_bukken_cont {
	margin-top: 78px;
}

.new_bukken_cont .h2_box {
	position: relative;
}

.new_bukken_cont .h2_box p.en {
	color: #FC4501;
	font-size: 30px;
	letter-spacing: 0.13em;
}

.new_bukken_cont .h2_box p.num {
	font-size: 20px;
	letter-spacing: 0.02em;
	font-weight: bold;
	margin-top: 20px;
	color: #FC4501;
}

.new_bukken_cont .h2_box h3 {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin-top: 5px;
}

.new_bukken_cont .h2_box a {
	position: absolute;
	bottom: 0;
	right: 0;
	color: #FC4501;
	font-size: 20px;
	letter-spacing: 0.08em;
	border-bottom: 2px solid #FC4501;
	padding: 0 8px 2px;
}

.new_bukken_list {
	margin-top: 42px;
}

.new_bukken_list ul li {
	width: 360px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	background-color: #fff;
}

.new_bukken_list ul li a {
	display: block;
	padding: 10px 10px 18px;
	color: #242424;
}

.new_bukken_list ul li a .img {
	position: relative;
	width: 100%;
	height: 190px;
	background-color: #eee;
}

.new_bukken_list ul li a .img p.cat {
	background-color: #FC4501;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.08em;
	font-size: 14px;
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	padding: 2px 16px;
}

.new_bukken_list ul li a .img p.new_mark {
	background-color: #de0000;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.08em;
	font-size: 10px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	padding: 2px 10px;
}

.new_bukken_list ul li a .text_box {
	margin-top: 14px;
}

.new_bukken_list ul li a .text_box p.ttl {
	transition: 0.3s;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.06em;
}

.new_bukken_list ul li a .text_box p.plan {
	font-size: 14px;
	letter-spacing: 0.08em;
	margin-top: 5px;
}

.new_bukken_list ul li a .text_box p.plan span.area {
	margin-left: 8px;
}

.new_bukken_list ul li a .text_box p.access {
	font-size: 12px;
	letter-spacing: 0.1em;
}

.new_bukken_list ul li a .text_box p.price {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-top: 8px;
}

.new_bukken_list ul li a .text_box p.sold_text {
	color: red;
	font-weight: 600;
}

.new_bukken_list ul li:nth-child(3n),
.new_bukken_list ul li:nth-child(3n - 1) {
	margin-left: 30px;
}

.new_bukken_list ul li:nth-child(n + 4) {
	margin-top: 25px;
}

.new_bukken_list ul li a .img img {
	transition: 0.3s;
}

.new_bukken_list ul li a:hover .img img {
	transform: scale(1.05);
}

.new_bukken_list ul li a:hover .text_box p.ttl {
	color: #FC4501;
}

.common_page_h1_box.archive_works::before {
	background-image: url(/wp-content/uploads/2023/01/page_archive_h1_bg.jpg);
}

.common_page_h1_box.archive_new::before {
	background-image: url(/wp-content/uploads/2021/07/new-image.jpeg);
}

.common_page_h1_box.archive_used::before {
	background-image: url(/wp-content/uploads/2023/01/used-image.jpg);
}

.common_page_h1_box {
	position: relative;
	padding: 250px 0 100px;
}

.common_page_h1_box::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 75vw;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	min-width: 1000px;
}

.common_page_h1_box::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 75vw;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.16);
	min-width: 1000px;
}

.common_page_h1_box>* {
	position: relative;
	z-index: 100;
}

.common_page_h1_box .text_box p.en {
	font-size: 42px;
	letter-spacing: 0.06em;
	color: #FC4501;
}

.common_page_h1_box .text_box h1 {
	font-size: 16px;
	font-weight: 100;
	letter-spacing: 0.06em;
	margin-top: 8px;
}

.common_page_h1_box .text_box {
	text-shadow: 0 0 4px rgb(255 255 255 / 85%);
}

.single_new_intro {
	align-items: center;
	position: relative;
}

.single_new_intro .text_box {
	width: 48%;
}

.single_new_intro .img {
	width: 550px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.single_new_intro .text_box .ttl_box {}

.single_new_intro .text_box .ttl_box p.en {
	color: #FC4501;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.single_new_intro .text_box .ttl_box p.ttl {
	color: #FC4501;
	font-size: 24px;
	letter-spacing: 0.15em;
	margin-top: 2px;
}

.single_new_intro .text_box p.text {
	font-size: 14px;
	line-height: 2.2;
	letter-spacing: 0.08em;
	margin-top: 20px;
}

.single_new_intro::before,
.single_new_intro::after {
	content: '';
	position: absolute;
	left: 0;
	top: 106px;
	width: 200px;
	height: 625px;
	background-color: #f7f7f7;
	z-index: -1;
}

.single_new_intro::after {
	left: -35%;
	width: 500px;
}

.new_bukken_cont {
	margin-top: 78px;
}

.new_bukken_cont .h2_box {
	position: relative;
}

.new_bukken_cont .h2_box p.en {
	color: #FC4501;
	font-size: 30px;
	letter-spacing: 0.13em;
}

.new_bukken_cont .h2_box p.num {
	font-size: 20px;
	letter-spacing: 0.02em;
	font-weight: bold;
	margin-top: 20px;
	color: #FC4501;
}

.new_bukken_cont .h2_box h3 {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin-top: 5px;
}

.new_bukken_cont .h2_box a {
	position: absolute;
	bottom: 0;
	right: 0;
	color: #FC4501;
	font-size: 20px;
	letter-spacing: 0.08em;
	border-bottom: 2px solid #FC4501;
	padding: 0 8px 2px;
}

.new_bukken_list {
	margin-top: 42px;
}

.new_bukken_list ul li {
	width: 360px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	background-color: #fff;
}

.new_bukken_list ul li a {
	display: block;
	padding: 10px 10px 18px;
	color: #242424;
}

.new_bukken_list ul li a .img {
	position: relative;
	width: 100%;
	height: 190px;
	background-color: #eee;
}

.new_bukken_list ul li a .img p.cat {
	background-color: #FC4501;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.08em;
	font-size: 14px;
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	padding: 2px 16px;
}

.new_bukken_list ul li a .img p.new_mark {
	background-color: #de0000;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.08em;
	font-size: 10px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	padding: 2px 10px;
}

.new_bukken_list ul li a .text_box {
	margin-top: 14px;
}

.new_bukken_list ul li a .text_box p.ttl {
	transition: 0.3s;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.06em;
}

.new_bukken_list ul li a .text_box p.plan {
	font-size: 14px;
	letter-spacing: 0.08em;
	margin-top: 5px;
}

.new_bukken_list ul li a .text_box p.plan span.area {
	margin-left: 8px;
}

.new_bukken_list ul li a .text_box p.access {
	font-size: 12px;
	letter-spacing: 0.1em;
}

.new_bukken_list ul li a .text_box p.price {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-top: 8px;
}

.new_bukken_list ul li a .text_box p.sold_text {
	color: red;
	font-weight: 600;
}

.new_bukken_list ul li:nth-child(3n),
.new_bukken_list ul li:nth-child(3n - 1) {
	margin-left: 30px;
}

.new_bukken_list ul li:nth-child(n + 4) {
	margin-top: 25px;
}

.new_bukken_list ul li a .img img {
	transition: 0.3s;
}

.new_bukken_list ul li a:hover .img img {
	transform: scale(1.05);
}

.new_bukken_list ul li a:hover .text_box p.ttl {
	color: #FC4501;
}

.single_new_main_img {
	position: relative;
	align-items: center;
}

.single_new_main_img .img {
	width: 600px;
	height: 335px;
	background-color: #666;
}

.single_new_main_img::before,
.single_new_main_img::after {
	content: '';
	position: absolute;
	top: 165px;
	width: 800px;
	height: 497px;
	background-color: #F7F7F7;
	z-index: -1;
}

.single_new_main_img::after {
	left: -25%;
}

.single_new_main_img .btn {
	width: 300px;
}

.single_new_main_img .btn a {
	display: block;
	width: 100%;
	line-height: 55px;
	background-color: #5aae08;
	border: 1px solid #5aae08;
	text-align: center;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.05em;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	transition: .3s;
}

.single_new_main_img .btn a:hover {
	background-color: #fff;
	color: #5aae08;
	box-shadow: none;
}

.single_new_info {
	margin-top: 50px;
}

.single_new_info .ttl_box {
	margin-bottom: 5px;
}

.single_new_info .ttl_box p.cat {
	background-color: #FC4501;
	color: #fff;
	display: inline-block;
	font-weight: bold;
	letter-spacing: 0.08em;
	padding: 4px 16px;
}

.single_new_info .ttl_box p.ttl {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.08em;
	margin-top: 15px;
}

.single_new_info ul li {
	width: 49%;
	border-bottom: 1px solid #eee;
	padding: 1.5em 10px;
}

.single_new_info ul li.long_type {
	width: 100%;
}

.single_new_info ul li.long_type p.text {
	width: 83%;
}

.single_new_info ul li p {
	font-size: 16px;
	letter-spacing: 0.08em;
}

.single_new_info ul li p.ttl {
	width: 150px;
}

.single_new_info ul li p.text {
	width: 65%;
}

.single_new_thum_box {
	margin-top: 60px;
}

.single_new_thum_box ul li {
	width: 24.5%;
}

.single_new_thum_box ul li a {
	width: 100%;
	height: 160px;
	display: block;
	background-color: #eee;
	position: relative;
}

.single_new_thum_box ul li:nth-child(4n),
.single_new_thum_box ul li:nth-child(4n - 1),
.single_new_thum_box ul li:nth-child(4n - 2) {
	margin-left: 7px;
}

.single_new_thum_box ul li:nth-child(n + 5) {
	margin-top: 7px;
}

.single_new_thum_box ul li a::before {
	content: '';
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 18px;
	height: 18px;
	background-image: url(/wp-content/uploads/2021/06/icon_zoom.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 100;
}

.single_new_main_img .img span.mask {
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(36, 36, 36, 0.7);
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.single_new_main_img .img span.mask img {
	width: unset;
	height: unset;
	max-width: 100%;
	height: auto;
	position: relative;
	object-fit: unset;
}

.single_works_main_img_box {
	position: relative;
	margin-top: 75px;
}

.single_works_main_img_box ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0 20px;
}

.single_works_main_img_box ul li .img {
	width: 100%;
	height: 285px;
	background-color: #666;
	margin-top: 10px;
}

.single_works_main_img_box ul li p.flow {
	font-weight: 700;
	letter-spacing: 0.15em;
	font-size: 22px;
	border-left: 3px solid #FC4501;
	line-height: 1.5;
	padding-left: 0.5em;
}

.single_works_main_img_box::before,
.single_works_main_img_box::after {
	content: '';
	position: absolute;
	top: 185px;
	left: 0;
	width: 900px;
	height: 479px;
	background-color: #F7F7F7;
	z-index: -1;
}

.single_works_main_img_box::after {
	left: -25%;
}

.single_works_thum_item {
	position: relative;
}

.single_works_thum_box {
	margin-top: 75px;
}

.single_works_thum_item p.ttl {
	font-weight: 700;
	letter-spacing: 0.15em;
	font-size: 22px;
	border-left: 3px solid #FC4501;
	line-height: 1.5;
	padding-left: 0.5em;
	margin-bottom: 10px;
}

.single_works_thum_box ul li a {
	width: 100%;
	height: 150px;
	display: block;
	background-color: #eee;
	position: relative;
}

.single_works_thum_box ul li {
	width: 24.5%;
	margin-bottom: 5px;
}

.single_works_thum_box ul li:nth-child(4n),
.single_works_thum_box ul li:nth-child(4n - 1),
.single_works_thum_box ul li:nth-child(4n - 2) {
	margin-left: 7px;
}

.single_works_thum_item+.single_works_thum_item {
	margin-top: 35px;
}

.single_works_thum_box ul li a::before {
	content: '';
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 20px;
	height: 20px;
	background-image: url(/wp-content/uploads/2021/06/icon_zoom.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 100;
}

/* top_instagram */
#top_instagram {
	padding: 180px 0 150px;
}

#top_instagram .contents {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 111px;
}

#top_instagram .title_wrap a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 20px;
	text-decoration: none;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

#top_instagram .title {
	font-family: "Arial Bold";
	font-size: 30px;
	font-weight: 700;
	line-height: 1.13;
	letter-spacing: 0.05em;
	color: #333;
}

#top_instagram .icon {
	width: 40px;
	height: 40px;
}

#top_instagram .sub_title {
	font-size: 14px;
	font-weight: 400;
	line-height: 3.57;
	letter-spacing: 0.03em;
	margin-top: 20px;
}

#top_instagram .items {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}

#top_instagram .items::before {
	content: "";
	width: 2px;
	height: 96%;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: -60px;
	background: #707070;
}

#top_instagram .image {
	overflow: hidden;
}

#top_instagram .image img {
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	-o-object-fit: cover;
	object-fit: cover;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

@media (max-width: 750px) {
	body {
		min-width: initial;
		padding-top: 0;
		font-size: 13px;
	}

	.wrap {
		max-width: 90%;
	}

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

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

	.pc {
		display: none;
	}

	/* 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;
	}


	/* K-ROOM CSS (sp) --------------------------------------------------------------------------------------------------------------------------------------------------------------- */
	a.common_btn {
		width: 70vw;
		padding-left: 6vw;
		font-size: 4vw;
	}

	a.common_btn::after {
		width: 5.5vw;
		margin-right: 5vw;
	}

	a.common_btn:hover {
		opacity: 1;
	}

	.common_fv {
		margin-top: 22vw;
	}

	.common_fv .common_fv_heading {
		padding: 15vw 0;
	}

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

	.common_fv .common_fv_heading_en span {
		margin-right: 1vw;
		font-size: 6.5vw;
	}

	.common_fv .common_fv_heading_ja {
		margin-top: 1vw;
		font-size: 7.5vw;
	}

	.common_bread {
		margin-top: 3vw;
	}

	.common_bread .common_bread_items {
		-webkit-column-gap: 1vw;
		-moz-column-gap: 1vw;
		column-gap: 1vw;
		font-size: 3vw;
	}

	.common_bread .common_bread_items span a span:hover {
		opacity: 1;
	}

	.common_articles {
		grid-template-columns: 49% 49%;
		column-gap: 2%;
		row-gap: 6vw;
		width: calc(100% + 5vw);
		transform: translateX(-2.5vw);
	}

	.common_articles .common_article:hover .article_img img {
		-webkit-transform: scale(1);
		transform: scale(1);
	}

	.common_articles .common_article:hover .article_title {
		color: #333;
	}

	.common_articles .article_lead {
		padding: 0 3vw 0.5vw;
		font-size: 4vw;
	}

	.common_articles .article_body {
		padding: 3vw;
	}

	.common_articles .article_sold {
		margin-bottom: 2vw;
		font-size: 4vw;
	}

	.common_articles .article_title {
		-webkit-line-clamp: 2;
		font-size: 4vw;
		line-height: 1.4;
	}

	.common_articles .article_layout {
		margin-top: 2vw;
		margin-bottom: 2vw;
		font-size: 3vw;
		line-height: 1.5;
	}

	.common_articles .article_traffic {
		margin-bottom: auto;
		font-size: 3vw;
		line-height: 1.5;
	}

	.common_articles .article_address {
		margin-top: 2vw;
		font-size: 3vw;
	}

	.common_articles .article_price {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	.common_articles .article_price span {
		font-size: 5vw;
		margin-right: 0.5vw;
	}

	.common_section {
		padding: 15vw 0 20vw;
	}

	.common_single .single_tag {
		padding: 1vw 3vw;
		font-size: 4vw;
	}

	.common_single .single_title {
		margin-top: 3vw;
		font-size: 4.5vw;
	}

	.common_single .single_items {
		grid-template-columns: 1fr;
		margin-top: 3vw;
	}

	.common_single .single_item {
		grid-template-columns: 35vw 1fr;
		padding: 3vw 0;
	}

	.common_single .single_item dt,
	.common_single .single_item dd {
		font-size: 3.5vw;
	}

	.common_single .single_lists .single_item {
		grid-template-columns: 1fr;
	}

	.common_single .single_lists .single_item dd {
		margin-top: 3vw;
	}

	.common_single .single_lead {
		margin-top: 10vw;
		font-size: 4.5vw;
	}

	.common_single .single_imgs {
		-webkit-column-gap: 4%;
		-moz-column-gap: 4%;
		grid-template-columns: repeat(2, 48%);
		column-gap: 4%;
		row-gap: 3vw;
		margin-top: 10vw;
	}

	.common_single .single_img_small::before {
		right: 1vw;
		bottom: 1vw;
		width: 4vw;
	}

	.common_single .single_img_small::after {
		width: 6vw;
	}

	.common_single .single_img_small:hover {
		opacity: 1;
	}

	.common_single .single_img_big {
		top: calc(50% + 11vw);
		width: 90%;
	}

	.common_single .single_img_big span.single_space {
		width: 10vw;
	}

	.common_single .single_img_big span.single_icon {
		top: 2vw;
		right: 2vw;
		width: 6vw;
	}

	.common_simulator {
		-webkit-transform: translateX(0);
		width: 100%;
		margin-top: 12vw;
		transform: translateX(0);
	}

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

	.header {
		min-width: initial;
		height: 80px;
		padding: 0 5vw;
		z-index: 35;
	}

	.header.active {
		background: #F8F8F8;
	}

	.header.active .header_phone {
		display: none !important;
	}

	.header.active .header_hamburger {
		margin-left: auto;
	}

	.header .header_logo {
		width: 130px;
	}

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

	.header .header_phone {
		position: relative;
		aspect-ratio: 1/1;
		width: 36px;
		margin-left: auto;
		background-color: #FC4501;
	}

	.header .header_phone::before {
		-webkit-transform: translate(-50%, -50%);
		position: absolute;
		top: 50%;
		left: calc(50% + 0.5vw);
		aspect-ratio: 1/1;
		width: 24px;
		transform: translate(-50%, -50%);
		background-image: url(/wp-content/themes/child/image/common_icon_tel_white.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	.header .header_hamburger {
		position: relative;
		aspect-ratio: 28/20;
		width: 28px;
		margin-left: 20px;
	}

	.header .header_hamburger span {
		-webkit-transition: -webkit-transform 0.3s ease 0s;
		position: absolute;
		width: 100%;
		height: 2px;
		background-color: #333;
		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_hamburger span:nth-child(1) {
		top: 0;
		background-color: #FC4501;
	}

	.header .header_hamburger span:nth-child(2) {
		top: 45%;
	}

	.header .header_hamburger span:nth-child(3) {
		bottom: 0;
	}

	.header .header_hamburger.active span:nth-child(1) {
		-webkit-transform: rotate(145deg);
		top: 45%;
		transform: rotate(145deg);
	}

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

	.header .header_hamburger.active span:nth-child(3) {
		-webkit-transform: rotate(-145deg);
		top: 45%;
		bottom: auto;
		transform: rotate(-145deg);
	}

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

	.drawer {
		-webkit-transition: opacity 0.3s ease 0s;
		visibility: hidden;
		z-index: 20;
		z-index: 20;
		position: fixed;
		top: 80px;
		right: 0;
		left: 0;
		height: calc(100dvh - 80px);
		height: calc(100vh - 80px);
		padding-bottom: 24vw;
		overflow: scroll;
		background-color: #F8F8F8;
		opacity: 0;
		transition: opacity 0.3s ease 0s;
	}

	.drawer.active {
		visibility: visible;
		z-index: 40;
		opacity: 1;
	}

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

	.drawer .drawer_lead {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		padding: 7vw 0 6vw;
		border-bottom: 1px solid #9D9D9D;
		color: #333;
		font-weight: 700;
		font-size: 4vw;
		letter-spacing: 0.09em;
	}

	.drawer .drawer_lead::before {
		aspect-ratio: 1/1;
		width: 3vw;
		margin-top: 1vw;
		margin-right: 2.5vw;
		background-color: #333;
		content: "";
	}

	.drawer p.drawer_lead::after {
		-webkit-transform: translateY(-0.3vw) rotate(135deg);
		-webkit-transition: -webkit-transform 0.3s ease 0s;
		aspect-ratio: 1/1;
		width: 2.5vw;
		margin-right: 2vw;
		margin-left: auto;
		transform: translateY(-0.3vw) rotate(135deg);
		border: 2px solid #333;
		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;
	}

	.drawer p.drawer_lead.active::after {
		-webkit-transform: translateY(1vw) rotate(-45deg);
		transform: translateY(1vw) rotate(-45deg);
	}

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

	.drawer .drawer_links {
		display: none;
		padding-left: 5vw;
	}

	.drawer .drawer_link a {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		width: 100%;
		padding: 6vw 0;
		border-bottom: 1px solid #E5E5E5;
		color: #676767;
		font-weight: 700;
		font-size: 3.8vw;
	}

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

	.drawer .drawer_outer {
		display: block;
		margin-top: 10vw;
		padding: 4vw 4vw 4vw 6vw;
		border: 1px solid #333;
		color: #333;
	}

	.drawer .drawer_text {
		font-weight: 700;
		font-size: 3.8vw;
		letter-spacing: 0.09em;
	}

	.drawer .drawer_tel {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		margin-top: 6px;
		font-weight: 700;
		font-size: 8.5vw;
		line-height: 1;
	}

	.drawer .drawer_tel::before {
		aspect-ratio: 1/1;
		width: 6.5vw;
		margin-top: 0.5vw;
		margin-right: 1vw;
		background-image: url(/wp-content/themes/child/image/common_icon_tel_orange.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

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

	.drawer .drawer_time {
		margin-top: 1vw;
		font-weight: 500;
		font-size: 3vw;
		margin-left: -1vw;
	}

	.drawer .drawer_btn {
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-transition: background 0.3s, color 0.3s ease 0s;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		aspect-ratio: 350/70;
		width: 100%;
		margin-top: 4vw;
		margin-left: auto;
		padding-left: 5vw;
		background-color: #FC4501;
		color: #FFF;
		font-weight: 700;
		font-size: 4vw;
		letter-spacing: 0.09em;
		transition: background 0.3s, color 0.3s ease 0s;
	}

	.drawer .drawer_btn::before {
		aspect-ratio: 24/19;
		width: 6vw;
		margin-right: 4vw;
		background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

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

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

	.drawer .drawer_other a {
		color: #717171;
		font-weight: 700;
		font-size: 3.5vw;
	}

	.drawer .drawer_copy {
		margin-top: 3vw;
		font-size: 2.8vw;
		letter-spacing: 0.08em;
		text-align: center;
	}

	.drawer .drawer_copy span {
		font-family: "Noto Sans JP", sans-serif;
	}

	/* common_contact (sp) ------------------------------------------------------------------------------------------------------ */

	.common_contact {
		padding: 13vw 0 17vw;
		background-image: url(/wp-content/themes/child/image/common_contact_img_sp.webp);
	}

	.common_contact .contact_wrapper {
		grid-template-columns: 1fr;
	}

	.common_contact .contact_heading_en {
		font-size: 12vw;
		text-align: center;
	}

	.common_contact .contact_heading_ja {
		font-size: 3.8vw;
		text-align: center;
	}

	.common_contact .contact_lead {
		margin-top: 8vw;
		font-size: 5vw;
		text-align: center;
	}

	.common_contact .contact_lead span {
		font-size: 4vw;
	}

	.common_contact .contact_outer {
		position: relative;
		width: 100%;
		margin-top: 4vw;
		margin-left: 0;
		padding: 4vw 4vw 4vw 6vw;
	}

	.common_contact .contact_outer::after {
		-webkit-transform: translateY(-50%);
		position: absolute;
		top: 50%;
		right: 4vw;
		aspect-ratio: 1/1;
		width: 6vw;
		transform: translateY(-50%);
		background-image: url(/wp-content/themes/child/image/common_arrow3.svg);
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
	}

	.common_contact .contact_links {
		border-left: none;
	}

	.common_contact .contact_text {
		font-size: 3.8vw;
	}

	.common_contact .contact_tel {
		margin-top: 1vw;
		font-size: 8.5vw;
	}

	.common_contact .contact_tel::before {
		width: 7vw;
		margin-top: 1vw;
		margin-right: 1vw;
	}

	.common_contact .contact_time {
		margin-top: 1vw;
		font-size: 3vw;
		margin-left: -1vw;
	}

	.common_contact .contact_btn {
		aspect-ratio: 350/70;
		width: 100%;
		margin-top: 4vw;
		margin-left: 0;
		padding-left: 5vw;
		font-size: 4vw;
	}

	.common_contact .contact_btn::before {
		width: 6vw;
		margin-right: 4vw;
	}

	.common_contact .contact_btn::after {
		width: 6vw;
		margin-right: 4vw;
	}

	.common_contact .contact_btn:hover {
		background-color: #FC4501;
		color: #FFF;
	}

	.common_contact .contact_btn:hover::before {
		background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
	}

	.common_contact .contact_btn:hover::after {
		background-image: url(/wp-content/themes/child/image/common_arrow3.svg);
	}

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

	.footer {
		padding-top: 15vw;
		padding-bottom: 70px;
	}

	.footer .footer_head {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
		padding-bottom: 5vw;
	}

	.footer .footer_info {
		display: contents;
	}

	.footer .footer_logo {
		width: 60vw;
		margin: 0 auto;
	}

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

	.footer .footer_company {
		margin-top: 6vw;
		font-size: 4vw;
		text-align: center;
	}

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

	.footer .footer_insta {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		order: 1;
		margin-top: 10vw;
		font-size: 3.8vw;
	}

	.footer .footer_insta::before {
		width: 10vw;
		margin-right: 5vw;
	}

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

	.footer .footer_map {
		aspect-ratio: 350/180;
		width: 100%;
		margin-top: 6vw;
	}

	.footer .footer_text {
		margin-top: 3vw;
		font-size: 3.5vw;
		letter-spacing: 0.05em;
		text-align: center;
	}

	.footer .footer_others {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-column-gap: 5vw;
		-moz-column-gap: 5vw;
		column-gap: 5vw;
		justify-content: center;
		margin-top: 10vw;
	}

	.footer .footer_other a {
		font-size: 3.5vw;
	}

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

	.footer .footer_other:first-child::after {
		display: none;
	}

	.footer .footer_bottom {
		margin-top: 5vw;
	}

	.footer .footer_copy {
		padding: 3vw 0;
		font-size: 2.8vw;
	}

	/* fix_btns (sp) ------------------------------------------------------------------------------------------------------ */

	.fix_btns {
		display: grid !important;
		z-index: 50;
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		grid-template-columns: repeat(3, 33.33%);
	}

	.fix_btns .fix_btn {
		-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;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-weight: 700;
		font-size: 14px;
		max-height: 130px;
		padding: 12px 0 6px;
	}

	.fix_btns .fix_btn::before {
		-webkit-transition: background 0.3s ease 0s;
		background-size: contain;
		background-repeat: no-repeat;
		content: "";
		transition: background 0.3s ease 0s;
	}

	.fix_btns .fix_btn.reserve {
		background-color: #333;
		color: #FFF;
	}

	.fix_btns .fix_btn.reserve::before {
		aspect-ratio: 21/25;
		width: 20px;
		margin-bottom: 4px;
		background-image: url(/wp-content/themes/child/image/common_icon_reserve.svg);
	}

	.fix_btns .fix_btn.calc {
		background-color: #FFF;
		color: #333;
	}

	.fix_btns .fix_btn.calc::before {
		aspect-ratio: 19/26;
		width: 20px;
		margin-bottom: 2px;
		background-image: url(/wp-content/themes/child/image/common_icon_calculator.svg);
	}

	.fix_btns .fix_btn.mail {
		background-color: #FC4501;
		color: #FFF;
	}

	.fix_btns .fix_btn.mail::before {
		aspect-ratio: 23/18;
		width: 24px;
		margin-bottom: 6px;
		background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
	}

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

	.top_fv {
		margin-top: 80px;
	}

	.top_fv .swiper-pagination {
		-webkit-transform: translateY(-50%);
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		top: 50%;
		right: 5vw;
		bottom: auto;
		left: auto;
		row-gap: 3vw;
		flex-direction: column;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		padding-left: 0;
		transform: translateY(-50%);
	}

	.top_fv .swiper-pagination-bullet {
		width: 2vw;
		height: 2vw;
	}

	.top_fv .fv_bg {
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(rgba(0, 0, 0, 0.73)));
		background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.73) 100%);
	}

	.top_fv .fv_wrapper {
		padding-top: 0;
		padding-bottom: 5vw;
	}

	.top_fv .fv_outer {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		max-width: 90%;
	}

	.top_fv .fv_items {
		grid-template-columns: 32vw 32vw;
		gap: 2.5vw;
	}

	.top_fv .fv_items::after {
		bottom: -8vw;
		width: 66.5vw;
	}

	.top_fv .fv_item {
		aspect-ratio: 184/55;
		width: 32vw;
		padding-left: 1vw;
		font-size: 3.8vw;
	}

	.top_fv .fv_item span {
		margin-top: -1vw;
		font-size: 5vw;
	}

	.top_fv .fv_message {
		margin-top: 11vw;
		font-size: 9.5vw;
		line-height: 1.4;
	}

	.top_bg::after {
		top: -44vw;
		right: 0;
		aspect-ratio: 390/3647;
		width: 100vw;
		background-image: url(/wp-content/themes/child/image/top_bg_sp.webp);
	}

	/* top_concept (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_concept {
		padding-top: 26vw;
	}

	.top_concept .concept_wrapper {
		grid-template-columns: 1fr;
	}

	.top_concept .concept_body {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
		padding-bottom: 0;
	}

	.top_concept .concept_heading {
		margin-top: 7vw;
		font-size: 6.5vw;
	}

	.top_concept .concept_heading span.family {
		font-size: 7vw;
	}

	.top_concept .concept_heading span.size {
		font-size: 4.5vw;
	}

	.top_concept .concept_heading span.color {
		font-size: 9.5vw;
	}

	.top_concept .concept_text {
		margin-top: 5vw;
		font-size: 3.8vw;
	}

	.top_concept .concept_outer {
		margin-top: 10vw;
	}

	.top_concept .concept_img {
		width: 73vw;
		margin-left: auto;
	}

	.top_concept .concept_img::before {
		top: -12vw;
		right: -5vw;
		width: 73vw;
	}

	.top_concept .concept_img::after {
		display: none;
	}

	/* top_service (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_service {
		padding-top: 35vw;
	}

	.top_service .service_heading {
		padding-left: 0;
	}

	.top_service .service_heading_en {
		font-size: 11vw;
		text-align: center;
	}

	.top_service .service_heading_ja {
		margin-top: 2vw;
		font-size: 4vw;
		text-align: center;
	}

	.top_service .service_items {
		margin-top: 5vw;
	}

	.top_service .service_item {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
	}

	.top_service .service_item:not(:first-child) {
		margin-top: 22vw;
	}

	.top_service .service_item:nth-child(2) {
		grid-template-columns: 1fr;
	}

	.top_service .service_item:nth-child(2) .service_img {
		-webkit-box-ordinal-group: initial;
		-ms-flex-order: initial;
		order: initial;
	}

	.top_service .service_item:nth-child(2) .service_img::before {
		right: -2.5vw;
	}

	.top_service .service_item:nth-child(2) .service_img::after {
		right: -5vw;
	}

	.top_service .service_item:nth-child(2) .service_deco {
		right: -5vw;
		bottom: -10vw;
		left: auto;
		-webkit-transform: translateX(20%);
		transform: translateX(20%);
	}

	.top_service .service_item:nth-child(2) .service_body {
		padding-left: 0;
	}

	.top_service .service_deco {
		right: auto;
		bottom: -10vw;
		left: -5vw;
		aspect-ratio: initial;
		width: 100%;
		height: calc(100% - 5vw);
		-webkit-transform: translateX(-20%);
		transform: translateX(-20%);
	}

	.top_service .service_img {
		width: 100%;
		height: 46vw;
		margin-top: 7vw;
	}

	.top_service .service_img::before {
		top: -2.5vw;
		left: -2.5vw;
		width: 10vw;
	}

	.top_service .service_img::after {
		top: -5vw;
		left: -5vw;
		width: 2.5vw;
	}

	.top_service .service_bg {
		top: 1.2vw;
		left: 1.2vw;
	}

	.top_service .service_body {
		display: contents;
	}

	.top_service .service_number {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		font-size: 3.2vw;
	}

	.top_service .service_number span {
		margin-right: 1vw;
		font-size: 6.5vw;
	}

	.top_service .service_title {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		font-size: 8vw;
	}

	.top_service .service_title::after {
		display: none;
	}

	.top_service .service_lists {
		row-gap: 1vw;
		margin-top: 8vw;
	}

	.top_service .service_item:nth-child(1),
	.top_service .service_item:nth-child(2),
	.top_service .service_item:nth-child(3) {
		padding: 0;
	}

	.top_service .service_item:nth-child(1) .service_lists,
	.top_service .service_item:nth-child(2) .service_lists,
	.top_service .service_item:nth-child(3) .service_lists {
		grid-template-columns: 1fr;
	}

	.top_service .service_list {
		font-size: 3.8vw;
	}

	.top_service .service_list::before {
		width: 3vw;
		margin-right: 3vw;
	}

	.top_service .service_list span {
		margin-left: 1vw;
		font-size: 3.3vw;
	}

	.top_service .service_outer {
		margin-top: 7vw;
	}

	/* top_news (sp) -------------------------------------------------------------------------------------------------------------------- */

	.top_news {
		padding: 0 0 25vw;
	}

	.top_news .news_wrapper {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
	}

	.top_news .news_outer {
		display: contents;
	}

	.top_news .news_heading_en {
		font-size: 11vw;
	}

	.top_news .news_heading_ja {
		margin-left: 3vw;
		font-size: 3.8vw;
	}

	.top_news .news_btn {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
		width: 70vw;
		margin: 7.5vw auto 0;
		padding-left: 6vw;
		font-size: 4vw;
	}

	.top_news .news_btn::after {
		width: 6vw;
		margin-right: 6vw;
	}

	.top_news .news_btn:hover {
		background-color: #FFF;
		color: #333;
	}

	.top_news .news_btn:hover::after {
		background-image: url(/wp-content/themes/child/image/common_arrow4.svg);
	}

	.top_news .news_items {
		margin-top: 5vw;
	}

	.top_news .news_item {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		position: relative;
		flex-direction: column;
		align-items: flex-start;
		padding: 4vw 0;
	}

	.top_news .news_item::after {
		-webkit-transform: translateY(-50%);
		position: absolute;
		top: 50%;
		right: 0;
		width: 6vw;
		transform: translateY(-50%);
	}

	.top_news .news_item:hover {
		opacity: 1;
	}

	.top_news .news_item:hover::after {
		background-image: url(/wp-content/themes/child/image/common_arrow2.svg);
	}

	.top_news .news_time {
		font-size: 3.5vw;
	}

	.top_news .news_title {
		-webkit-line-clamp: 2;
		margin-left: 0;
		padding-right: 12vw;
		font-size: 3.8vw;
	}

	/* page_construction (sp) ------------------------------------------------------------------------------------------------------ */

	#page_construction .restoration {
		padding-top: 15vw;
	}

	#page_construction .restoration .restoration_heading_en {
		font-size: 3.5vw;
	}

	#page_construction .restoration .restoration_heading_ja {
		font-size: 8vw;
	}

	#page_construction .restoration .restoration_text {
		margin-top: 4vw;
		font-size: 3.8vw;
	}

	#page_construction .restoration .restoration_wrapper {
		grid-template-columns: 1fr;
		margin-top: 7.5vw;
		padding-left: 0;
	}

	#page_construction .restoration .restoration_img {
		aspect-ratio: 350/160;
	}

	#page_construction .restoration .restoration_img::before {
		top: -5vw;
		left: -5vw;
		width: 10vw;
	}

	#page_construction .restoration .restoration_img::after {
		right: -5vw;
		bottom: -5vw;
		width: 7.5vw;
	}

	#page_construction .restoration .restoration_bg {
		top: 1.5vw;
		left: 1.5vw;
	}

	#page_construction .restoration .restoration_items {
		margin-top: 8vw;
	}

	#page_construction .restoration .restoration_item {
		padding-bottom: 4vw;
		padding-left: 9vw;
		font-size: 4vw;
	}

	#page_construction .restoration .restoration_item::before {
		top: 0.5vw;
		width: 6.5vw;
	}

	#page_construction .restoration .restoration_item span {
		font-size: 5vw;
	}

	#page_construction .restoration .restoration_item:last-child {
		margin-top: 4vw;
	}

	#page_construction .flow {
		padding-top: 20vw;
		padding-bottom: 15vw;
	}

	#page_construction .flow .flow_heading {
		font-size: 8vw;
	}

	#page_construction .flow .flow_items {
		grid-template-columns: 1fr;
		row-gap: 4vw;
		margin-top: 5vw;
		padding: 4vw;
	}

	#page_construction .flow .flow_title {
		padding: 1vw 0;
		font-size: 6vw;
	}

	#page_construction .flow .flow_lists {
		margin-top: 6vw;
	}

	#page_construction .flow .flow_lists::before {
		top: 2vw;
		left: 3.3vw;
		height: 70%;
	}

	#page_construction .flow .flow_item:nth-child(1) .flow_lists::before {
		height: 85%;
	}

	#page_construction .flow .flow_list {
		height: auto !important;
		padding: 4vw 0 4vw 8vw;
	}

	#page_construction .flow .flow_lead {
		font-size: 4vw;
	}

	#page_construction .flow .flow_lead span {
		font-size: 4.5vw;
	}

	#page_construction .flow .flow_lead::before {
		top: 1.2vw;
		left: -7vw;
		width: 5vw;
	}

	#page_construction .flow .flow_text {
		margin-top: 1vw;
		font-size: 4vw;
	}

	#page_construction .flow .flow_text span {
		font-size: 4.5vw;
	}

	#page_construction .flow .flow_message {
		font-size: 3vw;
		letter-spacing: 0.05em;
	}

	#page_construction .flow .flow_arrow {
		width: 50vw;
		margin: 8vw auto 0;
	}

	#page_construction .flow .flow_start {
		width: 90%;
		margin: 6vw auto 0;
		padding-top: 1px;
		font-size: 7vw;
	}

	#page_construction .flow .flow_start::before,
	#page_construction .flow .flow_start::after,
	#page_construction .flow .flow_start span.outer::before,
	#page_construction .flow .flow_start span.outer::after {
		width: 5vw;
	}

	#page_construction .move {
		padding-top: 20vw;
	}

	#page_construction .move .move_heading_en {
		font-size: 4vw;
	}

	#page_construction .move .move_heading_ja {
		font-size: 8vw;
	}

	#page_construction .move .move_lead {
		margin-top: 8vw;
		font-size: 6vw;
	}

	#page_construction .move .move_text {
		margin-top: 2vw;
		font-size: 3.8vw;
	}

	#page_construction .move .move_items {
		grid-template-columns: 1fr;
		margin-top: 6vw;
	}

	#page_construction .move .move_item {
		-webkit-column-gap: 5vw;
		-moz-column-gap: 5vw;
		grid-template-columns: 25vw 1fr;
		column-gap: 5vw;
		padding: 4vw 0;
	}

	#page_construction .move .move_number {
		font-size: 4vw;
	}

	#page_construction .move .move_message {
		margin-top: 1vw;
		font-size: 3.5vw;
	}

	#page_construction .move .move_message::before,
	#page_construction .move .move_message::after {
		font-size: 20vw;
	}

	#page_construction .move .move_message::before {
		top: -6vw;
		left: -6vw;
	}

	#page_construction .move .move_message::after {
		right: -1vw;
		bottom: -14vw;
	}

	#page_construction .move .move_message span {
		font-size: 4.5vw;
	}

	#page_construction .move .move_attention {
		margin-top: 1vw;
		font-size: 3vw;
	}

	#page_construction .move .move_arrow {
		width: 50vw;
		margin: 8vw auto 0;
	}

	#page_construction .move .move_title {
		margin-top: 8vw;
		font-size: 7vw;
		line-height: 1.4;
	}

	#page_construction .move .move_title span.deco {
		-webkit-column-gap: 3vw;
		-moz-column-gap: 3vw;
		column-gap: 3vw;
		margin-bottom: 2vw;
		font-size: 3.8vw;
	}

	#page_construction .move .move_title span.deco::before,
	#page_construction .move .move_title span.deco::after {
		height: 6vw;
	}

	#page_construction .move .move_title span.deco::after {
		margin-left: -2vw;
	}

	#page_construction .move .move_title span.size {
		font-size: 5vw;
	}

	#page_construction .agency {
		padding: 20vw 0;
	}

	#page_construction .agency .agency_text {
		font-size: 5vw;
	}

	#page_construction .agency .agency_text::after {
		bottom: -3vw;
		left: -0.5vw;
	}

	#page_construction .agency .agency_wrapper {
		margin-top: 10vw;
		padding: 0 5vw 5vw;
	}

	#page_construction .agency .agency_wrapper::before {
		top: -5vw;
		left: -5vw;
		width: 10vw;
	}

	#page_construction .agency .agency_wrapper::after {
		right: -4vw;
		bottom: -4vw;
		width: 8vw;
	}

	#page_construction .agency .agency_lead {
		padding: 1vw 5vw;
		font-size: 5vw;
	}

	#page_construction .agency .agency_outer {
		margin-top: -3vw;
	}

	#page_construction .agency .agency_outer::before,
	#page_construction .agency .agency_outer::after {
		width: 5vw;
	}

	#page_construction .agency .agency_wrap {
		display: block;
		padding: 5vw 5vw 8vw;
	}

	#page_construction .agency .agency_wrap::before,
	#page_construction .agency .agency_wrap::after {
		width: 5vw;
	}

	#page_construction .agency .agency_body {
		padding-right: 0;
		border-right: none;
	}

	#page_construction .agency .agency_item {
		padding: 3vw 0;
		font-size: 4vw;
	}

	#page_construction .agency .agency_item::before {
		width: 7vw;
		margin-top: 0.5vw;
		margin-right: 3vw;
	}

	#page_construction .agency .agency_item:first-child {
		padding-top: 2vw;
	}

	#page_construction .agency .agency_attention {
		margin-top: 2vw;
		font-size: 3vw;
	}

	#page_construction .agency .agency_head {
		margin-top: 8vw;
		padding-left: 0;
	}

	#page_construction .agency .agency_point {
		width: 25vw;
	}

	#page_construction .agency .agency_img {
		width: 100%;
		margin-top: 2vw;
	}

	#page_construction .agency .agency_bg {
		top: 1.5vw;
		left: 1.5vw;
	}

	#page_construction .agency .agency_photo {
		margin-top: 3vw;
		font-size: 3.5vw;
	}

	#page_construction .agency .agency_price {
		margin-top: 20vw;
	}

	#page_construction .agency .price_outer {
		-webkit-column-gap: 3vw;
		-moz-column-gap: 3vw;
		column-gap: 3vw;
	}

	#page_construction .agency .price_text {
		padding: 1vw 2vw;
		font-size: 4vw;
	}

	#page_construction .agency .price_number {
		font-size: 15vw;
	}

	#page_construction .agency .price_number::after {
		top: 4vw;
		right: -2vw;
		font-size: 3vw;
	}

	#page_construction .agency .price_number span {
		margin-left: 3vw;
		font-size: 6vw;
	}

	#page_construction .agency .price_wrapper {
		margin-top: 4vw;
	}

	#page_construction .agency .price_point {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		width: 25vw;
	}

	#page_construction .agency .price_lead {
		margin-top: 2vw;
		padding: 1vw 3vw;
		font-size: 4vw;
		width: fit-content;
	}

	#page_construction .agency .price_lead+.price_lead {
		padding: 0.3vw 3vw 0.5vw;
		margin-top: 1vw;
	}

	#page_construction .agency .price_lead span {
		font-size: 5vw;
	}

	#page_construction .agency .agency_contact {
		display: block;
		margin: 10vw auto 0;
		padding: 0 5vw;
	}

	#page_construction .agency .contact_item {
		padding: 5vw 0;
	}

	#page_construction .agency .contact_item:first-child {
		border-right: none;
		border-bottom: 1px solid #E2E2E2;
	}

	#page_construction .agency .contact_text {
		font-size: 3.5vw;
	}

	#page_construction .agency .contact_tel {
		margin-top: 2vw;
		font-size: 8vw;
	}

	#page_construction .agency .contact_tel::before {
		width: 8vw;
		margin-top: 0.5vw;
		margin-right: 1vw;
	}

	#page_construction .agency .contact_time {
		margin-top: 1vw;
		font-size: 3.5vw;
	}

	#page_construction .agency .contact_btn {
		aspect-ratio: 350/70;
		width: 100%;
		margin: 2vw auto 0;
		padding-left: 5vw;
		font-size: 4vw;
	}

	#page_construction .agency .contact_btn::before {
		width: 7vw;
		margin-right: 6vw;
	}

	#page_construction .agency .contact_btn::after {
		width: 7vw;
		margin-right: 3vw;
	}

	#page_construction .agency .contact_btn:hover {
		background-color: #FC4501;
		color: white;
	}

	#page_construction .agency .contact_btn:hover::before {
		background-image: url(/wp-content/themes/child/image/common_icon_mail.svg);
	}

	#page_construction .agency .contact_btn:hover::after {
		background-image: url(/wp-content/themes/child/image/common_arrow3.svg);
	}

	#page_construction .service {
		padding: 20vw 0;
	}

	#page_construction .service .service_heading_en {
		font-size: 4vw;
	}

	#page_construction .service .service_heading_ja {
		font-size: 8vw;
	}

	#page_construction .service .service_text {
		margin-top: 3vw;
		font-size: 3.8vw;
	}

	#page_construction .service .service_items {
		grid-template-columns: 1fr;
		row-gap: 8vw;
		margin-top: 8vw;
	}

	#page_construction .service .service_item {
		padding: 5vw;
	}

	#page_construction .service .service_item:nth-child(1)::before {
		top: -3vw;
		left: -3vw;
		width: 10vw;
	}

	#page_construction .service .service_item:nth-child(1)::after {
		top: -5vw;
		left: -5vw;
		width: 5vw;
	}

	#page_construction .service .service_item:nth-child(2)::before {
		right: -5vw;
		bottom: -5vw;
		width: 10vw;
	}

	#page_construction .service .service_lead {
		padding: 0.5vw 0 1vw;
		font-size: 6vw;
	}

	#page_construction .service .service_lists {
		margin-top: 2vw;
	}

	#page_construction .service .service_list {
		padding: 4vw 0;
		font-size: 3.8vw;
		line-height: 1.6;
		letter-spacing: 0.05em;
	}

	#page_construction .service .service_list::before {
		width: 4vw;
		margin-top: 1.5vw;
		margin-right: 3vw;
	}

	#page_construction .service .service_message {
		aspect-ratio: 735/400;
		width: 90%;
		margin: 12vw auto 0;
		padding: 0;
		font-size: 7vw;
		line-height: 1.4;
		text-align: center;
	}

	#page_construction .service .service_message::before,
	#page_construction .service .service_message::after,
	#page_construction .service .service_message span.outer::before,
	#page_construction .service .service_message span.outer::after {
		width: 5vw;
	}

	#page_construction .service .service_message span.outer {
		flex-direction: column;
	}

	#page_construction .service .service_message span.size {
		font-size: 6vw;
	}

	#page_construction .service .service_message span.dod {
		margin-top: 3vw;
	}

	#page_construction .support {
		padding: 20vw 0;
	}

	#page_construction .support .support_heading_en {
		font-size: 4vw;
	}

	#page_construction .support .support_heading_ja {
		font-size: 8vw;
	}

	#page_construction .support .support_text {
		margin-top: 3vw;
		font-size: 3.8vw;
	}

	#page_construction .support .support_items {
		grid-template-columns: 1fr;
		row-gap: 8vw;
		margin-top: 8vw;
	}

	#page_construction .support .support_item {
		padding: 5vw;
	}

	#page_construction .support .support_number {
		font-size: 5vw;
	}

	#page_construction .support .support_lead {
		font-size: 5vw;
	}

	#page_construction .support .support_lead::before,
	#page_construction .support .support_lead::after {
		font-size: 20vw;
	}

	#page_construction .support .support_lead::before {
		top: -5vw;
		left: -6vw;
	}

	#page_construction .support .support_lead::after {
		right: -6vw;
		bottom: -14vw;
	}

	#page_construction .support .support_lists {
		min-height: initial;
		margin-top: 5vw;
		padding: 0 5vw;
	}

	#page_construction .support .support_list {
		padding: 5vw 0;
		font-size: 4vw;
	}

	#page_construction .support .support_list::before {
		width: 6vw;
		margin-top: 1vw;
		margin-right: 3vw;
	}

	/* page_contact (sp) ------------------------------------------------------------------------------------------------------ */

	.page_contact .common_contact_form .form_text {
		margin-bottom: 3vw;
		font-size: 4.5vw;
	}

	.page_contact .common_contact_form dl+.form_text {
		margin-top: 12vw;
	}

	.page_contact .common_contact_form dl.went .outer {
		-webkit-column-gap: 5vw;
		-moz-column-gap: 5vw;
		column-gap: 5vw;
	}

	.page_contact .common_contact_form dl.went span.day {
		-webkit-column-gap: 2vw;
		-moz-column-gap: 2vw;
		column-gap: 2vw;
	}

	.page_contact .common_contact_form dl.went span.day select {
		width: 15vw;
		height: 10vw;
		padding: 0 0 0 1vw;
	}

	.page_contact .common_contact_form dl.went span.time {
		-webkit-column-gap: 2vw;
		-moz-column-gap: 2vw;
		column-gap: 2vw;
		margin-top: 3vw;
	}

	.page_contact .common_contact_form dl.went span.time select {
		width: 40vw;
		height: 10vw;
		padding: 0 0 0 1vw;
	}

	/* page_concept (sp) ------------------------------------------------------------------------------------------------------ */

	#page_concept .concept {
		padding: 15vw 0;
	}

	#page_concept .concept .concept_img {
		width: 100%;
	}

	#page_concept .concept .concept_heading {
		margin-top: 15vw;
	}

	#page_concept .concept .concept_heading_en {
		font-size: 4vw;
	}

	#page_concept .concept .concept_heading_ja {
		font-size: 8vw;
		line-height: 1.2;
	}

	#page_concept .concept .concept_wrapper {
		grid-template-columns: 1fr;
		margin-top: 8vw;
	}

	#page_concept .concept .concept_lead {
		margin-top: 8vw;
		font-size: 5vw;
		text-align: center;
	}

	#page_concept .concept .concept_text {
		margin-top: 6vw;
		font-size: 4vw;
	}

	#page_concept .concept .concept_text+.concept_text {
		margin-top: 3vw;
	}

	#page_concept .concept .concept_image {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		width: 80%;
		margin: 0 auto;
	}

	#page_concept .message {
		padding: 15vw 0;
	}

	#page_concept .message .message_lead {
		font-size: 6vw;
	}

	#page_concept .message .message_text {
		margin-top: 3vw;
		font-size: 3.5vw;
	}

	#page_concept .message .message_btn {
		margin-top: 10vw;
	}

	#page_concept .strength {
		padding: 15vw 0;
	}

	#page_concept .strength .strength_heading_en {
		font-size: 4vw;
	}

	#page_concept .strength .strength_heading_ja {
		font-size: 8vw;
		line-height: 1.2;
	}

	#page_concept .strength .strength_items {
		grid-template-columns: 1fr;
		row-gap: 10vw;
		margin-top: 8vw;
	}

	#page_concept .strength .strength_number {
		padding: 1vw 3vw;
		font-size: 4vw;
	}

	#page_concept .strength .strength_lead {
		font-size: 6vw;
		line-height: 1.4;
	}

	#page_concept .strength .strength_text {
		margin-top: 3vw;
		font-size: 3.5vw;
	}

	#page_concept .strength .strength_img {
		aspect-ratio: 2/1;
	}

	/* page_sales (sp) ------------------------------------------------------------------------------------------------------ */

	#page_sales .message {
		padding: 15vw 0;
	}

	#page_sales .message .message_lead {
		font-size: 6vw;
	}

	#page_sales .message .message_text {
		margin-top: 8vw;
		font-size: 4vw;
	}

	#page_sales .message .message_text+.message_text {
		margin-top: 4vw;
	}

	#page_sales .message .message_text span {
		display: inline;
	}

	#page_sales .service {
		padding: 15vw 0;
	}

	#page_sales .service .service_heading_en {
		font-size: 4vw;
	}

	#page_sales .service .service_heading_ja {
		font-size: 8vw;
	}

	#page_sales .service .service_wrapper {
		margin-top: 8vw;
		padding: 5vw;
	}

	#page_sales .service .service_wrapper::before {
		top: -2.5vw;
		left: -2.5vw;
		width: 10vw;
	}

	#page_sales .service .service_wrapper::after {
		right: -2.5vw;
		bottom: -2.5vw;
		width: 8vw;
	}

	#page_sales .service .service_outer::before,
	#page_sales .service .service_outer::after {
		width: 5vw;
	}

	#page_sales .service .service_wrap {
		padding: 6vw 8vw;
	}

	#page_sales .service .service_wrap::before,
	#page_sales .service .service_wrap::after {
		width: 5vw;
	}

	#page_sales .service .service_lists {
		grid-template-columns: 1fr;
	}

	#page_sales .service .service_list {
		padding: 3vw 0;
		font-size: 4vw;
	}

	#page_sales .service .service_list::before {
		width: 6vw;
		margin-right: 2vw;
	}

	#page_sales .service .service_list:first-child {
		padding-top: 2vw;
	}

	#page_sales .service .service_item {
		grid-template-columns: 1fr;
	}

	#page_sales .service .service_item:first-child {
		padding-top: 15vw;
	}

	#page_sales .service .service_item:not(:first-child) {
		padding-top: 20vw;
	}

	#page_sales .service .service_img {
		width: 100%;
		height: 46vw;
		margin-top: 7vw;
	}

	#page_sales .service .service_img::before {
		top: -2.5vw;
		left: -2.5vw;
		width: 10vw;
	}

	#page_sales .service .service_img::after {
		top: -5vw;
		left: -5vw;
		width: 2.5vw;
	}

	#page_sales .service .service_bg {
		top: 2vw;
		left: 2vw;
	}

	#page_sales .service .service_body {
		display: contents;
	}

	#page_sales .service .service_number {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		font-size: 3.5vw;
	}

	#page_sales .service .service_number span {
		margin-right: 2vw;
		font-size: 6vw;
	}

	#page_sales .service .service_title {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		font-size: 7vw;
	}

	#page_sales .service .service_title::after {
		display: none;
	}

	#page_sales .service .service_lead {
		margin-top: 6vw;
		font-size: 4.5vw;
	}

	#page_sales .service .service_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	#page_sales .service .service_text+.service_text {
		margin-top: 2vw;
	}

	#page_sales .service .service_contents {
		margin-top: 15vw;
	}

	#page_sales .service .article_heading {
		font-size: 5vw;
	}

	#page_sales .service .common_articles {
		margin-top: 3vw;
	}

	#page_sales .service .service_btn {
		margin: 8vw auto 0;
	}

	/* page_rental (sp) ------------------------------------------------------------------------------------------------------ */

	#page_rental .strength {
		padding: 15vw 0;
	}

	#page_rental .strength .strength_heading_en {
		font-size: 4vw;
	}

	#page_rental .strength .strength_heading_ja {
		font-size: 8vw;
	}

	#page_rental .strength .strength_lead {
		margin-top: 8vw;
		font-size: 4.5vw;
	}

	#page_rental .strength .strength_lists {
		margin: 8vw auto 0;
	}

	#page_rental .strength .strength_list {
		font-size: 3.8vw;
	}

	#page_rental .strength .strength_list:nth-child(1),
	#page_rental .strength .strength_list:nth-child(2) {
		display: flex;
		column-gap: 1vw;
		align-items: flex-start;
	}

	#page_rental .strength .strength_list:nth-child(2) {
		margin-top: 4vw;
	}

	#page_rental .strength .strength_list:nth-child(1) span,
	#page_rental .strength .strength_list:nth-child(2) span {
		flex-shrink: 0;
		margin-top: -1.6vw;
	}

	#page_rental .strength .strength_list span.color {
		margin-right: 1vw;
	}

	#page_rental .strength .strength_list span.color span {
		font-size: 7vw;
	}

	#page_rental .strength .strength_list span.size1 {
		font-size: 10vw;
	}

	#page_rental .strength .strength_list span.size2 {
		font-size: 5vw;
	}

	#page_rental .strength .strength_list span.size3 {
		margin-left: -4vw;
		font-size: 9vw;
		-webkit-transform: translateY(-0.5vw);
		transform: translateY(-0.5vw);
	}

	#page_rental .strength .strength_items {
		grid-template-columns: 1fr;
		row-gap: 4vw;
		margin-top: 8vw;
	}

	#page_rental .strength .strength_item {
		padding: 4vw;
	}

	#page_rental .strength .strength_title {
		padding: 1vw 3vw;
		font-size: 4.5vw;
	}

	#page_rental .strength .strength_text {
		margin-top: 4vw;
		font-size: 3.5vw;
	}

	#page_rental .strength .strength_text span {
		font-size: 5vw;
	}

	#page_rental .strength .strength_text+.strength_text {
		margin-top: 4vw;
	}

	#page_rental .package {
		padding: 15vw 0 20vw;
	}

	#page_rental .package .package_heading {
		font-size: 5vw;
		line-height: 1.7;
	}

	#page_rental .package .package_heading span {
		font-size: 7vw;
	}

	#page_rental .package .package_wrapper {
		margin-top: 8vw;
		padding: 5vw;
	}

	#page_rental .package .package_wrapper::before {
		top: -2.5vw;
		left: -2.5vw;
		width: 10vw;
	}

	#page_rental .package .package_wrapper::after {
		right: -2.5vw;
		bottom: -2.5vw;
		width: 8vw;
	}

	#page_rental .package .package_outer::before,
	#page_rental .package .package_outer::after {
		width: 5vw;
	}

	#page_rental .package .package_wrap {
		padding: 8vw 4vw;
	}

	#page_rental .package .package_wrap::before,
	#page_rental .package .package_wrap::after {
		width: 5vw;
	}

	#page_rental .package .package_items {
		grid-template-columns: 1fr;
		row-gap: 8vw;
	}

	#page_rental .package .package_lead {
		padding: 1vw 3vw;
		font-size: 4.5vw;
	}

	#page_rental .package .package_lists {
		margin-top: 3vw;
	}

	#page_rental .package .package_list {
		padding: 3vw 0;
		font-size: 4vw;
	}

	#page_rental .package .package_list::before {
		width: 6vw;
		margin-right: 2vw;
	}

	#page_rental .package .package_list:first-child {
		padding-top: 2vw;
	}

	#page_rental .package .package_message {
		margin-top: 15vw;
		font-size: 5vw;
	}

	#page_rental .package .package_q {
		margin-top: 8vw;
		padding-bottom: 2vw;
		font-size: 5vw;
		text-align: left;
	}

	#page_rental .package .package_a {
		margin-top: 6vw;
		font-size: 4vw;
		text-align: left;
	}

	#page_rental .package .package_a+.package_a {
		margin-top: 3vw;
	}

	/* page_company (sp) ------------------------------------------------------------------------------------------------------ */

	#page_company .message {
		padding: 15vw 0;
	}

	#page_company .message .message_heading_en {
		font-size: 4vw;
	}

	#page_company .message .message_heading_ja {
		font-size: 8vw;
	}

	#page_company .message .message_wrapper {
		grid-template-columns: 1fr;
		row-gap: 15vw;
		margin-top: 8vw;
	}

	#page_company .message .message_img img {
		aspect-ratio: 5/3;
	}

	#page_company .message .message_img figcaption {
		margin-top: 1vw;
		font-size: 4vw;
	}

	#page_company .message .message_text {
		font-size: 3.5vw;
	}

	#page_company .message .message_text+.message_text {
		margin-top: 4vw;
	}

	#page_company .company {
		padding-top: 15vw;
	}

	#page_company .company .company_heading_en {
		font-size: 4vw;
	}

	#page_company .company .company_heading_ja {
		font-size: 8vw;
	}

	#page_company .company .company_items {
		margin: 4vw auto 0;
	}

	#page_company .company .company_item {
		grid-template-columns: 1fr;
		padding: 3vw 0;
	}

	#page_company .company .company_item dt {
		padding-left: 0;
		font-weight: 700;
		font-size: 4.5vw;
	}

	#page_company .company .company_item dd {
		margin-top: 2vw;
	}

	#page_company .company .company_item dt,
	#page_company .company .company_item dd {
		font-size: 4vw;
	}

	#page_company .company .company_item dt a.url:hover,
	#page_company .company .company_item dd a.url:hover {
		opacity: 1;
	}

	#page_company .company .company_item::before {
		width: 20vw;
	}

	#page_company .company .company_map {
		aspect-ratio: 5/4;
		margin-top: 15vw;
	}

	#page_company .company .company_text {
		margin: 4vw auto 0;
		font-size: 3.5vw;
	}

	#page_company .gallery {
		padding: 10vw 0 20vw;
	}

	#page_company .gallery .swiper-slide {
		width: 40vw;
		height: 28vw;
	}

	/* page_housing_single (sp) ------------------------------------------------------------------------------------------------------ */

	#page_housing_single .housing_single_main {
		width: 100%;
	}

	#page_housing_single .common_single {
		margin-top: 8vw;
	}

	/* page_sale_single (sp) ------------------------------------------------------------------------------------------------------ */

	#page_sale_single .sale_single_main {
		width: 100%;
	}

	#page_sale_single .common_single {
		margin-top: 8vw;
	}

	/* page_works_single (sp) ------------------------------------------------------------------------------------------------------ */

	#page_works_single .works_outer {
		grid-template-columns: 1fr;
		padding-bottom: 9vw;
		border-bottom: 1px dashed #B7B7B7;
	}

	#page_works_single .works_outer+.works_outer {
		margin-top: 3vw;
		padding-bottom: 0;
		border-bottom: none;
	}

	#page_works_single .works_single_main {
		aspect-ratio: 5/3;
		margin-top: 0;
	}

	#page_works_single .works_wrap:nth-child(1) .works_single_main::after {
		clip-path: polygon(100% 0, 0 0, 50% 80%);
		width: 6vw;
		top: auto;
		left: 50%;
		transform: translateX(-50%);
		right: auto;
		bottom: -10vw;
	}

	#page_works_single .works_wrap+.works_wrap {
		margin-top: 4vw;
	}

	#page_works_single .works_lead {
		margin-top: 4vw;
		font-size: 4.5vw;
	}

	#page_works_single .common_single {
		margin-top: 8vw;
	}

	#page_works_single .common_single .single_imgs {
		margin-top: 1vw;
	}

	/* page_sitemap (sp) ------------------------------------------------------------------------------------------------------ */

	#page_sitemap {
		padding: 15vw 0;
	}

	/* page_error (sp) ------------------------------------------------------------------------------------------------------ */

	#page_error {
		padding: 15vw 0;
	}

	#page_error .error_text {
		font-size: 4vw;
	}

	#page_error .error_btn {
		margin: 8vw auto 0;
	}

	/* 物件 */
	p.loan_ttl_ja {
		display: none;
	}

	.common_page_h1_box .text_box p.en {
		font-size: 22px;
	}

	.common_page_h1_box .text_box h1 {
		font-size: 14px;
	}

	.common_page_h1_box {
		padding: 70px 0 30px;
	}

	.common_page_h1_box::before {
		width: 76vw;
		min-width: unset;
	}

	.common_page_h1_box::after {
		width: 76vw;
		min-width: unset;
	}

	.common_page_wrap {
		padding: 15vw 0;
	}

	.common_page_h2_box {
		margin-bottom: 25px;
	}

	.common_page_h2_box p.en {
		font-size: 12px;
	}

	.common_page_h2_box p.en::before {
		width: 50px;
		right: -58px;
		top: 0;
	}

	.common_page_h2_box h2 {
		font-size: 16px;
		margin-top: 6px;
	}

	a.new_bukken_list_link {
		width: 80%;
		font-size: 20px;
		margin: 30px auto;
	}

	.single_works_madori_box ul li {
		width: 48%;
		margin: 0;
	}

	.single_works_madori_box ul {
		justify-content: space-between;
	}

	.single_works_madori_box ul li p.ttl {
		font-size: 16px;
	}

	.single_works_madori_box ul li:first-child p.ttl::before {
		border-width: 20px;
		right: -7px;
	}

	.single_works_madori_box ul li .img {
		height: 120px;
	}

	.single_works_main_img_box {
		margin-top: 30px;
	}

	.single_works_main_img_box ul {
		gap: 0 15px;
	}

	.single_new_intro .text_box {
		width: 100%;
	}

	.single_new_intro .text_box .ttl_box p.en {
		font-size: 12px;
	}

	.single_new_intro .text_box .ttl_box p.ttl {
		font-size: 16px;
	}

	.single_new_intro .text_box p.text {
		font-size: 13px;
		line-height: 2;
		margin-top: 16px;
	}

	.single_new_intro .img {
		display: none;
	}

	.new_bukken_cont {
		margin-top: 45px;
	}

	.new_bukken_cont .h2_box p.en {
		font-size: 22px;
	}

	.new_bukken_cont .h2_box h3 {
		font-size: 11px;
		margin-top: 4px;
	}

	.new_bukken_cont .h2_box p.num {
		font-size: 4vw;
		letter-spacing: 0.02em;
	}

	.new_bukken_cont .h2_box a {
		font-size: 13px;
	}

	.new_bukken_list {
		margin-top: 22px;
	}

	.new_bukken_list ul li {
		width: 100%;
	}

	.new_bukken_list ul li a {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 12px 10px;
	}

	.new_bukken_list ul li a .img {
		width: 45%;
		height: 100px;
	}

	.new_bukken_list ul li a .img p.cat {
		font-size: 10px;
		padding: 0 8px;
	}

	.new_bukken_list ul li a .img p.new_mark {
		font-size: 10px;
		padding: 0 8px;
	}

	.new_bukken_list ul li a .text_box {
		width: 52%;
		margin-top: 0;
	}

	.new_bukken_list ul li a .text_box p.ttl {
		font-size: 14px;
	}

	.new_bukken_list ul li a .text_box p.plan {
		font-size: 10px;
		margin-top: 4px;
	}

	.new_bukken_list ul li a .text_box p.access {
		font-size: 10px;
	}

	.new_bukken_list ul li a .text_box p.price {
		font-size: 14px;
		margin-top: 4px;
	}

	.new_bukken_list ul li:nth-child(3n),
	.new_bukken_list ul li:nth-child(3n - 1) {
		margin-left: 0;
	}

	.new_bukken_list ul li:nth-child(n + 4) {
		margin-top: 0;
	}

	.new_bukken_list ul li:nth-child(n + 2) {
		margin-top: 15px;
	}

	.single_new_intro::before,
	.single_new_intro::after {
		top: 31px;
		height: 665px;
	}

	.single_new_main_img {
		display: block;
	}

	.single_new_main_img .img {
		width: 85%;
		height: 165px;
	}

	.single_new_main_img .btn {
		width: 100%;
		margin-top: 4vw;
	}

	.single_new_main_img .btn a {
		line-height: 12vw;
		font-size: 3.8vw;
	}

	.single_new_main_img .btn a:hover {
		background-color: #5aae08;
		color: #fff;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	}

	.single_new_info {
		margin-top: 35px;
	}

	.single_new_info .ttl_box p.cat {
		font-size: 10px;
		padding: 2px 10px;
	}

	.single_new_info .ttl_box p.ttl {
		font-size: 16px;
		margin-top: 8px;
	}

	.single_new_info ul li {
		width: 100%;
		padding: 1em 0;
	}

	.single_new_info ul li p.ttl {
		width: 32%;
	}

	.single_new_info ul li p {
		font-size: 13px;
	}

	.single_new_info ul li p.text {
		width: 65%;
	}

	.single_new_info ul li.long_type p.text {
		width: 65%;
	}

	.single_new_info .ttl_box {
		margin-bottom: 10px;
	}

	.single_new_main_img::before,
	.single_new_main_img::after {
		/* top: 80px; */
		/* height: 640px; */
		/* width: 73%; */
		display: none;
	}

	.single_new_thum_box {
		margin-top: 45px;
	}

	.single_new_thum_box ul li:nth-child(4n),
	.single_new_thum_box ul li:nth-child(4n - 1),
	.single_new_thum_box ul li:nth-child(4n - 2) {
		margin-left: 1%;
	}

	.single_new_thum_box ul li:nth-child(n + 5) {
		margin-top: 5px;
	}

	.single_new_thum_box ul li {
		width: 24%;
	}

	.single_new_thum_box ul li a {
		height: 100px;
	}

	.single_new_thum_box ul li a::before {
		width: 10px;
		height: 10px;
	}

	.single_new_main_img .img span.mask img {
		width: 40%;
	}

	.single_works_main_img_box ul li .img {
		height: 85px;
	}

	.single_works_main_img_box ul li p.flow {
		font-size: 16px;
	}

	.single_works_main_img_box ul li p.flow::before {
		border-width: 17px;
		right: -7px;
	}

	.single_works_thum_item p.ttl {
		font-size: 16px;
	}

	.single_works_thum_box ul li {
		width: 24%;
	}

	.single_works_thum_box ul li:nth-child(4n),
	.single_works_thum_box ul li:nth-child(4n - 1),
	.single_works_thum_box ul li:nth-child(4n - 2) {
		margin-left: 1%;
	}

	.single_works_thum_box ul li a {
		height: 85px;
	}

	.single_works_thum_item p.ttl::before {
		border-width: 16px;
		bottom: -6px;
	}

	.single_works_thum_item+.single_works_thum_item {
		margin-top: 20px;
	}

	.single_works_thum_box ul li a::before {
		width: 12px;
		height: 12px;
	}

	.single_works_thum_box {
		margin-top: 35px;
	}

	/* top_instagram */
	#top_instagram {
		padding: 17.82vw 0;
	}

	#top_instagram .contents {
		grid-template-columns: 1fr;
		gap: 0;
	}

	#top_instagram .title_wrap a {
		width: 100%;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		gap: 15px;
	}

	#top_instagram .title {
		font-size: 6.15vw;
	}

	#top_instagram .sub_title {
		font-size: 3.59vw;
		margin-top: 0;
		text-align: center;
	}

	#top_instagram .items {
		width: 100%;
		grid-template-columns: repeat(2, 1fr);
		gap: 3.5vw 4.62vw;
		border-top: 1px solid #707070;
		padding-top: 7.69vw;
		margin-top: 3.59vw;
	}

	#top_instagram .icon {
		width: 30px;
		height: 30px;
	}
}

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

	.pc_tel {
		pointer-events: none;
	}
}

@-webkit-keyframes animation_scroll {

	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		background-color: #FFF;
	}

	80% {
		-webkit-transform: translateY(127px);
		transform: translateY(127px);
		background-color: #FFF;
	}

	81% {
		background-color: #333;
	}

	100% {
		-webkit-transform: translateY(160px);
		transform: translateY(160px);
		background-color: #333;
	}

}

@keyframes animation_scroll {

	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		background-color: #FFF;
	}

	80% {
		-webkit-transform: translateY(127px);
		transform: translateY(127px);
		background-color: #FFF;
	}

	81% {
		background-color: #333;
	}

	100% {
		-webkit-transform: translateY(160px);
		transform: translateY(160px);
		background-color: #333;
	}

}