@charset "utf-8";
/*
Theme Name:mrp-child
Template:mrp
Version: 1.0.0
*/
/*
DesignCode CSS: ver 0.01
*/
/*------------------------------------------------------
Theme Material
------------------------------------------------------*/
/*------@import------*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@500;600;700&display=swap');
:root {
	/*------▼基本設定▼------*/
	--color-background: #fff;
    --color-font: #444;
    --color-primary: #E9775D;
    --color-primary-shade: #DA5C40;
    --color-primary-tint: #F79983;
    --color-secondary: #FFBC36;
    --color-secondary-tint: #FFCC67;
    --color-table-border: #ccc;
	--body-font-size: min(calc(1.6rem + (1vw - 1.92rem) * 0.1294), 1.6rem); /* 1.6-1.4rem (1920-375) */
	--body-font-family: 'Zen Kaku Gothic New', sans-serif;
	--content-max-width: 1800px;
	/*------▼ヘッダー設定▼------*/
	--header-background: #fff;
    --header-color-font: #444;
    --header-color-primary: #C87637;
    --header-color-primary-shade: #FFBC36;
    --header-color-primary-tint: #FFCC67;
	/*------▼フッター設定▼------*/
	--footer-background: #111;
    --footer-color-font: #fff;
    --footer-color-primary: #fff;
	/*------▼フォント設定▼------*/
	--body-font-family: 'Zen Kaku Gothic New', sans-serif;
    --font-family02: 'Cormorant Garamond', 'Zen Kaku Gothic New', sans-serif;
    --font-family03: "Zen Old Mincho", serif;
}



.post p {
    line-height: 1.8;
}
body.page-id-25{
    background-image: url("/wp-content/uploads/bg01.jpg.webp");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: left bottom;
}

body.page-id-25 #footer {
    background: transparent;
}


body:not(.page-id-25){
    background: url("/wp-content/uploads/bg.jpg.webp") repeat-y top left;
    background-size: 100% auto;
}

body:not(.page-id-25) #footer{
    background-image: url("/wp-content/uploads/bg01.jpg.webp");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: left bottom;
}


#wrapper{
    width: 100%;
    max-width: 100%;
}

@media print, screen and (max-width: 1023px) {
    #content, #content.wide {
        width: 100%;
    }
    html{
        scroll-padding-top: 60px;
    }
}

header#h1Header {
    background: url("/wp-content/uploads/title_bg1920.jpg.webp") top center no-repeat;
    background-size: cover;
}

header#h1Header .title.first span{
    background-color: rgba(0,0,0,0.6);
    display: inline-block;
    padding: 0.5em 3.5em;
}

@media screen and (max-width: 462px) {
    header#h1Header .title.first span{
        padding: 0.5em 1em;
    }
}

@media screen and (max-width: 768px) {
	.w10, .w20, .w30, .w40, .w50, .w60, .w70, .w80, .w90 {
		width: 100%;
		margin-bottom: 0;
        padding-bottom: 20px;
	}
    .w10.imgarea, .w20.imgarea, .w30.imgarea, .w40.imgarea, .w50.imgarea, .w60.imgarea, .w70.imgarea, .w80.imgarea, .w90.imgarea {
		text-align: center;
        margin-inline: auto;
	}
}

body:not(.home) section:not(:first-child){
    padding: var(--px120) 0 0;
}

#content, body:not(.home) #content.wide {
    padding: var(--px100w) 0 var(--px100w);
}

@media print, screen and (max-width: 768px) {
    .front_contents {
            padding: var(--px100) 0;
    }
    body:not(.home) section:not(:first-child){
            padding: var(--px100) 0;
    }
}

.background{
    background-image: url("/wp-content/uploads/bg02.jpg.webp");
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}

@media print, screen and (max-width: 1024px) {
    #thumbImg, header#h1Header {
        height: calc(200px + (1vw - 10.24px) * 9.2450);
    }
}

