@charset "UTF-8";
@import url(vendor/common.css);
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}

@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}

/* version */
html {
  font-size: 62.5%;
  overflow-x: hidden;
}

body {
  background: #fff;
  font-family: "Noto Sans JP", "-apple-system", BlinkMacSystemFont, "Helvetica Neue", Roboto, "Droid Sans", Arial, "Yu Gothic", YuGothic, Meiryo, sans-serif;
  font-size: 14px;
  font-size: 1.4em;
  line-height: 1.4;
  color: #111111;
  height: auto !important;
  overflow: hidden;
}

main {
  overflow: hidden;
}

figure {
  margin: 0;
  text-align: center;
}

figure figcaption {
  margin-top: 0.5em;
  text-align: left;
}

a {
  color: #111111;
  text-decoration: underline;
}

a:hover {
  color: #111111;
  text-decoration: none;
}

.highlight a {
  color: #111111;
}

.highlight a:hover {
  color: #111111;
}

img {
  vertical-align: middle;
}

img.circle {
  border-radius: 50%;
}

p {
  margin: 0.5em 0 1em;
}

p:first-child {
  margin-top: 0;
}

p:last-child {
  margin-bottom: 0;
}

ol,
ul {
  margin: 0 0 1em;
  padding: 0 0 0 2.5em;
  line-height: 1.6;
}

ol:last-child,
ul:last-child {
  margin-bottom: 0;
}

ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0.5em 0;
  padding-left: 2em;
}

ol ol:last-child,
ol ul:last-child,
ul ol:last-child,
ul ul:last-child {
  margin-bottom: 0.5em;
}

ul.list-unstyled {
  padding-left: 0;
  list-style: none;
}

ul.list-unstyled ol,
ul.list-unstyled ul {
  padding-left: 2em;
}

ul.list-inline {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-left: -7px;
  font-size: 0px;
  font-size: 0rem;
  margin-bottom: 14px;
}

ul.list-inline > li {
  display: inline;
  padding-left: 7px;
  padding-right: 7px;
  white-space: nowrap;
  font-size: 14px;
  font-size: 1.4rem;
}

dl {
  margin: 0 0 1em;
  line-height: 1.6;
}

dl:last-child {
  margin-bottom: 0;
}

dl dt {
  font-weight: bold;
}

dl dd {
  margin-left: 0;
  margin-bottom: 0.5em;
}

dl dd:last-child {
  margin-bottom: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

main section {
  margin-bottom: 10%;
}

main section.highlight:last-child {
  margin-bottom: 0;
  padding-bottom: 10%;
}

.sp-mask {
  transition: none !important;
}

.highlight {
  padding: 4% 0;
  background: rgba(17, 17, 17, 0.05);
  color: #111111;
}

#swipebox-overlay {
  z-index: 10000002 !important;
}

@media (min-width: 768px) {
  p {
    margin: 0.5em 0 1em;
  }
  dl.dl-horizontal {
    overflow: hidden;
  }
  dl.dl-horizontal dt {
    float: left;
    clear: left;
    margin-right: 1em;
  }
  dl.dl-horizontal dd {
    float: left;
  }
  main section {
    margin-bottom: 7%;
  }
  main section:last-child {
    margin-bottom: 9%;
  }
  main section.highlight:last-child {
    margin-bottom: 0;
    padding-bottom: 8%;
  }
}

@media (max-width: 767px) {
  .tile:not(.sp-tile) > * {
    height: auto !important;
  }
}

@media (min-width: 768px) {
  .gutters .row.row_inline {
    letter-spacing: -.40em;
  }
  .gutters .row.row_inline > .col {
    letter-spacing: normal;
    vertical-align: top;
    display: inline-block;
    float: none;
    margin-bottom: 5%;
  }
  .gutters .row.row_inline .span_1:nth-child(12n+1) {
    margin-left: 0;
  }
  .gutters .row.row_inline .span_2:nth-child(6n+1) {
    margin-left: 0;
  }
  .gutters .row.row_inline .span_3:nth-child(4n+1) {
    margin-left: 0;
  }
  .gutters .row.row_inline .span_4:nth-child(3n+1) {
    margin-left: 0;
  }
  .gutters .row.row_inline .span_5:nth-child(2n+1) {
    margin-left: 0;
  }
  .gutters .row.row_inline .span_6:nth-child(2n+1) {
    margin-left: 0;
  }
  .gutters .row.row_inline .span_7 {
    width: 57.5%;
  }
  .gutters .row.row_inline .span_8 {
    width: 66%;
  }
  .gutters .row.row_inline .span_9 {
    width: 74.5%;
  }
  .gutters .row.row_inline .span_10 {
    width: 83%;
  }
  .gutters .row.row_inline .span_11 {
    width: 91.5%;
  }
  .gutters .row.row_inline .span_12 {
    width: 100%;
  }
}

main .column_main,
main .column_sub {
  overflow: hidden;
  min-height: 100px;
}

main .column_main .widget_header,
main .column_sub .widget_header {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 0.5em;
  margin-bottom: 0;
}

main .column_main .widget_header + *:not(.calendar_wrap),
main .column_sub .widget_header + *:not(.calendar_wrap) {
  padding: 0;
  margin: 0 auto 1em;
}

main .column_main .widget_header + .textwidget,
main .column_sub .widget_header + .textwidget {
  padding: 10px 0;
}

main .column_main .widget_wrap .menu,
main .column_main .widget_wrap > ul,
main .column_sub .widget_wrap .menu,
main .column_sub .widget_wrap > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

main .column_main .widget_wrap .menu ul,
main .column_main .widget_wrap > ul ul,
main .column_sub .widget_wrap .menu ul,
main .column_sub .widget_wrap > ul ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

main .column_main .widget_wrap .menu li,
main .column_main .widget_wrap > ul li,
main .column_sub .widget_wrap .menu li,
main .column_sub .widget_wrap > ul li {
  padding: 0.5em 0.7em;
  border-bottom: 1px solid #ccc;
}

main .column_main .widget_wrap .menu li:last-child,
main .column_main .widget_wrap > ul li:last-child,
main .column_sub .widget_wrap .menu li:last-child,
main .column_sub .widget_wrap > ul li:last-child {
  border-bottom: 0;
}

main .column_main .widget_wrap .menu li a,
main .column_main .widget_wrap > ul li a,
main .column_sub .widget_wrap .menu li a,
main .column_sub .widget_wrap > ul li a {
  display: block;
  text-decoration: none;
}

main .column_main .widget_wrap .menu li a:hover,
main .column_main .widget_wrap > ul li a:hover,
main .column_sub .widget_wrap .menu li a:hover,
main .column_sub .widget_wrap > ul li a:hover {
  text-decoration: underline;
}

main .column_main .widget_wrap ul > li.page_item,
main .column_sub .widget_wrap ul > li.page_item {
  border-bottom: #ccc solid 1px;
}

main .column_main .widget_wrap ul > li.page_item.page_item_has_children,
main .column_sub .widget_wrap ul > li.page_item.page_item_has_children {
  padding: 0.5em 0.7em 0.2em !important;
}

main .column_main .widget_wrap ul > li.page_item .children,
main .column_sub .widget_wrap ul > li.page_item .children {
  border-top: #eee solid 1px;
  margin: 0.5em 0 0 !important;
}

main .column_main .widget_wrap ul > li.page_item .children li,
main .column_sub .widget_wrap ul > li.page_item .children li {
  font-weight: normal;
  border-bottom: #eee solid 1px;
  font-size: 96%;
  padding: 0.5em 0.7em 0.5em 1em;
  position: relative;
}

main .column_main .widget_wrap ul > li.page_item .children li:before,
main .column_sub .widget_wrap ul > li.page_item .children li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 15px;
  width: 5px;
  height: 5px;
  background: rgba(54, 46, 43, 0.4);
  border-radius: 2.5px;
}

main .column_main .widget_wrap ul > li.page_item .children li li:before,
main .column_sub .widget_wrap ul > li.page_item .children li li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  width: 5px;
  height: 5px;
  background: rgba(54, 46, 43, 0.15);
  border-radius: 0;
}

@media (max-width: 900px) {
  .gutters .span_3.column_sub,
  .gutters .span_9.column_main {
    float: none;
    width: 100%;
    margin-left: 0;
  }
}

@media (min-width: 600px) and (max-width: 900px) {
  .gutters .span_3.column_sub .sidebar {
    letter-spacing: -.40em;
  }
  .gutters .span_3.column_sub .sidebar .widget_wrap {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: top;
    width: 49%;
    margin-left: 2%;
  }
  .gutters .span_3.column_sub .sidebar .widget_wrap:nth-child(2n+1) {
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 1000px;
  }
}

@media (min-width: 1024px) {
  .container {
    padding: 0 10px;
  }
}

.article_button {
  margin-top: 5%;
}

@media (min-width: 768px) {
  .article_detail:not(.reverse) .col.span_12 + .span_4,
  .article_list:not(.reverse) .col.span_12 + .span_4 {
    margin-left: 0;
  }
  .article_detail.reverse .col.span_12,
  .article_list.reverse .col.span_12 {
    margin-left: 0;
  }
}

.sidebar {
  visibility: hidden;
}

.sidebar > .widget_wrap {
  visibility: visible;
}

.gutters .col.span_12 + .span_12 {
  margin-left: 0;
}

.sitemap {
  padding: 0;
  margin: 0;
  border-top: 1px solid #ccc;
}

.sitemap li {
  list-style: none;
  padding: 10px 0 10px 15px;
  border-bottom: 1px solid #ccc;
}

.sitemap li > ul {
  padding: 0;
  border-top: #ccc solid 1px;
}

.sitemap li > ul > li {
  border-bottom: 1px solid #ccc;
  position: relative;
}

.sitemap li > ul > li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 25px;
  width: 6px;
  height: 6px;
  background: #ccc;
  border-radius: 3px;
}

.sitemap li > ul > li:last-child {
  border-bottom: none;
  padding: 10px 0 0 15px;
}

.sitemap li > ul > li .children > li {
  padding: 10px 0 0 15px;
}

.sitemap li > ul > li .children > li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 25px;
  width: 6px;
  height: 6px;
  background: #ccc;
  border-radius: 0;
}

.sitemap a {
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: none;
}

.sitemap a:hover {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .sitemap a {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

.parallax_h1 {
  height: 250px;
  position: relative;
}

.parallax_h1:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background: rgba(0, 0, 0, 0.3);
}

.parallax_h1 h1 {
  color: #fff;
}

.parallax_h1 h1:after, .parallax_h1 h1:before {
  background: #fff;
}

@media (min-width: 768px) {
  .parallax_h1 {
    height: 450px;
  }
}

.map_wide #map_canvas,
.map_wide iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map_wide img {
  max-width: none;
}

.slick-track {
  margin: 0 auto;
}

.col dl p {
  line-height: 1.4;
  margin: 0;
}

.col p {
  line-height: 1.8;
}

.container {
  padding: 0 10px;
}

@media (min-width: 1020px) {
  .container {
    padding: 0;
  }
}

.container .container {
  padding: 0;
}

#fb-root,
.fb-page {
  font-family: "lucida grande", tahoma, verdana, arial, "hiragino kaku gothic pro",meiryo,"ms pgothic",sans-serif !important;
}

#swipebox-overlay {
  background: rgba(13, 13, 13, 0.8);
}

img.wp-edited-image[width] {
  width: auto !important;
}

img.wp-edited-image[height] {
  height: auto !important;
}

header {
  position: relative;
  z-index: 100;
  width: 100%;
  background: #fff;
  color: #111111;
}

header .row {
  margin: 0 3%;
}

@media (max-width: 767px) {
  header .container .row {
    margin: 0;
  }
}

header .title {
  margin: 0;
  padding: 10px 0;
  line-height: 1;
}

header .title a {
  display: inline-block;
}

header .title img,
header .title object {
  width: 180px;
  height: 59px;
  max-width: none;
}

@media (max-width: 600px) {
  header .title img,
  header .title object {
    width: 120px;
    height: 39.33333px;
    min-height: 45px;
  }
}

header .global_nav > ul {
  position: absolute;
  z-index: -1;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #b3b3b3;
}

@media (min-width: 768px) {
  header .global_nav > ul {
    left: auto;
    width: 50%;
    max-width: 400px;
  }
}

header .global_nav > ul > li {
  border-bottom: 1px solid #b3b3b3;
}

header .global_nav > ul > li a {
  display: block;
  padding: 1em;
  text-decoration: none;
  color: #fff;
  background: rgba(17, 17, 17, 0.9);
}

header .global_nav > ul > li a:hover {
  color: #fff;
}

header .global_nav > ul > li a:active {
  background: #111;
  color: #fff;
}

header .global_nav > ul > li > a {
  background: rgba(17, 17, 17, 0.9);
}

header .global_nav .menu_icon {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  z-index: 100;
}

header .global_nav .menu_icon a {
  position: relative;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  transition: transform 0.3s;
  overflow: hidden;
}

header .global_nav .menu_icon a:after, header .global_nav .menu_icon a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 4px;
  background: #111;
  transition: transform 0.5s;
}

header .global_nav .menu_icon a:before {
  top: 0;
}

header .global_nav .menu_icon a:after {
  bottom: 0;
}

header .global_nav .menu_icon a span {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 4px;
  background: #111;
  transition: transform 0.5s;
  overflow: hidden;
  text-indent: -9999px;
  white-space: nowrap;
}

header .global_nav .menu_icon a.close:not(.fix) {
  background: none;
}

header .global_nav .menu_icon a.close:not(.fix):before {
  top: 50%;
  transform: translate(0, -50%) rotate(45deg);
  background: #111;
}

header .global_nav .menu_icon a.close:not(.fix):after {
  bottom: 50%;
  transform: translate(0, 50%) rotate(-45deg);
  background: #111;
}

header .global_nav .menu_icon a.close:not(.fix) span {
  transform: translate(100%, -50%);
}

