﻿/*--------link_font--------*/
.linkStyle{color: #87766a; text-decoration: underline;}

@font-face {
    font-family: 'niconne';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/niconne.woff') format('woff'),
        url('./Dup/img/niconne.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'magnolia';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/magnolia.woff') format('woff'),
        url('./Dup/img/magnolia.eot')  format('eot');
    font-display: swap;
}

/*--------all_page--------*/
.bg_color6{background-color:rgba(255,255,255,0.25);}
.bg_color7{background-color:rgba(255,255,255,0.55);}
.width_45per{width: 45%!important;}
.add_shadow1{box-shadow: rgba(136, 165, 191, 0.25) 6px 2px 16px 0px, rgba(255, 255, 255, 0.4) -6px -2px 16px 0px;}
.add_shadow2{box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(116, 136, 161, 0.25) 0px 0px 0px 1px;}

.overlay .overlay-nav .top .jp,.overlay .overlay-nav .top .en,.overlay .overlay-nav .en,.overlay .overlay-nav .middle .jp{
    font-family: "fondamento","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
}
.overlay .overlay-nav .top .en {
    font-size: 14px;
    font-family:"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
}
.overlay .overlay-nav .top .jp {font-size: 24px;}
.overlay .overlay-nav .en{font-size:12px;}
.overlay .overlay-nav .middle .jp {font-size: 1rem;}
.overlay .overlay-nav .top li {
    margin-bottom: 15px;
    line-height: 1.25;
}
.overlay .overlay-nav .bottom a {
    background-color: #26474F;
}

.menu-trigger, .close-trigger {
    right: 30px;
    top: 56%;
}
.menu-trigger-bar{
box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 2px, rgba(0, 0, 0, 0.07) 0px 2px 4px, rgba(0, 0, 0, 0.07) 0px 4px 8px, rgba(0, 0, 0, 0.07) 0px 8px 16px, rgba(0, 0, 0, 0.07) 0px 16px 32px, rgba(0, 0, 0, 0.07) 0px 32px 64px;
}

#loading.bg_color1{background-color:#fbf4e6;}
#loading #loading_text .progressbar-text{color: #8b6352!important;}
#logo img{max-width: 235px;transition: all 0.5s;}
header.scr_header #logo img{max-width: 170px;transition: all 0.5s;}
header,header.scr_header{transition: all 0.5s;}
header.scr_header {
    background-color: rgba(113, 191, 147, .5)!important;
}


#pc_nav li a.txt_white{
    padding: 15px 0 0 0;
    font-weight: bold;
    text-shadow: 0 0 5px #686868;
}

header.scr_header #pc_nav li a.txt_white{
    padding: 5px 0 0px 0;
    text-shadow: none;
}

#main_img{
    position:relative;
}
#main_img::before {
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/catch.png) no-repeat;
    background-size: contain;
    z-index: 5;
    width: 56%;
    height: 25%;
    left: 52%;
    transform: translate(-50%, -50%);
    top: 50%;
}


.sns_links{
    justify-content: flex-start;
}
.blur{background: linear-gradient(180deg, rgba(255, 255, 240, .75), rgba(233, 233, 208, .8));}
.top main .txt_white{
    color: #514134;
}

 #intro:before{
    content: " ";
    position: absolute;
    display: inline-block;
    width: 70%;
    height: 100%;
    background: url(./Dup/img/item_01.png) no-repeat;
    background-size: cover;
    left: -75px;
    top: 0px;
    z-index: -10;
    opacity: 0.8;
    background-position: 0% 100%;
  }
#intro .con_title {
    letter-spacing: 3px;
}

main h2{
    text-shadow:3px 3px 6px rgba(193, 193, 193, .45);
}
@keyframes swing2 {
  0% {transform:translateY(0)}
25% {transform:translateY(10px)}
75% {transform:translateY(-10px)}
100% {transform:translateY(0)
}
}

#intro .intro_txt:before {
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_03.png) no-repeat;
    background-size: contain;
    z-index: 1;
    width: 30%;
    height: 60%;
    right: -15%;
    bottom: -200px;
    transform-origin: center bottom;
    animation: swing2 3s linear 0s infinite;
}
#intro:after {
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_04.png) no-repeat;
    background-size: contain;
    z-index: 1;
    width: 8%;
    height: 13%;
    left: 46%;
    bottom: 90px;
    transform: translateX(-50%);
    transform-origin: center bottom;
    animation: swing2 3s linear 0s infinite;
}

 #contents:before{
    content: " ";
    position: absolute;
    display: inline-block;
    width: 70%;
    height: 100%;
    background: url(./Dup/img/item_02.png) no-repeat;
    background-size: cover;
    right: 0px;
    top: 0px;
    z-index: -10;
    opacity: 0.6;
  }
