@charset "UTF-8";

* {
    /* transition: .2s; */
    line-height: 1.6;
    box-sizing: border-box;
}

body {
    font-family: "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
    font-weight: 500;
}

/* PCで文章をドラッグして選択状態にしたときのCSS */
::selection {
    color: #fff;
    background: #ffc25c;
}

/* リセット用や一括 */

img,
video {
    /* width: auto; */
    max-width: 100%;
    display: block;
    height: auto;
    margin: auto;
    transition: .2s;
}

.lazy {
    opacity: 0;
    transition: opacity 0.5s;
}

.lazy.loaded {
    opacity: 1;
}

ul,
ol {
    list-style-type: none;
}

li {
    transition: 0.2s;
}

section figcaption {
    text-align: center;
    margin-top: 5px;
    background: #F1F1F1;
    color: #567476;
    padding: 5px;
}

.fa-external-link-alt {
    padding-left: 8px;
}

.page_head_wrap {
    text-align: center;
}

.page_head_text {
    margin-bottom: 40px;
}

i {
    padding: 0 8px;
}


a.not_deco,
.side_nav a,
.main_nav_item a,
.main_smp_nav_item a,
footer ul li a,
h1 a,
h2 a,
h3 a,
h4 a,
.index_app_list li a {
    /* リンクのテキストをオフ */
    text-decoration: none;
}

.br_span,
.index_safe_6point span,
.cta_button_mistumori span,
.side_rakuraku span,
.side_tel span {
    /* 改行用span */
    display: inline-block;
}

.white_container {
    background: #fff;
    padding: 3rem 1.5rem;
    border-radius: 8px;
}

/* ------------------------------------------
汎用
------------------------------------------- */

mark {
    background: linear-gradient(transparent 60%, #feff82 60%) !important;
    font-style: normal !important;
}

.pcnone {
    display: none;
}

.mb1rem {
    margin-bottom: 1rem;
}

.mb3rem {
    margin-bottom: 3rem;
}

.mb6rem {
    margin-bottom: 6rem;
}

.padding_right16 {
    padding-right: 16px;
}

.padding_top_reset {
    padding-top: 0px !important;
}


/* PC表示時の幅 */

.max_wrapL {
    max-width: 1024px;
    margin: 0 auto;
}

.max_wrapM {
    max-width: 900px;
    margin: 0 auto;
}

.max_wrapS {
    max-width: 760px;
    margin: 0 auto;
}

.max_wrapSS {
    max-width: 580px;
    margin: 0 auto;
}

.max_wrapL,
.max_wrapM,
.max_wrapS,
.max_wrapSS {
    /* 幅は違いますが余白は同じ */
    padding: 64px 16px 64px;
}

.max_wrapL .max_wrapM,
.max_wrapL .max_wrapS,
.max_wrapL .max_wrapSS,
.max_wrapM .max_wrapS {
    /* 大きいもの野中の小さいもの */
    padding: 40px;
}

.content_page .max_wrapL,
.content_page .max_wrapM,
.content_page .max_wrapS,
.content_page .max_wrapSS {
    /* 下層ページ */
    padding: 32px 8px 32px;
}

/* header.max_wrapL {
    padding: 5rem 8px 3rem;
} */

.max_wrap_bread {
    /* パンくず用 */
    max-width: 1024px;
    margin: 0 auto;
    padding: 8px 0;
    line-height: 1;
}

.max_wrap_pad_small {
    /* 余白調整 */
    padding: 32px 16px 40px;
}

.max_wrapSp {
    /* 余白無し */
    max-width: 760px;
    margin: auto;
    padding: 0;
}

.dis_block_center {
    /* 中央寄せ */
    margin: 0 auto !important;
    display: block;
}


/* フォント */

.font_bold {
    font-weight: bold;
}

.font_big {
    font-size: 1.4rem !important;
}

.font_small {
    font-size: 0.8rem;
}

.font_center {
    text-align: center;
}

.font_right {
    text-align: right;
}

.font_bule {
    color: #3567f1 !important;
}

@media screen and (max-width: 580px) {
    .sp_none {
        display: none;
    }

    .text_smp_left {
        text-align: left;
    }
}

/* 開閉ボックスで使用 */

.visible {
    opacity: 1 !important;
    height: 100% !important;
    display: block !important;
}

.posTop {
    left: 0 !important;
}

/* ページ内ジャンプ */

ul.table_contents {
    display: flex;
    justify-content: space-evenly;
    /* gap: 16px; */
}

ul.table_contents li {
    flex: 1;
    position: relative;
    border: 1px #567476 solid;
    padding: 0;
    margin: 8px;
}

ul.table_contents li a {
    display: block;
    padding: 10px;
    text-decoration: none;
    height: 100%;
}

ul.table_contents li a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f13a";
    margin: 0 5px;
    color: #1FAEAA;
    font-weight: 900;
}