header .global_nav > ul {
  transform-origin: center top;
  visibility: hidden;
  transition: transform 0.3s;
  transform: rotateX(90deg);
}

header.menu_open .global_nav > ul {
  visibility: visible;
  transform: rotateX(0deg);
}

#google_translate_element,
.translate_gt {
  position: absolute;
  top: 50%;
  right: 15%;
  margin-top: -12px;
}

.translate_gt {
  margin-top: -14px;
}

@media (min-width: 769px) {
  header .row {
    table-layout: fixed;
    display: table;
    width: 94%;
  }
}

@media (min-width: 769px) and (max-width: 999px) {
  header .row {
    margin: auto;
    width: 100%;
  }
}

@media (min-width: 769px) {
  header .container {
    max-width: none;
  }
  header .container .row {
    width: auto;
  }
  header .global_nav,
  header .title {
    margin: 0;
    vertical-align: middle;
    height: 100px;
    display: table-cell;
  }
  header .title {
    max-width: none;
    max-width: none;
    padding: 10px 0;
  }
  header .global_nav {
    text-align: right;
    width: 100%;
    padding: 0;
  }
  header .global_nav > ul {
    position: static;
    display: inline-block;
    width: auto;
    border: none;
    background: none;
    visibility: visible;
    font-size: 0px;
    font-size: 0rem;
    transform: none;
    text-align: left;
    overflow: visible;
    max-width: none;
  }
  header .global_nav > ul > li {
    display: inline-block;
    vertical-align: middle;
    border: none;
    line-height: 1.5;
    border-left: 1px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  header .global_nav > ul > li:not(.gnav_search) {
    text-align: center;
  }
  header .global_nav > ul > li:not(.gnav_search) > a {
    position: relative;
  }
  header .global_nav > ul > li:not(:first-child) > a:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 50%;
    background: #111111;
  }
  header .global_nav > ul > li > a {
    display: inline-block;
    vertical-align: middle;
    color: #111111;
    text-decoration: none;
    background: transparent;
    text-align: center;
    transition: 0.3s;
    border-bottom: 2px solid transparent;
    padding: 0.3em 1.5em;
  }
}

@media (min-width: 769px) and (max-width: 900px) {
  header .global_nav > ul > li > a {
    padding: 0.3em 0.5em;
  }
}

@media (min-width: 769px) {
  header .global_nav > ul > li > a:hover {
    border-bottom: 2px solid #111;
    color: #111;
  }
  header .global_nav > ul > li > a:active {
    background: none;
  }
  header .global_nav > ul > li > a span {
    display: block;
    font-size: 12px;
    font-size: 1.2rem;
  }
  header .global_nav .menu_icon {
    display: none;
  }
  #google_translate_element,
  .translate_gt {
    position: static;
    float: right;
    margin-top: 3px;
    margin-left: 1em;
  }
  .translate_gt {
    margin-top: 0;
  }
}

@media (max-width: 768px) {
  header .global_nav > ul > li a > span,
  header .global_nav > ul > li a > br {
    display: none;
  }
}

.hdr_info_wrap {
  display: none;
  position: absolute;
  top: 50%;
  left: auto;
  right: calc(10% + 20px);
  transform: translateY(-50%);
  margin: auto;
}

@media (min-width: 640px) {
  .hdr_info_wrap {
    right: 10%;
  }
}

.hdr_info_wrap .hdr_info_sp a {
  position: relative;
  display: block;
  background: #111;
  border-radius: 50%;
  width: 34px;
  height: 34px;
}

.hdr_info_wrap .hdr_info_sp a img {
  max-width: 17px;
  max-height: 19px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

@media (min-width: 769px) {
  .hdr_info_wrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
  }
  .hdr_info_wrap .hdr_info {
    position: absolute;
    right: 10px;
    top: 35px;
    right: 3%;
  }
}

footer {
  position: relative;
}

footer nav {
  text-align: center;
}

footer nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

footer nav ul li + li {
  border-top: 1px solid #b3b3b3;
}

footer nav a {
  display: block;
  padding: 0.7em 0;
  text-decoration: none;
}

footer nav a:hover {
  text-decoration: underline;
}

footer .footer_copyright_wrap {
  text-align: center;
}

footer .footer_copyright_wrap p {
  padding: 1em 0.3em;
}

@media (min-width: 768px) {
  footer .row:not(:last-child) {
    margin-bottom: 5px;
  }
  footer nav {
    text-align: center;
    padding: 0.7em 0 0;
  }
  footer nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0px;
    font-size: 0rem;
    white-space: normal;
  }
  footer nav ul > li {
    display: inline;
    padding-left: 0;
    padding-right: 0;
    white-space: nowrap;
    font-size: 14px;
    font-size: 1.4rem;
  }
  footer nav ul li {
    line-height: 1.5;
    white-space: normal;
  }
  footer nav ul li + li {
    border: 0;
  }
  footer nav ul li:not(:first-child):before {
    content: "|";
    margin-right: 0.3em;
    margin-left: 0.3em;
  }
  footer nav a {
    display: inline;
    padding: 0;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  footer nav ul li.tablet-break:after {
    content: "\A";
    white-space: pre;
  }
  footer nav ul li.tablet-break + li:before {
    display: none;
  }
}

/*
 * フッターパターンA(footer pattern A)
 */
footer {
  background: #111;
  color: #fff;
}

footer a {
  color: #fff;
}

footer a:hover {
  color: #fff;
}

@media (min-width: 768px) {
  footer .container .row .col {
    float: none;
    width: 100%;
  }
  footer .container .row nav ul {
    display: inline-block;
  }
  footer .container .row nav a {
    display: inline-block;
    padding: 0.3em;
  }
}

.bread_wrap {
  margin-bottom: 2%;
}

.bread {
  overflow: hidden;
  margin: 0;
  font-size: 12px;
  font-size: 1.2rem;
}

.bread ul {
  padding: 1em 0;
  margin: 0 auto;
  float: none;
}

.bread ul li {
  list-style: none;
  position: relative;
  float: left;
  padding-right: 2em;
  margin-right: 1.5em;
}

.bread ul li a {
  text-decoration: none;
  color: #111111;
}

.bread ul li a:hover {
  color: #111111;
  text-decoration: none;
}

