@charset "utf-8";
strong{
    font-weight: bold;
}
/* アンダーライン ここから */
span.highlight {
    text-decoration: underline;
    text-decoration-thickness: 0.5em;
    text-underline-offset: -0.2em;
    text-decoration-skip-ink: none;
}

span.highlight.yellow {
    text-decoration-color: rgba(255, 228, 0, 0.4);
}

span.highlight.red {
    text-decoration-color: rgba(255, 0, 0, 0.4);
}

span.highlight.green {
    text-decoration-color: rgba(0, 204, 0, 0.4);
}

span.highlight.blue {
    text-decoration-color: rgba(0, 128, 255, 0.4);
}

span.highlight.pink {
    text-decoration-color: rgba(252, 157, 184, 0.4);
}

span.highlight.orange {
    text-decoration-color: rgba(255, 107, 58, 0.4);
}

/* アンダーライン ここまで */

main {
    font-size: 1.6rem;
    line-height: 1.7;
}

section {
    width: 96%;
    margin: 0 auto 2rem auto;
}

/* アクティブな画像の枠線を変更 */
.sub-img li.current img {
    border: 2px solid red;
    transition: border .5s;
}
/**/
section h2 {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 2rem;
    border-bottom: 3px solid #ccc;
}

section h2 span {
    border-bottom: 3px solid var(--main-color);
    padding: 0 1rem 3px 0.5rem;
}

section h2 img {
    width: 2.5rem;
    height: 2.5rem;
    margin-right: 1rem;
    vertical-align: text-top;
}
/**/

/* 商品画像 */

.product .flex {
    margin-bottom: 3rem;
    align-items: flex-start;
}

.simple-detailed {
    width: calc(100% - 30rem);
    line-height: 1.5;
    padding: 2rem 0 0 2rem;
}

.simple-detailed .simple-detailed-more {
    display: none;
}

.simple-detailed p {
    margin-bottom: 1rem;
}

.simple-detailed p a {
    color: var(--main-color);
    text-decoration: underline;
    font-weight: bold;
}

.product-container {
    max-width: 30rem;
    width: 100%;
    padding-top: 2rem;
}

.product-container .slick-img {
    margin-bottom: 0;
}

/* CLSカスタマイズここから */
.product-slider > div.slick-img:not(:first-child) {
    display: none;
}

.history_item {
    display: table-cell;
}

ul.slider {
    overflow: auto;
}

/* CLSカスタマイズここまで */

.product-container img {
    height: 100%;
    width: 100%;
}

.thumbnail .slick-track {
    transform: unset !important;
}

.thumbnail-img {
    opacity: 0.3;
    /*transition: opacity .3s linear;*/
    cursor: pointer;
    width: 75px !important;
    height: 75px !important;
    display: table-cell;
}

.thumbnail-img:hover {
    opacity: 0.8;
}

.thumbnail-img:focus {}

.thumbnail .slick-current {
    opacity: 1;
    border: 2px solid var(--main-color);
}

/* 商品画像 */

/* パッケージの注意 ここから */
#product.contents-box a,
#effect-detail.contents-box a,
#how-to.contents-box a,
#side-effects.contents-box a,
#caution.contents-box a,
#review_announce.contents-box a {
    display: inline;
    font-weight: bold;
    text-decoration: underline;
    color: #00e;
}

#product.contents-box .blockquote a,
#effect-detail.contents-box .blockquote a,
#how-to.contents-box .blockquote a,
#side-effects.contents-box .blockquote a,
#caution.contents-box .blockquote a,
#review_announce.contents-box .blockquote a {
    display: inline-block;
    margin-bottom: 1rem;
}


#effect-detail.contents-box center {
    margin-top: 1rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#effect-detail.contents-box center:empty {
    display: none;
}

#effect-detail.contents-box center a {
    text-align: center;
    background: linear-gradient(to bottom, #61c6d0, #2db2bb);
    color: var(--title-color);
    border-radius: 0.5rem;
    box-shadow: inset 0 2px 0 rgb(255 255 255 / 20%), 0 2px 2px rgb(0 0 0 / 19%);
    font-size: 1.4rem;
    padding: 1rem;
    margin: 0 1rem 1rem 0;
    flex-basis: fit-content;
}

#effect-detail.contents-box center a:last-child {
    margin-right: 0;
}

.contents-box .package-desc {
    position: relative;
}

.contents-box p.package-note {
    font-size: 1.4rem;
    color: #777;
    text-decoration: underline;
    text-align: center;
    cursor: pointer;
    margin-bottom: 0.5rem;
}

.contents-box p.package-note:hover {
    opacity: 0.8;
}

.contents-box p.package-note-pop {
    padding: 1rem;
    border-radius: 0.5rem;
    font-size: 1.4rem;
    background-color: #E6F7FF;
    position: absolute;
    z-index: 500;
    top: -135px;
    display: none;
}

.contents-box p.on {
    display: block;
}

p.package-note-pop span.close {
    width: 20px;
    position: absolute;
    top: -8px;
    right: -8px;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    background: #1a1a1a;
    border-radius: 100px;
    cursor: pointer;
}

/* パッケージの注意 ここまで */
/*商品*/

.entry_body {
    width: 100%;
}

.entry_body h1 {
    font-size: 2rem;
    font-weight: bold;
    border-bottom: 2px solid #ccc;
    color: #333;
    margin-bottom: 1rem;
}

.entry_body .product_review {
    margin-bottom: 1rem;
}

.entry_body .flex {
    margin-bottom: 1rem;
}

.product_review {
    display: flex;
    align-items: center;
}

div.product_review img {
    margin-right: 1.5rem;
    width: 10rem;
    height: 100%;
}

.product_review a{
    width: auto;
    display: flex;
}

.product_review a p {
    font-size: 1.4rem;
    vertical-align: middle;
    color: var(--main-color);
    text-decoration: underline;
}

.product_symptoms {
    display: flex;
    padding: 0 0 0 0.2rem;
    margin-bottom: 2rem;
}

.product_symptoms li,
.product_symptoms p {
    position: relative;
    background-color: #fefefe;
    margin-right: 1rem;
    border: 1px solid #ccc;
    padding: 0!important;
}


.product_symptoms li:last-child,
.product_symptoms p:last-child {
    margin-right: 0;
}

.product_symptoms li a,
.product_symptoms p a {
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: bold;
    padding: 0.5rem;
    height: 100%;
}

/*商品*/

/*商品情報*/
.product table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #aaa;
}

.product table tr {
    border: 1px solid #aaa;
}

.product table th,
.product table td {
    border: 1px solid #aaa;
    padding: 0.5rem 1rem;
    vertical-align: middle;
}

.product table th {
    font-weight: bold;
    background-color: #ccc;
}

.product-info {
    font-size: 1.4rem;
    margin-bottom: 1rem;
}

.product-info th {
    text-align: center;
    width: 10%;
}

.product-info a {
    display: unset;
    color: var(--main-color);
    text-decoration: underline;
}

