@charset "UTF-8";

/*======================
  フォント
======================*/
@font-face {
    font-family: 'HelveticaLight';
    src: url('/font/Helvetica_light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaRegular';
    src: url('/font/Helvetica_regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaBold';
    src: url('/font/Helvetica_bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'din-2014';
    src: url('font/DIN-2014_Condensed-Bold.otf') format('opentype');
}

/*======================
  変数定義
======================*/
:root {
    --main-font: "Noto Sans JP", sans-serif;
    --english-font: 'Helvetica', serif;
    --number-font: 'din-2014', serif;
    --main-color: #2E2928;
    --sub-color: #4B4848;
    --text-color: #1A1311;
    --small: 14px;
    --margin-wide: 150px;
    --margin-mid: 86px;
    --margin-small: 50px;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

a[href $='.pdf'] {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    text-decoration: underline;
    color: #000;
    line-height: 1.5;
}

a[href $='.pdf']::before {
    content: "";
    display: block;
    flex-shrink: 0;
    width: 30px;
    height: 38px;
    background-image: url("/wp-content/themes/child/image/icon/icon_pdf.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin-right: 15px;
}


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

a:link {
    color: var(--text-color);
    text-decoration: none;
}

a:visited {
    color: var(--text-color);
}

a:active {
    color: var(--text-color);
    text-decoration: none;
}

a:hover {
    opacity: 0.8;
    transition: opacity 0.3s;
}

#menu {
    display: none;
}

img {
    width: 100%;
}

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

.pt {
    font-family: 'PT Sans Narrow', sans-serif;
}

.wrap.two {
    width: 1240px;
    margin: 0 auto;
}

.wrap.three {
    width: 1340px;
    margin: 0 auto;
}

.wrap.mid {
    width: 1440px;
    margin: 0 auto;
}


linear-gradient(to bottom, rgba(221, 221, 221, 1) 0%, rgba(221, 221, 221, 0.3) 50%, rgba(221, 221, 221, 0) 100%) .flex {
    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;
}

html,
button,
input,
select,
textarea,
h1,
h2,
h3 {
    font-family: var(--main-font);
    font-weight: 900;
}

body {
    color: var(--text-color);
    font-size: 16px;
    font-family: var(--main-font);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    letter-spacing: 0.06em;
    min-width: 1140px;
    padding-top: 139px;
}

.f_din {
    font-family: 'din-2014';
}

.sp {
    display: none;
}

.font_bold {
    font-weight: 900;
}

.font_mid {
    font-weight: 500;
}

/* PC固定ページ 共通設定 */
.common_page_wrap {
    padding: 100px 0;
}

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

.common_page_title {
    text-align: center;
    margin-bottom: 2em;
}

.common_page_title h2 {
    font-size: 30px;
}

.common_page_title .sub_title {
    font-size: 14px;
    letter-spacing: .1em;
}

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

/* パンくず */
.breadcrumb {
    font-size: 12px;
}

.breadcrumb a {
    text-decoration: none;
    color: initial;
}

/* PC固定ページ 会社概要 */
.company_profile {
    margin-bottom: 100px;
}

.company_profile table {
    width: 100%;
    border-collapse: collapse;
}

.company_profile table th,
.company_profile table td {
    padding: 1em;
    border-bottom: 1px solid;
    font-size: 14px;
}

.company_profile table th {
    width: 20%;
}

.company_profile table td {
    width: 80%;
}

.company_access .map {
    height: 350px;
}

.company_access .map iframe {
    width: 100%;
    height: 100%;
}

/* PC固定ページ お問い合わせ */
#page_contact table {
    width: 74%;
    border-collapse: collapse;
    margin: 0 auto 50px;
}

#page_contact table th,
#page_contact table td {
    padding: 20px;
    font-size: 14px;
    border: solid 1px #DFDFDF;
    vertical-align: middle;
}

#page_contact table th {
    width: 25%;
    background: #F7F7F7;
    white-space: nowrap;
    letter-spacing: .05em;
    text-align: left;
}

#page_contact table th .hissu,
#page_contact table th .ninni {
    background: var(--main-color);
    margin-right: 15px;
    color: #fff;
    padding: 5px 15px;
    font-size: 10px;
    letter-spacing: .08em;
    border-radius: 30px;
}

#page_contact table th .ninni {
    background: #b8b8b8;
}

#page_contact table td {
    width: 75%;
}

#page_contact input[type="text"],
#page_contact input[type="email"],
#page_contact #zip {
    height: 44px;
    border: 1px solid #a4a4a4;
    border-radius: 4px;
    padding: 1em;
}

#page_contact input[type="text"],
#page_contact input[type="email"] {
    width: 85%;
}

#page_contact .zip input[type="tel"],
#page_contact .zip input[type="text"] {
    width: 19.5%;
}

#page_contact input.tel {
    padding: 1em;
    width: 18.8%;
    border: 1px solid #a4a4a4;
}

#page_contact select {
    outline: none;
    background: transparent;
    padding: 1em;
    width: 50%;
    border: 1px solid #a4a4a4;
}

#page_contact textarea {
    width: 85%;
    padding: 1em;
    height: 200px;
    border: 1px solid #a4a4a4;
}

#page_contact .attention {
    font-size: 12px;
}

#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: 300px;
    line-height: 50px;
    border-radius: 5px;
    font-weight: 600;
    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;
}

.contact_form_disc {
    width: 74%;
    font-size: 15px;
    margin: 0 auto 50px;
    letter-spacing: .02em;
}

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

.contact_form_disc .text {
    margin-bottom: 10px;
}

.common-contactform .caution {
    font-size: 0.9em;
    font-weight: 300;
}

.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 input[type=radio].radio_btns__item {
    display: none;
}

.radio_btns label {
    display: inline-block;
}

/* spanの左側にボタンを配置するスペースを作る */
.radio_btns .radio_btns__item+span {
    padding-left: 2em;
    display: inline-block;
    position: relative;
}

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

/* after上書き */
.radio_btns .radio_btns__item+span::after {
    width: 12px;
    height: 12px;
    top: 0px;
    left: 4px;
    border: none;
    background: #333;
    -webkit-transform: scale(0);
    /*--ここを0にすることで下線は非表示となる--*/
    -ms-transform: scale(0);
    /*--ここを0にすることで下線は非表示となる--*/
    transform: scale(0);
    transition: all .3s;
    /*--0.3秒かけて下線が表示される--*/
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.radio_btns .radio_btns__item:checked+span {
    font-weight: 600;
}

.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-text {
    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: #fff;
    border: 2px solid #ccc;
    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 {
    margin-right: 10px;
    margin-bottom: 10px;
    display: inline-block;
}

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

/*フォームの横並び*/
.common-contactform .form_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    align-items: center;
}

.page-id-562 .kodate.tochi.ittou .form_grid {
    display: flex;
}

.page-id-562 .kodate.ittou.ichibu .form_grid {
    display: flex;
}

.page-id-562 .kodate.ittou.ichibu td .text_box {
    display: flex;
    gap: 0 10px;
}


/*フォーム見出し*/
.form_heading {
    width: 100%;
    padding: 5em var(--margin-wide) 0;
    text-align: center;
}

.form_heading h2 {
    font-size: 3em;
    position: relative;
    display: inline;
}

.form_heading h2.comment_line::before,
.form_heading h2.comment_line::after {
    content: "";
    display: inline-block;
    width: 1em;
    border-top: solid 2px var(--text-color);
    position: absolute;
}

.form_heading h2.comment_line::before {
    left: -2em;
    bottom: 0;
    transform: rotate(45deg);
}

.form_heading h2.comment_line::after {
    right: -2em;
    bottom: 0;
    transform: rotate(-45deg);
}


/* サンクスページ */

#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 {
    margin-bottom: 60px;
    justify-content: center;
}

#page_contact .progressbar .item {
    position: relative;
    width: 18%;
    text-align: center;
    position: relative;
    align-items: center;
    justify-content: center;
    padding: 43px 0 13px;
    line-height: 1.5;
    letter-spacing: .05em;
}

#page_contact .progressbar .item .en {
    display: block;
    color: #7b7b7b;
    font-size: 14px;
}

#page_contact .progressbar .item::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 30px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid 1px #a5a5a5;
    border-radius: 50%;
    margin: auto;
}

#page_contact .progressbar .item.active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 8px;
    width: 15px;
    aspect-ratio: 1/1;
    min-width: 0;
    border-radius: 50%;
    background: #333;
    margin: auto;
}

#page_contact .progressbar #step_2 .en {
    position: relative;
}

#page_contact .progressbar #step_2 .en::before,
#page_contact .progressbar #step_2 .en::after {
    content: "";
    height: 1px;
    width: 100px;
    background: #a5a5a5;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: -47px;
}

#page_contact .progressbar #step_2 .en::after {
    left: auto;
    right: -47px;
}

.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固定ページ 個人情報保護方針 */
#page_privacy .main_text {
    font-size: 16px;
    line-height: 2;
    margin-bottom: 3em;
}

#page_privacy dl {
    margin-bottom: 50px;
}

#page_privacy dl:last-child {
    margin-bottom: 0;
}

#page_privacy dl dt {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: .5em;
    border-left: 3px solid #ccc;
    padding-left: 1em;
}

#page_privacy dl dd {
    font-size: 14px;
    line-height: 2;
}

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

.archive_page_list>article .content_area .content {
    font-size: 80%;
}

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

.wp-pagenavi a,
.wp-pagenavi span {
    color: #999;
    background-color: #FFF;
    border: solid 1px #e0e0d2;
    padding: 8px 15px;
    margin: 0 2px;
    white-space: nowrap;
    -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;
}

/* PC投稿ページ シングルページ */
#single_page .fl_wrap {
    display: grid;
    grid-template-columns: 1fr 305px;
    gap: 0 50px;
}

.single_main_img {
    width: 300px;
    height: 300px;
    position: relative;
    margin: 0 auto 40px auto;
}

.singleContent .single_title::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 30px;
    margin: auto;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: var(--main-color);
}

.singleContent .title_area {
    border-bottom: solid 1px #ccc;
    padding: 100px 0 30px;
    margin-bottom: 40px;
    position: relative;
}

.singleContent .single_title {
    font-size: 30px;
    line-height: 1.4;
    font-weight: 600;
}

.single_main_img img {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    object-fit: cover;
    width: 100% !important;
    height: 100% !important;
}

.singleContent .single_title time {
    font-size: 12px;
    font-weight: 600;
}

.singleContent .single_title time i {
    margin-right: .5em;
}

.singleContent .category_list ul {
    gap: 10px;
}

.singleContent .category_list ul li {
    background-color: var(--main-color);
    color: #fff;
    font-size: 12px;
    padding: 2px 20px;
    letter-spacing: .08em;
}

.singleContent article h2 {
    font-size: 20px;
    border: solid 1px #333;
    padding: 15px;
    margin: 1.5em 0 1em;
    position: relative;
    line-height: 1.4;
}

.site_single_latest {
    border-left: solid 1px #333;
    border-bottom: solid 3px #333;
    padding: 0 0 35px 0;
    margin-bottom: 80px;
}

.site_single_latest .en {
    font-size: 13px;
    letter-spacing: .08em;
    text-align: center;
}

.singleContent article h2::before {
    top: 0px;
}

.singleContent article h2::after {
    bottom: 0;
}

.singleContent article h3 {
    position: relative;
    padding: 0.7rem 1rem;
    font-size: 18px;
    margin: 1.5em 0 1.5em;
    background-color: #ccc;
}

.singleContent article h4 {
    padding: 2px 10px;
    margin: 1.5em 0 1em;
    color: #333;
    border-left: 5px solid #5b5959;
    font-size: 17px;
    position: relative;
}

.singleContent article h5:before {
    content: '■';
    padding-right: 10px;
}

.singleContent article h5 {
    font-size: 18px;
    /* padding-left: 1em; */
    margin: 1.5em 0;
}

.singleContent h6 {
    font-size: 17px;
    border-bottom: 1px solid;
    padding-bottom: 3px;
    margin: 1.5em 0 1em;
}

.singleContent p {
    font-size: 16px;
    line-height: 2;
}

#single_page .singleContent .ichiran_link {
    display: block;
    width: 300px;
    line-height: 50px;
    text-align: center;
    color: #333;
    border: solid 1px #333;
    margin: 50px auto 0 auto;
    font-size: 16px;
    transition: .3s;
    border-bottom: solid 3px #333;
    border-right: solid 3px #333;
}

#single_page .singleContent .ichiran_link:hover {
    opacity: .7;
}

#single_page aside#info_side {
    background-color: #fff;
    padding: 20px;
}

#single_page aside#info_side p#news-not_found {
    text-align: center;
}

#single_page aside#info_side ul li+li {
    margin-top: 12px;
}

#single_page aside#info_side ul li a {
    color: initial;
    align-items: center;
    font-size: 14px;
    transition: .3s;
}

#single_page aside#info_side ul li a:hover {
    opacity: .7;
}

#single_page aside#info_side ul li a time {
    font-size: 12px;
    font-weight: 600;
}

#single_page aside#info_side ul li a time i {
    margin-right: .5em;
}

#single_page aside#info_side ul li a h3 {
    font-size: 14px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.singleContent .title_area .en {
    font-size: 12px;
    top: 0;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.singleContent .day_cat {
    align-items: center;
    margin-bottom: 40px;
}

#toc_container a {
    color: #333;
}

.singleContent .day_cat .day {
    color: #6c6c6c;
    font-size: 13px;
    padding-right: 20px;
    border-right: solid 1px #ccc;
    margin-right: 20px;
}

.site_single_latest .topic {
    text-align: center;
    font-size: 14px;
    letter-spacing: .08em;
    font-weight: 600;
}

.site_single_latest .img {
    width: 180px;
    margin: 20px auto;
}

.site_single_latest .disc {
    text-align: center;
    font-size: 14px;
}

.aside_article_type .ttl {
    font-size: 15px;
    margin-bottom: 20px;
    border-bottom: solid 2px;
    padding-bottom: 5px;
}

.aside_article_type li .img {
    height: 70px;
    width: 100px;
    position: relative;
}

.aside_article_type .inner_ttl {
    font-size: 13px;
    line-height: 1.4;
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.aside_article_type li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.aside_article_type .cat_wrap {
    gap: 5px;
}

.aside_article_type .cat_wrap .label {
    background: var(--main-color);
    padding: 0px 10px;
    color: #fff;
    font-size: 10px;
}

.aside_article_type .cat_wrap ul {
    display: flex;
    column-gap: 5px;
    row-gap: 5px;
    padding-left: 0;
}

.aside_article_type ul {
    padding-left: 20px;
    position: relative;
}

.aside_article_type .cat_wrap ul::before {
    display: none;
}

.aside_article_type ul::before {
    content: "∟";
    position: absolute;
    left: 2px;
    font-size: 14px;
    color: #333;
}

.recommend_post_area {
    width: 92%;
    margin: 50px 0 0 auto;
}

.recommend_post_area ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 30px;
}

.recommend_post_area .ttl {
    font-size: 18px;
    letter-spacing: .08em;
    border-bottom: solid #ccc 1px;
    padding-bottom: 20px;
    margin-bottom: 30px;
    font-weight: 600;
}

.recommend_post_area .ttl .en {
    font-weight: 400;
    letter-spacing: .08em;
    font-size: 14px;
    display: block;
}

.recommend_post_area a {
    color: #000;
}

.recommend_post_area .inner_ttl {
    font-size: 13px;
    line-height: 1.4;
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 10px;
}

.recommend_post_area .day_cat .day {
    font-size: 12px;
    color: #6c6c6c;
    padding-right: 10px;
    border-right: solid 1px #ccc;
    margin-right: 10px;
}

.recommend_post_area .day_cat {
    margin: auto 0 0;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.recommend_post_area .category_list .cat_wrap {
    padding: 0;
    gap: 5px;
}


.recommend_post_area .category_list .cat {
    font-size: 12px;
    text-align: center;
    background: var(--main-color);
    color: #fff;
    padding: 0 10px;
}

.recommend_post_area .category_list {
    width: 100%;
}

.recommend_post_area .img {
    position: relative;
    height: 145px;
    margin-bottom: 12px;
    overflow: hidden;
}

.recommend_post_area .img img {
    transition: .3s;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.recommend_post_area a:hover .img img {
    transform: scale(1.1);
}

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

.a2a_kit.a2a_kit_size_32.a2a_floating_style.a2a_vertical_style {
    top: 280px !important;
}

.a2a_kit.a2a_kit_size_32.a2a_floating_style.a2a_vertical_style::before {
    content: "";
    width: 1px;
    height: 100px;
    background: #ccc;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: -103px;
}

.a2a_kit.a2a_kit_size_32.a2a_floating_style.a2a_vertical_style::after {
    content: "SHARE ON";
    position: absolute;
    top: -169px;
    font-size: 11px;
    writing-mode: vertical-lr;
    text-align: center;
    left: 8px;
    right: 0;
    margin: auto;
}

.singleContent_links {
    margin-top: 150px;
    align-items: center;
    position: relative;
}

.singleContent_links ul {
    width: 40%;
}

.singleContent_links ul.prev li {
    padding-left: 30px;
}

.singleContent_links ul.next li {
    padding-right: 30px;
}

.singleContent_links .btn {
    margin-bottom: 23px;
    border-bottom: solid 1px #ccc;
    font-size: 15px;
    position: relative;
}

.singleContent_links::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 1px;
    background: #ccc;
    height: 100%;
    margin: auto;
}

.singleContent_links a {
    color: #333;
    font-size: 14px;
}

.singleContent_links a .ttl {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.singleContent_links .img {
    margin-bottom: 15px;
    position: relative;
    height: 150px;
}

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

.singleContent_links ul.next .btn {
    text-align: right;
}

.singleContent_links ul.next .img {
    margin-left: auto;
}

.breadcrumb.single {
    margin-top: 70px;
    text-align: right;
}

.aside_article_type .text_box {
    width: calc(100% - 100px);
    padding-left: 10px;
}

#toc_container li {
    position: relative;
    padding-left: 20px;
}

#toc_container li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    background: url(/wp-content/themes/child/image/article_arrow.png) center no-repeat;
    background-size: contain;
    width: 13px;
    height: 14px;
    bottom: auto;
}

.singleContent article h2::before,
.singleContent article h3::before {
    content: "";
    position: absolute;
    right: -35px;
    top: 0px;
    bottom: 0px;
    height: 1px;
    width: 50px;
    background: rgb(0, 0, 0);
    margin: auto;
}

.singleContent ol {
    border: solid 1px #333;
    padding: 20px 10px;
    counter-reset: count 0;
    position: relative;
    background-image: url("/wp-content/themes/child/image/grid.gif");
}

.singleContent ol li {
    position: relative;
}

.singleContent ol li::before {
    content: "";
    content: counter(count) ". ";
    counter-increment: count 1;
}

.singleContent ol li+li {
    margin-top: 7px;
}

.singleContent ol::before {
    content: "";
    position: absolute;
    right: -2px;
    top: -2px;
    border-width: 0 30px 30px 0;
    border-style: solid;
    border-color: #333 #fff #333;
}

.singleContent ol::after {
    content: "";
}

.singleContent #toc_container {
    margin-bottom: 50px;
}

.singleContent_links ul li+li {
    margin-top: 10px;
}

.singleContent_links ul li.btn::before {
    content: "";
    position: absolute;
    background: url(/wp-content/themes/child/image/icon/arrow.svg) center no-repeat;
    background-size: contain;
    background-position: center;
    width: 20px;
    height: 20px;
    right: 0;
    top: 5px;
}

.singleContent_links ul.prev li.btn::before {
    transform: scale(-1, 1);
    right: auto;
    left: 0;
}

#toc_container.no_bullets li,
#toc_container.no_bullets ul,
#toc_container.no_bullets ul li,
.toc_widget_list.no_bullets,
.toc_widget_list.no_bullets li {
    border: none;
}

.singleContent .category_list ul li::before {
    display: none;
}

.singleContent .category_list ul {
    border: none;
}


/*以下から追加*/
/*===========
   common
============*/

/*電話*/
.common_tell_link {
    font-family: var(--number-font);
    font-weight: 600;
    font-size: 36px;
}

.common_tell_link img {
    width: 0.7em;
    vertical-align: -0.05em;
}

/*ボタン*/
.common_btn_area .common_btn_1,
.common_btn_area .common_btn_2 {
    display: inline-block;
    width: 250px;
    border-radius: 6px;
    padding: 0.8em;
    position: relative;
    color: #fff;
    transition: 0.3s;
}

.common_btn_area .common_btn_1:hover,
.common_btn_area .common_btn_2:hover {
    opacity: 1;
}

.common_btn_area .common_btn_1 {
    background-image: linear-gradient(180deg, rgba(35, 116, 213, 1), rgba(10, 183, 226, 1) 96%, rgba(10, 203, 248, 1));
    box-shadow: 0 5px var(--sub-color);
}

.common_btn_area .common_btn_2 {
    background-image: linear-gradient(180deg, rgba(29, 102, 219, 1), rgba(38, 57, 209, 1));
    box-shadow: 0 5px #091F9B;
}

.common_btn_area img,
.common_btn_area img {
    width: 59px;
    vertical-align: -.7em;
    margin-right: 20px;
    transition: 0.3s;
}

.common_btn_area a:hover img,
.common_btn_area a:hover img {
    opacity: 0.9;
}

.common_btn_area img.arrow,
.common_btn_area img.arrow {
    width: 31px;
    margin-right: 0;
    position: absolute;
    right: 0.7em;
    top: 53%;
    transform: translateY(-50%);
}

/*テキスト*/

.common_en {
    font-family: var(--english-font);
    color: var(--sub-color);
    letter-spacing: 0;
    font-weight: bold;
}

.common_text_blue {
    color: var(--sub-color);
}

.common_text_yellow {
    color: #FFF200;
}

.common_text_mini {
    font-size: 0.65em;
}

.common_text_big {
    font-size: 1.35em;
}

.common_number {
    font-family: var(--number-font);
}

.common_text_italic {
    display: inline-block;
    transform: rotate(10deg);
    vertical-align: -0.1em;
}

/*マーク*/
.common_text_dot {
    position: relative;
}

.common_text_dot::after {
    content: "・・・・";
    position: absolute;
    left: 0;
    top: -21px;
}

.common_3line {
    display: inline-block;
    vertical-align: middle;
    color: var(--text-color);
    line-height: 1;
    width: 15px;
    position: absolute;
    transform: rotate(230deg);
    left: -5px;
    top: 0;
}

.common_3line>span {
    display: block;
    height: 4px;
    background: currentColor;
    border-radius: 4px;
}

.common_3line>span+span {
    margin-top: 8px;
}

.common_3line>span:nth-child(1) {
    transform: rotate(-40deg)
}

.common_3line>span:nth-child(2) {
    /* width: 21px; */
    transform: translateX(20%);
}

.common_3line>span:nth-child(3) {
    transform: rotate(40deg)
}

.common_yellow_line {
    background: linear-gradient(transparent 70%, #FFFA8E 30%);
    display: inline-block;
    padding-left: 0.5%;
}


.reason_area .reason_heading .common_text_blue .common_text_mini {
    color: var(--text-color);
}

.reason_area .reason_heading .common_text_blue .common_yellow_line {
    display: inline-block;
}

/*common_contact*/

.common_contact {
    width: 100%;
    padding: 50px 0 40px;
    background-image: url("/wp-content/themes/child/image/back.jpg");
    background-size: cover;
    background-position: bottom;
    text-align: center;
}

.common_contact .contact_heading {
    color: #fff;
    font-size: 54px;
    letter-spacing: 0.04em;
}

.common_contact .contact_heading .common_number {
    font-size: 80px;
    position: relative;
    vertical-align: -0.1em;
    line-height: 1;
    display: inline;
}

.common_contact .contact_heading .common_number::before {
    content: "";
    position: absolute;
    left: -10px;
    top: -8px;
    z-index: 1;
    background-image: url("/wp-content/themes/child/image/icon_line_yellow.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 30px;
    height: 40px;
}

.common_contact .contact_heading .common_3line {
    color: #FFF200;
}

.common_contact .contact_heading .common_text_mini {
    font-size: 0.7em;
    line-height: 1;
    margin-top: 15px;
}

.common_contact_area {
    border: solid 3px var(--text-color);
    background-color: #fff;
    border-radius: 6px;
    padding: 30px 25px 13px;
    gap: 10px 15px;
    align-items: center;
    flex-wrap: wrap;
    /* position: relative; */
    /* margin: 0 auto; */
    display: flex;
}

.common_contact_area .btn_box .link .common_box {
    display: block;
}

.common_contact_area .common_box {
    border: solid 3px var(--text-color);
    border-radius: 6px;
    background-color: var(--main-color);
    color: #fff;
    position: relative;
    padding: 20px;
    width: 300px;
}

.common_contact_area .btn_box .link .common_box {
    padding: 31px 30px;
}

.common_contact_area .box_yellow {
    background-color: #FFFDDB;
    color: var(--text-color);
    width: 450px;
}

.common_contact_area .tel_info {
    font-weight: 700;
    font-size: 14px;
}

.common_contact_area .common_tell_link img {
    margin-right: 5px;
}

.common_contact_area .box_blue,
.common_contact_area .box_blue .box_title {
    background-color: var(--sub-color);
}

.common_contact_area .common_tell_link {
    color: var(--main-color);
    font-size: 44px;
}

.common_box .box_title {
    position: absolute;
    padding: 0.25em 0.7em;
    border: solid 3px var(--text-color);
    border-radius: 50px;
    background-color: var(--main-color);
    top: -1.25em;
    left: 50%;
    transform: translateX(-50%);
    letter-spacing: .1em;
    min-width: 259px;
}

.box_yellow .box_title {
    background-color: #FFF203;
    min-width: 220px;
}

.common_box .box_body .flex {
    justify-content: center;
    align-items: center;
    text-align: left;
    gap: 10px;
    font-size: 22px;
    color: #fff;
    line-height: 1.2;
    margin-top: 10px;
}

.common_box .box_body .flex {
    padding-top: 3px;
}

.common_box .box_body .common_text_big {
    font-size: 1.27em;
}

.common_box .box_body .flex img {
    width: 63px;
}

.common_contact_attention {
    width: 100%;
    font-size: 14px;
    text-align: right;
    font-weight: 700;
}

/*もっと見るボタン*/
.common_more_btn {
    margin: 86px auto;
    text-align: center;
}

.common_more_btn a {
    display: inline-block;
    width: 360px;
    padding: 1em;
    font-size: 22px;
    background-color: var(--main-color);
    color: #fff;
    border-radius: 50px;
}

/*水平線*/
/* .common_hr {
    width: 100%;
    border-bottom: solid 1px #D9D9D9;
    margin-top: 100px;
} */

/*固定表示*/

.fixed_element {
    width: 280px;
    height: 240px;
    position: fixed;
    right: -16.5%;
    bottom: 52px;
    background-color: #fff;
    border: 1px solid var(--text-color);
    z-index: 99;
    /* transform: translateY(50%); */
    transition: all 0.3s;
}

#common_fixed_element.visible {
    right: -240px;
}

#common_fixed_element:hover {
    right: 0;
}

#common_fixed_element::after {
    content: "";
    position: absolute;
    height: 100%;
    border-right: 1px solid var(--text-color);
    bottom: 0;
    left: 18.6%;
}

#common_fixed_element .fixed_body {
    height: 100%;
    display: grid;
    grid-template-columns: 0.6% 65.4%;
    place-content: space-evenly;
}

#common_fixed_element .fixed_body .fixed_title {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 1.175em;
    letter-spacing: 0.275em;
    line-height: 1;
    /* padding: 1em; */
    margin-left: -18px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#common_fixed_element .fixed_body .fix_right {
    flex-direction: column;
    gap: 10px;
    width: 200px;
    margin: auto;
    padding: 0.5vw 0;
}

#common_fixed_element .fixed_body .tel {
    text-align: center;
    height: 60px;
    border: solid 1px var(--text-color);
    display: grid;
    place-content: center;
    line-height: 1;
    background-color: #fff;
}

#common_fixed_element .fixed_body .tel,
#common_fixed_element .common_btn_area {
    border-radius: 4px;
}

#common_fixed_element .tel a {
    font-size: 1.625em;
}

#common_fixed_element .tel_info {
    font-size: 0.75em;
    font-weight: 600;
}

#common_fixed_element .common_btn_area {
    height: 80px;
    width: 100%;
}

#common_fixed_element .common_btn_area a {
    height: 100%;
    width: 100%;
}

#common_fixed_element .common_btn_area a::before {
    display: none;
}

#common_fixed_element .common_btn_area p {
    display: inline-block;
}

#common_fixed_element .common_btn_area img {
    margin-right: 10px;
}

/*内部ページ共通*/
.common_page_fv {
    display: grid;
    grid-template-columns: 58% 42%;
    grid-template-rows: 350px;
    width: 100%;
    color: #fff;
    padding: 0 var(--margin-mid);
    position: relative;
}

.common_page_fv a {
    color: #fff;
}

.common_page_fv .page_fv_title {
    width: 100%;
    display: grid;
    place-content: center start;
    font-size: 15px;
    position: relative;
}

.common_page_fv .page_fv_title .page_subtitle {
    letter-spacing: 0.01em;
}

.common_page_fv .page_fv_title .page_title {
    font-size: 2em;
}

.common_page_fv .page_fv_img {
    width: 620px;
    height: 350px;
    position: absolute;
    right: 0;
    bottom: 0;
}

.common_page_fv .page_fv_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_page_fv .page_fv_bread {
    position: absolute;
    bottom: 30px;
    font-weight: 600;
    font-size: 0.764em;
}

.common_page_fv .page_fv_bread svg {
    width: 1em;
}


/*===========
   ヘッダー
============*/
.top_header {
    width: 100%;
    z-index: 1000;
    position: fixed;
    background-color: #fff;
    min-width: 1440px;
    top: 0;
    left: 0;
}

body.oh .top_header {
    position: fixed;
}

.top_header .header_logo {
    width: 18em;
}

.top_header .header_menu {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 0 20px;
    justify-content: space-between;
    padding: 20px var(--margin-small);
}

