﻿@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap');
body,.font_com{font-family: 'Kosugi Maru',"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;font-weight: 400;}
.font1{font-family: 'Poppins', sans-serif;}
.intro_wrap,#loopSlider{position: relative;}
/*リピートなし*/
.bg_obj1,.bg_obj2,.main_img .img,.catch,.intro_wrap:before,.intro_wrap:after,#loopSlider:before,#contents .box figure:before,#contents .box figure:after,.obj4,.obj5{
content: "";
display: block;
background-size: 100%;
background-repeat: no-repeat;
position: absolute;
}

.bg_obj1{
background-image: url(./Dup/img/obj6.png);
width: 41vw;
height: 19vw;
top: 0;
left: 0;
opacity: 0.1;
}
.bg_obj2{
background-image: url(./Dup/img/obj7.png);
width: 20vw;
height: 29vw;
bottom: 0;
right: 0;
opacity: 0.1;
}
.main_img .img{
background-image: url(./Dup/img/main_img.png);
width: 70vw;
height: 40vw;
position: absolute!important;
top: 50%;
right: 0;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
}
.catch{
background-image: url(./Dup/img/catch.png);
width: 31vw;
height: 18vw;
bottom: 25%!important;
left: 0!important;
}

.menu .nav ul li a::before{
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 24px;
display: block;
text-align: center;
margin-bottom: 7px;
color: #f5b464;
}
.menu .nav ul li:nth-of-type(1) a::before{content: "\f1ea";}
.menu .nav ul li:nth-of-type(2) a::before{content: "\f1b0";}
.menu .nav ul li:nth-of-type(3) a::before{content: "\f6be";}
.menu .nav ul li:nth-of-type(4) a::before{content: "\f007";}
.menu .nav ul li:nth-of-type(5) a::before{content: "\f059";}
.menu .nav ul li:nth-of-type(6) a::before{content: "\f095";}
.intro_wrap:before{
background-image: url(./Dup/img/obj1.png);
width: 15vw;
height: 19vw;
top: 0;
left: 0;
}
.intro_wrap:after{
background-image: url(./Dup/img/obj2.png);
width: 21vw;
height: 17vw;
bottom: 5%;
right: 0;
}
#loopSlider:before {
background-image: url(./Dup/img/obj3.png);
width: 100px;
height: 130px;
top: -105px;
right: 21%;
z-index: 1;
}
#contents .box:nth-child(odd) figure:after,
#contents .box:nth-child(even) figure:after{
background-size: 101% 101%;
width: 101%;
height: 101%;
border: none;
bottom: auto;
top:50%;
right: auto;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
z-index: 2;
opacity: 1;
}
#contents .box .t_cms_img1:after{background-image: url(./Dup/img/frame1.png);}
#contents .box .t_cms_img2:after{background-image: url(./Dup/img/frame2.png);}
#contents .box .t_cms_img3:after{background-image: url(./Dup/img/frame3.png);}

.obj4{
background-image: url(./Dup/img/obj4.png);
width: 11vw;
height: 9vw;
bottom: -1vw;
left: 4vw;
z-index: 3;
}
.obj5{
background-image: url(./Dup/img/obj5.png);
width: 9vw;
height: 6vw;
bottom: 2vw;
left: 1vw;
z-index: 3;
}
/*--------------------------------
全体
--------------------------------*/
#loading_line .line.bg_color1,footer{background-color: #F9F8EE;}
#loading_logo{
width: 100%;
max-width: 300px;
}