.bread ul li:after {
  content: '>';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.bread ul li:last-child {
  padding-right: 0;
  margin-right: 0;
}

.bread ul li:last-child:after {
  content: none;
}

.button, .inquiry .wpcf7-submit {
  display: inline-block;
  min-width: 0px;
  margin: 0;
  padding: 1em 1em;
  border: 0;
  border-radius: 4px;
  line-height: 1;
  background: #111;
  color: #fff;
  text-align: center;
  text-decoration: none;
  -webkit-appearance: none;
          appearance: none;
  transition: .3s;
}

.button:hover, .inquiry .wpcf7-submit:hover {
  background: #ced4d2;
  color: #111;
}

.highlight .button, .highlight .inquiry .wpcf7-submit, .inquiry .highlight .wpcf7-submit {
  color: #fff;
}

.highlight .button:hover, .highlight .inquiry .wpcf7-submit:hover, .inquiry .highlight .wpcf7-submit:hover {
  color: #111;
}

.button.block, .inquiry .block.wpcf7-submit {
  display: block;
  min-width: 0;
}

.button.inverse, .inquiry .inverse.wpcf7-submit {
  border: 0;
  border-radius: 4px;
  background: #000;
  color: #fff;
}

.button.inverse:hover, .inquiry .inverse.wpcf7-submit:hover {
  background: #1a1a1a;
  color: #fff;
}

.button.cancel, .inquiry .cancel.wpcf7-submit {
  background: #888;
  color: #fff;
}

.button.cancel:hover, .inquiry .cancel.wpcf7-submit:hover {
  background: #6f6f6f;
}

.button.large, .inquiry .large.wpcf7-submit {
  padding: 1em 2em;
  font-size: 16px;
  font-size: 1.6rem;
}

.button + .button, .inquiry .wpcf7-submit + .button, .inquiry .button + .wpcf7-submit, .inquiry .wpcf7-submit + .wpcf7-submit {
  margin-left: 0.5em;
}

.button span, .inquiry .wpcf7-submit span {
  line-height: 1;
  padding-left: 20px;
  background: url(/wp-content/uploads/btn_icon.png) left center no-repeat;
  background-size: auto 14px;
}

/* お問い合わせフォーム(form liên lạc) */
.inquiry fieldset {
  margin: 0;
  padding: 20px 10px;
  border: 0;
  background: rgba(17, 17, 17, 0.05);
}

.inquiry fieldset .row {
  margin: 0;
}

.inquiry dl {
  margin: 0;
  padding: 0;
}

.inquiry dt {
  font-weight: normal;
}

.inquiry dt.col:not(:last-child) {
  margin-bottom: 1em;
}

.inquiry dd {
  margin: 0;
  padding: 0;
}

.inquiry dd:last-child {
  padding-bottom: 0;
}

.inquiry dd .confirm {
  padding: 0 0 1em 1em;
  border-bottom: 1px dashed #ccc;
}

.inquiry input[type="text"],
.inquiry input[type="url"],
.inquiry input[type="email"],
.inquiry input[type="tel"],
.inquiry input[type="date"],
.inquiry input[type="number"],
.inquiry select,
.inquiry textarea {
  width: 100%;
  padding: 5px;
  color: #000;
  font-size: 16px;
  font-size: 1.6rem;
}

.inquiry input[type="number"] {
  width: 65px;
  text-align: center;
}

.inquiry input.p-postal-code {
  width: 100px;
}

.inquiry input.p-region {
  width: 100px;
}

.inquiry input.p-locality {
  width: 150px;
}

.inquiry input.p-street-address {
  width: 100%;
}

.inquiry input.p-extended-address {
  width: 100%;
}

.inquiry .submit {
  margin: 1em 0;
  text-align: center;
}

.inquiry .submit .button, .inquiry .submit .wpcf7-submit {
  display: block;
  margin: 0 auto 10px;
}

.inquiry .required {
  color: #f00;
}

.inquiry label {
  display: block;
  margin-bottom: 0.5em;
}

@media (min-width: 768px) {
  .inquiry {
    max-width: 780px;
    margin-right: auto;
    margin-left: auto;
  }
  .inquiry fieldset {
    margin: 0;
    padding: 60px;
    border: 0;
  }
  .inquiry dt {
    clear: both;
    padding: 6px 0;
  }
  .inquiry dd {
    padding-bottom: 1.5em;
  }
  .inquiry dd .confirm {
    min-height: 1.5em;
    padding: 6px 0 0;
    border: 0;
    line-height: 1.4;
  }
  .inquiry input[type="text"],
  .inquiry input[type="url"],
  .inquiry input[type="email"],
  .inquiry input[type="tel"],
  .inquiry input[type="date"],
  .inquiry input[type="text"],
  .inquiry select {
    width: 60%;
  }
  .inquiry input[type="number"] {
    width: 65px;
  }
  .inquiry input.p-postal-code {
    width: 100px;
  }
  .inquiry input.p-region {
    width: 100px;
  }
  .inquiry input.p-locality {
    width: 150px;
  }
  .inquiry input.p-street-address {
    width: 100%;
  }
  .inquiry input.p-extended-address {
    width: 100%;
  }
  .inquiry textarea {
    width: 100%;
  }
  .inquiry .submit {
    margin: 60px 0 0;
  }
  .inquiry label {
    display: inline-block;
    margin-top: 6px;
    margin-bottom: 0;
    margin-right: 0.8em;
  }
  .gutters .inquiry dt.col {
    margin-left: 0;
  }
}

.movie {
  position: relative;
  overflow: hidden;
  height: 0;
  padding-top: 56.25%;
}

.movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.movie.ar16to9 {
  padding-top: 56.25%;
}

.movie.ar4to3 {
  padding-top: 75%;
}

.news .news_bg {
  background: rgba(17, 17, 17, 0.05);
}

.news.typeC .news_bg {
  padding: 1em;
}

.news h2 {
  color: #111111;
}

.news dl {
  margin: 0;
  overflow-y: auto;
  max-height: 300px;
}

.news dl dt {
  margin: 0.5em 0 0;
  padding: 0 1em;
  font-weight: normal;
}

.news dl dd {
  margin: 0.5em 0;
  padding: 0 1em 0.5em;
  border-bottom: 1px solid #ccc;
}

.news dl dd a {
  text-decoration: none;
}

.news dl dd a:hover {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .news.typeA > div {
    display: table;
    width: 100%;
    margin: 0 auto;
  }
  .news.typeA > div .heading {
    display: table-cell;
    width: 23.5%;
    vertical-align: middle;
  }
  .news.typeA h2 {
    margin: 0;
    padding: 0;
  }
  .news.typeA h2:after {
    display: none;
  }
  .news.typeA .content {
    display: table-cell;
    overflow: hidden;
    width: 74.5%;
    padding-left: 2%;
    vertical-align: middle;
  }
  .news.typeC .news_bg {
    height: 540px;
    padding: 20px;
  }
  .news.typeC dl {
    max-height: 500px;
  }
  .news dl {
    overflow-y: auto;
    max-height: 200px;
  }
  .news dl dt {
    width: 100px;
    clear: left;
    float: left;
    margin: 0;
    padding: 1em 0 1em 1em;
  }
  .news dl dd {
    margin: 0;
    padding: 1em 0 1em 0;
  }
  .news dl dt + dd {
    padding-left: 120px;
  }
}

.parallax {
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}

.parallax.ios {
  background-attachment: scroll;
}

.parallax .parallax_contents {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.parallax .parallax_contents h1, .parallax .parallax_contents .h1 {
  margin: 0;
  padding: 1em 0;
}

.shopinfo figure {
  max-width: 80%;
  margin: 0 auto;
}

.shopinfo address {
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
  font-style: normal;
}

.shopinfo dl {
  margin: 2em 0;
  line-height: 1.4;
}

.shopinfo dl:first-child {
  margin-top: 0;
}

.shopinfo dl dt {
  margin: 0 0 0.2em 0;
  font-weight: normal;
}

.shopinfo dl dt:before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 3px;
  margin-right: 0.3em;
  vertical-align: middle;
  background: #111;
}

.shopinfo dl dd {
  margin: 0 0 0.5em 1em;
  padding: 0;
}

.shopinfo .map_container {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 90%;
}

.shopinfo .map_container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.shopinfo .map_container + p {
  margin-top: 2em;
}

.map_wide {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 90%;
}

.map_wide iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

body.scroll .googlemap {
  pointer-events: none;
}

@media (min-width: 768px) {
  .shopinfo figure {
    max-width: 100%;
  }
  .shopinfo address {
    margin-bottom: 15px;
    text-align: left;
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1;
  }
  .shopinfo dl.dl-horizontal {
    margin: 10px 0;
  }
  .shopinfo dl.dl-horizontal dd {
    margin-bottom: 0.3em;
  }
  .shopinfo .map_container {
    padding-top: 70%;
  }
  .shopinfo .span_12 .map_container, .shopinfo .span12 .map_container {
    padding-top: 50%;
  }
  .map_wide {
    padding-top: 420px;
  }
}

@media (max-width: 767px) {
  .sp_image_cols:not(.sp_col2):not(.sp_col3) .col:not(:last-child) {
    margin-bottom: 1em;
  }
  .sp_image_cols:not(.sp_col2):not(.sp_col3) .col figure {
    overflow: hidden;
  }
  .sp_image_cols:not(.sp_col2):not(.sp_col3) .col figure img {
    float: left;
    width: 32%;
    margin-bottom: 10px;
    vertical-align: middle;
  }
  .sp_image_cols:not(.sp_col2):not(.sp_col3) .col figure figcaption {
    float: right;
    width: 66%;
    margin-top: 0;
    vertical-align: middle;
  }
  .sp_image_cols.sp_col2 .col {
    width: 49%;
  }
  .sp_image_cols.sp_col2 .col:nth-child(odd) {
    clear: both;
    float: left;
  }
  .sp_image_cols.sp_col2 .col:nth-child(even) {
    float: right;
  }
  .sp_image_cols.sp_col3 .col {
    float: left;
    width: 32%;
  }
  .sp_image_cols.sp_col3 .col:nth-child(3n+1) {
    clear: both;
    margin-right: 2%;
  }
  .sp_image_cols.sp_col3 .col:nth-child(3n) {
    float: right;
  }
  .sp_image_left {
    overflow: hidden;
  }
  .sp_image_left .col:first-child {
    display: inline-block;
    float: left;
    width: 32%;
    margin-right: 2%;
    margin-bottom: 0.5em;
  }
  .sp_image_left .col:last-child {
    float: none;
  }
  .sp_image_right {
    overflow: hidden;
  }
  .sp_image_right .col:first-child {
    display: inline-block;
    float: right;
    width: 32%;
    margin-left: 2%;
    margin-bottom: 0.5em;
  }
  .sp_image_right .col:last-child {
    float: none;
  }
}

table {
  margin: 0 auto;
}

table td,
table th {
  padding: 0.7em 1em;
}

@media (max-width: 767px) {
  table td,
  table th {
    padding: 0.7em .3em;
  }
}

table th {
  text-align: center;
  font-weight: normal;
}

.table-default {
  width: 100%;
}

.table-default caption {
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
}

.table-default td,
.table-default th {
  border: 1px solid #111;
}

.table-default th {
  background: rgba(17, 17, 17, 0.7);
  color: #fff;
}

.table-default td {
  background: transparent;
}

.table-menu {
  width: 100%;
}

.table-menu caption {
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
}

.table-menu td,
.table-menu th {
  padding: 0.7em 1em;
  border-top: 1px solid #111;
  border-bottom: 1px solid #111;
}

@media (max-width: 767px) {
  .table-menu td,
  .table-menu th {
    padding: 0.7em .3em;
  }
}

.table-menu tbody th {
  text-align: left;
}

.table-menu td:last-child {
  text-align: right;
  white-space: nowrap;
}

.table-schedule {
  width: 100%;
}

.table-schedule caption {
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
}

.table-schedule td,
.table-schedule th {
  border: 1px solid #111;
  padding: 0.7em 1em;
  text-align: center;
}

@media (max-width: 767px) {
  .table-schedule td,
  .table-schedule th {
    padding: 0.7em .3em;
  }
}

.table-schedule thead th {
  background: rgba(17, 17, 17, 0.7);
  color: #fff;
}

.table-schedule tbody th {
  background: transparent;
}

.table-schedule td {
  background: transparent;
}

.table-summary {
  border-top: 1px solid #111;
  width: 100%;
}

.table-summary caption {
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
}

.table-summary td,
.table-summary th {
  padding: 1em;
  border-bottom: 1px solid #111;
}

.table-summary th {
  text-align: left;
  font-weight: normal;
  width: 20%;
}

@media (max-width: 767px) {
  .responsive-stack {
    display: block;
  }
  .responsive-stack thead {
    display: none;
  }
  .responsive-stack tbody,
  .responsive-stack td,
  .responsive-stack th,
  .responsive-stack tr {
    display: block;
  }
  .responsive-stack td,
  .responsive-stack th {
    width: 100% !important;
  }
  .responsive-stack tr:not(:last-child) td,
  .responsive-stack tr:not(:last-child) th {
    border-bottom: 0;
  }
  .responsive-stack tr:last-child :not(:last-child) {
    border-bottom: 0;
  }
}

@media (max-width: 767px) {
  .responsive-list {
    display: block;
  }
  .responsive-list thead {
    display: none;
  }
  .responsive-list tbody,
  .responsive-list td,
  .responsive-list th,
  .responsive-list tr {
    display: block;
  }
  .responsive-list tr:not(:last-child) td {
    border-bottom: 0;
  }
  .responsive-list td {
    position: relative;
    padding-left: 40%;
    white-space: normal;
    text-align: left;
  }
  .responsive-list td:first-child {
    border-bottom: 0;
  }
  .responsive-list td:last-child {
    border-top: 0;
  }
  .responsive-list td:not(:first-child):not(:last-child) {
    border-top: 0;
    border-bottom: 0;
  }
  .responsive-list td:before {
    content: attr(data-title);
    position: absolute;
    top: 6px;
    left: 6px;
    width: 35%;
    padding-right: 10px;
    white-space: normal;
    text-align: left;
    font-weight: bold;
  }
}

h1:not(.title) {
  text-align: center;
  position: relative;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: normal;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  padding: 0.77em 10px;
  color: #111111;
  background: url("./images/h1_bg.jpg") center center;
  margin: 0 0 .5em;
}

h1:not(.title) a {
  text-decoration: none;
}

h1:not(.title) a:hover {
  text-decoration: underline;
}

h1:not(.title) span {
  display: block;
  font-size: 22px;
  font-size: 2.2rem;
}

@media (max-width: 767px) {
  h1:not(.title) {
    font-size: 22px;
    font-size: 2.2rem;
  }
  h1:not(.title):after {
    height: 2px;
  }
  h1:not(.title) span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

h2 {
  display: block;
  margin: 0 auto 0.8em;
  position: relative;
  text-align: center;
  border: 0;
  word-wrap: break-word;
  font-weight: normal;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  font-size: 28px;
  font-size: 2.8rem;
  color: #111111;
}

h2 a {
  text-decoration: none;
}

h2 a:hover {
  text-decoration: underline;
}

h2:after {
  content: '';
  display: block;
  width: 70px;
  height: 3px;
  margin: 10px auto 0;
  background: #87c6c5;
}

@media (max-width: 767px) {
  h2 {
    font-size: 20px;
    font-size: 2rem;
  }
  h2:after {
    width: 50px;
    margin-top: 5px;
  }
}

h3 {
  margin: 0 0 0.5em;
  padding-bottom: 5px;
  color: #111111;
  font-weight: normal;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  font-size: 20px;
  font-size: 2rem;
  position: relative;
  border-bottom: dotted 1px #111111;
}

h3 a {
  text-decoration: none;
}

h3 a:hover {
  text-decoration: underline;
}

@media (max-width: 767px) {
  h3 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

h4 {
  margin: 0 0 0.5em;
  padding-left: 13px;
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  color: #111111;
  font-weight: normal;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

h4 a {
  text-decoration: none;
}

h4 a:hover {
  text-decoration: underline;
}

h4:after {
  content: '';
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  display: block;
  width: 7px;
  height: 3px;
  margin: auto;
  background: #87c6c5;
}

@media (max-width: 767px) {
  h4 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.widget_wrap .widget_header {
  font-size: 16px;
  font-size: 1.6rem;
  color: #111111;
  padding: 0.7em 0 0.7em 1em;
  background: rgba(17, 17, 17, 0.05);
}

.widget_wrap .widget_header a {
  text-decoration: none;
}

.widget_wrap .widget_header a:hover {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .widget_wrap .widget_header {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.main_visual {
  position: relative;
  table-layout: fixed;
}

.main_visual .main_visual_slick,
.main_visual .slick-track {
  margin: 0;
  padding: 0;
  list-style: none;
  height: 100% !important;
}

.main_visual .slick-track {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.main_visual .slick-list {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 100%;
}

.main_visual .main_visual_slick {
  position: relative;
  margin: 0 auto;
}

.main_visual .main_visual_slick li:not([id^="slick-slide"]) {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  overflow: hidden;
}

.main_visual .main_visual_slick li:not([id^="slick-slide"]):not(.slick-active) {
  transition-delay: 0.5s !important;
}

.main_visual .main_visual_slick li:not([id^="slick-slide"]) img {
  position: absolute;
  left: -300%;
  right: -300%;
  margin: auto;
  top: 0;
  height: 100%;
}

.main_visual .main_visual_copy {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 1000px;
  max-width: 100%;
  margin: 0 auto;
  z-index: 53;
}

.main_visual .main_visual_copy > li {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.main_visual .main_visual_copy > li img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 56%;
  max-width: 560px;
  max-height: 560px;
  z-index: 52;
}

.main_visual .main_visual_arrow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 1000px;
  max-width: 100%;
  margin: 0 auto;
  z-index: 53;
}

.main_visual .main_visual_arrow .slick-prev {
  left: 25px;
}

.main_visual .main_visual_arrow .slick-next {
  right: 25px;
}

.main_visual .main_visual_arrow .slick-prev:before,
.main_visual .main_visual_arrow .slick-next:before {
  font-size: 30px;
  font-size: 3rem;
}

@media (max-width: 639px) {
  .main_visual .main_visual_arrow .slick-prev {
    left: 10px;
  }
  .main_visual .main_visual_arrow .slick-next {
    right: 10px;
  }
  .main_visual .main_visual_arrow .slick-prev:before,
  .main_visual .main_visual_arrow .slick-next:before {
    font-size: 20px;
    font-size: 2rem;
  }
}

@media (max-width: 639px) {
  .main_visual .main_visual_copy > li img {
    width: 90%;
  }
}

.main_visual .main_visual_slick {
  padding-top: 88%!important;
}

@media (min-width: 1000px) {
  .main_visual .main_visual_slick {
    padding-top: 0 !important;
    height: 880px !important;
  }
}

@media (min-width: 1920px) {
  .main_visual .main_visual_slick {
    padding-top: 45.83333%!important;
  }
}

@media (max-width: 639px) {
  .main_visual .main_visual_slick {
    padding-top: 121.875%!important;
  }
}

.slick-dots li button {
  margin: 0 auto;
  background: #ccc;
}

.slick-dots li.slick-active button {
  background: #111;
}

.slide_scroll {
  position: absolute;
  bottom: 1%;
  left: 50%;
  transform: translateX(-50%);
  padding-bottom: 45px;
  background: url(/wp-content/uploads/icon_scroll.png) center bottom no-repeat;
  z-index: 55;
  color: #fff;
  text-decoration: none;
}

.slide_scroll:hover {
  color: #fff;
}

.article_list {
  padding: .5em;
  position: relative;
  overflow: hidden;
}

@media (min-width: 768px) {
  .article_list {
    padding: 1em;
  }
}

.article_list:nth-child(even) {
  background: rgba(17, 17, 17, 0.05);
}

.article_list:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: transparent;
  transform: translate(-10px, -10px) rotate(45deg);
  transition: .3s;
}

.article_list:hover:before {
  background: #111;
}

.article_list .case_arrow {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: block;
  position: relative;
  height: 245px;
}

@media (max-width: 767px) {
  .article_list .case_arrow {
    height: 80px;
  }
}

.article_list .case_arrow:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  margin: auto;
  width: 70px;
  height: 70px;
  border-top: 5px solid #111;
  border-right: 5px solid #111;
  transform: translate(0, -50%) rotate(45deg);
  transform-origin: left top;
  transition: .2s;
}

@media (max-width: 767px) {
  .article_list .case_arrow:after {
    left: 0;
    bottom: 25%;
    border-top: 5px solid #111;
    border-right: 5px solid #111;
    transform: translate(0, -50%) rotate(135deg);
    transform-origin: center;
  }
}

.article_list .span_12 {
  margin: 2% 0;
}

.article_single01 .article_single01_02 {
  margin-top: 10px;
}

.article_single01 .article_single01_02 img {
  opacity: 1;
  transition: opacity 0.3s;
}

.article_single01 .article_single01_02 img:hover {
  cursor: pointer;
  opacity: 0.7;
}

.article_single01 .ofi {
  background: rgba(17, 17, 17, 0.05);
}

.article_single01 .more {
  display: block;
  text-align: center;
}

.article_single02 .article_single02_01 img {
  opacity: 1;
  transition: opacity 0.3s;
}

.article_single02 .article_single02_01 img:hover {
  cursor: pointer;
  opacity: 0.7;
}

.article_single02 .ofi {
  background: rgba(17, 17, 17, 0.05);
}

.article_single02 .more {
  display: block;
  text-align: center;
}

@media (min-width: 768px) {
  .article_single03 .article_single03_02 .span_6 {
    width: 45%;
    margin-left: 10%;
  }
  .article_single03 .article_single03_02 .span_6:first-child {
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .article_single03 .article_single03_02 .span_12 {
    margin-left: 0;
    margin-top: 20px;
  }
}

.article_single03 .article_single03_02 img {
  opacity: 1;
  transition: opacity 0.3s;
}

.article_single03 .article_single03_02 img:hover {
  cursor: pointer;
  opacity: 0.7;
}

.article_single03 .case_arrow {
  position: relative;
}

@media (max-width: 767px) {
  .article_single03 .case_arrow {
    margin-bottom: 10%;
  }
}

.article_single03 .case_arrow:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 108%;
  margin: auto;
  width: 35px;
  height: 35px;
  border-top: 3px solid #111;
  border-right: 3px solid #111;
  transform: translate(0, -50%) rotate(45deg);
  transform-origin: left top;
  transition: 0.2s;
}

@media (max-width: 767px) {
  .article_single03 .case_arrow:after {
    left: 0;
    right: 0;
    top: 105%;
    width: 20px;
    height: 20px;
    transform: translate(0, -50%) rotate(135deg);
    transform-origin: center;
  }
}

.article_single03 .ofi {
  background: rgba(17, 17, 17, 0.05);
}

.article_single03 .more {
  display: block;
  text-align: center;
}

.article_single04 ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.article_single04 .article_single04_01_img1 .ofi {
  padding-top: 75%;
}

.article_single04 .article_single04_01_img2 .ofi {
  padding-top: 15%;
}

.article_single04 .article_single04_01_img3 .ofi {
  padding-top: 10.8%;
}

.article_single04 .article_single04_01_img4 .ofi {
  padding-top: 8.4%;
}

.article_single04 .article_single04_01_img5 .ofi {
  padding-top: 6.9%;
}

.article_single04 .article_single04_01_img6 .ofi {
  padding-top: 5.8%;
}

.article_single04 .article_single04_01_nav {
  margin-top: 15px;
}

.article_single04 .article_single04_01_nav .ofi {
  padding-top: 11.1%;
}

.article_single04 .article_single04_01_nav .slick-track {
  width: 100% !important;
  transform: none !important;
  left: 0 !important;
}

.article_single04 .article_single04_01_nav li {
  margin-left: 0.8%;
  width: calc(96% / 6) !important;
}

.article_single04 .article_single04_01_nav li:nth-child(1) {
  margin-left: 0;
}

.article_single04.article_container .article_single04_01_img1 .ofi {
  padding-top: 74.5%;
}

.article_single04.article_container .article_single04_01_img2 .ofi {
  padding-top: 18.7%;
}

.article_single04.article_container .article_single04_01_img3 .ofi {
  padding-top: 14.9%;
}

.article_single04.article_container .article_single04_01_img4 .ofi {
  padding-top: 12.5%;
}

.article_single04.article_container .article_single04_01_img5 .ofi {
  padding-top: 10.7%;
}

.article_single04.article_container .article_single04_01_img6 .ofi {
  padding-top: 9.4%;
}

.article_single04.article_container .article_single04_01_nav {
  margin-top: 15px;
}

.article_single04.article_container .article_single04_01_nav .ofi {
  padding-top: 12%;
}

.article_single04.article_container .article_single04_01_nav .slick-track {
  width: 100% !important;
  transform: none !important;
  left: 0 !important;
}

.article_single04.article_container .article_single04_01_nav li {
  margin-left: 0.8%;
  width: calc(96% / 6) !important;
}

.article_single04.article_container .article_single04_01_nav li:nth-child(1) {
  margin-left: 0;
}

.article_single04 .article_single04_02 {
  margin-top: 10px;
}

.article_single04 .article_single04_02 img {
  opacity: 1;
  transition: opacity 0.3s;
}

.article_single04 .article_single04_02 img:hover {
  cursor: pointer;
  opacity: 0.7;
}

.article_single04 .slick-next,
.article_single04 .slick-prev {
  z-index: 1;
}

.article_single04 .slick-next:before,
.article_single04 .slick-prev:before {
  content: none;
}

.article_single04 .slick-next:after,
.article_single04 .slick-prev:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin: auto;
  width: 35px;
  height: 35px;
  border-top: 3px solid #111;
  transition: 0.2s;
  z-index: 1;
}

.article_single04 .slick-prev {
  left: 0;
}

.article_single04 .slick-prev:after {
  left: 0;
  border-left: 3px solid #111;
  transform: translate(0, -50%) rotate(-45deg);
  transform-origin: right top;
}

.article_single04 .slick-next {
  right: 0;
}

.article_single04 .slick-next:after {
  right: 0;
  border-right: 3px solid #111;
  transform: translate(0, -50%) rotate(45deg);
  transform-origin: left top;
}

.article_single04 .ofi {
  background: rgba(17, 17, 17, 0.05);
  height: auto !important;
}

.article_single04 .more {
  display: block;
  text-align: center;
}

@media (min-width: 768px) {
  .article_list_case02 .article_list_case02_01 {
    width: 67%;
  }
  .article_list_case02 .article_list_case02_02 {
    width: 31%;
  }
  .article_list_case02.article_single01 .article_single01_02 {
    margin-top: 0;
  }
}

.article_container .article_single01_02 {
  margin-top: 10px;
}

.article_container .article_single01_02 img {
  opacity: 1;
  transition: opacity 0.3s;
}

.article_container .article_single01_02 img:hover {
  cursor: pointer;
  opacity: 0.7;
}

.article_detail {
  background: rgba(17, 17, 17, 0.05);
  padding: 4%;
  margin-bottom: 4%;
  font-size: 15px;
  font-size: 1.5rem;
}

.article_detail .article_date {
  margin-bottom: 1em;
}

.article_detail .article_thumbnail {
  float: left;
  margin: 0 2% 2% 0;
}

.article_detail .article_content {
  float: none;
  width: 100%;
  margin-left: 0;
}

.article_detail .case_arrow {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: block;
  position: relative;
  height: 245px;
}

@media (max-width: 767px) {
  .article_detail .case_arrow {
    height: 80px;
  }
}

.article_detail .case_arrow:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  margin: auto;
  width: 70px;
  height: 70px;
  border-top: 5px solid #111;
  border-right: 5px solid #111;
  transform: translate(0, -50%) rotate(45deg);
  transform-origin: left top;
  transition: .2s;
}

@media (max-width: 767px) {
  .article_detail .case_arrow:after {
    left: 0;
    bottom: 25%;
    border-top: 5px solid #111;
    border-right: 5px solid #111;
    transform: translate(0, -50%) rotate(135deg);
    transform-origin: center;
  }
}

.article_detail .span_12 {
  margin: 2% 0;
}

.wp_pager {
  overflow: hidden;
  margin-bottom: 5%;
}

.wp_pager .wp_pager_prev {
  float: left;
}

.wp_pager .wp_pager_prev a {
  display: block;
  position: relative;
  padding-left: 15px;
  text-decoration: none;
}

.wp_pager .wp_pager_prev a:before, .wp_pager .wp_pager_prev a:after {
  content: "";
  display: block;
  position: absolute;
  left: 2px;
  margin: auto;
  width: 8px;
  height: 1px;
  background: #000;
  transition: .2s;
}

.wp_pager .wp_pager_prev a:before {
  transform: translateY(-50%) rotate(-45deg);
  top: calc(50% - 2px);
}

.wp_pager .wp_pager_prev a:after {
  transform: translateY(-50%) rotate(-135deg);
  top: calc(50% + 3px);
}

.wp_pager .wp_pager_prev a:hover {
  text-decoration: underline;
}

.wp_pager .wp_pager_prev a:hover:before {
  left: 0;
}

.wp_pager .wp_pager_prev a:hover:after {
  left: 0;
}

.wp_pager .wp_pager_next {
  float: right;
}

.wp_pager .wp_pager_next a {
  display: block;
  position: relative;
  padding-right: 15px;
  text-decoration: none;
}

.wp_pager .wp_pager_next a:before, .wp_pager .wp_pager_next a:after {
  content: "";
  display: block;
  position: absolute;
  right: 2px;
  margin: auto;
  width: 8px;
  height: 1px;
  background: #000;
  transform-origin: center;
  transition: .2s;
}

.wp_pager .wp_pager_next a:before {
  transform: translateY(-50%) rotate(45deg);
  top: calc(50% - 2px);
}

.wp_pager .wp_pager_next a:after {
  transform: translateY(-50%) rotate(135deg);
  top: calc(50% + 3px);
}

.wp_pager .wp_pager_next a:hover {
  text-decoration: underline;
}

.wp_pager .wp_pager_next a:hover:before {
  right: 0;
}

.wp_pager .wp_pager_next a:hover:after {
  right: 0;
}

#commentform {
  background: transparent;
  padding: 2% 5%;
  border: 1px solid #333;
}

#commentform #comment {
  width: 100%;
}

#commentform #submit {
  background: #111;
  color: #fff;
  border: 0;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 3px 10px;
  margin: 0 auto;
  display: table;
}