/*------h1タイトル
--------------------------------------------*/
h1.title, .post h1, header#h1Header h1.title {
    font-family: var(--font-family03);
    font-size: var(--rem36);
}
/*------h2タイトル
--------------------------------------------*/
.post h2 {
    font-size: var(--rem28);
    font-weight: 600;
    font-family: var(--font-family03);
    border-bottom: solid 1px;
    padding: 0 0 1rem 0;
    letter-spacing: .1rem;
}

.post h2.left{
    text-align: left;
}
.post h2.left::after{
    text-align: left;
    margin: 0.6em 0 0;
    height: 2px;
}
/*------h3タイトル
                --------------------------------------------*/
.post h3 {
    font-size: var(--rem24);
    font-weight: 600;
    letter-spacing: .1rem;
    margin: var(--rem60) auto var(--rem30);
    font-family: var(--font-family03);
    border-bottom: none;
    padding-left: 0;
}
.post h3::after {
    content: '';
    position: relative;
    visibility: visible;
    display: block;
    width: 2.2em;
    height: 3px;
    background: var(--color-primary);
    margin: 0.6em auto 0 0;
}
/*------h4タイトル
                --------------------------------------------*/
.post h4 {
    position: relative;
    padding: 0.5em 1em;
    margin: var(--rem30) auto 1rem;
    font-family: var(--font-family01);
    background: var(--color-primary);
    color: #fff;
    font-weight: 600;
}
.post h4::before {
    content: none;
}

.post table th {
    font-weight: 500;
}



/*---------txtstyle05-----------*/

.post .txtstyle05,
.txtstyle05 {
    font-size: var(--rem40);
    font-family: var(--font-family03);
    font-weight: 600;
    text-align: center;
    color: #111;
    line-height: 1.4;
    overflow-wrap: break-word;
    padding: 0;
    margin: var(--rem42) auto var(--rem30);
    border: none;
    background: transparent;
    letter-spacing: .4rem;
    &.left{
    text-align: left;
    }
    &.white{
        color: #fff;
    }
}

.post .txtstyle05:before,
.txtstyle05:before,
.post .txtstyle05:after,
.txtstyle05:after {
    content: none;
}

.post .txtstyle05 .subtxt,
.txtstyle05 .subtxt {
    display: block;
    font-size: var(--rem20);
    font-weight: 600;
    padding: 0;
    margin: var(--px20) 0 0;
    border: none;
    background: transparent;
    font-family: var(--font-family02);
    color: var(--color-primary);
    letter-spacing: .2rem;
}

@media print,
screen and (max-width: 768px) {

    .post .txtstyle05,
    .txtstyle05 {
        margin: 0 auto var(--rem30);
    }
    .post h3 {
        margin-bottom: var(--rem20);
    }
}

/*---------txtstyle03 -----------*/

.post .txtstyle03,
.txtstyle03 {
    font-size: var(--rem24);
    font-family: var(--font-family03);
    font-weight: 600;
    text-align: center;
    color: #111;
    line-height: 1.4;
    overflow-wrap: break-word;
    padding: 0;
    margin: var(--rem42) auto var(--rem30);
    border: none;
    background: transparent;
    letter-spacing: .4rem;
    &.left{
    text-align: left;
    }
    &.white{
        color: #fff;
    }
}

.post .txtstyle03:before,
.txtstyle03:before,
.post .txtstyle03:after,
.txtstyle03:after {
    content: none;
}

.post .txtstyle03 .subtxt,
.txtstyle03 .subtxt {
    display: block;
    font-size: var(--rem20);
    font-weight: 600;
    padding-bottom: 1em;
    border: none;
    background: transparent;
    font-family: var(--font-family03);
    color: var(--color-primary);
    letter-spacing: .2rem;
}

@media print,
screen and (max-width: 768px) {

    .post .txtstyle03,
    .txtstyle03 {
        margin: 0 auto var(--rem30);
    }
}

/*---------txtstyle02 -----------*/

.post .txtstyle02,
.txtstyle02 {
    font-family: var(--font-family03);
    font-size: var(--rem36);
    font-weight: 600;
    text-align: left;
    margin: var(--rem36) auto;
    background: transparent;
    color: #111;
    line-height: 1.4;
    padding: 0;
    border-bottom: none;
}

