/*スタイル登録*/
:root {
    --accent-color1: black;
    --accent-color2: #006080;
    --accent-color3: #8E3333;
    --accent-color4: #20544F;
    --accent-color5: #445E8C;
    --back-color1: white;
    --back-color2: black;
    --back-color3: rgba(255,255,255,.5);
    --back-color4: rgba(255,255,255,.85);
    --back-color5: #666;
    --back-color6: #ccc;
    --back-color7: rgba(0,0,0,.6);
    --text-color1: black;
    --text-color2: #666;
    --max-width: 1364px;
    --max-width-inner: 1240px;
    --font-size12: clamp(10px, 1.2vw, 12px);
    --font-size14: clamp(11px, 1.4vw, 14px);
    --font-size16: clamp(12px, 1.6vw, 16px);
    --font-size18: clamp(14px, 1.8vw, 18px);
    --font-size20: clamp(16px, 2vw, 20px);
    --font-size24: clamp(18px, 2.4vw, 24px);
    --font-size26: clamp(20px, 2.6vw, 26px);
    --font-size32: clamp(24px, 3.2vw, 32px);
    --font-size42: clamp(30px, 4vw, 42px);
    --shadow1: 2px 2px 3px rgba(0,0,0,0.2);
    --shadow2: 5px 5px 0px var(--accent-color1);
    --shadow3: 2px 2px 3px rgba(1px,1px,1px,0.8);
    --border-b1: 1px solid var(--back-color2);
    --border-w1: 1px solid white;
    --border-g1: 1px solid var(--back-color6);
    --border-g2: 1px solid var(--back-color5);
  }

/*初期設定*/
html { scroll-behavior: smooth;}

body {
    font-family: 'Noto Sans JP', sans-serif;
    margin: 0;
    padding: 0;
    border: none;
}
.l-content__body {
    margin: 0 !important;
}
.l-container {
    margin: 0 !important;
    max-width: 100% !important;
    padding: 0 !important;
}
.l-article {
    max-width: 100% !important;
}
.l-main {
    width: 100% !important;
    color: var(--text-color1);
    margin: 0 auto;
    padding: 0;
    background-image: url(../images/dwc-back-image-contents001.webp);
    background-position: center top;
    background-size: 100%;
    background-repeat: repeat-y;
    box-sizing: border-box;
}
.l-main__body {
    width: 100%;
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 80px 5%;
}
@media screen and (max-width: 780px) {
	.l-main__body {
        padding: 50px 3%;
    }
}

a {
    text-decoration: none;
    transition: 0.5s;
    color: var(--accent-color3);
    font-size: var(--font-size16);
}
a:hover {
    opacity: 0.5;
}
p {
    font-size: var(--font-size16);
    line-height: 2;
    font-weight: 600;
    margin: 20px 0 !important;
}
@media screen and (max-width: 1000px) {
    a {
        font-size: var(--font-size14);
        line-height: 1.7;
    }
	p {
        font-size: var(--font-size14);
        line-height: 1.7;
    }
}

.pc {
    display: block !important;
}
.sp {
    display: none !important;
}
.inline-b {
    display: inline;
}
.inline-b {
    display: inline-block;
}
i {
    padding-right: 5px;
}
img {
    display: block;
    width: 100%;
}

.fw-n {
    font-weight: normal;
}
.fs-s {
    font-size: var(--font-size12);
}
.fs-b {
    font-size: var(--font-size26);
}
.ta-c {
    text-align: center;
}
.c-r {
    color: var(--accent-color5);
}

.fl {
    display: flex;
    flex-wrap: wrap;
}
.fl_center {
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 1000px) {
	.pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
}

/**************************************
　共通設定
**************************************/

h2 {
    font-size: var(--font-size32);
    font-weight: 900;
}
h3 {
    font-size: var(--font-size26);
    font-weight: 600;
}
@media screen and (max-width: 1000px) {
	h2 {
        font-size: var(--font-size26);
        font-weight: 900;
    }
    h3 {
        font-size: var(--font-size20);
        font-weight: 600;
    }
}

.btn-blue a {
    background-color: var(--accent-color2) !important;
}
.btn-red a {
    background-color: var(--accent-color3) !important;
}
.btn-green a {
    background-color: var(--accent-color4) !important;
}


