@charset "utf-8";
/* CSS Document */




/* 環境スマイル用追記 */

p[class*="sps-wishArea"]{
display:none;
}
#main-column .footer_area h2 {
    clear: both;
    margin: 30px 0 15px !important;
    background: url(https://image1.shopserve.jp/eco-smile.tm.shopserve.jp/pic-labo/side_ttl_ico.gif) no-repeat top left;
    margin: 0;
    font-weight: bold;
    color: #360;
    padding-left: 12px;
    /* height: 33px; */
    border-bottom: dotted 2px #690;
    margin: 20px 0;
    line-height: 1.7;
}


#main-column .footer_area h3 {
    margin: 20px 0 10px;
    border-bottom: 1px dotted #690;
    color: #360;
    font-size:90%;
}



/* 詳細ページ */
article#Detail #main-column h1.item-title {
  color: #154a7f;
  border-bottom: 3px solid #154a7f;
}

section#itemDetail-wrap .description > p.leadtext {
  padding-bottom:0!important;
  border-bottom:none;
}

#itemDetail-cont {
  margin-bottom:-40px;
}

section#itemDetail-wrap .description li {
  line-height:1.8;
  margin-bottom:10px;
}

table.tbl-manual {
margin:0 auto 30px;
width:90%!important;
}

table.tbl-attention {
margin:0 auto 30px;
width:90%!important;
text-align:center;
}


.itemText dt {
font-weight:bold;
color:#360;
}

.itemText dd {
line-height:1.5;
padding:0 20px 5px;
margin-bottom:10px;
border-bottom:1px solid #ccc;
}

.neocut-komono {
background: linear-gradient(transparent 50%, yellow 50%);
}


.youtube {
margin: 0 auto 20px;
display: block;
}



/* defaultにない記述関連 */

table.item-spec th {
    width: 100px;
    background: #eee;
    padding: 5px;
    font-size: 0.9em;
    white-space: nowrap;
    border: 1px solid #999;
    text-align: center;
}


table.item-spec td {
    padding: 10px;
    font-size: 0.9em;
    border: 1px solid #999;
}


div.neocut ul {
    margin: 0 0 20px 20px;
    padding:0 10px;
}


div.neocut ul li {
    background:none!important;
    padding-left:0!important;
    margin-bottom:10px;
    list-style:disc;
    line-height:1.8;
    font-size: 14px;
/*
    padding-left: 18px;
    margin-bottom: 10px;
    background: url(bg-ul.png) left top no-repeat;
*/
}

article #main-column h1.image,
article #main-column #pickup h2,
article #main-column #diy h2,
article #main-column h2.image {
    padding: 0!important;
    background: none!important;
}


article #main-column h1.image {
    margin-bottom: 25px;
text-align:center;
border:none;
}
article #main-column h2.image {
    margin-bottom: 0;
    text-align:center;
}
article #main-column h2.wood {
    margin: 0;
    padding: 8px 0 6px!important;
    background: url(tit-back.png) no-repeat center center!important;
    background-size: 100% 100%!important;
    border-radius: 0!important;
    text-align: center;
    line-height:1!important;
}
div.image {
    margin-bottom: 30px;
    text-align:center;
}

article div.neocut h2 {
    font-size: 100%!important;
    font-weight: bold!important;
    color: #fff!important;
    background: #145392!important;
    margin-bottom: 15px!important;
    padding: 7px 12px!important;
    border-radius: 15px!important;
    letter-spacing: normal!important;
    border: none!important;
    padding: 7px 12px!important;
}


article div.neocut h3 {
background: none;
margin: 0 0 15px 0;
padding: 0 0 1px 5px;
font-size: 87.5%;
font-weight: bold;
color: #17253b;
border-bottom: 1px dotted #17253b;
}



.header_area #voice,
.header_area #pickup,
.header_area #point,
.header_area #diy,
.header_area #sekou,
.header_area #varieties {
    margin-bottom: 40px;
}



/* 2022.10 配置変更に伴い修正*/
.header_area #diy {
    margin-bottom: 0;
}
/* 2022.10 配置変更に伴い修正*/
.header_area #sekou {
    margin-bottom: 20px;
}
.header_area #voice ul,
.header_area #point ul,
.header_area #diy ul,
.header_area #varieties ul {
    margin: 0;
}
.header_area #voice ul li,
.header_area #pickup div p,
.header_area #point ul li,
.header_area #diy ul li,
.header_area #varieties p,
.header_area #varieties ul li {
    margin: 0;
    padding: 0;
    background: none;
    line-height: 1.4;
    font-size: 15px;
    font-weight: bold;
}
@media screen and (max-width: 550px) {
    .header_area #voice,
    .header_area #pickup,
    .header_area #point,
    .header_area #diy,
    .header_area #varieties {
        margin-bottom: 30px;
    }
/* 2022.10 配置変更に伴い修正*/
    .header_area #diy {
        margin-bottom: 0;
    }

    .header_area #voice ul li,
    .header_area #pickup div p,
    .header_area #point ul li,
    .header_area #diy ul li,
    .header_area #varieties p,
    .header_area #varieties ul li {
        line-height: 1.3;
        font-size: 14px;
    }
}