#commentform input[type="submit"] {
  background: #111;
  color: #fff;
  border: 0;
  font-size: 14px;
  font-size: 1.4rem;
  padding: .3em 1em;
  margin: 0 auto;
  display: table;
  border-radius: 5px;
}

@media (min-width: 768px) {
  #commentform #submit {
    font-size: 18px;
    font-size: 1.8rem;
  }
  #commentform input[type="submit"] {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

/*
 * ボタン矢印(mũi tên button)
 */
.add_arrow {
  display: block;
  position: relative;
}

.add_arrow:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 5%;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translate(0, -50%) rotate(45deg);
  transition: 0.2s;
}

.add_arrow.inverse:after {
  border-top: 1px solid #111;
  border-right: 1px solid #111;
}

.add_arrow.inverse:hover {
  border-color: #fff;
  color: #fff;
  background: #111;
}

.add_arrow.inverse:hover:after {
  border-color: #fff;
}

.add_arrow:hover {
  border: 1px solid #111;
  color: #111;
  background: #fff;
}

.add_arrow:hover:after {
  right: 4%;
  border-color: #111;
}

/*
 * moreボタン雛形 (hình dạng button more)
 */
.more {
  display: block;
  overflow: hidden;
  margin: auto;
}

.more a {
  display: block;
  border: 1px solid #111;
  color: #fff;
  background: #111;
  padding: 0.6em;
  margin: 0 auto 1px;
  max-width: 280px;
  width: 100%;
  text-align: center;
  text-decoration: none;
  transition: .3s;
  font-size: 14px;
  font-size: 1.4rem;
}

@media (min-width: 768px) {
  .more a {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.more a.inverse {
  border: 1px solid #111;
  color: #111;
  background: #fff;
}

/*
 * ボタンエフェクト(button effect)
 */
@media (min-width: 768px) {
  .effect01 {
    overflow: hidden;
    position: relative;
  }
  .effect01:before {
    content: '';
    position: absolute;
    display: block;
    width: 140%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
    background: #111;
    opacity: 0.3;
    transform: translateX(-120%) skewX(15deg);
    transition: transform 0.3s;
  }
  .effect01:hover {
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.3);
  }
  .effect01:hover:before {
    transform: translateX(-15%) skewX(15deg);
  }
}

header .global_nav > ul > li.has_under > a {
  position: relative;
}

header .global_nav > ul > li.has_under > a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 6%;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translate(0, -50%) rotate(135deg);
  transition: .2s;
}

header .global_nav > ul > li.has_under > a.menu_under_open:after {
  transform: translate(0, 0) rotate(-45deg);
}

header .global_nav > ul > li > ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: none;
}

header .global_nav > ul > li > ul > li {
  border-bottom: 1px solid #b3b3b3;
}

@media (min-width: 769px) {
  header .global_nav > ul > li.has_under > a {
    padding-right: 1.5em;
  }
  header .global_nav > ul > li.has_under > a:after {
    border-color: #111111;
    width: 6px;
    height: 6px;
  }
  header .global_nav > ul > li.has_under > a:after {
    transform: translate(0, -50%) rotate(135deg);
  }
  header .global_nav > ul > li.has_under > a.menu_under_open:after {
    transform: translate(0) rotate(-45deg);
  }
  header .global_nav > ul > li.has_under > ul {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    margin: auto;
    top: 100%;
    letter-spacing: -.40em;
    background: rgba(17, 17, 17, 0.9);
    z-index: 52;
  }
  header .global_nav > ul > li.has_under > ul > li {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: middle;
    width: 25%;
    text-align: center;
    border-bottom: 0;
    padding: 0;
  }
  header .global_nav > ul > li.has_under > ul > li a {
    background: transparent;
    padding: 1em;
  }
}

.pagetop {
  position: fixed;
  bottom: 5%;
  right: 5%;
  z-index: 100;
}

.pagetop a {
  overflow: hidden;
  text-indent: -9999px;
  white-space: nowrap;
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
  padding: 0;
  border-radius: 50%;
  background: rgba(17, 17, 17, 0.9);
}

@media (min-width: 768px) {
  .pagetop a {
    width: 70px;
    height: 70px;
  }
}

.pagetop a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: translate(-50%, -20%) rotate(45deg);
  transition: .2s;
}

footer.high .pagetop {
  position: absolute;
  bottom: auto;
  right: 5%;
  top: 0;
  margin: 0;
  transform: translateY(-95%);
}

/*
 * ページトップのデザインタイプ(type design của top page)
 */
