﻿/*--------link_font--------*/
.linkStyle{color: #fff; text-decoration: underline;}

@font-face {
    font-family: 'fondamento';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/fondamento.woff') format('woff'),
        url('./Dup/img/fondamento.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'overlock';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/overlock.woff') format('woff'),
          url('./Dup/img/overlock.eot') format('eot');
    font-display: swap;
}

/*--------all_page--------*/
.fa-calendar-check-o:before {
    content: "\f274";
}
.bg_color6{background-color:rgba(255,255,255,0.25);}
.bg_color7{background-color:rgba(255,255,255,0.75);}
.width_45per{width: 45%!important;}
.add_shadow1{box-shadow: rgba(136, 165, 191, 0.25) 6px 2px 16px 0px, rgba(255, 255, 255, 0.4) -6px -2px 16px 0px;}
.add_shadow2{box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(116, 136, 161, 0.25) 0px 0px 0px 1px;}

.overlay .overlay-nav .top .jp,.overlay .overlay-nav .top .en,.overlay .overlay-nav .en,.overlay .overlay-nav .middle .jp{
    font-family: "fondamento","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
}
.overlay .overlay-nav .top .en {
    font-size: 14px;
    font-family:"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
}
.overlay .overlay-nav .top .jp {font-size: 24px;}
.overlay .overlay-nav .en{font-size:12px;}
.overlay .overlay-nav .middle .jp {font-size: 1rem;}
.overlay .overlay-nav .top li {
    margin-bottom: 15px;
    line-height: 1.25;
}
.menu-trigger, .close-trigger {
    right: 30px;
    top: 63%;
}
#loading{
    background-image: url(./Dup/img/back.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
}
/*#loading #loading_text .progressbar-text{color: #8b6352!important;}*/
#logo img{max-width: 110px;transition: all 0.5s;}
header.scr_header #logo img{max-width: 85px;transition: all 0.5s;}
header,header.scr_header{transition: all 0.5s;}
header.scr_header {
    background-color: rgba(221, 221, 221, .75)!important;
}
header.scr_header #pc_nav ul p{margin-top:0;}

body{position:relative;}
body:before{
    content: " ";
    position: fixed;
    display: inline-block;
    width: 11.5%;
    height: 74%;
    background: url(./Dup/img/item_03.png) no-repeat;
    background-size: contain;
    left: 0;
    transform: translateY(-50%);
    top: 50%;
    z-index: 1;
}
 body:after{
    content: " ";
    position: fixed;
    display: inline-block;
    width: 11.5%;
    height: 74%;
    background: url(./Dup/img/item_04.png) no-repeat;
    background-size: contain;
    right: 0;
    transform: translateY(-50%);
    top: 50%;
    z-index: 0;
} 
#pc_nav li a.txt_white{
    padding: 15px 0 0 0;
    font-weight: bold;
    color: #644133;
    text-shadow: 1px 1px 0 rgb(255 255 255 / 50%), -1px 1px 0 rgb(255 255 255 / 50%), 1px -1px 0 rgb(255 255 255 / 50%), -1px -1px 0 rgb(255 255 255 / 50%);
}
#pc_nav li a::after, #footer_nav li a::after {
    background: #8b6352;
}
header.scr_header #pc_nav li a.txt_white{
    padding: 5px 0 0px 0;
    text-shadow: none;
}

.menu-trigger-bar{background-color: #8b6352;}
#main_img{
    position:relative;
}
#main_img::before {
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/catch.png) no-repeat;
    background-size: contain;
    z-index: 0;
    width: 36%;
    height: 42%;
    left: 51%;
    transform: translate(-50%, -50%);
    top: 50%;
}
#main_img .scr.txt_white, #page_title_img .scr.txt_white{
    color: #564030;
}
main .txt_color2, .hvr_txt_color2:hover {
    color: #f7e6e0;
}
.sns_links{
    justify-content: flex-start;
}
.blur{background: linear-gradient(180deg, rgba(143, 139, 135, .65), rgba(149, 149, 149, .7));}

.page1 .con_title{position:relative;}
.page1 .con_title::before{
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_05.png) no-repeat;
    background-size: contain;
    z-index: 0;
    opacity: 0.8;
    width: 1.8em;
    height: 1.3em;
    left: 50%;
    transform: translateX(-50%);
    top: -1.2em;
}
#intro .con_title {
    letter-spacing: 7px;
}
main h2{
    text-shadow: 3px 3px 6px rgba(0, 0, 0, .25);
}
#contents .con_title {
    line-height: 0.9;
    font-size: 3em;
    letter-spacing: 6px;
    margin-bottom: 30px;
}

.top_title h2 > span:before {
    width: 3px;
}
.cms_title h3{
    font-size: 3em;
    letter-spacing: 9px;
}
.more .more_item {
    border-color: #ffffff;
}

