*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
:root{
  --site-max-width:100%;
  --site-main-width:100%;
  --site-division:393;
  --site-horizontal-ratio:calc(100vw / var(--site-division));
}

/* tosho-header */
.tosho-header{
    padding: 15px;
}
.tosho-header>a>img{
    width: 40%;
}
/* tosho-header */

/* tosho-clientTitle */
.tosho-clientTitle{
    padding: 15px;
    background-color: #FBE3D6;
}
.tosho-clientTitle>h1{
    text-align: center;
}
.tosho-clientTitle>p{
    text-align: center;
}
/* tosho-clientTitle */

/* tosho-clientList */
.tosho-clientList{
    padding: 15px;
}
.tosho-clientList>h2{
    text-align: center;
}
.tosho-clientList>div{
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}
.tosho-clientList>div>div{
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    background-color: #FEFFE5;
}
.tosho-clientList>div>div>span{
    word-wrap: break-word;
    max-width: 46%;
}
.tosho-clientList>div>div>a.apply_btn{
    background-color: #FC5E3A;
    text-align: center;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none;
    padding: 5px 10px;
    font-size: 12px;
    align-self: flex-start;
}
.tosho-clientList>div>div>img{
    width: 100%;
    vertical-align: top;
}
.tosho-clientList>div>div>table{
    width: 100%;
}
.tosho-clientList>div>div>table th,
.tosho-clientList>div>div>table td{
    padding: 5px;
}
.tosho-clientList>div>div>table th{
    background-color: #FBE3D6;
}
.tosho-clientList>div>div>table td{
    background-color: #ffffff;
}
.tosho-clientList>div>div>dl{
    width: 100%;
}
.tosho-clientList>div>div>a.review_btn{
    background-color: #FC5E3A;
    text-align: center;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none;
    padding: 10px 20px;
    font-size: 12px;
    align-self: flex-start;
    margin: auto;
}
/* tosho-clientList */

