﻿@font-face {
font-family: "kanjuku";
  src: url("./Dup/img/kanjuku.otf") format("otf"),url("./Dup/img/kanjuku.woff") format("woff"),url("./Dup/img/kanjuku.woff2") format("woff2");
}
.font1{font-family: "kanjuku","sans-serif";}

/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
.page main,#aisatsu,#aisatsu h2,#top_contents,#top_contents .contents_box,#top_cms,#info_map,#info_map > div{position: relative;}
/*リピートなし*/
#aisatsu:before,#aisatsu:after,#aisatsu h2:before,#top_contents:before,#top_contents:after,#top_contents .contents_box:before,
.top_cms_img,#info_map:before,#info_map > div:before,#info_map > div:after,.page main:before,.page main:after{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}


.page main:before{
background-image: url(./Dup/img/obj12.png);
background-size: 100%;
width: 15vw;
height: 22vw;
top: 85px;
right: -90px;
}
.page main:after{
background-image: url(./Dup/img/obj13.png);
background-size: 100%;
width: 13vw;
height: 22vw;
bottom: 840px;
left: -80px;
z-index: -1;
}

#info_map > div:before{
background-image: url(./Dup/img/obj14.png);
background-size: 100%;
width: 10vw;
height: 12vw;
bottom: 0;
left: 0;
}
#info_map > div:after{
background-image: url(./Dup/img/obj15.png);
background-size: 100%;
width: 10vw;
height: 12vw;
bottom: 0;
right: 0;
}

#aisatsu:before{
background-image: url(./Dup/img/obj2.png);
background-size: 100%;
width: 19vw;
height: 19vw;
top: -80px;
right: -170px;
}
#aisatsu:after{
background-image: url(./Dup/img/obj3.png);
background-size: 100%;
width: 19vw;
height: 19vw;
bottom: -250px;
left: -140px;
z-index: 2;
}

#aisatsu h2:before{
background-image: url(./Dup/img/obj1.png);
width: 110px;
height: 110px;
top:-125px;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}

#top_contents:before,#top_contents:after,#info_map:before{
background-image: url(./Dup/img/wave1.png);
background-size: 100%;
width: 100vw;
min-width: 1000px;
height: 5vw;
left: 0;
z-index: 1;
}
#top_contents:before{
top: -1vw;
transform: scale(1, -1); /*上下*/
}
#top_contents:after{
bottom: -1vw;
transform: scale(-1, 1); /*左右*/
}
#top_contents .contents_box:before{
background-image: url(./Dup/img/obj11.png);
background-size: 100%;
background-color: transparent;
width: 100%;
height: 280px;
top: auto;
bottom: 0;
left: 0;
margin: 0;
opacity: 0.3;
z-index: -1;
}


.top_cms_img.obj7{
background-image: url(./Dup/img/obj7.png);
background-size: 100%;
width: 15vw;
height: 10vw;
top: 0;
right: -70px;
}
.top_cms_img.obj8{
background-image: url(./Dup/img/obj8.png);
background-size: 100%;
width: 13vw;
height: 11vw;
top: 25%;
left: -30px;
}
.top_cms_img.obj9{
background-image: url(./Dup/img/obj9.png);
background-size: 100%;
width: 15vw;
height: 10vw;
bottom: 25%;
right: -70px;
}
.top_cms_img.obj10{
background-image: url(./Dup/img/obj10.png);
background-size: 100%;
width: 13vw;
height: 11vw;
bottom: 0;
left: -30px;
}

#info_map:before{
top: -1vw;
transform: scale(-1, -1); /*上下左右*/
}

/*--------------------------------
全体
--------------------------------*/
body{background-color: #fbfaf7;}
#wrap{
background-color: transparent;
color: #333;
overflow: hidden;
}
main.over_hide{overflow: visible;}

header a.txt_white,#main_menu ul li a,#f_menu ul li a{color: #333;}
#main_menu ul li a{letter-spacing: 0;}
#main_menu.fixed ul li a{color: #fff;}
#main_menu ul li .menu_sub_title{color: #C8B4B9;}
#main_menu.fixed ul li .menu_sub_title{color: #F9F2E5;}
#main_menu.fixed{background-color: rgba(190,160,120,0.8)!important;}

#f_menu{font-size: 15px;}
#f_menu ul li a{letter-spacing: -1px;}

