@charset "UTF-8";
/**/
/**/
/*白*/
/*(黄土色)*/
/*（(濃茶)*/
/*(茶)*/
/*(ベージュ)*/
/*(黄土色)*/
/*(薄いオレンジ)*/
/*(濃い黄色)*/
/*(茶)*/
/*(青水色)*/
/*(緑)*/
@import url(https://use.typekit.net/aly5exp.css); /*Futura PT*/
@import url(https://use.typekit.net/wgd6zip.css); /*Balboa*/
@import url(https://use.typekit.net/hzm6tec.css); /*opne sans*/
@import url(https://use.typekit.net/wfy4obm.css); /*garamond*/
@import url(https://use.typekit.net/ojj6amw.css); /*raleway*/
@import url(https://fonts.googleapis.com/css2?family=Suez+One&display=swap);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css2?family=Marcellus&display=swap);
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700|Noto+Serif+JP:300,400,500,600,700&display=swap);
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  counter-reset: number 0;
  line-height: 2em;
  font-weight: 500;
  letter-spacing: 1px;
  color: #565656;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  word-wrap: break-word;
  overflow: hidden;
  font-size: 0.9375rem;
}
@media only screen and (max-width: 640px) {
  body {
    font-size: 0.9375rem;
    line-height: 1.8em;
    letter-spacing: normal;
  }
}

.inner4 {
  width: 95%;
  max-width: 400px;
  margin: 0 auto;
}

.inner6 {
  width: 95%;
  max-width: 600px;
  margin: 0 auto;
}

.inner6 {
  width: 95%;
  max-width: 600px;
  margin: 0 auto;
}

.inner8 {
  width: 95%;
  max-width: 800px;
  margin: 0 auto;
}

.inner9 {
  width: 95%;
  max-width: 900px;
  margin: 0 auto;
}

.inner {
  width: 95%;
  max-width: 1000px;
  margin: 0 auto;
}

.inner_ {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.inner11 {
  width: 95%;
  max-width: 1100px;
  margin: 0 auto;
}

.inner12 {
  width: 95%;
  max-width: 1200px;
  margin: 0 auto;
}

.inner12a {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.inner14 {
  width: 95%;
  max-width: 1400px;
  margin: 0 auto;
}

#contents_wrap {
  width: 100%;
  min-width: 100% !important;
}

#contents {
  font-size: 100%;
  width: 100%;
  max-width: 1100px;
}
@media only screen and (max-width: 1200px) {
  #contents {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  #contents {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media only screen and (max-width: 640px) {
  #contents {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

#main {
  width: 100%;
}

#main #col_main {
  width: 100%;
}

/*
#side {
	width: 18.75000%;
}
*/
.map {
  margin: 56px 20px 0;
}

.map li {
  border-left: 5px solid #CCCCCC;
  list-style: none;
  margin: 0 0 15px;
  padding: 0 0 0 10px;
  text-align: left;
}

.policy h2 {
  border-bottom: 2px solid #BBBBBB;
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 15px;
  padding: 0 0 5px;
}

.policy p {
  margin: 0 0 20px;
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  table {
    table-layout: fixed;
  }
}
.tlfixed table {
  table-layout: fixed;
}

table td img {
  height: auto !important;
}

.pdtd10 td {
  padding: 10px !important;
}

pre {
  margin: 0;
  padding: 0;
  white-space: pre-line;
}

b, strong {
  font-weight: bold;
}

u {
  text-decoration: line-through;
}

img {
  max-width: 100%;
  height: auto !important;
}

small {
  font-size: 80%;
}

hr {
  border: none;
  height: 0;
  border-bottom: 1px dashed #B3B3B3;
}

span {
  font-weight: inherit;
}

u {
  text-decoration: underline;
}

b {
  font-weight: 500;
}

input[type=button] {
  cursor: pointer;
  padding: 5px 10px;
}

a {
  text-decoration: none;
}

a {
  transition: 0.5s;
}
a:hover {
  opacity: 0.6;
}

@media screen and (min-width: 641px) and (max-width: 835px) {
  .imgR, .imgL {
    max-width: 30% !important;
  }
}
@media only screen and (max-width: 640px) {
  .imgR, .imgL {
    display: block;
    float: none;
    margin: 0 auto;
    max-width: 100% !important;
    text-align: center;
  }
}

.mincho {
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
}

.gothic {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@media only screen and (max-width: 640px) {
  .fltL {
    float: none;
    width: 100% !important;
  }
  .fltR {
    float: none;
    width: 100% !important;
  }
  .sptal {
    text-align: left !important;
  }
  .sptar {
    text-align: right !important;
  }
  .sptac {
    text-align: center !important;
  }
  .spcenter {
    text-align: center;
    display: block;
    margin-top: 10px;
  }
}
header#global_header {
  min-width: auto;
}

footer#global_footer {
  min-width: auto;
}

header#global_header {
  max-width: 100%;
  width: 100%;
  min-width: 100%;
  display: block !important;
}
header#global_header #header-wrap {
  width: 100%;
}
#header {
  padding: 10px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media only screen and (max-width: 835px) {
  #header {
    padding: 10px;
    height: 60px;
  }
}

.header_logo {
  width: 150px;
}
.header_info {
  width: 90%;
  max-width: 1150px;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 835px) {
  .header_info {
    justify-content: flex-end;
    margin-right: 60px;
  }
}

.header_tel {
  min-width: 305px;
  text-align: left;
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  font-size: 2.25rem;
  color: #4e3209;
}
@media (max-width: 1200px) {
  .header_tel {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.header_tel a {
  color: #4e3209 !important;
  vertical-align: middle;
}
.header_tel img {
  width: 30px;
  margin-right: 5px;
}
.header_tel span {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: block;
  color: #565656;
  font-size: 0.8125rem;
  line-height: 1.5em;
  letter-spacing: normal;
}
@media only screen and (max-width: 1000px) {
  .header_tel {
    min-width: 210px;
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 1200px) {
  .header_tel {
    font-size: calc(1.3125rem + 0.75vw);
  }
}
@media only screen and (max-width: 1000px) {
  .header_tel span {
    display: none;
  }
}
@media only screen and (max-width: 835px) {
  .header_tel {
    min-width: auto;
  }
}
@media screen and (max-width: 350px) {
  .header_tel {
    font-size: 1.25rem;
  }
}

.header_cont {
  background: #fff;
  margin: 0 10px;
}
.header_cont a {
  max-width: 200px !important;
}
.header_cont a span div {
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  font-size: 2.25rem;
}
@media (max-width: 1200px) {
  .header_cont a span div {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.header_cont a span div img {
  width: 30px;
  margin-right: 5px;
}
@media only screen and (max-width: 1000px) {
  .header_cont a span div {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 1200px) {
  .header_cont a span div {
    font-size: calc(1.3rem + 0.6vw);
  }
}
@media only screen and (max-width: 1000px) {
  .header_cont a {
    min-width: 150px !important;
  }
}

.header_icon {
  max-width: 300px;
}
.header_icon a {
  background: #02b404;
  color: #fff;
  padding: 10px;
  display: flex;
  align-items: center;
  opacity: 1;
}
.header_icon a i {
  font-size: 1.5rem;
  margin-right: 5px;
}
@media (max-width: 1200px) {
  .header_icon a i {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.header_icon a:hover {
  background: #13bf16;
  transition: 0.5s;
}

.smicon {
  position: absolute;
  z-index: 10;
  top: 10px;
  right: 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.smicon div {
  margin: 0 5px;
}
.smicon div a {
  background: #14ac9a;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  line-height: 40px;
  display: block;
  color: #fff;
  margin: 0 auto;
  font-size: 1rem;
}
@media screen and (max-width: 400px) {
  .smicon div {
    margin: 0 2px;
  }
}
@media screen and (min-width: 836px) {
  .smicon {
    display: none;
  }
}

.mean-container .mean-push {
  display: none !important;
}

#nav-wrap {
  width: 100%;
  margin: 0 auto;
  max-width: 800px;
}
@media only screen and (max-width: 835px) {
  #nav-wrap {
    display: none;
  }
}

#nav_global {
  width: 90%;
  max-width: 1200px;
  margin: auto;
}
#nav_global > ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
#nav_global > ul li {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  position: relative;
}
#nav_global > ul li a {
  color: #4e3209;
  text-align: center;
  padding: 10px 0;
  display: block;
  text-align: center;
  position: relative;
  text-decoration: none;
  font-size: 1.3125rem;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-weight: 300;
  line-height: 1;
}
@media (max-width: 1200px) {
  #nav_global > ul li a {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
#nav_global > ul li a span {
  margin-top: 8px;
  display: block;
  color: #14ac9a;
  font-size: 0.8125rem;
  font-weight: normal;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#nav_global > ul li a:hover {
  transition: 0.5s;
  opacity: 1;
}
#nav_global > ul li a:hover span {
  transition: 0.5s;
  transform: scale(1.1);
}
@media only screen and (max-width: 1000px) {
  #nav_global > ul li a {
    font-size: 1rem;
  }
  #nav_global > ul li a span {
    font-size: 0.75rem;
    letter-spacing: normal;
  }
}
#nav_global > ul li ul {
  position: absolute;
  background: rgba(180, 158, 113, 0.9);
  margin: auto;
  display: block;
  width: 100%;
  z-index: 10;
}
#nav_global > ul li ul li:before {
  content: none !important;
}
#nav_global > ul li ul li a {
  padding: 15px 5px;
  display: block;
}
#nav_global > ul li ul li:last-child:after {
  content: none;
}
@media only screen and (max-width: 835px) {
  #nav_global > ul {
    display: none;
  }
}

.mean-bar {
  display: none;
}

.main {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .main {
    height: 100% !important;
  }
}
.main-item img {
  width: 100vw !important;
  object-fit: cover;
  font-family: "object-fit:cover;";
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .main-item img {
    height: auto !important;
  }
}
.main-title {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  left: 50%;
}

.main_sns {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.main_sns li {
  margin: 5px;
}
.main_sns .ttl img {
  width: 50%;
}
.main_sns .txt a {
  color: #333;
  background: #fff;
  border-radius: 50%;
  display: block;
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.main_sns .txt a i {
  font-weight: 600;
  font-size: 1rem;
}

.anchor {
  display: block;
  transform: translateY(-100px);
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .anchor {
    transform: translateY(-50px);
  }
}
@media only screen and (max-width: 640px) {
  .anchor {
    transform: translateY(-30px);
  }
}

.anchor2 {
  display: block;
  transform: translateY(-150px);
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .anchor2 {
    transform: translateY(-100px);
  }
}
@media only screen and (max-width: 640px) {
  .anchor2 {
    transform: translateY(-100px);
  }
}

/*
飛ばしたいところの前に以下のような記述
<span id="map" class="anchor"></span>
*/
.clone-nav {
  width: 100% !important;
  max-width: 100% !important;
  position: fixed;
  background: url(../images/top/ptn1.png) repeat center;
  opacity: 0.9;
  background-size: auto;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  transition: 0.3s;
  transform: translateY(-100%);
  margin-left: 0 !important;
}
@media only screen and (max-width: 835px) {
  .clone-nav {
    display: none !important;
  }
}
.is-show {
  transform: translateY(0);
}

@media screen and (min-width: 836px) {
  .zdo_drawer_menu {
    display: none !important;
  }
}

.zdo_drawer_menu .zdo_drawer_button {
  background: rgba(20, 172, 154, 0.8) !important;
  padding: 0 5px !important;
  width: 50px;
  height: 50px;
  top: 5px !important;
  right: 5px !important;
}

.zdo_drawer_menu .zdo_drawer_button .zdo_drawer_bar {
  background: #fff !important;
}

.store_areA {
  padding: 0 10% 5% 10%;
}
.store_areA .h_logo {
  margin: 20px auto;
  width: 150px;
}
.store_areA .h_logo a {
  color: #14ac9a;
  font-size: 1.125rem;
  font-weight: 600;
}
.store_areA .drawer-icon img {
  display: block;
  margin: 0 auto;
  width: 150px;
}
.store_areA .header-icon-wrap {
  display: flex;
  justify-content: center;
}
.store_areA .header-icon-wrap li {
  width: 30%;
}
.store_areA .header-icon-wrap li a {
  width: 50px;
  height: 50px;
  line-height: 50px;
  margin: 0 auto;
  color: #4e3209;
  background: #86d044;
  border-radius: 50%;
}
.store_areA .header-icon-wrap li a i {
  padding-right: 0;
  color: #fff;
  font-size: 21px;
  line-height: 35px;
}

.h_tel, .h_cont {
  width: 220px;
  height: 50px;
  line-height: 50px;
  background: #cc9604;
  color: #fff;
  letter-spacing: 0.2em;
  font-size: 1rem;
  margin-bottom: 10px;
}
.h_tel i, .h_cont i {
  margin-right: 5px;
}
.h_tel a, .h_cont a {
  display: block;
  color: #fff !important;
  font-size: 1rem;
  text-align: center;
}

.zdo_drawer_menu .zdo_drawer_nav {
  padding: 100px 20px 10px 20px !important;
  /*height: 400px;
     overflow: scroll;
  */
}

.zdo_drawer_menu a {
  display: block;
  color: #4e3209;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-weight: 500;
  padding-bottom: 10px;
  text-align: center;
  font-size: 21px;
}
.zdo_drawer_menu a span {
  display: block;
  text-align: center;
  font-size: 12px;
  color: #fff;
  line-height: 1;
  margin: 5px auto;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.zdo_drawer_menu a i {
  color: #fff;
  padding-right: 5px;
}

.zdo_drawer_menu .zdo_drawer_nav li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  margin-bottom: 10px !important;
}

.zdo_drawer_menu .zdo_drawer_menu_text, .zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_close {
  display: none !important;
}

.zdo_drawer_menu .zdo_drawer_nav_wrapper {
  background-color: #55b1aa !important;
  background-image: radial-gradient(#14ac9a 30%, transparent 30%);
  background-size: 15px 15px;
  height: 100%;
  overflow: scroll;
  transition: 1s;
}

.zdo_drawer_menu a:visited {
  color: #4e3209;
}

#top-button {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 3;
}
#top-button a {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  line-height: 50px;
  color: #fff;
  background: #14ac9a;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 12px;
}
@media only screen and (max-width: 640px) {
  #top-button {
    bottom: 10px;
  }
}