footer .scr.txt_white{
    color: #8b6352;
}
#logo2{margin-top:30px;}
#logo2 img{    max-width: 180px;}
#footer_info .grid_6:nth-of-type(1){width: 40%!important;}
#footer_info .grid_6:nth-of-type(2){
    width: 37%!important;
    padding: 0 0 0 5%;
}
#footer_info .info_btn_wrap{margin-bottom:40px;}
#footertxt.txt_white,#h1txt.txt_white{color: #8b6352;}


.overlay{
    background: linear-gradient(180deg, rgba(143, 139, 135, .65), rgba(149, 149, 149, .7));
    -webkit-backdrop-filter: blur( 10px );
}
footer .info_btn_wrap a{
    background-color: #564030;
}
#footer_info{
    background-color: #d0d5a5;
}

.add_product_wrap .bnr{
    width: calc(100% / 4 - 20px)!important;
}

#add_ban{
    position: relative;
}
#add_ban div{
    position: fixed;
    width: 15%;
    right: 0;
    bottom: 0;
    
}
@media screen and (max-width: 768px){    
    #add_ban {
    width: 25%;
    }
    .add_product_wrap .bnr{
    width: calc(100% / 2 - 20px)!important;
}
}
@media screen and (max-width: 667px){
    .add_product_wrap .bnr{
    width: 100%!important;
}
#add_ban {
    width: 25%;
}
#add_ban {
    width: 89%;
    display: flex;
    right: auto;
    left: 0;
    top: auto;
    bottom: 0px;
}
}


/*--------subpage--------*/
.page main .txt_color2, .hvr_txt_color2:hover {
    color: #f7cfbd;
}
.cate_title {
  display: flex;
  align-items: center;
  text-align: center; /* ←複数行になったとき用*/
  --textline-gap: 1rem;
}
.cate_title::before,
.cate_title::after {
  content: '';
  height: 1px;
  background-color: #fff;
  flex-grow: 1;
}
.cate_title::before {
  margin-right: var(--textline-gap);
}
.cate_title::after {
  margin-left: var(--textline-gap);
}
#cms_3-a .cate {
    background-color: rgba(255,255,255,0.2);
    padding: 20px;
}
#cms_3-a .cate_txt1 {
background-color: rgba(0,0,0,0.2);
}
#cms_2-c .cate_box{
    background-color: rgba(185, 185, 185, .25);
}

#cms_2-c #cate0 .cate_box{border-left:none;background-color: rgba(0,0,0,0);}
#cms_2-c #cate0 .box_txt1,
#cms_2-c #cate0 .box_txt2{padding-left:130px;}

#cms_2-c #cate0 .box_wrap{
    position: relative;
    padding-left: 30px;
}
#cms_2-c #cate0 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 0px);
    border-left: 14px solid #e9e9e9;
    position: absolute;
    top: -5px;
    left: 107px
}
#cms_2-c #cate0 .box_txt1{position:relative;}
#cms_2-c #cate0 .box_txt1::before,
#cms_2-c #cate0 .box_txt1::after {
	content: "";
	display: block;
	position: absolute;
	top: 14.5px;
}
#cms_2-c #cate0 .box_txt1::before {
    width: 7px;
    height: 7px;
    margin-top: -3px;
    background: #626262;
    border-radius: 50%;
    left: 59.5px;
}
#cms_2-c #cate0 .box_txt1::after {
	width: 50px;
	border-bottom: 1px dashed #999;
	position: absolute;
	left: 72px;
}
#cms_2-c #cate0 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
#cms_2-c #cate0 .box_description2 span{
position: absolute;
    display: inline-block;
    width: 90px;
    top: -23px;
    left: -50px;
}


/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
#cms_4-c .box_img1_wrap::before, #cms_4-c .box_img2_wrap::before{
	width: 76px;
	font-size: 13px;
}
#cms_4-c .box_img1_wrap::before, #cms_4-c .box_img2_wrap::before{padding: 1px 0px;}
}

#cms_1-f .box_txt1{
    background-color: rgba(255,255,255,0.5);
}

#page8 .tel_box{
    position: relative;
    overflow: hidden;
    padding: 20px 20px 15px 20px;
    background-color: #766b63;
}
#page8 .tel_box > a:before{
    content:"";
    position: absolute;
    width:100vw;
    height:100vh;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    left:50%;
    top:50%;
}
@media screen and (max-width: 1200px){
    #page8 .tel_box p{
        display: block;
        padding-right: 0px;
        margin-right: 0px;
        border-right: none;
        
    }
}

@media screen and (max-width: 667px){  
#page8 .tel_box a{
    font-size: 5.3vw;
    letter-spacing: 2px;    
}
}
.overlay:before {
    background-color: rgba(175, 177, 183, .3);
}
.overlay .overlay-nav .sns_links li {
    width: 16%;
}