#copyright a{color: #333;}
/*--------------------------------
TOP
--------------------------------*/
#main_img{
height: 76vh;
overflow: hidden;
}

#top_contents{
background-image: url(./Dup/img/bg3.jpg);
background-size: 70%;
padding: 150px 5%;
}
#top_contents .contents_box{background: rgba(200,180,185,0.8)!important;padding-bottom: 70px;}
#contents1 .contents_box, #contents2 .contents_box, #contents3 .contents_box{margin-top: -260px;}
.contents_box::before,.contents_box::after,
.contents_box2::before,.contents_box2::after{display: none;}

#top_contents .con_photo{position: relative;}
#top_contents .line_animation{
width: 300px;
position: absolute;
top: 20px;
left: -115px;
z-index: 2;
transform: rotate(-15deg);
}
#line_animation1 path,
#line_animation2 path,
#line_animation3 path{
 fill: none;
 stroke: #ffffff;
 stroke-width: 10;
 stroke-linejoin: bevel;
 stroke-miterlimit: 10;
}



#top_cms .border_white{border-color: rgba(220,210,165,0.8);}
#top_cms .cms_title h2::before, #top_cms .cms_title h2::after{background-color: rgba(220,210,165,0.8);}

#info_map{
background-image: url(./Dup/img/bg2.jpg);
background-size: 70%;
}
/*--------------------------------
下層
--------------------------------*/

#main_img2 h2 span.txt_color2{color: rgba(255,255,255,0.7);}

/* 5-b Q削除 */
#cms_5-b .cate_box .open_bt .box_title1::before, .cms_5-b .cate_box .open_bt .box_title1::before{display: none;}
#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1{margin-left: 70px;}


@media  screen and (max-width: 1400px){

#top_contents .contents_box:before{
height: 20vw;
}

}

/*タブレット用（768px以下）*/
@media  screen and (max-width: 768px){

.page main:before{
width: 19vw;
height: 32vw;
top: 130px;
right: -40px;
}
.page main:after{
width: 17vw;
height: 29vw;
bottom: 700px;
left: -25px;
}

#main_img{height: 47vh;}

#aisatsu:before{
width: 17vw;
height: 17vw;
top: -120px;
right: -70px;
}
#aisatsu:after{
width: 15vw;
height: 15vw;
bottom: -120px;
left: -45px;
}
#aisatsu h2:before{
width: 80px;
height: 80px;
top: -100px;
}

#top_contents:before,#top_contents:after,#info_map:before{
background-image: url(./Dup/img/wave2.png);
min-width: auto;
height: 7vw;
}
#top_contents .line_animation{
width: 250px;
left: -60px;
}

#contents1 .contents_box, #contents2 .contents_box, #contents3 .contents_box{margin-left: 38%;margin-top: -200px;}

.top_cms_img.obj7{
width: 19vw;
height: 12vw;
top: 0;
right: -50px;
}
.top_cms_img.obj8{
width: 17vw;
height: 14vw;
top: 20%;
left: -15px;
}
.top_cms_img.obj9{
width: 19vw;
height: 13vw;
bottom: 25%;
right: -25px;
}
.top_cms_img.obj10{
width: 18vw;
height: 15vw;
bottom: -80px;
left: -20px;
}

#main_img2 h2{width: 40%;}

}

/*スマホ用（667px以下）*/
@media  screen and (max-width: 667px){
header .grid_3 p{padding-left: 10px;padding-right: 10px;}

.page main:before{
width: 28vw;
height: 48vw;
top: 160px;
right: -25px;
}
.page main:after{
width: 25vw;
height: 43vw;
bottom: 1070px;
left: -25px;
}

#info_map > div:before,
#info_map > div:after{
width: 18vw;
height: 21vw;
}

#main_img{height: 31vh;}

#aisatsu h2:before{
width: 50px;
height: 50px;
top: -60px;
}

#top_contents .contents_box:before{
height: 34vw;
}
#top_contents:before,#top_contents:after,#info_map:before{
background-image: url(./Dup/img/wave3.png);
height: 10vw;
}
#contents1 .contents_box, #contents2 .contents_box, #contents3 .contents_box{margin-left: 0;margin-top: 0;}
#top_contents .line_animation{
width: 170px;
top: -20px;
left: -35px;
}