/*商品情報*/
/*カート*/
.product .product_area th {
    background: linear-gradient(to bottom, #e2e2e2, #efefef);
}

.product .product_area td {
    text-align: center;
    padding: 0.5rem;
}

.product .product_area_title td {
    font-weight: bold;
}

.product .product_area select {
    font-size: 1.6rem;
}

.product_area .quantity-area {
    width: 7%;
}

.product_area .order-area {
    width: 18%;
}

.product_area .capacity {
    width: 20%;
}

.product_area .price-area {
    display: flex;
    border: none;
    align-items: center;
    justify-content: flex-start;

}

.product_area .price-area .listprice {
    font-size: 1.6rem;
    color: #aaa;
    text-decoration: line-through;
    font-weight: bold;
    width: 40%;

}

.product_area .price-area .sellingprice {
    font-size: 2rem;
    font-weight: bold;
    width: 40%;
    text-align: right;
}

.product_area .price-area b.blue {
    font-size: 1.2rem;
}

.product_area .price-area span {
    font-size: 2.4rem;
    font-weight: bold;
}

.to-cart {
    border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    background-color: #FF6B3A;
    box-shadow: 0 3px 0 #FF4203;
    /*transition: 0.9s;*/
}

.to-cart:active {
    box-shadow: 0 0 0 #FF4203;
}

.to-cart a {
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 0.5rem 1rem;
}

.to-cart a img {
    width: 2.4rem;
    height: 2.4rem;
}

.to-cart a p {
    font-size: 1.6rem;
    font-weight: bold;
    color: var(--title-color);
}

.selModal .selModalInner {
    width: 50%;
}

.selModal .selModalInner .selModalHeader {
    text-align: left;
}

.selModalHeader p {
    display: inline-block;
}

.selModal .selModalInner ul li.selected::before {
    background-color: var(--main-color);
    content: none;
}

.selModal .selModalInner ul li.selected {}

/*カート*/

/* カートVIPver ここから */
.product .product_area2 {
    margin-bottom: 2rem;
}

.product .product_area2,
.product .product_area2 tr {
    border: none;
}

.product .product_area2 th,
.product .product_area2 td {
    padding: 0;
    border: none;
}

.product .product_area2 .obi {
    background-color: var(--main-color);
    padding: 1rem;
    color: #fefefe;
    font-weight: bold;
}

.products {
    border-bottom: 1px solid #ccc;
    padding: 0.5rem 2rem;
    display: flex;
    align-items: baseline;
}

.products:hover {
    background-color: rgba(125, 255, 255, 0.5);
}

.products.chk_products {
    background-color: rgba(125, 255, 255, 0.5);
}

.products:last-child {
    border: none;
}

.products.push_products_1 {
    position: relative;
}

.products.push_products_1 label:before {
    content: "1番人気!";
    color: red;
    font-weight: 600;
    position: absolute;
    right: 13rem;
}

.product .product_area2 label {
    width: 95%;
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.product .product_area2 label span {
    width: calc(100% / 6);
    text-align: right;
}
.product .product_area2 label span.discount_rate {
    background-color: #f00;
    font-weight: bold;
    color: #fff;
    font-size: 90%;
    padding: 0 3px;
    text-align: center;
    max-width: 60px;
    font-size: 1.2rem;
}
.smallfont{
    font-size: 1rem;
}
.product .product_area2 input[type="radio"i] {
    margin-right: 1.5rem;
}

.product .product_area2 .sellingprice {
    color: #fe0000;
    font-weight: bold;
    font-size: 2.2rem;
}

.product .product_area2 .perunit {
    color: #00e;
    font-size: 1.2rem;
    font-weight: bold;
}

.product .product_area2 .listprice {
    color: #666;
    text-decoration-line: line-through;
    font-size: 1.2rem;
}

.product .product_area2 a#cart_btn {
    color: #fefefe;
    background: linear-gradient(to bottom, #f00, #a00);
    margin: 1rem auto 0 auto;
    padding: 1rem 0;
    text-align: center;
    display: block;
    font-size: 2rem;
    border-radius: 0.5rem;
    width: 50%;
    text-shadow: 1px 1px 0 #333;
}

.product .product_area2 a#cart_btn img {
    width: 2.4rem;
    height: 2.4rem;
    vertical-align: sub;
    margin-right: 1rem;
}

.product .product_area2 .quantity_table_right,
.product .product_area2 .quantity_table_left {
    padding: 1rem;
    border: 1px solid #ccc;
    text-align: center;
}

.product .product_area2 .quantity_table_right span {
    display: inline-block;
    padding: 1rem;
    vertical-align: middle;
    font-size: 3rem;
    font-weight: bold;
    background-color: #090909;
    color: #fefefe;
    border-radius: 0.5rem;
}

.product .product_area2 .quantity_table_right span img {
    display: block;
    vertical-align: middle;
    width: 2rem;
    height: 2rem;
}

.product .product_area2 .quantity_table_left {
    font-size: 2rem;
}

.product .product_area2 .quantity_table_left span {
    font-weight: bold;
}

/* カートVIPver ここまで */

/* こんな商品も～ 追記 */
#recommend {}

.recommend-area {
    background-color: #E6F7FF;
    border: 3px solid var(--main-color);
    border-radius: 0.5rem;
}

.recommend-t {
    background-color: var(--main-color);
    font-weight: bold;
    color: var(--title-color);
    margin-bottom: 2rem;
    padding: 0.2rem 1rem 0.5rem 1rem;
}

.recommend-area ul {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    margin-bottom: 2rem;
    padding: 0 2rem;
}

.recommend-area ul li {
    width: calc(100% / 3.5);
    background-color: var(--title-color);
    box-shadow: 1px 2px 3px #bbb;
    border-radius: 0.5rem;
}

.recommend-area ul li a {
    width: 100%;
    height: 100%;
    padding: 1rem;
    text-align: center;
}

.recommend-area img {
    width: 10rem;
    height: 10rem;
}

.recommend-p {
    color: var(--main-color);
    text-decoration: underline;
    font-size: 1.4rem;
}

.recommend-e {
    padding: 0 2rem 2rem 2rem;
}

/* こんな商品も～ 追記 */

/*商品ページアンカーボタン*/

.product-anchor {
    display: flex;
    margin-bottom: 3rem;
}

.product-anchor li {
    margin-right: 2rem;
}

.product-anchor li:last-child {
    margin-right: 0;
}

.product-anchor li a {
    display: block;
    font-weight: bold;
    font-size: 1.6rem;
    padding: 0.5rem 1rem 0.5rem 0.5rem;
    background-color: #fefefe;
    border-radius: 0.5rem;
    border: 1px solid #ccc;
    background: linear-gradient(to bottom, #ffffff, #e1e1e1);
}

.product-anchor li a span {
    vertical-align: middle;
    font-size: 1.8rem;
    margin-right: 0.7rem;
}

.product-anchor li a:hover {
    border: 1px solid #80d7ff;
    background: linear-gradient(to bottom, #E6F7FF, #80d7ff);
}

/*商品ページアンカーボタン*/

.contents-box h2 {
    margin-bottom: 2rem;
    font-weight: bold;
    font-size: 1.8rem;
    padding: 0.5em;
    color: #0a0a0a;
    background-color: #E6F7FF;
    border-left: solid 5px var(--main-color);
    border-bottom: none;
}

.contents-box h3 {
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 1.8rem;
    color: var(--main-color);
    border-bottom: 3px solid #c21500;
    border-image: linear-gradient(to right, rgb(0, 136, 204), rgb(104, 224, 207));
    border-image-slice: 1;
    padding: 0 0.5rem;
}
.contents-box h4 {
    margin: 5px auto;
    font-weight: bold;
    color: #404040;
    padding: 0 0.5rem;
    border-bottom: 2px dotted #ccc;
}

.contents-box p {
    padding: 0 1rem;
}

/*向いてる人*/
.merit {
    /*position: relative;
    padding: 4rem 1rem 1rem 1rem;*/
    padding-bottom: 1rem;
    border: 3px solid #FFC107;
    border-radius: 0.5rem;
    background-color: #FFEDBA;
    margin: 1rem 0;
}

.merit .merit-t {
    display: block;
    /*position: absolute;
    top: 0;
    left: 0;*/
    color: #fefefe;
    background-color: #FFC107;
    padding: 0.5rem 1rem;
    margin: 0 0 0.5rem 0;
    font-size: 1.6rem;
    font-weight: bold;
    border-bottom: none;
}

.merit-red {
    border-color: #ff3355;
    background-color: #ffccd5;
}

.merit-red .merit-t {
    background-color: #ff3355;
}

.merit-green {
    border-color: #29cc5f;
    background-color: #e6ffee;
}

.merit-green .merit-t {
    background-color: #29cc5f;
}

.merit-blue {
    border-color: #08adff;
    background-color: #cceeff;
}

.merit-blue .merit-t {
    background-color: #08adff;
}

.merit-pink {
    border-color: #ff99ee;
    background-color: #ffe6fb;
}

.merit-pink .merit-t {
    background-color: #ff99ee;
}

.merit-orange {
    border-color: #ff6b3a;
    background-color: #ffece6;
}

.merit-orange .merit-t {
    background-color: #ff6b3a;
}

.merit ul {
    padding: 0 1rem;
}

.merit li {
    text-indent: -1.6rem;
    padding-left: 1.6rem;
}

.merit li::before {
    content: "・";
    font-size: 1.6rem;
}

.merit p {
    padding: 0 1rem;
}

/*向いてる人*/

/*参考サイト*/
    {
    color: #9ED5FE;
}

blockquote {
    position: relative;
    padding: 0.5rem 1.5rem 0.5rem 5.5rem;
    box-sizing: border-box;
    font-style: italic;
    color: #464646;
    background-color: #f5f5f5;
    box-shadow: 0 2px 4px rgb(0 0 0 / 14%);
    border: 1px dotted #ccc;
    margin: 1rem 0;
}

blockquote:before {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0.5rem;
    width: 3.8rem;
    height: 3rem;
    text-align: center;
    content: "";
    line-height: 30px;
    background-color: #9dd4ff;
    background-image: url(/images/quotation-marks.webp);
    background-repeat: no-repeat;
    background-size: 46%;
    background-position: center;
}

blockquote:after {
    content: '';
    position: absolute;
    left: 0.5rem;
    top: 3rem;
    height: 0;
    width: 0;
    border-left: 1.9rem solid #9dd4ff;
    border-right: 1.9rem solid #9dd4ff;
    border-bottom: 1rem solid transparent;
}

blockquote p {
    position: relative;
    padding: 0;
    margin: 0 0 0.5rem 0;
    z-index: 3;
    line-height: 1.7;
}

blockquote .cite {
    display: block;
    color: #888888;
    font-size: 0.9em;
}

/*参考サイト*/

/* 効果・詳細内のテーブル ここから */
table.effect-detail-table {
    width: 100%;
    height: fit-content;
    border-collapse: collapse;
    margin: 1rem auto;
}

table.effect-detail-table th,
table.effect-detail-table td {
    border: 1px solid #aaa;
    padding: 1rem;
    vertical-align: middle;
}

table.effect-detail-table th {
    font-weight: bold;
    background-color: #E6F7FF;
    text-align: center;
}

table.effect-detail-table.t-1 th {
    text-align: center;
    width: 25%;
    font-weight: bold;
}
table.effect-detail-table.t-1 th h3{
    margin: 0;
    padding: 0;
    border: none;
    font-size: 1.6rem;
    color: #0a0a0a;
}

table.effect-detail-table.t-2 th,
table.effect-detail-table.t-2 td {
    width: calc(100% / 2);
}

table.effect-detail-table.t-3 th,
table.effect-detail-table.t-3 td {
    text-align: center;
}

table.effect-detail-table.t-3 th:first-child {
    width: 20%;
}

table.effect-detail-table.t-3 td {
    width: 40%;
}

table.effect-detail-table.t-3 .each-btn-area {
    width: 80%;
    margin: auto;
}

table.effect-detail-table.t-6 th,
table.effect-detail-table.t-6 td {
    width: 18%;
}

table.effect-detail-table.t-6 th {
    text-align: center;
}

table.effect-detail-table.t-6 th:first-child {
    width: 10%;
}

table.effect-detail-table.t-6 td {
    width: 18%;
}

table.effect-detail-table.t-6 .each-btn-area {
    width: 80%;
    margin: auto;
}

table.effect-detail-table.t-7 th {
    text-align: center;
}

table.effect-detail-table.t-7 th:first-child {
    width: 10%;
}

table.effect-detail-table.t-7 td {
    width: calc(90% / 7);
}

table.effect-detail-table.t-7 .each-btn-area {
    width: 80%;
    margin: auto;
}

table.effect-detail-table.t-7 th {
    text-align: center;
}

table.effect-detail-table.t-8 td,
table.effect-detail-table.t-9 td,
table.effect-detail-table.t-10 td,
table.effect-detail-table.t-8 th,
table.effect-detail-table.t-9 th,
table.effect-detail-table.t-10 th {
    overflow-wrap: break-word;
    width: 220px;
}

table.effect-detail-table.t-8 th:first-child,
table.effect-detail-table.t-9 th:first-child,
table.effect-detail-table.t-10 th:first-child {
    position: sticky;
    top: 0;
    left: 0;
    border-left: none;
    border-right: none;
    width: 100px;
}

table.effect-detail-table.t-8 th:first-child::before,
table.effect-detail-table.t-9 th:first-child::before,
table.effect-detail-table.t-10 th:first-child::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-left: 1px solid #aaa;
    z-index: -1;
}

table.effect-detail-table.t-8 th:first-child::after,
table.effect-detail-table.t-9 th:first-child::after,
table.effect-detail-table.t-10 th:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    right: -1px;
    width: 100%;
    height: 100%;
    border-right: 1px solid #aaa;
    z-index: -1;
}

table.effect-detail-table.t-7 th:first-child {
    width: 10%;
}

table.effect-detail-table.t-7 td {
    width: calc(90% / 7);
}

table.effect-detail-table.t-7 .each-btn-area {
    width: 80%;
    margin: auto;
}


/* コラム画像 */
#effect-detail table.effect-detail-table img {
    display: block;
    margin: auto;
    width: 80%;
    height: 100%;
}

