@charset "UTF-8";
.header{
    height:auto;
}
.header-wrapper{
    margin-left: 200rem;
    display:flex;
    flex-direction:row;
}
.header-logo-img{
    width:260rem;
}
.header-logo-img img{
    width:260rem;
}
.header-number-text{
    font-size:22rem;
}
@media screen and (max-width:780px){
    .header-wrapper{
        margin-left:50rem;
    }
    .header-logo-img{
        width:130rem;
    }
    .header-logo-img img{
        width:130rem;
    }
    .header-number-text{
        font-size:11rem;
        letter-spacing: 2rem;
    }
}
.header-wrapper .content{
    margin-top:70rem;
    margin-left:340rem;
    font-size:54rem;
}
@media screen and (max-width:780px){
    .header-wrapper .content{
        margin-top:35rem;
        margin-left:300rem;
        font-size:25rem;
    }
}
/*------------------------------*/
section{
    margin: 0 200rem 200rem 200rem;
}
@media screen and (max-width:780px){
    section{
        margin:0 50rem 50rem 50rem;
    }
}
.sp-br{
    display:none;
}
.sp-empty{
    display:none;
}
.pc-br{
    display:flex;
}
.pc-empty{
    display:inline-block;
}
@media screen and (max-width:780px){
    .sp-br{
        display:flex;
    }
    .sp-empty{
        display:inline-block;
    }
    .pc-br{
        display:none;
    }
    .pc-empty{
        display:none;
    }
}
/*----------------------------*/

.title-jp{
    font-size:86rem;
}
@media screen and (max-width:780px){
    .title-jp{
        font-size:43rem;
    }
}
.Contact-title{
    margin:115rem 0;
}
@media screen and (max-width:780px){
    .Contact-title{
        margin:55rem 0;
    }
}
.form-area{
    background-color:#f1eff0;
    font-size:35rem;
    letter-spacing: 1rem;
    font-weight: 600;
}
@media screen and (max-width:780px){
    .form-area{
        font-size:15rem;
        /*font-size:clamp(10px,15rem,15px);*/
    }
}
.form-title{
    font-size:53rem;
    padding:115rem 0;
    display:flex;
    justify-content: center;
}
@media screen and (max-width:780px){
    .form-title{
        font-size:26rem;
        padding:55rem 0;
    }
}
.form-area dl{
    padding: 0 80rem;
}
@media screen and (max-width:780px){
    .form-area dl{
        padding:0 40rem;
    }
}
.item{
    display:flex;
    flex-direction:row;
    margin-bottom:56rem;
}
@media screen and (max-width:780px){
    .item{
        margin-bottom:25rem;
    }
}
.item dt{
    flex:5;
    display:flex;
    align-items:center;
}
.item dt.top{
    align-items:flex-start;
}
.item dd{
    flex:8;
}
.item dd .error{
    color: red;
}
.item dt label{
    display:flex;
    flex-direction:row;
    align-items:center;
}
.require{
    display:flex;
    justify-content: center;
    background-color:#063b67;
    color:#fff;
    font-size:24rem;
    padding:10rem 0;
    width:80rem;
    letter-spacing: 5rem;
    margin-right:20rem;
    font-weight:500;
}
@media screen and (max-width:780px){
    .require{
        font-size:12rem;
        padding:5rem 0;
        width:40rem;
        letter-spacing: 2rem;
        margin-right:10rem;
    }
}
.require.red{
    background-color:red;
}
input[type="text"].red,
input[type="email"].red{
    border: solid red 5rem;
}

input[type="text"],
input[type="email"] {
    width:100%;
    border:solid 2rem;
    height:110rem;
    padding:0 10rem;
}
@media screen and (max-width:780px){
    input[type="text"],
	input[type="email"]{
        height:55rem;
    }
}
.radio-item label input[type="text"],
.radio-item label input[type="email"],
.radio-item label input[type="number"] {
    height:auto;
    width:280rem;
}
.radio-item label span.span-border{
    border:solid 2rem;
    margin-left:20rem;
}
.radio-item label span.span-border input[type="text"],
.radio-item label span.span-border input[type="email"],
.radio-item label span.span-border input[type="number"] {
    border:none;
    text-align:end;
}
@media screen and (max-width:780px){
    .radio-item label input[type="text"],
    .radio-item label input[type="email"],
    .radio-item label input[type="number"] {
        width:140rem;
    }
}


