@charset "UTF-8";

@import '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;

}

html {

	scroll-padding-top: 90px;

}

@media screen and (max-width: 1039px) {

	html {

		scroll-padding-top: 69px;

	}

}

body {

  background: #fff;

  font-family: "Shippori Mincho", "Times New Roman", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "MS PMincho", "MS Mincho", serif;

  font-size: 15px;

  font-size: 1.5em;

  line-height: 1.4;

  color: #000000;

  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: #000000;

  text-decoration: underline;

}

a:hover {

  color: #000000;

  text-decoration: none;

}

.highlight a {

  color: #000000;

}

.highlight a:hover {

  color: #000000;

}



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: 15px;

}

ul.list-inline > li {

  display: inline;

  padding-left: 7px;

  padding-right: 7px;

  white-space: nowrap;

  font-size: 15px;

  font-size: 1.5rem;

}



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: 15%;

}

main section.highlight:last-child {

  margin-bottom: 0;

  padding-bottom: 10%;

}



.sp-mask {

  transition: none !important;

}



.highlight {

  padding: 4% 0;

  background: #F8F9F4;

  color: #000000;

}



body:not(.home) .column_main .highlight {

  padding-left: 4%;

  padding-right: 4%;

}



#swipebox-overlay {

  z-index: 10000002 !important;

}

.visually-hidden {

  position: absolute;

  width: 1px;

  height: 1px;

  padding: 0;

  overflow: hidden;

  clip: rect(0 0 0 0);

  clip-path: inset(50%);

  white-space: nowrap;

  border: 0;

}

@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: -0.4em;

  }

  .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 + .epress_search,

main .column_main .widget_header + .textwidget,

main .column_sub .widget_header + .epress_search,

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: -0.4em;

  }

  .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: 1200px;

  }

}

@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;

  letter-spacing: 0.08em;

}



.container {

  padding: 0 10px;

}

@media (min-width: 1220px) {

  .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;

}

img.wp-edited-image.aligncenter {

  margin: 0 auto 10px;

  display: block;

}

img.wp-edited-image.alignright {

  margin: auto 0 auto auto;

  display: block;

}



header {

  position: relative;

  z-index: 100;

  width: 100%;

  background: #fff;

  color: #000000;

}

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: 206px; */height: 70px;max-width: none;}

@media (max-width: 600px) {

  header .title img,

  header .title object {/* width: 250px; */height: 28.8834951456px;min-height: 45px;-o-object-fit: contain;object-fit: contain;}

}

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(80, 71, 61, 0.9);

}

header .global_nav > ul > li a:hover {

  color: #fff;

}

header .global_nav > ul > li a:active {

  background: #648155;

  color: #fff;

}

header .global_nav > ul > li > a {

  background: rgba(80, 71, 61, 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: #648155;

  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: #648155;

  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: #648155;

}

header .global_nav .menu_icon a.close:not(.fix):after {

  bottom: 50%;

  transform: translate(0, 50%) rotate(-45deg);

  background: #648155;

}

header .global_nav .menu_icon a.close:not(.fix) span {

  transform: translate(100%, -50%);

}

header .global_nav > ul {

  transform-origin: center top;

  transform: rotateX(90deg);

  transition: transform 0.3s;

  visibility: hidden;

  opacity: 0;

  pointer-events: none;

}

header.menu_open .global_nav > ul {

  transform: rotateX(0deg);

  transition: transform 0.3s;

  visibility: visible;

  opacity: 1;

  pointer-events: auto;

}

/* mask */

header#header.menu_open + main:before{

  content: "";

	display: block;

	background: #000000;

	opacity: 0.5;

	width: 100vw;

	height: 100vh;

	position: fixed;

	top: 0;

	left: 0;

	z-index: 90;

}

/* ハンバーガー展開時スクロールの禁止 */

html:has(.menu_open){

	overflow:hidden;

}

#google_translate_element,

.translate_gt {

  position: absolute;

  top: 50%;

  right: 15%;

  margin-top: -12px;

}



.translate_gt {

  margin-top: -14px;

}



@media (min-width: 900px) {

  header .row {

    table-layout: fixed;

    display: table;

    width: 94%;

  }

}

@media (min-width: 900px) and (max-width: 1199px) {

  header .row {

    margin: auto;

    width: 100%;

  }

}

@media (min-width: 900px) {

  header .container {

    max-width: none;

  }

  header .container .row {

    width: auto;

  }

  header .global_nav,

  header .title {

    margin: 0;

    vertical-align: middle;

    height: 90px;

    display: table-cell;

  }

  header .title {

    max-width: none;

    max-width: none;

    padding: 10px 0;

  }

  header .global_nav {

    text-align: right;

    width: 100%;

    padding: 0;

    padding: 0 0 10px;

    vertical-align: bottom;

  }

  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;

    opacity: 1 !important;

    pointer-events: all !important;

  }

  header .global_nav > ul > li {

    display: inline-block;

    vertical-align: middle;

    border: none;

    line-height: 1.5;

    border-left: 1px;

    font-size: 15px;

    font-size: 1.5rem;

	font-size: clamp(1.2rem, 0.336vw + 0.856rem, 1.5rem);

  }

  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 > a {

    display: inline-block;

    vertical-align: middle;

    color: #000000;

    text-decoration: none;

    background: transparent;

    text-align: center;

    transition: 0.3s;

    border-bottom: 2px solid transparent;

    padding: 0.3em 1em;

  }

}

@media (min-width: 900px) and (max-width: 1070px) {

  header .global_nav > ul > li > a {

    padding: 0.3em 0.3em;

  }

}

@media (min-width: 900px) {

  header .global_nav > ul > li > a:hover {

    border-bottom: 2px solid #648155;

    color: #648155;

  }

  header .global_nav > ul > li > a:active {

    background: none;

  }

  header .global_nav > ul > li > a span {

    display: block;

    font-size: 13px;

    font-size: 1.3rem;

  }

  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: 899px) {

  header .global_nav > ul > li a > span,

  header .global_nav > ul > li a > br {

    display: none;

  }

}

.hdr_info_wrap {

  display: none;

  display: block;

  position: absolute;

  top: 50%;

  left: auto;

  right: calc(10% + 20px);

  transform: translateY(-50%);

  margin: auto;

}

.hdr_info{

	display: flex;

	flex-wrap: nowrap;

	column-gap: 8px;

}

.hdr_info a{

  text-decoration: none;

}

@media (min-width: 640px) {

  .hdr_info_wrap {

    right: 10%;

  }

}

.hdr_info_wrap .hdr_info_sp a {

  position: relative;

  display: block;

  background: #648155;

  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: 900px) {

  .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: 12px;

    right: calc(3% + 1em);

  }

}



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: 15px;

    font-size: 1.5rem;

  }

  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 .footer_copyright_wrap {

  background: #648155;

  color: #fff;

}

@media (min-width: 768px) {

  footer .footer_copyright_wrap {

    margin-top: 0.3em;

  }

}

footer .footer_copyright_wrap a {

  color: #fff;

}

footer .footer_copyright_wrap a:hover {

  color: #fff;

}

@media (min-width: 768px) {

  footer .container .row .col {

    float: none;

    width: 100%;

  }

  footer .container .row nav {

    text-align: center;

  }

  footer .container .row nav ul {

    display: inline-block;

  }

  footer .container .row nav a {

    display: inline-block;

    padding: 0.3em;

  }

}



.slider-pro.contents {

  overflow: hidden;

  margin: 0 auto !important;

}

.slider-pro.contents .sp-caption-container {

  width: 90%;

  margin: 0 auto;

  padding: 10px;

}

.slider-pro.contents .sp-caption-container h3 {

  margin: 0 0 15px;

  font-size: 14px;

  font-size: 1.4rem;

}

.slider-pro.contents .sp-caption-container h3:last-child {

  margin-bottom: 0;

}

.slider-pro.contents .sp-caption-container p {

  font-size: 13px;

  font-size: 1.3rem;

}

.slider-pro.contents.sp-horizontal .sp-previous-arrow {

  left: 10px;

  margin-top: 180px;

}

.slider-pro.contents.sp-horizontal .sp-next-arrow {

  right: 10px;

  margin-top: 180px;

}

.slider-pro.contents .sp-next-arrow:after,

.slider-pro.contents .sp-next-arrow:before,

.slider-pro.contents .sp-previous-arrow:after,

.slider-pro.contents .sp-previous-arrow:before {

  background-color: #648155;

}



@media (max-width: 767px) {

  .slider-pro.contents .sp-arrow {

    width: 10px;

    height: 15px;

  }

}

@media (min-width: 768px) {

  .slider-pro.contents .sp-caption-container {

    width: 450px;

    min-height: 40px;

    margin: 10px auto 0;

    border-right: 1px dashed #999;

    border-left: 1px dashed #999;

  }

  .slider-pro.contents .sp-arrow {

    width: 10px;

    height: 15px;

  }

  .slider-pro.contents.sp-horizontal .sp-previous-arrow {

    left: 50%;

    margin-top: 187.5px;

    margin-left: -230px;

  }

  .slider-pro.contents.sp-horizontal .sp-next-arrow {

    right: 50%;

    margin-top: 187.5px;

    margin-right: -230px;

  }

}

.slider-pro.center {

  overflow: hidden;

  width: 100%;

}

.slider-pro.center .sp-button {

  border: none;

  background: #ccc;

}

.slider-pro.center .sp-selected-button {

  background: #627957;

}

.slider-pro.center.sp-horizontal .sp-arrows {

  left: 0;

  right: 0;

  max-width: 1000px;

  margin-left: auto;

  margin-right: auto;

}

.slider-pro.center.sp-horizontal .sp-previous-arrow {

  left: 10px;

}

.slider-pro.center.sp-horizontal .sp-next-arrow {

  right: 10px;

}

.slider-pro.center .sp-previous-arrow,

.slider-pro.center .sp-next-arrow {

  width: 30px;

  height: 30px;

  background-color: rgba(80, 71, 61, 0.7);

  background-position: center center;

  background-repeat: no-repeat;

  background-size: 8px;

}

.slider-pro.center .sp-previous-arrow {

  background-image: url(/wp-content/uploads/arrow_left_wh.png);

}

.slider-pro.center .sp-next-arrow {

  background-image: url(/wp-content/uploads/arrow_right_wh.png);

}

.slider-pro.center .sp-next-arrow:after,

.slider-pro.center .sp-next-arrow:before,

.slider-pro.center .sp-previous-arrow:after,

.slider-pro.center .sp-previous-arrow:before {

  display: none;

}

.slider-pro.center .sp-layer {

  line-height: 1.2;

  white-space: normal !important;

  font-size: 20px;

  font-size: 2rem;

  color: #000000;

}

.slider-pro.center .sp-layer small {

  font-size: 14px;

  font-size: 1.4rem;

}



@media (min-width: 768px) {

  .slider-pro.center .sp-layer {

    font-size: 22px;

    font-size: 2.2rem;

  }

  .slider-pro.center .sp-padding {

    padding: 35px;

  }

}

@media (min-width: 1100px) {

  .slider-pro.center.sp-horizontal .sp-previous-arrow {

    left: -15px;

  }

  .slider-pro.center.sp-horizontal .sp-next-arrow {

    right: -15px;

  }

}

.slider-pro.wide {

  position: relative;

  overflow: hidden;

  width: 100%;

  max-width: 1600px;

  margin: 0 auto 10px;

}

.slider-pro.wide .sp-buttons {

  position: absolute;

  z-index: 2;

  bottom: 10px;

  right: 10px;

  width: auto;

  padding-top: 0;

  text-align: right;

}

.slider-pro.wide .sp-button {

  border: none;

  background: #ccc;

}

.slider-pro.wide .sp-selected-button {

  background: #627957;

}

.slider-pro.wide .sp-previous-arrow,

.slider-pro.wide .sp-next-arrow {

  z-index: 2;

}

.slider-pro.wide .sp-next-arrow:after,

.slider-pro.wide .sp-next-arrow:before,

.slider-pro.wide .sp-previous-arrow:after,

.slider-pro.wide .sp-previous-arrow:before {

  color: #fff;

}

.slider-pro.wide .hps-slider-mask {

  position: absolute;

  z-index: 1;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

}

.slider-pro.wide .hps-slider-mask.stripe {

  background-color: rgba(255, 255, 255, 0.2);

  background-image: url(/wp-content/uploads/mask_stripe.png);

}

.slider-pro.wide .hps-slider-copy {

  position: relative;

  top: 50%;

  transform: translateY(-50%);

  padding: 0 50px;

  color: #000000;

  text-align: left;

  font-size: 12px;

  font-size: 1.2rem;

}

.slider-pro.wide .hps-slider-copy .lead {

  margin: 0;

  font-size: 18px;

  font-size: 1.8rem;

  line-height: 1;

  text-align: center;

  color: #000000;

}

.slider-pro.wide.disable-arrows .hps-slider-copy {

  padding: 0 10px;

}

.slider-pro.wide .hps-slider-scroll {

  display: none;

}



@media (max-width: 767px) {

  .slider-pro.wide.sp-disable-arrows .hps-slider-copy {

    padding: 0 10px;

  }

}

