@charset "UTF-8";
/*
* base
*/
.contents-inner, .kodawari-wrapper, .menulist-wrapper, .service {
  zoom: 1; }
  .contents-inner:before, .kodawari-wrapper:before, .menulist-wrapper:before, .service:before, .contents-inner:after, .kodawari-wrapper:after, .menulist-wrapper:after, .service:after {
    content: "";
    display: block; }
  .contents-inner:after, .kodawari-wrapper:after, .menulist-wrapper:after, .service:after {
    clear: both; }

body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  line-height: 1;
  word-break: break-all; }

div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, textarea {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 100%;
  font-weight: normal;
  font-style: normal;
  vertical-align: baseline;
  background: transparent; }

article, aside, details, figcaption, figure, footer, header, menu, nav, section, div, address, iframe, canvas, hr, textarea {
  display: block;
  line-height: 1; }

iframe {
  max-width: 100% !important; }

a, label {
  cursor: pointer; }

blockquote {
  padding: 0;
  margin: 0;
  display: block; }

address, em {
  font-style: normal; }

hr {
  border: 0;
  margin: 0;
  padding: 0; }

ul, ol, li {
  list-style: none; }

textarea {
  resize: vertical;
  overflow: hidden;
  -webkit-appearance: none;
  border: none; }

input, button, select {
  vertical-align: middle;
  border-radius: 0px;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-appearance: none; }

table {
  border-collapse: collapse; }

*:before,
*:after {
  padding: 0;
  margin: 0;
  line-height: 1; }

.u-mt0 {
  margin-top: 0px !important; }

.u-mr0 {
  margin-right: 0px !important; }

.u-mb0 {
  margin-bottom: 0px !important; }

.u-ml0 {
  margin-left: 0px !important; }

.u-pt0 {
  padding-top: 0px !important; }

.u-pr0 {
  padding-right: 0px !important; }

.u-pb0 {
  padding-bottom: 0px !important; }

.u-pl0 {
  padding-left: 0px !important; }

.u-mt5 {
  margin-top: 5px !important; }

.u-mr5 {
  margin-right: 5px !important; }

.u-mb5 {
  margin-bottom: 5px !important; }

.u-ml5 {
  margin-left: 5px !important; }

.u-pt5 {
  padding-top: 5px !important; }

.u-pr5 {
  padding-right: 5px !important; }

.u-pb5 {
  padding-bottom: 5px !important; }

.u-pl5 {
  padding-left: 5px !important; }

.u-mt10 {
  margin-top: 10px !important; }

.u-mr10 {
  margin-right: 10px !important; }

.u-mb10 {
  margin-bottom: 10px !important; }

.u-ml10 {
  margin-left: 10px !important; }

.u-pt10 {
  padding-top: 10px !important; }

.u-pr10 {
  padding-right: 10px !important; }

.u-pb10 {
  padding-bottom: 10px !important; }

.u-pl10 {
  padding-left: 10px !important; }

.u-mt15 {
  margin-top: 15px !important; }

.u-mr15 {
  margin-right: 15px !important; }

.u-mb15 {
  margin-bottom: 15px !important; }

.u-ml15 {
  margin-left: 15px !important; }

.u-pt15 {
  padding-top: 15px !important; }

.u-pr15 {
  padding-right: 15px !important; }

.u-pb15 {
  padding-bottom: 15px !important; }

.u-pl15 {
  padding-left: 15px !important; }

.u-mt20 {
  margin-top: 20px !important; }

.u-mr20 {
  margin-right: 20px !important; }

.u-mb20 {
  margin-bottom: 20px !important; }

.u-ml20 {
  margin-left: 20px !important; }

.u-pt20 {
  padding-top: 20px !important; }

.u-pr20 {
  padding-right: 20px !important; }

.u-pb20 {
  padding-bottom: 20px !important; }

.u-pl20 {
  padding-left: 20px !important; }

.u-mt25 {
  margin-top: 25px !important; }

.u-mr25 {
  margin-right: 25px !important; }

