@charset "UTF-8";

/*--------------------------------------------------------------
Foundation
--------------------------------------------------------------*/
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,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
figure,
figcaption,
input,
textarea,
select {
  border: 0;
  font-style: inherit;
  font-weight: inherit;
  font-size: inherit;
  color: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
  line-height: 2.14;
}

html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-size: 20px;
  font-size: 2rem;
  background: #fff;
  color: #726850;
  overflow-y: scroll;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", "Meiryo", sans-serif;
}

ul,
li {
  list-style: none;
}

table {
  border-collapse: collapse;
}

a:hover,
a:active,
a:focus {
  outline: 0;
}

a {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transition: opacity .2s ease-in;
  -webkit-transition: opacity .2s ease-in;
  opacity: 1;
}

img,
input[type="image"] {
  border: 0;
  height: auto;
  max-width: 100%;
}

input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 0;
}

strong {
  font-weight: bold;
}

a {
  text-decoration: none;
}

a:hover,
input[type="image"]:hover {
  opacity: 0.7;
}

.m_ft {
  font-family: "Times New Roman", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-family: "游明朝体 Medium", "Yu Mincho Medium", YuMincho, "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-family: YuMincho, "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/*--------------------------------------------------------------
Layout/PageBase
--------------------------------------------------------------*/
#header {
  position: fixed;
  background: #61563c;
  height: 5em;
  width: 100%;
  overflow: hidden;
  top: 0;
  z-index: 100;
  left: 0;
}

#header .inner {
  max-width: 1380px;
  margin: 0 auto;
  padding: 0 1em;
}

.header_fixed {
  height: 5em;
}

.top #header {
  position: static;
}

.top .header_fixed {
  height: 0;
}

body.fixed .top #header {
  position: fixed;
}

.h_logo {
  color: #fff;
  float: left;
  font-size: 2.5rem;
  margin-top: 1em;
  white-space: nowrap;
  width: 16%;
}

.h_nav {
  float: left;
  width: 56%;
  display: table;
  margin-top: 1.3em;
  line-height: 1.5;
}

.h_nav * {
  line-height: inherit;
}

.h_nav li {
  display: table-cell;
  text-align: center;
  padding: 0 1em;
}

.h_nav a {
  display: block;
  color: #fff;
  font-size: 1.8rem;
}

.h_nav span {
  display: block;
  color: #f0d278;
  font-size: 80%;
}

.h_right {
  float: right;
  text-align: right;
  margin-top: 1.2em;
  width: 25%;
  position: relative;
}

.h_insta {
  width: 2.9em;
  height: 2.7em;
}

.h_line {
  width: 2.9em;
  position: absolute;
  top: 0;
  left: 19.5%;
}

.h_mail {
  position: absolute;
  top: 0;
  right: 0;
  color: #fff;
  text-align: center;
  height: 2.7em;
  background: #f0c030;
  border-radius: .3em;
  white-space: nowrap;
}

.h_mail a {
  font-size: 1.8rem;
  display: block;
  padding: .6em 2em 0 .8em;
  height: 100%;
  background: url(../img/icon_arrow01.png) no-repeat 92% center;
  background-size: .611em;
}

.h_mail img {
  vertical-align: middle;
  margin-right: .5em;
  width: 1.0555em;
}

#footer {
  background: #61563c;
  color: #faf6eb;
  text-align: center;
  padding: .5em 0;
}

.f_copy {
  font-size: 1.2rem;
}

@media all and (max-width: 1400px) {

  #header,
  .header_fixed {
    font-size: calc(100vw * 20 / 1400);
  }

  .h_logo {
    font-size: calc(100vw * 25 / 1400);
  }

  .h_nav a {
    font-size: calc(100vw * 18 / 1400);
  }

  .h_mail a {
    font-size: calc(100vw * 18 / 1400);
  }
}

@media all and (max-width: 1000px) {
  .h_nav li {
    padding: 0 1em;
  }
}

@media all and (min-width: 768px) {
  #toggle_menu {
    display: block !important;
  }
}