@media (min-width: 768px) {

  .slider-pro.wide .sp-buttons {

    bottom: 20px;

    right: 25px;

  }

  .slider-pro.wide .sp-button {

    width: 18px;

    height: 18px;

    margin: 0 10px;

  }

  .slider-pro.wide .hps-slider-copy {

    text-align: center;

    font-size: 17px;

    font-size: 1.7rem;

    line-height: 1.8;

  }

  .slider-pro.wide .hps-slider-copy .lead {

    font-size: 46px;

    font-size: 4.6rem;

  }

  .slider-pro.wide .hps-slider-scroll {

    display: block;

    position: absolute;

    left: 0;

    bottom: 15px;

    width: 100%;

    text-align: center;

  }

  .slider-pro.wide .hps-slider-scroll a {

    display: inline-block;

    width: 100px;

    padding-bottom: 45px;

    background: url(/wp-content/uploads/arrow_down_white.png) center bottom no-repeat;

    text-align: center;

    color: #fff;

    font-size: 12px;

    font-size: 1.2rem;

    text-decoration: none;

  }

  .slider-pro.wide .hps-slider-scroll.text-black a {

    background: url(/wp-content/uploads/arrow_down_black.png) center bottom no-repeat;

    color: #000;

  }

}

@media (min-width: 1024px) {

  .slider-pro.wide .hps-slider-scroll {

    display: block;

    bottom: 45px;

  }

}

@media (max-width: 767px) {

  .bf-af .row:not(:last-child) {

    margin-bottom: 10%;

  }

  .bf-af .before {

    padding-bottom: 16%;

    background: url(/wp-content/uploads/arrow_down.svg) center bottom no-repeat;

    background-size: 20%;

    background-size: 45px auto;

  }

  .bf-af .after:not(:last-child) {

    margin-bottom: 10%;

  }

}

@media (min-width: 768px) {

  .bf-af {

    display: table;

    table-layout: fixed;

    width: 100%;

  }

  .bf-af .before,

  .bf-af .after {

    display: table-cell;

    vertical-align: top;

  }

  .bf-af .before span {

    display: block;

    position: relative;

  }

  .bf-af .before span:after {

    content: "";

    display: block;

    position: absolute;

    top: 0;

    height: 100%;

    background: url(/wp-content/uploads/arrow_right.svg) center center no-repeat;

    background-size: 100%;

  }

  .bf-af.col2 .before {

    width: 55%;

    padding-right: 10%;

  }

  .bf-af.col2 .after {

    width: 45%;

  }

  .bf-af.col2 .before span:after {

    width: 10%;

    right: -16%;

  }

  .bf-af.col4 .before:nth-child(1) {

    width: 24%;

    padding-left: 0;

    padding-right: 2%;

  }

  .bf-af.col4 .after:nth-child(2) {

    width: 26%;

    padding-left: 3%;

    padding-right: 1%;

  }

  .bf-af.col4 .before:nth-child(3) {

    width: 26%;

    padding-left: 1%;

    padding-right: 3%;

  }

  .bf-af.col4 .after:nth-child(4) {

    width: 24%;

    padding-left: 2%;

    padding-right: 0;

  }

  .bf-af.col4 .before span:after {

    width: 13%;

    right: -18%;

  }

}

.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: #000000;

}

.bread ul li a:hover {

  color: #000000;

  text-decoration: none;

}

.bread ul li:after {

  content: "";

  display: block;

  border-top: 1px solid currentColor;

  border-right: 1px solid currentColor;

  width: 7px;

  height: 7px;

  transform: translate(0, -50%) rotate(45deg);

  position: absolute;

  top: 50%;

  right: 0;

}

.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: #648155;

  color: #fff;

  text-align: center;

  text-decoration: none;

  -webkit-appearance: none;

     -moz-appearance: none;

          appearance: none;

  transition: 0.3s;

}

.button:hover, .inquiry .wpcf7-submit:hover {

  background: #ced4d2;

  color: #648155;

}

.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: #648155;

}

.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;

}



.feature {

  color: #fff;

}

.feature h3 {

  margin: 0;

  text-align: center;

  color: #fff;

  font-size: 22px;

  font-size: 2.2rem;

}

.feature img {

  width: 100%;

}

.feature .col {

  display: table;

  table-layout: fixed;

}

.feature .col:not(:last-child) {

  margin-bottom: 0;

}

.feature .col:nth-child(1) {

  background: #49afe6;

}

.feature .col:nth-child(2) {

  background: #8ed95d;

}

.feature .col:nth-child(3) {

  background: #f6aa48;

}

.feature .col:nth-child(4) {

  background: #f98282;

}

.feature .col .textbox {

  display: table-cell;

  width: 70%;

  padding: 1em 3%;

  vertical-align: middle;

}

.feature .col figure {

  display: table-cell;

  width: 30%;

  vertical-align: middle;

}

.feature .col figure:first-child img {

  text-align: left;

}

.feature .col figure:last-child img {

  text-align: right;

}



@media (min-width: 768px) {

  .feature h3 {

    margin: 10px 0 15px;

    font-size: 26px;

    font-size: 2.6rem;

  }

  .feature .col {

    display: block;

    table-layout: auto;

  }

  .feature .col .textbox {

    display: block;

    width: auto;

    height: 250px;

    padding: 10px;

    font-size: 13px;

    font-size: 1.3rem;

  }

  .feature .col figure {

    display: inline;

    width: auto;

    vertical-align: middle;

  }

}

.grid {

  display: block;

  margin: 0;

}

.grid.row,

.grid .row, .grid.col,

.grid .col {

  margin: 0;

}

.has-child-grid .grid {

  display: -moz-flex;

  display: flex;

  -moz-justify-content: center;

  justify-content: center;

  -moz-align-items: stretch;

  align-items: stretch;

}

.has-child-grid .grid .col {

  display: -moz-flex;

  display: flex;

  -moz-flex-direction: column;

  flex-direction: column;

  -moz-justify-content: center;

  justify-content: center;

  text-align: center;

}

.has-child-grid .grid .col.span_12 {

  padding: 20px 0;

}

.grid .grid-arrow {

  position: relative;

  overflow: hidden;

}

.grid .grid-arrow:after {

  content: "";

  display: block;

  position: absolute;

  right: -15px;

  bottom: -15px;

  width: 30px;

  height: 30px;

  background-color: #fff;

  transform: rotate(45deg);

  transition: 0.3s;

}

.grid p {

  margin: 0;

  padding: 0.2em 0;

}

.grid a {

  color: #fff;

  text-decoration: none;

  transition: 0.3s;

}

.grid a > [style^=background-image],

.grid a img {

  transition: 0.3s;

}

.grid a:hover > [style^=background-image],

.grid a:hover img {

  opacity: 0.6;

}

.grid .grid-bg1 {

  background-color: #e74c3c;

}

.grid .grid-bg1:hover {

  background-color: #eb6d60;

}

.grid .grid-bg1:hover .grid-arrow:after {

  background-color: #df2e1b;

}

.grid .grid-bg2 {

  background-color: #3498db;

}

.grid .grid-bg2:hover {

  background-color: #57aae1;

}

.grid .grid-bg2:hover .grid-arrow:after {

  background-color: #2383c4;

}

.grid .grid-bg3 {

  background-color: #f1c40f;

}

.grid .grid-bg3:hover {

  background-color: #f3cd36;

}

.grid .grid-bg3:hover .grid-arrow:after {

  background-color: #cba50c;

}

.grid .grid-bg4 {

  background-color: #1abc9c;

}

.grid .grid-bg4:hover {

  background-color: #1fe0ba;

}

.grid .grid-bg4:hover .grid-arrow:after {

  background-color: #15987e;

}

.grid .grid-bg5 {

  background-color: #9b59b6;

}

.grid .grid-bg5:hover {

  background-color: #ac75c2;

}

.grid .grid-bg5:hover .grid-arrow:after {

  background-color: #8646a0;

}

.grid .grid-bg6 {

  background-color: #34495e;

}

.grid .grid-bg6:hover {

  background-color: #435d78;

}

.grid .grid-bg6:hover .grid-arrow:after {

  background-color: #253544;

}

.grid .grid-bg7 {

  background-color: #2ecc71;

}

.grid .grid-bg7:hover {

  background-color: #4cd787;

}

.grid .grid-bg7:hover .grid-arrow:after {

  background-color: #26ab5f;

}



.ie .grid .grid-arrow:after {

  display: none;

}



@media (min-width: 768px) {

  .grid {

    display: -moz-flex;

    display: flex;

    -moz-justify-content: center;

    justify-content: center;

    -moz-align-items: stretch;

    align-items: stretch;

  }

  .grid .col {

    display: -moz-flex;

    display: flex;

    -moz-flex-direction: column;

    flex-direction: column;

    -moz-justify-content: center;

    justify-content: center;

    text-align: center;

  }

  .grid .col.span_12 {

    padding: 0;

  }

  .grid .col.has-child-grid > * {

    -moz-flex-grow: 1;

    flex-grow: 1;

  }

  .grid p {

    margin: 0;

    padding: 0.2em 0;

  }

}

.guide figure {

  margin-bottom: 1em;

}

.guide figure img {

  width: auto;

  max-width: 100%;

}

.guide .message .contents_link {

  text-align: center;

}



@media (min-width: 768px) {

  .guide {

    position: relative;

    display: flex;

    flex-direction: row;

    align-items: center;

    width: 100%;

    margin-top: -1em;

  }

  .guide figure {

    flex: 1;

    margin-bottom: 0;

    min-width: 0;

  }

  .guide .message {

    flex: 3;

    padding-left: 2%;

    padding-bottom: 45px;

  }

  .guide .message.text-only {

    padding-bottom: 0;

  }

  .guide .message h2 {

    margin-bottom: 1em;

  }

  .guide .message .contents_link {

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    text-align: center;

  }

  .guide.reverse {

    flex-direction: row-reverse;

  }

  .guide.reverse .message {

    padding-left: 0;

    padding-right: 2%;

  }

  .ie .guide {

    display: table;

  }

  .ie .guide figure {

    display: table-cell;

    width: 23.5%;

    vertical-align: middle;

  }

  .ie .guide .message {

    display: table-cell;

    width: 74.5%;

    padding-left: 2%;

    vertical-align: middle;

  }

  .ie .guide.reverse .message {

    padding-left: 2%;

    padding-right: 0;

  }

}

/* お問い合わせフォーム(form liên lạc) */

.inquiry fieldset {

  margin: 0;

  padding: 20px 10px;

  border: 0;

  background: #F8F9F4;

}

.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[type=file] {

  width: 100%;

  box-sizing: border-box;

}

.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 {

  display: block;

  overflow: hidden;

  margin: 1em auto;

  text-align: center;

}

.inquiry .submit .button,

.inquiry .submit .wpcf7-submit {

  display: block;

  margin: 0 auto 10px;

  padding: 1em 1em;

  border-radius: 0;

  max-width: 280px;

  width: 100%;

  text-align: center;

  text-decoration: none;

  transition: 0.3s;

  border: 1px solid #648155;

  color: #fff;

  background: #648155;

}

.inquiry .submit .button:hover,

.inquiry .submit .wpcf7-submit:hover {

  border: 1px solid #648155;

  color: #648155;

  background: #fff;

}

.inquiry .submit .wpcf7-spinner {

  display: block;

  margin: 0 auto;

}

.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: #F8F9F4;

}

.news.typeC .news_bg {

  padding: 1em;

}

.news h2 {

  color: #000000;

}

.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 dd:nth-child(2) {

    border-top: 1px solid #ccc;

  }

  .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;

}



.qa h3.question {

  font-size: 14px;

  font-size: 1.4rem;

  border: none;

}

.qa .question {

  position: relative;

  margin-bottom: 1em;

  padding: 2.5em 2.5em 2.5em 81px;

  background-color: #F8F9F4;

  font-weight: normal;

}

.qa .question:before {

  content: "Q";

  font-size: 40px;

  font-size: 4rem;

  color: #A2978B;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 24px;

  margin: auto;

  display: -moz-flex;

  display: flex;

  -moz-align-items: center;

  align-items: center;

  line-height: 1.2;

}

@media screen and (max-width: 767px) {

  .qa .question {

    padding: 2em 2em 2em 53px;

  }

  .qa .question:before {

    font-size: 30px;

    font-size: 3rem;

    left: 16px;

  }

}

.qa .question:after {

  content: none;

}

.qa .question.open:after {

  transform: rotate(0);

}

.qa .answer {

  position: relative;

  padding: 1em 2.5em 2em 81px;

  font-size: 14px;

  font-size: 1.4rem;

  border-bottom: 1px solid #627957;

}

.qa .answer:not(:last-child) {

  margin-bottom: 2em;

}

.qa .answer:before {

  content: "A";

  font-size: 40px;

  font-size: 4rem;

  color: #A2978B;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 24px;

  margin: auto;

  display: -moz-flex;

  display: flex;

  -moz-align-items: center;

  align-items: center;

  line-height: 1.2;

}

@media screen and (max-width: 767px) {

  .qa .answer {

    padding: 1em 2em 2em 53px;

  }

  .qa .answer:before {

    font-size: 30px;

    font-size: 3rem;

    left: 16px;

  }

}



.qa.qa-open .question {

  padding-right: 1em;

  cursor: default;

}

.qa.qa-open .question:hover {

  background-color: #F8F9F4;

}

.qa.qa-open .question:after {

  display: none;

}

.qa.qa-open .answer {

  display: block;

}



.highlight .qa .question {

  background: white;

}

.highlight .qa .question:hover {

  background: #faf9f5;

}

.highlight .qa.qa-open .question:hover {

  background: white;

}



.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: #648155;

}

.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;

  }

}

.sns_icons {

  display: table;

  margin: 0;

  padding: 0;

  list-style: none;

  font-size: 0px;

  font-size: 0rem;

  margin: auto;

}

