﻿@import url('https://fonts.googleapis.com/css2?family=Corinthia:wght@400;700&display=swap');
.font1,
.top_cms_title .font_14,
.menu-box .font_2dw,
.title_box .font_2dw,
#page10 .d_flex li a .font_2dw{
    font-family: 'Corinthia', cursive;
}


.linkStyle{
    color:#db8677;
}
.linkStyle:hover{
    transition:all 0.3s;
    opacity:0.7;
    text-decoration:underline;
}




/*--all page---------------------------
-------------------------------------*/

.menu-box .font_2dw{
    font-size: 1.5rem;    
}


/*--top page---------------------------
-------------------------------------*/
/*
.main_img_txt{
    font-size: 4rem;
    text-shadow: 0 0 25px #574739;    
}
*/
.catch{
    margin: auto;
    max-width:1100px;
    width:60vw;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}
.bg_green{
    background:url(./Dup/img/bg1.png),url(./Dup/img/bg2.png);
    background-repeat:no-repeat,no-repeat; 
    background-color:white;
    background-size:35vw auto,37vw auto;
    background-position:top right,bottom left;
}
.bg_green2{
    background:url(./Dup/img/bg2.png),url(./Dup/img/bg3.png);
    background-repeat:no-repeat,no-repeat; 
    background-color:white;
    background-size:31vw auto,29vw auto;
    background-position:bottom left,bottom right;    
}
.bg_reaf{
    background:url(./Dup/img/bg_reaf.png);
    background-repeat:repeat;
    background-color:#edf3ef;    
}
.con1_sub{
    font-size:2.5rem;
}
.intro_txt{
    padding:50px;
    background-color:rgba(255,255,255,0.5);
    backdrop-filter: blur(4px);
}

.item1{
    display:block;
    line-height:220px;
    width:220px;
    background-color:#8abca6;
    color:white;
    font-size:20px;
    text-align:center;
    border-radius:110px;
}
.bg_yoru{
    background-image:url(./Dup/img/yoru.jpg);
    background-repeat:no-repeat;
    background-size:cover;
}
.modal1 .box_img{
    position:relative;
}
.modal1 .box_img:before{
    content:'';
    position:absolute;
    display:block;
    width:150px;
    height:150px;
    background-image:url(./Dup/img/tuki.png);
    background-repeat:no-repeat;
    background-size:contain;
    top:-150px;
    left:-220px;
    z-index:1;
}
.modal2{
    background-image:url(./Dup/img/modal1.png),
                     url(./Dup/img/modal2.png),
                     url(./Dup/img/modal3.png),
                     url(./Dup/img/modal4.png);
    background-size: 33vw auto;                 
    background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
    background-position:top left,
                        top right,
                        bottom right,
                        bottom left;
}


.c2_box_bg::before{
    display:none;
}
.c2_box_txt{
    padding:0;
}
.contents_no{
    display:none;
}
.con_item img{
    width:80px;
}
.con_no{
    font-size:2rem;
    color: #db8677;
}
.top_cms_title .font_14{
    color: #db8677;
    font-size: 2rem;    
}
.sf_contact_mail{
    display:none;
}



/*--under page---------------------------
-------------------------------------*/
#page_title .title_box{
    bottom: 50px;
    border-top:0;
    background-color:rgba(255,255,255,0.8);
    backdrop-filter:blur(5px);
}
#page_title::after{
    content: '';
    position: absolute;
    display: block;
    width: 450px;
    height: 200px;
    background-image: url(./Dup/img/item2.png);
    background-repeat: no-repeat;
    bottom: -80px;
    left: 17%;
    z-index: 1;
    background-size: contain;
}


