@charset "shift_jis";

#landing ol,#landing li { list-style: none!important; margin-left: 0!important;}

/* 汎用クラス */
.mt0 { margin-top: 0px !important;}
.mb0 { margin-bottom: 0px !important;}
.pt0 { padding-top: 0px !important;}
.pb0 { padding-bottom: 0px !important;}
.mt5 { margin-top: 5px !important;}
.mb5 { margin-bottom: 5px !important;}
.pt5 { padding-top: 5px !important;}
.pb5 { padding-bottom: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mb10 { margin-bottom: 10px !important;}
.pt10 { padding-top: 10px !important;}
.pb10 { padding-bottom: 10px !important;}
.mt15 { margin-top: 15px !important;}
.mb15 { margin-bottom: 15px !important;}
.pt15 { padding-top: 15px !important;}
.pb15 { padding-bottom: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mb20 { margin-bottom: 20px !important;}
.pt20 { padding-top: 20px !important;}
.pb20 { padding-bottom: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mb25 { margin-bottom: 25px !important;}
.pt25 { padding-top: 25px !important;}
.pb25 { padding-bottom: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mb30 { margin-bottom: 30px !important;}
.pt30 { padding-top: 30px !important;}
.pb30 { padding-bottom: 30px !important;}
.mt35 { margin-top: 35px !important;}
.mb35 { margin-bottom: 35px !important;}
.pt35 { padding-top: 35px !important;}
.pb35 { padding-bottom: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mb40 { margin-bottom: 40px !important;}
.pt40 { padding-top: 40px !important;}
.pb40 { padding-bottom: 40px !important;}

.marker { background-color: #ffff00;}

header , footer{
	max-width: 750px !important;
	margin: auto;
}
.item-detail-area {
    padding: 0;
}
.p_detail {
    padding: 0 10px;
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*  ---------------------------------------------- +landing  */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */

/* ▼コンテンツ用スタイル 編集可能領域ここから▼ --------------------------------------------------------------------------------------------*/
@font-face {
	font-family: 'ShipporiMincho Bold';
	src: url(../fonts/shippori-mincho-japanese-700-normal.woff2);
}
@font-face {
	font-family: 'SourceHanSansJP-Bold';
	src: url(../fonts/SourceHanSansJP-Bold.otf);
}
@font-face {
	font-family: 'SourceHanSansJP-Medium';
	src: url(../fonts/SourceHanSansJP-Medium.otf);
}
@font-face {
	font-family: 'SourceHanSansJP-Light';
	src: url(../fonts/SourceHanSansJP-Light.otf);
}
@font-face {
	font-family: 'SourceHanSansJP-Regular';
	src: url(../fonts/SourceHanSansJP-Regular.otf);
}
:root{
	--light-brown: #604545;
	--dark-brown: #A34E26;
	--light-yellow: #E9E0D7;
}
.wrapper_landing{
	font-family: 'SourceHanSansJP-Medium';
    text-align: left;
    font-size: 4.27vw;
	/* font-size: 32px;
    line-height: 160%; */
    overflow: hidden;
    background: #0F0F10;
}
.wrapper_landing p{
	margin: 1em 0;
}
.wrapper_landing img{
    max-width: 100%;
}
.wrapper_landing .flex{
	display: flex;
	justify-content: center;
	align-items: center;
    flex-direction: column;
}
.wrapper_landing .flex-row{
    flex-direction: row;
}
.wrapper_landing .justify-between{
    justify-content: space-between;
}
.wrapper_landing .layout-constrained{
    max-width: 82.4%;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}
.wrapper_landing .section{
	font-family: 'SourceHanSansJP-Regular';
}
.wrapper_landing .section-title{
    font-family: 'VDL-V7Mincho-Bold';
    text-align: center;
    font-size: 1.15em;
    margin: 0;
}
.wrapper_landing .section-detail-title{
    font-family: 'VDL-V7Mincho-Bold';
}
.wrapper_landing .psuedo-deco{
    position: relative;
}
.wrapper_landing .psuedo-deco:before,
.wrapper_landing .psuedo-deco:after{
    content: '';
    position: absolute;
    background-size: 100% 100%;
}
.wrapper_landing .landing-top .landing-top_content {
    text-align: center;
    position: relative;
}
.wrapper_landing .landing-top .landing-top_content .top_main{
    width: 100%;
    margin: 6vw 0 0;
}
.wrapper_landing .landing-top .landing-top_content .top_logo{
    position: absolute;
    top: 60vw;
    right: 2.3vw;
    width: 24vw;
}
.wrapper_landing .johnharry_intro{
    margin-top: -7vw;
    position: relative;
}
.wrapper_landing .johnharry_wrapper{
    background: white;
}
.wrapper_landing .johnharry {
    padding: 8.4vw 9vw 8vw;
    box-sizing: border-box;
    position: relative;
    text-align: center;
}
.wrapper_landing .johnharry .johnharry-media{
    text-align: center;
}
.wrapper_landing .johnharry .johnharry-media img{
	width: 100%;
}
.wrapper_landing .johnharry .johnharry-media span{
    font-size: 19px;
    position: absolute;
}
.wrapper_landing .johnharry .johnharry-title{
    font-family: 'ShipporiMincho Bold';
    font-size: 4.3vw;
    line-height: 1.3;
    color: #0f0f0f;
    margin: 0;
    margin-top: 0;
    width: 100%;
    letter-spacing: -.1em;
    text-align: left;
}
.wrapper_landing .johnharry .johnharry-title small{
    font-size: 6vw;
    margin-left: 5vw;
}
.wrapper_landing .johnharry .johnharry-media_inner{
    flex-direction: row;
    justify-content: space-between;
}
.wrapper_landing .johnharry .johnharry-media_detail p{
    font-size: 3.2vw;
    margin: 3vw 0 0;
}
.wrapper_landing .johnharry .johnharry-media_desc{
    font-size: 2.4vw;
    text-align: left;
    margin: 6vw 0 0;
}
.wrapper_landing .johnharry .johnharry-special{
    color: white;
    font-size: 4.9vw;
    margin: 0;
    font-family: 'SourceHanSansJP-Regular';
    background-image: url(../img/bg_johnharry_txt.png);
    background-size: 100% 100%;
    padding: 2.6vw 0;
}
.wrapper_landing .johnharry .johnharry-content{
    width: 100%;
    margin-top: 4vw;
}
.wrapper_landing .johnharry-content .johnharry-detail {
    color: #CF2D1F;
    font-family: 'VDL-V7Mincho-Bold';
    justify-content: space-between;
    flex-direction: row;
    margin-top: 2vw;
    padding: 0 2.5vw;
}
.wrapper_landing .johnharry-content .johnharry-detail .johnharry-sale-label {
    font-size: 3.7vw;
    line-height: 1.3;
    border-top: 1px solid #CF2D1F;
    border-bottom: 1px solid #9C3226;
    padding: 0 2vw;
    margin-top: 2.6vw;
}
.wrapper_landing .johnharry .johnharry-content .johnharry-detail .johnharry-price{
    font-size: 12.6vw;
    line-height: 1;
    letter-spacing: -.05em;
}
.wrapper_landing .johnharry .johnharry-content .johnharry-detail .johnharry-tax_included{
    font-size: 3vw;
    line-height: 1;
    text-align: center;
    margin: 0;
    margin-top: 2.6vw;
    position: relative;
}
.wrapper_landing .johnharry .johnharry-content .johnharry-detail .johnharry-tax_included span{
    font-size: 6.4vw;
}
.wrapper_landing .johnharry-tax_included span:after{
    content: '';
    position: absolute;
    top: 60%;
    right: 0;
    transform: translate(100%, -50%);
    width: 6vw;
    height: 1vw;
    background-image: url(../img/mark.svg);
    background-size: 100% 100%;
    display: none;
}
.wrapper_landing .johnharry .cp_ofr_btn{
    margin-top: 3vw;
    line-height: 2.5;
}
.wrapper_landing .johnharry .cp_ofr_btn a{
    max-width: 100%;
    display: inline-block;
    font-weight: bold;
    padding: 0;
    box-sizing: border-box;
    font-size: 4vw;
}
.wrapper_landing .johnharry .cp_ofr_btn a span{
    transform: rotate(135deg) translateY(-1vw);
    margin-right: 3vw;
}
.wrapper_landing .section-title_dec{
    position: relative;
}
.wrapper_landing .section-title_dec:before{
    content: '';
    position: absolute;
    width: 7vw;
    height: 6.4vw;
    background-image: url(../img/title_deco.png);
    background-size: 100% 100%;
    top: -10vw;
    left: 50%;
    transform: translateX(-50%);
}
.wrapper_landing .movie{
    margin-top: 10.6vw;
    text-align: center;
}
.wrapper_landing .movie-title{
    margin: 0;
}
.wrapper_landing .movie-title img {
    width: 20.8vw;
}
.wrapper_landing .moive_subtitle {
    font-size: 4.5vw;
    color: white;
    font-family: 'SourceHanSansJP-Medium';
    position: relative;
    margin: 3.3vw 0 0;
}
.wrapper_landing .moive_subtitle span{
    position: relative;
}
.wrapper_landing .moive_subtitle span:before{
    content: '';
    width: 5.4vw;
    height: 5.8vw;
    background-image: url(../img/check1.svg);
    background-size: 100% 100%;
    display: inline-block;
    margin-right: 1.3vw;
}
.wrapper_landing .movie .hacobune-univideo{
    height: 75vw;
    box-sizing: border-box;
    margin-top: 5vw;
}
.wrapper_landing .bg1{
    padding-bottom: 75px;
}
.wrapper_landing .recommend{
    text-align: center;
    background-image: url(../img/bg_recommends.png);
    background-size: 100% 100%;
    padding: 16vw 0 28vw;
    color: white;
    margin-top: -10vw;
    position: relative;
}
.wrapper_landing .recommend .recommend_text {
    text-align: left;
    margin: 6vw auto 0;
}
.wrapper_landing .recommend .recommend-title{
    font-size: 4.4vw;
    font-weight: bold;
    font-family: 'ShipporiMincho SemiBold';
    margin: 0;
}
.wrapper_landing .recommend .recommend-title span{
    position: relative;
}
.wrapper_landing .recommend .recommend-title span:before{
    content: '';
    width: 8.8vw;
    height: 0.3vw;
    background: white;
    position: absolute;
    top: 4vw;
    left: -8vw;
    transform: rotate(60deg);
}
.wrapper_landing .recommend .recommend-title span:after{
    content: '';
    width: 8.8vw;
    height: 0.3vw;
    background: white;
    position: absolute;
    top: 4vw;
    right: -7vw;
    transform: rotate(120deg);
}
.wrapper_landing .recommend_detail{
    position: relative;
    font-size: 4.6vw;
    font-family: 'ShipporiMincho SemiBold';
    margin: 0;
    padding-left: 9vw;
}
.wrapper_landing .recommend_detail+.recommend_detail{
    margin-top: 4.6vw;
}
.wrapper_landing .recommend_detail span{
    position: relative;
    z-index: 9;
}
.wrapper_landing .recommend_detail:before{
    content: '';
    width: 6.4vw;
    height: 5.2vw;
    background-image: url(../img/check2.svg);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-size: 100% 100%;
    z-index: 9;
}
.wrapper_landing .recommend_detail:after{
    position: relative;
    z-index: 9;
    text-decoration: underline;
    text-decoration-thickness: 4vw;
    text-decoration-color: rgb(0 0 0 / 37%);
    text-underline-offset: -2vw;
}
.wrapper_landing .premium_diamond{
    color: white;
    text-align: center;
    padding-top: 13vw;
}
.wrapper_landing .premium_diamond .title{
    font-size: 6.5vw;
    font-family: 'ShipporiMincho SemiBold';
    margin: 0;
}
.wrapper_landing .johnharrison_text{
    width: 61.8vw;
    margin-top: 2vw;
}
.wrapper_landing .desc{
    font-size: 4.9vw;
    font-family: 'ShipporiMincho SemiBold';
    margin: 4vw auto 0;
    position: relative;
    max-width: 70.4vw;
}
.wrapper_landing .point{
    color: white;
    background-image: url(../img/bg_point.png);
    background-size: 100% 100%;
    position: relative;
}
.wrapper_landing .point-title{
    font-size: 6.8vw;
}
.wrapper_landing .point-title .title-text{
    position: relative;
    z-index: 9;
}
.wrapper_landing .point-title .point_text{
    font-family: 'ShipporiMincho SemiBold';
    font-style: italic;
    position: relative;
}
.wrapper_landing .point-title .point_text:before{
    content: '';
    position: absolute;
    left: -3.5vw;
    bottom: 3vw;
    width: 27.8vw;
    height: 6.4vw;
    background: #BAA267;
    clip-path: polygon(4vw 0, 100% 0, calc(100% - 4vw) 100%, 0 100%);
    display: inline-block;
}
.wrapper_landing .point-title .point_text span{
    position: relative;
    transform: translate(5px, -6px);
    display: inline-block;
}
.wrapper_landing .point_inner{
    margin: 11.3vw auto 0;
}
.wrapper_landing .point_detail{
    display: flex;
    justify-content: space-between;
    font-family: 'SourceHanSansJP-Medium';
    margin: 0 0 0 auto;
    flex-direction: column;
}
.wrapper_landing .point_detail:nth-child(2){
    margin: 0 auto 0 0;
}
.wrapper_landing .point_detail+.point_detail{
    margin-top: 15.3vw;
}
.wrapper_landing .point_detail img{
    max-width: 100%;
}
.wrapper_landing .point_detail .point_num{
    font-family: 'ShipporiMincho Bold';
    margin: 0;
    position: absolute;
    top: -4.4vw;
    left: 0;
}
.wrapper_landing .point_detail .point_num img{
    width: 26vw;
}
.wrapper_landing .point_detail .point_num span{
    font-size: 71px;
    font-family: 'SourceHanSansJP-Regular';
    transform: translate(135px, -20px);
    display: inline-block;
}
.wrapper_landing .point_detail .point_media{
    position: relative;
}
.wrapper_landing .point_detail .point_text{
    font-family: 'SourceHanSansJP-Medium';
}
.wrapper_landing .point_detail .point_detail_title{
    margin: 3vw 0 0;
    font-size: 5vw;
    font-family: 'ShipporiMincho SemiBold';
}
.wrapper_landing .point_detail .point_detail_desc{
    margin: 2.6vw 0 0;
    line-height: 1.5;
    font-size: 3.5vw;
    letter-spacing: -.05em;
}
.wrapper_landing .point_detail .point_detail_desc .underline{
    position: relative;
}
.wrapper_landing .point_detail .point_detail_desc .underline:before{
    content: '';
    position: absolute;
    background: linear-gradient(90deg,rgba(77, 76, 68, 1) 0%, rgba(94, 83, 72, 1) 11%, rgba(53, 45, 29, 1) 100%);
    width: 100%;
    height: 10px;
    bottom: 0;
}
.wrapper_landing .point_detail .point_detail_desc .underline span{
    position: relative;
}
.wrapper_landing .point_detail:first-child .point_media:after{
    background-image: url(../img/point1_1_sub.png);
    width: 265px;
    height: 188px;
    bottom: -140px;
    right: -77px;
    box-shadow: 10px 19px #7E6958;
    border-radius: 15px;
    transform: rotate(11deg)
}
.wrapper_landing .variation{
    margin-top: 19vw;
    margin-bottom: 8vw;
    background-image: url(../img/bg_variation.svg);
    background-size: 100% 100%;
    padding: 9.7vw 0;
}
.wrapper_landing .variation .title{
    font-family: 'ShipporiMincho SemiBold';
    font-size: 4.6vw;
    color: #0f0f0f;
    margin: 0;
    text-align: center;
}
.wrapper_landing .variation_inner{
    margin: 4.6vw auto 0;
    padding: 0 7.3vw;
    background-size: 100% 100%;
    box-sizing: border-box;
    justify-content: space-between;
}
.wrapper_landing .variation_inner .detail{
    width: 100%;
    display: flex;
    align-items: center;
}
.wrapper_landing .variation_inner .detail+.detail{
    margin-top: 4.8vw;
}
.wrapper_landing .variation_inner .detail:nth-child(2n){
    flex-direction: row-reverse;
}
.wrapper_landing .variation_inner .detail img{
    width: 29.3vw;
}
.wrapper_landing .variation_inner .detail p{
    font-size: 3.6vw;
    font-family: 'ShipporiMincho SemiBold';
    text-align: center;
    width: 22.2vw;
    clip-path: polygon(3vw 0, 100% 0, calc(100% - 3vw) 100%, 0 100%);
    margin: 0 0 0 4vw;
}
.wrapper_landing .variation_inner .detail:first-child p{
    background: black;
    color: white;
    border: 1px solid black;
}
.wrapper_landing .variation_inner .detail:nth-child(2) p{
    background: url(../img/bg_white_variation.svg);
    background-size: 100% 100%;
    color: #0f0f0f;
    margin: 0 4vw 0 0;
}
.wrapper_landing .variation_inner .detail:last-child p{
    background: #BAA267;
    color: white;
    border: 1px solid #BAA267;
}
.wrapper_landing .bg2{
    background-image: url(../img/bg2.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    margin-top: 18vw;
}
.wrapper_landing .bg2 .johnharry_intro{
    margin-top: 0;
}
.wrapper_landing .product-info{
    position: relative;
    z-index: 9;
    padding: 11vw 0 22vw;
}
.wrapper_landing .product-info .product-info_inner{
    width: 81.6vw;
}
.wrapper_landing .product-info .product-info-title{
    font-family: 'SourceHanSansJP-Bold';
    margin: 0 0 5vw;
    padding: 1.9vw 3.4vw;
    line-height: 1.6;
    text-align: center;
    background: linear-gradient(90deg, rgba(186, 162, 103, 1) 0%, rgba(186, 162, 103, 1) 40%, rgba(0, 0, 0, 1) 100%);
    font-size: 3.6vw;
    color: white;
}
.wrapper_landing .product-info .tbl-product-info{
	width: 100%;
    position: relative;
    overflow: hidden;
    display: block;
}
.wrapper_landing .product-info .tbl-product-info{
    max-height: 50vw;
}
.wrapper_landing .product-info .tbl-product-info:before{
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 25vw;
    background: linear-gradient(0deg, rgb(0 0 0) 0%, rgba(253, 240, 200, 0) 100%);
}
.wrapper_landing .product-info .tbl-product-info.active::before{
    display: none;
}
.wrapper_landing .product-info .tbl-product-info tr{
    display: block;
}
.wrapper_landing .product-info .tbl-product-info tr td{
    display: block;
    padding: 1.9vw 3.4vw;
    font-size: 3.6vw;
}
.wrapper_landing .product-info .tbl-product-info tr td:first-child{
    color: white;
    font-weight: bold;
    padding: 1.9vw 3.4vw;
    background: linear-gradient(90deg, rgba(186, 162, 103, 1) 0%, rgba(186, 162, 103, 1) 40%, rgba(0, 0, 0, 1) 100%);
    font-size: 3.8vw;
}
.wrapper_landing .product-info .tbl-product-info tr td:last-child{
	background: white;
    color: var(--light-brown);
    border-top: none;
}
.wrapper_landing .product-info .product_readmore{
    color: white;
    text-align: center;
    font-weight: bold;
    background: #F6A51B;
    padding: 1.7vw 0;
    margin: 6vw auto 0;
    cursor: pointer;
    letter-spacing: .1em;
    display: block;
    width: 60vw;
    z-index: 9;
    position: relative;
}
.wrapper_landing .product-info .product_readmore.open{
    margin-top: 5vw;
}
.wrapper_landing .product-info .product_readmore .c-btn-arw:before{
    display: inline-block;
    width: 2.5vw;
    height: 2.5vw;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    content: '';
    margin-right: 2vw;
    margin-bottom: 0.5vw;
}
.wrapper_landing .product-info .product_readmore.open .c-btn-arw:before{
    -webkit-transform: translateY(40%) rotate(315deg);
    transform: translateY(40%) rotate(315deg);
}
.wrapper_landing .product-info .product_table_caption{
    font-size: 3.7vw;
    font-weight: bold;
    color: var(--light-brown);
    margin-top: 10.6vw;
}
/* --- オファー内の購入ボタン調整 --- */
.cp_ofr_btn a{
    width: 100%;
    padding: 10%;
    font-size: 1.2em;
}


/* ▲コンテンツ用スタイル 編集可能領域ここまで▲ --------------------------------------------------------------------------------------------*
