@charset "shift_jis";


    .maintitle h1,
    div.renraku strong,
    div.renraku p,
    section.contents h2,
    section.contents h3,
    section.contents p,
    a .btn_blue span,
    span.fonts_style,
    div.container_QandA dt,
    div.container_QandA dd,
    .container_QandA dt span.goisho,
    .container_QandA dt span.kasaihoken,
    .container_QandA dt span.annshin,
    span.RedFont,
    dl.btn_adj dt,
    dd.btn_kanren
    {
    font-family: "Meiryo", "メイリオ", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Arial, sans-serif;
    }

/* ================================================= */
/* 2. 一括 (font-size) */
 /* Lange　min 220px -- max 4600px */
/* ================================================= */
    /*22px-26px ->14px*/
    .renraku strong
    {
    font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
    }

/*26px-30px ->16px*/
    .container h3 {
    font-size: clamp(1.625rem, 1.624rem + 0.01vw, 1.875rem)!important;
    }



    /*22px-26px */
    div.renraku p,
    div.renraku a
    {
    font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
    }


    /*16px-17px */
    readcontents,
    dd.btn_kanren
    {
   font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
    }

        /* Q and A Q-font */
    /* 18px-19px  -> 12pt */
    .container_QandA dt
    {
   font-size: clamp(1.75rem, 1.625rem + 1vw, 1.875rem)!important;
  }

    /* Q and A Q-font icon*/
    /* 18px-19px  -> 12pt */
    .container_QandA dt span.goisho,
    .container_QandA dt span.kasaihoken,
    .container_QandA dt span.annshin,
    dl.btn_adj dt
    {
   font-size: clamp(1.125rem, 1.063rem + 0.5vw, 1.188rem)!important;
  }

    /*25px-26px */
    .container_QandA dd,
    .container_QandA dd span.RedFont,
    .container_QandA dt span.RedFont,
    p.keiyaku_txt_left,
    dd.btn_kanren
    {
    font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
    }

    /*25px-26px */
    ul.section002 li.right p
    {
    font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
    }

    /*25px-26px */
    div.container_kagu p.read
    {
   font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
    }

    /*26px-28px ->18px */
    .container_QandA dd.QA_border{
    font-weight: 700;
    font-size: clamp(1.625rem, 1.5rem + 1vw, 1.75rem)!important;
     }

        ul.section002 li.right {
    font-size: clamp(1.375rem, 1.374rem + 0.01vw, 1.625rem)!important;
   }

      /*--- kanren_contents -- */

    /*31px-32px ->20px */
       dl.btn_adj dt {
        font-size: clamp(1.938rem, 1.934rem + 0.03vw, 2rem)!important;
    }

/* ================================================= */
    /* 3. BASE ＆ 共通要素 */
/* ================================================= */
    .mihon li {
    margin:25px 0 55px 0;
    }

    .container h3 {
    font-weight: bold;
    color: #003c78;
    padding: 15px 35px 0px 35px;

    width: 100%;
    max-width: 900px;
    height: 50px;
    margin: 0 auto 20px auto;
    border: 1px solid #003c78;
    }

    article#main {
    position: relative;
    }

/*  -- section class="maintitle"-- -- -- */
    .maintitle {
    z-index: 0;
    margin-bottom: 0px;
    }
    .maintitle > div {
    height: auto;
    overflow: visible;
    }

    .maintitle img {
    width: 100%;
    position: relative;
    z-index: 20;
    margin: 0px auto -150px auto;
    }


    .maintitle img.sp {
    width: 100%;
    height: auto;
    display: block;
    }

    div.container ul.section002 li.left{
    margin: 50px 0px 40px 0px;
    }

/*  -- section class="maintitle" END-- -- -- */
    .readcontents {
    padding: 20px 0;
    margin-top: 0px;
    z-index: 0;
    }


    .readcontents p {
    text-align: center;
    width: 90%;
    max-width: 800px;
    margin: 0 auto;
    }

    .readcontents .renraku {
    font-size: 14px;
    max-width: 800px;
    margin: 100px auto 60px;
    text-align: center;
    font-weight: bold !;
    }

    img.sp_float_img {
    /* 配置を形成するもの */
    display: block;
    width: 90%;
    margin: auto;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 50;
    top: 85px;
    height: 2.2%;
    object-fit: cover;
    }