.post .txtstyle02:before,
.post .txtstyle02:after,
.txtstyle02:before,
.txtstyle02:after {
    content: none;
}

.post .card01_list .txtstyle02,
.card01_list .txtstyle02 {
    font-size: var(--rem30);
    border-bottom: none;
    margin: 0 0 20px;
}


/*---------card01_wrap----------*/

.card01_wrap {
    position: relative;
    margin: var(--px60) 0 0;
}

.card01_list>li {
    position: relative;
    background: transparent;
}

.card01_list .imgarea {
    width: 100%;
    position: relative;
    aspect-ratio: 46 / 30;
    overflow: hidden;
    line-height: 0;
}

.card01_list .imgarea img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card01_list .txtarea {
    padding: var(--px20) 0 0 0;
    line-height: 1.6;
    text-align: left;
    background: transparent;
    flex-wrap: wrap;
    gap: 10px;
}

/*---------col2_list-----------*/

.col2_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: var(--px40);
}

.col2_list {
    position: relative;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.col2_list::before {
    content: "";
    display: block;
    width: calc(100% / 2 - var(--px40));
    order: 1;
}

.col2_list:after {
    content: "";
    display: block;
    width: calc((100% - (var(--px40) * 1)) / 2);
    order: 2;
}

.col2_list>li {
    width: calc((100% - (var(--px40) * 1)) / 2);
}

@media print,
screen and (max-width: 768px) {
    .col2_list>li {
        width: calc((100% - (var(--px40)* 1)) / 2);
    }
}

@media print,
screen and (max-width: 414px) {
    .col2_list>li {
        width: 100%;
    }
}

/*---------col3_list-----------*/

.col3_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: flex-start;
    gap: var(--px40);
}

.col3_list {
    position: relative;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.col3_list::before {
    content: "";
    display: block;
    width: calc(100% / 3 - var(--px40));
    order: 1;
}

.col3_list:after {
    content: "";
    display: block;
    width: calc((100% - (var(--px40) * 2)) / 3);
    order: 2;
}

.col3_list>li {
    width: calc((100% - (var(--px40) * 2)) / 3);
}

@media print,
screen and (max-width: 768px) {
    .col3_list>li {
        width: 100%;
    }
}

@media print,
screen and (max-width: 414px) {
    .col3_list>li {
        width: 100%;
    }
}

/*---------col4_list-----------*/

.col4_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 5px;
    position: relative;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.col4_list::before {
    content: "";
    display: block;
    width: calc(100% / 4 - 5px);
    order: 1;
}

.col4_list:after {
    content: "";
    display: block;
    width: calc((100% - (5px * 3)) / 4);
    order: 2;
}

.col4_list>li {
    width: calc((100% - (5px * 3)) / 4);
}

@media print,
screen and (max-width: 1020px) {
    .col4_list>li {
        width: calc((100% - (5px * 1)) / 2);
    }
}

@media print,
screen and (max-width: 768px) {
    .col4_list>li {
        width: calc((100% - (5px * 1)) / 2);
    }
}

@media print,
screen and (max-width: 414px) {
    .col4_list {
        gap: 20px;
    }
    .col4_list>li {
        width: 100%;
    }
}

/*-----------------------------
header
------------------------------*/

@media screen and (min-width: 1024px) and (max-width: 1200px) {
    #header a.head_btn.cart_btn01 .sub{
        display: none;
    }
}

@media screen and (min-width: 1024px) and (max-width: 1400px) {
    nav#mainNav ul li a {
        padding: var(--px20) 5px;
        font-size: 13px;
    }
}

@media screen and (min-width: 1401px) and (max-width: 1500px)  {
    nav#mainNav ul li a {
        padding: var(--px20) var(--px20);
    }
}

@media screen and (min-width: 1501px) {
    nav#mainNav ul li a {
        padding: var(--px20) var(--px40);
    }
}

#header a.head_btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: var(--header-color-primary);
    color: #fff;
    font-size: calc(1.6rem + (1vw - 1.92rem) * 0.2232); /* 1.6-1.4rem (1920-1024) */
    font-weight: 600;
    line-height: 1.4;
    padding: min(calc(10px + (1vw - 19.2px) * 0.2232), 10px) min(calc(20px + (1vw - 19.2px) * 0.5580), 20px); /* 10-8px、20-15px (1920-1024) */
    -webkit-transition: .3s;
    transition: .3s;
}

