/*
Theme Name: ケイレックテーマ
Theme URI: https://bluefog-solution.com/
Template: storefront
Author: ブルーフォグ・ソリューション株式会社
Author URI: https://bluefog-solution.com/
Description: ケイレック様ホームページ・オンラインショップのオリジナルテーマ
Version: 7
Updated: 2023-09-19 13:42:00

*/

/* 共通 */
html {
    margin-top: 0 !important;
    color: #252525;
    letter-spacing: 0.15rem;
}

h1 {
    margin: 0;
}

input[type=checkbox]+label {
    margin: 0;
}

#content {
    overflow: hidden;
}

body {
    /* font-family: "ryo-gothic-plusn", sans-serif; */
    font-family: "yu-gothic-pr6n", sans-serif;
    color: #252525;
    letter-spacing: 0.15rem;
}

body, body button, body input, body textarea {
    /* font-family: "ryo-gothic-plusn", sans-serif !important; */
    /* font-family: "yu-gothic-pr6n", sans-serif!important; */
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
}

.home.blog .site-header, .home.page:not(.page-template-template-homepage) .site-header, .home.post-type-archive-product .site-header {
    margin-bottom: 0;
}

ul, ol {
    margin: 0;
}

.site-footer a {
    text-decoration: none;
}

ul {
    list-style: none;
}

img {
    width: 100%;
    border-radius: 0;
}

.sec {
    /* padding: 80px 0; */
    padding: 50px 20px;
    position: relative;
}

.width-max {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    /* padding: 0px 20px 80px 20px; */
    padding: 50px 20px;
}

p {
    margin: 0;
}

.pc, .tb, .sp-none {
    display: none;
}

.sp {
    display: block;
}

a:focus, button:focus, .button.alt:focus, input:focus, textarea:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus {
    outline-color: transparent;
}

a:focus, input:focus, textarea:focus, button:focus {
    outline: none;
}

.site-main {
    margin-bottom: 0;
}

a {
    transition: 0.5s;
}

a:hover {
    opacity: 0.8;
    transition: 0.5s;
}

.woocommerce-breadcrumb a:first-of-type::before {
    display: none;
}

.woocommerce-breadcrumb a {
    text-decoration: none;
}

body ::placeholder, input[type=search]::placeholder {
    color: #c2c3c9;
}

/* 見出し */
.midasi-l {
    font-size: 26px;
    font-weight: 600;
    letter-spacing: 0.2rem;
    margin-bottom: 0px;

    /* display: flex; */
    /* flex-direction: row-reverse; */
    /* justify-content: space-between; */
    /* align-items: baseline; */
    margin-bottom: 16px;
    position: relative;
}

.midasi-l-title {
    /* font-family: "ryo-gothic-plusn", sans-serif; */
    /* font-family: "yu-gothic-pr6n", sans-serif; */
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    margin-bottom: 50px;
    margin-top: 0;
    margin-bottom: 23px;

    font-size: 27px;
    font-weight: 600;
    letter-spacing: 0.2rem;
    position: relative;
    z-index: 1;
}

.midasi-l-sub {
    /* color: #f2f2f2; */
    /* color: #eeeff3; */
    color: #e4e5ec;
    font-size: 53px;
    white-space: nowrap;
    line-height: 1;
    letter-spacing: 0;
    position: absolute;
    top: -36px;
    left: -20px;
    font-family: "utopia-std-display", serif;
    font-weight: 700;
}

/* 矢印 */
.cp_arrows {
    position: absolute;
    right: 5%;
}

.cp_arrows span::after {
    position: absolute;
    top: 0.4em;
    left: 0;
    width: 1.5rem;
    height: 1.5rem;
    content: '';
    border-radius: 50%;
    /* background: #000; */
}

.cp_arrows [class*='cp_arrow'] {
    position: relative;
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: middle;
    color: #ffffff;
    z-index: 99;
}

/* .cp_arrows [class*='cp_arrow']:after,
.cp_arrows [class*='cp_arrow']:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: '';
} */

.cp_arrows [class*='cp_arrow'] {
    top: 0.2em;
    left: 0.65em;
    width: 11px;
    height: 11px;
    /* margin: 0.8em; */
    border-width: 3px 3px 0 0;
    border-style: solid;
}

.cp_arrows [class*='cp_arrow']:before,
.cp_arrows [class*='cp_arrow']:after {
    position: absolute;
}

.cp_arrows [class*='cp_arrow']:before {
    top: -0.5px;
    right: 0;
    width: 15px;
    height: 1px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-box-shadow: inset 0 0 0 32px;
    box-shadow: inset 0 0 0 24px;
}

