@charset "utf-8";
/*================================
ここから全サイズ適用
================================*/
/* baseに移したい
--------------------------------*/
/*アンカーリンク*/
.anchor-link {
    display: block;
    padding-top: 50px;
    margin-top: -50px;
}

/*文字*/
.txt_color08 {
    color: #ab683c;
}
.txt_color09 {
    color: #d45c1a;
}
.txt_color10 {
    color: #bb870b;
}
.txt_color11 {
    color: #999f85;
}
.txt_color12 {
    color: #408f73;
}
.text_indent {
    padding-left: 1em;
    text-indent: -1em;
}

/*小丸リスト（灰色）*/
.check_lists_circle.-tiny li::before {
    content: "・";
    position: static;
    display: inline-block;
    padding-right: 0;
    color: #46372d;
}

/*米印リスト*/
.asterisk_lists > li {
    /*flex*/
    display: flex;
    align-items: flex-start;
    /*other*/
    position: relative;
    color: #46372d;
    font-size: 16px;
    line-height: 1.5;
    text-align: left;
}
.asterisk_lists > li::before {
    content: "※";
    position: static;
    display: inline-block;
    padding-right: 0;
}

/*ボックス*/
.colorbox.-gray_bg {
    background: #ececec;
}

/*flexbox*/
.column_end {
    align-items: flex-end;
}

/*行のすき間*/
.row_gap10 {
    row-gap: 10px;
}
.row_gap20 {
    row-gap: 20px;
}
.row_gap30 {
    row-gap: 30px;
}
.row_gap40 {
    row-gap: 40px;
}

/*列のすき間*/
.column_gap10 {
    column-gap: 10px;
}
.column_gap20 {
    column-gap: 20px;
}
.column_gap30 {
    column-gap: 30px;
}
.column_gap40 {
    column-gap: 40px;
}

/* lowerに移したい
--------------------------------*/
/*背景*/
.whitesand_bg {
    background: url(../common/img/whitesand_bg01.png) repeat top left;
}

/*タイトル（茶色文字）*/
.lower_cont_ttl01 {
    color: #46372d;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.5;
}

/*タイトル（角丸背景・白文字）*/
.lower_cont_ttl02 .rounded_rectangle {
    display: inline-block;
    padding: 4px 16px;
    background-color: #e99200;
    border-radius: 3px;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
}

/*タイトル（下線）*/
.services_flex_ttl .text_underline {
    display: inline-block;
    padding-bottom: 16px;
    border-bottom: 1px solid #d4c9b7;
}

/*角丸四角タイトル（共通）*/
.services_roundedsquare {
    /*flex*/
    display: grid;
    align-content: center;
    justify-content: center;
    text-align: center;
    gap: 14px;
    /*other*/
    border-radius: 4px;
    line-height: 1;
}

/*角丸四角タイトル（白線・オレンジ背景・白文字）*/
.services_roundedsquare.-orange {
    width: 114px;
    height: 114px;
    background-color: #e99a00;
    outline: solid 1px #fff;
    outline-offset: -3px;
    color: #fff;
}
.services_roundedsquare.-orange .services_roundedsquare_num {
    font-size: 30px;
}
.services_roundedsquare.-orange .services_roundedsquare_jp {
    font-size: 18px;
}

/*角丸四角タイトル（白線・薄茶色背景・白文字）*/
.services_roundedsquare.-lightbrown {
    width: 160px;
    height: 160px;
    background-color: #aa9879;
    outline: solid 1px #fff;
    outline-offset: -3px;
    color: #fff;
}
.services_roundedsquare.-lightbrown .services_roundedsquare_jp {
    font-size: 22px;
    line-height: 1.3;
}

/*角丸四角タイトル（灰色背景・こげ茶文字）*/
.services_roundedsquare.-gray {
    width: 114px;
    height: 114px;
    background-color: #e8e5e3;
    color: #46372d;
}
.services_roundedsquare.-gray .services_roundedsquare_num {
    font-size: 40px;
}
.services_roundedsquare.-gray .services_roundedsquare_eng {
    font-size: 20px;
}

