@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,600;1,600&family=Noto+Sans+JP:wght@100..900&display=swap');

/* ==============================================
contents
============================================== */
#bodypillowLp .module_style a{
font-family: "Yu Gothic", "游ゴシック",　sans-serif;
}
#bodypillowLp .module_style .is__dkm_color{
background:#ba9a6a;
color: #fff;
font-family: "Yu Gothic", "游ゴシック",sans-serif;
font-size: 1.8rem;
text-decoration:none;
}
#bodypillowLp .dammy_module{
padding: 0 5%;
}
#bodypillowLp .banner_box{
padding: 0 5%;
}

/* 展示モジュール上のタイトル_レイアウト調整 */
.dkm__ttl_wrp {
  padding-left: 2em;
}
.js-inc-target_10per {
    display: none;
}
.js-inc-target_700yen {
    display: none;
}
.js-inc-target_net-present {
    display: none;
}
.js-active_10per {
    display: block !important;
}
.js-active_700yen {
    display: block !important;
}
.js-active_net-present {
    display: block !important;
}

/* common text */
#bodypillowLp{
overflow: hidden;
background:#f9f4e4;
margin:0px;
padding:0px;
width:100%;
}
#bodypillowLp .module_ttl{
font-size: 1.8rem;
line-height: 3.2rem;
font-weight:600;
padding:0 0 0 5%
}
#bodypillowLp .note{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
padding:0 5% 20px 5%;
}
#bodypillowLp .inc__mv .dkm__offer{
font-size:1.795vw;
line-height: inherit;
padding:0 3% 20px 3%;
}
@media screen and (min-width:769px){
#bodypillowLp .inc__mv .dkm__offer{
font-size:1.0rem;
line-height:1.6rem;
padding:0 3% 20px 3%;
}
}
/* outline */
#bodypillowLp #outline{
background: #f9f4e4;
position: relative;
margin:40px 0 20px 0;
}
#bodypillowLp #outline h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
margin: 0 auto;
text-align: center;
position: absolute;
top:-20px;
left: 0;
right: 0;
}
#bodypillowLp #outline .outline_cont{
background:#fff;
padding:60px 5% 20px 5%;
border-radius:20px;
margin:0 3%;
}
#bodypillowLp #outline .outline_cont .button_outline{
background: linear-gradient(rgba(255,255,255,0) 0, #fff 80%);
width: 90%;
bottom:0;
left: 0;
right: 0;
margin: 0 auto;
padding:20px 0 20px 0;
position: absolute;
}
#bodypillowLp #outline .outline_cont .button_outline p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
margin: 0 auto;
background:#fff;
width: 60%;
padding: 5px 10px 5px 10px;
border-radius:20px;
text-align: center;
filter: drop-shadow(0 3px 10px #e2e2e2);
color:#595555;
}
#bodypillowLp #outline .button_outline.open{
display: none;
}


#bodypillowLp #outline ul p{
font-size:1.4rem;
line-height:2.8rem;
font-weight:600;
font-family: "Montserrat", serif;
color: #dbd3ba;
text-align: center;
position: relative;
}
#bodypillowLp #outline ul p::before{
content: '';
width:40%;
height: 2px;
background: #dbd3ba;
position: absolute;
top:14px;
left: 0;
}
#bodypillowLp #outline ul p::after{
content: '';
width:40%;
height: 2px;
background: #dbd3ba;
position: absolute;
top:14px;
right: 0;
}
#bodypillowLp #outline ul li{
margin:5px 0 5px 0;
padding:0 0 0 0;
}

#bodypillowLp #outline ul li a{
font-size:1.6rem;
line-height:2.8rem;
display:block;
text-decoration:none;
position: relative;
}
#bodypillowLp #outline ul li a::after{
content: '';
background:url("../../../images/shop2/ft_dakimakura/tms_dmlp_ol_arw.png") no-repeat;
background-size: 100%;
width:23px;
height:23px;
position:absolute;
top:0px;
right:0px;
}
#bodypillowLp #outline ul li .point{
font-family: "Montserrat", serif;
font-weight: 600;
background: #595555;
padding:3px 10px;
font-size:1.4rem;
border-radius:2.0rem;
color: #FFF;
margin: 0 10px 0 0px;
}

/* MonitorReviews01 */
#bodypillowLp .MonitorReviews h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
margin: 0 auto;
text-align: center;   
}
#bodypillowLp .MonitorReviews p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
margin: 0 5%;
padding:0 0 20px 0;
}
@media screen and (min-width:769px){
#bodypillowLp .MonitorReviews{
max-width: 600px;
margin: 0 auto;
}
}
#bodypillowLp .MonitorReviews .number{
width: 20%;
text-align: center;
padding: 40px 0 20px 0;
margin:0 auto;
}
#bodypillowLp .badge{
color: #ba9a6a;
text-align: center;
padding:0 0 20px 0; 
}
#bodypillowLp .MonitorReviews .question{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:600;
background: #fff;
display: block;
padding:8px 20px 8px 12%;
border-radius:20px;
margin:10px 5% 10px 5%;
position: relative;
}
#bodypillowLp .MonitorReviews .question::before{
content: '';
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_mr_que.png") no-repeat;
background-size: contain;
width:28px;
height:26px;
position:absolute;
top:8px;
left:3%;
}
#bodypillowLp .MonitorReviews figure{
background: #fff;
padding:10px;
border-radius:20px;
margin:0 5% 20px 5%;
}
#bodypillowLp .MonitorReviews figure figcaption{
font-size:1.0rem;
line-height:16px;
font-weight:400;
}
/* MonitorReviews02 */

