@charset "UTF-8";
/* =====================================
    form (80% scaled)
===================================== */

#wrapper{
    background: #F2F2F2;
}

header{
    padding: 46px 0 0 45px;
    margin-bottom: 109px;
    font-size: 2.64rem;
    font-weight: normal;
    line-height: 1;
}

.ttlArea{
    width: 100%;
    max-width: 1100.8px;
    margin: 0 auto 88px; /* 110 * 0.8 */
    padding: 0 32px; /* 40 * 0.8 */
}

.ttlArea h1{
    font-size: 4.16rem; /* 5.2 * 0.8 */
    font-weight: normal;
    line-height: 1;
    color: #7A7A7A;
}

.ttlArea h1 small{
    font-size: 1.92rem; /* 2.4 * 0.8 */
    font-weight: 600;
    line-height: 1;
    color: #000;
    display: block;
    margin-top: 28.8px; /* 36 * 0.8 */
}

.ttlArea h1 span{
    font-size: 1.6rem; /* 2.0 * 0.8 */
    font-weight: normal;
    margin-top: 13.6px; /* 17 * 0.8 */
    display: block;
}

.ttlArea picture img{
    max-width: 100%;
    margin-top: 64px; /* 80 * 0.8 */
}

.ttlArea p{
    font-size: 1.92rem; /* 2.4 * 0.8 */
    margin-top: 53.6px; /* 67 * 0.8 */
}

.list{
    width: 100%;
    max-width: 1101.6px; /* 1377 * 0.8 */
    margin: 0 auto;
    padding: 0 80px;
}

.list + .list{
    margin-top: 112px; /* 140 * 0.8 */
}

.option .list h2{
    font-size: 3.2rem;
    line-height: 1;
    padding-bottom: 30px;
    width: 100%;
    border-bottom: 2px solid #707070;
    margin-bottom: 27px;
}

.product .list h2{
    font-size: 4.88rem;
    font-weight: 320;
    line-height: 1;
    padding-bottom: 30px;
    width: 100%;
    border-bottom: 2px solid #707070;
    margin-bottom: 27px;
}

.product .list h2 small{
    display: block;
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1;
    color: #000000;
    margin-top: 13.6px;
}

.product .list.crowdy h2{
    color: #81B0B9;
    padding-left: 154px;
    position: relative;
    background: url("../img/common/logo02.png") no-repeat top 3px left;
    background-size: 154px auto;
}

.product .list.tenshiLight h2{
    color: #9981b9;
    padding-left: 154px;
    position: relative;
    background: url("../img/common/logo03.png") no-repeat top 3px left;
    background-size: 154px auto;
}

.product .list.tenshi h2{
    color: #88b981;
    padding-left: 154px;
    position: relative;
    background: url("../img/common/logo03.png") no-repeat top 3px left;
    background-size: 154px auto;
}

.product .list.other h2{
    color: #b9a381;
}

.list ul{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    row-gap: 76.8px; /* 96 * 0.8 */
    column-gap: 24px; /* 30 * 0.8 */
}

.list ul + ul{
    margin-top: 76.8px; /* 96 * 0.8 */
}

.list ul li{
    width: calc((100% - 48px)/3); /* 60 * 0.8 */
}

.list ul li .ttl label{
    display: flex;
    column-gap: 17.6px; /* 22 * 0.8 */
    font-size: 1.92rem; /* 2.4 * 0.8 */
    line-height: 1.25;
    pointer-events: none;
}

.list ul li .ttl input{
    appearance: none;
    position: relative;
    width: 27.2px;  /* 34 * 0.8 */
    height: 27.2px; /* 34 * 0.8 */
    border: 1px solid #707070; /* keep */
    background-color: #ffffff;
    cursor: pointer;
    margin: 0;
    display: none;
}

.list ul li .ttl input:checked::after{
    content: "";
    position: absolute;
    top: 4.8px;  /* 6 * 0.8 */
    left: 4px;   /* 5 * 0.8 */
    width: 15.2px; /* 19 * 0.8 */
    height: 8px;   /* 10 * 0.8 */
    border-bottom: 4px solid #000; /* keep */
    border-left: 4px solid #000;   /* keep */
    transform: rotate(-45deg);
}

.list ul li .ttl span{
    width: calc(100% - 44.8px); /* 56 * 0.8 */
}

.list ul li .ttl label small{
    font-size: 1.12rem; /* 1.4 * 0.8 */
    display: block;
    margin-top: 1.6px; /* 2 * 0.8 */
}

