﻿@font-face {
font-family: "utsukushi";
  src: url("./Dup/img/utsukushi.otf") format("otf"),url("./Dup/img/utsukushi.woff") format("woff"),url("./Dup/img/utsukushi.woff2") format("woff2");
}
.font1,.cate_title,.font_com{font-family: "utsukushi","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
.intro_title,#top_cms{position: relative;}
/*リピートなし*/
.intro_title:before,#top_contents:after,#top_cms:before{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}
.main1 span,.main2 span,.main3 span,.main4 span,.catch span{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
}

.main1{
position: absolute;
top:50%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.main1 span{
background-image: url(./Dup/img/main1.png);
background-size: 100%;
width: 1400px;
height: 850px;
}
.main2{
position: absolute;
top: 0;
right: 0;
}
.main2 span{
background-image: url(./Dup/img/main2.png);
background-size: 100%;
width: 420px;
height: 400px;
}
.main3{
position: absolute;
bottom: 0;
right: 0;
}
.main3 span{
background-image: url(./Dup/img/main3.png);
background-size: 100%;
width: 300px;
height: 340px;
}
.main4{
position: absolute;
bottom: 10%;
left: 5%;
}
.main4 span{
background-image: url(./Dup/img/main4.png);
background-size: 100%;
width: 410px;
height: 400px;
}
.catch{
position: absolute;
bottom: 10%;
right: 5%;
}
.catch span{
background-image: url(./Dup/img/catch.png);
background-size: 100%;
width: 450px;
height: 245px;
}


.intro_title:before{
background-image: url(./Dup/img/txt1.png);
background-size: 100%;
width: 50vw;
height: 8vw;
top: -100px;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
z-index: -1;
}
#top_contents:after{
background-image: url(./Dup/img/txt3.png);
background-size: 100%;
width: 7vw;
height: 42vw;
top:50%;
right: 0;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
}
#top_cms{padding-top: 14vw;}
#top_cms:before{
background-image: url(./Dup/img/txt2.png);
background-size: 100%;
width: 50vw;
height: 8vw;
top: 0;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
/*--------------------------------
全体
--------------------------------*/
body{
background: radial-gradient(at 40% 20%, rgb(253, 235, 226) 0px, transparent 50%), radial-gradient(at 88% 1%, rgb(230, 252, 255) 0px, transparent 50%), radial-gradient(at 0% 50%, rgb(246, 218, 220) 0px, transparent 50%), radial-gradient(at 80% 50%, rgb(253, 216, 229) 0px, transparent 50%), radial-gradient(at 80% 100%, rgb(224, 224, 235) 0px, transparent 50%), radial-gradient(at 0% 0%, rgb(255, 245, 250) 0px, transparent 50%) rgb(255, 245, 245);
background-attachment: fixed;
background-size: cover;
}
#pc_nav_fix ul.font_2dw{
font-size: 14px;
}
.nav_bg.bg_color1{background-color: #e1c3c8;}
#header .menu_stick span{background-color: #f08c9b;}

.more a.bg_color1,
.contact_tel a.bg_color3,.date.bg_color3{background-color: #b9e1eb;}

.contact_tel a.border_color3{border-color: #b9e1eb;}

.fix_banner{
width: 350px;
position: fixed;
bottom: 0;
right: 65px;
z-index: 5;
}
/* スマホ時真ん中へ */
@media  screen and (max-width: 667px){
.fix_banner{
width: 200px;
right: auto;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
}

#page_top .border_color1{border-color: #f08c9b;}
/*--------------------------------
TOP
--------------------------------*/
#main_img .logo{
position: absolute;
top: 20px;
left: 20px;
z-index: 1;
}
#main_img .logo a{cursor: pointer;}
#main_img .scroll_bar span{background-color: rgba(75,60,70,0.4);}

#top_contents .con_box .box_img{background-color: #4b3a45;}
#top_contents .con_box .box_img img{opacity: 0.5;}
#top_contents .con_box:hover .box_img img{opacity: 0.2;}
#top_contents .box_img span{top: 45%;}
#top_contents .con_txt_wrap{
width: 90%;
text-align: center;
}
.con_open{
top: 0;
left: 0;
z-index: 7
}
.open_scroll{overflow-y: auto}

#top_contents::before,#top_info{background-color: rgba(255,255,255,0.8);}
.close_bt{
top: 5%;
right: 5%;
cursor: pointer;
}
.contents_no span,
#top_info .info_txt_wrap span, #top_cms .cms_title span{background-color: #e6b4b9;}

/* 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}
}
/*--------------------------------
下層
--------------------------------*/
.pager li a:hover,.cate_list li a:hover{background-color: #f08c9b;}

/*初めての方へ*/
#cms_2-c .cate_box:first-of-type .box_title1{padding-top: 0;}

/* お客様の声 */
.v_type3 .cate_box{
background-color: rgba(255,255,255,0.8);
border: 1px solid #e6b4b9;
}

#page7 .border_color1{border-color: #e6b4b9;}
#page8 .contact_box:first-of-type a{height: 142.5px;}


@media  screen and (max-width: 1400px){

.main1 span{
width: 1200px;
height: 720px;
}
.main2 span{
width: 350px;
height: 336px;
}
.main3 span{
width: 250px;
height: 285px;
}
.main4 span{
width: 350px;
height: 340px;
}
.catch span{
width: 400px;
height: 220px;
}

}
@media  screen and (max-width: 1280px){

.main1 span{
width: 1000px;
height: 600px;
}
.main2 span{
width: 300px;
height: 290px;
}
.main3 span{
width: 250px;
height: 285px;
}
.main4{bottom: 15%;}
.main4 span{
width: 300px;
height: 290px;
}
.catch span{
width: 400px;
height: 220px;
}

}

/*タブレット用（768px以下）*/
@media  screen and (max-width: 768px){
/* 背景 */
body{
	background-image:none;
}
body::before {
content: "";
display: block;
min-width: 100vw;
min-height: 100vh;
background: radial-gradient(at 40% 20%, rgb(253, 235, 226) 0px, transparent 50%), radial-gradient(at 88% 1%, rgb(230, 252, 255) 0px, transparent 50%), radial-gradient(at 0% 50%, rgb(246, 218, 220) 0px, transparent 50%), radial-gradient(at 80% 50%, rgb(253, 216, 229) 0px, transparent 50%), radial-gradient(at 80% 100%, rgb(224, 224, 235) 0px, transparent 50%), radial-gradient(at 0% 0%, rgb(255, 245, 250) 0px, transparent 50%) rgb(255, 245, 245);
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
position: fixed;
top: 0;
left: 0;
z-index: -1;
}

.main1 span{
width: 90vw;
height: 54vw;
}
.main2 span{
width: 26vw;
height: 25vw;
}
.main3 span{
width: 23vw;
height: 26vw;
}
.main4{bottom: 5%;}
.main4 span{
width: 25vw;
height: 25vw;
}
.catch span{
width: 35vw;
height: 20vw;
}

#page8 .contact_box:first-of-type a{height: auto;}

}

/*スマホ用（667px以下）*/
@media  screen and (max-width: 667px){

#main_img{height: 70vw!important;}
.catch{bottom: 6%;}
.catch span{
width: 43vw;
height: 24vw;
}

.intro_title:before{top: -28px;}

#top_contents:after{
width: 10vw;
height: 61vw;
top: -50px;
-ms-transform: none;
-webkit-transform: none;
transform: none;
}
#top_contents .con_box .box_img{background-color: #a18396;}

}

/*IE*/
@media all and (-ms-high-contrast: none) {}




/*--------------------------------
自動リンク
--------------------------------*/
/* color */
.linkStyle{color: #f08c9b; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #f08c9b;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.linkStyle{display: inline-block;}
}

/*--------------------------------
カラー
--------------------------------*/
body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #4b3a45;}
.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: #f08c9b;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #ffffff;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #82d7eb;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #e3e0cf;} /* アクセントカラー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: #f1e5e7;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #ffffff;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #e7f3f3;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #e3e0cf;} /* アクセントカラー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: #e6b4b9;}
.border_color2,.hvr_border_color2:hover{border-color: #ffffff;}
.border_color3,.hvr_border_color3:hover{border-color: #e6b4b9;}
.border_color4,.hvr_border_color4:hover{border-color: #e3e0cf;}