#bodypillowLp .MonitorReviews .reviews_voice{
display: flex;
align-items:flex-end;
margin:0 0 10px 0;
}

#bodypillowLp .MonitorReviews .reviews_voice .voice_image{
width: 25%;
padding:0 0 10px 0;
vertical-align: bottom;
}
#bodypillowLp .MonitorReviews .reviews_voice .reviews_voice{
width: 75%;
background: #fff;
padding:20px 30px;
border-radius:40px 40px 40px 5px;
margin:0 5px;
}
#bodypillowLp .MonitorReviews .reviews_voice .reviews_voice:nth-last-of-type(2){
border-radius: 40px 40px 5px 40px;
}
#bodypillowLp .MonitorReviews .reviews_voice .reviews_voice p{
padding: 0;
}
#bodypillowLp .MonitorReviews .reviews_voice .reviews_voice span{
font-size:1.2rem;
line-height:2.0rem;
font-weight:400;
color: #ba9a6a;
}
/* point */
@media screen and (min-width:769px){
#bodypillowLp #point #point01{
max-width: 600px;
margin: 0 auto;
}
}
/*Point01*/
#bodypillowLp #point h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
margin: 0 auto;
text-align: center;
}
#bodypillowLp #point .number{
width: 20%;
text-align: center;
padding: 40px 0 20px 0;
margin: 0 auto;
}
#bodypillowLp #point .point_ttl{
background: #fff;
padding:3px 0;
margin: 4px 3%;
position: relative;
}
#bodypillowLp #point .line{
font-size:1.8rem!important;
line-height:2.4rem!important;
font-weight:600!important;
padding:8px 0 8px 0;
display: block;
position: relative;
clear: both;
}

@media screen and (min-width: 375px) {
#bodypillowLp #point .line{
font-size:1.6rem!important;
line-height:2.4rem!important;
font-weight:600!important;
padding:8px 0 8px 0;
display: block;
position: relative;
clear: both;
}
}
#bodypillowLp #point .line img{
width:60px;
float: left;
margin:0 10px 0 0;
}
#bodypillowLp #point .line span{
font-size: 1.4rem!important;
line-height: 2.4rem;
font-weight:600;
}
#bodypillowLp #point .point_ttl::before{
content: '';
width: 100%;
height:2px;
background: #ba9a6a;
position: absolute;
top:-2px;
left: 0;
right: 0;
}
#bodypillowLp #point .point_ttl .line::before{
content: '';
width: 100%;
height:1px;
background: #ba9a6a;
position: absolute;
top:0px;
left: 0;
right: 0;
}
#bodypillowLp #point .point_ttl::after{
content: '';
width: 100%;
height:2px;
background: #ba9a6a;
position: absolute;
bottom:-2px;
left: 0;
right: 0;
}
#bodypillowLp #point .point_ttl .line::after{
content: '';
width: 100%;
height:1px;
background: #ba9a6a;
position: absolute;
bottom:0;
left: 0;
right: 0;
}

#bodypillowLp #point #point01 .type_cont{
background: #fff;
margin:20px 2% 0 2%;
padding:20px 1% 10px 1%;
border-radius:5%;
}
#bodypillowLp #point #point01 .type_cont p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
}

#bodypillowLp #point #point01 .long_cont{
background:url("../../../images/shop2/ft_dakimakura/tms_dmlp_po1_lgimg.png")no-repeat;
background-size:47%;
background-position: right 80%;
padding:0px 10px 0 10px;
margin:0 0 0 0;
position: relative;
}
#bodypillowLp #point #point01 .long_cont .long_badge{
width:23%;
position: absolute;
top:-23px;
right: 0;
}
#bodypillowLp #point #point01 .short_cont{
background:url("../../../images/shop2/ft_dakimakura/tms_dmlp_po1_shimg.png")no-repeat;
background-size:47%;
background-position: right 80%;
padding:0px 10px 0 10px;
margin:0 0 0 0;
position: relative;
}

#bodypillowLp #point #point01 .short_cont .short_badge{
width:23%;
position: absolute;
top:-23px;
right: 0;
}
#bodypillowLp #point #point01 h4{
font-size:2.4rem;
line-height:3.6rem;
font-weight:600;
padding:0 0 10px 10px;
}
#bodypillowLp #point #point01 .ttl_bold{
font-weight: 600!important;
padding:0 0 0 10px;
}
#bodypillowLp #point #point01 h4 span{
font-size:2.4rem;
line-height:3.6rem;
font-weight:600;
color:#ba9a6a;
}
#bodypillowLp #point #point01 .long_cont ul,#bodypillowLp #point #point01 .short_cont ul{
width: 48%;
margin:0 0;
}
#bodypillowLp #point #point01 .long_cont ul li,#bodypillowLp #point #point01 .short_cont ul li{
padding:0px 0;
}
#bodypillowLp #point #point01 .long_cont ul li img,#bodypillowLp #point #point01 .short_cont ul li img{
border-radius: 40px 40px 0 40px;
}
#bodypillowLp #point #point01 .long_cont ul li p,#bodypillowLp #point #point01 .short_cont ul li p{
padding:8px 0 10px 20px;
    
}
@media screen and (max-width:375px) {
#bodypillowLp #point #point01 .long_cont ul li p,#bodypillowLp #point #point01 .short_cont ul li p{
font-size: 1.2rem;
line-height:1.8rem;
 }
}
#bodypillowLp #point #point01 .recommend_cont{
background:#ffe9e9;
margin:10px 10px 0 10px;
padding:20px 0 0 0;
border-radius:20px;
position: relative;
}
#bodypillowLp #point #point01 .recommend_cont.short{
background:#e8f6ef;
margin:10px 10px 0 10px;
padding:20px 0 0 0;
border-radius:20px;
position: relative;
}

