@media screen and (max-width:540px) {
    .header {
        position: relative;
        background: linear-gradient(135deg, rgba(5, 5, 5, 0.5), rgba(5, 5, 5, 0.5) ),url(../img/bow.png) center/cover;
        /* width: 100%;
        min-width: 1000px;
        height: 100%;
        min-height: 520px;
        z-index: 0; */
        /* width: auto; */
        width: 100%;
        /* min-width: auto; */
        /* min-width: 1000px; */
        height: 100%;
        min-height: 520px;
        z-index: 0;
    }
    .header ul{
        -ms-writing-mode: tb-rl;
        /* writing-mode: vertical-rl; */
        width: 100%;
        /* height: 100%; */
    }
    .flex {
        display: flex;
    }
    .logo{
        position: absolute;
        left: 3%;
        z-index: 2;
    }
    .logo img{
        width: 22%;
    }
    .menu{
        /* position: fixed;
        right: 50%;
        top: 2%;
        z-index: 2; */
        position: absolute;
        right: 2%;
        top: 1%;
        z-index: 2;
    }
    .menu ul li{
        font-size: 18px;
        /* font-size: 20px; */
        padding: 4px 2px;
        /* padding: 10px 5px; */
        text-align: right;
    }
    /* .menu{
        position: absolute;
        right: 3.85%;
        top: 2.5%;
        z-index: 2;
    }
    .menu ul li{
        font-size: 20px;
        padding: 10px 5px;
    } */
    .main-txt{
        -ms-writing-mode: tb-rl;
        /* writing-mode: vertical-rl; */
        letter-spacing: 8px;
        line-height: 1.6;
        font-size: 32px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
        width: 25%;
        height: 25%;
        /* width: 50px; */
        /* height: 200px; */
        text-align: center;
    }
    .lang-opt{
        font-size: 15px;
        position: absolute;
        left: 2%;
        bottom: 2%;
    }
    .lang-opt p{
        padding: 0 10px;
    }
    .JP{
        border-right: solid 1px white;
    }
    .EN{
        border-right: solid 1px white;
    }

    .home-content{
        /* width: 1000px;
        margin:90px auto; */
        margin:0px auto;
        padding: 10px 0 50px;
        /* padding: 10px 0 30px; */
    }
    .form,.fee,.pay{
        text-align:center;
        margin: 40px 0 55px;
        /* margin: 40px 0 85px; */
    }
    .pay{
        /* margin: 30px auto;
        width: 800px; */
        margin: 25px 25px 25px 18px;
        /* margin: 25px; */
        /* margin: 25px auto; */
        flex-flow: column;
        align-content: space-around;
        row-gap: 30px;
    }
    .form-txt-tel{
        font-size: 20px;
        /* font-size: 26px; */
        font-weight: bold;
        line-height: 2;
        margin-left: 10px;
    }
    .tel{
        font-size: 15px;
    }
    .phone-number{
        font-size: 25px;
    }
    /* .form-txt-tel span{
        font-size: 20px;
    } */
    .form-txt{
        font-size: 18px;
        /* font-size: 22px; */
        font-weight: bold;
        margin-top: -5px;
    }
    .form-txt span{
        font-size: 13px;
        /* font-size: 19px; */
    }
    .form-txt2{
        font-size: 15px;
        /* font-size: 16px; */
        /* font-weight: bold; */
        /* line-height: 2; */
        width: 350px;
        margin-top: 8px;
    }
    .fee{
        padding: 50px 0;
    }
    .fee p{
        color: black;
    }
    .fee-txt{
        font-size: 22px;
        font-weight: bold;
        margin-bottom: 20px;
        width: 350px;
    }
    .fee-txt2{
        font-size: 15px;
        /* font-size: 16px; */
        /* line-height: 2; */
        display: block;
        margin-top: 8px;
    }
    .fee-txt3{
        font-size: 10px;
        /* font-size: 12.5px; */
    }
    .fee-pay{
        width: 350px;
    }
    .fee-pay img{
        width: 268px;
        /* width: 350px; */
        text-align: center;
        margin-top: 10px;
        /* margin-top: 5px; */
    }
    .pay{
        text-align: center;
        /* text-align: left; */
        justify-content: space-around;
    }
    .pay-ttl{
        font-size: 20px;
        /* font-size: 22px; */
        font-weight: bold;
    }
    .pay-ttl-dot{
        display: none;
    }
    .pay-txt{
        font-size: 15px;
        /* font-size: 16px; */
        letter-spacing: 1.2px;
        margin-top: 8px;
    }
    .pay-txt2{
        margin-top: 5px;
        font-size: 10px;
        /* font-size: 12.5px; */
        letter-spacing: 1.2px;
    }
    footer{
        background: #c0c0c0;
        text-align: center;
        padding: 20px 20px  10px;
    }
    footer img{
        width: 50px;
    }
    footer p{
        color: black;
        font-size: 14px;
    }

    /*リンクのボタン*/
    .btn a {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        width: 100px;
        height: 50px;
        margin: auto;
        color: #333;
        font-size: 18px;
        font-weight: 700;
        text-decoration: none;
        transition: 0.3s;
    }

    .btn a:hover {
        color: #f2f2f2;
    }
    .btn01 a {
        background-color: #ceb849;
        border: 1px solid #ceb849;
    }

    .btn01 a:hover {
        background-color: #B99b00;
        /*border: 1px solid #333;*/
    }

    .btn01 a::after {
        /*content: '';*/
        position: absolute;
        top: 50%;
        right: -35px;
        transform: translateY(-50%);
        width: 70px;
        height: 1px;
        background-color: #333;
    }
}