/*角丸ボックス（グレー線・白背景）*/
.grey_border.-ttl_above {
    position: relative;
    padding-top: 50px;
}
.grey_border.-ttl_above .grey_border_ttl02 {
    box-sizing: border-box;
    position: absolute;
    top: -20px;
    right: 0;
    left: 0;
    min-height: 40px;
    background-color: #fff;
    font-size: 24px;
    color: rgb(70, 55, 45);
    font-weight: 600;
    text-align: center;
}

/*角丸ボックス（共通）*/
.roundedbox {
    box-sizing: border-box;
    position: relative;
    padding: 30px 3%;
}

/*角丸ボックス（細い灰色線・白背景）*/
.roundedbox.-gray_thin_border {
    border-radius: 6px;
    border: solid 1px #e3ddd3;
    background-color: #fff;
}

/*角丸ボックス（ひまわり背景）*/
.roundedbox.-himawari_bg {
    border-radius: 12px;
    background: url(../common/img/himawari_bg01.png) repeat top 16px left;
}

/*角丸ボックス（黄色背景）*/
.roundedbox.-creamyellow_bg {
    border-radius: 6px;
    border: solid 1px #4e4230;
    background-color: #fff6b9;
}

/*角丸ボックス（黄色背景）*/
.roundedbox.-skygreen_bg {
    border-radius: 6px;
    border: solid 1px #408f73;
    background-color: #d9f5eb;
}

/*flexbox（角丸黄色線・白背景）*/
.yellow_border_flexbox {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 16px 20px;
}
.yellow_border_flexbox > .yellow_border_flexbox_item {
    /*flex*/
    display: flex;
    justify-content: center;
    align-items: center;
    flex-basis: calc(100% / 3 - 14px);
    /*other*/
    min-height: 100px;
    padding: 10px 3%;
    background-color: #fff;
    border: 2px solid #e9b500;
    border-radius: 6px;
    font-size: 18px;
    line-height: 1.5;
    text-align: center;
}
.yellow_border_flexbox > .yellow_border_flexbox_item .txt_color08 {
    font-weight: 700;
}

/*flexbox（流れ・薄茶色の角丸四角タイトル用）*/
.flow_step_flexbox {
    display: flex;
    gap: 20px 40px;
}
.flow_step_flexbox > .flow_step_flexbox_item.-content {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 40px 30px;
    flex: 1;
}
.flow_step_flexbox > .flow_step_flexbox_item.-content > .flow_step_detail {
    flex-basis: 58%;
}
.flow_step_flexbox > .flow_step_flexbox_item.-content > .flow_step_img {
    flex-basis: 38%;
}
.flow_step_detail_ttl {
    color: #e99200;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
}

/*flexbox（右矢印）*/
.right_arrow_flexbox {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px;
}
.right_arrow_flexbox > .right_arrow_flexbox_item {
    position: relative;
}
.right_arrow_flexbox > .right_arrow_flexbox_item:not(:first-child)::before {
    content: "";
    position: absolute;
    left: -22px;
    top: 50%;
    transform: translateY(-8px);
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 12px solid transparent;
    border-right: 0;
    border-bottom: 12px solid transparent;
    border-left: 16px solid #e9b500;
}

/*flexbox（下矢印）*/
.under_arrow_flexbox {
    display: flex;
    flex-direction: column;
    gap: 32px;
}
.under_arrow_flexbox > .under_arrow_flexbox_item {
    position: relative;
}
.under_arrow_flexbox > .under_arrow_flexbox_item:not(:first-child)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    transform: translateY(-22px);
    width: 0;
    height: 0;
    margin: 0 auto;
    border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-top: 16px solid #e9b500;
    border-bottom: 0;
}

/*下矢印・線*/
.services_under_arrow_border {
    position: relative;
    border-top: solid 1px #efe9de;
    margin: 50px auto;
}
.services_under_arrow_border::before {
    content: "";
    position: absolute;
    top: -16px;
    left: 0;
    right: 0;
    margin-inline: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 25px solid transparent;
    border-left: 25px solid transparent;
    border-top: 32px solid #e9b500;
    border-bottom: 0;
}