#bodypillowLp #point #point01 .recommend_cont h4{
font-size:2.0rem;
line-height: 3.6rem;
font-weight:600;
padding:0 0 0 0;
top:-15px;
left:40px;
position:absolute;
}
#bodypillowLp #point #point01 .recommend_cont h4::before{
content: '';
width:3px;
height:30px;
background: #ba9a6a;
position: absolute;
top:3px;
left:-20px;
transform: rotate(-20deg);
}
#bodypillowLp #point #point01 .recommend_cont h4::after{
content: '';
width:3px;
height:30px;
background: #ba9a6a;
position: absolute;
top:3px;
right:-20px;
transform: rotate(20deg);
}
#bodypillowLp #point #point01 .recommend_cont ul{
padding:10px 20px 0 10px; 
}
#bodypillowLp #point #point01 .recommend_cont ul li{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:600;
padding:0 0 10px 10%;
position:relative;
}
#bodypillowLp #point #point01 .recommend_cont ul li::before{
content:'';
width:20px;
height:20px;
border-radius:5px;
background:#fff;
position:absolute;
top:0px;
left:2%;
}
#bodypillowLp #point #point01 .recommend_cont ul li::after{
content:'';
width:15px;
height:15px;
background: #ba9a6a;
clip-path: polygon(80% 0, 100% 0, 100% 100%, 50% 100%, 50% 80%, 80% 80%);
transform: rotate(45deg);
position:absolute;
top:0px;
left:2%;
}
#bodypillowLp #point .button_long{
background:#ffbbbb;
color:#5b5557;
padding:20px 0 20px 0;
text-decoration: none;
text-align: center;
display: block;
margin:0 auto;
border-radius: 30px;
}
#bodypillowLp #point .button_short{
background:#c0e5e2;
color:#5b5557;
padding:20px 0 20px 0;
text-decoration: none;
text-align: center;
display: block;
margin:0 auto;
border-radius: 30px;
}

/*Point02*/

#bodypillowLp #point #point02 h4, .type_ttl{
background: #ba9a6a;
color: #fff;
padding:10px auto;
font-size:16px;
line-height: 36px;
font-weight:600;
text-align: center;
border-radius:20px;
margin:20px 5% 10px 5%;
}
#bodypillowLp #point #point02 p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
}
#bodypillowLp #point #point02 h3 {
font-size:1.8rem;
line-height: 2.4rem;
font-weight:600!important;
}

#bodypillowLp #point #point02 .way_cont{
display:flex;
flex-flow: wrap;
justify-content: center;
}

#bodypillowLp #point #point02 .way_cont .way{
width:46%;
padding:0 0 20px 0;
margin:0 1%;
position: relative;
}
#bodypillowLp #point #point02 .way_cont .way img{
 border-radius:5%;   
}
#bodypillowLp #point #point02 .way_cont .slide_photo{
display:block;
position: relative;
border-radius:5%;
height:46vw;
}
#bodypillowLp #point #point02 .way_cont .slide_photo img{
width:100%;
height:inherit;
opacity:0;
position: absolute;
animation: slideAnime 8s ease infinite;
}
#bodypillowLp #point #point02 .way_cont .slide_photo img:nth-of-type(1) { animation-delay: 0s }
#bodypillowLp #point #point02 .way_cont .slide_photo img:nth-of-type(2) { animation-delay: 4s }