.top_header .header_menu .menu_top {
    width: 924px;
    display: flex;
    justify-content: space-between;
}

.menu_top a {
    display: inline-block;
    position: relative;
    text-align: center;
}

.menu_top .tel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    line-height: 1.5em;
    position: relative;
    width: 41%;
    justify-content: space-between;
}

.menu_top .tel::after {
    content: "";
    position: absolute;
    height: 29px;
    border-right: solid 2px #A5A5A5;
    right: -4%;
}

.menu_top .tel .tel_heading {
    display: inline-block;
    font-size: 12px;
    padding: 0 1em;
    height: 2.5em;
    background-color: #FFFDDB;
    border: solid 2px var(--text-color);
    border-radius: 4px;
    font-weight: 600;
}

.menu_top .tel .tel_info {
    width: 100%;
    font-size: 12px;
    letter-spacing: 0.05em;
    font-weight: 500;
}

.menu_bottom {
    background-color: var(--main-color);
    padding: 0 50px 0;
}

.menu_bottom ul {
    list-style: none;
    display: flex;
    margin: 0 auto;
    gap: 36px;
    justify-content: center;
    font-weight: 700;
}

.menu_bottom a {
    color: #fff;
    display: inline-block;
    position: relative;
    padding: 15px 25px;
}

.menu_bottom ul li a::after {
    content: "";
    height: 20px;
    position: absolute;
    border-left: solid 1px #fff;
    right: -25px;
    top: 52%;
    transform: translateY(-50%);
}

.menu_bottom ul li:last-child a::after {
    display: none;
}

.menu_bottom ul.menu_child {
    display: none;
}

/*===========
   fv
============*/
.top_fv {
    width: 100%;
    position: relative;
    z-index: 1;
    background-color: var(--main-color);
    padding: 0 60px 30px;
}

.top_fv .top_fv_img {
    width: 1390px;
    background-image: url("/wp-content/themes/child/image/fv_img_pc.jpg");
    background-size: cover;
    margin: 0 auto;
    border-radius: 15px;
    padding: 50px 60px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    max-width: 100%;
}

.top_fv .top_fv_img::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #fff;
    opacity: 0.4;
    z-index: -1;
}

.top_fv .top_fv_box {
    display: inline-block;
    font-size: 27px;
    padding: 0.1em 0.5em;
    background-color: #FFFDDB;
    border: solid 2px var(--text-color);
    border-radius: 4px;
}

.top_fv .top_fv_sub {
    margin-top: 1em;
    font-size: 26px;
    font-weight: 900;
}

.top_fv .top_fv_main {
    font-size: 50px;
    line-height: 1.1;
    letter-spacing: 2px;
    margin-bottom: 0.2em;
    font-weight: 900;
}

.top_fv .top_fv_main .common_en {
    font-size: 60px;
    vertical-align: text-bottom;
    margin-right: 1px;
}

.top_fv .top_fv_main .text {
    font-size: 1.2em;
    vertical-align: text-bottom;
    line-height: 1.3;
    color: var(--sub-color);
}

.top_fv .top_fv_text {
    font-size: 16px;
    line-height: 1.5;
}

.top_fv_img .top_fv_contact {
    margin-top: 30px;
}

.top_fv_contact .contact_heading {
    font-size: 34px;
    display: flex;
    align-items: center;
    gap: 0 7px;
}

.top_fv_contact .contact_heading .common_number {
    font-size: 60px;
    position: relative;
    vertical-align: -0.1em;
    margin: 0 0.15em 0 0.4em;
    z-index: 1;
}

.top_fv_contact .contact_heading .common_number::before {
    content: "";
    position: absolute;
    left: -16px;
    top: -13px;
    z-index: -1;
    background-image: url("/wp-content/themes/child/image/icon_line_black.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 30px;
    height: 40px;
}

.top_fv_contact .contact_heading .common_number::after {
    content: "60";
    color: var(--text-color);
    position: absolute;
    left: 0;
    top: 0px;
    -webkit-text-stroke: 7px var(--text-color);
    z-index: -1;
}

.top_fv_contact .contact_heading .common_3line {
    left: -10px;
    top: -5px;
}

.top_fv .common_text_mini {
    font-size: 0.8em;
}

.top_fv .common_btn_area,
footer .common_btn_area {
    position: relative;
    z-index: 1;
    width: fit-content;
}

.common_btn_area .btn {
    display: inline-block;
}

.common_btn_area .btn .point {
    display: block;
    font-size: 16px;
    line-height: 1;
    letter-spacing: .1em;
    font-weight: 900;
    padding: .4em 4em .6em;
    color: var(--text-color);
    margin: 0 auto -6px;
    border-radius: 100vmax;
    width: fit-content;
    border: 3px solid var(--main-color);
    background-color: #fff;
    position: relative;
    z-index: 1;
}

.common_btn_area .btn .point::before {
    content: "";
    width: 15px;
    height: 8px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 96%;
    clip-path: polygon(0 0, 51% 100%, 100% 0);
}

.top_fv .common_btn_area .common_btn_1,
.top_fv .common_btn_area .common_btn_2,
footer .common_btn_area .common_btn_1,
footer .common_btn_area .common_btn_2 {
    width: 410px;
    margin-right: .4em;
    font-size: 26px;
    padding: 0.5em;
}

.top_fv .top_fv_attention {
    width: 100%;
    position: relative;
    vertical-align: -0.1em;
    margin-top: 18px;
    z-index: 1;
    font-weight: 300;
    text-align: right;
    font-size: 14px;
}

.top_fv .top_fv_attention::before {
    content: attr(data-content);
    color: #fff;
    position: absolute;
    top: 0px;
    left: 0;
    -webkit-text-stroke: 4px #fff;
    z-index: -1;
    width: 100%;
    text-align: right;
}


/*円形文字*/
.top_fv_circle {
    position: absolute;
    margin: 20px auto;
    width: 147px;
    height: 147px;
    right: 30px;
    bottom: 15px;
}

.top_fv_circle .circle_img {
    width: 100%;
    animation: rotateAnim 10s linear infinite;
}

.top_fv_circle .circle_arrow {
    width: 20.4%;
    position: absolute;
    right: 50%;
    top: 50%;
    transform: translate(50%, -50%);
}

@keyframes rotateAnim {
    0% {
        transform: rotate(0deg);
    }

    50% {
        transform: rotate(180deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*===========
   理由エリア
============*/
/*お悩み部分*/
.bubble_area {
    width: 864px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    padding: 265px 0 50px;
}

#top_reason .bubble_area .reason_introduction {
    font-size: 48px;
    letter-spacing: 0.08em;
}

#top_reason .bubble_area .text {
    font-size: 20px;
    letter-spacing: .03em;
    font-weight: 700;
}

.bubble {
    position: absolute;
    width: 259px;
    padding: 10px 0 10px 0.5em;
    border: 2px solid var(--text-color);
    background-color: var(--main-color);
    border-radius: 50px;
    color: #fff;
    font-size: 24px;
    text-align: center;
}

.bubble::after {
    content: "";
    position: absolute;
    top: calc(100% + 3px);
    right: 18%;
    width: 11px;
    height: 2px;
    box-sizing: border-box;
    background-color: var(--text-color);
    box-shadow: 0 2px 0 #ffffff, 0 -1px 0 #ffffff;
    rotate: 50deg;
    border-radius: 50px;
}

.bubble:nth-child(1) {
    left: 0;
    top: 240px;
}

.bubble:nth-child(2) {
    left: 150px;
    top: 140px;
}

.bubble:nth-child(3) {
    right: 150px;
    top: 140px;
}

.bubble:nth-child(4) {
    right: 0;
    top: 240px;
}

.bubble:nth-child(3)::after,
.bubble:nth-child(4)::after {
    left: 18%;
    rotate: -50deg;
}

.bubble_area .triangle {
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 125px solid transparent;
    border-left: 125px solid transparent;
    border-top: 60px solid #eeeeee;
    border-bottom: 0;
    margin: 40px auto 0;
    position: relative;
}

.bubble_area .triangle::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 140px solid transparent;
    border-left: 140px solid transparent;
    border-top: 60px solid #dcdcdc;
    border-bottom: 0;
    position: absolute;
    top: -36px;
    left: 0;
    transform: translateX(-50%);
}

/*選ばれる理由*/
.reason_area {
    margin: 0 auto;
    text-align: center;
    /* padding: 65px var(--margin-wide); */
    position: relative;
    z-index: 1;
}

.reason_area .common_text_big {
    font-size: 1.95em;
}

[data-ruby] {
    position: relative;
    font-family: var(--english-font);
    font-weight: bold;
}

[data-ruby]::before {
    content: attr(data-ruby);
    position: absolute;
    width: 6em;
    top: -1.444em;
    left: 50%;
    margin: auto;
    font-family: var(--main-font);
    font-size: 18px;
    color: var(--text-color);
    transform: translateX(-50%);
    font-weight: 900;
}

.reason_heading [data-ruby]::before {
    font-size: 21px;
    top: -1.25em;
}

.sell_heading [data-ruby]::before,
.menu_heading [data-ruby]::before {
    left: 0;
    transform: inherit;
}

.reason_area .reason_heading {
    font-size: 48px;
    margin-bottom: .5em;
}

.reason_area .reason_heading .chosen {
    display: block;
    background: linear-gradient(transparent 60%, #FFFA8E 20%);
    width: fit-content;
    margin: 0 auto;
}

.reason_area .reason_heading .common_en {
    font-size: 1.15em;
    vertical-align: -4px;
}

.background_circle {
    background-image: radial-gradient(circle, rgba(255, 254, 234, 1) 56%, rgba(233, 233, 233, 0) 66%);
    background-size: contain;
    width: 864px;
    height: 680px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.reason_area .reason_text_center {
    font-size: 18px;
    font-weight: 700;
    margin: 0 auto 2.8em;
    letter-spacing: 0.01em;
}

.reason_area .common_contact_area {
    border: none;
    background-color: inherit;
    padding: 0;
    margin-top: 50px;
    justify-content: center;
}

.reason_area .common_contact_area {
    border: none;
    background-color: inherit;
    padding: 0;
}

.reason_area .common_box .box_title {
    width: 180px;
    min-width: inherit;
}

.reason_area .common_box {
    width: 369px;
    letter-spacing: 0.01em;
    padding: 30px 10px 50px;
}

.reason_area .common_box .box_body .flex {
    margin: auto;
    text-align: center;
    gap: 0;
    font-size: 20px;
    display: flex;
}

.reason_area .common_box .box_bottom {
    width: 100%;
    height: 39px;
    background-color: #fff;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    border-top: solid 3px var(--text-color);
    border-radius: 0 0 3px 3px;
}

.reason_area .common_box img.triangle_down {
    width: 28px;
    vertical-align: bottom;
}

.reason_area .flex .common_text_big {
    font-size: 1.5em;
}

.reason_area .reason_two {
    margin-top: 2px;
}

.reason_area .reason_two .common_text_big {
    font-size: 1.35em;
    line-height: 0.5;
}

.reason_area .reason_two .adjust {
    padding-bottom: 2px;
}


.reason_area .reason_three .common_text_big {
    font-size: 1.3em;
    line-height: 1.5;
}

.reason_area .flex .flex {
    height: 101px;
    align-items: center;
}

.reason_area .flex .flex .common_text_mini {
    display: inline-block;
    width: 2.2em;
}

.reason_area .flex .flex .common_number {
    font-size: 50px;
    line-height: 1;
}

.reason_area .box_title .common_en {
    font-size: 1.5em;
    line-height: 1;
}

.reason_area .reason_flex {
    margin-top: 150px;
    align-items: center;
    gap: 50px;
    font-weight: 900;
    display: flex;
}

.reason_area .reason_text {
    width: 47.8%;
    text-align: left;
    letter-spacing: 0.017em;
    font-weight: 600;
}

.reason_area .reason_text .reason_point {
    margin-bottom: 0;
    font-size: 15.8px;
    margin-top: 1em;
}

.reason_area .reason_flex .reason_title {
    font-size: 34px;
}

.reason_area .reason_flex .common_text_blue {
    color: var(--main-color);
    font-size: 44px;
}


.reason_flex .reason_img {
    width: 540px;
    flex-shrink: 0;
    position: relative;
}

.reason_flex .reason_img img {
    width: 100%;
    border-radius: 20px 0 0 20px;
    position: relative;
}

.reason_flex .reason_img::before {
    content: "";
    position: absolute;
    width: calc(100% + 10px);
    height: 100%;
    border-radius: 20px 0 0 20px;
    background-color: var(--main-color);
    bottom: -5px;
    right: 0;
}

.reason_flex .reason_img_number {
    position: absolute;
    color: #fff;
    font-size: 24px;
    background-color: var(--main-color);
    right: 0;
    bottom: 0;
    border-radius: 20px 0 0 0;
    padding: 0.4em 1em;
}


/*２つ目調整*/

.reason_flex_list .reason_flex:nth-of-type(even) {
    margin: 200px auto;
    flex-direction: row-reverse;
}

.reason_area #reason_two .reason_title {
    font-size: 26px;
}

.reason_area #reason_two .common_text_blue {
    font-size: 1em;
}

.reason_area #reason_two .common_yellow_line {
    font-size: 1.23em;
}

.reason_area #reason_two .common_number {
    font-size: 60px;
}

.reason_area #reason_two .common_text_big {
    font-size: 1.4em;
}

.reason_flex_list .reason_flex:nth-of-type(even) .reason_img {
    left: 0;
}

.reason_flex_list .reason_flex:nth-of-type(even) img {
    border-radius: 0 20px 20px 0;
}

.reason_flex_list .reason_flex:nth-of-type(even) .reason_img::before {
    border-radius: 0 20px 20px 0;
    right: auto;
    left: 0;
}

.reason_flex_list .reason_flex:nth-of-type(even) .reason_img_number {
    border-radius: 0 20px 0 0;
    right: auto;
    left: 0;
}


/*===========
   実績エリア
============*/
#top_sell_list {
    margin: 150px auto 100px;
    border-bottom: solid 1px #D9D9D9;
    padding: 0 var(--margin-wide) 100px;
}

#top_sell_list .sell_heading {
    font-size: 38px;
    width: 1140px;
    margin: 0 auto;
}

#top_sell_list .flex {
    justify-content: space-between;
    margin: 25px auto;
    width: 1140px;
}

#top_sell_list .flex p {
    width: 50%;
    font-weight: 700;
}

#top_sell_list .common_more_btn {
    margin: 0;
}

#top_sell_list .common_more_btn a {
    width: 259px;
    padding: 0.8em;
    font-size: 18px;
    margin-right: 47px;
}

/*リスト*/

.grid_container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 4px;
    max-height: 400px;
    /* overflow-y: scroll; */
    overflow-X: hidden;
    padding-right: 43px;
    position: relative;
}

#top_sell_list .grid_container {
    width: 1140px;
    margin: 0 auto;
}

/* スクロールバーのスタイル */
.grid_container::-webkit-scrollbar {
    width: 30px;
    /* スクロールバーの幅 */
}

.grid_container::-webkit-scrollbar-track {
    background: #fff;
    /* スクロールバーのトラックの色 */
}

.grid_container::-webkit-scrollbar-thumb {
    background-color: var(--main-color);
    /* スクロールバーの色 */
    border-radius: 50px;
    /* スクロールバーの角を丸くする */
}

.grid_container::-webkit-scrollbar-track-piece {
    background: #C9C9C9;
    border: solid 14px #fff;
    border-top: 0px;
    border-bottom: 0px;
}

.grid_headers,
.grid_rows {
    display: contents;
}

.grid_header,
.grid_item {
    padding: 8px 12px;
    text-align: center;
}

.grid_row .grid_item {
    background-color: #f8f8f8;
    /* height: 50px; */
    /* display: grid; */
    /* place-content: center; */
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    line-height: 1.7;
}

.grid_row:nth-child(even) .grid_item {
    background-color: #EEEEEE;
}

.grid_header {
    background-color: var(--main-color);
    color: #fff;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 2;
    display: grid;
    place-items: center;
    font-weight: 900;
    line-height: 1.6;
}

.grid_header:first-child {
    border-radius: 4px 0 0 0;
}

.grid_header:last-child {
    border-radius: 0 4px 0 0;
}

.grid_row {
    display: contents;
    font-weight: 500;
}

/*===========
   レビューエリア
============*/
#top_review {
    margin: 0 auto 120px;
    padding: 0 var(--margin-wide);
}

#top_review .review_heading {
    font-size: 38px;
    margin-bottom: 20px;
    text-align: center;
}

#top_review .text_center {
    font-weight: 700;
    text-align: center;
    font-size: 16px;
    letter-spacing: .03em;
}

#top_review .review_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin: 30px auto;
    gap: 15px;
    width: 1140px;
}

#top_review .review_item {
    text-align: left;
    transition: all .3s;
}

#top_review a:hover .review_item {
    color: var(--main-color);
}

#top_review .review_img {
    width: 100%;
    height: 190px;
}

#top_review .review_img .img {
    width: 100%;
    height: 100%;
}

#top_review .review_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

#top_review .review_title {
    font-size: 1.125em;
    margin-bottom: .5em;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    height: 1.5em;
    width: 100%;
    display: -webkit-box;
}

#top_review .review_list .link .review_sentence {
    font-size: 16px;
    letter-spacing: .03em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

#top_review .review_item p {
    overflow: hidden;
    display: -webkit-box;
    font-size: 0.8em;
    margin-bottom: 1.5em;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-weight: 500;
    height: 3em;
}

#top_review .review_reason {
    font-size: 0.85em;
    font-weight: 400;
}

#top_review .common_more_btn {
    margin: 58px auto 86px;
}

#top_review .common_more_btn a {
    width: 310px;
    font-size: 1.125em;
}

/*===========
   メニューエリア
============*/
#top_menu {
    margin: 150px auto 100px;
}

#top_menu .menu_heading {
    width: 1140px;
    margin: auto;
}

#top_menu h2.menu_heading {
    font-size: 1.875em;
}

#top_menu h2.menu_heading .menu_heading {
    display: block;
}

#top_menu h3.menu_heading {
    font-size: 2.625em;
}

#top_menu .menu_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin: 40px auto 0;
    width: 1140px;
}

#top_menu .menu_item {
    border-bottom: dotted 3px var(--text-color);
    padding-bottom: 45px;
}

#top_menu .menu_item .common_text_blue {
    color: var(--main-color);
}

#top_menu .menu_item_img {
    height: 259px;
    position: relative;
    margin-bottom: 2.5em;
}

#top_menu .menu_item_img img {
    border-radius: 10px;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

#top_menu .menu_item_img .menu_number,
#top_menu .menu_item_img .menu_title {
    position: absolute;
}

#top_menu .menu_item_img .menu_number {
    top: 0;
    right: 0;
    padding: 0.5em 1em;
    background-color: var(--main-color);
    border-radius: 0 10px 0 10px;
    color: #fff;
    font-size: 1.375em;
}

#top_menu .menu_item_img .menu_title {
    bottom: -1em;
    left: 0;
    padding: 0.5em 0.6em;
    background-color: #fff;
    border-radius: 0 20px 0 0;
    font-size: 1.375em;
    letter-spacing: 0.01em;
}

#top_menu .menu_sub {
    font-size: 1.15em;
    margin-bottom: 0.5em;
    letter-spacing: 0.01em;
    color: var(--main-color);
    position: relative;
    display: flex;
    gap: 0 10px;
}

#top_menu .menu_sub::before,
#top_menu .menu_sub::after {
    content: "";
    display: block;
    background-image: url("/wp-content/themes/child/image/icon_line_blue.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 25px;
    aspect-ratio: 1/1;
    min-width: 0;
}

#top_menu .menu_text {
    font-weight: 600;
    font-size: 17px;
}

/*==================
  はじめてのかたエリア
===================*/
#top_consider {
    margin: 125px auto 0;
    padding: 125px 0 100px;
    background-color: #FFFEEF;
}

#top_consider .consider_heading {
    text-align: center;
    font-size: 2.25em;
}

#top_consider .consider_btn_area {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 1140px;
    margin: 35px auto auto;
}

#top_consider .consider_btn a {
    background-color: #fff;
    display: flex;
    align-items: center;
    gap: 40px;
    position: relative;
}

#top_consider .consider_img {
    width: 320px;
    height: 210px;
}

#top_consider .consider_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px 0 0 10px;
}

#top_consider .consider_text {
    width: 675px;
}

#top_consider .consider_text .catch {
    font-size: 1.625em;
    margin-bottom: 2vw;
    color: var(--main-color);
}

#top_consider .consider_sentence {
    font-weight: 700;
    font-size: 16px;
    letter-spacing: .03em;
}

#top_consider .btn_right {
    width: 50px;
    height: 100%;
    background-color: var(--main-color);
    position: absolute;
    right: 0;
    display: grid;
    place-items: center;
    border-radius: 0 10px 10px 0;
}

#top_consider .btn_right img {
    width: 16px;
}

/*===========
 フッターエリア
============*/
footer .footer_main {
    /* padding: 150px var(--margin-wide) 70px; */
    padding: 150px 0 70px;
}

footer .footer_logo {
    width: 378px;
    margin: 0 auto 50px;
}

footer .footer_logo img {
    width: 100%;
}


footer .footer_main .tel {
    text-align: center;
    margin-bottom: 30px;
}

footer .footer_main .tel_heading {
    display: block;
    font-size: 1.375em;
}

footer .tel_info {
    font-size: 1em;
    font-weight: 700;
}

footer .common_tell_link {
    color: var(--main-color);
}

footer .common_btn_area {
    margin: 0 auto 50px;
    width: fit-content;
}

footer .common_btn_area p {
    text-align: right;
    margin-top: 20px;
    font-size: 0.875em;
    font-weight: 700;
    letter-spacing: 0.02em;
}

footer .footer_bottom {
    gap: 15px;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
    width: 1140px;
    margin: 0 auto;
}

footer .footer_shop {
    border-right: solid 1px var(--text-color);
    padding-right: 25px;
}

footer .footer_shop iframe {
    width: 411px;
    height: 200px;
}

footer .footer_shop .shop_logo {
    display: block;
    width: 299px;
    margin: 15px 0;
}

footer .footer_shop .shop_address,
footer .footer_shop .shop_access {
    font-size: 0.875em;
    font-weight: 700;
    letter-spacing: 0.195px;
}

footer .footer_shop .shop_address {
    margin-bottom: 2em;
}

footer .shop_access .access_title {
    color: var(--main-color);
    margin-bottom: 0.9em;
    font-weight: 900;
}

footer .footer_menu {
    display: grid;
    grid-template-columns: 25fr 24fr 17fr;
    gap: 20px;
}

footer .footer_menu .menu li a {
    transition: .3s;
    font-size: 14px;
    list-style-type: "- ";
    margin: 9px 0;
    font-weight: 600;
    color: var(--text-color);
    letter-spacing: 0;
}

footer .footer_menu a:hover {
    color: var(--main-color);
}

footer .footer_menu .menu {
    font-size: 1.125em;
    color: var(--main-color);
    list-style-type: none;
    margin-bottom: 0.55em;
}

footer .footer_menu .menu:first-child {
    margin-bottom: 0;
}

footer .footer_menu .menu ul {
    margin-left: .6em;
    margin-top: 1em;
}

footer .copyright {
    background-color: var(--main-color);
    text-align: center;
    padding: 20px 0;
    font-size: 0.82em;
}

footer .copyright small,
footer .copyright .common_en {
    color: #fff;
    font-weight: 500;
    letter-spacing: 0.02em;
    font-size: 14px;
}

footer .footer_menu ul {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
}

/*======================ここから内部ページ=======================*/


.page_margin {
    background-color: #2e2a28;
}

.page_body {
    padding: 120px var(--margin-wide);
}

.page_body ul.text_list {
    margin: 0.4em 0.2em;
    line-height: 1.6;
}

/*===========
 仲介売却
============*/
.page_body .baikyaku_info {
    text-align: center;
    font-size: 2em;
    letter-spacing: 0.07em;
    width: 1140px;
    margin: auto;
}

#page_baikyaku .baikyaku_info .catch_box .catch {
    font-size: 34px;
    letter-spacing: .06em;
}

#page_baikyaku .page_body .common_text_dot::after {
    top: -50px;
    left: 6px;
}

.page_body .circle_row {
    width: 100%;
    font-size: 0.625em;
    color: var(--main-color);
    display: grid;
    grid-template-columns: repeat(3, 180px);
    grid-template-rows: 180px;
    place-content: center;
    gap: 40px;
    margin: 30px auto;
}

.page_body .circle_row_item {
    width: 100%;
    height: 100%;
    background-image: radial-gradient(rgba(237, 245, 255, 1) 65%, rgba(237, 245, 255, 0)72%);
    display: grid;
    place-content: center;
}

.page_body .baikyaku_info .theme {
    font-size: 1em;
    position: relative;
    display: inline;
}

.page_body .baikyaku_info h2.comment_line::before,
.page_body .baikyaku_info h2.comment_line::after {
    /* content: ""; */
    display: inline-block;
    width: 1.718em;
    border-top: solid 3px var(--text-color);
    position: absolute;
}

.page_body .baikyaku_info h2.comment_line::before {
    left: -2em;
    bottom: 0.8em;
    transform: rotate(60deg);
}

#page_secondstep .page_body .baikyaku_info h2.comment_line::before {
    left: -270px;
}

.page_body .baikyaku_info h2.comment_line::after {
    /* right: -2em; */
    /* bottom: 0.8em; */
    /* transform: rotate(-60deg); */
}

/*テキスト系設定*/
.page_body .grid_title {
    display: flex;
    gap: 30px;
    width: 100%;
    margin: 100px 0 25px;
    align-items: center;
    position: relative;
}

.page_body .grid_title.common_text_blue {
    font-size: 1.2857em;
}

.page_body .grid_title .catch {
    font-size: 0.8em;
    width: fit-content;
    flex-shrink: 0;
}

.page_body .grid_title h3 {
    font-size: 0.8em;
    width: fit-content;
    flex-shrink: 0;
}

.page_body .grid_title.titile_wrap .catch {
    position: absolute;
    display: inline-block;
    padding: 5px 30px;
    background-color: var(--main-color);
    border: solid 3px var(--text-color);
    border-radius: 50px;
    color: #fff;
    left: 50px;
}

#page_secondstep .page_body .grid_title.titile_wrap .theme {
    position: absolute;
    display: inline-block;
    padding: 5px 30px;
    background-color: var(--main-color);
    border: solid 3px var(--text-color);
    border-radius: 50px;
    color: #fff;
    left: 50px;
    font-size: 24px;
}

.page_body .dot_line {
    border-bottom: dotted 3px var(--text-color);
    height: 3px;
    width: 100%;
}

.page_body .baikyaku_info .firststep.theme .common_text_mini {
    color: var(--text-color);
}

.page_body .solid_line {
    border-bottom: solid 3px var(--text-color);
    height: 3px;
    width: 100%;
}

.page_body .grid_sentence,
.page_body .grid_sentence_center {
    font-weight: 600;
    margin: 25px 0;
}

.page_body .grid_sentence {
    text-align: left;
    font-size: 17px;
    letter-spacing: .2em;
}

.page_body .grid_sentence_center {
    font-size: 18px;
    text-align: center;
}

#page_firststep .grid_sentence_center,
#page_secondstep .grid_sentence_center {
    font-size: 14px;
    letter-spacing: .03em;
}

.page_body .common_text_dot::after {
    content: "・・・・・・";

}

/*表*/
.page_body .grid_container {
    display: flex;
    flex-direction: row;
    max-width: 1440px;
    height: auto;
    max-height: inherit;
    overflow-X: inherit;
    overflow-Y: inherit;
    padding-right: 0;
    padding-bottom: 72px;
    gap: 8px;
}

.page_body .grid_header {
    border: 1px solid #fff;
    padding: 0;
    background-color: var(--main-color);
    position: inherit;
}

.page_body .grid_headers {
    display: flex;
    flex-direction: column;
    left: 0;
    z-index: 2;
    min-width: 220px;
    font-size: 20px;
    gap: 8px;
    position: inherit;
}

.page_body .grid_header:first-child {
    background: linear-gradient(166deg, rgba(45, 113, 194, 1) 50%, rgba(14, 125, 195, 1) 50%);
}

.page_body .grid_header:last-child {
    border-radius: 0 0 0 4px;
}

.page_body .grid_header,
.page_body .grid_row .grid_item {
    width: auto;
    min-height: 60px;
}

.page_body .grid_header:last-child,
.page_body .grid_row .grid_item:last-child {
    min-height: 150px;
}

.page_body .grid_row {
    display: flex;
    flex-direction: column;
    min-width: 302px;
    flex-grow: 1.5;
    gap: 8px;
}

.page_body .grid_item {
    padding: 8px 45px;
    border: 1px solid #fff;
    text-align: left;
    font-size: 16px;
    background-color: #EEEEEE;
    display: grid;
    place-items: center start;
    font-weight: 500;
}

.page_body .grid_item:first-child {
    background-color: var(--main-color);
    color: #fff;
    font-weight: 900;
    font-size: 20px;
    place-items: center center;
}

.page_body .grid_item li.list_none {
    list-style: none;
    display: inline-block;
}

.page_body .grid_future {
    position: relative;
}

.page_body .grid_future::after {
    content: "";
    position: absolute;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    border: solid 4px var(--main-color);
    top: 1px;
    left: 1px;
}

/*.row_bigのheight高い表*/

.page_body .row_big .grid_headers,
.page_body .grid_container.row_big,
.row_big .grid_row {
    gap: 4px;
}

.page_body .row_big .grid_header,
.page_body .row_big .grid_row .grid_item {
    min-height: 110px;
}

.row_big .grid_row .grid_item {
    text-align: center;
    place-items: center center;
    padding: 8px 0;
    background-color: #f8f8f8;
    font-weight: 900;
}

.page_body .row_big .grid_row.grid_future .grid_item {
    background-color: #EEEEEE;
}

.page_body .row_big .grid_header,
.page_body .row_big .grid_row .grid_item:first-child {
    background: var(--main-color);
}

.page_body .grid_row .grid_item .common_text_mini {
    line-height: 1.3;
    letter-spacing: 0.04em;
}