.cp_arrows .cp_arrow_left {
    top: -0.05em;
    left: -0.55em;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.cp_arrows .cp_arrow_right {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    color: #ffffff;
}

.cp_arrows .cp_arrow_up {
    top: -0.1em;
    left: -0.35em;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.cp_arrows .cp_arrow_down {
    top: 0.1em;
    left: -0.4em;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.cp_arrows .cp_arrow_left_up {
    top: -0.1em;
    left: -0.5em;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.cp_arrows .cp_arrow_left_down {
    left: -0.5em;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.cp_arrows .cp_arrow_right_up {
    top: -0.1em;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

.cp_arrows .cp_arrow_right_down {
    top: 0.1em;
    left: -0.35em;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.arrows_bg {
    background-color: #000000;
    width: 35px;
    height: 35px;
    border-radius: 100px;
    position: relative;
}

/* くの字矢印 */
.arrow {
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}

.arrow::before,
.arrow::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

/* スライド内矢印 */
.slide-arrow {
    position: absolute;
    top: calc(50% - 5.5px);
    right: 0.95em;
    line-height: 0;
}

.slide-arrow.cp_arrows [class*='cp_arrow'] {
    top: 0;
    left: 0;
}

/* TOPへ戻るボタン */
.page_top_btn {
    right: 20px;
    bottom: 70px;
    z-index: 998;
}

@media screen and (max-width: 782px) {
    html {
        margin-top: 0px !important;
    }
}

@media (min-width: 480px) {
    .tb-none {
        display: none;
    }

    .tb {
        display: block;
    }

    .midasi-l-title {
        font-size: 27px;
    }

    .midasi-l-sub {
        right: 7%;
    }
}

@media (min-width: 768px) {
    .pc {
        display: block;
    }

    .pc-none {
        display: none;
    }

    .width-max {
        /* padding: 0px 20px 120px 20px; */
        padding: 70px 7%;
    }

    .midasi-l-title {
        font-size: min(35px, 3vw);
        /* font-size: min(30px, 2.4vw); */
        margin-bottom: 50px;
        margin-top: 0;
        margin-bottom: 0;
    }

    .midasi-l-sub {
        font-size: 70px;
        top: -46px;
    }

    .slide-arrow {
        right: 5%;
    }

    .page_top_btn {
        bottom: 20px;
    }
}

@media (min-width: 1100px) {
    .midasi-l-sub {
        /* position: initial; */
    }

    .midasi-l-title {
        /* font-size: min(30px, 2.4vw); */
        font-size: min(32px, 3vw);
    }
}

/* ヘッダー */
.site-header {
    position: fixed !important;
    top: 0;
    width: 100%;
}

.header-logo {
    max-width: 130px;
    /* margin: 3% auto 0; */
    transition: all 0.3s;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s;
    padding: 10px;
    background-color: #fff;
}

.site-header::before, .site-header::after {
    display: none;
}

.site-header {
    padding: 0px;
    transition: all 0.3s;
}

.header-icon-wrap {
    display: flex;
}

.header-link-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-right: 7px;
}

.header-link {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.header-icon {
    flex-grow: 1;
}

.my-page-icon {
    width: 21px;
    margin: 0 auto;
}

.cart-icon {
    width: 18px;
    margin: 0 auto;
}

.header-logo-wrap {
    display: block;
    width: 170px;
}

.my-page-link {
    /* margin-right: 14px; */
}

.header-icon-text {
    font-size: 12px;
    letter-spacing: 0.05rem;
    margin-top: 0.4rem;
    line-height: 1;
    font-weight: 600;
    color: #616161;
}

.header-icon-text-menu {
    flex-grow: 1;
    margin-top: 26px;
}

.site-title {
    font-size: 10px;
    transform: scale(0.9);
    text-align: center;
    margin-top: 3px;
    margin-bottom: 0;
    color: #006428;
    transition: all 0.3s;
}

.top-news {
    text-align: center;
    /* background-color: #cc1705; */
    background-color: #ff0023;
    padding: 6px 0.5rem;
    margin: 0 calc(50% - 50vw) 0;
    width: 100vw;
}

.top-news-text {
    color: #fff;
    font-size: 14px;
    margin: 0;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.top-news-text span {
    font-size: 85%;
    margin-left: 0.5rem;
    color: #fff;
}

.pc-menu {
    display: none;
}

.obi-wrap {
    padding: 6px 20px;
    background-color: #EDEDEF;
    font-size: 13px;
    display: flex;
    align-items: flex-start;
    /*display: none;*/
}

.obi-img-wrap {
    margin-right: 0.5rem;
    margin-top: 2px;
    height: auto;
}

.obi-img {
    width: 16px;
    max-width: none;
}

.shop-link {
    align-items: center;
    display: flex;
    padding: 7px 14px;
    margin-right: 10px;
    border: solid 1px #999;
}
.shop-link-amazon {
    background-color: #333E48;
}
.shop-link-rakuten {
    background-color: #bf0000;
}
.shop-link-yahoo {
    background-color: #ff0132;
}
.shop-name {
    letter-spacing: 0;
    line-height: 1;
    font-size: 13px;
    color: #616161;
}

.shop-icon-wrap {
    width: 60px;
}
.shop-wrap {
    display: flex;
}

.header-right-wrap {
    display: flex;
    align-items: end;
}
/* バナー修正 */
.shop-wrap-sp.pc-none {
    display: flex;
    margin: 5px 10px 14px;
    justify-content: center;
}
.shop-wrap-sp.pc-none .shop-link {
    /* width: 33%; */
    width: 20%;
    padding: 6px 14px;
    max-width: 120px;
}
.shop-wrap-sp.pc-none .shop-link-yahoo {
    margin-right: 0;
}
.shop-wrap-sp.pc-none .shop-icon-wrap {
    margin: 0 auto;
    width: 45px;
}
.menu-content ul li .shop-icon-wrap {
    width: 90px;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .obi-wrap {
        justify-content: center;
    }
}

@media (min-width: 1100px) {
    .header-inner {
        display: none;
        position: relative;
        margin-bottom: 20px;
    }

    .hamburger-menu {
        display: none;
    }

    .header-logo {
        margin: 0 auto;
    }

    .header-icon-wrap {
        position: relative;
        display: flex;
        margin-right: 20px;
        /* top: -20px;
        right: -40px; */
        /* top: 0;
        right: 0; */
    }

    #menu-main-menu {
        display: flex;
        justify-content: center;
    }

    #menu-main-menu .menu-item {
        font-size: 15px;
        margin-right: 3.9%;
        /* font-weight: 600; */
    }

    #menu-main-menu .menu-item:last-of-type {
        margin-right: 0;
    }

    .top-news {
        margin: 0 calc(50% - 50vw) 0;
        width: 100vw;
        padding: 9px 0.5rem;
        transition: all 0.3s;
    }

    .top-news-text {
        font-size: 17px;
    }

    .site-header {
        padding: 0px;
    }

    .pc-menu {
        /* display: flex;
        justify-content: space-between;
        align-items: center; */
        /* padding: 20px; */
        transition: all 0.3s;
        display: block;
		max-width: 1200px;
		margin: 0 auto;
    }

    .pc-menu .header-logo-wrap {
        margin: 0;
        max-width: none;
        width: 185px;
    }

    .pc-menu .header-logo {
        max-width: 185px;
        /* margin-bottom: 10px; */
    }

    .pc-menu .menu-main-menu-container {
        /*width: 80%;*/
        margin: 0 auto 15px;
    }

    .pc-menu-top {
        display: flex;
        align-items: end;
        justify-content: space-between;
        margin-bottom: 27px;
    }

    .header-link {
        /* background-color: #828283; */
        /* background: #888992; */
        height: auto;
        width: auto;
        position: static;
        display: flex;
        align-items: center;
        /* padding: 7px 18px; */
        margin-right: 1rem;
    }
    .header-link:last-of-type {
        margin: 0;
    }
    .my-page-link {
        /* background-color: #252525; */
    }

    .my-page-icon, .cart-icon {
        /* filter: invert(100%); */
    }
    .cart-icon {
        width: 20px;
    }
    .my-page-icon {
        width: 23px;
    }
    .header-icon {
        margin-right: 0.5rem;
    }

    .header-icon-text {
        /* color: #fff; */
        margin-top: 0;
        font-size: 13px;
    }

    .pc-menu .header-link-tel {
        width: auto;
        max-width: none;
        min-width: auto;
        min-height: auto;
        margin: 0 35px;
    }

    .pc-menu .contact-link-tel img {
        width: 16px;
    }

    .pc-menu .contact-link-tel .contact-link-text {
        font-size: 21px;
        line-height: 0.58;
        letter-spacing: 0.05rem;
    }

    .pc-menu .contact-link-tel img {
        margin-right: 0.4rem;
        margin-bottom: -11px;
    }

    .logo-box {
        margin-left: 20px;
    }

    #menu-main-menu .menu-item>a {
        vertical-align: middle;
    }

    #menu-main-menu .menu-item>a:before {
        content: "";
        display: inline-block;
        margin-right: 0.5rem;
        vertical-align: middle;
    }

    #menu-main-menu .icon-messege>a:before {
        content: "";
        height: 20px;
        width: 20px;
        background: url(./img/icon-message.svg) no-repeat;
    }

    #menu-main-menu .icon-product>a:before {
        content: "";
        height: 20px;
        width: 11px;
        background: url(./img/icon-product.svg) no-repeat;
    }

    #menu-main-menu .icon-store>a:before {
        content: "";
        height: 20px;
        width: 20px;
        background: url(./img/icon-store.svg) no-repeat;
    }

    #menu-main-menu .icon-company>a:before {
        content: "";
        height: 20px;
        width: 20px;
        background: url(./img/icon-company.svg) no-repeat;
    }

    #menu-main-menu .icon-news>a:before {
        content: "";
        height: 18px;
        width: 16px;
        background: url(./img/icon-news.svg) no-repeat;
    }

    #menu-main-menu .icon-guide>a:before {
        content: "";
        height: 20px;
        width: 20px;
        background: url(./img/icon-guide.svg) no-repeat;
    }

    .obi-wrap {
        margin-bottom: 0.7rem;
        display: flex;
    }
    .shop-wrap-sp.pc-none {
        display: none;
    }
}

/* スクロール */
@media (min-width: 768px) {
    .is-animation .pc-menu {
        /* padding: 10px 20px; */
    }

    .is-animation .header-inner {
        /* margin-bottom: 17px; */
    }

    .is-animation .header-logo {
        /* max-width: 80px; */
    }

    .is-animation .top-news {
        /* margin-top: 116px; */
    }

    .is-animation .site-title {
        transform: scale(0.6);
    }
}

@media (max-width: 1099px) {
	.obi-text .pc-none{
		display: inline;
	}
	.is-animation .obi-text .anime-none{
		display: none;
	}
}