/* ================================================= */
/* 4. ボタン  */
/* ================================================= */
    .btn_blue,
    .btn_blue_single {
    width: 100%;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    }

    .btn_blue span,
    .btn_blue_single span {
    text-align: center;
    line-height: 1.5;

    width: 100%;
    display: block;
    padding: 0;

    }

section.contents ul.form-list_Single div.form a {
    width: 90%;
    font-size: 14px;
}

div.form a.btn_blue_single, a:link.btn_blue_single, a:visited.btn_blue_single {
    display: block;
    padding: 20px;
    background-color: #003c78;
    width: 90%;
    max-width: 450px;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 2px;
    clear: both;
    color: #ffffff;
    text-decoration: none;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

div.form a.btn_blue, a:link.btn_blue, a:visited.btn_blue {
    display: block;
    padding: 20px;
    background-color: #003c78;
    width: 90%;
    max-width: 450px;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 2px;
    clear: both;
    color: #ffffff;
    text-decoration: none;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

/* ================================================= */
/* 5. section002  */
/* ================================================= */
    ul.section002 li.right p {
    line-height: 1.8em;
    width: 90%;
    max-width: 550px;
    margin: 0 auto;
    }

/* ================================================= */
/* 6. .contents (.container_kagu)  (SP) */
/* ================================================= */

    .contents > p {
    width: 90%;
    max-width: 780px;
        margin: 0px auto 15px;
}

    .container_kagu > div {
    display: block;
    margin-top: 20px;
    }


 .kagu-img-wrapper {
    /* 画像を切り抜くために高さを指定する必要があります。 */
    /* ここでは例として200pxを設定。必要に応じて調整してください。 */
    height: 200px;
    width: 120%;
    margin: 10px 0; /* 適度な余白を追加 */
    overflow: hidden; /* はみ出した部分を切り抜き */
    position: relative; /* 子要素の基準点とする */
}

.img_kagu {
    /* 親要素の領域を縦横比を保ちつつ完全に覆う */
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block; /* 画像をブロック要素化してレイアウトを安定させる */
}

    .container_kagu p.kagu-img-wrapper .img_kagu {
    width: 100%;
    height: auto;
    display: block;
    max-width: 300px;
    margin: 0 auto;
    }

    ul.Btn03-list {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
    }

    ul.Btn03-list li.btn-li {
    width: 100%;
    margin-bottom: 20px;
    display: block;
    }

    ul.Btn03-list li.btn-li .form {
    display: flex;
    justify-content: center;
    width: 100%;
    }


    ul.Btn03-list li.btn-li .form .btn_blue {
    width: 90%;
    max-width: 300px;
    margin: 0;
    }


    section.contents .container_kagu .img_kagu {
    width: 100%;
    height: auto;
    display: block;
    margin: 60px 0;
    padding: 0 10%;
}

.nyuukyo_anshin li {
    margin-bottom: 45px;
}

.nyuukyo_anshin li.sp_btnB {
    margin-bottom: 60px;
}

/* ================================================= */
/* Q&Aセクション全体 (統合＆整理済み) */
/* ================================================= */

    div .container_QandA{
    max-width: 900px;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    }



/* ------------------------------------ */
/* Q&A補足情報 (ボタン風 span: goisho, kasaihoken, annshin) */
/* ------------------------------------ */
    .container_QandA dt span.annshin {
    font-weight: bold;
    color: #fff;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    padding: 6px 0 3px 0;

    display: inline-block;
    width: 120px;
    border-radius: 9999px;
    margin-top: -3px;
    margin-left: 10px;
    vertical-align: middle;
    }

       .container_QandA dt span.goisho,
    .container_QandA dt span.kasaihoken {
    font-weight: bold;
    color: #fff;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    padding: 6px 0 3px 0;

    display: inline-block;
    width: 90px;
    border-radius: 9999px;
    margin-top: -3px;
    margin-left: 10px;
    vertical-align: middle;
    }

    .container_QandA dt span.goisho {
    background-color: #ff0051;
    }
    .container_QandA dt span.kasaihoken {
    background-color: #0079c9;
    }
    .container_QandA dt span.annshin {
    background-color: #87b608;
    }

/* ------------------------------------ */
/* breakタグの定義 */
/* ------------------------------------ */

    br.PC_on,
    br.sp_on,
    br.btn_sp_on {
    display: inline;
    }

    br.TEL_on {
    display: inline;
    }

/* ------------------------------------ */
/* Q&A DL/DT/DD 基本スタイル */
/* ------------------------------------ */

    .container_QandA dl {
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0;
    }

    .container_QandA dt {
    font-weight: bold;
    color: #9e0000;
    line-height: 1.5;
    padding: 2px 15px 3px 35px;

    position: relative;
    border-bottom: none;
    border-radius: 5px 5px 0 0;
    }

    .container_QandA dt::before {
    content: "Q.";
    font-weight: 900;
    color: #9e0000;

    position: absolute;
    left: 10px;

    top: 0;
    transform: none;

    }

    .container_QandA dd {
    line-height: 1.6;

    padding: 0px 15px 10px 45px;
    margin: 0 0 15px 0;
    background: #fff;
    border-top: none;
    border-radius: 0 0 5px 5px;
    display: block;
    }

/* ------------------------------------ */
/* Q&A DD 特殊クラス */
/* ------------------------------------ */

    .container_QandA dd.koushin {
    padding: 0px 15px 5px 45px;
    }

    .container_QandA dd{
    max-width: 850px;
    }

    .container_QandA dd.miniminiman {
    line-height: 1.6;

    display: flex;
    flex-direction: column;
    padding: 10px 15px 10px 15px;
    margin: 0 0 15px 0;
    border-top: none;
    border-radius: 0 0 5px 5px;
    }

/* RedFont */
    span.RedFont {
    color: #ff0000;
    font-weight: bold;
    }

/* QA_border (線付きリンクエリア) */
    .container_QandA dd.QA_border {
    line-height: 1.6;
    text-decoration: underline;

    display: flex;
    justify-content: space-between;
    padding: 10px 15px 10px 40px;
    margin: 0px 0 0px 0;
    border-top: none;
    border-radius: 0 0 5px 5px;
    }

/* QA_squerArea (背景色エリア) */
    .container_QandA dd.QA_squerArea {
    width: 90%;
    background-color: #ffe5dc;
    padding: 20px 0px 20px 20px;
    margin:0px 16% 20px 6%;
    }

    .container_QandA dd.QA_squerArea_blue {
    width: 100%;
    padding: 20px 15px 20px 35px;
    margin:0px 0px 20px 0px;
    }


/* ------------------------------------ */
/* mininiman 内部要素 (画像/テキスト) */
/* ------------------------------------ */
    p.keiyaku_txt_right {
    text-align: center;

    width: 100%;
    margin: 0 0 0px 0;
    padding: 0;
    order: 1;
    }

    p.keiyaku_txt_right .inner_mark02 {
    width: 50%;
    max-width: 50px;
    height: auto;
    }

    p.keiyaku_txt_left {
    line-height: 1.6;
    width: 100%;
    margin: 0;
        padding: 0 0 0 25px;
    order: 2;
    }


/* ------------------------------------ */
/* 画像サイズ (完成版で追加された画像サイズ) */
/* ------------------------------------ */
    .container_QandA dd img.inner_mark {
    width: 100%;
    max-width: 700px;
    }
    .container_QandA dd img.inner_mark03 {
    width: 100%;
    max-width: 500px;
    }
    .container_QandA dd img.inner_mark02 {
    width: 100%;
    max-width: 150px;
    height: auto;
    }

/* ------------------------------------ */
/* Q&A 内部リストスタイル (完成版で追加) */
/* ------------------------------------ */
    .container_QandA ul {
    list-style: none;
    padding: 0;
    margin: 20px 0 0 0;
    }
    .container_QandA ul li .form {
    display: flex;
    justify-content: center;
    width: 100%;
    }
    .container_QandA ul li .form .btn_blue {
    width: 90%;
    max-width: 350px;
    margin: 0;
    }

/* -------------------------------------------------- */
/* kanren_contents */
/* -------------------------------------------------- */
    .kanren_conntainer {
    width: 100%;
    height: 250px;
    margin: 0 auto;
    text-align: center;
    background-color: #fff5d9;
    border-top: 2px solid #5c4300;
    }

    dl.btn_adj {
    margin: 0 auto;
    padding: 20px 0;
    }

    dl.btn_adj dt {
        margin: 0 auto 40px auto;
    font-weight: bold;
    color: #dd4452;
    width: 96%;
    text-align: center;
    }

    dd.btn_kanren {
    width: 90%;
    max-width: 400px;
    margin: 10px auto;
    position: relative;
    }

    dd.btn_kanren a {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 50px;
    padding: 0 40px 0 20px;
    background-color: #fff5d9;
    border: 1px solid #cccccc;
    border-radius: 9999px;

    font-weight: normal;
    color: #333333;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;

    position: relative;
    transition: background-color 0.3s ease;
    }

    dd.btn_kanren a:after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 2px #333333;
    border-right: solid 2px #333333;

    position: absolute;
    top: 50%;
    right: 15px;

    -ms-transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);

    transition: border-color 0.3s ease;
    }

    dd.btn_kanren a:hover {
    background-color: #fcc244;
    }

    dd.btn_kanren a:hover:after {
    border-top: solid 2px #111111;
    border-right: solid 2px #111111;
    }