/*ボタン設定*/
.wp-block-buttons {
    justify-content: flex-end !important;
}
.top-information-box .wp-block-buttons {
    justify-content: center !important;
}

.wp-block-button,
.forminator-button-submit {
    position: relative !important;
    width: 30% !important;
}
.forminator-button-submit {
    background-color: var(--accent-color2) !important;
    display: block !important;
    margin: 0 auto !important;
    transition: 0.5s !important;
}
.forminator-button-submit:hover {
    opacity: 0.5;
}

@media screen and (max-width: 1000px) {
    .wp-block-button,
    .forminator-button-submit {
        width: 80% !important;
        margin: 0 auto !important;
    }
}
:root {
    --btn-icon-width: 10px;
}
.wp-block-button::after,
.forminator-button-submit::after {
    position: absolute !important;
    content: "" !important;
    width: var(--btn-icon-width) !important;
    height: var(--btn-icon-width) !important;
    top: 0 !important;
    bottom: 0 !important;
    right: 10% !important;
    margin: auto 0 !important;
    border-bottom: var(--border-w1) !important;
    border-right: var(--border-w1) !important;
    transform: rotate(-45deg) !important;
}
.wp-block-button a {
    width: 100%;
    border-radius: 0;
    font-weight: 900;
}
.contact-box .wp-block-button {
    width: 90% !important;
}
.dwc-cart-btn,
.add_to_cart_button,
.single_add_to_cart_button {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    background-color: var(--accent-color5) !important;
    border-radius: 9999px !important;
    color: white !important;
    font-size: clamp(11px, 1.3vw, 16px) !important;
    font-weight: 600 !important;
    text-align: center !important;
    padding: 3% !important;
}
.single_add_to_cart_button {
    width: fit-content !important;
    padding: 12px 50px !important;
}
:root {
    --cart-icon-width1: clamp(15px, 1.6vw, 20px);
    --cart-icon-width2: clamp(13px, 1.4vw, 18px);
}
.dwc-cart-btn::before,
.add_to_cart_button::before,
.dwc-cart-btn::after,
.add_to_cart_button::after,
.single_add_to_cart_button::before,
.single_add_to_cart_button::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.dwc-cart-btn::before,
.add_to_cart_button::before,
.single_add_to_cart_button::before {
    width: var(--cart-icon-width1);
    height: var(--cart-icon-width1);
    left: 7%;
    background-image: url(../images/dwc-cart-icon2.png);
}
.dwc-cart-btn::after,
.add_to_cart_button::after,
.single_add_to_cart_button::after {
    width: var(--cart-icon-width2);
    height: var(--cart-icon-width2);
    right: 7%;
    background-image: url(../images/dwc-cart-icon3.png);
}