/* ハンバーガーメニュー */
.menu-btn {
    /* position: fixed; */
    /* top: 10px; */
    /* right: 10px; */
    /* position: relative; */
    display: flex;
    /* height: 40px; */
    /* width: 40px; */
    /* justify-content: center; */
    /* align-items: center; */
    z-index: 90;
    /* background-color: #3584bb; */
    position: absolute;
    flex-grow: 1;
    top: 10px;
    right: 0;
    left: 0;
    margin: 0 auto !important;
    width: 25px;
    height: 25px;
}

.menu-content>ul {
    height: calc(100% - 175px);
    /* height: 100%; */
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 50px;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.menu-content>ul::-webkit-scrollbar {
    display: none;
}

.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 1px;
    width: 25px;
    border-radius: 3px;
    background-color: #000000;
    position: absolute;
    transition: all 0.5s;
}

.menu-btn span:before {
    bottom: 8px;
}

.menu-btn span:after {
    top: 8px;
}

#menu-btn-check:checked~.menu-btn span {
    background-color: rgba(255, 255, 255, 0);
    /*メニューオープン時は真ん中の線を透明にする*/
}

#menu-btn-check:checked~.menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}

#menu-btn-check:checked~.menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}

#menu-btn-check {
    display: none;
}

.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    /* top: -100vh; */
    top: 113px;
    /*leftの値を変更してメニューを画面外へ*/
    z-index: -999;
    /* background-color: #006428; */
    background: #616161;
    transition: all 1s;
    /*アニメーション設定*/
    /*margin-top: 55px;*/
    transition: all 0.3s;
    opacity: 0;
    transition: 0.5s;
    pointer-events: none;
}

#menu-btn-check:checked~.menu-content {
    /* top: 62px; */
    /* top: 113px; */
    top: 105px;
    z-index: 999;
    opacity: 1;
    /*メニューを画面内へ*/
    transition: 0.5s;
    pointer-events: auto;
}

/**ログイン中**/
.admin-bar #menu-btn-check:checked~.menu-content {
    top: 94px;
    /*62＋32px*/
}

@media (max-width: 782px) {
    .admin-bar #menu-btn-check:checked~.menu-content {
        /* top: 108px; */
        top: 113px;
        /*62＋46px*/
    }
}

.menu-content ul {
    padding: 10px 20px 0;
}

.menu-content ul li {
    border-bottom: solid 1px #848484;
    list-style: none;
}

.menu-content ul li:last-of-type {
    border-bottom: none;
}

.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 16px;
    box-sizing: border-box;
    color: #ffffff;
    text-decoration: none;
    padding: 17px 15px 17px 0;
    position: relative;
    text-align: left;
    font-weight: 600;
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 25px;
}

.menu-content ul li .shop-wrap a::before {
    display: none;
}

.site-header .menu-content ul.menu li.current-menu-item>a {
    color: #fff;
}

.hamburger-menu {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.menu-content ul li .shop-link {
    background-color: #fff;
    padding: 10px;
    display: flex;
    justify-content: center;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
    height: auto;
    margin: 0 0 10px;
}

.menu-content ul li .shop-wrap {
    margin-top: 30px;
    display: block;
}
.menu-content ul li .shop-name {
    line-height: 1.2;
    font-size: 16px;
    letter-spacing: 0.1rem;
}
.menu-content ul li .shop-icon-wrap {
    width: 90px;
}

/* 固定メニュー */
.under-menu-box {
    /* background-color: #006428; */
    /* background-color: #007042; */
    background-color: #616161;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    display: flex;
    position: fixed;
    align-items: baseline;
    justify-content: center;
    text-align: center;
    bottom: 0;
    left: calc(50% - 100vw/2);
    z-index: 999;
}

.under-menu-list {
    width: 25%;
    margin: 8px;
}

.under-menu-list img {
    width: 32%;
    max-width: 17px;
    margin: 0 auto 7px;
}

.under-menu-name {
    color: #fff;
    font-weight: 500;
    letter-spacing: 0.1rem;
    font-size: 11px;
    line-height: 1;
}

@media (min-width: 768px) {
    .tb-none {
        display: none;
    }
}

/* 杖の悩みにお答えします！ */
.sec-contact {
    /* background-color: #006428; */
    /* background: #007042; */
    background-color: #7A7A7A;
    color: #fff;
    /* padding: 50px 20px 65px; */
    padding-bottom: 70px;
}

.midasi-contact .midasi-l-title {
    color: #fff;
    text-align: center;
}

.midasi-contact .midasi-l-sub {
    color: #ededed1a;
    position: absolute;
    /* top: 28px; */
    right: 0px;
    left: 0;
    margin: 0 auto;
    text-align: center;
}

.contact-link {
    background-color: #fff;
    /* border-radius: 100px; */
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    /* padding: 25px; */
    min-height: 75px;
}

.contact-link img {
    width: 50px;
    margin-right: 17px;
    margin-left: -50px;
}

.contact-link-text {
    text-align: center;
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: 0.1rem;
    font-weight: 600;
    color: #252525;
}

.contact-link-text span {
    /* font-weight: 900;
    font-size: 130%; */
}

.contact-wrap {
    margin-top: 40px;
}

.contact-link .arrows_bg {
    /* width: 30px;
    height: 30px; */
}

.contact-link .cp_arrows [class*='cp_arrow'] {
    /* top: 0em;
    left: 1.05em; */
}

.contact-link-tel .cp_arrows [class*='cp_arrow'] {
    left: 0.35em;
    /* top: 4px; */
}

.contact-link-tel {
    font-size: 30px;
    letter-spacing: 0rem;
    font-weight: 800;
    line-height: 0.7;
}

.contact-link-tel span {
    letter-spacing: 0.05rem;
    font-size: 50%;
    display: block;
    line-height: 0;
    font-weight: 500;
}

.contact-link-tel img {
    width: 26px;
    position: static;
    display: inline;
    margin-left: -1rem;
    margin-right: 0.5rem;
    margin-bottom: -14px;
}

.contact-link-tel .contact-link-text {
    font-size: 30px;
    letter-spacing: 0rem;
    font-weight: normal;
    line-height: 0.7;
    font-family: arial;
}

.contact-link-line {
    margin-bottom: 16px;
}

.contact-text {
    font-size: 16px;
    color: #fff;
}

.sec-contact .cp_arrows .cp_arrow_right {
    color: #8b8b8b;
}

.sec-contact .cp_arrows [class*='cp_arrow'] {
    border-width: 2px 2px 0 0;
}

.contact-link:hover {
    opacity: 1;
}

@media (min-width: 768px) {
    .contact-wrap {
        display: flex;
        margin: 40px auto 0;
        justify-content: center;
    }

    .contact-link {
        width: 49%;
        max-width: 420px;
        min-width: 360px;
        min-height: 90px;
    }

    .contact-link-line {
        margin-bottom: 0;
        margin-right: 4%;
    }

    .sec-contact .midasi-l {
        text-align: center;
    }

    .sec-contact {
        /* padding: 0px 20px 70px 20px; */
        text-align: center;
    }

    .sec-contact .sec-inner {
        justify-content: center;
    }

    .contact-text {
        font-size: 18px;
    }

    .contact-link .cp_arrows [class*='cp_arrow'] {
        left: 0;
    }

    .contact-link-tel .cp_arrows [class*='cp_arrow'] {
        left: 0;
    }

    .sec-contact .sec-inner {
        display: block;
    }

    .contact-link-text {
        font-size: 21px;
    }

    .contact-link-tel .contact-link-text {
        font-size: 33px;
    }

    .midasi-contact .midasi-l-title br {
        display: none;
    }
}

/* LINEでご相談 */
@media (min-width: 480px) {
    .line-fix-icon-wrap {
        background-color: #4cc764;
        width: 55px;
        padding: 15px 0;
        border-radius: 4px 0 0 4px;
        transition: 0.5s;
    }

    .line-fix-btn:hover {
        opacity: 1;
    }

    .line-fix-btn:hover .line-fix-icon-wrap {
        background-color: #252525;
        transition: 0.5s;
    }

    .line-fix-icon {
        width: 26px;
        margin: 0 auto 0.5rem;
    }

    .line-fix-text {
        text-orientation: upright;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        margin: 0 auto;
        color: #fff;
        font-weight: 600;
        letter-spacing: 0.3rem;
    }

    .line-fix-btn {
        position: fixed;
        top: 170px;
        right: 0;
        z-index: 100;
        display: block;
    }
}

@media (min-width: 1100px) {
    .line-fix-btn {
        top: 230px;
    }
}

/* SNSアイコン */
.sns-wrap {
    border-top: solid 1px #B7B7B7;
    margin-top: 25px;
    margin-bottom: 40px;
    padding: 10px 0;
    width: 100%;
}

.sns-link img {
    height: 27px;
    width: auto;
    max-width: 37px;
}

.sns-link-x img {
    height: 25px;
}

.sns-icon-wrap {
    display: flex;
    align-items: center;
    padding: 20px;
    justify-content: center;
}

.sns-title {
    color: #616161;
    font-size: 15px;
    letter-spacing: 0.1rem;
    text-align: center;
    border-bottom: solid 1px #B7B7B7;
    padding-bottom: 10px;
    line-height: 1.3;
}

.sns-title-deco {
    font-family: "utopia-std-display", serif;
    color: #BBBBBC;
    font-size: 28px;
    margin-right: 1.5rem;
}

.sns-link a {
    margin-right: 25px;
    display: block;
    width: auto;
}

@media (min-width: 480px) {
    .sec-read .type-text-wrap-p {
        padding: 15px 30px 10px 20px;
    }

    .blog-top-img>img {
        height: 300px;
    }

    .movie-wrap {
        margin-top: 35px;
    }
}

@media (min-width: 768px) {
    .sec-read {
        padding: 90px 7% 70px;
    }

    .sec-read .type-img-wrap-b {
        height: auto;
    }

    .sec-read .type-list-b {
        display: flex;
    }

    .sec-read .type-list-b {
        width: 49%;
    }

    .sec-read .type-list-b:nth-of-type(2n) {
        /* margin-top: 0; */
    }

    .sec-read .type-text-wrap-p {
        justify-content: center;
    }

    .movie-wrap {
        width: 100%;
        margin-top: 20px;
    }

    .movie-box, .movie-text-wrap {
        width: 49%;
    }

    .movie-box {
        /* padding: 20px 0 20px 20px; */
        background-color: #fff;
        margin-bottom: 20px;
    }
    .movie-contents {
        display: flex;
        justify-content: space-between;
    }
    .midasi-read {
        text-align: center;
    }

    .midasi-read .midasi-l-title br {
        display: none;
    }

    .sec-read .sec-inner {
        justify-content: center;
    }

    .sec-read .midasi-l-sub {
        right: 0;
        left: 0;
    }

    .blog-top-wrap {
        display: flex;
        justify-content: space-between;
    }

    .blog-top-list {
        width: 32%;
        border: none;
        margin: 0;
    }

    .blog-top-img>img {
        height: 210px;
    }

    .sec-read .type-title-b {
        font-size: 20px;
    }

    .read-title-deco {
        font-size: 22px;
    }

    .blog-wrap {
        padding: 22px;
    }

    .blog-top-cat {
        font-size: 11px;
    }

    .youtube-link {
        width: 30%;
        font-size: 15px;
        margin: 7px auto;
    }

    .movie-text-box {
        /* width: 95%;
        margin: 0 auto; */
    }

    .movie-text {
        /* padding: 10px 0; */
    }

    .sns-wrap {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        border-bottom: solid 1px #B7B7B7;
        padding: 10px 20px;
    }

    .sns-title {
        text-align: left;
        border-right: solid 1px #B7B7B7;
        border-bottom: none;
        padding: 0 2rem 0 0;
    }

    .sns-icon-wrap {
        padding: 0 0 0 2rem;
    }
}

@media (min-width: 1100px) {
    .sec-read .type-text-wrap-p {
        padding: 15px 35px 10px 25px;
    }

    .movie-text-wrap {
        padding: 20px 35px;
    }
}

/* フッター */
.site-footer {
    /* background-color: #006428; */
    color: #fff;
}
.under-menu-link {
    width: auto;
}
.site-footer a:not(.button):not(.components-button) {
    color: #fff;
}

.footer-logo-wrap {
    width: 60%;
    max-width: 200px;
    margin: 0 auto;
}

#menu-footer-menu {
    text-align: center;
    margin: 30px 0 0;
}