/*コスト表*/

.page_body .grid_container.grid_cost {
    flex-direction: column;
    gap: 4px;
    margin: 60px auto 120px;
}

.page_body .grid_container .basic_cost_list,
.page_body .grid_container .option_cost_list {
    display: grid;
    grid-template-columns: 221px 221px 690px;
    gap: 4px;
}

.page_body .grid_container .basic_cost_list {
    grid-template-rows: repeat(3, 92px);
    grid-template-areas:
        "area1 area2 area3"
        "area1 area4 area5"
        "area1 area6 area7";
}

.page_body .grid_container .option_cost_list {
    grid-template-rows: repeat(8, 72px);
    grid-template-areas:
        "area1 area2 area3"
        "area1 area2 area4"
        "area1 area2 area5"
        "area1 area6 area7"
        "area1 area8 area9"
        "area1 area10 area11"
        "area1 area10 area12"
        "area1 area10 area13";
}

.page_body .grid_container .cost_list_title {
    font-size: 20px;
    grid-area: area1;
    color: #fff;
    line-height: 1.5;
}

.page_body .grid_container .basic_cost_list .cost_list_title {
    background-color: #4b4848;
}

.page_body .grid_container .option_cost_list .cost_list_title {
    background-color: #50ADD6;
}

.page_body .grid_container .cost_list_title,
.page_body .grid_container .cost_title {
    display: grid;
    place-items: center;
}

.page_body .grid_container .cost_title {
    font-size: 17px;
}

.page_body .grid_container .cost {
    font-size: 16px;
}

.page_body .grid_container .basic_cost_list .cost_title {
    background-color: #F0F9FF;
}

.page_body .grid_container .option_cost_list .cost_title {
    background-color: #F0FEFF;
}

.page_body .grid_container .cost {
    display: grid;
    place-items: center start;
    background-color: #F8F8F8;
    padding: 0 30px;
    letter-spacing: 0.04em;
    font-weight: 500;
}

.option_cost_list .cost_title.area2 {
    grid-area: area2;
}

.option_cost_list .cost_title.area10 {
    grid-area: area10;
}

/*ステップ*/
.step_list {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-bottom: 130px;
}

.step_list .step_row {
    display: flex;
    gap: 50px;
    align-items: center;
}

.step_list .step_number {
    background-color: var(--main-color);
    width: 100px;
    height: 100px;
    border-radius: 50%;
    color: #fff;
    line-height: 1;
    display: grid;
    place-content: center;
    font-size: 26px;
    position: relative;
}

.step_list .step_number::before,
.step_list .step_number::after {
    content: "";
    background-color: var(--text-color);
    height: 3px;
    position: absolute;
}

.step_list .step_number::before {
    width: 50px;
    left: 100px;
    top: 50%;
    transform: translateY(-50%);
}

.step_list .step_number::after {
    width: 120px;
    bottom: -61px;
    left: -11px;
    transform: rotate(-90deg);
    transform-origin: center;
}

.step_list .step_row:last-child .step_number::after {
    display: none;
}

.step_list .step_number .common_text_yellow {
    font-size: 1.46em;
}

.step_list .step_item {
    width: 990px;
    height: 190px;
    display: grid;
    grid-template-columns: 33.3333% 66.6666%;
    place-items: center start;
    text-align: left;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    border-radius: 20px;
}

.step_list .step_item .step_photo,
.step_list .step_item img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    border-radius: 20px 0 0 20px;
}

.step_list .step_text {
    padding: 0 28px;
}

.step_list .step_item .catch {
    font-size: 22px;
    margin-bottom: .2em;
}

.step_list .step_item p {
    font-size: 16px;
}



/*=======
    FAQ
========*/
#page_faq .page_body {
    max-width: 1440px;
    margin: auto;
}

.faq_area {
    list-style: none;
    width: 100%;
    margin: 0 auto;
    text-align: left;
}

.faq_area li {
    margin: 10px 0;
}

.faq_top {
    margin-bottom: 4em;
}

.faq_heading {
    text-align: center;
    margin-bottom: 1em;
    font-size: 2em;
}

.faq_text {
    font-size: 1em;
    font-weight: 600;
}

#page_faq .faq_top .faq_category_btn .common_more_btn {
    width: 100%;
}

#page_faq .faq_top .faq_category_btn .common_more_btn a {
    width: 100%;
    padding: 0.67em;
}

#page_faq .faq_category .common_more_btn a {
    width: 355px;
    font-size: 17px;
}

.faq_category_btn {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 20px;
}

.page_body .common_more_btn {
    margin: 2em auto;
    position: relative;
}

.page_body .common_more_btn:nth-of-type(2) a {
    background-color: var(--main-color);
}

.page_body .common_more_btn:nth-of-type(3) a {
    background-color: #0E93C3;
}

.page_body .common_more_btn:nth-of-type(4) a {
    background-color: #0EA0CF;
}

.faq_category_btn .common_more_btn::after {
    content: "";
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    line-height: 1;
    width: 0.9em;
    height: 0.9em;
    border: 3px solid currentColor;
    border-radius: 2px;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-25%) rotate(135deg);
    transition: 0.3s;
    right: 30px;
    top: 45%;

}

.page_body .common_more_btn a {
    font-size: 1.11em;
    width: fit-content;
    min-width: 15.5em;
}

.faq_category .grid_title {
    font-size: 1.6em
}

/*アコーディオンタイトル*/
.faq_title {
    position: relative;
    cursor: pointer;
    font-size: 18px;
    padding: 20px 30px 20px 80px;
    background-color: var(--main-color);
    color: #fff;
    transition: all .5s ease;
    border-radius: 4px;
}

#baikyaku .faq_title {
    background-color: var(--main-color);
}

#souzoku .faq_title {
    background-color: #0E93C3;
}

#other .faq_title {
    background-color: #0EA0CF;
}

#other .common_more_btn a {
    background-color: #0E93C3;
}

.faq_title::before {
    content: "Q";
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    color: #FFF200;
    line-height: 1;
    top: 50%;
    transform: translateY(-50%);
    left: 30px;
    font-family: var(--number-font);
    font-size: 2em;
}

.faq_title::after {
    content: "";
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    line-height: 1;
    width: 0.9em;
    height: 0.9em;
    border: 3px solid currentColor;
    border-radius: 2px;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-25%) rotate(135deg);
    transition: 0.3s;
    right: 30px;
    top: 45%;

}

.faq_title.close::after {
    transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.faq_box {
    display: none;
    /*はじめは非表示*/
    padding: 2.5% 2% 2% 80px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    position: relative;
}

.faq_box::after {
    content: "A";
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    color: #ED0000;
    line-height: 1;
    top: calc(2.5% + 0.6em);
    left: 30px;
    font-family: var(--number-font);
    font-size: 2em;

}

.faq_box ul.text_list li {
    list-style-type: square;

}

#page_faq .faq_area>li {
    margin: 40px 0;
}

#page_faq .faq_box {
    background-color: #f8f8f8;
    border-radius: 0 0 4px 4px;
}

#page_faq .faq_box .text {
    font-size: 16px;
    letter-spacing: .03em;
}

/*===========
 選ばれる理由
============*/
#page_reason {
    margin-bottom: 5em;
}

/*===========
 会社概要
============*/
.page_body .shop_logo,
.page_body .shop_slider,
.page_body .grid_title,
.page_body .shop_info {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
}

#page_company .grid_title {
    font-size: 2.5em;
}

div#page_company .page_body .grid_title.common_text_blue {
    margin-top: unset;
}

.page_body .shop_info {}

.page_body .shop_logo {
    width: 30em;
    max-width: 100%;
    margin: 0 auto 2em;
}

.page_body .shop_logo img {
    width: 100%;
}

.page_body .shop_info_img img {}

.page_body .table_box {}

.page_body .table_box div {
    width: 100%;
    height: 100%;
    padding: 1em;
}

.page_body .table_box div:nth-of-type(odd) {
    background-color: #4b4848;
    color: #fff;
    display: grid;
    place-content: center;
}

.page_body .table_box div:nth-of-type(even) {
    font-weight: 500;
    background-color: #EEEEEE;
    padding-left: 1em;
}

#page_company .page_body .shop_info .table_box div .link {
    color: #048ADE;
}

.page_body .table_box div:first-child {
    border-radius: 4px 0 0 0;
}

.page_body .table_box div:nth-of-type(2) {
    border-radius: 0 4px 0 0;
}

.page_body .table_box div:last-child {
    border-radius: 0 0 4px 0;
}

.page_body .table_box div:nth-last-of-type(2) {
    border-radius: 0 0 0 4px;
}

.page_body ul.number_list li {
    list-style-type: armenians;
    margin-left: 2em;
}

.page_body ul.none_list li {
    list-style-type: none;
}

.shop_slider img {
    width: 100%;
    height: auto;
    position: relative;
    border-radius: 4px;
}

.shop_slider .slick-slide {
    margin: 0 10px;
}


/*===========
 売却、その前に
============*/

.page_body .box_list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 40px;
}

.page_body .box_list .box_item {
    display: grid;
    grid-template-columns: 1fr;
    font-size: 0.7em;
    text-align: left;
}

.page_body .box_list .box_title {
    background-color: var(--main-color);
    color: #fff;
    padding: 0.5em 29px;
    border-radius: 6px 6px 0 0;
    font-size: 22px;
}

.page_body .box_list:nth-of-type(2) .box_title {
    background-color: var(--main-color);
}

.page_body .box_list .box_body {
    font-weight: 600;
    font-size: 0.7em;
    padding: 1.3em 29px 1.8em;
    background-color: #f8f8f8;
    border-radius: 0 0 6px 6px;
}

.page_body .page_img_text_box {
    font-size: 0.7em;
    width: calc(100% - 30px);
    display: grid;
    grid-template-columns: 1fr;
    position: relative;
    margin: 72px auto;
    text-align: left;
    gap: 0;
}

.page_body .page_text_box {
    background-color: #fff;
    padding: 1.5em 1em;
    border-radius: 6px;
}

.page_body .page_text_box::before {
    content: "";
    display: inline-block;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: var(--main-color);
    position: absolute;
    z-index: -1;
    border-radius: 6px;
    left: -10px;
    bottom: -10px;
}

.page_body .page_text_box::after {
    content: "▲";
    display: inline-block;
    width: 2em;
    height: 2em;
    font-size: 2em;
    color: var(--main-color);
    position: absolute;
    z-index: -2;
    left: 50%;
    top: -1em;
    transform: translateX(-50%);
    text-align: center;
}

.page_body .page_text_box p {
    font-size: 0.7em;
    position: relative;
}

.page_body .page_img_box {
    width: 100%;
    height: 288px;
}

.page_body .page_img_box img {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    object-fit: cover;
}

.page_body .firststep .common_more_btn a {
    font-size: 0.7em;
    padding: 1em 2.5em;
}

/*表*/
.page_body .firststep {
    gap: 2px;
}

.page_body .firststep .grid_header {
    background-color: #F0F9FF;
    color: var(--text-color);
    padding: 12px 1em;
    height: fit-content;
}

.page_body .firststep .grid_headers {
    display: flex;
    flex-direction: column;
    left: 0;
    z-index: 2;
    min-width: 234px;
    font-size: 16px;
    gap: 2px;
    position: inherit;
    font-weight: 600;
}

.page_body .firststep .grid_header:first-child {
    background: var(--main-color);
    color: #fff;
    font-weight: 900;
    font-size: 20px;
}

.page_body .firststep .grid_header,
.page_body .firststep .grid_row .grid_item {
    width: auto;
    min-height: 121px;
}

.page_body .firststep .grid_header:nth-of-type(4),
.page_body .firststep .grid_row .grid_item:nth-of-type(4),
.page_body .firststep .grid_header:nth-of-type(5),
.page_body .firststep .grid_row .grid_item:nth-of-type(5),
.page_body .firststep .grid_header:nth-of-type(7),
.page_body .firststep .grid_row .grid_item:nth-of-type(7) {
    min-height: 141px;
}

.page_body .firststep .grid_header:nth-of-type(6),
.page_body .firststep .grid_row .grid_item:nth-of-type(6) {
    min-height: 148px;
}


.page_body .firststep .grid_row {
    gap: 2px;
}

.page_body .firststep .grid_item {
    padding: 12px 45px;
    border: 1px solid #fff;
    text-align: left;
    font-size: 16px;
    background-color: #f8f8f8;
    display: grid;
    place-items: center center;
    font-weight: 500;
    position: relative;
    line-height: 1.3;
}

.page_body .firststep .grid_item .common_text_mini {
    position: absolute;
    bottom: 22px;
}

.page_body .firststep .grid_item:first-child {
    background-color: var(--main-color);
    color: #fff;
    font-weight: 900;
    font-size: 20px;
    place-items: center center;
    text-align: center;
}

.page_body .firststep .grid_rows:nth-of-type(3) .grid_item:first-child {
    background-color: var(--main-color);
}

.page_body .firststep .grid_rows:nth-of-type(4) .grid_item:first-child {
    background-color: #50ADD6;
    border-radius: 0 6px 0 0;
}

#page_secondstep .secondstep {
    padding-bottom: 0;
}

#page_secondstep .reason_area {
    padding-top: 0;
}

#page_secondstep .page_body .grid_sentence {
    margin: 0 0 40px;
}

#page_secondstep .page_body .titile_wrap {
    margin: 100px auto 50px;
}

#page_secondstep .page_body .titile_wrap_shrink {
    margin: 80px auto 50px;
}

/*===========
 お客様の声
============*/
#page_voice .review_heading {
    margin-top: 50px;
}

#page_voice .review_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 50px 15px;
}

#page_voice .review_img {
    height: 248px;
    width: 360px;
    grid-area: area1;
}

#page_voice .review_img .img {
    width: 100%;
    height: 100%;
}

#page_voice .review_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#page_voice .review_item {
    display: grid;
    grid-template-columns: 360px 749px;
    grid-template-rows: 50px auto 50px;
    grid-template-areas:
        "area1 area2"
        "area1 area3"
        "area1 area4";
    gap: 0 40px;
    margin-bottom: 30px;
}

#page_voice .review_item p {
    font-size: 0.9em;
    overflow: inherit;
    text-overflow: inherit;
    -webkit-box-orient: inherit;
    -webkit-line-clamp: inherit;
    line-height: inherit;
    height: auto;
}

.filter-buttons {
    margin: 50px 0 40px;
    text-align: center;
}

.filter-button {
    display: inline-block;
    margin-right: 10px;
    padding: 0.6em 2em;
    background-color: #f5f5f5;
    color: var(--text-color);
    text-decoration: none;
    border-radius: 50px;
    transition: background-color 0.3s;
}

.filter-button:hover {
    background-color: #e5e5e5;
}

.filter-button.active {
    background-color: var(--main-color);
    color: #fff;
}

/*===========
 販売実績一覧
============*/
#page_realestate section {
    margin: 100px var(--margin-wide);
}

.realestate_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px 30px;
    margin: 1.5em auto;
    max-width: 1140px;
}

.realestate_title {
    display: grid;
    grid-template-columns: 72px auto;
    gap: 10px;
    margin: 1em 0;
    align-items: center;
}

.realestate_title .realestate_torihiki {
    width: 100%;
    background-color: var(--main-color);
    border-radius: 50px;
    color: #fff;
    font-size: 0.8em;
    display: grid;
    place-items: center center;
    padding: 5px 0;
}

.realestate_list .realestate_img {
    height: 280px;
    margin-bottom: 20px;
    background-color: #f4f4f4;
}

.realestate_list .realestate_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.realestate_list .infolist_row {
    display: grid;
    grid-template-columns: 115px auto;
    grid-column-gap: 10px;
    place-items: center start;
    background-color: #f9f9f9;
    border-bottom: 1px solid #D9D9D9;
}

.realestate_list .infolist_row:nth-of-type(even) {
    background-color: #EEEEEE;
}

.realestate_list .infolist_row .info_title,
.realestate_list .infolist_row .info_body,
.realestate_list .realestate_text {
    font-size: 0.9em;
}

.realestate_list .infolist_row .info_body,
.realestate_list .realestate_text {
    width: 100%;
    padding: 1em 10px;
    font-weight: 500;
}

.realestate_list .infolist_row .info_title {
    height: 100%;
    width: 100%;
    display: grid;
    place-items: center center;
    padding: 1em 10px;

}

.realestate_list .infolist_row .info_body {
    height: 100%;
    background-color: #fff;
}

.realestate_list .realestate_text {
    line-height: 1.5;
    height: 4em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

#page_realestate.realstate_single .page_body {
    padding: 30px var(--margin-wide);
}

#page_realestate.realstate_single .page_body .realestate_img {
    width: 400px;
    margin-inline: auto;
}

#page_realestate.realstate_single .page_body .realestate_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#page_realestate.realstate_single .realestate_list {
    display: block;
    margin: 1.5em auto;
}

#page_realestate.realstate_single .realstate_single {
    height: auto;
    overflow: inherit;
    text-overflow: inherit;
    display: inherit;
    padding: 0 2em;
    font-size: 1em;
}

#page_realestate.realstate_single .realestate_title {
    font-size: 1.5em;
    grid-template-columns: 144px auto;
    align-items: center;
}

#page_realestate.realstate_single .grid_title {
    font-size: 1.5em;
}

#page_voice .voice_sec {
    margin: 50px 0;
}

#page_voice .voice_sec .cont .theme {
    text-align: center;
    margin-bottom: 50px;
}

#page_voice .voice_sec .cont .review_title {
    font-size: 16px;
    letter-spacing: .03em;
}

#page_voice .voice_sec .cont .text_box .text {
    font-size: 16px;
    letter-spacing: .03em;
    margin-bottom: 20px;
    font-weight: 600;
}

#page_voice .voice_sec .cont .text_box .catch {
    font-size: 18px;
    margin-bottom: .5em;
}

#page_voice .voice_sec .cont .text_box .buy_text {
    font-size: 16px;
    letter-spacing: .03em;
    font-weight: 500;
}

/*=========
  コラム
==========*/
#page_column section {
    margin: 100px var(--margin-wide);
}

.column_list .column_img img {
    width: 100%;
    border-radius: 6px 6px 0 0;
}

.column_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px 30px;
    margin: 1.5em auto;
}

.column_list .column_article {
    box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    padding-bottom: 6px;
}

.column_list .column_article:hover {
    color: var(--main-color);
}

.column_list .column_title,
.column_list .column_text,
.column_list .article_bottom {
    padding: 0 10px;
}

.column_list .column_title {
    height: 3em;
    margin-top: 0.5em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.column_list .column_text {
    font-size: 0.8em;
    line-height: 1.5;
    height: 3em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-weight: 500;
    margin-bottom: 1em;
}

.column_list .article_bottom {
    display: grid;
    place-items: center start;
    grid-template-columns: 1fr auto;
    gap: 10px;
    font-size: 0.8em;
    font-weight: 300;
    border-top: 1px solid #D9D9D9;
    padding-top: 6px;
}

.column_date {
    display: grid;
    grid-template-columns: 1em auto;
    place-items: center start;
    gap: 5px;
}

.column_date svg {
    width: 1em;
}

#page_column .common_more_btn a {
    font-size: 1em;
}

/*===========
 ページネーション
============*/

.pagination_wrapper {
    text-align: center;
    margin: 30px 0 80px;
}

.pagination_wrapper .page-numbers {
    display: inline-block;
    margin: 0 5px;
    padding: 10px 15px;
    border: 1px solid #ddd;
    color: var(--text-color);
    text-decoration: none;
}

.pagination_wrapper .page-numbers.current {
    background-color: var(--text-color);
    color: #fff;
}

.pagination_wrapper .page-numbers:hover {
    background-color: #f0f0f0;
}

/* 任意売却 */
.page_ninbai {
    line-height: 1.7;
}

/* .page_ninbai .page_body {
    padding: 120px 0;
} */

.page_ninbai .grid_title {
    font-size: 2.2em;
}

.ninbai_top_sec .list {
    margin-bottom: 40px;
}

.ninbai_top_sec .list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.ninbai_top_sec .list li .img img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
}

.ninbai_top_sec .list li .text_box {
    background: #f8f8f8;
    padding: 1.5em;
}

.ninbai_top_sec .list li .text_box .title {
    font-size: 16px;
}

.ninbai_top_sec .catch {
    text-align: center;
    font-size: 28px;
    letter-spacing: .05em;
}

.ninbai_top_sec .catch .color {
    color: var(--main-color);
}

.ninbai_about_sec .top_text {
    font-weight: 500;
    margin-bottom: 30px;
}

.ninbai_about_sec .list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.ninbai_about_sec .list li {
    background: #EEEEEE;
    border-radius: 6px;
    padding: 1em;
    text-align: center;
    font-size: 20px;
    letter-spacing: .05em;
}

.ninbai_merit_sec {
    --color: #FF6D0C;
    background: #FFFEEF;
    padding: 100px 40px;
    margin-top: 100px;
}

.ninbai_demerit_sec {
    --color: var(--main-color);
    background: #F2F2F2;
    padding: 100px 40px;
}

.ninbai_common_sec .grid_title {
    margin: 0 0 25px;
}

.ninbai_common_sec .merit_cont .item {
    display: flex;
    background: #fff;
}

.ninbai_common_sec .merit_cont .item+.item {
    margin-top: 50px;
}

.ninbai_common_sec .merit_cont .item .img {
    flex-shrink: 0;
    width: 450px;
}

.ninbai_common_sec .merit_cont .item .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ninbai_common_sec .merit_cont .item:nth-child(even) .img {
    order: 1;
}

.ninbai_common_sec .merit_cont .item .text_box {
    width: 100%;
    padding: 35px;
}

.ninbai_common_sec .merit_cont .item .text_box .en {
    display: inline-block;
    background: var(--color);
    color: #fff;
    border-radius: 30px;
    padding: 0.2em 1em;
    font-size: 14px;
    margin-bottom: 0.5em;
}

.ninbai_common_sec .merit_cont .item .text_box .title {
    color: var(--color);
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: 0.5em;
}

.ninbai_common_sec .merit_cont .item .text_box .text {
    font-weight: 500;
}

.ninbai_contact_sec {
    background: url(/wp-content/themes/child/image/ninbai_contact_bg.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 100px 0;
    position: relative;
    z-index: 0;
}

.ninbai_contact_sec::before {
    content: "";
    background: #000;
    opacity: 0.5;
    position: absolute;
    inset: 0;
    z-index: -1;
}

.ninbai_contact_sec .title_box {
    text-align: center;
    color: #fff;
    margin-bottom: 30px;
}

.ninbai_contact_sec .title_box .en {
    font-size: 30px;
    line-height: 1.3;
}

.ninbai_contact_sec .title_box .jp {
    font-size: 36px;
}

.ninbai_contact_sec .btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 450px;
    margin: 0 auto;
    min-block-size: 65px;
    background: #fff;
    text-align: center;
    padding: 0.5em;
    border-radius: 35px;
    font-size: 18px;
    position: relative;
}

.ninbai_contact_sec .btn a::after {
    content: "";
    width: 10px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #1A1311;
    border-width: 2px 2px 0 0;
    rotate: 45deg;
    position: absolute;
    top: 50%;
    right: 30px;
    translate: 0 -50%;
}

.common_flow_sec .list .item {
    display: flex;
    gap: 0 50px;
    position: relative;
    z-index: 0;
}

.common_flow_sec .list .item+.item {
    margin-top: 50px;
}

.common_flow_sec .list .item .step_box {
    flex-shrink: 0;
    width: 100px;
    aspect-ratio: 1/1;
    min-width: 0;
    height: fit-content;
    background: var(--main-color);
    border-radius: 50%;
    display: grid;
    place-content: center;
    font-family: var(--number-font);
    color: #fff;
    font-size: 26px;
    line-height: 1;
    text-align: center;
}

.common_flow_sec .list .item .step_box .num {
    display: block;
    color: #FFF200;
    font-size: 1.5em;
}

.common_flow_sec .list .item .text_box {
    width: 100%;
    background: #f8f8f8;
    box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.16);
    padding: 1.5em;
}

.common_flow_sec .list .item .text_box .title {
    color: var(--main-color);
    font-size: 22px;
    margin-bottom: 0.5em;
}

.common_flow_sec .list .item .text_box .text {
    font-weight: 500;
}

.common_flow_sec .list .item .text_box .text+.text {
    margin-top: 1em;
}

.common_flow_sec .list .item::before {
    content: "";
    width: 2px;
    height: 100%;
    background: #1A1311;
    position: absolute;
    top: 50px;
    left: 48px;
    z-index: -1;
}

.common_flow_sec .list .item:last-of-type::before {
    content: none;
}

/* 相続 */
.page_souzoku {
    line-height: 1.7;
}

/* .page_souzoku .page_body {
    padding: 120px 0;
} */

.page_souzoku .grid_title {
    font-size: 2.2em;
}

.souzoku_top_sec .sec_title {
    text-align: center;
    font-size: 30px;
    margin-bottom: 25px;
}

.souzoku_top_sec .sec_title .color {
    color: var(--main-color);
}

.souzoku_top_sec .list {
    background: #f8f8f8;
    padding: 1.5em 2.5em;
    width: fit-content;
    margin: 0 auto;
}

.souzoku_top_sec .list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 50px;
}

.souzoku_top_sec .list li {
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.souzoku_top_sec .list li::before {
    content: "\f14a";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    color: var(--main-color);
}

.souzoku_suggest_sec {
    background: #F7F7F7;
    padding: 80px 40px;
    margin-top: 100px;
}

.souzoku_suggest_sec .sec_title {
    text-align: center;
    font-size: 30px;
    margin-bottom: 40px;
}

.souzoku_suggest_sec .sec_title .color {
    color: var(--main-color);
}

.souzoku_suggest_sec .cont .item {
    display: flex;
    background: #fff;
}

.souzoku_suggest_sec .cont .item+.item {
    margin-top: 50px;
}

.souzoku_suggest_sec .cont .item .img {
    flex-shrink: 0;
    width: 450px;
}

.souzoku_suggest_sec .cont .item .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.souzoku_suggest_sec .cont .item:nth-child(even) .img {
    order: 1;
}

.souzoku_suggest_sec .cont .item .text_box {
    width: 100%;
    padding: 35px;
}

.souzoku_suggest_sec .cont .item .text_box .en {
    display: inline-block;
    background: var(--main-color);
    color: #fff;
    border-radius: 30px;
    padding: 0.2em 1em;
    font-size: 14px;
    margin-bottom: 0.5em;
}

.souzoku_suggest_sec .cont .item .text_box .title {
    color: var(--main-color);
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1.5;
    margin-bottom: 0.5em;
}

.souzoku_suggest_sec .cont .item .text_box .text {
    font-weight: 500;
}

.souzoku_pickup_sec {
    background: url(/wp-content/themes/child/image/souzoku_pickup_bg.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 80px 0;
    position: relative;
    z-index: 0;
}

.souzoku_pickup_sec::before {
    content: "";
    background: #000;
    opacity: 0.5;
    position: absolute;
    inset: 0;
    z-index: -1;
}

.souzoku_pickup_sec .text_box {
    text-align: center;
    color: #fff;
    margin-bottom: 45px;
}

.souzoku_pickup_sec .text_box .sec_title {
    font-size: 40px;
    margin-bottom: 25px;
}

.souzoku_pickup_sec .text_box .sec_title::after {
    content: "";
    width: 50px;
    height: 2px;
    background: #fff;
    display: block;
    margin: 10px auto 0;
}

.souzoku_pickup_sec .text_box .text {
    line-height: 2;
}

.souzoku_pickup_sec .btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 450px;
    margin: 0 auto;
    min-block-size: 65px;
    background: #fff;
    text-align: center;
    padding: 0.5em;
    border-radius: 35px;
    font-size: 18px;
    position: relative;
}

.souzoku_pickup_sec .btn a::after {
    content: "";
    width: 10px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #1A1311;
    border-width: 2px 2px 0 0;
    rotate: 45deg;
    position: absolute;
    top: 50%;
    right: 30px;
    translate: 0 -50%;
}

/* 買取 */
.page_kaitori {
    line-height: 1.7;
}

/* .page_kaitori .page_body {
    padding: 120px 0;
} */

.page_kaitori .grid_title {
    font-size: 2.2em;
}

.kaitori_top_sec .sec_title {
    text-align: center;
    font-size: 30px;
    margin-bottom: 25px;
}

.kaitori_top_sec .sec_title .color {
    color: var(--main-color);
}

.kaitori_top_sec .list {
    background: #f8f8f8;
    padding: 1.5em 2.5em;
    width: fit-content;
    margin: 0 auto 30px;
}

.kaitori_top_sec .list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 50px;
}

.kaitori_top_sec .list li {
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.kaitori_top_sec .list li::before {
    content: "\f14a";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    color: var(--main-color);
}

.kaitori_top_sec .catch {
    text-align: center;
    font-size: 28px;
    letter-spacing: .05em;
    margin-bottom: 0.2em;
}

.page_kaitori .page_body .kaitori_top_sec .text {
    text-align: center;
    font-size: 16px;
    letter-spacing: .03em;
}

.page_kaitori .page_body .kaitori_top_sec .sec_title {
    font-size: 30px;
}

.page_kaitori .page_body .kaitori_point_sec .sec_title .color {
    font-size: 40px;
}

.kaitori_top_sec .catch .color {
    color: var(--main-color);
}

.kaitori_point_sec {
    background: #F7F7F7;
    padding: 100px 0;
    margin-top: 100px;
}

.kaitori_point_sec .sec_title {
    text-align: center;
    font-size: 28px;
    margin-bottom: 40px;
}

.kaitori_point_sec .sec_title .color {
    color: var(--main-color);
}

.kaitori_point_sec .list ul {
    display: flex;
    gap: 30px;
}

.kaitori_point_sec .list ul+ul {
    margin-top: 30px;
}

.kaitori_point_sec .list li {
    width: calc(100% / 3);
    display: flex;
    flex-direction: column;
}

.kaitori_point_sec .list .bottom {
    justify-content: center;
}

.kaitori_point_sec .list li .img img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
}

.kaitori_point_sec .list li .text_box {
    flex-grow: 1;
    background: #fff;
    padding: 1.5em;
}