/* tosho-review */
.tosho-review__div-wrap{
    background-color: #FEFFE5;
}
.tosho-review{
    padding: 15px;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
.tosho-review>*{
    width: 100%;
}
.tosho-review>a.apply_btn{
    width: fit-content;
    background-color: #FC5E3A;
    text-align: center;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none;
    padding: 10px 15px;
    font-size: 12px;
    align-self: flex-start;
}
.tosho-review>a:nth-of-type(1).apply_btn{
    margin-right: 0;
    margin-left: auto;
}
.tosho-review>a:last-of-type.apply_btn{
    margin: auto;
}
.tosho-review>div{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.tosho-review>div>*{
    width: 100%;
}
.tosho-review>div>span:first-of-type{
    font-weight: 500;
}
.tosho-review>div:nth-of-type(1)>img{
    width: 100%;
}
.tosho-review>div:nth-of-type(2)>table{
    background-color: #ffffff;
    border-collapse: collapse;
}
.tosho-review>div:nth-of-type(2)>table th,
.tosho-review>div:nth-of-type(2)>table td
{
    text-align: left;
    padding: 5px 8px;
    border: 1px solid #000000;
}
.tosho-review>div:nth-of-type(3)>div{
    background-color: #FBE3D6;
    border-radius: 15px;
    padding: 15px;
    position: relative;
    width: calc(100% - 80px);
    margin-right: 0;
    margin-left: auto;
}
.tosho-review>div:nth-of-type(3)>div::before{
    content: "";
    display: block;
    width: 60px;
    height: 60px;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 0;
    top: 0;
    transform: translateX(-80px);
}
.tosho-review>div:nth-of-type(3)>div::after{
    content: "";
    display: block;
    width: 20px;
    height: 10px;
    clip-path: polygon(100% 0,100% 100%,0 50%);
    background-color: #FBE3D6;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 0;
    top: 15px;
    transform: translateX(-19px);
}
.tosho-review>div:nth-of-type(3)>div.female::before{
    background-image: url(../images/female.svg);
}
.tosho-review>div:nth-of-type(3)>div.male::before{
    background-image: url(../images/male.svg);
}
/* tosho-review */

/* tosho-map */
.tosho-map__div{
    background-color: #ffffff;
    padding: 15px;
}
.tosho-map>div.map{
    display: none;
}
/* tosho-map */

/* footer */
footer{
    background-color: #ff5e3a;
}
.footer-inner a,
#copyright,
#copyright-center{
    border-color: #fff !important;
    color: #fff !important;
}
/* footer */

/* --------------------------- */


@media (min-width: 768px){
    :root{
        --site-max-width:1200px;
    }

    /* tosho-header */
    .tosho-header{
        max-width: var(--site-max-width);
        margin: auto;
    }
    .tosho-header>a>img{
        width: 250px;
    }
    /* tosho-header */

    /* tosho-clientTitle */
    .tosho-clientTitle>*{
        max-width: var(--site-max-width);
        margin: auto;
    }
    .tosho-clientTitle>p{
        line-height: 2;
    }
    /* tosho-clientTitle */

    /* tosho-clientList */
    .tosho-clientList>*{
        max-width: var(--site-max-width);
        margin: 30px auto 0;
    }
    .tosho-clientList>div{
        gap: 20px;
        margin-top: 20px;
    }
    .tosho-clientList>div>div,
    .tosho-clientList>div>div>img,
    .tosho-clientList>div>div>table
    {
        width: calc(calc(100% - 20px) / 2);
    }
    .tosho-clientList>div>div{
        padding: 15px;
        gap: 15px;
    }
    .tosho-clientList>div>div>span{
        max-width: 50%;
        width: 50%;
    }
    .tosho-clientList>div>div>a.apply_btn{
        font-size: 16px;
        padding: 10px 20px;
    }
    .tosho-clientList>div>div>table th,
    .tosho-clientList>div>div>table td{
        padding: 10px 5px;
    }
    .tosho-clientList>div>div>a.review_btn{
        font-size: 16px;
    }
    /* tosho-clientList */

    /* tosho-review */
    .tosho-review{
        gap: 25px;
        max-width: var(--site-max-width);
        margin: auto;
        padding: 35px;
    }
    .tosho-review>a.apply_btn{
        padding: 15px 25px;
        font-size: 16px;
    }
    .tosho-review>div{
        gap: 10px;
    }
    .tosho-review>div:nth-of-type(2)>table th,
    .tosho-review>div:nth-of-type(2)>table td
    {
        padding: 10px;
    }
    .tosho-review>div:nth-of-type(3)>div{
        padding: 20px;
    }
    /* tosho-review */

    /* tosho-map */
    .tosho-map__div{
        padding: 15px 0;
    }
    .tosho-map{
        display: grid;
        grid-template-areas: "map-map map-form";
        grid-template-columns: 1fr calc(33.3333333333% - 26.6666666667px);
        column-gap: 2vw;
        max-width: 1200px;
        margin: auto;
    }
    .tosho-map>div.map{
        margin-top: 15px;
        position: relative;
        display: block;
        grid-area: map-map;
        height: 36vw;
        background-image: url(/image/media/japan-map.png);
        background-repeat: no-repeat;
        background-position: top;
        background-size: 60%;
    }
    .tosho-map>div.map>div{
        width: 12vw;
        position: absolute;
        display: flex;
        flex-wrap: wrap;
        padding: 0.5%;
        border-radius: 0.5vw;
    }
    .tosho-map>div.map>div#area_1{
        background-color: #df803a;
        bottom: 45%;
        left: 1%;
    }
    .tosho-map>div.map>div#area_2{
        background-color: #ea5413;
        top: 12%;
        left: 25%;
    }
    .tosho-map>div.map>div#area_3{
        background-color: #23ac38;
        top: 2%;
        left: 47%;
    }
    .tosho-map>div.map>div#area_4{
        background-color: #28a7e1;
        top: 5%;
        right: 0%;
    }
    .tosho-map>div.map>div#area_5{
        background-color: #ef8ea7;
        bottom: 18%;
        left: 14%;
    }
    .tosho-map>div.map>div#area_6{
        background-color: #eba91f;
        bottom: 6%;
        left: 36%;
    }
    .tosho-map>div.map>div#area_7{
        background-color: #6bac16;
        bottom: 18%;
        right: 24%;
    }
    .tosho-map>div.map>div#area_8{
        background-color: #0ba29a;
        bottom: 20%;
        right: 2%;
    }
    .tosho-map>div.map>div>div.title{
        font-size: 1.5vw;
        font-weight: bold;
        color: #fff;
        width: 100%;
        text-align: center;
    }
    .tosho-map>div.map>div>a{
        text-decoration: none;
        font-size: 1.2vw;
        display: block;
        width: 48%;
        margin: 1%;
        text-align: center;
        color: #333;
        background: #fff;
        border-radius: 0.5vw;
        padding: 1.3% 1% 1% 1%;
        box-sizing: border-box;
    }
    .tosho-map>.tosho-form__div--sidebar{
        grid-area: map-form;
    }
    /* tosho-map */
}

@media (min-width: 1024px) {
    /* tosho-map */
    .tosho-map{
        grid-template-columns: 1fr calc(32.5% - 39.75px);
    }
    /* tosho-map */
}

@media (min-width: 1200px) {
    /* tosho-map */
    .tosho-map{
        grid-template-columns: 1fr calc(32.5% - 39.75px);
    }
    .tosho-map>div.map{
        height: 432px;
    }
    .tosho-map>div.map>div{
        width: 144px;
        padding: 0.5%;
        border-radius: 3px;
    }
    .tosho-map>div.map>div>div.title{
        font-size: 18px;
    }
    .tosho-map>div.map>div>a{
        font-size: 14px;
        border-radius: 3px;
    }
    /* tosho-map */
}