﻿#intro .box figure{
	width: 45%;
    position: relative;
	z-index: 1;
}
#intro .box figure:after{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 95%;
    height: 0%;
    z-index: -1;
    border: 155px solid;
    opacity: 0.15;
}
#intro .box:nth-child(odd) figure:after{
	   right: 40%;
	    -moz-transform: translateX(50%);
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translate(50);
}
#intro .box:nth-child(even) figure:after{
    left: 40%;
	    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translate(-50);
}
#intro .box .txt_wrap{
		width: 45%;
}
#intro .box h3{
	display: inline-block;
	position: relative;
}
#intro .box h3:before {
    content: '';
    position: absolute;
    bottom: -10px;
    display: inline-block;
    width: 35px;
    border-bottom: 2px solid;
}

/*--------------------------------------------------------------*/

/*font--------------------------------------------------------------*/
/*anzu----------------------------------*/
@font-face {
font-family: "anzu";
src: url("../dup/img/anzu.ttf") format("ttf"),url("../dup/img/anzu.woff") format("woff"),url("../dup/img/anzu.woff2") format("woff2");
}

h1,h2,h3,h4,h5,h6,.cms_title,.cate_title,.t_cms_txt2,.t_cms_txt5,.top_cms_box .more_box .more div,.t_cms_txt8,.other .box_title2,#top_cms .cms_title p,#cms_5-c .box_txt1::before,.cms_5-c .box_txt1::before,#page_title p{font-family: 'anzu',"Kiwi Maru","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "YuGothic","ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: normal !important;}
h1,h2,h3,h4,h5,h6,.cms_title,.cate_title,.cate_list li a,.t_cms_txt2,.t_cms_txt5,.top_cms_box .more_box .more div,.other .box_title2,#top_cms .cms_title p,#cms_5-c .box_txt1::before,.cms_5-c .box_txt1::before,#page_title p{ transform: rotate(0.05deg);}

#intro .box h3,#contents .box h3{
    font-size: -webkit-calc(1rem + 12px);
    font-size: calc(1rem + 12px);}
.t_cms_txt2,.t_cms_txt5,.t_cms_txt8{font-size: 20px;}
.cms_title .font_12up{ font-size: -webkit-calc(1rem + 20px);
                       font-size: calc(1rem + 20px);}
.cms_title .font_2up{ font-size: -webkit-calc(1rem + 7px);
                       font-size: calc(1rem + 7px);}
.top_cms_box .more_box .more {font-size: 22px;}
.other .box_title2{font-size: 20px;}
h3.box_title1 { font-size: 23px;}
#page8 h3,#page7 h3 {font-size: 19px;}
/*anzu----------------------------------*/