#bodypillowLp #point #point02 .way_cont .way p{
padding:10px 0 0 0;
}
#bodypillowLp #point #point02 .way_cont .way .point_icon{
background: #dbd3bb;
color: #5b5557;
font-family: "Montserrat", serif;
font-size:1.3rem;
line-height: 2.4rem;
font-weight:600;
display: inline-block;
padding:3px 12px;
border-radius:8px 8px 8px 0px;
position: absolute;
top:0;
right:0;
z-index:10;
}
#bodypillowLp #point #point02 .way__recomend_cont_top{
padding: 0;
margin: 0;
}
#bodypillowLp #point #point02 .way_recommend{
background:#fff;
padding: 0;
margin: 0;
}
#bodypillowLp #point #point02 .way_recommend h4{
background:none;
font-size:1.6rem;
line-height:3.2rem;
font-weight:600;
color:#595555;
padding: 0;
margin:0 auto;
}
#bodypillowLp #point #point02 .way_recommend h4 span{
background:none;
font-size:1.6rem;
line-height: 2.4rem;
font-weight:600;
color:#f89797;
}
#bodypillowLp #point #point02 .way_recommend ul{
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_po2_rc_long_img.png")no-repeat;
background-size:153px 200px;
background-position:10% center;
padding:10px 0;
min-height: 200px;
}
#bodypillowLp #point #point02 .way_recommend ul li{
padding:0 10px 0 200px;
margin:0 0 10px 0;
font-size: 1.4rem;
line-height:24px;
font-weight:400;
}
#bodypillowLp #point #point02 .way_recommend ul li span{
background: #f8eebc;
}
#bodypillowLp #point #point02 .way_recommend .note{
font-size:1.0rem;
line-height:20px;
margin:10px 0 0 0;
}
#bodypillowLp #point #point02 .hospital_cont{
background: #fbcfcf;
margin:20px 5% 0 5%;
padding:20px 0 0 0;
border-radius: 30px;
}
#bodypillowLp #point #point02 .hospital_cont .hospital_teather{
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_po2_rc_tcbg.png")no-repeat bottom;
background-size: 100%;
vertical-align: bottom;
}
#bodypillowLp #point #point02 .hospital_cont .hospital_teather p{
font-size: 1.4rem;
line-height:24px;
font-weight:600;
padding:40px 0 18px 42%;
margin: 0;
position: relative;
}
@media screen and (min-width: 375px) {
#bodypillowLp #point #point02 .hospital_cont h4{
font-size:1.5rem;
line-height:2.4rem;
font-weight:600;
margin: 0;
}
}
#bodypillowLp #point #point02 .hospital_cont .hospital_teather p span{
font-size:1.2rem;
line-height:2.4rem;
font-weight:400;
}
#bodypillowLp #point #point02 .hospital_cont .hospital_teather p::before{
content:'';
width:80px;
height:80px;
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_po2_tc_img.png");
background-size: contain;
position: absolute;
top:0;
left:60px;
}
@media screen and (min-width: 375px) {
#bodypillowLp #point #point02 .hospital_cont .hospital_teather p::before{
content:'';
width:80px;
height:80px;
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_po2_tc_img.png");
background-size: contain;
position: absolute;
top:10px;
left:40px;
}
}

#bodypillowLp #point #point02 .teather_coment{
font-size: 1.4rem;
line-height:2.4rem;
font-weight:400;
padding: 0 20px;
background:#fff;
}
@media screen and (min-width:769px){
#bodypillowLp #point #point02 h3{
max-width: 600px;
margin: 0 auto;
}
#bodypillowLp #point #point02 h4, .type_ttl{
max-width: 600px;
text-align: center;
margin:20px auto 10px auto;
}
#bodypillowLp #point #point02 .way_cont{
display:flex;
flex-flow: wrap;
justify-content: space-around;
max-width: 600px;
margin: 0 auto;
}
#bodypillowLp #point #point02 .way_cont .slide_photo{
display:block;
position: relative;
border-radius:5%;
height:276px;
}
#bodypillowLp #point #point02 .way_recommend ul{    
max-width: 600px;
margin: 0 auto;
}
#bodypillowLp #point #point02 .way_recommend .note{
max-width: 600px;
margin:10px auto 0 auto;
}
#bodypillowLp #point #point02 .hospital_cont{
max-width:460px;
margin:20px auto 0 auto;
}
}
/*point03*/
#bodypillowLp #point #point03 h4{
padding:10px 0 0 0;
font-weight: 600;
text-align: center;
}
#bodypillowLp #point #point03 .secret_cont{
display:flex;
flex-flow: wrap;
justify-content:center;
}
#bodypillowLp #point #point03 .secret_cont div{
width:45%;
margin: 0 1%;
}

#bodypillowLp #point #point03 p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
padding:10px 0;
}
#bodypillowLp #point #point03 p span{
font-size:1.0rem;
line-height:1.2rem;
}
#bodypillowLp #point #point03 .secret03{
margin: 0 5%;
}

#bodypillowLp #point #point03 .secret03 .note{
font-size:1.2rem;
line-height:2.0rem;
margin: 0 auto;
padding:20px 5% 20px 5%;
background: #f3e9d5;
border-radius:10px;
position: relative;
}
#bodypillowLp #point #point03 .secret03 .note .button_morebutton{
background: linear-gradient(rgba(255,255,255,0) 0, #f3e9d5 50%);
width: 100%;
bottom:0;
left: 0;
right: 0;
margin:0 auto;
padding:20px 0 20px 0;
position: absolute;
}
#bodypillowLp #point #point03 .secret03 .note .button_morebutton p{
background:#ba9a6a;
color:#fff;
font-size:1.2rem;
line-height:2.0rem;
padding: 5px 10px 5px 10px;
width: 40%;
border-radius:20px;
margin: 0 auto;
text-align:center;
}
#bodypillowLp #point #point03 .secret03 .note .button_morebutton.open{
display: none;
}
#bodypillowLp #point #point03 .secret04 .point_number img{
width:13%;
}
#bodypillowLp #point #point03 .secret04 .point_number{
font-size:1.6rem;
line-height:2.4rem;
font-weight:600;
margin:20px 5%;
}
#bodypillowLp #point #point03 .secret04 .wash_net{
padding:0;
margin: 0;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont{
background:#e0f6fe;
position: relative;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont .badge{
background: #fff55d;
text-align: center;
color: #5b5557;
width: 90px;
padding:25px 0 25px 0;
margin: 0;
font-size:12px;
line-height:20px;
font-weight:600;
display:block;
border-radius:50%;
position: absolute;
top:-50px;
right:10px;
z-index: 10;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont ul{
display:flex;
flex-flow: wrap;
justify-content: center;
background: #fff;
margin: 0 5%;
border-radius:20px;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont ul li{
width: 45%;
padding:10px 5px;
}#bodypillowLp #point #point03 .secret04 .wash_net_cont ul li img{
border-radius: 10%;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont ul li p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
margin: 0 auto;
background: none;
color: #5b5557;
text-align: center;
}
@media screen and (min-width:769px){
#bodypillowLp #point #point03 .secret_cont{
max-width: 600px;
margin: 0 auto;
}
#bodypillowLp #point #point03 h3{
max-width: 600px;
margin: 0 auto;
}
#bodypillowLp #point #point03 .secret03{
max-width: 600px;
padding:0 5%;
margin:0 auto;
}
#bodypillowLp #point #point03 .secret04 .point_number{
margin:20px auto 0 auto;
padding:0 5% 0 5%;
max-width: 600px;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont .badge{
text-align: center;
color: #5b5557;
width: 90px;
padding:25px 0 25px 0;
margin: 0;
display:block;
border-radius:50%;
position: absolute;
top:-50px;
right:100px;
z-index: 10;
}
#bodypillowLp #point #point03 .secret04 .wash_net_cont ul{
max-width: 600px;
margin: 0 auto;
}
}

