@charset "utf-8";
/* CSS Document */
/* FONT */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=GFS+Didot&display=swap');
.pop300{font-family: 'Poppins', sans-serif;font-weight: 300;}
.pop400{font-family: 'Poppins', sans-serif;font-weight: 400;}
.pop600{font-family: 'Poppins', sans-serif;font-weight: 600;}
.didot{font-family: 'GFS Didot', serif;}
.hannari{font-family: "Hannari","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";}


/*-----------------all page-------------------------------------------*/
.hannari {font-family: "Hannari","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";}
.font_min{font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";}

/*header*/
header{
    position: fixed;
    top:0;
    margin:0;
    z-index: 2;
    width: 100%;
    background-color: white;  
}
#header #logo{max-width:250px;}
#pc_nav li:not(last-of-child), #top_pc_nav li, #footer_nav li {
    /*max-width: 140px;*/
    margin-right: 20px;
    word-break: break-all;
}




footer {
    background-image: url(../img/footer.jpg);
    background-position: center center;
    background-size: cover;
}
#footer {
    background-color: rgba(255,255,255,0.5);
}

/*sns links*/
.sns_links {
    max-width: 200px;
    box-sizing: border-box;
}
.sns_links li {
    width: 16%;
    margin-right: 5%;
    box-sizing: border-box;
}

/*scroll fadein*/
 .fadein {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 1500ms;
}

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

/*nav_menu*/
#nav_menu .more_btn:hover:after{background: rgba(255,255,255,0.2);}
#nav_menu .more_btn:before {border-color: rgba(255,255,255,0.50);}
.nav_menu_more a .icon:before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display: block;
	position: absolute;
}
.nav_menu_more:first-of-type a .icon:before{
	content: "\f0e0";
	top: -3px;
	left: -30px;
}
.nav_menu_more:last-of-type a .icon:before{
	content: "\f879";
	top: -3px;
	left: -65px;
}

.more a{padding-bottom:13px;}

.pd_2per{padding:5% 2% 0;}

/*------------under page--------------------------------------------------------*/
#page_title{
    height:300px;
    overflow:hidden;
    background-image:url(../img/page_title.jpg);
    background-position: center center;
    background-size: cover;
}
#page_title .page_title_img{width:100%;}
/*cate_list*/
.cate_list li{
	width: 21.25%;
	margin-right: 5%;
	margin-bottom: 20px;
	box-sizing: border-box;
}
.cate_list li:nth-of-type(4n){margin-right: 0;}
.cate_list li a:before{
	font-family: "Font Awesome 5 Free";
	content: "\f138";
	font-weight: 900;
	display: block;
	position: absolute;
	top:50%;
	left: 15px;
	-ms-transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	transform: translate(0,-50%);
}
.cate_list li a:hover{opacity:0.7;}

/*------------page02--------------------------------------------------------*/
#cms_1-f #news_list > li{
	cursor: pointer;
}
#cms_1-f #news_list > li a i{
	transition: all 0.3s;
}
#cms_1-f #news_list > li a:hover i{
	padding-right: 10px;
}
.youtube_box{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_box iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


/*------------page03--------------------------------------------------------*/
#page3 .cate_list_about li{
    width:30%;
    padding:10px;    
}
#page3 .flow .font_2dw{line-height:1;}

/*------------page04--------------------------------------------------------*/
#page4 .pd_t-b5per{padding:2% 0;}
#page4 .cate_list_menu li{
    width:30%;
    padding:10px;    
}

/*------------page05--------------------------------------------------------*/
#cms_5-a .cate{margin-bottom: 50px;}
#cms_5-a .cate .cate_title{cursor: pointer}
@media all and (-ms-high-contrast: none){
	#cms_5-a .cate .cate_title span:last-of-type{
		padding-top: 10px;
	}
}
#cms_5-a .cate .cate_box:last-of-type{margin-bottom: 0;}
#cms_5-a .cate_title.on_click i{transform: rotate(180deg);}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#cms_5-a .cate{margin-bottom: 30px;}
}


/*------------page05--------------------------------------------------------*/








/*------------page06--------------------------------------------------------*/
#cms_5-b .cate_box .open_bt,.cms_5-b .cate_box .open_bt{
	position: relative;
	width: 100%;
	cursor: pointer;
	border-bottom: solid 1px #b79d53;
	padding: 20px 0
}
#cms_5-b .cate_box .arrow,.cms_5-b .cate_box .arrow{
	position: absolute;
	left: 20px;
	top: 50%;
	margin-top: -17px
}
#cms_5-b .cate_box .open_bt .arrow img,.cms_5-b .cate_box .open_bt .arrow img{
	width: auto;
}
#cms_5-b .arrow img{
	-webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
#cms_5-b .arrow_be img,.cms_5-b .arrow_be img{
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);	
}
#cms_5-b .cate_box .open_bt .box_title1,.cms_5-b .cate_box .open_bt .box_title1 {
	display: inline-block;
	position: relative;
	margin-left: 110px;
	letter-spacing: 1px;
	cursor: pointer;
}

#cms_5-b .cate_box .box_item,.cms_5-b .cate_box .box_item{
	display: none;
	padding: 20px 30px 0px;
}


#cms_5-b .cate_box .open_bt, .cms_5-b .cate_box .open_bt {
    position: relative;
    width: 100%;
    cursor: pointer;
    padding: 20px 0;
}
#cms_5-b .cate_box .arrow, .cms_5-b .cate_box .arrow {
    position: absolute;
    left: 20px;
    top: 50%;
    margin-top: -17px;
}

