@charset "UTF-8";

/*! normalize.css v6.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Base
━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/**
 * width や height がパディングやボーダーに依存しないようにする
 */

*,
*:before,
*:after {
    box-sizing: border-box;
}

/**
 * デフォルトのマージンを削除
 */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 1em;
    margin: 0;
}

/**
 * IE6/7 で 2 つ個以上の連続した br タグは無視するバグに対応
 */

br {
    letter-spacing: 0;
}

/**
 * デフォルトのマージンを削除
 */

p,
blockquote,
dl,
dd,
figure {
    margin: 0;
}

/**
 * 行が長くなると改行させる
 * デフォルトのマージンを削除
 */

pre {
    margin: 0;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/**
 * デフォルトのマージンを削除
 */

ol,
ul {
    margin: 0;
    padding: 0;
}

/**
 * デフォルトのマージンを削除
 */

li {
    list-style: none;
}

/**
 * フォントのサイズを統合
 */

button,
input,
optgroup,
select,
textarea {
    font-size: 1em;
}

/**
 * マージンとボーダーを削除
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/**
 * Chrome で selectbox の background-color を継承しない対策
 */

select {
    background-color: inherit;
    line-height: inherit;
}

/**
 * セルの文字寄せをリセット
 */

th,
td {
    text-align: left;
}

/**
 * 文字寄せをリセット
 * 余白を削除
 */

caption {
    padding: 0;
    text-align: left;
}

html {
    font-size: 2vw; /* calc(20 / 1000 * 100vw) */
}

body {
    background: #fff;
    color: #000;
    font-family: "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-size: .7rem;
    line-height: 1.6;
    margin: 0;
    padding: 0;
}

p,
ul,
ol,
dl {
    margin-bottom: 1.25em;
}

a {
    color: #000;
    text-decoration: underline;
}

img {
    height: auto;
    vertical-align: bottom;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Module
━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

.lp-wrapper {
    min-width: 320px;
    overflow: hidden;
    width: 100%;
}

.lp-container {
    margin: 0 auto;
    max-width: 50rem;
    position: relative;
}

.lp-container > :last-child {
    margin-bottom: 0;
}

.lp-header__logo {
    margin-bottom: 0;
    padding-bottom: .75rem;
    text-align: center;
}

.lp-header__logo img {
    height: auto;
    width: 4.55rem;
}

.lp-main {
    padding-bottom: 4rem;
}

.lp-footer {
    font-size: .7rem;
    text-align: center;
}

.wysiwyg h1,
.lp-main h1 {
    font-size: 2.5rem;
    line-height: 1.4;
    margin-bottom: .8rem;
}

.wysiwyg h2,
.lp-main h2 {
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 1.4rem;
}

.wysiwyg h3,
.lp-main h3 {
    font-size: .9rem;
    font-weight: bold;
    margin-bottom: 1.2rem;
}

.wysiwyg h4,
.lp-main h4 {
    font-size: .8rem;
    font-weight: bold;
    margin-bottom: 1rem;
}

.wysiwyg h5,
.wysiwyg h6,
.lp-main h5,
.lp-main h6 {
    font-size: .7rem;
    font-weight: bold;
    margin-bottom: .8rem;
}

.wysiwyg ul > li,
.lp-main ul > li {
    padding-left: .6rem;
    position: relative;
}

.wysiwyg ul > li:before,
.lp-main ul > li:before {
    background-color: #c41230;
    border-radius: 50%;
    content: "";
    display: block;
    height: .3rem;
    left: 0;
    position: absolute;
    top: .5em;
    width: .3rem;
}

.wysiwyg ol > li,
.lp-main ol > li {
    list-style-type: decimal;
    margin-left: 1.3rem;
}

.wysiwyg hr,
.lp-main hr {
    background: none;
    border: none;
    border-top: 2px solid #000;
    margin: 3rem 0;
    padding: 0;
}

.wysiwyg pre,
.lp-main pre {
    background-color: #eee;
    border-radius: .3rem;
    margin: 1.2rem 0;
    padding: 1.2rem;
}

.wysiwyg blockquote,
.lp-main blockquote {
    border: 2px solid #eee;
    border-radius: .3rem;
    margin: 1.2rem 0;
    padding: 1.2rem;
}

.wysiwyg blockquote > :last-child,
.lp-main blockquote > :last-child {
    margin-bottom: 0;
}

.lp-title {
    background-color: #c41230;
    color: #fff;
    margin: 0 -100vw 3rem;
    padding: 2.5rem 0;
}

.lp-title__badge {
    align-items: center;
    border: 2px solid #fff;
    border-radius: 50%;
    display: flex;
    font-size: .7rem;
    font-weight: bold;
    height: 5rem;
    justify-content: center;
    left: 7.5rem;
    line-height: 1.6;
    margin-bottom: 0;
    position: absolute;
    text-align: center;
    top: -1.5rem;
    width: 5rem;
}

.lp-title__text {
    text-align: center;
}

.lp-title__text__sub {
    background-color: #000;
    border-radius: 1.6rem;
    color: #fff;
    display: inline-block;
    font-size: .8rem;
    line-height: 1;
    margin-bottom: .5rem;
    padding: .4rem 1rem;
}

.lp-title__text__main {
    display: block;
    font-size: 2.5rem;
    line-height: 1.4;
}

.lp-title__period {
    font-weight: bold;
    text-align: center;
}

.lp-title__period > dt {
    color: #000;
    font-size: .7rem;
    margin-bottom: .2rem;
}

.lp-title__period > dd {
    font-size: 1rem;
}

/*ここからセンタリング追加*/

.lp-title__period_center {
    font-weight: bold;
    text-align: center;
}

.lp-title__period_center > dt {
    color: #000;
    font-size: .7rem;
    margin-bottom: .2rem;
}

.lp-title__period_center > dd {
    font-size: 1rem;
}
/*ここまでセンタリング追加*/

/*ここからセンタリング追加*/

.lp-title__period_center_nonc {
    font-weight: bold;
    text-align: center;
}

.lp-title__period_center_nonc > dt {
    color: #000;
    font-size: .7rem;
    margin-bottom: .2rem;
}

.lp-title__period_center_nonc > dd {
    font-size: 1rem;
}
/*ここまでセンタリング追加*/

.lp-row {
    display: flex;
    margin-bottom: 3rem;
}

.lp-row--separate {
    margin-left: -.6rem;
    margin-right: -.6rem;
}

.lp-row--separate .lp-col {
    margin-left: .6rem;
    margin-right: .6rem;
}

.lp-row--separate .lp-col__inner {
    padding: 0;
}

.lp-row--single {
    display: block;
    text-align: center;
}

.lp-col {
    align-items: center;
    display: flex;
    flex: 1;
    text-align: center;
}

.lp-col > :last-child {
    margin-bottom: 0;
}

.lp-col--alignTop {
    align-items: stretch;
}

.lp-col--bgColor {
    background: #000;
    color: #fff;
}

.lp-col--image {
    align-items: stretch;
}

.lp-col--image .lp-col__inner {
    padding: 0;
}

.lp-col--image img {
    width: 100%;
}

.is-home .lp-col--image .lp-col__inner {
    display: flex;
    align-items: center;
    //max-height: 17.15rem;
    overflow: hidden;
}

.lp-col__inner {
    padding: 1.2rem;
    width: 100%;
}

.lp-col__inner > :last-child {
    margin-bottom: 0;
}

.lp-box {
    border: 2px solid #000;
    border-radius: .3rem;
    margin-bottom: 3rem;
    padding: .4rem;
}

.lp-box > :last-child {
    margin-bottom: 0;
}

.lp-section {
    margin-bottom: 3rem;
}

.lp-section__ttl {
    margin-bottom: 1.6rem !important;
    padding-top: 6px;
    text-align: center;
}

.lp-section-card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding-bottom: 24px;
    height: 100%;
}

.lp-section-card img {
    display: block;
    margin-bottom: 16px;
    width: 100%;
    height: auto;
}

.lp-section-card a {
    text-decoration: none;
}

.lp-section-card__inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    text-align: left;
}

