@charset "utf-8";
.main_title{
    padding-top: clamp(150px,21vw,276px);

    h1{
        font-weight: var(--Bold);
        font-size: var(--font-size44);
        line-height: .9;
        position: relative;
        text-align: center;
        width: 9em;
        margin: 0 auto;
        
        
        &::before{
        content: '';
        position: absolute;
        display: inline-block;
        height: 1.7em;
        top: -2.3em;
        left: 4.5em;
        border-left: solid clamp(3px,.5vw,5px) var(--main-color);
        }
            
        span{
        font-weight: var(--Regular);
        color: var(--main-color);
        font-size: var(--font-size16);
        }
    }
}
/*-----かかりつけ医をもつメリット sp -----*/
.message{
    width: min(90%,1428px);
    margin: 0 auto;
    padding-top: var(--px70);
    padding-bottom: var(--px120);
    transition: .3s;

    .message_p{
        width: min(100%,220px);
        margin: 0 auto;
        transition: .3s;

        img{
            border-radius: var(--px20);
         }
    }
	.message_tx{
        padding-top: var(--px60);
        transition: .3s;
        
        h2{
            font-size: var(--font-size36);
            font-weight: var(--Bold);
            
            span{
                font-size: var(--font-size16);
                font-weight: var(--Regular);
                color: var(--main-color);
                display: block;
            }
        }
        h3{
            padding-top: var(--px20);
            font-weight: var(--Bold);
        }
        p{
            padding-top: var(--px20);
            line-height: 1.8;
        }
    }

}
hr{
    margin: 0;
    border: none;
    border-bottom: 1px solid #707070;
}
/*-----一般内科 sp -----*/
.foreword{
    width: min(90%,1100px);
    margin: 0 auto;
    .inner{
        padding-top: var(--px120);

        .text{
            h3{
                border-left: clamp(3px,.5vw,5px) solid var(--main-color);
                font-size: var(--font-size36);
                font-weight: var(--Bold);
                border-bottom: 1px solid var(--main-color);
                padding: .3em 0 2px var(--px30);
                width: 100%;
            }
            p{
                padding: var(--px30) 0 0  var(--px40);
                line-height: 1.8;
            }

        }
        .photo{
            padding-top: var(--px30);
            width: min(100%,400px);
        }
        
    }
    .recommend{
        margin-top: var(--px20);
        border-radius: var(--px20);
        padding: var(--px50) 0;
        background-color: var(--gray);    
        
        .advise{
            background-color: var(--main-color);
            padding: 7px 0 7px 62px;
            border-top-right-radius: var(--px50);
            border-bottom-right-radius: var(--px50);
            color: #ffffff;
            font-weight: var(--SemiBold);
            font-size: var(--font-size20);
            width: min(90%,470px);
            line-height: 1.4;
            background-image: url(../images/internal/png_01.png);
            background-repeat: no-repeat;
            background-position: 14px center;
        }
        .check_wrap{
            width: 90%;
            margin: 10px auto 0;
        }
        .check{
            position: relative;
            padding: 10px 0 10px 42px;
            font-weight: var(--Medium);
            font-size: var(--font-size18);
            /*ドットを調整*/
            background-image : linear-gradient(to right, #8A8A8A 2px, transparent 2px);
            background-size: 5px 1px;
            background-repeat: repeat-x;
            background-position: left bottom;
        }
        .check:before {
            content: '';
            display: inline-block;
            width: 24px;
            height: 25px;
            background-image: url("../images/internal/png_02.png");
            background-size: 24px auto;
            background-repeat: no-repeat;
            position: absolute;
            top: 14px;
            left: 7px;
        }
    }
    .equipment{
        padding-top: var(--px120);

        h3{
            border-left: clamp(3px,.5vw,5px) solid var(--main-color);
            font-size: var(--font-size36);
            font-weight: var(--Bold);
            border-bottom: 1px solid var(--main-color);
            padding: .3em 0 2px var(--px30);
            width: 100%;
        }

       ul{
            padding-top: var(--px30);
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: var(--px40);

            li{
                font-size: var(--font-size20);
                width: 314px;
                text-align: center;
                transition: .3s;
                line-height: 1.4;
            }
        } 
    }
    
}
/*-----よくある質問 sp -----*/
.question{
    width: min(90%,1100px);
    margin: var(--px100) auto;
    box-shadow: 3px 3px 6px var(--gray),-3px -3px 6px var(--gray);
    border-radius: var(--px20);
    padding: var(--px50) var(--px60) var(--px20);

    h3{
        font-size: var(--font-size28);
        font-weight: var(--Bold);
        width: calc(6em + 60px);
        text-align: center;
        margin: 0 auto;
        position: relative;
        padding: 10px 0 10px 60px;
        margin-bottom: var(--px30);

        &::before{
            display: inline-block;
            content: "";
            position: absolute;
            background-image: url("../images/internal/png_07.png");
            width: 55px;
            height: 50px;
            background-size: 50px;
            top: 0px;
            left: 0px;
            transition: all .3S;
            background-repeat: no-repeat;
        }
    }
    .bt{
        cursor: pointer;
        
        &:first-of-type{
            .q_box{
                border-top: none;
            }
        }
    }
    .q_box{
        padding: 10px 0;
        border-top: 1px solid #ccc;

        span{
            font-size: var(--font-size36);
            font-weight: var(--Bold);
            color: var(--main-color);
            padding-right: 10px;
        }
    }
    .a_box{
        padding: 0 0 15px;
        
        span{
            font-size: var(--font-size36);
            font-weight: var(--Bold);
            color: #E59E24;
            padding-right: 10px;
        }
    }

    /*アコーディオン*/
    .ya{
        position: relative;
    }
    .ya:after{
        content: "＋";
        position: absolute;
        top: 8px;
        right: 8px;
        transition: all 0.2s ease-out;
        
        display: inline-block;
        transform: rotate(0
            deg);
        z-index: -1;
        color: var(--main-color);
        font-size: 22px;
        font-weight: var(--Bold);
    }
    .ya_on{
        position: relative;
    }
    .ya_on:after{
        transform: rotate(0deg);
        content: "－";
    }
}

@media (min-width:768px){
    /*-----かかりつけ医をもつメリット tab -----*/
    .message{
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-left: 10px;

        .message_p{
            width: 33%;
            margin: 0;
            order: 2;
        }
        .message_tx{
            width: 63%;
            margin: 0;
            padding-top: 0;
        }
    }
    /*-----一般内科 tab -----*/
    .foreword{

        .inner{
            display: flex;
            justify-content: space-between;
            align-items: start;

            .text{
                width: 63%;
            }
            .photo{
                padding-top: 0;
                width: 33%;
            }
            &.change{
                .text{
                    order: 2;
                }
            }
        }
        .recommend{

            .advise{
                padding: 13px 0 13px 72px;
                background-position: 18px center;
            }
            .check_wrap{
                width: 94%;
                display: flex;

                ul{
                    min-width: 240px;
                }
            }
            .check{
                padding: 14px 0 14px 50px;
                margin-right: var(--px30);
            }
            .check:before {
                top: 14px;
                left: 8px;
            }
        }
    }
    /*-----よくある質問 tab -----*/
    .question{

        /*アコーディオン*/
        .ya:after{
            top: 6px;
            right: 10px;
            font-size: 28px;
        }

    }


}
@media (min-width:1024px){
    /*-----一般内科 1024 -----*/
    .foreword{
        .recommend{
            
            .advise{
                padding: 13px 0 13px 85px;
                background-position: 30px center;
            }
            .check_wrap{
                width: 92%;

                ul{
                    min-width: 360px;
                }
            }
            .check{
                padding: 16px 10px 16px 52px;
                margin-right: min(7vw,110px);
            }
            .check:before {
                width: 43px;
                height: 33px;
                background-size: 43px auto;
                top: 14px;
                left: 0;
            }
        }
        .equipment{

        ul{
                justify-content: space-between;

                li{
                    width: min(30%,320px);
                }
            } 
        }
    }
    /*-----よくある質問 pc -----*/
    .question{

        h3{
            width: calc(6em + 90px);
            padding: 10px 0 10px 90px;

            &::before{
                width: 76px;
                height: 69px;
                background-size: 76px;
                top: -10px;
                left: 0px;
            }
        }

        /*アコーディオン*/
        .ya:after{
            top: 12px;
            right: 10px;
        }

    }




}

@media (min-width:1280px){
/*-----かかりつけ医をもつメリット 1280 -----*/
    .message{
        padding-left: 100px;

        .message_p{
            width: min(42%,600px);
        }
        .message_tx{
            width: 49%;
        }
    }
/*-----一般内科 1280 -----*/
    .foreword{

        .inner{

            .text{
                width: 52.7%;
            }
            .photo{
                width: 36.3%;
            }
        }
        .recommend{

            .check_wrap{
                width: 93.5%;
    
                ul{
                    min-width: 47%;
                }
            }
        }
    }
    /*-----よくある質問 pc -----*/
.question{

    /*アコーディオン*/
    .ya:after{
        top: 19px;
        right: 20px;
    }

}
 


}