/* 共通
--------------------------------*/
/*テキスト*/
.price .txt {
    font-size: 18px;
}
.price .text_dl01 {
    line-height: 1.5;
}
.price .text_dl01 dt {
    font-size: 18px;
    font-weight: 600;
}
.price .text_dl01 dd {
    font-size: 18px;
}
.price .text_small {
    font-size: 16px;
}
.price .text_large {
    font-size: 22px;
}

/*小丸リスト（灰色）*/
.price .check_lists_circle.-tiny li:not(:last-child) {
    margin-bottom: 16px;
}

/*米印リスト*/
.price .asterisk_lists > li:not(:last-child) {
    margin-bottom: 16px;
}

/*タイトル（茶色模様背景・白文字）*/
.price .section_ttl02_wrap {
    /*flex*/
    display: grid;
    align-items: center;
    /*other*/
    min-height: 90px;
    margin-bottom: 20px;
}

/*flexbox（料金表タイトル）*/
.price .price_ttl_flexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
}
.price .price_ttl_flexbox > .price_ttl_flexbox_item.-content {
    text-align: right;
}

/*料金表タイトル*/
.price .price_ttl {
    color: #e99200;
    font-size: 22px;
    font-weight: 600;
}

/*自費・保険*/
.price .price_privatedental_treatment,
.price .price_insurancecovered_treatment {
    display: inline-block;
    padding: 1px 11px;
    border-radius: 3px;
    font-size: 14px;
    text-align: center;
}
.price .price_privatedental_treatment {
    background-color: #f9cb7f;
}
.price .price_insurancecovered_treatment {
    background-color: #d9f5eb;
}

/*料金表テーブル（共通）*/
.price .price_table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #aa9879;
}
.price .price_table th,
.price .price_table td {
    padding: 20px 10px;
    vertical-align: middle;
    font-size: 18px;
    line-height: 1.5;
    text-align: center;
}
.price .price_table thead tr th {
    font-weight: 700;
}

/*料金表テーブル（背景色）*/
.price .price_table thead tr th {
    background-color: #ececec;
}
.price .price_table tbody tr td {
    background-color: #fff;
}
.price .price_table tfoot tr td {
    background-color: #fff;
}
.price .price_table td.-apricot {
    background-color: #f9cb7f;
}
.price .price_table td.-lightcyan {
    background-color: #d9f5eb;
}

/*料金表テーブル（線）*/
.price .price_table {
    border: 1px solid #aa9879;
}
.price .price_table thead tr th:not(:first-child) {
    border-left: 1px solid #aa9879;
}
.price .price_table tbody tr td {
    border-top: 1px solid #aa9879;
}
.price .price_table tbody tr td:not(:first-child) {
    border-left: 1px solid #aa9879;
}
.price .price_table tfoot tr td {
    border-top: 1px solid #aa9879;
}
.price .price_table tfoot tr td:not(:first-child) {
    border-left: 1px solid #aa9879;
}

/*料金表テーブル02（共通）*/
.price .price_table02 {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #aa9879;
}
.price .price_table02 th,
.price .price_table02 td {
    padding: 20px 10px;
    vertical-align: middle;
    font-size: 18px;
    line-height: 1.5;
    text-align: center;
}
.price .price_table02 thead tr th {
    font-weight: 700;
}

/*料金表テーブル02（背景色）*/
.price .price_table02 thead tr th {
    background-color: #ececec;
}
.price .price_table02 tbody tr td {
    background-color: #fff;
}
.price .price_table02 tfoot tr td {
    background-color: #fff;
}
.price .price_table02 td.-apricot {
    background-color: #f9cb7f;
}
.price .price_table02 td.-lightcyan {
    background-color: #d9f5eb;
}