.lp-section-card__ttl {
    margin-bottom: 12px;
    font-size: .7rem;
    line-height: 1.3;
}

.lp-section-card > *:last-child,
.lp-section-card__inner > *:last-child,
.lp-section-card__btn > *:last-child,
.lp-section-card__btn .btn,
.lp-section-card__price > *:last-child {
    margin-bottom: 0;
}

.lp-section-card__price {
    margin-bottom: 20px;
    font-size: .6rem;
}
.lp-section-card__price span,
.lp-section-card__price s,
.lp-section-card__price strong {
    display: block;
}

.lp-section-card__price strong {
    color: #c4132f;
    font-weight: normal;
}

.lp-section-card__btn {
    display: flex;
    align-items: flex-end;
    height: 100%;
}

.lp-section-card__btn > * {
    width: 100%;
}

.btn {
    align-items: center;
    background-color: #fff;
    border: 2px solid #000;
    border-radius: 1.4rem;
    color: #000;
    display: flex;
    font-size: .9rem;
    font-weight: bold;
    height: 2.8rem;
    justify-content: center;
    margin: 0 auto 1rem;
    max-width: 17rem;
    text-align: center;
    text-decoration: none;
}

.btn:hover {
    opacity: .65;
}

.btn--square {
    border-radius: 0;
}