/* コラム画像 */
img.image-size {
    max-width: 640px!important;
    display: block!important;
    width: 100%!important;
    margin: 1rem 0!important;
}
/* 効果・詳細内のテーブル ここまで */


/*よくある質問*/
#faq {}

.accordion {
    width: 100%;
    margin: 1rem 0;
}

/* inputのチェックボックスを非表示 */
.accordion-hidden {
    display: none;
}

/* 見出しボタン部分 */
.accordion-open {
    display: block;
    padding: 10px 80px 10px 10px;
    background: linear-gradient(#e6f7ff, #e6f7ff);
    cursor: pointer;
    margin: 10px 0 0 0;
    position: relative;
    font-size: 16px;
    color: #494949;
    font-weight: bold;
    border-bottom: 3px solid #99e0ff;
    border-left: 4px solid #99e0ff;
}

/* ＋アイコン */
.accordion-open::before,
.accordion-open::after {
    content: '';
    width: 20px;
    height: 3px;
    background: #000;
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
}

/* アイコンのー */
.accordion-open::after {
    transform: translateY(-50%) rotate(90deg);
    transition: .5s;
}

/* アコーディオンが開いたらーに */
.accordion-hidden:checked + .accordion-open:after {
    transform: translateY(-50%) rotate(0);
}

/* アコーディオン中身部分 */
.accordion-inner {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0 10px 0 30px;
    opacity: 0;
    transition: 0.4s;
    /* 表示速度の設定 */
    cursor: pointer;
    line-height: 1.4;
    font-size: 16px;
    background-color: #f9f9f9;
    border-left: 4px solid #f9f9f9;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

/* チェックボックスにチェックが入ったら中身部分を表示する */
.accordion-hidden:checked + .accordion-open + .accordion-inner {
    height: auto;
    opacity: 1;
    padding: 10px 10px 10px 30px;
}

/* ↑ここまで共通 */


/* Q&A追加 */
.accordion_qa .Q,
.accordion_qa .A {
    position: relative;
}

.accordion_qa .Q::before,
.accordion_qa .A::before {
    font-size: 16px;
    display: block;
    position: absolute;
    top: 0;
    left: -1.5em;
    font-weight: bold;
}

.accordion_qa .Q::before {
    content: 'Q.';
    color: #ff728a;
    top: -3px;
}

.accordion_qa .A::before {
    content: 'A.';
    color: #99e0ff;
    top: 0;
}

.accordion_qa .accordion-open {
    padding-left: 30px;
}

.accordion_qa .accordion-hidden:checked + .accordion-open + .accordion-inner {
    height: auto;
    opacity: 1;

}

/* Q&A追加ここまで */


/* 中にいろいろ入れたいとき */
.accordion-box {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0;
    opacity: 0;
    transition: 1s;
}

.accordion-hidden:checked + .accordion-open + .accordion-box {
    height: auto;
    opacity: 1;
    padding: 10px;
}
/*
.contents-box p.qa-small-t{
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 1.6rem;
    padding: 0.5em 0 0 0.5rem;
    color: var(--main-color);
    border-bottom: 2px dotted #ccc;
}
.contents-box p.qa-small-t:first-child{
    padding: 0 0 0 0.5rem;
    margin-top: -0.5rem;
}
*/

/*よくある質問*/

/* 口コミ・レビュー */

.reviewls {}

.reviewl {
    border-bottom: 1px dotted #ccc;
    line-height: 1.3;
    padding: 1rem;
}
.reviewl:last-of-type{
    border-bottom: none;
}

.reviewl .flex {
    align-items: center;
    margin-bottom: 1.5rem;
}

.reviewl .gender {
    width: 4rem;
    height: 4rem;
    margin-right: 1rem;
}

.reviewl .respondent img {
    display: block;
    margin-bottom: 0.2rem;
    width: 10rem;
    height: 100%;
}

.reviewl .respondent span {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
    color: #808080;
    padding-left: 0.2rem;
}

.reviewls .review-more {
    cursor: pointer;
}

.search .review-more {
    font-size: 1.6rem;
    font-weight: bold;
    padding: 0.5rem 0;
    text-align: center;
    border-radius: 0.5rem;
    color: var(--title-color);
    background-color: var(--main-color);
    width: 20%;
    margin: 2rem auto 0 auto;
}

.search .review-more:hover {
    cursor: pointer;
}

.review-form {
    margin-top: 2rem;
}

.review-form form {
    width: 100%;
    padding: 0 1rem;
}

.review-form form table {
    width: 100%;
}

.review-form table th,
.review-form table td,
.review-form input,
.review-form textarea,
.review-form select {
    font-size: 1.6rem;
}

.review-form table th,
.review-form table td {
    padding: 1rem;
    border: 1px solid #aaa;
    vertical-align: middle;
}

.review-form table th {
    background-color: #E6F7FF;
    color: #0a0a0a;
    font-weight: bold;
    width: 20%;
}

.review-form textarea {
    width: 100%;
    text-align: left;
    padding: 0.5rem;
}

.review-form .product-name input {
    width: 50%;
    padding: 0.5rem;
}

.review-form .gender label {
    margin-right: 1rem;
}

.review-form .gender label:last-child {
    margin-right: 0;
}

.review-form .rating select {
    color: #f5c82a;
    font-weight: bold;
    font-size: 2rem;
}

.review-form .review_btn {
    display: block;
    border-radius: 0.5rem;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    padding: 0.5rem 1rem;
    color: #0a0a0a;
    margin: 1rem auto 0 auto;
    border: 1px solid #ccc;
    background: linear-gradient(to bottom, #ffffff, #e1e1e1);
}



/* 口コミ・レビュー */

/*   */
.review_img_wrap{
    display: flex;
    overflow-x: scroll;
    margin: 1rem 0;
}

.review_img {
    min-width: 250px;
    width: 250px;
    border: none;
    border-radius: 5px;
    background-color: #fefefe;
    margin-right: 1rem;
}

.review_img:last-child {
    margin-right: 0;
 }

.review_img:hover {
    opacity: 0.8;
}

.review_img img {
    display: block;
    width: 250px;
    height: 250px;
    object-fit: cover;
}
@keyframes modal-002-animation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
/*   */

/* induction 誘導 */
.induction {
    margin-bottom: 2rem;
}

.balloon2 {
    position: relative;
    padding: 5px 10px;
    background-color: #fff;
    border: 2px solid #ffbb39;
    border-radius: 10px;
    text-align: justify;
}

.balloon2::before {
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    left: -15px;
    top: 20px;
    border-right: 15px solid #ffbb39;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}

.balloon2::after {
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    left: -12px;
    top: 20px;
    border-right: 15px solid #fff;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}

.induction .flex {
    flex-wrap: wrap;
    align-items: stretch;
}

.substitute {
    display: flex;
    width: 50%;
    padding: 1rem;
    height: 100%;
}

.substitute a,
.substitute .balloon2 {
    width: 50%;
}

.substitute a {
    text-align: center;
}

.substitute img {
    width: 15rem;
    height: 15rem;
}

.substitute .more_btn {
    font-size: 1.6rem;
    font-weight: bold;
    padding: 0.5rem 2rem;
    text-align: center;
    border-radius: 0.5rem;
    color: var(--title-color);
    background-color: var(--main-color);
    display: inline;
}

/* induction 誘導 */

#effect-detail.contents-box img {
    display: block;
    width: 100%;
    height: 100%;
    margin: auto;
}

img.quality-img {
    width: 85%;
    display: block;
    height: 100%;
}

img.quality-img-sp {
    width: 100%;
    height: 100%;
    display: none;
}

#effect-detail.contents-box .down {
    display: flex;
    justify-content: space-around;
    margin: 15px 0;
}

#effect-detail.contents-box .down img {
    width: 48%;
}


/*目次*/
#tableOfContents {
    box-sizing: border-box;
    padding: 20px;
    border: 1px solid;
    margin-bottom: 2rem;
}

#tableOfContents ul .mokuT {
    font-weight: bold;
    text-align: center;
    font-size: 20px;
    margin-bottom: 20px;
    width: 100%;
    margin-right: 0;
    border: none;
    border-radius: none;
    background: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

#tableOfContents ul .mokuT span {
    display: block;
    margin: 0 7px;
}