.list ul li img{
    max-width: 100%;
    margin-top: 4.8px; /* 6 * 0.8 */
}

.list ul li .originalPrice{
    font-size: 2.4rem; /* 3.0 * 0.8 */
    line-height: 1;
    margin-top: 25.6px; /* 32 * 0.8 */
    text-decoration: line-through;
}

.list ul li .price{
    font-size: 2.8rem; /* 3.5 * 0.8 */
    line-height: 1;
    margin-top: 12px; /* 15 * 0.8 */
    color: #FF0000;
}

.list ul li .price small{
    font-size: 2.0rem; /* 2.5 * 0.8 */
    line-height: 1;
    display: block;
    margin-top: 8px; /* 10 * 0.8 */
}

.list ul li .price .select{
    position: relative;
    margin-top: 17.6px; /* 22 * 0.8 */
}

.list ul li .price .select:after {
    content: "";
    position: absolute;
    left: 84px;       /* 105 * 0.8 */
    top: 17.6px;      /* 22 * 0.8 */
    width: 8px;       /* 10 * 0.8 */
    height: 8px;      /* 10 * 0.8 */
    border-top: 4px solid #000;  /* keep */
    border-left: 4px solid #000; /* keep */
    pointer-events: none;
    transform: translateY(-50%) rotate(-135deg);
}

.list ul li .price .select select{
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.6rem; /* 2.0 * 0.8 */
    font-weight: normal;
    background: #fff;
    border: 2px solid #2c73ba; /* keep */
    border-radius: 0;
    position: relative;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 5.6px 31.2px 5.6px 10.4px; /* 7 39 7 13 * 0.8 */
}

.list ul li .price p{
    font-size: 1.28rem; /* 1.6 * 0.8 */
    line-height: 1.75;
    margin-top: 14.4px; /* 18 * 0.8 */
    color: #000;
}

.formCnt{
    width: 100%;
    max-width: 1101.6px; /* 1377 * 0.8 */
    margin: 0 auto;
    padding: 0 32px; /* 40 * 0.8 */
}

.formCnt h2{
    font-size: 2.4rem; /* 3.0 * 0.8 */
    line-height: 1;
    min-width: 179.2px; /* 224 * 0.8 */
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 24px; /* 30 * 0.8 */
}

.formCnt h2 .hissu{
    font-size: 1.28rem; /* 1.6 * 0.8 */
    line-height: 1;
    color: #fff;
    background: #FF0000;
    padding: 4.8px 13.6px 5.6px; /* 6 17 7 * 0.8 */
    margin-top: 1.6px; /* 2 * 0.8 */
}

.formCnt h3{
    font-size: 1.92rem; /* 2.4 * 0.8 */
    line-height: 1;
    margin-top: 28.8px; /* 36 * 0.8 */
}

.formCnt small + h2,
.formCnt label + h2,
.formCnt .nohin + h2,
.formCnt label + .nohin{
    margin-top: 51.2px; /* 64 * 0.8 */
}

.formCnt small + h3{
    margin-top: 35.2px; /* 44 * 0.8 */
}

.formCnt input{
    border: 1px solid #707070; /* keep */
    background: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.92rem; /* 2.4 * 0.8 */
    padding: 12px 8px 12.8px; /* 15 10 16 * 0.8 */
}

.formCnt input.type01{
    width: 312px; /* 390 * 0.8 */
}

.formCnt input.type02{
    width: 100%;
}

.formCnt h2 + input,
.formCnt h2 + textarea{
    margin: 19.2px 0 0; /* 24 * 0.8 */
}

.formCnt h3 + input{
    margin: 15.2px 0 0; /* 19 * 0.8 */
}

.formCnt label{
    display: flex;
    column-gap: 17.6px; /* 22 * 0.8 */
    font-size: 1.92rem; /* 2.4 * 0.8 */
    line-height: 1.25;
    cursor: pointer;
    margin-top: 35.2px;
}

.formCnt label input{
    appearance: none;
    position: relative;
    width: 27.2px;  /* 34 * 0.8 */
    height: 27.2px; /* 34 * 0.8 */
    border: 1px solid #707070; /* keep */
    background-color: #ffffff;
    cursor: pointer;
    margin: 0;
}