.site-footer {
    /* padding: 40px 10px; */
    padding: 0;
}

.site-footer .col-full {
    margin: 0 auto;
    width: 100%;
    max-width: none;
    padding: 0;
}

#menu-footer-menu>.menu-item {
    line-height: 2.1;
    font-size: 16px;
}

.footer-icon-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
	margin-top: 30px;
}

.footer-tel img {
    width: 25px;
    height: auto;
}

.footer-mail img {
    width: 29px;
    height: auto;
}

.footer-line img {
    width: 30px;
    height: auto;
}

.footer-icon {
    /* background-color: #fff3; */
    display: block;
    padding: 10px;
    border-radius: 100px;
}

.footer-icon-list-02 {
    margin: 0 10%;
}

.tos-wrap {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.tos-list {
    /* margin-bottom: 10px; */
}

.tos-link {
    font-size: 14px;
}

.tos-link::after {
    content: "|";
    display: inline-block;
    padding: 0 0.5rem;
}

.tos-list:last-of-type .tos-link::after {
    display: none;
}

.copy-wrap {
    font-size: 11px;
    text-align: center;
    margin: 20px 0 50px;
}

.copy {
    color: #fff;
}

.footer-inner-wrap {
    padding: 30px 10px;
    /* background-color: #000; */
    background-color: #004F1A;
}

.footer-inner-wrap-02 {
    /* background: #141415; */
    /* background: #095623; */
    background-color: #282828;
	padding: 10px;
}

@media (min-width: 768px) {
    #menu-footer-menu {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    #menu-footer-menu>.menu-item {
        margin: 0 20px;
    }

    .copy-wrap {
        margin: 10px 0;
    }

    .site-footer {
        /* padding: 50px 10px 20px; */
    }

    .footer-inner-wrap {
        padding: 10px;
    }

    .footer-inner-wrap-01 {
        padding: 50px 10px;
    }

    #menu-footer-menu {
        margin: 40px 0 0;
    }
}

/* 下層共通 */
.storefront-breadcrumb {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 14px;
    background-color: #f4f5f9;
}

.col-full {
    max-width: 1200px;
}

@media (min-width: 1100px) {

}

/* 商品一覧ページ */
.post-type-archive-product .products.columns-3 {
    display: flex;
    flex-wrap: wrap;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-bottom: solid 1px #999999;
}

.post-type-archive-product .products li.product {
    width: 50%;
    border-top: solid 1px #999999;
    border-right: solid 1px #999999;
    margin-bottom: 0;
    position: relative;
}

.post-type-archive-product .products li.product:nth-of-type(2n) {
    border-right: none;
}

.post-type-archive-product .products li.product img {
    margin-bottom: 10px;
}

.post-type-archive-product .products li.product .woocommerce-loop-product__title,
.post-type-archive-product .products li.product .price {
    margin: 0 0 15px;
}

.post-type-archive-product .products li.product .button {
    margin: 0 0 45px;
}

.post-type-archive-product .products li.product .price {
    text-align: left;
}

.post-type-archive-product .products li.product .price del {
    display: block;
    font-size: 14px;
}

ul.products li.product .price ins {
    display: block;
    margin: 0;
}

.post-type-archive-product .products.columns-3 li.product .woocommerce-loop-product__title{
    font-size: 15px;
    text-align: left;
}