body{font-family:"Kiwi Maru","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "YuGothic","ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

.t_cms_txt4,.t_cms_txt7,.t_cms_txt10{font-size:17px !important;}
/*font--------------------------------------------------------------*/



/* color-----------------------------------------------------------------------------*/
body,.txt_color_nomal{color: #333333;}
.txt_color1{color: #006400;} /* メインカラー */
.txt_color2{color: #dedede;} /* サブカラー */
.txt_color3{color: #6c918f;} /* アクセントカラー1 */
.txt_color4{color: #edf5f2;} /* アクセントカラー2 */
/* background-color */
.bg_black{background-color: #333333;} /* 黒背景 */
.bg_color1{background-color: #006400;} /* メインカラー */
.bg_color2{background-color: #dedede;} /* サブカラー */
.bg_color3{background-color: #a7c4c2;} /* アクセントカラー1 */
.bg_color4{background-color: #f7faf9} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important;}
/* border-color ※!important */
.border_color1{border-color: #006400;}
.border_color2{border-color: #dedede;}
.border_color3{border-color: #a7c4c2;}
.border_color4{border-color: #edf5f2}
/* hover ----------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #333333;}
.hvr_txt_color1:hover{color: #006400} /* メインカラー */
.hvr_txt_color2:hover{color: #dedede;} /* サブカラー */
.hvr_txt_color3:hover{color: #6c918f;} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #edf5f2} /* アクセントカラー2 */
/* background-color */
.hvr_bg_black:hover{background-color: #333333} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #006400;} /* メインカラー */
.hvr_bg_color2:hover{background-color: #dedede} /* サブカラー */
.hvr_bg_color3:hover{background-color: #a7c4c2;} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #edf5f2} /* アクセントカラー2 */
/* border-color ※!important */
.hvr_border_color1:hover{border-color: #006400;}
.hvr_border_color2:hover{border-color: #dedede;}
.hvr_border_color3:hover{border-color: #a7c4c2;}
.hvr_border_color4:hover{border-color: #edf5f2}


.more:hover { background: #edf5f2;}
.top_nav .txt_white:hover { color: #edf5f2;}
footer {background-color: #a7c4c2;}


/*linkStyle*/
a.linkStyle {
    color: #006400;
    transition: 0.5s;}
a.linkStyle:hover {opacity: 0.8;}
.opacity07{opacity:0.9 !important;}

/*写真表示前アニメーション①③*/
.img-container:before {background: #6c918f !important;}
/*写真表示前アニメーション②*/
.t_cms_img2 .img-container:before {background: #a7c4c2 !important;}


.hvr_txt_color_nomal:hover {color: #333333;}
/* color-----------------------------------------------------------------------------*/


/* loading---------------------------------------------------------------------------------------- */


#loading {
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 999999;
    background-color: #bed1cb;
    top: 0;
    background-image:url(dup/img/stars.png);
    
}


.star {
  height: 0;
  width: 3px;
  background: white;
  background: linear-gradient(transparent, rgba(255, 255, 255, 1));
  animation-name: shooting;
  animation-duration: 0.8s;
  animation-timing-function: linear;
  /*animation-fill-mode: forwards;*/
}
.star-box {
  position: absolute;
  top: 36%;
  left: 59%;
  height: 100px;
  width: 100px;
  transform: rotateZ(45deg);
}
.star2 {
  left: 61.5%;
  top: 35%;
  opacity: 0.6;
}
.star2 .star {
  animation-delay: 0.1s;
}
.star3 {
left: 62%;
top: 36%; opacity: 0.4;
}

/*.star4 .star {*/
/*     animation-delay: 0.4s;*/
/*}*/
@keyframes shooting {
  0% {
    height: 0;
    opacity: 50%;
  }
  50% {
    height: 60px;
    opacity: 100%;
  }
  100% {
    height: 128px;
    opacity: 0;
  }
}
#loader {
  z-index: 9999;
}
#loader img {
  animation-name: fadein;
  animation-duration: 1.0s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
  z-index: 1;
}
#loader img {
  width: 100%;
  height: auto;
  /*   position: absolute;*/
  top: 50%;
  left: 0;
}
.loader_icon {
  top: 50%;
  width: 300px;
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
/* ------------------------------------------------------------------------------------------- */



/* catch--------------------------------------------------------------------------------------------*/
.catch_img {
    z-index: 1;
    max-width: 700px;}
/* catch--------------------------------------------------------------------------------------------*/


/* star-----------------------------------------------------------------------------*/
@keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-webkit-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-moz-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-ms-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}



.stars, .twinkling {
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  height:100%;
  display:block;
}

.stars {
  background: url(dup/img/stars.png) repeat top center;
  z-index:0;
  width: 100%;
  height: 100%;
  background-size: 80%;
}

.twinkling{
  background:transparent url(dup/img/twinkling.png) repeat top center;
  z-index:1;

  -moz-animation:move-twink-back 100s linear infinite;
  -ms-animation:move-twink-back 100s linear infinite;
  -o-animation:move-twink-back 100s linear infinite;
  -webkit-animation:move-twink-back 100s linear infinite;
  animation:move-twink-back 100s linear infinite;
}


.bg_stars { background: #bed1cb;}
.contents_txt {
    z-index: 3;
    position: relative;}
    
.pd_l-r{padding-left:2.5%;
        padding-right:2.5%;}
/* star-----------------------------------------------------------------------------*/   
    
.contents_txt p, .contents_txt h3, .contents_txt h3 span {color: #fff !important;}



div#dec2,div#dec6 {
    width: 32px;
    transform: rotate(6deg);
    margin-top: 11px;
    margin-left: 50.5%;}
div#dec3,div#dec7{transform: rotate(179deg);}
div#dec1,div#dec5 { transform: rotate(153deg);}
/* contents--------------------------------------------------------------------------------------------*/


/* 装飾しやすいように消すやつとか---------------------------------------------------------------------------------------------*/
.vegas-overlay {    background-image: none !important;}
.vegas-overlay { background: rgba(255,255,255,0.7) !important;}
/*#top_cms, .all_page {background: #fff;}*/
/*#top_cms:before{content: none;}*/
#contents .box figure:after {content: none;}
.con1,.con2 {margin-bottom: 250px;}
.con3{margin-bottom: 200px !important;}
.navi a{display:none;}

/*TOPCMS*/
.line.txt_color_nomal { display: none;}
.cms_title {text-align: center;}


.loader.box,.cate_box{ z-index: 2;
                        position:relative;}

div#map {
    z-index: 2;
    position: relative;}
                        
div#cms_5-c .cate_box {
    background: #fff;
    padding: 10px 10px 15px 10px;}
                        
/* 装飾しやすいように消すやつとか---------------------------------------------------------------------------------------------*/

/*contact info 小さく*/
.other .box {
    width: 40%;
    margin: 10px;
    height: 350px;}
.other .box:last-child { border-left: 2px solid #006400;}
.other .box{border: 2px solid #006400}

.loader.box:hover .box_title:before {
    border-bottom: 2px solid #fff;}
/*contact info 小さく*/
    


#loading_logo {
    width: 100% !important;
    max-width: 250px!important;}

.sns_box{position:relative;}

.sns_box::before {
    content: '';
    background: url(dup/img/f02.png);
    background-size: contain;
    position: absolute;
    width: 115px;
    height: 160px;
     bottom: 159px;
    z-index: 0;
    background-repeat: no-repeat;
}

.sns_box::after {
    content: '';
    background: url(dup/img/f01.png);
    background-size: contain;
    position: absolute;
    width: 115px;
    height: 160px;
    bottom: 159px;
    right: 0;
    z-index: 0;
    background-repeat: no-repeat;
}

#top_cms {
    background-image: url(./Dup/img/leaf.png);
    background-repeat: repeat-y;
    background-position: right;
    background-size: 25px;
}

#luxy::before {
    background: url(dup/img/intro.png);
    position: absolute;
    content: '';
    background-size: 500px;
    width: 100%;
    height: 100%;
    background-repeat: repeat-x;
}

.wakusei p {
    margin-bottom: 20px;
    padding: 5px 10px 10px 10px;}

.wakusei h4 {
    font-size: 20px;
    padding: 10px 10px 0 10px;}

.img-container:after {
    background-color: rgba(255,255,255,0.6);
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: 100%;
}

.logo img {width: 60% !important;}

div#footer .logo img {
    width: 80% !important;
    position: relative;
    z-index: 2;}
    
/*タブレット*/
@media screen and (max-width: 768px){
    
.logo {display: none !important;}    
div#nav_menu span {
    background: #ffffff;
    height: 1px;
    border: solid 1px #333333;}
    
.button_container {top: 22px;}
#loading_logo {
    width: 100% !important;
    max-width: 200px!important;}

.sns_box::before {
    width: 75px;
    height: 160px;
    bottom: 30px;
}
.sns_box::after {
    width: 75px;
    height: 161px;
    bottom: 30px;
}

.star3 {
left: 59%;
top: 36%; opacity: 0;
}

.star-box {left: 70%;
           top: 40%;}
.star2 {left: 72%;}

.cate_list li {width: 26%;;}

.catch_img {
    z-index: 1;
    max-width: 550px;}

#luxy::before {
    background: url(dup/img/intro.png);
    position: absolute;
    content: '';
    background-size: 58%;
    width: 100%;
    height: 100%;
    top: 0;
    background-repeat: repeat-x;
}

#intro .box figure,#contents .box figure {
    width: 80%;
    position: relative;
    z-index: 1;
}

#contents .box .txt_wrap,#intro .box .txt_wrap {
    width: 80%;
    padding: 0;
}

.t_cms_img1, .t_cms_img3 {margin-top: 25px;}
.t_cms_img2{margin-bottom: 25px;}
.main_img_wrap {
    width: 96%;
    left: 2%}
    
#top_cms {background-size: 20px;}

.other .box {height: 220px;}

div#footer .logo {display: block !important;}
}

/*スマホ*/
@media screen and (max-width: 667px){
#loading_logo {
    width: 100% !important;
    max-width: 160px!important;}
.main_img_wrap {
    width: 95%;
    left: auto;}
.catch_img {
    z-index: 1;
    max-width: 280px;}
#intro .box h3, #contents .box h3 {
    font-size: -webkit-calc(1rem + 4px);
    font-size: calc(1rem + 4px);}

#intro .box figure,#contents .box figure,#contents .box .txt_wrap,#intro .box .txt_wrap{ width: 95%;}
.t_cms_txt4, .t_cms_txt7, .t_cms_txt10 {font-size: 14px !important;}
#top_cms { background-size: 16px;}
body {font-size: 14px;}
.other .box {width: 90%;}
.other .box {border: 2px solid #006400 !important;}

.star-box {
    left: 81%;
    top: 34%;}
.star2 {
    left: 85%;}
    
#page_title p.font_45 {font-size: 25px;}

.all_header #header {
    padding-top: 0px!important;
    padding-bottom: 0px!important;}

.cate_list li {width: 100%;}

#cms_5-c .box_title1::before {top: 11px;}
#cms_5-c .box_txt1::before {top: 11px;}

p#contact_mail {font-size: 14px;}
i.fas.fa-envelope{display: none;}

#luxy::before {
    background-size: 100%;
}


#loading {background-size: 180%;}

.stars { background-size: 200%;}
}

/*IE*/
@media all and (-ms-high-contrast: none){
    
.top_cms_box .more_box .more div {
    padding-top: 0px !important;
    padding-bottom: 3px !important;}

.pager li a span {padding-top: 8px !important;}

#cms_5-c .box_title1::before {top: 10px !important;}
#contact_mail a{padding-top:13px !important;}
#page8 #tel_CONTACT p a {padding-top: 18px !important;}
#page9 p a { padding-top: 4px !important;} 
.page10 .more_box .more div {
    padding-top: 0px !important;
    padding-bottom: 2px !important;}

#page_title .page_title_box { margin-top: -40px !important;}

/* star-----------------------------------------------------------------------------*/
@keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-webkit-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-moz-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}
@-ms-keyframes move-twink-back {
    from {background-position:0 0;}
    to {background-position:-10000px 5000px;}
}



.stars, .twinkling {
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  height:100%;
  display:block;
}

.stars {
  background: url(dup/img/stars.png) repeat top center;
  z-index:0;
  width: 100%;
  height: 100%;
  background-size: 105%;
  opacity: 0.5;
}

.twinkling{
  background:transparent url(dup/img/twinkling.png) repeat top center;
  z-index:1;

  -moz-animation:move-twink-back 100s linear infinite;
  -ms-animation:move-twink-back 100s linear infinite;
  -o-animation:move-twink-back 100s linear infinite;
  -webkit-animation:move-twink-back 100s linear infinite;
  animation:move-twink-back 100s linear infinite;
}


.bg_stars { background: #bed1cb;}
.contents_txt {
    z-index: 3;
    position: relative;}
    
.pd_l-r{padding-left:2.5%;
        padding-right:2.5%;}
/* star-----------------------------------------------------------------------------*/  

#loading {
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 999999;
    background-color: #bed1cb;
    top: 0;
    background-size:105%;
    background-image:url(dup/img/stars.png);
    
}
}