@media screen and (min-width:541px) and (max-width:1024px) {
    .header {
        position: relative;
        background: linear-gradient(135deg, rgba(5, 5, 5, 0.5), rgba(5, 5, 5, 0.5) ),url(../img/bow.png) center/cover;
        /* width: 100%;
        min-width: 1000px;
        height: 100%;
        min-height: 520px;
        z-index: 0; */
        /* width: auto; */
        width: 100%;
        /* min-width: auto; */
        /* min-width: 1000px; */
        height: 100%;
        min-height: 520px;
        z-index: 0;
    }
    .header ul{
        -ms-writing-mode: tb-rl;
        /* writing-mode: vertical-rl; */
        width: 100%;
    }
    .flex {
        display: flex;
    }
    .logo{
        position: absolute;
        left: 3%;
        z-index: 2;
    }
    .logo img{
        width: 22%;
    }
    .menu{
        position: absolute;
        right: 3.85%;
        top: 2.5%;
        z-index: 2;
    }
    .menu ul li{
        font-size: 20px;
        padding: 4px 5px;
        text-align: right;
    }
    .main-txt{
        -ms-writing-mode: tb-rl;
        /* writing-mode: vertical-rl; */
        letter-spacing: 8px;
        line-height: 1.6;
        font-size: 32px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
        width: 25%;
        height: 25%;
        /* width: 50px; */
        /* height: 200px; */
        text-align: center;
    }
    .lang-opt{
        font-size: 15px;
        position: absolute;
        left: 2%;
        bottom: 2%;
    }
    .lang-opt p{
        padding: 0 10px;
    }
    .JP{
        border-right: solid 1px white;
    }
    .EN{
        border-right: solid 1px white;
    }

    .home-content{
        /* width: 1000px;
        margin:90px auto; */
        margin:0px auto;
        padding: 10px 0 30px;
    }
    .form,.fee,.pay{
        text-align:center;
        margin: 40px 0 50px;
    }
    .pay{
        margin: 60px;
        /* margin: 30px auto; */
        /* width: 800px; */
    }
    .form-txt-tel{
        font-size: 26px;
        font-weight: bold;
        line-height: 2;
    }
    .tel{
        font-size: 19px;
    }
    .phone-number{
        font-size: 30px;
    }
    /* .form-txt-tel span{
        font-size: 20px;
    } */
    .form-txt{
        font-size: 22px;
        font-weight: bold;
    }
    .form-txt span{
        font-size: 19px;
    }
    .form-txt2{
        margin-left: 30px;
        font-size: 16px;
        /* font-weight: bold; */
        /* line-height: 2; */
        width: 350px;
    }
    .fee{
        padding: 50px 0;
    }
    .fee p{
        color: black;
    }
    .fee-txt{
        font-size: 22px;
        font-weight: bold;
        margin-bottom: 20px;
        width: 350px;
    }
    .fee-txt2{
        font-size: 16px;
        /* line-height: 2; */
        display: block;
    }
    .fee-txt3{
        font-size: 10.5px;
    }
    .fee-pay{
        width: 350px;
    }
    .fee-pay img{
        width: 280px;
        text-align: center;
        margin-top: 5px;
    }
    .pay{
        text-align: left;
        justify-content: space-around;
    }
    .pay-ttl{
        font-size: 22px;
        font-weight: bold;
    }
    .pay-ttl-hyphen{
        display: none;
    }
    .ttl-left{
        margin-left: 30px;
    }
    .ttl-right{
        margin-left: 24px;
    }
    .pay-txt{
        font-size: 16px;
        letter-spacing: 1.2px;
    }
    .pay-txt2{
        margin-top: 5px;
        font-size: 10.5px;
        /* font-size: 12.5px; */
        letter-spacing: 1.2px;
    }
    footer{
        background: #c0c0c0;
        text-align: center;
        padding: 20px 20px  10px;
    }
    footer img{
        width: 50px;
    }
    footer p{
        color: black;
        font-size: 15px;
    }
    .img-card {
        margin-left: 30px;
    }

    /*リンクのボタン*/
    .btn a {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        width: 200px;
        height: 60px;
        margin: auto;
        color: #333;
        font-size: 18px;
        font-weight: 700;
        text-decoration: none;
        transition: 0.3s;
    }

    .btn a:hover {
        color: #f2f2f2;
    }
    .btn01 a {
        background-color: #ceb849;
        border: 1px solid #ceb849;
    }

    .btn01 a:hover {
        background-color: #B99b00;
        /*border: 1px solid #333;*/
    }

    .btn01 a::after {
        /*content: '';*/
        position: absolute;
        top: 50%;
        right: -35px;
        transform: translateY(-50%);
        width: 70px;
        height: 1px;
        background-color: #333;
    }
}