.sns_icons > li {

  display: inline;

  padding-left: 0;

  padding-right: 0;

  white-space: nowrap;

  font-size: 15px;

  font-size: 1.5rem;

}

.sns_icons li {

  display: inline-block;

}

.sns_icons li:not(:last-child) {

  margin-right: 10px;

}

.sns_icons a {

  display: block;

  overflow: hidden;

  text-indent: -9999px;

  white-space: nowrap;

  width: 34px;

  height: 34px;

  background-repeat: no-repeat;

  background-size: contain;

}

.sns_icons a.icon_facebook {

  background-image: url(/wp-content/uploads/icon_facebook.png);

}

.sns_icons a.icon_twitter {

  background-image: url(/wp-content/uploads/icon_twitter.png);

}

.sns_icons a.icon_line {

  background-image: url(/wp-content/uploads/icon_line.png);

}

.sns_icons a.icon_google {

  background-image: url(/wp-content/uploads/icon_google.png);

}

.sns_icons a.icon_instagram {

  background-image: url(/wp-content/uploads/icon_instagram.png);

}



footer .sns_icons {

  margin-top: 1.5em;

}



@media (min-width: 768px) {

  .sns_icons {

    margin: 0;

  }

  .sns_icons.center {

    margin: auto;

  }

  .sns_icons li:not(:last-child) {

    margin-right: 20px;

  }

  .sns_icons a {

    width: 68px;

    height: 68px;

  }

  footer .sns_icons {

    margin-top: 30px;

  }

}

@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;

  }

}

.step .row,

.step-h .col {

  position: relative;

  padding: 1em;

  background: #F8F9F4;

}



.step .row:not(:last-child):after,

.step-h .col:not(:last-child):after,

.step-h .row.continue .col:last-child:after {

  content: "";

  display: block;

  position: absolute;

  left: 0;

  top: 100%;

  width: 100%;

  height: 0;

  background: url("/wp-content/uploads/arrow_down.svg") center center no-repeat;

  background-size: 45px auto;

}



@media (max-width: 767px) {

  .step .row:not(:last-child),

  .step-h .col:not(:last-child),

  .step-h .row.continue .col:last-child {

    margin-bottom: 18%;

  }

  .step .row:not(:last-child):after,

  .step-h .col:not(:last-child):after,

  .step-h .row.continue .col:last-child:after {

    padding-top: 20%;

  }

  .step-h .row.continue {

    margin-bottom: 0;

  }

}

@media (min-width: 768px) {

  .step .row {

    display: table;

    table-layout: fixed;

    width: 100%;

    padding: 2em;

  }

  .step .row .col {

    float: none;

    display: table-cell;

    vertical-align: middle;

  }

  .step .row .col:not(:first-child) {

    padding-left: 2%;

  }

  .step .row:not(:last-child) {

    margin-bottom: 80px;

  }

  .step .row:not(:last-child):after {

    top: 100%;

    padding-top: 60px;

    margin: 10px 0;

  }

  .step h3:last-child {

    margin-bottom: 0;

    font-size: 16px;

    font-size: 1.6rem;

    border: none;

  }

  .step h3:last-child:after, .step h3:last-child:before {

    content: none;

  }

  .step .row:not(:last-child):after,

  .step-h .col:not(:last-child):after,

  .step-h .row.continue .col:last-child:after {

    background-size: auto 100%;

  }

  .step-h.gutters .col {

    margin: 0;

  }

  .step-h .col {

    padding: 0;

    background: none;

  }

  .step-h .col:not(:last-child) {

    position: relative;

    margin-right: 4%;

  }

  .step-h .col:not(:last-child):after {

    display: none;

  }

  .step-h .col:not(:last-child) figure span {

    display: inline-block;

    position: relative;

    width: 100%;

  }

  .step-h .col:not(:last-child) figure span:after {

    content: "";

    display: block;

    width: 28px;

    height: 100%;

    position: absolute;

    right: -30px;

    top: 0;

    background: url("/wp-content/uploads/arrow_right.svg") center center no-repeat;

    background-size: contain;

  }

  .step-h .span_3 {

    width: 22%;

  }

  .step-h .span_4 {

    width: 30.66666666%;

  }

  .step-h .span_6 {

    width: 48%;

  }

}

@media (min-width: 1024px) {

  .step-h .col:not(:last-child) figure span:after {

    right: -34px;

  }

}

table {

  margin: 0 auto;

}

table td,

table th {

  padding: 0.7em 1em;

}

@media (max-width: 767px) {

  table td,

  table th {

    padding: 0.7em 0.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-top: 1px solid #D9D9D9;

  border-bottom: 1px solid #D9D9D9;

  padding: 1.5em 1em;

}

.table-default th {

  font-weight: 700;

  text-align: left;

}

.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 #648155;

  border-bottom: 1px solid #648155;

}

@media (max-width: 767px) {

  .table-menu td,

  .table-menu th {

    padding: 0.7em 0.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-top: 1.2px solid #D9D9D9;

  border-bottom: 1.2px solid #D9D9D9;

  padding: 0.7em 1em;

  text-align: center;

}

@media (max-width: 767px) {

  .table-schedule td,

  .table-schedule th {

    padding: 0.7em 0.3em;

  }

}

.table-schedule th:nth-child(1) {

  text-align: left;

}

.table-schedule thead th {

  border-top: none;

}

.table-schedule tbody th {

  background: transparent;

}

.table-schedule td {

  background: transparent;

  position: relative;

}

.table-schedule td span {

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

  margin: auto;

}

.table-schedule td span.open {

  width: 15px;

  height: 15px;

  border-radius: 100%;

  background: #648155;

}

.table-schedule td span.close {

  width: 15px;

  height: 1px;

  background: #648155;

}

.table-schedule td span.exception {

  width: 0;

  height: 0;

  border-style: solid;

  border-color: transparent transparent #648155 transparent;

  border-width: 0px 7.5px 12.99px 7.5px;

}



.table-summary {

  border-top: 1px solid #D9D9D9;

  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 #D9D9D9;

}

.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;

  }

}

@media (max-width: 767px) {

  .responsive-scroll-container {

    display: block;

    width: 100%;

    min-height: 0.01%;

    overflow-x: scroll;

  }

  .responsive-scroll-container .responsive-scroll-inner {

    width: 798px;

    padding: 0 15px 15px;

  }

  .responsive-scroll-container table {

    width: 768px;

    margin: 0;

  }

}

@media (max-width: 767px) {

  table.combine tbody tr:last-child td,

  table.combine tbody tr:last-child th {

    border-bottom: 0;

  }

}

table.table-default.typeA tr td,

table.table-default.typeA tr th {

  border: 0;

}

table.table-default.typeA tr:nth-child(odd) th {

  background: #648155;

}

table.table-default.typeA tr:nth-child(odd) td {

  background: #F8F9F4;

}

table.table-default.typeA tr:nth-child(even) th {

  background: #6d6153;

}

table.table-default.typeA tr:nth-child(even) td {

  background: white;

}

table.table-default.typeB {

  border-collapse: separate;

  border-spacing: 0;

  overflow: hidden;

}

table.table-default.typeB tbody td,

table.table-default.typeB tbody th {

  background: transparent;

  color: #000000;

  border: 0;

  border-bottom: 1px dashed #D9D9D9;

}

table.table-default.typeB tbody tr {

  position: relative;

}

table.table-default.typeB tbody td {

  transform: translateX(2px);

}

table.table-default.typeC th {

  background: rgba(80, 71, 61, 0.7);

  color: #fff;

}

table.table-default.typeC td,

table.table-default.typeC th {

  border: 0;

}

table.table-default.typeC td:not(:last-child),

table.table-default.typeC th:not(:last-child) {

  border-bottom: 2px #fff solid;

}

table.table-default.typeC tr {

  position: relative;

}

table.table-default.typeC td {

  transform: translateX(2px);

}



.highlight table.table-default.typeC td,

.highlight table.table-default.typeC th {

  border: 0;

}

.highlight table.table-default.typeC td:not(:last-child),

.highlight table.table-default.typeC th:not(:last-child) {

  border-bottom: 2px #F8F9F4 solid;

}



._table_line .news dl {

  border-top: 1px dotted #a6a6a6;

  max-height: none;

}

._table_line .news dl dt {

  width: 230px;

  padding-left: 20px;

}

._table_line .news dl dt + dd {

  border-bottom: 1px dotted #a6a6a6;

  padding-left: 230px;

}



.wide_image img {

  width: 100%;

  vertical-align: top;

}



@media (min-width: 768px) {

  .wide_image div {

    margin: 0 auto;

  }

}

.h1_wrap {

  padding: 6.5em 0;

  background: #E8EBE7;

  margin: 0 0 0.5em;

}



h1:not(.title) {

  text-align: left;

  position: relative;

  font-size: 26px;

  font-size: 2.6rem;

  font-weight: normal;

  color: #648155;

  margin: 0 auto;

  max-width: 1220px;

  padding: 0 10px;

  letter-spacing: 0.08em;

}

h1:not(.title) a {

  text-decoration: none;

}

h1:not(.title) a:hover {

  text-decoration: underline;

}

h1:not(.title) span {

  display: block;

  font-size: 50px;

  font-size: 5rem;

  font-family: "Marcellus", serif;

  letter-spacing: 0.04em;

}



@media (max-width: 767px) {

  .h1_wrap {

    padding: 3.5em 0;

  }

  h1:not(.title) {

    font-size: 20px;

    font-size: 2rem;

  }

  h1:not(.title):after {

    height: 2px;

  }

  h1:not(.title) span {

    font-size: 30px;

    font-size: 3rem;

  }

}

h2 {

  display: block;

  text-align: left;

  margin: 0 auto 1.5em;

  position: relative;

  border: 0;

  word-wrap: break-word;

  font-weight: normal;

  font-size: 22px;

  font-size: 2.2rem;

  color: #000000;

  letter-spacing: 0.1em;

  padding-top: 36px;

}

h2 span {

  font-size: 18px;

  font-size: 1.8rem;

  display: block;

  color: #627957;

  font-family: "Marcellus", serif;

  margin-bottom: 5px;

}

h2 a {

  text-decoration: none;

}

h2 a:hover {

  text-decoration: underline;

}

h2:before, h2:after {

  content: "";

  height: 1px;

  position: absolute;

  top: 0;

  left: 0;

  margin: auto;

}

h2:before {

  width: 100vw;

  background: #D9D9D9;

}

h2:after {

  width: 100px;

  background: #627957;

}



@media (max-width: 767px) {

  h2 {

    font-size: 18px;

    font-size: 1.8rem;

    padding-top: 23px;

  }

  h2:after {

    width: 60px;

  }

  h2 span {

    font-size: 16px;

    font-size: 1.6rem;

  }

}

body.home h2 {

  font-size: 18px;

  font-size: 1.8rem;

  padding-top: 0;

}

body.home h2 span {

  font-size: 70px;

  font-size: 7rem;

  color: #D4DEBC;

  margin-bottom: 0;

  line-height: 1;

}

body.home h2:before, body.home h2:after {

  display: none;

}

@media screen and (max-width: 767px) {

  body.home h2 {

    font-size: 16px;

    font-size: 1.6rem;

  }

  body.home h2 span {

    font-size: 50px;

    font-size: 5rem;

  }

}



h3 {

  padding-left: 1em;

  font-size: 16px;

  font-size: 1.6rem;

  position: relative;

  color: #000000;

  font-weight: 800;

  letter-spacing: 0.1em;

}

h3 a {

  text-decoration: none;

}

h3 a:hover {

  text-decoration: underline;

}

h3:after {

  content: "";

  position: absolute;

  bottom: 0;

  top: 0;

  left: 0;

  margin: auto;

  display: block;

  width: 3px;

  height: 16px;

  margin: auto;

  background: #627957;

}

h3.border_h3 {

  padding: 0.5em 0;

  border-top: 1px solid #D9D9D9;

  border-bottom: 1px solid #D9D9D9;

}

h3.border_h3:after {

  display: none;

}



@media (max-width: 767px) {

  h3 {

    font-size: 16px;

    font-size: 1.6rem;

  }

}

h4 {

  margin: 0 0 0.7em;

  font-size: 16px;

  font-size: 1.6rem;

  position: relative;

  color: #000000;

  font-weight: 800;

  letter-spacing: 0.1em;

}

h4 a {

  text-decoration: none;

}

h4 a:hover {

  text-decoration: underline;

}



@media (max-width: 767px) {

  h4 {

    font-size: 14px;

    font-size: 1.4rem;

  }

}

.widget_wrap .widget_header {

  font-size: 16px;

  font-size: 1.6rem;

  color: #000000;

  padding: 0.7em 0 0.7em 1em;

  background: rgba(80, 71, 61, 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%;

  width: 100%;

  -o-object-fit: cover;

     object-fit: cover;

}

.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: 1220px;

  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: 46.6666666667%;

  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: 1200px;

  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: 750px) {

  .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: 750px) {

  .main_visual .main_visual_copy > li img {

    width: 90%;

  }

}

.main_visual .main_visual_slick {

  padding-top: 80%!important;

}



@media (min-width: 1200px) {

  .main_visual .main_visual_slick {

    padding-top: 0 !important;

    height: 960px !important;

  }

}

@media (min-width: 1920px) {

  .main_visual .main_visual_slick {

    padding-top: 50%!important;

  }

}

@media (max-width: 750px) {

  .main_visual .main_visual_slick {

    padding-top: 141.3333333333%!important;

  }

}