@media all and (max-width: 767px) {
  #header {
    background: #fff;
    position: fixed;
    height: 4.4em;
    font-size: 2rem;
    overflow: visible;
  }

  .header_fixed {
    height: 4.4em;
    font-size: 2rem;
  }

  .top #header {
    position: fixed;
  }

  .top .header_fixed {
    height: 4.4em;
  }

  .h_logo {
    font-size: 3.5rem;
    margin-top: 0.3em;
    width: auto;
    color: #61563c;
  }

  .h_nav {
    float: none;
    width: auto;
    display: block;
    margin-top: .5em;
    line-height: 1.5;
  }

  .h_nav li {
    display: block;
    text-align: left;
    padding: 0;
  }

  .h_nav li+li {
    border-top: solid 1px #8c7638;
  }

  .h_nav a {
    display: block;
    color: #fff;
    font-size: 2.4rem;
    padding: .6em 1em;
    position: relative;
  }

  .h_nav a:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -.17em;
    width: .35em;
    height: .35em;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .h_nav span {
    display: none;
  }

  .h_logo2 {
    font-size: 4.5rem;
    color: #fff;
    margin-top: -.1em;
  }

  .h_right {
    float: right;
    margin-top: .5em;
    width: auto;
  }

  .h_mail_sp {
    width: 3.35em;
    float: left;
  }

  .h_insta {
    width: 3.35em;
    height: auto;
    float: left;
    margin-left: .5em;
  }

  .h_line_sp {
    width: 3.35em;
    height: auto;
    float: left;
    margin-left: .5em;
  }

  .h_menu {
    width: 3.35em;
    float: left;
    margin-left: .5em;
    cursor: pointer;
  }

  .h_close {
    position: absolute;
    right: 1em;
    top: 1em;
    width: 3.35em;
    z-index: 10;
    cursor: pointer;
  }

  #toggle_menu {
    position: fixed;
    display: none;
    top: 0;
    left: 0;
    z-index: 9;
    width: 100%;
    padding: 0 1.5em;
    background: #61563c;
  }
}

/*--------------------------------------------------------------
Component
--------------------------------------------------------------*/

.top_ reserv {
  margin: 20px auto;
}

.top_news_adjust {
  margin-top: 0px !important
}

#gototop {
  margin-right: 1em;
  margin-top: 3em;
}

#gototop img {
  display: block;
  width: 3.4em;
  margin: 0 0 0 auto;
}

.evt {
  visibility: hidden;
}