ul.table_contents li a:hover {
    background: #567476;
}

ul.table_contents li a:hover,
ul.table_contents li a:hover:before {
    color: #fff;
}

.table_contents_point {
    padding-top: 80px;
    margin-top: -80px;
}

@media screen and (max-width: 580px) {
    ul.table_contents {
        flex-wrap: wrap;
    }

    ul.table_contents li {
        flex-basis: 100%;
    }
}


/* 背景色 */

.white_background {
    background: #fff;
}

.gray_background {
    background: #F1F1F1;
}

.yellow_background {
    background: #F6FEFF;
}

.grid_background {
    background: #E5E5E5;
    background: url(/img/background/back_kousi.png);
}

/* ------------------------------------------
リンク
------------------------------------------- */

a {
    color: #3567f1;
    text-decoration: none;
    transition: .2s;
}

a>* {
    transition: .2s;
}

a:hover {
    color: #FF8000;
}

a:hover img {
    opacity: 0.5;
}

.url_black a {
    color: #000;
}

.url_black a:hover {
    color: #567476;
}

.main_container p a {
    font-weight: bold;
}

/* ------------------------------------------
ボタン
------------------------------------------- */
/* 基本スタイル */
.button a {
    display: block;
    font-size: 1.1rem;
    font-weight: bold;
    border: 2px #567476 solid;
    border-radius: 2px;
    background: #fff;
    max-width: 300px;
    margin: 24px auto;
    padding: 16px 8px;
    text-align: center;
    text-decoration: none;
    -webkit-box-shadow: 0 1.2rem 1rem -1rem rgba(25, 60, 77, 0.15);
    box-shadow: 0 1.2rem 1rem -1rem rgba(25, 60, 77, 0.15);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .2s;
}

.button a,
.button i {
    color: #1C1A46;
}

.button a:hover {
    border-color: #1C1A46;
    background: #1C1A46;
    color: #fff;
}

.button a:hover i {
    color: #1C1A46;
}

.button a i {
    padding-right: 16px;
}

.button a::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 9px;
    margin-right: 16px;
    border: 3px solid #1C1A46;
    border-right: 0;
    border-bottom: 0;
    transform: translateY(-10%) rotate(135deg);
}

.button a:hover::before {
    border-color: #fff;
}


/* 小さいボタン */
.button.button_small a {
    background: #1C1A46;
    border-color: #1C1A46;
    color: #fff;
    padding: 0px;
    font-size: 1rem;
    max-width: 180px;
    margin-left: auto;
}

.button.button_small a:hover {
    background: #F1F1F1;
    color: #1C1A46;
}

.button.button_small a::before {
    border-color: #fff;
}

.button.button_small a:hover::before {
    border-color: #1C1A46;
}

/* 注目色ボタン */

.button.notice a {
    color: #fff;
    background: #FF8000;
    border-color: #FF8000;
}

.button.notice a:hover {
    background: #ffc800;
    border-color: #FF8000;
}

/* CTAのお問合わせと価格表へのボタン */
.button.cta_contact_button a,
.button.price a {
    color: #fff;
    background: #1FAEAA;
    border-color: #1FAEAA;
}

.button.cta_contact_button:hover a,
.button.price:hover a {
    background: #71d1c8;
    border-color: #1FAEAA;
}

.button.notice a::before,
.button.cta_contact_button a::before,
.button.price a::before {
    border-color: #fff;
}

/* リンク用のアイコン */
.link_icon {
    margin: 0 0 3px 0;
    width: 20px;
    height: 20px;
    display: inline-block;
}

/* ------------------------------------------
フレックスボックス
------------------------------------------- */

