@charset "utf-8";




@media screen and (max-width: 768px) {
  html, body, div, span, applet, object, iframe,
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  a, abbr, acronym, address, big, cite, code,
  del, dfn, em, img, ins, kbd, q, s, samp,
  small, strike, strong, sub, sup, tt, var,
  b, u, i, center,
  dl, dt, dd, ol, ul, li,
  fieldset, form, label, legend,
  table, caption, tbody, tfoot, thead, tr, th, td,
  article, aside, canvas, details, embed, 
  figure, figcaption, footer, header, hgroup, 
  menu, nav, output, ruby, section, summary,
  time, mark, audio, video {
    margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; box-sizing: border-box;
  }
  article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
  body { line-height: 1; }
  ol, ul { list-style: none; }
  blockquote, q { quotes: none; }
  table { border-collapse: collapse; border-spacing: 0; }
  img { border: none; vertical-align: bottom; max-width: 100%; height: auto; }
  *::before, *::after { box-sizing: border-box; }

  .cf { zoom: 1; }
  .cf:before, .cf:after { content: ""; display: table; }
  .cf:after { clear: both; }
  .clear { clear: both; }

  .flex { display: flex; }
  .flexTate { display: flex; flex-direction: column; }
  .order1 { order: 1; }
  .order2 { order: 2; }
  .order3 { order: 3; }
  .order4 { order: 4; }
  .order5 { order: 5; }

  .brSp { display: block; }
  .brPc { display: none; }

  html, body { width: 100%; height: 100%; position: relative; min-height: 100%; }
  html { font-size: 62.5%; }
  body {
    font-size: 1.6rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    color: #231815; line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }

  .ffMin { font-family: "游明朝体", "Yu Mincho", YuMincho, serif; font-weight: 500; }

  a { color: #980c1d; }
  a:visited { color: #980c1d; }
  a:hover, a:focus, a:active { color: #65353b; }

  #headerWrap { background-color: #6C5D49; }
  #headerWrap >.inner { height: 48px; margin: auto; padding: 5px 15px 0 15px; position: relative; }
  #headerWrap h1 { font-size: 1.8rem; font-weight: bold; line-height: 1; letter-spacing: 0.2rem; padding-top: 10px; }
  #headerWrap h1 a { color: #FFF; text-decoration: none; }

  .menu-btn { position: absolute; top: 8px; right: 17px; z-index: 9001; display: inline-flex; align-items: center; justify-content: center; }
  .menu-btn a { display: block; position: relative; width: 32px; height: 32px; text-decoration: none; }
  .menu-btn a::before,
  .menu-btn a::after {
    content: ""; display: block; position: absolute; left: 3px; width: 26px; height: 1.5px;
    background-color: #fff; border-radius: 1px;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), top 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .menu-btn a::before { top: 11px; }
  .menu-btn a::after { top: 20px; }
  .menu-btn a.btn-close::before { top: 15px; transform: rotate(45deg); }
  .menu-btn a.btn-close::after { top: 15px; transform: rotate(-45deg); }

  .overlay {
    position: fixed; top: 0; left: 0; z-index: 9000; display: none;
    width: 100%; height: 100%; background: #333;
    overflow-y: auto; -webkit-overflow-scrolling: touch;
    box-sizing: border-box; padding: 70px 20px 50px;
  }
  .overlay nav {
    min-height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center;
    margin: auto 0; box-sizing: border-box;
  }

  .overlay .conMenu li {
    margin: 0 8px; font-family: 'Catamaran', sans-serif; font-weight: 400; font-size: 1.6rem;
    letter-spacing: 0.1rem; line-height: 4.6rem; color: #FFF;
  }
  .overlay .conMenu li a { line-height: 1; color: #FFF; position: relative; text-decoration: none; }
  .overlay .conMenu li ul.sub li::before { content:'｜'; color: #FFF; }

  #wrapper { min-width: 320px; min-height: 100%; position: relative; overflow: hidden; }
  #mainWrap { margin: auto; padding: 0 0 50px; text-align: center; }

  .sec-tt { text-align: center; margin-bottom: 30px; line-height: 1; }
  .sec-tt span { display: block; }
  .sec-tt-en { font-family: "MinionPro-Semibold"; font-size: 2.4rem; letter-spacing: 0.2em; color: #867968; margin-bottom: 8px; }
  .sec-tt-ja { font-size: 1.4rem; letter-spacing: 0.275em; }

  .btn { display: inline-block; font-size: 1.4rem; line-height: 1; border: 1px solid #6C5D49; }
  .btn a { padding: 8px 15px; display: block; background-color: #FFF; text-decoration: none; transition: all .5s; }
  .btn a:hover { background-color: #6c5d49; color: #FFF; }

  #footerWrap { text-align: center; width: 100%; position: relative; }
  #footerWrap >.inner { margin: auto; background-color: #6C5D49; }

  #footerBar { padding:10px 0; }
  #footerBar li { display: inline-block; font-size: 1.4rem; }
  #footerBar li a { color:#FFFFFF; padding:0 10px; text-decoration:none; }
  #footerBar li:first-child::before, #footerBar li::after { content:"  ／  "; color:#FFF; font-size:14px; line-height: 1; }

  
  .accordionbox {
    width: 90%;
    background: #f5f5f5;
    margin: 10px auto 20px;
    padding: 5px;
  }
  .accordionlist dt {
    display: block;
    background: #896D41;
    padding: 10px 0 10px 5px;
    border-top: 1px solid #DFDFDF;
    color: #FFF;
    cursor: pointer;
  }
  .accordionlist dt:first-child {
    border-top: none !important;
  }
  .accordionlist dt .title {
    padding-left: 10px;
    float: left;
    line-height: 1;
  }
  .accordionlist dd {
    display: none;
    background: #896D41;
    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;
  }
  .accordion_icon span:nth-of-type(1) {
    top: 5px;
    transform: rotate(0deg);
  }
  .accordion_icon span:nth-of-type(2) {
    top: 5px;
    transform: rotate(90deg);
  }
  
  .accordion_icon.active span:nth-of-type(1) {
    top: 5px;
    transform: rotate(45deg);
  }
  .accordion_icon.active span:nth-of-type(2) {
    top: 5px;
    transform: rotate(135deg);
  }

  #groupLinkWrap {
    background-color: #D1BFA1;
  }
  #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 > li {
    margin: 0 0 15px 0;
  }
  #groupLink h1 {
    margin-bottom: 5px;
    font-size: 1.3rem;
  }
  #groupLink h2 {
    font-size: 1.2rem;
    font-weight: normal;
    clear: both;
    line-height: 1.5;
  }
  #groupLink > ul li h2:first-child {
    clear: none;
  }
  #groupLink > ul li > ul li {
    white-space: nowrap;
    line-height: 1.5;
    margin-bottom: 6px;
    border-bottom: 1px solid #b3ada2;
  }
  #groupLink #glClose {
    text-align: center;
    font-size: 1.2rem;
    margin-top: 15px;
    cursor: pointer;
  }
  #footerWrap #footerCopy { font-size: 1rem; font-family: 'Catamaran', sans-serif; font-weight: 400; padding-bottom: 15px; color: #FFF; }
}


@media screen and (min-width: 769px) {
  html, body, div, span, applet, object, iframe,
  h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  a, abbr, acronym, address, big, cite, code,
  del, dfn, em, img, ins, kbd, q, s, sample,
  small, strike, strong, sub, sup, tt, var,
  b, u, i, center,
  dl, dt, dd, ol, ul, li,
  fieldset, form, label, legend,
  table, caption, tbody, tfoot, thead, tr, th, td,
  article, aside, canvas, details, embed, 
  figure, figcaption, footer, header, hgroup, 
  menu, nav, output, ruby, section, summary,
  time, mark, audio, video {
    margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; box-sizing: border-box;
  }
  article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
  body { line-height: 1; }
  ol, ul { list-style: none; }
  img { border: none; vertical-align: bottom; max-width: 100%; height: auto; }
  *::before, *::after { box-sizing: border-box; }

  .cf { zoom: 1; }
  .cf:before, .cf:after { content: ""; display: table; }
  .cf:after { clear: both; }
  .clear { clear: both; }

  .flex { display: flex; }
  .flexTate { display: flex; flex-direction: column; }
  .brSp { display: none; }
  .brPc { display: block; }

  html, body { width: 100%; height: 100%; position: relative; min-height: 100%; }
  html { font-size: 62.5%; }
  body {
    font-size: 1.6rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    color: #231815; line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }

  a { color: #371500; }
  a:visited { color: #371500; }
  a:hover, a:focus, a:active { color: #65353b; }

  #headerWrap { position: fixed; width: 100%; height:76px; top:0; left: 0; z-index: 5010; background-color: #6C5D49; }
  #headerWrap >.inner { min-width: 1170px; height: 76px; margin: auto; padding: 30px 70px 0 45px; position: relative; }
  #headerWrap h1 { font-size: 1.8rem; font-weight: bold; line-height: 1; letter-spacing: 0.2rem; }
  #headerWrap h1 a { color: #FFF; text-decoration: none; }

  .menu-btn { position: absolute; top: 20px; right: 25px; z-index: 9001; display: inline-flex; align-items: center; justify-content: center; }
  .menu-btn a { display: block; position: relative; width: 36px; height: 36px; text-decoration: none; }
  .menu-btn a::before,
  .menu-btn a::after {
    content: ""; display: block; position: absolute; left: 4px; width: 28px; height: 2px;
    background-color: #fff; border-radius: 1px;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), top 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .menu-btn a::before { top: 12px; }
  .menu-btn a::after { top: 22px; }
  .menu-btn a.btn-close::before { top: 17px; transform: rotate(45deg); }
  .menu-btn a.btn-close::after { top: 17px; transform: rotate(-45deg); }

  .overlay {
    position: fixed; top: 0; left: 0; z-index: 9000; display: none;
    width: 100%; height: 100%; background: #333;
    overflow-y: auto; -webkit-overflow-scrolling: touch;
    box-sizing: border-box; padding: 100px 30px 60px;
  }
  .overlay nav {
    min-height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center;
    margin: auto 0; box-sizing: border-box;
  }

  .overlay .conMenu li { margin: 0 8px; font-family: 'Gothic A1', sans-serif; font-weight: 400; font-size: 1.4rem; letter-spacing: 0.6rem; padding: 8px 0; color: #FFF; }
  .overlay .conMenu li ul.sub li::before { content:'｜'; }
  .overlay .conMenu li a { line-height: 1; color: #FFF; position: relative; text-decoration: none; }

  #wrapper { min-width: 1200px; min-height: 100%; position: relative; background-image: url(/assets/images/wrapper_bg.jpg); background-position: center; }
  #mainWrap { min-width: 1200px; margin: auto; padding: 76px 0 550px; text-align: center; z-index: 1; }

  .sec-tt { text-align: center; margin-bottom: 50px; line-height: 1; }
  .sec-tt span { display: block; }
  .sec-tt-en { font-family: "MinionPro-Semibold"; font-size: 3.5rem; letter-spacing: 0.15em; color: #867968; margin-bottom: 8px; }
  .sec-tt-ja { font-size: 1.7rem; letter-spacing: 0.275em; }

  .btn { display: inline-block; font-size: 1.4rem; line-height: 1; border: 1px solid #6C5D49; }
  .btn a { padding: 8px 15px; display: block; background-color: #FFF; text-decoration: none; transition: all .5s; }
  .btn a:hover { background-color: #6c5d49; color: #FFF; }

  #sideNav.revBtn { position: fixed; top: 150px; right: 0; margin: auto; z-index: 1500; writing-mode: vertical-rl; text-orientation: upright; }
  #sideNav.revBtn a { display: block; padding: 24px; text-decoration: none; color: #FFF; background-color: #000; transition: all .5s; }

  #footerWrap { text-align: center; bottom: 0; position: absolute; width: 100%; background-color: #6C5D49; }
  #footerWrap >.inner { width: 1170px; margin: auto; }
  #footerBar { padding: 10px 0; }
  #footerBar li { display: inline-block; font-size: 1.4rem; }
  #footerBar li a { color: #FFFFFF; padding: 0 10px; text-decoration: none; }
  #footerBar li:first-child::before, #footerBar li::after { content: "  ／  "; color: #fff; font-size: 14px; line-height: 1; }

  #groupLinkWrap { padding: 30px 0; width: 100%; }
  #groupLinkWrap dt,
  #groupLinkWrap #glClose {
    display: none;
  }
  #groupLink { width: 1200px; margin: auto; text-align: left; font-size: 10px; color: aliceblue; display: block !important; }
  #groupLink a { color: rgb(239, 239, 239); text-decoration: none; }
  #groupLink a:hover { color: rgb(218, 205, 188); }
  #groupLink > ul { display: flex; justify-content: space-between; }
  #groupLink h1 { margin-bottom: 8px; font-size: 1.4rem; font-family: serif; }
  #groupLink h2 { font-size: 1.1rem; font-weight: normal; clear: both; line-height: 1.5; }
  #groupLink > ul li > ul li { white-space: nowrap; line-height: 1.5; margin-bottom: 6px; }
  #footerWrap #footerCopy { font-size: 1rem; font-weight: 400; letter-spacing: 0.2rem; color: #FFF; padding: 10px 0; }
}