.slick-dots li button {

  margin: 0 auto;

  background: #ccc;

}

.slick-dots li.slick-active button {

  background: #648155;

}



.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;

}



.main_visual .main_visual_slick li:not(:first-child) img {

  opacity: 0;

  transition: opacity 1000ms ease 0s;

}

.main_visual .main_visual_slick.slick-initialized li:not(:first-child) img {

  opacity: 1;

}



.epress_search {

  padding: 3px;

  width: 100%;

  z-index: 1;

}

.epress_search form {

  overflow: hidden;

  border: 4px solid #648155;

  display: -moz-flex;

  display: flex;

  -moz-justify-content: space-between;

  justify-content: space-between;

  -moz-align-items: stretch;

  align-items: stretch;

}

.epress_search input[type=text],

.epress_search input[type=submit] {

  margin: 0;

  padding: 0;

  background: none;

  border: none;

  border-radius: 0;

  outline: none;

  -webkit-appearance: none;

     -moz-appearance: none;

          appearance: none;

}

.epress_search input[type=text] {

  color: #000;

  margin: 0 0.3em;

  width: 70%;

}

.epress_search input[type=submit] {

  cursor: pointer;

  padding: 0.6em 1em;

  color: #fff;

  width: 30%;

  background: rgba(80, 71, 61, 0.7);

}

@media (min-width: 900px) {

  .epress_search input[type=submit] {

    min-width: 65px;

  }

}



@media (max-width: 899px) {

  header .global_nav > ul > li.gnav_search {

    position: static;

  }

  header .global_nav > ul > li.gnav_search > a {

    display: none !important;

  }

  header .global_nav > ul > li.gnav_search .epress_search {

    display: block !important;

    position: static !important;

    width: 100% !important;

    background: rgba(80, 71, 61, 0.9);

  }

  header .global_nav > ul > li.gnav_search .epress_search input[type=text],

  header .global_nav > ul > li.gnav_search .epress_search input[type=submit] {

    line-height: 1;

  }

}

/*

 * ヘッダーナビのデザイン(design của header navi)

 */

.epress_search form {

  background: #fff;

}

/*

  * ヘッダの検索表示タイプ(type hiển thị tìm kiếm của header)

  */

header .global_nav > ul > li.gnav_search {

  position: relative;

}

header .global_nav > ul > li.gnav_search a {

  color: transparent !important;

  display: inline-block;

  vertical-align: middle;

  background: url("/wp-content/uploads/search.png") no-repeat center center;

  overflow: hidden;

  text-indent: -9999px;

  white-space: nowrap;

  width: 30px;

  height: 30px;

}

header .global_nav > ul > li.gnav_search a:hover {

  border-bottom: 0;

}

header .global_nav > ul > li.gnav_search .epress_search {

  display: none;

  position: absolute;

  top: 100%;

  right: 0;

}

@media (min-width: 900px) {

  header .global_nav > ul > li.gnav_search .epress_search {

    width: 230px;

  }

  header .global_nav > ul > li.gnav_search .epress_search input[type=submit] {

    font-size: 12px;

    font-size: 1.2rem;

    padding: 0.5em;

  }

}



.article_list {

  padding: 0.5em;

  position: relative;

  overflow: hidden;

}

@media (min-width: 768px) {

  .article_list {

    padding: 1em;

  }

}

.article_list:nth-child(even) {

  color: #000000;

  background: #F8F9F4;

}

.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: 0.3s;

}

.article_list:hover:before {

  background: #648155;

}

.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 #648155;

  border-right: 5px solid #648155;

  transform: translate(0, -50%) rotate(45deg);

  transform-origin: left top;

  transition: 0.2s;

}

@media (max-width: 767px) {

  .article_list .case_arrow:after {

    left: 0;

    bottom: 25%;

    border-top: 5px solid #648155;

    border-right: 5px solid #648155;

    transform: translate(0, -50%) rotate(135deg);

    transform-origin: center;

  }

}

.article_list .span_12 {

  margin: 2% 0;

}



.pagination {

  text-align: center;

}

.pagination > * {

  display: inline-block;

  padding: 0.5em;

  border: 1px solid #ccc;

}

.pagination a {

  text-decoration: none;

  background: #F8F9F4;

  transition: 0.3s;

}

.pagination a:hover {

  background: #fff;

}

.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: #F8F9F4;

}

.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: #F8F9F4;

}

.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 #648155;

  border-right: 3px solid #648155;

  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: #F8F9F4;

}

.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: 16% !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: 16% !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 #648155;

  transition: 0.2s;

  z-index: 1;

}

.article_single04 .slick-prev {

  left: 0;

}

.article_single04 .slick-prev:after {

  left: 0;

  border-left: 3px solid #648155;

  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 #648155;

  transform: translate(0, -50%) rotate(45deg);

  transform-origin: left top;

}

.article_single04 .ofi {

  background: #F8F9F4;

  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(80, 71, 61, 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 #648155;

  border-right: 5px solid #648155;

  transform: translate(0, -50%) rotate(45deg);

  transform-origin: left top;

  transition: 0.2s;

}

@media (max-width: 767px) {

  .article_detail .case_arrow:after {

    left: 0;

    bottom: 25%;

    border-top: 5px solid #648155;

    border-right: 5px solid #648155;

    transform: translate(0, -50%) rotate(135deg);

    transform-origin: center;

  }

}

.article_detail .span_12 {

  margin: 2% 0;

}



.epress_social {

  letter-spacing: -0.4em;

  text-align: right;

  padding: 2%;

}

.epress_social > * {

  letter-spacing: normal;

  vertical-align: top;

  display: inline-block;

  margin-right: 10px;

}



.epress_pager {

  overflow: hidden;

  margin-bottom: 5%;

}

.epress_pager .epress_pager_prev {

  float: left;

}

.epress_pager .epress_pager_prev a {

  display: block;

  position: relative;

  padding-left: 15px;

  text-decoration: none;

}

.epress_pager .epress_pager_prev a:before, .epress_pager .epress_pager_prev a:after {

  content: "";

  display: block;

  position: absolute;

  left: 2px;

  margin: auto;

  width: 8px;

  height: 1px;

  background: #000000;

  transition: 0.2s;

}

.epress_pager .epress_pager_prev a:before {

  transform: translateY(-50%) rotate(-45deg);

  top: calc(50% - 2px);

}

.epress_pager .epress_pager_prev a:after {

  transform: translateY(-50%) rotate(-135deg);

  top: calc(50% + 3px);

}

.epress_pager .epress_pager_prev a:hover {

  text-decoration: underline;

}

.epress_pager .epress_pager_prev a:hover:before {

  left: 0;

}

.epress_pager .epress_pager_prev a:hover:after {

  left: 0;

}

.epress_pager .epress_pager_next {

  float: right;

}

.epress_pager .epress_pager_next a {

  display: block;

  position: relative;

  padding-right: 15px;

  text-decoration: none;

}

.epress_pager .epress_pager_next a:before, .epress_pager .epress_pager_next a:after {

  content: "";

  display: block;

  position: absolute;

  right: 2px;

  margin: auto;

  width: 8px;

  height: 1px;

  background: #000000;

  transform-origin: center;

  transition: 0.2s;

}

.epress_pager .epress_pager_next a:before {

  transform: translateY(-50%) rotate(45deg);

  top: calc(50% - 2px);

}

.epress_pager .epress_pager_next a:after {

  transform: translateY(-50%) rotate(135deg);

  top: calc(50% + 3px);

}

.epress_pager .epress_pager_next a:hover {

  text-decoration: underline;

}

.epress_pager .epress_pager_next a:hover:before {

  right: 0;

}

.epress_pager .epress_pager_next a:hover:after {

  right: 0;

}



#commentform {

  background: transparent;

  padding: 2% 5%;

  border: 1px solid #333;

}

#commentform #comment {

  width: 100%;

}

#commentform #submit {

  background: #648155;

  color: #fff;

  border: 0;

  font-size: 14px;

  font-size: 1.4rem;

  padding: 3px 10px;

  margin: 0 auto;

  display: table;

}

#commentform input[type=submit] {

  background: #648155;

  color: #fff;

  border: 0;

  font-size: 14px;

  font-size: 1.4rem;

  padding: 0.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;

  }

}

#biz_calendar,

#biz_calendar1,

#biz_calendar2 {

  max-width: none;

  margin: 2% auto 0;

  font-family: inherit;

  padding: 0.3em 1em;

  background: #F8F9F4;

  font-size: 18px;

  font-size: 1.8rem;

}

#biz_calendar p,

#biz_calendar1 p,

#biz_calendar2 p {

  margin: 0;

  line-height: 170%;

  font-size: 12px;

  font-size: 1.2rem;

  text-align: left;

}

#biz_calendar p span.boxholiday,

#biz_calendar1 p span.boxholiday,

#biz_calendar2 p span.boxholiday {

  background-color: #ffb0c3;

  padding-left: 25px;

  margin-right: 10px;

}

#biz_calendar p span.boxeventday,

#biz_calendar1 p span.boxeventday,

#biz_calendar2 p span.boxeventday {

  background-color: #64bdeb;

  padding-left: 25px;

  margin-right: 10px;

}

#biz_calendar table.bizcal,

#biz_calendar1 table.bizcal,

#biz_calendar2 table.bizcal {

  margin: 10px 0;

  width: 100%;

  table-layout: fixed;

  border: none;

  line-height: 1.6;

  cursor: default;

  vertical-align: middle;

  font-size: 18px;

  font-size: 1.8rem;

  border-collapse: collapse;

  border-spacing: 1px;

  background: transparent;

}

#biz_calendar table.bizcal tr:not(:first-child) > *:not(.holiday):not(.eventday):not(.today),

#biz_calendar1 table.bizcal tr:not(:first-child) > *:not(.holiday):not(.eventday):not(.today),

#biz_calendar2 table.bizcal tr:not(:first-child) > *:not(.holiday):not(.eventday):not(.today) {

  background: #fff;

}

#biz_calendar table.bizcal th,

#biz_calendar1 table.bizcal th,

#biz_calendar2 table.bizcal th {

  text-align: center;

  border-width: 0;

  padding: 0.5em 0.2em;

  color: #000000;

  background-color: #dedede;

}

#biz_calendar table.bizcal th:first-child,

#biz_calendar1 table.bizcal th:first-child,

#biz_calendar2 table.bizcal th:first-child {

  color: red;

}

#biz_calendar table.bizcal th:nth-last-of-type(1),

#biz_calendar1 table.bizcal th:nth-last-of-type(1),

#biz_calendar2 table.bizcal th:nth-last-of-type(1) {

  color: blue;

}

#biz_calendar table.bizcal td,

#biz_calendar1 table.bizcal td,

#biz_calendar2 table.bizcal td {

  text-align: center;

  border: 1px solid rgba(0, 57, 122, 0.3);

  padding: 0.5em 0.2em;

  color: #000000;

}

#biz_calendar table.bizcal .calmonth,

#biz_calendar1 table.bizcal .calmonth,

#biz_calendar2 table.bizcal .calmonth {

  text-align: left;

  font-weight: bold;

  padding: 2px 7px;

  border: none;

}

#biz_calendar table.bizcal .calbtn,

#biz_calendar1 table.bizcal .calbtn,

#biz_calendar2 table.bizcal .calbtn {

  border: none;

  cursor: pointer;

}

#biz_calendar table.bizcal .holiday,

#biz_calendar1 table.bizcal .holiday,

#biz_calendar2 table.bizcal .holiday {

  background-color: #ffb0c3;

  color: red;

}

#biz_calendar table.bizcal .eventday,

#biz_calendar1 table.bizcal .eventday,

#biz_calendar2 table.bizcal .eventday {

  background-color: #64bdeb;

  color: #ffffff;

}

#biz_calendar table.bizcal .eventday a,

#biz_calendar1 table.bizcal .eventday a,

#biz_calendar2 table.bizcal .eventday a {

  color: #ffffff;

}

#biz_calendar table.bizcal .today,

#biz_calendar1 table.bizcal .today,

#biz_calendar2 table.bizcal .today {

  font-weight: bold;

  text-decoration: underline;

  color: #000000;

}

#biz_calendar table.bizcal .today a,

#biz_calendar1 table.bizcal .today a,

#biz_calendar2 table.bizcal .today a {

  font-weight: bold;

  color: #000000;

}

#biz_calendar table.bizcal img,

#biz_calendar1 table.bizcal img,

#biz_calendar2 table.bizcal img {

  vertical-align: middle;

  box-shadow: none;

  margin: 0;

}

#biz_calendar table.bizcal .down-img,

#biz_calendar1 table.bizcal .down-img,

#biz_calendar2 table.bizcal .down-img {

  text-align: right;

}

#biz_calendar table.bizcal .today-img,

#biz_calendar1 table.bizcal .today-img,

#biz_calendar2 table.bizcal .today-img {

  text-align: center;

}

#biz_calendar table.bizcal .up-img,

#biz_calendar1 table.bizcal .up-img,

#biz_calendar2 table.bizcal .up-img {

  text-align: left;

}



#biz_calendar table.bizcal td,

#biz_calendar table.bizcal th {

  padding: 0.5em 0.2em;

}



.column_sub #biz_calendar,

.column_sub #biz_calendar1,

.column_sub #biz_calendar2 {

  font-size: 12px;

  font-size: 1.2rem;

}

.column_sub #biz_calendar p span.boxholiday,

.column_sub #biz_calendar1 p span.boxholiday,