.post-type-archive-product .products.columns-3 li.product .button {
    font-size: 13px;
    /* background-color: #7a7a7a;
    color: #fff; */
    background-color: #eeeeee;
    color: #252525;
    padding: 5px 15px;
    display: block;
    margin-left: auto;
    text-align: center;
    width: 9em;
}

.post-type-archive-product .products.columns-3 li.product .woocommerce-Price-amount bdi span {
    font-family: arial;
}

/* .post-type-archive-product .products.columns-3 li.product .woocommerce-Price-amount bdi {
    display: none;
} */
.post-type-archive-product .products.columns-3 li.product del .woocommerce-Price-amount bdi {
    /* display: none; */
    letter-spacing: 0;
}

.post-type-archive-product .products.columns-3 li.product ins .woocommerce-Price-amount bdi, .post-type-archive-product .products.columns-3 li.product ins .woocommerce-Price-amount bdi span {
    /* color: #ff0023; */
    font-weight: 600;
}

.post-type-archive-product .products.columns-3 li.product ins .woocommerce-Price-amount bdi span {
    font-size: 70%;
    margin-left: 0.2rem;
}

.post-type-archive-product .products.columns-3 li.product ins .woocommerce-Price-amount bdi {
    font-size: 17px;
    font-family: arial;
    letter-spacing: 0;
}

/*ul.products li.product .woocommerce-LoopProduct-link {
    margin-bottom: 60px;
}*/

.site-main .storefront-sorting {
    margin: 1.3rem 0 0.5rem;
    font-size: 14px;
}

/*.site-main .storefront-sorting:first-of-type .woocommerce-pagination {
    display: none;
}

.site-main .storefront-sorting:nth-of-type(2) .woocommerce-result-count {
    display: none;
}

.archive.woocommerce-active .woocommerce-products-header__title {
    display: none;
}*/

input[type=text], input[type=number], input[type=email], input[type=tel], input[type=url], input[type=password], input[type=search], textarea, .input-text {
    letter-spacing: 0;
    font-size: 15px;
    box-shadow: none;
    padding: 0.7rem;
}

.product-header-search .keyword-search-form {
    text-align: center;
    max-width: 820px;
    margin: 0 auto;
}

.product-header-search input[type=search] {
    background-color: #fff;
    width: calc(100% - 100px);
    border: solid 1px #999999;
    text-align: left;
}

.product-header-search input[type="submit"] {
    background-color: #252525;
    color: #fff;
    font-weight: 500;
    border: none;
}

.product-header-search .search-submit {
    background: url(./img/icon-search.svg) no-repeat 10px center;
    background-size: 18px;
    display: inline-block;
    vertical-align: middle;
    padding: 8px 10px 5px 28px;
    width: 92px;
}

.product-header-search {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 60px;
    padding: 0 20px 20px;
    background-color: #f4f5f9;
}


.product-header-search .wp-block-search__label {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 20px;
    display: block;
    margin-bottom: 6px;
    font-weight: 500;
    text-align: center;
}

.woocommerce-active .woocommerce-ordering {
    display: none;
}

.woocommerce-active .wp-block-search__inside-wrapper {
    border: solid 1px #999999;
}

.refine-search-wrap {
    margin: 2em 0;
    padding: 0;
}

.refine-search-wrap .refine-search-scroll-title {
    display: flex;
    align-items: center;
    padding: 4px 8px;
    color: #fff;
    font-weight: 600;
    /* background: #acadb0; */
    background-color: #999a9c;
    cursor: pointer;
    white-space: nowrap;
    margin-right: 15px;
    letter-spacing: 0px;
    font-size: 14px;
}

.refine-search-wrap .refine-search-scroll-title::after {
    content: "";
    display: inline-block;
    background: url(./img/icon-plus.svg) no-repeat;
    width: 16px;
    height: 16px;
    background-size: contain;
    line-height: 0;
    margin-left: 0.3rem;
}

.refine-search-wrap input[type="checkbox"] {
    display: none;
}

.refine-search-wrap .content {
    height: 0;
    padding: 0;
    /* overflow: hidden; */
    margin-bottom: 10px;
    opacity: 0;
}

.switch:checked+.content {
    height: auto;
    opacity: 1;
    transition: 0.5s;
}

.refine-search-wrap {
    margin: 0.5rem 0 0;
}

.refine-search-scroll-box {
    display: inline-block;
    overflow-y: scroll;
    white-space: nowrap;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.refine-search-scroll-box::-webkit-scrollbar {
    display: none;
}

.refine-search-scroll-wrap {
    width: auto;
    text-align: center;
}

.refine-search-scroll-wrap li {
    display: none;
    margin-right: 5px;
    /* margin-bottom: 3px; */
    margin-bottom: 8px;
}

.refine-search-scroll-wrap li.cat-001,
.refine-search-scroll-wrap li.cat-001-1,
.refine-search-scroll-wrap li.cat-001-2,
.refine-search-scroll-wrap li.cat-001-3,
.refine-search-scroll-wrap li.cat-002,
.refine-search-scroll-wrap li.cat-002-1,
.refine-search-scroll-wrap li.cat-002-2,
.refine-search-scroll-wrap li.cat-002-3,
.refine-search-scroll-wrap li.cat-003,
.refine-search-scroll-wrap li.cat-003-1,
.refine-search-scroll-wrap li.cat-003-1,
.refine-search-scroll-wrap li.cat-003-3 {
    display: inline-block;
}

.refine-search-scroll-wrap li a {
    background-color: #fff;
    border-radius: 100px;
    padding: 4px 11px;
    /* font-size: 15px; */
    font-size: 13px;
    border: solid 1px #aaaaaa;
}

.refine-search-list-title {
    font-size: 16px;
    font-weight: 600;
    padding: 10px 10px 1px;
    border-top: solid 1px #cbcbd1;
    margin-bottom: 2px;
}

.search-wrap {
    margin: 0;
}

.refine-search-box {
    padding: 25px 0 0;
}

.refine-cat-wrap {
    margin: 0 0 15px;
}

.refine-search-wrap input[type=checkbox]+label {
    margin: 0;
    background-color: #fff;
    border-radius: 100px;
    padding: 9px 14px;
    font-size: 15px;
    border: solid 1px #aaaaaa;
    line-height: 2.7rem;
}

.refine-search-wrap input[type=checkbox]:checked+label {
    border: solid 1px #007042;
    background-color: #e8f7f1;
    color: #007042;
}

.refine-search-wrap input[type=number] {
    background-color: #fff;
    border: solid 1px #999999;
    width: 45%;
    padding: 0.5rem;
}

.refine-search-list-03 .refine-cat-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.refine-search-scroll-box input[type=checkbox]+label {
    background-color: #fff;
    border-radius: 100px;
    padding: 4px 11px;
    font-size: 15px;
    border: solid 1px #aaaaaa;
}

.search-btn-wrap {
    background-color: #e6e6e8;
    margin-top: 35px;
}

.search-btn-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 15px 1.41575em;
    background-color: #e6e6e8;
}

.search-btn {
    background-color: #252525;
    color: #fff;
}

.total {
    font-weight: 600;
}

.total-num {
    color: #ff0023;
    font-size: 140%;
    margin: 0 0.3rem;
}

.woocommerce-page .site-main {
    background: none;
}

.sec-widget.sec-contact {
    background-color: #888992;
}

.widget-area .widget .sec-widget a {
    text-decoration: none;
}

.woocommerce-active .widget {
    margin: 0;
}

.sec-widget.sec-mente .mente-text-wrap {
    padding-top: 1px;
}

.sec-widget {
    padding-bottom: 30px;
}

.sec-widget .contact-wrap {
    margin-top: 0;
}

.woocommerce-products-header .woocommerce-products-header__title {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 24px;
}

ul.products li.product {
    text-align: left;
}

ul.products li.product img {
    border: 1px solid #ccc;
}

ul.products li.product .category {
    margin-bottom: 10px;
}

ul.products li.product .category span {
    display: none;
}

