@charset "UTF-8";
/* DLIGHT */
.dm{}

:root {
  --font-en-ebg: "EB Garamond", serif;
  --font-color-base: #20282c;
  --font-color-catch: #A17244;
  --color-yel: #B4AF73;
  --color-bg-base: #EDE1D3;
  --fs10: calc(10 / 16 * 1rem);
  --fs11: calc(11 / 16 * 1rem);
  --fs12: calc(12 / 16 * 1rem);
  --fs13: calc(13 / 16 * 1rem);
  --fs14: calc(14 / 16 * 1rem);
  --fs15: calc(15 / 16 * 1rem);
  --fs16: calc(16 / 16 * 1rem);
  --fs18: calc(18 / 16 * 1rem);
  --fs20: calc(20 / 16 * 1rem);
  --fs21: calc(21 / 16 * 1rem);
  --fs24: calc(24 / 16 * 1rem);
  --fs25: calc(25 / 16 * 1rem);
  --fs30: calc(30 / 16 * 1rem);
  --fs36: calc(36 / 16 * 1rem);
}

body {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal;
  font-size: var(--fs15);
  letter-spacing: 0.01em;
  color: var(--font-color-base);
}

h1,h2,h3,h4,h5,h6,p,ul,li,
figure {
  margin: 0;
  padding: 0;
}
a {
  color: var(--font-color-base);
  text-decoration: none;
  transition: all .8s;
}
a:hover {
  opacity: .7;
}

img {
  width: 100%;
  height: auto;
  vertical-align:top;
}
img[src$=".svg"] {
  filter: blur(0px);
  transform: rotate(0.0001deg)
}

ul,li {
  list-style: none;
}

.ff-aveni-bold {
  font-family: var(--font-en-aveni-bold);
}
.ff-aveni-demi {
  font-family: var(--font-en-aveni-demi);
}
.ff-aveni-medi {
  font-family: var(--font-en-aveni-medi);
}

.visuallyhidden {
  position:absolute;
  clip:rect(1px, 1px, 1px, 1px);
  -webkit-clip-path:inset(0px 0px 99.9% 99.9%);
  clip-path:inset(0px 0px 99.9% 99.9%);
  overflow:hidden;
  height:1px;
  width:1px;
  padding:0;
  border:0
}