.column_sub #biz_calendar2 p span.boxholiday {

  background-color: #ffb0c3;

  padding-left: 25px;

  margin-right: 10px;

}

.column_sub #biz_calendar p span.boxeventday,

.column_sub #biz_calendar1 p span.boxeventday,

.column_sub #biz_calendar2 p span.boxeventday {

  background-color: #64bdeb;

  padding-left: 25px;

  margin-right: 10px;

}

.column_sub #biz_calendar table.bizcal,

.column_sub #biz_calendar1 table.bizcal,

.column_sub #biz_calendar2 table.bizcal {

  font-size: 12px;

  font-size: 1.2rem;

}

.column_sub #biz_calendar table.bizcal td,

.column_sub #biz_calendar table.bizcal th,

.column_sub #biz_calendar1 table.bizcal td,

.column_sub #biz_calendar1 table.bizcal th,

.column_sub #biz_calendar2 table.bizcal td,

.column_sub #biz_calendar2 table.bizcal th {

  padding: 0.3em 0.2em;

}



@media (max-width: 767px) {

  #biz_calendar,

  #biz_calendar1,

  #biz_calendar2 {

    font-size: 12px;

    font-size: 1.2rem;

  }

  #biz_calendar p span.boxholiday,

  #biz_calendar1 p span.boxholiday,

  #biz_calendar2 p span.boxholiday {

    background-color: #ffb0c3;

    padding-left: 25px;

    margin-right: 10px;

  }

  #biz_calendar p span.boxeventday,

  #biz_calendar1 p span.boxeventday,

  #biz_calendar2 p span.boxeventday {

    background-color: #64bdeb;

    padding-left: 25px;

    margin-right: 10px;

  }

  #biz_calendar table.bizcal,

  #biz_calendar1 table.bizcal,

  #biz_calendar2 table.bizcal {

    font-size: 12px;

    font-size: 1.2rem;

  }

  #biz_calendar table.bizcal td,

  #biz_calendar table.bizcal th,

  #biz_calendar1 table.bizcal td,

  #biz_calendar1 table.bizcal th,

  #biz_calendar2 table.bizcal td,

  #biz_calendar2 table.bizcal th {

    padding: 0.3em 0.2em;

  }

}

.calendar_wrap {

  position: relative;

  padding: 4em 1.8em 2em;

  display: inline-block;

  background: rgba(80, 71, 61, 0.05);

  font-size: 10px;

  font-size: 1rem;

}

.calendar_wrap caption {

  position: absolute;

  top: 24px;

  left: 0;

  right: 0;

  margin: auto;

}

.calendar_wrap table {

  border-spacing: 0;

  border-collapse: collapse;

}

.calendar_wrap table thead th {

  background: rgba(80, 71, 61, 0.7);

  color: #fff;

  border: 1px solid #D9D9D9;

  border-bottom: none;

}

.calendar_wrap table tfoot {

  position: absolute;

  top: 10px;

  left: 0;

  right: 0;

  margin: auto;

}

.calendar_wrap table tfoot #prev a {

  width: 26px;

  height: 25px;

  overflow: hidden;

  text-indent: -9999px;

  white-space: nowrap;

  display: block;

  position: absolute;

  top: 0;

  left: 40px;

}

.calendar_wrap table tfoot #prev a:after {

  content: "";

  display: block;

  position: absolute;

  top: 50%;

  margin: auto;

  width: 6px;

  height: 6px;

  border-top: 1px solid #000000;

  transition: 0.2s;

}

.calendar_wrap table tfoot #prev a:after {

  transform: translate(0, -50%) rotate(-45deg);

  border-left: 1px solid #000000;

  left: 15%;

}

.calendar_wrap table tfoot #prev a:hover:after {

  left: 2%;

}

.calendar_wrap table tfoot #next a {

  width: 26px;

  height: 25px;

  overflow: hidden;

  text-indent: -9999px;

  white-space: nowrap;

  display: block;

  position: absolute;

  top: 0;

  right: 40px;

}

.calendar_wrap table tfoot #next a:after {

  content: "";

  display: block;

  position: absolute;

  top: 50%;

  margin: auto;

  width: 6px;

  height: 6px;

  border-top: 1px solid #000000;

  transition: 0.2s;

}

.calendar_wrap table tfoot #next a:after {

  transform: translate(0, -50%) rotate(45deg);

  border-right: 1px solid #000000;

  right: 15%;

}

.calendar_wrap table tfoot #next a:hover:after {

  right: 2%;

}

.calendar_wrap table tbody td {

  text-align: center;

  background: #fff;

  border: 1px solid #D9D9D9;

}



@media (min-width: 768px) {

  .column_sub .calendar_wrap {

    padding: 40px 5px 5px;

    width: 100%;

    margin: 0 auto 1em;

  }

  .column_sub .calendar_wrap caption {

    top: 10px;

    font-size: 14px;

    font-size: 1.4rem;

  }

  .column_sub .calendar_wrap table {

    width: 100%;

  }

  .column_sub .calendar_wrap table th,

  .column_sub .calendar_wrap table td {

    padding: 0.5em 0.2em;

  }

  .column_sub .calendar_wrap table tfoot #prev a {

    width: 18px;

    height: 18px;

    top: 0;

    left: 20px;

  }

  .column_sub .calendar_wrap table tfoot #next a {

    width: 18px;

    height: 18px;

    top: 0;

    right: 20px;

  }

}

@media (max-width: 767px) {

  .calendar_wrap {

    padding: 40px 5px 5px;

    width: 100%;

  }

  .calendar_wrap caption {

    top: 10px;

  }

  .calendar_wrap table {

    width: 100%;

  }

  .calendar_wrap table th,

  .calendar_wrap table td {

    padding: 0.5em 0.2em;

  }

  .calendar_wrap table tfoot #prev a {

    width: 12px;

    height: 12px;

    top: 0;

    left: 20px;

  }

  .calendar_wrap table tfoot #next a {

    width: 12px;

    height: 12px;

    top: 0;

    right: 20px;

  }

}

/*

 * ボタン矢印(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 #648155;

  border-right: 1px solid #648155;

}

.add_arrow.inverse:hover {

  border-color: #fff;

  color: #fff;

  background: #648155;

}

.add_arrow.inverse:hover:after {

  border-color: #fff;

}

.add_arrow.blank_link1:after {

  width: 15px;

  height: 13px;

  border: none;

  background: url(/wp-content/uploads/icon_blank01.svg) no-repeat center/contain;

  transform: translate(0, -50%) rotate(0);

}

.add_arrow.blank_link1:hover {

  color: #fff;

  background: #648155;

}

.add_arrow.blank_link2:after {

  width: 13px;

  height: 13px;

  border: none;

  background: url(/wp-content/uploads/icon_blank02.svg) no-repeat center/contain;

  transform: translate(0, -50%) rotate(0);

}

.add_arrow.blank_link2:hover {

  color: #fff;

  background: #648155;

}

.add_arrow:hover {

  border: 1px solid #75593A;

  color: #fff;

  background: #75593A;

}

.add_arrow:hover:after {

  right: 4%;

  border-color: #fff;

}



/*

 * moreボタン雛形 (hình dạng button more)

 */

.more {

  display: block;

  overflow: hidden;

  margin: auto;

}

.more a {

  display: block;

  border: 1px solid #648155;

  color: #fff;

  background: #648155;

  padding: 0.5em;

  margin: 0 auto 1px;

  max-width: 235px;

  width: 100%;

  text-align: center;

  text-decoration: none;

  transition: 0.3s;

  font-weight: 600;

  font-size: 16px;

  font-size: 1.6rem;

  border-radius: 100px;

  line-height: 1.8;

}

.more a.inverse {

  border: 1px solid #648155;

  color: #648155;

  background: #fff;

}

.more a.anchor_link {

  border-radius: 0;

  background: transparent;

  color: #648155;

  max-width: 280px;

}

.more a.anchor_link:after {

  border-color: #648155;

  transform: translate(0, -50%) rotate(135deg);

  width: 8px;

  height: 8px;

}

.more a.anchor_link:hover {

  background: #648155;

  color: #fff;

}

.more a.anchor_link:hover:after {

  border-color: #fff;

}

@media screen and (min-width: 768px) {

  .more.pc-btn-left a {

    margin-left: 0;

  }

}



/*

 * ボタンエフェクト(button effect)

 */

.effect01 {

  overflow: hidden;

  position: relative;

  z-index: 0;

}

.effect01:before {

  content: "";

  position: absolute;

  display: block;

  width: 0;

  height: 100%;

  top: 0;

  left: -35%;

  z-index: -1;

  background: #fff;

  transform: skew(50deg);

  transform-origin: top left;

  transition-duration: 0.5s;

}

.effect01:hover {

  background: #648155;

  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.3);

}

.effect01:hover:before {

  height: 100%;

  width: 135%;

}



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: 0.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 (max-width: 899px) {

  header .global_nav > ul > li > ul > li a {

    background: rgba(68, 61, 52, 0.9);

  }

}



@media (min-width: 900px) {

  header .global_nav > ul > li.has_under {

    position: relative;

  }

  header .global_nav > ul > li.has_under > a {

    padding-right: 1.5em;

  }

  header .global_nav > ul > li.has_under > a:after {

    border-color: #000000;

    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: -0.4em;

    background: rgba(80, 71, 61, 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%;

    width: 100%;

    text-align: center;

    border-bottom: 0;

    padding: 0;

  }

  header .global_nav > ul > li.has_under > ul > li a {

    background: transparent;

    padding: 1em;

    overflow-wrap: break-word;

  }

}

.pagetop {

  position: fixed;

  bottom: 5%;

  right: 5%;

  z-index: 99;

}

.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: #648155;

  opacity: 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: 0.2s;

}



footer.high .pagetop {

  position: absolute;

  bottom: auto;

  right: 5%;

  top: 0;

  margin: 0;

  /* transform: translateY(-95%); */
  transform: translateY(-280%);

}



/*

 * ページトップのデザインタイプ(type design của top page)

 */

.footer_fixed_content {

  position: fixed;

  bottom: 0;

  width: 100%;

  z-index: 99;

  padding: 0;

  background: #D4DEBC;

  color: #000000;

}

.footer_fixed_content .pc_ftr {

  max-width: 1238px;

  margin: 0 auto;

  display: flex;

  align-items: center;

  justify-content: center;

}

.footer_fixed_content .pc_ftr .box01 {

  width: 35%;

  padding: 2em 0;

  background: #648155;

}

.footer_fixed_content .pc_ftr .box01 .title {

  text-align: center;

  font-weight: 600;

  font-size: 22px;

  font-size: 2.2rem;

  color: #fff;

}

.footer_fixed_content .pc_ftr .box02 {

  width: 25%;

  margin-left: 2%;

  text-align: center;

}

.footer_fixed_content .pc_ftr .box02 .tel {

  position: relative;

  font-size: 30px;

  font-size: 3rem;

  padding-left: 35px;

  letter-spacing: 0.08em;

}

.footer_fixed_content .pc_ftr .box02 .tel:before {

  content: "";

  background: url(/wp-content/uploads/icon_tel.png) no-repeat center/contain;

  width: 24px;

  height: 24px;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 0;

  margin: auto;

}

.footer_fixed_content .pc_ftr .box03,

.footer_fixed_content .pc_ftr .box04 {

  width: 18%;

  margin-left: 2%;

}

.footer_fixed_content .pc_ftr .box03 .more a,

.footer_fixed_content .pc_ftr .box04 .more a {

  font-size: 16px;

  font-size: 1.6rem;

}

.footer_fixed_content .pc_ftr .box03 .more a:after,

.footer_fixed_content .pc_ftr .box04 .more a:after {

  display: none;

}

.footer_fixed_content .pc_ftr .box03 .more a span,

.footer_fixed_content .pc_ftr .box04 .more a span {

  position: relative;

  padding-left: 30px;

}

.footer_fixed_content .pc_ftr .box03 .more a span:before,

.footer_fixed_content .pc_ftr .box04 .more a span:before {

  content: "";

  position: absolute;

  top: 0;

  left: 0;

  bottom: 0;

  margin: auto;

  width: 24px;

  height: 24px;

}

.footer_fixed_content .pc_ftr .box03 .more a span:before {

  background: url(/wp-content/uploads/icon_calendar.png) no-repeat center/contain;

}

.footer_fixed_content .pc_ftr .box04 .more a {

  background: #41982A;

  border-color: #41982A;

  opacity: 1;

  transition: 0.2s;

}

.footer_fixed_content .pc_ftr .box04 .more a span:before {

  background: url(/wp-content/uploads/icon_line.png) no-repeat center/contain;

}

.footer_fixed_content .pc_ftr .box04 .more a:hover {

  opacity: 0.8;

}

.footer_fixed_content .pc_ftr .row {

  max-width: 1238px;

  width: 100%;

  margin: 0 auto;

  display: flex;

  align-items: center;

  justify-content: center;

}

.footer_fixed_content .sp_ftr .inner {

  display: flex;

  align-items: center;

  justify-content: center;	

}

.footer_fixed_content .sp_ftr a {

  text-decoration: none;

  width: 50%;

  text-align: center;

  padding: 8px;

  position: relative;

  color: #fff;

  font-size: 14px;

  font-size: 1.4rem;

}

.footer_fixed_content .sp_ftr a img {

  display: block;

  margin: 0 auto 5px;

  width: 24px;

  height: 24px;

}

.footer_fixed_content .sp_ftr a:nth-child(1) {

  color: #000000;

}

.footer_fixed_content .sp_ftr a:nth-child(2) {

  background: #648155;

}