.flexbox {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.flexbox_center {
    justify-content: center;
}

.flexbox_left {
    justify-content: flex-start;
}

.flexbox img {
    max-width: 100%;
}

.flex3>* {
    flex-basis: calc(100% / 3 - 8px);
    margin: 4px;
}

.flex4>* {
    flex-basis: calc(100% / 4 - 8px);
    margin: 4px;
}

.flex_half>* {
    flex-basis: calc(100% / 2 - 8px);
    margin: 4px;
}

.flexbox_all_center {
    justify-content: center;
    align-items: center;
}

.order1_pc {
    order: 1;
}

.order2_pc {
    order: 2;
}

.order3_pc {
    order: 3;
}


@media only screen and (max-width: 768px) {

    /* カラムの並びをiPad時に変更する */
    .flex_tab100>* {
        flex-basis: 100% !important;
    }
}

@media only screen and (max-width: 580px) {

    /* カラムの並びをスマホ時に変更する */
    .flex_smp100>* {
        flex-basis: 100% !important;
    }

    .flex_smp_half>* {
        flex-basis: calc(100% / 2 - 8px) !important;
    }

    .order1 {
        order: 1;
    }

    .order2 {
        order: 2;
    }

    .order3 {
        order: 3;
    }
}


/* ------------------------------------------
見出し
------------------------------------------- */

/* メインコンテナーの中 */
.main_container h2 {
    color: #303134;
    padding: 16px 8px;
    border-radius: 2px;
    margin-bottom: 32px;
    font-weight: bold;
}

.main_container h2 .sub_title {
    font-size: 1.1rem;
    margin-top: 16px;
}

.main_container h3 {
    border-bottom: #3567f1 solid 1px;
    margin-bottom: 2rem;
    padding: 8px 1px;
    color: #303134;
    line-height: 2.3rem;
}

.main_container h3.simple {
    border-bottom: none;
    margin-bottom: 8px;
    padding: 8px 1px;
    font-size: 1.2rem;
    line-height: 1.2rem;
}

.main_container h4 {
    color: #303134;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 16px;
    line-height: 1.8rem;
    border-left: 4px solid #3567f1;
    padding-left: 14px;
}

.main_container h5 {
    color: #303134;
    font-weight: bold;
}

/* リセット用 */
.main_container .not_deco {
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 0;
    font-weight: normal;
    font-size: 1rem;
    line-height: 1.8rem;
}

/* ------------------------------------------
色付き背景ブロック
------------------------------------------- */
.block_white {
    padding: 24px 16px;
    background: #fff;
    border-radius: 8px;
    border: 1px #E5E5E5 solid;
}

.block_gray {
    background: #f1f6f9;
    padding: 24px 16px;
    color: #2E55A4;
    margin: 16px 16px 24px 16px;
}

.block_gray p:last-child,
.block_gray address {
    margin: 0;
}

/* ------------------------------------------
リスト
------------------------------------------- */
/* 普通のリスト */
.normal_list li,
.normal_list dd {
    margin: 16px 8px;
    position: relative;
    padding-left: 16px;
}

.normal_list li:before,
.normal_list dd:before {
    content: "";
    width: 8px;
    height: 8px;
    display: inline-block;
    background: #1FAEAA;
    border-radius: 50%;
    position: absolute;
    top: 8px;
    left: 0;
}

/* チェックボックスリスト */
.check_list li {
    border-bottom: 1px dashed #cad7cf;
    padding: 8px 0;
    padding-left: 40px;
    list-style-type: none;
    position: relative;
}

.check_list li::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    height: 16px;
    width: 16px;
    border: 1px solid #abbdb1;
    border-radius: 2px;
}

.check_list li::after {
    content: "";
    position: absolute;
    left: 12px;
    top: 44%;
    height: 13px;
    width: 8px;
    border-right: 2px solid #ef1717;
    border-bottom: 2px solid #ef1717;
    transform: translateY(-50%) rotate(45deg);
}

/* 注意書き用リスト */
.small_list li {
    margin: 2px 8px;
    padding: 0px 8px;
    font-size: 0.8rem;
}


/* ------------------------------------------
トップに戻るボタン
------------------------------------------- */

.pagetop {
    opacity: 0;
}

