@charset "utf-8";

/*SP用*/
@media screen and (max-width:640px) {
    #top {
        width: 100%;
        margin: auto;
        background-color: #FFEEDE;
        color: #5A5A5A;
        font-family: "BIZ UDGothic";
    }
    /*SPメニュー未実装*/
    .sp {
        display: none;
    }
    /*SP非表示*/
    .spnone {
        display: none;
    }
    /* Header */
    #top header {
        width: 100%;
        margin: auto;
    }
    /* H Block */
    #top .h_block {
        background: rgba();
        padding: 0 0 1vw;
        font-family: 'Zen Old Mincho', serif;
        position: relative;
        /*z-index: -2;*/
        margin: 0 2vw 4vw ;
    }
    #top .top_txt {
        display: none;
        margin: auto;
        background-color: #F46E26;
    }
    #top .top_ptxt {
        font-size: 0.5rem;
        color: #fff;
        font-weight: normal;
    }
    #top .container {
        width: 100%;
        margin: auto;
        padding-top: 15px;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    #top .hl_box, #top .hc_box, #top .hr_box, #top .hr2_box {}
    #top .hl_box {
        width: 49%;
        margin: auto;
    }
    #top .hc_box {
        width: 49%;
        margin: auto;
    }
    #top .hr_box {
        margin: 4vw auto 0;
        width: 35%;
    }
    #top .hr2_box {
        margin: 4vw auto 0;
        width: 35%;
    }
    #top .tel_box {
        width: 90%;
        margin: auto;
    }
    #top .c_box_txt{
        font-size: 2vw;
        font-weight: normal;
        margin: 1vw auto;
    }
    #top .r01_box_txt {
        font-size: 0.58rem;
        font-weight: bold;
    }
    #top .m_txt{
        margin: 1em 0 0; 
    }
    #top .main_txt{
        font-family: serif;
        color: #8B4513;
        text-align: center;
        font-size: 4vw;
        font-weight: 900;
        margin: 15px 0 0;
        line-height: 2;
        text-shadow: #deb887 2px 2px;
    }
    #top .main_txt2{
        font-family: serif;
        color: #8B4513;
        text-align: center;
        font-size: 3.5vw;
        font-weight: 900;
        margin: auto;
        line-height: 2;
        text-shadow: #deb887 2px 2px;
    }
    #top .lmu_box {
        width: 90%;
        margin: auto;
        padding: 2%;
    }
    #top .rmu_box {
        width: 90%;
        margin: auto;
        padding: 2%;
    }
    #top .lmu_box1 {
        width: 90%;
        margin: auto;
        padding: 2%;
    }
    #top .rmu_box1 {
        width: 90%;
        margin: auto;
        padding: 2%;
    }
    nav {
        text-align: center;
    }
    nav ul {
        margin: auto;
    }
    nav ul.w1280 {
        width: 98% !important; max-width: 98% !important; 
    }
    nav li {
        list-style: none;
        display: inline-block;
        width: 18%;
        font-size: 2.4vw;
        margin: 0 0 1.5vw;
    }
    nav li:not(:last-child) {
        border-right: 2px solid #ddd;
        
    }
    nav a {
        text-decoration: none;
        color: #8B4513;
        font-weight: 600;
    }
    nav a.current {
        color: #00B0F0;
        border-bottom: 2px solid #00B0F0;
    }
    nav a:hover {
        color: #F7CB4D;
        border-bottom: 2px solid #F7CB4D;
    }
    #top .main_block {
        width: 100%;
        height: auto;
        margin: auto;
    }
    #top .time_block {
        margin-top: 10px;
        position: flex;
        background: #ffefef;
        box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3);
        padding: 5px 5px;
    }
    #top .time_block table {
        width: 100%;
        border-collapse: collapse;
        margin-top: 10px;
    }
    #top .time_block th {
        background: #8B4513;
        box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
        color: #fff;
        font-size: 2vw;
        padding: auto;
    }
    #top .time_block th, #top .time_block td {
        border-bottom: 1px solid #56C0A8;
        padding: 0.2vw;
        text-align: left;
    }
    #top .time_block th {
        font-size: 2.5vw;
        text-align: center;
    }
    #top .time_block td {
        font-size: 2.5vw;
        text-align: center;
        font-weight: 600;
    }
    #top .time_block .first {
        font-size: 2.5vw;
        text-align: left;
        font-weight: 600;
    }
    #top .time_block_txt {
        font-size: 2.5vw;
        margin-top: 1vw;
        font-weight: 600;
    }
    #top .weekoff {
        text-shadow:0.1vw 0.1vw 0 #FFF;
    }
    #top .r_box_img01 {
        width: 90%;
        margin: auto;
        padding: 3vw 0;
    }
    #top .r_box_img02 {
        width: 90%;
        margin: auto;
        padding: 3vw 0;
    }
    #top .f_img {
        width: 95%;
        margin: auto;
    }
    #top .en_ttl {
        color: rgba(188, 143, 143, 0.60);
        text-align: center;
        letter-spacing: -px;
        -webkit-text-stroke-width: 0.5px;
        -webkit-text-stroke-color: #fff;
        font-family: 'Roboto';
        font-size: 4.6vw;
        font-style: normal;
        font-weight: 900;
        padding: 6vw 0 0;
    }
    #top .jp_ttl {
        color: #696969;
        text-align: center;
        font-family: "Gothic A1";
        font-size: 5vw;
        font-style: normal;
        font-weight: 600;
        padding: 0 0 10px;
    }
    #top .sub_ttl {
        color: #696969;
        text-align: center;
        font-family: serif;
        font-size: 2.4vw;
        font-weight: 700;
        margin: 0 20px 20px;
    }
    #top .sub_ttl2 {
        color: #696969;
        text-align: left;
        font-family: serif;
        font-size: 2.4vw;
        font-weight: 600;
        margin: 0 20px 20px;
    }
    #top .img02 {
        display: none;
    }
    #top .history {
        width: 95%;
        margin: 20px auto;
    }
    #top .img01 {
        width: 65%;
    }
    .box5 {
        padding: 1em 1em;
        margin: 2em 0 0;
        border: double 5px #000000;
        background: #fff;
    }
    .box5 p {
        margin: 0; 
        padding: 0;
    }
    #top .txt_history {
        color: #696969;
        text-align: left;
        font-size: 0.8rem;
        font-style: bold;
        font-weight: 600;
        margin: 0 0 20px;
        line-height: 1.2;
    }
    #top .moreLinkText {
        font-size: 4vw;
        margin: 0 5vw;
        padding: 20px 0 20px;
        font-weight: 550;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }
    /*ホバーしたときに下線矢印も同時に色を変える*/
    .moreLinkText:hover .lineArrow {
        border-bottom: 4px solid #41A849;
        border-right: 4px solid #41A849;
    }
    .moreLinkText:hover {
        color: #41A849;
    }
    .lineArrow {
        width: 100%;
        height: 15px;
        border-bottom: 5px solid #000;
        border-right: 5px solid #000;
        /*傾きを調節*/
        transform: skew(45deg);
        /*下線矢印をテキストに合わせてうまい具合にはめる*/
        margin: -10px 0 0 -5vw;
    }
    #top .device {
        width: 95%;
        margin: 20px auto;
    }
    #top .facility {
        width: 95%;
        margin: 20px auto;
    }
    #top .symptoms {
        width: 95%;
        margin: 20px auto;
    }
    .case {
        /* margin-bottom: 40px; */
        padding: 3vw 0 4vw;
        width: 98%;
    }
    .case_lit {
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        padding: 0 0 0;
        width: 98%;
        margin: 0 auto;
    }
    .case_lit li {
        margin: 0.5vw 0.1vw;
        width: 32%;
        text-align: center;
    }
    .case_lit li a {
        text-decoration: none;
        /* color: #007BFF; */
        font-size: 2.4vw;
        font-weight: 500;
        color: #fff;
  text-shadow: 1px 1px 5px #696969, -1px 1px 5px #696969, 1px -1px 5px #696969, -1px -1px 5px #696969;;
        width: 100%;
        display: block;
        border: solid 2px #fff;
        padding: 27px 0;
        box-shadow: 1px 1px 1px #ff8c00, -1px -1px 1px #ff8c00;
  border-radius: 20px 20px;
        transition-duration: 0.2s;
        background: #ffa07a;
    }
    #footer .bnr {
        padding: 0 0px 40px;
        width: 80%;
        margin: 5px auto 0;
    }
    #footer .home {
        width: 30%;
        margin: 0 auto 3vw;
    }
    #top .end_txt {
        background-color: #F46E26;
    }
    #top .end_ptxt {        
        font-size: 2.5vw;
        color: #fff;
    }
    
    html {
        scroll-behavior: smooth;
    }
    .pagetop {
        height: 50px;
        width: 50px;
        position: fixed;
        right: 20px;
        bottom: 20px;
        background: #fff;
        border: solid 2px #000;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 2;
    }
    .pagetop__arrow {
        height: 10px;
        width: 10px;
        border-top: 3px solid #000;
        border-right: 3px solid #000;
        transform: translateY(20%) rotate(-45deg);
    }
    @media (hover: hover) and (pointer: fine) {
        .pagetop:hover, .pagetop:hover .pagetop__arrow {
            border-color: #F46E26;
        }
    }
    .sponly {
        width: 90%;
        margin: auto;
    }
}