/**************************************
　ヘッダー設定
**************************************/
.l-header {
    background: var(--back-color4);
    box-shadow: var(--shadow1);
}
.l-header__center {
    width: 17vw;
    grid-area: center;
    padding: 14px 0px 20px 20px;
}
@media screen and (max-width: 1000px) {
	.l-header__center {
        width: 170px;
        grid-area: left;
        padding: 8px 0px 8px 10px;
    }
}
.has-image>.c-headLogo {
    height: 100%;
    min-height: 30px;
}
.l-header__right {
    position: relative;
    width: 73vw;
    align-items: center;
    align-self: stretch;
    display: flex;
    grid-area: right;
    justify-self: end;
    margin: 0 auto;
}
@media screen and (max-width: 1000px) {
	.l-header__right {
        width: 100px;
        right: 50px;
    }
}
.l-header__body .c-gnavWrap {
    left: 0;
    right: 0;
    margin: 0 35% 0 auto;
}
@media screen and (max-width: 1000px) {
	.l-header__body .c-gnavWrap {
        margin: 0;
    }
}
@media screen and (max-width: 1000px) {
	.c-gnav {
        display: none;
    }
}
.c-gnav .__mainText {
    font-weight: 600;
}
.c-gnav__a {
    font-size: var(--font-size14);
}
.c-gnav .__subText {
    font-weight: 600;
    padding-top: 5px;
}
.c-gnav__li>.c-gnav__a {
    padding: 16px 1.2vw;
    transition: color .25s;
    white-space: nowrap;
}
.header_shop_menu {
    position: absolute;
    width: fit-content;
    height: fit-content;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
}
.header_shop_menu a {
    position: relative;
    display: inline-block;
    padding: 10px 17px 10px 32px;
    font-size: var(--font-size14);
    color: var(--text-color1);
}
.header_shop_menu a::before {
    position: absolute;
    content: "";
    width: 25px;
    height: 25px;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.header_shop_menu_mypage::before {
    background-image: url(../images/dwc-mypage-icon1.png);
}
.header_shop_menu_cart::before {
    background-image: url(../images/dwc-cart-icon1.png);
}
@media screen and (max-width: 1000px) {
	.header_shop_menu a {
        padding: 10px 20px;
    }
    .header_shop_menu a::before {
        right: 0;
        margin: auto;
    }
}


/*ハンバーガーメニュー*/
.p-drawer {
    background: rgba(255,255,255,.95);
    padding: 0 0 20px 0;
    margin: 56px 0 0 0;
    color: var(--text-color1);
    max-height: 85vh;
}
.c-drawerNav {
    border: 0;
}
svg:not([fill]) {
    fill: var(--text-color1);
}
.p-drawer__close {
    display: none;
}

/**************************************
　フッター設定
**************************************/
:root {
    --footer-logo-width: 230px;
}
.l-footer {
    background-color: var(--back-color5);
    padding: 0;
    color: white;
}
.l-footer__inner {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 20px;
}
.footer-container {
    width: 100%;
}
.footer-logo {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background-color: var(--back-color2);
    width: var(--footer-logo-width);
    margin-bottom: 60px;
}
@media screen and (max-width: 1000px) {
	.footer-logo {
        width: 50%;
        margin: 0 auto 0 0;
    }
}
.footer-logo::before,
.footer-logo::after {
    position: absolute;
    content: "";
    top: -10px;
}
.footer-logo::before {
    width: 100%;
    height: 10px;
    left: 0;
    background-color:  var(--back-color2);
}
.footer-logo::after {
    right: -10px;
    border-top: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid #444;
    border-left: 5px solid #444;
}
.footer-logo img {
    width: 65%;
    margin: 0 auto 25px;
}
@media screen and (max-width: 1000px) {
	.footer-logo img {
        width: 45%;
        margin: 25px auto 40px;
    }
}
@media screen and (max-width: 500px) {
    .footer-logo {
        width: 35%;
    }
    .footer-logo img {
        width: 70%;
        margin: 35px auto 50px;
    }
}
.footer-menu {
    width: calc(100% - var(--footer-logo-width));
    padding: 35px 0 20px 80px;
    box-sizing: border-box;
    align-items: normal;
}
.footer-menu-inner {
    width: fit-content;
    border-left: 2px solid white;
    padding-left: 15px;
    margin-right: 7%;
    margin-top: 20px;
}
.footer-menu-inner:last-child {
    margin-right: 0;
}
.footer-menu-inner h2 {
    padding: 10px 0;
    font-size: var(--font-size16);
}
.footer-menu-inner ul li {
    list-style: none;
    padding: 10px 0 10px 10px;
}
.footer-menu-inner ul li a {
    font-size: var(--font-size14);
}
@media screen and (max-width: 1000px) {
	.footer-menu {
        width: 100%;
        padding: 35px 0 20px;
    }
    .footer-menu-inner {
        margin-right: auto;
        margin-left: 6%;
    }
}
@media screen and (max-width: 500px) {
    .footer-menu {
        padding: 15px 0 20px;
    }
    .footer-menu-inner {
        margin-left: 3%;
        padding-left: 12px;
        border-left: 1px solid white;
    }
    .footer-menu-inner h2 {
        padding: 5px 0;
    }
    .footer-menu-inner ul li {
        padding: 5px 0 5px 5px;
    }
}

.footer-btn,
.footer-copy {
    width: 100%;
}
.footer-btn-inner {
    width: fit-content;
    margin: 0 auto;
    padding: 50px 0 20px;
}
.footer-btn-inner a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    margin-right: 50px;
    background-color: var(--back-color5);
    box-shadow: 2px 2px 2px rgba(0,0,0,0.1) , -2px -2px 2px rgba(255,255,255,0.1);
    border-radius: 9999px;
}
.footer-btn-inner a img {
    width: 25px;
    height: 25px;
}
.footer-btn-inner a:last-child {
    margin-right: 0;
}
.footer-copy p {
    font-size: var(--font-size12);
    font-weight: normal;
    text-align: center;
}

