﻿


:root{
    --color1:#503120;
    --color2:#4b3a45;
    --fontbolder:600;
}


/*
#loading{
    display:none!important;
}
*/


.linkStyle{
    color:#bf9d74;
}
.linkStyle:hover{
    transition:all 0.3s;
    opacity:0.7;
    text-decoration:underline;
}

#loading #loading_text .progressbar-text{
    color:var(--color2)!important;
}

body{
    overflow:hidden;
    font-size:18px;
    line-height:2;
}
header.scr_header {
    background-color: rgb(252 235 236)!important;
}
#nav_menu .menu-trigger i{
    box-shadow: -1px 3px #fff;
}
#nav_menu .font_10 {
    right: 23px;
    top: 70%;
    font-weight: bold;
    text-shadow: 1px 1px 0 #fff;
}

#pc_nav li a, #footer_nav li a {
    color: var(--color1);
    font-weight: bold;
    font-size: 1.2rem;
}
#pc_nav li a::after{
    background:var(--color1);
}
.menu-trigger-bar{
    background-color:var(--color1);
}
.menu-trigger-bar:before{
    background-color: rgba(255, 255, 255, 0.3);
}
#footertxt,#h1txt,#page-top .scr{
    color:var(--color1);
}
.info_btn_wrap .tel_bt{
    display:none;
}
.info_btn_wrap .contact_bt{
    margin:auto;
}
footer .scroll_d > span::before{
    background:var(--color1);
}


/*--top page---------------------------
-------------------------------------*/
.catch {
    width: 17vw;
    max-width: 400px;
    bottom: 10%;
    right: 5%;
    z-index: 4;
}
.catch img{
    filter: drop-shadow(2px 4px 6px rgba(0,0,0,0.5));
}
#intro_outer{
    background:url(./Dup/img/bg.png) no-repeat;
    background-size:100% auto;
    background-position:bottom;
}
#intro {
    height: 550px;
    max-height: 550px;
    text-align: center;
}
.intro_item {
    opacity: 0.3;
    z-index: -1;
    bottom: 30px;
    width: 85vw;
    max-width: 1600px;
    height: 100px;
}
#intro .intro_txt,
#con2 .con2_txtbox{
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    display: inline-block;
    text-align: left;
    -webkit-text-orientation: upright;
    text-orientation: upright;
}
#con1 {
    background: url(./Dup/img/item1.png) no-repeat;
    background-size: 30%;
    background-position: top 200px left -120px;
}
.contents_title{
    font-weight: var(--fontbolder);
    font-size: 2.5rem;
}
.Text-Span {
  position: relative;
  z-index: 1;
}
.Text-Span:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -14px;
  width: 0%;
  height: 2px;
  background: var(--color2);
  z-index: -1;
  transition: all 0.8s;
}
.Text-Span.isActive:after {
  width: 100%;
}
.con1_box.box2,
.con1_box.box4{
    margin-top:120px;
}
.con1_imgbox{
    margin-top:50px;
}
.con1_img1,
.con1_img3,
.con1_img5,
.con1_img7{
    margin-right: 22%;
}

.con1_img2,
.con1_img4,
.con1_img6,
.con1_img8{
    margin-left: 55%;
}
.con1_txtbox {
    margin-left: -70px;
    font-size: 1.2rem;
}
.con_no {
    font-size: 5rem;
    top: -120px;
    left: -30px;
    color: #b08f9a;
}
.box1 .con1_txtbox,
.box2 .con1_txtbox{
    margin-top:50px;
}

#con2{
    background: url(./Dup/img/item1.png) no-repeat;
    background-size: 35%;
    background-position: top right -120px;
}
#con2_wrap{
    padding-right: 10%;
}
.con2_img1 {
    margin-left: 40%;
    margin-right: 5%;
}
.con2_img2{
    margin-right:60%;
}
.con2_title {
    font-size: 2.3rem;
    margin-left: 50px;
    font-weight: var(--fontbolder);
}
.con2_txt{
    margin-top:50px;
}
.con_item{
    width: 4%;
    left: 20%;
    top: -150px;
}
.con3_title{
    font-size:2.5rem;
    font-weight: var(--fontbolder);
}
.con3_txt{
    font-size:1.3rem;
}
.con3_img{
    margin-right: 0;
    margin-left: auto;
}
.top_cms_box{
    border: 0;
    background: #fff;
    box-shadow: 0 0 50px rgba(247,232,233,0.5);
}

#reveiws a{
    color: #516591;
}

/*--under page---------------------------
-------------------------------------*/



/* ---------- responshive ---------- */

