@charset "utf-8";

/*==================================================
    全体共通設定
===================================*/

body {
    font-size: 14px;
    font-family: "Shippori Mincho", serif !important;
    font-weight: 500;
    color: #1E1E1E !important;
    overflow-x: hidden;
}

/* 英字フォント */
.font-en {
    font-family: "Jost", serif;
}

/* 手書き英字フォント */
.tegaki-en {
    font-family: "adobe-handwriting-ernie", sans-serif;
}

/* 画像 */
img {
    width: 100%;
    vertical-align: bottom;
}

/* コンテンツ幅の指定 */
.inner {
    padding: 60px 4%;
    max-width: 1200px;
    margin: 0 auto;
}

/* スマホの時のみ表示 */
.sp {
    display: block;
}

.pc {
    display: none;
}

/* オンラインショップのボタン */
.online-btn a {
    position: relative;
    max-width: 170px;
    padding: 17px 30px !important;
    color: #fff !important;
    background-color: #1E1E1E;
    letter-spacing: .2em !important;
    font-size: .85em;
    font-weight: 400 !important;
    border-top-left-radius: 15px;
    transition: all .4s;
    border: .6px solid #1E1E1E;
}

.online-btn a:hover {
    color: #1E1E1E !important;
    background-color: #fff;
    border: .6px solid #1E1E1E;
}

.online-btn a::before {
    position: absolute;
    bottom: -7px;
    left: 10px;
    content: "";
    width: 151px;
    height: .6px;
    background-color: #1E1E1E;
}

.online-btn a::after {
    position: absolute;
    top: 10px;
    right: -8px;
    content: "";
    width: .6px;
    height: 44px;
    background-color: #1E1E1E;
}

/* スクロールダウン */
.scroll-bar {
    display: none;
}

@media(min-width: 600px) {
    .scroll-bar {
        display: block;
    }
    /*スクロールダウン全体の場所*/
    .scrolldown1{
        /*描画位置※位置は適宜調整してください*/
        position:absolute;
        left:90%;
        bottom:0;
        height:100px;
    }

    /*Scrollテキストの描写*/
    .scrolldown1 span{
        /*描画位置*/
        position: absolute;
        left:-5px;
        top: -52px;
        /*テキストの形状*/
        color: #1e1e1e;
        font-size: 0.7rem;
        letter-spacing: 0.1em;
        -ms-writing-mode: tb-rl;
        -webkit-writing-mode: vertical-rl;
        writing-mode: vertical-rl;
    }

    /* 線の描写 */
    .scrolldown1::after{
        content: "";
        /*描画位置*/
        position: absolute;
        top: 0;
        /*線の形状*/
        width: 2px;
        height: 0px;
        background: #1e1e1e;
        /*線の動き1.4秒かけて動く。永遠にループ*/
        animation: pathmove 2s ease-in-out infinite;
        opacity:0;
    }

    /*高さ・位置・透過が変化して線が上から下に動く*/
    @keyframes pathmove{
        0%{
            height:0;
            top:0;
            opacity: 0;
        }
        30%{
            height:50px;
            opacity: 1;
        }
        100%{
            height:0;
            top:100px;
            opacity: 0;
        }
    }
}


/* ----- コンテンツタイトル ----- */

.content-title {
    margin-bottom: 60px;
}

.content-title h2 {
    margin-bottom: 10px;
    font-size: 2em;
    font-weight: 400;
    letter-spacing: .15em;
    text-align: center;
}

.content-title p {
    text-align: center;
    font-size: .85em;
}

/* ----- moreボタン ----- */

.more-btn {
    text-align: center;
}

.more-btn a {
    position: relative;
    display: inline-block;
    padding: 15px 35px;
    font-weight: 400;
    letter-spacing: .1em;
    text-align: center;
    border: .6px solid #1E1E1E;
    border-top-left-radius: 15px;
    transition: all .4s;
	width: 170px;
}

.more-btn a:hover {
    background-color: #1E1E1E;
    color: #fff;
}

.more-btn a::before {
    position: absolute;
    bottom: -7px;
    right: -7px;
    content: "";
    width: 160px;
    height: .6px;
    background-color: #1E1E1E;
}

.more-btn a::after {
    position: absolute;
    bottom: -7px;
    right: -7px;
    content: "";
    height: 40px;
    width: .6px;
    background-color: #1E1E1E;
}

/* ----- ページヘッダー ----- */
.page-header {
    margin-top: 70px;
    position: relative;
}

.header-img {
    position: relative;
    width: 100%;
}

.header-img::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    background-color: rgba(0, 0, 0, .3);
    width: 100%;
    height: 100%;
}

.header-img img {
    height: 40vh;
    object-fit: cover;
    object-position: center;
}

.title-block {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
}

.title-block h1 {
    margin-bottom: 10px;
    font-size: 2.5em;
    color: #fff;
    letter-spacing: .2em;
    font-weight: 400;
	line-height: 1.5;
}

.title-block p {
    color: #fff;
    text-align: center;
}

@media(min-width: 600px) {
    .header-img {
        width: 85%;
    }

}

@media(min-width:1025px) {
    .page-header {
        margin-top: 100px;
    }
}

/* .ja-title */
.ja-title {
    margin-bottom: 60px;
    text-align: center;
}

.ja-title h2 {
    margin-bottom: 10px;
    font-size: 1.5em;
    letter-spacing: .1em;
    font-weight: 500;
}

.ja-title p {
    font-size: .85em;
}


/*==================================================
    タブレットCSS
===================================*/

@media(min-width:600px) {
    body {
        font-size: 15px;
    }
}

/*==================================================
    デスクトップCSS
===================================*/

@media(min-width:1025px) {
    body {
        font-size: 16px;
    }

    .inner {
        padding: 120px 0;
    }

    /* パソコンの時は非表示 */
    .sp {
        display: none;
    }

    .pc {
        display: block;
    }
}

/* プライバシー */

#privacy {
    max-width: 1200px;
    margin: 0 auto;
    padding: 120px 4%;
}

.wrapper {
    margin-bottom: 90px;
}

.wrapper h2{
    margin-bottom: 15px;
    font-size: 1.5em;
}

.wrapper p{
    line-height: 1.7;
}