.footer_fixed_content .sp_ftr a:nth-child(3) {

  background: #41982A;

}

.footer_fixed_content .row p {

  margin: 0;

}

@media screen and (max-width: 1199px) {

  .footer_fixed_content .pc_ftr .box01 .title {

    font-size: 18px;

    font-size: 1.8rem;

  }

  .footer_fixed_content .pc_ftr .box02 .tel {

    font-size: 18px;

    font-size: 1.8rem;

  }

  .footer_fixed_content .pc_ftr .box03 .more a,

  .footer_fixed_content .pc_ftr .box04 .more a {

    font-size: 14px;

    font-size: 1.4rem;

  }

}

@media screen and (min-width: 768px) {

  .footer_fixed_content {

    padding: 0 10px;

  }

  .footer_fixed_content:after {

    content: "";

    width: 20%;

    height: 100%;

    background: #648155;

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    margin: auto;

    z-index: -1;

  }

}

@media screen and (min-width: 2050px) {

  .footer_fixed_content:after {

    width: 30%;

  }

}



footer.high .footer_fixed_content {

  position: relative;

}



footer:not(.high) .pagetop {
  /* bottom: 100px !important; */
  bottom: 210px !important;
}

@media screen and (max-width: 767px) {

  footer:not(.high) .pagetop {

    bottom: 60px !important;

  }

}



.text-center {

  text-align: center;

}



.text-left {

  text-align: left;

}



.text-right {

  text-align: right;

}



.lead {

  color: #648155;

  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: #648155 !important;

}



@media (max-width: 767px) {

  .sp-hide,

  .pc-only,

  .tablet-only {

    display: none !important;

  }

  .sp-text-center {

    text-align: center;

  }

  .sp-text-left {

    text-align: left;

  }

  .sp-text-right {

    text-align: right;

  }

}

@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-medium {

    font-size: 16px;

    font-size: 1.6rem;

  }

  .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;

  }

  .pc-text-left {

    text-align: left;

  }

  .pc-text-right {

    text-align: right;

  }

}

@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: 899px) {

  .sp-hide02,

  .pc-only02,

  .tablet-only02 {

    display: none !important;

  }

}

@media (min-width: 900px) {

  .pc-hide02,

  .sp-only02 {

    display: none !important;

  }

}

@media (max-width: 750px) {

  .sp-hide03,

  .pc-only03,

  .tablet-only03 {

    display: none !important;

  }

}

@media (min-width: 751px) {

  .pc-hide03,

  .sp-only03 {

    display: none !important;

  }

}

.arial {

  font-family: "Arial", arial !important;

}



.arial_n {

  font-family: "Arial Narrow", arial !important;

}



.color_pri {

  color: #648155;

}



.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;

  }

}



@media screen and (min-width: 900px) {

  body:not(.scrollTop) header .global_nav {

    transform: translateY(-100%);

    transition: transform 0.2s;

  }

}

header .hdr_info_wrap .hdr_info a img {

  width: 30px;

}

@media screen and (min-width: 900px) {

  header .global_nav.fixed_active {

    position: fixed;

    left: 0;

    top: 0;

    right: 0;

    margin: auto;

    background: #fff;

    height: auto;

    width: 100%;

    display: block;

    padding: 10px;

    z-index: 999;

    transform: translateY(0) !important;

    transition: transform 0.2s;

  }

}

@media screen and (max-width: 899px) {

  header {

    position: fixed;

    top: 0;

  }

}



.main_visual .main_visual_copy li .main_copy_txt {

  position: absolute;

  left: 10px;

  bottom: 5%;

  margin: auto;

  font-size: 30px;

  font-size: 3rem;

  color: #fff;

  line-height: normal;

  letter-spacing: 0.04em;

  opacity: 0;

  transform: translateY(-20px);

  transition: 1s;

}

.main_visual .main_visual_copy li .main_copy_txt span {

  font-family: "Marcellus", serif;

  font-size: 80px;

  font-size: 7rem;

  display: block;

  margin-top: 4%;

}

.main_visual .main_visual_calender {

  width: 100%;

  max-width: 700px;

  position: absolute;

  right: 0;

  bottom: -100px;

  margin: auto;

  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.08);

  z-index: 55;

  transform: translateX(20px);

  opacity: 0;

  transition: 1s;

}

.main_visual.animated .main_visual_copy li .main_copy_txt {

  opacity: 1;

  transform: translateY(0);

}

.main_visual.animated .main_visual_calender {

  transform: translateX(0);

  opacity: 1;

  transition-delay: 0.3s;

}

@media screen and (min-width: 1000px) {

  .main_visual .main_visual_slick {

    height: calc(100vh - 190px) !important;

    padding-top: 0 !important;

  }

}

@media screen and (max-width: 1530px) {

  .main_visual .main_visual_copy {

    width: 100%;

    bottom: 110px;

  }

}

@media screen and (max-width: 999px) {

  .main_visual .main_visual_copy li .main_copy_txt {

    font-size: 3vw;

  }

  .main_visual .main_visual_copy li .main_copy_txt span {

    font-size: 8vw;

  }

}

@media screen and (max-width: 750px) {

  .main_visual .main_visual_copy li .main_copy_txt {

    font-size: 5vw;

  }

  .main_visual .main_visual_copy li .main_copy_txt span {font-size: 10vw;margin-bottom: 100px;}

  .main_visual .main_visual_calender {

    right: 0;

    left: 0;

    width: calc(100% - 20px);

  }

}



.calendar_box {

  background: #fff;

  padding: 4%;

}

.calendar_box table {

  margin-bottom: 4%;

}

.calendar_box .table_info {

  display: -moz-flex;

  display: flex;

}

.calendar_box .table_info p {

  margin: 0;

  font-size: 13px;

  font-size: 1.3rem;

}

.calendar_box .table_info p:last-child {

  margin-left: 10%;

}

.calendar_box .table_info p .exception {

  width: 0;

  height: 0;

  border-style: solid;

  border-color: transparent transparent #648155 transparent;

  border-width: 0px 7.5px 12.99px 7.5px;

  display: inline-block;

}



.sec_news {

  background: #E8EBE7;

  padding: calc(100px + 3%) 0 5%;

}

.sec_news h3 {

  font-size: 22px;

  font-size: 2.2rem;

  margin: 0;

  padding-left: 0;

  font-weight: 400;

}

.sec_news h3:after {

  display: none;

}

.sec_news .heading {

  display: -moz-flex;

  display: flex;

  -moz-justify-content: space-between;

  justify-content: space-between;

  margin-bottom: 1em;

}

.sec_news .heading p {

  margin: 0;

}

.sec_news .heading p a {

  position: relative;

  padding-right: 25px;

  text-decoration: none;

}

.sec_news .heading p a:hover {

  text-decoration: underline;

}

.sec_news .heading p a:after, .sec_news .heading p a:before {

  content: "";

  width: 18px;

  position: absolute;

  top: 0;

  bottom: 0;

  right: 0;

  margin: auto;

}

.sec_news .heading p a:before {

  width: 18px;

  height: 1px;

  background: #000000;

}

.sec_news .heading p a:after {

  width: 4px;

  height: 4px;

  border-top: 1px solid #000000;

  border-right: 1px solid #000000;

  transform: rotate(45deg);

}

.sec_news .container > .row:last-child {

  max-width: 700px;

  margin: 0 auto;

}

.sec_news .reservation_wrap p {

  margin: 0 auto;

}

.sec_news .reservation_wrap .more {

  width: 221px;

}

@media screen and (max-width: 767px) {

  .sec_news .reservation_wrap .more {

    width: 100%;

  }

}

.sec_news .reservation_wrap .tel {

  position: relative;

  font-size: 20px;

  font-size: 2rem;

  padding-left: 35px;

  margin-top: 0;

  display: table;

}

.sec_news .reservation_wrap .tel:before {

  content: "";

  width: 24px;

  height: 24px;

  background: url(/wp-content/uploads/icon_tel.png) no-repeat center/contain;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 0;

  margin: auto;

}

@media screen and (min-width: 768px) {

  .sec_news .reservation_wrap {

    display: -moz-flex;

    display: flex;

    -moz-align-items: center;

    align-items: center;

    -moz-justify-content: center;

    justify-content: center;

  }

  .sec_news .reservation_wrap > *:not(:first-child) {

    margin-left: 2%;

  }

}

@media screen and (max-width: 767px) {

  .sec_news {

    padding: 120px 0 15%;

  }

  .sec_news .reservation_wrap > * {

    margin: 0 auto;

  }

  .sec_news .reservation_wrap > *:not(:last-child) {

    margin-bottom: 4%;

  }

}



.more a.web_reservation, .more a.line_reservation, .more a.tel_btn {

  font-size: 16px;

  font-size: 1.6rem;

  max-width: 221px;

}

.more a.web_reservation:after, .more a.line_reservation:after, .more a.tel_btn:after {

  display: none;

}

.more a.web_reservation span, .more a.line_reservation span, .more a.tel_btn span {

  position: relative;

  padding-left: 30px;

}

.more a.web_reservation span:before, .more a.line_reservation span:before, .more a.tel_btn span:before {

  content: "";

  position: absolute;

  top: 0;

  left: 0;

  bottom: 0;

  margin: auto;

  width: 24px;

  height: 24px;

}

@media screen and (max-width: 767px) {

  .more a.web_reservation, .more a.line_reservation, .more a.tel_btn {

    max-width: 300px;

  }

}

.more a.web_reservation span:before {

  background: url(/wp-content/uploads/icon_calendar.png) no-repeat center/contain;

}

.more a.line_reservation {

  background: #41982A;

  border-color: #41982A;

  opacity: 1;

  transition: 0.2s;

}

.more a.line_reservation span:before {

  background: url(/wp-content/uploads/icon_line.png) no-repeat center/contain;

}

.more a.line_reservation:hover {

  opacity: 0.8;

}

.more a.tel_btn {

  background: #D7C09C;

  border-color: #D7C09C;

  color: #000000;

}

.more a.tel_btn span:before {

  background: url(/wp-content/uploads/icon_tel.png) no-repeat center/contain;

}



.sec_features .row.bnr_wrap {

  display: -moz-flex;

  display: flex;

}

.sec_features .bnr {

  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.08);

}

.sec_features .bnr .content {

  padding: 3% 5%;

}

.sec_features .bnr .main_txt {

  font-weight: 600;

  font-size: 18px;

  font-size: 1.8rem;

}

.sec_features .bnr .main_txt .num {

  display: block;

}

.sec_features .bnr .main_txt .num img {

  width: 21px;

}

@media screen and (min-width: 768px) {

  .sec_features .row.bnr_wrap {

    flex-wrap: wrap;

    -moz-justify-content: center;

    justify-content: center;

  }

}

@media screen and (max-width: 767px) {

  .sec_features .container {

    padding: 0;

  }

  .sec_features h2 {

    padding: 0 10px;

  }

  .sec_features .slick-slider {

    margin-bottom: 45px;

  }

  .sec_features .slick-slider .slick-track {

    display: -moz-flex;

    display: flex;

  }

  .sec_features .bnr_wrap .slick-list {

    padding-top: 10px !important;

    padding-bottom: 10px !important;

  }

  .sec_features .bnr_wrap .bnr {

    margin: 0 10px;

    margin-bottom: 0;

    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.08);

    height: auto !important;

  }

  .sec_features .slick-next,

  .sec_features .slick-prev {

    z-index: 10;

    width: 15px;

    height: 15px;

    border-top: 1px solid #000000;

    border-left: 1px solid #000000;

  }

  .sec_features .slick-next:before,

  .sec_features .slick-prev:before {

    display: none;

  }

  .sec_features .slick-prev {

    left: 9%;

    transform: rotate(-45deg);

  }

  .sec_features .slick-next {

    right: 9%;

    transform: rotate(135deg);

  }

}



.sec_clinic {

  position: relative;

  z-index: 0;

  margin-bottom: 0;

  padding-bottom: 5%;

}