@media screen and (min-width:1025px) {
    .header {
        position: relative;
        background: linear-gradient(135deg, rgba(5, 5, 5, 0.5), rgba(5, 5, 5, 0.5) ),url(../img/bow.png) center/cover;
        width: 100%;
        min-width: 1000px;
        height: 100%;
        min-height: 520px;
        z-index: 0;
    }
    .header ul{
        -ms-writing-mode: tb-rl;
        /* writing-mode: vertical-rl; */
    }
    .flex {
        display: flex;
    }
    .logo{
        position: absolute;
        left: 3%;
        z-index: 2;
    }
    .logo img{
        width: 22%;
    }
    .menu{
        position: absolute;
        right: 2%;
        top: 2.5%;
        z-index: 2;
    }
    .menu ul li{
        font-size: 20px;
        padding: 5px 5px;
        text-align: right;
    }
    .main-txt{
        -ms-writing-mode: tb-rl;
        /* writing-mode: vertical-rl; */
        letter-spacing: 8px;
        line-height: 1.6;
        font-size: 32px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
        width: 10%;
        height: 25%;
        /* width: 50px; */
        /* height: 200px; */
        text-align: center;
    }
    .lang-opt{
        font-size: 15px;
        position: absolute;
        left: 2%;
        bottom: 2%;
    }
    .lang-opt p{
        padding: 0 10px;
    }
    .JP{
        border-right: solid 1px white;
    }
    .EN{
        border-right: solid 1px white;
    }
    /* .CH{
        border-right: solid 2px white;
    } */

    .home-content{
        width: 1000px;
        margin:90px auto;
    }
    .form,.fee,.pay{
        text-align:center;
        margin: 40px 0 85px;
    }
    .pay{
        margin: 30px auto;
        width: 800px;
    }
    .form-txt-tel{
        font-size: 26px;
        font-weight: bold;
        line-height: 2;
    }
    /* .form-txt-tel span{
        font-size: 20px;
    } */
    .tel{
        font-size: 25px;
    }
    .phone-number{
        font-size: 45px;
    }
    .form-txt{
        font-size: 22px;
        font-weight: bold;
    }
    .form-txt span{
        font-size: 19px;
    }
    .form-txt2{
        font-size: 16px;
        /* font-weight: bold; */
        /* line-height: 2; */
        width: 350px;
        margin-left: 30px;
    }
    .fee{
        padding: 50px 0;
    }
    .fee p{
        color: black;
    }
    .fee-txt{
        font-size: 22px;
        font-weight: bold;
        margin-bottom: 20px;
        width: 350px;
    }
    .fee-txt2{
        font-size: 16px;
        /* line-height: 2; */
        display: block;
    }
    .fee-txt3{
        font-size: 12.5px;
    }
    .fee-pay{
        width: 350px;
    }
    .fee-pay img{
        width: 330px;
        /* width: 350px; */
        text-align: center;
        margin-top: 5px;
    }
    .pay{
        text-align: left;
        justify-content: space-around;
    }
    /* .br::before {
        content: "\A" ;
        white-space: pre ;
    } */
    .pay-ttl{
        font-size: 22px;
        font-weight: bold;
    }
    .pay-ttl-hyphen{
        display: none;
    }
    .ttl-left{
        margin-left: 30px;
    }
    .pay-txt{
        font-size: 16px;
        letter-spacing: 1.2px;
    }
    .pay-txt2{
        margin-top: 5px;
        font-size: 12.5px;
        letter-spacing: 1.2px;
    }
    footer{
        background: #c0c0c0;
        text-align: center;
        padding: 20px 20px  10px;
    }
    footer img{
        width: 50px;
    }
    footer p{
        color: black;
        font-size: 15px;
    }
    .img-card {
        margin-left: 30px;
    }

    /*リンクのボタン*/
    .btn a {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        width: 150px;
        height: 50px;
        margin: auto;
        color: #333;
        font-size: 18px;
        font-weight: 700;
        text-decoration: none;
        transition: 0.3s;
    }

    .btn a:hover {
        color: #f2f2f2;
    }
    .btn01 a {
        background-color: #ceb849;
        border: 1px solid #ceb849;
    }

    .btn01 a:hover {
        background-color: #B99b00;
        /*border: 1px solid #333;*/
    }

    .btn01 a::after {
        /*content: '';*/
        position: absolute;
        top: 50%;
        right: -35px;
        transform: translateY(-50%);
        width: 70px;
        height: 1px;
        background-color: #333;
    }
}