#bodypillowLp #point .button_net{
background:#7fddff;
color:#5b5557;
padding:20px 0 20px 0;
text-decoration: none;
text-align: center;
display: block;
margin:0 auto;
border-radius: 30px;
}
/*lineup*/
#bodypillowLp #lineup h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
margin: 0 auto;
text-align: center;
    }
#bodypillowLp #lineup .number{
width: 20%;
text-align: center;
padding: 40px 0 20px 0;
margin: 0 auto;
}
#bodypillowLp #lineup h3{   
font-size:1.8rem;
line-height:2.4rem;
font-weight:600;
text-align: center;
margin: 0 auto;
padding:20px 0 10px 0;
}
#bodypillowLp #lineup p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
margin: 0 5%;
}

#bodypillowLp #lineup .main_lineup_cont{
display:flex;
flex-flow: wrap;
padding:20px 0 0 0;
}

#bodypillowLp #lineup .main_lineup_cont .long_type{
width: 49%;
padding:10px;
background:#ffe9e9;
margin:0 1% 0 0;
border-radius:0 20px 20px 0;
position: relative;
}
#bodypillowLp #lineup .main_lineup_cont .long_type .long_badge{
width:32%;
position: absolute;
top:-20px;
right:-10px;
z-index: 1;
}
#bodypillowLp #lineup .main_lineup_cont .long_type p{
padding:10px 0;
}
#bodypillowLp #lineup .main_lineup_cont .type_text{
font-size:1.6rem;
line-height:2.4rem;
font-weight:600;
}
#bodypillowLp #lineup .main_lineup_cont .short_type{
width: 49%;
padding: 10px;
background:#d1f0eb;
margin:0 0 0 1%;
border-radius:20px 0 0 20px;
position: relative;
}
#bodypillowLp #lineup .main_lineup_cont .short_type .short_badge{
width:32%;
position: absolute;
top:-20px;
right:-10px;
z-index: 1;
}

#bodypillowLp #lineup .main_lineup_cont .short_type p{
padding: 10px 0;
}
#bodypillowLp #lineup h4{
font-size:1.4rem;
line-height:2.4rem;
text-align: center;
background: #fff;
width: 80%;
font-weight: 600;
border: solid 1px #555;
border-radius:20px;
padding:5px 0 5px 0;
position: relative;
margin:0 auto 20px auto;
}
#bodypillowLp #lineup h4::before{
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -14px;
  border: 10px solid transparent;
  border-top: 10px solid #FFF;
  z-index: 2;
}
#bodypillowLp #lineup h4::after{
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  margin-left: -16px;
  border:12px solid transparent;
  border-top: 12px solid #555;
  z-index: 1;
}
#bodypillowLp #lineup .lineup_cont a{
text-decoration: none;
}
#bodypillowLp #lineup .lineup_cont{
display:flex;
flex-flow: wrap;
}
#bodypillowLp #lineup .lineup_cont div{
width: 50%;
padding: 0 10px;
}
#bodypillowLp #lineup .lineup_cont .full{
width: 100% !important;
padding: 0 !important;
}

#bodypillowLp #lineup .lineup_cont .long_type .ling_ttl{
background: #ffbbbb;
padding:10px;
text-align: center;
font-size: 1.4rem;
line-height:2.4rem;
font-weight:600;
border-radius:20px 20px 0 0;
margin: 0;
}
#bodypillowLp #lineup .lineup_cont .short_type .ling_ttl{
background: #c0e5e2;
padding:10px;
text-align: center;
font-size: 1.4rem;
line-height:2.4rem;
font-weight:600;
border-radius:20px 20px 0 0;
margin: 0;
}
#bodypillowLp #lineup .lineup_cont img{
border-radius:0 0 20px 20px;
}
#bodypillowLp #lineup .lineup_cont .tags{
padding: 10px 0 0 0;
}
#bodypillowLp #lineup .lineup_cont .tags span{
background: #fff;
font-size:1.2rem;
line-height:2.0rem;
font-weight: 600;
border: solid 1px #000;
border-radius:20px; 
padding:3px 20px;
margin: 5px 5px 0 0;
display: inline-block;
}
#bodypillowLp #lineup .lineup_cont .price{
text-align: right;
font-size:1.8rem;
line-height:3.6rem;
font-weight:600;
padding: 0;
}
#bodypillowLp #lineup .lineup_cont .price span{
text-align: right;
font-size: 1.4rem;
line-height:3.6rem;
font-weight:600;
}
#bodypillowLp #lineup .lineup_cont .long_type .button{
width:100%;
}
#bodypillowLp #lineup .lineup_cont .long_type .button a{
background:#ffbbbb; 
margin:0 auto;
text-align: center;
display:block;
text-decoration:none;
border-radius:20px;
font-size: 1.4rem;
line-height:36px;
font-weight:600;
}
#bodypillowLp #lineup .lineup_cont .short_type .button{
width:100%;
}
#bodypillowLp #lineup .lineup_cont .short_type .button a{
background:#c0e5e2; 
margin:0 auto;
text-align: center;
display:block;
text-decoration:none;
border-radius:20px;
font-size: 1.4rem;
line-height:36px;
font-weight:600;
}
#bodypillowLp #lineup .lineup_cont p{
padding:10px 20px 20px 20px;
}