.formCnt label input:checked::after{
    content: "";
    position: absolute;
    top: 4.8px;  /* 6 * 0.8 */
    left: 3px;
    width: 15.2px; /* 19 * 0.8 */
    height: 8px;   /* 10 * 0.8 */
    border-bottom: 4px solid #000; /* keep */
    border-left: 4px solid #000;   /* keep */
    transform: rotate(-45deg);
}

.formCnt small{
    font-size: 1.28rem; /* 1.6 * 0.8 */
    font-weight: normal;
    display: block;
    line-height: 1;
    margin-top: 15.2px; /* 19 * 0.8 */
}

.formCnt textarea{
    width: 100%;
    height: 144px; /* 180 * 0.8 */
    border: 1px solid #707070; /* keep */
    background: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.92rem; /* 2.4 * 0.8 */
    padding: 12px 8px 12.8px; /* 15 10 16 * 0.8 */
    display: block;
}

input[type="submit"]{
    width: 507.2px; /* 634 * 0.8 */
    border: none;
    background: #707070;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.68rem; /* 2.1 * 0.8 */
    font-weight: 500;
    color: #fff;
    padding: 14.4px 8px 15.2px; /* 18 10 19 * 0.8 */
    margin: 96px auto 0; /* 120 * 0.8 */
    display: table;
    cursor: pointer;
    transition: 0.3s all ease;
}

input[type="submit"]:hover{
    opacity: 0.6;
}

.back{
    font-size: 1.2rem; /* 1.5 * 0.8 */
    line-height: 1;
    text-align: center;
    padding: 0 3.2px 6.4px; /* 4 8 * 0.8 */
    margin: 30.4px auto 0; /* 38 * 0.8 */
    border-bottom: 2px solid #707070; /* keep */
    display: table;
}

.estimate{
    width: 100%;
    max-width: 1101.6px; /* 1377 * 0.8 */
    margin: 0 auto;
    padding: 0 32px; /* 40 * 0.8 */
}

.customer{
    width: 100%;
    max-width: 1101.6px; /* 1377 * 0.8 */
    margin: 50.4px auto 0; /* 63 * 0.8 */
    padding: 0 32px; /* 40 * 0.8 */
}

.confirm h2{
    font-size: 2.4rem; /* 3.0 * 0.8 */
    line-height: 1;
}

.confirm dl{
    line-height: 1.25;
    margin-top: 30.4px; /* 38 * 0.8 */
}

.confirm dl div{
    display: flex;
    gap: 14%;
}

.confirm dl div + div{
    margin-top: 27.2px; /* 34 * 0.8 */
}

.confirm .estimate dl div dt{
    width: 36%;
}

.confirm .estimate dl div dd{
    width: 50%;
}

.confirm .customer dl div dt{
    width: 36%;
}

.confirm .customer dl div dd{
    width: 50%;
}

.estimate .price{
    font-size: 3.2rem; /* 4.0 * 0.8 */
    margin: 72px 0 0 auto; /* 90 * 0.8 */
    line-height: 1;
    text-align: right;
}

.estimate .price ul{
    font-size: 1.92rem; /* 2.4 * 0.8 */
    line-height: 1.67;
    color: #FF0000;
    margin-top: 13.6px; /* 17 * 0.8 */
}

.thanksCnt{
    width: 100%;
    max-width: 1101.6px; /* 1377 * 0.8 */
    margin: 0 auto;
    padding: 0 32px; /* 40 * 0.8 */
}

.thanksCnt h2{
    font-size: 3.2rem; /* 4.0 * 0.8 */
    margin-bottom: 54.4px; /* 68 * 0.8 */
    line-height: 1;
}

.thanksCnt .tel{
    margin: 35.2px 0 49.6px; /* 44,62 * 0.8 */
}

.thanksCnt .tel span{
    font-size: 3.04rem; /* 3.8 * 0.8 */
    line-height: 34px;
    padding-left: 44.8px; /* 56 * 0.8 */
    background: url("../img/common/icon_tel.png") no-repeat top 3px left 12.8px; /* 4,16 * 0.8 */
    background-size: auto 31px;
    display: block;
}

.thanksCnt .tel small{
    font-size: 1.92rem; /* 2.4 * 0.8 */
    line-height: 1;
    margin-top: 14.4px; /* 18 * 0.8 */
    display: block;
}

.thanksCnt .back{
    margin: 81.6px auto 0; /* 102 * 0.8 */
}