textarea{
    width:100%;
    border:solid 2rem;
    height:200rem;
    resize:vertical;
    padding:0 10rem;
}
@media screen and (max-width:780px){
    textarea{
        height:100rem;
    }
}
input::placeholder , textarea::placeholder {
    opacity:0.3;
}
.btn-box {
    display: flex;
    align-items: center;
    justify-content:center;
    align-content: center;
    gap: 16rem;
}
.btn-submit{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40rem;
    background-color: #063b67;
    color: #fff;
    padding: 20rem 0;
    margin: 100rem 0;
    width: 525rem;
    text-align: center;
    cursor: pointer;
}
@media screen and (max-width:780px){
    .btn-submit{
        font-size:20rem;
        padding:10rem;
        margin:50rem;
        width:255rem;
    }
}
.radio-item,.checkbox-item{
    margin-bottom:15rem;
    cursor: pointer;
}
.checkbox-item {
	display: flex;
    flex-direction: column;
    gap: 15rem;
}
@media screen and (max-width:780px){
    .radio-item,.checkbox-item{
        margin-bottom:8rem;
    }
    .checkbox-item {
        gap: 8rem;
    }
}
/* カスタムラジオボタンのベーススタイル */
input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 40rem;
    height: 40rem;
    border: 2rem solid #00325a; /* ネイビー */
    border-radius: 50%;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    margin-right: 1rem;
    cursor: pointer;
}
@media screen and (max-width:780px){
    input[type="radio"]{
        width:20rem;
        height:20rem;
    }
}
/* チェックされた時の中の丸 */
input[type="radio"]:checked::before {
    content: "";
    position: absolute;
    top: 8rem;
    left: 8rem;
    width: 22rem;
    height: 22rem;
    border-radius: 50%;
    background-color: #00325a;
}
@media screen and (max-width:780px){
    input[type="radio"]:checked::before {
        top:4rem;
        left:4rem;
        width:8rem;
        height:8rem;
    }
}
input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 40rem;
    height: 40rem;
    border: 2rem solid #00325a; /* ネイビー枠 */
    border-radius: 4rem;
    cursor: pointer;
    position: relative;
    margin-right: 1rem;
    vertical-align: middle;
}
@media screen and (max-width:780px){
    input[type="checkbox"]{
        width:20rem;
        height:20rem;
        border-radius:2rem;
    }
}
/* チェック時の中の四角 */
input[type="checkbox"]:checked::before {
    content: "";
    position: absolute;
    top: 6rem;
    left: 6rem;
    width: 24rem;
    height: 24rem;
    background-color: #00325a;
}
@media screen and (max-width:780px){
    input[type="checkbox"]:checked::before {
        top:3rem;
        left:3rem;
        width:10rem;
        height:10rem;
    }
}
/*複数選択可*/
.item dt p.many{
    font-size:30rem;
    font-weight:500;
    margin-left:100rem;
}
@media screen and (max-width:780px){
    .item dt p.many{
        font-size:15rem;
        margin-left:50rem;
    }
}
.tate{
    display:flex;
    flex-direction:column;
}

.mwform-radio-field-text,
.mwform-checkbox-field-text {
	font-weight: 600;
}


