#tableOfContents ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

#tableOfContents ul li {
    box-sizing: border-box;
    width: calc(100% / 4.1);
    margin-bottom: 20px;
    border-radius: 5px;
    margin-right: 5px;
    background: linear-gradient(to bottom, #0af, #0099e6);
}

#tableOfContents ul li:nth-child(4n+1) {
    margin-right: 0;
}

#tableOfContents ul li:hover {
    opacity: 0.8;
}

#tableOfContents li span {
    display: none;
}

#effect-detail #tableOfContents a {
    display: block;
}

#tableOfContents a span {
    display: none;
}

#tableOfContents a {
    color: #fefefe;
    display: block;
    text-align: center;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 10px;
    font-size: 14px;
    font-weight: bold;
}

/*ボタン*/
.Btn-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#tableOfContents .appBtn {
    display: block;
    box-sizing: border-box;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    color: #fefefe !important;
    background: linear-gradient(to bottom, #0af, #0099e6);
    margin-bottom: 20px;
    text-decoration: none;
    line-height: 1.4;
    width: calc(100% / 3.1);
}

.back-contents {
    width: 96%;
    margin: 2rem auto 0 auto;
    text-align: right;
}

.back-contents a {
    display: inline;
    font-size: 1.6rem;
    color: var(--main-color) !important;
    text-decoration: underline;
    text-align: right;
    background-image: url(/images/back-contents.webp);
    background-repeat: no-repeat;
    background-size: 1.8rem 1.8rem;
    background-position: left;
    padding: 0.5rem 0.5rem 0.5rem 2.2rem;
}

/* イベルメクチン質問 ここから */
dl#iver_faq {
    box-sizing: border-box;
    margin: auto;
    width: 100%;
}

#iver_faq.faq {
    border: 1px solid;
}

#iver_faq .faq_dt,
#iver_faq .faq_dd {
    padding-bottom: 10px;
    padding-left: 30px;
    padding: 15px 10px 15px 40px;
    font-size: 14px;
    text-indent: -30px;
    line-height: 1.4;
}

#iver_faq .faq_dt {
    border-bottom: 1px dotted;
}

#iver_faq .faq_dd {
    border-bottom: 1px solid;
}

#iver_faq .faq_dd:last-of-type {
    margin-bottom: 0;
    border-bottom: none;
}

#iver_faq .faq_dt::before,
#iver_faq .faq_dd::before {
    font-weight: bold;
    vertical-align: middle;
    padding: 3px 5px;
    border-radius: 30%;
    color: #fefefe;
    font-size: 14px;
    margin-right: 5px
}

#iver_faq .faq_dt::before {
    content: 'Q';
    background-color: #ff728a;
}

#iver_faq .faq_dd::before {
    content: 'A';
    background-color: #0085C8;
}

#iver_faq b {
    font-weight: bold;
}

/* イベルメクチン質問 ここまで */
/*向いてる人*/
ul.bp {
    border: 3px solid var(--main-color);
    border-radius: 0.5rem;
    background-color: #fefefe;
    margin: 1rem 0;
    padding: 0.7rem 1rem;
}
ul.bp.gray{
    border: 3px solid #bbb;
}
ul.bp.orange{
    border: 3px solid #ff6b3a;
    background-color: #ffece6;
}

ul.bp li {
    text-indent: -1.6rem;
    padding-left: 1.6rem;
}

ul.bp li::before {
    content: "・";
    font-size: 1.6rem;
}

ul.bp p {
    padding: 0 1rem;
}

#effect-detail.contents-box .appraisal img{
    width: 30%;
    height: 100%;
    margin: 1rem auto 0 3rem;
}
/* 商品ページ画像切り替え ここから */
#effect-detail .product-img-switch img.pc{
    display: block;
    width: 60%;
    height: 100%;
    margin: 1rem 0;
}
#effect-detail .product-img-switch img.sp{
    display: none;
}
/* 商品ページ画像切り替え ここまで */
/* お気に入り機能 ここから */
.detail_back{
    font-weight: bold;
}
.bkm_frame{
    text-align: center;
}
.bkm.btn{
    cursor: pointer;
    display: inline-block;
    width: 180px;
    height: 36px;
    margin-top: 1rem;
    background: url(/images/fav-btn_off.webp);
    background-size: contain;
}
.bkm.btn.check{
    background: url(/images/fav-btn_on.webp);
    background-size: contain;
}
.bkm.icon{
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    margin-left: 1rem;
    width: 20px;
    height: 20px;
    background: url(/images/fav-mark_off.webp);
}
.bkm.icon.check{
    background: url(/images/fav-mark_on.webp);
}
/* お気に入り機能 ここまで */

/* PCスマホ切り替え ここから */
.products.pc{
    display: flex;
}

.products.sp{
    display: none;
}
/* PCスマホ切り替え ここまで */
/* レコメンド ここから */
.induction-block {
    max-width: 640px;
    background-color: #f5f5f5;
    border-radius: 14px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
    margin-top: 20px;
    margin-bottom: 10px;
    margin-left: 10px;
    position: relative;
    z-index: 2;
}
#effect-detail.contents-box .induction-block a{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
}
#effect-detail.contents-box .induction-block img {
    height: 150px;
    width: auto;
    margin: 0;
    border-radius: 15px;
}
.induction-text {
    width: 70%;
    text-align: right;
    position: relative;
    padding: 5px 0;
}      
.induction-block .label {
    display: inline-block;
    position: absolute;
    z-index: 1;
    background-color: #e98534;
    font-size: 16px;
    padding: 10px 0 7px;
    margin: 0;
    border-radius: 2px 0 0 0;
    width: 60px;
    left: 540px;
    top: -7px;
    line-height: 1;
    text-align: center;
    color: #fff;
    font-weight: bold;
}
.induction-block .label:before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    right: -5px;
    border: none;
    border-bottom: solid 7px #8f501d;
    border-right: solid 6px transparent;
}
.text-part {
    text-align: left;
    padding-right: 24px;
}
.text-part span {
    color: #010101;
    font-size: 1.75rem;
    display: inline-block;
}
.text-part .price {
    font-size: 1.7rem;
    color: #f81e1e;
    margin: 0;
}
.induction-text p {
    color: #010101;
    font-weight: normal;
    font-size: 1.35rem;
    line-height: 1.25;
}
/* 類似・種類別紹介 ここから */
#cate-type {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
#cate-type li {
    width: 23%;
    border-radius: 20px;
    text-align: center;
    background-color: #cfcddd;
    padding-bottom: 20px;
    max-width: 380px;
}
#cate-type #title {
    color: #fff;
    font-weight: bold;
    padding: 10px 10px;
    font-size: 20px;
    background-color: #055479;
    border-radius: 20px 20px 0 0;
    position: relative;
}
#cate-type #type-green {
    background-color: #e7ffe7;
}
#cate-type #type-green #title {
    background-color: #0ca60c;
}
#cate-type #type-blue {
    background-color: #e8fffe;
}
#cate-type #type-blue #title {
    background-color: #0a9c95;
}
#cate-type #type-pink {
    background-color: #ffe8f5;
}
#cate-type #type-pink #title {
    background-color: #d01f81;
}
#cate-type #type-yellow {
    background-color: #fffad8;
}
#cate-type #type-yellow #title {
    background-color: #cab40e;
}
#cate-type #title span {
    font-size: 1.25rem;
    display: block;
    color: #fff;
    border-bottom: solid 1px #fff;
    line-height: 1.3;
    padding-bottom: 3px;
}
#cate-type #parts {
    text-align: left;
    border-radius: 0 0 20px 20px;
}
#cate-type #parts-p {
    font-size: 15px;
    font-weight: 300;
    padding: 10px 1rem;
}
#inner-parts {
    text-align: center;
}
#cate-type #parts-a {
    display: inline-block;
    background-color: #f7f7f7;
    max-width: 215px;
    width: 100%;
    text-align: left;
    margin-bottom: 8px;
    position: relative;
    color: #0088cc;
    text-decoration: none;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
    padding: 6px 18px 6px 10px;
}