.img-container:before{background: #eb915f;}
.t_cms_img2 .img-container:before{background: #8c6437;}

.svg_box .txt_color3{color: #f5b464;}
.more_box .more{border-radius: 50px;}

.bottom_menu{
font-size: 16px;
width: 100%;
box-sizing: border-box;
}
footer .txt_white{color: #42210B;}
footer .logo{width: 100%!important;}

#page-top a div i{left: 43%;}

.fix_banner{
width: 400px;
position: fixed;
bottom: 10px;
right: 85px;
z-index: 9;
}
@media  screen and (max-width: 768px){
.fix_banner{width: 350px;}
}
/* スマホ時真ん中へ */
@media  screen and (max-width: 667px){
.fix_banner{
width: 230px;
right: auto;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
}

/* モーダル */
html.modalset{
	overflow: hidden;
}
.modal{
	display: none;
	width: 100%;
	height: 100vh;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9999;
}
.modal-wrap {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	overflow: hidden;
	-webkit-overflow-scrolling: touch;
	-ms-overflow-style: none;
	overflow: -moz-scrollbars-none;
}
.modal-wrap::-webkit-scrollbar {
	display: none;
}
.modal-wrap:after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 1px;
	height: 100%;
}
.modal-bg{
	position: absolute;
	left: 0;
	top: 0;
	background: rgba(0,0,0,0.3);
	width: 100%;
	height: 100%;
}
.modal-box{
	width: 90%;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
	position: relative;
}
.modal-box .inner{
	background: #fff;
    max-height: 95vh;
    padding: 3% 5%;
	box-sizing: border-box;
	overflow: auto;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.modal-box .inner::-webkit-scrollbar {
	display:none;
}
.modal-box .inner > :first-child {
	margin-top: 0;
}

.inner.over{position: relative;}
.inner.over:before{
    content: "SCROLL 》";
    font-size: 16px;
    color: #333;
    position: fixed;
    bottom: 10%;
    right: 5.5%;
    transform: rotate(90deg);
}


.modal_btn > p{
    /*width: 50%;*/
    box-sizing: border-box;
}

.modal-box .modal-close{
	cursor: pointer;
	position: absolute;
    top: 10px;
    right: 10px;
}
.modal-box .modal-close span{
	display: block;
	width: 50px;/*枠の大きさ*/
	height: 50px;/*枠の大きさ*/
	position: relative;
}

.modal-box .modal-close span::before, .modal-box .modal-close span::after{
	content: "";
	display: block;
	width: 100%;/*バツ線の長さ*/
	height: 2px;/*バツ線の太さ*/
	background: #000;
	transform: rotate(45deg);
	transform-origin:0% 50%;
	position: absolute;
	top: calc(14% - 1px);
	left: 14%;
}

.modal-box .modal-close span::after{
	transform: rotate(-45deg);
	transform-origin:100% 50%;
	left: auto;
	right: 14%;
}
.modal-open{cursor: pointer;}

/*--------------------------------
TOP
--------------------------------*/
.top_page header,.top_nav{width: 100%;}
.top_nav{padding-right: 20px;}
.main_img_wrap{width: 100%;height: 48vw;}
.main_wrap{margin-top: 48vw;}
.main_img .logo{
width: 20vw;
width: clamp(300px,20vw,450px);
position: absolute;
top: 26px;
left: 0;
z-index: 1;
}
.top_nav ul li{border-color: #f5b464;}
.top_nav ul li a{color: #603813;}

/* loopslider */
.loopSliderWrap{
    position: relative;
    top: 0;
    left: 0;
}
.loopSlider {
    margin: 0 auto;
    text-align: left;
    position: relative;
    overflow: hidden;
}
.loopSlider ul {
    float: left;
    overflow: hidden;
}
.loopSlider ul li {
    width: 350px;
    float: left;
    display: inline;
    overflow: hidden;
	position: relative;
	box-sizing: border-box;
}
.loopSlider ul figure{border-radius: 30px;}
.loopSliderWrap:after {
    content: "";
    display: none;
    clear: none;
}

@media screen and (max-width: 768px){
.loopSlider ul li{width: 200px;}
}
@media screen and (max-width: 667px){
.loopSlider ul li{width: 150px;}
.loopSlider ul figure{border-radius: 15px;}
}

/* TOPお問い合わせ・店舗情報ボタン */
.other .box{background-color: #fff;width: 49%;border: none;}
.other .box:first-of-type{margin-right: 1%;}
.other .box:last-of-type{margin-left: 1%;}
.other .box:hover{background-color: #bf9d74;}
.other .box figure{opacity: 0.7;}
.other .box:hover figure{opacity: 0.5;}
.other .box p, .other .box h2 span,
.other .box:hover p, .other .box:hover h2 span{color: #333;}

/* TOPブログ */
.topcms_news_type2 .cate_box {
	width: 46.33333%!important;
	margin-right: 1.5%;
	margin-left: 1.5%;
	cursor: pointer;
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	box-shadow: 0 6px 12px rgb(0 0 0 / 0);
	/* padding: 20px; */
	/* border-radius: 20px; */
	/* background-color: #f5f5f5; */
}
.topcms_news_type2 .cate_box:hover {
	transform: translateY(-5px);
}
.topcms_news_type2 .cate_box .box_item {
	cursor: pointer;
}
.topcms_news_type2 .txt_height {
	height: 5em
}
.topcms_news_type2 .box_img1 {
	border-radius: 10px;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.topcms_news_type2 .cate_box {width: 100%!important;}
.topcms_news_type2 .txt_height {height: 3em}
}
/*--------------------------------
下層
--------------------------------*/
#title_img{border-radius: 30px;}
#page_title .font_45{color: #EB915F;}
#page_title p.txt_shadow-l{text-shadow: none;}
.cms_wrap.width_90per,#page7,#page8,#page9,#page10{
width: 100%!important;
max-width: none;
margin: 0;
padding-left: 20%;
padding-right: 5%;
}
@media  screen and (max-width: 667px){
    .cms_wrap.width_90per,#page7,#page8,#page9,#page10{padding-left: 5%;}
}
#cms_2-g .cate_title{font-size: 1.8em;letter-spacing: 1px;}
#cms_4-a .cate_title{
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.qa_type5 .faq_no {
    width: 50px;
    height: 50px;
    line-height: 50px;
    border-radius: 50%;
    top: -10px;
    left: 0;
	-webkit-background-clip: padding-box; 
	-moz-background-clip: padding; 
	background-clip: padding-box;
}
.qa_type5 .box_title1, .qa_type5 .box_txt1 {padding-left: 70px;line-height: 1.7;}




@media screen and (max-width: 1000px){
    .main_img .logo{display: none;}
    
}
/*タブレット用（768px以下）*/
@media  screen and (max-width: 768px){
    .all_header #header{
        padding-top: 30px!important;
        padding-bottom: 30px!important;
    }
    header .logo{width: 30%;}
    .main_img_wrap{height: 50vh;}
    .main_wrap{margin-top: 50vh;}
    .intro_wrap{padding-top: 100px;padding-bottom: 100px;}
    .intro_wrap:before{
        top: 17px;
        left: -23px;
    }
    .intro_wrap:after{
        bottom: 15px;
        right: -27px;
    }
    
    
    #loopSlider:before{
        width: 70px;
        height: 90px;
        top: -75px;
    }
    #contents .box .txt_wrap{width: 90%;}
    #contents .box figure{width: 90%;}
    .obj4{
        width: 20vw;
        height: 15vw;
        bottom: 3vw;
        left: 4vw;
    }
    .obj5{
        width: 19vw;
        height: 14vw;
        bottom: 2vw;
        left: 1vw;
    }
    #page_title .font_35_tb{font-size: 24px;letter-spacing: 0;}
    #page_title .font_25{font-size: 18px;}
    #page_title .img-container::after{background-color:rgba(255,205,150,0.6);}
    .cate_list li{width: 45%;}
}

/*スマホ用（667px以下）*/
@media  screen and (max-width: 667px){
    #wrap {width: 100%;margin-top: 0;}
    .all_header #header{
        padding-top: 20px!important;
        padding-bottom: 20px!important;
    }
    header .logo{width: 50%;}
    .overlay ul{width: 80%;}
    #page-top a div i{top: 54%;}
    .inner.over:before{
        bottom: 45px;
        right: 4px;
        z-index: 1;
    }
    
    .main_img .img{
        background-image: url(./Dup/img/main_img_sp.png);
        width: 70vw;
        height: 65vw;
        top: 55%;
    }
    .catch{
        width: 39vw;
        height: 24vw;
        bottom: 17%!important;
    }
    .intro_wrap:before{
        width: 27vw;
        height: 34vw;
        top: -4px;
        left: -23px;
    }
    .intro_wrap:after{
        width: 38vw;
        height: 31vw;
        bottom: -3px;
        right: -27px;
    }
    #loopSlider:before{
        width: 50px;
        height: 65px;
        top: -50px;
        right: 14%;
    }
    .other .box{width: 100%;}
    .other .box:first-of-type{margin-right: 0;}
    .other .box:last-of-type{margin-left: 0;border-left:none;}
    
    #page_title{
        width: 95%;
        margin: 0 auto 50px;
    }
    #page_title .font_35_tb{font-size: 20px;color: #8c6437;}
    .cate_list li{width: 100%;}
    
    #cms_2-g .cate_title{font-size: 1.6em;}
    
    .page10 .more_box,.page10 .more_box:first-child{
        margin-left: auto;
        margin-right: auto;
    }
}

/*IE*/
@media all and (-ms-high-contrast: none) {}




/*--------------------------------
自動リンク
--------------------------------*/
/* color */
.linkStyle{color: #333; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #333;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}
.bg_color1 .linkStyle{color: #fff;}
.bg_color2 .linkStyle{color: #333;}
.bg_color3 .linkStyle{color: #fff;}
.bg_color4 .linkStyle{color: #333;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.linkStyle{display: inline-block;}
}

/*--------------------------------
カラー
--------------------------------*/
body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #333333;}
.txt_black,.hvr_txt_black:hover{color: black;}
.txt_white,.hvr_txt_white:hover{color: white;}
.txt_red,.hvr_txt_red:hover{color: red;}
.txt_color1,.hvr_txt_color1:hover{color: #EB915F;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #F5B464;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #8c6437;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #F4F2DE;} /* アクセントカラー2 */

/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: #EB915F;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #F5B464;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #8c6437;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #f9f8ee;} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}

/* border-color */
.border_white,.hvr_border_white:hover{border-color: white;}
.border_black,.hvr_border_black:hover{border-color: black;}
.border_color1,.hvr_border_color1:hover{border-color: #EB915F;}
.border_color2,.hvr_border_color2:hover{border-color: #F5B464;}
.border_color3,.hvr_border_color3:hover{border-color: #8c6437;}
.border_color4,.hvr_border_color4:hover{border-color: #F4F2DE;}