/* --------------------------------------------------
-----------------------------------------------------
window size 600-
-----------------------------------------------------
-------------------------------------------------- */
@media screen and (min-width:600px){

    br.PC_on,
    br.sp_on {
    display: inline;
    }

    br.btn_sp_on {
    display: none;
    }

    br.TEL_on {
    display: none;
    }

        .mihon li {
    margin:5px 0 55px 0;
    }

    .container_kagu {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 30px;

    margin: 0 auto;

    width: 80%;
    max-width: 850px;
    }

    .container_kagu p.read {
    width: 100%;
    max-width: 800px;
    order: 1;
    margin: 0 0 0 0px;
    }

    .container_kagu > div {
    width: 40%;
    order: 2;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    text-align: center;
    }

    .container_kagu > div p.kagu-img-wrapper {
    width: 100%;
    padding: 0;
    margin: 0;
    }

    .container_kagu p.kagu-img-wrapper .img_kagu {
    width: 200%;
    height: auto;
    display: block;
     margin: 0;
    }


    ul.Btn03-list {
    width: 55%;
    list-style: none;
    padding: 0;
    margin: 0;
    order: 3;
    }

    ul.Btn03-list li.btn-li {
    width: 100%;
    margin-bottom: 20px;
    display: block;
    }


    ul.Btn03-list li.btn-li .form {
    display: flex;
    flex-direction: column;
    width: 100%;
    }

    ul.Btn03-list li.btn-li .form .btn_blue {
    width: 80%;
    margin: 0;
    min-height: 80px;
    }

    /* 入居安心コンテンツ */
    .contents > p {
    width: 90%;
    max-width: 550px;
        margin: 0px auto 2px;
}

    .read_nyukyo {
    margin: 0px auto 20px;
    width: 90%;
}

    section.contents .container_kagu .img_kagu {
    width: 100%;
    height: auto;
    display: block;
    margin: 60px 0;
    padding: 0 10%;
}

    .container_kagu {
        display: flex; /* 既存のflexを保持 */
        flex-direction: column; /* ★縦配列に変更★ */
        flex-wrap: nowrap; /* 縦配列なので折り返しは不要 */
        justify-content: flex-start; /* 縦方向は上寄せ */

        /* 以前議論した通り、このサイズ帯では要素を中央寄せにする */
        align-items: center;

        margin: 0 auto;
        width: 80%;
        max-width: 850px;
    }

       div.container ul.section002 li.left{
    margin: 0px 0px 40px 0px;
    }


    /* ... 既存の600pxでの設定を保持 ... */

    /* 900px未満でのFlexアイテムの幅を調整（画像とボタンリスト） */
    .container_kagu > div,
    ul.Btn03-list {
        width: 100%; /* 親の幅（80%）に対して100% */
        max-width: 350px; /* ★ボタンのmax-widthに合わせて、幅を制限★ */
        margin: 15px auto; /* 縦に並んだ要素を中央寄せ */
    }

    section.contents .container.container_kagu {
        /* 横方向（副軸）の配置を中央寄せにする */
        align-items: center;
                padding: 2px 0 2px 0;
    }



    section.contents .container_kagu .img_kagu {
    width: 95%;
    height: auto;
    display: block;
    margin: 0;
    margin: 0px 0;
    padding: 0 0%;
}

    section.contents .container.container_kagu ul {
    width: 100%;
    height: auto;
    flex-wrap: wrap;
}

/* ================================================= */
/* 2. Q&Aセクションの画像調整 (中サイズ用) */
/* ================================================= */
/* QA_squerArea (背景色エリア) */
    .container_QandA dd.QA_squerArea {
    width: 90%;
    background-color: #ffe5dc;
    padding: 20px 0px 20px 10px;
    margin:0px 16% 20px 6%;
    }

    .container_QandA {
    width: 90%;
    max-width: 950px;
    margin: 0 auto;
    padding: 20px 0;
    }

    .container_QandA dd img.inner_mark02 {
    width: 100%;
    max-width: 150px;
    height: auto;
    }

    br.PC_on,
    br.TEL_on02,
    br.sp_on {
    display: inline;
    }

    br.btn_sp_on {
    display: none;
    }

}
/* --------------------------------------------------
-----------------------------------------------------
window size 900-
-----------------------------------------------------
-------------------------------------------------- */
@media screen and (min-width:900px){

/* Top Zone --------------------------------------*/
    .maintitle>div {
    width: 100%;
    height: 100%;
    padding: 40px 0 30px 0;
    }

    .maintitle h1 span {
    display: block;
    margin: 0px auto 0 auto;
    }
    .maintitle {
    background-image: linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.9)), url(../contractor/koshin/image/bg_kanagawa.jpeg);

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 0;
    }

    .sp {
    display: block;
    }

    img.sp_float_img {
    display: none;
    }

    .readcontents .renraku {
    max-width: 800px;
    margin: 10px auto ;
    text-align: center;
    font-weight: bold !;
    }