.sec_clinic:after {content: "";width: 100%;height: 87%;background: #F8F9F4;position: absolute;left: 0;right: 0;bottom: 0px;margin: auto;z-index: -1;}

.sec_clinic .more {

  margin-top: 5%;

}

.sec_clinic table.table-default tbody tr th,

.sec_clinic table.table-default tbody tr td {

  padding: 2em 0.5em;

}

@media screen and (min-width: 768px) {

  .sec_clinic .large_img {

    position: relative;

    height: 550px;

    max-width: 1400px;

    margin: 0 auto;

  }

  .sec_clinic .large_img img {

    width: 1680px;

    max-width: none;

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    margin: auto;

  }

  .sec_clinic .shopinfo .map_container {

    padding-top: 53.5%;

  }

}

@media screen and (max-width: 1420px) {

  .sec_clinic .large_img {

    margin-left: 10px;

  }

}

@media screen and (max-width: 767px) {

  .sec_clinic {padding-bottom: 15%;}

  .sec_clinic .row .col:first-child {

    margin-bottom: 8%;

  }

  .sec_clinic .large_img img {

    max-width: 100%;

  }

}



.sec_about {

  position: relative;

  z-index: 0;

}

.sec_about:before, .sec_about:after {

  content: "";

  position: absolute;

  margin: auto;

}

.sec_about:before {

  width: 100%;

  height: 25%;

  background: #F8F9F4;

  left: 0;

  right: 0;

  top: 0;

  z-index: -2;

}

.sec_about:after {

  width: 30%;

  height: 100%;

  background: #fff;

  top: 0;

  right: 0;

  bottom: 0;

  z-index: -1;

}

.sec_about p {

  font-weight: 500;

}

.sec_about .container {

  max-width: 1440px;

}

.sec_about .about_box {

  background: #fff;

  margin: 0 auto;

  padding: 4%;

  margin-bottom: 4%;

}

.sec_about .about_box .inner {

  max-width: 1200px;

  margin: 0 auto;

}

.sec_about .about_box .inner h3 {

  font-size: 20px;

  font-size: 2rem;

  font-weight: 400;

}

.sec_about .main_txt {

  font-size: 22px;

  font-size: 2.2rem;

  font-weight: 500;

}

.sec_about .medical_box {

  background: #648155;

  padding: 4%;

}

.sec_about .medical_box .inner {

  max-width: 1200px;

  margin: 0 auto;

}

.sec_about .medical_box .inner h3 {

  color: #fff;

  font-size: 26px;

  font-size: 2.6rem;

  padding: 0;

  font-weight: 500;

}

.sec_about .medical_box .inner h3:after {

  display: none;

}

.sec_about .medical_btn a {

  display: block;

  text-decoration: none;

  background: #E8EBE7;

  padding: 8%;

  opacity: 1;

  transition: 0.2s;

}

.sec_about .medical_btn a:hover {

  opacity: 0.8;

}

.sec_about .medical_btn a .img {

  text-align: center;

  margin-bottom: 1em;

  display: block;

}

.sec_about .medical_btn a .img img {

  width: 117px;

}



.sec_about .medical_btn a .img .medical_icon{

  display: flex;

  justify-content: center;

  align-items: center;

  max-width: 117px;

  width: 100%;

  border-radius: 100vw;

  background: #D4DEBC;

  aspect-ratio: 1 / 1;

  margin: 0 auto;

}



.sec_about .medical_btn a .img .medical_icon::before{

  content: "";

  display: block;

  background: #648155;

  mask-size: contain;

  mask-repeat: no-repeat;

  mask-position: center center;

	width: 56%;

	height: 56%;

}



.sec_about .medical_btn.medical01 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon001.svg);}

.sec_about .medical_btn.medical02 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon002.svg);}

.sec_about .medical_btn.medical03 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon003.svg);}

.sec_about .medical_btn.medical04 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon004.svg);}

.sec_about .medical_btn.medical05 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon005.svg);}

.sec_about .medical_btn.medical06 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon006.svg);}

.sec_about .medical_btn.medical07 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon007.svg);}

.sec_about .medical_btn.medical08 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon008.svg);}

.sec_about .medical_btn.medical09 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon009.svg);}

.sec_about .medical_btn.medical10 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon010.svg);}

.sec_about .medical_btn.medical11 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon011.svg);}

.sec_about .medical_btn.medical12 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon012.svg);}

.sec_about .medical_btn.medical13 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon013.svg);}

.sec_about .medical_btn.medical14 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon014.svg);}

.sec_about .medical_btn.medical15 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon015.svg);}

.sec_about .medical_btn.medical16 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon016.svg);}

.sec_about .medical_btn.medical17 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon017.svg);}

.sec_about .medical_btn.medical18 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon018.svg);}

.sec_about .medical_btn.medical19 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon019.svg);}

.sec_about .medical_btn.medical20 a .img .medical_icon::before{mask-image: url(/wp-content/uploads/top_icon020.svg);}



.sec_about .medical_btn a .txt {

  position: relative;

  padding: 0 1em;

  display: table;

  margin: 0 auto;

  font-size: 18px;

  font-size: 1.8rem;

  font-weight: 500;

}

.sec_about .medical_btn a .txt:after {

  content: "";

  display: block;

  position: absolute;

  top: 53%;

  right: 0;

  margin: auto;

  width: 6px;

  height: 6px;

  border-top: 1px solid #000000;

  border-right: 1px solid #000000;

  transform: translate(0, -50%) rotate(45deg);

  transition: 0.2s;

}

@media screen and (min-width: 768px) {

  .sec_about .row.row_inline > .col {

    margin-bottom: 2%;

  }

}

@media screen and (max-width: 1460px) {

  .sec_about .container {

    padding: 0 10px;

  }

}

@media screen and (max-width: 767px) {

  .sec_about:after {

    width: 100%;

  }

  .sec_about .about_box {

    padding: 15% 0 11%;

  }

  .sec_about .about_box .inner h3 {

    font-size: 18px;

    font-size: 1.8rem;

  }

  .sec_about .medical_box .inner h3 {

    font-size: 20px;

    font-size: 2rem;

  }

  .sec_about .main_txt {

    font-size: 18px;

    font-size: 1.8rem;

  }

  .sec_about .medical_btn a {

    display: -moz-flex;

    display: flex;

    -moz-align-items: center;

    align-items: center;

    padding: 0.8em;

  }

  .sec_about .medical_btn a .img {

    margin-bottom: 0;

  }

  .sec_about .medical_btn a .img img {

    width: 70px;

  }

  .sec_about .medical_btn a .img .medical_icon {

    width: 70px;

  }

  .sec_about .medical_btn a .txt {

    width: calc(100% - 70px - 2%);

    margin-left: 2%;

  }

}



.sec_message p {

  font-weight: 500;

}

.sec_message p:last-child {

  margin-top: 8%;

  font-size: 18px;

  font-size: 1.8rem;

}

.sec_message .main_txt {

  font-size: 22px;

  font-size: 2.2rem;

  font-weight: 500;

  color: #648155;

}

@media screen and (min-width: 768px) {

  .sec_message .row .col:last-child {

    height: 700px;

  }

  .sec_message .row .col:last-child figure {

    position: relative;

    height: 100%;

    overflow: hidden;

  }

  .sec_message .row .col:last-child figure img {

    position: absolute;

    margin: auto;

  }

  .sec_message .row .col:last-child figure img:nth-child(1) {

    top: 0;

    left: 0;

    z-index: 1;

  }

  .sec_message .row .col:last-child figure img:nth-child(2) {

    bottom: 0;

    right: 0;

    z-index: 0;

  }

}

@media screen and (max-width: 1199px) {

  .sec_message .row .col:last-child figure {

    height: 100%;

  }

  .sec_message .row .col:last-child figure img:nth-child(1) {

    width: 74%;

    max-width: 500px;

  }

  .sec_message .row .col:last-child figure img:nth-child(2) {

    max-width: 360px;

    width: 55%;

    bottom: auto;

    top: 50%;

  }

}

@media screen and (max-width: 767px) {

  .sec_message .main_txt {

    font-size: 18px;

    font-size: 1.8rem;

  }

  .sec_message p:last-child {

    font-size: 16px;

    font-size: 1.6rem;

  }

  .sec_message .row .col:last-child figure img {

    position: relative;

    display: block;

  }

  .sec_message .row .col:last-child figure img:nth-child(1) {

    max-width: 80%;

    margin: 0 auto 0 0;

    z-index: 1;

    max-width: 500px;

  }

  .sec_message .row .col:last-child figure img:nth-child(2) {

    max-width: 40%;

    margin: -40% 0 0 auto;

    z-index: 0;

    max-width: 360px;

  }

}



.sec_info {

  background: #F8F9F4;

  padding: 4% 0;

  margin-bottom: 0 !important;

}

.sec_info p {

  font-size: 13px;

  font-size: 1.3rem;

  margin: 0;

}

.sec_info .clinic_name {

  font-size: 24px;

  font-size: 2.4rem;

}

.sec_info .tel {

  font-size: 24px;

  font-size: 2.4rem;

}

.sec_info .calendar_box {

  margin-top: 1em;

}

@media screen and (min-width: 768px) {

  .sec_info .row {

    display: -moz-flex;

    display: flex;

  }

  .sec_info .shopinfo .map_container {

    padding-top: 0;

    height: 100%;

  }

}

@media screen and (max-width: 1480px) {

  .sec_info {

    /* padding: 4% 0 80px; */
    padding: 4% 0 200px

  }

}

@media screen and (max-width: 767px) {

  .sec_info {

    /* padding: 10% 0 60px; */
    padding: 10% 0 170px;
  }

  .sec_info .clinic_name {

    font-size: 20px;

    font-size: 2rem;

  }

  .sec_info .tel {

    font-size: 20px;

    font-size: 2rem;

  }

}



body:not(.home) main > section section .container {

  overflow: hidden;

}

@media screen and (min-width: 768px) {

  body:not(.home) main > section section .container .row .col:has(h2) + .col {

    padding-top: 64px;

  }

}



.overflow_txt_hidden {

  overflow: hidden;

  display: -webkit-box;

  text-overflow: ellipsis;

  -webkit-box-orient: vertical;

  margin-bottom: 4%;

}

.overflow_txt_hidden + .more a {

  max-width: 201px;

  background: transparent;

  color: #648155;

}

.overflow_txt_hidden + .more a:after {

  border-color: #648155;

  transform: translate(0, -50%) rotate(135deg);

  right: 15%;

}

.overflow_txt_hidden + .more a.close:after {

  transform: translate(0) rotate(-45deg);

}

@media screen and (min-width: 768px) {

  .overflow_txt_hidden + .more a {

    margin-left: 0;

  }

}



.staff_box {

  padding: 6%;

  background: #F8F9F4;

}

.staff_box:not(:last-child) {

  margin-bottom: 4%;

}

.staff_box .main_txt {

  font-size: 22px;

  font-size: 2.2rem;

  font-weight: 500;

}

.staff_box .staff_name {

  font-size: 18px;

  font-size: 1.8rem;

  font-weight: 500;

}

.staff_box h4 {

  font-size: 18px;

  font-size: 1.8rem;

}

@media screen and (max-width: 767px) {

  .staff_box .row:not(:last-child) {

    margin-bottom: 8%;

  }

  .staff_box .row .col:not(:last-child) {

    margin-bottom: 8%;

  }

  .staff_box .main_txt {

    font-size: 20px;

    font-size: 2rem;

  }

  .staff_box h4 {

    font-size: 16px;

    font-size: 1.6rem;

  }

}



.fees_box:not(:last-child) {

  margin-bottom: 4%;

}

.fees_box table.table-default tr th {

  background: #fff;

  width: 28%;

}

.fees_box .fees_txt .price {

  display: block;

  text-align: right;

}

@media screen and (min-width: 768px) {

  .fees_box .fees_txt {

    display: -moz-flex;

    display: flex;

    -moz-align-items: center;

    align-items: center;

    -moz-justify-content: space-between;

    justify-content: space-between;

  }

  .fees_box .fees_txt .price {

    margin-left: 2%;

  }

  .fees_box table.table-default tbody {

    display: -moz-flex;

    display: flex;

    flex-wrap: wrap;

  }

  .fees_box table.table-default tr th {

    text-align: center;

  }

  .fees_box table.table-default tr:nth-child(1), .fees_box table.table-default tr:nth-child(2) {

    width: 50%;

  }

  .fees_box table.table-default tr:nth-child(1) th,

  .fees_box table.table-default tr:nth-child(1) td, .fees_box table.table-default tr:nth-child(2) th,

  .fees_box table.table-default tr:nth-child(2) td {

    border-bottom: none;

  }

  .fees_box table.table-default tr:nth-child(1) th, .fees_box table.table-default tr:nth-child(2) th {

    width: 20%;

  }

  .fees_box table.table-default tr:nth-child(1) td, .fees_box table.table-default tr:nth-child(2) td {

    width: 30%;

  }

  .fees_box table.table-default tr:nth-child(3) {

    width: 100%;

  }

  .fees_box table.table-default tr:nth-child(3) th {

    width: 20%;

  }

  .fees_box table.table-default tr:nth-child(3) td {

    width: 80%;

  }

}



.trouble_box h3 {

  font-size: 18px;

  font-size: 1.8rem;

  margin-top: 0;

  margin-bottom: 1.5em;

  padding-bottom: 0.5em;

  padding-left: 0;

  font-weight: 500;

  border-bottom: 1px solid #D9D9D9;

}

.trouble_box h3:after {

  display: none;

}

.trouble_box .inner {

  background: #fff;

  padding: 4%;

}

.trouble_box ul {

  padding: 0;

  margin-bottom: 0;

}

.trouble_box ul li {

  position: relative;

  list-style: none;

  padding-left: 20px;

  font-weight: 500;

  letter-spacing: 0.08em;

}

.trouble_box ul li:not(:last-child) {

  margin-bottom: 1em;

}

.trouble_box ul li:before {

  content: "";

  width: 9px;

  height: 5px;

  border-left: 2px solid #BC9D7C;

  border-bottom: 2px solid #BC9D7C;

  position: absolute;

  top: 5px;

  left: 0;

  margin: auto;

  transform: rotate(-45deg);

}

@media screen and (min-width: 768px) {

  .trouble_box .inner {

    display: -moz-flex;

    display: flex;

  }

  .trouble_box ul {

    width: 49%;

  }

  .trouble_box ul:not(:first-child) {

    margin-left: 2%;

  }

}

@media screen and (max-width: 767px) {

  .trouble_box {

    padding: 6% !important;

  }

  .trouble_box h3 {

    font-size: 16px;

    font-size: 1.6rem;

  }

  .trouble_box ul:not(:last-child) {

    margin-bottom: 1em;

  }

}



.merit_box h3 {

  font-size: 18px;

  font-size: 1.8rem;

  margin-top: 0;

  margin-bottom: 1.5em;

  padding-bottom: 0.5em;

  padding-left: 0;

  font-weight: 500;

  border-bottom: 1px solid #D9D9D9;

}