@media print, screen and (min-width: 1600px) {
    #header a.head_btn {
        min-width: 210px;
    }
}

.header__contact{
    padding-left: var(--px20);
}

#header a.head_btn.cart_btn01 {
    background: var(--header-color-primary-shade);
}
#header a.head_btn.cart_btn02 {
    background: var(--header-color-primary);;
}
#header a.head_btn:hover {
    background: var(--header-color-primary-tint);
}
#header a.head_btn::before {
    display: block;
    font-family: 'FontAwesome';
    font-size: 1.4em;
    font-weight: 400;
    line-height: 1;
    margin-bottom: .1em;
}
#header a.head_btn.cart_btn02::before {
    content: '\f07a';
}
#header a.head_btn.cart_btn01::before {
    content: '\f07a';
}

/*-----------------------------
cta01
------------------------------*/

#footer li a:hover{
    text-decoration: none !important;
}

#footer .cta01 {
	position: relative;
	z-index: 0;
    padding-bottom: var(--px100);
}
#footer .cta01 .cta01_wrap {
	max-width: 1600px;
    width: 98%;
    margin: 0 auto;
}
#footer .cta01 .ctabtnlist {
    justify-content: space-between;
    max-width: 100%;
    margin: var(--px50) auto 0 auto;
}

#footer .cta01 .ctabtnlist li {
    width: 25%;
    margin: 0;
    padding: 0;
    line-height: 1;
    display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--px30) 0;
    text-align: center;
    box-sizing: border-box;
    color: #111;
    border-radius: 0;
    transition: all ease .15s;
    gap: 10px;
}

#footer .cta01 .ctabtnlist li:nth-of-type(1) {
    background: #332B23;
}

#footer .cta01 .ctabtnlist li:nth-of-type(2) {
    background: #6F6051;
}

#footer .cta01 .ctabtnlist li:nth-of-type(3) {
    background: #fff;
}

#footer .cta01 .ctabtnlist li:nth-of-type(4) {
    background: #06C755;
}

#footer .cta01 .ctabtnlist li .item{
    max-width: 225px;
    width: 90%;
    padding: 10px 0;
}

#footer .cta01 .ctabtnlist li .item:after{
    display: none;
}

#footer .cta01 a:hover{
	opacity: 0.8;
}
	
/*ボタン共通パーツ*/
	
#footer .cta01 .btnttl {
	display: block;
	font-weight: bold;
    font-size: var(--rem18);
    color: #fff;
}
#footer .cta01 .infotxt {
	font-size: var(--rem16);	
	font-weight: 600;
    color: #fff;
    font-family: var(--font-family03);
}

#footer .cta01 .ctabtnlist li:nth-of-type(3) .infotxt{
    color: var(--color-font);
}

/*カートボタン*/
#footer .cta01 a.cartbtn01 {
    background: #FFBC36;
}

#footer .cta01 a.cartbtn02 {
    background: #C87637;
}

/*メールボタン*/
#footer .cta01 a.mailbtn {
    background: var(--color-primary);
}
	
/*LINEボタン*/	
#footer .cta01 a.linebtn {
    background: #fff;
    color: #06C755;
}
#footer .cta01 .linebtn .btnttl {
    color: #06C755;
}

/*ボタンアイコン*/
	
#footer .cta01 .cartbtn01 .btnttl::before,
#footer .cta01 .cartbtn02 .btnttl::before,
#footer .cta01 .mailbtn .btnttl::before,
#footer .cta01 .linebtn .btnttl::before {
	content: '';
	display: inline-block;
	font-family: 'Font Awesome 5 Free', 'FontAwesome';
	font-weight: 900;
	margin-right: 1rem;
}
#footer .cta01 .cartbtn01 .btnttl::before {
	content: '\f07a';
}
#footer .cta01 .cartbtn02 .btnttl::before {
	content: '\f07a';
}
#footer .cta01 .mailbtn .btnttl::before {
	content: '\f0e0';
}
#footer .cta01 .linebtn .btnttl::before {
    content: '\f3c0';
	font-weight: 400;
}