#contents .con_title {
    line-height: 0.9;
    font-size: 3em;
    letter-spacing: 3px;
    margin-bottom: 30px;
}

#contents .con_box_item{position:relative;}
#contents .con_box:first-of-type .con_box_item:before{
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_07.png) no-repeat;
    background-size: contain;
    z-index: 1;
    width: 32%;
    height: 100%;
    right: -6%;
    bottom: -250px;
    transform-origin: center bottom;
    animation: swing2 3s linear 0s infinite;
  }
#contents .con_box:nth-of-type(2) .con_box_item:before{
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_08.png) no-repeat;
    background-size: contain;
    z-index: 1;
    width: 32%;
    height: 100%;
    right: 2%;
    bottom: -250px;
    transform-origin: center bottom;
    animation: swing2 3s linear 0s infinite;
  }
.video_wrap{
    margin: 0 auto;
    padding-bottom: 100px;
}
.video_box{
    position: relative;
    padding-bottom: 56.25%; 
    height: 0;
    overflow: hidden;
}
.video_box:after{
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/item_09.png) no-repeat;
    background-size: contain;
    z-index: 1;
    width: 100%;
    height: 60%;
    left: 0%;
    top: 0px;
    pointer-events: none;
}
.video_box video{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);width: auto;
    height: 100%;
}

.top_title{
    display: none;
}
#top_cms{position:relative;}
#top_cms:before{
    content: " ";
    position: absolute;
    display: inline-block;
    width: 70%;
    height: 100%;
    background: url(./Dup/img/item_01.png) no-repeat;
    background-size: cover;
    left: -300px;
    top: 0px;
    z-index: -10;
    opacity: 0.8;
  }
#top_cms .txt_color4{color: #514134;}
.cms_title h3{
    font-size: 3em;
    letter-spacing: 3px;
}
.more .more_item {
    border-color: #ffffff;
}
.more .more_item:before {
    background: linear-gradient(16deg, #bae5ac, #f5f5c7)!important;
}

#footer_info{
    background-color: #fbf4e6;
}
#logo2{margin-top:30px;}
#logo2 img{    max-width: 280px;}

#footer_info .info_btn_wrap{margin-bottom:40px;}
footer .info_btn_wrap a {
    background-color: #80c39d;
    color: #ffffff!important;
}
#footer_info .txt_white{
    color: #564030;
}
footer .scr {
    color: #514134;
}
.scroll_d > span {
    background-color: rgba(81, 65, 52, .55);
}
.overlay{
    background: linear-gradient(180deg, rgba(143, 139, 135, .65), rgba(149, 149, 149, .7));
    -webkit-backdrop-filter: blur( 10px );
}


/*--------subpage--------*/
#page_title .jp {
    text-shadow: 0px 0px 5px #000;
}
.page .page_container.txt_white,#footer_nav li .txt_white{
    color: #514134;
}

#page8 .tel_box{
    position: relative;
    overflow: hidden;
    padding: 20px 20px 15px 20px;
    background-color: #f1a3a1;
}
#page8 .tel_box > a:before{
    content:"";
    position: absolute;
    width:100vw;
    height:100vh;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    left:50%;
    top:50%;
}
@media screen and (max-width: 1200px){
    #page8 .tel_box p{
        display: block;
        padding-right: 0px;
        margin-right: 0px;
        border-right: none;
        
    }
}
@media screen and (max-width: 667px){  
#page8 .tel_box a{
    font-size: 5.3vw;
    letter-spacing: 2px;    
}
}
#page10 .con_box ul{border-color: #514134;}
#page10 .con_box ul li a.txt_white{color: #514134;}
.overlay:before {
    background-color: rgba(175, 177, 183, .3);
}
.overlay .overlay-nav .sns_links li {
    width: 16%;
}