.floatingCart{
    position: fixed;
    bottom: 48px; /* 60 * 0.8 */
    right: 0;
    background: #fff;
    padding: 30px 25px; /* 40,40,66 * 0.8 */
}

.floatingCart h3{
    font-size: 2.4rem; /* 3.0 * 0.8 */
    line-height: 1;
}

.floatingCart p{
    font-size: 2.0rem;
    line-height: 1.42857143;
    margin-top: 19px;
}

.floatingCart p small{
    font-size: 60%;
}

.floatingCart p small + small{
    display: block;
    line-height: 1.25;
}

.floatingCart .caution{
    font-size: 1.2rem; /* 1.5 * 0.8 */
    line-height: 1.35;
    color: #FF0000;
    display: table;
    margin-top: 10px;
    padding-left:1em;
    text-indent:-1em;
}

.floatingCart .next{
    font-size: 1.68rem; /* 2.1 * 0.8 */
    font-weight: 600;
    line-height: 1;
    color: #fff;
    margin-top: 19.2px; /* 24 * 0.8 */
    background: #707070;
    border: none;
    border-radius: 0;
    display: inline-block;
    padding: 15.2px 28.8px 19.2px; /* 19 36 24 * 0.8 */
}

.floatingCart .reset{
    font-size: 1.2rem; /* 1.5 * 0.8 */
    line-height: 1;
    display: table;
    margin-top: 30px;
    padding-bottom: 6.4px; /* 8 * 0.8 */
    border-bottom: 2px solid #707070; /* keep */
    cursor: pointer;
}

.floatingCart .back{
    font-size: 1.2rem; /* 1.5 * 0.8 */
    margin: 16px 0 0; /* 20 * 0.8 */
    padding-bottom: 6.4px; /* 8 * 0.8 */
    border-bottom: 2px solid #707070; /* keep */
    cursor: pointer;
}


@media screen and (max-width:768px){

#wrapper{
    padding-top: 12.8vw;
}

header{
    top: 12.8vw;
}

header img{
    margin: 0 5.33vw 0 auto;
    width: 10.933vw;
}

.ttlArea{
    margin: 0 auto 7.2vw;
    padding: 0 5.33vw;
}

.ttlArea h1 img{
    width: 72vw;
}

.ttlArea h1 small{
    font-size: 3.2vw;
    margin-top: 2.67vw;
}

.ttlArea h1 span{
    font-size: 83.33%;
    margin-top: 2vw;
}

.ttlArea picture img{
    margin-top: 5.33vw;
}

.ttlArea p{
    margin-top: 4.267vw;
    line-height: 1.67;
}

.list{
    padding: 0 5.33vw;
}

.list + .list{
    margin-top: 18.67vw;
}

.option .list h2{
    font-size: 5.33vw;
    padding-bottom: 5.067vw;
    border-bottom: 0.267vw solid #707070;
    margin-bottom: 4.533vw;
}

.product .list h2{
    font-size: 5.33vw;
    padding-bottom: 5.067vw;
    margin-bottom: 4.8vw;
}

.list ul{
    row-gap: 12.8vw;
    column-gap: 4vw;
}

.list ul + ul{
    margin-top: 12.8vw;
}

.list ul li{
    width: calc((100% - 4vw)/2);
}

.list ul li .ttl label{
    column-gap: 2.933vw;
    font-size: 3.2vw;
}

.list ul li .ttl input{
    width: 4.533vw;
    height: 4.533vw;
}

.list ul li .ttl input:checked::after{
    top: 0.8vw;
    left: 0.67vw;
    width: 2.533vw;
    height: 1.33vw;
    border-bottom: 0.533vw solid #000;
    border-left: 0.533vw solid #000;
}

.list ul li .ttl span{
    width: calc(100% - 7.467vw);
}

.list ul li .ttl label small{
    font-size: 1.867vw;
    margin-top: 0.267vw;
}

.list ul li img{
    margin-top: 0.8vw;
}

.list ul li .originalPrice{
    font-size: 4vw;
    margin-top: 4.267vw;
}

.list ul li .price{
    font-size: 4.67vw;
    margin-top: 2vw;
}

.list ul li .price small{
    font-size: 3.33vw;
    margin-top: 1.33vw;
}

.list ul li .price .select{
    margin-top: 2.933vw;
}

.list ul li .price .select:after {
    left: 14vw;
    top: 2.933vw;
    width: 1.33vw;
    height: 1.33vw;
    border-top: 0.533vw solid #000;
    border-left: 0.533vw solid #000;
}