@media print, screen and (max-width: 768px) {
    #footer{
        padding-top: 0;
        margin-top: 0;
    }
    #footer .footer__logo:not(:last-child) {
        padding-top: 20px;
    }
    #footer .cta01 {
        background: #6F6051;
    }
    #footer .cta01 .ctabtnlist {
        margin-top: 0;
    }
	#footer .cta01 .ctabtnlist li{
		width: 100%;
	}
    #footer .cta01 .ctabtnlist li:nth-of-type(1) {
        background: none;
    }

    #footer .cta01 .ctabtnlist li:nth-of-type(2) {
        background: none;
    }

    #footer .cta01 .ctabtnlist li:nth-of-type(3) {
        background: none;
    }

    #footer .cta01 .ctabtnlist li:nth-of-type(4) {
        background: none;
    }
    #footer .cta01 .ctabtnlist li:nth-of-type(3) .infotxt{
        color: #fff;
    }
    #footer .cta01 .ctabtnlist li .item{
        max-width: 500px;
        padding: 18px 0;
    }
}

/*-----------------------------
トップページ
------------------------------*/

@media print,
screen and (min-width: 769px) {
    #metaslider-id-98 {
        display: block;
    }

    #metaslider-id-211 {
        display: none;
    }
}

@media print,
screen and (max-width: 768px) {
    #metaslider-id-98 {
        display: none;
    }

    #metaslider-id-211 {
        display: block;
    }
    .front_contents.sec01{
        padding-top: var(--px60);
    }
}

.googlemap.googlemap_top {
    padding-bottom: 75%;
}