.kaitori_point_sec .list li .text_box .en {
    display: inline-block;
    background: var(--main-color);
    color: #fff;
    border-radius: 6px;
    padding: 0.1em 1em;
    font-size: 14px;
    margin-bottom: 0.3em;
}

.kaitori_point_sec .list li .text_box .title {
    color: var(--main-color);
    font-size: 20px;
    margin-bottom: 0.2em;
}

.kaitori_point_sec .list li .text_box .text {
    font-weight: 500;
}

.kaitori_contact_sec {
    background: url(/wp-content/themes/child/image/kaitori_contact_bg.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 100px 0;
    position: relative;
    z-index: 0;
}

.kaitori_contact_sec::before {
    content: "";
    background: #000;
    opacity: 0.5;
    position: absolute;
    inset: 0;
    z-index: -1;
}

.kaitori_contact_sec .title_box {
    text-align: center;
    color: #fff;
    margin-bottom: 30px;
}

.kaitori_contact_sec .title_box .en {
    font-size: 30px;
    line-height: 1.3;
}

.kaitori_contact_sec .title_box .jp {
    font-size: 36px;
}

.kaitori_contact_sec .btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 450px;
    margin: 0 auto;
    min-block-size: 65px;
    background: #fff;
    text-align: center;
    padding: 0.5em;
    border-radius: 35px;
    font-size: 18px;
    position: relative;
}

.kaitori_contact_sec .btn a::after {
    content: "";
    width: 10px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #1A1311;
    border-width: 2px 2px 0 0;
    rotate: 45deg;
    position: absolute;
    top: 50%;
    right: 30px;
    translate: 0 -50%;
}

.common_contact_area .box_blue a {
    width: 300px;
    height: 49px;
    display: block;
}

/* 販売物件ページ */
.common_page_property ul .list+.list {
    margin-top: 100px;
}

.common_page_property .cont {
    display: grid;
    grid-template-columns: 500px 1fr;
    gap: 0 50px;
}

.common_page_property .cont .img_box img {
    width: 100%;
    object-fit: cover;
    height: 100%;
    aspect-ratio: 3/2;
    min-width: 0;
}

.common_page_property .property_slider_area .slick-arrow {
    width: 60px;
    aspect-ratio: 1;
    background-color: #fff;
    display: block;
    border-radius: 100%;
    border: 3px solid var(--main-color);
    position: absolute;
    top: 50%;
    z-index: 2;
    cursor: pointer;
    transition: all .3;
}

.common_page_property .property_slider_thumbnail .slick-track {
    margin-left: unset;


}

.common_page_property .property_slider_area .slick-arrow:hover {
    background-color: var(--main-color);
}

.common_page_property .property_slider_area .slick-arrow::before {
    content: '';
    width: 13px;
    aspect-ratio: 1;
    min-width: 0;
    position: absolute;
    top: 50%;
    left: 18px;
    translate: 0% -50%;
    border-right: 4px solid var(--main-color);
    border-bottom: 4px solid var(--main-color);
    rotate: -45deg;
    transition: all .3s;
}

.common_page_property .property_slider_area .slick-arrow:hover::before {
    border-color: #fff;
}

.common_page_property .property_slider_area .slick_prev.slick-arrow::before {
    transform: scale(-1.1);
    left: 20px;
}

.common_page_property .property_slider_area .slick_prev {
    left: -30px;
}

.common_page_property .property_slider_area .slick_next {
    right: -30px;
}

.common_page_property .property_slider_thumbnail {
    margin-top: 1em;
}

.common_page_property .property_slider_thumbnail .slick-slide.slick-current {
    position: relative;
}

.common_page_property .property_slider_thumbnail .slick-slide.slick-current::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border: 3px solid var(--main-color);
}

.common_page_property .cont .text_box .ttl {
    font-size: 30px;
    letter-spacing: .06em;
    margin-bottom: .8em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

#single_property_page .common_page_property .cont .text_box .ttl {
    display: block;
}

.common_page_property .cont .text_box ul li {
    display: grid;
    grid-template-columns: 10% 1fr;
    gap: 0 15px;
    align-items: baseline;
}

.common_page_property .cont .text_box ul li+li {
    margin-top: 10px;
}

.common_page_property .cont .text_box ul li .catch {
    font-size: 16px;
    letter-spacing: .03em;
}

.common_page_property .cont .text_box ul li .price {
    font-size: 40px;
    color: #ff0000;
    letter-spacing: 0em;
    font-weight: 900;
}

.common_page_property .cont .text_box ul li .price .small {
    font-size: 20px;
    color: #1A1311;
    display: inline-block;
    margin-left: .2em;
}

.common_page_property .cont .text_box ul li .text {
    font-size: 20px;
    letter-spacing: .03em;
    font-weight: 700;
}

.common_page_property .cont .text_box .common_btn_area {
    margin-top: 40px;
}

.common_page_property .cont .text_box .common_btn_area .common_btn_1 {
    padding: 1.4em 1em;
    width: 280px;
    font-size: 20px;
}

.common_page_property .cont .text_box .common_btn_area .common_btn_2 {
    padding: 1.4em 1em;
    margin-left: 10px;
    width: 280px;
    font-size: 20px;
}

.common_page_property .cont .text_box .common_btn_area .common_text_mini {
    font-size: .8em;
}

.common_page_property .property_box {
    margin-top: 60px;
}

.common_page_property .property_box .theme {
    font-size: 24px;
    letter-spacing: .06em;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 15px;
    justify-content: space-between;
    margin-bottom: 1em;
}

.common_page_property .property_box .theme::after {
    content: "";
    display: block;
    width: 72%;
    height: 3px;
    border-bottom: 3px dotted #000;
}

.common_page_property .property_box .item_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
}

.common_page_property .property_box .item_box .item ul li {
    display: flex;
    gap: 0 20px;
    align-items: center;
    border-bottom: 1px solid #EFEFEF;
    font-weight: 500;
}

.common_page_property .property_box .item_box .item ul li .catch {
    font-size: 16px;
    letter-spacing: .03em;
    width: 150px;
    min-block-size: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.common_page_property .property_box .item_box .item ul li:nth-child(even) .catch {
    background-color: #f8f8f8;
}

.common_page_property .property_box .item_box .item ul li .text {
    font-size: 18px;
    letter-spacing: .03em;
}

.common_page_property .property_box .item_box .item ul li:nth-child(odd) .catch {
    background-color: #EEEEEE;
}

/* ここまで */


/* コラムページ */
.archive_columns_list .link .content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 10px 20px 0;
    border-bottom: 1px solid #cecccc;
    gap: 0 20px;
}

.archive_columns_list .link .content .text_box {
    display: flex;
    gap: 0 50px;
    align-items: baseline;
}

.archive_columns_list .link .content .text_box .text_area {
    display: flex;
    gap: 20px;
    align-items: baseline;
    flex-shrink: 0;
}

.archive_columns_list .link .content .text_box .text_area .date {
    font-size: 14px;
    letter-spacing: .03em;
    color: #999;
}

.archive_columns_list .link .content .text_box .text_area .column {
    padding: .6em 1.2em;
    background-color: #307BB6;
    border-radius: 20px;
    color: #fff;
    font-size: 14px;
    line-height: 1;
}

.archive_columns_list .link .content .text_box .ttl {
    font-size: 18px;
    letter-spacing: .06em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    transition: .3s;
}

.archive_columns_list .link:hover .content .text_box .ttl {
    color: var(--main-color);
}

.archive_columns_list .link .content .icon {
    width: 40px;
    flex-shrink: 0;
}

.archive_columns_list .link .content .icon img {
    aspect-ratio: 3/2;
    min-width: 0;
    width: 100%;
}

#columns_sec {
    padding: 100px 0;
}

#columns_sec .ttl_box {
    margin-bottom: 15px;
}

#columns_sec .ttl_box .ttl {
    font-size: 30px;
    letter-spacing: .03em;
    font-weight: 900;
}

#columns_sec .ttl_box .ttl .color {
    color: var(--main-color);
    font-size: 36px;
}

/* 物件お問合せ */

.page-id-695 #page_contact .common-contactform .info_ttl {
    margin: 0 0 1em 7.4em;
    font-size: 20px;
}

.page-id-695 #page_contact .mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: unset;
}

.page-id-695 #page_contact .form_attention {
    font-size: 14px;
    margin: 0.7em 0;

}

.page-id-698 #page_contact .common-contactform .info_ttl {
    margin: 0 0 1em 7.4em;
    font-size: 20px;
}

.page-id-698 #page_contact .mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: unset;
}

.page-id-698 #page_contact .form_attention {
    font-size: 14px;
    margin: 0.7em 0;
}

.no_text {
    font-size: 15px;
}

/* スタッフ紹介ページ */
.page_title_box .title {
    display: flex;
    gap: 30px;
    align-items: center;
    font-family: var(--main-font);
    font-weight: 900;
    font-size: 32px;
    color: var(--main-color);
    white-space: nowrap;
}

.page_title_box .title::after {
    content: '';
    border-bottom: dotted 3px var(--text-color);
    height: 3px;
    width: 100%;
}

.page_staff .staff_cont {
    margin-top: 50px;
}

.page_staff .staff_cont .item+.item {
    margin-top: 120px;
}

.page_staff .staff_cont .item .item_box {
    display: flex;
    gap: 0 60px;
}

.page_staff .staff_cont .item .item_box .img {
    width: 600px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    flex-shrink: 0;
}

.page_staff .staff_cont .item .item_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_staff .staff_cont .item .item_box .text_area {
    width: 100%;
}

.page_staff .staff_cont .item .item_box .text_area .name {
    font-size: 24px;
    line-height: 1.7;
    letter-spacing: .05em;
    border-bottom: 2px solid var(--main-color);
    margin-bottom: 1em;
}

.page_staff .staff_cont .item .item_box .text_area .name::first-letter {
    font-size: 26px;
    color: var(--main-color);
}

.page_staff .staff_cont .item .item_box .text_area .en {
    font-family: var(--number-font);
    display: inline-block;
    margin-left: .5em;
}

.page_staff .staff_cont .item .item_box .text_area .sub_text {
    margin-top: .6em;
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: .05em;
    font-weight: 600;
    border-bottom: 1px solid #ccc;
    padding-bottom: .6em;
}

.page_staff .staff_cont .item .comment_box {
    margin: 60px auto 0;
    width: 1000px;
    background-color: #FFFDDB;
    border-radius: 20px;
    padding: 60px 70px;
    outline: 4px solid #fff;
    outline-offset: -10px;
}

.page_staff .staff_cont .item .comment_box .comment {
    text-align: center;
    font-size: 24px;
    line-height: 1.8;
    font-weight: 600;
    letter-spacing: .05em;
}

.page_staff .staff_cont .item .comment_box .text {
    font-size: 15px;
    line-height: 1.7;
    letter-spacing: .05em;
    margin-top: 20px;
    font-weight: 500;
}

.common_contact .contact_heading .big {
    line-height: 1;
}

#page_realestate.realstate_single .realestate_list .realestate_item {
    margin-bottom: 20px;
}

#top_review .review_list .link {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 6px;
    overflow: hidden;
    display: block;
    transition: .3s;
}

#top_review .review_list .link .text_box {
    padding: 20px;
}

#page_voice .review_list .text_box {
    margin-top: 50px;
}

#page_voice .cont {
    margin-top: 50px;
}

#page_voice .cont .ttl {
    text-align: center;
    font-size: 22px;
    letter-spacing: .03em;
}

#page_voice .review_list .text_box .review_title {
    font-size: 20px;
    letter-spacing: .06em;
    color: var(--main-color);
    font-weight: 900;
    margin-bottom: 0.5em;
}

#page_voice .review_list .text_box .text {
    font-size: 16px;
    letter-spacing: .03em;
    margin-bottom: .5em;
}

#page_voice .review_list .text_box .catch {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .03em;
    margin-bottom: .5em;
}


.page_body .table_box table {
    border-spacing: 5px 8px;
}

.page_body .table_box table tr {
    margin-bottom: 20px;
}

.page_body .table_box table tr th {
    width: 12%;
    background-color: #4b4848;
    color: #fff;
    font-size: 16px;
    letter-spacing: .03em;
    font-weight: 700;
    padding: 10px;
}

.page_body .table_box table tr td {
    width: 23%;
    background-color: #EEEEEE;
    font-size: 15px;
    letter-spacing: .03em;
    font-weight: 500;
    padding: 16px;
}

.page_body .table_box table tr+tr {}

.page_body .table_box table {
    border-spacing: 5px 8px;
}

.page_body .table_box table tr {}

.page_body .table_box table tr th {
    width: 10%;
    background-color: #4b4848;
    color: #fff;
    font-size: 18px;
    letter-spacing: .03em;
    font-weight: 700;
    padding: 13px;
}

.page_body .table_box table tr td {
    width: 30%;
    background-color: #EEEEEE;
    font-size: 16px;
    letter-spacing: .03em;
    font-weight: 500;
    padding: 15px;
}


.page_body .shop_info .shop_info_img {
    display: grid;
    grid-template-columns: repeat(2, 450px);
    gap: 0 30px;
    margin-bottom: 15px;
    justify-content: center;
}


/* new header */

.ren_header {
    position: fixed;
    width: 100%;
    height: 142px;
    inset: 0;
    z-index: 100;
}

.ren_header .cont {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    align-items: center;
    padding: 20px 50px 20px 50px;
    background-color: #FFFFFF;
}

.ren_header .cont .logo_box {
    width: 350px;
    flex-shrink: 0;
}

.ren_header .cont .logo_box a {
    width: 100%;
    display: block;
}

.ren_header .cont .logo_box a img {
    width: 100%;
}

.ren_header .cont .item {
    display: flex;
    align-items: center;
    gap: 0 20px;
}

.ren_header .cont .item .text_box .text {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
}

.ren_header .cont .item .text_box .tel_box .tel {
    font-size: 32px;
    font-weight: 700;
    position: relative;
    display: flex;
    align-items: baseline;
    gap: 0 6px;
    line-height: 1;
    letter-spacing: 0;
}

.ren_header .cont .item .text_box .tel_box .text {
    font-size: 12px;
    font-weight: 500;
    padding: .5em 0.8em;
    border: 1px solid #1A1311;
    color: #1A1311;
    letter-spacing: 0;
}