#bodypillowLp #lineup .color_table{
overflow-y: scroll;
width: 100%;
background: #fff;
padding:10px 0 0 0;
}
#bodypillowLp #lineup .color_table table{
/*border-left: solid 1px #595959;*/
border-collapse: collapse;
width:70rem;
}
#bodypillowLp #lineup td{
border-spacing:10px 0;
padding:10px;
color: #5b5557;
font-size: 14px;
vertical-align: top;
text-align: center;
position: relative;
}

#bodypillowLp #lineup .color_type td p{
font-size: 10px;
line-height: 14px;
text-align:center;
padding: 8px 0 0 0;
}

#bodypillowLp #lineup .color_type td img{
padding:0 auto;
width: 50%;
}

#bodypillowLp #lineup .color_table .type_name th{
width:50px;
color: #5b5557;
background: #fff;
font-size:10px;
line-height:14px;
padding: 0;
margin: 0;
vertical-align: top;
}
#bodypillowLp #lineup .color_table .long_type td:first-child{
margin: 0;
padding: 0;
border-radius:10px;
background: #ffbbbb;
border: solid 2px #fff;
color:#5b5557;
vertical-align: middle;
display:flex;
margin-top: 8px;
}
#bodypillowLp #lineup .color_table .long_type td:first-child span{
font-size: 1.4rem;
line-height:1.4rem;
white-space: pre;
color:#5b5557;
font-weight: 600;
display:block;
writing-mode: vertical-rl;
padding:5rem 1rem;
margin: 0;
}
#bodypillowLp #lineup .color_table .short_type td:first-child{
margin:0;
padding:0;
border-radius:10px;
background: #c0e5e2; 
border: solid 2px #fff;
color:#5b5557;
vertical-align: middle;
display:flex;
margin-top: 8px;
}
#bodypillowLp #lineup .color_table .short_type td:first-child span{
font-size: 1.4rem;
line-height:1.4rem;
white-space: pre;
color:#5b5557;
font-weight: 600;
display:block;
writing-mode: vertical-rl;
padding:40px 10px;
margin: 0;
}
#bodypillowLp #lineup .color_table .basic{
background: #e6d2ee;
color: #5b5557;
margin:0 5px;
padding:15px 0;
border-radius:10px;
font-weight: 600;

}
#bodypillowLp #lineup .color_table .type01,#bodypillowLp #lineup .color_table .type02 {
background: #fff4ac;
color: #5b5557;
margin:0 5px;
padding:15px 0;
border-radius:10px;
font-weight: 600;
}
#bodypillowLp #lineup .color_table .chara01{
background: #bfd9b4;
color: #5b5557;
margin:0 5px;
padding:15px 0;
border-radius:10px;
font-weight: 600;
}
#bodypillowLp #lineup .color_table .chara02{
background: #bfd9b4;
color: #5b5557;
margin:0 4px 0 4px;
padding:13px 0;
border-radius:10px;
font-size:12px;
line-height:14px;
font-weight: 600;
}

@media screen and (min-width:769px){
#bodypillowLp #lineup p{
max-width: 600px;
margin:0 auto;
}
#bodypillowLp #lineup .main_lineup_cont .long_type p{
padding:10px 10px;
}
#bodypillowLp #lineup .main_lineup_cont .short_type p{
padding:10px 10px;
}
#bodypillowLp #lineup .main_lineup_cont .long_type .long_badge{
width:36%;
position: absolute;
top:-20px;
right:10px;
}
#bodypillowLp #lineup .main_lineup_cont .short_type .short_badge{
width:32%;
position: absolute;
top:-20px;
right: 10px;
}
#bodypillowLp #lineup h4{
max-width: 600px;
}
#bodypillowLp #lineup .lineup_cont{
margin: 0 auto;
max-width: 600px;
}
#bodypillowLp #lineup .color_table{
width: 100%;
background: #fff;
padding:10px;
width: fit-content !important;
}
#bodypillowLp #lineup .color_table table{
border-collapse: collapse;
width:980px;
}
#bodypillowLp #lineup .color_table .type_name th{
width:50px;
color:#000;
background: #fff;
padding: 0;
margin: 0;
vertical-align: top;
}
#bodypillowLp #lineup .color_table .long_type td:first-child{
margin: 0;
padding: 0;
border-radius:10px;
background: #ffbbbb;
border: solid 2px #fff;
color:#5b5557;
vertical-align: middle;
display:flex;
margin-top: 8px;
}
#bodypillowLp #lineup .color_table .long_type td:first-child span{
font-size:14px;
line-height:14px;
white-space: pre;
color:#5b5557;
font-weight: 600;
display:block;
writing-mode: vertical-rl;
padding:60px 10px;
margin: 0;
}
}