.c_list {
  -webkit-display: flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c_list li {
  flex-basis: 30%;
}

.c_anchor {
  padding-top: 5em;
  margin-top: -5em;
}

@media all and (max-width: 767px) {
  #gototop {
    margin-right: 2em;
    margin-top: -2.2em;
    right: 0;
    position: absolute;
    z-index: 10;
  }

  .c_anchor {
    padding-top: 4.4em;
    margin-top: -4.4em;
  }
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3em, 0);
    transform: translate3d(0, 3em, 0);
  }

  60% {
    opacity: .5;
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3em, 0);
    transform: translate3d(0, 3em, 0);
  }

  60% {
    opacity: .5;
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

/*--------------------------------------------------------------
Project
--------------------------------------------------------------*/
.top_main {
  position: relative;
}

.top_main_text {
  position: absolute;
  bottom: 0;
  left: 5%;
  color: #fff;
  font-weight: bold;
  font-size: 7rem;
  line-height: 1.5;
}

.top_main li {
  width: 1400px !important;
}

.top_main li+li {
  display: none;
}

.top_main img {
  display: block;
}

.c_ttl {
  text-align: center;
  font-size: 2.5rem;
  line-height: 1.4;
  padding: 0 .7em;
  font-weight: bold;
}

.c_ttl span {
  display: block;
  position: relative;
  color: #f0c030;
  position: relative;
  line-height: inherit;
  padding-bottom: .4em;
  font-size: 80%;
  font-weight: normal;
}

.c_ttl span:before {
  content: '';
  border-bottom: solid 2px #f0c030;
  position: absolute;
  width: 2em;
  left: 50%;
  margin-left: -1em;
  bottom: 0;
}

.c_ttl img {
  display: block;
  margin: 0 auto .5em;
  width: 2.2em;
}

.c_ttl+p {
  font-size: 1.6rem;
  margin-top: 2.5em;
}

.c_btn {
  text-align: center;
}

.c_btn a {
  display: inline-block;
  border-radius: 1.5em;
  font-size: 1.5rem;
  color: #fff;
  padding: .1em 2.2em .1em 1.5em;
  position: relative;
  background: #f0c030;
}

.c_btn a:before {
  content: '';
  position: absolute;
  right: .8em;
  top: 0;
  background: url(../img/icon_arrow01.png) no-repeat center center;
  width: .733em;
  height: 100%;
}

@media all and (max-width: 767px) {
  .c_ttl {
    font-size: 3.7rem;
  }

  .c_ttl span {
    padding-bottom: .2em;
  }

  .c_ttl span:before {
    border-width: .15em;
    width: 1.6em;
    margin-left: -.8em;
  }

  .c_ttl+p {
    font-size: 1.8rem;
    margin-top: 1.2em;
  }

  .c_btn a {
    font-size: 1.7rem;
  }
}

.top_news {
  margin: 3.5em 0;
}

.top_news .u_right {
  width: 71%;
}

.top_news li {
  font-size: 1.4rem;
  position: relative;
  padding-left: 8em;
}

.top_news li+li {
  margin-top: .5em;
}

.top_news li span {
  position: absolute;
  font-weight: bold;
  left: 0;
}

@media all and (max-width: 767px) {
  .top_main_text {
    left: 2%;
    font-size: 5rem;
  }

  .top_news {
    margin: 3.5em 0;
  }

  .top_news .u_right {
    margin-top: 1em;
  }

  .top_news li {
    font-size: 1.8rem;
    padding-left: 0;
  }

  .top_news li span {
    position: static;
    display: block;
    line-height: 1.2;
  }
}

.top_about {
  background: #faf6eb;
  position: relative;
  padding-bottom: 5em;
}

.top_about .img {
  position: absolute;
  left: 50%;
  bottom: 0;
}

.top_about .img img {
  width: 20.75em;
  margin-left: 3.75em;
  display: block;
}

.top_about .body {
  width: 50%;
  background: #fff;
  position: relative;
  padding: 2.5em 0 1.5em;
}

.top_about .box {
  width: 24.5em;
  margin: 0 0 0 auto;
  padding-right: 3.5em;
}

.top_about p {
  font-size: 1.5rem;
  margin-bottom: 1.7em;
}

@media all and (max-width: 767px) {
  .top_about {
    padding-bottom: 0;
  }

  .top_about .img {
    position: static;
  }

  .top_about .img img {
    width: 100%;
    margin-left: 0;
  }

  .top_about .body {
    width: 100%;
    background: transparent;
  }

  .top_about .box {
    width: auto;
    padding: 0 4%;
  }

  .top_about p {
    font-size: 1.8rem;
  }

  .top_about p br {
    display: none;
  }
}

.top_feel {
  padding-top: 4.5em;
  text-align: center;
}

.top_feel p {
  margin-top: 1.7em;
}

.top_feel ul {
  margin-top: 2em;
}

@media all and (max-width: 767px) {
  .top_feel {
    padding-top: 2.5em;
  }

  .top_feel .c_ttl {
    font-size: 3rem;
  }

  .top_feel p {
    margin-top: 1em;
  }
}

.top_menu {
  background: url(../img/bg_top_menu.jpg) no-repeat center center;
  background-size: cover;
  padding: 4.5em 0 2.5em;
  text-align: center;
}

.top_menu ul {
  margin-left: -8%;
  margin-top: 2em;
}

.top_menu li {
  float: left;
  width: 33.3%;
  padding-left: 8%;
  position: relative;
  margin-bottom: 1em;
}

.top_menu li p {
  font-size: 1.8rem;
  position: absolute;
  top: .5em;
  margin-left: .5em;
  background: #d84f3f;
  padding: 0 1em;
  border-radius: 1.8em;
  color: #fff;
}

.top_menu li p.pop {
  background: #159191;
}

.top_menu li img {
  display: block;
  border: solid 1px #bbae9e;
  border-radius: .3em;
}

.top_menu li a {
  display: block;
}

.top_menu dt {
  position: relative;
  font-weight: bold;
  margin: 1.8em 0 .5em;
}

.top_menu dt:before {
  content: '';
  border-bottom: solid 2px #f0c030;
  position: absolute;
  width: 3em;
  left: 50%;
  margin-left: -1.5em;
  bottom: 0;
}

.top_menu dd {
  font-size: 1.5rem;
}

.homehme {
  margin: 30px auto;
}

@media all and (max-width: 767px) {
  .top_menu {
    padding: 2.5em 0 2.5em;
  }

  .top_menu ul {
    margin-left: 0;
    margin-top: 2.5em;
  }

  .top_menu li {
    float: none;
    width: auto;
    margin: 0 auto;
    padding-left: 0;
    margin-bottom: 2em;
  }

  .top_menu li p {
    font-size: 1.8rem;
    margin-left: 0;
    top: .6em;
    left: 27%;
  }

  .top_menu li img {
    border-radius: .5em;
    width: 55%;
    margin: 0 auto;
  }

  .top_menu dt {
    font-size: 3rem;
    margin: .2em 0 .7em;
  }

  .top_menu dt:before {
    border-bottom: solid .15em #f0c030;
    width: 2em;
    margin-left: -1em;
  }

  .top_menu dd {
    font-size: 1.8rem;
  }
}

.top_voice {
  background: #faf6eb;
  padding: 2.2em 0;
  text-align: center;
}

.top_voice .c_btn {
  margin-top: 1em;
}

.top_voice .u_right {
  width: 71%;
  border: solid 1px #e5e5e5;
  padding: 1.5em;
  background: #fff;
  overflow-y: auto;
  text-align: left;
  height: 16em;
}

.top_voice li {
  font-size: 1.5rem;
}

.top_voice li+li {
  margin-top: 1.2em;
}

.top_voice li span {
  font-weight: bold;
  margin-right: 1em;
}

.top_voice li em {
  color: #f0c030;
}

.top_voice li p {
  line-height: 1.5;
}

.top_voice li p+p {
  text-decoration: underline;
}

@media all and (max-width: 767px) {
  .top_voice .u_right {
    width: auto;
    margin: 1.5em 0 2em;
  }

  .top_voice li {
    font-size: 1.8rem;
  }
}

.top_access {
  padding-top: 4.5em;
}

.top_access iframe {
  width: 100%;
  height: 26em;
  border: none;
}

.top_access .u_left {
  width: 56.1%;
}

.top_access .u_right {
  width: 43.9%;
  text-align: center;
  padding: 0 4em;
}

.top_access dl {
  margin-top: 1.5em;
}

.top_access dt {
  font-weight: bold;
}

.top_access dd {
  text-align: left;
}

.top_access .addr {
  font-size: 1.6rem;
  line-height: 1.8;
  margin: .5em -.5em .6em;
}

.top_access li {
  font-size: 1.4rem;
  margin: 0 1em .3em;
}

.top_access .park {
  font-size: 1.4rem;
  margin: .5em .5em;
}

.top_access .park img {
  width: 1.928em;
  margin-right: .8em;
  vertical-align: middle;
}

.top_access .tel {
  border: solid 1px #b8b3a7;
  padding: .8em .5em .5em;
  text-align: center;
  margin: .5em 0 .8em;
  white-space: nowrap;
}

.top_access .tel p {
  font-size: 1.6rem;
  line-height: 1.6;
}

.top_access .tel p+p {
  font-weight: bold;
  font-size: 2.5rem;
  letter-spacing: .1em;
}

.top_access .tel p+p img {
  width: .64em;
  vertical-align: -5%;
  margin-right: .3em;
}

@media all and (max-width: 767px) {
  .top_access {
    padding-top: 2.2em;
  }

  .top_access .u_left {
    margin: 2em -4% 0;
  }

  .top_access iframe {
    height: 20em;
  }

  .top_access .u_right {
    padding: 0 3.5em;
  }

  .top_access dl {
    margin-top: 1em;
  }

  .top_access dt {
    font-size: 2.5rem;
  }

  .top_access .addr {
    font-size: 2rem;
    white-space: nowrap;
  }

  .top_access .addr br {
    display: none;
  }

  .top_access li {
    font-size: 1.7rem;
    margin: 0 5em .3em;
  }

  .top_access .park {
    font-size: 1.7rem;
    margin: .5em 4.5em;
  }

  .top_access .park img {
    width: 1.928em;
    margin-right: .8em;
    vertical-align: middle;
  }

  .top_access .tel {
    padding: 1em .5em .3em;
    text-align: center;
    margin: .5em 0 1.5em;
  }

  .top_access .tel p {
    font-size: 2rem;
    line-height: 1;
  }

  .top_access .tel p+p {
    font-size: 4rem;
  }
}

.form {
  padding-top: 4.5em;
}

.form_top {
  text-align: center;
  margin-bottom: 4.5em;
}

.form_top .tel {
  font-size: 2.5rem;
  line-height: 1.7;
}

.form_top .tel * {
  line-height: inherit;
}

.form_top .tel strong {
  display: block;
  font-size: 5.5rem;
}

.form_top .tel img {
  width: .655em;
  vertical-align: -10%;
  margin-right: .3em;
}

.form_top .line {
  font-size: 2.5rem;
  margin: 1.5em 0 1em;
}

.form_top .link {
  line-height: 1.2;
}

.form_top .link * {
  line-height: inherit;
}

.form_top .link a {
  display: inline-block;
  border-radius: .2em;
  background: #00b900;
  font-size: 3.5rem;
  padding: .15em .2em .1em 1em;
  color: #fff;
}

.form_top .link strong {
  font-size: 137%;
}

.form_top .link img {
  vertical-align: -20%;
  width: 1.5428em;
}

.form_top .link .a {
  margin-right: .3em;
}

.form_top .link .b {
  margin-left: .5em;
}

@media all and (max-width: 767px) {
  .form_top {
    margin-bottom: 3em;
  }

  .form_top .tel {
    font-size: 2.7rem;
  }

  .form_top .line {
    font-size: 2.8rem;
  }

  .form_top .link a {
    font-size: 3.8rem;
  }
}

.form.about_outline table {
  margin: 0 0 1em;
}

.form.about_outline .error {
  color: red;
}

.form.about_outline p {
  font-size: 1.2rem;
}

.form.about_outline p.req {
  text-align: right;
  margin-top: 2em;
}

.form.about_outline .msg {
  text-align: center;
  margin: 2em 0;
}

.form.about_outline .msg p {
  font-size: 1.6rem;
}

.form.about_outline .btn {
  text-align: center;
  margin-top: 2.5em;
}

.form.about_outline .btn input {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  display: inline-block;
  font-size: 2.5rem;
  padding: .2em 3em .2em 2em;
  border-radius: .2em;
  color: #fff;
  background: #c73400 url(../img/icon_arrow05.png) no-repeat 83% center;
  background-size: .84em;
}

.form.about_outline .btn input.back {
  background: #ccc;
  padding: .2em 1em .2em;
  margin-left: .5em;
}

.form.about_outline .btn form {
  display: inline;
}

.form.about_outline td input {
  width: 60%;
}

.form.about_outline td input,
.form.about_outline td select,
.form.about_outline td textarea {
  font-size: 1.4rem;
  padding: 0 1em;
  border: solid 2px #f0c030;
  border-radius: .5em;
}

.form.about_outline td select {
  letter-spacing: 0.1em;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: #fff url(../img/bg_form.png) no-repeat right center;
  background-size: auto 100%;
  display: inline-block;
  padding: 0 3em 0 1em;
  margin-right: .5em;
}

.form.about_outline td select::-ms-expand {
  display: none;
}

.form.about_outline td label {
  margin-right: .5em;
}

.form.about_outline td textarea {
  height: 18em;
  width: 100%;
}

@media all and (max-width: 767px) {
  .form.about_outline {
    margin-bottom: 4em;
  }

  .form.about_outline table {
    margin: 0;
  }

  .form.about_outline p {
    font-size: 1.6rem;
  }

  .form.about_outline td input {
    width: 100%;
  }

  .form.about_outline td input,
  .form.about_outline td select,
  .form.about_outline td textarea {
    font-size: 1.8rem;
  }

  .form.about_outline .btn {
    margin-top: 2em;
  }
}

.about_msg {
  background: #faf6eb;
  position: relative;
  margin-top: -2em;
  padding-bottom: 2.5em;
}

.about_msg .img {
  position: absolute;
  left: 50%;
  bottom: 0;
}

.about_msg .img img {
  width: 19.8em;
  margin-left: 4.7em;
  display: block;
  margin-bottom: -2em;
}

.about_msg .body {
  width: 50%;
  background: #fff;
  position: relative;
  padding: 2.5em 0 1.5em;
}

.about_msg .box {
  width: 24.5em;
  margin: 0 0 0 auto;
  padding-right: 3.5em;
}

.about_msg p {
  font-size: 1.5rem;
}

.about_msg p.sign {
  text-align: right;
  font-weight: bold;
  margin-top: 1em;
}

@media all and (max-width: 767px) {
  .about_msg {
    padding-top: 2.5em;
    padding-bottom: 0;
    margin-top: -4.5em;
  }

  .about_msg .img {
    position: static;
  }

  .about_msg .img img {
    width: 60%;
    margin: 0 auto;
  }

  .about_msg .body {
    width: 100%;
    background: transparent;
  }

  .about_msg .box {
    width: auto;
    padding: 0 4%;
  }

  .about_msg p {
    font-size: 1.8rem;
  }

  .about_msg p br {
    display: none;
  }
}

.about_outline {
  padding-top: 7em;
}

.about_outline table {
  width: 100%;
  border-collapse: separate;
  border: solid 2px #f0c030;
  border-radius: .5em;
  margin-top: 2em;
  border-spacing: 0;
  overflow: hidden;
}

.about_outline tr+tr>* {
  border-top: solid 2px #f0c030;
}

.about_outline td {
  font-size: 1.5rem;
  padding: .8em 2em;
}

.about_outline th {
  width: 20%;
  text-align: left;
  font-size: 1.6rem;
  padding: .8em 2em;
  vertical-align: middle;
  color: #f0c030;
  border-right: solid 2px #f0c030;
  background: #fffbf1;
}

@media all and (max-width: 767px) {
  .about_outline {
    padding-top: 2.5em;
  }

  .about_outline table {
    border-radius: 0;
  }

  .about_outline tr>* {
    float: left;
    width: 100%;
  }

  .about_outline td {
    font-size: 1.8rem;
    padding: .8em 1em;
  }

  .about_outline th {
    font-size: 2rem;
    padding: .3em 1em .2em;
    border-right: none;
  }

  .about_outline tr:first-child th {
    border-bottom: solid 2px #f0c030;
  }
}

.about_map {
  padding-top: 4.5em;
}

.about_map .map {
  margin-top: 2.2em;
}

.about_map iframe {
  width: 100%;
  height: 29em;
  display: block;
  border: none;
}

@media all and (max-width: 767px) {
  .about_map {
    padding-top: 2.5em;
  }

  .about_map iframe {
    height: 20em;
  }
}

.about_open {
  padding: 4.5em 0 3em;
  background: #faf6eb;
}

.about_open table {
  width: 100%;
  text-align: center;
  margin: 2em 0 1.5em;
}

.about_open tr>* {
  font-size: 1.6rem;
  border: solid 2px #f0c030;
  width: 10%;
  padding: .5em 0;
}

.about_open tr>*:first-child {
  width: 20%;
}

.about_open td {
  background: #fff;
  color: #f0c030;
}

.about_open th {
  background: #ffdd79;
}

.about_open p {
  font-size: 1.5rem;
}

@media all and (max-width: 767px) {
  .about_open {
    padding: 2.5em 0 2em;
  }

  .about_open tr>* {
    font-size: 1.8rem;
    width: 9.5%;
  }

  .about_open tr>*:first-child {
    width: 24%;
  }

  .about_open p {
    font-size: 1.8rem;
  }
}

.about_gallery {
  padding-top: 4.5em;
  text-align: center;
}

.about_gallery ul {
  margin-top: 2em;
  margin-left: -9%;
}

.about_gallery li {
  float: left;
  width: 24.3%;
  margin-left: 9%;
}

.about_gallery li .btn {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding-top: 3em;
  opacity: 0;
  transition: opacity .2s ease-in;
  -webkit-transition: opacity .2s ease-in;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
}

.about_gallery li .btn img {
  display: block;
  margin: 0 auto 1em;
  width: 2.78em;
}

.about_gallery li p {
  font-size: 1.6rem;
  margin: .5em 0 1.5em;
}

.about_gallery li a {
  display: block;
  position: relative;
}

.about_gallery li a>img {
  width: 100%;
  display: block;
}

.about_gallery li a:hover {
  opacity: 1;
}

.about_gallery li a:hover .btn {
  opacity: 1;
}

@media all and (max-width: 767px) {
  .about_gallery {
    padding-top: 2.5em;
  }

  .about_gallery ul {
    margin-left: -5%;
  }

  .about_gallery li {
    width: 45%;
    margin-left: 5%;
  }

  .about_gallery li .btn {
    font-size: 2rem;
  }

  .about_gallery li p {
    font-size: 1.8rem;
  }
}

.low_head {
  background: no-repeat center center;
  background-size: cover;
  height: 10em;
  text-align: center;
  padding-top: 1.5em;
  margin-bottom: 4.5em;
}

.low_head .ttl {
  color: #fff;
  font-size: 3.5rem;
  font-weight: bold;
  position: relative;
}

.low_head .ttl:before {
  content: '';
  left: 50%;
  margin-left: -1.5em;
  position: absolute;
  width: 3em;
  border-bottom: solid 2px #fff;
  top: 1.8em;
}

.low_head .ttl span {
  display: block;
  font-size: 80%;
  font-weight: normal;
}

@media all and (max-width: 767px) {
  .low_head {
    padding-top: 1.5em;
    margin-bottom: 4.5em;
  }

  .low_head .ttl {
    font-size: 3.8rem;
  }

  .low_head .ttl span {
    line-height: 1.8;
  }
}

.voice_list dl {
  margin-top: 2em;
}

.voice_list dt {
  font-size: 1.7rem;
  background: #fffbf1;
  border-radius: .5em .5em 0 0;
  border: solid 2px #f0c030;
  padding: .6em 2em .4em;
  line-height: 1.6;
}

.voice_list dt span {
  color: #f0c030;
}

.voice_list dd {
  font-size: 1.5rem;
  padding: 1em 2.3em;
  margin-bottom: 2.5em;
  border: solid 2px #f0c030;
  border-top: none;
  border-radius: 0 0 .5em .5em;
}

.voice_list ul {
  text-align: center;
}

.voice_list li {
  display: inline-block;
  margin: 0 .25em;
  font-size: 1.7rem;
}

.voice_list li>* {
  display: block;
  width: 2.2em;
  height: 2.2em;
  border: solid 1px #f0c030;
  color: #f0c030;
}

.voice_list li img {
  width: .53em;
}

@media all and (max-width: 767px) {
  .voice_list {
    padding-bottom: 4em;
  }

  .voice_list dt {
    font-size: 2rem;
    padding: .4em 1.5em .4em;
  }

  .voice_list dd {
    font-size: 1.8rem;
    padding: 1em 1.6em;
    margin-bottom: 1.5em;
  }

  .voice_list li {
    font-size: 1.8rem;
  }
}

.menu_nav {
  background: #faf6eb;
  margin-top: -4.5em;
  padding: 1.5em 0 .2em;
}

.menu_nav ul {
  margin-left: -10%;
  text-align: center;
}

.menu_nav li {
  float: left;
  width: 23.3%;
  margin-left: 10%;
  border: solid 2px #a5946b;
  border-radius: .3em;
  font-size: 1.6rem;
  margin-bottom: 1.3em;
  padding: 1px;
  white-space: nowrap;
}

.menu_nav a {
  display: block;
  background: #a5946b url(../img/icon_arrow06.png) no-repeat right center;
  background-size: auto 100%;
  color: #fff;
  padding: .3em 1em .2em 0;
}

@media all and (max-width: 767px) {
  .menu_nav {
    padding: 1.5em 0 .5em;
  }

  .menu_nav ul {
    margin-left: -3%;
  }

  .menu_nav li {
    width: 47%;
    margin-left: 3%;
    font-size: 1.9rem;
    margin-bottom: 1em;
  }
}

.menu_box {
  border: solid 2px #a5946b;
  border-radius: .3em;
  margin-top: 2.5em;
}

.menu_box .inner {
  padding: 2.5em 2.5em;
}

.menu_box .head {
  text-align: center;
  font-size: 2.5rem;
  background: #d84f3f;
  padding: .25em 0;
}

.menu_box .head span {
  display: block;
  color: #fff;
  border-top: dashed 1px #fff;
  border-bottom: dashed 1px #fff;
  line-height: 1.4;
  padding-top: .1em;
}

.menu_box .head.pop {
  background: #159191;
}

.menu_box .u_left {
  width: 46.9%;
}

.menu_box .u_right {
  width: 46.9%;
}

.menu_box .ttl {
  color: #a5946b;
  border-bottom: solid 2px #a5946b;
  font-size: 2.4rem;
  position: relative;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: .5em;
}

.menu_box .ttl * {
  line-height: inherit;
}

.menu_box .ttl span {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  font-size: 1.6rem;
}

.menu_box .ttl em {
  font-size: 2.4rem;
  padding: 0 .3em;
}

.menu_box .desc {
  background: #faf6eb;
  padding: .6em;
  margin-top: 1em;
}

.menu_box .desc dt {
  color: #fff;
  background: url(../img/menu_ttl_bg01.png) no-repeat left center;
  background-size: 9.6875em;
  font-size: 1.6rem;
  padding: 0 1.5em;
}

.menu_box .desc dd {
  font-size: 1.4rem;
  padding: 1em 1em 0;
}

.menu_box .desc dd a {
  text-decoration: underline;
}

.menu_box .bui {
  display: inline-block;
  color: #fff;
  background: #a5946b;
  border-radius: 2em;
  font-size: 1.6rem;
  padding: .6em 1.5em .5em;
  line-height: 1;
  margin-bottom: 1em;
}

.menu_box .bui+p {
  font-size: 1.4rem;
  margin-bottom: 1em;
}

.menu_box .link {
  text-align: center;
  margin-top: 1.5em;
}

.menu_box .link a {
  display: block;
  border-radius: .3em;
  font-size: 2.2rem;
  color: #fff;
  padding: .1em 4em .1em 1.5em;
  position: relative;
  background: #f0c030;
}

.menu_box .link a:before {
  content: '';
  position: absolute;
  right: 3em;
  top: 0;
  background: url(../img/icon_arrow03.png) no-repeat center center;
  background-size: contain;
  width: .91em;
  height: 100%;
}

.menu_box .link a img {
  width: 1.1em;
  vertical-align: middle;
  margin-right: 1em;
}

.menu_box .line {
  border-bottom: solid 2px #a5946b;
  margin: 1em 0 1.5em;
}

.menu_box .ttl2 {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: .5em;
  position: relative;
  line-height: 1.6;
}

.menu_box .ttl2 img {
  width: 1.273em;
  vertical-align: -15%;
  margin-right: .4em;
}

.menu_box .ttl2 span {
  font-size: 1.2rem;
  position: absolute;
  right: 0;
  top: 1em;
}

.menu_box .ttl2+p {
  font-size: 1.4rem;
}

.menu_box .adv {
  margin: 2em 0;
}

.menu_box .adv dt {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: .5em;
}

.menu_box .adv dd {
  font-size: 1.4rem;
}

.menu_box .adv dd strong {
  display: inline-block;
  border-bottom: solid 2px #a5946b;
  line-height: 1.6;
  margin-top: 1em;
  padding-right: 3em;
}

.menu_box .movie .ttl2 img {
  width: 1.541em;
}

.menu_box .movie p {
  font-size: 1.4rem;
}

.menu_box .movie .u_right {
  margin-top: 1em;
  height: 0;
  padding-top: 22.5%;
  width: 40%;
  position: relative;
}

.menu_box .movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.menu_box .list {
  margin-bottom: 1.5em;
}

.menu_box .list li {
  font-size: 1.4rem;
  text-indent: -1em;
  margin-left: 1em;
}

.menu_box .list+p {
  font-size: 1.4rem;
}

.menu_box .img {
  margin-left: -1.5%;
  margin-bottom: .5em;
}

.menu_box .img li {
  float: left;
  width: 23.5%;
  margin-left: 1.5%;
  text-align: center;
}

.menu_box .img li .btn {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding-top: 1.3em;
  opacity: 0;
  transition: opacity .2s ease-in;
  -webkit-transition: opacity .2s ease-in;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
}

.menu_box .img li .btn img {
  display: block;
  margin: 0 auto 1em;
  width: 2.78em;
}

.menu_box .img li p {
  font-size: 1.6rem;
  margin: .5em 0 1em;
}

.menu_box .img li a {
  display: block;
  position: relative;
}

.menu_box .img li a>img {
  width: 100%;
  display: block;
}

.menu_box .img li a:hover {
  opacity: 1;
}

.menu_box .img li a:hover .btn {
  opacity: 1;
}

@media all and (max-width: 767px) {
  .menu_box {
    margin-top: 2em;
  }

  .menu_box .inner {
    padding: 1.5em 1.5em 0;
  }

  .menu_box .head {
    font-size: 2.8rem;
  }

  .menu_box .u_left {
    margin-bottom: 2em;
  }

  .menu_box .u_left>img {
    width: 80%;
    margin: 0 auto;
    display: block;
  }

  .menu_box .u_right {
    margin-bottom: 2em;
  }

  .menu_box .u_right>img {
    width: 80%;
    margin: 0 auto;
    display: block;
  }

  .menu_box .ttl {
    font-size: 2.7rem;
  }

  .menu_box .ttl span {
    font-size: 1.8rem;
  }

  .menu_box .ttl em {
    font-size: 2.7rem;
  }

  .menu_box .desc {
    padding: .8em;
  }

  .menu_box .desc dt {
    font-size: 2rem;
  }

  .menu_box .desc dd {
    font-size: 1.8rem;
  }

  .menu_box .bui {
    margin-top: .3em;
    font-size: 2rem;
  }

  .menu_box .bui+p {
    font-size: 1.8rem;
  }

  .menu_box .link a {
    font-size: 2.4rem;
  }

  .menu_box .line {
    border-bottom: solid 2px #a5946b;
    margin: 1em 0 1.5em;
  }

  .menu_box .ttl2 {
    font-size: 2.4rem;
  }

  .menu_box .ttl2 span {
    position: static;
    display: block;
    text-align: right;
    font-size: 1.5rem;
  }

  .menu_box .ttl2+p {
    font-size: 1.8rem;
  }

  .menu_box .adv {
    margin: 2em 0;
  }

  .menu_box .adv dt {
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: .8em;
  }

  .menu_box .adv dd {
    font-size: 1.8rem;
  }

  .menu_box .adv dd strong {
    display: block;
    padding-right: 0;
  }

  .menu_box .movie p {
    font-size: 1.8rem;
  }

  .menu_box .movie .u_right {
    padding-top: 56.3%;
    margin-top: -1em;
  }

  .menu_box .list li {
    font-size: 1.8rem;
  }

  .menu_box .list+p {
    font-size: 1.8rem;
  }

  .menu_box .img {
    margin-left: -5%;
  }

  .menu_box .img li {
    width: 45%;
    margin-left: 5%;
  }

  .menu_box .img li .btn {
    font-size: 2rem;
  }

  .menu_box .img li p {
    font-size: 1.8rem;
  }
}

/*--------------------------------------------------------------
Utility
--------------------------------------------------------------*/
.u_visible_sp {
  display: none;
}

.u_inner {
  max-width: 1020px;
  margin: 0 auto;
  padding: 0 1em;
}

.u_clearfix:after,
.u_clearfix>li:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
}

* html .u_clearfix,
* html .u_clearfix>li {
  zoom: 1;
}

*+html .u_clearfix,
*+html .u_clearfix li {
  zoom: 1;
}

.u_left {
  float: left;
}

.u_right {
  float: right;
}

.u_center {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

@media all and (max-width: 767px) {
  .u_visible_sp {
    display: inherit;
  }

  .u_visible_pc {
    display: none;
  }

  .u_inner {
    width: auto;
    margin: 0 4%;
    padding: 0;
  }

  .u_left {
    float: none;
    width: auto !important;
  }

  .u_right {
    float: none;
    width: auto !important;
  }
}

/*# sourceMappingURL=style.css.map */