#cate-type #parts-a::after {
    position: absolute;
    content: "";
    width: 12px;
    height: 1.5px;
    right: 5px;
    top: 50%;
    background-color: #20b8ff;
}
/* 類似・種類別紹介 ここまで */
/*アナウンス*/
.shipping_announce {
    width: 100%;
    background-image: url(/images/announce-background01.webp);
    background-repeat: no-repeat;
    background-size: auto;
    text-align: center;
    padding: 0.8rem 0;
    margin: 0 auto 2rem auto;
}

.shipping_announce p {
    margin: 0.5rem 1rem;
    padding: 0px 0px 0px 0px;
    font-size: 1.6rem;
    line-height: 1.3;
}

.shipping_announce p a {
    color: #110bff;
    display: inline;
    background-color: rgba(255,255,255,0.8);
    padding: 0.5rem 1.5rem;
    text-decoration: underline;
    font-weight: bold;
}
/*アナウンス*/
/* 24/04/04 追加 */
#ed-comparison th {
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
    font-size: 20px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
}
#ed-comparison thead th {
    background-color: #f1f1f1;
}
#ed-comparison tbody td {
    background-color: #fff7eb;
    padding: 8px 18px;
    font-size: 17px;
    vertical-align: middle;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
}
#ed-comparison table th img.icon{
    max-height: 60px;
    width: auto;
    margin: 0 auto;
}
#ed-comparison #product-img img {
    max-height: 124px;
    width: auto;
    margin: 0 auto;
}
#ed-comparison tbody th {
    color: #fff;
    padding: 8px;
    line-height: 1.3;
}
#ed-comparison tbody th span {
    font-size: 15px;
    display: block;
}
#ed-comparison #blue {
    background-color: #32ADFE;
}
#ed-comparison #orange {
    background-color: #FFAD33;
}
#ed-comparison #green {
    background-color: #62C297;
}
#ed-comparison #red {
    background-color: #ED7773;
}
#ed-comparison #purple {
    background-color: #AE5CD5;
}
#ed-comparison #w1 {
    background-image: linear-gradient(90deg, rgba(247, 186, 93, 1), rgba(245, 119, 67, 1));
}
#ed-comparison #w2 {
    background-image: linear-gradient(90deg, rgb(70 223 140), rgb(35 157 204));
}
#ed-comparison #pick {
    border: solid 4px #e54747;
}
#ed-comparison #pick th {
    padding: 12px 8px;
}
#ed-comparison a.t_link {
    color: #fff;
}
#recommend-block {
    position: relative;
    margin: 50px 0 10px 0;
}
#recommend_label {
    position: absolute;
    top: 0;
    left: 2px;
    padding: 5px 14px;
    background: linear-gradient(to left, rgb(0, 136, 204), rgb(49 225 200));;
    color: #fff;
    font-size: 16px;
    transform: translate(-2px, -100%);
    border-radius: 6px 6px 0 0;
    display: flex;
    align-items: center;
    justify-content: space-around;
    font-weight: bold;
}
#recommend-block #recommend_label img {
    max-width: 26px;
    width: 100%;
    display: inline-block;
    margin: 0 6px 0 0;
}
#recommend-block ul {
    border: solid 2px #636363;
    border-image: linear-gradient(to left, rgb(0, 136, 204), rgb(49 225 200));
    padding: 5px 15px;
    border-image-slice: 1;
}
#recommend-block ul li {
    position: relative;
    padding: 0 0 0 50px;
    line-height: 2;
}
#recommend-block ul li::after {
    content: "";
    position: absolute;
    width: 16px;
    height: 8px;
    border-left: 2px solid #FF6B3A;
    border-bottom: 2px solid #FF6B3A;
    transform: rotate(-45deg);
    left: 18px;
    top: 30%;
}
#recommend-block.clm #recommend_label {
    background-image: linear-gradient(-60deg, #ff8758 0%, #f09819 100%);
}
#recommend-block.clm ul {
    border-image: linear-gradient(-60deg, #ff8758 0%, #f09819 100%);
    border-image-slice: 1;
}
#recommend-block.clm ul li {
    padding-left: 8px;
    list-style: inside;
}
#recommend-block.clm ul li::after {
    border: none;
}
/* 24/04/04 追加 */

/* 24/04/16 追加 */
.product-container ul.slick-dots{
    display: none!important;
    margin-top: 0;
}
.product-container .slick-next {
    right: 0;
}
.product-container .slick-prev {
    left: 0;
}
.slick-dots li button:before{
    left: -20px;
}
.slick-dots li.slick-active button:before{
    color:var(--main-color);
}
/* 24/04/16 追加 */

/* 24/04/29 高評価・低評価 */
p.review_attention {
    font-size: 1.4rem;
}
.review_excerpt {
    display: flex;
    justify-content: space-around;
}
.review_good,
.review_bad {
    width: 48%;
    padding: 1rem;
    border: 2px solid #ccc;
    border-radius: 0.5rem;
}
.r_excerpt_t {
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 1.8rem;
    border-image-slice: 1;
    padding: 0 0.5rem;
    margin-bottom: 1rem;
}
.review_good .r_excerpt_t {
    color: var(--main-color);
    border-bottom: 3px solid #c21500;
    border-image: linear-gradient(to right, rgb(0, 136, 204), rgb(104, 224, 207));
    border-image-slice: 1;
}
.review_bad .r_excerpt_t {
    color: #cc0022;
    border-bottom: 3px solid #c21500;
    border-image: linear-gradient(to right, rgb(204, 0, 34), rgb(255,188,188));
    border-image-slice: 1;
}

.review_excerpt .flex {
    align-items: center;
    margin-bottom: 1rem;
}
#effect-detail.contents-box .review_excerpt .gender {
    width: 4rem;
    height: 4rem;
    margin: 0 1rem 0 0;
}
#effect-detail.contents-box .review_excerpt .respondent {
    width: 100%;
}
#effect-detail.contents-box .review_excerpt .respondent img {
    display: block;
    margin-bottom: 0.2rem;
    width: 10rem;
    height: 100%;
    margin: 0;
}
#effect-detail.contents-box .review_excerpt .respondent p {
    display: flex;
    padding: 0;
    margin: 0;
}
.review_excerpt .respondent span {
    display: block;
    font-size: 1.2rem;
    font-weight: bold;
    color: #808080;
    padding-left: 0.2rem;
}
.review_excerpt .r_text{
    height: 15rem;
    overflow-y: scroll;
    background-color: #f7f7f7;
    padding: 0.5rem 1rem;
    border-radius: 0.5rem;
    font-size: 1.4rem;
}
a.to_review {
    color: var(--main-color)!important;
    font-weight: normal!important;
    text-align: right!important;
    display: block!important;
    margin: 0.5rem auto 1rem auto!important;
}

/* 24/04/29 高評価・低評価 */

/* 24/05/17 */
#relation-item {
    display: inline-block;
    border-radius: 30px;
    border: #ee795c solid 2px;
    text-align: center;
    box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
    margin: 5px auto;
}
#relation-item #relation-a {
    text-decoration: none;
    padding: 5px 20px;
    display: inline-block;
    height: 100%;
}
#relation-item .relation-inner {
    font-size: 15px;
    line-height: 1.3;
    position: relative;
}
#relation-item .relation-inner p {
    color: #ef3a0d;
    border-bottom: 1px solid #ee795c;
    display: inline;
}
#relation-item .relation-inner span {
    font-size: 13px;
    color: #777777;
    display: inline-block;
}