footer#global_footer {
  min-width: auto !important;
  margin-top: 70px;
}
@media only screen and (max-width: 835px) {
  footer#global_footer {
    margin-top: 30px;
  }
}
footer#global_footer #footer_wrap {
  background: rgba(204, 150, 4, 0.2);
  padding: 70px 15px 50px 15px;
  position: relative;
}
@media only screen and (max-width: 835px) {
  footer#global_footer #footer_wrap {
    padding: 20px 2% 15px 2%;
  }
}
footer#global_footer #footer_wrap:before {
  position: absolute;
  content: "";
  background: url(../images/top/deco6.png) no-repeat left top;
  background-size: contain;
  width: 380px;
  height: 260px;
  top: 50px;
  left: 50px;
}
@media only screen and (max-width: 1500px) {
  footer#global_footer #footer_wrap:before {
    width: 300px;
    height: 200px;
  }
}
@media only screen and (max-width: 1000px) {
  footer#global_footer #footer_wrap:before {
    width: 200px;
    height: 150px;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  footer#global_footer #footer_wrap:before {
    width: 150px;
    height: 100px;
    top: 30px;
    left: 10px;
    z-index: -1;
  }
}
@media only screen and (max-width: 640px) {
  footer#global_footer #footer_wrap:before {
    width: 130px;
    height: 80px;
    top: 30px;
    left: 10px;
    z-index: -1;
  }
}
footer#global_footer #footer_wrap:after {
  position: absolute;
  content: "";
  background: url(../images/top/deco7.png) no-repeat right top;
  background-size: contain;
  width: 350px;
  height: 280px;
  top: 200px;
  right: 100px;
}
@media only screen and (max-width: 1500px) {
  footer#global_footer #footer_wrap:after {
    width: 300px;
    height: 200px;
    right: 50px;
  }
}
@media only screen and (max-width: 1500px) {
  footer#global_footer #footer_wrap:after {
    width: 200px;
    height: 150px;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  footer#global_footer #footer_wrap:after {
    width: 150px;
    height: 100px;
    top: 120px;
    right: 10px;
  }
}
@media only screen and (max-width: 640px) {
  footer#global_footer #footer_wrap:after {
    width: 100px;
    height: 100px;
    top: 120px;
    right: 10px;
  }
}
footer#global_footer #footer {
  margin-bottom: 30px;
}
footer#global_footer #footer address {
  color: #1b1b1b !important;
}
footer#global_footer #footer address a {
  color: #1b1b1b !important;
}
@media only screen and (max-width: 835px) {
  footer#global_footer #footer {
    margin-bottom: 15px;
  }
}
footer#global_footer .f_title h2 {
  line-height: 1;
  color: #4e3209;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 4.375rem;
  font-weight: 500;
}
@media (max-width: 1200px) {
  footer#global_footer .f_title h2 {
    font-size: calc(1.5625rem + 3.75vw);
  }
}
footer#global_footer .f_title h2 span {
  display: block;
  margin-top: 15px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #14ac9a;
  font-size: 1.125rem;
}
@media only screen and (max-width: 1200px) {
  footer#global_footer .f_title h2 {
    font-size: 3.75rem;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 1200px) {
  footer#global_footer .f_title h2 {
    font-size: calc(1.5rem + 3vw);
  }
}
@media only screen and (max-width: 1200px) {
  footer#global_footer .f_title h2 span {
    font-size: 0.9375rem;
    margin-top: 10px;
  }
}
footer#global_footer #footer-logo {
  margin-top: 20px;
}
footer#global_footer #footer-logo a {
  display: block;
  color: #4e3209;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1;
}
footer#global_footer #footer-logo a span {
  font-size: 1.875rem;
  display: block;
  margin-top: 10px;
}
@media (max-width: 1200px) {
  footer#global_footer #footer-logo a span {
    font-size: calc(1.3125rem + 0.75vw);
  }
}
footer#global_footer .footer-icon-wrap {
  width: 100px;
  margin: 15px auto;
  display: flex;
  justify-content: center;
}
footer#global_footer .footer-icon-wrap li {
  width: 50%;
}
footer#global_footer .footer-icon-wrap li a {
  display: block;
  width: 35px;
  height: 35px;
  line-height: 35px;
  margin: 0 auto;
  color: #fff;
  background: #14ac9a;
  border-radius: 50%;
}
footer#global_footer .footer-icon-wrap li a i {
  padding-right: 0;
  font-size: 21px;
  line-height: 35px;
}
footer#global_footer address {
  line-height: 1.5em;
}
footer#global_footer .f_map {
  max-width: 1000px;
  margin: 30px auto;
}
@media only screen and (max-width: 835px) {
  footer#global_footer .f_map {
    margin: 20px auto;
  }
}
footer#global_footer .btn_z {
  margin-bottom: 50px;
}
footer#global_footer .btn_z a {
  margin: 0 auto;
  display: block;
  width: 100%;
  max-width: 350px;
  background: #fff;
  padding: 15px;
  color: #14ac9a;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 1.75rem;
  border: 3px solid #14ac9a;
  position: relative;
}
@media (max-width: 1200px) {
  footer#global_footer .btn_z a {
    font-size: calc(1.3rem + 0.6vw);
  }
}
footer#global_footer .btn_z a:before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border: 1px dotted rgba(20, 172, 154, 0.5);
  margin: 5px;
}
footer#global_footer .btn_z a:hover {
  transition: 0.5s;
}
footer#global_footer #footer-nav {
  max-width: 1000px;
  margin: 0 auto;
}
footer#global_footer #footer-nav ul {
  border-top: 1px solid #1b1b1b;
  border-bottom: 1px solid #1b1b1b;
  padding: 10px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
footer#global_footer #footer-nav ul li {
  -webkit-flex-grow: 1;
  flex-grow: 1;
}
footer#global_footer #footer-nav ul li a {
  width: 100%;
  display: block;
  color: #1b1b1b;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 1rem;
}
footer#global_footer #footer-nav ul li a:hover {
  opacity: 1;
  color: #14ac9a;
  transition: 0.5s;
}
footer#global_footer #footer-nav ul .aki a {
  font-weight: 500;
}
@media only screen and (max-width: 835px) {
  footer#global_footer #footer-nav {
    display: none;
  }
}
footer#global_footer .footer-map iframe {
  vertical-align: bottom !important;
}
footer#global_footer #copyright {
  text-align: center;
  color: #1b1b1b !important;
}
footer#global_footer #copyright a {
  color: #1b1b1b !important;
}

.mean-container .mean-push {
  display: none !important;
}

.title_a1 {
  margin: 40px auto 20px;
}
.title_a1 h2, .title_a1 h3 {
  font-size: 1.5rem;
  color: #fff;
  background: #4e3209;
  border-left: 5px solid #cc9604;
  padding: 8px 0 8px 10px;
}
@media (max-width: 1200px) {
  .title_a1 h2, .title_a1 h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_a1 {
    margin: 30px auto 15px;
  }
  .title_a1 h2, .title_a1 h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_a1 {
    margin: 30px auto 15px;
  }
  .title_a1 h2, .title_a1 h3 {
    font-size: 1.125rem;
    font-weight: 500;
  }
}

.pick01a {
  background: #fff;
  padding: 15px 100px;
  position: relative;
  color: #4e3209;
}
.pick01a div {
  font-weight: 600;
}
.pick01a:before {
  position: absolute;
  content: "";
  background: url(../images/contents/linedecoL.png) no-repeat left top;
  background-size: cover;
  width: 70px;
  height: 100%;
  left: 0;
  top: 0;
  bottom: 0;
}
.pick01a:after {
  position: absolute;
  content: "";
  background: url(../images/contents/linedecoR.png) no-repeat right top;
  background-size: cover;
  width: 70px;
  height: 100%;
  right: 0;
  top: 0;
  bottom: 0;
  visibility: initial;
}
@media only screen and (max-width: 835px) {
  .pick01a {
    padding: 15px 70px;
  }
}

.pick00 {
  background: #fff;
  padding: 20px;
  border: 1px solid #4e3209;
}
@media only screen and (max-width: 640px) {
  .pick00 {
    padding: 15px;
  }
}

.pick11 {
  background: #dafaf7;
  padding: 20px;
  border: 1px solid #4e3209;
}
@media only screen and (max-width: 640px) {
  .pick11 {
    padding: 15px;
  }
}