/*料金表テーブル02（線）*/
.price .price_table02 {
    border: 1px solid #aa9879;
}
.price .price_table02 thead tr th:not(:first-child) {
    border-left: 1px solid #aa9879;
}
.price .price_table02 tbody tr td {
    border-top: 1px solid #aa9879;
}
.price .price_table02 tbody tr td:not(:first-child) {
    border-left: 1px solid #aa9879;
}
.price .price_table02 tfoot tr td {
    border-top: 1px solid #aa9879;
}
.price .price_table02 tfoot tr td:not(:first-child) {
    border-left: 1px solid #aa9879;
}

/*flexbox（症例）*/
.price .case.flexbox > .flexbox_item.-txt {
    flex: 1;
}

/*ページナビ
--------------------------------*/
.lower_pagenav {
}

.p_price_index_wrapper {
    position: relative;
}
.p_price_index_list {
    position: relative;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(24rem, 1fr));
    grid-column-gap: 4rem;
    grid-row-gap: 2rem;
    padding: 0;
}
.p_price_index_list > li {
    position: relative;
    line-height: 1;
    padding: 0;
}
.p_price_index {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 1.8rem 1.2rem 4.5rem;
    background: #e98f00 url(../common/img/lower_pagenav_bg02.png) repeat left top;
    border: clamp(1px, 0.3rem, 2px) solid #ffffff;
    width: 100%;
    height: 100%;
    text-decoration: none;
    outline: none;
    transition: all 0.4s;
}
.p_price_index::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 1.8rem;
    display: inline-block;
    border-left: 1.2rem solid transparent;
    border-right: 1.2rem solid transparent;
    border-top: 1.4rem solid #ffffff;
    border-bottom: 0;
    transform: translateX(-50%);
    transition: all 0.4s;
}
.p_price_index .m_text {
    position: relative;
    font-weight: 500;
    letter-spacing: 0;
    text-align: center;
    color: #fff;
    text-decoration: none;
    width: 100%;
    transition: all 0.4s;
}
.p_price_index:hover {
    border-color: #e98f00;
    background: #ffffff url(../common/img/lower_pagenav_bg01.png) repeat left top;
}
.p_price_index:hover::after {
    border-top-color: #e98f00;
}
.p_price_index:hover .m_text {
    color: #e98f00;
}
.p_intro_index_wrapper {
    position: relative;
}
.p_intro_index_list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-left: -3rem;
    margin-right: -3rem;
    margin-bottom: -3rem;
}
.p_intro_index_list > li {
    position: relative;
    flex: 0 0 auto;
    width: auto;
    line-height: 1;
    padding: 0 3rem;
    margin-bottom: 3rem;
}
.p_intro_index_wrapper .p_price_index {
    position: relative;
    width: 35rem;
    max-width: 100%;
    background: #4e4332 url(../common/img/lower_pagenav_bg04.png) repeat left top;
}
.p_intro_index_wrapper .p_price_index:hover {
    background: #ffffff url(../common/img/lower_pagenav_bg03.png) repeat left top;
    border-color: #4e4332;
}
.p_intro_index_wrapper .p_price_index:hover::after {
    border-top-color: #4e4332;
}
.p_intro_index_wrapper .p_price_index:hover .m_text {
    color: #4e4332;
}

/*予防歯科
--------------------------------*/
/*料金表テーブル*/
.price #section01 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section01 .price_table thead tr th.col02 {
}
.price #section01 .price_table thead tr th.col03 {
    width: 26%;
}

/*歯周病外科
--------------------------------*/
/*料金表テーブル*/
.price #section02 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section02 .price_table thead tr th.col02 {
}
.price #section02 .price_table thead tr th.col03 {
    width: 26%;
}

/*セラミック治療
--------------------------------*/
/*料金表テーブル*/
.price #section03 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section03 .price_table thead tr th.col02 {
}
.price #section03 .price_table thead tr th.col03 {
    width: 26%;
}

/*入れ歯
--------------------------------*/
/*料金表テーブル*/
.price #section04 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section04 .price_table thead tr th.col02 {
}
.price #section04 .price_table thead tr th.col03 {
    width: 26%;
}