.pagetop a {
    position: fixed;
    display: block;
    bottom: 80px;
    right: 80px;
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    border: 1px solid #A5B6B4;
    border-radius: 50%;
    transform: rotate(45deg);
    z-index: 99;
}

.pagetop a:hover {
    border-top-left-radius: 0;
}

.pagetop a img {
    position: absolute;
    margin: auto;
    top: 25%;
    left: 0;
    right: 0;
    width: 50%;
    transform: rotateZ(-45deg) rotateX(0deg);
}

.pagetop a:hover img {
    transform: rotateZ(-45deg) rotateX(360deg);
}


/* ------------------------------------------
カラム
------------------------------------------- */
.all_container {
    display: flex;
    padding-top: 100px;
}

.main_container {
    width: 100%;
}

#sidebar {
    position: fixed;
    left: 4%;
    top: 50%;
    transform: translateY(-50%);
    width: 190px;
    border-radius: 8px;
    background: rgba(246, 254, 255, .8);
    box-shadow: -0.2rem 0.6rem 1rem -0.3rem hsl(200deg 50% 20% / 8%);
    z-index: 10;
}

/* ------------------------------------------
ヘッダー
------------------------------------------- */

#header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
}

/* メインヘッダー */

.header_container {
    height: 70px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main_header {
    overflow: hidden;
    background: rgba(255, 255, 255, 0.9);
    border-bottom: 1px solid #E5E5E5;
}

.header_container * {
    line-height: 1;
}

.header_text {
    font-size: 0.7rem;
    background: #1C1A46;
    color: #fff;
    padding: 8px;
    margin: 0;
}

/* メインヘッダー - 左側のロゴ */

.header_logo {
    margin: 0 8px 0 24px;
    text-align: center;
    font-size: 0.75rem;
    font-weight: bold;
    display: flex;
}

.header_logo a {
    text-decoration: none;
    color: #1C1A46;
}

.header_logo .logo {
    /* ロゴのそのもののサイズはここで管理 */
    max-width: 180px;
    height: 40px;
}

.header_logo .logo:hover {
    opacity: 0.8;
}

/* メインヘッダー - ナビ */
.main_nav_container {
    display: flex;
    align-items: center;
    padding: 0;
}

.main_nav {
    display: flex;
    justify-content: flex-end;
    padding: 0;
    margin: 0;
}

.main_nav_item {
    height: 70px;
    list-style: none;
    position: relative;
    display: flex;
    align-items: center;
    text-align: center;
    transition: 0.6s;
}

.main_nav_item::after {
    content: "";
    position: absolute;
    right: 0;
    top: 29%;
    height: 30px;
    border-right: 1px solid #E5E5E5;
}

.main_nav_item:last-of-type::after {
    content: none;
}

.main_nav_item a,
.main_smp_nav_item a {
    display: block;
    padding: 2px 16px;
    /* line-height: 80px; */
    color: #12151F;
    font-size: 0.8rem;
    font-weight: bold;
}

.main_nav_item img {
    /* グローバルナビアイコン */
    width: 30px;
    height: 30px;
    margin: 4px auto;
}

.header_form.pc a {
    /* お見積り依頼 */
    display: block;
    height: 70px;
    background: #ff9f00;
    color: #fff;
    padding: 0 16px;
    display: flex;
    align-items: center;
}

.header_form.pc a:hover {
    /* お見積り依頼 */
    background: #ffc25c;
}

/* リンクの色などの装飾 */
.main_header nav li a::before {
    content: "";
    width: calc(100% - 20px);
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    border-bottom: 3px solid #3567f1;
    border-radius: 10px;
    opacity: 0;
    transition: 0.3s;
}

.main_header nav li:hover a::before {
    /* ホバー時 */
    opacity: 1;
}

.main_header nav li.current_active a {
    /* 選択中 */
    color: #3567f1;
}

.main_header nav li.current_active a::before {
    /* 選択中のボーダー */
    border-bottom: 3px solid #3567f1;
    opacity: 1;
}

/* スマホ用ナビ */
.spMenubtn {
    display: none;
}

.main_smp_nav_list {
    display: none;
}

.main_smp_nav_item a {
    padding: 1rem 0;
    text-align: center;
    border-bottom: 1px solid #E5E5E5;
    font-size: 1rem;
}

/* サイドバー */

.side_nav_wrap h2 {
    font-size: 1rem;
    font-weight: bold;
    padding: 16px 8px 8px 24px;
    color: #1C1A46;
    position: relative;
}

.side_nav_wrap h2::before {
    content: "";
    width: 16px;
    border-top: 1px solid #3567f1;
    position: absolute;
    top: 52%;
    left: 0;
}

.side_nav li {
    border-bottom: 1px solid #E5E5E5;
    position: relative;
}

.side_nav li:last-of-type {
    border-bottom: none;
}

.side_nav li::after {
    content: "";
    border: 4px solid transparent;
    border-left: 6px solid #A9C6CF;
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
}

.side_nav li a {
    padding: 8px 8px 8px 24px;
    display: block;
    background: transparent;
    font-size: 0.9rem;
    font-weight: bold;
}

.side_nav li a:hover {
    background: #fff;
    color: #3567f1;
}


/* ------------------------------------------
アンカー
------------------------------------------- */

.anchor_nav {
    margin-bottom: 2rem;
}

.anchor_nav li {
    list-style: none;
    text-align: center;
    margin: 4px 0;
}

.anchor_nav li a {
    display: block;
    padding: 8px 24px;
    transition: all 0.2s;
    border-radius: 4px;
    background: #f1f6f9;
    color: #2E55A4;
    transition: all 0.2s;
}

.anchor_nav li a:hover {
    background: #fffdee;
    color: #FF8000;
}

.anchor_nav li a::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 8px;
    border: 2px solid #2E55A4;
    border-left: 0;
    border-bottom: 0;
    transform: translateY(-50%) rotate(135deg);
}