.front_contents.sec01 {
    background: linear-gradient(to bottom, #281D19, #876944);
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.front_contents.sec01 p{
    color: #fff;
    font-size: var(--rem18);
	line-height: 2;
}

@media print,
screen and (max-width: 768px) {
    .top_aboutus_img{
        width: 235px;
        height: auto;
        text-align: center;
        margin-inline: auto;
    }
}

.bg_wrap01{
    background-image: url("/wp-content/uploads/bg01.jpg.webp");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right bottom;
}

.front_contents.sec02{
    padding-bottom: 0;
}

.front_contents.sec02 .col3_list>li{
    background: #fff;
    border-radius: var(--px100);
    padding: var(--px20) var(--px60) var(--px40);
    position: relative;
}

.front_contents.sec02 .col3_list>li .top_strenges01{
    position: absolute;
    bottom: 20%;
    left: -20%;
}

.front_contents.sec02 .col3_list>li .top_strenges02{
    position: absolute;
    bottom: -10%;
    right: -10%;
}

.front_contents.sec02 .col3_list>li .top_strenges03{
    position: absolute;
    top: -10px;
    right: -10%;
}

@media print,
screen and (max-width: 1800px) {
    .front_contents.sec02 .col3_list>li .top_strenges01{
        position: absolute;
        top: -40px;
        bottom: auto;
        left: 5px;
        width: 69px;
        height: 119px;
     }

    .front_contents.sec02 .col3_list>li .top_strenges02{
        position: absolute;
        bottom: auto;
        top: -10px;
        right: 5px;
        width: 42px;
        height: 72px;
    }

    .front_contents.sec02 .col3_list>li .top_strenges03{
        position: absolute;
        top: -10px;
        right: 0;
        width: 42px;
        height: 65px;
    }
}

.front_contents.sec03 .col4_list{
    align-items: stretch !important;
}

.front_contents.sec03 .col4_list>li{
    background: #fff;
}

.front_contents.sec03 .col4_list>li .txtarea{
    padding: var(--px40) var(--px20);
}

.front_contents.sec04{
    background-image: url(/wp-content/uploads/bg02.jpg.webp);
    background-size: cover;
    background-position: top right;
}

.front_contents.sec05 .max_w1300{
    background: #fff;
    text-align: center;
    margin-inline: auto;
}

.sec05 .max_w1100{
    text-align: center;
    margin-inline: auto;
    position: relative;
}


@media print,
screen and (max-width: 768px) {
    .front_contents.sec05{
        background: #6F6051;
    }
    .sec05 .max_w1100{
        padding: 0 20px;
    }
    .sec05 .max_w1100 .pt10,
    .sec05 .max_w1100 .pb10{
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

.front_contents.sec05 .max_w1100 .top_company01{
    position: absolute;
    top: -50px;
    left: -5%;
}

.front_contents.sec05 .max_w1100 .top_company02{
    position: absolute;
    bottom: -30px;
    right: -40px;
}


@media print,
screen and (max-width: 1800px) {
    .front_contents.sec05 .max_w1100 .top_company01{
        position: absolute;
        top: auto;
        bottom: -30px;
        left: 0;
        width: 96px;
        height: 58px;
    }

    .front_contents.sec05 .max_w1100 .top_company02{
        position: absolute;
        bottom: -30px;
        right: 0;
        width: 83px;
        height: 55px;
    }
}


.post .front_contents.sec05 table.table_top_company{
    max-width: 500px;
}

@media print,
screen and (max-width: 768px) {
    .front_contents.sec05 .flexbox{
        align-items: flex-start;
        flex-direction: column-reverse;
        display: flex;
        padding-bottom: 0 !important;
    }
    .post .front_contents.sec04 table.table_top_company{
        max-width: 100%;
    }
    .front_contents.sec05 .flexbox .w50{
        margin-bottom: 0;
    }
    .front_contents.sec05 .flexbox .w50 .linkBtn{
        margin-bottom: 40px;
    }
}

.post .front_contents.sec05 table.table_top_company th{
    padding: 0 0 var(--rem14) 0;
}

.post .front_contents.sec05 table.table_top_company td{
    padding: 0 0 var(--rem14) var(--rem16);
}

.post .front_contents.sec05 table.table_top_company,
.post .front_contents.sec05 table.table_top_company th,
.post .front_contents.sec05 table.table_top_company td{
    border: none;
    background: none;
    font-weight: 500;
}

.top-item-slider {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.slick-initialized {
  opacity: 1;
}

.top-item-slider-box{
  width: 100%;
}

.top-item-slider{
  width: calc(100% - 80px);
  max-width: 100%;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .top-item-slider{
    max-width: calc(100% - 80px);
  }
  .top-item-slider-box .linkBtn{
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    width: 94%;
  }
}
.top-item-slider .slick-slide {
  margin: 0 10px;
  text-align: center;
}

.top-item-slider .slick-slide img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.3 / 1;
  object-fit: cover;
  margin-bottom: var(--px20) 
}
.top-item-slider .slick-prev,
.top-item-slider .slick-next {
  z-index: 1;
}
.top-item-slider .slick-prev:before,
.top-item-slider .slick-next:before {
  color: #000;
}
.top-item-slider .slick-slide {
  transition: all ease-in-out .3s;
  opacity: .2;
}
.top-item-slider .slick-active {
  opacity: 1;
}

.top-item-slider.slick-slider i { 
  font-size: 2.5em; 
  position: absolute; 
  top: 50%;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%); 
  z-index: 1;
} 
.top-item-slider.slick-slider i.fa-chevron-left {
  left: 3%; 
} 
.top-item-slider.slick-slider i.fa-chevron-right { 
  right: 3%;
}

.top-item-slider.slick-slider .slide-arrow {
    bottom: 0;
    cursor: pointer;
    margin: auto;
    position: absolute;
    top: 0;
    width: 40px;
}
.top-item-slider.slick-slider .prev-arrow {
    left: -40px;
    z-index: 10;
}
.top-item-slider.slick-slider .next-arrow {
    right: -40px;
    z-index: 10;
}

/*-----------------------------
sec-itemlist
------------------------------*/

.sec-itemlist .navigation.pagination{
    width: 100%;
    display: block;
}

.sec-itemlist .nav-links {
    text-align: center;
    margin: 80px auto 0;
}
@media (max-width: 768px) {
.sec-itemlist .nav-links {
    margin: 40px auto 0;
}
}
.sec-itemlist .nav-links .page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
.sec-itemlist .nav-links .page-numbers {
    gap: 7px;
}
}
.sec-itemlist .nav-links .page-numbers li {
    width: 55px;
}
.sec-itemlist .nav-links .page-numbers li .page-numbers {
    width: 55px;
    height: 55px;
    display: block;
    border-radius: 50%;
    background: #fff;
    color: #222;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.sec-itemlist .nav-links .page-numbers li .page-numbers.current {
    background: var(--color-primary);
    color: #fff;
}

.card01cat{
    background: var(--color-primary);
    color: #fff;
    display: inline-block;
    padding: 2px 10px;   
}

@media screen and (max-width: 768px) {
    .card01cat{
        margin-bottom: 8px;
    }
}


.side_item_cat dt{
    background: #6F6051;
    color: #fff;
    padding: 5px 10px;

}

.side_item_cat dd{
    border: 1px solid #6F6051;
}

.side_item_cat li{
    padding-left: 1em;
}

.side_item_cat li a{
    display: block;
    padding: 7px 0 7px 0;
    border-bottom: 1px dashed #DCDCDC;
    position: relative;
}

.side_item_cat li a:after {
    content: "";
    position: absolute;
    top: 42%;
    right: 10px;
    width: 7px;
    height: 7px;
    border-top: 1px solid #6F6051;
    border-right: 1px solid #6F6051;
    transform: rotate(45deg);
}

.itemlist_flex{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: var(--px60);
}

.itemlist_main{
    width: calc(100% - var(--px60) - 160px);
}

.itemlist_side{
    width: 160px;
}

@media only screen and (max-width: 600px) {
    .itemlist_flex{
        flex-direction: column;
    }

    .itemlist_main{
        width: 100%;
    }

    .itemlist_side{
        width: 100%;
    }
}

/*-----------------------------
item　single
------------------------------*/


.detailset dl div{
  display: flex;
  width: 100%;
  margin-bottom: 10px;
  align-items: stretch;
  justify-content: flex-start;
}
.detailset dl div dt{
    color: #fff;
    width: 140px;
    padding: 10px 0px 10px 15px;
    background: #6F6051;
}
.detailset dl div dd{
  width: calc(100% - 140px);
  padding: 10px 0 10px 15px;
}

@media screen and (max-width: 768px) {
    .detailset dl div dt{
        width: 110px;
        padding: 5px 0px 5px 7px;
    }
    .detailset dl div dd{
        width: calc(100% - 110px);
        padding: 5px 0px 5px 7px;
    }
}

.detailset dl div dd .detailname{
  font-weight: 700;
}

.slider_container {
    display: none;
    transition: all .3s;
}

.slider_container:has(.slick-initialized) {
    display: block; 
}

.thumbnail-slider{
    margin-top: 20px;
}

.thumbnail-slider li {
  width: 15% !important;
  margin:2px;
  border: 1px solid #fff;
}

.thumbnail-slider .slick-track {
  transform: unset !important;
  width:100% !important;
  cursor: pointer;
}

.thumbnail-slider .slick-track .slick-slide.slick-current.slick-active{
    border: 1px solid var(--color-primary);
}

.thumbnail-slider .slick-slide img {
  width: 100%;
  height: 80px;
  object-fit: contain;
  background: #f5f5f5; /* 余白が出るので背景色を入れると綺麗 */
}

.post table.detailTBL th {
    background: #e5e3db;
    vertical-align: middle;
    width: auto;
    white-space: nowrap;
    font-size: var(--rem18);
}

.post table.detailTBL td {
    vertical-align: middle;
}

.post table.detailTBL td.price{
    font-size: var(--rem20);
    text-align: right;
}

.post table.detailTBL td.item_link_btn{
    text-align: right
}

.post table.detailTBL td.item_link_btn .flexbox{
    gap: 15px;
}

.singlecartbtn{
    width: 100%;
    padding: 10px 15px;
    background: #FFBC36;
    position: relative;
    display: flex;
    flex-direction: column;
    color: #fff;
    text-align: center;
    margin: 0 auto;
    border-radius: 5px;
    transition: all .3s;
}


@media screen and (max-width: 768px) {
    .post table td.item_link_btn .flexbox .singlecartbtn{
        margin: 5px auto;
    }
    .singlecartbtn{
        padding: 10px 10px;
    }
}

.singlecartbtn.singlecartbtn02{
    background: #C87637;
}
	
.singlecartbtn .btnttl {
	font-weight: bold;
    font-size: var(--rem18);
    color: #fff;
    font-weight: 500;
}

.singlecartbtn::before {
    display: inline-block;
    font-family: 'FontAwesome';
    font-size: 1.4em;
    font-weight: 400;
    line-height: 1;
    content: '\f07a';
    color: #fff;
}
.singlecartbtn:hover{
	opacity: 0.8;
}


.post .subimitarea .linkBtn input[type="submit"] {
    padding: 0 35px 0 10px;
}

.post .subimitarea .linkBtn {
    max-width: 400px;
    padding: 20px 5px 20px 10px
}

/*-----------------------------
about
------------------------------*/

#post-164 .sec02{
    background-image: url(/wp-content/uploads/bg01.jpg.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
    padding-bottom: var(--px120);
    margin-top: var(--px120);
}

#post-164 .sec02 .col3_list{
    align-items: stretch !important;
}

#post-164 .sec02 .col3_list>li{
    background: #fff;
}

