@charset "UTF-8";

/* 商品詳細 product_page
   ========================================================================== */
@media only screen and (min-width: 768px) {
    .ec-productRole .ec-productRole__title .ec-headingTitle {
        font-size: clamp(22px, 2.6vw, 32px);
    }
}

.ec-grid2{
  margin-top: clamp(32px, 4.5vw, 60px);
}


.ec-productRole .ec-productRole__title .ec-headingTitle {
font-size: clamp(22px, 2.6vw, 32px);
font-weight: 600;
  margin: 10px 0 10px;
  line-height: 1.5;
  /* border-bottom: 1px dotted #adadca ;
      padding-bottom: .3em; */
}

.slick-slider{
  border: 2px solid #d2d9ff;
}


.ec-productRole__profile{
      font-size: clamp(16px, 1.7vw, 20px);
    line-height: 2;
}


.product_page #maker_area.ec-productRole__maker{
padding: 12px 0 10px !important;
    border-bottom: 1px dotted #adadca !important;
    border-top: 1px dotted #adadca;
    margin: 1em 0 14px;
} 

.product_page #maker_area.ec-productRole__maker p.ec-maker{

}

.product_page .ec-productRole__specList{
list-style: none;
padding: 0 1rem;
}


/* 商品説明下　プラグインで追加部分 */

.product_page .ec-productRole__extraTitle{
  font-weight: 600;
}

/* ボタン */
.product_page .ec-blockBtn--action{
  margin: 0 auto 1em;
    max-width: 400px;
}

.ec-productRole__backBtnWrap{
    margin: 3em auto;
    max-width: 400px;
}











/* スライドショー部分　デフォルト　元々ついてる。
   ========================================================================== */

        .slick-slider {
            margin-bottom: 35px;
        }

        .slick-dots {
            position: absolute;
            bottom: -45px;
            display: block;
            width: 100%;
            padding: 0;
            list-style: none;
            text-align: center;
        }

        .slick-dots li {
            position: relative;
            display: inline-block;
            width: 20px;
            height: 20px;
            margin: 0 5px;
            padding: 0;

            cursor: pointer;
        }

        .slick-dots li button {
            font-size: 0;
            line-height: 0;
            display: block;
            width: 20px;
            height: 20px;
            padding: 5px;
            cursor: pointer;
            color: transparent;
            border: 0;
            outline: none;
            background: transparent;
        }

        .slick-dots li button:hover,
        .slick-dots li button:focus {
            outline: none;
        }

        .slick-dots li button:hover:before,
        .slick-dots li button:focus:before {
            opacity: 1;
        }

        .slick-dots li button:before {
            content: " ";
            line-height: 20px;
            position: absolute;
            top: 0;
            left: 0;
            width: 12px;
            height: 12px;
            text-align: center;
            opacity: .25;
            background-color: black;
            border-radius: 50%;

        }

        .slick-dots li.slick-active button:before {
            opacity: .75;
            background-color: black;
        }

        .slick-dots li button.thumbnail img {
            width: 0;
            height: 0;
        }

/* extra sections
   ========================================================================== */

.product_page .ec-productRole__extraSections {
    max-width: 1000px;
    margin: 0 auto;
}

.product_page .ec-productRole__extraDefs {
    margin: 0;
    border-top: 1px dotted #adadca;
    border-bottom: 1px dotted #adadca;
    background: #fff;
}

.product_page .ec-productRole__extraSections + .ec-productRole__description {
    max-width: 1000px;
    margin: clamp(18px, 2.4vw, 28px) auto 0;
    padding: 0 clamp(16px, 2.3vw, 26px) clamp(16px, 1.8vw, 22px);
    /* border-top: 1px dotted #adadca; */
    border-bottom: 1px dotted #adadca;
    background: #fff;
    line-height: 1.9;
    overflow-wrap: anywhere;
}

.product_page .ec-productRole__extraSections + .ec-productRole__description > *:first-child {
    margin-top: 0;
}

.product_page .ec-productRole__extraSections + .ec-productRole__description > *:last-child {
    margin-bottom: 0;
}

.product_page .ec-productRole__extraRow {
    border-bottom: 1px dotted #adadca;
}

.product_page .ec-productRole__extraRow:last-child {
    border-bottom: 0;
}

.product_page .ec-productRole__extraTitle {
    margin: 0;
    padding: 1rem;
    background: #efeff0;
    font-size: clamp(18px, 1.8vw, 20px);
    font-weight: 700;
}

.product_page .ec-productRole__extraBody {
    margin: 0;
    padding: clamp(14px, 1.4vw, 16px) clamp(14px, 1.4vw, 16px) clamp(12px, 1.2vw, 14px);
    line-height: 1.9;
}

.product_page .ec-productRole__extraBody > *:first-child {
    margin-top: 0;
}

.product_page .ec-productRole__extraBody > *:last-child {
    margin-bottom: 0;
}

@media only screen and (min-width: 768px) {
    .product_page .ec-productRole__extraRow {
        display: grid;
        grid-template-columns: minmax(190px, 25%) 1fr;
    }

    .product_page .ec-productRole__extraTitle {
        display: flex;
        padding:clamp(14px, 1.6vw, 20px) clamp(20px, 2.3vw, 26px) ;
    }

    .product_page .ec-productRole__extraBody {
        padding: clamp(14px, 1.6vw, 20px) clamp(20px, 2.3vw, 26px);
    }
}

.product_page .ec-productRole__infoBtn {
    border: none;
    background: linear-gradient(90deg, #14568f 0 0) left top / 0 100% no-repeat, #052a5b;
    color: #ffffff;
    text-decoration: none;
    transition: background-size 0.32s ease, box-shadow 0.32s ease;
}

.product_page .ec-productRole__infoBtnGroup {
    display: grid;
    /* gap: 12px; */
}

.product_page .ec-productRole__infoBtn:hover,
.product_page .ec-productRole__infoBtn:focus-visible {
    background-size: 100% 100%, auto;
    box-shadow: 0 14px 28px rgba(5, 42, 91, 0.18);
}

.product_page .ec-productRole__infoBtnInner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.6em;
}

.product_page .ec-productRole__infoBtnIcon {
    width: 1.2em;
    height: auto;
    flex-shrink: 0;
}

.product_page .ec-productRole__infoBtn--pdf {
    border: none;
    background: linear-gradient(90deg, #961a07 0 0) left top / 0 100% no-repeat, #ce1d00;
    color: #ffffff;
    text-decoration: none;
    transition: background-size 0.32s ease, box-shadow 0.32s ease;
}

.product_page .ec-productRole__infoBtn--pdf:hover,
.product_page .ec-productRole__infoBtn--pdf:focus-visible {
    background-size: 100% 100%, auto;
    box-shadow: 0 14px 28px rgba(120, 16, 0, 0.22);
}

.product_page .ec-productRole__infoBtn--pdf-ja {
    /* Intentionally shares the same base PDF style for now. */
}

/* 製品（セル等含む）に関するお問い合わせボタン：文言が長く400pxからはみ出すため、幅を広げ、狭い画面では「製品（セル等含む）／に関するお問い合わせ」で折り返す */
.product_page .ec-productRole__infoBtn:not(.ec-productRole__infoBtn--pdf) {
    max-width: 440px;
    padding: 12px 24px;
    height: auto;
    min-height: 56px;
    line-height: 1.4;
    white-space: normal;
    word-break: keep-all;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 説明書PDFボタンも同じ幅にそろえる */
.product_page .ec-productRole__infoBtn--pdf {
    max-width: 440px;
}