ul.products li.product .category .cat-001,
ul.products li.product .category .cat-001-1,
ul.products li.product .category .cat-001-2,
ul.products li.product .category .cat-001-3,
ul.products li.product .category .cat-002,
ul.products li.product .category .cat-002-1,
ul.products li.product .category .cat-002-2,
ul.products li.product .category .cat-002-3,
ul.products li.product .category .cat-003,
ul.products li.product .category .cat-003-1,
ul.products li.product .category .cat-003-2,
ul.products li.product .category .cat-003-3 {
    display: inline-block;
}

ul.products li.product .category span {
    border: 1px solid #166128;
    color: #166128;
    padding: 2px 7px;
    margin-right: 4px;
    margin-bottom: 4px;
    border-radius: 100px;
    font-size: 12px;
}

ul.products li.product .star-rating {
    display: none;
}

/*サイドバーウィジェット*/
#secondary .widget-ttl,
#secondary .wp-block-heading {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 24px;
    padding: 15px;
    border-bottom: 2px solid #ededed;
    position: relative;
}

#secondary .widget-ttl .ttl-category,
#secondary .wp-block-heading .information {
    padding-top: 25px;
}

#secondary .widget-ttl.ttl-category::before,
#secondary .wp-block-heading.information::before {
    content: "CATEGORY";
    position: absolute;
    top: 0;
    left: 0;
    color: #ececec;
    font-weight: bold;
    font-family: serif;
    z-index: -1;
}

#secondary .wp-block-heading.information::before {
    content: "INFORMATION";
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-0>li>a {
    margin-bottom: 15px;
    display: block;
    text-decoration: none;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-0>li>a span {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 16px;
    padding: 8px 10px 5px;
    background: #f4f5f9;
    display: block;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-1 {
    margin-left: 0;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-1>li {
    position: relative;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
    padding-left: 20px;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-1>li:last-child {
    border-bottom: 0;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-1>li::before {
    position: absolute;
    content: "-";
    left: 0.3em;
    top: 0.3em;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-1>li a {
    text-decoration: none;
    padding: 5px 0;
    display: block;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-1>li a span {
    font-size: 16px;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-2 {
    margin-left: 0;
    list-style: inherit;
}

#secondary .wc-block-product-categories-list.wc-block-product-categories-list--depth-2>li>a span {
    font-size: 13px;
}

#secondary select {
    background: #fff;
    border: 1px solid #ededed;
    padding: 0.4rem 0.5rem;
}

#secondary select {
    width: 100%;
    margin-top: 8px;
    padding-right: 30px;
    background: url("./img/select.png") no-repeat;
    background-position: top 13px right 8px;
}

.single-post #secondary,
.single-post #primary {
    margin-top: 60px;
}

.side-contact-wrap {
    background-color: #e5dabd;
    padding: 3px;
    position: relative;
    text-align: center;
}
.side-contact-border{
	border:1px solid #fff;
	padding: 16px;
}

.side-contect-line {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-weight: 600;
    text-align: center;
    position: relative;
    z-index: 1;
    display: inline-block;
    font-size: 25px;
}

.side-contect-line:before {
    content: "";
    /* width: 15rem; */
    width: auto;
    height: 11px;
    display: inline-block;
    position: absolute;
    background-color: #c8b992;
    bottom: 8px;
    right: 0;
    left: -10px;
    margin: auto;
    z-index: -1;
}

.side-contect-line-text {
    text-align: left;
    line-height: 1.3;
}

.side-contect-line-link {
    width: 100%;
    height: 100%;
    display: block;
    background-color: #252525;
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    margin-top: 20px;
}

.side-contect-line-icon-wrap {
    width: 35px;
    margin-right: 0.5rem;
}

.side-contect-tel-title-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-top: 25px;
    padding-top: 20px;
}

.side-contect-tel-title-wrap::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1px;
    background-color: #C6C6C6;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.side-contect-tel-icon-wrap {
    width: 19px;
    margin-right: 0.5rem;
}

.side-contect-tel {
    margin: 0;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-weight: 600;
    font-size: 17px;
}

.side-contect-tel-text {
    font-size: 28px;
    display: block;
    margin-top: 6px;
    text-decoration: none !important;
    line-height: 1;
}

.woocommerce-active .widget {
    margin: 0 0 20px 0;
}
.wc-block-components-price-slider__range-input-progress, .rtl .wc-block-components-price-slider__range-input-progress {
    background: #616161!important;
}
.side-contect-line-link-wrap > p {
    display: none;
}
@media (min-width: 768px) {
    .side-contect-line {
        font-size: min(18px, 2vw);
        margin-bottom: 18px;
    }

    .side-contect-line:before {
        bottom: 0px;
    }

   .side-contect-line-link {
        padding: 7px;
    }

    .side-contect-line-icon-wrap {
        /* margin: 0 auto; */
        width: 21px;
    }

    .side-contect-line-text {
        /* text-align: center; */
        font-size: min(14px, 1.4vw);
    }

    .side-contect-tel {
        margin: 0;
        font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
        font-weight: 600;
        font-size: min(1.6vw, 14px);
    }

    .side-contect-tel-title-wrap {
        align-items: flex-start;
    }

    .side-contect-tel-icon-wrap {
        width: 12px;
        margin-right: 0.3rem;
        margin-top: 3px;
    }

    .side-contect-line:before {
        left: 0;
    }

    .side-contect-tel-text {
        font-size: min(21px, 1.9vw);
    }

    .sns-wrap.side-sns-wrap {
        display: block;
        padding: 10px 0;
        border-bottom: none;
    }

    .side-sns-wrap .sns-title {
        text-align: center;
        border-right: none;
        padding: 0 0 10px 0;
        font-size: min(14px, 1.5vw);
        border-bottom: solid 1px #B7B7B7;
    }

    .side-sns-wrap .sns-title-deco {
        margin: 0;
        font-size: min(17px, 2vw);
    }

    .side-sns-wrap .sns-icon-wrap {
        margin-top: 20px;
        padding: 0;
        justify-content: center;
    }

    /* .side-sns-wrap .sns-link img {
        min-height: 17px;
    }
    .side-sns-wrap .sns-link-x img {
        min-height: 20px;
    } */
    .side-sns-wrap .sns-link a {
        margin-right: 12px;
    }

    .side-sns-wrap .sns-link:last-of-type a {
        margin-right: 0;
    }
}

@media (min-width: 1100px) {
    .side-contect-line-text {
        text-align: left;
    }

    .side-contect-line-link {
        display: flex;
    }

    .side-contect-line-icon-wrap {
        margin: 0;
        margin-right: 1rem;
        width: 30px;
    }

}

/*商品詳細ページ*/
.single-product #content {
    padding-top: 60px;
}

.single-product .content-area img {
    width: auto;
}

section.mente-bnr {
    text-align: center;
    margin-bottom: 45px;
}

section.mente-bnr img {
    margin: 0 auto;
}

.single-product .item-text {
    margin-bottom: 20px;
}

.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .flex-control-thumbs img,
.woocommerce-product-gallery__image--placeholder img {
    border: 2px solid #ededed;
}

.single-product .flex-control-thumbs img.flex-active {
    border: 2px solid #166128;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
    width: 22%;
    margin-right: 4%;
}

.single-product .entry-summary .product_title {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 30px;
}

.single-product .entry-summary h2,
.single-product .entry-summary h2 *,
.single-product .entry-content h2,
.single-product .item-text h2 {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 22px;
    line-height: 1.5;
}

.single-product .entry-content h2,
.single-product .item-text h2 {
    font-weight: bold;
    padding: 15px;
    border-bottom: 1px solid #166128;
    border-left: 10px solid #166128;
    font-size: 36px;
    margin-bottom: 25px;
    margin-top: 20px;
}

.single-product .entry-content h3,
.single-product .related>h2,
.single-product .item-text h3 {
    background: #166128;
    color: #fff;
    padding: 10px;
    font-size: 20px;
}

.single-product .entry-content h4,
.single-product .item-text h4 {
    border: 1px solid #252525;
    border-radius: 4px;
    padding: 4px 10px 2px;
}

.single-product .entry-summary,
.single-product .entry-content {
    font-family: "Source Sans Pro", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.single-product .entry-summary p,
.single-product .entry-content p,
.single-product .item-text {
    padding-bottom: 15px;
}

.single-product .entry-content img {
    margin-bottom: 20px;
}
.woocommerce select,
.single-product select,
.single-product input[type=text],
.single-product input[type=number],
.single-product input[type=email],
.single-product input[type=tel],
.single-product input[type=url],
.single-product input[type=password],
.single-product input[type=search],
.single-product textarea,
.single-product .input-text {
    background: #fff;
    border: 1px solid #ededed;
    padding: 0.4rem 0.5rem;
}
input[type=checkbox]{
	appearance:auto;
}
.woocommerce select,
.single-product select {
    width: 100%;
    margin-top: 8px;
    padding-right: 30px;
    background: url("./img/select.png") no-repeat;
    background-position: top 13px right 8px;
}

.single-product .variations .label label {
    font-weight: bold;
    font-size: 18px;
}

.woocommerce-product-details__short-description {
    margin-bottom: 30px;
}

.single-product .woocommerce-tabs #tab-reviews,
.single-product .woocommerce-tabs #tab-description {
    display: block !important;
    width: 100%;
}

.single-product .woocommerce-tabs #tab-reviews {
    margin-top: 50px;
}