.anchor_nav3 li {
    flex-basis: calc(100%/3 - 8px);
}

.anchor_goal {
    /* padding-top: 150px;
    margin-top: -150px; */
}

section,.anchor_goal {
    scroll-margin-top: 150px;
}

/* ------------------------------------------
中間CTA
------------------------------------------- */
.cta {
    /* background: #fff; */
    background: #555;
    color: #fff;
}

.cta>div {
    padding: 2rem 8px 1rem;
}


.cta h2.cta_head {
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
}

.cta_guide_time {
    max-width: 300px;
    margin: auto;
    font-size: 0.8rem;
}

.cta_guide_time dt {
    margin-right: 1rem;
}

.cta_guide_time dt,
.cta_guide_time dd {
    line-height: 1;
}

.cta_guide_time>div {
    min-width: 50%;
    display: flex;
}

.cta .button {
    font-size: 0.9rem;
}

.cta_contact_button a {
    /* index用CTAお問合わせフォームボタン */
    max-width: 240px;
    padding: 2px 8px;
    ;
    box-shadow: none;
}

.cta_button_mistumori {
    /* CTA見積ボタン */
    padding: 1rem inherit;
}

.cta .cta_button_mistumori a,
.cta .button.contact_button a {
    line-height: 1.3;
}

/* ------------------------------------------
フッターCTA
------------------------------------------- */
.footer_cta {
    background: #f1f6f9;
}

.footer_cta .cta_head {
    font-size: 1.4rem;
    text-align: center;
}

/* ------------------------------------------
404
------------------------------------------- */

.not_page_wrap {
    min-height: 600px;
    text-align: center;
    padding: 10rem 0;
}


/* ------------------------------------------
パンくず
------------------------------------------- */
.pankuzu {
    max-width: 920px;
    padding: 4px 0;
    margin: 0 auto;
    border-bottom: 1px solid #E5E5E5;
    font-size: 0.8rem;
}

.pankuzu a {
    color: #2E55A4;
    text-decoration: none;
}

/* ------------------------------------------
その他共通項
------------------------------------------- */
/* index と info共通 - お支払い方法 */
.info_flowchart_pay {
    max-width: 550px;
    margin: 2rem auto;
    text-align: center;
    font-weight: bold;
}

.info_flowchart_pay .title {
    border: 1px solid #3567f1;
    background: #F6FEFF;
    max-width: 280px;
    margin: auto;
}

.info_flowchart_pay .itemwrap {
    padding: 16px 8px 16px;
    border: 1px solid #C2D6DC;
}