.btn--primary {
    background-color: #c41230;
    border-color: #c41230;
    color: #fff;
}

.btn--secondary {
    background-color: #000;
    border: 2px solid #000;
    color: #fff;
}

.btn--sm {
    font-size: .7rem;
    max-width: 9rem;
    height: 2rem;
}

ul.list-present > li {
    padding: .285em 0 .285em 2.75em !important;
}

ul.list-present > li:before {
    background: url("/contents-sub/img/ic_present001.png") no-repeat 0 0 !important;
    background-size: 100% 100% !important;
    border-radius: 0 !important;
    height: 2.2em !important;
    margin-top: -1.15em !important;
    top: 50% !important;
    width: 2.2em !important;
}

ul.list-present > li + li {
    margin-top: .4rem;
}

.ic {
    display: inline-block;
    padding: .285em 0 .285em 2.75em;
    position: relative;
    text-align: left;
}

.ic:before {
    background: no-repeat 0 0;
    background-size: 100% 100%;
    content: "";
    display: block;
    height: 2.2em;
    left: 0;
    margin-top: -1.15em;
    position: absolute;
    top: 50%;
    width: 2.2em;
}

.ic--present:before {
    background-image: url("/contents-sub/img/ic_present001.png");
}

.ic--tshirt:before {
    background-image: url("/contents-sub/img/ic_tshirt001.svg");
}

.ic--jacket:before {
    background-image: url("/contents-sub/img/ic_jacket001.svg");
}

.ic--jeans:before {
    background-image: url("/contents-sub/img/ic_jeans001.svg");
}

.ic--totebag:before {
    background-image: url("/contents-sub/img/ic_totebag001.svg");
}

.ic--book:before {
    background-image: url("/contents-sub/img/ic_book001.svg");
}

.ic--coupon:before {
    background-image: url("/contents-sub/img/ic_coupon001.svg");
}

@media all and (-ms-high-contrast: none) {
    body {
        font-family: "メイリオ", Meiryo, "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
    }
}

@media screen and (min-width: 1000px) {
    html {
        font-size: 20px;
    }
}