#cms_5-b .cate_box .open_bt .arrow img, .cms_5-b .cate_box .open_bt .arrow img {
    width: auto;
}
#cms_5-b .arrow img {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1 {
    margin-left: 75px;
}
#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1 {
    display: inline-block;
    position: relative;
    /*margin-left: 110px;*/
    letter-spacing: 1px;
    cursor: pointer;
}
#cms_5-b .arrow_be img, .cms_5-b .arrow_be img{
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}



/*------------page07--------------------------------------------------------*/
#map iframe {
    width: 100%;
    height: 400px;
}



/*------------page10--------------------------------------------------------*/
#page10 .con_box > div{
	width: 30%;
	margin-right: 5%;
	margin-bottom: 5%;
	box-sizing: border-box;
}
#page10 .con_box > div:nth-of-type(3n){margin-right: 0;}
#page10 .con_box > div:nth-last-of-type(1),
#page10 .con_box > div:nth-last-of-type(2),
#page10 .con_box > div:nth-last-of-type(3){margin-bottom: 0;}

/* タイトル左横 横線 */
.line-l{position: relative;}
.line-l:before{
	content: "";
	display: block;
	width: 15px;
	height: 2px;
	position: absolute;
	top: 13px;
	left: -25px;
}
/* タイトル下　横線 */
.line{position: relative;}
.line:before{
	content: "";
	display: block;
	width: 0;
	height: 3px;
	position: absolute;
	bottom:-25px;
}
#intro .line:before,
#contents3 .line:before{
	left: 50%;
	-ms-transform: translate(-50%,0);
	-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);
}
#contents1 .line:before,
#contents2 .line:before{
	left: 0;
}
.line.scrollin:before{
	animation: page_line 2s ease forwards;
}
@keyframes page_line {
	0% {
		width: 0;
	}
	96%,100% {
		width: 70px;
	}
}
/* moreボタン */
.more_btn{		
	position: relative;	
	text-transform: uppercase;
	transition: all 500ms cubic-bezier(0.77, 0, 0.175, 1);	
	cursor: pointer;
	user-select: none;
	padding-bottom: 8px!important;
}
.more_btn:before, .more_btn:after {
	content: '';
	position: absolute;	
	transition: inherit;
	z-index: 0;
}
.more_btn:hover{
	transition-delay: .5s;
}
.more_btn:hover:before{
	transition-delay: 0s;
}
.more_btn:hover:after{
	transition-delay: .35s;
}
.more_btn:before, 
.more_btn:after {
	top: 0;
	width: 0;
	height: 100%;
}
.more_btn:before {
	left: 0;
	border: 1px solid;
	border-left: 0;
	border-right: 0;	
}
.more_btn:after{
	top: 1px;
	right: 0;
}
.more_btn:hover:before,
.more_btn:hover:after {
	width: 100%;
}
.more_btn .jp{display:block;}

/* ---------- responshive ---------- */
@media screen and (max-width: 1280px){
    #pc_nav{display:none;}
    #nav_menu{display: block;}
}



/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
	/*cate_list*/
	.cate_list li{width: 47.5%;}
	.cate_list li:nth-of-type(3n){margin-right: 5%;}
	.cate_list li:nth-of-type(2n){margin-right: 0;}
    /*page_title*/
    .page9 .page_title_box h2{font-size:28px;}
    /* page3 */
    #page3 .cate_list_about li {width: 29%;}
    #page3 .con_box2 .con2_title_box .font_6up{
        line-height: 1.1;
        padding-bottom: 10px;    
    }
    /* page4 */
    #page4 .cate_list_menu li {width: 29%;}
    #page4 .con_box2 .con2_title_box .font_6up{
        line-height: 1.1;
        padding-bottom: 10px;    
    }
	/* page7 */
	#map iframe{height: 350px;}
	/* page10 */
	#page10 .con_box > div{
		width: 47.5%;
	}
	#page10 .con_box > div:nth-of-type(3n){margin-right: 5%;}
	#page10 .con_box > div:nth-of-type(2n){margin-right: 0;}
	#page10 .con_box > div:nth-last-of-type(2),
	#page10 .con_box > div:nth-last-of-type(3){margin-bottom: 5%;}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
    #header #logo {
    max-width: 150px;
}

    #logo2{max-width:200px;}
    .tel_reserv_box {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 3;
} 
    /*#page_title{height:initial;}*/
    .page_title_box{width:50%;}
    /*cate_list*/
	.cate_list li{width: 100%;margin-right: 0;}
	.cate_list li:nth-of-type(3n){margin-right: 0;}
    /*page_title*/
    .page5 .page_title_box h2 {
    font-size: 21px!important;
    letter-spacing: 2px!important;
}
    /* page03 */
    #page3 .cate_list_about li {
        width: 100%;}
    /* page04 */
    #page4 .cate_list_menu li {
        width: 100%;
        max-width:300px;
    }
    
	/* page7 */
	#map iframe{height: 300px;}
    
	/* page10 */
	#page10 .con_box > div{
		width: 100%;
		margin-right: 0;
	}
	#page10 .con_box > div:nth-of-type(3n){margin-right: 0;}
}

/* ---------- IEの処理 ---------- */
@media all and (-ms-high-contrast: none){

}