.text-center {
  text-align: center !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.lead {
  color: #111;
  font-size: 20px;
  font-size: 2rem;
}

.text-xxlarge {
  font-size: 24px;
  font-size: 2.4rem;
}

.text-xlarge {
  font-size: 20px;
  font-size: 2rem;
}

.text-large {
  font-size: 16px;
  font-size: 1.6rem;
}

.text-small {
  font-size: 12px;
  font-size: 1.2rem;
}

.text-xsmall {
  font-size: 10px;
  font-size: 1rem;
}

.text-white {
  color: #fff !important;
}

.text-black {
  color: #000 !important;
}

.text-red {
  color: #f00 !important;
}

.text-primary {
  color: #111 !important;
}

@media (max-width: 767px) {
  .sp-hide, .pc-only, .tablet-only {
    display: none !important;
  }
  .sp-text-center {
    text-align: center !important;
  }
  .sp-text-left {
    text-align: left !important;
  }
  .sp-text-right {
    text-align: right !important;
  }
}

@media (min-width: 768px) {
  .lead {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .text-xxlarge {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .text-xlarge {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .text-large {
    font-size: 20px;
    font-size: 2rem;
  }
  .text-small {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .text-xsmall {
    font-size: 10px;
    font-size: 1rem;
  }
  .pc-hide, .sp-only {
    display: none !important;
  }
  .pc-text-center {
    text-align: center !important;
  }
  .pc-text-left {
    text-align: left !important;
  }
  .pc-text-right {
    text-align: right !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .tablet-hide {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .tablet-only {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .sp-hide02, .pc-only02, .tablet-only02 {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .pc-hide02, .sp-only02 {
    display: none !important;
  }
}

@media (max-width: 639px) {
  .sp-hide03, .pc-only03, .tablet-only03 {
    display: none !important;
  }
}

@media (min-width: 640px) {
  .pc-hide03, .sp-only03 {
    display: none !important;
  }
}

.arial {
  font-family: "Arial", arial !important;
}

.arial_n {
  font-family: "Arial Narrow", arial !important;
}

.color_pri {
  color: #111;
}

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

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

.m-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.inverse h2,
.inverse h3,
.inverse h4,
.inverse p {
  color: #fff;
}

.inverse h2:after {
  background: #fff;
}

.inverse h2 small,
.inverse h2 span {
  color: #fff;
}

.link-tel {
  text-decoration: none;
}

@media (min-width: 768px) {
  .link-tel {
    pointer-events: none;
    cursor: default;
  }
}

.d_block {
  display: block !important;
}

.d_inline_block {
  display: inline-block !important;
}

.d_inline {
  display: inline !important;
}

.d_flex {
  display: flex !important;
}

.d_flex_center {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

@media (min-width: 768px) {
  .pc_d_block {
    display: block !important;
  }
  .pc_d_flex {
    display: flex !important;
  }
  .pc_d_flex_center {
    display: flex !important;
    justify-content: center !important;
  }
}

@media (max-width: 767px) {
  .sp_d_block {
    display: block !important;
  }
}

.flex_wrap {
  flex-wrap: wrap !important;
}

.justify_content_center {
  justify-content: center !important;
}

.justify_content_between {
  justify-content: space-between !important;
}

.align_items_center {
  align-items: center !important;
}

.align_items_end {
  align-items: flex-end !important;
}

.flex_shrink_0 {
  flex-shrink: 0 !important;
}

.flex_shrink_1 {
  flex-shrink: 1 !important;
}

@media (min-width: 768px) {
  .pc_flex_wrap {
    flex-wrap: wrap !important;
  }
  .pc_justify_content_center {
    justify-content: center !important;
  }
}

.width_auto {
  width: auto !important;
}

.width_25 {
  width: 25% !important;
}

.width_50 {
  width: 50% !important;
}

.width_75 {
  width: 75% !important;
}

.width_100 {
  width: 100% !important;
}

.max_width_none {
  max-width: none !important;
}

.max_width_100_percent {
  max-width: 100% !important;
}

.max_width_50 {
  max-width: 50px !important;
}

.max_width_100 {
  max-width: 100px !important;
}

.max_width_150 {
  max-width: 150px !important;
}

.max_width_200 {
  max-width: 200px !important;
}

.max_width_250 {
  max-width: 250px !important;
}

.max_width_300 {
  max-width: 300px !important;
}

.max_width_350 {
  max-width: 350px !important;
}

.max_width_400 {
  max-width: 400px !important;
}

.max_width_450 {
  max-width: 450px !important;
}

.max_width_500 {
  max-width: 500px !important;
}

.max_width_550 {
  max-width: 550px !important;
}

.max_width_600 {
  max-width: 600px !important;
}

.max_width_650 {
  max-width: 650px !important;
}

.max_width_700 {
  max-width: 700px !important;
}

.max_width_750 {
  max-width: 750px !important;
}

.max_width_800 {
  max-width: 800px !important;
}

.max_width_850 {
  max-width: 850px !important;
}

.max_width_900 {
  max-width: 900px !important;
}

.max_width_950 {
  max-width: 950px !important;
}

.max_width_1000 {
  max-width: 1000px !important;
}

.min_width_auto {
  min-width: auto !important;
}

@media (max-width: 767px) {
  .sp_width_100_percent {
    width: 100% !important;
  }
}

.height_auto {
  height: auto !important;
}

.height_100 {
  height: 100% !important;
}

.float_none {
  float: none !important;
}

.fw_normal {
  font-weight: normal !important;
}

.fw_bold {
  font-weight: bold !important;
}

.text_nowrap {
  white-space: nowrap !important;
}

.text_left {
  text-align: left !important;
}

.text_delete_line {
  text-decoration: line-through !important;
}

.text_underline {
  text-decoration: underline !important;
}

.text_decoration_none {
  text-decoration: none !important;
}

.text_indent_1 {
  text-indent: -1em;
  padding-left: 1em;
}

.border_solid {
  border: solid 1px #111111;
}

.border_solid_primary {
  border: solid 1px #111;
}

.border_width_1 {
  border-width: 1px;
}

.border_width_2 {
  border-width: 2px;
}

.border_width_3 {
  border-width: 3px;
}

.border_width_4 {
  border-width: 4px;
}

.border_width_5 {
  border-width: 5px;
}

.overflow_hidden {
  overflow: hidden !important;
}

.position_relative {
  position: relative !important;
}

.position_absolute {
  position: absolute !important;
}

.position_fixed {
  position: fixed !important;
}

.before_none::before {
  content: none !important;
}

.after_none::after {
  content: none !important;
}

.bg_primary {
  background-color: #111 !important;
}

.bg_highlight {
  background-color: rgba(8, 51, 136, 0.05) !important;
}

.bg_white {
  background-color: #fff !important;
}

.bg_transparent {
  background-color: transparent !important;
}

.m_auto {
  margin: auto !important;
}

.mx_auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.m_0 {
  margin: 0px !important;
}

.my_0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.mx_0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

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

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

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

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

.m_0_em {
  margin: 0em !important;
}

.my_0_em {
  margin-top: 0em !important;
  margin-bottom: 0em !important;
}

.mx_0_em {
  margin-left: 0em !important;
  margin-right: 0em !important;
}

.mt_0_em {
  margin-top: 0em !important;
}

.mb_0_em {
  margin-bottom: 0em !important;
}

.ml_0_em {
  margin-left: 0em !important;
}

.mr_0em {
  margin-right: 0em !important;
}

.m_5 {
  margin: 5px !important;
}

.my_5 {
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

.mx_5 {
  margin-left: 5px !important;
  margin-right: 5px !important;
}

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

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

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

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

.m_5_em {
  margin: 0.5em !important;
}

.my_5_em {
  margin-top: 0.5em !important;
  margin-bottom: 0.5em !important;
}

.mx_5_em {
  margin-left: 0.5em !important;
  margin-right: 0.5em !important;
}

.mt_5_em {
  margin-top: 0.5em !important;
}

.mb_5_em {
  margin-bottom: 0.5em !important;
}

.ml_5_em {
  margin-left: 0.5em !important;
}

.mr_5em {
  margin-right: 0.5em !important;
}

.m_10 {
  margin: 10px !important;
}

.my_10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.mx_10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

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

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

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

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

.m_10_em {
  margin: 1em !important;
}

.my_10_em {
  margin-top: 1em !important;
  margin-bottom: 1em !important;
}

.mx_10_em {
  margin-left: 1em !important;
  margin-right: 1em !important;
}

.mt_10_em {
  margin-top: 1em !important;
}

.mb_10_em {
  margin-bottom: 1em !important;
}

.ml_10_em {
  margin-left: 1em !important;
}

.mr_10em {
  margin-right: 1em !important;
}

.m_15 {
  margin: 15px !important;
}

.my_15 {
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.mx_15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

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

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

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

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

.m_15_em {
  margin: 1.5em !important;
}

.my_15_em {
  margin-top: 1.5em !important;
  margin-bottom: 1.5em !important;
}

.mx_15_em {
  margin-left: 1.5em !important;
  margin-right: 1.5em !important;
}

.mt_15_em {
  margin-top: 1.5em !important;
}

.mb_15_em {
  margin-bottom: 1.5em !important;
}

.ml_15_em {
  margin-left: 1.5em !important;
}

.mr_15em {
  margin-right: 1.5em !important;
}

.m_20 {
  margin: 20px !important;
}

.my_20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.mx_20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

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

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

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

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

.m_20_em {
  margin: 2em !important;
}

.my_20_em {
  margin-top: 2em !important;
  margin-bottom: 2em !important;
}

.mx_20_em {
  margin-left: 2em !important;
  margin-right: 2em !important;
}

.mt_20_em {
  margin-top: 2em !important;
}

.mb_20_em {
  margin-bottom: 2em !important;
}

.ml_20_em {
  margin-left: 2em !important;
}

.mr_20em {
  margin-right: 2em !important;
}

.m_25 {
  margin: 25px !important;
}

.my_25 {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}

.mx_25 {
  margin-left: 25px !important;
  margin-right: 25px !important;
}

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

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

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

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

.m_25_em {
  margin: 2.5em !important;
}

.my_25_em {
  margin-top: 2.5em !important;
  margin-bottom: 2.5em !important;
}

.mx_25_em {
  margin-left: 2.5em !important;
  margin-right: 2.5em !important;
}

.mt_25_em {
  margin-top: 2.5em !important;
}

.mb_25_em {
  margin-bottom: 2.5em !important;
}

.ml_25_em {
  margin-left: 2.5em !important;
}

.mr_25em {
  margin-right: 2.5em !important;
}

.m_30 {
  margin: 30px !important;
}

.my_30 {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.mx_30 {
  margin-left: 30px !important;
  margin-right: 30px !important;
}

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

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

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

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

.m_30_em {
  margin: 3em !important;
}

.my_30_em {
  margin-top: 3em !important;
  margin-bottom: 3em !important;
}

.mx_30_em {
  margin-left: 3em !important;
  margin-right: 3em !important;
}

.mt_30_em {
  margin-top: 3em !important;
}

.mb_30_em {
  margin-bottom: 3em !important;
}

.ml_30_em {
  margin-left: 3em !important;
}

.mr_30em {
  margin-right: 3em !important;
}

.m_35 {
  margin: 35px !important;
}

.my_35 {
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}

.mx_35 {
  margin-left: 35px !important;
  margin-right: 35px !important;
}

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

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

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

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

.m_35_em {
  margin: 3.5em !important;
}

.my_35_em {
  margin-top: 3.5em !important;
  margin-bottom: 3.5em !important;
}

.mx_35_em {
  margin-left: 3.5em !important;
  margin-right: 3.5em !important;
}

.mt_35_em {
  margin-top: 3.5em !important;
}

.mb_35_em {
  margin-bottom: 3.5em !important;
}

.ml_35_em {
  margin-left: 3.5em !important;
}

.mr_35em {
  margin-right: 3.5em !important;
}

.m_40 {
  margin: 40px !important;
}

.my_40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.mx_40 {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

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

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

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

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

.m_40_em {
  margin: 4em !important;
}

.my_40_em {
  margin-top: 4em !important;
  margin-bottom: 4em !important;
}

.mx_40_em {
  margin-left: 4em !important;
  margin-right: 4em !important;
}

.mt_40_em {
  margin-top: 4em !important;
}

.mb_40_em {
  margin-bottom: 4em !important;
}

.ml_40_em {
  margin-left: 4em !important;
}

.mr_40em {
  margin-right: 4em !important;
}

.m_45 {
  margin: 45px !important;
}

.my_45 {
  margin-top: 45px !important;
  margin-bottom: 45px !important;
}

.mx_45 {
  margin-left: 45px !important;
  margin-right: 45px !important;
}

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

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

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

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

.m_45_em {
  margin: 4.5em !important;
}

.my_45_em {
  margin-top: 4.5em !important;
  margin-bottom: 4.5em !important;
}

.mx_45_em {
  margin-left: 4.5em !important;
  margin-right: 4.5em !important;
}

.mt_45_em {
  margin-top: 4.5em !important;
}

.mb_45_em {
  margin-bottom: 4.5em !important;
}

.ml_45_em {
  margin-left: 4.5em !important;
}

.mr_45em {
  margin-right: 4.5em !important;
}

.m_50 {
  margin: 50px !important;
}

.my_50 {
  margin-top: 50px !important;
  margin-bottom: 50px !important;
}

.mx_50 {
  margin-left: 50px !important;
  margin-right: 50px !important;
}

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

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

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

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

.m_50_em {
  margin: 5em !important;
}

.my_50_em {
  margin-top: 5em !important;
  margin-bottom: 5em !important;
}

.mx_50_em {
  margin-left: 5em !important;
  margin-right: 5em !important;
}

.mt_50_em {
  margin-top: 5em !important;
}

.mb_50_em {
  margin-bottom: 5em !important;
}

.ml_50_em {
  margin-left: 5em !important;
}

.mr_50em {
  margin-right: 5em !important;
}

.p_0 {
  padding: 0px !important;
}

.py_0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.px_0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

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

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

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

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

.p_0_em {
  padding: 0em !important;
}

.py_0_em {
  padding-top: 0em !important;
  padding-bottom: 0em !important;
}

.px_0_em {
  padding-left: 0em !important;
  padding-right: 0em !important;
}

.pt_0_em {
  padding-top: 0em !important;
}

.pb_0_em {
  padding-bottom: 0em !important;
}

.pl_0_em {
  padding-left: 0em !important;
}

.pr_0_em {
  padding-right: 0em !important;
}

.p_5 {
  padding: 5px !important;
}

.py_5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.px_5 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

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

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

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

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

.p_5_em {
  padding: 0.5em !important;
}

.py_5_em {
  padding-top: 0.5em !important;
  padding-bottom: 0.5em !important;
}

.px_5_em {
  padding-left: 0.5em !important;
  padding-right: 0.5em !important;
}

.pt_5_em {
  padding-top: 0.5em !important;
}

.pb_5_em {
  padding-bottom: 0.5em !important;
}

.pl_5_em {
  padding-left: 0.5em !important;
}

.pr_5_em {
  padding-right: 0.5em !important;
}

.p_10 {
  padding: 10px !important;
}

.py_10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.px_10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

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

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

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

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

.p_10_em {
  padding: 1em !important;
}

.py_10_em {
  padding-top: 1em !important;
  padding-bottom: 1em !important;
}

.px_10_em {
  padding-left: 1em !important;
  padding-right: 1em !important;
}

.pt_10_em {
  padding-top: 1em !important;
}

.pb_10_em {
  padding-bottom: 1em !important;
}

.pl_10_em {
  padding-left: 1em !important;
}

.pr_10_em {
  padding-right: 1em !important;
}

.p_15 {
  padding: 15px !important;
}

.py_15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.px_15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

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

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

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

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

.p_15_em {
  padding: 1.5em !important;
}

.py_15_em {
  padding-top: 1.5em !important;
  padding-bottom: 1.5em !important;
}

.px_15_em {
  padding-left: 1.5em !important;
  padding-right: 1.5em !important;
}

.pt_15_em {
  padding-top: 1.5em !important;
}

.pb_15_em {
  padding-bottom: 1.5em !important;
}

.pl_15_em {
  padding-left: 1.5em !important;
}

.pr_15_em {
  padding-right: 1.5em !important;
}

.p_20 {
  padding: 20px !important;
}

.py_20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.px_20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

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

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

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

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

.p_20_em {
  padding: 2em !important;
}

.py_20_em {
  padding-top: 2em !important;
  padding-bottom: 2em !important;
}

.px_20_em {
  padding-left: 2em !important;
  padding-right: 2em !important;
}

.pt_20_em {
  padding-top: 2em !important;
}

.pb_20_em {
  padding-bottom: 2em !important;
}

.pl_20_em {
  padding-left: 2em !important;
}

.pr_20_em {
  padding-right: 2em !important;
}

.p_25 {
  padding: 25px !important;
}

.py_25 {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

.px_25 {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

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

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

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

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

.p_25_em {
  padding: 2.5em !important;
}

.py_25_em {
  padding-top: 2.5em !important;
  padding-bottom: 2.5em !important;
}

.px_25_em {
  padding-left: 2.5em !important;
  padding-right: 2.5em !important;
}

.pt_25_em {
  padding-top: 2.5em !important;
}

.pb_25_em {
  padding-bottom: 2.5em !important;
}

.pl_25_em {
  padding-left: 2.5em !important;
}

.pr_25_em {
  padding-right: 2.5em !important;
}

.p_30 {
  padding: 30px !important;
}

.py_30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.px_30 {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

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

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

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

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

.p_30_em {
  padding: 3em !important;
}

.py_30_em {
  padding-top: 3em !important;
  padding-bottom: 3em !important;
}

.px_30_em {
  padding-left: 3em !important;
  padding-right: 3em !important;
}

.pt_30_em {
  padding-top: 3em !important;
}

.pb_30_em {
  padding-bottom: 3em !important;
}

.pl_30_em {
  padding-left: 3em !important;
}

.pr_30_em {
  padding-right: 3em !important;
}

.p_35 {
  padding: 35px !important;
}

.py_35 {
  padding-top: 35px !important;
  padding-bottom: 35px !important;
}

.px_35 {
  padding-left: 35px !important;
  padding-right: 35px !important;
}

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

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

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

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

.p_35_em {
  padding: 3.5em !important;
}

.py_35_em {
  padding-top: 3.5em !important;
  padding-bottom: 3.5em !important;
}

.px_35_em {
  padding-left: 3.5em !important;
  padding-right: 3.5em !important;
}

.pt_35_em {
  padding-top: 3.5em !important;
}

.pb_35_em {
  padding-bottom: 3.5em !important;
}

.pl_35_em {
  padding-left: 3.5em !important;
}

.pr_35_em {
  padding-right: 3.5em !important;
}

.p_40 {
  padding: 40px !important;
}

.py_40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.px_40 {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

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

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

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

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

.p_40_em {
  padding: 4em !important;
}

.py_40_em {
  padding-top: 4em !important;
  padding-bottom: 4em !important;
}

.px_40_em {
  padding-left: 4em !important;
  padding-right: 4em !important;
}

.pt_40_em {
  padding-top: 4em !important;
}

.pb_40_em {
  padding-bottom: 4em !important;
}

.pl_40_em {
  padding-left: 4em !important;
}

.pr_40_em {
  padding-right: 4em !important;
}

.p_45 {
  padding: 45px !important;
}

.py_45 {
  padding-top: 45px !important;
  padding-bottom: 45px !important;
}

.px_45 {
  padding-left: 45px !important;
  padding-right: 45px !important;
}

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

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

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

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

.p_45_em {
  padding: 4.5em !important;
}

.py_45_em {
  padding-top: 4.5em !important;
  padding-bottom: 4.5em !important;
}

.px_45_em {
  padding-left: 4.5em !important;
  padding-right: 4.5em !important;
}

.pt_45_em {
  padding-top: 4.5em !important;
}

.pb_45_em {
  padding-bottom: 4.5em !important;
}

.pl_45_em {
  padding-left: 4.5em !important;
}

.pr_45_em {
  padding-right: 4.5em !important;
}

.p_50 {
  padding: 50px !important;
}

.py_50 {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.px_50 {
  padding-left: 50px !important;
  padding-right: 50px !important;
}

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

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

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

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

.p_50_em {
  padding: 5em !important;
}

.py_50_em {
  padding-top: 5em !important;
  padding-bottom: 5em !important;
}

.px_50_em {
  padding-left: 5em !important;
  padding-right: 5em !important;
}

.pt_50_em {
  padding-top: 5em !important;
}

.pb_50_em {
  padding-bottom: 5em !important;
}

.pl_50_em {
  padding-left: 5em !important;
}

.pr_50_em {
  padding-right: 5em !important;
}

.fs_70_percent {
  font-size: 70% !important;
}

.fs_75_percent {
  font-size: 75% !important;
}

.fs_80_percent {
  font-size: 80% !important;
}

.fs_85_percent {
  font-size: 85% !important;
}

.fs_90_percent {
  font-size: 90% !important;
}

.fs_95_percent {
  font-size: 95% !important;
}

.fs_100_percent {
  font-size: 100% !important;
}

.fs_105_percent {
  font-size: 105% !important;
}

.fs_110_percent {
  font-size: 110% !important;
}

.fs_115_percent {
  font-size: 115% !important;
}

.fs_120_percent {
  font-size: 120% !important;
}

.fs_125_percent {
  font-size: 125% !important;
}

.fs_130_percent {
  font-size: 130% !important;
}

.fs_135_percent {
  font-size: 135% !important;
}

.fs_140_percent {
  font-size: 140% !important;
}

.fs_145_percent {
  font-size: 145% !important;
}

.fs_150_percent {
  font-size: 150% !important;
}

.fs_155_percent {
  font-size: 155% !important;
}

.fs_160_percent {
  font-size: 160% !important;
}

.fs_165_percent {
  font-size: 165% !important;
}

.fs_170_percent {
  font-size: 170% !important;
}

.fs_175_percent {
  font-size: 175% !important;
}

.fs_180_percent {
  font-size: 180% !important;
}

.fs_185_percent {
  font-size: 185% !important;
}

.fs_190_percent {
  font-size: 190% !important;
}

.fs_195_percent {
  font-size: 195% !important;
}

.fs_200_percent {
  font-size: 200% !important;
}

.step h3 {
  margin-bottom: 0;
  border: none;
}

.step h3:after, .step h3:before {
  content: none;
}

body {
  background: url("./images/body_bg.jpg") center center;
}

.highlight {
  padding: 4%;
}

.roll {
  display: inline-block;
  text-decoration: none;
  transition: 0.2s;
}

@media (min-width: 769px) {
  .roll:hover {
    opacity: 0.7;
    text-decoration: none;
  }
}

.small_text .sub_text {
  display: block;
  font-size: 80%;
}

.more a, .button, .inquiry .wpcf7-submit {
  color: #fff;
  border: solid 1px #111;
  line-height: 1.3;
}

.more a.add_arrow::after,
.button.add_arrow::after,
.inquiry .add_arrow.wpcf7-submit::after {
  border-color: #fff;
  right: 13px;
}

.more a:hover, .button:hover, .inquiry .wpcf7-submit:hover {
  color: #111111;
  background-color: #fff;
  border: solid 1px #111;
}

.more a:hover.add_arrow::after,
.button:hover.add_arrow::after,
.inquiry .wpcf7-submit:hover.add_arrow::after {
  border-color: #111111;
}

.more a {
  font-size: 1.6rem;
  max-width: 280px;
  padding: 0;
  color: #111111;
  line-height: 1;
  background-color: transparent;
  border: none;
}

.more a.add_arrow::after {
  margin-top: 20px;
  width: 100%;
  height: 3px;
  background-color: #111111;
  border: none;
  transform: none;
  position: static;
}

.more a:hover {
  color: #111111;
  background-color: transparent;
  border: none;
}

.more a:hover.add_arrow::after {
  width: 20%;
}

@media (max-width: 767px) {
  .more a {
    padding: 0;
    max-width: 260px;
  }
}

.more a.inverse {
  border: none;
  background-color: transparent;
  color: #fff;
}

.more a.inverse:after {
  background-color: #fff;
}

.more a.inverse:hover {
  border: none;
  color: #fff;
  background-color: transparent;
}

.button, .inquiry .wpcf7-submit {
  min-width: 190px;
}

header {
  background-color: transparent;
}

@media (min-width: 1020px) {
  header .container {
    max-width: 1780px;
    padding: 0 10px;
  }
}

@media (min-width: 769px) {
  header .row {
    margin: 0 20px;
  }
  header .global_nav > ul > li:last-child > a {
    padding-right: 0;
  }
  header .global_nav > ul > li:not(:first-child) > a:before {
    background-color: #b9b9b9;
    transform: translateY(-44%) rotate(19deg);
  }
  header .global_nav > ul > li > a {
    font-size: 1.6rem;
    border: none;
  }
  header .global_nav > ul > li > a:hover {
    color: #87c6c5;
    border: none;
  }
}

@media (min-width: 769px) and (max-width: 900px) {
  header .global_nav > ul > li > a {
    padding: 0.3em 1em;
    font-size: 1.5rem;
  }
}

@media (max-width: 768px) {
  header .global_nav > ul > li {
    border-bottom-color: #fff;
  }
}

@media (max-width: 767px) {
  header .title {
    padding: 15px 0;
  }
}

footer {
  padding: 2rem 0;
}

footer .container {
  max-width: 100%;
}

@media (min-width: 768px) {
  footer {
    color: #111111;
    background-color: transparent;
  }
  footer nav a {
    color: #111111;
  }
  footer nav a:hover {
    color: #111111;
  }
}

@media (max-width: 767px) {
  footer nav ul li + li {
    border-top-color: #fff;
  }
}

.pagetop a {
  border: solid 1px #111;
  background-color: #fff;
  border-radius: 0;
}

.pagetop a::after {
  border-top-color: #111;
  border-left-color: #111;
}

.wow .ani, .wow.ani {
  opacity: 0;
  transform: translateY(60px);
  transition-timing-function: ease-in-out;
  transition-duration: 0.7s;
}

.wow .ani_top, .wow.ani_top {
  transform: translateY(-60px);
}

.wow .ani_bottom, .wow.ani_bottom {
  transform: translateY(30px);
}

.wow .ani_left, .wow.ani_left {
  transform: translateX(-60px);
}

.wow .ani_right, .wow.ani_right {
  transform: translateX(60px);
}

.wow .ani_duration_0 {
  transition-duration: 0s !important;
}

.wow .ani_duration_1 {
  transition-duration: 0.1s !important;
}

.wow .ani_duration_2 {
  transition-duration: 0.2s !important;
}

.wow .ani_duration_3 {
  transition-duration: 0.3s !important;
}

.wow .ani_duration_4 {
  transition-duration: 0.4s !important;
}

.wow .ani_duration_5 {
  transition-duration: 0.5s !important;
}

.wow .ani_duration_6 {
  transition-duration: 0.6s !important;
}

.wow .ani_duration_7 {
  transition-duration: 0.7s !important;
}

.wow .ani_duration_8 {
  transition-duration: 0.8s !important;
}

.wow .ani_duration_9 {
  transition-duration: 0.9s !important;
}

.wow .ani_duration_10 {
  transition-duration: 1s !important;
}

.wow .ani_duration_11 {
  transition-duration: 1.1s !important;
}

.wow .ani_duration_12 {
  transition-duration: 1.2s !important;
}

.wow .ani_duration_13 {
  transition-duration: 1.3s !important;
}

.wow .ani_duration_14 {
  transition-duration: 1.4s !important;
}

.wow .ani_duration_15 {
  transition-duration: 1.5s !important;
}

.wow .ani_duration_16 {
  transition-duration: 1.6s !important;
}

.wow .ani_duration_17 {
  transition-duration: 1.7s !important;
}

.wow .ani_duration_18 {
  transition-duration: 1.8s !important;
}

.wow .ani_duration_19 {
  transition-duration: 1.9s !important;
}

.wow .ani_duration_20 {
  transition-duration: 2s !important;
}

.wow .ani_duration_21 {
  transition-duration: 2.1s !important;
}

.wow .ani_duration_22 {
  transition-duration: 2.2s !important;
}

.wow .ani_duration_23 {
  transition-duration: 2.3s !important;
}

.wow .ani_duration_24 {
  transition-duration: 2.4s !important;
}

.wow .ani_duration_25 {
  transition-duration: 2.5s !important;
}

.wow .ani_duration_26 {
  transition-duration: 2.6s !important;
}

.wow .ani_duration_27 {
  transition-duration: 2.7s !important;
}

.wow .ani_duration_28 {
  transition-duration: 2.8s !important;
}

.wow .ani_duration_29 {
  transition-duration: 2.9s !important;
}

.wow .ani_duration_30 {
  transition-duration: 3s !important;
}

.wow .ani_duration_31 {
  transition-duration: 3.1s !important;
}

.wow .ani_duration_32 {
  transition-duration: 3.2s !important;
}

.wow .ani_duration_33 {
  transition-duration: 3.3s !important;
}

.wow .ani_duration_34 {
  transition-duration: 3.4s !important;
}

.wow .ani_duration_35 {
  transition-duration: 3.5s !important;
}

.wow .ani_duration_36 {
  transition-duration: 3.6s !important;
}

.wow .ani_duration_37 {
  transition-duration: 3.7s !important;
}

.wow .ani_duration_38 {
  transition-duration: 3.8s !important;
}

.wow .ani_duration_39 {
  transition-duration: 3.9s !important;
}

.wow .ani_duration_40 {
  transition-duration: 4s !important;
}

.wow .ani_duration_41 {
  transition-duration: 4.1s !important;
}

.wow .ani_duration_42 {
  transition-duration: 4.2s !important;
}

.wow .ani_duration_43 {
  transition-duration: 4.3s !important;
}

.wow .ani_duration_44 {
  transition-duration: 4.4s !important;
}

.wow .ani_duration_45 {
  transition-duration: 4.5s !important;
}

.wow .ani_duration_46 {
  transition-duration: 4.6s !important;
}

.wow .ani_duration_47 {
  transition-duration: 4.7s !important;
}

.wow .ani_duration_48 {
  transition-duration: 4.8s !important;
}

.wow .ani_duration_49 {
  transition-duration: 4.9s !important;
}

.wow .ani_duration_50 {
  transition-duration: 5s !important;
}

.wow .ani_delay_0 {
  transition-delay: 0s !important;
}

.wow .ani_delay_1 {
  transition-delay: 0.1s !important;
}

.wow .ani_delay_2 {
  transition-delay: 0.2s !important;
}

.wow .ani_delay_3 {
  transition-delay: 0.3s !important;
}

.wow .ani_delay_4 {
  transition-delay: 0.4s !important;
}

.wow .ani_delay_5 {
  transition-delay: 0.5s !important;
}

.wow .ani_delay_6 {
  transition-delay: 0.6s !important;
}

.wow .ani_delay_7 {
  transition-delay: 0.7s !important;
}

.wow .ani_delay_8 {
  transition-delay: 0.8s !important;
}

.wow .ani_delay_9 {
  transition-delay: 0.9s !important;
}

.wow .ani_delay_10 {
  transition-delay: 1s !important;
}

.wow .ani_delay_11 {
  transition-delay: 1.1s !important;
}

.wow .ani_delay_12 {
  transition-delay: 1.2s !important;
}

.wow .ani_delay_13 {
  transition-delay: 1.3s !important;
}

.wow .ani_delay_14 {
  transition-delay: 1.4s !important;
}

.wow .ani_delay_15 {
  transition-delay: 1.5s !important;
}

.wow .ani_delay_16 {
  transition-delay: 1.6s !important;
}

.wow .ani_delay_17 {
  transition-delay: 1.7s !important;
}

.wow .ani_delay_18 {
  transition-delay: 1.8s !important;
}

.wow .ani_delay_19 {
  transition-delay: 1.9s !important;
}

.wow .ani_delay_20 {
  transition-delay: 2s !important;
}

.wow .ani_delay_21 {
  transition-delay: 2.1s !important;
}

.wow .ani_delay_22 {
  transition-delay: 2.2s !important;
}

.wow .ani_delay_23 {
  transition-delay: 2.3s !important;
}

.wow .ani_delay_24 {
  transition-delay: 2.4s !important;
}

.wow .ani_delay_25 {
  transition-delay: 2.5s !important;
}

.wow .ani_delay_26 {
  transition-delay: 2.6s !important;
}

.wow .ani_delay_27 {
  transition-delay: 2.7s !important;
}

.wow .ani_delay_28 {
  transition-delay: 2.8s !important;
}

.wow .ani_delay_29 {
  transition-delay: 2.9s !important;
}

.wow .ani_delay_30 {
  transition-delay: 3s !important;
}

.wow .ani_delay_31 {
  transition-delay: 3.1s !important;
}

.wow .ani_delay_32 {
  transition-delay: 3.2s !important;
}

.wow .ani_delay_33 {
  transition-delay: 3.3s !important;
}

.wow .ani_delay_34 {
  transition-delay: 3.4s !important;
}

.wow .ani_delay_35 {
  transition-delay: 3.5s !important;
}

.wow .ani_delay_36 {
  transition-delay: 3.6s !important;
}

.wow .ani_delay_37 {
  transition-delay: 3.7s !important;
}

.wow .ani_delay_38 {
  transition-delay: 3.8s !important;
}

.wow .ani_delay_39 {
  transition-delay: 3.9s !important;
}

.wow .ani_delay_40 {
  transition-delay: 4s !important;
}

.wow .ani_delay_41 {
  transition-delay: 4.1s !important;
}

.wow .ani_delay_42 {
  transition-delay: 4.2s !important;
}

.wow .ani_delay_43 {
  transition-delay: 4.3s !important;
}

.wow .ani_delay_44 {
  transition-delay: 4.4s !important;
}

.wow .ani_delay_45 {
  transition-delay: 4.5s !important;
}

.wow .ani_delay_46 {
  transition-delay: 4.6s !important;
}

.wow .ani_delay_47 {
  transition-delay: 4.7s !important;
}

.wow .ani_delay_48 {
  transition-delay: 4.8s !important;
}

.wow .ani_delay_49 {
  transition-delay: 4.9s !important;
}

.wow .ani_delay_50 {
  transition-delay: 5s !important;
}

.wow .ani_delay_51 {
  transition-delay: 5.1s !important;
}

.wow .ani_delay_52 {
  transition-delay: 5.2s !important;
}

.wow .ani_delay_53 {
  transition-delay: 5.3s !important;
}

.wow .ani_delay_54 {
  transition-delay: 5.4s !important;
}

.wow .ani_delay_55 {
  transition-delay: 5.5s !important;
}

.wow .ani_delay_56 {
  transition-delay: 5.6s !important;
}

.wow .ani_delay_57 {
  transition-delay: 5.7s !important;
}

.wow .ani_delay_58 {
  transition-delay: 5.8s !important;
}

.wow .ani_delay_59 {
  transition-delay: 5.9s !important;
}

.wow .ani_delay_60 {
  transition-delay: 6s !important;
}

.wow .ani_delay_61 {
  transition-delay: 6.1s !important;
}

.wow .ani_delay_62 {
  transition-delay: 6.2s !important;
}

.wow .ani_delay_63 {
  transition-delay: 6.3s !important;
}

.wow .ani_delay_64 {
  transition-delay: 6.4s !important;
}

.wow .ani_delay_65 {
  transition-delay: 6.5s !important;
}

.wow .ani_delay_66 {
  transition-delay: 6.6s !important;
}

.wow .ani_delay_67 {
  transition-delay: 6.7s !important;
}

.wow .ani_delay_68 {
  transition-delay: 6.8s !important;
}

.wow .ani_delay_69 {
  transition-delay: 6.9s !important;
}

.wow .ani_delay_70 {
  transition-delay: 7s !important;
}

.wow .ani_delay_71 {
  transition-delay: 7.1s !important;
}

.wow .ani_delay_72 {
  transition-delay: 7.2s !important;
}

.wow .ani_delay_73 {
  transition-delay: 7.3s !important;
}

.wow .ani_delay_74 {
  transition-delay: 7.4s !important;
}

.wow .ani_delay_75 {
  transition-delay: 7.5s !important;
}

.wow .ani_delay_76 {
  transition-delay: 7.6s !important;
}

.wow .ani_delay_77 {
  transition-delay: 7.7s !important;
}

.wow .ani_delay_78 {
  transition-delay: 7.8s !important;
}

.wow .ani_delay_79 {
  transition-delay: 7.9s !important;
}

.wow .ani_delay_80 {
  transition-delay: 8s !important;
}

.wow .ani_delay_81 {
  transition-delay: 8.1s !important;
}

.wow .ani_delay_82 {
  transition-delay: 8.2s !important;
}

.wow .ani_delay_83 {
  transition-delay: 8.3s !important;
}

.wow .ani_delay_84 {
  transition-delay: 8.4s !important;
}

.wow .ani_delay_85 {
  transition-delay: 8.5s !important;
}

.wow .ani_delay_86 {
  transition-delay: 8.6s !important;
}

.wow .ani_delay_87 {
  transition-delay: 8.7s !important;
}

.wow .ani_delay_88 {
  transition-delay: 8.8s !important;
}

.wow .ani_delay_89 {
  transition-delay: 8.9s !important;
}

.wow .ani_delay_90 {
  transition-delay: 9s !important;
}

.wow .ani_delay_91 {
  transition-delay: 9.1s !important;
}

.wow .ani_delay_92 {
  transition-delay: 9.2s !important;
}

.wow .ani_delay_93 {
  transition-delay: 9.3s !important;
}

.wow .ani_delay_94 {
  transition-delay: 9.4s !important;
}

.wow .ani_delay_95 {
  transition-delay: 9.5s !important;
}

.wow .ani_delay_96 {
  transition-delay: 9.6s !important;
}

.wow .ani_delay_97 {
  transition-delay: 9.7s !important;
}

.wow .ani_delay_98 {
  transition-delay: 9.8s !important;
}

.wow .ani_delay_99 {
  transition-delay: 9.9s !important;
}

.wow .ani_delay_100 {
  transition-delay: 10s !important;
}

.wow .ani_delay_custom_0 {
  transition-delay: 0s !important;
}

.wow .ani_delay_custom_1 {
  transition-delay: 0.3s !important;
}

.wow .ani_delay_custom_2 {
  transition-delay: 0.6s !important;
}

.wow .ani_delay_custom_3 {
  transition-delay: 0.9s !important;
}

.wow .ani_delay_custom_4 {
  transition-delay: 1.2s !important;
}

.wow .ani_delay_custom_5 {
  transition-delay: 1.5s !important;
}

.wow .ani_delay_custom_6 {
  transition-delay: 1.8s !important;
}

.wow .ani_delay_custom_7 {
  transition-delay: 2.1s !important;
}

.wow .ani_delay_custom_8 {
  transition-delay: 2.4s !important;
}

.wow .ani_delay_custom_9 {
  transition-delay: 2.7s !important;
}

.wow .ani_delay_custom_10 {
  transition-delay: 3s !important;
}

.wow .ani_delay_custom_11 {
  transition-delay: 3.3s !important;
}

.wow .ani_delay_custom_12 {
  transition-delay: 3.6s !important;
}

.wow .ani_delay_custom_13 {
  transition-delay: 3.9s !important;
}

.wow .ani_delay_custom_14 {
  transition-delay: 4.2s !important;
}

.wow .ani_delay_custom_15 {
  transition-delay: 4.5s !important;
}

.wow .ani_delay_custom_16 {
  transition-delay: 4.8s !important;
}

.wow .ani_delay_custom_17 {
  transition-delay: 5.1s !important;
}

.wow .ani_delay_custom_18 {
  transition-delay: 5.4s !important;
}

.wow .ani_delay_custom_19 {
  transition-delay: 5.7s !important;
}

.wow .ani_delay_custom_20 {
  transition-delay: 6s !important;
}

.wow .ani_delay_custom_21 {
  transition-delay: 6.3s !important;
}

.wow .ani_delay_custom_22 {
  transition-delay: 6.6s !important;
}

.wow .ani_delay_custom_23 {
  transition-delay: 6.9s !important;
}

.wow .ani_delay_custom_24 {
  transition-delay: 7.2s !important;
}

.wow .ani_delay_custom_25 {
  transition-delay: 7.5s !important;
}

.wow .ani_delay_custom_26 {
  transition-delay: 7.8s !important;
}

.wow .ani_delay_custom_27 {
  transition-delay: 8.1s !important;
}

.wow .ani_delay_custom_28 {
  transition-delay: 8.4s !important;
}

.wow .ani_delay_custom_29 {
  transition-delay: 8.7s !important;
}

.wow .ani_delay_custom_30 {
  transition-delay: 9s !important;
}

.wow.animated .ani, .wow.animated.ani {
  opacity: 1;
  transform: none;
}

.home .main_visual {
  margin-bottom: 160px;
  position: relative;
}

.home .main_visual .decoration_item {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 60px;
  margin: auto;
  text-align: center;
}

.home .main_visual .decoration_item p {
  display: inline-block;
  padding-bottom: 15px;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  color: #fff;
  position: relative;
}

.home .main_visual .decoration_item p::before, .home .main_visual .decoration_item p::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 2px;
  height: 60px;
}

.home .main_visual .decoration_item p::before {
  top: 100%;
  background-color: #fff;
}

.home .main_visual .decoration_item p::after {
  top: calc(100% + 60px);
  background-color: #111111;
}

@media (max-width: 900px) {
  .home .main_visual {
    margin-bottom: 100px;
  }
  .home .main_visual .decoration_item {
    bottom: 50px;
  }
  .home .main_visual .decoration_item p::before, .home .main_visual .decoration_item p::after {
    height: 50px;
  }
  .home .main_visual .decoration_item p::after {
    top: calc(100% + 50px);
  }
}

@media (max-width: 767px) {
  .home .main_visual {
    margin-bottom: 80px;
  }
}

.home .main_visual.wow .main_visual_copy li {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.home .main_visual.wow .main_visual_copy li img {
  opacity: 0;
  margin: 0;
}

.home .main_visual.wow.animated .main_visual_copy li img {
  opacity: 1;
}

.home .main_visual.wow.animated .main_visual_copy li img.main_copy001, .home .main_visual.wow.animated .main_visual_copy li img.main_copy002, .home .main_visual.wow.animated .main_visual_copy li img.main_copy003 {
  transform: translate(0);
}

.f_mincho {
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif !important;
}

.home main .container {
  max-width: 1200px;
}

@media (min-width: 1020px) {
  .home main .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.home h2 {
  font-family: "Noto Sans JP", "-apple-system", BlinkMacSystemFont, "Helvetica Neue", Roboto, "Droid Sans", Arial, "Yu Gothic", YuGothic, Meiryo, sans-serif;
  font-size: 1.6rem;
  color: #87c6c5;
  text-align: left;
}

.home h2::after {
  margin-left: 0;
  width: 26px;
  height: 2px;
  margin-top: 15px;
}

@media (max-width: 767px) {
  .home h2 {
    font-size: 1.4rem;
  }
  .home h2::after {
    margin-top: 10px;
  }
}

.home .lead_text_1 {
  font-size: 2.8rem;
  letter-spacing: 0.1em;
}

.home .lead_text_1 .text_large {
  font-size: 4rem;
}

@media (max-width: 900px) {
  .home .lead_text_1 {
    font-size: 2.2rem;
    letter-spacing: 0.1em;
  }
  .home .lead_text_1 .text_large {
    font-size: 3.2rem;
  }
}

@media (max-width: 767px) {
  .home .lead_text_1 {
    font-size: 1.5rem;
    letter-spacing: 0.07em;
  }
  .home .lead_text_1 .text_large {
    font-size: 2.4rem;
  }
}

.home .sec_top_lead {
  background: url("./images/bg_img001.jpg") no-repeat center center/cover;
  color: #fff;
}

@media (min-width: 768px) {
  .home .sec_top_lead {
    margin-bottom: 170px;
    padding: 180px 0 160px;
  }
  .home .sec_top_lead .lead_text_1 {
    text-align: center;
  }
  .home .sec_top_lead .text p {
    margin-bottom: 40px;
    line-height: 2.4;
  }
}

@media (min-width: 768px) and (max-width: 1200px) {
  .home .sec_top_lead {
    margin-bottom: 120px;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .home .sec_top_lead {
    margin-bottom: 80px;
  }
}

@media (max-width: 767px) {
  .home .sec_top_lead {
    margin-bottom: 40px;
    padding: 50px 0;
  }
  .home .sec_top_lead .lead_text_1 {
    margin-bottom: 30px;
  }
}

@media (min-width: 768px) {
  .home .sec_top_concept {
    margin-bottom: 200px;
  }
  .home .sec_top_concept .contents_1 {
    padding-top: 85px;
    padding-left: 100px;
    width: calc(100% - 2% - 486px);
  }
  .home .sec_top_concept .contents_1 .img img {
    max-width: none;
  }
  .home .sec_top_concept .contents_1 .lead_text_1 {
    margin-left: 100px;
    margin-bottom: 115px;
  }
  .home .sec_top_concept h2 {
    margin-left: 100px;
    margin-bottom: 85px;
  }
  .home .sec_top_concept .contents_2 {
    width: 486px;
  }
  .home .sec_top_concept .contents_2 p {
    margin-top: 75px;
    padding: 0 20px;
    line-height: 2.4;
  }
}

@media (min-width: 768px) and (max-width: 1200px) {
  .home .sec_top_concept {
    margin-bottom: 150px;
  }
  .home .sec_top_concept .contents_1 {
    padding-top: 50px;
    padding-left: 20px;
  }
  .home .sec_top_concept .contents_1 .lead_text_1 {
    margin-left: 40px;
    margin-bottom: 50px;
  }
  .home .sec_top_concept h2 {
    margin-left: 40px;
    margin-bottom: 40px;
  }
  .home .sec_top_concept .contents_2 p {
    margin-top: 40px;
  }
}

@media (min-width: 768px) and (max-width: 1000px) {
  .home .sec_top_concept {
    margin-bottom: 130px;
  }
  .home .sec_top_concept .contents_1 {
    padding-top: 40px;
    padding-left: 10px;
    width: 53%;
  }
  .home .sec_top_concept .contents_1 .img img {
    max-width: 100%;
  }
  .home .sec_top_concept .contents_1 .lead_text_1 {
    margin-left: 20px;
  }
  .home .sec_top_concept h2 {
    margin-left: 20px;
  }
  .home .sec_top_concept .contents_2 {
    width: 45%;
  }
  .home .sec_top_concept .contents_2 p {
    margin-top: 20px;
    padding: 0;
    line-height: 2;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .home .sec_top_concept {
    margin-bottom: 90px;
  }
}

@media (max-width: 767px) {
  .home .sec_top_concept {
    margin-bottom: 30px;
  }
  .home .sec_top_concept .container {
    max-width: 600px;
  }
}

.home .sec_top_contents_1 .container {
  max-width: 1720px;
}

.home .sec_top_contents_1 .item {
  max-width: 486px;
}

.home .sec_top_contents_1 .text {
  display: inline-block;
  min-width: 360px;
  padding-top: 30px;
  margin: -60px 0 0 -33px;
  background: url("./images/body_bg.jpg") center center;
  border-top: solid 4px #87c6c5;
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  .home .sec_top_contents_1 {
    margin-bottom: 300px;
  }
  .home .sec_top_contents_1 .contents_wrap {
    display: flex;
    justify-content: space-between;
  }
  .home .sec_top_contents_1 .text {
    font-size: 1.8rem;
  }
  .home .sec_top_contents_1 .item_2 {
    margin-top: 90px;
  }
  .home .sec_top_contents_1 .item_3 {
    margin-top: 180px;
  }
}

@media (min-width: 768px) and (max-width: 1790px) {
  .home .sec_top_contents_1 .img {
    text-align: right;
  }
  .home .sec_top_contents_1 .img img {
    width: 93%;
  }
  .home .sec_top_contents_1 .text {
    padding-top: 20px;
    margin-left: 0;
    min-width: 320px;
  }
  .home .sec_top_contents_1 .item_2 {
    margin-top: 75px;
  }
  .home .sec_top_contents_1 .item_3 {
    margin-top: 150px;
  }
}

@media (min-width: 768px) and (max-width: 1200px) {
  .home .sec_top_contents_1 {
    margin-bottom: 240px;
  }
  .home .sec_top_contents_1 .img img {
    width: 100%;
  }
  .home .sec_top_contents_1 .text {
    display: block;
    min-width: auto;
    padding-top: 0;
    padding-left: 10px;
    margin: 10px 0 0 0;
    font-size: 1.6rem;
    background: transparent;
    border-top: none;
    border-left: solid 4px #87c6c5;
  }
  .home .sec_top_contents_1 .item_2 {
    margin-top: 50px;
  }
  .home .sec_top_contents_1 .item_3 {
    margin-top: 100px;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .home .sec_top_contents_1 {
    margin-bottom: 180px;
  }
  .home .sec_top_contents_1 .text {
    padding-left: 6px;
    font-size: 1.4rem;
  }
}

@media (max-width: 767px) {
  .home .sec_top_contents_1 {
    margin-bottom: 20px;
  }
  .home .sec_top_contents_1 .container {
    max-width: 500px;
  }
  .home .sec_top_contents_1 .item {
    margin-bottom: 30px;
  }
  .home .sec_top_contents_1 .text {
    display: block;
    min-width: auto;
    padding-top: 0;
    padding-left: 10px;
    margin: 10px 0 0 0;
    background: transparent;
    border-top: none;
    border-left: solid 4px #87c6c5;
  }
}

@media (min-width: 768px) {
  .home .sec_top_about {
    margin-bottom: 250px;
  }
  .home .sec_top_about .img {
    width: calc(100% - 2% - 280px);
    position: relative;
  }
  .home .sec_top_about .img .lead_text_1 {
    position: absolute;
    top: -92px;
    left: 230px;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    white-space: nowrap;
    z-index: 1;
  }
  .home .sec_top_about .img .lead_text_1 .text_white {
    display: inline-block;
    padding-top: 5px;
    color: #fff;
  }
  .home .sec_top_about .img img {
    max-width: none;
    transform: translateX(-265px);
  }
  .home .sec_top_about .text {
    display: flex;
    align-items: center;
    width: 280px;
  }
  .home .sec_top_about .text p {
    line-height: 2.4;
  }
  .home .sec_top_about h2 {
    margin-bottom: 65px;
  }
}

@media (min-width: 768px) and (max-width: 1200px) {
  .home .sec_top_about {
    margin-bottom: 140px;
  }
  .home .sec_top_about .img {
    height: auto !important;
    width: 100%;
  }
  .home .sec_top_about .img .lead_text_1 {
    left: 41vw;
  }
  .home .sec_top_about .img figure {
    width: 90%;
  }
  .home .sec_top_about .img img {
    max-width: 100%;
    transform: translateX(0);
  }
  .home .sec_top_about .text {
    justify-content: flex-end;
    height: auto !important;
    width: 100%;
    margin: -75px auto 0;
    position: relative;
    z-index: 1;
  }
  .home .sec_top_about .text .text_wrap {
    width: 75%;
    padding: 1.5em;
    background: url("./images/body_bg.jpg") center center;
  }
  .home .sec_top_about h2 {
    margin-bottom: 20px;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .home .sec_top_about {
    margin-bottom: 100px;
  }
  .home .sec_top_about .img {
    height: auto !important;
    width: 100%;
  }
  .home .sec_top_about .img .lead_text_1 {
    top: -72px;
    left: 43.5vw;
  }
  .home .sec_top_about .img figure {
    width: 95%;
  }
  .home .sec_top_about .img img {
    max-width: 100%;
    transform: translateX(0);
  }
}

@media (max-width: 767px) {
  .home .sec_top_about {
    margin-bottom: 60px;
  }
  .home .sec_top_about .img .lead_text_1 {
    font-size: 2rem;
    margin-bottom: 10px;
  }
  .home .sec_top_about .container {
    max-width: 600px;
  }
}

@media (min-width: 768px) {
  .home .sec_top_drink {
    margin-bottom: 230px;
  }
  .home .sec_top_drink .contents_1 {
    padding-top: 30px;
    width: 480px;
  }
  .home .sec_top_drink .contents_1 .img {
    margin-top: 140px;
  }
  .home .sec_top_drink h2 {
    margin-bottom: 60px;
  }
  .home .sec_top_drink .contents_2 {
    padding-left: 100px;
    width: calc(100% - 2% - 480px);
  }
  .home .sec_top_drink .contents_2 .img {
    margin-bottom: 65px;
  }
  .home .sec_top_drink .contents_2 .img img {
    max-width: none;
  }
  .home .sec_top_drink .contents_2 p {
    line-height: 2.4;
  }
}

@media (min-width: 768px) and (max-width: 1200px) {
  .home .sec_top_drink {
    margin-bottom: 180px;
  }
  .home .sec_top_drink .contents_2 {
    padding-left: 20px;
  }
}

@media (min-width: 768px) and (max-width: 1000px) {
  .home .sec_top_drink .contents_1 {
    padding-top: 0;
    width: 49%;
  }
  .home .sec_top_drink .contents_1 .img {
    margin-top: 30px;
    width: 90%;
  }
  .home .sec_top_drink h2 {
    margin-bottom: 20px;
  }
  .home .sec_top_drink .contents_2 {
    padding-left: 0;
    width: 49%;
  }
  .home .sec_top_drink .contents_2 .img {
    margin-bottom: 20px;
  }
  .home .sec_top_drink .contents_2 .img img {
    max-width: 100%;
  }
  .home .sec_top_drink .contents_2 p {
    line-height: 2;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .home .sec_top_drink {
    margin-bottom: 80px;
  }
}

@media (max-width: 767px) {
  .home .sec_top_drink {
    margin-bottom: 50px;
  }
  .home .sec_top_drink .container {
    max-width: 600px;
  }
  .home .sec_top_drink .contents_1 {
    margin-bottom: 0;
  }
  .home .sec_top_drink .contents_2 .img {
    margin-bottom: 10px;
  }
}

.home .sec_top_info {
  background: url("./images/bg_img003.jpg") center center;
}

.home .sec_top_info table th {
  padding-left: 0;
  padding-right: 10px;
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .home .sec_top_info {
    padding: 160px 0;
  }
  .home .sec_top_info .text {
    padding: 30px 0 40px;
  }
  .home .sec_top_info .map .map_container {
    height: 100%;
  }
  .home .sec_top_info table {
    margin-left: 0;
  }
  .home .sec_top_info table th,
  .home .sec_top_info table td {
    padding: 0.9em 1em;
  }
  .home .sec_top_info table th {
    padding-left: 0;
    padding-right: 3.8em;
  }
  .home .sec_top_info .more {
    margin-top: 70px;
  }
  .home .sec_top_info .more a {
    margin-left: 0;
  }
}

@media (min-width: 768px) and (min-width: 1100px) {
  .home .sec_top_info .text {
    width: calc(100% - 2% - 590px);
  }
  .home .sec_top_info .map {
    width: 590px;
  }
}

@media (min-width: 768px) and (max-width: 900px) {
  .home .sec_top_info {
    padding: 80px 0;
  }
}

@media (max-width: 767px) {
  .home .sec_top_info {
    padding: 40px 0 60px;
  }
  .home .sec_top_info .more {
    margin: 40px 0 30px;
  }
}

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