/*flexbox（ノンクラスプ）*/
.price #section04 .nonclasp.under_arrow_flexbox > .under_arrow_flexbox_item {
    display: flex;
    justify-content: flex-start;
    gap: 16px;
}

/*矯正歯科
--------------------------------*/
/*料金表テーブル*/
.price #section05 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section05 .price_table thead tr th.col02 {
}
.price #section05 .price_table thead tr th.col03 {
    width: 26%;
}
.price #section05 .price_table thead tr th.col04 {
}
.price #section05 .price_table thead tr th.col05 {
    width: 26%;
}

/*flexbox*/
.price #section05 .orthodonticbrackets.flexbox > .flexbox_item.-txt {
    flex: 1;
}

/*ホワイトニング
--------------------------------*/
/*料金表テーブル*/
.price #section06 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section06 .price_table thead tr th.col02 {
}
.price #section06 .price_table thead tr th.col03 {
    width: 26%;
}

/*インプラント治療
--------------------------------*/
/*料金表テーブル*/
.price #section07 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section07 .price_table thead tr th.col02 {
}
.price #section07 .price_table thead tr th.col03 {
    width: 26%;
}

/*麻酔・鎮静法
--------------------------------*/
/*料金表テーブル*/
.price #section08 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section08 .price_table thead tr th.col02 {
}
.price #section08 .price_table thead tr th.col03 {
    width: 26%;
}

/*その他治療
--------------------------------*/
/*料金表テーブル*/
.price #section09 .price_table thead tr th.col01 {
    width: 24%;
}
.price #section09 .price_table thead tr th.col02 {
}
.price #section09 .price_table thead tr th.col03 {
    width: 26%;
}

/*医療費控除
--------------------------------*/
.price #medicalexpense_deduction_section {
}

/*デンタルローン #dentalloan_section
--------------------------------*/

