﻿
@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,#page_title p:last-of-type{font-family: "utsukushi","serif";}*/
.font1,#page_title p:last-of-type {
    font-family: "Ephesis", serif;
  font-weight: 400;
  font-style: normal;
}
.font2,.nav1,#page_title p:first-of-type,.cate_title{font-family: "utsukushi","serif";font-weight: normal;}
/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
#contents{position: relative;}
/*リピートなし*/
.main_img_wrap:before{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}
/*リピートあり*/
#contents:before{
content: "";
display: block;
position: absolute;
}

.main_img_wrap:before{
background-image: url(./Dup/img/catch.png);
background-size: 100%;
width: 40vw;
height: 26vw;
top:50%;
right: 5%;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
}
#contents:before{
background-image: url(./Dup/img/wave.png);
background-size: 500px;
width: 101%;
height: 200px;
bottom: -50px;
left: 0;
transform: scale(1, -1);
animation: loop 10s linear infinite;
z-index: 1;
}
@keyframes loop {
0% {background-position-x: 0;}
100% {background-position-x: -500px;}
}
/*--------------------------------
全体
--------------------------------*/
#loading_logo{
width: 100%;
max-width: 300px;
}

.menu .logo{width: 15%!important;}
footer .logo{width: 70%!important;}
.svg_box{display: none;}
footer{background-color: #b9d2d7;}

.fix_banner{
width: 350px;
position: fixed;
bottom: 10px;
right: 85px;
z-index: 10;
}
/* スマホ時真ん中へ */
@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);
}
}
/*--------------------------------
TOP
--------------------------------*/
.main_wrap{margin-top: 97vh;}
.t_cms_img2 .img-container:before {background: #023752;}
.img-container.active:before{
transform: translateX(101%);
}

#top_cms .line{padding-top: 130px;}
.t_cms_txt2 span,.t_cms_txt5 span,.t_cms_txt8 span{
display: inline-block;
transform: rotate(-10deg);
margin-left: -25px;
}
.txt_wrap.pd_r-40px{padding-right: 5%;}
.txt_wrap.pd_l-40px{padding-left: 5%;}

/* 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}
}

/* TOPお問い合わせ・店舗情報ボタン */
.other .box{background-color: #b9d2d7;border: 2px solid #023752;
}
.other .box:hover{background-color: #fff;}
.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: #023752;}
/*--------------------------------
下層
--------------------------------*/
/* 下層ページ */
#page_title p.txt_shadow-l{text-shadow: none;}
.img-container:before{background: #b9d2d7;}

.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%;}

}

/* お客様の声 */
.v_type3 .cate_box{border: 1px solid #b9d2d7;}
.v_type3 .box_title1{color: #55b9d2;}

/*タブレット用（768px以下）*/
@media  screen and (max-width: 768px){

header .logo{width: 30%;}
.main_img_wrap{height: 58vh;}
.main_wrap{margin-top: 58vh;}

}

/*スマホ用（667px以下）*/
@media  screen and (max-width: 667px){
header .logo{width: 45%;}
footer .logo{width: 100%!important;}
footer .font_2dw{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}
.main_img_wrap{height: 45vh;}
.main_wrap{margin-top: 45vh;}
.main_img_wrap:before{
width: 60vw;
height: 38vw;
}
.t_cms_txt2 span, .t_cms_txt5 span, .t_cms_txt8 span{margin-left: -15px;}
#page_title .img-container::after{background-color: rgba(185,210,215,0.4);}

}

/*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: #023752;}
.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: #55B9D2;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #F9F8F5;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #95D2E5;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #f2f5f5;} /* アクセントカラー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: #55B9D2;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #b9d2d7;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #95D2E5;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #f2f5f5;} /* アクセントカラー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: #55B9D2;}
.border_color2,.hvr_border_color2:hover{border-color: #b9d2d7;}
.border_color3,.hvr_border_color3:hover{border-color: #95D2E5;}
.border_color4,.hvr_border_color4:hover{border-color: #f2f5f5;}