@charset "utf-8";
/*
Theme Name: vitae template
Theme #
Description
*/
/* スライドショー
--------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Vollkorn:ital,wght@0,400..900;1,400..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');
.gt_float_switcher img {
    vertical-align: middle;
    display: inline-block;
    width: 20px!important;
    height: auto;
    margin: 0 5px 0 0;
    border-radius: 3px;
}
.gt_float_wrapper{
    top: 16px!important;
    right: 16px!important;
    z-index: 999999;}
.gt_float_switcher {
    font-family: Arial;
    font-size: 16px!important;
    margin-top: -4px;
    border-radius: 2px;
    color: #555;
    display: inline-block;
    line-height: 16px!important;
    box-shadow: rgba(0, 0, 0, 0.15) 0 5px 15px;
    background: #fff;
    overflow: hidden;
    transition: all .5s cubic-bezier(0.4, 0, 1, 1);
}
.gt_float_switcher .gt-selected .gt-current-lang {
    padding: 6px 12px!important;
    color: #333;
    font-weight: bold;
}

.mg_1{margin-top: -80px;}
.mg_2{margin-top: -48px;}
.mg_3{margin-top: -80px;}
.cl_btn{padding-left: 24px;background-image:url("img/cl.svg");background-size:16px 16px;background-position: center left;background-repeat: no-repeat;font-size: 1.5rem;letter-spacing: 0.06em;line-height: 1.8em;font-weight: 500;}
.pd_r200{padding-right: 100px;}
.up2 {opacity: 0;transform: translate(0, 35%);transition: 1s;}
.up2.show2 {transform: translate(0, 0);opacity: 1;}

.box-parent{width:100%;height:auto;display:flex; justify-content:space-between;overflow-x: hidden;padding: 0;}
.box-child{margin: 0 24px 48px;width: calc((100% - 0px) / 4);display:flex;flex-direction:column;}

.parallax-box {clip-path: inset(0 round 0 0 160px 0);width:100%;height: 600px;box-sizing:border-box;color: #fff;position: relative;}
.parallax-box2 {content: '';position: absolute;top: 0%;left: -5%;z-index: -10;width:120%;height:120%;background-image:url("img/topimg01.jpg");background-size: cover;}

.parallax-box1 {clip-path: inset(0 round 0 0 0 160px);width:100%;height: 600px;box-sizing:border-box;color: #fff;position: relative;}
.parallax-box3 {content: '';position: absolute;top: 0%;left: -5%;z-index: -10;width:120%;height:120%;background-image:url("img/salon01.jpg");background-size: cover;}

.parallax-box5 {clip-path: inset(0 round 0 0 0 0);width:100%;height: 600px;box-sizing:border-box;color: #fff;position: relative;}
.parallax-box4 {content: '';position: absolute;top: 0%;left: -5%;z-index: -10;width:120%;height:120%;background-image:url("img/topimg03.jpg");background-size: cover;background-position: center top;}

.parallax-s {clip-path: inset(0 round 0 0 0 0);width:100%;height: 680px;box-sizing:border-box;color: #fff;position: relative;}
.parallax-s1 {content: '';position: absolute;bottom: 0%;left: -15%;z-index: -10;width:120%;height:120%;background-image:url("img/topimg02.jpg");background-size: cover;background-position: center center;}
.ab-s1 {position: absolute;top: 50%;left: 50%;z-index: 10;width:240px;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%);}

.parallax-ss {clip-path: inset(0 round 0 0 160px 0);width:100%;height: 760px;box-sizing:border-box;color: #fff;position: relative;}
.parallax-s2 {content: '';position: absolute;bottom: 0%;left: -15%;z-index: -10;width:120%;height:120%;background-image:url("img/ab_haikei2.jpg");background-size: cover;background-position: center bottom;}

.parallax-sss {clip-path: inset(0 round 0 0 0 160px);width:100%;height: 820px;box-sizing:border-box;color: #fff;position: relative;}
.parallax-s3 {content: '';position: absolute;bottom: 0%;left: -15%;z-index: -10;width:120%;height:120%;background-image:url("img/story03.jpg");background-size: cover;background-position: center bottom;}
.parallax-tx1 {content: '';position: absolute;top: 0%;right: 0%;z-index: 1;width:120px;height:auto;}

.nav_slider_thumb div.pimg{position: relative;width:98%;margin:1%;box-sizing: border-box;}
.nav_slider_thumb div.pimg:before{content: "";display: block;padding-top: 100%;}
.nav_slider_thumb div.pimg img{position: absolute;width: 100%;height: 100%;top: 0;right: 0;bottom: 0;left: 0;margin: auto;object-fit: cover;}
.nav_slider_wrap .slick-list {margin: 0px -8px 0px -8px!important;padding: 0!important;}
.nav_slider_wrap .slick-slide {margin: 8px!important;padding: 0px!important;}

.pdt144{padding-top: 160px;}
.sco{position: absolute;bottom: 8%;margin: auto;left: 27.5%;transform: translate(-50%, -0%);-webkit-transform: translate(-50%, -0%);-ms-transform: translate(-50%, -0%);text-align: center;z-index: 12;}
.mouse{ width: 20px;height: 35px;position: relative;background: #000 linear-gradient(transparent 0%,transparent 50%,#ffffff 50%,#ffffff 100%);background-size: 100% 200%;border-radius: 100px;animation: colorSlide 6s linear infinite,nudgeMouse 6s ease-out infinite;margin: auto;}
.mouse:before,.mouse:after{content: '';position: absolute;top: 0;bottom: 0;right: 0;left: 0;margin: auto;}
.mouse:before{width: 16px;height: 31px;background-color: #000;border-radius: 100px;}
.mouse:after{background-color: #ffffff;width: 6px;height: 6px;border-radius: 100%;animation: trackBallSlide 6s linear infinite;}
@keyframes colorSlide{
  0% {background-position: 0% 100%;}
  20% {background-position: 0% 0%;}
  21% {background-color: #4e5559;}
  29.99% {background-color: #ffffff;background-position: 0% 0%;}
  30% {background-color: #4e5559;background-position: 0% 100%;}
  50% {background-position: 0% 0%;}
  51% {background-color: #4e5559;}
  59% {background-color: #ffffff;background-position: 0% 0%;}
  60% {background-color: #4e5559;background-position: 0% 100%;}
  80% {background-position: 0% 0%;}
  81% {background-color: #4e5559;}
  90%, 100% {background-color: #ffffff;}
}

@keyframes colorText{
  21% {color: #4e5559;}
  30% {color: #ffffff;}
  51% {color: #4e5559;}
  60% {color: #ffffff;}
  81% {color: #4e5559;}
  90% {color: #ffffff;}
} 
@keyframes trackBallSlide{
  0%{opacity: 1;transform: scale(1) translateY(-20px);}
  6%{opacity: 1;transform: scale(0.9) translateY(5px);}
  14%{opacity: 0;transform: scale(0.4) translateY(40px);}
  15%, 19%{opacity: 0;transform: scale(0.4) translateY(-20px);}
  28%, 29.99%{opacity: 1;transform: scale(1) translateY(-20px);}
  30%{opacity: 1;transform: scale(1) translateY(-20px);}
  36%{opacity: 1;transform: scale(0.9) translateY(5px);}
  44%{opacity: 0;transform: scale(0.4) translateY(40px);}
  45%, 49%{opacity: 0;transform: scale(0.4) translateY(-20px);}
  58%, 59.99%{opacity: 1;transform: scale(1) translateY(-20px);}
  60%{opacity: 1;transform: scale(0.9) translateY(-20px);}
  66%{opacity: 1;transform: scale(0.9) translateY(5px);}
  74%{opacity: 0;transform: scale(0.4) translateY(40px);}
  75%, 79%{opacity: 0;transform: scale(0.4) translateY(-20px);}
  88%, 100%{opacity: 1;transform: scale(1) translateY(-20px);}
}
@keyframes nudgeMouse{
  0%{transform: translateY(0);}
  20%{transform: translateY(8px);}
  30%{transform: translateY(0);}
  50%{transform: translateY(8px);}
  60%{transform: translateY(0);}
  80%{transform: translateY(8px);}
  90%{transform: translateY(0);}
}
@keyframes nudgeText {
  0%{transform: translateY(0);}
  20%{transform: translateY(2px);}
  30%{transform: translateY(0);}
  50%{transform: translateY(2px);}
  60%{transform: translateY(0);}
  80%{transform: translateY(2px);}
  90%{transform: translateY(0);}
}
/* スライド */
.scp{content:'';display: block;padding-top: 88px;margin-top: -88px;}
.modal{display: none;height: 100vh;position: fixed;top: 0;width: 100%;z-index: 11;}
.modal__bg{background: rgba(0,0,0,0.8);height: 100vh;position: absolute;width: 100%;z-index: 10;}
.modal__content{background: #fff;left: 50%;padding: 40px;position: absolute;top: 50%;transform: translate(-50%,-50%);width: 60%;max-width: 600px;z-index: 11;}
.full div {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100vh;height: calc(var(--vh, 1vh) * 100);
  margin: 0;
}
.full{animation: slidescale 1s ease-out;}

.full div.img01 {background-position: center center ;background-size: cover;background-repeat: no-repeat;background-image:url("img/top01.jpg");}
.full div.img02 {background-position: center center ;background-size: cover;background-repeat: no-repeat;background-image:url("img/top02.jpg");}
.full div.img03 {background-position: center center ;background-size: cover;background-repeat: no-repeat;background-image:url("img/top03.jpg");}
.full div.img04 {background-position: center center ;background-size: cover;background-repeat: no-repeat;background-image:url("img/top04.jpg");}
.full .slick-active{animation: slidescale 1s ease-out}
@keyframes slidescale{
    0%{opacity: 0;transform: scale(1.03) translateY(0px);}
    100%{opacity: 1;transform: scale(1) translateY(0px);}
}

.img_news {position: relative;}
.img_news::before {content: "";display: block;padding-top: 60%;}
.img_news img {position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;}
.top_h1 {position: absolute;top: 0;left: 0;z-index: 1;width: 100%;height: 100%;background-image: url("img/tophaikei1.jpg");background-size: cover;background-repeat: no-repeat;background-position: center center;}


@keyframes anime_slider_fade {0% {opacity: 0;}100% {opacity: 1;}}

.movie2{position: relative;width: 100%;padding-bottom: 56.25%;}
.movie2 video{position: absolute;top: 0;left: 0;width: 100%;height: 100%;}

/* ナビメニュー
--------------------------- */
.menu { position: relative;width: 100%;margin: 0 auto;}
.menu > li {display: inline-block;}
.menu > li:last-child {}
.menu > li a {display: block;color: #000;}
.menu > li a.wh {display: block;color: #322b29;}
.menu > li a:hover {}
ul.menu__second-level {visibility: hidden;opacity: 0;z-index: 1;}
ul.menu__third-level {visibility: hidden;opacity: 0;}
ul.menu__fourth-level {visibility: hidden;opacity: 0;}
.menu > li:hover {-webkit-transition: all .5s;transition: all .5s;}
.menu__second-level li {background-color: rgba(0,0,0,1);float: left;font-size: 1.3rem;color: #fff;width: 100%;line-height: 40px;letter-spacing: 0.08em;box-sizing: border-box;padding: 0px 16px;text-align: left;border-bottom: 1px solid #59504c;}
.menu__second-level li:first-child {border-top: 0px solid #fff;}
.menu__second-level li:last-child {border-bottom: 0px solid #59504c;}
.menu__second-level li a {color: #000;}
.menu__third-level li {border-top: 1px solid #000;}
.menu__second-level li a:hover {color: #727171;}
.menu__third-level li a:hover {background: #fff;}
.menu__fourth-level li a:hover {background: #fff;}

li.menu__single ul.menu__second-level {position: absolute;top: 40px;width: 240px;-webkit-transition: all .2s ease;transition: all .2s ease;}
li.menu__single:hover ul.menu__second-level {top: 40px;visibility: visible;opacity: 1;}
li.menu__mega ul.menu__second-level {left:90px;position: absolute;top: 40px;box-sizing: border-box;width: 94%;padding: 16px 3%;background-color: rgba(0,0,0,1);-webkit-transition: all .2s ease;transition: all .2s ease;}
li.menu__mega:hover ul.menu__second-level {top: 40px;visibility: visible;opacity: 1;}
li.menu__mega ul.menu__second-level > li {float: left;width: 25%;border: none;text-align: center;padding-bottom: 16px;}

.rel_t{position: relative;width: 100%;height: auto;z-index: 1;}
.abu_t1{position: relative;top:-120px;z-index: 100;}
.rel_t1{position: relative;;height: auto;z-index: 110;}
.rel_t2{position: relative;width: 100%;height: auto;z-index: 20; margin-top: -120px;}
.ab_r{position:absolute;top:0;right:0; width: 65%;height: 640px;z-index: 1;}

.topbg1 {background-position: center center;background-repeat: no-repeat;background-size:cover;background-image:url("img/topimg04.jpg");height: 1040px;}
.mauto{flex-grow: 1;}
.box-child-text3{margin-top:auto;}
body {color: #231815;font-family:"Noto Serif", serif;font-optical-sizing: auto;font-weight: 500;font-style: normal;}
body{overflow-x: hidden;}
#wrapper{width:100%;overflow: hidden !important;}
#top {height: 100vh;height: calc(var(--vh, 1vh) * 100);position: relative;}
.ab_t1{position: absolute;left:0;top:0;width: 55%;z-index: 1;}
.ab_t2{position: absolute;top:45%;width: auto;z-index: 2;left: 27.5%;transform: translate(-50%, -0%);-webkit-transform: translate(-50%, -0%);-ms-transform: translate(-50%, -0%);text-align: center;}
.ab_t3{position: absolute;top:-120px;width: 100%;;z-index: 10;left: 0;}
.kado1{border-radius: 0px 120px 0px 0px;}

.tophaikei{background-image: url("img/tophaikei1.jpg");background-position: center center;background-size: cover;width: 100%;height: 100%;z-index: 1;position: absolute;top:0;}
.logo_title{padding: 16px 15% 24px 15%; position: absolute;z-index: 10;top:5%;width: 100%;}
.one1{max-width:520px;margin: 0 auto;width: 100%;}

.congap {
  margin: 0 -32px;
  width: 100%;
  column-count: 2;
  column-gap: 0;
}
.grid1 {
  padding: 32px;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
.mauto{margin-top: auto;}
.fg1{flex-grow:1;}
.flex_box2{display: flex;flex-flow: wrap;}
.archive-item {display:flex;flex-direction:column;}
.flex_box1{display: flex;flex-wrap: wrap;justify-content: center;align-items: flex-start;}
.flex_box{display: flex;flex-wrap: wrap;justify-content: center;align-items: center;}
.flex2 {flex-flow: row-reverse;}
.ind1{padding-left: 1.4em;text-indent: -1.4em;}.ind2{padding-left: 5.6em;text-indent: -5.6em;}

.table-scroll{overflow: auto; /*スクロールさせる*/white-space: nowrap; /*文字の折り返しを禁止*/width:100%; /*今回の設置を分かりやすくするためワザと狭い幅を指定。本来は不必要な指定です。*/}
/* 以下、スクロールバーを追加 */
.table-scroll::-webkit-scrollbar{height: 8px;margin-bottom: 16px;}
.table-scroll::-webkit-scrollbar-track{background: #333;}
.table-scroll::-webkit-scrollbar-thumb {background: #999;}

.accordion {overflow: hidden;}
/* タイトル部分のスタイル */
.accordion-title {
  cursor: pointer;
  outline: none;
  /* デフォルトの矢印を非表示（Safari対応含む） */
  list-style: none;
}
.accordion-title::-webkit-details-marker {
  display: none;
}
/* アコーディオンが開いているときの矢印の向き */
.accordion[open] .accordion-title::after {
  transform: rotate(180deg);
}

/* コンテンツ部分のスタイル */
.accordion-content {
  padding: 0 16px 16px;
}
.dw_s{letter-spacing: 0.15em;font-size: 1.4rem;line-height:50px;}
.dr_f1{font-size: 2rem;letter-spacing: 0.08em;line-height: 1.8em;font-weight: 400;font-style: normal;}
.dr_f2{font-size: 1.8rem;letter-spacing: 0.08em;line-height: 1.8em; padding-bottom: 4px;font-weight: 400;font-style: normal;}
.dr a::after {position: absolute;left: 0;
content: '';
width: 100%;
height: 2px;
background: #000000;
bottom: -1px;               /*アンダーラインがaタグの下端から現れる*/
transform: scale(0, 1);     /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
transform-origin: left top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
transition: transform 0.3s; /*変形の時間*/
}

.dr a:hover::after {transform: scale(1, 1);}
/* テキスト
--------------------------- */

.font_s {font-size: 1.1rem;letter-spacing: 0.08em;line-height: 1.7em;}
.font_s1 {font-size: 1.2rem;letter-spacing: 0.08em;line-height: 1.6em;}
.font_s1_2 {font-size: 1.3rem;letter-spacing: 0.08em;line-height: 1.6em;}
.font_s2 {font-size: 1.4rem;letter-spacing: 0.06em;line-height: 1.8em;}
.font_s2x {font-size: 1.4rem;letter-spacing: 0.06em;line-height: 2.4em;}
.font_s2xx {font-size: 1.3rem;letter-spacing: 0.06em;line-height: 2em;}
.font_s3 {font-size: 1.6rem;letter-spacing: 0.06em;line-height: 1.8em;}
.font_s3x {font-size: 1.4rem;letter-spacing: 0.06em;line-height: 2.8em;}
.font_s4 {font-size: 1.6rem;letter-spacing: 0.06em;line-height: 2.2em;}
.font_s4x {font-size: 1.6rem;letter-spacing: 0.06em;line-height: 2.8em;}
.font_s4xx {font-size: 2.2rem;letter-spacing: 0.06em;line-height: 2.2em;}
.font_s5 {font-size: 3rem;letter-spacing: 0.06em;line-height: 1.6em;}
.font_s6 {font-size: 6.6rem;letter-spacing: 0.02em;line-height: 1em;}
.font_s7 {font-size: 3.2rem;letter-spacing: 0.16em;line-height: 2em;}
.font_s8 {font-size: 2.6rem;letter-spacing: 0.06em;line-height: 1.5em;}
.font_s9 {font-size: 5.6rem;letter-spacing: 0.1em;line-height: 1.5em;}
.font_s10 {font-size: 7.0rem;line-height: 70px;letter-spacing: 0.05em;}

.title1 {font-size: 4rem;letter-spacing: 0.03em;line-height: 1.5em;}
.title2 {font-size: 2.6rem;letter-spacing: 0.03em;line-height: 1.5em;}
.title3 {font-size: 2.4rem;letter-spacing: 0.08em;line-height: 1.8em;}
.title4 {font-size: 1.8rem;letter-spacing: 0.03em;line-height: 1.5em;}
.title5 {font-size: 1.8rem;letter-spacing: 0.08em;line-height: 1.8em;}
.w400{max-width: 400px;width: 100%;}
.f_b {font-weight: 900;}
.f_b2 {font-weight: 800;}
.f_b3 {font-weight: 700;}
.f_b4 {font-weight: 400;}
.f_ob{font-style: oblique;}
/* テキストカラー
--------------------------- */

.f_c1 {color: #004c33;}
.f_c2 {color: #fff;}
.f_c3 {color: #9fa0a0;}
.f_c4 {color: #C40D23;}
.f_c5 {color: #00417a;}
.op05{opacity: 0.2;}

.top_f1 {font-size: 2.0rem;line-height: 1.7em;letter-spacing: 0.1em;border-left: 4px solid #000;padding-left: 24px;padding-bottom: 1px;}
.top_f2 {font-size: 2.0rem;letter-spacing: 0.1em;line-height: 1.5em;font-weight: 600; border-left: 4px solid #000;padding-left: 16px;color: #000;padding-bottom: 3px;margin-top: 16px;padding-top: 2px;}
#blog p {font-size: 1.5rem;letter-spacing: 0.1em;line-height: 1.8em; clear: both; padding-bottom: 16px;}
#blog h6 {font-size: 1.8rem;letter-spacing: 0.1em;line-height: 1.8em;font-weight: 600; clear: both; padding-bottom: 16px; margin-top: 16px;color: #000;}
#blog h5 {font-size: 2rem;letter-spacing: 0.1em;line-height: 1.8em;font-weight: 600; clear: both; padding: 8px 16px; margin-top: 16px;background-color: rgba(181,145,50,0.1);color: #000;margin-bottom: 16px;}
#blog h4 {font-size: 2rem;letter-spacing: 0.1em;line-height: 1.8em;font-weight: 600; clear: both; border-left: 4px solid #000;padding-left: 16px;margin-bottom: 16px;color: #000;margin-top: 16px;}
#blog h3 {font-size: 2.2rem;letter-spacing: 0.1em;line-height: 1.8em;font-weight: 600; clear: both; border-left: 4px solid #000;padding-left: 16px;margin-bottom: 16px;color: #000;margin-top: 16px;}
#blog h2 {font-size: 2.4rem;letter-spacing: 0.1em;line-height: 1.8em;font-weight: 600; clear: both; border-left: 4px solid #000;padding-left: 16px;margin-bottom: 16px;color: #000;margin-top: 16px;}
#blog h1 {font-size: 2.4rem;letter-spacing: 0.1em;line-height: 1.8em;font-weight: 600; clear: both; padding: 16px 24px;margin-bottom: 24px;color: #fff;margin-top: 16px;background-color: rgba(181,145,50,0.9);}
#blog img{padding-top: 8px;padding-bottom: 8px;width: 100%;}
#blog strong,#blog p strong {font-weight: bold!important;}
#blog ul {list-style-type: disc; padding-bottom: 16px; clear: both;padding-left:1.5em;}
#blog ul li { padding-bottom: 8px;}
#blog ol {list-style-type: decimal; padding-left:2.5em;padding-bottom: 16px; clear: both;}
#blog ol li { padding-bottom: 8px;}
#blog ul.phot {width: 100%;letter-spacing: -0.4em;clear: both;}
#blog ul.phot li.in_b {  display: -moz-inline-box; /*for Firefox 2*/display: inline-block; /*for modern*/vertical-align: top;letter-spacing: normal; /* 文字間を通常に戻す */}
#blog blockquote{ padding: 16px 24px;;font-size: 1.4rem;letter-spacing: 0.1em;line-height: 1.8em; clear: both;background-color: rgba(239,239,239,0.5);margin-bottom: 16px;}
#blog blockquote p{ padding-bottom: 0px;}
#blog a, #blog a:link, #blog a:visited  {color: #B59032;text-decoration: none;text-decoration:underline;font-weight: 600;} 
#blog table {border: none;}
#blog table {width:100%;table-layout: inherit;white-space: inherit;-webkit-overflow-scrolling: touch;margin-bottom: 24px;}
#blog table th {background-color: #eeeeee;}
#blog table td {background-color: #ffffff;}
#blog table th, #blog table td {padding: 8px; border: 1px solid #ddd;}
#blog em {font-style: italic;}

#cat li:first-child {padding-top: 8px;}
#cat li {font-size: 1.4rem;line-height: 56px;letter-spacing: 0.05em;border-bottom: 1px dashed #3E3A39;}
#cat li:last-child {border-bottom: none;padding-bottom: 8px;}


/* テキストフォント
--------------------------- */
.f_f1 {font-family: "Vollkorn", serif;}
.f_f2 {font-family: "Noto Serif", serif;}
embed,iframe,object{max-width: 100%;}
br.sp { display: inline; }
br.pc { display: none; }

/* リンクカラー
--------------------------- */
a, a:link, a:visited  {color: #231815;text-decoration: none;} 
.w a, .w a:link, .w a:visited  {color: #ffffff;text-decoration: none;} 
.b a, .b a:link, .b a:visited  {color: #231815;text-decoration: underline;text-underline-offset: 4px;} 
.gr a, .gr a:link, .gr a:visited  {color: #182024;text-decoration: none;} 
.sl a, .sl a:link, .sl a:visited  {color: #000B3C;text-decoration: underline;text-underline-offset: 4px}
.l a, .l a:link, .l a:visited  {color: #DB9EB5;text-decoration: none;} 
.op a:hover, .op a:hover img, .op a:hover em, .op a:hover p {opacity: 0.6;filter: alpha(opacity=60);-webkit-transition: 0.4s ease-in-out;-moz-transition: 0.4s ease-in-out;-o-transition: 0.4s ease-in-out;transition: 0.4s ease-in-out;}
a:hover, a:hover img, a:hover em, a:hover p {opacity: 0.95;filter: alpha(opacity=95);-webkit-transition: 0.4s ease-in-out;-moz-transition: 0.4s ease-in-out;-o-transition: 0.4s ease-in-out;transition: 0.4s ease-in-out;}
.os a:hover img {opacity: 0.2;filter: alpha(opacity=20);}

.outer{display: table;width: 100%;height: 100%;text-align: center;}
.inner{display: table-cell;vertical-align: middle;text-align:center;}
.map_c{padding: 4px;box-sizing: border-box;}
.googlemaps iframe,
.googlemaps object,
.googlemaps embed {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}
#loader-bg {
  background-color: #fff;
  height: 100%;
  left: 0px;
  position: fixed;
  top: 0px;
  width: 100%;
  z-index: 1000;
}
#loader-bg .ldimg {
  left: 50%;
  position: fixed;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1001;
  max-width: 600px;
  width: 100%;
}
.p_box{width: 100%;height: 280px;overflow-y: scroll;padding: 8px;box-sizing: border-box;}
.table-area,.tb01 {width: 100%;margin: 0 auto;overflow-x: scroll;}
.tb01 table {border-collapse: collapse;margin: 0 auto;padding: 0;width: 100%;min-width: 900px; table-layout: fixed;}
.tb01 table tr { background-color: #fff;padding: .35em;border: 2px solid #B5B5B6;}
.bkg{background-color: #f0f8f1;}
.tb01 table th{padding:16px; border-right: 2px solid #B5B5B6;vertical-align:middle;}
.tb01 table td {padding:16px 24px;border-right: 2px solid #B5B5B6;vertical-align:middle;}
.tb01 table th {}
.tb01 table thead tr{background-color: #595757;color:#fff;}
.tb01 table tbody th {border-right: 2px solid #B5B5B6;}
.tb01 th.non {border-right: none;}
.tb01 .txt{text-align: left;font-size: .85em;}
.tb01 .price{color: #D3E6F6;}
.tb01 .price span {font-size: .6em;}
.tb01 .red_bk{background:#e81010}
.tb01 .red-txt{color:#e81010}
.tb01 .btn{background:#e81010;border: 2px solid #e81010;color:#fff;padding: 1em;border-radius:20px;display:block;text-decoration:none;font-size:.8em}
.tb01 .btn:hover{background: #fff;border: 2px solid #e81010;color: #e81010;transition: .2s;}
.tb01 table .btnarea td {padding: .2em .5em;border-right:none}
.pcn {display:none;}


.d_no {display: none;}
.d_no_m {display: block;}
.d_no_h{display: block;}

.fix_h {position: fixed;z-index: 990;top:0;transition: .3s;background-color: rgba(49,86,76,0);}
.fix_h1 {position: fixed;z-index: 800;top:0;background-color: rgba(255,255,255,0);}
.fix_f {position: fixed;z-index: 880;bottom:24px;right: 24px;width: 200px;transition: .3s;opacity: 0;}
.side_h {position: fixed;z-index: 880;bottom:50%;right: 32px;width: 20px;transform: translate(0%,50%);}

.fix_f audio {
    width: 200px; /* 全体の幅を制限 */
    max-width: 100%;
}
.is-show{top:0;background-color: rgba(49,86,76,1);}
.is-show2{opacity: 1;}


/* ライン
--------------------------- */
.line_b1 {border-bottom: 1px dashed #182024;}
.line_b2 {border-bottom: 1px dashed #fff;}
.line_b3 {border-bottom: 1px solid #182024;}
.line_b3x {border-bottom: 1px solid #182024;}
.line_o1 {border: 1px solid #000;border-radius: 40px;padding: 10px 8px 12px 8px;font-size: 1rem;letter-spacing: 0.02em;line-height: 1em;display: inline-block;margin: 0 2% 8px;width: 44%;}
.line_o2 {border: 1px solid #b3b3b3;}
.line_o3 {border: 0px solid #000;background-color: rgba(240,240,240,1);border-radius: 80px;padding: 12px 16px 14px 16px;font-size: 1.3rem;letter-spacing: 0.06em;line-height: 1em;display: inline-block;margin: 0 12px 12px 0;font-weight: 600;}
.line_l1 {border-left: 1px solid #000;}
.line_r1 {border-right: 1px solid #000;}

.line_t1 {border-top: 1px dashed #fff;}
.line_tb1 {border-top: 1px solid #182024;border-bottom: 1px solid #182024;}

.under_l a {position: relative; /*アンダーラインの位置を決めるための基準 */}
.h_ab{position: absolute;z-index: 100;top:0;}
.under_l a::after {
position: absolute;
left: 0;
content: '';
width: 100%;
height: 2px;
background: #fff;
bottom: -4px;               /*アンダーラインがaタグの下端から現れる*/
transform: scale(0, 1);     /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
transform-origin: left top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
transition: transform 0.3s; /*変形の時間*/
}

.under_l a:hover::after {transform: scale(1, 1);}

.auto_h{height: auto;}

ul.maru{list-style-type: "・"; clear: both;padding-left:1.6em;margin-left: 4px;}
ul.maru li{padding-bottom: 4px;}


/* 背景
--------------------------- */
.slider-main{padding-bottom: 8px;}
.slider-thumb {
    display: flex;
    justify-content: flex-start!important;  /* 均等に配置 */
}

.slider-thumb {
    display: flex;
    justify-content: space-between; /* 均等に配置 */
}
.slider-thumb .boxth {
    width: 25%; /* 4枚が綺麗に収まる横幅 */
    cursor: pointer;
}
.slider-thumb img {
    opacity: 1;
    transition: opacity 0.3s;
}

/* 現在表示中のサムネイルの見た目 */
.slider-thumb .boxth.slick-current img {
    opacity: 1;
    outline: 2px solid #31564c; /* 黒い枠線 */
}
.boxth{padding: 8px;box-sizing: border-box;}
.boximg {position: relative;width: 100%;}
.boximg::before {content: "";display: block;padding-top: 60%; /* 比率を指定 */}
.box__content {position: absolute;top: 0;right: 0;bottom: 0;left: 0;}
.box__content img {width: 100%;height: 100%; vertical-align: bottom;object-fit: cover;border-radius:0px;}

.boximg2 {position: relative;width: 100%;}
.boximg2::before {content: "";display: block;padding-top: 100%; /* 比率を指定 */}
.box__content2 {position: absolute;top: 0;right: 0;bottom: 0;left: 0;}
.box__content2 img {width: 100%;height: 100%; vertical-align: bottom;object-fit: cover;border-radius:0px;}

.boximg3 {position: relative;width: 100%;}
.boximg3::before {content: "";display: block;padding-top: 70.7%; /* 比率を指定 */}
.box__content3 {position: absolute;top: 0;right: 0;bottom: 0;left: 0;}
.box__content3 img {width: 100%;height: 100%; vertical-align: bottom;object-fit: cover;border-radius:0px;}

.font_b1 {border-bottom: 2px solid #de82ad;padding-top: 24px;margin: 0 auto;width: 56px;height: 2px;}
.font_b2 {border-bottom: 2px solid #3296d4;padding-top: 24px;margin: 0 auto;width: 56px;height: 2px;}
.font_b3 {border-bottom: 2px solid #de82ad;padding-top: 24px;width: 56px;height: 2px;}


.top_text{width:80%;max-width: 600px;padding: 0 64px;}
@media screen and (max-width: 1500px) {.top_text{width:100%;max-width: 600px;padding: 0 64px;}}
.sbbg1{background-position: center center;background-size:cover;background-image:url("img/s_haikei1.jpg");}
.sbbg2{background-position: center center;background-size:cover;background-image:url("img/s_haikei2.jpg");}
.sbbg3{background-position: center center;background-size:cover;background-image:url("img/s_haikei3.jpg");}
.sbbg4{background-position: center center;background-size:cover;background-image:url("img/s_haikei4.jpg");}
.sbbg5{background-position: center center;background-size:cover;background-image:url("img/s_haikei5.jpg");}
.sbbg6{background-position: center center;background-size:cover;background-image:url("img/s_haikei6.jpg");}

.bg1 {background-color: rgba(0,0,0,1)}
.bg2 {background-color: rgba(88,127,96,1);}
.bg3 {background-color: rgba(255,255,255,1);}
.bg4 {background-position: center center;background-size:cover;background-image:url("img/haikei1.svg");background-repeat: no-repeat;}
.bg5 {background-position: center center;background-size:cover;background-image:url("img/topimg03.jpg");height: 680px;}
.bg6 {background-color: rgba(49,86,76,1);}

.bg7 {background-position: center center;background-size:cover;background-image:url("img/ab_haikei1.svg");}
.bg8 {background-color: rgba(242,242,242,1);}
.bg9 {background-position: center center;background-size:cover;background-image:url("img/topimg02.jpg");}
.bg10 {background-position: center center;background-size:cover;background-image:url("img/topimg03x.jpg");}
.abbg1{background-position: center center;background-size:cover;background-image:url("img/ab_haikei3.jpg");}
.abbg2{width: 100%;max-width: 480px;margin: 0 auto;}

.wp-pagenavi {clear: both;text-align:center;}
.wp-pagenavi a, .wp-pagenavi span {color: #000;background-color: #FFF;border: solid 1px #000!important;padding: 4px 7px 6px 8px!important;margin: 0 4px;white-space: nowrap;-moz-border-radius: 8px;-webkit-border-radius: 8px;border-radius: 8px;text-align: center;text-decoration:none;}
.wp-pagenavi a:hover{color:#FFF;background-color:#000;border-color:#000!important;}
.wp-pagenavi span.current{color: #FFF;background-color: #000;border-color: #000;font-weight: bold;}

/* ロールオーバー
--------------------------- */
.c-btn.slide{display: inline-block;}
.c-btn.slide a{background: rgba(0,0,0,0);color: #fff;text-align: center;overflow: hidden;position: relative;z-index: 1;border-radius: 30px;padding: 4px 16px 3px 16px;letter-spacing: 0.1em;line-height: 2em;font-size: 1.4rem;border: 1px solid #fff;width:136px;display: block;}
.c-btn.slide a::after {
 background: rgba(0,0,0,1.0);
  position: absolute;
    top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}
.c-btn.slide a:hover {color: #fff;cursor: pointer;}
.c-btn.slide a:hover::after {transform: scale(1, 1);}

.c-btn2.slide2{display: inline-block;text-align: center;}
.c-btn2.slide2 a{background: rgba(49,86,76,0);color: #31564c;text-align: center;overflow: hidden;position: relative;z-index: 1;border-radius: 40px;padding: 8px 16px 5px 16px;letter-spacing: 0.1em;line-height: 2em;font-size: 1.4rem;border: 1px solid #31564c;width:160px;display: block;margin: 0 auto;}
.c-btn2.slide2 a::after {
 background: rgba(49,86,76,1.0);
  position: absolute;
    top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}
.c-btn2.slide2 a:hover {color: #fff;cursor: pointer;}
.c-btn2.slide2 a:hover::after {transform: scale(1, 1);}

.c-btn3.slide3{display: inline-block;text-align: left;}
.c-btn3.slide3 a{background: rgba(49,86,76,0);color: #31564c;text-align: center;overflow: hidden;position: relative;z-index: 1;border-radius: 40px;padding: 6px 16px 8px 16px;letter-spacing: 0.1em;line-height: 2em;font-size: 1.4rem;border: 1px solid #31564c;width:160px;display: block;margin: 0 auto;}
.c-btn3.slide3 a::after {
 background: rgba(49,86,76,1.0);
  position: absolute;
    top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}
.c-btn3.slide3 a:hover {color: #fff;cursor: pointer;}
.c-btn3.slide3 a:hover::after {transform: scale(1, 1);}

.c-btn4.slide4{display: inline-block;}
.c-btn4.slide4 a{background: rgba(49,86,76,0);color: #31564c;text-align: center;overflow: hidden;position: relative;z-index: 1;border-radius: 40px;padding: 6px 16px 8px 16px;letter-spacing: 0.1em;line-height: 2em;font-size: 1.2rem;border: 1px solid #31564c;width:160px;display: block;margin: 0 auto;}
.c-btn4.slide4 a::after {
 background: rgba(49,86,76,1.0);
  position: absolute;
    top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}
.c-btn4.slide4 a:hover {color: #fff;cursor: pointer;}
.c-btn4.slide4 a:hover::after {transform: scale(1, 1);}

.c-btn5.slide5{display: inline-block;}
.c-btn5.slide5 a{background: rgba(49,86,76,0);color: #31564c;text-align: center;overflow: hidden;position: relative;z-index: 1;border-radius: 40px;padding: 9px 24px 8px 24px;letter-spacing: 0.05em;line-height: 2em;font-size: 1.4rem;border: 1px solid #31564c;width:auto;display: block;margin: 0 auto;}
.c-btn5.slide5 a::after {
 background: rgba(49,86,76,1.0);
  position: absolute;
    top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}
.c-btn5.slide5 a:hover {color: #fff;cursor: pointer;}
.c-btn5.slide5 a:hover::after {transform: scale(1, 1);}

@media screen and (max-width: 1300px) {}
@media screen and (max-width: 840px) {
.congap {
  margin: 00px;
  width: 100%;
  column-count: 1;
  column-gap: 0;
}
.grid1 {
  padding: 16px 0;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
.side_h {display: none;}

.logo_title{padding: 24px 20% 24px 20%; position: absolute;z-index: 10;top:5%;width: 100%;}
  
.d_no {display: block;}
.d_no_m {display: none;}
br.sp { display: none; }
br.pc { display: inline;}
.box-parent{width:100%;height:auto;display:flex; justify-content:start;flex-wrap: nowrap;overflow-x: scroll;}
.box-child{margin: 0 16px;flex: 0 0 200px;display:flex;flex-direction:column;}
}
@media screen and (max-width: 600px) {
.mg_3{margin-top: -120px;}
.flex2 {flex-flow: wrap;}
.title2 {font-size: 2.2rem;}
.title3 {font-size: 2rem;letter-spacing: 0.08em;line-height: 1.8em;}
.gt_float_switcher {margin-right: 60px;}
.logo{width: 120px;}
.bg4 {background-position:top center;background-size:cover;background-image:url("img/haikei1m.svg");background-repeat: no-repeat;}
.fix_f {position: fixed;z-index: 880;bottom:10px;right: 10px;width: 200px;}
.boximg::before {content: "";display: block;padding-top: 100%; /* 比率を指定 */}

.ab-s1 {width:200px;}
.abu_t1{position: relative;top:-200px;z-index: 100;}

.parallax-box {height: 280px;clip-path: inset(0 round 0 0 80px 0)}
.parallax-box1 {height: 200px;clip-path: inset(0 round 0 0 0 80px);}
.parallax-ss {clip-path: inset(0 round 0 0 0px 0);height: 300px;}
.abbg2{width: 100%;max-width: 280px;margin: 0 auto;}  
.top_text{padding: 0 40px;}
.rel_t2{position: relative;width: 100%;height: auto;z-index: 20; margin-top: -60px;}
.pdt144{padding-top: 32px;}
.mg_1{margin-top: -40px;}
.line_l1 {border-left: 0px solid #000;}
.line_r1 {border-right: 0px solid #000;}
.full div.img01 {background-image:url("img/top01m.jpg");}
.full div.img02 {background-image:url("img/top02m.jpg");}
.font_s9 {font-size: 4.8rem;letter-spacing: 0.1em;line-height: 1.5em;}
.dr_f1{font-size: 2rem;letter-spacing: 0.08em;line-height: 1.8em;font-weight: 400;font-style: normal;}
.dr_f2{font-size: 1.6rem;letter-spacing: 0.08em;line-height: 1.8em; padding-bottom: 4px;font-weight: 400;font-style: normal;}
.bg5 {background-position: center center;background-size:cover;background-image:url("img/topimg03.jpg");height: 320px;} 
.parallax-s {height: 400px;}    
    
.ab_t1{width: 35%;z-index: 1;}
.ab_t2{width: 40%;z-index: 2;top:20%;;left: 15%;transform: translate(-0%, -0%);-webkit-transform: translate(-0%, -0%);-ms-transform: translate(-0%, -0%);}
.sco{left: 50%;}

#top {height: 100vh;height: calc(var(--vh, 1vh) * 100);position: relative;}
.full div {height: 100vh;height: calc(var(--vh, 1vh) * 100);}
}