/*================================
ノートPC 1366px～0px
================================*/
/*
@media (min-width: 1920px) {
}
@media (min-width: 1600px) {
}
@media (min-width: 1366px) {
}
@media (max-width: 1920px) {
}
@media (max-width: 1600px) {
}
*/
@media (max-width: 1366px) {
}
/*================================
TABLET横 1080px～0px
================================*/
@media (max-width: 1080px) {
}
/*================================
TABLET縦 834px～0px
================================*/
@media (max-width: 834px) {
    /* lowerに移したい
    --------------------------------*/
    /*flexbox（特徴・オレンジの角丸四角タイトル用）*/
    .services_flex {
        row-gap: 20px;
    }
    .services_flex_txt {
        flex-direction: column;
        row-gap: 20px;
        margin-bottom: 0;
    }
    .services_flex_ttl {
        text-align: center;
    }

    /*flexbox（流れ・薄茶色の角丸四角タイトル用）*/
    .flow_step_flexbox {
        flex-direction: column;
    }
    .flow_step_flexbox > .flow_step_flexbox_item.-step {
        align-self: center;
    }
    .flow_step_flexbox > .flow_step_flexbox_item.-content {
        flex-direction: column;
        row-gap: 20px;
    }
    .flow_step_flexbox > .flow_step_flexbox_item.-content > .flow_step_detail {
    }
    .flow_step_flexbox > .flow_step_flexbox_item.-content > .flow_step_img {
    }
    .flow_step_detail_ttl {
        text-align: center;
    }

    /* 共通
    --------------------------------*/
    /*flexbox（料金表タイトル）*/
    .price .price_ttl_flexbox {
        flex-direction: column;
    }
    .price .price_ttl_flexbox > .price_ttl_flexbox_item.-ttl {
        align-self: center;
    }

    /*料金表テーブル01（共通）*/
    .price .price_table thead,
    .price .price_table thead tr,
    .price .price_table thead th,
    .price .price_table thead td {
        display: none;
    }
    .price .price_table,
    .price .price_table tbody,
    .price .price_table tfoot,
    .price .price_table tr,
    .price .price_table th,
    .price .price_table td {
        display: block;
    }
    .price .price_table th,
    .price .price_table td {
        font-size: 16px;
    }
    .price .price_table td.col01 {
        padding-bottom: 10px;
    }
    .price .price_table td.col02 {
        padding-top: 10px;
    }

    /*料金表テーブル（線）*/
    .price .price_table {
        border: none;
    }
    .price .price_table tbody tr {
        border: 1px solid #aa9879;
    }
    .price .price_table tbody tr td {
        border-top: none;
    }
    .price .price_table tbody tr td:not(:first-child) {
        border-left: none;
    }
    .price .price_table tfoot tr {
        border: 1px solid #aa9879;
    }
    .price .price_table tfoot tr td {
        border-top: none;
    }
    .price .price_table tfoot tr td:not(:first-child) {
        border-left: none;
    }

    /*料金表テーブル（margin-bottom調整）*/
    .price .price_table tbody tr:not(:last-child) {
        margin-bottom: 40px;
    }
    .price .price_table tfoot tr {
        margin-top: 40px;
    }

    /*料金表テーブル02（共通）*/
    .price .price_table02 th,
    .price .price_table02 td {
        font-size: 16px;
    }

    /*flexbox（症例）*/
    .price .case.flexbox {
        flex-direction: column;
    }
    .price .case.flexbox > .flexbox_item.-txt {
        width: 100%;
    }

    /*歯周病外科
    --------------------------------*/
    /*flexbox（右矢印）*/
    .price #section02 .case_emdogain.right_arrow_flexbox {
        flex-direction: column;
    }
    .price #section02 .case_emdogain.right_arrow_flexbox > .right_arrow_flexbox_item {
    }
    .price #section02 .case_emdogain.right_arrow_flexbox > .right_arrow_flexbox_item:not(:first-child)::before {
        top: 0;
        left: 0;
        right: 0;
        transform: translateY(-22px);
        margin: 0 auto;
        border-right: 12px solid transparent;
        border-left: 12px solid transparent;
        border-top: 16px solid #e9b500;
        border-bottom: 0;
    }

    /*入れ歯
    --------------------------------*/
    /*flexbox（ノンクラスプ）*/
    .price #section04 .nonclasp.under_arrow_flexbox {
        max-width: 430px;
        margin-inline: auto;
    }

    /* 矯正歯科
    --------------------------------*/
    /*flexbox*/
    #section05 .orthodonticbrackets.flexbox {
        flex-direction: column;
    }

    /*デンタルローン
    --------------------------------*/
    /*
    .price #dentalloan_section .price_table tbody tr td {
        border-top: 1px dotted #aa9879;
    }
    .price #dentalloan_section .price_table .col01,
    .price #dentalloan_section .price_table .col02,
    .price #dentalloan_section .price_table .col03,
    .price #dentalloan_section .price_table .col04 {
        position: relative;
        padding-top: 50px;
    }
    .price #dentalloan_section .price_table .col01::before,
    .price #dentalloan_section .price_table .col02::before,
    .price #dentalloan_section .price_table .col03::before,
    .price #dentalloan_section .price_table .col04::before {
        content: "";
        position: absolute;
        top: 10px;
        left: 10px;
        font-size: 18px;
        font-weight: 600;
    }
    .price #dentalloan_section .price_table .col01::before {
        content: "契約内容";
    }
    .price #dentalloan_section .price_table .col02::before {
        content: "契約金額";
    }
    .price #dentalloan_section .price_table .col03::before {
        content: "支払い回数";
    }
    .price #dentalloan_section .price_table .col04::before {
        content: "月々の支払額";
    }
    */
}
/*================================
SP表示 700px～0px
================================*/
@media (max-width: 700px) {
    /* 共通
    --------------------------------*/
    /*タイトル（茶色模様背景・白文字）*/
    .price .section_ttl02 {
        font-size: 22px;
    }
}
/*================================
SP表示 480px～0px
================================*/
@media (max-width: 480px) {
    /* baseに移したい
    --------------------------------*/
    /*margin-top調整用*/
    .mt_sp_70 {
        margin-top: 70px !important;
    }
    .mt_sp_80 {
        margin-top: 80px !important;
    }
    .mt_sp_90 {
        margin-top: 90px !important;
    }
    .mt_sp_100 {
        margin-top: 100px !important;
    }

    /*margin-bottom調整用*/
    .mb_sp_80 {
        margin-bottom: 80px !important;
    }
    .mb_sp_90 {
        margin-bottom: 90px !important;
    }
    .mb_sp_100 {
        margin-bottom: 100px !important;
    }
    .mb_sp_110 {
        margin-bottom: 110px !important;
    }

    /*小丸リスト（灰色）*/
    .check_lists_circle.-tiny li {
        font-size: 16px;
    }

    /* lowerに移したい
    --------------------------------*/
    /*角丸四角タイトル（白線・オレンジ背景・白文字）*/
    .services_roundedsquare.-orange {
        width: 100px;
        height: 100px;
    }
    .services_roundedsquare.-orange .services_roundedsquare_num {
    }
    .services_roundedsquare.-orange .services_roundedsquare_jp {
        font-size: 16px;
    }

    /*角丸四角タイトル（白線・薄茶色背景・白文字）*/
    .services_roundedsquare.-lightbrown {
        width: 120px;
        height: 120px;
    }
    .services_roundedsquare.-lightbrown .services_roundedsquare_jp {
        font-size: 16px;
    }

    /*角丸四角タイトル（灰色背景・こげ茶文字）*/
    .services_roundedsquare.-gray {
        width: 100px;
        height: 100px;
    }
    .services_roundedsquare.-gray .services_roundedsquare_num {
    }
    .services_roundedsquare.-gray .services_roundedsquare_eng {
    }

    /*角丸ボックス（グレー線・白背景）*/
    .grey_border.-ttl_above .grey_border_ttl02 {
        max-width: 80% !important;
        font-size: 20px;
    }

    /*flexbox（角丸黄色線・白背景）*/
    .yellow_border_flexbox {
        flex-direction: column;
    }
    .yellow_border_flexbox > .yellow_border_flexbox_item {
        min-height: auto;
    }

    /*flexbox（右矢印を下矢印に）*/
    .right_arrow_flexbox {
        flex-direction: column;
    }
    .right_arrow_flexbox > .right_arrow_flexbox_item {
    }
    .right_arrow_flexbox > .right_arrow_flexbox_item:not(:first-child)::before {
        top: 0;
        right: 0;
        left: 0;
        transform: translateY(-22px);
        margin: 0 auto;
        border-right: 12px solid transparent;
        border-left: 12px solid transparent;
        border-top: 16px solid #e9b500;
        border-bottom: 0;
    }

    /*flexbox（右矢印・ラップしないver）*/
    .right_arrow_flexbox.-nowrap {
        flex-direction: row;
        flex-wrap: nowrap;
    }
    .right_arrow_flexbox.-nowrap > .right_arrow_flexbox_item:not(:first-child)::before {
        top: 50%;
        right: auto;
        left: -22px;
        transform: translateY(-8px);
        border-style: solid;
        border-top: 12px solid transparent;
        border-right: 0;
        border-bottom: 12px solid transparent;
        border-left: 16px solid #e9b500;
    }

    /* 共通
    --------------------------------*/
    /*テキスト*/
    .price .txt {
        font-size: 16px;
    }
    .price .text_dl01 dt {
        font-size: 16px;
    }
    .price .text_dl01 dd {
        font-size: 16px;
    }

    /*料金表テーブル02（共通）*/
    .price .price_table02 {
        width: 600px;
    }

    /*ページナビ
    --------------------------------*/
    .p_price_index_list {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 15px;
        grid-row-gap: 20px;
    }
    .p_price_index .m_text {
        font-size: 12px;
        line-height: 20px;
    }

    /*入れ歯
    --------------------------------*/
    /*flexbox（ノンクラスプ）*/
    .price #section04 .nonclasp.under_arrow_flexbox > .under_arrow_flexbox_item {
        flex-direction: column;
    }
    .price #section04 .nonclasp .text_dl01 dt,
    .price #section04 .nonclasp .text_dl01 dd {
        text-align: center;
    }
}