@media ( max-width: 768px ) {
  
  /* SITE COMMON */
  /* ============================== */
  #wrapper {
    min-width: 320px;
    overflow: hidden;
  }
  #wrapper > main {
    position: relative;
    z-index: 1;
  }
  #pageArtic {
    margin: 0 auto 80px;
  }
  
  .brPc {
    display:  none;
  }
  .brSp {
    display: block;
    font-size: 1px;
  }
  .view-pc {
    display: none;
  }
  .view-sp {
    display: block;
  }

  .ani-fadeup {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: opacity 1s,visibility 1s, transform 1s;
  }
  .ani-fadeup.is-show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
  }

  .parallax-img {
    --parallax-y: -50;
  }


  /* SITE HEADER */
  /* ============================== */
  #site-header {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    width: 100%;
    height: 48px;
    justify-content: space-between;
    align-items: center;
    padding: 0 15px;
    z-index: 5;
    transition: all .8s ease-in-out;
  }
  body.scrollOn #site-header {
    background-color: #4b4b4b99;
  }
  .sh--logo {
    width: 80px;
    opacity: 0;
  }
  .sh--nav {
    display: flex;
    align-items: center;
  }
  .sh--nav-rev {
    font-family: var(--font-en-ebg);
    font-size: var(--fs16);
    
    margin-top: -6px;
  }
  .sh--nav-rev a {
    position: relative;
    display: block;
    line-height: 1;
    color: #FFF;
  }
  .sh--nav-rev a::after {
    display: block;
    content: '';
    position: absolute;
    left: -3%;
    bottom: -4px;
    width: 106%;
    height: 1px;
    background-color: #FFF;
  }
  .sh--nav-insta {
    width: 28px;
    margin-left: 20px;
  }
  
  
  /* SITE TEXT */
  /* ============================== */
  .sc-tt-en {
    font-family: BaskervilleMTPro-Regular, serif;
    font-size: 30px;
    font-weight: normal;
    font-style: normal;
    letter-spacing: 0.05em;
    text-indent: 0.05em;
    margin: 0;
  }
  
  .topBack {
    position: relative;
    width: 200px;
    margin: auto;
  }
  .topBack::before {
    position: absolute;
    top: 0;
    left: -33px;
    bottom: 0;
    margin: auto;
    content: '';
    width: 64px;
    height: 1px;
    background: #3e3a39;
    transition: all 0.4s;
    z-index: 5;
  }
  .topBack::after {
    position: absolute;
    top: 0;
    left: -30px;
    bottom: 1px;
    margin: auto;
    content: '';
    width: 10px;
    height: 10px;
    border-top: 1px solid #3e3a39;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: all 0.4s;
    z-index: 5;
  }
  .topBack a {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    color: #ECDBDB;
    letter-spacing: 0.2em;
    text-indent: 0.2em;
    background-color: var(--font-color-catch);
    padding: 10px 0;
  }
  .topBack a::before {
    content: '';
    display: block;
    border: 1px solid #FFF;
    width: calc(100% - 9px);
    height: calc(100% - 9px);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }


  /* SITE FOOTER */
  /* ============================== */
  #site-footer {
    position: relative;
    padding: 50px 0 0;
    z-index: 2;
  }
  
  .sf--ph {
    display: flex;
    margin: 0 auto 50px;
  }
  .sf--ph > div {
    flex: 1;
  }
  
  .sf--information {
    font-size: var(--fs14);
    width: 86.7%;
    margin: 0 auto 30px;
  }
  
  .sf--info-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    margin: 0 auto 30px;
  }
  
  .sf--info-acc {
    margin-bottom: 20px;
  }
  .sf--info-acc > p {
    line-height: 1;
  }
  .sf--info-acc > p + p {
    margin-top: 8px;
  }
  .sf--info-acc-add {
    line-height: 1.6 !important;
  }
  .sf--info-acc-map a {
    display: flex;
    align-items: center;
  }
  .sf--info-acc-map a::after {
    font-family: 'Material Icons';
    font-size: var(--fs21);
    content: '\e55f';
    display: inline-block;
  }
  .sf--info-acc-map span {
    border-bottom: 1px solid var(--font-color-base);
  }
  
  .sf--guide table {
    border-collapse: collapse;
  }
  .sf--guide th,
  .sf--guide td {
    display: block;
    width: 100%;
    text-align: left;
    line-height: 1;
    padding-bottom: 5px;
  }
  .sf--guide th {
    font-weight: normal;
    white-space: nowrap;
  }
  .sf--guide td {
    padding: 0 0 1em 1em;
  }
  
  
  /* COPYRIGHT */
  .sf--copyright {
    padding: 20px 0;
  }
  .sf--copyright-txt {
    font-size: 10px;
    text-align: center;
  }
  
  
  /* GROUP LINK
   * ----------------------------------------------- */
  #groupFooterWrap {
    margin: 0 auto 20px;
  }
  #groupFooterWrap .dlightLogo {
    width: 120px;
    text-align: center;
    margin: 0 auto 20px;
  }
  #groupFooterWrap .dlightLogo img {
    width: 160px;
    height: auto;
  }
  #footerWrap {
    background-color: #724D4F;
    padding-bottom: calc( env(safe-area-inset-bottom) + 60px );
  }
  body.home #footerWrap {
    padding-bottom: calc( env(safe-area-inset-bottom) + 78px );
  }

  .accordionbox{
    width: 90%;
    background: #ffffff;
    margin: auto;
    padding: 5px;
  }
  .accordionlist dt {
      display:block;
      background: #535353;
      padding: 10px 0 10px 5px;
      border-top: 1px solid #DFDFDF;
      color: #FFF;
  }
  .accordionlist dt::after {
    display: block;
    content: '';
    clear: both;
  }
  .accordionlist dt:first-child{
      border-top: none !important;
  }
  .accordionlist dt .title{
      padding-left: 10px;
      float: left;
      line-height: 1;
  }
  .accordionlist dd{
      display:none;
      background: #757575;
      padding: 0 15px 20px 15px;
  }
  .accordion_icon,
  .accordion_icon span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  .accordion_icon {
    position: relative;
    width: 30px;
    float: right;
    margin-top: 2px;
    margin-right: 5px;
  }
  .accordion_icon span {
    position: absolute;
    left: 6px;
    width: 50%;
    height: 2px;
    background-color: #ffffff;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -ms-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
  }
  .accordion_icon span:nth-of-type(1) {
      top: 5px;
    transform: rotate(0deg);
      -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
      -o-transform: rotate(0deg);
  }
  .accordion_icon span:nth-of-type(2) {
      top: 5px;
    transform: rotate(90deg);
      -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
      -o-transform: rotate(90deg);
  }
  /*＋、×切り替え*/
  .accordion_icon.active span:nth-of-type(1) {
    top: 5px;
      transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
      -o-transform: rotate(45deg);
  }
  .accordion_icon.active span:nth-of-type(2) {
    top: 5px;
      transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
      -o-transform: rotate(135deg);
  }

  #groupLinkWrap {
    max-width: 320px;
    background-color: #efefef;
    margin-bottom: 30px;
  }
  #groupLinkWrap > dl {
    margin: 0;
  }
  #groupLink {
    margin: auto;
    text-align: left;
    font-size: 1.1rem;
    color: aliceblue;
  }
  #groupLink a {
    color:rgba(245,245,245,1.00);
    text-decoration:none;
    display: block;
    padding: 3px;
  }
  #groupLink a:hover {
    color:rgb(185, 176, 157);
  }
  #groupLink > ul {
    /* margin-left:15px; */
  }
  #groupLink > ul > li {
    margin: 0 0 15px 0;
  }

  #groupLink h1 {
    margin-bottom: 5px;
    font-size: 14px;
  }
  #groupLink h2 {
    font-size: 13px;
    font-weight: normal;
    clear: both;
    line-height: 1.5;
  }
  #groupLink > ul li h2:first-child {
    clear: none;
  }
  #groupLink > ul li > ul li {
    font-size: 13px;
    white-space: nowrap;
    line-height: 1.5;
    margin-bottom: 6px;
    border-bottom: 1px solid #949d93;
  }
  #groupLink #glClose {
    text-align: center;
    font-size: 12px;
  }
  
}
  