@media screen and (max-width: 736px) {
    html {
        font-size: 3.125vw;
    }

    body {
        font-size: 1.3rem;
    }

    a:hover {
        text-decoration: none;
    }

    .lp-container {
        max-width: none;
        padding: 0 1rem;
    }

    .lp-header__logo {
        padding-bottom: .8rem;
    }

    .lp-header__logo img {
        width: 6rem;
    }

    .lp-main {
        padding-bottom: 4rem;
    }

    .lp-footer {
        font-size: 1.3rem;
    }

    .wysiwyg h1,
    .lp-main h1 {
        font-size: 2.4rem;
        margin-bottom: 2.8rem;
    }

    .wysiwyg h2,
    .lp-main h2 {
        font-size: 1.6rem;
        margin-bottom: 2rem;
    }

    .wysiwyg h3,
    .lp-main h3 {
        font-size: 1.5rem;
        margin-bottom: 1.6rem;
    }

    .wysiwyg h4,
    .lp-main h4 {
        font-size: 1.4rem;
        margin-bottom: 1.6rem;
    }

    .wysiwyg h5,
    .wysiwyg h6,
    .lp-main h5,
    .lp-main h6 {
        font-size: 1.3rem;
        margin-bottom: 1.2rem;
    }

    .wysiwyg ul > li,
    .lp-main ul > li {
        padding-left: 1.2rem;
    }

    .wysiwyg ul > li:before,
    .lp-main ul > li:before {
        height: .6rem;
        width: .6rem;
    }

    .wysiwyg ol > li,
    .lp-main ol > li {
        margin-left: 2.6rem;
    }

    .wysiwyg hr,
    .lp-main hr {
        margin: 4.8rem 0;
    }

    .lp-title {
        margin: 0 -1rem 3.6rem;
        padding: 3.6rem 0;
    }

    .lp-title__badge {
        bottom: -1.2rem;
        font-size: 1rem;
        height: 7rem;
        left: 1.2rem;
        top: auto;
        width: 7rem;
    }

    .lp-title__text__sub {
        border-radius: 3.2rem;
        font-size: 1.2rem;
        margin-bottom: 1rem;
        padding: .8rem 2rem;
    }

    .lp-title__text__main {
        font-size: 2.4rem;
    }

    .lp-title__period {
        margin-left: 8.2rem;
        text-align: left;
    }

    .lp-title__period > dt {
        font-size: 1.2rem;
        margin-bottom: .4rem;
    }

    .lp-title__period > dd {
        font-size: 1.2rem;
    }

/*ここからセンタリング追加*/

    .lp-title__period_center {
        margin-left: 8.2rem;
        text-align: center;
    }

    .lp-title__period_center > dt {
        font-size: 1.2rem;
        margin-bottom: .4rem;
    }

    .lp-title__period_center > dd {
        font-size: 1.2rem;
    }

/*ここまでセンタリング追加*/

/*ここからセンタリング追加　丸囲み無し*/

    .lp-title__period_center_nonc {
        text-align: center;
    }

    .lp-title__period_center_nonc > dt {
        font-size: 1.2rem;
        margin-bottom: .4rem;
    }

    .lp-title__period_center_nonc > dd {
        font-size: 1.2rem;
    }

/*ここまでセンタリング追加　丸囲み無し*/
    .lp-row {
        display: block;
        margin-bottom: 4rem;
    }

    .lp-row--separate {
        margin-left: 0;
        margin-right: 0;
    }

    .lp-row--separate .lp-col {
        margin-left: 0;
        margin-right: 0;
    }

    .lp-row--separate .lp-col + .lp-col {
        margin-top: 3.2rem;
    }

    .lp-row--separate .lp-col--image + .lp-col--image {
        margin-top: 1.2rem;
    }

    .lp-row--separate .lp-col__inner {
        padding: 0;
    }

    .lp-col--image .lp-col__inner {
        padding: 0;
    }

    .is-home .lp-col--image .lp-col__inner {
        max-height: 63vw;
        overflow: hidden;
    }

    .lp-col__inner {
        padding: 1.6rem 1.2rem;
    }

    .lp-box {
        border-radius: .6rem;
        flex-wrap: wrap;
        margin-bottom: 4rem;
        padding: .4rem;
    }

    .lp-section {
        margin-bottom: 4rem;
    }

    .lp-section__ttl {
        margin-bottom: 3.1rem !important;
    }

    .lp-section-card {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
        margin: 0 -1rem;
        padding-bottom: 24px;
        height: auto;
    }

    .lp-section-card.lp-section-card--type2 {
        flex-direction: initial;
        justify-content: flex-start;
        flex-wrap: wrap;
        padding-bottom: 30px;
        height: auto;
    }

    .lp-section-card.lp-section-card--type2 .lp-section-card__inner,
    .lp-section-card.lp-section-card--type2 img {
        width: 100%;
    }

    .lp-section-card.lp-section-card--type2 img {
        margin-bottom: 16px;
    }

    .lp-section-card.lp-section-card--type2 .lp-section-card__price {
        margin-bottom: 16px;
    }

    .lp-col:not(:last-child) .lp-section-card {
        padding-bottom: 24px;
    }

    .lp-section-card img {
        margin-bottom: 0;
    }

    .lp-section-card__inner,
    .lp-section-card img {
        width: 48%;
    }

    .lp-section-card__ttl {
        margin-bottom: 10px;
        font-size: 1.2rem;
    }

    .lp-section-card__price {
        margin-bottom: 20px;
        font-size: 1.05rem;
    }

    .btn {
        border-radius: 2.2rem;
        font-size: 1.4rem;
        height: 4.4rem;
        margin-bottom: 1.6rem;
        max-width: 28rem;
    }

    .btn--sm {
        font-size: 1.2rem;
        height: 3.4rem;
        margin-bottom: 1rem;
        max-width: 12rem;
    }

    .btn--square {
        border-radius: 0;
    }

    ul.list-present > li + li {
        margin-top: 1.2rem;
    }
/**
 * 1ラカム画像センター揃え
 */
    .resizeimage img {
    text-align: center;
    width:100%;
    max-width: 100%;
    height: auto;
    }

}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}