#post-164 .sec02 .col3_list>li .txtarea{
    padding: var(--px40) var(--px20);
}


#post-164 .sec03 .strenges_list{
    display: flex;
    flex-direction: column;
    padding-top: var(--px40);
}

#post-164 .sec03 .strenges_list .txtarea{
    padding: 0 var(--px40);
}

#post-164 .sec04 .availavle_list{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--px40);
    align-items: flex-start;
    margin-top: var(--px40);
}

#post-164 .sec04 .availavle_list li{
    width: calc((100% - var(--px40)) / 2);
    gap: var(--px40);
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: var(--px20);
    align-items: flex-start;
}

#post-164 .sec04 .availavle_list li .txtarea{
    width: 100%;
}

#post-164 .post .sec04 img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: #fff;
    text-align: center;
    margin-inline: auto;
}

@media print, screen and (max-width: 768px) {
    #post-164 .sec02{
        padding-bottom: var(--px100);
        margin-top: var(--px100);
    }
    #post-164 .sec03 .strenges_list .txtarea{
        padding: var(--px20) 0;
    }
    #post-164 .sec04 .availavle_list{
        flex-direction: column;
        flex-wrap: wrap;
        gap: var(--px40);
    }
    #post-164 .sec04 .availavle_list li{
        width: 100%;
    }
}