.merit_box h3:after {

  display: none;

}

.merit_box .inner {

  background: #fff;

  padding: 4%;

}

.merit_box ul {

  padding: 0;

  margin-bottom: 0;

}

.merit_box ul li {

  position: relative;

  list-style: none;

  padding-left: 20px;

  font-weight: 500;

  letter-spacing: 0.08em;

}

.merit_box ul li:not(:last-child) {

  margin-bottom: 1em;

}

.merit_box ul li:before {

  content: "";

  position: absolute;

  top: 7px;

  left: 0;

  margin: auto;

}

.merit_box ul.list_merit li:before {

  width: 12px;

  height: 12px;

  border-radius: 100%;

  border: 2px solid #627957;

  box-sizing: border-box;

}

.merit_box ul.list_demerit li:before {

  --b: 2.5px;

  width: 12px;

  aspect-ratio: 1/0.8660254038;

  -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%, 50% 0, 50% var(--b), calc(var(--b) * 0.8660254038) calc(100% - var(--b) / 2), calc(100% - var(--b) * 0.8660254038) calc(100% - var(--b) / 2), 50% var(--b));

          clip-path: polygon(50% 0, 100% 100%, 0 100%, 50% 0, 50% var(--b), calc(var(--b) * 0.8660254038) calc(100% - var(--b) / 2), calc(100% - var(--b) * 0.8660254038) calc(100% - var(--b) / 2), 50% var(--b));

  background: #627957;

}

@media screen and (max-width: 767px) {

  .merit_box {

    padding: 6% !important;

  }

  .merit_box h3 {

    font-size: 16px;

    font-size: 1.6rem;

  }

}



.row.hr-border-top {

  padding-top: 4%;

  border-top: 1px solid #D9D9D9;

}



ul.commitment_list {

  padding: 0;

}

ul.commitment_list li {

  list-style: none;

}

ul.commitment_list li:not(:last-child) {

  margin-bottom: 4%;

}

ul.commitment_list li .main_txt {

  font-size: 22px;

  font-size: 2.2rem;

  font-weight: 800;

  color: #627957;

  display: block;

  margin-bottom: 0.4em;

}

ul.commitment_list li .main_txt .num {

  display: block;

}

ul.commitment_list li .main_txt .num img {

  width: 21px;

}

@media screen and (max-width: 767px) {

  ul.commitment_list li .main_txt {

    font-size: 18px;

    font-size: 1.8rem;

  }

}



.flow_wrap .step {

  background: #F8F9F4;

  padding: 6%;

}

.flow_wrap .step:not(:last-child) {

  position: relative;

  margin-bottom: 63px;

}

.flow_wrap .step:not(:last-child):after {

  content: "";

  width: 0;

  height: 0;

  border-style: solid;

  border-color: #D4DEBC transparent transparent transparent;

  border-width: 38px 94px 0px 94px;

  position: absolute;

  left: 0;

  right: 0;

  bottom: -52.5px;

  margin: auto;

}

.flow_wrap .step .main_txt {

  font-weight: 500;

  font-size: 18px;

  font-size: 1.8rem;

  display: -moz-flex;

  display: flex;

  -moz-align-items: center;

  align-items: center;

  color: #121212;

}

.flow_wrap .step .main_txt .num {

  font-size: 50px;

  font-size: 5rem;

  color: #A2978B;

  margin-right: 15px;

}

.flow_wrap .step .main_txt + p {

  font-size: 14px;

  font-size: 1.4rem;

}

.flow_wrap table.table-default tr th {

  background: #fff;

  width: 30%;

}

@media screen and (min-width: 768px) {

  .flow_wrap table.table-default tbody {

    display: -moz-flex;

    display: flex;

    flex-wrap: wrap;

  }

  .flow_wrap table.table-default tr {

    width: 50%;

  }

  .flow_wrap table.table-default tr th {

    text-align: center;

    width: 20%;

  }

  .flow_wrap table.table-default tr td {

    width: 30%;

  }

}

@media screen and (max-width: 767px) {

  .flow_wrap .step:not(:last-child) {

    margin-bottom: 42px;

  }

  .flow_wrap .step:not(:last-child):after {

    width: 0;

    height: 0;

    border-style: solid;

    border-color: #D4DEBC transparent transparent transparent;

    border-width: 22px 60px 0px 60px;

    bottom: -32px;

  }

  .flow_wrap .step .main_txt {

    font-size: 16px;

    font-size: 1.6rem;

  }

  .flow_wrap .step .main_txt .num {

    font-size: 40px;

    font-size: 4rem;

  }

}



.list_box {

  padding: 6% !important;

}

.list_box ul {

  padding: 0;

}

.list_box ul li {

  list-style: none;

}

.list_box ul li:not(:last-child) {

  margin-bottom: 1em;

}



.payment_box {

  padding: 6% !important;

}

.payment_box .white_box {

  background: #fff;

  padding: 4%;

}

/* payment_icon */

.payment_box .patment_icon_list{

	display: flex;

	flex-direction: row;

	flex-wrap: wrap;

	align-items: flex-start;

	justify-content: flex-start;

  list-style: none;

	padding: 0;

}

.payment_box .patment_icon_list li{

  text-indent: 100%;

	white-space: nowrap;

	overflow: hidden;

	width: 20%;

  max-width: 80px;

  max-width: ;

	height: auto;

	aspect-ratio: 1;

	background-size: contain;

	background-repeat: no-repeat;

	background-size: contain;

}

.payment_box .patment_icon_list li.payment_icon_01{ background-image: url(/wp-content/uploads/payment_icon_01.jpg);}

.payment_box .patment_icon_list li.payment_icon_02{ background-image: url(/wp-content/uploads/payment_icon_02.jpg);}

.payment_box .patment_icon_list li.payment_icon_03{ background-image: url(/wp-content/uploads/payment_icon_03.jpg);}

.payment_box .patment_icon_list li.payment_icon_04{ background-image: url(/wp-content/uploads/payment_icon_04.jpg);}

.payment_box .patment_icon_list li.payment_icon_05{ background-image: url(/wp-content/uploads/payment_icon_05.jpg);}

.payment_box .patment_icon_list li.payment_icon_06{ background-image: url(/wp-content/uploads/payment_icon_06.jpg);}

.payment_box .patment_icon_list li.payment_icon_07{ background-image: url(/wp-content/uploads/payment_icon_07.jpg);}

.payment_box .patment_icon_list li.payment_icon_08{ background-image: url(/wp-content/uploads/payment_icon_08.jpg);}

.payment_box .patment_icon_list li.payment_icon_09{ background-image: url(/wp-content/uploads/payment_icon_09.jpg);}

.payment_box .patment_icon_list li.payment_icon_10{ background-image: url(/wp-content/uploads/payment_icon_10.jpg);}

.payment_box .patment_icon_list li.payment_icon_11{ background-image: url(/wp-content/uploads/payment_icon_11.jpg);}

.payment_box .patment_icon_list li.payment_icon_12{ background-image: url(/wp-content/uploads/payment_icon_12.jpg);}

.payment_box .patment_icon_list li.payment_icon_13{ background-image: url(/wp-content/uploads/payment_icon_13.jpg);}

.payment_box .patment_icon_list li.payment_icon_14{ background-image: url(/wp-content/uploads/payment_icon_14.jpg);}

.payment_box .patment_icon_list li.payment_icon_15{ background-image: url(/wp-content/uploads/payment_icon_15.jpg);}

.payment_box .patment_icon_list li.payment_icon_16{ background-image: url(/wp-content/uploads/payment_icon_16.jpg);}

.payment_box .patment_icon_list li.payment_icon_17{ background-image: url(/wp-content/uploads/payment_icon_17.jpg);}

/* //payment_icon */

.payment_box .white_box figure {

  text-align: left;

}

.payment_box h4 {

  font-weight: 400;

}

@media screen and (min-width: 768px) {

  .payment_box .row.row_inline {

    display: -moz-flex;

    display: flex;

    flex-wrap: wrap;

  }

  .payment_box .row.row_inline > .col {

    display: -moz-flex;

    display: flex;

    -moz-flex-direction: column;

    flex-direction: column;

  }

  .payment_box .row.row_inline > .col .white_box {

    flex-grow: 1;

  }

  .payment_box .row.row_inline .col.span_12 {

    margin-left: 0;

  }

}



@media screen and (max-width: 767px) {

  .gallery_wrap {

    margin-bottom: 50px;

  }

  .gallery_wrap .col {

    margin-bottom: 0;

    padding: 0 5px;

  }

}



.gallery_wrap .slick-next,

.gallery_wrap .slick-prev {

  z-index: 10;

  width: 15px;

  height: 15px;

  border-top: 1px solid #000000;

  border-left: 1px solid #000000;

}

.gallery_wrap .slick-next:before,

.gallery_wrap .slick-prev:before {

  display: none;

}

.gallery_wrap .slick-prev {

  left: 4%;

  transform: rotate(-45deg);

}

.gallery_wrap .slick-next {

  right: 4%;

  transform: rotate(135deg);

}



.article_list {

  padding: 6%;

  background: #F8F9F4;

}

.article_list:before {

  display: none;

}

.article_list:not(:last-child) {

  margin-bottom: 4%;

}

.article_list .col {

  margin: 0;

}

.article_list p {

  font-size: 13px;

  font-size: 1.3rem;

}

.article_list .article_date {

  font-size: 12px;

  font-size: 1.2rem;

  color: #858585;

  font-weight: 500;

  margin-bottom: 0;

}

.article_list h3 {

  font-size: 15px;

  font-size: 1.5rem;

  font-weight: 500;

  padding: 0;

  margin-bottom: 0.5em;

}

.article_list h3:after {

  display: none;

}

.article_list .tags {

  padding: 0;

  display: -moz-flex;

  display: flex;

  flex-wrap: wrap;

  margin-bottom: 0.5em;

}

.article_list .tags li {

  position: relative;

  list-style: none;

  background: #fff;

  font-size: 12px;

  font-size: 1.2rem;

  font-weight: 500;

  padding: 0.2em 1em 0.2em calc(1em + 16px);

  margin-right: 5px;

  margin-bottom: 5px;

}

.article_list .tags li:before {

  content: "";

  background: url(/wp-content/uploads/tag.png) no-repeat center/contain;

  width: 16px;

  height: 16px;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 1em;

  margin: auto;

}

.article_list .tags li a {

  text-decoration: none;

}

.article_list .more a {

  background: transparent;

  color: #648155;

}

.article_list .more a:after {

  border-color: #648155;

}

.article_list .more a:hover {

  background: #648155;

  color: #fff;

}

.article_list .more a:hover:after {

  border-color: #fff;

}



.slick-dots li {

  width: 8px;

  height: 8px;

  margin: 0 10px;

}

.slick-dots li button {

  width: 8px;

  height: 8px;

  background: #D4DEBC;

}

.slick-dots li.slick-active button {

  background: #627957;

}



.fadeUp {

  transform: translateY(20px);

  opacity: 0;

  transition: 1s;

}

.fadeUp.animated {

  transform: translateY(0);

  opacity: 1;

  transition-delay: 0.3s;

}



.fadeUpWrap [class*=ani] {

  transform: translateY(20px);

  opacity: 0;

  transition: 1s;

  visibility: visible !important;

}

@media screen and (min-width: 768px) {

  .fadeUpWrap.animated [class*=ani] {

    transform: translateY(0);

    opacity: 1;

  }

  .fadeUpWrap.animated .ani01 {

    transition-delay: 0.3s;

  }

  .fadeUpWrap.animated .ani02 {

    transition-delay: 0.6s;

  }

  .fadeUpWrap.animated .ani03 {

    transition-delay: 0.9s;

  }

  .fadeUpWrap.animated .ani04 {

    transition-delay: 1.2s;

  }

  .fadeUpWrap.animated .ani05 {

    transition-delay: 1.5s;

  }

  .fadeUpWrap.animated .ani06 {

    transition-delay: 1.8s;

  }

}

@media screen and (max-width: 767px) {

  .fadeUpWrap [class*=ani].animated {

    transform: translateY(0);

    opacity: 1;

    transition-delay: 0.3s;

  }

}



@media screen and (max-width: 899px) {

  footer .footer_nav_wrap {

    display: none;

  }

  footer .footer_copyright_wrap {

    margin-top: 0;

  }

}

/* フッター‗まるさきカスタム */
@media screen and (min-width: 768px) {
  .footer_fixed_content:after {
    width: 30%;
  }
}
.footer_fixed_content .pc_ftr .box01 {
  width: 35%;
}
.footer_fixed_content .pc_ftr .box02 {
  width: 35%;
  margin-left: 0;
}
/* //フッター‗まるさきカスタム */

/* 20260310_add_chatbot */
footer button#open-chatbot {
  border: none;
  padding: 0;
  background: none;
  width: 100%;
  cursor: pointer;
  display: inline-block;
  max-width: 290px;
  position: fixed;
  bottom: 230px;
  right: 0;
  z-index: 100;
}
footer:not(.high) button#open-chatbot {
  bottom: 100px !important;
}
footer button#open-chatbot picture{
  display: block;
  width: 100%;
  height: 100%;
}
footer button#open-chatbot picture source,
footer button#open-chatbot picture img {
  display: block;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  footer button#open-chatbot {
    max-width: 210px;
    bottom: 185px;
  }
  footer:not(.high) .pagetop {
      bottom: 155px !important;
  }
  footer:not(.high) button#open-chatbot {
    bottom: 75px !important;
  }
}


/* //20260310_add_chatbot */



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