/**************************************
　トップページ設定
**************************************/
/*ファーストビュー home.phpに追加 */
.top-fv {
    width: 100%;
    height: fit-content;
    background-image: url(../images/dwc-top-fv-img001.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 7vw 0;
}
@media screen and (max-width: 500px) {
    .top-fv {
        padding: 12vw 0;
    }
}
.top-fv-catch {
    position: relative;
    width: 48vw;
    margin: 0 auto 0 0;
    padding: 2vw 6vw 2vw 0;
}
@media screen and (max-width: 1000px) {
    .top-fv-catch {
        width: 80vw;
        margin-bottom: 18vw;
    }
}
@media screen and (max-width: 500px) {
    .top-fv-catch {
        width: 80vw;
    }
}
.top-fv-catch::before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    width: 130%;
    height: 100%;
    background-color: var(--back-color3);
    box-shadow: var(--shadow1);
    transform: skewX(-12deg);
}
.top-fv-catch p {
    position: relative;
    width: fit-content;
    height: fit-content;
    margin: 0 0 0 auto !important;
    font-size: var(--font-size42);
    line-height: 1.7;
    font-weight: 900;
    z-index: 2;
}
.top-fv-message {
    width: 48vw;
    margin: 5vw 0 0 auto;
    padding: 0 0 10px 1.2vw;
    border-bottom: 5px solid var(--back-color2);
    border-left: 5px solid transparent;
}
.top-fv-message p {
    width: fit-content;
    height: fit-content;
    margin: 0 auto 0 0 !important;
    font-size: var(--font-size18);
    line-height: 1;
    font-weight: 900;
}
@media screen and (max-width: 500px) {
    .top-fv-message {
        width: 80vw;
    }
    .top-fv-message p {
        font-size: var(--font-size16);
    }
}

/*トップページ　コンテンツデザイン */
.top-contents-head .wp-block-group__inner-container {
    position: relative;
    width: 100%;
}
.top-contents-head .wp-block-group__inner-container h2 {
    position: relative;
    width: fit-content;
    font-size: var(--font-size32);
    text-align: left;
    padding: 0 4% 0 8%;
    line-height: 1.4;
}
.top-contents-head .wp-block-group__inner-container h2::before {
    position: absolute;
    content: "";
    bottom: 0;
    right: 0;
    width: 9999px;
    height: 100%;
    border-bottom: var(--border-b1);
    border-right: var(--border-b1);
    transform: skewX(45deg);
}
@media screen and (max-width: 500px) {
    .top-contents-head .wp-block-group__inner-container h2 {
        font-size: var(--font-size26);
        padding: 0 8% 5px 0;
        margin-bottom: 140px;
    }
}
.top-contents-head .wp-block-group__inner-container .wp-block-image {
    position: absolute;
    top: 0;
    right: 0;
    width: 40%;
}
@media screen and (max-width: 500px) {
    .top-contents-head .wp-block-group__inner-container .wp-block-image {
        top: 28px;
        right: -20px;
        width: 72%;
    }
}
.top-contents-box .wp-block-group__inner-container {
    position: relative;
    width: 80%;
    margin: 0 auto 130px;
    background-color: var(--back-color4);
    padding: 50px 5%;
    box-shadow: var(--shadow1);
    box-sizing: border-box;
}
@media screen and (max-width: 1000px) {
	.top-contents-box .wp-block-group__inner-container {
        width: 100%;
        margin: 0 auto 80px;
        padding: 30px 5%;
    }
}
.top-contents-box .wp-block-group__inner-container h3 {
    text-align: center;

}
.concept-h3 {
    text-align: left !important;
}
.read-more {
    position: relative;
    text-align: center;
    padding-bottom: 20px;
}
:root {
    --read-more-width: 15px;
}
.read-more::after {
    position: absolute;
    content: "";
    width: var(--read-more-width);
    height: var(--read-more-width);
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-left: var(--border-b1);
    border-bottom: var(--border-b1);
    transform: rotate(-45deg);
}
.contact-box figure.wp-block-image {
    width: 50%;
    margin: 20px auto 40px;
}
/*トップページ　記事一覧 */
.dwc-post-list-top {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: var(--border-g1);
}
.dwc-post-list-date {
    width: 22%;
    text-align: center;
    margin: 0;
}
.dwc-post-list-cate {
    width: 8%;
}
.dwc-post-list-cate a {
    display: block;
    width: 100%;
    background-color: var(--back-color2);
    color: white;
    text-align: center;
    font-size: var(--font-size12);
}
.dwc-post-list-title {
    width: 50%;
    text-align: left;
    padding: 0 10px 0 20px;
}
.dwc-post-list-btn {
    position: relative;
    width: 20%;
    text-align: center;
    color: var(--back-color5);
}
.dwc-post-list-btn::after {
    position: absolute;
    content: "";
    width: var(--btn-icon-width);
    height: var(--btn-icon-width);
    top: 0;
    bottom: 0;
    right: 10%;
    margin: auto 0;
    border-bottom: var(--border-g2);
    border-right: var(--border-g2);
    transform: rotate(-45deg);
}
@media screen and (max-width: 500px) {
	.dwc-post-list-date {
        width: 30%;
        text-align: left;
        padding-left: 10px;
        font-size: 12px;
    }
    .dwc-post-list-cate {
        width: 20%;
        margin-right: auto !important;
    }
    .dwc-post-list-cate a {
        line-height: 2;
    }
    .dwc-post-list-title {
        width: 100%;
        text-align: left;
        padding: 7px 10px;
    }
    .dwc-post-list-btn {
        position: relative;
        width: 28%;
        text-align: left;
        margin-left: auto;
    }
}