.u-mb25 {
  margin-bottom: 25px !important; }

.u-ml25 {
  margin-left: 25px !important; }

.u-pt25 {
  padding-top: 25px !important; }

.u-pr25 {
  padding-right: 25px !important; }

.u-pb25 {
  padding-bottom: 25px !important; }

.u-pl25 {
  padding-left: 25px !important; }

.u-mt30 {
  margin-top: 30px !important; }

.u-mr30 {
  margin-right: 30px !important; }

.u-mb30 {
  margin-bottom: 30px !important; }

.u-ml30 {
  margin-left: 30px !important; }

.u-pt30 {
  padding-top: 30px !important; }

.u-pr30 {
  padding-right: 30px !important; }

.u-pb30 {
  padding-bottom: 30px !important; }

.u-pl30 {
  padding-left: 30px !important; }

.u-mt35 {
  margin-top: 35px !important; }

.u-mr35 {
  margin-right: 35px !important; }

.u-mb35 {
  margin-bottom: 35px !important; }

.u-ml35 {
  margin-left: 35px !important; }

.u-pt35 {
  padding-top: 35px !important; }

.u-pr35 {
  padding-right: 35px !important; }

.u-pb35 {
  padding-bottom: 35px !important; }

.u-pl35 {
  padding-left: 35px !important; }

.u-mt40 {
  margin-top: 40px !important; }

.u-mr40 {
  margin-right: 40px !important; }

.u-mb40 {
  margin-bottom: 40px !important; }

.u-ml40 {
  margin-left: 40px !important; }

.u-pt40 {
  padding-top: 40px !important; }

.u-pr40 {
  padding-right: 40px !important; }

.u-pb40 {
  padding-bottom: 40px !important; }

.u-pl40 {
  padding-left: 40px !important; }

.u-mt45 {
  margin-top: 45px !important; }

.u-mr45 {
  margin-right: 45px !important; }

.u-mb45 {
  margin-bottom: 45px !important; }

.u-ml45 {
  margin-left: 45px !important; }

.u-pt45 {
  padding-top: 45px !important; }

.u-pr45 {
  padding-right: 45px !important; }

.u-pb45 {
  padding-bottom: 45px !important; }

.u-pl45 {
  padding-left: 45px !important; }

.u-mt50 {
  margin-top: 50px !important; }

.u-mr50 {
  margin-right: 50px !important; }

.u-mb50 {
  margin-bottom: 50px !important; }

.u-ml50 {
  margin-left: 50px !important; }

.u-pt50 {
  padding-top: 50px !important; }

.u-pr50 {
  padding-right: 50px !important; }

.u-pb50 {
  padding-bottom: 50px !important; }

.u-pl50 {
  padding-left: 50px !important; }

.u-mt55 {
  margin-top: 55px !important; }

.u-mr55 {
  margin-right: 55px !important; }

.u-mb55 {
  margin-bottom: 55px !important; }

.u-ml55 {
  margin-left: 55px !important; }

.u-pt55 {
  padding-top: 55px !important; }

.u-pr55 {
  padding-right: 55px !important; }

.u-pb55 {
  padding-bottom: 55px !important; }

.u-pl55 {
  padding-left: 55px !important; }

.u-mt60 {
  margin-top: 60px !important; }

.u-mr60 {
  margin-right: 60px !important; }

.u-mb60 {
  margin-bottom: 60px !important; }

.u-ml60 {
  margin-left: 60px !important; }

.u-pt60 {
  padding-top: 60px !important; }

.u-pr60 {
  padding-right: 60px !important; }

.u-pb60 {
  padding-bottom: 60px !important; }

.u-pl60 {
  padding-left: 60px !important; }

.u-mt65 {
  margin-top: 65px !important; }

.u-mr65 {
  margin-right: 65px !important; }

.u-mb65 {
  margin-bottom: 65px !important; }

.u-ml65 {
  margin-left: 65px !important; }

.u-pt65 {
  padding-top: 65px !important; }