/* ==============================================
    voice
============================================== */
.header_area #voice ul {
    padding: 25px 20px 20px;
    background: url("pic-back.png");
}
.header_area #voice ul li {
    position: relative;
    margin-bottom: 20px;
    padding: 17px 20px!important;
    border: 2px solid #44b31d;
    background: #fff!important;
    list-style:none!important;
}
.header_area #voice li.left {
    margin-left: 120px;
}
.header_area #voice li.right {
    margin-right: 120px;
}

#voice li::before,
#voice li::after {
    position: absolute;
}
.header_area #voice li::before {
    top: 50%;
    margin-top: -40px;
}
#voice li.icn1::before {
    content: url("pic-voice-icn1.png");
}
#voice li.icn2::before {
    content: url("pic-voice-icn2.png");
}
#voice li.left::before {
    left: -115px;
}
#voice li.right::before {
    right: -115px;
}
#voice li::after {
    content: url(pic-voice-fukidashi.png);
    top: 14px;
}
#voice li.left::after {
    left: -20px;
    transform: scale(-1, 1);
}
#voice li.right::after {
    right: -20px;
}
@media screen and (max-width: 640px) {
    .header_area #voice ul {
        padding: 20px 15px 15px;
    }
    .header_area #voice ul li {
        margin-bottom: 15px;
        padding: 15px 17px;
    }
    #voice li::after {
        top: 50%;
        margin-top: -11px;
    }
    .header_area #voice li.left {
        margin-left: 100px;
    }
    .header_area #voice li.right {
        margin-right: 100px;
    }
    #voice li.left::before {
        left: -100px;
    }
    #voice li.right::before {
        right: -100px;
    }
}

/* ==============================================
    pickup
============================================== */
#pickup {
    padding-top: 310px;
    background: url("pic-pickup.jpg") no-repeat;
}
#pickup div {
    position: relative;
    margin: 0 42px;
    padding: 80px 23px 10px;
    background:rgba(255,255,255,0.85);
    box-sizing: border-box;
}

article #main-column #pickup {
width:750px;
margin:0 auto 40px auto;
}

.header_area #pickup div h2 {
    position: absolute;
    top: -70px;
    left: -23px;
    margin-top:0!important;
}
.header_area #pickup div h2 img {
    max-width: 694px;
}
@media screen and (max-width: 750px) {
    #pickup div {
        margin: 0 5.6vw;
        padding: 10.6vw 3vw 1.3vw;
    }
    .header_area #pickup div h2 {
        top: -9.3vw;
        left: -5.6vw;
        right: -5.6vw;
        width: 96vw;
        text-align: center;
    }
    .header_area #pickup div h2 img {
        width: 93vw;
    }
    article #main-column #pickup {
        width:auto!important;
    }
}

/* ==============================================
    point
============================================== */
.header_area #point ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width:800px;
    margin:30px auto 0 auto;
}
.header_area #point ul li {
    margin-bottom: 20px;
    list-style:none!important;
}
#point li:nth-of-type(2n+1) {
    width: 370px;
}
#point li:nth-of-type(2n) {
    width: 373px;
}
#point li span {
    display: block;
    margin-top: 5px;
}
#point li:nth-of-type(2n+1) span {
    margin-right: 5px;
}
#point li:nth-of-type(2n) span {
    margin-left: 10px;
}
@media screen and (max-width: 768px) and (min-width: 521px) {
    #point li:nth-of-type(2n+1) {
        width: 46vw;
    }
    #point li:nth-of-type(2n) {
        width: 48.5vw;
    }
    #point li:nth-of-type(1) img { width: 46vw; }
    #point li:nth-of-type(2) img { width: 44.2vw; }
    #point li:nth-of-type(3) img { width: 46.4vw; }
    #point li:nth-of-type(4) img { width: 48.5vw; }

    .header_area #point ul {
        width:auto;
    }
}
@media screen and (max-width: 520px) {
    .header_area #point ul {
        flex-direction: column;
        align-items: center;
        width:auto;
    }
    #point li:nth-of-type(2n+1),
    #point li:nth-of-type(2n) {
        width: 373px;
    }
    #point li:nth-of-type(2n+1) span {
        margin-right: 0;
    }
    #point li:nth-of-type(2n) span {
        margin-left: 0;
    }
}
@media screen and (max-width: 390px) {
    #point li:nth-of-type(2n+1),
    #point li:nth-of-type(2n) {
        width: 95.6vw;
    }
    #point li:nth-of-type(1) img { width: 90.7vw; }
    #point li:nth-of-type(2) img { width: 87.1vw; }
    #point li:nth-of-type(3) img { width: 91.5vw; }
    #point li:nth-of-type(4) img { width: 95.6vw; }
}