/*--------mobile_tb--------*/
@media screen and (max-width: 768px){
.width_45per{width: 50%!important;}
.overlay div.overlay-img {background-position: 25% 50%;}
.overlay div.overlay-nav {height: 90%;}
.menu-trigger, .close-trigger {top: 56%;}

#loading_text .progressbar-text {font-size: 1rem !important;}
#logo img { max-width: 260px;}

body:before,body:after {
    display: none;
}
#main_img::before {
    width: 85%;
    height: 14%;
    left: 50%;
}
#intro .intro_txt:before {
    width: 28%;
    height: 43%;
    right: -9%;
}
#intro:after {
    width: 12%;
    height: 10%;
    left: 35%;
    bottom: 30px;
}
#intro .intro_photo h2 {
    left: -22px;
}
#intro .portrait_img img {
    left: 0%;
}

#contents:before {
    width: 82%;
}
#contents .con_box:nth-of-type(2) .con_box_item:before {
    width: 32%;
    height: 68%;
    right: 2%;
    bottom: -150px;
}
#contents .con_title {
    font-size: 5vw;
}
#top_cms:before {
    width: 84%;
    left: -100px;
}

#footer_info .grid_6:nth-of-type(1){width: 45%!important;}
#footer_info .grid_6:nth-of-type(2){
    width: 45%!important;
}
#copyright{
    text-align: left;
    padding-left: 30px;
}
#logo2 img{    max-width: 150px;}
#h1txt span{font-size: 0.7em;}
.page_container{padding: 10% 5%;}

}


/*--------mobile_sp--------*/
@media screen and (max-width: 667px){
.width_45per{width: 100%!important;}

#loading .kvArea .img_box img {max-width: 80%;}
#logo img {max-width: 150px;}
header.scr_header #logo img {
    max-width: 110px;
}
.menu-trigger, .close-trigger {
    right: 13px;
    top: 63%;
}
#main_img::before {
   width: 90%;
    height: 17%;
    top: 49%;
    left: 50%;
}
_::-webkit-full-page-media,
_:future,
:root #main_img::before {
      left: 53%;
}
#intro:before {
    width: 190%;
    height: 100%;
    left: -270px;
    opacity: 0.6;
    top: 50px;
}

#intro:after {
    width: 23%;
    height: 12%;
    left: 4%;
    bottom: -100px;
}
#contents .con_box:nth-of-type(2) .con_box_item:before {
    right: 0;
    left: -9%;
    bottom: -110px;
}
#contents:before {
    width: 250%;
    height: 75%;
    background: url(./Dup/img/item_02.png) repeat-y;
}
#contents .con_title {
    font-size: 10vw;
}
#footer_info .grid_6:nth-of-type(1) {
    width: 100%!important;
}
#footer_info .grid_6:nth-of-type(2) {
    width: 87%!important;
    padding: 0;
}
#footer_info {
    padding: 0px 0px;
}
#copyright {
    text-align: center;
    padding-left: 0px;
}
#top_cms:before {
    width: 115%;
    left: -121px;
}

.top_cms_box{
    border: 0;
    padding: 0;
}
.cms_title h3 {
    font-size: 8vw;
}
.overlay .overlay-nav .sns_links li {
    width: 15%;
}

#logo2 img {
    max-width: 250px;
}
#footertxt{padding-right: 20px;}
    
.page_container {
    padding: 20% 5%;
}
#page_title .jp {
    left: -10px;
    top: 84px;
    letter-spacing: 10px;
}
#page_title .en {
    font-size: 12.5vw;
    letter-spacing: 1px;
    top: -24px;
}
#page_title .en:before {
    width: 2px;
    left: 1px;
}
#page_title .jp span {
    line-height: 2.1;
}

.cate_list li:nth-of-type(4n) {
    margin-right: 0%;
}

}

@-moz-document url-prefix(){
    #pc_nav li a.txt_white {
    letter-spacing: normal;
    }
    .overlay .overlay-nav > ul li a {
   letter-spacing: normal;
    }
    .modal-box .inner{
        scrollbar-width: none; 
    }
    /*.blur{background: linear-gradient(180deg, rgba(143, 139, 135, .85), rgba(149, 149, 149, .9));}*/
    .overlay:before {
    background-color: rgba(175, 177, 183, .6);
}
}

@media all and (-ms-high-contrast: none){
    .overlay:before {background: rgba(143, 139, 135, .6);}
    #pc_nav li a.txt_white {
    font-size: 1em;
    }
    footer .info_btn_wrap a{padding:13px 0  8px;}
    #cms_1-f .box_txt1{padding:13px 20px 8px;}
}

/*2025/1/10*/
#footer_info .map {
    display:none;
}