/*  -- section class="maintitle"-- -- -- */

    .maintitle > div {
    height: 120px;
    overflow: hidden;
    }


    .maintitle img.sp {
    width: 100%;
    height: auto;
    display: block;
    }

/*  -- section class="maintitle" END-- -- -- */
/* ---------- Btn class="readcontents" -------------------- */
div.form a.btn_blue_single, a:link.btn_blue_single, a:visited.btn_blue_single {
    display: block;
    padding: 20px;
    background-color: #003c78;
    width: 90%;
    max-width: 650px;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 2px;
    clear: both;
    color: #ffffff;
    text-decoration: none;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
/* ---------- Btn class="readcontents" -------------------- */

/* ---------- section class="readcontents" -------------------- */



    ul.form-list_Single .form-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    gap: 20px;
    }

    ul.form-list_Single li.left {
    width: calc(100% - 10px); /* gap: 20px を考慮幅 */
    margin: 50px 0px;
    display: flex;
    flex-direction: column;
    }


    ul.form-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    gap: 20px;
    }

    ul.form-list li.left {
    width: calc(50% - 10px); /* gap: 20px を考慮幅 */
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    }

    ul.form-list li.left .form {
    height: 100%;
    display: flex;
    width: 100%;
    }

    ul.form-list li.left .form .btn_blue {
    margin-left: auto;
    margin-right: auto;
    }

    .pogition_adj{
    margin-top: 20px;
    }