/*voice*/
#bodypillowLp #voice {
margin:0 0 40px 0;
}
#bodypillowLp #voice h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
margin: 0 auto;
text-align: center;   
}
#bodypillowLp #voice .number{
width: 20%;
text-align: center;
padding: 40px 0 20px 0;
margin:0 auto;
}
#bodypillowLp #voice p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
padding:0 0 20px 0;
margin:0 5%;
}
#bodypillowLp #voice .voice_image{
padding:10px 10px;
}
#bodypillowLp #voice .voice_image img{
border-radius: 20px;
}
#bodypillowLp #voice .voice_cont{
display:flex;
flex-flow: wrap;
}
#bodypillowLp #voice .voice_cont div{
width: 50%;
padding:10px;
}
#bodypillowLp #voice .voice_cont div img{
border-radius: 20px;
}
#bodypillowLp #voice .voice_cont div p{
padding:10px 0;
}



#bodypillowLp #voice h3{
background: #c0e5e2;
text-align: center;
padding:8px 20px;
position: relative;
display:block;
margin:10px 20px;
font-size:1.8rem;
line-height: 2.4rem;
font-weight:600;
}
#bodypillowLp #voice h3::before{
content: '';
width: 20px;
height:100%;
background: #c0e5e2;
position: absolute;
top:0;
left:-20px;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 50% 50%);
}
#bodypillowLp #voice h3::after{
content: '';
width: 20px;
height:100%;
background: #c0e5e2;
position: absolute;
top:0;
right:-20px;
clip-path: polygon(100% 0, 50% 50%, 100% 100%, 0 100%, 0 0);
}
#bodypillowLp #voice .slider .slide{
background: #fff;
padding:20px 30px;
margin:0 20px;
border-radius:40px;
position: relative;
}
#bodypillowLp #voice .slider .slide p{
padding: 10px 0 0 0;
}
#bodypillowLp #voice .slider .slide p span{
font-size: 1.4rem;
line-height:2.0rem;
font-weight:400;
color: #ba9a6a;
}
@media screen and (min-width:769px){
#bodypillowLp #voice{
max-width: 600px;
margin:0 auto 40px auto;
}
}
/*qa*/
#bodypillowLp #set_lineup h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
text-align: center;
margin:0 5%;
}
#bodypillowLp #set_lineup .is__x_mgn{
margin:0 5%;
}
#bodypillowLp #set_lineup .number{
width: 20%;
text-align: center;
padding: 40px 0 20px 0;
margin: 0 auto;
}
@media screen and (min-width:769px){
#bodypillowLp #set_lineup p{
max-width: 600px;
margin: 0 auto;
}
}

#bodypillowLp #voice .slider .slick-arrow{
  position: absolute;
  top: 50%;
  margin-top: -16px;
  width: 40px;
  height: 40px;
  opacity:0.7;
  z-index:10;
}
#bodypillowLp #voice .slider .prev-arrow{
	left: 5px;
}
#bodypillowLp #voice .slider .next-arrow{
	right: 5px;
}
#bodypillowLp #voice .slide{
  width: fit-content !important;
}

/*qa*/
#bodypillowLp #qa h2{
font-size: 2.4rem;
line-height: 3.2rem;
font-weight:600;
margin: 0 auto;
text-align: center;
}
#bodypillowLp #qa p{
font-size: 1.4rem;
line-height: 2.4rem;
font-weight:400;
} 
#bodypillowLp #qa{
padding:0 0 40px 0;
}
#bodypillowLp #qa .number{
width: 20%;
text-align: center;
padding:40px 0 20px 0;
margin: 0 auto;
}
#bodypillowLp #qa p{
padding:0 10px 20px 10px;
text-align: center;
}
#bodypillowLp .faq{
margin:0 3% 5px 3%;
}
#bodypillowLp #qa .faq p{
text-align: left;
}
#bodypillowLp .qa_question{
font-size:1.4rem;
line-height: 2.4rem;
font-weight: 600;
background:#d9ceac;
padding:10px 40px 10px 10px;
border-radius: 10px;
position: relative;
}
#bodypillowLp .qa_question::after{
content:'';
width:20px;
height:20px;
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_qa_acp_icon.png")no-repeat;
background-size:cover;
background-position: center;
position: absolute;
right:20px;
top:0;
bottom:0;
margin: auto 0;
}
#bodypillowLp .qa_question.open::after{
content:'';
width:20px;
height:20px;
background: url("../../../images/shop2/ft_dakimakura/tms_dmlp_qa_acm_icon.png")no-repeat;
background-size:cover;
background-position:center;
position: absolute;
right:20px;
top:0;
bottom:0;
margin: auto 0;
}
#bodypillowLp .qa_answer{
background:#fff;
padding:10px;
margin: 0;
display: none;
}
#bodypillowLp #qa .faq01 table ,#bodypillowLp #qa .faq01 table td,#bodypillowLp #qa .faq01 table th{
border: 1px solid #595959;
border-collapse: collapse;
}
#bodypillowLp #qa .faq01 table{
margin:10px 10px;
}
#bodypillowLp #qa .faq01 table td{
font-size:1.4rem;
line-height: 2.4rem;
padding:10px;
width: 40%;
}
#bodypillowLp #qa .faq01 table td:first-child{
font-size:1.4rem;
line-height: 2.4rem;
padding:10px;
width: 18%;
}
#bodypillowLp #qa .faq01 table th{
font-size:1.4rem;
line-height: 2.4rem;
font-weight: 600;
background:#efefef;
}
#bodypillowLp #qa .faq02 ul,#bodypillowLp #qa .faq03 ul{
display: flex;
flex-flow: wrap;
justify-content: center;
padding:10px 0 10px 0;
}
#bodypillowLp #qa .faq02 ul li,#bodypillowLp #qa .faq03 ul li{
width: 46%;
padding:0 1%;
}
#bodypillowLp #qa .faq05 a,#bodypillowLp #qa .faq06 a{
background:#efefef;
padding: 10px 0 10px 0;
margin:5px 0 0 0;
text-decoration: none;
text-align: center;
display: block;
border-radius: 20px;
font-weight: 600;
}
#bodypillowLp #qa .faq06 ul{
display: flex;
justify-content: center;
padding:10px 0 10px 0;
}
#bodypillowLp #qa .faq06 ul li{
width: 33.33;
}
@media screen and (min-width:769px){
#bodypillowLp #qa{
max-width: 600px;
margin: 0 auto;
}
}