.title_box h2{
    font-size:2rem;
}
.title_box .font_2dw{
    font-size: 2rem;
    color: #db8677;
    margin-bottom: 0;
}
.s_footer_info_l::before{
    display:none;
}
.s_footer_info_r{
    background:url(./Dup/img/bg3.png);
    background-repeat:no-repeat;
    background-size:23vw auto;
    background-position:bottom right;
}
.s_footer_info_r #logo2 img{
    max-width:300px;
}
#cms_2-c .cate_title,
#cms_3-c .cate_title,
.qa_type4 .cate_title{
    position:relative;
    padding-left:50px;
}
#cms_2-c .cate_title:before,
#cms_3-c .cate_title:before,
.qa_type4 .cate_title:before{
    content:'';
    position:absolute;
    display:block;
    width:70px;
    height:60px;
    background-image:url(./Dup/img/item1.png);
    background-repeat:no-repeat;
    background-size:contain;
    top:0;
    left:-30px;
}
/*FAQ page*/
.qa_type4 .cate_box{
	background-color: #f2ecdb;
}
.qa_type4 .box_title1{
	cursor: pointer;
	letter-spacing: 0.5px;
	padding: 12px 36px 12px 50px;
	background-image: url(./Dup/img/faq_q.png);
	background-position: 10px 10px;
	background-repeat: no-repeat;
	background-size: 32px 32px;
}
.qa_type4 .box_title1:after{
	font-size: 20px;
	font-weight: bold;
	position: absolute;
	top: 5px;
	right: 10px;
	content: '\2b';
	display: inline-block;
	-webkit-transition: transform 0.4s;
	transition: transform 0.4s;
}
.qa_type4 .box_title1.open:after{
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
.qa_type4 .box_txt1 p{
	background-image: url(./Dup/img/faq_a.png);
	background-position: 6px 12px;
	background-repeat: no-repeat;
	background-size: 24px 24px;
	padding: 10px 10px 10px 40px;
}
.qa_type4 .box_title1:empty{
	height: 24px;
}
#page8 .phone_txt h4{
    width:200px;
}
#page10 .d_flex li a .font_2dw{
    font-size: 1.5rem;    
}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.item1{
    line-height: 130px;
    width: 130px;
    font-size: 17px;
    border-radius: 75px;
    font-weight: bold;
}

.con_item img {
    width: 50px;
}
.c2_box h2{
    letter-spacing:1px;
}
.modal2{
    background-size: 48vw auto;
}
#page_title::after{
    width: 200px;
    height: 150px;
    bottom: -60px;
    left: 11%;
}
.s_footer_info_r #logo2 img {
    max-width: 250px;
}
#cms_2-c .cate_title,
#cms_3-c .cate_title,
.qa_type4 .cate_title{
    padding-left: 40px
}
#cms_2-c .cate_title:before,
#cms_3-c .cate_title:before,
.qa_type4 .cate_title:before{
    width: 60px;
    left: -25px;
}
#page8 .phone_txt h4 {
    width: 23%;
}
#page8 .phone_txt p{
    width:68%;
    letter-spacing:-1px;
}

}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
/*
.main_img_txt{
    font-size: 1.7rem;
    letter-spacing: 1px;
}
*/
.catch{
    width:90vw;
}
.intro_box h2{
    font-size: 1.2rem;
}
.item1 {
    line-height: 150px;
    width: 150px;
    border-radius: 75px;
    margin-bottom: 20px;
}
.modal2 .width_1280-1000{
    position:relative;
    top:0;
    left:0;
    transform:none;
}
.intro_txt {
    padding: 20px;
}
.qa_type4 .box_title1{
    background-position: 10px 12px
}
.qa_type4 .box_txt1 p{
    background-position: 6px 15px;
}
.title_box h2 {
    font-size: 1.5rem;
}
#page_title .page_title_inner {
    padding: 110px 20px;
}
#page_title::after{
    width: 130px;
    left: 7%;
}
.s_footer_info_r{
    background-size: 42vw auto;
}
#cms_2-c .cate_title,
#cms_3-c .cate_title,
.qa_type4 .cate_title {
     padding-left: 0px;
     padding-top:50px;
}
#cms_2-c .cate_title:before,
#cms_3-c .cate_title:before,
.qa_type4 .cate_title:before{
    width: 40px;
    left: 0;
    right: 0;
    margin: auto;
    top: 10px;
}
#page8 .phone_txt h4 {
    width: 50%;
}
.title_box h2{
    letter-spacing: 1px;
}
.sp_bnr{
    right:35px;
    bottom:10px;
    z-index:99;
}

}

/* ---------- IEの処理 ---------- */
@media all and (-ms-high-contrast: none){
#contact_tel a{
    padding-top:35px;
}
.more_btn a i,
.more_btn > span i{
    right:20px;
}
#page_title .page_title_inner{
    padding: 170px 20px;
}

}