.common_contact_box {
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.common_contact_box .link {
    display: flex;
    width: 250px;
    min-block-size: 60px;
    background-color: #4B4848;
    padding: 0 20px;
    align-items: center;
    position: relative;
    justify-content: space-between;
    transition: .3s;
    box-shadow: 3px 3px 0px #fff;
    border: 1px solid #4B4848;
}

.common_contact_box .link:nth-child(2) {
    background-color: #2E2928;
}

.common_contact_box .link .icon {
    width: 22px;
    height: 16px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.common_contact_box .link .icon img {
    width: 100%;
}

.common_contact_box .link .text {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
}

.common_contact_box .link::after {
    content: "";
    display: block;
    width: 6px;
    height: 8px;
    background-color: #fff;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.ren_header .cont .item .text_box .tel_box {
    display: flex;
    align-items: center;
    gap: 0 10px;
    margin-bottom: 8px;
    justify-content: space-between;
}

.ren_header .cont .item .text_box .tel_box .tel::before {
    content: "";
    display: block;
    width: 16px;
    height: 19px;
    background-image: url("/wp-content/themes/child/image/icon_tel.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

.ren_header .header_menu_list {
    background-color: #EEEEEE;
    padding: 12px 0;
}

.ren_header .header_menu_list ul {
    display: flex;
    /* gap: 137px; */
    gap: 97px;
}

.ren_header .header_menu_list ul a {
    display: block;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
}

.top_mv {
    /* background-image: url("/wp-content/themes/child/image/mv_bg_img.svg"); */
    /* background-size: cover; */
    /* background-repeat: no-repeat; */
    padding: 70px 0;
    position: relative;
}

.top_mv .cont .text_box .catch {
    font-size: 16px;
    font-weight: 700;
    border: 1px solid #fff;
    width: fit-content;
    padding: 0.2em 1.3em;
    margin-bottom: 0.7em;
}

.top_mv .cont .text_box .ttl {
    font-size: 24px;
    letter-spacing: .03em;
    font-weight: 700;
    margin-bottom: 0.7em;
}

.top_mv .cont .text_box .ttl .line {
    display: block;
    font-size: 58px;
    letter-spacing: .03em;
    line-height: 1;
    background-color: #1A1311;
    color: #DDDDDD;
    padding: 0.08em 0.3em 0.15em .3em;
    width: fit-content;
    margin-top: 0.2em;
}

.top_mv .cont .text_box .ttl .line .color {
    color: #fff;
    line-height: 1;
    display: inline-block;
}

.top_mv .cont .text_box .ttl .line+.line {
    margin-top: 10px;
}

.top_mv .cont .text_box .ttl .line .color .size {
    font-size: 73px;
    line-height: 1;
    display: inline-block;
    transform: translateY(0.05em);
    position: relative;
}

.top_mv .cont .text_box .note {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .03em;
    margin-bottom: 1.3em;
    line-height: 1.54;
}

.common_btn_box {
    width: fit-content;
}

.common_btn_box .theme {
    font-size: 24px;
    letter-spacing: .03em;
    font-weight: 900;
    width: fit-content;
    margin: 0 auto 0.2em;
    position: relative;
    display: flex;
    align-items: baseline;
}

.common_btn_box .theme .size {
    font-size: 48px;
    line-height: 1;
    margin-right: 8px;
    font-style: italic;
}

.common_btn_box .theme::before,
.common_btn_box .theme::after {
    content: "";
    display: block;
    width: 2px;
    height: 25px;
    background-color: #ffffff;
}

.common_btn_box .theme::before {
    margin-right: 20px;
    rotate: -15deg;
}

.common_btn_box .theme::after {
    margin-left: 20px;
    rotate: 15deg;
}

.common_btn_box .theme .dot {
    position: relative;
    background-image: radial-gradient(circle at center, #ffffff 20%, transparent 20%);
    /* 点の色とサイズ調整 */
    background-position: top left;
    /* 点の位置 */
    background-repeat: repeat-x;
    /* 横方向に繰り返し */
    /* 点の間隔とサイズ調整 */
    padding-top: .4em;
    background-size: 1em 0.6em;
}

.common_btn_box .mini {
    font-size: 12px;
    letter-spacing: .01em;
    margin-top: .9em;
    font-weight: 500;
}

.top_mv .bg_img_slider {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
}

.top_mv .cont .text_box {
    position: relative;
    z-index: 1;
    color: #fff;
}

.top_mv .bg_img_slider::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgb(0 0 0 / 60%), transparent);
    width: 100%;
    height: 100%;
    z-index: 1;
}

.top_mv .img img,
.top_mv .img video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_ren_contact_sec {
    background-image: url("/wp-content/themes/child/image/common_contact_img.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 58px 0 30px;
    position: relative;
    /* z-index: 1; */
}

.common_ren_contact_sec .common_contact_box .link {
    width: 320px;
    min-block-size: 70px;
}


.common_ren_contact_sec .contact .ttl_box .ttl {
    color: #fff;
    font-size: 32px;
    border-bottom: 5px solid #fff;
    width: fit-content;
    margin: 0 auto 1em;
    line-height: 1;
}

.common_ren_contact_sec .contact .ttl_box .ttl .size {
    font-size: 64px;
    font-weight: 700;
    font-style: italic;
    margin-right: 8px;
}

.common_ren_contact_sec .contact .text_box {
    display: flex;
    gap: 0 90px;
    align-items: center;
    margin-left: 100px;
}

.common_ren_contact_sec .contact .text_box .tel_box .theme {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    position: relative;
    display: flex;
    align-items: baseline;
    justify-content: center;
    margin-bottom: 0.7em;
}

.common_ren_contact_sec .contact .text_box .tel_box .theme::before,
.common_ren_contact_sec .contact .text_box .tel_box .theme::after {
    content: "";
    display: block;
    width: 2px;
    height: 25px;
    background-color: #fff;
}

.common_ren_contact_sec .contact .text_box .tel_box .theme::after {
    margin-left: 20px;
    rotate: 15deg;
}

.common_ren_contact_sec .contact .text_box .tel_box .theme::before {
    margin-right: 20px;
    rotate: -15deg;
}

.common_ren_contact_sec .contact .text_box .tel_box .tel {
    color: #fff;
    font-size: 48px;
    font-weight: 700;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 10px;
    margin-bottom: 14px;
    line-height: 1;
}

.common_ren_contact_sec .contact .text_box .tel_box .tel::before {
    content: "";
    display: block;
    mask-image: url("/wp-content/themes/child/image/icon_tel.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 23px;
    height: 26px;
    background-color: #fff;
}

.choose_sec .choose_box .text_box .ttl .mini {
    display: inline-block;
    font-size: 48px;
}

.common_ren_contact_sec .contact .text_box .tel_box .text {
    color: #fff;
    font-size: 12px;
    margin-left: 2.5em;
    line-height: 1.5;
    font-weight: 400;
}

.common_ren_contact_sec .contact .text_box .common_btn_box .theme {
    color: #fff;
    margin-bottom: 15px;
}

.common_ren_contact_sec .contact .text_box .common_btn_box .theme::before,
.common_ren_contact_sec .contact .text_box .common_btn_box .theme::after {
    background-color: #fff;
}

.common_ren_contact_sec .note {
    color: #fff;
    font-size: 12px;
    margin-top: 2em;
    width: fit-content;
    margin-left: auto;
    border-bottom: 1px solid #fff;
}

.common_ren_contact_sec .contact .text_box .common_btn_box .common_contact_box {
    gap: 0 30px;
}

.common_ren_contact_sec .contact .text_box .common_btn_box .common_contact_box .link::before {
    /* content: ""; */
    /* position: absolute; */
    /* background-color: #fff; */
    /* width: 100%; */
    /* height: 100%; */
    /* z-index: -1; */
    /* left: 3px; */
    /* bottom: -3px; */
}

.top_mv::before {
    /* content: ""; */
    /* position: absolute; */
    /* background-image: url(/wp-content/themes/child/image/mv_bg_img.svg); */
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    inset: 0;
    opacity: .7;
}

.choose_sec .head_box {
    background: linear-gradient(to bottom, rgba(221, 221, 221, 1) 0%, rgba(221, 221, 221, 0.3) calc(100% - 40px), rgba(221, 221, 221, 0.15) calc(100% - 20px), rgba(221, 221, 221, 0) 100%);
    padding-top: 133px;
    position: relative;
    z-index: 0;
    padding-bottom: 70px;
}

.choose_sec {
    margin-bottom: 100px;
}

.choose_sec .head_box .img_box {
    position: relative;
    margin-bottom: 60px;
    z-index: 1;
}

.choose_sec .head_box .img_box .icon {
    width: 360px;
    margin: 0 auto;
    display: block;
}

.choose_sec .head_box .img_box .icon img {
    width: 100%;
}

.choose_sec .head_box .img_box .speech_bubble .bg_text {
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    color: #fff;
    width: fit-content;
    padding: 30px 64px 58px 64px;
    font-size: 24px;
    font-weight: 700;
    position: absolute;
}



.choose_sec .head_box .img_box .speech_bubble .bg_text1 {
    background-image: url(/wp-content/themes/child/image/speech_bubble1.png);
    top: 0px;
    left: 160px;
}

.choose_sec .head_box .img_box .speech_bubble .bg_text2 {
    background-image: url(/wp-content/themes/child/image/speech_bubble2.png);
    top: 165px;
    left: 110px;
}

.choose_sec .head_box .img_box .speech_bubble .bg_text3 {
    background-image: url(/wp-content/themes/child/image/speech_bubble3.png);
    top: 13px;
    right: 130px;
}

.choose_sec .head_box .img_box .speech_bubble .bg_text4 {
    background-image: url(/wp-content/themes/child/image/speech_bubble4.png);
    top: 190px;
    right: 86px;
}

.choose_sec .head_box::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: url("/wp-content/themes/child/image/worry_bg_img.svg");
    z-index: 0;
    opacity: .7;
}

.choose_sec .head_box .text {
    font-size: 48px;
    font-weight: 900;
    color: #1A1311;
    text-align: center;
    position: relative;
    z-index: 1;
}

.choose_sec .head_box .text .dot {
    background-image: radial-gradient(circle at center, #1A1311 20%, transparent 20%);
    background-position: top left;
    background-repeat: repeat-x;
    padding-top: 0.3em;
    background-size: 1em 0.6em;
}

.choose_sec .head_box .text .line {
    border-bottom: 5px solid #1A1311;
}

.choose_sec .head_box::after {
    content: "";
    position: absolute;
    width: 500px;
    height: 130px;
    background-color: #fff;
    bottom: 28px;
    left: 50%;
    translate: -50%;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}

.choose_sec .choose_box {
    padding-top: 15px;
}

.choose_sec .choose_box .text_box {
    margin-bottom: 120px;
}

.choose_sec .choose_box .text_box .ttl {
    font-weight: 900;
    font-size: 56px;
    text-align: center;
    margin-bottom: 0.63em;
}

.choose_sec .choose_box .text_box .ttl .line {
    display: block;
    font-size: 32px;
    background-image: radial-gradient(circle at center, #1A1311 20%, transparent 20%);
    background-position: top left;
    background-repeat: repeat-x;
    padding-top: .4em;
    background-size: 1em 0.6em;
    width: fit-content;
    margin: 0 auto;
}

.choose_sec .choose_box .text_box .ttl .line::before {
    content: "";
}

.choose_sec .choose_box .text_box .catch {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 1em;
}

.choose_sec .choose_box .text_box .catch .size {
    font-size: 56px;
    font-style: italic;
    margin-right: 0.1em;
}

.choose_sec .choose_box .text_box .border {
    padding: 4px 17px;
    border: 1px solid #1A1311;
    font-size: 32px;
    font-weight: 700;
}

.choose_sec .choose_box .text_box .theme {
    text-align: center;
}

.choose_sec .choose_box .text_box .theme .border+.border {
    margin-left: 20px;
}

.choose_sec .choose_box .text_box .theme+.theme {
    margin-top: 22px;
}

.choose_sec .choose_box .text_box .text {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    line-height: 1;
    margin-top: 1.2em;
}

.choose_sec .choose_box .text_box .text .line {
    font-size: 32px;
    border-bottom: 5px solid #1A1311;
}

.choose_sec .choose_box .cont {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 20px;
}

.choose_sec .choose_box .cont .item {
    border: 1px solid #1A1311;
    padding: 52px 15px 13px 15px;
    position: relative;
    /* display: flex; */
    /* flex-direction: column; */
}

.choose_sec .choose_box .cont .item .speech_bubble {
    background-color: #1A1311;
    padding: 10px 33px 12px;
    width: fit-content;
    position: absolute;
    top: -30px;
    left: 50%;
    translate: -50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.choose_sec .choose_box .cont .item .speech_bubble::after {
    content: "";
    position: absolute;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    height: 10px;
    width: 14px;
    background-color: #1A1311;
    bottom: -9px;
    left: 50%;
    translate: -50%;
}

.choose_sec .choose_box .cont .item .speech_bubble .text {
    font-size: 16px;
    color: #fff;
    font-weight: 700;
}

.choose_sec .choose_box .cont .item .speech_bubble .text .num {
    font-size: 24px;
    font-weight: 700;
    transform: translateY(0.05em);
    display: inline-block;
    margin-left: .1em;
}

.choose_sec .choose_box .cont .item .inner {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.choose_sec .choose_box .cont .item .catch {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 0.9em;
    line-height: 2.1;
}

.choose_sec .choose_box .cont .item .catch .size {
    font-size: 32px;
    font-weight: 900;
    display: inline-block;
    line-height: 1;
}

.choose_sec .choose_box .cont .item .catch .line {
    border-bottom: 1px solid #1A1311;
}

.choose_sec .choose_box .cont .item .choose_btn {
    background-color: #EEEEEE;
}

.choose_sec .choose_box .cont .item .choose_btn .link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 18px 30px 18px 0;
    position: relative;
}

.choose_sec .choose_box .cont .item .choose_btn .link::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 10px;
    background-color: #1A1311;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    margin-left: 10px;
    right: 30px;
    top: 50%;
    translate: 0 -50%;
}

.choose_sec .choose_box .cont .item .catch .big {
    font-size: 56px;
    font-weight: 900;
    font-style: italic;
    display: inline-block;
    line-height: 1;
    margin-bottom: .1em;
}

.choose_sec .choose_box .cont .item .text_area {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}

.reason_sec .reason_list ul li {
    position: relative;
}

.reason_sec .reason_list ul li .text_box {
    padding-top: 71px;
}

.reason_sec .reason_list ul li .text_box .en_text {
    font-size: 40px;
    font-weight: 700;
    font-style: italic;
    line-height: 1;
    position: relative;
    margin: 0 0 0 50px;
}

.reason_sec .reason_list ul li .text_box .en_text .num {
    display: inline-block;
    font-size: 72px;
}

.reason_sec .reason_list ul li .text_box .en_text::after {
    content: "";
    position: absolute;
    background-color: #000;
    width: 700px;
    height: 10px;
    clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 100%, 0 100%);
    bottom: 1px;
    left: -50px;
}

.reason_sec .reason_list ul li .text_box .text_area {
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.08);
    padding: 50px 0 60px 50px;
    width: 100%;
}

.reason_sec .reason_list ul li .img {
    position: absolute;
    height: 460px;
    width: calc(50% - -20px);
    top: 0;
    right: -50px;
}

.reason_sec .reason_list ul li:nth-child(3) {
    margin-top: 91px;
}

.reason_sec .reason_list ul li .text_box .text_area .theme {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 1em;
}

.reason_sec .reason_list ul li .text_box .text_area .text {
    width: 606px;
    font-size: 16px;
    font-weight: 500;
    color: #777272;
    line-height: 1.9;
}

.reason_sec .reason_list ul li .text_box .text_area .theme .size {
    font-size: 40px;
    font-weight: 900;
}

.reason_sec .reason_list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reason_sec .reason_list ul li .text_box .text_area {
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.08);
    padding: 50px 0 60px 50px;
    width: 100%;
    position: relative;
    /* z-index: 1; */
    background-color: #fff;
}

.reason_sec .reason_list ul li .img {
    position: absolute;
    height: 460px;
    width: calc(50% - -20px);
    top: 0;
    right: -32px;
}

.reason_sec .reason_list ul li .text_box .text_area .theme {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 1em;
    width: 606px;
}

.reason_sec .reason_list ul li .text_box .text_area .text {
    width: 606px;
    font-size: 16px;
    font-weight: 500;
    color: #777272;
    line-height: 1.9;
}

.reason_sec .reason_list ul li .text_box .text_area .theme .size {
    font-size: 40px;
    font-weight: 900;
    display: inline-block;
}

.reason_sec .reason_list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reason_sec {
    position: relative;
    margin-bottom: 120px;
    overflow: hidden;
}

.reason_sec::before {
    content: "";
    position: absolute;
    background: url("/wp-content/themes/child/image/reason_bg_img.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    left: 0;
    top: 318px;
    width: calc(50% + 570px);
    height: 1140px;
    z-index: -1;
}

.reason_sec .reason_list ul li:nth-child(even) .en_text {
    text-align: right;
    margin: 0 50px 0 0;
}

.reason_sec .reason_list ul li:nth-child(even) .img {
    left: -50px;
    top: 100px;
}

.reason_sec .reason_list ul li:nth-child(even) .en_text::after {
    right: -50px;
    margin-left: auto;
    clip-path: polygon(16px 0, 100% 0, 100% 100%, 0% 100%);
}

.reason_sec .reason_list ul li:nth-child(even) .text_area {
    padding: 50px 50px 60px 0;
    margin-left: auto;
}

.reason_sec .reason_list ul li:nth-child(even) .text_box .text_area .text {
    margin-left: auto;
}

.reason_sec .reason_list ul li:nth-child(even) .text_box .text_area .theme {
    text-align: left;
    margin-left: auto;
    line-height: 1.4;
}

.reason_sec .reason_list {
    margin-bottom: 35px;
}

.reason_sec .reason_btn .link {
    display: flex;
    font-size: 16px;
    font-weight: 700;
    width: 360px;
    min-block-size: 80px;
    margin: 0 auto;
    justify-content: center;
    align-items: center;
    border: 1px solid #1A1311;
    position: relative;
}

.reason_sec .reason_btn .link::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 12px;
    background-color: #1A1311;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    right: 30px;
    top: 50%;
    translate: 0 -50%;
}

.Portfolio_sec {
    padding: 120px 0;
    background-color: #EEEEEE;
}

.Portfolio_sec .head_box {
    display: flex;
    justify-content: space-between;
    align-items: self-end;
    margin-bottom: 35px;
}

common_ttl_box .ttl {
    font-size: 48px;
    font-weight: 700;
    margin-bottom: 0.32em;
}

.Portfolio_sec .head_box .ttl_box .catch {
    font-size: 16px;
    line-height: 1.6;
}

.Portfolio_sec .head_box .Portfolio_box .link {
    width: 360px;
    display: flex;
    min-block-size: 80px;
    background-color: #fff;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    position: relative;
    border: 1px solid #DDDDDD;
}

.Portfolio_sec .head_box .Portfolio_box .link::before {
    content: "";
    width: 10px;
    height: 12px;
    position: absolute;
    background-color: #1A1311;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    right: 30px;
    top: 50%;
    translate: 0 -50%;
}

.Portfolio_sec .porfolio_table_box table tr th,
.Portfolio_sec .porfolio_table_box table tr td {
    padding: 20px 0;
    text-align: center;
    font-weight: 700;
}

.Portfolio_sec .porfolio_table_box table tr th {
    background-color: #EAEAEA;
    font-size: 20px;
}

.Portfolio_sec .porfolio_table_box table tr th:nth-child(1) {
    width: 23.3%;
}

.Portfolio_sec .porfolio_table_box table tr th:nth-child(2) {
    width: 10.5%;
    border-left: 1px solid #fff;
}

.Portfolio_sec .porfolio_table_box table tr th:nth-child(3) {
    width: 10.7%;
    border-left: 1px solid #fff;
}

.Portfolio_sec .porfolio_table_box table tr th:nth-child(4) {
    width: 16.2%;
    border-left: 1px solid #fff;
}

.Portfolio_sec .porfolio_table_box table tr th:nth-child(5) {
    width: 11.2%;
}

.Portfolio_sec .porfolio_table_box table tr td {
    background-color: #fff;
    font-size: 14px;
}

.Portfolio_sec .porfolio_table_box table tr:nth-child(odd) td {
    background-color: #FAFAFA;
}

.Portfolio_sec .porfolio_table_box {
    overflow: scroll;
    height: 400px;
}

.Portfolio_sec .porfolio_table_box table {
    width: 100%;
}

.common_ttl_box .ttl .mini {
    font-size: 32px;
}

.common_ttl_box .catch {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
}

.common_ttl_box .ttl {
    font-size: 48px;
    margin-bottom: 30px;
    font-weight: 700;
    line-height: 1.1;
}

.recommendation_sec {
    padding: 120px 0 80px;
}

.recommendation_sec .common_ttl_box .ttl {
    text-align: center;
    line-height: 1.2;
}

.recommendation_sec .recommendation_list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.recommendation_sec .recommendation_list ul li {
    border: 1px solid #DDDDDD;
    position: relative;
}

.recommendation_sec .recommendation_list ul li .img {
    width: 100%;
    height: 225px;
    margin-bottom: 31px;
}

.recommendation_sec .recommendation_list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.recommendation_sec .recommendation_list ul li .ttl_box {
    display: flex;
    align-items: center;
    margin-left: 38px;
}

.recommendation_sec .recommendation_list ul li .num_box {
    padding-right: 30px;
    margin-right: 30px;
    border-right: 1px solid #000;
}

.recommendation_sec .recommendation_list ul li .ttl_box .num_box .en_text {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0;
}

.recommendation_sec .recommendation_list ul li .ttl_box .num_box .num {
    font-size: 48px;
    font-weight: 700;
    line-height: 1;
}

.recommendation_sec .recommendation_list ul li .link {
    display: block;
    padding: 35px 20px 45px;
}

.recommendation_sec .recommendation_list ul li .ttl_box .theme_box .theme {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: .2em;
}

.recommendation_sec .recommendation_list ul li .ttl_box .theme_box .theme .size {
    font-size: 32px;
}

.recommendation_sec .recommendation_list ul li .ttl_box .theme_box .catch {
    font-size: 16px;
    letter-spacing: .05em;
    text-align: center;
}

.recommendation_sec .recommendation_list ul li .text {
    font-size: 14px;
    color: #777272;
    line-height: 1.6;
    margin-top: 1.4em;
    padding-top: 1.4em;
    border-top: 1px dashed #DDDDDD;
    letter-spacing: .03em;
}

.recommendation_sec .recommendation_list ul li::before {
    content: "";
    position: absolute;
    width: 30px;
    height: 30px;
    background-color: #1A1311;
    bottom: 10px;
    right: 10px;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

.consideration_sec {
    position: relative;
}

.consideration_sec .cont {
    display: flex;
    gap: 0 81px;
    align-items: center;
    z-index: 1;
    padding: 79px 0;
    background-color: #EEEEEE;
    position: relative;
    margin-bottom: 120px;
    justify-content: center;
}

.consideration_sec .cont .text_box {
    width: 680px;
}

.consideration_sec .cont .common_ttl_box {
    flex-shrink: 0;
}

.consideration_sec .cont .common_ttl_box .ttl {
    line-height: 1.3;
    margin: unset;
    position: relative;
}

.consideration_sec .cont .text_box .text_area+.text_area {
    margin-top: 50px;
}

.consideration_sec .cont .text_box .text_area .theme {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    display: flex;
    gap: 0 10px;
    align-items: center;
    margin-bottom: .4em;
}

.consideration_sec .cont .text_box .text_area .text {
    font-size: 16px;
    color: #777272;
    line-height: 1.7;
    margin-bottom: 1.8em;
    font-weight: 500;
}

.consideration_sec .cont .text_box .text_area .theme::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-color: #1A1311;
    rotate: 45deg;
}

.consideration_sec .cont .text_box .text_area .link {
    display: block;
    font-style: italic;
    font-size: 16px;
    font-weight: 700;
    position: relative;
    width: fit-content;
    margin-left: auto;
    padding-right: .7em;
}

.consideration_sec .cont .text_box .text_area .link::after {
    content: "";
    position: absolute;
    background-color: #000;
    width: 100%;
    height: 5px;
    clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 100%, 0 100%);
    bottom: -2px;
    left: 1px;
}

.consideration_sec .cont::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: url("/wp-content/themes/child/image/consideration_bg_img.svg");
    opacity: .1;
    z-index: -1;
}

/* footer */

.ren_footer {
    background-color: #1A1311;
    padding: 120px 0 60px;
}

.ren_footer .head_box {
    display: flex;
    gap: 134px;
}

.ren_footer .head_box .text_box .ren_footer_logo {
    background-color: #fff;
    width: 450px;
    margin-bottom: 30px;
    padding: 0 10px;
}

.ren_footer .head_box .text_box .ren_footer_logo img {
    width: 100%;
}

.ren_footer .head_box .text_box .contact_text {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    display: flex;
    gap: 0 10px;
    align-items: center;
    margin-bottom: 10px;
}

.ren_footer .head_box .text_box .contact_text::before {
    content: "";
    display: block;
    width: 10px;
    height: 1px;
    background-color: #fff;
}

.ren_footer .head_box .text_box .tel_box .text {
    color: #fff;
    font-size: 13px;
    padding: 0.5em 0.8em;
    border: 1px solid #fff;
}


.ren_footer .head_box .text_box .tel_box {
    display: flex;
    align-items: center;
    gap: 0 12px;
}

.ren_footer .head_box .text_box .tel_box .tel {
    display: flex;
    color: #fff;
    position: relative;
    gap: 0 7px;
    font-size: 48px;
    font-weight: 700;
    align-items: center;
}

.ren_footer .head_box .text_box .tel_box .tel::before {
    content: "";
    display: block;
    width: 23px;
    height: 26px;
    mask-image: url(/wp-content/themes/child/image/icon_tel.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-color: #fff;
}

.ren_footer .head_box .text_box .note {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
}

.ren_footer .head_box .text_box .common_contact_box {
    margin: 30px 0 15px;
}

.ren_footer .head_box .access_box .map {
    width: 590px;
    height: 260px;
    margin-bottom: 20px;
    position: relative;
}

.ren_footer .head_box .access_box .map::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    mix-blend-mode: color;
    z-index: 2;
    background: #FFFFFF;
    pointer-events: none;
}

.ren_footer .head_box .access_box .map iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ren_footer .head_box .access_box .access_area .theme {
    color: #fff;
    font-weight: 500;
    font-size: 16px;
}

.ren_footer .head_box .access_box .access {
    color: #fff;
    font-size: 16px;
    margin-bottom: 0.9em;
    font-weight: 500;
}

.ren_footer .head_box .access_box .access_area .text_area {
    padding-left: 1.9em;
    margin-left: 1.9em;
    border-left: 1px solid #fff;
}

.ren_footer .head_box .access_box .access_area .text {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0 5px;
}

.ren_footer .head_box .access_box .access_area .text+.text {
    margin-top: 2px;
}

.ren_footer .head_box .access_box .access_area {
    display: flex;
    align-items: center;
}

.ren_footer .head_box .access_box .access_area .text::before {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    background-color: #fff;
    border-radius: 50%;
}

.ren_footer .bottom_box {
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #fff;
}

.ren_footer .bottom_box .footer_list ul {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin: 0 50px 60px 0;
}

.ren_footer .bottom_box .theme {
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0 10px;
    color: #fff;
}

.ren_footer .bottom_box .theme::before {
    content: "";
    display: block;
    background-color: #fff;
    width: 10px;
    height: 10px;
}

.ren_footer .bottom_box .text_area {
    margin: 20px 0 0 23px;
}

.ren_footer .bottom_box .text_area .link {
    font-size: 14px;
    display: flex;
    font-weight: 500;
    gap: 0 12px;
    align-items: center;
    color: #fff;
}

.ren_footer .bottom_box .text_area .link+.link {
    margin-top: 10px;
}

.ren_footer .bottom_box .text_area .link::before {
    content: "";
    display: block;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 10px;
    height: 10px;
    rotate: 45deg;
}

.ren_footer .text_box small {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ren_footer .text_box small .text_area {
    display: flex;
    gap: 0 30px;
    font-size: 12px;
    font-weight: 500;
}

.ren_footer .text_box small .text_area .text {
    color: #fff;
}

.ren_footer .text_box small .copy {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    display: block;

}

.common_contact_box .link .text .line {
    border-bottom: 1px solid #fff;
    /* display: inline-block; */
}

.reason_sec .reason_list ul li:nth-child(3) .text_box {
    padding-top: unset;
}

.voice_sec {
    padding: 120px 0;
    position: relative;
    overflow: hidden;
}

.voice_sec .common_ttl_box {
    margin-bottom: 35px;
}

.voice_sec::before {
    content: "";
    position: absolute;
    height: 464px;
    background: url(/wp-content/themes/child/image/voice_img_bg.svg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    left: 0;
    top: 0;
    width: calc(50% + 620px);
    z-index: -1;
}

.voice_sec .common_ttl_box .ttl {
    text-align: center;
}

.voice_sec .common_ttl_box .catch {
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
}

.voice_sec .voice_list ul {
    display: flex;
}

.top_voice .voice_cont .famous_box .slick-next {
    right: 340px;
}

button.slick-next.slick-arrow,
button.slick-prev.slick-arrow {
    width: 35px;
    height: 35px;
    background: #fff;
    z-index: 999;
    top: unset;
    bottom: -86px;
    translate: 0 0;
    color: #1A1311;
    border: 1px solid #DDDDDD;
}

button.slick-next.slick-arrow {
    left: 50px;
}

.voice_sec button.slick-prev.slick-arrow {
    left: 10px;
}

.voice_slider_box {
    width: 1360px;
    margin: 0 auto;
    transform: translateX(60px);
}

.voice_sec .slick-dots {
    background-color: #e0e0e0;
    width: 600px;
    height: 5px;
    display: flex;
    bottom: -69px;
    left: 115px;
}

.voice_sec ul .slick-track {
    display: flex;
    /* gap: 20px; */
}

.voice_sec ul .slick-slide {
    height: auto !important;
}

.voice_sec ul .slick-track li {
    /* width: 320px !important; */
    margin: 3px 10px;
    box-shadow: 0 1px 5px rgba(0, 0, 0, .16);
    position: relative;
}

.voice_sec ul .slick-track li .box .img {
    width: 100%;
    height: 185px;
    margin-bottom: 15px;
}

.voice_sec ul .slick-track li .box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.voice_sec ul .slick-track li .box .text_box .theme {
    font-size: 16px;
    font-weight: 700;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: .6em;
}

.voice_sec ul .slick-track li .box .text_box .name {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 14px;
    font-weight: 500;
    color: #777272;
}

.voice_sec ul .slick-track li+li {
    /* margin-left: 20px; */
}

button.slick-next.slick-arrow::before {
    content: '';
    position: absolute;
    border-top: 1px solid #1A1311;
    border-right: 1px solid #1A1311;
    width: 10px;
    height: 10px;
    rotate: 45deg;
    top: 12px;
    left: 9px;
}

button.slick-prev.slick-arrow::before {
    content: '';
    position: absolute;
    border-top: 1px solid #1A1311;
    border-right: 1px solid #1A1311;
    width: 10px;
    height: 10px;
    rotate: -135deg;
    top: 12px;
    right: 9px;
}

.voice_sec .slick-dots li {
    height: 100%;
    margin: unset;
    display: block;
    flex: 1;
    position: relative;
}

.voice_sec .slick-dots li button {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    padding: 0;
}

.voice_sec .slick-dots li button::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #E0E0E0;
    opacity: 1;
}

.voice_sec .slick-dots li .alick-active button::before {
    background-color: #777272;
}

.voice_sec .slick-dots .slick-active button::before {
    background-color: #777272;
}

.voice_sec ul .slick-track li .link {
    display: block;
    padding: 20px;
    background-color: #fff;
}

.choose_sec .choose_box .cont .item .choose_btn .link:hover {
    opacity: 0.7;
}

.common_contact_box .link:hover {
    color: #4B4848;
    background-color: #fff;
    opacity: 1;
}

.voice_sec .voice_box .link {
    margin: 0 100px 0 auto;
    width: 360px;
    display: flex;
    min-block-size: 80px;
    background-color: #fff;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    position: relative;
    border: 1px solid #DDDDDD;
}

.voice_sec .voice_box .link::after {
    content: "";
    width: 10px;
    height: 12px;
    position: absolute;
    background-color: #1A1311;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    right: 30px;
    top: 50%;
    translate: 0 -50%;
}

.voice_sec .voice_slider_box ul {
    margin-bottom: 15px;
}

.consideration_sec .cont .common_ttl_box .ttl::before {
    content: "";
    position: absolute;
    background: url(/wp-content/themes/child/image/consideration_ttl_bg.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 166px;
    height: 41px;
    bottom: -25px;
    right: -16px;
    rotate: -5deg;
}

.common_contact_box .link:hover .text {
    color: #4B4848;
}

.common_contact_box .link .icon_box {
    width: 38px;
    height: 38px;
    flex-shrink: 0;
    background-color: #fff;
    padding: 9px 11px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.common_contact_box .link.calculator .icon_box .icon {
    width: 16px;
    height: 20px;
}

.common_contact_box .link:hover .text .line {
    border-bottom: 1px solid #1A1311;
}

.common_contact_box .link:hover::after {
    background-color: #1A1311;
}

.choose_sec .head_box .img_box .speech_bubble .line {
    border-bottom: 2px solid #fff;
    display: inline-block;
}

.common_ren_contact_sec .contact .ttl_box .ttl .dod {
    background-image: radial-gradient(circle at center, #fff 20%, transparent 20%);
    background-position: top left;
    background-repeat: repeat-x;
    padding-top: .4em;
    background-size: 1em 0.2em;
    display: inline-block;
}

#common_fixed_element .tel a span {
    font-size: 22px;
    display: flex;
    position: relative;
    align-items: center;
    gap: .3em;
    margin-bottom: .2em;
}

#common_fixed_element .tel a span::before {
    content: "";
    display: block;
    width: 16px;
    height: 19px;
    background-image: url(/wp-content/themes/child/image/icon_tel.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#common_fixed_element .fixed_body .fix_right.flex .common_btn_box .common_contact_box {
    flex-direction: column;
    gap: 0.5vw 0;
}

#common_fixed_element .fixed_body .fix_right.flex .common_btn_box .common_contact_box .link {
    width: 100%;
    padding: 0 15px;
    gap: 10px;
}

#common_fixed_element .fixed_body .fix_right.flex .common_btn_box .common_contact_box .link .text {
    font-size: 14px;
}

#common_fixed_element .fixed_body .fix_right.flex .common_btn_box .common_contact_box .link::after {
    display: none;
}

#common_fixed_element .fixed_body .fix_right.flex .tel {
    border-radius: unset;
}

/*===========
 会社概要
============*/
.page_body .shop_logo,
.page_body .shop_slider,
.page_body .grid_title,
.page_body .shop_info {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
}

#page_company .grid_title {
    font-size: 2.5em;
}

.page_body .shop_info {
    /* display: grid; */
    /* grid-template-columns: 30% calc(70% - 40px); */
    /* gap: 40px; */
}

.page_body .shop_logo {
    width: 30em;
    max-width: 100%;
    margin: 0 auto 2em;
}

.page_body .shop_logo img {
    width: 100%;
}

.page_body .shop_info .info_list {
    /* display: grid; */
    /* grid-template-columns: 1fr 1fr; */
    /* gap: 8px 8px; */
}

.page_body .shop_info .info_list dl {
    display: flex;
    background: #4b4848;
    border-bottom: 1px solid #fff;
}

.page_body .shop_info .info_list dl:last-child {
    grid-area: 8/2/11/3;
}

.page_body .shop_info .info_list dt {
    width: 25%;
    background: #4b4848;
    color: #fff;
    display: flex;
    align-items: center;
    vertical-align: middle;
    justify-content: center;
}

.page_body .shop_info .info_list dd {
    width: 80%;
    background: #eeeeee;
    font-weight: 500;
    display: grid;
    align-items: center;
    padding: 1em;
}

.page_body ul.number_list li {
    list-style-type: armenians;
    margin-left: 2em;
}

.page_body ul.none_list li {
    list-style-type: none;
}

.shop_slider img {
    width: 100%;
    height: auto;
    position: relative;
    border-radius: 4px;
}

.shop_slider .slick-slide {
    margin: 0 10px;
}

#page_company .representative_sec {
    background-color: #eee;
    padding: 80px 0;
    margin-bottom: 80px;
}

#page_company .representative_sec .cont {
    display: flex;
    align-items: center;
    gap: 50px;
}

#page_company .representative_sec .cont .img {
    width: 350px;
    height: 360px;
    flex-shrink: 0;
}

#page_company .representative_sec .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#page_company .representative_sec .cont .text_box .theme {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .03em;
    margin-bottom: 0.5em;
}

#page_company .representative_sec .cont .text_box .text {
    font-size: 15px;
    letter-spacing: .03em;
    line-height: 1.7;
}

.representative_box {
    background-color: #eee;
    padding: 80px 0;
    margin-bottom: 80px;
}

.representative_box .cont {
    display: flex;
    align-items: center;
    gap: 50px;
}

.representative_box .cont .img {
    width: 300px;
    height: 360px;
    flex-shrink: 0;
}

.representative_box .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.representative_box .cont .text_box .theme {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: .03em;
}

.representative_box .cont .text_box .text {
    font-size: 15px;
    letter-spacing: 0;
    line-height: 1.7;
    font-weight: 500;
}

.company_shop_box .page_body {
    padding: 0;
}

.representative_box .common_topH2 {
    margin-bottom: 30px;
}

.representative_box .common_topH2 .eng.pt {
    font-size: 40px;
    font-family: var(--number-font);
    font-weight: 700;
    letter-spacing: 0.07em;
}

.representative_box .common_topH2 .ttl {
    font-size: 15px;
    letter-spacing: 3px;
    font-weight: 400;
}

.representative_box .cont .text_box .name {
    font-size: 24px;
    margin-top: 0.5em;
    font-weight: 700;
}

.representative_box .cont .text_box .name .year {
    font-size: 0.7em;
    display: block;
}

#page_company .history_sec .common_page_section_title {
    margin-bottom: 35px;
}

/* #page_company .history_sec ul {
	overflow: scroll;
	height: 400px;
} */

#page_company .history_sec li {
    display: grid;
    gap: 0 50px;
    grid-template-columns: 200px 1fr;
    position: relative;
    padding-bottom: 35px;
}

#page_company .history_sec li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 24px;
    background-color: #CECECE;
    left: 4px;
    width: 2px;
    height: calc(100% - 28px);
}

#page_company .history_sec li .year {
    font-size: 16px;
    color: #1A1A1A;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0 15px;
}

#page_company .history_sec li .year::before {
    content: "";
    width: 10px;
    height: 10px;
    background-color: #CECECE;
    border-radius: 50%;
}

#page_company .history_sec li .text {
    font-size: 16px;
    font-weight: 500;
}

#page_company .history_sec {
    padding: 50px 0;
    background-color: #eee;
    margin-top: 80px;
}

#page_company .history_sec .common_topH2 {
    margin-bottom: 30px;
}

#page_company .history_sec .eng.pt {
    font-size: 40px;
    letter-spacing: 8px;
}

#page_company .history_sec h2 {
    font-weight: 400;
    font-size: 15px;
}

.top_mv .bg_img_slider .slick-list.draggable {
    width: 100%;
    height: 100%;
}

.top_mv .bg_img_slider .slick-track {
    width: 100%;
    height: 100%;
}

.page_kaitori .grid_title h2 {
    flex-shrink: 0;
    font-size: 20px;
}

.page_ninbai .page_body .ninbai_about_sec .grid_title h2 {
    flex-shrink: 0;
    font-size: 32px;
}

.page_ninbai .page_body .ninbai_merit_sec.ninbai_common_sec .grid_title h2 {
    flex-shrink: 0;
    font-size: 32px;
}

.page_ninbai .page_body .ninbai_demerit_sec.ninbai_common_sec .grid_title h2 {
    flex-shrink: 0;
    font-size: 32px;
}

.page_ninbai .page_body .common_flow_sec .grid_title h2 {
    flex-shrink: 0;
    font-size: 32px;
}

.page_ninbai .page_body .ninbai_faq_sec .grid_title h2 {
    flex-shrink: 0;
    font-size: 32px;
}

.page_souzoku .page_body .grid_title h2 {
    flex-shrink: 0;
    font-size: 32px;
}