.u-pr65 {
  padding-right: 65px !important; }

.u-pb65 {
  padding-bottom: 65px !important; }

.u-pl65 {
  padding-left: 65px !important; }

.u-mt70 {
  margin-top: 70px !important; }

.u-mr70 {
  margin-right: 70px !important; }

.u-mb70 {
  margin-bottom: 70px !important; }

.u-ml70 {
  margin-left: 70px !important; }

.u-pt70 {
  padding-top: 70px !important; }

.u-pr70 {
  padding-right: 70px !important; }

.u-pb70 {
  padding-bottom: 70px !important; }

.u-pl70 {
  padding-left: 70px !important; }

.u-mt75 {
  margin-top: 75px !important; }

.u-mr75 {
  margin-right: 75px !important; }

.u-mb75 {
  margin-bottom: 75px !important; }

.u-ml75 {
  margin-left: 75px !important; }

.u-pt75 {
  padding-top: 75px !important; }

.u-pr75 {
  padding-right: 75px !important; }

.u-pb75 {
  padding-bottom: 75px !important; }

.u-pl75 {
  padding-left: 75px !important; }

.u-mt80 {
  margin-top: 80px !important; }

.u-mr80 {
  margin-right: 80px !important; }

.u-mb80 {
  margin-bottom: 80px !important; }

.u-ml80 {
  margin-left: 80px !important; }

.u-pt80 {
  padding-top: 80px !important; }

.u-pr80 {
  padding-right: 80px !important; }

.u-pb80 {
  padding-bottom: 80px !important; }

.u-pl80 {
  padding-left: 80px !important; }

.u-mt85 {
  margin-top: 85px !important; }

.u-mr85 {
  margin-right: 85px !important; }

.u-mb85 {
  margin-bottom: 85px !important; }

.u-ml85 {
  margin-left: 85px !important; }

.u-pt85 {
  padding-top: 85px !important; }

.u-pr85 {
  padding-right: 85px !important; }

.u-pb85 {
  padding-bottom: 85px !important; }

.u-pl85 {
  padding-left: 85px !important; }

.u-mt90 {
  margin-top: 90px !important; }

.u-mr90 {
  margin-right: 90px !important; }

.u-mb90 {
  margin-bottom: 90px !important; }

.u-ml90 {
  margin-left: 90px !important; }

.u-pt90 {
  padding-top: 90px !important; }

.u-pr90 {
  padding-right: 90px !important; }

.u-pb90 {
  padding-bottom: 90px !important; }

.u-pl90 {
  padding-left: 90px !important; }

.u-mt95 {
  margin-top: 95px !important; }

.u-mr95 {
  margin-right: 95px !important; }

.u-mb95 {
  margin-bottom: 95px !important; }

.u-ml95 {
  margin-left: 95px !important; }

.u-pt95 {
  padding-top: 95px !important; }

.u-pr95 {
  padding-right: 95px !important; }

.u-pb95 {
  padding-bottom: 95px !important; }

.u-pl95 {
  padding-left: 95px !important; }

.u-mt100 {
  margin-top: 100px !important; }

.u-mr100 {
  margin-right: 100px !important; }

.u-mb100 {
  margin-bottom: 100px !important; }

.u-ml100 {
  margin-left: 100px !important; }

.u-pt100 {
  padding-top: 100px !important; }

.u-pr100 {
  padding-right: 100px !important; }

.u-pb100 {
  padding-bottom: 100px !important; }

.u-pl100 {
  padding-left: 100px !important; }

* {
  box-sizing: border-box; }

html {
  font-size: 62.5%;
  height: 100%;
  font-family: 'fot-tsukuardgothic-std', -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  color: #333; }

body {
  height: 100%;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
  background-color: #FCFCFC; }
  @media all and (min-width: 1024px) {
    body {
      font-size: 1.6rem; } }

.wrapper {
  width: 100%; }

/*
* layout
*/
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 2000; }

#loader .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center; }

#loader .inner .logo {
  width: 100px; }

