@charset "utf-8";

.subpage a{
    color: inherit;
}
.subpage a.underLine{
    text-decoration: underline;
    text-underline-position: under;
}

.inner-1000{
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.other_page .ec-layoutRole__header + .ec-layoutRole__contents{
    margin: 0 auto;
    max-width: 1360px;
}
.subpage .mvarea {
    margin: 0 calc(50% - 50vw) 50px;
    padding: 0 calc(50vw - 50%);
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    aspect-ratio: 640 / 199;
    width: 100vw;
    color: var(--color-white);
    letter-spacing: 0.05em;
    position: relative;
}
.subpage .mvarea::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(0,0,0,0.5);
}
.subpage .mvarea h1{
    margin: 0;
    z-index: 1;
    letter-spacing: 0.07em;
    font-family: var(--fonts-title);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    line-break: auto;
}
.subpage .mvarea span{
    z-index: 1;
    font-size: 16px;
}

.subpage h2,
.subpage h3,
.subpage h4 {
    font-family: var(--fonts-main);
    letter-spacing: 0.05em;
    font-weight: 600;
    font-size: 20px;
}
h1.subpage__title,
h2.subpage__title{
    position: relative;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
    color: var(--color-mainColor);
    font-family: var(--fonts-title);
    font-size: clamp(20px, 4.5vw, 30px);
}
h1.subpage__title span,
h2.subpage__title span{
    color: var(--color-mainFonts);
    font-size: 18px;
    font-weight: 600;
}

h1.subpage__title.no-image{
    font-weight: 600;
    display: flex;
    flex-direction: column;
    align-items: center;
    letter-spacing: 0.05em;
    margin: 50px auto;
}
h1.subpage__textTitle{
    display: flex;
    flex-direction: column;
    align-items: center;
    letter-spacing: 0.05em;
    margin: 50px auto;
    font-size: 26px;
}

.subpage section{
    margin-bottom: 70px;
}
.redText{
    color: var(--color-mainColor);
    font-weight: 600;
}
.center, .center *{
    text-align: center;
}
.right, .right *{
    text-align: right;
}
.bold{
    font-weight:bolder ;
}
.big{
    font-size: 1.2em;
}

@media screen and (max-width:767px){
    .subpage .mvarea {
        height: 100vw;
    }
    .spOnly{
        display: inherit;
    }
    .pcOnly{
        display: none;
    }
}

/* 特定商取引法に基づく表記 */
#tradelaw .tradelaw{
    margin: 70px 0;
}
#tradelaw .tradelaw div{
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--color-border);
    padding-bottom: 30px;
    margin-bottom: 30px;
}
#tradelaw .tradelaw dt{
    width: 25%;
}
#tradelaw .tradelaw dd{
    width: calc(75% - 50px);
    margin: 0;
}

@media screen and (max-width:767px){
    #tradelaw .tradelaw div{
        flex-direction: column;
    }
    #tradelaw .tradelaw dt,
    #tradelaw .tradelaw dd{
        width: 100%;
    }
}
/* プライバシーポリシー */
.policy h2,
.policy h3
{
    text-align: left;
}
.policy h3{
    font-size: 18px;
    margin-bottom: 0;
}
.policy p{
    margin: 0 0 20px;
}
.policy p:first-child{
    margin-bottom: 70px;
}
.policy ul{
    margin: 20px 0;
}
.policy li::before{
    display: inline-block;
    content: "・";
    color: #666;
}
#shipping-policy section,
#refund-policy section{
    border-bottom: 1px solid var(--color-border);
    padding-bottom: 70px;
}

/* 会社概要 */

#company tr{
    margin-bottom: 20px;
    display: flex;
    border-bottom: 1px solid var(--color-border);
    padding-bottom: 20px;
}
#company th{
    width: 25%;
}
#company td{
    width: 75%;
}
@media screen and (max-width:767px){
    #company tr{
        flex-direction: column;
    }
    #company th,
    #company td{
        width: 100%;
    }
}