.top_cms_img.obj7 {
width: 29vw;
height: 19vw;
top: -100px;
right: -25px;
}
.top_cms_img.obj8 {
width: 29vw;
height: 25vw;
top: 19%;
left: -20px;
}
.top_cms_img.obj9{
width: 30vw;
height: 20vw;
bottom: 23%;
right: -30px;
}
.top_cms_img.obj10 {
width: 29vw;
height: 24vw;
bottom: -45px;
left: -25px;
}

#page2 #contents.mg_b-200px{margin-bottom: 100px;}
#page10 #contents.mg_b-200px{margin-bottom: 150px;}

#cms_1-e .pager li,
#cms_1-e .pager li:last-of-type{
margin: 0;
}
#cms_1-e .pager li.prev{margin: 0 10px;}

}

/*IE*/
@media all and (-ms-high-contrast: none) {

#cms_5-b .cate_box .arrow, .cms_5-b .cate_box .arrow{margin-top: -20px!important;}

}




/*--------------------------------
自動リンク
--------------------------------*/
/* color */
.linkStyle{color: #c3aa82; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #c3aa82;}
.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: #333333!important;}
.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: #c3aa82;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #F0E1D2;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #C8B4B9;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #E6D2D2;} /* アクセントカラー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: #D7C8B4;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #F0E1D2;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #C8B4B9;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #E6D2D2;} /* アクセントカラー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: #D7C8B4;}
.border_color2,.hvr_border_color2:hover{border-color: #F0E1D2;}
.border_color3,.hvr_border_color3:hover{border-color: #C8B4B9;}
.border_color4,.hvr_border_color4:hover{border-color: #E6D2D2;}

html{font-size: 16px;}
body{-webkit-text-size-adjust: 120%;font-size: 16px;}

.font_12{font-size: 14px;}
.font_14{font-size: 16px;}
.font_16{font-size: 18px;}
.font_18{font-size: 20px;}
.font_20{font-size: 22px;}
.font_22{font-size: 24px;}
.font_24{font-size: 26px;}
.font_26{font-size: 28px;}
.font_28{font-size: 30px;}
.font_30{font-size: 32px;}
.font_100per{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}

@media  screen and (max-width: 768px){
.font_12_tb{font-size: 14px;}
.font_14_tb{font-size: 16px;}
.font_16_tb{font-size: 18px;}
.font_18_tb{font-size: 20px;}
.font_20_tb{font-size: 22px;}
.font_22_tb{font-size: 24px;}
.font_24_tb{font-size: 26px;}
.font_26_tb{font-size: 28px;}
.font_28_tb{font-size: 30px;}
.font_30_tb{font-size: 32px;}
.font_100per_tb{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up_tb{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up_tb{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up_tb{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up_tb{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up_tb{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw_tb{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}
}
@media  screen and (max-width: 667px){
html{font-size: 15px;}
body{-webkit-text-size-adjust: 110%;font-size: 15px;}

.font_12_sp{font-size: 13px;}
.font_14_sp{font-size: 15px;}
.font_16_sp{font-size: 17px;}
.font_18_sp{font-size: 19px;}
.font_20_sp{font-size: 21px;}
.font_22_sp{font-size: 23px;}
.font_24_sp{font-size: 25px;}
.font_26_sp{font-size: 27px;}
.font_28_sp{font-size: 29px;}
.font_30_sp{font-size: 31px;}
.font_100per_sp{
font-size: -webkit-calc(1rem + 1px);
font-size: calc(1rem + 1px);
}
.font_2up_sp{
font-size: -webkit-calc(1rem + 3px);
font-size: calc(1rem + 3px);
}
.font_4up_sp{
font-size: -webkit-calc(1rem + 5px);
font-size: calc(1rem + 5px);
}
.font_6up_sp{
font-size: -webkit-calc(1rem + 7px);
font-size: calc(1rem + 7px);
}
.font_8up_sp{
font-size: -webkit-calc(1rem + 9px);
font-size: calc(1rem + 9px);
}
.font_10up_sp{
font-size: -webkit-calc(1rem + 11px);
font-size: calc(1rem + 11px);
}
.font_2dw_sp{
font-size: -webkit-calc(1rem - 1px);
font-size: calc(1rem - 1px);
}
}