/* ==============================================
    diy
============================================== */
#diy {
    padding: 15px 0;
    background: url("pic-back.png");
    text-align: center;
    overflow: hidden;
}
#diy h2 {
    position: relative;
    z-index: 2;
}
#diy h2::before,
#diy h2::after {
    position: absolute;
    content: "";
    display: block;
    width: 125px;
    height: 125px;
}
#diy h2::before {
    top: 17px;
    right: 629px;
    background: url("pic-diy-icn1.png") no-repeat;
}
#diy h2::after {
    top: 6px;
    left: 592px;
    background: url("pic-diy-icn2.png") no-repeat;
}
.header_area #diy ul {
    margin-top: -45px;
}
#diy ul li {
    display: inline-block;
    vertical-align: top;
}
#diy ul li:last-of-type {
    margin-top: 15px;
    margin-left: -45px;
}
@media screen and (max-width: 768px) and (min-width: 451px) {
    #diy h2 img {
        width: 78.5vw;
    }
    #diy h2::before,
    #diy h2::after {
        width: 16.2vw;
        height: 16.2vw;
        background-size: 16.2vw 16.2vw;
    }
    #diy h2::before {
        top: 2.2vw;
        right: 81.9vw;
    }
    #diy h2::after {
        top: 0.7vw;
        left: 77vw;
    }
    .header_area #diy ul {
        margin-top: -5.8vw;
    }
}
@media screen and (max-width: 710px) and (min-width: 451px) {
    #diy ul li:last-of-type {
        margin-top: 2.1vw;
        margin-left: -6.3vw;
    }
    #diy ul li:first-of-type img {
        width: 50vw;
    }
    #diy ul li:last-of-type img {
        width: 49.5vw;
    }
}
@media screen and (max-width: 450px) {
    #diy h2::before,
    #diy h2::after {
        width: 22vw;
        height: 22vw;
        background-size: 22vw 22vw;
    }
    #diy h2::before {
        top: 2.2vw;
        left: -2vw;
        right: auto;
    }
    #diy h2 {
        text-align: right;
    }
    #diy h2 img {
        width: 90%;
    }
    #diy ul li {
        display: block;
        text-align: center;
    }
    #diy ul li:last-of-type {
        margin-top: 0;
        margin-left: 0;
    }
    #diy ul li img {
        width: 70%;
    }
}
@media screen and (max-width: 380px) {
    #diy ul li img {
        width: 80%;
    }
}

/* ==============================================
    sekou
============================================== */
.header_area #sekou h2.wood {
    margin-bottom: 20px;
}
#sekou .slider a img {
    margin-bottom: 5px;
}
#sekou .slider div.slick-slide {
    margin: 0 1px;
    text-align: center;
    font-size: 14px;
}
#sekou .slider div.slick-slide span {
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 3px;
}
#sekou .slider div.slick-slide span::before {
    content: "";
    display: block;
    padding-top: 100%;
}
#sekou .slider div.slick-slide span img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}

/* ==============================================
    slick style
============================================== */
.slick-prev,
.slick-next,
.slick-prev:before,
.slick-next:before {
	width: 30px;
	height: 30px;
}
.slick-prev,
.slick-next {
	margin-top: -15px;
	z-index: 10;
}
.slick-prev:before,
.slick-next:before {
	content: "";
	display: inline-block;
    background: url("btn-slick.png") no-repeat 0 0;
	background-size: contain;
	transition: .4s;
    opacity: 1;
}
.slick-next:before {
	transform: rotate(180deg);
}
.slick-prev {
    left: 10px;
}
[dir='rtl'] .slick-prev {
    right: 10px;
    left: auto;
}
.slick-next {
    right: 10px;
}
[dir='rtl'] .slick-next {
    right: auto;
    left: 10px;
}

/* ==============================================
    varieties
============================================== */
#varieties {
    padding: 15px 0;
    background: url("pic-back.png");
    text-align: center;
}
.header_area #varieties p {
    max-width: 680px;
    margin: 15px auto;
    padding: 0 15px;
    text-align: left;
}
.header_area #varieties ul li {
    display: inline-block;
    vertical-align: top;
    margin: 20px 0;
    font-size: 13px;
    font-weight: bold;
    width:40%; /* パネル4枚に減ったので2×2のレイアウトにするために追記 */
}
#varieties li img {
    margin-top: 5px;
}
@media screen and (min-width: 751px) {
    .header_area #varieties ul li:nth-of-type(4) {
        margin-right: 20px;
    }
}
@media screen and (max-width: 750px) and (min-width: 501px) {
    .header_area #varieties ul li img { width: 28.4vw; }
    .header_area #varieties ul li:nth-of-type(2) img { width: 35.2vw; }
    .header_area #varieties ul li:nth-of-type(4) {
        margin-right: 2.5vw;
    }
}
@media screen and (max-width: 500px) {
    .header_area #varieties p {
        padding: 0 5px;
    }
    .header_area #varieties ul {
        text-align: left;
    }
    .header_area #varieties ul li {
        width: 49%;
        margin: 10px 0;
        text-align: center;
    }
    .header_area #varieties ul li img { width: 85%; }
    .header_area #varieties ul li:nth-of-type(2) img { width: 100%; }
}

/* ==============================================
    choice
============================================== */
#choice p {
    margin: 15px 15px 20px 20px;
    font-size: 14px;
    font-weight: bold;
}
@media screen and (max-width: 500px) {
    #choice p {
        margin: 10px 0;
    }
}