/*トップページ　商品一覧 */
.dwc-product-list {
    width: 100%;
    margin: 40px 0;
}
.dwc-product-list-img {
    width: 50%;
}
.dwc-product-list-img img {
    width: 90%;
    box-shadow: var(--shadow1);
}
.dwc-product-list-contents {
    width: 50%;
}
.dwc-product-list-date {
    font-size: var(--font-size14);
    padding: 0 0 5px;
    margin: 0 !important;
}
.dwc-product-list-contents h3 {
    text-align: left !important;
    margin-bottom: 15px;
}
.dwc-product-list-contents dl dt,
.dwc-product-list-contents dl dd {
    display: inline-block;
    padding: 10px 0;
    line-height: 1;
}
.dwc-product-list-contents dl dt {
    background-color: var(--back-color6);
    font-size: var(--font-size12);
    font-weight: 900;
    width: 20%;
    text-align: center;
}
.dwc-product-list-contents dl dd {
    font-size: var(--font-size14);
    width: 29%;
    padding: 0 0 0 10px;
}
.dwc-product-description {
    font-size: var(--font-size14);
}
.dwc-product-price {
    text-align: right;
    font-size: var(--font-size32);
    color: var(--accent-color3);
    line-height: 1;
}
.dwc-product-price span {
    position: relative;
    bottom: 3px;
    color: var(--text-color2);
    font-size: var(--font-size20);
}
@media screen and (max-width: 500px) {
	.dwc-product-list-img {
        width: 80%;
        margin: 0 auto 20px;
    }
    .dwc-product-list-img img {
        width: 100%;
        margin: 0 auto;
    }
    .dwc-product-list-contents {
        width: 100%;
    }
}

/*コンタクトBOX*/
.contact-box-inner {
    flex-basis: 33%;
}
.contact-box .wp-block-columns {
    justify-content: center !important;
}
@media screen and (max-width: 780px) {
    .contact-box .wp-block-columns {
        gap: 0 !important;
    }
	.contact-box .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 33% !important;
    }
    .contact-box .wp-block-button a {
        padding: 8px 14px 10px 5px !important;
        font-size: 10px !important;
    }
    .contact-box .wp-block-button.wp-block-button::after {
        width: 5px;
        height: 5px;
        right: 10%;
    }
}

/**************************************
　固定ページ基本デザイン
**************************************/
/*ページタイトル部分*/