/* ---------- section class="contents" (.container_kagu) --}------------------ */
    .contents > p {
    width: 90%;
    max-width: 830px;
        margin: 0px auto 25px;
}


    section.contents .container.container_kagu {
    display: flex; /* Flexboxを有効化 */
    flex-direction: row; /* 👈 縦配列(column)から横配列(row)に戻す */
    justify-content: space-between; /* 横方向の配置 */
    align-items: flex-start; /* 縦方向の上寄せ */
    flex-wrap: wrap; /* 横配列では折り返しを許可 */

    width: 100%;
    max-width: 880px;
    padding: 0px 0 20px 0;
    }



    ul.section002 {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: 20px;
    margin: 6% 0 50px 0;
    }

    ul.section002 li.left {
    width: calc(50% - 10px);
    margin-bottom: 0;
    }

    ul.section002 li.right {
    width: 43%;
    margin-bottom: 0;
    }

    ul.section002 li.left p {
    margin: 0;
    }

    ul.section002 li.right p {
    line-height: 1.8em;
    width: 100%;
    margin: 0;
        max-width: 350px;
margin: 0 0 0 15%;
    }

    ul.section002 li.right .form {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    }

    ul.section002 li.right .form .btn_blue {
    margin-left: auto;
    margin-right: 0;
    }

                    .container_kagu p.read {
    width: 100%;
    max-width: 2600px;
    order: 1;
    margin: 0 0 0 0px;
    }



       /* 入居安心コンテンツ */


    section.contents .container_kagu .img_kagu {
    width: 48%;
    height: auto;
    display: block;
    margin: 0;
    margin: 0px 0 0px 0;
    padding: 0 0%;
}