@media screen and (max-width: 1600px){
#con1_wrap{
    padding: 0 3%;
}
.con1_imgbox{
    margin-top:100px;
}
.con2_imgbox,
.con2_txtbox{
    width:100%!important;
}
}


@media screen and (max-width: 1350px){
.con1_imgbox,.con1_txtbox{
    width:80%!important;
}
.con1_imgbox{
    margin-top:0;
}

}


@media screen and (max-width: 1400px){
#pc_nav{
    display:none;
}    
    
}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
header{
    height:80px;
}

#main_img {
    background-size: auto 100%!important;
}
.catch {
    width: 35vw;
    bottom: 15%;    
}
#intro_outer{
    background-size: 200% auto;
    background-position: bottom;
}
#intro{
    height:initial;
    max-height:initial;
}
.intro_item{
    width:100vw;
    left: -5%;
}
#intro h2{
    width:60%;
    margin:30px auto 50px;
}
#intro .intro_txt{
    height:450px;
    max-height:450px;
    -webkit-writing-mode: horizontal-tb;
    -moz-writing-mode: horizontal-tb;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    display: inline-block;
    text-align: left;
    -webkit-text-orientation: upright;
    text-orientation: upright;
}
.contents_title{
    font-size:2rem;
}
.con1_box.box2, .con1_box.box4 {
    margin-top: 0;
}
#con1 {
    background-size: 75%;
    background-position: top left -120px;
}
/*#con2 .con2_txtbox{
    height:400px;
    max-height:400px;
}*/
#con1_wrap {
    padding: 0 4%;
}
.con1_txtbox {
    margin-left: 25px;
    margin-top: 20px;
}
#con2_wrap {
    padding-right: 5%;
    padding-left: 5%;
}
#con2{
    background-size: 50%;
    background-position: top right -80px;
}
.con2_img1{
    margin-right: 0;
}
.con_item {
    width: 7%;
    left: 8%;
    top: -50px;
}
.menu-trigger, .close-trigger{
    top:70%;
}
#nav_menu .font_10{
    top:90%;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#main_img{
    height:100vh!important;
}
.catch {
    width: 50vw;
    bottom: 20%;
}
#intro_outer{
    background-position: top;
}
.intro_item {
    width: 200vw;
    height: 70px;
    left: -105%;
}
#intro h2 {
    width: 100%;
}
#con1 {
    background-size: 95%;
    background-position: top left -120px;
}
.contents_title {
    font-size: 1.5rem;
    letter-spacing: 2px;
}
#con2 {
    background-size: 90%;
}

#con2 .con2_txtbox{
    -webkit-writing-mode: horizontal-tb;
    -moz-writing-mode: horizontal-tb;
    -ms-writing-mode: tb-rl;
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    display: inline-block;
    text-align: left;
    -webkit-text-orientation: upright;
    text-orientation: upright;
}

#intro,#con2 .con2_txtbox{
    height:initial;
    max-height:initial;
}
.con1_txtbox {
    margin-left: 0;
}
.con_no {
    font-size: 4rem;
    top: -95px;
    left: 0px;
}
.con2_title {
    font-size: 1.8rem;
    margin-left: 0;
}
.con2_img1 {
    margin-left: 20%;
    margin-right: 2%;
}
.con3_title {
    font-size: 1.8rem;
}
.con3_txt {
    font-size: 1.1rem;
}
.con_item {
    width: 15%;
    left: 8%;
    top: -80px;
}

.overlay .overlay-nav .top {
    margin-bottom: 10px;
}
.overlay .overlay-nav .top li {
    margin-bottom: 0;
}
.overlay .overlay-nav > ul li a{
    line-height:1;
}
#cms_2-g .cate_title {
    font-size: 1.4em;
    line-height: 1.5;
}
#nav_menu .font_10 {
    right: 13px
}

/*2025-02-13*/
    .fix_banner .more_item .text, .fix_banner2 .more_item .text {
        font-size: 12px;
    }
}

/*2025-03-04*/
.catch{display: none;}
    .con1_imgbox, .con1_txtbox {
        width: 80% !important;
    }
    .con2_imgbox, .con2_txtbox {
        width: 100% !important;
    }
    @media screen and (max-width: 1500px){
        #intro .intro_txt, #con2 .con2_txtbox{writing-mode: unset;}
            
    }
    #logo img{max-width: 200px;}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#logo img {
    max-width: 120px;
}
    .menu-trigger, .close-trigger {
        top: 55%;
    }
    #nav_menu .font_10 {
        top: 70%;
    }
}

/*2025-03-13*/
#header{
    background-color: rgb(252 235 236) !important;
}