/*ぱんくず*/
.p-breadcrumb {
    background-color: var(--back-color2);
    padding: 8px 10px;
}
.p-breadcrumb__list {
    display: flex !important;
    align-items: center;
    list-style: none;
    overflow: hidden;
    width: 100%;
    max-width: var(--max-width) !important;
    margin: 0 auto !important;
}
.p-breadcrumb__text {
    display: flex;
    font-size: var(--font-size12);
    color: var(--back-color6);
    align-items: center;
}
.p-breadcrumb__text svg {
    fill: var(--back-color6);
}
.p-breadcrumb__item:after {
    border-right: 1px solid var(--back-color6);
    border-top: 1px solid  var(--back-color6);
    width: 6px;
    height: 6px;
    opacity: 1;
}

/*ページ内設定*/
.p-page {
    padding: 3vw 3vw 8vw;
}
@media screen and (max-width: 500px) {
    .p-page {
        padding: 6vw 3vw 15vw;
    }
}
.p-page__content {
    padding: 4vw;
    background-color: var(--back-color4);
    box-shadow: var(--shadow1);
}
@media screen and (max-width: 500px) {
    .p-page__content {
        padding: 8vw 4vw;
    }
}
.p-page__content h2 {
    position: relative;
    margin: 40px 0 20px;
    padding: 0 0 8px 25px;
    font-size: var(--font-size26);
    border-bottom: 2px solid var(--accent-color2);
    color: var(--text-color1) !important;
}
.p-page__content h2::before {
    position: absolute;
    content: "";
    border-top: 10px solid var(--accent-color2);
    border-left: 10px solid var(--accent-color2);
    border-bottom: 10px solid transparent;
    border-right: 10px solid transparent;
    top: 0;
    left: 0;
}
/* カラム使用時のh2設定 */
.wp-block-column h2 {
    margin-top: 10px !important;
}
.p-page__content h3 {
    position: relative;
    margin: 30px 0 25px;
    padding: 0 0 0 25px;
    font-size: var(--font-size24);
    color: var(--text-color1) !important;
}
.p-page__content h3::before {
    position: absolute;
    content: "";
    border-left: 4px solid var(--accent-color2);
    top: 0;
    bottom: 0;
    left: 6px;
    margin: auto 0;
}
.p-page__content h4 {
    position: relative;
    margin: 25px 0 20px;
    padding: 0 0 0 25px;
    font-size: var(--font-size20);
}
.p-page__content h4::before,
.p-page__content h4::after {
    position: absolute;
    content: "";
    width: 12px;
    height: 2px;
    background-color: var(--accent-color2);
    top: 0;
    bottom: 0;
    left: 6px;
    margin: auto 0;
}
@media screen and (max-width: 500px) {
    .p-page__content h2 {
        margin: 30px 0 20px;
    }
    .p-page__content h3 {
        margin: 25px 0 20px;
    }
    .p-page__content h4 {
        margin: 20px 0 15px;
    }
}
.p-page__content h4::after {
    transform: rotate(90deg);
}
.p-page__content p {
    font-size: var(--font-size16);
    margin: 15px 0 !important;
    padding-left: 10px;
    font-weight: normal;
}

/*事業内容ページ*/
.business-block {
    width: 100%;
    margin: 20px 0;
    justify-content: space-between !important;
}
.business-block-inner {
    position: relative;
    width: 32%;
    height: 200px;
    z-index: 1;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    margin-bottom: 15px;
    box-shadow: var(--shadow1);
}
@media screen and (max-width: 500px) {
    .business-block-inner {
        position: relative;
        width: 100%;
        height: 120px;
    }
}
.type-gym {
    background-image: url(../images/dwc-gym-img1.jpg);
}
.type-school {
    background-image: url(../images/dwc-school-img1.jpg);
}
.type-restaurant {
    background-image: url(../images/dwc-restaurant-img1.jpg);
}
.business-block-inner::after {
    position: absolute; 
    content: "";
    width: 100%;
    height: 100%;
    background-color: var(--back-color7);
    z-index: 2;
}
.business-block-inner p {
    width: 100%;
    text-align: center;
    margin: 0 auto !important;
    color: white;
    font-size: var(--font-size24);
    font-weight: 600;
    z-index: 3;
    text-shadow: var(--shadow3);
}

/**************************************
　投稿ページ
**************************************/