/* 追加 */
#relation-item.blue {
    border: #5cb4ee solid 2px;
}
#relation-item.blue .relation-inner p {
    color: #0d89ef;
    border-bottom: 1px solid #5cb4ee;
}
/* 24/05/17 */

/* 追加 */

#effect-detail.contents-box .related{
    display: flex;
    justify-content: flex-start;
    /*flex-wrap: wrap;*/
    overflow-x: scroll;
}

#effect-detail.contents-box .related a.r-item {
    /*width: calc((100% - 40px) / 4);*/
    width: 260px;
    min-width: 260px;
    margin: 0 5px 10px 5px;
    font-size: 1.4rem;
    font-weight: 500;
}
#effect-detail.contents-box .related a.r-item:hover{
    color: #ff8861;
}

#effect-detail.contents-box .related img{
    width: 100%;
    height: auto;
}
/* 25/03/05 */
/* 25/06/17 */
.merit_comp {
    display: flex;
    justify-content: space-around;
}
.merit_comp .merit_box,
.merit_comp .demerit_box {
    padding: 20px 20px 10px;
    margin: 2em 0;
    width: 49%;
}
.merit_comp .merit_box {
    background: #f0f8ff;
}
.merit_comp .demerit_box {
    background: #fff4f4;
}
.merit_comp .merit_t,
.merit_comp .demerit_t {
    margin: -20px -20px 10px;
    font-size: 1.2em;
    padding: 4px 10px;
    text-align: center;
}
.merit_comp .merit_t {
    background: #5ab9e8;
    font-weight: bold;
    color: #ffffff;
}
.merit_comp .demerit_t {
    background: #ef857d;
    font-weight: bold;
    color: #ffffff;
}
/* 25/06/17 */


@media screen and (max-width: 1499px) {
    /* 類似・種類別紹介 ここから */
    #cate-type li {
        width: 34%;
        margin-bottom: 24px;
    }
    /* 類似・種類別紹介 ここまで */
}

@media screen and (max-width: 820px) {
    /**/
    section h2 {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    .Android section h2 span {
        padding: 0 1rem 0 0.5rem;
    }
    section h2 span {
        padding: 0 1rem 4px 0.5rem;
    }

    section h2 img {
        vertical-align: sub;
    }
    /**/
    .slick-dotted.slick-slider{
        margin-bottom: 1.5rem;
    }
    .product-container .slick-dotted.slick-slider{
        margin-bottom: 0;
    }
    .back-contents {
        margin: 1rem auto 0 auto;
    }
    main {
        margin-bottom: 1rem;
    }

    /**/
    .contents-box h2 {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    .contents-box h3 {
        font-size: 1.6rem;
    }

    .contents-box p {
        font-size: 1.6rem;
        width: 98%;
        margin: auto;
        padding: 0;
    }

    /**/

    /* 商品画像 */
    .product .flex {
        flex-direction: column;
        margin-bottom: 0.5rem;
        align-items: center;
    }

    .product-container {
        margin-bottom: 2rem;
        padding-top: 0;
    }

    .product-container img {
        width: 90%;
        margin: auto;
    }

    .thumbnail-img img {
        width: 100%;
        height: 100%;
    }

    .simple-detailed {
        width: 100%;
        padding: 0;
        height: 20vw;
        overflow: hidden;
        position: relative;
        /*transition: all 0.5s;*/
    }

    .simple-detailed .simple-detailed-more {
        position: absolute;
        display: block;
        width: 100%;
        bottom: 0;
        left: 0;
        background: linear-gradient(rgba(0, 0, 0, 0), rgba(254, 254, 254, 0.8));
        padding: 0;
        font-size: 1.6rem;
        font-weight: bold;
        color: var(--main-color);
    }

    .simple-detailed.active {
        height: auto;
        padding-bottom: 4rem;
        /*transition: all 0.5s;*/
    }

    .simple-detailed .simple-detailed-more p {
        margin-bottom: 0;
        text-align: center;
        margin: auto;
        padding: 1rem 0 0.5rem 1rem;
        background: linear-gradient(rgba(254, 254, 254, 0.8), rgba(254, 254, 254, 1));
    }

    .simple-detailed p {
        font-size: 1.6rem;
        width: 98%;
        margin: 0 auto 1rem auto;
    }

    .product-container .slick-next,
    .product-container .slick-prev {
        top: 50%;
    }

    .product-container .slick-next {
        right: 0;
    }

    .product-container .slick-prev {
        left: 0;
    }

    /* 商品画像 */

    /* パッケージの注意 ここから */

    .contents-box p.package-note-pop {
        z-index: 500;
        top: -120px;
        width: 100%;
        left: 0%;
    }

    /* パッケージの注意 ここまで */
    /* 商品 */

    .entry_body h1 {
        font-size: 1.8rem;
        border-bottom: 2px solid #ccc;
        margin-bottom: 0.5rem;
    }

    .product_symptoms {
        margin-bottom: 0;
        flex-wrap: wrap;
    }

    .product_symptoms li,
    .product_symptoms p {
        margin-right: 1rem;
    }

    .product_symptoms p {
        width: auto;
        color: #0a0a0a;
        font-size: 1.2rem;
        font-weight: bold;
        margin: 0 1rem 0.8rem 0;
    }

    .product_symptoms li:last-child,
    .product_symptoms p:last-child {
        margin-right: 0;
    }

    .product_symptoms li a,
    .product_symptoms p a {
        font-size: 1.2rem;
        padding: 0.2rem 0.5rem;
    }

    /* 商品 */

    /* 商品情報 */
    .product-info {
        margin-bottom: 0;
    }

    .product-info th {
        width: 25%;
    }

    /* 商品情報 */

    /*カート*/
    .product .product_area th {
        background: linear-gradient(to bottom, #e2e2e2, #efefef);
    }

    .product .product_area td {
        text-align: center;
        font-size: 1.4rem;
        padding: 0.2rem;
    }

    .product .product_area_title td {
        font-size: 1.4rem;
    }

    .product .product_area select {
        font-size: 1.4rem;
    }

    .product_area .quantity-area {
        width: 7%;
    }

    .product_area .order-area {
        width: 30%;
    }

    .product_area .capacity {
        width: 18%;
    }

    .product_area .price-area {
        flex-wrap: wrap;
    }

    .product_area .price-area .listprice {
        width: 100%;
        text-align: left;
        font-size: 1.4rem;
    }

    .product_area .price-area .sellingprice {
        font-size: 1.8rem;
        width: 100%;
        text-align: center;
    }

    .product_area .price-area b.blue {
        display: block;
        font-size: 1.1rem;
    }

    .product_area .price-area span {
        display: none;
    }

    .to-cart a {
        justify-content: space-between;
        padding: 0.5rem;
    }

    .to-cart a img {
        width: 1.6rem;
        height: 1.6rem;
    }

    .to-cart a p {
        font-size: 1.2rem;
    }

    /*カート*/

    /* カートVIPver ここから */
    /* カートVIPver ここまで */

    /* こんな商品も～ 追記 */
    #recommend {}

    .recommend-area {
        border: 3px solid var(--main-color);
        border-radius: 0.5rem;
    }

    .recommend-t {
        margin-bottom: 1rem;
        padding: 0.2rem 1rem 0.5rem 1rem;
        font-size: 1.4rem;
    }

    .recommend-s {
        display: flex;
        overflow-x: scroll;
    }

    .recommend-s::-webkit-scrollbar {
        height: 2px;
    }

    .recommend-s::-webkit-scrollbar-thumb {
        background-color: #ccc;
    }

    .recommend-area ul {
        align-items: stretch;
        justify-content: space-around;
        margin-bottom: 1rem;
        padding: 0;
    }

    .recommend-area ul li {
        width: 15rem;
        margin: 0 0.5rem;
    }

    .recommend-area ul li a {
        padding: 1rem;
    }

    .recommend-area img {
        width: 9rem;
        height: 9rem;
    }

    .recommend-p {
        font-size: 1.2rem;
    }

    .recommend-e {
        padding: 0 1rem 1rem 1rem;
        font-size: 1.4rem;
    }

    /* こんな商品も～ 追記 */

    /*商品ページアンカーボタン*/
    .product-anchor {
        flex-wrap: wrap;
        margin-bottom: 0;
    }

    .product-anchor li {
        margin-bottom: 1rem;
        margin-right: 0.5rem;
    }

    .product-anchor li a {
        font-size: 1.4rem;
    }

    .product-anchor li a span {
        font-size: 1.4rem;
    }

    /*商品ページアンカーボタン*/

    /*向いてる人*/
    .merit {
        /*position: relative;
        padding: 4rem 1rem 1rem 1rem;*/
        padding-bottom: 1rem;
        border-radius: 0.5rem;
        margin: 1rem 0;
    }

    .merit .merit-t {
        width: 100%;
    }

    .merit ul {}

    .merit li {
        text-indent: -1.6rem;
        padding-left: 1.6rem;
        font-size: 1.6rem;
    }

    .merit li::before {
        content: "・";
        font-size: 1.6rem;
    }

    .merit p {
        width: 100%;
        padding: 0 1rem;
    }

    /*向いてる人*/

    /* 効果・詳細内のテーブル ここから */
    table.effect {}

    table.effect th,
    table.effect td {
        display: block;
        width: 100%;
    }

    table.effect th {
        text-align: left;
    }

    table.effect td {
        margin-top: -1px;
    }

    /* 効果・詳細内のテーブル ここまで */

    /*関連記事*/
    #acMenu dt {
        width: 100%;
        margin: 0 auto 15px auto;
    }

    #acMenu dd {
        width: 100%;
    }

    /*関連記事*/
    /* 口コミ・レビュー */

    .reviewls {}

    .reviewl {
        padding: 1rem;
    }

    .reviewl .flex {
        align-items: center;
        margin-bottom: 1rem;
    }

    .reviewl .gender {
        width: 3rem;
        height: 3rem;
        margin-right: 1rem;
    }

    .reviewl .respondent img {
        display: block;
        margin-bottom: 0.2rem;
    }

    .reviewl .respondent span {
        display: block;
        font-size: 1.2rem;
        font-weight: bold;
        color: #808080;
        padding-left: 0.2rem;
    }

    .search .review-more {
        font-size: 1.4rem;
        font-weight: bold;
        padding: 0.5rem 0;
        width: 40%;
        margin: 2rem auto 0 auto;
    }

    .search .review-more:hover {
        cursor: pointer;
    }

    .review-form {}

    .review-form table th,
    .review-form table td,
    .review-form input,
    .review-form textarea,
    .review-form select {}

    .review-form table th,
    .review-form table td {
        width: 100%;
        display: block;
    }

    .review-form table th {}

    .review-form form {}

    .review-form .product-name input {
        width: 100%;
    }

    /* 口コミ・レビュー */
    /* induction 誘導 */
    .induction {
        margin-bottom: 2rem;
    }

    .balloon2 {
        padding: 5px 10px;
    }

    .balloon2::before {
        left: -15px;
        top: 20px;
    }

    .balloon2::after {
        left: -12px;
        top: 20px;
    }

    .induction .flex {
        flex-direction: column;
    }

    .substitute {
        width: 100%;
        height: 100%;
        justify-content: space-between;
        padding: 1rem 0.5rem;
    }

    .substitute a {
        width: 43%;
    }

    .substitute .balloon2 {
        width: 57%;
        line-height: 1.6;
    }

    .substitute img {
        width: 10rem;
        height: 10rem;
    }

    .substitute .more_btn {
        font-size: 1.4rem;
        padding: 0.5rem;
    }

    /* induction 誘導 */
    /* お気に入り機能 ここから */
    .bkm_frame{
        margin-bottom: 1rem;
    }
    /* お気に入り機能 ここまで */
    /* 類似・種類別紹介 ここから */
    #cate-type li {
        width: 80%;
    }
    /* 類似・種類別紹介 ここまで */
    /* 1番人気表記 ここから */
    .products.push_products_1 label:before{
        right: 5%;
        font-size: 70%;
        bottom: -5px;
    }
    /* 1番人気表記 ここまで */
    /* 24/04/04 追加 */
    #ed-comparison {
        overflow: scroll;
    }
    #ed-comparison table {
        width: 95%;
        min-width: 800px;
        border-collapse: collapse;
    }
    #ed-comparison #product-img img {
        max-height: 95px;
    }
    #ed-comparison table th {
        font-size: 16px;
    }
    #ed-comparison table th img.icon {
        max-height: 50px;
    }
    #ed-comparison tbody th {
        padding: 10px 4px;
    }
    #ed-comparison table td {
        font-size: 15px;
    }
    #ed-comparison tbody th span {
        font-size: 13px;
    }
    #ed-comparison #pick th {
        padding: 10px 4px;
    }
    #recommend-block ul li {
        padding: 0 0 0 30px;
    }
    #recommend-block ul {
        padding: 5px 10px;
    }
    #recommend-block ul li::after {
        left: 5px;
    }
    /* 24/04/04 追加 */
    /* 24/04/16 追加 */
    .thumbnail{
        display: none!important;
    }
    .product-container ul.slick-dots{
        display: block!important;
        margin-top: 0;
        line-height:1;
    }
    .product-container{
        margin-bottom:0;
    }
    .slick-dots li.slick-active button:before{
        color:var(--main-color);
    }
    /* 24/04/16 追加 */
    /* 24/04/29 高評価・低評価 */
    .review_good .r_excerpt_t,
    .review_bad .r_excerpt_t{
        margin-bottom: 1rem;
    }
    /* 24/04/29 高評価・低評価 */
    /* 24/05/10 */
    .product_symptoms {
        overflow: scroll;
        flex-wrap: nowrap;
    }
    .product_symptoms p {
        border: 1px solid var(--main-color);
        border-radius: 3rem;
        background-color: #fefefe;
        min-width: fit-content;
    }
    .product_symptoms li a, .product_symptoms p a {
        font-size: 1.2rem;
        padding: 0.1rem 0.5rem;
        font-weight: normal;
        color: var(--main-color);
    }
    /* 24/05/10 */
    /*アナウンス*/
    .shipping_announce {
        width: 100%;
        padding: 0.5rem 0;
        margin: 0 auto 0.5rem auto;
    }

    .shipping_announce p a {
        font-size: 1.4rem;
    }
    /*アナウンス*/