#page_secondstep .point.reason_area.reason_flex_list {
    width: 1140px;
}

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

    /*======================
      変数定義
    ======================*/
    :root {
        --margin-wide: 5.13vw;
    }

    .wrap {
        max-width: 90%;
    }

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

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

    body {
        font-size: 3.59vw;
        line-height: 1.5;
        min-width: auto;
        padding-top: 18.1vw;
    }

    .page_margin {}

    /* 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_wrap {
        padding: 20vw 0;
    }

    .common_page_title h2 {
        font-size: 5vw;
    }

    .common_page_title .sub_title {
        font-size: 3vw;
    }

    .reserve_text {
        font-size: 6vw;
    }

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

    /* SP固定ページ 会社概要 */
    .company_profile {
        margin-bottom: 20vw;
    }

    .company_profile table th,
    .company_profile table td {
        font-size: 3.2vw;
        width: 100%;
        display: block;
    }

    .company_profile table {
        border-top: 1px solid;
    }

    .company_profile table th {
        width: 100%;
        background-color: #f2f2f2;
    }

    .company_profile table td {
        width: 100%;
    }

    .company_access .map {
        height: 50vw;
    }

    /* SP固定ページ お問い合わせ */
    #page_contact table {
        margin-bottom: 10vw;
        width: 100%;
    }

    #page_contact table th,
    #page_contact table td {
        font-size: 4vw;
        display: block;
        border-bottom: none;
        padding: 5vw 4vw;
    }

    #page_contact table th {
        width: 100%;
        text-align: left;
        padding: 3vw;
        display: flex;
        justify-content: space-between;
        flex-direction: row-reverse;
        align-items: center;
    }

    #page_contact table td {
        width: 100%;
    }

    #page_contact input[type="text"],
    #page_contact input[type="email"],
    #page_contact #zip {
        height: 12vw;
    }

    #page_contact input[type="text"],
    #page_contact input[type="email"] {
        width: 100%;
    }

    #page_contact .zip input[type="tel"],
    #page_contact .zip input[type="text"] {
        width: 43%;
    }

    #page_contact input.tel {
        width: 29%;
    }

    #page_contact select {
        width: 100%;
    }

    #page_contact textarea {
        width: 100%;
        height: 60vw;
    }

    #page_contact #btn_wrap button {
        width: 80%;
        line-height: 12vw;
        border-radius: 4px;
        font-size: 4vw;
    }

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

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

    .mw_wp_form .horizontal-item+.horizontal-item {
        margin-left: 0;
        margin-top: 2vw;
    }

    #page_contact .attention {
        font-size: 3vw;
    }

    #page_contact .progressbar #step_2 .en::before,
    #page_contact .progressbar #step_2 .en::after {
        width: 8vw;
    }

    #page_contact .progressbar #step_2 .en::before {
        left: -4vw;
    }

    #page_contact .progressbar {
        margin-bottom: 7vw;
    }

    .contact_form_disc {
        width: 100%;
        font-size: 3.5vw;
        letter-spacing: .02em;
        margin: 0 auto 10vw;
    }

    .contact_form_disc .caution {
        font-size: 3.4vw;
    }

    .contact_form_disc .text {
        margin-bottom: 3vw;
    }

    #page_contact table th .hissu,
    #page_contact table th .ninni {
        display: block;
        width: 13vw;
        padding: 0.2vw 0;
        text-align: center;
        font-size: 3vw;
        margin-right: 0;
    }

    #page_contact table {
        border-bottom: solid 1px #dfdfdf;
    }

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

    /*フォーム見出し*/
    .form_heading h2 {
        font-size: 2em;
        display: inline-block;
        min-width: 78%;
    }

    .form_heading h2.comment_line::before {
        left: -1.4em;
    }

    .form_heading h2.comment_line::after {
        right: -1.4em;
    }

    /* サンクスページ */
    #page_contact .thanks_textArea p {
        font-size: 4vw;
    }

    #page_contact .thanks_textArea .contact_text {
        margin-bottom: 2em;
        width: 100%;
    }

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

    /* ステップバー デザイン */
    #page_contact .progressbar .item {
        font-size: 4vw;
        line-height: 1.4;
        padding: 13vw 0px 2vw;
        width: 31%;
    }

    #page_contact .progressbar .item .en {
        font-size: 3.5vw;
        margin-bottom: 1vw;
    }

    #page_contact .progressbar .item::before {
        width: 8vw;
    }

    #page_contact .progressbar .item.active::after {
        top: 2vw;
        width: 4vw;
    }

    #page_contact .progressbar #step_2 .en {
        position: relative;
    }

    #page_contact .progressbar #step_2 .en::before,
    #page_contact .progressbar #step_2 .en::after {
        content: "";
        position: absolute;
        left: -47px;
        height: 1px;
        width: 100px;
        background: #a4a5a4;
    }

    #page_contact .progressbar #step_2 .en::after {
        left: auto;
        right: -4vw;
    }

    #page_contact .progressbar #step_2 .en::before,
    #page_contact .progressbar #step_2 .en::after {
        width: 8vw;
    }

    #page_contact .progressbar #step_2 .en::before {
        left: -4vw;
    }

    /* SP固定ページ 個人情報保護方針 */
    #page_privacy .main_text {
        font-size: 3.5vw;
    }

    #page_privacy dl {
        margin-bottom: 10vw;
    }

    #page_privacy dl dt {
        font-size: 4vw;
    }

    #page_privacy dl dd {
        font-size: 3.5vw;
        margin-left: 5vw;
    }

    /* 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投稿ページ シングルページ */
    #single_page .fl_wrap {
        display: block;
    }

    .singleContent .single_title::before {
        width: 3vw;
        height: 3vw;
        top: 7vw;
    }

    .singleContent .title_area .en {
        font-size: 3vw;
    }

    .single_main_img {
        width: 47vw;
        height: 47vw;
        margin: 0 auto 5vw auto;
    }

    .singleContent .day_cat {
        flex-wrap: nowrap;
        margin-bottom: 10vw;
    }

    .singleContent .day_cat .day {
        font-size: 3.2vw;
        margin-right: 3vw;
        padding-right: 3vw;
        flex-shrink: 0;
    }

    .singleContent .day_cat ul {
        gap: 2vw;
    }

    .singleContent .day_cat .category_list {
        width: 100%;
    }

    .singleContent h1 {
        font-size: 4.5vw;
        padding: 2vw;
    }

    .singleContent .title_area {
        margin-bottom: 10vw;
        padding: 20vw 0 5vw;
    }

    .singleContent .single_title {
        font-size: 4.5vw;
        letter-spacing: .05em;
    }

    .singleContent .single_title time {
        font-size: 3vw;
    }

    .singleContent .category_list ul li {
        font-size: 2.5vw;
        padding: 1vw 3vw;
    }

    .singleContent article h2 {
        font-size: 4.2vw;
        padding: 2vw;
    }

    .singleContent article h3 {
        font-size: 4vw;
        padding: 2vw;
        margin: 1.5em 0 1em;
    }

    .singleContent article h4 {
        font-size: 4vw;
        padding: 2vw;
        margin: 1.5em 0 1em;
    }

    .singleContent article h5 {
        font-size: 4vw;
    }

    .singleContent h6 {
        font-size: 3.8vw;
    }

    .singleContent p {
        font-size: 3.5vw;
    }

    #single_page .singleContent .ichiran_link {
        width: 80%;
        line-height: 12vw;
        margin: 10vw auto 0 auto;
        font-size: 4vw;
    }

    #single_page .singleContent .ichiran_link:hover {
        opacity: 1;
    }

    #single_page .singleSidebar {
        display: none;
    }

    .singleContent_links {
        margin-top: 25vw;
    }

    .singleContent_links .btn {
        margin-bottom: 4vw;
        font-size: 3.4vw;
    }

    .singleContent_links a .ttl {
        font-size: 3.2vw;
    }

    .singleContent_links ul {
        width: 40%;
    }

    .recommend_post_area {
        width: 100%;
        margin: 14vw 0 0;
    }

    .recommend_post_area .ttl {
        font-size: 4.2vw;
        letter-spacing: .05em;
        padding-bottom: 2vw;
        margin-bottom: 5vw;
    }

    .recommend_post_area .ttl .en {
        font-size: 3vw;
    }

    .recommend_post_area .img {
        height: 25vw;
    }

    .recommend_post_area ul {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 3vw;
        row-gap: 5vw;
    }

    .recommend_post_area .day_cat {
        display: block;
    }

    .recommend_post_area .category_list .cat {
        font-size: 2vw;
        padding: 0 2vw;
    }

    .article_flame_wrap .text_box {
        height: auto;
        position: relative;
        padding-top: 4vw;
    }

    .recommend_post_area .day_cat .day {
        font-size: 3vw;
        margin-right: 0;
        padding-right: 0;
        border-right: none;
        position: absolute;
        left: 0;
        top: 0;
    }

    .recommend_post_area .inner_ttl {
        font-size: 3vw;
        margin-top: 1vw;
        -webkit-line-clamp: 1;
        height: 4.8vw;
    }

    .breadcrumb.single {
        text-align: left;
        margin-top: 25vw;
    }

    .singleContent_links .img {
        margin-bottom: 3vw;
        height: 25vw;
    }

    #toc_container li::before {
        width: 3vw;
        height: 3vw;
        top: 1vw;
    }

    #toc_container li {
        padding-left: 4vw;
    }

    .singleContent .singleContent_links ul li {
        padding: 0;
    }

    .singleContent_links ul li+li {
        margin-top: 3vw;
    }

    .singleContent_links ul li {
        padding-left: 6vw;
    }

    .singleContent article ul {
        padding: 4vw 3vw;
    }

    .singleContent_links ul::before {
        width: 4vw;
        height: 4vw;
    }

    .singleContent ol::before {
        border-width: 0 18px 18px 0;
    }

    .singleContent ol {
        padding: 6vw 3vw;
    }

    .singleContent #toc_container {
        margin-bottom: 8vw;
    }

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

    /* デフォルトcss */
    .pc {
        display: none !important;
    }

    .sp {
        display: inline-block;
    }

    body.oh {
        max-height: 100vh;
        overflow: hidden;
    }

    #sp_menu {
        display: block;
    }

    /*ここから追加*/
    /*===========
       共通
    ============*/

    /*電話*/
    .common_tell_link {
        font-size: 11vw;
        letter-spacing: 0;
    }

    .common_tell_link img {
        width: 8.2vw;
        vertical-align: 0em;
    }

    /*マーク*/
    .common_3line {
        width: 12px;
        top: -4px;
    }

    .common_3line>span:nth-child(2) {
        width: 18px;
    }

    .common_yellow_line {
        background: linear-gradient(transparent 60%, #FFFA8E 20%);
    }

    .common_yellow_line .color {
        color: var(--text-color);
        display: block;
    }

    /*ボタン*/
    .common_btn_area {
        width: 100%;
        display: grid;
        gap: 10px;
        text-align: left;
    }

    .common_btn_area p {
        text-align: right;
        font-size: 0.75em;
        text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
            -1px 1px 0 #FFF, 1px -1px 0 #FFF,
            0px 1px 0 #FFF, 0-1px 0 #FFF,
            -1px 0 0 #FFF, 1px 0 0 #FFF;
    }

    .top_fv .common_btn_area,
    footer .common_btn_area {
        width: 100%;
    }

    .common_btn_area .btn .point {
        font-size: 4vw;
        border-width: 2px;
    }

    .common_btn_area .common_btn_1,
    .common_btn_area .common_btn_2,
    .top_fv .common_btn_area .common_btn_1,
    .top_fv .common_btn_area .common_btn_2,
    footer .common_btn_area .common_btn_1,
    footer .common_btn_area .common_btn_2 {
        width: 100%;
        height: 17.94vw;
        font-size: 5.64vw;
        padding: 0.5em;
        margin-right: unset;
    }

    .common_btn_area img,
    .top_fv .common_btn_area img,
    footer .common_btn_area img {
        width: 12.8vw;
        vertical-align: -.7em;
        margin: 0 4vw 0 5px;
    }

    .common_btn_area a:hover img .top_fv .common_btn_area a:hover img,
    footer .common_btn_area a:hover img {
        opacity: 0.9;
    }

    .common_btn_area img.arrow,
    .top_fv .common_btn_area img.arrow,
    footer .common_btn_area img.arrow {
        width: 6.15vw;
        margin-right: 0;
        position: absolute;
        right: 5vw;
        top: 53%;
        transform: translateY(-50%);
    }

    /*common_contact*/
    .common_contact {
        position: relative;
        z-index: 1;
        padding: 10vw 4vw;
    }

    .common_contact .contact_heading {
        font-size: 7.95vw;
    }

    .common_contact .contact_heading .common_number {
        font-size: 12.82vw;
        vertical-align: -0.1em;
        position: relative;
        z-index: 2;
    }

    .contact_heading .common_number::before {
        content: "60";
        top: 7px;
        -webkit-text-stroke: 5px var(--text-color);
        color: var(--text-color);
        position: absolute;
        left: 0;
        z-index: -1;
    }

    .contact_heading .sp_color,
    .common_contact .contact_heading .common_3line {
        color: #fff;
    }

    .common_contact .contact_heading .common_text_mini {
        font-size: 0.77em;
        margin-top: 2vw;
    }

    .common_contact .contact_heading .common_text_dot {
        font-size: 1em;
    }

    .common_contact_area {
        border: none;
        background-color: inherit;
        padding: 0;
        align-items: center;
        flex-wrap: wrap;
        position: relative;
        width: 100%;
    }

    .common_contact_area .box_yellow {
        width: 100%;
        padding: 7vw 3vw 7vw;
        display: grid;
        place-items: center;
    }

    .common_contact_area .common_tell_link {
        color: var(--main-color);
        line-height: 1.2;
        font-size: 10vw;
    }

    /*もっと見るボタン*/
    .common_more_btn {
        margin: 6vw auto;
    }

    .common_more_btn a {
        width: 61.54vw;
        padding: 1em;
        font-size: 1.53vw;
    }

    /*水平線*/
    .common_hr {
        margin-top: 60px;
    }

    /*固定表示*/

    .fixed_element {
        width: 100%;
        height: 80px;
        position: fixed;
        right: 0;
        bottom: -100%;
        border: none;
        transform: translateY(0);
        border-radius: 4px 4px 0 0;
        z-index: 1000;
    }

    #common_fixed_element.visible {
        right: 0;
        bottom: 0;
    }

    #common_fixed_element::after {
        display: none;
    }

    #common_fixed_element .fixed_body {
        display: block;
    }

    #common_fixed_element .fixed_body .fix_right {
        flex-direction: row;
        gap: 1.5vw;
        width: 100%;
        justify-content: center;
    }

    #common_fixed_element .fixed_body .tel {
        width: 14.35vw;
        height: 14.35vw;
        border: none;
        background-color: var(--main-color);
        order: 3;
    }

    #common_fixed_element .common_btn_area {
        height: 14.35vw;
        width: 36.15vw;
    }

    #common_fixed_element .common_btn_area .common_btn_1,
    #common_fixed_element .common_btn_area .common_btn_2 {
        box-shadow: none;
    }

    #common_fixed_element .common_btn_area a {
        height: 100%;
        width: 100%;
        font-size: 3.59vw;
        border-radius: 4px;
        display: grid;
        place-content: center;
    }

    #common_fixed_element .common_btn_area p {
        text-shadow: none;
        font-size: 1em;
    }

    #common_fixed_element .common_btn_area img {
        margin-right: 10px;
    }

    /*内部ページ共通*/
    .common_page_fv {
        grid-template-columns: 100%;
        grid-template-rows: 30vw 50vw;
        padding: 0;
    }

    .common_page_fv .page_fv_title {
        width: 100%;
        font-size: 0.9em;
        order: 2;
        padding: 0 var(--margin-wide);
    }

    .common_page_fv .page_fv_title .page_subtitle {
        letter-spacing: 0.01em;
    }

    .common_page_fv .page_fv_title .page_subtitle br {
        display: none;
    }

    .common_page_fv .page_fv_title .page_title {
        font-size: 1.6em;
        margin: 0.5em 0 0.8em;
        line-height: 1.3;
    }

    .page-template-page-baikyaku .common_page_fv .page_fv_title .page_title {
        font-size: 1.4em;
    }

    .common_page_fv .page_fv_title .page_title br {
        display: none;
    }

    .common_page_fv .page_fv_img {
        width: 100%;
        height: 35vw;
        position: relative;
        order: 1;
    }

    .common_page_fv .page_fv_bread {
        position: absolute;
        bottom: 3.5vw;
        right: var(--margin-wide);
        font-weight: 600;
        font-size: 0.68em;
        padding: 0 5vw;
    }


    /*===========
       ヘッダー
    ============*/
    .top_header {
        padding: 4.13vw;
        display: grid;
    }

    .top_header .header_menu {
        display: flex;
        align-items: center;
        padding: 0;
    }

    .top_header .header_logo {
        width: 11em;
    }

    .top_header .header_menu .menu_top {
        display: block;
        position: absolute;
        top: 252.56vw;
        right: 20.23vw;
        width: fit-content;
    }

    .menu_top .tel {
        display: block;
        width: 50px;
        height: 50px;
        border: solid 2px var(--main-color);
        border-radius: 6px;
        position: fixed;
        right: 20.2vw;
        top: 2.56vw;
    }

    .menu_top .tel a {
        width: 100%;
        height: 100%;
        display: grid;
        place-items: center;
    }

    .menu_top .tel::after {
        display: none;
    }

    .menu_top .tel img {
        width: 32px;
    }

    /*===========
       fv
    ============*/
    .top_fv {
        background-image: url("/wp-content/themes/child/image/back.jpg");
        background-size: cover;
        background-position: center;
        padding: 0.1vw 2.5vw 53vw;
    }

    .top_fv .top_fv_img {
        width: 100%;
        aspect-ratio: 340 / 320;
        background-image: url("/wp-content/themes/child/image/fv_img_sp.jpg");
        position: relative;
        padding: 0;
        margin-top: 40px;
        height: 83vw;
        overflow: visible;
    }

    .top_fv .top_fv_img::before {
        content: "";
        width: 89.74vw;
        height: 86vw;
        aspect-ratio: 350 / 330;
        background-color: #fff;
        position: absolute;
        z-index: -1;
        top: -5px;
        left: -1.29vw;
        border-radius: 15px;
    }

    .top_fv .top_fv_img::before {
        top: -1px;
        left: -0.29vw;
        width: 100%;
        height: 100%;
    }

    .top_fv .top_fv_sub,
    .top_fv .top_fv_main,
    .top_fv .top_fv_contact,
    .top_fv .top_fv_main .common_en,
    .top_fv .top_fv_main .common_text_blue {
        color: #fff;
        text-shadow: 1px 1px 2px #333;
    }

    .top_fv .text_box {
        padding: 0 4vw;
        padding-top: 5vw;
    }

    .top_fv .top_fv_box {
        font-size: 5.13vw;
        text-align: center;
        padding: 5px 0;
        border-width: 3px;
        margin: 0 auto;
        display: block;
    }

    .top_fv .top_fv_sub {
        font-size: 4.5vw;
        margin: 5vw 0 2vw;
    }

    .top_fv .top_fv_main {
        font-size: 9vw;
        margin-bottom: unset;
    }

    .top_fv .top_fv_main .text .common_text_blue {
        font-size: 9vw;
        line-height: 1;
    }

    .top_fv .top_fv_main .common_en {
        font-size: 10vw;
        vertical-align: -2px;
    }

    .top_fv .top_fv_main .text {
        font-size: 10vw;
        vertical-align: -2px;
        color: #fff;
    }

    .top_fv .top_fv_contact {
        margin-top: 2vw;
        padding: 0 5vw;
    }

    .top_fv_contact .contact_heading {
        font-size: 7.4vw;
        gap: 0;
        margin-bottom: 7vw;
    }


    .top_fv_contact .contact_heading .common_number {
        font-size: 12vw;
        margin: 0 1.5vw 0 3.5vw;
    }

    .top_fv_contact .contact_heading .common_number::before {
        top: -11px;
        left: -5vw;
        width: 7vw;
        background-image: url("/wp-content/themes/child/image/icon_line_white.svg");

    }

    .top_fv_contact .contact_heading .common_3line {
        color: #fff;
    }

    .top_fv_contact .contact_heading .common_text_italic {
        color: #FFF200;
    }

    .top_fv .common_text_mini {
        font-size: 0.8em;
    }

    .top_fv .top_fv_img .common_btn_area a .common_text_mini {
        font-size: 0.65em;
    }

    /*===========
       理由エリア
    ============*/
    /*お悩み部分*/
    .bubble_area {
        width: 100%;
        padding: 180px var(--margin-wide) 5px;

    }

    #top_reason .bubble_area .reason_introduction {
        font-size: 5vw;

    }

    #top_reason .bubble_area .reason_introduction .common_text_blue {
        font-size: 38px;
    }

    #top_reason .bubble_area .text {
        font-size: 20px;
        letter-spacing: .03em;
        font-weight: 700;
    }

    #top_reason .bubble_area .text {
        font-size: 4vw;
    }

    .bubble {
        width: 52.5vw;
        font-size: 4.62vw;
    }

    .bubble:nth-child(1) {
        top: 50px;
        left: var(--margin-wide);
    }

    .bubble:nth-child(2) {
        right: var(--margin-wide);
        top: 120px;

    }

    .bubble:nth-child(3) {
        right: var(--margin-wide);
        top: 369px;
    }

    .bubble:nth-child(4) {
        left: var(--margin-wide);
        top: 305px;
    }

    .bubble:nth-child(2)::after {
        left: 18%;
    }

    .bubble:nth-child(3)::after,
    .bubble:nth-child(4)::after {
        top: auto;
        bottom: calc(100% + 3px);
        left: auto;
        rotate: 50deg;
    }

    .bubble:nth-child(3)::after {
        left: 18%;
    }

    .bubble:nth-child(2)::after,
    .bubble:nth-child(4)::after {
        rotate: -50deg;
    }

    .bubble_area .triangle {
        border-right: 16.67vw solid transparent;
        border-left: 16.67vw solid transparent;
        border-top: 8.2vw solid #eeeeee;
        margin: 170px auto 0;
    }

    .bubble_area .triangle::after {
        border-right: 19.23vw solid transparent;
        border-left: 19.23vw solid transparent;
        border-top: 8.2vw solid #dcdcdc;
        top: -4.5vw;
    }

    /*選ばれる理由*/
    .reason_area {
        text-align: left;
        width: 100%;
        padding: unset;
        /* padding: 0 var(--margin-wide); */
    }

    .reason_area>.common_text_big {
        font-size: 5.13vw;
        display: grid;
        place-items: center;
        margin: 6vw auto 3vw;
    }

    .reason_area .reason_heading {
        font-size: 7vw;
        letter-spacing: 0;
    }

    .reason_area .reason_heading .common_en {
        font-size: 1.27em;
        vertical-align: -4px;
    }

    .background_circle {
        width: 100%;
        height: 89.8vw;
    }

    .reason_area .reason_text_center {
        font-size: 3.29vw;
        margin: 0 auto 6vw;
        letter-spacing: 0;
    }

    .reason_area .common_contact_area {
        flex-wrap: wrap;
        gap: 8vw 0;
    }

    .reason_area .common_box {
        width: 89.74vw;
        height: 30.7vw;
        height: auto;
        letter-spacing: 0;
        padding: 6.5vw 16vw 3vw 4.08vw;
    }

    .reason_area .common_box .box_title {
        width: 46.15vw;
        left: 0;
        transform: translateX(0);
        font-size: 3.59vw;
        text-align: center;
    }

    .reason_area .common_box .box_body .flex {
        text-align: left;
        height: fit-content;
        font-size: 1.12em;
        padding: 0;
    }

    .reason_area .common_box .box_bottom {
        width: 14.44%;
        height: 100%;
        bottom: auto;
        right: 0;
        top: 0;
        border-top: none;
        border-left: solid 3px var(--text-color);
        display: grid;
        place-items: center;
        left: unset;
    }

    .reason_area .common_box img.triangle_down {
        width: 5.64vw;
    }

    .reason_area .flex .flex {
        justify-content: flex-start;
        height: 26.7vw;
        font-size: 18px;
    }

    .reason_area .flex .sp {
        display: inline-block;
    }

    .reason_area .flex .common_text_big {
        font-size: 1.55em;
    }

    .reason_area .flex .flex .common_number {
        font-size: 10vw;
    }

    .reason_area .common_box .box_body .reason_one {
        margin-top: 1vw;
        margin-left: unset;
    }

    .reason_area .common_box .box_body .reason_two {
        margin-left: 0;
    }

    .reason_area .reason_two .common_text_big {
        font-size: 1.12em;
    }

    .reason_area .reason_three .common_text_big {
        font-size: 1.33em;
    }

    /*理由詳細*/
    .reason_area .reason_flex {
        margin-top: 10.25vw;
        gap: 8vw;
        flex-wrap: wrap;
        flex-direction: column-reverse;
        border-bottom: solid #D9D9D9 1px;
        padding-bottom: 10vw;
    }

    .reason_area .reason_text {
        width: 100%;
    }

    .reason_area .reason_text .reason_point {
        margin-bottom: 0;
        font-size: 3.29vw;
    }

    .reason_area .reason_flex .reason_title,
    .reason_area #reason_two .reason_title {
        font-size: 4.24vw;
    }

    .reason_area .reason_flex .common_text_blue {
        font-size: 8.6vw;
    }


    .reason_flex .reason_img {
        width: 90%;
        height: 44.1vw;
        position: relative;
    }

    .reason_flex .reason_img img {
        width: 100%;
        height: 42.54vw;
        border-radius: 20px 0 0 20px;
        right: -4.9vw;
        object-fit: cover;
    }

    .reason_flex .reason_img::before {
        bottom: -1vw;
        right: -4.65vw;
    }

    .reason_flex .reason_img_number {
        font-size: 1em;
        right: -4.9vw;
    }

    #page_reason .reason_flex .reason_img::before {
        right: -4.9vw;
    }

    #page_reason .reason_flex .reason_img img {
        right: -4.9vw;
    }


    /*２つ目調整*/

    .reason_flex_list .reason_flex:nth-of-type(even) {
        margin: 10vw 0;
        flex-direction: column-reverse;
    }

    .reason_area #reason_two h2 {
        font-size: 5.64vw;
    }

    .reason_area #reason_two .common_text_blue {
        font-size: 1em;
    }

    .reason_area #reason_two .common_yellow_line {
        font-size: inherit;
    }

    .reason_area #reason_two .reason_text .common_number {
        font-size: 12.32vw;
        line-height: 1;
    }

    .reason_area #reason_two .common_text_big {
        font-size: 6.67vw;
    }

    .reason_flex_list .reason_flex:nth-of-type(even) .reason_img {
        left: 0;
    }

    .reason_flex_list .reason_flex:nth-of-type(even) img {
        border-radius: 0 20px 20px 0;
        left: -4.8vw;
    }

    .reason_flex_list .reason_flex:nth-of-type(even) .reason_img::before {
        left: -4.83vw;
    }

    .reason_flex_list .reason_flex:nth-of-type(even) .reason_img_number {
        border-radius: 0 20px 0 0;
        right: auto;
        left: -4.83vw;
    }

    /*最後*/
    .reason_area .reason_flex:last-child {
        margin: 0;
        border-bottom: none;
    }

    /*===========
       実績エリア
    ============*/
    #top_sell_list {
        margin: 15vw auto 15vw;
        position: relative;
        padding: 0 0 35vw;
    }

    #top_sell_list .sell_heading {
        font-size: 7.5vw;
        width: 100%;

    }

    #top_sell_list .flex {
        margin: 2vw 0 3.5vw;
        width: 100%;
    }

    #top_sell_list .flex p {
        width: 100%;
        font-weight: 700;
        font-size: 0.95em;
    }

    #top_sell_list .common_more_btn {
        position: absolute;
        bottom: 50px;
        left: 50%;
        transform: translateX(-50%);
    }

    #top_sell_list .common_more_btn a {
        width: 53.85vw;
        padding: 0.9em;
        font-size: 3.59vw;
    }

    /*===========
       グリット
    ============*/
    .grid_container {
        display: flex;
        flex-direction: row;
        max-width: 100vw;
        height: auto;
        max-height: inherit;
        overflow-X: scroll;
        overflow-Y: inherit;
        padding-right: 0;
        padding-bottom: 5vw;
        gap: 1px;
    }

    .page_body .grid_container {
        display: flex;
        flex-direction: row;
        max-width: 100vw;
        height: auto;
        max-height: inherit;
        overflow-X: scroll;
        overflow-Y: inherit;
        padding-right: 0;
        padding-bottom: 5vw;
        gap: 1px;
    }


    #top_sell_list .grid_container {
        width: 100%;
    }

    .grid_header {
        border: 1px solid #fff;
        padding: 0;
        font-weight: 900;
        font-size: 0.95em;
    }

    .grid_header:last-child {
        border-radius: 0 0 0 4px;
    }

    .grid_headers {
        display: flex;
        flex-direction: column;
        position: sticky;
        left: 0;
        z-index: 2;
        min-width: 30.77vw;
    }

    .grid_header,
    .grid_row .grid_item {
        height: 12.82vw;
        text-align: left;
        line-height: 6.82vw;
        padding: 0 2vw;
    }

    .grid_row {
        display: flex;
        flex-direction: column;
        min-width: 48.59vw;
        flex-shrink: 0;
    }

    .grid_item {
        padding: 8px 12px;
        border: 1px solid #fff;
        text-align: left;
    }

    /* スクロールバーのスタイル */
    .grid_container::-webkit-scrollbar {
        height: 5.56vw;
        /* スクロールバーの幅 */
    }

    .grid_container::-webkit-scrollbar-track-piece {
        border: solid 2.5vw #fff;
        border-right: 0px;
        border-left: 0px;
    }

    /*===========
       レビューエリア
    ============*/
    #top_review {
        margin: 0 auto;
        text-align: left;
        padding: unset;
    }

    #top_review .review_heading {
        font-size: 8.46vw;
        margin-bottom: 3vw;
        line-height: 1.2;
    }

    #top_review .review_list .link .review_sentence {
        font-size: 3.6vw;
    }

    #top_review .text_center {
        font-size: 3.6vw;
    }

    #top_review .review_list .link .text_box {
        padding: 4vw;
    }

    #top_review p {
        letter-spacing: 0;
    }

    #top_review .review_list {
        grid-template-columns: repeat(1, 1fr);
        margin: 5vw auto;
        gap: 6vw;
        width: 100%;
    }

    #top_review .review_item {
        display: grid;
        grid-template-areas: "area1 area2" "area1 area3" "area1 area4";
        gap: 10px 20px;
    }

    #top_review .review_img {
        width: 100%;
        height: 38.46vw;
        grid-area: area1;
    }

    .grid_container::-webkit-scrollbar {
        background: var(--main-color);
        width: 12px;
    }

    #top_review .review_item p {
        font-size: 0.92em;
        margin-bottom: 0;
        -webkit-line-clamp: 3;
    }

    #top_review .common_more_btn {
        margin: 9.2vw auto 17.9vw;
    }

    #top_review .common_more_btn a {
        width: 61.54vw;
    }

    /*===========
       メニューエリア
    ============*/
    #top_menu {
        margin: 20vw auto;
    }

    #top_menu h2.menu_heading {
        font-size: 7.18vw;
        font-weight: 900;
        width: 93%;
    }

    #top_menu h3.menu_heading {
        font-size: 2em;
        width: 93%;
    }

    #top_menu .menu_list {
        display: grid;
        grid-template-columns: repeat(3, 100%);
        grid-template-rows: repeat(2, auto);
        grid-auto-flow: column;
        gap: 8vw;
        margin: 8vw auto;
        overflow-x: scroll;
        padding-bottom: 8vw;
        width: 93%;
    }

    /* スクロールバーのスタイル */
    #top_menu .menu_list::-webkit-scrollbar {
        height: 6px;
    }

    #top_menu .menu_list::-webkit-scrollbar-track {
        background: #EFEFEF;
    }

    #top_menu .menu_list::-webkit-scrollbar-thumb {
        background-color: var(--main-color);
    }

    #top_menu .menu_item {
        padding-bottom: 8vw;
    }

    #top_menu .menu_item_img {
        height: 51.28vw;
        position: relative;
        margin-bottom: 1.79em;
    }

    #top_menu .menu_item_img .menu_number {
        padding: 0.6em 0.8em 0.5em;
        font-size: 1.29em;
        line-height: 1;
    }

    #top_menu .menu_item_img .menu_title {
        bottom: -1em;
        left: -0.3em;
        font-size: 1.29em;
    }

    #top_menu .menu_item_img .sp_size {
        font-size: 1.15em;
    }

    #top_menu .menu_sub {
        font-size: 1.14em;
        margin-bottom: 0.5em;
        letter-spacing: 0;
        color: var(--main-color);
        gap: 0 2vw;
    }

    #top_menu .menu_text {
        line-height: 1.25;
        font-size: 3.6vw;
    }

    /*==================
      はじめてのかたエリア
    ===================*/
    #top_consider {
        margin: 0 auto;
        padding: 15vw 0 17vw;
    }

    #top_consider h2 {
        font-size: 1.86em;
    }

    #top_consider .consider_btn_area {
        display: flex;
        flex-direction: column;
        gap: 7vw 0;
        width: 100%;
        margin: 9vw auto auto;
    }

    #top_consider .consider_btn a {
        background-color: inherit;
        flex-direction: column;
        gap: 4vw;
    }

    #top_consider .consider_img {
        width: 100%;
        height: 43.59vw;
    }

    #top_consider .consider_img img {
        border-radius: 10px;
    }

    #top_consider .consider_text {
        width: 100%;
    }

    #top_consider .consider_text h3 {
        font-size: 1.57em;
    }

    #top_consider .consider_text p {
        font-weight: 600;
        font-size: 3.6vw;
    }

    /*===========
     フッターエリア
    ============*/
    footer {
        margin-bottom: 80px;
    }

    .page-template-page-contactbunki footer,
    .page-template-page-contact footer {
        margin-bottom: 0;
    }

    footer .footer_main {
        padding: 20vw var(--margin-wide) 10vw;
    }

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

    footer .footer_main .tel_heading {
        font-size: 1.29em;
    }

    footer .common_btn_area {
        margin: 0 auto 5vw;
        width: 100%;
    }

    footer .common_btn_area p {
        margin-top: 3vw;
        font-size: 0.86em;
    }

    footer .footer_bottom {
        gap: 0;
        justify-content: inherit;
        width: 89.7vw;
    }

    footer .footer_shop {
        border-right: none;
        padding-right: 0;
        width: 100%;
    }

    footer .footer_shop iframe {
        width: 100%;
        height: 46.15vw;
        margin-bottom: 5vw;
    }

    footer .footer_main .tel {
        margin-bottom: 5vw;
    }

    footer .footer_shop .shop_logo {
        width: 63.33vw;
        margin: 15px 0 20px;
    }

    footer .footer_shop .shop_address,
    footer .footer_shop .shop_access {
        font-size: 1em;
    }

    footer .footer_shop .shop_address {
        margin-bottom: 1.6em;
    }

    footer .footer_shop .shop_access {
        letter-spacing: 0;
    }

    footer .copyright {
        padding: 20px 0;
    }

    footer .copyright small,
    footer .copyright .common_en {
        font-size: 3.07vw;
    }

    footer .footer_bottom {
        flex-direction: column;
    }

    footer .footer_menu {
        grid-template-columns: repeat(2, 1fr);
        gap: 3vw;
        align-items: baseline;
    }

    footer .footer_menu .menu ul {
        margin-left: unset;
    }

    footer .footer_menu .menu li a {
        font-size: 3.5vw;
        margin: 2vw 0;
    }

    footer .footer_menu .menu ul li+li {
        margin-top: 1vw;
    }

    /*======================ここから内部ページ=======================*/

    /*===========
     仲介売却
    ============*/
    /* .page_body {
        padding: 60px var(--margin-wide);
    } */

    .page_body .baikyaku_info {
        font-size: 1.8em;
        width: 100%;
    }

    .page_body .circle_row {
        grid-template-columns: repeat(3, 30vw);
        grid-template-rows: 30vw;
        gap: 2vw;
        margin: 6vw auto;
    }


    .page_body .baikyaku_info h2 {
        font-size: 1em;
        display: inline-block;
    }

    #page_secondstep .page_body .baikyaku_info h2 {
        font-size: .7em;
    }

    #page_secondstep .page_body .titile_wrap_shrink {
        margin-bottom: 6vw;
    }

    #page_secondstep .reason_area .reason_flex:last-child {
        padding-bottom: unset;
    }

    .page_body .baikyaku_info h2.comment_line::before,
    .page_body .baikyaku_info h2.comment_line::after {
        /* content: ""; */
        display: inline-block;
        width: 1.72em;
        border-top: solid 3px var(--text-color);
        position: absolute;
    }

    .page_body .baikyaku_info h2.comment_line::before {
        left: -1.6em;
    }

    #page_baikyaku .page_body .baikyaku_info h2.comment_line::before {
        left: -31vw;
    }

    .page_body .baikyaku_info h2.comment_line::after {
        right: -1.6em;
    }

    #page_secondstep .page_body .baikyaku_info h2.comment_line::before {
        left: -1em;
        transform: rotate(60deg);
    }

    #page_secondstep .page_body.secondstep .baikyaku_info .comment_line {
        font-size: 0.7em;
    }

    #page_secondstep .page_body .baikyaku_info h2.comment_line::after {
        right: -1.6em;
        transform: rotate(-60deg);
    }

    /*テキスト系設定*/
    .page_body .grid_title {
        gap: 2vw;
        margin: 12vw 0 7vw;
    }

    .page_body .grid_title.common_text_blue {
        font-size: 1.29em;
    }

    .page_body .grid_title h3 {
        font-size: 0.75em;
    }

    .page_body .grid_title.titile_wrap .catch {
        width: 77%;
        padding: 5px 10px;
        left: 50%;
        transform: translateX(-50%);
    }

    #page_secondstep .page_body .grid_title.titile_wrap .theme {
        width: 77%;
        padding: 5px 10px;
        left: 50%;
        transform: translateX(-50%);
        font-size: 5.2vw;
        line-height: 1.2;
    }

    .page_body .grid_sentence,
    .page_body .grid_sentence_center {
        margin: 3vw 0 4vw;
    }

    .page_body .grid_sentence {
        font-size: 3.5vw;
    }

    #page_faq .faq_category .common_more_btn a {
        width: 100%;
        font-size: 3.6vw;
        margin-top: 5vw;
    }

    #page_firststep .grid_sentence_center,
    #page_secondstep .grid_sentence_center {
        font-size: 3.4vw;
        text-align: left;
    }

    #page_faq .faq_top .faq_category_btn .common_more_btn a {
        padding: 1em;
    }

    #page_faq .faq_top .faq_category_btn .common_more_btn {
        margin: unset;
    }

    #page_baikyaku .baikyaku_info .catch_box .catch {
        font-size: 5.5vw;
    }

    #page_baikyaku .page_body .common_text_dot::after {
        top: -6vw;
        left: 0;
    }

    /*表*/

    .page_body .grid_container {
        overflow-y: hidden;
        overflow-x: scroll;
        gap: 1px;
    }

    .page_body .grid_headers {
        min-width: 24vw;
        font-size: 3.77vw;
        gap: 1px;
        letter-spacing: 0;
        position: sticky;
    }

    .page_body .grid_header:first-child {
        background: linear-gradient(150deg, rgba(45, 113, 194, 1) 50%, rgba(14, 125, 195, 1) 30%);
    }

    .page_body .grid_header,
    .page_body .grid_row .grid_item {
        width: auto;
        min-height: 16vw;
        font-size: 3.3vw;
    }

    .page_body .grid_header:last-child,
    .page_body .grid_row .grid_item:last-child {
        min-height: 27vw;
    }

    .page_body .grid_row {
        gap: 1px;
    }

    .page_body .grid_item {
        padding: 8px 7vw;
        font-size: 3vw;
    }

    .page_body .grid_item:first-child {
        font-size: 3.77vw;
    }

    /*.row_bigのheight高い表*/

    .page_body .row_big {
        margin-bottom: 40px;
    }

    .page_body .row_big .grid_headers,
    .page_body .grid_container.row_big,
    .page_body .row_big .grid_row {
        gap: 0.5vw;
    }

    .page_body .row_big .grid_row {
        width: 70%;
    }

    .page_body .row_big .grid_headers {
        min-width: 31vw;
        font-size: 3.5vw;
    }

    .page_body .row_big .grid_header,
    .page_body .row_big .grid_row .grid_item {
        min-height: 25vw;
        padding: 3vw;
        line-height: 1.4;
        font-size: 3vw;
    }

    .page_body .grid_row .grid_item .common_text_mini {
        line-height: 1.3;
        letter-spacing: 0.04em;
        font-size: 1em;
        padding: 0 5px
    }

    /*コスト表*/

    .page_body .grid_container.grid_cost {
        gap: 2px;
        margin: 60px auto 70px;
        overflow-x: hidden;
    }

    .page_body .grid_container .basic_cost_list,
    .page_body .grid_container .option_cost_list {
        grid-template-columns: 11vw 25.5vw 52.5vw;
        gap: 2px;
    }

    .page_body .grid_container .basic_cost_list {
        grid-template-rows: repeat(3, 20vw);
    }

    .page_body .grid_container .option_cost_list {
        grid-template-rows: repeat(8, 20vw);
    }

    .page_body .grid_container .cost_list_title {
        font-size: 3.77vw;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }

    .page_body .grid_container .cost_title,
    .page_body .grid_container .cost {
        font-size: 3vw;
    }

    .page_body .grid_container .cost_title {
        font-size: 3.3vw;
    }

    .page_body .grid_container .cost {
        padding: 0 3vw;
        text-align: left;
    }

    .page_body ul.text_list li {
        font-size: 3.4vw;
    }

    .page_body .grid_sentence_center {
        font-size: 4.1vw;
    }

    /*ステップ*/
    .step_list {
        display: flex;
        flex-direction: column;
        gap: 10vw;
        margin: 10vw auto 13vw;
    }

    .step_list .step_row {
        display: flex;
        align-items: center;
        position: relative;
    }

    .step_list .step_row::after {
        content: "▼";
        color: var(--main-color);
        position: absolute;
        font-size: 0.8em;
        bottom: -8.6vw;
        left: 50%;
        transform: translateX(-50%);
    }

    .step_list .step_row:last-child::after {
        display: none;
    }

    .step_list .step_number {
        width: 16vw;
        height: 16vw;
        font-size: 3.5vw;
        position: absolute;
        left: -2vw;
        top: -6vw;
    }


    .step_list .step_number::before,
    .step_list .step_number::after {
        display: none;
    }

    .step_list .step_row:last-child .step_number::after {
        display: none;
    }

    .step_list .step_number .common_text_yellow {
        font-size: 1.46em;
    }

    .step_list .step_item {
        width: 100%;
        height: 76vw;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        text-align: center;
    }

    .step_list .step_item .step_photo,
    .step_list .step_item img {
        width: 100%;
        height: 35vw;
        object-fit: cover;
        border-radius: 20px 20px 0 0;
    }

    .step_list .step_text {
        padding: 0 1.94vw;
    }


    .step_list .step_item h3 {
        font-size: 0.8em;
        margin-bottom: 0.5em;
    }

    .step_list .step_item .catch {
        font-size: 5.2vw;
    }

    .step_list .step_item p {
        width: 90%;
        margin: 0 auto .5em;
        font-size: 0.5em;
        text-align: left;
    }

    /*=======
        リースバック
    ========*/

    #page_leaseback h1 .common_text_big {
        font-size: 1.4em;
    }

    /*=======
        FAQ
    ========*/
    .faq_area {
        list-style: none;
        width: 100%;
        margin: 0 auto;
        text-align: left;
    }

    .faq_area li {
        margin: 1.5vw 0;
    }

    .faq_heading {
        font-size: 1.8em;
    }

    .faq_category_btn {
        grid-template-columns: repeat(1, 1fr);
        grid-column-gap: 0;
        grid-row-gap: 15px;
        margin-top: 2.5em;
    }

    .faq_category_btn .common_more_btn {
        margin: 0;
    }

    .page_body .common_more_btn a {
        min-width: 60vw;
        width: 100%;
    }

    /*アコーディオンタイトル*/
    .faq_title {
        font-size: 3.9vw;
        padding: 0.7em 40px 0.7em 45px;
    }

    .faq_title::before {
        left: 10px;
    }

    .faq_title::after {
        right: 15px;
    }

    /*アコーディオンで現れるエリア*/
    .faq_box {
        display: none;
        /*はじめは非表示*/
        padding: 4% 2% 4% 30px;
        font-size: 3.5vw;
        margin-bottom: 4vw;
        line-height: 1.8;
    }

    .faq_box::after {
        top: calc(3% + 0.3em);
        left: 10px;

    }

    #page_faq .faq_box .text {
        font-size: 3.6vw;
        line-height: 1.6;
    }

    #page_faq .faq_area>li {
        margin: 2vw 0px;
    }

    /*===========
     会社概要
    ============*/

    #page_company .grid_title {
        font-size: 2em;
    }

    .page_body .shop_info {
        overflow-x: scroll;
    }

    .page_body .shop_info img {
        height: 45vw;
        object-fit: cover;
    }

    .page_body .table_box {
        width: 100%;
    }

    .page_body .table_box div {
        padding: 1em 0.5em;
    }

    .page_body .table_box div:nth-of-type(odd) {
        text-align: center;
    }

    .page_body .table_box div:nth-of-type(even) {
        padding-left: 0.8em;
    }

    .page_body ul.number_list li {
        margin-left: 1.6em;
    }

    .shop_slider .slick-slide {
        margin: 0 8px;
    }

    /*===========
     売却、その前に
    ============*/
    #page_firststep .grid_title,
    #page_secondstep .grid_title {
        margin-top: 8vw;
    }

    #page_secondstep .page_body .titile_wrap {
        margin: 15vw auto 10vw;
    }

    #page_secondstep .page_body .grid_sentence {
        margin-bottom: 5vw;
    }

    .page_body .box_list {
        gap: 5vw;
        margin-bottom: 10vw;
    }


    .page_body .box_list .box_item {
        font-size: 0.8em;
    }

    .page_body .box_list .box_title {
        padding: 0.5em 3vw;
        font-size: 4vw;
    }

    .page_body .box_list .box_body {
        font-size: 0.62em;
        padding: 1.3em 3vw 1.8em;
    }

    .page_body .page_img_text_box {
        font-size: 0.9em;
        width: calc(100% - 10px);
        margin: 13vw auto 18vw;
    }

    .page_body .page_text_box {
        padding: 1em 0.8em;
    }

    .page_body .page_text_box::before {
        width: calc(100% + 30px);
        height: calc(100% + 30px);
        left: -15px;
        bottom: -15px;
    }

    .page_body .page_text_box::after {
        content: "▲";
        display: inline-block;
        width: 2em;
        height: 2em;
        font-size: 2em;
        color: var(--main-color);
        position: absolute;
        z-index: -2;
        left: 50%;
        top: -1em;
        transform: translateX(-50%);
        text-align: center;
    }

    .page_body .page_text_box p {
        font-size: 3.4vw;
    }

    .page_body .firststep .common_more_btn a {
        font-size: 0.68em;
    }

    /*表*/
    .page_body .firststep {
        gap: 0;
        flex-wrap: wrap;
    }

    .page_body .firststep .grid_header {
        padding: 8px 1em;
        text-align: left;
        z-index: -1;
    }

    .page_body .firststep .grid_headers {
        min-width: fit-content;
        font-size: 3.8vw;
        gap: 1px;
        flex-direction: row;
        font-weight: 600;
        position: relative;
    }

    .page_body .firststep .grid_header:first-child {
        font-size: 3.8vw;
        position: sticky;
        left: 0;
        z-index: 2;
    }

    #page_firststep .page_body .firststep .grid_header,
    #page_firststep .page_body .firststep .grid_row .grid_item {
        width: auto;
        min-height: 40.41vw;
        min-width: 43vw;
        line-height: 1;
    }

    #page_firststep .page_body .firststep .grid_header:first-child,
    #page_firststep .page_body .firststep .grid_item:first-child {
        min-width: 30vw;
        padding: 0;
        font-size: 3.4vw;
        line-height: 1.5;
    }

    .page_body .firststep .grid_row {
        gap: 1px;
        flex-direction: row;
        width: fit-content;
        width: 93%;
    }

    .page_body .firststep .grid_item {
        padding: 8px 3.13vw;
        border: 1px solid #fff;
        text-align: left;
        font-size: 3.4vw;
        background-color: #f8f8f8;
        display: grid;
        place-items: center center;
        font-weight: 400;
        position: relative;
    }

    .page_body .firststep .grid_item .common_text_mini {
        position: absolute;
        bottom: 11vw;
        font-size: 0.7em;
    }

    .page_body .firststep .grid_item:first-child {
        font-size: 3.8vw;
        text-align: center;
        position: sticky;
        left: 0;
        z-index: 2;
    }

    .page_body .firststep .grid_row {
        position: relative;
    }

    .page_body .firststep .grid_rows:nth-of-type(4) .grid_item:first-child {
        border-radius: 0;
    }

    .page_body .firststep .grid_future {
        order: 4;
        border-radius: 0 0 6px 6px;
    }

    .page_body .firststep .grid_future::after {
        border-radius: 0 0 6px 6px;
    }

    #page_secondstep .page_body h2.firststep,
    #page_firststep .page_body h2.firststep {
        font-size: 0.9em;
        display: inline;
    }

    #page_secondstep .page_body .ttl_boxs h2.firststep {
        font-size: 0.6em;
        display: inline;
    }

    #page_secondstep .page_body .titile_wrap_shrink {
        margin: 15vw auto 15vw;
    }

    #page_secondstep .common_hr,
    #page_firststep .common_hr {
        margin-top: 85px;
    }

    #page_secondstep .page_body .ttl_boxs h2.firststep .common_text_mini {
        color: var(--text-color);
    }

    /*===========
     お客様の声
    ============*/

    #page_voice .review_list {
        gap: 50px 15px;
    }

    #page_voice .review_img {
        height: 40vw;
        width: 100%;
    }

    #page_voice .cont .ttl {
        font-size: 4.2vw;
    }

    #page_voice .review_list .text_box {
        box-shadow: 0 0 6px rgba(56, 56, 56, 0.06);
        margin-top: unset;
        padding: 5vw;
    }

    #page_voice .review_item {
        gap: unset;
    }

    #page_voice .review_list .text_box .review_title {
        font-size: 5.1vw;
        margin-bottom: 0.2em;
    }

    #page_voice .review_list .text_box .text {
        font-size: 3.7vw;
        margin-bottom: 0.8em;
    }

    #page_voice .review_list .text_box .catch {
        font-size: 4vw;
        margin-bottom: 0.4em;
    }

    #page_voice .review_item {
        width: 100%;
        grid-template-columns: calc(100% - var(--margin-wide));
        grid-template-rows: inherit;
        grid-template-areas:
            "area1"
            "area2"
            "area3"
            "area4";
        justify-content: center;
        gap: 10px;
    }

    .filter-buttons {
        margin: 6vw 0 7vw;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2.5vw 2vw;
    }

    .filter-button {
        margin-right: 0;
        width: 100%;
        padding: 0.6em 0;
    }

    #page_voice .voice_sec .cont .review_title {
        font-size: 4.6vw;
    }

    #page_voice .voice_sec .cont .text_box .text {
        font-size: 3.9vw;
    }

    #page_voice .voice_sec .cont .text_box .catch {
        font-size: 4vw;
    }

    #page_voice .voice_sec .cont .text_box .buy_text {
        font-size: 3.8vw;
    }

    /*===========
     販売実績一覧
    ============*/
    .realestate_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 10vw 0;
    }

    .realestate_title {
        grid-template-columns: 30% auto;
        gap: 0 2.5vw;
        align-items: center;
    }

    .realestate_list .infolist_row {
        grid-template-columns: 30% auto;
        grid-column-gap: 2vw;
    }

    #page_realestate.realstate_single .realestate_list .realestate_item {
        margin-bottom: 4vw;
    }

    .realestate_list .infolist_row .info_title {
        height: 100%;
        width: 100%;
        display: grid;
        place-items: center center;
        padding: 1em 0.8em;
    }

    #page_realestate.realstate_single .page_body {
        padding: 0;
    }

    #page_realestate.realstate_single .page_body .realestate_img {
        width: 100%;
        height: 80vw;
    }

    #page_realestate.realstate_single .realestate_title {
        grid-template-columns: 30% auto;
        height: fit-content;
    }

    #page_realestate.realstate_single .realestate_title .realestate_torihiki {
        font-size: 3.6vw;
        width: 100%;
    }

    #page_realestate.realstate_single .realestate_title .realestate_name {
        font-size: 4.8vw;
    }

    #page_realestate.realstate_single .realstate_single {
        padding: 0;
    }

    /*=========
          コラム
        ==========*/

    .column_list {
        grid-template-columns: 1fr;
        gap: 30px 0;
        margin: 0;
    }

    .column_list .column_article {
        padding-bottom: 15px;
        font-size: 5vw;
    }

    .column_list .column_text {
        margin-bottom: 2em;
    }

    .column_list .article_bottom {
        padding-top: 15px;
    }

    .column_list .column_img {
        height: 35vw;
    }

    .column_list .column_img img {
        height: 100%;
        object-fit: cover;
    }

    /* 任意売却 */
    /* .page_ninbai .page_body {
        padding: 20vw 0;
    } */

    .page_ninbai .grid_title {
        font-size: 1.8em;
        margin: 15vw 0 4vw;
    }

    .ninbai_top_sec .list {
        margin-bottom: 6vw;
    }

    .ninbai_top_sec .list ul {
        grid-template-columns: 1fr;
        gap: 5vw 0;
    }

    .ninbai_top_sec .list li .img img {
        aspect-ratio: 2/1;
    }

    .ninbai_top_sec .list li .text_box .title {
        font-size: 4vw;
    }

    .ninbai_top_sec .catch {
        font-size: 5vw;
    }

    .ninbai_about_sec .top_text {
        font-size: 3.5vw;
        margin-bottom: 6vw;
    }

    .ninbai_about_sec .list ul {
        gap: 2vw;
    }

    .ninbai_about_sec .list li {
        font-size: 3.7vw;
        padding: 0.7em;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .ninbai_merit_sec {
        padding: 13vw 0;
        margin-top: 15vw;
    }

    .ninbai_demerit_sec {
        padding: 13vw 0;
    }

    .ninbai_common_sec .grid_title {
        margin: 0 0 4vw;
    }

    .ninbai_common_sec .merit_cont .item {
        display: block;
    }

    .ninbai_common_sec .merit_cont .item+.item {
        margin-top: 6vw;
    }

    .ninbai_common_sec .merit_cont .item .img {
        width: 100%;
    }

    .ninbai_common_sec .merit_cont .item .img img {
        width: 100%;
        aspect-ratio: 2/1;
        object-fit: cover;
    }

    .ninbai_common_sec .merit_cont .item .text_box {
        padding: 1.5em;
    }

    .ninbai_common_sec .merit_cont .item .text_box .en {
        font-size: 3.2vw;
        border-radius: 10vw;
        margin-bottom: 0.7em;
    }

    .ninbai_common_sec .merit_cont .item .text_box .title {
        font-size: 4.3vw;
    }

    .ninbai_common_sec .merit_cont .item .text_box .text {
        font-size: 3.5vw;
    }

    .ninbai_contact_sec {
        background-image: url("/wp-content/themes/child/image/ninbai_contact_bg_sp.jpg");
        padding: 15vw 0;
    }

    .ninbai_contact_sec .title_box {
        margin-bottom: 6vw;
    }

    .ninbai_contact_sec .title_box .en {
        font-size: 5vw;
    }

    .ninbai_contact_sec .title_box .jp {
        font-size: 6vw;
    }

    .ninbai_contact_sec .btn a {
        width: 90%;
        min-block-size: 13vw;
        border-radius: 10vw;
        font-size: 4vw;
    }

    .ninbai_contact_sec .btn a::after {
        width: 2.5vw;
        right: 5vw;
    }

    .common_flow_sec .list .item {
        gap: 0 3vw;
    }

    .common_flow_sec .list .item+.item {
        margin-top: 7vw;
    }

    .common_flow_sec .list .item .step_box {
        width: 17vw;
        font-size: 4.5vw;
    }

    .common_flow_sec .list .item .text_box .title {
        font-size: 4.2vw;
        line-height: 1.5;
    }

    .common_flow_sec .list .item .text_box .text {
        font-size: 3.5vw;
    }

    .common_flow_sec .list .item::before {
        top: 8vw;
        left: 8.2vw;
    }

    .page_souzoku .grid_title {
        font-size: 1.8em;
        margin: 15vw 0 4vw;
    }

    .souzoku_top_sec .sec_title {
        font-size: 5vw;
        margin-bottom: 5vw;
    }

    .souzoku_top_sec .list {
        width: 100%;
        padding: 1.5em;
    }

    .souzoku_top_sec .list ul {
        grid-template-columns: 1fr;
        gap: 3vw;
    }

    .souzoku_top_sec .list li {
        font-size: 3.7vw;
        gap: 0 2vw;
    }

    .souzoku_suggest_sec {
        padding: 13vw 0;
        margin-top: 15vw;
    }

    .souzoku_suggest_sec .sec_title {
        font-size: 4.4vw;
        margin-bottom: 6vw;
    }

    .souzoku_suggest_sec .cont .item {
        display: block;
    }

    .souzoku_suggest_sec .cont .item+.item {
        margin-top: 6vw;
    }

    .souzoku_suggest_sec .cont .item .img {
        width: 100%;
    }

    .souzoku_suggest_sec .cont .item .img img {
        width: 100%;
        aspect-ratio: 2/1;
        object-fit: cover;
    }

    .souzoku_suggest_sec .cont .item .text_box {
        padding: 1em;
    }

    .souzoku_suggest_sec .cont .item .text_box .en {
        font-size: 3.2vw;
        border-radius: 10vw;
        margin-bottom: 0.7em;
    }

    .souzoku_suggest_sec .cont .item .text_box .title {
        font-size: 4.3vw;
    }

    .souzoku_suggest_sec .cont .item .text_box .text {
        font-size: 3.5vw;
    }

    .souzoku_pickup_sec {
        background-image: url("/wp-content/themes/child/image/souzoku_pickup_bg_sp.jpg");
        padding: 13vw 0;
    }

    .souzoku_pickup_sec .text_box {
        margin-bottom: 8vw;
    }

    .souzoku_pickup_sec .text_box .sec_title {
        font-size: 7vw;
        margin-bottom: 6vw;
    }

    .souzoku_pickup_sec .btn a {
        width: 90%;
        min-block-size: 13vw;
        border-radius: 10vw;
        font-size: 4vw;
    }

    .souzoku_pickup_sec .text_box .text {
        font-size: 3.5vw;
        text-align: left;
        line-height: 1.7;
    }

    .page_staff .staff_cont .item .item_box {
        flex-direction: column;
        gap: 5vw 0;
    }

    .page_staff .staff_cont .item .item_box .img {
        width: 100%;
    }

    .page_staff .staff_cont .item .item_box .text_area .name {
        font-size: 4.7vw;
    }

    .page_staff .staff_cont .item .item_box .text_area .name::first-letter {
        font-size: 6vw;
    }

    .page_staff .staff_cont .item .item_box .text_area .name .en {
        font-size: 4vw;
    }

    .page_staff .staff_cont .item .item_box .text_area .sub_text {
        font-size: 4.4vw;
    }

    .page_staff .staff_cont .item .comment_box {
        width: 100%;
        padding: 5vw;
        margin: 7vw 0 0;
    }

    .page_staff .staff_cont .item .comment_box .comment {
        font-size: 4.3vw;
    }

    .page_staff .staff_cont .item .comment_box .text {
        font-size: 3.6vw;
        margin-top: 4vw;
    }

    .page_staff .staff_cont .item+.item {
        margin-top: 15vw;
    }

    .common_page_property .cont {
        grid-template-columns: 1fr;
        gap: 5vw 0;
    }

    .common_page_property .cont .img_box .link {
        width: 100%;
        height: 50vw;
        display: block;
    }

    .common_page_property .cont .text_box ul li .catch {
        font-size: 4.6vw;
    }

    .common_page_property .cont .text_box .ttl {
        font-size: 6.1vw;
        margin-bottom: .6em;
    }

    .common_page_property .cont .img_box .link .img {
        width: 100%;
        height: 100%;
    }

    .common_page_property .cont .img_box img {
        height: 100%;
    }

    .common_page_property .property_box .theme {
        font-size: 4.7vw;
        gap: 0 4vw;
    }

    .common_page_property .property_box .item_box {
        overflow-x: scroll;
        margin-bottom: 10vw;
    }

    .common_page_property .property_box {
        margin-top: 8vw;
    }

    .common_page_property .cont .text_box ul li+li {
        margin-top: 1vw;
    }

    .common_page_property .cont .text_box ul li {
        gap: 0 2vw;
        grid-template-columns: 18% 1fr;
    }

    .common_page_property .cont .text_box ul li .price {
        font-size: 8vw;
    }

    .common_page_property .property_box .item_box .item ul li {
        gap: 0 4vw;
    }

    .common_page_property .property_box .item_box .item ul li .catch {
        font-size: 4.1vw;
        width: 30vw;
        min-block-size: 14vw;
    }

    .common_page_property .property_box .item_box .item ul li .text {
        font-size: 4.3vw;
        width: 30vw;
    }

    .common_page_property .property_box .common_btn_area .common_btn_2,
    .common_page_property .property_box .common_btn_area .common_btn_1 {
        display: flex;
        align-items: center;
        padding-left: 15vw;
    }

    .common_page_property .property_box .common_btn_area .common_btn_2 .common_text_mini,
    .common_page_property .property_box .common_btn_area .common_btn_1 .common_text_mini {
        margin-top: 2vw;
    }

    .common_page_property .cont .text_box ul li .text {
        font-size: 3.7vw;
    }

    .page_kaitori .grid_title {
        font-size: 1.8em;
        margin: 15vw 0 4vw;
    }

    .kaitori_top_sec .sec_title {
        font-size: 5vw;
        margin-bottom: 4vw;
    }

    .kaitori_top_sec .list {
        width: 100%;
        padding: 1.5em;
        margin: 0 auto 5vw;
    }

    .kaitori_top_sec .list ul {
        grid-template-columns: 1fr;
        gap: 3vw;
    }

    .kaitori_top_sec .list li {
        font-size: 3.7vw;
        gap: 0 2vw;
    }

    .kaitori_top_sec .catch {
        font-size: 5vw;
    }

    .page_kaitori .page_body .kaitori_top_sec .text {
        font-size: 3.4vw;
    }

    .page_kaitori .page_body .kaitori_top_sec .sec_title {
        font-size: 5vw;
    }

    .page_kaitori .page_body .kaitori_point_sec .sec_title .color {
        font-size: 7.6vw;
    }

    .kaitori_point_sec {
        padding: 13vw 0;
        margin-top: 15vw;
    }

    .kaitori_point_sec .sec_title {
        font-size: 5vw;
        margin-bottom: 5vw;
    }

    .kaitori_point_sec .list ul {
        flex-direction: column;
        gap: 5vw 0;
    }

    .kaitori_point_sec .list ul+ul {
        margin-top: 5vw;
    }

    .kaitori_point_sec .list li {
        width: 100%;
    }

    .kaitori_point_sec .list li .img img {
        aspect-ratio: 2/1;
    }

    .kaitori_point_sec .list li .text_box .en {
        font-size: 3.2vw;
        padding: 0.2em 1em;
        margin-bottom: 0.5em;
    }

    .kaitori_point_sec .list li .text_box .title {
        font-size: 4.5vw;
    }

    .kaitori_point_sec .list li .text_box .text {
        font-size: 3.5vw;
    }

    .kaitori_contact_sec {
        background-image: url(/wp-content/themes/child/image/kaitori_contact_bg_sp.jpg);
        padding: 15vw 0;
        margin-top: 15vw;
    }

    .kaitori_contact_sec .title_box {
        margin-bottom: 6vw;
    }

    .kaitori_contact_sec .title_box .en {
        font-size: 5vw;
    }

    .kaitori_contact_sec .title_box .jp {
        font-size: 6vw;
    }

    .kaitori_contact_sec .btn a {
        width: 90%;
        min-block-size: 13vw;
        border-radius: 10vw;
        font-size: 4vw;
    }

    .kaitori_contact_sec .btn a::after {
        width: 2.5vw;
        right: 5vw;
    }

    .page-id-695 #page_contact .common-contactform .info_ttl {
        font-size: 4vw;
        margin-left: unset;
    }

    .page-id-695 #page_contact .bukken_contact th {
        justify-content: left;
    }

    .archive_columns_list .link .content .text_box .text_area {
        flex-direction: column-reverse;
        gap: 1vw 0;
    }

    .archive_columns_list .link .content .text_box {
        align-items: center;
        gap: 0 5vw;
    }

    #columns_sec {
        padding: 20vw 0;
    }

    #columns_sec .ttl_box {
        margin-bottom: 2vw;
    }

    #columns_sec .ttl_box .ttl {
        font-size: 6vw;
    }

    #columns_sec .ttl_box .ttl .color {
        font-size: 8vw;
    }

    .archive_columns_list .link .content {
        padding: 4vw 2vw 4vw 0;
        gap: 0 4vw;
    }

    .archive_columns_list .link .content .text_box .text_area .date {
        font-size: 3.6vw;
    }

    .archive_columns_list .link .content .text_box .text_area .column {
        font-size: 3.6vw;
    }

    .archive_columns_list .link .content .text_box .ttl {
        font-size: 4.1vw;
    }

    .archive_columns_list .link .content .icon {
        width: 10vw;
    }

    .common_contact .contact_heading .common_number::before {
        background-image: url("/wp-content/themes/child/image/icon_line_white.svg");
        top: -3vw;
        left: -5vw;
        width: 7vw;
    }

    .page_body .common_more_btn {
        margin: 1em 0;
    }

    #page_secondstep .baikyaku_info .common_btn_area.firststep .common_more_btn {
        margin: 1em auto;
    }

    .page_body .shop_info .shop_info_img {
        grid-template-columns: 1fr;
        gap: 5vw 0;
        margin-bottom: 3vw;
    }

    .page_body .table_box table tr th {
        width: 14vw;
        font-size: 3.8vw;
        padding: 2.5vw;
    }

    .page_body .table_box table tr td {
        width: 30vw;
        font-size: 3.6vw;
        padding: 2.5vw;
    }

    .page_body .table_box table {
        width: 162vw;
        border-spacing: 1vw 1.5vw;
    }

    .page_body .table_box {
        overflow-x: scroll;
    }

    .common_text_big {
        font-size: 1.5em;
    }

    /* header */

    .ren_header {
        height: 10vw;
    }

    .ren_header .cont {
        padding: 2.6vw;
        gap: 10vw;
    }

    .ren_header .cont .logo_box {
        width: 72vw;
    }

    .header_box .logo_box {
        background-color: #fff;
        margin: 18px 0 18px 10px;
    }

    .logo_box a {
        display: block;
        width: 270px;
        max-width: 72vw;
    }

    .header_box .logo_box .hamburger {
        background-color: #fff;
    }

    .header_box .hamburger {
        background-color: #fff;
        border: 1px solid #DDDDDD;
        border-radius: unset;
        right: 10px;
    }

    .header_box .hamburger span {
        background-color: #1A1311;
    }

    .header_box {
        width: 100%;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 600;
        background-color: #fff;
    }

    .top_mv .cont {
        padding-top: 0;
    }

    .top_mv {
        padding: 3.43svh 0 3.43svh;
        min-height: calc(100svh - 70px);
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }

    .top_mv .cont .text_box .catch {
        background-color: #fff;
        font-size: 3.5vw;
        padding: .3em 2.5vw;
        letter-spacing: 0;
        color: #1a1410;
    }

    .top_mv .cont .text_box .ttl {
        font-size: 4.2vw;
        letter-spacing: 0;
    }

    .top_mv .cont .text_box .ttl .line {
        font-size: 8vw;
        letter-spacing: 0;
        margin: 1vw auto 0;
        padding: 2.5vw 2.5vw 2.5vw 2.5vw;
    }

    .top_mv .cont .text_box .ttl .line .color .size {
        font-size: 9.3vw;
        transform: translateY(0.05em);
    }

    .top_mv .cont .text_box .ttl .line+.line {
        margin-top: 1.5vw;
    }

    .common_btn_box .theme {
        margin: 0 auto 1.5vw;
        font-size: 6.4vw;
    }

    .common_contact_box .link .icon_box {
        width: 10.1vw;
        height: 10.1vw;
        padding: unset;
    }

    .common_contact_box .link .text {
        font-size: 4.3vw;
    }

    .common_btn_box .theme .size {
        font-size: 12.8vw;
    }

    .common_contact_box {
        flex-direction: column;
        gap: 1.5vw 0;
    }

    .common_contact_box .link {
        width: 100%;
        min-block-size: 19.5vw;
        padding: 0 4vw;
        justify-content: flex-start;
        gap: 0 5vw;
        box-shadow: 3px 3px 0px #DDDDDD;
    }

    .common_contact_box .link::after {
        width: 2vw;
        height: 2vw;
        margin-left: auto;
    }

    .common_btn_box .mini {
        font-size: 3.2vw;
        text-align: center;
    }

    .top_mv::before {
        background-image: url(/wp-content/themes/child/image/mv_bg_img_sp.svg);
    }

    .top_mv .img {
        /* height: 35.4svh; */
        /* width: 90vw; */
        /* top: 2.36svh; */
    }

    .top_mv .img::before {
        /* content: ""; */
        /* position: absolute; */
        /* inset: 0; */
        background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.6));
    }

    .common_ren_contact_sec {
        padding: 11vw 0 8.5vw;
        background-image: url("/wp-content/themes/child/image/common_contact_img_sp.jpg");
    }

    .common_ren_contact_sec .contact .ttl_box .ttl {
        font-size: 5.3vw;
        padding-bottom: 1.1vw;
        border-bottom: 3px solid #fff;
        line-height: 1.1;
    }

    .common_ren_contact_sec .contact .ttl_box .ttl .size {
        font-size: 17vw;
        margin-right: 1.5vw;
    }

    .common_ren_contact_sec .contact .ttl_box .ttl .big {
        font-size: 8.5vw;
        padding-bottom: 2vw;
        margin-bottom: .2vw;
    }

    .common_ren_contact_sec .contact .text_box {
        flex-direction: column;
        margin: unset;
        gap: 0;
    }

    .common_ren_contact_sec .contact .text_box .tel_box .theme {
        font-size: 4.3vw;
    }

    .common_ren_contact_sec .contact .text_box .tel_box .theme::before {
        height: 5.2vw;
    }

    .common_ren_contact_sec .contact .text_box .tel_box .theme::after {
        height: 5.2vw;
    }

    .common_ren_contact_sec .contact .text_box .tel_box .tel {
        font-size: 10.7vw;
        justify-content: center;
        gap: 0 2.5vw;
        margin-bottom: 2vw;
    }

    .common_ren_contact_sec .contact .text_box .tel_box .tel::before {
        width: 6.2vw;
        height: 7vw;
    }

    .common_ren_contact_sec .contact .text_box .tel_box .text {
        font-size: 3.2vw;
        margin: 0 0 6vw 0;
    }

    .common_ren_contact_sec .contact .text_box .common_btn_box .theme {
        font-size: 4.3vw;
    }

    .common_btn_box .theme::before,
    .common_btn_box .theme::after {
        height: 5.2vw;
    }

    .common_contact_box .link {
        width: 100%;
    }

    .common_btn_box {
        width: 100%;
    }

    .common_contact_box {
        gap: 3vw 0 !important;
    }

    .common_ren_contact_sec .note {
        font-size: 3.2vw;
        text-align: center;
        margin: 4vw auto 0;
    }

    .common_ren_contact_sec .note_box {
        text-align: center;
        margin: 0 auto;
        width: 100%;
    }

    .common_ren_contact_sec .note+.note {
        margin: 1vw auto 0;
    }

    .choose_sec .head_box {
        padding: 74vw 0 14vw;
    }

    .choose_sec .head_box::before {
        background: url("/wp-content/themes/child/image/worry_bg_img_sp.svg");
    }

    .choose_sec .head_box .img_box {
        margin-bottom: 5vw;
    }

    .choose_sec .head_box .img_box .icon {
        width: 67vw;
        display: block;
    }

    .choose_sec .head_box .img_box .speech_bubble .bg_text1 {
        top: -40vw;
        right: 0;
        left: unset;
        background-image: url("/wp-content/themes/child/image/speech_bubble1_sp.png");
    }

    .choose_sec .head_box .img_box .speech_bubble .bg_text2 {
        left: 0;
        top: -23vw;
        background-image: url("/wp-content/themes/child/image/speech_bubble2_sp.png");
    }

    .choose_sec .head_box .img_box .speech_bubble .bg_text3 {
        top: -58vw;
        background-image: url("/wp-content/themes/child/image/speech_bubble3_sp.png");
        left: 0;
    }

    .choose_sec .head_box .img_box .speech_bubble .bg_text4 {
        right: 0;
        top: -5vw;
        background-image: url("/wp-content/themes/child/image/speech_bubble4_sp.png");
    }

    .choose_sec .head_box .img_box .speech_bubble .bg_text {
        font-size: 5.4vw;
        padding: 2vw 2vw 7vw 3vw;
        white-space: nowrap;
    }

    .choose_sec .head_box .text {
        font-size: 8vw;
        line-height: 1.52;
    }

    .choose_sec .head_box::after {
        width: 80vw;
        height: 21vw;
        bottom: 11vw;
    }

    .choose_sec .choose_box {
        padding-top: 0;
    }

    .choose_sec .choose_box .text_box .ttl .mini {
        font-size: 8.6vw;
    }

    .choose_sec .choose_box .text_box {
        margin-bottom: 21vw;
    }

    .choose_sec .choose_box .text_box .ttl {
        font-size: 8.6vw;
        line-height: 1.4;
    }

    .choose_sec .choose_box .text_box .ttl .line {
        font-size: 6.4vw;
    }

    .choose_sec .choose_box .text_box .catch {
        margin-bottom: 0.5vw;
        font-size: 4vw;
        letter-spacing: 0;
        text-align: left;
    }

    .choose_sec .choose_box .text_box .catch .size {
        font-size: 6.4vw;
    }

    .choose_sec .choose_box .text_box .border {
        padding: 0.5vw 1.6vw;
        font-size: 4vw;
    }

    .choose_sec .choose_box .text_box .theme+.theme .border.paragraph {
        display: block;
        margin: unset;
        line-height: 1.4;
        width: fit-content;
    }

    .choose_sec .choose_box .text_box .theme .border+.border {
        margin: 1.5vw;
        letter-spacing: 0;
    }

    .choose_sec .choose_box .text_box .text {
        margin-top: 1vw;
        font-size: 4vw;
        text-align: left;
        letter-spacing: 0;
        line-height: 1.5;
    }

    .choose_sec .choose_box .text_box .text .line {
        font-size: 5.2vw;
        letter-spacing: 0;
        border-bottom: 3px solid #1A1311;
    }


    .choose_sec .wrap.two {
        max-width: 92.6%;
    }

    .choose_sec .choose_box .text_box .theme {
        text-align: left;
        line-height: 2.3;
    }


    .choose_sec .choose_box .text_box .theme+.theme {
        margin-top: 0vw;
    }

    .choose_sec .choose_box .cont {
        grid-template-columns: 1fr;
        gap: 8vw 0;
    }

    .choose_sec .choose_box .cont .item {
        padding: 9.6vw 4vw 6.5vw 4vw;
        position: relative;
        min-height: 37.5vw;
    }

    .choose_sec .choose_box .cont .item .speech_bubble {
        padding: 1.5vw 3vw;
        line-height: 1;
        top: -5vw;
    }

    .choose_sec .choose_box .cont .item .speech_bubble .text .num {
        font-size: 6.4vw;
    }

    .choose_sec .choose_box .cont .item .speech_bubble .text {
        font-size: 3.8vw;
        display: flex;
        align-items: center;
    }

    .choose_sec .choose_box .cont .item::after {
        content: "";
        position: absolute;
        width: 5.3vw;
        height: 5.3vw;
        background-color: #1A1311;
        bottom: 10px;
        right: 10px;
        clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    }

    .choose_sec .choose_box .cont .item .catch {
        font-size: 4.3vw;
        margin-bottom: unset;
        line-height: 2.4;
    }

    .choose_sec .choose_box .cont .item .catch .size {
        font-size: 8.4vw;
        padding-bottom: 1.5vw;
    }

    .choose_sec .choose_box .cont .item .catch .big {
        font-size: 8.6vw;
        margin: 0 1.2vw 0.2vw 0;
        padding-bottom: 0.1em;
    }

    .choose_sec {
        margin-bottom: 8vw;
    }

    .reason_sec .reason_list ul li .text_box {
        padding: 48.6vw 0 0;
        position: relative;
        z-index: 1;
    }

    .reason_sec .reason_list ul li .img {
        height: 61.3vw;
        left: 50%;
        translate: -50%;
        width: 90.3vw;
    }

    .reason_sec .reason_list ul li .text_box .en_text {
        margin: unset;
        font-size: 6.4vw;
    }

    .reason_sec .reason_list ul li .text_box .en_text .num {
        font-size: 12.8vw;
    }

    .reason_sec .reason_list ul li .text_box .en_text::after {
        width: 91vw;
        left: 2px;
    }

    .reason_sec .reason_list ul li .text_box .text_area {
        background-color: unset;
        padding: 4vw;
    }

    .reason_sec .reason_list ul li .text_box .text_area .theme {
        font-size: 5vw;
        width: unset;
        margin-bottom: 2vw;
        line-height: 1.4;
    }

    .reason_sec .reason_list ul li .text_box .text_area .theme .size {
        font-size: 8.5vw;
    }

    .reason_sec .reason_list ul li .text_box .text_area .text {
        width: unset;
        font-size: 3.8vw;
        letter-spacing: 0;
    }

    .reason_sec::before {
        content: unset;
    }

    .reason_sec .reason_list ul li:nth-child(even) .img {
        left: 50%;
        top: 7vw;
    }

    .reason_sec .reason_list ul li .text_box .en_text {
        text-align: left;
        text-shadow: 3px -1px 0 #ffffff;
    }

    .reason_sec .reason_list ul li:nth-child(2) .text_box {
        padding: 55.6vw 0 0;
    }

    .reason_sec .reason_list ul li:nth-child(even) .en_text::after {
        right: 0vw;
        clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 100%, 0% 100%);
        margin-left: 0;
    }

    .reason_sec .reason_list ul li:nth-child(even) .text_area {
        padding: 4vw;
    }


    .reason_sec .reason_list ul li:nth-child(3) {
        margin-top: 6vw;
    }

    .reason_sec .reason_list ul li:nth-child(3) .text_box {
        padding-top: 49vw;
    }

    .reason_sec .reason_btn .link {
        width: 74.7vw;
        min-block-size: 16vw;
    }

    .reason_sec .reason_list {
        margin-bottom: 5.4vw;
    }

    .reason_sec {
        margin-bottom: 16vw;
    }

    .Portfolio_sec {
        padding: 16vw 0;
    }

    .common_ttl_box .ttl {
        font-size: 8vw;
        margin-bottom: 4vw;
    }

    .Portfolio_sec .head_box {
        flex-direction: column;
        align-items: center;
        margin-bottom: unset;
    }

    .common_ttl_box .ttl .mini {
        font-size: 4.3vw;
    }

    .reason_sec .wrap.three {
        max-width: 92.6%;
    }

    .Portfolio_sec .wrap {
        max-width: 92.6%;
    }

    .common_ttl_box .catch {
        font-size: 3.7vw;
        margin-bottom: 6vw;
    }

    .Portfolio_sec .porfolio_table_box {
        height: unset;
        overflow-x: scroll;
        overflow-y: hidden;
        margin-bottom: 9.3vw;
    }

    .Portfolio_sec .porfolio_table_box table tr th:nth-child(1) {
        width: 32vw;
    }

    .Portfolio_sec .porfolio_table_box table tr th,
    .Portfolio_sec .porfolio_table_box table tr td {
        min-width: 40vw;
        padding: 4vw;
    }

    .Portfolio_sec .porfolio_table_box table tr th:nth-child(2) {
        border-left: unset;
        border-top: 1px solid #fff;
    }

    .Portfolio_sec .porfolio_table_box table tr th:nth-child(3) {
        border-top: 1px solid #fff;
        border-left: unset;
    }

    .Portfolio_sec .porfolio_table_box table tr th:nth-child(4) {
        border-top: 1px solid #fff;
        border-left: unset;
    }

    .Portfolio_sec .porfolio_table_box table tr th:nth-child(5) {
        border-top: 1px solid #fff;
        border-left: unset;
    }

    .Portfolio_sec .porfolio_table_box table tr th {
        font-size: 4vw;
    }

    .Portfolio_sec .porfolio_table_box table tr td {
        padding: 4vw 3vw;
        width: 40vw;
        font-size: 3.4vw;
        letter-spacing: 0;
        line-height: 1.9;
        text-align: left;
    }

    .Portfolio_sec .head_box .Portfolio_box .link {
        width: 74.7vw;
        min-block-size: 16vw;
        margin: 0 auto;
    }

    .voice_sec {
        padding: 16vw 0;
    }

    .voice_sec .common_ttl_box {
        margin-bottom: 5vw;
    }

    .voice_sec::before {
        background: url(/wp-content/themes/child/image/voice_img_bg_sp.svg);
        width: 100%;
        height: 100%;
    }

    .voice_sec .common_ttl_box .catch {
        font-size: 3.7vw;
    }

    .voice_sec .voice_slider_box {
        transform: translateX(0);
        width: 164vw;
    }

    .voice_sec ul .voice_slider_box .slick-track li {
        /* width: 80vw !important; */
        margin: 3px 2.5vw;
    }

    .voice_sec .voice_slider_box button.slick-prev.slick-arrow {
        top: unset;
        width: 13.3vw;
        height: 13.3vw;
        bottom: 0;
        left: 2.5vw;
        transform: unset;
    }

    .voice_sec .voice_slider_box button.slick-next.slick-arrow {
        top: unset;
        width: 13.3vw;
        height: 13.3vw;
        left: 18vw;
        bottom: 0;
        transform: unset;
    }

    .voice_sec .voice_slider_box .slick-dots {
        bottom: 6vw;
        left: 33vw;
        width: 64.8vw;
        margin-bottom: 0;
        padding-bottom: 0;
    }

    .voice_sec .voice_box .link {
        width: 74.8vw;
        margin: 0 14vw;
        min-block-size: 16vw;
        font-size: 4.3vw;
    }

    .voice_sec .voice_slider_box ul {
        margin-bottom: 2.5vw;
        padding-bottom: 16vw;
    }

    .voice_sec .voice_slider_box button.slick-next.slick-arrow::before {
        width: 13px;
        height: 13px;
        top: 4.5vw;
        left: 4vw;
    }

    .voice_sec .voice_slider_box button.slick-prev.slick-arrow::before {
        width: 13px;
        height: 13px;
        top: 4.5vw;
        left: 5vw;
    }

    .voice_sec .voice_box .link::after {
        right: 5vw;
        width: 8px;
        height: 10px;
    }

    .recommendation_sec {
        padding: 16vw 0;
    }

    .recommendation_sec .common_ttl_box {
        margin-bottom: 8vw;
    }

    .recommendation_sec .recommendation_list ul {
        grid-template-columns: 1fr;
    }

    .recommendation_sec .recommendation_list ul li .link {
        padding: 2.9vw 2.4vw 10.7vw;
    }

    .recommendation_sec .recommendation_list ul li::before {
        width: 5.4vw;
        height: 5.4vw;
    }

    .recommendation_sec .recommendation_list ul li .img {
        height: 49.4vw;
        margin-bottom: 4vw;
    }

    .recommendation_sec .recommendation_list ul li .ttl_box {
        margin: unset;
        align-items: flex-start;
    }

    .recommendation_sec .recommendation_list ul li .num_box {
        margin-right: 2vw;
        padding-right: 2vw;
    }

    .recommendation_sec .recommendation_list ul li .ttl_box .num_box .en_text {
        font-size: 3.5vw;
        text-align: center;
    }

    .recommendation_sec .recommendation_list ul li .ttl_box .num_box .num {
        font-size: 8.5vw;
    }

    .recommendation_sec .recommendation_list ul li .ttl_box .theme_box .theme {
        font-size: 4.1vw;
    }

    .recommendation_sec .recommendation_list ul li .ttl_box .theme_box .theme .size {
        font-size: 5.4vw;
    }

    .recommendation_sec .recommendation_list ul li .ttl_box .theme_box .catch {
        font-size: 3.5vw;
        text-align: left;
    }

    .recommendation_sec .recommendation_list ul li .text {
        font-size: 3.7vw;
    }

    .recommendation_sec .wrap.three {
        max-width: 95vw;
    }

    .consideration_sec {
        width: 95vw;
        margin: 0 auto 10vw;
    }

    .consideration_sec .wrap {
        max-width: 100%;
    }

    .consideration_sec .cont {
        gap: 8.9vw;
        flex-direction: column;
        padding: 10vw 3.3vw 17.9vw;
        margin: unset;
    }

    .consideration_sec .cont .common_ttl_box {
        text-align: center;
    }

    .consideration_sec .cont .common_ttl_box .ttl {
        line-height: 1.3;
        margin: unset;
        position: relative;
    }

    .consideration_sec .cont .common_ttl_box .ttl::before {
        width: 39vw;
        aspect-ratio: 167/41;
        bottom: -7vw;
        right: -13vw;
        rotate: -5deg;
    }

    .consideration_sec .cont .text_box .text_area+.text_area {
        margin-top: 6vw;
    }

    .consideration_sec .cont .text_box .text_area .theme {
        font-size: 5.1vw;
        gap: 3vw;
    }

    .consideration_sec .cont .text_box .text_area .text {
        font-size: 3.5vw;
        margin-bottom: 1em;
    }

    .consideration_sec .cont .text_box .text_area .theme::before {
        width: 2vw;
        height: 2vw;
    }

    .consideration_sec .cont .text_box {
        width: 100%;
    }

    .consideration_sec .wrap.three {
        width: 100%;
    }

    .consideration_sec .cont .text_box .text_area .link {
        font-size: 3.6vw;
    }

    .consideration_sec .cont .text_box .text_area .link::after {
        height: 5px;
        clip-path: polygon(0 0, calc(100% - 5px) 0, 100% 100%, 0 100%);
        left: 0;
    }

    .consideration_sec::after {
        background: url("/wp-content/themes/child/image/consideration_bg_img_sp.svg");
    }

    /* footer */

    .ren_footer {
        padding: 15vw 0 28.2vw;
        margin-bottom: 0;
    }

    .ren_footer .head_box {
        display: flex;
        gap: 9vw;
        flex-direction: column;
    }

    .ren_footer .head_box .text_box .ren_footer_logo {
        width: 80vw;
        padding: .3vw 1.5vw;
        margin: 0 auto 6vw;
    }

    .ren_footer .head_box .text_box .contact_text {
        font-size: 4vw;
        display: flex;
        gap: 0;
        align-items: center;
        margin-bottom: 2.5vw;
        text-align: center;
        justify-content: center;
    }

    .ren_footer .head_box .text_box .contact_text::before {
        content: unset;
    }

    .ren_footer .head_box .text_box .tel_box .text {
        font-size: 3vw;
    }


    .ren_footer .head_box .text_box .tel_box {
        gap: 1vw;
        flex-direction: column;
    }

    .ren_footer .head_box .text_box .tel_box .tel {
        gap: 2vw;
        font-size: 9.2vw;
        justify-content: center;
    }

    .ren_footer .head_box .text_box .tel_box .tel::before {
        width: 4.6vw;
        height: 5vw;
        mask-size: 4.6vw 5vw;
    }

    .ren_footer .head_box .text_box .note {
        font-size: 3vw;
        letter-spacing: 0;
        text-align: center;
    }

    .ren_footer .head_box .text_box .common_contact_box {
        margin: 9vw 0 2.5vw;
        gap: 2.5vw !important;
    }

    .ren_footer .head_box .access_box .map {
        width: 90vw;
        height: 51vw;
        margin-bottom: 5vw;
    }

    .ren_footer .head_box .access_box .access {
        font-size: 3.3vw;
        margin-bottom: 0.9em;
    }

    .ren_footer .head_box .access_box .access_area .text_area {
        padding-left: 6.4vw;
        margin-left: 6.4vw;
        border-left: 1px solid #fff;
    }

    .ren_footer .head_box .access_box .access_area .text {
        font-size: 3.5vw;
        display: flex;
        align-items: flex-start;
        gap: 0.4em;
    }

    .ren_footer .head_box .access_box .access_area .text+.text {
        margin-top: 1vw;
    }

    .ren_footer .head_box .access_box .access_area {
        display: flex;
        align-items: center;
        margin-bottom: 8.9vw;
    }

    .ren_footer .head_box .access_box .access_area .text::before {
        width: 1vw;
        height: 1vw;
        transform: translateY(0.6em);
    }

    .ren_footer .head_box .access_box .access_area .theme {
        flex-shrink: 0;
        font-size: 4.1vw;
    }

    .ren_footer .bottom_box {
        display: none;
    }

    .ren_footer .text_box small {
        display: block;
    }

    .ren_footer .text_box small .text_area {
        display: flex;
        gap: 7.6vw;
        font-size: 3vw;
        justify-content: center;
        margin-bottom: 2.5vw;
    }

    .ren_footer .text_box small .text_area .text {
        color: #fff;
    }

    .ren_footer .text_box small .compy {
        color: #fff;
        font-size: 3vw;
        text-align: center;
    }

    .follow_sec {
        background-color: #1A1311;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 98;
    }

    .follow_sec .cont {
        display: flex;
        align-items: center;
        padding: 2.8vw;
        gap: 0 2.5vw;
    }

    .follow_sec .cont .common_contact_box {
        flex-direction: unset;
        gap: 0 2.5vw !important;
    }

    .follow_sec .cont .common_contact_box .link {
        box-shadow: unset;
        min-block-size: 15.3vw;
        width: 37.1vw;
        gap: 0 2.5vw;
        padding: 2.5vw;
    }

    .follow_sec .cont .common_contact_box .link .text {

        font-size: 4.1vw;
    }

    .follow_sec .cont .common_contact_box .link::after {
        content: unset;
    }

    .follow_sec .wrap {
        width: 95vw;
    }

    .follow_sec .cont .tel_box {
        width: 15.3vw;
        height: 15.3vw;
        border: 1px solid #FFFFFF;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .follow_sec .cont .tel_box .icon {
        width: 7.6vw;
        height: 8.7vw;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .follow_sec .cont .tel_box .icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .ren_footer .head_box .text_area.sp {
        text-align: center;
        display: block;
    }

    .choose_sec .choose_box .cont .item .choose_btn .link {
        position: absolute;
        inset: 0;
        display: block;
        opacity: 0 !important;
    }

    /*===========
     会社概要
    ============*/

    #page_company .grid_title {
        font-size: 2em;
    }

    .page_body .shop_info {
        grid-template-columns: 1fr;
        gap: 20px;

    }

    .page_body .shop_info img {
        height: 45vw;
        object-fit: cover;
    }

    .page_body .shop_info .info_list {
        grid-template-columns: 1fr;
        gap: 1vw;
    }

    .page_body .shop_info .info_list dl:last-child {
        grid-area: unset;
    }

    .page_body .shop_info .info_list dt {
        width: 34%;
        font-size: 3.2vw;
        text-align: center;
    }

    .page_body .shop_info .info_list dd {
        width: 75%;
        font-size: 3.2vw;
    }

    .page_body ul.number_list li {
        margin-left: 1.6em;
    }

    .shop_slider .slick-slide {
        margin: 0 8px;
    }

    .representative_box {
        padding: 10vw 0;
        margin-bottom: 10vw;
    }

    .representative_box .cont {
        flex-direction: column;
        gap: 5vw;
    }

    .representative_box .cont .img {
        width: 100%;
        height: 85vw;
    }

    .representative_box .cont .text_box .theme {
        font-size: 4vw;
    }

    .representative_box .cont .text_box .text {
        font-size: 3.4vw;
        font-weight: 500;
    }

    .representative_box .common_topH2 {
        margin-bottom: 5vw;
    }

    .representative_box .common_topH2 .eng.pt {
        font-size: 7.5vw;
    }

    .representative_box .common_topH2 .ttl {
        font-size: 4vw;
    }

    .representative_box .cont .text_box .name {
        font-size: 6vw;
    }

    #page_company .history_sec .common_page_section_title {
        margin-bottom: 5vw;
    }

    #page_company .history_sec ul {
        /* height: 80vw; */
    }

    #page_company .history_sec li {
        grid-template-columns: 1fr;
        gap: 3vw 0;
        padding-bottom: 6vw;
    }

    #page_company .history_sec li:not(:last-child)::after {
        top: 8vw;
        left: 1vw;
        width: 0.5vw;
        height: calc(100% - 10vw);
    }

    #page_company .history_sec li .year {
        font-size: 3.7vw;
        gap: 0 4.3vw;
    }

    #page_company .history_sec li .year::before {
        width: 2.5vw;
        height: 2.5vw;
    }

    #page_company .history_sec li .text {
        margin-left: 7vw;
        font-size: 3.4vw;
    }

    .company_shop_box .page_body {
        padding: 0;
    }

    #page_company .history_sec {
        padding: 10vw 0;
        margin-top: 10vw;
    }

    #page_company .history_sec .eng.pt {
        font-size: 7.5vw;
    }

    #page_company .history_sec h2 {
        font-size: 4vw;
    }

    .realestate_list .realestate_img {
        width: 100%;
        height: 45vw;
        margin: 0 auto 4vw;
    }

    .ren_footer .text_box small .copy {
        text-align: center;
    }

    .kaitori_top_sec .wrap {
        max-width: 100%;
    }

    .page_ninbai .page_body .ninbai_top_sec .wrap {
        max-width: 100%;
    }

    .page_kaitori .grid_title h2 {
        font-size: 5vw;
    }

    .page_souzoku .souzoku_top_sec .wrap {
        max-width: 100%;
    }

    .page_ninbai .page_body .ninbai_about_sec .grid_title h2 {
        flex-shrink: 0;
        font-size: 5.4vw;
    }

    .page_ninbai .page_body .ninbai_merit_sec.ninbai_common_sec .grid_title h2 {
        flex-shrink: 0;
        font-size: 5.4vw;
    }

    .page_ninbai .page_body .ninbai_demerit_sec.ninbai_common_sec .grid_title h2 {
        flex-shrink: 0;
        font-size: 5.4vw;
    }

    .page_ninbai .page_body .common_flow_sec .grid_title h2 {
        flex-shrink: 0;
        font-size: 5.4vw;
    }

    .page_ninbai .page_body .ninbai_faq_sec .grid_title h2 {
        flex-shrink: 0;
        font-size: 5.4vw;
    }

    .page_souzoku .page_body .grid_title h2 {
        flex-shrink: 0;
        font-size: 5.4vw;
    }

    #page_secondstep .point.reason_area.reason_flex_list {
        width: 100%;
        padding: 4vw;
    }
}