.l-sidebar {
    display: none;
}
.single .l-main {
    width: 100% !important;
}
.p-entry {
    width: 100%;
    max-width: 100%;
    padding: 0 0 100px;
}
.p-entry__head {
    position: relative;
    height: fit-content;
    padding: 7vw 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.p-entry__head::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--back-color3);
}
.p-entry__thumb {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    margin: 0;
}
.p-entry__thumb__img {
    display: block;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}
.p-entry__title {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1360px;
    margin: 0;
    padding: 0 4vw;
}
.p-entry__title h1 {
    font-size: var(--font-size32);
}
.p-entry__head .c-postMetas {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1360px;
    margin: 0;
    padding: 20px 4vw 0;
}
.p-entry__content,
.p-entry__foot,
.p-comments {
    width: 90%;
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 5vw 4vw;
    background-color: var(--back-color4);
    box-shadow: var(--shadow1);
}

.comment-author .avatar {
    border-radius: 50%;
    width: 65px;
}

/**************************************
　商品ページ
**************************************/
.woocommerce .p-page__content h2 {
    color: var(--text-color1);
    border: none;
    text-shadow: none;
}
.woocommerce .p-page__content h2::before {
    display: none;
}
.woocommerce .products ul, .woocommerce ul.products {
    margin: 0 0 1em;
    padding: 0;
    list-style: none outside;
    clear: both;
    display: flex;
    flex-wrap: wrap;
}
@media screen and (max-width: 500px) {
    .woocommerce ul.products[class*=columns-] li.product,
    .woocommerce-page ul.products[class*=columns-] li.product {
        width: 90%;
        margin: 0 auto 2em;
    }
}

/**************************************
　アーカイブページ
**************************************/
.p-archive {

}

/**************************************
　お問い合わせページ
**************************************/
/* フォームスタイル */


/**************************************
　その他
**************************************/
/* ページ下部オファーブロックの上にmargin */
.single-bottom {
    margin-top: 5vw;
}

/**************************************
　Woocommerceデザイン修整
**************************************/
/*商品サムネイルの隙間調整*/
.woocommerce div.product div.images .flex-control-thumbs {
    padding: 2px 0 0;
}
.woocommerce div.product div.images .flex-control-thumbs li {
    padding-right: 2px;
}
.woocommerce div.product div.images .flex-control-thumbs li:last-child {
    padding-right: 0;
}
/*タブ下部のh2を非表示*/
.woocommerce div.product .woocommerce-tabs .panel h2 {
    display: none;
}
/*ボタンの初期設定カラーを変更*/
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    background-color: var(--accent-color2);
    border-radius: 0;
    transition: 0.5s;
}
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
    background-color: var(--accent-color2);
    opacity: 0.5;
}
/*メッセージボックスの初期設定カラーを変更*/
.woocommerce-message,
.woocommerce-info {
    border-top-color: var(--accent-color2);
}
.woocommerce-message::before,
.woocommerce-info::before {
    color: var(--accent-color2);
}
/*商品関連のテーブル修整*/
thead td, thead th {
    background-color: var(--accent-color2);
}
.product-remove {
    width: 30px;
}
.product-thumbnail {
    width: 100px;
}
#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
    width: 80px;
}
/*配送先設定ページ*/
.woocommerce-checkout h3 {
    color: var(--accent-color3);
    font-size: var(--font-size20);
}
.woocommerce-shipping-fields {
    margin: 0 0 30px 0;
}
.wc_payment_method label img {
    width: 40px;
    display: inline-block;
}
/*マイアカウント　メニュー*/
.woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.woocommerce-MyAccount-navigation-link {
    position: relative;
    width: 90%;
    border-bottom: 1px solid var(--back-color6);
    padding: 10px 10px 10px 25px;
    line-height: 1;
    margin: 0 auto 20px;
}
.woocommerce-MyAccount-navigation-link::before {
    position: absolute;
    content: "";
    width: 7px;
    height: 7px;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
    border-top: 2px solid var(--accent-color2);
    border-right: 2px solid var(--accent-color2);
    transform: rotate(45deg);
}
.woocommerce-MyAccount-navigation-link a {
    color: var(--accent-color2);
    font-weight: 600;
}
@media screen and (max-width: 500px) {
    .woocommerce-MyAccount-navigation-link {
        width: 45%;
    }
}