@media screen and (min-width:480px) and (max-width:820px) {

    /*カート*/
    .product .product_area th {
        background: linear-gradient(to bottom, #e2e2e2, #efefef);
    }

    .product .product_area td {
        text-align: center;
        font-size: 1.6rem;
        padding: 1rem;
    }

    .product .product_area_title td {
        font-size: 1.6rem;
    }

    .product .product_area select {
        font-size: 1.6rem;
    }

    .product_area .quantity-area {
        width: 7%;
    }

    .product_area .order-area {
        width: 20%;
    }

    .product_area .capacity {
        width: 18%;
    }

    .product_area .price-area {
        flex-wrap: nowrap;
    }

    .product_area .price-area .listprice {
        width: 35%;
        text-align: center;
    }

    .product_area .price-area .sellingprice {
        width: 60%;
    }

    .product_area .price-area b.blue {
        display: contents;
        font-size: 1.2rem;
    }

    .product_area .price-area span {
        display: block;
    }

    .selModal .selModalInner {
        width: 80%;
        top: 30%;
    }

    /*カート*/
    /* induction 誘導 */
    .induction .flex {}

    .substitute {
        align-items: center;
    }

    .substitute a {
        width: 30%;
    }

    .substitute .balloon2 {
        width: 70%;
        height: 100%;
    }

    .substitute .more_btn {
        font-size: 1.6rem;
    }

    .substitute img {
        width: 13rem;
        width: 13rem;
    }

    /* induction 誘導 */
}
@media screen and (max-width: 560px)  {
    #effect-detail.contents-box .induction-block {
        width: 95%;
    }
    #effect-detail.contents-box .induction-block img {
        height: 120px;
    }
    .induction-text {
        max-width: calc(100% - 120px);
    }
    .text-part {
        padding-right: 12px;
        line-height: 1.2;
    }
    .induction-text p {
        font-size: 12px;
        font-weight: 350;
        padding-left: 10px;
    }
    .text-part span {
        font-size: 1.5rem;
        padding-left: 30px;
    }
    .induction-block .label {
        font-size: 13px;
        width: 40px;
        left: 98px;
    }
    .text-part .price {
        font-size: 1.5rem;
    }
}
@media screen and (max-width: 480px) {
    section {
        font-size: 1.4rem;
        line-height: 2;
    }
    .merit li {
        text-indent: -1.4rem;
        padding-left: 1.4rem;
        font-size: 1.4rem;
    }
    .accordion-open {
        padding: 5px 80px 5px 10px;
    }
    img.quality-img {
        display: none;
    }

    img.quality-img-sp {
        width: 100%;
        height: 100%;
        display: block;
    }

    #effect-detail.contents-box .down {
        margin: 10px 0;
        flex-direction: column;
    }

    #effect-detail.contents-box .down img {
        width: 98%;
    }

    /*目次*/
    #tableOfContents {
        padding: 10px 20px;
    }

    #tableOfContents ul .mokuT {
        margin-bottom: 5px;
        font-size: 16px;
        text-align: left;
        margin-left: 0;
        display: block;
    }

    #tableOfContents ul .mokuT span {
        display: none;
    }

    #tableOfContents ul {
        flex-direction: column;
    }

    #tableOfContents ul li {
        width: calc(100% / 1);
        margin-bottom: 5PX;
        border: none;
        border-radius: 0;
        margin-right: 0;
        background: #FFF;
        margin-left: 10px;
        display: flex;
        align-items: center;
    }

    #tableOfContents a {
        text-align: left;
        width: 100%;
        height: auto;
        color: #0af;
        padding: 2px 5px;
        text-decoration: underline;
        text-underline-offset: 5px;
    }

    #tableOfContents li span {
        display: block;
        font-weight: bold;
    }

    /*鑑定書ボタン*/
    .Btn-container {
        flex-direction: column;
    }

    #tableOfContents .appBtn {
        width: 100%;
        margin-bottom: 10px;
    }

    #effect-detail.contents-box center a {
        display: block;
        margin-bottom: 1rem;
        font-size: 1.4rem;
        padding: 0.5rem 1rem;
        flex-basis: auto;
        margin: 0 0 1rem 0;
    }

    /* カートVIPver ここから */
    .product .product_area2 {
        margin-bottom: 1rem;
    }

    .product .product_area2 .obi {
        padding: 0.5rem 1rem;
    }

    .products {
        border-bottom: 1px solid #ccc;
        padding: 0.5rem 0;
    }

    .products:hover {
        background-color: inherit;
    }

    .products.chk_products {
        background-color: rgba(125, 255, 255, 0.5);
    }

    .products.push_products_1 label:before {
        right: 1.5rem;
        font-size: 80%;
        bottom: -0.5rem;
    }

    .product .product_area2 label {
        width: 100%;
    }

    .product .product_area2 label span {
        width: auto;
    }
    .product .product_area2 label span.amount {
        font-size: 1.4rem;
    }

    .product .product_area2 input[type="radio"i] {
        margin-right: 0.5rem;
    }

    .product .product_area2 .sellingprice {
        font-size: 1.8rem;
    }

    .product .product_area2 .perunit {
        font-size: 1.1rem;
    }
    .product .product_area2 .listprice {
        font-size: 1rem;
    }

    .product .product_area2 a#cart_btn {
        margin: 1rem auto 0 auto;
        padding: 1rem 0;
        font-size: 1.8rem;
        border-radius: 0.5rem;
        width: 100%;
        display: block;
    }

    .product .product_area2 a#cart_btn img {
        width: 2rem;
        height: 2rem;
        vertical-align: sub;
        margin-right: 1rem;
    }

    .product .product_area2 .quantity_table_right span {
        padding: 0.5rem;
    }

    .product .product_area2 .quantity_table_right span img {
        width: 1.6rem;
        height: 1.6rem;
    }

    .product .product_area2 .quantity_table_left {
        font-size: 1.8rem;
    }

    .product .product_area2 .quantity_table_left span {
        font-weight: bold;
    }

    /* カートVIPver ここまで */
    /* 効果・詳細内のテーブル ここから */
    table.effect-detail-table {
        width: 100%;
    }

    .scroll-table {
        overflow: auto;
        width: 100%;
        margin: auto;
        height: 100%;
        word-break: break-all;
        word-wrap: break-all;
    }

    table.effect-detail-table.t-3,
    table.effect-detail-table.t-4,
    table.effect-detail-table.t-5,
    table.effect-detail-table.t-6,
    table.effect-detail-table.t-7,
    table.effect-detail-table.t-8,
    table.effect-detail-table.t-9,
    table.effect-detail-table.t-10 {
        table-layout: fixed;
        display: block;
    }

    table.effect-detail-table.t-3 {
        width: 540px;
    }

    table.effect-detail-table.t-4 {
        width: 760px;
    }

    table.effect-detail-table.t-5 {
        width: 980px;
    }

    table.effect-detail-table.t-6 {
        width: 1200px;
    }

    table.effect-detail-table.t-7 {
        width: 1420px;
    }

    table.effect-detail-table.t-8 {
        width: 1640px;
    }

    table.effect-detail-table.t-9 {
        width: 1860px;
    }

    table.effect-detail-table.t-10 {
        width: 2080px;
    }

    table.effect-detail-table.t-3 tbody,
    table.effect-detail-table.t-4 tbody,
    table.effect-detail-table.t-5 tbody,
    table.effect-detail-table.t-6 tbody,
    table.effect-detail-table.t-7 tbody,
    table.effect-detail-table.t-8 tbody,
    table.effect-detail-table.t-9 tbody,
    table.effect-detail-table.t-10 tbody {
        height: 100%;
        width: 100%;
    }

    table.effect-detail-table.t-3 td,
    table.effect-detail-table.t-4 td,
    table.effect-detail-table.t-5 td,
    table.effect-detail-table.t-6 td,
    table.effect-detail-table.t-7 td,
    table.effect-detail-table.t-8 td,
    table.effect-detail-table.t-9 td,
    table.effect-detail-table.t-10 td,
    table.effect-detail-table.t-3 th,
    table.effect-detail-table.t-4 th,
    table.effect-detail-table.t-5 th,
    table.effect-detail-table.t-6 th,
    table.effect-detail-table.t-7 th,
    table.effect-detail-table.t-8 th,
    table.effect-detail-table.t-9 th,
    table.effect-detail-table.t-10 th {
        overflow-wrap: break-word;
        width: 220px;
    }

    table.effect-detail-table.t-3 th:first-child,
    table.effect-detail-table.t-4 th:first-child,
    table.effect-detail-table.t-5 th:first-child,
    table.effect-detail-table.t-6 th:first-child,
    table.effect-detail-table.t-7 th:first-child,
    table.effect-detail-table.t-8 th:first-child,
    table.effect-detail-table.t-9 th:first-child,
    table.effect-detail-table.t-10 th:first-child {
        position: sticky;
        top: 0;
        left: 0;
        border-left: none;
        border-right: none;
        width: 100px;
    }

    table.effect-detail-table.t-3 th:first-child::before,
    table.effect-detail-table.t-4 th:first-child::before,
    table.effect-detail-table.t-5 th:first-child::before,
    table.effect-detail-table.t-6 th:first-child::before,
    table.effect-detail-table.t-7 th:first-child::before,
    table.effect-detail-table.t-8 th:first-child::before,
    table.effect-detail-table.t-9 th:first-child::before,
    table.effect-detail-table.t-10 th:first-child::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-left: 1px solid #aaa;
        z-index: -1;
    }

    table.effect-detail-table.t-3 th:first-child::after,
    table.effect-detail-table.t-4 th:first-child::after,
    table.effect-detail-table.t-5 th:first-child::after,
    table.effect-detail-table.t-6 th:first-child::after,
    table.effect-detail-table.t-7 th:first-child::after,
    table.effect-detail-table.t-8 th:first-child::after,
    table.effect-detail-table.t-9 th:first-child::after,
    table.effect-detail-table.t-10 th:first-child::after {
        content: "";
        position: absolute;
        top: 0;
        right: -1px;
        width: 100%;
        height: 100%;
        border-right: 1px solid #aaa;
        z-index: -1;
    }

    table.effect-detail-table .each-btn-area {
        width: 95%;
    }

    /* コラム画像 */
    #effect-detail table.effect-detail-table img {
        display: block;
        margin: auto;
        width: 150px;
        height: 150px;
    }

    /* コラム画像 */

    /* 効果・詳細内のテーブル ここまで */
    #effect-detail.contents-box .appraisal img{
        width: 100%;
        height: 100%;
        margin: auto;
    }
    /* 商品ページ画像切り替え ここから */
    #effect-detail .product-img-switch img.pc{
        display: none;
    }
    #effect-detail .product-img-switch img.sp{
        display: block;
        width: 100%;
        height: 100%;
        margin: 1rem auto;
    }
    /* 商品ページ画像切り替え ここまで */
    
    /* レビュー・画像 ここから */
    .review_img_wrap {
        margin: 1rem 0;
    }
    .review_img {
        min-width: 150px;
        width: 150px;
    }
    .review_img img {
        width: 150px;
        height: 150px;
    }
    .modal-002__content {
        height: auto;
    }
    /* レビュー・画像 ここまで */
    /* PCスマホ切り替え ここから */
    .products.pc{
        display: none;
    }

    .products.sp{
        display: flex;
    }
    span.sp_price{
        width: 100%!important;
        display: flex;
        justify-content: space-between;
    }
    /* PCスマホ切り替え ここまで */
    /* 24/04/29 高評価・低評価 */
    .review_excerpt {
        flex-direction: column;
    }
    .review_good,
    .review_bad {
        width: 100%;
    }
    .review_good {
        margin-bottom: 1rem;
    }
    #effect-detail.contents-box .review_excerpt .respondent img{
        margin: 0;
    }
    .review_excerpt .r_text{
        height: auto;
        max-height: 25rem;
    }
    /* 24/04/29 高評価・低評価 */
    /* 追加 */
    #effect-detail.contents-box .related a.r-item{
        /*width: calc((100% - 20px) / 2);*/
        width: 260px;
        min-width: 260px;
        font-size: 1.2rem;
    }
    /* 25/03/05 */
    /* 25/06/17 */
    .merit_comp {
        flex-direction: column;
    }
    .merit_comp .merit_box,
    .merit_comp .demerit_box {
        width: 100%;
        margin: 0.5em 0;
    }
    /* 25/06/17 */
}