.single-product .woocommerce-tabs ul.tabs,
.single-product .reset_variations {
    display: none !important;
}

#reviews #comments .commentlist li {
    margin-bottom: 20px;
}

#review_form .form-submit {
    margin-top: 12px;
}

#reviews .woocommerce-noreviews {
    background-color: #a0a0a0;
}

#reviews .woocommerce-Reviews-title {
    font-size: 1.618em;
}

.star-rating span:before,
p.stars.selected a.active:before,
p.stars:hover a:before,
p.stars.selected a:not(.active):before,
p.stars.selected a.active:before {
    color: #ffad11 !important;
}

/*商品価格*/
.price del::before {
    content: "通常価格";
}

.price del {
    text-decoration: none;
}

.price del bdi {
    text-decoration: line-through;
}

.price ins bdi,
.price>.woocommerce-Price-amount bdi {
    font-weight: bold;
    font-size: 1.5em;
}

.single-product del, .single-product .price ins {
    display: block;
}

.single-product .price {
    text-align: right;
}

.single-product .price ins bdi,
.single-product .price>.woocommerce-Price-amount bdi {
    font-weight: bold;
    font-size: 1.5em;
    color: #bf1819;
}

.single-product .price ins bdi .woocommerce-Price-currencySymbol,
.single-product .price>.woocommerce-Price-amount bdi .woocommerce-Price-currencySymbol {
    font-size: 0.85em;
    color: #bf1819;
}

.storefront-sticky-add-to-cart .storefront-sticky-add-to-cart__content-title {
    font-size: 0;
}

.storefront-sticky-add-to-cart .storefront-sticky-add-to-cart__content-title strong {
    font-size: 18px;
    display: block;
}

.storefront-sticky-add-to-cart__content-button.alt {
    min-width: 220px;
    text-align: center;
    background-color: #166128;
    border-color: #166128;
}

span.onsale{
    background: #bf1819;
    color: #fff;
    border-color: transparent;
    border-radius: 9999px;
    height: 5em;
    width: 5em;
    text-align: center;
    padding-top: 1.7em;
    font-weight: bold;
    font-size: 18px;
}

.products span.onsale{
    border-radius: 0;
    height: auto;
    width: auto;
    padding: 3px 10px 0;
    font-size: 12px;
}

@media (min-width: 480px) {

    .woocommerce-active .product-header-search .wp-block-search {
        margin: 0 auto;
    }

    /*.archive.woocommerce-active .product-header-search .wp-block-search__label {
        width: 786px;
        margin: 0 auto 6px;
    }*/

    .woocommerce-active .wp-block-search__inside-wrapper {
        margin: 0 auto;
    }

    .post-type-archive-product .products.columns-3 {
        width: 100%;
        margin: 0 auto;
    }

    .post-type-archive-product .products.columns-3 li.product {
        border: none;
    }

    input[type=text], input[type=number], input[type=email], input[type=tel], input[type=url], input[type=password], input[type=search], textarea, .input-text {
        padding: 0.4rem 0.5rem;
    }

    .sec-widget.sec-contact {
        width: 100%;
        margin: 0;
    }
}

@media (min-width: 768px) {
    .refine-search-scroll-wrap {
        flex-direction: row-reverse;
        width: 786px;
        margin: 0 auto;
    }

    .refine-search-wrap .refine-search-scroll-title {
        margin-right: 0;
        margin-left: 15px;
    }

    .refine-search-wrap .content {
        width: 786px;
        margin: 0 auto;
    }

    .search-btn-box {
        max-width: 786px;
        margin: 0 auto;
    }

    .refine-search-list-03 .refine-cat-wrap {
        width: 60%;
    }

    .woocommerce-active #content .col-full {
        max-width: 1200px;
        position: relative;
    }

    .refine-cat-wrap {
        margin: 20px 0;
    }

    .product-header-search {
        padding: 40px 20px;
    }

    /*.post-type-archive-product .products.columns-3 {
        width: 75%;
        margin-left: 21%;
        justify-content: space-between;
    }*/

    .post-type-archive-product .products.columns-3 li.product {
        width: 30%;
    }
}

/*コンテンツ内のフォント*/
body.page-template-default .entry-content {
    font-size: 16px;
    font-family: "Source Sans Pro", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif !important;
}

.page-template-default .entry-content h1,
.cat-description h1 {
    font-weight: bold;
}

.page-template-default .entry-content h2,
.cat-description h2 {
    font-weight: bold;
    padding: 15px;
    border-bottom: 1px solid #166128;
    border-left: 10px solid #166128;
    font-size: 36px;
    margin-bottom: 45px;
}

.cat-description h2 {
    margin-top: 15px;
}

.page-template-default .entry-content h3,
.cat-description h3 {
    position: relative;
    padding: 0.8em;
    background: #166128;
    margin-bottom: 50px;
}

.page-template-default .entry-content h3,
.page-template-default .entry-content h3 *,
.cat-description h3 {
    color: #fff;
}

.page-template-default .entry-content h3::before,
.cat-description h3::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px rgb(149, 158, 155);
}

.page-template-default .entry-content h4,
.cat-description h4 {
    font-weight: bold;
    background: #777777;
    border-radius: 5px;
    padding: 10px;
    font-size: 16px;
    margin-bottom: 20px;
    color: #fff;
}

.page-template-default .entry-content h4,
.page-template-default .entry-content h4 *,
.cat-description h4 {
    color: #fff;
}

.single-post .entry-content h2 {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    padding: 15px;
    border-bottom: 1px solid #166128;
    border-left: 10px solid #166128;
    font-size: 24px;
    margin-bottom: 15px;
    margin-top: 25px;
}

.single-post .entry-content h3 {
    position: relative;
    padding: 0.8em;
    background: #166128;
    margin-bottom: 50px;
    font-size: 18px;
}

.single-post .entry-content h3 {
    color: #fff;
}

.single-post .entry-content h3::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px rgb(149, 158, 155);
}

.single-post .entry-content h4 {
    font-weight: bold;
    background: #777777;
    border-radius: 5px;
    padding: 10px;
    font-size: 16px;
    margin-bottom: 20px;
    color: #fff;
}

.single-post .entry-content h4 {
    color: #fff;
}

.single-post .entry-content,
.cat-description p {
    font-family: "Source Sans Pro", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
}