.list ul li .price .select select{
    font-size: 2.67vw;
    padding: 0.933vw 5.2vw 0.933vw 1.733vw;
}

.list ul li .price p{
    font-size: 2.133vw;
    margin-top: 2.4vw;
}

.formCnt{
    padding: 0 5.33vw;
}

.formCnt h2{
    font-size: 4vw;
    min-width: 29.867vw;
    column-gap: 4vw;
}

.formCnt h2 .hissu{
    font-size: 2.133vw;
    padding: 0.8vw 2.267vw 0.933vw;
    margin-top: 0.267vw;
}

.formCnt h3{
    font-size: 3.2vw;
    margin-top: 4.8vw;
}

.formCnt small + h2{
    margin-top: 8.533vw;
}

.formCnt small + h3{
    margin-top: 5.867vw;
}

.formCnt input{
    font-size: 3.2vw;
    padding: 2vw 1.33vw 2.133vw;
}

.formCnt input.type01{
    width: 100%;
}

.formCnt h2 + input, .formCnt h2 + textarea{
    margin: 3.2vw 0 0;
}

.formCnt h3 + input{
    margin: 2.533vw 0 0;
}

.formCnt small{
    font-size: 2.133vw;
    margin-top: 2.533vw;
}

.formCnt textarea{
    height: 24vw;
    font-size: 3.2vw;
    padding: 2vw 1.33vw 2.133vw;
}

input[type="submit"]{
    width: 84.533vw;
    font-size: 2.8vw;
    padding: 2.4vw 1.33vw 2.533vw;
    margin: 16vw auto 0;
}

input[type="submit"]:hover{
    opacity: 1;
}

.back{
    font-size: 2vw;
    padding: 0 0.533vw 1.067vw;
    margin: 5.067vw auto 0;
    border-bottom: 0.267vw solid #707070;
}

.estimate{
    padding: 0 5.33vw;
}

.customer{
    margin: 8.4vw auto 0;
    padding: 0 5.33vw;
}

.confirm h2{
    font-size: 4vw;
}

.confirm dl{
    margin-top: 5.067vw;
}

.confirm dl div{
    gap: 6%;
}

.confirm dl div + div{
    margin-top: 4.533vw;
}

.confirm .estimate dl div dd{
    width: 58%;
}

.confirm .customer dl div dd{
    width: 58%;
}

.estimate .price{
    font-size: 5.33vw;
    margin: 12vw 0 0 auto;
}

.estimate .price ul{
    font-size: 3.2vw;
    margin-top: 2.267vw;
}

.thanksCnt{
    padding: 0 5.33vw;
}

.thanksCnt h2{
    font-size: 5.33vw;
    margin-bottom: 10.488vw;
}

.thanksCnt .tel{
    margin: 5.867vw 0 8.267vw;
}

.thanksCnt .tel span{
    font-size: 5.067vw;
    line-height: 5.733vw;
    padding-left: 7.467vw;
    background: url("../img/common/icon_tel.png") no-repeat top 0.533vw left 2.133vw;
    background-size: 4vw auto;
}

.thanksCnt .tel small{
    font-size: 3.2vw;
    margin-top: 2.4vw;
}

.thanksCnt .back{
    margin: 13.6vw auto 0;
}

.floatingCart{
    width: 100%;
    bottom: 0;
    padding: 5.867vw 7.733vw 5.867vw 9.067vw;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.floatingCart h3{
    width: 20%;
    font-size: 4.267vw;
}

.floatingCart p{
    width: 60%;
    font-size: 4vw;
    margin-top: 0;
}

.floatingCart p small{
    font-size: 80%;
}

.floatingCart p small + small{
    display: inline;
}

.floatingCart .caution{
    font-size: 4vw;
    margin-top: 2.67vw;
    width: 100%;
}

.floatingCart .next{
    font-size: 4vw;
    margin-top: 0;
    padding: 2.3vw 0 0;
    width: 20%;
    height: 9.067vw;
    text-align: center;
}

.floatingCart .reset{
    font-size: 4vw;
    margin-top: 1.33vw;
    padding-bottom: 1.067vw;
    border-bottom: 0.267vw solid #707070;
}

.floatingCart .back{
    font-size: 4vw;
    margin: 2.67vw 0 0 4vw;
    padding-bottom: 1.067vw;
    border-bottom: 0.267vw solid #707070;
}

}