.pick22 {
  background: #ffffa4;
  padding: 20px;
  border: 1px solid #4e3209;
  background-image: radial-gradient(#e8e888 30%, transparent 30%);
  background-size: 15px 15px;
}
@media only screen and (max-width: 640px) {
  .pick22 {
    padding: 15px;
  }
}

.hello_01 table tr {
  display: flex;
}
.hello_01 table tr td > div {
  height: 100%;
}

.title_01 img {
  width: 300px !important;
  margin: 0 auto 20px auto;
}
@media only screen and (max-width: 1000px) {
  .title_01 img {
    width: 200px !important;
  }
}
.title_01 h2 {
  font-size: 1.75rem;
  font-weight: 600;
  color: #4e3209;
}
@media (max-width: 1200px) {
  .title_01 h2 {
    font-size: calc(1.3rem + 0.6vw);
  }
}
.title_01 h2 span {
  font-size: 2.25rem;
  color: #7f500c;
  display: block;
  margin-top: 15px;
}
@media (max-width: 1200px) {
  .title_01 h2 span {
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media only screen and (max-width: 1500px) {
  .title_01 h2 {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 1500px) and (max-width: 1200px) {
  .title_01 h2 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 1000px) {
  .title_01 h2 {
    font-size: 1.3125rem;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 1200px) {
  .title_01 h2 {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
@media only screen and (max-width: 1000px) {
  .title_01 h2 span {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 1200px) {
  .title_01 h2 span {
    font-size: calc(1.3rem + 0.6vw);
  }
}

.title_02 h2 {
  color: #4e3209;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 1.75rem;
}
@media (max-width: 1200px) {
  .title_02 h2 {
    font-size: calc(1.3rem + 0.6vw);
  }
}
.title_02 h2 span {
  display: block;
  color: #cc9604;
  font-size: 0.8125rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-weight: 500;
}

.title_03 {
  margin: 40px auto 20px;
  border: 3px solid #4e3209;
  padding-top: 5px;
  background: #4e3209;
}
.title_03 h2, .title_03 h3 {
  font-size: 1.5rem;
  color: #4e3209;
  font-weight: bold;
  background-color: #22c4b7;
  background-image: radial-gradient(#14ac9a 30%, transparent 30%);
  background-size: 15px 15px;
  padding: 8px 0 8px 10px;
}
@media (max-width: 1200px) {
  .title_03 h2, .title_03 h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_03 {
    margin: 30px auto 15px;
  }
  .title_03 h2, .title_03 h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_03 {
    margin: 30px auto 15px;
  }
  .title_03 h2, .title_03 h3 {
    font-size: 1.125rem;
    font-weight: 500;
  }
}

.title_04, .title_05 {
  margin: 40px auto 20px;
}
.title_04 article, .title_05 article {
  position: relative;
  display: flex;
  align-items: center;
}
.title_04 article::before, .title_05 article::before {
  position: absolute;
  content: "";
  background: #14ac9a;
  width: 20px;
  height: 5px;
  left: 0;
  top: auto;
  bottom: auto;
}
.title_04 h2, .title_05 h2, .title_04 h3, .title_05 h3 {
  width: 100%;
  font-size: 1.5rem;
  color: #fff;
  background: #4e3209;
  padding: 8px 0 8px 30px;
}
@media (max-width: 1200px) {
  .title_04 h2, .title_05 h2, .title_04 h3, .title_05 h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_04, .title_05 {
    margin: 30px auto 15px;
  }
  .title_04 h2, .title_05 h2, .title_04 h3, .title_05 h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_04, .title_05 {
    margin: 30px auto 15px;
  }
  .title_04 h2, .title_05 h2, .title_04 h3, .title_05 h3 {
    font-size: 1.125rem;
    font-weight: 500;
  }
}

.title_05 article:before {
  background: #ffdd00 !important;
}

.news_bg {
  padding: 100px 0;
  position: relative;
}
.news_bg:before {
  position: absolute;
  content: "";
  background: url(../images/top/deco1.png) no-repeat right top;
  background-size: contain;
  width: 350px;
  height: 250px;
  top: 100px;
  right: 100px;
}
@media only screen and (max-width: 1500px) {
  .news_bg:before {
    width: 250px;
    height: 200px;
    top: 50px;
    right: 50px;
  }
}
@media only screen and (max-width: 1500px) {
  .news_bg:before {
    width: 150px;
    height: 100px;
    top: 50px;
    right: 10px;
  }
}
.news_bg:after {
  position: absolute;
  content: "";
  background: url(../images/top/deco2.png) no-repeat left top;
  background-size: contain;
  width: 400px;
  height: 150px;
  bottom: -100px;
  left: 100px;
}
@media only screen and (max-width: 1500px) {
  .news_bg:after {
    width: 300px;
    height: 150px;
    bottom: 0;
    left: 50px;
  }
}
@media only screen and (max-width: 1000px) {
  .news_bg:after {
    width: 200px;
    height: 160px;
    bottom: -100px;
    left: 50px;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .news_bg:after {
    bottom: -70px;
    left: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .news_bg:after {
    width: 150px;
    bottom: -70px;
    left: 10px;
  }
}

.news_wrap {
  display: flex;
}
.news_wrap .box_img {
  margin: 0 1% 0 0;
}
@media only screen and (max-width: 1500px) {
  .news_wrap .box_img {
    width: 10%;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .news_wrap .box_img {
    width: 10%;
  }
}
@media only screen and (max-width: 640px) {
  .news_wrap .box_img {
    width: 10%;
    margin: 0;
  }
}

.news {
  position: relative;
  width: 100%;
  margin: 0 auto;
  height: 300px;
  overflow-y: auto;
  line-height: 1.5;
  padding: 15px;
}
.news dl {
  border: none !important;
  border-bottom: 1px dashed #4e3209 !important;
  padding: 10px 0;
  display: block !important;
}
.news dl dt {
  border: none !important;
  background: none !important;
  padding: 5px 8px !important;
  color: #4e3209;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 1rem;
}
@media only screen and (max-width: 1500px) {
  .news dl dt {
    font-size: 0.9375rem;
  }
}
.news dl dd {
  border: none !important;
  width: 100% !important;
  background: none !important;
  padding: 5px 8px !important;
  font-size: 0.9375rem;
  color: #7f500c;
}
@media only screen and (max-width: 1500px) {
  .news dl dd {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 835px) {
  .news {
    padding: 10px;
  }
}

.cont_01 {
  margin-top: 30px;
  color: #1b1b1b;
  font-size: 1.125rem;
}
.cont_01 div {
  font-weight: bold;
}
@media only screen and (max-width: 1200px) {
  .cont_01 {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 835px) {
  .cont_01 {
    margin-top: 15px;
    font-size: 1rem;
  }
}

.cont_03 .box a {
  width: 100%;
  height: 100%;
  padding: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 5px solid #4e3209;
  color: #4e3209;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 1.5rem;
}
@media (max-width: 1200px) {
  .cont_03 .box a {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.cont_03 .box:first-child a {
  background-color: #86d044;
  background-image: radial-gradient(#52bc27 30%, transparent 30%);
  background-size: 20px 20px;
}
.cont_03 .box:nth-child(2) a {
  background-color: #ffdd00;
  background-image: radial-gradient(#e6a20f 30%, transparent 30%);
  background-size: 20px 20px;
}
.cont_03 .box:nth-child(3) a {
  background-color: #f269a0;
  background-image: radial-gradient(#ec3c77 30%, transparent 30%);
  background-size: 20px 20px;
}

.cont_04 {
  background: url(../images/top/bg_contBox.gif) repeat-x;
  background-size: auto;
  padding: 20px;
}

.cont_02 {
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 100px auto 150px auto;
}
.cont_02 .box_img {
  width: 100%;
  z-index: 3;
  position: relative;
  pointer-events: none;
}
.cont_02 .box_img img {
  display: block;
  width: 100% !important;
}
.cont_02 .box_txt {
  width: 100%;
  position: absolute;
  bottom: -50px;
}
@media only screen and (max-width: 1200px) {
  .cont_02 .box_txt {
    bottom: -30px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt {
    bottom: -20px;
  }
}
.cont_02 .box_txt .link_bar {
  background: rgba(20, 172, 154, 0.1);
  width: 100%;
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt .link_bar {
    background: #3d4f27;
  }
}
.cont_02 .box_txt .link_bar .txt {
  width: 50%;
  margin: 0 0 0 auto;
  padding: 160px 0 160px 160px;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  line-height: 1;
  font-size: 4.375rem;
  text-align: left;
  color: rgba(78, 50, 9, 0.5);
  position: relative;
}
@media (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: calc(1.5625rem + 3.75vw);
  }
}
.cont_02 .box_txt .link_bar .txt span {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #cc9604;
  font-weight: bold;
  font-size: 1.3125rem;
  display: block;
  margin-top: 20px;
}
@media (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt span {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
.cont_02 .box_txt .link_bar .txt span p {
  display: inline;
  position: relative;
}
.cont_02 .box_txt .link_bar .txt span p:after {
  content: "";
  background: url(../images/top/arrow.png) no-repeat center;
  position: absolute; /*絶対位置*/
  width: 60px;
  height: 100%;
  right: -70px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  text-align: center !important;
  justify-content: center;
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt .link_bar .txt span p:after {
    background: none;
  }
}
@media only screen and (max-width: 1500px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: 3.4375rem;
  }
}
@media only screen and (max-width: 1500px) and (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: calc(1.46875rem + 2.625vw);
  }
}
@media only screen and (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: 3.125rem;
    padding: 100px;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: calc(1.4375rem + 2.25vw);
  }
}
@media only screen and (max-width: 1000px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: 2.8125rem;
    padding: 100px 50px 50px 100px;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: calc(1.40625rem + 1.875vw);
  }
}
@media only screen and (max-width: 1000px) {
  .cont_02 .box_txt .link_bar .txt span {
    font-size: 1rem;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .cont_02 .box_txt .link_bar .txt {
    padding: 50px 30px 50px 70px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt .link_bar .txt {
    padding: 15px 0px;
    width: 100%;
    text-align: center;
    font-size: 2.25rem;
    color: #fff;
  }
}
@media only screen and (max-width: 640px) and (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt {
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt .link_bar .txt span {
    font-size: 0.9375rem;
    margin-top: 10px;
  }
}
.cont_02 .box_txt .link_bar .txt:after {
  position: absolute;
  content: "";
  z-index: 100;
  background: url(../images/top/deco3.png) no-repeat left top;
  background-size: contain;
  width: 300px;
  height: 250px;
  top: -100px;
  left: 50px;
}
@media only screen and (max-width: 1500px) {
  .cont_02 .box_txt .link_bar .txt:after {
    width: 250px;
    height: 200px;
    top: 0px;
    left: 0px;
  }
}
@media only screen and (max-width: 1200px) {
  .cont_02 .box_txt .link_bar .txt:after {
    width: 200px;
    height: 150px;
    top: -50px;
  }
}
@media only screen and (max-width: 835px) {
  .cont_02 .box_txt .link_bar .txt:after {
    width: 150px;
    height: 100px;
    top: -50px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt .link_bar .txt:after {
    background: url(../images/top/deco3.png) no-repeat right top;
    background-size: contain;
    width: 150px;
    height: 100px;
    top: -100px;
    left: auto;
    right: 0;
  }
}
.cont_02 .box_txt .link_bar:before {
  content: "";
  z-index: -1;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
  background: #3d4f27;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media only screen and (max-width: 640px) {
  .cont_02 .box_txt .link_bar:before {
    left: 0;
    height: 95%;
    bottom: 0;
    top: auto;
  }
}
.cont_02 .box_txt .link_bar:hover {
  opacity: 1;
  background: none;
}
.cont_02 .box_txt .link_bar:hover .txt {
  color: #fff;
  transition: 0.5s;
}
.cont_02 .box_txt .link_bar:hover:before {
  left: 0;
}
.cont_02 .box_txt .link_bar:hover .txt span p:after {
  transform: translate(10px, 0);
  transition: 0.5s;
}
@media only screen and (max-width: 640px) {
  .cont_02 {
    background: #3d4f27;
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 1500px) {
  .cont_02 {
    margin: 70px auto 120px auto;
  }
}
@media only screen and (max-width: 835px) {
  .cont_02 {
    margin: 40px auto 70px auto;
  }
}

.cont_02_b, .cont_02_c {
  display: flex;
  flex-direction: column;
  position: relative;
}
.cont_02_b .box_img, .cont_02_c .box_img {
  width: 50%;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 1;
  pointer-events: none;
}
.cont_02_b .box_img .imgL, .cont_02_c .box_img .imgL {
  opacity: 1;
  width: 100% !important;
  height: auto !important;
}
.cont_02_b .box_img img, .cont_02_c .box_img img {
  display: block;
  width: 100% !important;
}
@media only screen and (max-width: 640px) {
  .cont_02_b .box_img, .cont_02_c .box_img {
    width: 90%;
    margin: 0 0 0 auto;
    pointer-events: initial;
  }
}
.cont_02_b .box_txt, .cont_02_c .box_txt {
  width: 100%;
  height: 70%;
  position: absolute;
  bottom: -50px;
}
@media only screen and (max-width: 1200px) {
  .cont_02_b .box_txt, .cont_02_c .box_txt {
    bottom: -30px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_b .box_txt, .cont_02_c .box_txt {
    width: 100%;
    position: static;
    bottom: -30px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_b, .cont_02_c {
    background: #3d4f27;
  }
}
.cont_02_b .link_bar, .cont_02_c .link_bar {
  background: rgba(20, 172, 154, 0.1);
  width: 100%;
  height: 100%;
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: relative;
  z-index: 0;
}
.cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
  width: 40%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  margin: 0 auto 0 0;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  line-height: 1;
  font-size: 4.375rem;
  text-align: left;
  color: rgba(78, 50, 9, 0.5);
  position: relative;
}
@media (max-width: 1200px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: calc(1.5625rem + 3.75vw);
  }
}
.cont_02_b .link_bar .txt span, .cont_02_c .link_bar .txt span {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #cc9604;
  font-weight: bold;
  font-size: 1.3125rem;
  display: block;
  margin-top: 25px;
}
@media (max-width: 1200px) {
  .cont_02_b .link_bar .txt span, .cont_02_c .link_bar .txt span {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
.cont_02_b .link_bar .txt span p, .cont_02_c .link_bar .txt span p {
  display: inline;
  position: relative;
}
.cont_02_b .link_bar .txt span p:after, .cont_02_c .link_bar .txt span p:after {
  content: "";
  background: url(../images/top/arrow.png) no-repeat center;
  position: absolute; /*絶対位置*/
  width: 60px;
  height: 100%;
  right: -70px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  text-align: center !important;
  justify-content: center;
}
@media only screen and (max-width: 640px) {
  .cont_02_b .link_bar .txt span p:after, .cont_02_c .link_bar .txt span p:after {
    background: none;
  }
}
@media only screen and (max-width: 1500px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: 3.4375rem;
  }
}
@media only screen and (max-width: 1500px) and (max-width: 1200px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: calc(1.46875rem + 2.625vw);
  }
}
@media only screen and (max-width: 1200px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: 3.125rem;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 1200px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: calc(1.4375rem + 2.25vw);
  }
}
@media only screen and (max-width: 1000px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: 2.8125rem;
    padding: 100px 50px 50px 100px;
  }
}
@media only screen and (max-width: 1000px) and (max-width: 1200px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: calc(1.40625rem + 1.875vw);
  }
}
@media only screen and (max-width: 1000px) {
  .cont_02_b .link_bar .txt span, .cont_02_c .link_bar .txt span {
    font-size: 1rem;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    padding: 50px 30px 50px 70px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    width: 100%;
    justify-content: end;
    align-items: center;
    padding: 15px 0;
    font-size: 2.25rem;
    color: #fff;
  }
}
@media only screen and (max-width: 640px) and (max-width: 1200px) {
  .cont_02_b .link_bar .txt, .cont_02_c .link_bar .txt {
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_b .link_bar .txt span, .cont_02_c .link_bar .txt span {
    font-size: 0.9375rem;
    margin-top: 10px;
  }
}
.cont_02_b .link_bar .txt:after, .cont_02_c .link_bar .txt:after {
  position: absolute;
  content: "";
  z-index: 100;
  background: url(../images/top/deco4.png) no-repeat left top;
  background-size: contain;
  width: 500px;
  height: 350px;
  top: -150px;
  left: 50px;
}
@media only screen and (max-width: 1500px) {
  .cont_02_b .link_bar .txt:after, .cont_02_c .link_bar .txt:after {
    width: 350px;
    height: 200px;
  }
}
@media only screen and (max-width: 1000px) {
  .cont_02_b .link_bar .txt:after, .cont_02_c .link_bar .txt:after {
    width: 250px;
    height: 150px;
    top: -100px;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .cont_02_b .link_bar .txt:after, .cont_02_c .link_bar .txt:after {
    width: 200px;
    height: 120px;
    left: 20px;
    top: -80px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_b .link_bar .txt:after, .cont_02_c .link_bar .txt:after {
    width: 140px;
    height: 80px;
    left: 0;
    top: -40px;
  }
}
.cont_02_b .link_bar:before, .cont_02_c .link_bar:before {
  content: "";
  z-index: -1;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: -100%;
  background: #3d4f27;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media only screen and (max-width: 640px) {
  .cont_02_b .link_bar:before, .cont_02_c .link_bar:before {
    left: 0;
    height: 95%;
    bottom: 0;
    top: auto;
  }
}
.cont_02_b .link_bar:hover, .cont_02_c .link_bar:hover {
  opacity: 1;
}
.cont_02_b .link_bar:hover .txt, .cont_02_c .link_bar:hover .txt {
  color: #fff;
  transition: 0.5s;
}
.cont_02_b .link_bar:hover:before, .cont_02_c .link_bar:hover:before {
  right: 0;
}
.cont_02_b .link_bar:hover .txt span p:after, .cont_02_c .link_bar:hover .txt span p:after {
  transform: translate(10px, 0);
  transition: 0.5s;
}
@media only screen and (max-width: 640px) {
  .cont_02_b .link_bar, .cont_02_c .link_bar {
    display: inline;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_b, .cont_02_c {
    display: block;
  }
}

.cont_02_c {
  margin: 150px auto;
}
.cont_02_c .box_img {
  margin: 0 auto 0 0;
}
.cont_02_c .link_bar .txt {
  width: 45%;
  margin: 0 0 0 auto;
  align-items: flex-start;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .cont_02_c .link_bar .txt {
    width: 50%;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_c .link_bar .txt {
    width: 100%;
    align-items: center;
  }
}
.cont_02_c .link_bar .txt:after {
  position: absolute;
  content: "";
  z-index: 100;
  background: url(../images/top/deco5.png) no-repeat right top;
  background-size: contain;
  width: 350px;
  height: 350px;
  top: -150px;
  left: auto;
  right: 100px;
}
@media only screen and (max-width: 1500px) {
  .cont_02_c .link_bar .txt:after {
    width: 250px;
    height: 250px;
    right: 50px;
  }
}
@media only screen and (max-width: 1000px) {
  .cont_02_c .link_bar .txt:after {
    width: 200px;
    height: 200px;
    right: 30px;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .cont_02_c .link_bar .txt:after {
    width: 150px;
    height: 150px;
    top: -100px;
  }
}
@media only screen and (max-width: 640px) {
  .cont_02_c .link_bar .txt:after {
    width: 100px;
    height: 100px;
    top: -70px;
    right: 0;
  }
}
.cont_02_c .link_bar:before {
  left: -100%;
  right: auto;
}
@media only screen and (max-width: 640px) {
  .cont_02_c .link_bar:before {
    left: 0;
  }
}
.cont_02_c .link_bar:hover:before {
  right: auto;
  left: 0;
}
@media only screen and (max-width: 1500px) {
  .cont_02_c {
    margin: 120px auto;
  }
}
@media only screen and (max-width: 835px) {
  .cont_02_c {
    margin: 50px auto;
  }
}

#Local_header {
  position: relative;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(#55b1aa 30%, transparent 30%);
  background-size: 20px 20px;
  padding: 60px 0 !important;
}
@media only screen and (max-width: 1000px) {
  #Local_header {
    padding: 50px !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  #Local_header {
    padding: 50px 0 !important;
  }
}
@media only screen and (max-width: 640px) {
  #Local_header {
    padding: 80px 0 50px 0 !important;
  }
}
#Local_header:before {
  position: absolute;
  content: "";
  background: url(../images/contents/title_deco1.png) no-repeat right top;
  background-size: contain;
  opacity: 0.05;
  width: 150px;
  height: 150px;
  top: 0;
  right: 0;
}
@media only screen and (max-width: 835px) {
  #Local_header:before {
    width: 100px;
    height: 100px;
  }
}
#Local_header:after {
  position: absolute;
  content: "";
  background: url(../images/contents/title_deco2.png) no-repeat left bottom;
  background-size: contain;
  opacity: 0.1;
  width: 200px;
  height: 200px;
  bottom: 0;
  left: 0;
  z-index: -1;
}
@media only screen and (max-width: 835px) {
  #Local_header:after {
    width: 150px;
    height: 150px;
  }
}

#Local_header_inr {
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  background: #6dc7bd;
  background-size: cover;
  z-index: -1;
}
#local-keyvisual-title {
  position: relative;
}
#local-keyvisual-title h1 {
  display: flex;
  flex-direction: column-reverse;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.125rem;
  color: #fff;
  font-weight: normal;
}
#local-keyvisual-title h1 span {
  margin-bottom: 10px;
  font-size: 3.375rem;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-weight: 500;
  color: #4e3209;
  line-height: 1;
}
@media (max-width: 1200px) {
  #local-keyvisual-title h1 span {
    font-size: calc(1.4625rem + 2.55vw);
  }
}
@media only screen and (max-width: 1200px) {
  #local-keyvisual-title h1 {
    font-size: 1rem;
  }
  #local-keyvisual-title h1 span {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 1200px) {
  #local-keyvisual-title h1 span {
    font-size: calc(1.425rem + 2.1vw);
  }
}
@media only screen and (max-width: 835px) {
  #local-keyvisual-title h1 {
    font-size: 0.875rem;
  }
}

.blog_title_wrap {
  position: relative;
  padding: 70px 0 !important;
}
@media screen and (max-width: 1300px) {
  .blog_title_wrap {
    padding: 50px 0 !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .blog_title_wrap {
    padding: 40px 0 !important;
  }
}
@media only screen and (max-width: 640px) {
  .blog_title_wrap {
    padding: 40px 0 !important;
  }
}

.blog_title_inr {
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  background: url(../images/top/top_bg1.jpg) repeat center;
  background-size: cover;
  z-index: -1;
}

.title_a {
  margin: 40px auto 20px;
}
.title_a h2, .title_a h3 {
  font-size: 1.5rem;
  color: #7f500c;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background: rgba(180, 158, 113, 0.5);
  border-left: 5px solid #14ac9a;
  border-bottom: 3px solid rgba(204, 204, 204, 0.7);
  padding: 8px 0 8px 10px;
}
@media (max-width: 1200px) {
  .title_a h2, .title_a h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_a {
    margin: 30px auto 15px;
  }
  .title_a h2, .title_a h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_a {
    margin: 30px auto 15px;
  }
  .title_a h2, .title_a h3 {
    font-size: 1.125rem;
    font-weight: 500;
  }
}

.title_b {
  margin: 40px auto 20px;
}
.title_b h2, .title_b h3, .title_b h4 {
  position: relative;
  padding-left: 30px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  color: #4e3209;
  border-bottom: dashed 1px rgba(78, 50, 9, 0.5);
  display: flex;
  align-items: center;
}
.title_b h2:after, .title_b h3:after, .title_b h4:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f219"; /*アイコンのユニコード*/
  font-weight: bold;
  color: #14ac9a;
  font-size: 1.5rem;
  position: absolute; /*絶対位置*/
  left: 0px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
}
@media (max-width: 1200px) {
  .title_b h2:after, .title_b h3:after, .title_b h4:after {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 835px) {
  .title_b h2, .title_b h3, .title_b h4 {
    font-size: 1.125rem;
    padding-left: 25px;
  }
}
@media only screen and (max-width: 835px) {
  .title_b {
    margin: 30px auto 15px;
  }
}

.title_c {
  margin: 40px auto 20px;
}
.title_c h2, .title_c h3 {
  background: rgba(127, 80, 12, 0.15);
  padding: 5px 0 5px 40px;
  font-size: 1.5rem;
  color: #4e3209;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
}
@media (max-width: 1200px) {
  .title_c h2, .title_c h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.title_c h2:before, .title_c h3:before {
  content: "□";
  position: absolute;
  left: 5px;
  top: 0;
  color: #cc9604;
}
.title_c h2:after, .title_c h3:after {
  content: "□";
  position: absolute;
  left: 13px;
  top: 10px;
  color: #14ac9a;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_c {
    margin: 30px auto 15px;
  }
  .title_c h2, .title_c h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_c {
    margin: 30px auto 15px;
  }
  .title_c h2, .title_c h3 {
    font-size: 1.125rem;
  }
}

.title_d {
  margin: 40px auto 20px auto;
}
.title_d h2, .title_d h3 {
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #4e3209;
  font-weight: 500;
  letter-spacing: 0.075em;
  line-height: 1em;
  padding-bottom: 15px;
  position: relative;
}
@media (max-width: 1200px) {
  .title_d h2, .title_d h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.title_d h2:after, .title_d h3:after {
  position: absolute;
  content: "";
  display: block;
  background: #14ac9a;
  bottom: 0;
  width: 60px;
  height: 1px;
  left: 0;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_d h2, .title_d h3 {
    font-size: 1.3125rem;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) and (max-width: 1200px) {
  .title_d h2, .title_d h3 {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
@media only screen and (max-width: 640px) {
  .title_d h2, .title_d h3 {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 835px) {
  .title_d {
    margin: 30px auto 15px;
  }
}

.title_e {
  margin: 40px auto 20px;
}
.title_e h2, .title_e h3 {
  font-size: 1.5rem;
  color: #4e3209;
  font-weight: 500;
  padding-bottom: 8px;
  text-align: center;
  border-bottom: solid 2px #ccc;
  position: relative;
}
@media (max-width: 1200px) {
  .title_e h2, .title_e h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.title_e h2:after, .title_e h3:after {
  position: absolute;
  content: "";
  display: block;
  border-bottom: solid 2px #14ac9a;
  bottom: -2px;
  width: 25%;
  left: 0;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_e h2, .title_e h3 {
    font-size: 1.25rem;
    margin: 30px auto 15px;
  }
}
@media only screen and (max-width: 640px) {
  .title_e h2, .title_e h3 {
    font-size: 1.25rem;
    margin: 30px auto 15px;
  }
}

.title_f {
  margin: 40px auto 20px;
  border-bottom: 2px dotted rgba(204, 204, 204, 0.7);
}
.title_f h2, .title_f h3 {
  font-size: 1.5rem;
  font-weight: 500;
  color: #4e3209;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background: rgba(204, 204, 204, 0.5);
  border-left: 3px solid #14ac9a;
  padding: 8px 0 8px 10px;
  margin-bottom: 5px;
  line-height: 1em;
}
@media (max-width: 1200px) {
  .title_f h2, .title_f h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 640px) {
  .title_f h2, .title_f h3 {
    line-height: 1.3em;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_f {
    margin: 30px auto 15px;
  }
  .title_f h2, .title_f h3 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_f {
    margin: 30px auto 15px;
  }
  .title_f h2, .title_f h3 {
    font-size: 1.125rem;
    font-weight: 600;
  }
}

.title_center_01 h2, .title_center_01 h3 {
  font-size: 1.5rem;
  color: #4e3209;
  font-weight: 600;
  position: relative;
  padding-bottom: 10px;
  text-align: center;
  line-height: 1.5em;
  margin-bottom: 20px;
}
@media (max-width: 1200px) {
  .title_center_01 h2, .title_center_01 h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.title_center_01 h2:after, .title_center_01 h3:after {
  position: absolute;
  content: "";
  background: #cccccc;
  width: 60px;
  height: 2px;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0;
}
.title_center_01 h2 br, .title_center_01 h3 br {
  display: block !important;
}
@media only screen and (max-width: 835px) {
  .title_center_01 h2, .title_center_01 h3 {
    font-size: 1.125rem;
  }
}

.title_center_bg {
  margin: 40px auto 20px auto;
}
.title_center_bg h2, .title_center_bg h3 {
  background: rgba(20, 172, 154, 0.7);
  padding: 8px 10px;
  font-weight: 500;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.3125rem;
  color: #fff;
  line-height: 1.5em;
  text-align: center;
}
@media (max-width: 1200px) {
  .title_center_bg h2, .title_center_bg h3 {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
.title_center_bg h2 span, .title_center_bg h3 span {
  color: #3dd3c7;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_center_bg {
    margin: 30px auto 15px auto;
  }
  .title_center_bg h2, .title_center_bg h3 {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_center_bg {
    margin: 30px auto 15px auto;
  }
  .title_center_bg h2, .title_center_bg h3 {
    font-size: 1.125rem;
  }
}

.title_half {
  margin: 40px auto 20px;
}
.title_half h2, .title_half h3 {
  max-width: 550px;
  width: 100%;
  font-size: 1.3125rem;
  font-weight: 500;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center !important;
  background: rgba(204, 150, 4, 0.5);
  padding: 8px 10px;
  color: #fff;
}
@media (max-width: 1200px) {
  .title_half h2, .title_half h3 {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
@media only screen and (max-width: 835px) {
  .title_half {
    margin: 30px auto 15px;
  }
  .title_half h2, .title_half h3 {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_half {
    max-width: 100%;
  }
}

.title_center_dot {
  margin: 40px auto 20px auto;
}
.title_center_dot h2, .title_center_dot h3 {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
}
.title_center_dot h2 div, .title_center_dot h3 div {
  min-width: 20px;
  flex-grow: 1;
  position: relative;
  z-index: 1;
}
.title_center_dot h2 div:after, .title_center_dot h3 div:after {
  content: "";
  width: 100%;
  height: 5px;
  background: url(../images/contents/line2.png) repeat-x;
  background-size: contain;
  position: absolute;
  top: 60%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: -1;
  display: block;
  visibility: initial;
  opacity: 1;
}
.title_center_dot h2 span, .title_center_dot h3 span {
  position: relative;
  font-weight: 600;
  font-size: 1.3125rem;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #4e3209;
  background: #transpatent;
  padding: 0 20px;
}
@media (max-width: 1200px) {
  .title_center_dot h2 span, .title_center_dot h3 span {
    font-size: calc(1.25625rem + 0.075vw);
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .title_center_dot h2 span, .title_center_dot h3 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .title_center_dot h2 span, .title_center_dot h3 span {
    padding: 0 10px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 835px) {
  .title_center_dot {
    margin: 30px auto 15px auto;
  }
}

.list_UL ul li {
  padding-left: 35px;
  position: relative;
  margin-bottom: 10px;
  font-size: 1rem;
  font-weight: 500;
}
.list_UL ul li:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f14a"; /*アイコンのユニコード*/
  font-weight: 600;
  color: #cc9604;
  font-size: 1.5rem;
  position: absolute; /*絶対位置*/
  left: 0px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
}
@media (max-width: 1200px) {
  .list_UL ul li:after {
    font-size: calc(1.275rem + 0.3vw);
  }
}

.list_UL2 ul li {
  overflow: visible !important;
  padding-left: 20px;
  position: relative;
  margin-bottom: 10px;
  font-size: 1rem;
  font-weight: 500;
}
.list_UL2 ul li:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f276"; /*アイコンのユニコード*/
  font-weight: 600;
  color: #cc9604;
  font-size: 1.5rem;
  position: absolute; /*絶対位置*/
  left: 0px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  -moz-transform: rotate(-20deg);
  -webkit-transform: rotate(-20deg);
  -o-transform: rotate(-20deg);
  -ms-transform: rotate(-20deg);
}
@media (max-width: 1200px) {
  .list_UL2 ul li:after {
    font-size: calc(1.275rem + 0.3vw);
  }
}

.check_UL ul li {
  padding-left: 35px;
  position: relative;
  margin-bottom: 10px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 2em;
}
.check_UL ul li:after {
  content: "";
  position: absolute; /*絶対位置*/
  background: url(../images/top/check.png) no-repeat;
  background-size: contain;
  width: 30px;
  height: 27px;
  left: 0px; /*アイコンの位置*/
  top: 5px;
}
@media only screen and (max-width: 835px) {
  .check_UL ul li {
    font-size: 0.9375rem;
    margin-bottom: 5px;
    line-height: 1.5em;
  }
  .check_UL ul li:after {
    width: 25px;
    height: 23px;
  }
}
@media only screen and (max-width: 640px) {
  .check_UL ul li {
    padding-left: 25px;
  }
  .check_UL ul li:after {
    width: 20px;
    height: 20px;
    top: 0;
  }
}

.pick01, .pick03 {
  background: #dafaf7;
  padding: 30px;
}
.pick01 .profile, .pick03 .profile {
  font-size: 1rem;
  color: #4e3209;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
  text-decoration: underline;
  margin-bottom: 10px;
}
@media only screen and (max-width: 835px) {
  .pick01, .pick03 {
    padding: 20px 15px;
  }
}

.pick02 {
  background: rgba(20, 172, 154, 0.2);
  padding: 15px;
}
@media only screen and (max-width: 835px) {
  .pick02 {
    padding: 10px;
  }
}

.pick03 {
  background: rgba(204, 204, 204, 0.4);
}

.contact_contents #contents_wrap {
  margin-top: 100px;
}
@media only screen and (max-width: 835px) {
  .contact_contents #contents_wrap {
    margin-top: 50px;
  }
}

.picktxt_w {
  font-size: 16px;
  color: #fff;
  line-height: 2em;
}
.picktxt08 {
  font-size: 0.8em;
  line-height: 1.5em;
}
@media only screen and (max-width: 835px) {
  .picktxt08 {
    font-size: 0.9em;
  }
}

.picktxt09 {
  font-size: 0.9em;
  line-height: 1.5em;
}
.picktxt105 {
  font-size: 1.05em;
  line-height: 2em;
}
@media only screen and (max-width: 835px) {
  .picktxt105 {
    line-height: 1.8em;
  }
}

.picktxt11 {
  font-size: 1.1em;
  line-height: 2em;
}
@media only screen and (max-width: 835px) {
  .picktxt11 {
    line-height: 1.8em;
    font-size: 1.05em;
  }
}

.picktxt12 {
  font-size: 1.2em;
  line-height: 2em;
}
@media only screen and (max-width: 1000px) {
  .picktxt12 {
    font-size: 1.1em;
  }
}
@media only screen and (max-width: 835px) {
  .picktxt12 {
    font-size: 16px;
    line-height: 1.8em;
  }
}

.hosoku {
  background: rgba(204, 150, 4, 0.2);
  padding: 10px;
  font-size: 0.95em;
}
.hosoku h2, .hosoku h3 {
  font-size: 1rem;
  color: #4e3209;
  font-weight: 600;
}
@media only screen and (max-width: 835px) {
  .hosoku {
    padding: 10px;
  }
}

.ls100 {
  letter-spacing: 0.2rem;
}
@media only screen and (max-width: 835px) {
  .ls100 {
    letter-spacing: 1px;
  }
}

.ls50 {
  letter-spacing: 0.1rem;
}
@media only screen and (max-width: 835px) {
  .ls50 {
    letter-spacing: 1px;
  }
}

.TTL {
  font-family: "balboa", sans-serif;
  letter-spacing: 0.2rem;
}

.btn1 a, .btn1_L a {
  text-align: center;
  position: relative;
  z-index: 2;
  border: 3px solid #4e3209;
  background: #fff;
  transition: all 0.5s;
  display: block;
  margin: 0 auto;
  width: 90%;
  max-width: 350px;
  min-width: 250px;
  padding: 12px 10px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #4e3209;
  font-size: 1.125rem;
  font-weight: bold;
}
.btn1 a:after, .btn1_L a:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f0da"; /*アイコンのユニコード*/
  font-size: 24px;
  position: absolute; /*絶対位置*/
  right: 10px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
}
.btn1 a:hover, .btn1_L a:hover {
  opacity: 1 !important;
  background-color: #14ac9a;
}
.btn1 a:hover:after, .btn1_L a:hover:after {
  transform: translate(3px, 0);
  transition: 0.5s;
}

.btn1_rad20 a, .btn1_rad20_cont a, .btn1_rad20_L a {
  text-align: center;
  position: relative;
  z-index: 2;
  background: #14ac9a;
  transition: 0.5s;
  display: block;
  margin: 0 auto;
  width: 90%;
  max-width: 400px;
  min-width: 220px;
  padding: 5px 10px;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1rem;
}
.btn1_rad20 a:after, .btn1_rad20_cont a:after, .btn1_rad20_L a:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f138"; /*アイコンのユニコード*/
  font-weight: 600;
  font-size: 1.125rem;
  position: absolute; /*絶対位置*/
  right: 10px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
}
.btn1_rad20 a:hover, .btn1_rad20_cont a:hover, .btn1_rad20_L a:hover {
  opacity: 1 !important;
  background-color: #3dd3c7;
  transition: 0.5s;
  color: #fff;
}
.btn1_rad20 a:hover:after, .btn1_rad20_cont a:hover:after, .btn1_rad20_L a:hover:after {
  transform: translate(3px, 0);
  transition: 0.5s;
  color: #fff;
}
.btn1_rad20 a, .btn1_rad20_cont a, .btn1_rad20_L a {
  border-radius: 40px;
}

@media screen and (min-width: 640px) {
  .btn1_rad20_L a {
    margin: 0 auto 0 0;
  }
}

.btn1_rad20_cont a:after {
  content: none;
}

@media screen and (min-width: 640px) {
  .btn1_L a {
    margin: 0 auto 0 0;
  }
}

.btn2 {
  width: 100%;
}
.btn2 a {
  background: #cc9604;
  display: block;
  width: 90%;
  max-width: 350px;
  margin: 0 auto;
  padding: 10px 5px;
  color: #fff;
  text-align: center;
  font-size: 1.25rem;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  position: relative;
  border: 1px solid #fff;
}
.btn2 a:after {
  position: absolute;
  top: 50%;
  right: -25px;
  content: "";
  width: 50px;
  height: 1px;
  background: #14ac9a;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
}
.btn2 a:hover {
  background: #990012;
  color: #fff;
  opacity: 1;
  transition: 0.5s;
}
.btn2 a:hover:after {
  transform: scale(1, 1);
}
@media only screen and (max-width: 640px) {
  .btn2 a {
    font-size: 1rem;
  }
}

.btn3, .btn3_L {
  width: 100%;
  max-width: 350px;
  display: block;
  margin: 0 auto;
  padding: 10px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: relative;
  overflow: hidden;
  z-index: 2;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.125rem;
  background: #cc9604;
  color: #fff !important;
  text-align: center;
}
.btn3:before, .btn3_L:before {
  content: "";
  z-index: -1;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
  background: #990012;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.btn3:after, .btn3_L:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f138"; /*アイコンのユニコード*/
  font-size: 14px;
  position: absolute; /*絶対位置*/
  right: 10px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  text-align: center !important;
  justify-content: center;
  font-weight: 600;
}
.btn3:hover, .btn3_L:hover {
  opacity: 1;
  color: #fff;
}
.btn3:hover:before, .btn3_L:hover:before {
  left: 0;
}
.btn3:hover:after, .btn3_L:hover:after {
  transform: translate(3px, 0);
  transition: 0.5s;
}
@media only screen and (max-width: 640px) {
  .btn3, .btn3_L {
    margin: 0 auto;
  }
}

.btn1_cont a {
  text-align: center;
  position: relative;
  z-index: 2;
  background: #fff;
  transition: all 0.5s;
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 350px;
  min-width: 250px;
  padding: 10px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #14ac9a;
  font-size: 1rem;
  font-weight: bold;
}
.btn1_cont a i {
  margin-right: 5px;
}
.btn1_cont a:hover {
  opacity: 1 !important;
  background-color: #3dd3c7;
  color: #fff;
  transition: 0.5s;
}

@media screen and (min-width: 640px) {
  .btn3_L a {
    margin: 0 auto 0 0;
  }
}

.bg_color_wrap {
  position: relative;
  padding: 3% 0 !important;
}
@media screen and (max-width: 1500px) {
  .bg_color_wrap {
    padding: 7% 0 !important;
  }
}
@media only screen and (max-width: 835px) {
  .bg_color_wrap {
    padding: 10% 0 !important;
  }
}

.bg_color_inr {
  width: 1000%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  margin: 0% 0% 0% -500%;
  background: rgba(20, 172, 154, 0.15);
  z-index: -1;
}
.bg_img_wrap {
  position: relative;
  padding: 4% 0 !important;
}
@media screen and (max-width: 1300px) {
  .bg_img_wrap {
    padding: 6% 0 !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .bg_img_wrap {
    padding: 8% 0 !important;
  }
}
@media only screen and (max-width: 640px) {
  .bg_img_wrap {
    padding: 10% 0 !important;
  }
}

.bg_img_inr {
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  background: url(../images/common/top_bg1.png) repeat top;
  background-size: cover;
  z-index: -1;
}
@media only screen and (max-width: 640px) {
  .bg_img_inr {
    background-position: right bottom;
  }
}

.bg_ptn_wrap {
  position: relative;
  padding: 80px 0 !important;
}
@media screen and (max-width: 1300px) {
  .bg_ptn_wrap {
    padding: 70px 0 !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .bg_ptn_wrap {
    padding: 60px 0 !important;
  }
}
@media only screen and (max-width: 640px) {
  .bg_ptn_wrap {
    padding: 40px 0 !important;
  }
}

.bg_ptn_inr {
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  background: url(../images/top/ptn1.png) repeat center;
  background-size: auto;
  z-index: -1;
}
@media only screen and (max-width: 1200px) {
  .bg_ptn_inr {
    background-size: 50%;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .bg_ptn_inr {
    background-size: 75%;
  }
}
@media only screen and (max-width: 640px) {
  .bg_ptn_inr {
    background-size: 100%;
  }
}

.imgbox .box article > h3, .imgbox_c .box article > h3 {
  display: none;
}
.imgbox .box article div, .imgbox_c .box article div {
  line-height: 1.5em;
  margin-top: 10px;
}
.imgbox .box article div h2, .imgbox_c .box article div h2, .imgbox .box article div h3, .imgbox_c .box article div h3 {
  font-size: 1.2em;
  font-weight: 500;
  margin-bottom: 5px;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #4e3209;
}
@media only screen and (max-width: 1000px) {
  .imgbox .box article div h2, .imgbox_c .box article div h2, .imgbox .box article div h3, .imgbox_c .box article div h3 {
    font-size: 1.1em;
  }
}

.imgbox_c .box article div {
  text-align: center;
}

.imgbox2 .box article > h3, .imgbox2_c .box article > h3 {
  display: none;
}
.imgbox2 .box article div, .imgbox2_c .box article div {
  line-height: 1.5em;
  margin-top: 10px;
}
.imgbox2 .box article div h2, .imgbox2_c .box article div h2, .imgbox2 .box article div h3, .imgbox2_c .box article div h3 {
  font-size: 1.1em;
  font-weight: 500;
  margin-bottom: 5px;
  color: #4e3209;
}

.imgbox2_c .box article div {
  text-align: center;
}

.img_txt_flx {
  display: flex;
  justify-content: space-between;
}
.img_txt_flx .box {
  overflow: inherit !important;
}
.img_txt_flx .box:first-child {
  width: 39%;
  margin: 0 1% 0 0;
}
.img_txt_flx .box:first-child img {
  display: block;
  margin: 0 auto;
  width: 100% !important;
}
.img_txt_flx .box:nth-child(2) {
  width: 59%;
  margin: 0 0 0 1%;
}
@media only screen and (max-width: 640px) {
  .img_txt_flx {
    flex-direction: column;
  }
  .img_txt_flx .box:first-child {
    width: 100%;
    margin: 0 auto 15px auto !important;
  }
  .img_txt_flx .box:nth-child(2) {
    width: 100%;
    margin: 0 auto !important;
  }
}

.img_txt_flx2 {
  display: flex;
  justify-content: space-between;
}
.img_txt_flx2 .box {
  overflow: inherit !important;
}
.img_txt_flx2 .box:first-child {
  width: 29%;
  margin: 0 1% 0 0;
}
.img_txt_flx2 .box:first-child img {
  display: block;
  margin: 0 auto;
  width: 100% !important;
}
.img_txt_flx2 .box:nth-child(2) {
  width: 69%;
  margin: 0 0 0 1%;
}
@media only screen and (max-width: 640px) {
  .img_txt_flx2 {
    flex-direction: column;
  }
  .img_txt_flx2 .box:first-child {
    width: 100%;
    margin: 0 auto 15px auto !important;
  }
  .img_txt_flx2 .box:nth-child(2) {
    width: 100%;
    margin: 0 auto !important;
  }
}

.txt_img_flx {
  display: flex;
  justify-content: space-between;
}
.txt_img_flx .box {
  overflow: inherit !important;
}
.txt_img_flx .box:first-child {
  width: 59%;
  margin: 0 1% 0 0;
}
.txt_img_flx .box:nth-child(2) {
  width: 39%;
  margin: 0 0 0 1%;
}
.txt_img_flx .box:nth-child(2) img {
  display: block;
  margin: 0 auto;
  width: 100% !important;
}
@media only screen and (max-width: 640px) {
  .txt_img_flx {
    flex-direction: column-reverse !important;
  }
  .txt_img_flx .box:first-child {
    width: 100%;
    margin: 0 auto;
  }
  .txt_img_flx .box:nth-child(2) {
    width: 100%;
    margin: 0 auto 15px auto;
  }
}

.txt_img_flx2 {
  display: flex;
  justify-content: space-between;
}
.txt_img_flx2 .box {
  overflow: inherit !important;
}
.txt_img_flx2 .box:first-child {
  width: 69%;
  margin: 0 1% 0 0;
}
.txt_img_flx2 .box:nth-child(2) {
  width: 29%;
  margin: 0 0 1%;
}
.txt_img_flx2 .box:nth-child(2) img {
  display: block;
  margin: 0 auto;
  width: 100% !important;
}
@media only screen and (max-width: 640px) {
  .txt_img_flx2 {
    flex-direction: column-reverse !important;
  }
  .txt_img_flx2 .box:first-child {
    width: 100%;
    margin: 0 auto;
  }
  .txt_img_flx2 .box:nth-child(2) {
    width: 100%;
    margin: 0 auto 15px auto;
  }
}

.flx2, .flx2_R {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
.flx2 .box, .flx2_R .box {
  width: 49%;
}
.flx2 .box:nth-child(2n+1), .flx2_R .box:nth-child(2n+1) {
  margin: 0 1% 1% 0;
}
.flx2 .box:nth-child(2n), .flx2_R .box:nth-child(2n) {
  margin: 0 0 1% 1%;
}
@media only screen and (max-width: 640px) {
  .flx2, .flx2_R {
    flex-direction: column;
  }
  .flx2 .box, .flx2_R .box {
    width: 100%;
  }
  .flx2 .box:nth-child(2n+1), .flx2_R .box:nth-child(2n+1) {
    margin: 0 auto 15px auto;
  }
  .flx2 .box:nth-child(2n), .flx2_R .box:nth-child(2n) {
    margin: 0 auto;
  }
}
.flx2 img, .flx2_R img {
  width: 100% !important;
}

.flx2_R .box {
  width: 49%;
}
.flx2_R .box:nth-child(2n+1) {
  margin: 0 1% 2% 0;
}
.flx2_R .box:nth-child(2n) {
  margin: 0 0 2% 1%;
}
@media only screen and (max-width: 640px) {
  .flx2_R {
    flex-direction: column;
  }
  .flx2_R .box {
    width: 100%;
    margin: 0 auto 15px auto !important;
  }
  .flx2_R .box:last-child {
    margin: 0 auto;
  }
}

.flx2_sp {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
.flx2_sp .box {
  width: 49%;
}
.flx2_sp .box:nth-child(2n+1) {
  margin: 0 1% 0 0;
}
.flx2_sp .box:nth-child(2n) {
  margin: 0 0 0 1%;
}
.flx2_sp .box img {
  margin: 0 auto;
}

.flx3 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
@media only screen and (max-width: 835px) {
  .flx3 {
    justify-content: space-between;
  }
}
.flx3 .box {
  width: 32%;
  margin: 0 1%;
}
.flx3 .box:nth-child(3n+1) {
  margin: 0 1% 1% 0;
}
.flx3 .box:nth-child(3n+2) {
  margin: 0 1% 1% 1%;
}
.flx3 .box:nth-child(3n+3) {
  margin: 0 0 1% 1%;
}
.flx3 .box img {
  width: 100% !important;
}
.flx3 .box tr td {
  padding: 0 !important;
  border: 0 !important;
}
@media only screen and (max-width: 640px) {
  .flx3 {
    flex-direction: column;
  }
  .flx3 .box {
    width: 100%;
    margin: 0 auto !important;
  }
  .flx3 .box:not(:last-child) {
    margin-bottom: 15px !important;
  }
}

.flx3_r {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
@media only screen and (max-width: 835px) {
  .flx3_r {
    justify-content: space-between;
  }
}
.flx3_r .box {
  width: 32%;
  margin: 0 1%;
}
.flx3_r .box:nth-child(3n+1) {
  margin: 0 1% 2% 0;
}
.flx3_r .box:nth-child(3n+2) {
  margin: 0 1% 2% 1%;
}
.flx3_r .box:nth-child(3n+3) {
  margin: 0 0 2% 1%;
}
.flx3_r .box img {
  width: 100% !important;
}
.flx3_r .box tr td {
  padding: 0 !important;
  border: 0 !important;
}
@media only screen and (max-width: 640px) {
  .flx3_r {
    flex-direction: column;
  }
  .flx3_r .box {
    width: 100%;
    margin: 0 auto !important;
  }
  .flx3_r .box:not(:last-child) {
    margin-bottom: 15px !important;
  }
}

.flx4, .flx4_R {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: row;
}
.flx4 .box, .flx4_R .box {
  width: 23.5%;
  margin: 0 1%;
}
.flx4 .box:nth-child(4n+1), .flx4_R .box:nth-child(4n+1) {
  margin: 0 1% 2% 0;
}
.flx4 .box:nth-child(4n+4), .flx4_R .box:nth-child(4n+4) {
  margin: 0 0 2% 1%;
}
.flx4 .box img, .flx4_R .box img {
  width: 100% !important;
}
.flx4 .box tr td, .flx4_R .box tr td {
  padding: 0 !important;
  border: 0 !important;
}
@media only screen and (max-width: 835px) {
  .flx4 .box, .flx4_R .box {
    width: 49%;
  }
  .flx4 .box:nth-child(2n+1), .flx4_R .box:nth-child(2n+1) {
    margin: 0 1% 2% 0;
  }
  .flx4 .box:nth-child(2n), .flx4_R .box:nth-child(2n) {
    margin: 0 0 2% 1%;
  }
}
@media screen and (max-width: 350px) {
  .flx4, .flx4_R {
    flex-direction: column;
  }
  .flx4 .box, .flx4_R .box {
    width: 100%;
    margin-bottom: 15px;
  }
  .flx4 .box:not(:last-child), .flx4_R .box:not(:last-child) {
    margin-bottom: 15px;
  }
}

.flx4_R .box {
  margin: 0 1% 2% 1%;
}
@media only screen and (max-width: 640px) {
  .flx4_R {
    flex-direction: column;
  }
  .flx4_R .box {
    width: 100%;
    margin-bottom: 15px;
  }
  .flx4_R .box:not(:last-child) {
    margin-bottom: 15px;
  }
}

.flx5 {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: row;
}
.flx5 .box {
  width: 18.4%;
  margin: 0 1%;
}
.flx5 .box:nth-child(5n+1) {
  margin: 0 1% 1% 0;
}
.flx5 .box:nth-child(5n+5) {
  margin: 0 0 1% 1%;
}
.flx5 .box tr td {
  padding: 0 !important;
  border: 0 !important;
}
.flx5 .box img {
  width: 100% !important;
}
@media only screen and (max-width: 835px) {
  .flx5 .box {
    width: 49%;
  }
  .flx5 .box:nth-child(2n+1) {
    margin: 0 1% 2% 0;
  }
  .flx5 .box:nth-child(2n) {
    margin: 0 0 2% 1%;
  }
}
@media screen and (max-width: 350px) {
  .flx5 {
    flex-direction: column;
  }
  .flx5 .box {
    width: 100%;
    margin-bottom: 15px;
  }
  .flx5 .box:not(:last-child) {
    margin-bottom: 15px;
  }
}

.top_insta .sns_list {
  flex-direction: inherit !important;
  border: none !important;
  flex-wrap: wrap;
}
.top_insta .sns_list .sns_text {
  width: 100%;
}
.top_insta .sns_list .sns_text ul {
  display: none;
}
.top_insta .sns_list .sns_text .sns_date {
  color: #4e3209;
  font-family: "futura-pt", sans-serif;
  font-size: 1.2em;
}
.top_insta .sns_list .sns_text .caption {
  font-size: 0.875rem;
  line-height: 1.5em;
}
.top_insta .sns_list .sns_photo {
  width: 100% !important;
  padding: 0 !important;
}
.top_insta .sns_list .sns_photo img {
  width: 100%;
}
.top_insta .sns_list > div {
  border: none !important;
  display: block;
  flex-direction: column;
  width: 23%;
  margin: 1%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .top_insta .sns_list > div {
    width: 48%;
  }
}
@media only screen and (max-width: 640px) {
  .top_insta .sns_list > div {
    width: 48%;
  }
}
@media screen and (max-width: 350px) {
  .top_insta .sns_list > div {
    width: 100%;
    margin: 0 auto 15px auto;
  }
}

.top_insta_6 {
  width: 100%;
  margin: 0 auto;
}
.top_insta_6 .sns_list {
  flex-direction: inherit !important;
  border: none !important;
  flex-wrap: wrap;
}
.top_insta_6 .sns_list .sns_text {
  display: none;
}
.top_insta_6 .sns_list .sns_photo {
  width: 100% !important;
  height: 100%;
  padding: 0 !important;
}
.top_insta_6 .sns_list .sns_photo img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}
.top_insta_6 .sns_list > div {
  border: none !important;
  width: 16.666%;
  margin: 0;
}
@media only screen and (max-width: 1000px) {
  .top_insta_6 .sns_list > div {
    width: 25%;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .top_insta_6 .sns_list > div {
    width: 33.333%;
  }
}
@media only screen and (max-width: 640px) {
  .top_insta_6 .sns_list > div {
    width: 50%;
  }
}
@media screen and (max-width: 350px) {
  .top_insta_6 .sns_list > div {
    width: 100%;
  }
}

.top_insta_4 {
  width: 100%;
  margin: 0 auto;
}
.top_insta_4 .sns_list {
  flex-direction: inherit !important;
  border: none !important;
  flex-wrap: wrap;
}
.top_insta_4 .sns_list .sns_text {
  display: none;
}
.top_insta_4 .sns_list .sns_photo {
  width: 100% !important;
  height: 100%;
  padding: 0 !important;
}
.top_insta_4 .sns_list .sns_photo img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}
.top_insta_4 .sns_list > div {
  border: none !important;
  width: 25%;
  margin: 0;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .top_insta_4 .sns_list > div {
    width: 33.333%;
  }
}
@media only screen and (max-width: 640px) {
  .top_insta_4 .sns_list > div {
    width: 50%;
  }
}
@media screen and (max-width: 350px) {
  .top_insta_4 .sns_list > div {
    width: 100%;
  }
}

.top_insta_3 {
  width: 100%;
  margin: 0 auto;
}
.top_insta_3 .sns_list {
  flex-direction: inherit !important;
  border: none !important;
  flex-wrap: wrap;
}
.top_insta_3 .sns_list .sns_text {
  display: none;
}
.top_insta_3 .sns_list .sns_photo {
  width: 100% !important;
  height: 100%;
  padding: 0 !important;
}
.top_insta_3 .sns_list .sns_photo img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}
.top_insta_3 .sns_list > div {
  border: none !important;
  width: 32.333%;
  margin: 0.5%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .top_insta_3 .sns_list > div {
    width: 49%;
  }
}
@media only screen and (max-width: 640px) {
  .top_insta_3 .sns_list > div {
    width: 49%;
  }
}
@media screen and (max-width: 350px) {
  .top_insta_3 .sns_list > div {
    width: 99%;
  }
}

.local_insta .sns_list {
  border: none;
}
.local_insta .sns_list .sns_text {
  font-size: 1.1em;
}
.local_insta .sns_list .sns_text .sns_date {
  background: rgba(204, 150, 4, 0.2);
  color: #14ac9a;
  font-weight: 500;
  padding: 5px;
}
.local_insta .sns_list .sns_text .caption {
  margin: 10px 0;
}

.top_insta_5 .sns_list {
  flex-direction: inherit !important;
  border: none !important;
  flex-wrap: wrap;
}
.top_insta_5 .sns_list .sns_text {
  display: none;
}
.top_insta_5 .sns_list .sns_photo {
  width: 100% !important;
  height: 100%;
  padding: 0 !important;
}
.top_insta_5 .sns_list .sns_photo img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}
.top_insta_5 .sns_list > div {
  border: none !important;
  display: block;
  flex-direction: column;
  width: 18%;
  margin: 1%;
}
.top_insta_5 .sns_list > div:nth-child(2), .top_insta_5 .sns_list > div:nth-child(4) {
  margin-top: 60px;
}
@media only screen and (max-width: 1300px) {
  .top_insta_5 .sns_list > div:nth-child(2), .top_insta_5 .sns_list > div:nth-child(4) {
    margin-top: 35px;
  }
}
.top_insta_5 .sns_list > div:nth-child(3) {
  margin-top: 100px;
}
@media only screen and (max-width: 1300px) {
  .top_insta_5 .sns_list > div:nth-child(3) {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 835px) {
  .top_insta_5 .sns_list > div:nth-child(3) {
    margin-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  .top_insta_5 .sns_list > div {
    width: 48%;
  }
}
@media screen and (max-width: 350px) {
  .top_insta_5 .sns_list > div {
    width: 100%;
    margin: 0 auto 15px auto;
  }
}

.top_insta_t_5 .sns_list {
  flex-direction: inherit !important;
  border: none !important;
  flex-wrap: wrap;
}
.top_insta_t_5 .sns_list .sns_text {
  width: 100%;
}
.top_insta_t_5 .sns_list .sns_text ul {
  display: none;
}
.top_insta_t_5 .sns_list .sns_text .sns_date {
  color: #fff;
  font-family: "futura-pt", sans-serif;
  font-size: 1.2em;
}
.top_insta_t_5 .sns_list .sns_text .caption {
  color: #1b1b1b;
  line-height: 1.5em;
}
.top_insta_t_5 .sns_list .sns_photo {
  width: 100% !important;
  padding: 0 !important;
}
.top_insta_t_5 .sns_list .sns_photo img {
  width: 100%;
}
.top_insta_t_5 .sns_list > div {
  border: none !important;
  display: block;
  flex-direction: column;
  width: 18%;
  margin: 1%;
}
.top_insta_t_5 .sns_list > div:nth-child(2), .top_insta_t_5 .sns_list > div:nth-child(4) {
  margin-top: 60px;
}
@media only screen and (max-width: 1300px) {
  .top_insta_t_5 .sns_list > div:nth-child(2), .top_insta_t_5 .sns_list > div:nth-child(4) {
    margin-top: 35px;
  }
}
.top_insta_t_5 .sns_list > div:nth-child(3) {
  margin-top: 100px;
}
@media only screen and (max-width: 1300px) {
  .top_insta_t_5 .sns_list > div:nth-child(3) {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 835px) {
  .top_insta_t_5 .sns_list > div:nth-child(3) {
    margin-top: 0;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .top_insta_t_5 .sns_list > div {
    width: 48%;
  }
}
@media only screen and (max-width: 640px) {
  .top_insta_t_5 .sns_list > div {
    width: 48%;
  }
}
@media screen and (max-width: 350px) {
  .top_insta_t_5 .sns_list > div {
    width: 100%;
    margin: 0 auto 15px auto;
  }
}

section div.form_wrap dl dt {
  background: transration !important;
}

.panbtm {
  margin-top: 80px !important;
}
@media only screen and (max-width: 1500px) {
  .panbtm {
    margin-top: 60px !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .panbtm {
    margin-top: 40px !important;
  }
}
@media only screen and (max-width: 640px) {
  .panbtm {
    margin-top: 30px !important;
  }
}

.sp100 {
  margin: 100px auto;
}
@media only screen and (max-width: 1500px) {
  .sp100 {
    margin: 70px auto;
  }
}
@media only screen and (max-width: 835px) {
  .sp100 {
    margin: 40px auto;
  }
}

.sp80 {
  margin: 80px auto;
}
@media only screen and (max-width: 1200px) {
  .sp80 {
    margin: 60px auto;
  }
}
@media only screen and (max-width: 1000px) {
  .sp80 {
    margin: 50px auto;
  }
}
@media only screen and (max-width: 835px) {
  .sp80 {
    margin: 40px auto;
  }
}

.sp70 {
  margin: 70px auto;
}
@media only screen and (max-width: 1200px) {
  .sp70 {
    margin: 50px auto;
  }
}
@media only screen and (max-width: 1000px) {
  .sp70 {
    margin: 40px auto;
  }
}
@media only screen and (max-width: 835px) {
  .sp70 {
    margin: 40px auto;
  }
}

.sp30 {
  margin: 30px auto;
}
@media only screen and (max-width: 1200px) {
  .sp30 {
    margin: 30px auto;
  }
}
@media only screen and (max-width: 1000px) {
  .sp30 {
    margin: 20px auto;
  }
}
@media only screen and (max-width: 835px) {
  .sp30 {
    margin: 15px auto;
  }
}

.tp20 {
  margin: 20px auto 0 auto;
}
@media only screen and (max-width: 835px) {
  .tp20 {
    margin: 15px auto 0 auto;
  }
}

.tp30 {
  margin: 30px auto 0 auto;
}
@media only screen and (max-width: 1500px) {
  .tp30 {
    margin: 30px auto 0 auto;
  }
}
@media only screen and (max-width: 1200px) {
  .tp30 {
    margin: 20px auto 0 auto;
  }
}
@media only screen and (max-width: 835px) {
  .tp30 {
    margin: 15px auto 0 auto;
  }
}

.tp40 {
  margin: 40px auto 0 auto;
}
@media only screen and (max-width: 835px) {
  .tp40 {
    margin: 40px auto 0 auto;
  }
}

.tp50 {
  margin: 50px auto 0 auto;
}
@media only screen and (max-width: 835px) {
  .tp50 {
    margin: 40px auto 0 auto;
  }
}

.tp70 {
  margin: 70px auto 0 auto;
}
@media only screen and (max-width: 1000px) {
  .tp70 {
    margin: 50px auto 0 auto;
  }
}
@media only screen and (max-width: 835px) {
  .tp70 {
    margin: 40px auto 0 auto;
  }
}

.tp80 {
  margin: 80px auto 0 auto;
}
@media only screen and (max-width: 1000px) {
  .tp80 {
    margin: 50px auto 0 auto;
  }
}
@media only screen and (max-width: 835px) {
  .tp80 {
    margin: 40px auto 0 auto;
  }
}

.tp100 {
  margin: 100px auto 0 auto;
}
@media only screen and (max-width: 1500px) {
  .tp100 {
    margin: 70px auto 0 auto;
  }
}
@media only screen and (max-width: 835px) {
  .tp100 {
    margin: 40px auto 0 auto;
  }
}

.bt30 {
  margin: 0 auto 30px auto;
}
@media only screen and (max-width: 1500px) {
  .bt30 {
    margin: 0 auto 30px auto;
  }
}
@media only screen and (max-width: 1200px) {
  .bt30 {
    margin: 0px auto 20px auto;
  }
}
@media only screen and (max-width: 835px) {
  .bt30 {
    margin: 0 auto 15px auto;
  }
}

.bt40 {
  margin: 0 auto 40px auto;
}
@media only screen and (max-width: 1500px) {
  .bt40 {
    margin: 0 auto 30px auto;
  }
}
@media only screen and (max-width: 1200px) {
  .bt40 {
    margin: 0px auto 20px auto;
  }
}
@media only screen and (max-width: 835px) {
  .bt40 {
    margin: 0 auto 15px auto;
  }
}

.bt50 {
  margin: 0 auto 50px auto;
}
@media only screen and (max-width: 1500px) {
  .bt50 {
    margin: 0 auto 40px auto;
  }
}
@media only screen and (max-width: 1200px) {
  .bt50 {
    margin: 0px auto 20px auto;
  }
}
@media only screen and (max-width: 835px) {
  .bt50 {
    margin: 0 auto 15px auto;
  }
}

.bt20 {
  margin: 0 auto 20px auto;
}
@media only screen and (max-width: 1200px) {
  .bt20 {
    margin: 0px auto 15px auto;
  }
}
@media only screen and (max-width: 835px) {
  .bt20 {
    margin: 0 auto 15px auto;
  }
}

.bt15 {
  margin: 0 auto 15px auto;
}
@media only screen and (max-width: 1200px) {
  .bt15 {
    margin: 0px auto 15px auto;
  }
}
@media only screen and (max-width: 835px) {
  .bt15 {
    margin: 0 auto 10px auto;
  }
}

.bt0 {
  margin-bottom: 0;
}

.sp80 {
  margin: 80px auto;
}
@media only screen and (max-width: 1500px) {
  .sp80 {
    margin: 60px auto;
  }
}
@media only screen and (max-width: 835px) {
  .sp80 {
    margin: 30px auto;
  }
}

.sp70 {
  margin: 70px auto;
}
@media only screen and (max-width: 1500px) {
  .sp70 {
    margin: 50px auto;
  }
}
@media only screen and (max-width: 835px) {
  .sp70 {
    margin: 30px auto;
  }
}

.ctsp {
  margin: 40px auto;
}
@media only screen and (max-width: 640px) {
  .ctsp {
    margin: 30px auto;
  }
}

.ctsp2 {
  margin: 30px auto;
}
@media only screen and (max-width: 640px) {
  .ctsp2 {
    margin: 20px auto;
  }
}

.bssp {
  margin: 20px auto;
}
@media only screen and (max-width: 640px) {
  .bssp {
    margin: 15px auto;
  }
}

.spsp {
  margin: 0 auto 20px auto !important;
}
@media only screen and (max-width: 835px) {
  .spsp {
    margin: 0 auto 15px auto !important;
  }
}

a.tel-link {
  color: #565656;
  opacity: 1;
}

@media only screen and (max-width: 835px) {
  .brdnt {
    text-align: left !important;
  }
  .brdnt br {
    display: none;
  }
  .brdnt div {
    text-align: left !important;
  }
  .brdnt div br {
    display: none;
  }
}

@media only screen and (max-width: 640px) {
  .brdn {
    text-align: left !important;
  }
  .brdn br {
    display: none;
  }
  .brdn div {
    text-align: left !important;
  }
  .brdn div br {
    display: none;
  }
}

@media screen and (min-width: 836px) {
  .brdnpc br {
    display: none;
  }
}

@media screen and (min-width: 641px) {
  .brdnpct br {
    display: none;
  }
}

@media only screen and (max-width: 640px) {
  .CLS table tr {
    display: flex;
    flex-direction: column-reverse;
  }
}

@media only screen and (max-width: 640px) {
  .tblscr table {
    table-layout: auto !important;
  }
}

.company_DL dl {
  line-height: 1.8em !important;
}
.company_DL dt {
  align-items: center !important;
  background: rgba(180, 158, 113, 0.7) !important;
  font-weight: 500;
}
@media only screen and (max-width: 640px) {
  .company_DL dl {
    display: block !important;
  }
  .company_DL dl dt {
    width: 100% !important;
    border-right: 1px solid #ccc !important;
  }
  .company_DL dl dd {
    width: 100% !important;
  }
}

.company_DL2 {
  background: none !important;
}
.company_DL2 dl dt {
  align-items: center !important;
  background: none !important;
  border-bottom: 2px solid #4e3209 !important;
}
.company_DL2 dl dd {
  background: none !important;
  border-bottom: 2px solid rgba(204, 204, 204, 0.8) !important;
}
.company_DL2 dl:last-of-type dt {
  border-bottom: 2px solid #4e3209 !important;
}
@media only screen and (max-width: 640px) {
  .company_DL2 dl {
    display: block !important;
  }
  .company_DL2 dl dt {
    width: 100% !important;
    border-right: 2px solid #4e3209 !important;
    border-left: 2px solid #4e3209 !important;
    background: rgba(78, 50, 9, 0.2) !important;
  }
  .company_DL2 dl dd {
    width: 100% !important;
    border-bottom: 2px solid #ccc !important;
    border-left: 2px solid #ccc !important;
    border-right: 2px solid #ccc !important;
  }
}

.form_wrap dl dd > div {
  display: block !important;
}

@media only screen and (max-width: 835px) {
  .fancybox-toolbar {
    top: 50px !important;
  }
}

.pan1 div ol {
  margin: 20px auto 0 auto;
  text-align: right;
  display: flex;
  justify-content: flex-end;
}
@media only screen and (max-width: 835px) {
  .pan1 div ol {
    display: none;
  }
}

.pan2 div ol {
  color: #1b1b1b;
}
.pan2 div ol a {
  color: #1b1b1b;
}

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

.error2 {
  margin-top: 100px;
}
.error2 h2 {
  font-size: 40px;
  font-weight: bold;
}
.error2 a {
  border: 1px solid #ccc;
  padding: 3px 20px;
  display: inline-block;
}
@media only screen and (max-width: 835px) {
  .error2 {
    margin-top: 50px;
  }
}

.img100 img {
  display: block !important;
  width: 100% !important;
}

section form h2.mail.title {
  display: none;
}

.step_title {
  margin: 40px auto 20px auto;
}
.step_title h2, .step_title h3, .step_title h4 {
  font-size: 1.25rem;
  color: #4e3209;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  border-bottom: 1px dashed #aaa;
  padding-bottom: 5px;
}
.step_title h2 span, .step_title h3 span, .step_title h4 span {
  font-size: 1.5rem;
  background: rgba(20, 172, 154, 0.9);
  border-radius: 5px;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  color: #fff;
  font-weight: 500;
  padding: 0 5px;
  margin-right: 5px;
}
@media (max-width: 1200px) {
  .step_title h2 span, .step_title h3 span, .step_title h4 span {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 835px) {
  .step_title h2, .step_title h3, .step_title h4 {
    font-size: 1.125rem;
  }
}

.step-title2 h2, .step-title3 h2 {
  font-size: 1.5rem;
  font-weight: 500;
  color: #4e3209;
  position: relative;
  border-top: solid 2px rgba(20, 172, 154, 0.3);
  border-bottom: solid 2px rgba(20, 172, 154, 0.3);
  background: rgba(20, 172, 154, 0.1);
  line-height: 1.4;
  padding: 0.2em;
}
@media (max-width: 1200px) {
  .step-title2 h2, .step-title3 h2 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.step-title2 h2:after, .step-title3 h2:after {
  /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 pro", "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  content: "\f0a6  Point";
  font-size: 0.875rem;
  background: #14ac9a;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 3px 3px 0 0;
  padding: 5px 10px 3px;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 835px) {
  .step-title2 h2 h2, .step-title3 h2 h2 {
    font-size: 1.0625rem;
  }
}
.step-title2 h3, .step-title3 h3 {
  font-size: 1.5rem;
  background: #eee;
  color: #14ac9a;
  position: relative;
  border-top: solid 2px #cc9604;
  border-bottom: solid 2px #cc9604;
  line-height: 1.4;
  padding: 0.2em;
}
@media (max-width: 1200px) {
  .step-title2 h3, .step-title3 h3 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.step-title2 h3:after, .step-title3 h3:after {
  /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 pro", Montserrat, sans-serif;
  content: "\f5ad  point";
  background: #cc9604;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 3px 3px 0 0;
  padding: 5px 10px 3px;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em;
}

.step-title3 h3:after {
  content: "\f4b6  voice";
}

.step_arrow {
  margin-top: 60px;
  position: relative;
}
.step_arrow:after {
  content: "";
  width: 48px;
  height: 48px;
  background: url(../images/common/arrow_hover.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: -1;
  display: block;
  visibility: inherit;
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}
@media only screen and (max-width: 835px) {
  .step_arrow:after {
    width: 30px;
    height: 30px;
    top: -40px;
  }
}
@media only screen and (max-width: 835px) {
  .step_arrow {
    margin-top: 50px;
  }
}

.flow_arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 60px 0 60px;
  border-color: #14ac9a transparent transparent transparent;
  margin: 20px auto;
}
@media only screen and (max-width: 835px) {
  .flow_arrow {
    margin: 10px auto 15px auto;
  }
}

.staff-title h2, .staff-title h3 {
  font-size: 1.25rem;
  color: #1b1b1b;
  position: relative;
  border-top: solid 2px rgba(204, 150, 4, 0.3);
  border-bottom: solid 2px rgba(204, 150, 4, 0.3);
  background: rgba(204, 150, 4, 0.1);
  line-height: 1.4;
  padding: 0.2em;
}
.staff-title h2:after, .staff-title h3:after {
  /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 pro";
  content: "\f7f3  STAFF";
  background: #cc9604;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 3px 3px 0 0;
  padding: 5px 10px 3px;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 835px) {
  .staff-title h2, .staff-title h3 {
    font-size: 1.125rem;
  }
}

.list01 dl, .list02 dl {
  border-bottom: 1px dashed #b49e71;
  font-size: 1.1em;
}
.list01 dl dt, .list02 dl dt {
  border: none !important;
  background: none !important;
  font-weight: 500;
}
.list01 dl dd, .list02 dl dd {
  border: none !important;
  background: none !important;
  text-align: right !important;
  min-width: 100px;
  font-weight: 600;
  color: #14ac9a;
  font-family: "futura-pt", sans-serif;
}
@media only screen and (max-width: 640px) {
  .list01 dl, .list02 dl {
    display: block !important;
    font-size: 1.1em;
  }
  .list01 dl dd, .list02 dl dd, .list01 dl dt, .list02 dl dt {
    width: 100% !important;
  }
  .list01 dl dt, .list02 dl dt {
    padding: 5px !important;
  }
  .list01 dl dd, .list02 dl dd {
    padding: 0 !important;
  }
}

.list_a dl {
  border-bottom: 1px dashed #aaa;
  padding-bottom: 5px;
  font-size: 1.2em;
}
.list_a dl:not(:last-child) {
  margin-bottom: 10px;
}
.list_a dl dt {
  border: none !important;
  background: #14ac9a !important;
  align-items: center !important;
  color: #fff;
  border-radius: 10px;
  min-width: 230px;
}
.list_a dl dd {
  border: none !important;
  background: none !important;
  text-align: right !important;
  min-width: 180px;
  color: #4e3209;
  font-weight: 500;
}
@media only screen and (max-width: 640px) {
  .list_a dl {
    display: block !important;
    font-size: 1.1em;
  }
  .list_a dl dd, .list_a dl dt {
    width: 100% !important;
  }
  .list_a dl dd {
    margin-top: 5px;
    text-align: center !important;
  }
}

.list02 dl dd {
  min-width: 300px;
}
@media only screen and (max-width: 640px) {
  .list02 dl {
    display: block !important;
  }
  .list02 dl dd, .list02 dl dt {
    width: 100% !important;
  }
}

.list03 dl {
  border-bottom: 1px dashed #565656;
}
.list03 dl dt {
  border: none !important;
  background: none !important;
  color: #8a4609;
  font-weight: bold;
  min-width: 280px;
}
.list03 dl dd {
  border: none !important;
  background: none !important;
  text-align: right !important;
}
@media only screen and (max-width: 640px) {
  .list03 dl {
    display: block !important;
  }
  .list03 dl dd, .list03 dl dt {
    width: 100% !important;
    text-align: left !important;
  }
}

.list04 dl {
  border-bottom: 1px dashed #bbb;
}
.list04 dl dt {
  border: none !important;
  background: none !important;
  font-weight: 500;
}
.list04 dl dd {
  border: none !important;
  background: none !important;
  text-align: right !important;
  min-width: 180px;
  font-weight: 600;
  color: #cc9604;
  font-family: "futura-pt", sans-serif;
}
@media only screen and (max-width: 640px) {
  .list04 dl {
    display: block !important;
    font-size: 1.1em;
  }
  .list04 dl dd, .list04 dl dt {
    width: 100% !important;
  }
  .list04 dl dt {
    padding: 5px !important;
  }
  .list04 dl dd {
    padding: 0 !important;
  }
}

.anc_btn ul {
  display: flex;
  flex-wrap: wrap;
}
.anc_btn ul li {
  width: 32%;
  margin: 1%;
}
.anc_btn ul li:nth-child(3n+1) {
  margin-left: 0;
}
.anc_btn ul li:nth-child(3n+3) {
  margin-right: 0;
}
.anc_btn ul li a {
  text-align: center;
  position: relative;
  z-index: 2;
  border: 1px solid #7f500c;
  font-weight: 500;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.125rem;
  transition: all 0.5s;
  display: block;
  margin: 0 auto;
  width: 100%;
  padding: 10px;
  color: #14ac9a;
  border-radius: 15px;
}
.anc_btn ul li a:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f054"; /*アイコンのユニコード*/
  font-size: 0.875rem;
  position: absolute; /*絶対位置*/
  right: 10px; /*アイコンの位置*/
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
}
.anc_btn ul li a:hover {
  opacity: 1 !important;
  background-color: #7f500c;
  color: #fff;
}
.anc_btn ul li a:hover:after {
  transform: translate(3px, 0);
}
@media only screen and (max-width: 835px) {
  .anc_btn ul li a {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 835px) {
  .anc_btn ul li {
    width: 49%;
  }
  .anc_btn ul li:nth-child(2n+1) {
    margin: 0 1% 1% 0;
  }
  .anc_btn ul li:nth-child(2n) {
    margin: 0 0 1% 1%;
  }
  .anc_btn ul li a {
    padding: 10px;
  }
}
@media screen and (max-width: 400px) {
  .anc_btn ul {
    flex-direction: column;
  }
  .anc_btn ul li {
    width: 100%;
    margin: 0 auto 15px auto !important;
  }
}

.anc_btn2 ul {
  display: flex;
  flex-wrap: wrap;
}
.anc_btn2 ul li {
  width: 31.333%;
  margin: 1%;
  position: relative;
  z-index: 2;
  background: #14ac9a;
  border-radius: 3px;
  padding: 10px;
  color: #fff;
  text-align: center !important;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
@media only screen and (max-width: 1000px) {
  .anc_btn2 ul li {
    width: 31.333%;
  }
}
@media only screen and (max-width: 835px) {
  .anc_btn2 ul li {
    width: 48%;
  }
  .anc_btn2 ul li a {
    padding: 10px;
  }
}
@media screen and (max-width: 350px) {
  .anc_btn2 ul {
    flex-direction: column;
  }
  .anc_btn2 ul li {
    width: 100%;
    margin: 0 auto 15px;
  }
}

.qa_FLX .box {
  width: 100%;
  background: #fff;
  padding: 10px;
}
.qa_FLX .box:first-child {
  margin-bottom: 10px;
}
.qa_FLX .box:first-child > div {
  display: flex;
}
.qa_FLX .box:first-child > div .icon {
  background: rgba(204, 150, 4, 0.8);
  width: 35px;
  min-width: 35px;
  height: 35px;
  line-height: 35px;
  margin-right: 10px;
  color: #fff;
  display: block;
  font-size: 1.5rem;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  text-align: center;
}
@media (max-width: 1200px) {
  .qa_FLX .box:first-child > div .icon {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.qa_FLX .box:first-child > div .txt {
  font-weight: 500;
}
.qa_FLX .box:nth-child(2) > div {
  display: flex;
}
.qa_FLX .box:nth-child(2) > div .icon {
  background: rgba(20, 172, 154, 0.8);
  width: 35px;
  min-width: 35px;
  height: 35px;
  height: 35px;
  line-height: 35px;
  margin-right: 10px;
  color: #fff;
  display: block;
  font-size: 1.5rem;
  text-align: center;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
}
@media (max-width: 1200px) {
  .qa_FLX .box:nth-child(2) > div .icon {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 640px) {
  .qa_FLX .box {
    padding: 10px 0;
  }
  .qa_FLX .box:first-child, .qa_FLX .box:nth-child(2) {
    width: 100%;
  }
  .qa_FLX .box:first-child > div, .qa_FLX .box:nth-child(2) > div {
    flex-direction: column;
    width: 100%;
  }
  .qa_FLX .box:first-child > div .icon, .qa_FLX .box:nth-child(2) > div .icon {
    width: 100%;
  }
}
.qa_FLX:not(:last-child) {
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 15px;
}

.qaBtn {
  color: #cc9604;
  font-weight: bold;
  text-decoration: underline;
}

.qaOpen {
  display: none;
}
.qaOpen .ttl {
  color: #4e3209;
  font-weight: 600;
  font-size: 1rem;
}
.qaOpen .sub_ttl {
  background: #14ac9a;
  color: #fff;
  font-weight: 600;
  padding: 3px 10px;
}

.blog_wrap {
  padding: 50px;
  background-color: rgb(255, 252, 246);
  box-shadow: 0px 3px 6.65px 0.35px rgba(0, 0, 0, 0.15);
  margin-top: -50px;
}
@media only screen and (max-width: 835px) {
  .blog_wrap {
    padding: 30px 10px;
    margin-top: -30px;
  }
}

.top_blog {
  height: 250px;
  overflow-y: auto;
}
.top_blog .blog_photo {
  display: none;
}
.top_blog .blog_list {
  border: none;
}
.top_blog .blog_list .blog_text {
  width: 100%;
  display: flex;
  padding: 15px 10px;
}
.top_blog .blog_list .blog_text .blog_date {
  margin: 1%;
  font-size: 0.9375rem;
}
.top_blog .blog_list .blog_text h3 {
  order: 3;
  margin: 1%;
}
.top_blog .blog_list .blog_text h3 a span {
  color: #cc9604;
  font-size: 0.875rem;
}
@media only screen and (max-width: 640px) {
  .top_blog .blog_list .blog_text h3 {
    width: 100% !important;
  }
}
.top_blog .blog_list .blog_text ul {
  margin: 1%;
  order: 2;
}
.top_blog .blog_list .blog_text ul li a {
  min-width: 100px;
  padding: 3px 5px;
  margin-right: 0;
  color: #4e3209;
  text-align: center;
  font-size: 0.8125rem;
  background: rgba(20, 172, 154, 0.2);
}
.top_blog .blog_list .blog_text ul .blog_cate1 {
  background: rgba(204, 150, 4, 0.2);
}
.top_blog .blog_list .blog_text ul .blog_cate2 {
  background: rgba(127, 80, 12, 0.5);
}
.top_blog .blog_list .blog_text ul .blog_cate3 {
  background: rgba(180, 158, 113, 0.5);
}
.top_blog .blog_list .blog_text .detail {
  display: none;
}
.top_blog .blog_list .blog_text ul {
  display: block;
}
@media only screen and (max-width: 640px) {
  .top_blog .blog_list .blog_text {
    position: relative;
    flex-direction: column !important;
    padding: 10px;
  }
  .top_blog .blog_list .blog_text ul {
    position: absolute;
    left: 115px;
    top: 10px;
  }
}
@media only screen and (max-width: 640px) {
  .top_blog {
    height: 250px;
  }
}

.blog {
  max-width: 1200px;
  margin: 80px auto 0;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .blog {
    margin: 50px 10px 0 10px;
  }
}
@media only screen and (max-width: 640px) {
  .blog {
    margin: 30px 10px 0 10px;
  }
}
.blog .wrap {
  display: flex;
}
.blog .wrap aside {
  width: 28%;
  margin: 1%;
}
.blog .wrap aside nav {
  line-height: 2em;
}
.blog .wrap aside nav h3 {
  background: #cc9604 !important;
}
.blog .wrap aside nav ul li .blogside span {
  margin-left: 5px;
  display: block;
}
.blog .wrap aside nav > a {
  background: #7f500c !important;
}
.blog .wrap #contents {
  width: 68%;
  margin: 1%;
  padding: 0 !important;
  min-width: auto;
}
.blog .wrap #contents article .date {
  color: #14ac9a !important;
}
.blog .wrap #contents article .date {
  color: #14ac9a !important;
}
.blog .wrap #contents article h1, .blog .wrap #contents article h2 {
  background: rgba(20, 172, 154, 0.8);
  color: #fff !important;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 20px;
  padding: 0.5em 0.5em 0.3em;
  margin-bottom: 20px;
}
.blog .wrap #contents article .flex_images {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.blog .wrap #contents article .flex_images img {
  width: 48%;
  margin: 1%;
}
@media only screen and (max-width: 835px) {
  .blog .wrap {
    flex-direction: column-reverse;
  }
  .blog .wrap aside, .blog .wrap #contents {
    width: 100%;
    margin: 10px auto;
  }
  .blog .wrap aside {
    text-align: center !important;
  }
}
@media only screen and (max-width: 640px) {
  .blog .wrap #contents article {
    padding: 0;
  }
  .blog .wrap #contents article div {
    flex-direction: column;
  }
  .blog .wrap #contents article div img {
    width: 100%;
  }
}

.review_flx {
  display: flex;
  justify-content: space-between;
}
.review_flx .box_img {
  width: 18%;
  margin: 1%;
  flex-direction: column !important;
}
.review_flx .box_img > .box {
  width: 100%;
  margin-bottom: 10px;
}
.review_flx .box_txt {
  width: 78%;
  margin: 1%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .review_flx .box_img {
    width: 23%;
  }
  .review_flx .box_txt {
    width: 73%;
  }
}
@media only screen and (max-width: 640px) {
  .review_flx {
    flex-direction: column;
  }
  .review_flx .box_img {
    width: 100%;
    margin: 0 auto 15px auto !important;
    flex-direction: row !important;
  }
  .review_flx .box_img > .box {
    width: 60%;
    margin: 0 auto;
  }
  .review_flx .box_txt {
    width: 100%;
    margin: 0 auto !important;
  }
}

.voice_wrap {
  border: 1px solid #ccc;
  box-shadow: 0px 3px 7px 0px rgba(1, 0, 0, 0.2);
  padding: 60px 20px 20px 20px;
  position: relative;
}
.voice_wrap .prof {
  position: absolute;
  top: 5px;
  right: 5px;
  color: #14ac9a;
}
@media only screen and (max-width: 835px) {
  .voice_wrap {
    padding: 50px 10px 10px 10px;
  }
}

.voice_box, .voice_box2 {
  border: 1px solid #ccc;
  box-shadow: 0px 3px 7px 0px rgba(1, 0, 0, 0.2);
  padding: 50px 20px 20px 20px;
  position: relative;
}
.voice_box .prof, .voice_box2 .prof {
  position: absolute;
  top: 10px;
  right: 20px;
  color: #14ac9a;
}
@media only screen and (max-width: 835px) {
  .voice_box, .voice_box2 {
    padding: 50px 10px 10px 10px;
  }
  .voice_box .prof, .voice_box2 .prof {
    font-size: 0.9em;
    right: 10px;
  }
}

.voice_box2 {
  padding: 40px 20px 20px 20px;
}
@media only screen and (max-width: 835px) {
  .voice_box2 {
    padding: 30px 10px 10px 10px;
  }
}

.prod_flx .box {
  position: relative;
}
.prod_flx .box article > h3 {
  display: none;
}
.prod_flx .box article div {
  line-height: 1.7em;
}
.prod_flx .box article div h3 {
  margin: 5px 0;
  padding: 5px;
  background: rgba(153, 0, 18, 0.4);
  text-align: center;
  font-size: 1rem;
}
.prod_flx .box article div h3 .price {
  display: block;
  font-size: 0.875rem;
  color: rgba(86, 86, 86, 0.8);
}
@media only screen and (max-width: 640px) {
  .prod_flx .box article div h3 {
    font-size: 0.875rem;
    text-align: left;
    line-height: 1.5em;
  }
}
.prod_flx .box article div .anchor {
  position: absolute;
  top: 0;
}

.items {
  margin: 0 !important;
}
.items article {
  width: 23% !important;
  margin: 1% !important;
}
.items article .photo {
  width: 100% !important;
}
.items article .photo img {
  display: block;
  height: 100% !important;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.items article .name {
  color: #565656;
}
.items article .price {
  text-align: center;
}
.items article button {
  margin: 0 auto;
}
@media screen and (max-width: 1050px) {
  .items article {
    width: 31.333% !important;
    margin: 1% !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .items article {
    width: 31.333% !important;
    margin: 1% !important;
  }
}
@media only screen and (max-width: 640px) {
  .items article {
    width: 48% !important;
    margin: 1% !important;
  }
}
@media screen and (max-width: 350px) {
  .items article {
    width: 98% !important;
    margin: 1% !important;
  }
}

.items article {
  align-items: stretch !important;
}

@media only screen and (max-width: 835px) {
  #col_main .errorbg {
    padding: 0 !important;
  }
}

.btn a {
  display: block;
  max-width: 300px;
  background: #14ac9a;
  color: #fff;
  margin-top: 20px;
  padding: 15px 0;
  width: 100%;
  text-align: center;
  text-decoration: none;
}
@media only screen and (max-width: 640px) {
  .btn a {
    margin-right: auto;
    margin-left: auto;
  }
}

.flex1 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.flex1._top {
  align-items: flex-start;
}
.flex1._center {
  align-items: center;
}
.flex1:before {
  width: calc(100% / 1 - 1%);
  content: "";
  order: 1;
}
.flex1:before {
  width: calc(100% / 1 - 1%);
  content: "";
  order: 1;
}
.flex1:after {
  width: calc(100% / 1 - 1%);
  content: "";
  order: 2;
}
.flex1 .box {
  width: calc(100% / 1 - 1%);
  margin-bottom: 2%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  ._tabwidth1 .box {
    width: 100%;
  }
  ._tabwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._tabwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
@media only screen and (max-width: 640px) {
  ._spwidth1 .box {
    width: 100%;
  }
  ._spwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._spwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
.flex1 .box img {
  width: 100% !important;
}

.flex2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.flex2._top {
  align-items: flex-start;
}
.flex2._center {
  align-items: center;
}
.flex2:before {
  width: calc(100% / 2 - 1%);
  content: "";
  order: 1;
}
.flex2:before {
  width: calc(100% / 2 - 1%);
  content: "";
  order: 1;
}
.flex2:after {
  width: calc(100% / 2 - 1%);
  content: "";
  order: 2;
}
.flex2 .box {
  width: calc(100% / 2 - 1%);
  margin-bottom: 2%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  ._tabwidth1 .box {
    width: 100%;
  }
  ._tabwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._tabwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
@media only screen and (max-width: 640px) {
  ._spwidth1 .box {
    width: 100%;
  }
  ._spwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._spwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
.flex2 .box img {
  width: 100% !important;
}

.flex3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.flex3._top {
  align-items: flex-start;
}
.flex3._center {
  align-items: center;
}
.flex3:before {
  width: calc(100% / 3 - 1%);
  content: "";
  order: 1;
}
.flex3:before {
  width: calc(100% / 3 - 1%);
  content: "";
  order: 1;
}
.flex3:after {
  width: calc(100% / 3 - 1%);
  content: "";
  order: 2;
}
.flex3 .box {
  width: calc(100% / 3 - 1%);
  margin-bottom: 2%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  ._tabwidth1 .box {
    width: 100%;
  }
  ._tabwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._tabwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
@media only screen and (max-width: 640px) {
  ._spwidth1 .box {
    width: 100%;
  }
  ._spwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._spwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
.flex3 .box img {
  width: 100% !important;
}

.flex4 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.flex4._top {
  align-items: flex-start;
}
.flex4._center {
  align-items: center;
}
.flex4:before {
  width: calc(100% / 4 - 1%);
  content: "";
  order: 1;
}
.flex4:before {
  width: calc(100% / 4 - 1%);
  content: "";
  order: 1;
}
.flex4:after {
  width: calc(100% / 4 - 1%);
  content: "";
  order: 2;
}
.flex4 .box {
  width: calc(100% / 4 - 1%);
  margin-bottom: 2%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  ._tabwidth1 .box {
    width: 100%;
  }
  ._tabwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._tabwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
@media only screen and (max-width: 640px) {
  ._spwidth1 .box {
    width: 100%;
  }
  ._spwidth2 .box {
    width: calc(100% / 2 - 1%);
  }
  ._spwidth3 .box {
    width: calc(100% / 3 - 1%);
  }
}
.flex4 .box img {
  width: 100% !important;
}

.square._100 .square-inner:before {
  padding-top: 100%;
}
.square._75 .square-inner:before {
  padding-top: 75%;
}
.square._66 .square-inner:before {
  padding-top: 66%;
}
.square td .square-inner {
  display: block;
  position: relative;
}
.square td .square-inner:before {
  position: relative;
  z-index: 1;
  content: "";
  display: block;
  width: 100% !important;
}
.square td .square-inner img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  object-fit: cover;
  font-family: "object-fit:cover;";
  width: 100% !important;
  height: 100% !important;
}
.square > .square-inner {
  display: block;
  position: relative;
}
.square > .square-inner .itext {
  float: none !important;
  margin-right: 0 !important;
}
.square > .square-inner .itext img {
  float: none !important;
  margin-right: 0 !important;
}
.square > .square-inner:before {
  position: relative;
  z-index: 1;
  content: "";
  display: block;
  width: 100% !important;
}
.square > .square-inner img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  object-fit: cover;
  font-family: "object-fit:cover;";
  width: 100% !important;
  height: 100% !important;
}
.square > .box .itext {
  float: none !important;
  margin-right: 0 !important;
}
.square > .box .itext img {
  float: none !important;
  margin-right: 0 !important;
}
.square > .box .square-inner {
  display: block;
  position: relative;
}
.square > .box .square-inner:before {
  position: relative;
  z-index: 1;
  content: "";
  display: block;
  width: 100% !important;
}
.square > .box .square-inner img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  object-fit: cover;
  font-family: "object-fit:cover;";
  width: 100% !important;
  height: 100% !important;
}

.bg100 {
  margin-right: calc((100vw - 100%) / 2 * -1) !important;
  margin-left: calc((100vw - 100%) / 2 * -1) !important;
}

.flex2cl_01 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .flex2cl_01 {
    flex-direction: column-reverse;
  }
}
.flex2cl_01 .flxL {
  width: 57%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .flex2cl_01 .flxL {
    width: 100%;
  }
}
.flex2cl_01 .flxR {
  width: 40%;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .flex2cl_01 .flxR {
    width: 100%;
    margin-bottom: 20px;
  }
}
.flex2cl_01 .flxR .img {
  width: 100%;
}
.flex2cl_01 .flxR .img img {
  width: 100% !important;
}

.flex2cl_02 {
  border: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -4%;
  margin-bottom: 50px;
}
@media screen and (max-width: 1200px) {
  .flex2cl_02 {
    margin-left: -2.439%;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .flex2cl_02 {
    justify-content: space-between;
    margin-left: 0;
  }
}
.flex2cl_02 .box {
  position: relative;
  width: 46%;
  margin-left: 4%;
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .flex2cl_02 .box {
    width: 47.5609%;
    margin-left: 2.439%;
    display: block;
  }
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  .flex2cl_02 .box {
    width: 100%;
    margin-left: 0;
  }
}
.flex2cl_02 .box img {
  width: 100% !important;
}
.flex2cl_02 .box tr:nth-child(2) {
  font-size: 18px;
  font-weight: 700;
}
.flex2cl_02 .box tr td {
  padding: 0 !important;
  border: 0 !important;
}

.flex3cl {
  border: 0;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -2.4390243902%;
}
@media screen and (max-width: 1200px) {
  .flex3cl {
    margin-left: -2.439%;
  }
}
@media only screen and (max-width: 640px) {
  .flex3cl {
    justify-content: space-between;
    margin-left: 0;
  }
}
.flex3cl .box {
  position: relative;
  width: 30.8943089431%;
  margin-left: 2.4390243902%;
  margin-bottom: 30px;
}
@media screen and (max-width: 1200px) {
  .flex3cl .box {
    width: 47.5609%;
    margin-left: 2.439%;
    display: block;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 640px) {
  .flex3cl .box {
    width: 100%;
    margin-left: 0;
    margin-bottom: 20px;
  }
}
.flex3cl .box img {
  width: 100% !important;
}
.flex3cl .box tr:nth-child(2) {
  font-size: 18px;
  font-weight: 700;
}
.flex3cl .box tr td {
  padding: 0 !important;
  border: 0 !important;
}

.flex4cl {
  border: 0;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: row;
  margin-left: -3.2258064516%;
}
@media screen and (max-width: 1200px) {
  .flex4cl {
    margin-left: -2.439%;
  }
}
@media only screen and (max-width: 640px) {
  .flex4cl {
    justify-content: space-between;
    margin-left: 0;
  }
}
.flex4cl .box {
  position: relative;
  width: 21.7741935484%;
  margin-left: 3.2258064516%;
  margin-bottom: 30px;
}
@media screen and (max-width: 1200px) {
  .flex4cl .box {
    width: 47.5609%;
    margin-left: 2.439%;
    display: block;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 640px) {
  .flex4cl .box {
    width: 100%;
    margin-left: 0;
    margin-bottom: 20px;
  }
}
.flex4cl .box img {
  width: 100% !important;
}
.flex4cl .box tr:nth-child(2) {
  font-size: 18px;
  font-weight: 700;
}
.flex4cl .box tr td {
  padding: 0 !important;
  border: 0 !important;
}

.slide-bottom {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}

.slide-bottom.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

@keyframes slide-top {
  0% {
    opacity: 0;
    transform: translate(0, 50px);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
.slide-top {
  animation-name: slide-top;
  animation-duration: 1s;
}

.slide-top2 {
  opacity: 0.4;
  transform: translate(0, -50px);
  transition: all 1000ms;
}

.slide-top2.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.slide-right {
  opacity: 0;
  transform: translate(100px, 0px);
  transition: all 2500ms;
}

.slide-right.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.slide-left {
  opacity: 0;
  transform: translate(-100px, 0px);
  transition: all 2500ms;
}

.slide-left.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.slide-left2 {
  opacity: 0;
  transform: translate(-100px, 0px);
  transition: all 1000ms;
}

.slide-left2.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

.img {
  position: relative;
}
.img img {
  width: 100% !important;
}
.img:before {
  transition: all 1.5s ease 0.5s;
  content: "";
  background: #14ac9a;
  width: 100%;
  position: absolute;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
  z-index: 1;
}
.img.aaaa:before {
  overflow: hidden;
  width: 0;
}

.sns #media {
  margin: 70px auto 0 auto;
}
@media only screen and (max-width: 835px) {
  .sns #media {
    margin: 30px auto 0 auto;
  }
}
.sns #media .row {
  max-width: 1000px;
  margin: 0 auto;
  width: 95%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
.sns #media .row .box {
  width: 32%;
  margin: 0 1%;
}
.sns #media .row .box:nth-child(3n+1) {
  margin: 0 1% 2% 0;
}
.sns #media .row .box:nth-child(3n+2) {
  margin: 0 1% 2% 1%;
}
.sns #media .row .box:nth-child(3n+3) {
  margin: 0 0 2% 1%;
}
.sns #media .row .box h3, .sns #media .row .box p {
  display: none;
}
@media screen and (max-width: 350px) {
  .sns #media .row {
    flex-direction: column;
  }
  .sns #media .row .box {
    width: 100%;
    margin: 0 auto !important;
  }
  .sns #media .row .box:not(:last-child) {
    margin-bottom: 15px !important;
  }
}
.sns #more a {
  margin: 0 auto;
  display: block;
  width: 100%;
  max-width: 350px;
  background: #fff;
  padding: 15px;
  color: #14ac9a;
  font-family: "Chromate", "Suez One", "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  font-size: 1.75rem;
  border: 3px solid #14ac9a;
  position: relative;
}
@media (max-width: 1200px) {
  .sns #more a {
    font-size: calc(1.3rem + 0.6vw);
  }
}
.sns #more a:before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border: 1px dotted rgba(20, 172, 154, 0.5);
  margin: 5px;
}
.sns #more a:hover {
  transition: 0.5s;
}

div.items > article a {
  color: #111;
  text-decoration: none !important;
  font-size: 16px;
}

div.under ul li a {
  font-weight: 400;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "a-otf-ryumin-pr6n", serif;
  opacity: 1;
  border: 1px solid #333;
  color: #333 !important;
  padding: 10px;
}
div.under ul li a:hover {
  border: 1px solid #b0ddd9;
  background: #b0ddd9;
  color: #fff !important;
}

div.select > select {
  height: 100%;
}

div.search form input {
  padding: 10px 37px 10px 5px;
}

div.order ul li a {
  color: #111;
}

div.items > article p.price {
  color: red;
}

div.crumb {
  display: none;
}

div.item_view div.item_option {
  width: 100% !important;
}

div.item_option dl, button.addcart {
  width: 50% !important;
}
@media screen and (min-width: 641px) and (max-width: 835px) {
  div.item_option dl, button.addcart {
    margin: 0 auto;
  }
}

@media screen and (min-width: 641px) and (max-width: 835px) {
  .addcart {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
}

div.item_view div.struct {
  display: block;
}

div.photo div.large {
  width: auto;
}

div.photo {
  margin-left: 0;
}

h2.title_h2 {
  background: none !important;
  border-top: none !important;
  border-bottom: 1px solid #CCCCCC;
  font-size: 20px !important;
  line-height: 1.3;
  margin: 65px 0 20px !important;
  padding: 10px !important;
}

h2.title_h2 span {
  border: none !important;
  padding: 0 !important;
}

ul.item_list li {
  margin-bottom: 10px !important;
}

ul.item_list li h3.title_h3 {
  font-size: 18px !important;
}

.btn_cart a {
  background: url(../images/common/ico_cart_w.png) no-repeat 10px 12px #000000 !important;
  background-size: 30px auto !important;
  color: #FFFFFF !important;
  display: block !important;
  padding: 10px 10px 10px 50px !important;
  width: 100% !important;
  border: 1px solid #ffffff;
}

.btn_cart a:hover {
  background: url(../images/common/ico_cart_w.png) no-repeat 10px 12px #CCCCCC !important;
  background-size: 30px auto !important;
}

.sort_catalog {
  overflow: hidden;
}

.sort_catalog ul {
  display: flex;
}

.item_title, .wishlist {
  margin: 0 !important;
}

.shop_cont h2.title_h2, .item_info h2.title_h2 {
  border-top: 2px solid #CCCCCC;
}

.shop_cont a, .item_info a {
  color: #CCCCCC;
}

.shop_cont a:hover, .item_info a:hover {
  text-decoration: none;
}

.item_title h2 {
  border-top: 2px solid #CCCCCC;
  border-bottom: 1px solid #CCCCCC;
}

.shop_cont table {
  table-layout: auto;
}

/*
Zarigani Design Office Drawer Menu
Copyright 2018 Zarigani Design Office

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.zdo_drawer_menu * {
  margin: 0;
  padding: 0;
  outline: none;
  border: none;
  font: inherit;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-align: left;
  text-decoration: none;
  list-style: none;
}
.zdo_drawer_menu a {
  color: inherit;
  text-decoration: none;
}
.zdo_drawer_menu a:visited {
  color: inherit;
}
.zdo_drawer_menu .zdo_drawer_bg {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 999;
  background-color: rgba(51, 51, 51, 0.5);
  display: none;
  top: 0;
  left: 0;
}
.zdo_drawer_menu .zdo_drawer_button {
  display: block;
  background: none;
  border: none;
  padding: 0;
  width: 50px;
  letter-spacing: 0.1em;
  cursor: pointer;
  position: fixed;
  top: 32px;
  right: 32px;
  z-index: 1001;
  text-align: center;
  outline: none;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
  width: 49px;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar1 {
  transform: rotate(30deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar2 {
  opacity: 0;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar3 {
  transform: rotate(-30deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_menu_text {
  display: none;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_close {
  display: block;
}
.zdo_drawer_menu .zdo_drawer_bar {
  display: block;
  height: 2px;
  margin: 10px 0;
  transition: all 0.2s;
  transform-origin: 0 0;
}
.zdo_drawer_menu .zdo_drawer_text {
  text-align: center;
  font-size: 10px;
}
.zdo_drawer_menu .zdo_drawer_close {
  letter-spacing: 0.08em;
  display: none;
}
.zdo_drawer_menu .zdo_drawer_menu_text {
  display: block;
}
.zdo_drawer_menu .zdo_drawer_nav_wrapper {
  width: 312px;
  height: 100%;
  transition: all 0.2s;
  transform: translate(312px);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  background-color: #FFF;
}
.zdo_drawer_menu .zdo_drawer_nav_wrapper.open {
  transform: translate(0);
}
.zdo_drawer_menu.left .zdo_drawer_button {
  right: auto;
  left: 32px;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper {
  transform: translate(-312px);
  right: auto;
  left: 0;
  transition: 1s;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper.open {
  transform: translate(0);
  transition: 1s;
}

/*+++ Default Navigation CSS +++*/
.zdo_drawer_menu .zdo_drawer_nav {
  padding: 112px 24px;
}
.zdo_drawer_menu .zdo_drawer_nav li {
  font-size: 16px;
  margin-bottom: 15px;
}

/*+++ Default Button Color +++*/
.zdo_drawer_menu .zdo_drawer_button {
  color: #276490;
}
.zdo_drawer_menu .zdo_drawer_button .zdo_drawer_bar {
  background-color: #276490;
}

/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= *//*# sourceMappingURL=common_style.css.map */