.single-post .entry-content p {
    padding-bottom: 15px;
}

.single-post .entry-content a {
    text-decoration: underline;
    color: #166128;
}

.page-template-default .entry-content p,
.cat-description p {
    padding-bottom: 15px;
}

.cat-description img {
    margin-bottom: 15px;
    margin-top: 15px;
}

.page-template-default .entry-content a,
.cat-description a {
    text-decoration: underline;
    color: #166128;
}

.page-template-default .entry-content h4 a,
.page-template-default .entry-content h3 a {
    color: #fff;
}

.page-template-default .entry-content blockquote {
    font-size: 120%;
    padding: 5% 2%;
    border: 3px solid rgba(0, 0, 0, .05);
    margin-bottom: 30px;
}

.page-template-default .entry-content ul:not(.woocommerce-error),
.cat-description ul {
    margin-bottom: 50px;
    padding: 3%;
    border: 1px solid #eee;
    background: #fbfbfb;
    border-radius: 5px;
}

.page-template-default .entry-content ul:not(.woocommerce-error) li,
.cat-description ul li {
    border-bottom: 1px dotted #ccc;
    padding: 8px 0;
}

.page-template-default .entry-content ul li:last-child,
.cat-description ul li:last-child {
    border-bottom: 0;
}

.page-template-default .entry-content ul li i,
.cat-description ul li i {
    margin-right: 10px;
}

.page-template-default .entry-content ul.wc-block-grid__products {
    padding: 0;
    border: 0;
    background: transparent;
}

.page-template-default .entry-content ul.wc-block-grid__products li {
    border: 0;
    padding: 3%;
    margin-bottom: 0;
}

.page-template-default .entry-content table {
    border-top: 1px solid #666;
    border-right: 1px solid #666;
}

.page-template-default .entry-content table th,
.page-template-default .entry-content table td,
.page-template-default .entry-content table.cart td.product-remove {
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
    vertical-align: middle;
}

.page-template-default .entry-content table th {
    width: 30%;
    font-weight: bold;
}

.page-template-default .entry-content table.shop_table th {
    width: auto;
}

.page-template-default .entry-content table.cart td.actions {
    border-top: 0;
    padding: 1.618em;
}

.page-template-default .entry-content table.cart td.actions button {
    background: #166128;
    color: #fff;
}

/*お問い合わせフォーム*/
.page-template-default .entry-content table input {
    width: 100%;
}

.page-template-default .entry-content table input[type="button"],
.page-template-default .entry-content table input[type="submit"],
.page-template-default .entry-content table input[type="reset"] {
    max-width: 300px;
    margin: 0 auto;
    text-align: center;
}

.page-template-default .entry-content table input[type="button"], .entry-content table input[type="submit"] {
    background: #166128;
    color: #fff;
}

.page-template-default .entry-content table .th_red {
    background: #bf1819;
    color: #fff;
    font-size: 80%;
    padding: 3px 5px;
    border-radius: 3px;
    margin-left: 5px;
}

.page-template-default .entry-content table select {
    background: #f2f2f2;
    width: 100%;
    padding: 0.4rem 0.5rem;
}

.page-template-default .entry-content table .form_com {
    font-size: 85%;
    opacity: 0.8;
}

.search-results .page-title {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    border-bottom: 2px solid #ededed;
    line-height: 1.5;
    font-size: 22px;
}

.search-results article .entry-title {
    position: relative;
    padding: 0.8em;
    background: #166128;
    margin-top: 50px;
    margin-bottom: 30px;
    font-size: 18px;
}

.search-results article .entry-title, .search-results article .entry-title * {
    color: #fff;
}

.search-results article .entry-title::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px rgb(149, 158, 155);
}

.archive-page h1.page-title {
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
    font-size: 36px;
    line-height: 1.5;
    border-bottom: 2px solid #ededed;
    margin-bottom: 40px;
}

@media (max-width: 568px) {

    .page-template-default .entry-content h2, .cat-description h2,
    .archive-page h1.page-title,
    .single-product .entry-content h2, .single-product .item-text h2,
    .woocommerce-products-header .woocommerce-products-header__title {
        /*大見出し文字サイズ*/
        font-size: 24px;
    }

    .page-template-default .entry-content h3, .page-template-default .entry-content h3 *, .cat-description h3,
    .single-product .entry-content h3, .single-product .related>h2, .single-product .item-text h3 {
        /*中見出し文字サイズ*/
        font-size: 22px;
    }

    .page-template-default .entry-content h4, .page-template-default .entry-content h4 *, .cat-description h4,
    .single-product .entry-content h4, .single-product .item-text h4 {
        /*小見出し文字サイズ*/
        font-size: 18px;
    }

    .page-template-default .entry-content p,
    .cat-description p,
    .single-product .entry-summary p, .single-product .entry-content p, .single-product .item-text {
        /*本文文字サイズ*/
        font-size: 17px;
    }

    .page-template-default .entry-content table th,
    .page-template-default .entry-content table td {
        display: block;
        width: 100%;
        min-width: 100%;
    }


    .single-product #content {
        padding-top: 20px;
    }

    html p {
        letter-spacing: 0.06rem;
    }

    .product-header-search input[type=search] {
        width: 100%;
        margin-bottom: 5px;
    }

    .product-header-search input[type="submit"] {
        width: 200px;
        padding: 10px 10px 6px;
    }

}

/*Footerフローティングバナー*/
.page-id-1231 #before-footer #bnr{
	display: none;/*LINE相談ページでは非表示*/
}

#before-footer #bnr{
	position: fixed;
    bottom: 20px;
    left: 0;
    z-index: 997;
	width: 100%;
}
#before-footer #bnr .bnr_inner{
    background: #e5dabd;
	max-width: 900px;
	margin: 0 auto;
	border: 6px solid #fff;
	box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, .1);
	padding: 10px;
	display: flex;
	align-items: center;
	position: relative;
}
#before-footer #bnr #btn{
    position: absolute;
    right: -10px;
    top: -10px;
	font-size: 0;
	width: 25px;
    height: 25px;
    text-align: center;
    background: #fff;
    border: 1px solid #b8b8b8;
}
#before-footer #bnr #btn::before{
    content: "×";
	font-size: 16px;
}
#before-footer #bnr .bnr_title{
	width: 260px;
	padding-left: 60px;
	padding-right: 15px;
    margin-right: 15px;
	border-right: 1px solid #fff;
	font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
}
#before-footer #bnr .bnr_title::before{
    content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: url(./img/icon-line-contact.svg) left top/contain no-repeat;
	position: absolute;
	left: 10px;
	top:10px;
}
#before-footer #bnr .bnr_title .sub_ttl{
	font-size: 14px;
}
#before-footer #bnr .bnr_title .main_ttl{
	font-weight: bold;
    font-size: 18px;
}
#before-footer #bnr .bnr_detail{
	display: flex;
	align-items: center;
	width: calc(100% - 280px);
	font-size: 14px;
}
#before-footer #bnr .bnr_text{
	width: calc(100% - 150px)
}
#before-footer #bnr .bnr_more{
	width: 150px;
	text-align: center;
}

#before-footer #bnr .bnr_detail a{
	background: #333;
	color: #fff;
	padding: 10px 15px;
	font-size: 12px;
	display: block;
}

@media (max-width: 767px) {
	#before-footer #bnr{
		bottom: 64px;
		z-index: 9999;
	}
	#before-footer #bnr .bnr_inner{
		max-width: 96%;
	}
	#before-footer #bnr .bnr_text{
		display: none;
	}
	#before-footer #bnr .bnr_more{
		width: 100%;
	}
}
@media (max-width: 520px) {
	#before-footer #bnr .bnr_inner{
		display: block;
	}
	#before-footer #bnr .bnr_title{
		margin: 0 auto 15px;
		border: none;
	}
	#before-footer #bnr .bnr_detail{
		width: 100%;
	}
}