section.contents .container.container_kagu ul {
    width: 44%;
    height: auto;
    flex-wrap: wrap;
}

   ul.Btn03-list {
    width: 50%;
    height: auto;
    flex-wrap: wrap;
    }

    .nyuukyo_anshin li.sp_btnB {
    margin-bottom: 80px;
}

/* ================================================= */
/* 1. Q&AセクションのPC調整 */
/* ================================================= */

/* QA_squerArea (背景色エリア) */
    .container_QandA dd.QA_squerArea {
    width: 90%;
    max-width: 800px;
    background-color: #ffe5dc;
    padding: 20px 5% 20px 5%;
    margin:0 45px 20px 45px;
    }

    .container_QandA dd.QA_squerArea_blue {
    width: 90%;
    max-width: 800px;
    padding: 20px 0px 20px 0px;
    margin:0 45px 0 45px;
    }


    .container_QandA {
    max-width: 950px;
    margin: 0 auto;
    padding: 20px 0;
    }

    .container_QandA dd img.inner_mark02 {
    width: 100%;
    max-width: 150px;
    height: auto;
    }

    .container_QandA dt {
    padding: 12px 20px 3px 40px;
    margin-top: 15px;
    }

    .container_QandA dt::before {
    left: 15px;
    top: 60%;
    transform: translateY(-50%);
    }

    .container_QandA dd {
    margin-bottom: 20px;
    }

    .container_QandA dd.kasai_block{
    padding: 0px 15px 0px 40px;
    }

    .container_QandA dd.kasai_block {
    margin-bottom: 0px;
    }

    .container_QandA dt span.goisho,
    .container_QandA dt span.annshin,
    .container_QandA dt span.kasaihoken {
    margin-left: 15px;
    }

    br.PC_on,
    br.sp_on {
    display: inline;
    }

    br.TEL_on02,
    br.btn_sp_on {
    display: none;
    }

/* ================================================= */
/* 2. DD内のテキストと画像の横並び (.miniminiman) */
/* ================================================= */

    .container_QandA dd.miniminiman {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
    width: 100%;
    padding: 0px 40px 20px 40px;
    }

    p.keiyaku_txt_left {
    width: 75%;
    margin: 0;
    padding: 0;
    order: 1;
    }

    p.keiyaku_txt_right {
    width: 25%;
    margin: 0;
    padding: 0;
    order: 2;
    flex-shrink: 0;
    }

    p.keiyaku_txt_right .inner_mark02 {
    width: 100%;
    max-width: 100px;
    }

/* ================================================= */
/* 3. 関連コンテンツ (.kanren_contents) のPC調整 */
/* ================================================= */



    dl.btn_adj dt {
    width: 100%;
    margin-bottom: 20px;
    }

    dl.btn_adj {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    padding: 20px 0;
    margin: 0 auto;
    }

    dd.btn_kanren {
    min-width: 350px;
    min-height: 60px;

    width: auto;
    margin: 0;
    padding: 8px 40px 8px 20px;
    height: 50px;
    }


}