.info_flowchart_pay .title,
.info_flowchart_pay .itemwrap {
    border-radius: 4px;
    margin-bottom: 1rem;
}

.info_flowchart_pay * {
    position: relative;
}

.info_flowchart_point {
    /* お支払ポイント */
    position: absolute;
    left: 0;
    top: -10px;
    background: #feff82;
    padding: 0 8px;
    border-radius: 1000px;
    font-size: 0.8rem;
    line-height: 1.6;
}

.info_flowchart_pay .triangle::after {
    /* 三角 */
    content: "";
    position: absolute;
    bottom: -28px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 24px;
    border: 8px solid transparent;
    border-top: 10px solid #567476;
}

/* index - フローチャート */
.index_flowchart {
    background: #E5E5E5;
    background: url(/img/background/back_kousi.png);
}

.info_flowchart {
    background: #E5E5E5;
    background: url(/img/background/back_kousi.png);
}

.index_flowchart_list>li,
.info_flowchart_list>li {
    margin-bottom: 24px;
    background: #fff;
    padding: 24px 40px 40px;
    border: 1px solid #e5e5e5;
}

.index_flowchart_list>li span.num,
.info_flowchart_list>li span.num {
    color: #3567f1;
    font-size: 2rem;
    margin-right: 1rem;
}

/* index - レンタル日数の数え方について */
.index_flowchart_tips,
.info_flowchart_tips {
    background: #fffdee;
    padding: 24px;
    margin-top: 40px;
    position: relative;
}

.index_flowchart_tips::before,
.info_flowchart_tips::before {
    content: "";
    background: #ffc25c;
    width: 64px;
    height: 16px;
    position: absolute;
    top: -8px;
    left: 20px;
}

.index_flowchart_tips h2,
.info_flowchart_tips h2 {
    color: #12151F;
    margin-bottom: 8px;
    font-size: 1.5rem;
}

.index_flowchart_tips_item,
.info_flowchart_tips_item {
    background: #fff;
    border: 1px #E5E5E5 solid;
    border-radius: 4px;
    padding: 16px 24px;
}

.index_flowchart_tips_item .head {
    font-size: 1.1rem;
}

/* ------------------------------------------
フッター
------------------------------------------- */

footer {
    background: #303134;
}

.footer_wrap {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 100%;
    padding: 40px 0;
}

.footerTel {
    color: #fff;
    font-size: 0.8rem;
    margin-top: 8px;
    padding: 8px;
}

footer nav {
    padding: 8px;
}

footer ul {
    margin-bottom: 0;
    margin-left: 8px;
    padding: 16px 24px;
    border-left: 2px solid #3567f1;
    flex-basis: calc(100% / 3 - 8px);
}

footer ul li {
    list-style: none;
    font-size: 0.8rem;
    margin-bottom: 0.5rem;
    line-height: 1.5;
}

footer ul li a {
    color: #fff;
    line-height: 1.5;
}

footer ul li a:hover {
    color: #ffc25c;
}

.copyright {
    font-size: 0.9rem;
    color: #fff;
    text-align: center;
    padding: 24px 0;
}

.svg_icon_container {
    display: none;
}

/* ------------------------------------------
スマートフォン～タブレット
------------------------------------------- */
@media all and (max-width: 1440px) {

    /* サイドバー */
    #sidebar {
        left: 1%;
    }

}

@media all and (max-width: 1279px) {
    .header_logo .logo {
        width: 100%;
        max-width: 180px;
        height: 35px;
    }

    .including_tax {
        font-size: 0.6em;
    }

    /* ヘッダー - メインナビ */

    .main_header nav li a::before,
    .main_header nav li.current_active a::before {
        /* メニュー下のボーダー */
        bottom: 0;
        width: calc(100% - 10px);
    }

    /* ヘッダー - スマホ用ナビ - サイドバー */
    .main_smp_nav_list {
        position: fixed;
        /* position: absolute; */
        left: -100%;
        display: block;
        margin-top: 60px;
        width: 100%;
        opacity: 0;
        display: block;
        overflow-y: scroll;
    }

    /* ハンバーガー用のナビで背景に1枚敷くためのもの */
    .menu_toggle_markingpoint:after {
        content: "";
        opacity: 0;
    }

    .menu_toggle_markingpoint.smp_open:after {
        position: fixed;
        top: 0;
        content: "";
        width: 100%;
        height: 100%;
        background: rgba(255, 255, 255, 0.95);
        z-index: 100;
        opacity: 1;
    }

    /* サイドバー */
    #sidebar {
        position: sticky;
        height: 100%;
        box-shadow: none;
        background: #fff;
        padding-right: 8px;
        left: 0%;
    }

    .side_nav li a {
        padding: 8px 8px 8px 16px;
    }


    /* 1279px */
}