#loader .inner .text {
  position: relative;
  display: block;
  margin: 0 auto;
  left: 8px;
  margin-top: 24px; }

.header {
  width: 100%;
  position: relative; }
  .header-inner {
    margin: 0 auto; }
    .header-inner small {
      position: absolute;
      display: inline-block;
      color: #FFF;
      margin: 0 auto;
      right: 0;
      left: 0;
      bottom: 40px;
      bottom: 4rem; }
  .header-logo {
    position: absolute;
    width: 50px;
    width: 5rem;
    margin: 0 auto;
    padding: 0 0 60px;
    padding: 0 0 6rem;
    top: 15%;
    left: 0;
    right: 0; }
    .header-logo img {
      width: 100%; }
  .header ul {
    position: absolute;
    top: 25%;
    left: 0;
    right: 0; }
  .header .sns {
    position: absolute;
    margin: 0 3%;
    border-top: 0.5px solid #FFF;
    border-top: 0.05rem solid #FFF;
    left: 0;
    right: 0;
    bottom: 15%; }
    .header .sns i {
      margin: 0 8px;
      margin: 0 0.8rem;
      color: #FFF; }
  .header .grobalNav {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    width: 100vw;
    height: 0;
    background-color: rgba(0, 58, 19, 0.8);
    transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    text-align: center; }
    .header .grobalNav a {
      text-decoration: none;
      width: 100%;
      color: #FFF;
      font-size: 16px;
      font-size: 1.6rem; }
    .header .grobalNav li {
      margin: 0 0 40px;
      margin: 0 0 4rem; }
  .header .grobalNav-toggleButton {
    top: 18px;
    top: 1.8rem;
    right: 18px;
    right: 1.8rem;
    position: fixed;
    z-index: 2000; }
  .header .grobalNav-line {
    width: 18px;
    width: 1.8rem;
    height: 1px;
    height: 0.1rem;
    margin-bottom: 9px;
    margin-bottom: 0.9rem;
    background-color: #000;
    transition: all 0.4s cubic-bezier(0.01, 0.62, 0.57, 0.93); }
  .header .isMenuOpening .grobalNav {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    height: 100vh;
    position: fixed;
    transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    z-index: 1500; }
  .header .isMenuOpening .grobalNav-line {
    background-color: #FFF; }
  .header .isMenuOpening .grobalNav-toggleButton :nth-child(1) {
    transform: translate(0, 1rem) rotate(45deg);
    transition: all 0.4s cubic-bezier(0.09, 0.62, 0.57, 0.93); }
  .header .isMenuOpening .grobalNav-toggleButton :nth-child(2) {
    transform: translate(4rem, 0);
    transition: all 0.4s cubic-bezier(0.01, 0.62, 0.57, 0.93);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .header .isMenuOpening .grobalNav-toggleButton :nth-child(3) {
    transform: translate(0, -1rem) rotate(-45deg);
    transition: all 0.4s cubic-bezier(0.09, 0.62, 0.57, 0.93); }

.footer {
  width: 100%; }
  .footer-inner {
    margin: 0 auto;
    background: #003A13;
    text-align: center; }
    .footer-inner small {
      display: inline-block;
      color: #FFF;
      margin: 40px 0;
      margin: 4rem 0; }
  .footer-logo {
    width: 50px;
    width: 5rem;
    margin: 0 auto;
    padding: 40px 0;
    padding: 4rem 0; }
    .footer-logo img {
      width: 100%; }
  .footer .sns i {
    margin: 0 8px;
    margin: 0 0.8rem;
    color: #FFF; }

.contents {
  width: 100%; }

.contents-inner {
  margin: 0 auto; }

/*
* module
*/
.heading-primary {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 24px;
  line-height: 2.4rem;
  text-align: center; }
  @media all and (min-width: 1024px) {
    .heading-primary {
      font-size: 3rem;
      line-height: 3rem; } }

.heading-secondary {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 20px;
  line-height: 2rem; }
  @media all and (min-width: 1024px) {
    .heading-secondary {
      font-size: 2.5rem;
      line-height: 2.5rem; } }

.heading-thirdly {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  color: #fff;
  background-color: #4A7B5A;
  padding: 1px 3px;
  padding: 0.1rem 0.3rem; }
  @media all and (min-width: 1024px) {
    .heading-thirdly {
      font-size: 2rem;
      line-height: 2rem; } }

.heading-fourthly {
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 8px;
  line-height: 0.8rem;
  color: #AAAAAA; }

/*
* pages
*/
.main-visual {
  width: 100vw;
  height: 550px;
  height: 55rem;
  overflow: hidden;
  position: relative;
  background-size: cover; }
  .main-visual li img {
    width: 100%;
    position: absolute; }
  .main-visual .grayscale img {
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feColorMatrix type="matrix" color-interpolation-filters="sRGB" values="0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0" /></filter></svg>#filter');
    filter: grayscale(100%); }
  .main-visual .pc {
    display: none !important; }
  .main-visual .sp {
    display: block !important; }
  @media screen and (min-width: 768px) {
    .main-visual {
      height: 50rem; }
      .main-visual .pc {
        display: block !important; }
      .main-visual .sp {
        display: none !important; } }
  @media screen and (min-width: 1024px) {
    .main-visual {
      height: 70rem; } }
  @media screen and (min-width: 1440px) {
    .main-visual {
      height: 80rem; } }
  @media screen and (min-width: 1920px) {
    .main-visual {
      height: 100rem; } }
  @media screen and (min-width: 2560px) {
    .main-visual {
      height: 130rem; } }
  .main-visual .main-logo {
    position: absolute;
    top: 200px;
    top: 20rem;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 1000; }
    .main-visual .main-logo img {
      width: 50px;
      width: 5rem; }
    @media all and (min-width: 1024px) {
      .main-visual .main-logo {
        top: 50%; }
        .main-visual .main-logo img {
          width: 7rem; } }
  .main-visual #scrolldown {
    bottom: 50px;
    bottom: 5rem;
    height: 100px;
    height: 10rem;
    margin-left: -50px;
    margin-left: -5rem;
    position: absolute;
    left: 50%;
    text-align: center;
    width: 100px;
    width: 10rem;
    z-index: 100; }
  .main-visual #scrolldown p {
    font: 10px 'Avenir',sans-serif;
    font: 1rem 'Avenir',sans-serif;
    animation-duration: 2s;
    animation-fill-mode: both;
    animation-iteration-count: infinite;
    animation-name: scroll;
    color: #fff; }
  .main-visual #scrolldown > p {
    text-transform: uppercase;
    text-indent: 3px;
    text-indent: 0.3rem; }
  .main-visual .mouse {
    border: 2px solid #fff;
    border: 0.2rem solid #fff;
    border-radius: 1.3rem;
    display: block;
    height: 46px;
    height: 4.6rem;
    left: 50%;
    margin: 10px 0 0 -13px;
    margin: 1rem 0 0 -1.3rem;
    position: absolute;
    width: 26px;
    width: 2.6rem; }
  .main-visual .mouse span {
    display: block;
    font-size: 1.5em;
    margin: 6px auto;
    margin: 0.6rem auto; }

@keyframes scroll {
  0% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transform: translateY(0px); }
  100% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transform: translateY(10px); } }

.concept .message-wrapper .heading-primary {
  margin: 0 2%;
  font-size: 20px;
  font-size: 2rem;
  line-height: 30px;
  line-height: 3rem; }
  @media all and (min-width: 1024px) {
    .concept .message-wrapper .heading-primary {
      font-size: 3rem;
      line-height: 5rem; } }

.concept-photo {
  margin: 5px;
  margin: 0.5rem; }
  .concept-photo img {
    width: 250px;
    width: 25rem; }
    @media all and (min-width: 1024px) {
      .concept-photo img {
        width: 40rem;
        margin: 1rem; } }

.concept .diamond {
  color: #7BA879; }

.concept .mark {
  width: 15px;
  width: 1.5rem; }
  @media all and (min-width: 1024px) {
    .concept .mark {
      vertical-align: bottom;
      width: 2rem; } }

@media screen and (min-width: 320px) and (max-width: 1023px) {
  .featureLeft-wrapper {
    position: relative; }
  .featureLeft-noArea {
    width: 20%;
    position: absolute;
    float: left;
    top: 0;
    left: 0;
    right: 80%;
    bottom: 0; }
  .featureLeft-no {
    position: absolute;
    width: 1rem;
    line-height: 1rem;
    text-align: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; }
  .featureLeft-image {
    width: 80%;
    margin-left: auto; }
    .featureLeft-image img {
      width: 100%; }
  .featureLeft-title {
    margin-left: 20%; }
  .featureLeft-text {
    margin-left: 20%;
    margin-right: 3%;
    line-height: 2.5rem; }
  .featureRight-wrapper {
    position: relative; }
  .featureRight-noArea {
    width: 20%;
    position: absolute;
    float: right;
    top: 0;
    left: 80%;
    right: 0;
    bottom: 0; }
  .featureRight-no {
    position: absolute;
    width: 1rem;
    line-height: 1rem;
    text-align: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; }
  .featureRight-image {
    width: 80%;
    margin-right: auto; }
    .featureRight-image img {
      width: 100%; }
  .featureRight-title {
    margin-right: 20%;
    text-align: right; }
  .featureRight-text {
    margin-left: 3%;
    margin-right: 20%;
    line-height: 2.5rem; } }

@media screen and (min-width: 1024px) {
  .kodawari-wrapper {
    margin: 12rem 2% 0; }
    .kodawari-wrapper .featureLeft,
    .kodawari-wrapper .featureRight {
      margin: 0 4.1%;
      width: 25%;
      float: left; }
      .kodawari-wrapper .featureLeft-noArea,
      .kodawari-wrapper .featureRight-noArea {
        text-align: center;
        margin: 0 0 4rem; }
      .kodawari-wrapper .featureLeft-no,
      .kodawari-wrapper .featureRight-no {
        font-size: 2rem; }
      .kodawari-wrapper .featureLeft-image img,
      .kodawari-wrapper .featureRight-image img {
        width: 100%; }
      .kodawari-wrapper .featureLeft-text,
      .kodawari-wrapper .featureRight-text {
        line-height: 3rem; } }

.menu {
  background-color: #EAEAEA; }
  .menu .menulist-photos {
    margin: 0 4%; }
    @media all and (min-width: 1024px) {
      .menu .menulist-photos {
        width: 84vw;
        margin: 0 auto; } }
  .menu .menulist-photo {
    width: 94vw; }
    @media all and (min-width: 1024px) {
      .menu .menulist-photo {
        width: 40vw;
        margin: 0 2vw; } }
    .menu .menulist-photo img {
      width: 100%; }

.menulist-wrapper {
  margin: 0 auto; }
  @media all and (min-width: 1200px) {
    .menulist-wrapper {
      margin: 0 10%; } }

.menulist {
  margin: 0 10%; }
  @media all and (min-width: 768px) {
    .menulist {
      margin: 0 8%;
      width: 33%;
      float: left; } }
  @media all and (min-width: 768px) and (min-width: 1024px) {
    .menulist {
      margin: 0 0 0 12%; } }
  @media all and (min-width: 768px) and (min-width: 1200px) {
    .menulist {
      width: 30%;
      margin: 0 1% 0 2%; } }
  .menulist-head {
    width: 100px;
    width: 10rem;
    text-align: center;
    margin-bottom: 20px;
    margin-bottom: 2rem; }
    @media all and (min-width: 768px) {
      .menulist-head {
        width: 14rem;
        margin: 0 0 0.5rem; } }
  .menulist-table {
    width: 90%;
    text-align: left;
    margin-left: 10px;
    margin-left: 1rem; }
    @media all and (min-width: 768px) {
      .menulist-table {
        width: 100%;
        margin: 0; } }
  .menulist-row {
    height: 35px;
    height: 3.5rem; }
    @media all and (min-width: 768px) {
      .menulist-row {
        height: 4rem; } }
  .menulist-col1 {
    width: 200px;
    width: 20rem; }
    @media all and (min-width: 768px) {
      .menulist-col1 {
        width: 20rem; } }
    @media all and (min-width: 1024px) {
      .menulist-col1 {
        width: 30rem; } }
    @media all and (min-width: 1200px) {
      .menulist-col1 {
        width: 35rem; } }
    .menulist-col1-sub {
      font-size: 10px;
      font-size: 1rem;
      color: #999;
      padding-left: 2px;
      padding-left: 0.2rem; }
  @media all and (min-width: 1024px) {
    .menulist-col2 {
      width: 6rem; } }

.coffee-mark {
  color: #A69320;
  margin-left: 10px;
  margin-left: 1rem; }

.card {
  background-color: #fff;
  margin-left: 3%;
  margin-right: 3%;
  box-shadow: 0 0.1rem 0.8rem #999; }
  @media all and (min-width: 1024px) {
    .card {
      width: 29%;
      margin-left: 2%;
      margin-right: 2%;
      height: 60rem;
      float: left; } }
  @media all and (min-width: 1366px) {
    .card {
      height: 60rem; } }
  @media all and (min-width: 1680px) {
    .card {
      height: 65rem; } }
  @media all and (min-width: 1980px) {
    .card {
      height: 70rem; } }
  @media all and (min-width: 2200px) {
    .card {
      height: 75rem; } }
  .card-image {
    overflow: hidden; }
    .card-image img {
      width: 100%;
      transition-duration: 0.5s; }
      .card-image img:hover {
        transform: scale(1.1);
        transition-duration: 0.5s; }
  .card-discription {
    padding: 20px;
    padding: 2rem; }
  .card-text {
    line-height: 20px;
    line-height: 2rem; }
    @media all and (min-width: 1024px) {
      .card-text {
        line-height: 2.5rem; } }

.information-wrapper {
  background-color: #003A13;
  position: relative;
  height: 500px;
  height: 50rem; }
  @media all and (min-width: 1024px) {
    .information-wrapper {
      height: 60rem; } }

.information-logo {
  text-align: center;
  margin-bottom: 50px;
  margin-bottom: 5rem; }
  .information-logo img {
    width: 120px;
    width: 12rem; }

.information-contents {
  width: 100%;
  margin: 0 auto;
  color: #fff;
  position: absolute;
  left: 0;
  right: 0; }
  @media all and (min-width: 768px) {
    .information-contents {
      width: 40rem; } }

.information-header {
  text-align: center; }

.information-dTitle {
  width: 40%;
  float: left;
  padding-right: 50px;
  padding-right: 5rem;
  text-align: right; }

.information-dData {
  width: 60%;
  margin-left: 40%;
  margin-bottom: 20px;
  margin-bottom: 2rem; }

.information dl a {
  color: #fff; }

.map {
  width: 100%;
  height: 300px;
  height: 30rem; }
  @media all and (min-width: 1024px) {
    .map {
      height: 40rem; } }

.slick-slide {
  outline: none; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: right; }

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 19px;
  width: 1.9rem;
  height: 19px;
  height: 1.9rem;
  margin: 0 5px;
  padding: 0;
  cursor: pointer; }

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  width: 2rem;
  height: 20px;
  height: 2rem;
  padding: 5px;
  padding: 0.5rem;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent; }

.slick-dots li button:focus,
.slick-dots li button:hover {
  outline: none; }

.slick-dots li button:focus:before,
.slick-dots li button:hover:before {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

.slick-dots li button:before {
  font-size: 10px;
  font-size: 1rem;
  line-height: 20px;
  line-height: 2rem;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  width: 2rem;
  height: 20px;
  height: 2rem;
  content: '●';
  text-align: center;
  opacity: 0.25;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
  color: #B93C3C; }