@media ( min-width: 769px ) {
  
  /* SITE COMMON */
  /* ============================== */
  #wrapper {
    min-width: 769px;
    overflow: hidden;
  }
  #wrapper > main {
    position: relative;
    padding: 0 0 140px;
    z-index: 1;
  }
  #pageArtic {
    margin: 0 auto 120px;
  }
  body#index #pageArtic {
    margin: 0;
  }

  .brPc {
    display: block;
    font-size: 1px;
  }
  .brSp {
    display: none;
  }
  .view-pc {
    display: block;
  }
  .view-sp {
    display: none;
  }

  .ani-fadeup {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: opacity 1s,visibility 1s, transform 1s;
  }
  .ani-fadeup.is-show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
  }
  
  .parallax-img {
    --parallax-y: -100;
  }
  
  /* SITE HEADER */
  /* ============================== */
  #site-header {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    width: 100%;
    height: 64px;
    justify-content: space-between;
    align-items: center;
    padding: 0 30px;
    z-index: 5;
    transition: all .8s ease-in-out;
  }
  body.scrollOn #site-header {
    background-color: #4b4b4b99;
  }
  .sh--logo {
    width: 100px;
    opacity: 0;
  }
  .sh--nav {
    display: flex;
    align-items: center;
  }
  .sh--nav-rev {
    font-family: var(--font-en-ebg);
    font-size: var(--fs21);
    
    margin-top: -6px;
  }
  .sh--nav-rev a {
    position: relative;
    display: block;
    line-height: 1;
    color: #FFF;
  }
  .sh--nav-rev a::after {
    display: block;
    content: '';
    position: absolute;
    left: -3%;
    bottom: -4px;
    width: 106%;
    height: 1px;
    background-color: #FFF;
  }
  .sh--nav-insta {
    width: 32px;
    margin-left: 30px;
  }


  /* SITE TEXT */
  /* ============================== */
  .sc-tt-en {
    font-family: BaskervilleMTPro-Regular, serif;
    font-size: 45px;
    font-weight: normal;
    font-style: normal;
    letter-spacing: 0.05em;
    margin: 0;
  }
  
  .topBack {
    position: relative;
    width: 320px;
    margin: auto;
  }
  .topBack::before {
    position: absolute;
    top: 0;
    left: -42px;
    bottom: 0;
    margin: auto;
    content: '';
    width: 83px;
    height: 1px;
    background: #3e3a39;
    transition: all 0.4s;
    z-index: 5;
  }
  .topBack::after {
    position: absolute;
    top: 0;
    left: -39px;
    bottom: 1px;
    margin: auto;
    content: '';
    width: 10px;
    height: 10px;
    border-top: 1px solid #3e3a39;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: all 0.4s;
    z-index: 5;
  }
  .topBack:hover::before {
    left: -57px;
  }
  .topBack:hover::after {
    left: -54px;
  }
  .topBack a {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    color: #ECDBDB;
    letter-spacing: 0.5em;
    text-indent: 0.5em;
    background-color: var(--font-color-catch);
    padding: 10px 0;
  }
  .topBack a::before {
    content: '';
    display: block;
    border: 1px solid #FFF;
    width: calc(100% - 9px);
    height: calc(100% - 9px);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }


  /* SITE FOOTER */
  /* ============================== */
  #site-footer {
    position: relative;
    z-index: 2;
  }
  
  .sf--ph {
    display: flex;
    margin: 0 auto 72px;
  }
  .sf--ph > div {
    flex: 1;
  }
  
  .sf--information {
    display: flex;
    justify-content: center;
    font-size: var(--fs14);
    margin: 0 auto 50px;
  }
  .sf--info-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 120px;
  }
  .sf--info-acc {
    margin-left: 76px;
  }
  .sf--info-acc > p {
    line-height: 1;
  } 
  .sf--info-acc > p + p {
    margin-top: 8px;
  }
  .sf--info-acc-add {
    line-height: 1.6 !important;
  }
  .sf--info-acc-map a {
    display: flex;
    align-items: center;
  }
  .sf--info-acc-map a::after {
    font-family: 'Material Icons';
    font-size: var(--fs21);
    content: '\e55f';
    display: inline-block;
  }
  .sf--info-acc-map span {
    border-bottom: 1px solid var(--font-color-base);
  }
  .sf--guide {
    margin-left: 64px;
  }
  .sf--guide table {
    border-collapse: collapse;
  }
  .sf--guide th,
  .sf--guide td {
    text-align: left;
    line-height: 1;
    padding-bottom: 10px;
  }
  .sf--guide th {
    text-align-last: justify;
    font-weight: normal;
  }
  
  
  /* COPYRIGHT */
  .sf--copyright {
    padding: 30px 0;
  }
  .sf--copyright-txt {
    font-size: var(--fs12);
    text-align: center;
  }
  
  #sf--dbar {
    padding: 20px 0;
    text-align: center;
  }
  #sf--dbar li {
    display: -moz-inline-box;
    display: inline-block;
   *display: inline;
   *zoom: 1;
    font-size: var(--fs14);
  }
  #sf--dbar li a {
    color: #2C2C2C;
    padding: 0 10px;
    text-decoration: none;
  }
  #sf--dbar li a:hover {
    color: #E8E8E8;
  }
  #sf--dbar li:first-child::before,
  #sf--dbar li::after {
    content:"  ／  ";
    color: #2C2C2C;
    font-size: 14px;
    line-height: 1;
  }
  
  /* GROUP LINK
   * ----------------------------------------------- */
  #groupFooterWrap {
    position: relative;
    margin: 0 auto 30px;
    padding-top: 30px;
    display: flex;
    justify-content: center;
  }
  #groupFooterWrap .dlightLogo {
    width: 120px;
    margin: 0 auto 0 60px;
  }
  #groupFooterWrap .dlightLogo img {
    width: 120px;
  }

  #groupLinkWrap {
    margin: 0 0 0 auto;
  }
  #groupLink {
    display: inline-block;
    margin: auto;
    color: #2C2C2C;
    text-align: left;
  }
  #groupLink a {
    color: #363636;
    text-decoration: none;
  }
  #groupLink a:hover {
    color: #666;
  }
  #groupLink > ul {
    display: flex;
    justify-content: space-around;
  }
  #groupLink > ul > li {
    margin-right: 50px;
  }
  #groupLink > ul > li:last-child {
    margin-right: 0px;
  }
  #groupLink h1 {
    margin-bottom: 8px;
    font-weight: bold;
    font-size: var(--fs14);
  }
  #groupLink h2 {
    font-size: var(--fs13);
    font-weight: bold;
    clear: both;
    line-height: 1.5;
  }
  #groupLink > ul > li h2:first-child {
    clear: none;
  }
  #groupLink > ul > li > ul {
    font-size: var(--fs12);
  }
  #groupLink > ul > li > ul + h1 {
    margin-top: 30px;
  }
  #groupLink > ul > li > ul li {
    white-space: nowrap;
    line-height: 1.5;
    margin-left: 5px;
    margin-bottom: 6px;
  }

}