/*--------mobile_tb--------*/
@media screen and (max-width: 768px){
.width_45per{width: 50%!important;}
.overlay div.overlay-img {background-position: 25% 50%;}
.overlay div.overlay-nav {height: 90%;}
.menu-trigger, .close-trigger {top: 56%;}

#loading .kvArea .img_box img { max-width: 55%;}
#loading_text .progressbar-text {font-size: 1rem !important;}
#logo img { max-width: 120px;}

body:before,body:after {
    display: none;
}
#main_img::before {
    width: 67%;
    height: 30%;
}
#intro .intro_photo h2 {
    left: -22px;
}
#intro .portrait_img img {
    left: 0%;
}
.top_title h2.right {
    right: 22px;
}
.top_title h2.left {
    left: 17px;
}
.top_title h2 > span {
    padding-right: 0px;
}
#contents .con_title {
    font-size: 5vw;
}

#footer_info .grid_6:nth-of-type(1){width: 45%!important;}
#footer_info .grid_6:nth-of-type(2){
    width: 45%!important;
}
#copyright{
    text-align: left;
    padding-left: 30px;
}
#logo2 img{    max-width: 150px;}
#h1txt span{font-size: 0.7em;}
.page_container{padding: 10% 5%;}
#cms_2-c #cate0 .box_wrap{padding-left: 30px;}
#cms_2-c #cate0 .box_txt1, #cms_2-c #cate0 .box_txt2 {padding-left: 40px;}
#cms_2-c #cate0 .box_txt2{padding-left: 41px;}
#cms_2-c #cate0 .box_wrap:before{ left: 13px;}
#cms_2-c #cate0 .box_txt1::before { left: -34.5px;}
#cms_2-c #cate0 .box_txt1::after {left: -22px;}
#cms_2-c #cate0 .flex_order2_tb{
    width: 86%!important;
    margin: 0 auto;
}
}


/*--------mobile_sp--------*/
@media screen and (max-width: 667px){
    .width_45per{width: 100%!important;}
    
    #loading .kvArea .img_box img {
    max-width: 42%;
}
#logo img {
    max-width: 85px;
}
header.scr_header #logo img {
    max-width: 70px;
}
.menu-trigger, .close-trigger {
    right: 13px;
    top: 63%;
}

#main_img::before {
    background-image: url(./Dup/img/catch_sp.png) ;
   width: 88%;
    height: 34%;
    top: 53%;
}
_::-webkit-full-page-media,
_:future,
:root #main_img::before {
      left: 53%;
}
.top_title h2 {
    font-size: 9vw;
    top: 50px;
}
#contents .con_title {
    font-size: 10vw;
}
#footer_info .grid_6:nth-of-type(1) {
    width: 100%!important;
}
#footer_info .grid_6:nth-of-type(2) {
    width: 87%!important;
    padding: 0;
}
#footer_info {
    padding: 0px 0px;
}
#copyright {
    text-align: center;
    padding-left: 0px;
}
.top_cms_box{
    border: 0;
    padding: 0;
}
.cms_title h3 {
    font-size: 8vw;
}
.overlay .overlay-nav .sns_links li {
    width: 15%;
}
.page_container {
    padding: 20% 5%;
}
#page_title .jp {
    left: -11px;
    top: 94px;
}
#page_title .en {
    font-size: 9.2vw;
    letter-spacing: 6px;
}
#page_title .en:before {
    width: 2px;
    left: 3px;
}
.cate_list li:nth-of-type(4n) {
    margin-right: 0%;
}

.cate_title::before{display:none;}
.cate_title {
    display: block;
    text-align: left;
    padding-bottom: 5px;
    padding-left: 0px;
}
.cate_title{margin-bottom: 50px;}
.cate_title::after {
    width: 40%;
}
#page4 .cate_title{
    margin-bottom: 0px;
}
#cms_2-c #cate0 .box_wrap{
    padding-left: 23px;
}
#cms_2-c #cate0 .box_wrap:before {
    left: 8px;
    top: 7px;
}
#cms_2-c #cate0 .box_txt1::before, #cms_2-c #cate0 .box_txt1::after {
    top: 13px;
}
#cms_2-c #cate0 .box_txt1::before {
    margin-top: -3px;
    left: -31.5px;
}
#cms_2-c #cate0 .box_txt1::after {
    width: 30px;
    left: -22px;
}
#cms_2-c #cate0 .box_txt1, #cms_2-c #cate0 .box_txt2 {
    padding-left: 16px;
}
}

@-moz-document url-prefix(){
    #pc_nav li a.txt_white {
    letter-spacing: normal;
    }
    .overlay .overlay-nav > ul li a {
   letter-spacing: normal;
    }
    .modal-box .inner{
        scrollbar-width: none; 
    }
    .blur{background: linear-gradient(180deg, rgba(143, 139, 135, .85), rgba(149, 149, 149, .9));}
    .overlay:before {
    background-color: rgba(175, 177, 183, .6);
}
}

@media all and (-ms-high-contrast: none){
    .overlay:before {background: rgba(143, 139, 135, .6);}
    #pc_nav li a.txt_white {
    font-size: 1em;
    }
    footer .info_btn_wrap a{padding:13px 0  8px;}
    #cms_1-f .box_txt1{padding:13px 20px 8px;}
}