/*tab*/
.dkm_select__tab_list{
width: 100%;
display: flex;
justify-content: space-between;
}
.dkm_select__tab_list {
 border-bottom: 1.026vw solid #ba9a6a;
} 
@media screen and (min-width: 769px){
.dkm_select__tab_list {
border-bottom: 4px solid #ba9a6a;
} 
} 
.dkm_select__tab_list .dkm_select__tab_item {
background-color: #CECECE;
color: #fff;
font-weight: bold;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
cursor: pointer;
}
@media screen and (min-width: 769px) {
.dkm_select__tab_list .dkm_select__tab_item {
font-size: 18px;
width: calc( (780px - 20px) /3 );
height: 110px;
margin-right: 10px;
border-radius: 10px 10px 0 0;
line-height: 1.2;
padding-top: 8px; }
.dkm_select__tab_list .dkm_select__tab_item .tab_item_term {
transition: all .2s ease-out;
color: #5b5557;
background-color: #fff;
display: block;
}
}
@media screen and (max-width: 768px) {
.dkm_select__tab_list .dkm_select__tab_item {
font-size: 3.59vw;
width: calc( (100vw - 1.282vw) /3 );
margin-right: 1.282vw;
padding-bottom: 2.564vw;
border-radius: 2.564vw 2.564vw 0 0;
line-height: 1.23;
} 
.dkm_select__tab_list .dkm_select__tab_item .tab_item_term {
transition: all .2s ease-out;
color: #5b5557;
background-color: #fff;
display: block;
}}
@media screen and (max-width: 768px) {
.dkm_select__tab_list .dkm_select__tab_item .tab_item_term {
border-radius: 3em;
margin: 2.564vw 0 1.282vw;
padding: 0.769vw 0;
font-size: 3.07vw;
width: 25.641vw;
line-height: 1.1;
} 
}
@media screen and (min-width: 769px) {
.dkm_select__tab_list .dkm_select__tab_item .tab_item_term {
border-radius: 3em;
margin-bottom: 5px;
padding: 3px 0;
font-size: 14px;
width: 140px;
margin: auto;
line-height: 1.4;}
}


.dkm_select__tab_list .dkm_select__tab_item:last-of-type {
margin-right: 0; }
.dkm_select__tab_list .dkm_select__tab_item.is-active {
background-color:  #ba9a6a;; }
.dkm_select__tab_list .dkm_select__tab_item:hover {
opacity: 0.8; }

.dkm_select__main {
background-color: #F9F4E4; }
@media screen and (max-width: 768px) {
.dkm_select__main {
padding: 5.128vw 5.128vw 0; } }
@media screen and (min-width: 769px) {
.dkm_select__main {
padding: 40px 20px 0; } }

.dkm_select__main .dkm_select__content {
width: 100%; }

.dkm_select__main .dkm_select__content:not(.is-active) {
padding: 0;
opacity: 0;
width: 100%;
height: 0;
pointer-events: none;
border-top: 0 solid !important; }
.dkm_select__main .dkm_select__content.is-active {
opacity: 1;
z-index: 10; }
.dkm_select__main .cmn_include__wrp {
background-color: #F9F4E4; }

.dkm_inc__ttl {
  font-size: 24px !important;
  margin-bottom: 20px !important;
  line-height: 1.55 !important;
  font-weight: bold !important;
}
@media screen and (max-width: 768px) {
  .dkm_inc__ttl {
    font-size: 4.615vw !important;
    margin-bottom: 5.128vw !important;
    line-height: 1.33 !important;
  }
}

@keyframes slideAnime{
0% { opacity: 0 }
10% { opacity: 1 }
50% { opacity: 1 }
55% { opacity: 0;z-index:9;}
100% { opacity: 0 }
}

.cmn__wrp .is__maker {
  background: linear-gradient(transparent 60%, #F5DCD9 0);
}