@media screen and (max-width: 414px) {
    #post-164 .sec04 .availavle_list li{
        flex-direction: column;
        flex-wrap: wrap;
        gap: var(--px20);
    }
}

/*-----------------------------
service
------------------------------*/

#post-166 .post .txtarea{
    margin-bottom: var(--px20);
}

#post-166 .post h2{
    padding-bottom: 0.8em;
    padding-left: 0 !important;
    text-align: left;
}

@media print, screen and (max-width: 768px) {
    body section#service1,
    body section#service2,
    body section#service3,
    body section#service4{
        padding-top: 120px;
        margin-top: -80px;
        padding-bottom: 0;
    }
}

#post-166 .post h2:after{
    display: none;
}

#post-166 .post .imgarea {
    width: 100%;
    position: relative;
    aspect-ratio: 46 / 15;
    overflow: hidden;
    line-height: 0;
}

#post-166 .post  .sec01 dt {
    font-size: var(--rem28);
    font-weight: 600;
    font-family: var(--font-family03);
    padding: 0 0 1rem 0;
    letter-spacing: .1rem;
    margin-bottom: 1em;
}

#post-166 .post  .sec01 .linkBtn::after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 1em;
    width: 6px;
    height: 6px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -3px;
}

.wpcf7-form-control-wrap {
    display: inline-block;
    width: 265px;
}

.wpcf7 p a {
   text-decoration: underline; 
}