/*.Contact-group{

}
@media screen and (max-width: 780px){
    .Contact-group{
        padding:50rem;
    }
}
.Contact-title{
}
@media screen and (max-width:780px){
    .Contact-title {

        margin:20rem;
    }
}
.title-en {
    font-size:75rem;
}
@media screen and (max-width:780px){
    .title-en {
        font-size:80rem;
    }
}
.title-jp {
    font-size:30rem;
}
@media screen and (max-width:780px){
    .title-jp {
        font-size:30rem;
    }
}
.form-area {
    background-color:#f1eff0;
    color:#0F192A;
}
.form-area dl{
    padding:0 100rem;
}
.form-area .form-title {
    display:flex;
    justify-content: center;
    padding: 60rem 0 ;
    font-size:30rem;
}
@media screen and (max-width:780px){
    .form-area{
        margin:20rem 0 80rem;
    }
    .form-area .form-title {
        font-size:35rem;
    }
}




.form {
    padding:0 60rem;
}
@media screen and (max-width:780px){
    .form {
        padding: 0 40rem;
    }
}
.form .btn-box {
    display:flex;
    justify-content: center;
    padding:100rem 0;
}
@media screen and (max-width:780px){
    .form .btn-box {
        padding:50rem 0;
    }
}
.form .btn-submit {
    font-size:50rem;
    color:#0F192A;
    background-color: #fff;
    padding:20rem 200rem
}
@media screen and (max-width:780px){
    .form .btn-submit {
        font-size:25rem;
        padding:5rem 60rem;
    }
}


.item {
    display:flex;
    flex-direction:row;
    width:100%;
    margin-bottom:40rem;
    height:100rem;
    font-size:25rem;
}
.item.last-item{
    height:auto;
    margin-bottom:0;
}
.item.radio-item{
    height:auto;
}
.item .radio-item dt label {
    display:flex;
    align-items:flex-start;
}
.radio-group{
    width:100%;
}
.radio-item{
    display:flex;
    flex-direction:row;
}
.radio-items dd input{
    background-color: initial;
    cursor: default;
    appearance: auto;
    box-sizing: border-box;
    margin: 3rem 3rem 3rem 4rem;
    padding: initial;
    border: initial;
}
@media screen and (max-width:780px){
    .item {
        font-size:20rem;
        height:50rem;
        margin-bottom:30rem;
    }
}
.item dt {
    display:flex;
    flex:4;
}
@media screen and (max-width:780px){
    .item dt label {
        display:flex;
        !*flex-direction: column;
        justify-content: space-evenly;
        align-items:baseline;*!
    }
}
input::placeholder , textarea::placeholder {
    opacity:0.3;
}
dt label,dt p{
    width:100%;
    display:flex;
    align-items: center;
}
dt span {
    display: flex;
    background-color:#0F192A;
    color:#fff;
    font-size:25rem;
    padding:2rem 15rem;
    letter-spacing: 5rem;
    margin-right:30rem;
}
@media screen and (max-width:780px){
    dt span {
        font-size:10rem;
        letter-spacing: 2rem;
        padding: 2rem 5rem;
        margin-right:10rem;
    }
}
.item dd {
    display:flex;
    flex:6;
}
dd input {
    width:100%;
    height:100%;
    padding: 20rem;
    border: 2rem solid #0F192A;
}
dd p{
    width:100%;
    height:auto;
}
dd textarea {
    width:100%;
    height:120rem;
    padding:20rem;
    border: 2rem solid #0F192A;
    resize:vertical;
}
.btn-box {
    display: flex;
    align-items: center;
    justify-content:center;
    align-content: center;
}
.btn-submit{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40rem;
    background-color: #063b67;
    color: #fff;
    padding: 20rem 0;
    margin: 100rem 0;
    width: 525rem;
}*/



/*
form {
    padding:0 60rem;
}
@media screen and (max-width:780px){
    form {
        padding: 0 40rem;
    }
}
form .btn-box {
    display:flex;
    justify-content: center;
    padding:100rem 0;
}
@media screen and (max-width:780px){
    form .btn-box {
        padding:50rem 0;
    }
}
form .btn-submit {
    font-size:30rem;
    color:#fff;
    background-color: #0F192A;
    padding:20rem 150rem
}
@media screen and (max-width:780px){
    form .btn-submit {
        font-size:25rem;
        padding:5rem 60rem;
    }
}*/