@media all and (max-width: 960px) {

    /* ヘッダー - 非表示にする要素*/
    .header_info,
    #sidebar {
        display: none;
    }

    /* ヘッダー - メインナビ */
    .header_logo {
        font-size: 0.7rem;
    }

    .header_logo .logo {
        max-width: 150px;
    }

    .main_nav_item a {
        padding: 2px 8px;
    }

    /* フッター */
    .footer_wrap {
        display: block;
    }

    .footerLogo a img {
        display: block;
        margin: 0 auto 15px;
    }

    .footerTel {
        text-align: center;
    }

    footer nav {
        flex-wrap: wrap;
    }

    /* 960px */
}

@media all and (max-width: 767px) {
    /* @media all and (max-width: 960px) { */

    .max_wrapL .max_wrapM,
    .max_wrapL .max_wrapS,
    .max_wrapL .max_wrapSS,
    .max_wrapM .max_wrapS {
        /* 大きいもの野中の小さいもの */
        padding: 1.5rem 1.3rem;
    }

    /* ヘッダー */
    .all_container {
        /* ヘッダー分の余白を作ってずらす */
        padding-top: 60px;
    }

    .header_container {
        height: 60px;
    }

    .header_form.pc a {
        /* お見積りボタン */
        height: 60px;
        padding: 0 8px;
    }

    .header_logo .medal {
        max-width: 40px;
        height: 40px;
    }

    /* ヘッダー - 非表示にする要素*/
    .header_text {
        display: none;
    }

    .main_nav_smpnone {
        display: none;
    }

    .main_header nav li.current_active a::before {
        /* 現在位置を出さない */
        content: none;
    }

    /* ヘッダー - メニューボタン */
    .spMenubtn {
        display: block;
        height: 40px;
        width: 40px;
        margin: 8px;
    }

    .spMenubtn a {
        position: relative;
        display: block;
        /* height: 60px; */
        text-align: center;
        line-height: 40px;
        font-size: 1rem;
    }

    .spMenubtn a:after {
        position: absolute;
        content: url("/img/ui/close.svg");
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        transition: 0.3s;
    }

    .spMenubtn a.close:after {
        background: #ccc;
        opacity: 1;
    }

    /* ブロックの隙間*/
    .block_gray {
        padding: 1rem;
        margin: auto;
    }

    /* パンくず */
    .pankuzu {
        font-size: 0.8rem;
        padding: 0px 8px;
    }

    /* フローチャート */
    .index_flowchart_list>li,
    .info_flowchart_list>li {
        margin-bottom: 24px;
        background: #fff;
        padding: 24px 24px;
        border: 1px solid #e5e5e5;
    }

    /* 767px */
}

@media all and (max-width: 580px) {
    .max_wrapL .max_wrapM {
        padding: 40px 16px;
    }

    .spnone {
        display: none;
    }

    .pcnone {
        display: block;
    }

    .pagetop a {
        bottom: 60px;
        right: 15px;
    }

    /* paddhing調整 */
    .content_page .max_wrapL,
    .content_page .max_wrapM,
    .content_page .max_wrapS,
    .content_page .max_wrapSS {
        /* 下層ページ */
        padding: 16px 8px 32px;
    }

    /* ロゴ */
    .header_logo {
        margin: 0 8px 0 8px;
    }

    /* 見出し */
    .main_container h2 {
        margin-bottom: 1rem;
    }

    /* 580px */

}

@media screen and (max-width: 320px) {

    /* とても狭い端末 */
    .header_logo a {
        font-size: 0.5rem;
    }

    .header_logo .logo {
        max-width: 130px;
    }

    button a {
        min-width: 250px;
        padding: 24px 8px;
    }

}