@charset "UTF-8";
/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
/*(濃い緑)*/
/*(薄い緑)*/
/*(オレンジ)*/
/*(エメラルド)*/
/*(緑)*/
@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);
@import url(https://fonts.googleapis.com/css?family=EB+Garamond:400,500,700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap);
/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
* {
  -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: #333;
  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: 15px;
  /*
  @media screen and (min-width:835px){
  background: url(../images/common/bg01.png) no-repeat right top;
  background-size: cover;
  background-attachment: fixed;
  }
  */
}
@media only screen and (max-width: 640px) {
  body {
    font-size: 0.9375rem;
    line-height: 1.8em;
    letter-spacing: normal;
  }
}

.contents-inner {
  /*
  	background:rgba(#fff,0.6);
  	padding:2%;
  	*/
}

@media screen and (min-width: 1001px) and (max-width: 1200px) {
  .inner {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}
@media screen and (min-width: 835px) and (max-width: 1000px) {
  .inner {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}
@media only screen and (max-width: 834px) {
  .inner {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

/*
.inner2 {
	margin: 0 auto;
	max-width: 1000px;
}
*/
#contents_wrap {
  width: 100%;
  min-width: 100% !important;
}

#contents {
  font-size: 100%;
  width: 100%;
  max-width: 1200px;
}
@media screen and (min-width: 1001px) and (max-width: 1200px) {
  #contents {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media screen and (min-width: 835px) and (max-width: 1000px) {
  #contents {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  #contents {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media only screen and (max-width: 640px) {
  #contents {
    padding-left: 10px !important;
    padding-right: 10px !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:hover {
  opacity: 0.6;
}

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

.mincho {
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", 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;
  }
}
/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
header#global_header {
  max-width: 100%;
  width: 100%;
  min-width: 100%;
  height: auto;
}
header#global_header #header-wrap {
  width: 95%;
  margin: 0 auto;
  position: relative;
}
header#global_header #header-wrap #header-inr-top {
  position: absolute;
  z-index: 1;
  width: 100%;
}
header#global_header #header-wrap #header-inr {
  position: static;
  z-index: 1;
  width: 100%;
}
#header-logo {
  width: 250px;
  padding-left: 30px;
}
@media screen and (max-width: 1300px) {
  #header-logo {
    width: 250px;
  }
}
@media screen and (max-width: 1000px) {
  #header-logo {
    width: 180px;
    padding-left: 15px;
  }
}
#header-logo a img {
  vertical-align: text-bottom;
}

@media only screen and (max-width: 834px) {
  .sm-header-wrap {
    display: flex;
    align-items: center;
    margin-right: 50px;
  }
}
@media only screen and (max-width: 640px) {
  .sm-header-wrap {
    margin-top: 10px;
  }
}

#header-logo-sm {
  width: 40%;
  margin: 1%;
}
@media screen and (min-width: 834px) {
  #header-logo-sm {
    display: none;
  }
}
@media screen and (max-width: 400px) {
  #header-logo-sm {
    width: 70%;
  }
}

.header-tel {
  margin: 5px 0;
  float: right;
  display: flex;
  align-items: center;
  text-align: left;
  color: #f1890f;
  font-size: 1.625rem;
  font-family: Century Gothic, CenturyGothic, AppleGothic, sans-serif;
  letter-spacing: 1.5px;
}
@media (max-width: 1200px) {
  .header-tel {
    font-size: calc(1.2875rem + 0.45vw);
  }
}
.header-tel i {
  color: #fff;
  background: #f1890f;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: inline-block;
  text-align: center;
  line-height: 40px;
  margin-right: 5px;
}
.header-tel a {
  color: #004c22 !important;
}
@media only screen and (max-width: 834px) {
  .header-tel {
    float: none;
    justify-content: flex-start;
    width: 48%;
    margin: 1%;
    font-size: 2.25rem;
  }
}
@media only screen and (max-width: 834px) and (max-width: 1200px) {
  .header-tel {
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media only screen and (max-width: 834px) {
  .header-tel span {
    display: none;
  }
  .header-tel i {
    width: 35px;
    height: 35px;
    line-height: 35px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 640px) {
  .header-tel {
    width: auto;
    font-size: 1.875rem;
    letter-spacing: normal;
  }
  .header-tel span {
    display: none;
  }
}
@media only screen and (max-width: 640px) and (max-width: 1200px) {
  .header-tel {
    font-size: calc(1.3125rem + 0.75vw);
  }
}
@media only screen and (max-width: 640px) {
  .header-tel i {
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 1rem;
  }
}
@media screen and (max-width: 400px) {
  .header-tel {
    width: auto;
  }
  .header-tel span {
    display: none;
  }
  .header-tel i {
    margin-left: 10px;
  }
}
.header-tel .tel-s {
  display: flex;
  align-items: center;
}

.h-time, .h-time-b {
  margin-left: 10px;
  font-size: 0.875rem;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #fff;
}
.h-time span, .h-time-b span {
  background: #333;
  padding: 5px;
  margin-right: 5px;
}
@media only screen and (max-width: 834px) {
  .h-time, .h-time-b {
    display: none;
  }
}

.h-time-b {
  color: #333;
}
.h-time-b span {
  background: #ccc;
  padding: 5px;
  margin-right: 5px;
}

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

#nav-wrap {
  background: #fff;
  border-radius: 30px;
  clear: both;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 60px;
}
@media only screen and (max-width: 834px) {
  #nav-wrap {
    display: none;
  }
}

#nav_global {
  width: 100%;
  max-width: 1300px;
}
#nav_global ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
#nav_global ul .h-cont a {
  background: #009342;
  border-radius: 0 30px 30px 0;
  color: #fff;
}
#nav_global ul .h-cont a i {
  padding-right: 5px;
}
#nav_global ul .h-cont a:hover {
  opacity: 1 !important;
  background: #f1890f;
  transition: 0.5s;
  color: #fff;
}
#nav_global ul li {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  position: relative;
}
#nav_global ul li a {
  text-align: center;
  display: block;
  padding: 15px 25px;
  text-align: center;
  color: #000;
  font-size: 0.875rem;
}
@media screen and (max-width: 1500px) {
  #nav_global ul li a {
    padding: 15px 20px;
  }
}
@media screen and (max-width: 1300px) {
  #nav_global ul li a {
    font-size: 0.8125rem;
    padding: 15px 10px;
    letter-spacing: inherit;
    display: block;
  }
}
@media screen and (max-width: 1100px) {
  #nav_global ul li a {
    padding: 15px 5px;
    letter-spacing: inherit;
    display: block;
  }
}
@media screen and (max-width: 900px) {
  #nav_global ul li a {
    font-size: 0.75rem;
    padding: 15px 5px;
    display: block;
  }
}
#nav_global ul li a:hover {
  color: #004c22;
  transition: 0.5s;
}
#nav_global ul li ul {
  position: absolute;
  background: rgba(218, 250, 212, 0.8);
  margin: auto;
  display: block;
  width: 100%;
  min-width: 110px;
  z-index: 1;
}
#nav_global ul li ul li {
  border: 0.5px solid #fff;
  line-height: 1.5em;
}
#nav_global ul li ul li:before {
  content: none !important;
}
#nav_global ul li ul li a {
  padding: 10px 5px;
}

.mean-bar {
  display: none;
}

#mainArea {
  position: relative;
  left: 0;
  right: 0;
  max-width: 100%;
}
#mainArea img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 640px) {
  #mainArea img {
    width: 130%;
    height: 35vh !important;
    object-fit: cover;
  }
}
@media only screen and (max-width: 834px) {
  #mainArea {
    top: 55px;
  }
}
#mainArea .slick-prev, #mainArea .slick-next {
  z-index: 100;
  height: auto !important;
  width: auto !important;
}
#mainArea .slick-prev {
  left: 18% !important;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  #mainArea .slick-prev {
    width: 50px !important;
  }
}
#mainArea .slick-next {
  right: 18% !important;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  #mainArea .slick-next {
    width: 50px !important;
  }
}
#mainArea .slick-prev:before, #mainArea .slick-next:before {
  display: none;
}
#mainArea:after {
  position: absolute;
  background: url(../images/common/mokomoko_line.png) repeat-x center bottom;
  bottom: 0;
  content: "";
  width: 100%;
  height: 12px;
  display: block;
}

.main-txt {
  position: absolute;
  bottom: 10%;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 95%;
  max-width: 1000px;
  background: rgba(255, 255, 255, 0.8);
  padding: 10px 20px;
  font-size: 2.25rem;
  line-height: 60px;
  font-family: fot-cezanne-pron, sans-serif;
  text-align: left;
}
@media (max-width: 1200px) {
  .main-txt {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.main-txt span {
  background: linear-gradient(transparent 60%, rgba(241, 137, 15, 0.5) 0%);
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .main-txt {
    font-size: 1.125rem;
    line-height: 24px;
  }
  .main-txt br {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  .main-txt {
    bottom: 25px;
    padding: 10px;
    font-size: 1rem;
    line-height: 20px;
  }
  .main-txt br {
    display: none;
  }
}

.mean-container .mean-bar {
  background: #009342 !important;
  position: fixed !important;
}

.mean-container .mean-nav {
  background: #009342 !important;
}

.mean-container .mean-nav ul li a {
  border-top: 1px solid #fff !important;
  padding: 0.8em 5% !important;
}

.mean-container .mean-nav ul li a.mean-expand:hover {
  /*
  background-color: #e9832f !important;*/
}

.mean-container .mean-nav ul li a.mean-expand {
  height: 30px !important;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .mean-container .mean-nav ul li a.mean-expand {
    height: 25px !important;
  }
}

.mean-container .mean-nav ul li li a {
  padding: 0.2em 10% !important;
}

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

.anchor2 {
  display: block;
  transform: translateY(-100px);
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .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%;
  position: fixed;
  background: rgba(255, 255, 255, 0.8);
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  width: 100%;
  transition: 0.3s;
  transform: translateY(-100%);
}
@media only screen and (max-width: 834px) {
  .clone-nav {
    display: none;
  }
}

.is-show {
  transform: translateY(0);
}

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

.zdo_drawer_menu .zdo_drawer_button {
  background: #009342 !important;
}

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

.store_areA {
  padding: 10%;
}
.store_areA img {
  width: 60%;
  margin: 0 auto;
}
.store_areA .h_logo {
  display: none;
}

.h_tel, .h_cont {
  width: 220px;
  height: 50px;
  line-height: 50px;
  background: #f1890f;
  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 a {
  display: block;
  color: #009342;
  padding-bottom: 10px;
}
.zdo_drawer_menu a i {
  padding-right: 5px;
}

.zdo_drawer_menu .zdo_drawer_nav li {
  border-bottom: 1px solid #ccc;
  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_button {
  background: rgba(255, 255, 255, 0.5) !important;
  padding: 0 5px !important;
  width: 50px;
  height: 50px;
  top: 5px !important;
  right: 5px !important;
}

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

.zdo_drawer_menu .zdo_drawer_nav_wrapper {
  background: #fff;
  background-size: cover;
}

.zdo_drawer_menu a:visited {
  color: #009342 !important;
}

/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
footer#global_footer {
  position: relative;
  background: none !important;
  min-width: 100% !important;
  width: 100% !important;
  margin-top: 80px;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  footer#global_footer {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 640px) {
  footer#global_footer {
    margin-top: 30px;
  }
}

#top-button {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 3;
}
#top-button img {
  width: 80%;
}
@media only screen and (max-width: 640px) {
  #top-button {
    bottom: 10px;
  }
}

.TCT-wrap {
  position: relative;
  padding: 3% 0 !important;
  background: url(../images/common/ptn6.png) repeat center;
  background-size: auto;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .TCT-wrap {
    padding: 5% 0 !important;
    background-attachment: inherit;
  }
}
@media only screen and (max-width: 640px) {
  .TCT-wrap {
    padding: 10% 0 !important;
    background-attachment: inherit;
  }
}
.TCT-wrap:after {
  position: absolute;
  background: url(../images/common/mokomoko_line2.png) repeat-x center bottom;
  bottom: 0;
  content: "";
  width: 100%;
  height: 12px;
  display: block;
}

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

.TCT-title .sub-ttl {
  color: #fff;
  font-family: "Lato", serif;
  letter-spacing: 0.5em;
  margin-bottom: 50px;
}
@media only screen and (max-width: 834px) {
  .TCT-title .sub-ttl {
    margin-bottom: 20px;
  }
}
.TCT-title h2 {
  position: relative;
  font-size: 2.25rem;
  color: #fff;
  font-weight: 500;
  margin: 30px auto;
}
@media (max-width: 1200px) {
  .TCT-title h2 {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.TCT-title h2:after {
  content: "";
  background: url(../images/common/deco4.png) no-repeat center top;
  width: 100px;
  height: 6px;
  position: absolute;
  top: -40px;
  right: 0;
  left: 0;
  margin: 0 auto;
}
@media only screen and (max-width: 834px) {
  .TCT-title h2:after {
    top: -30px;
  }
}
@media only screen and (max-width: 834px) {
  .TCT-title {
    margin-bottom: 20px;
    font-size: 1rem;
  }
  .TCT-title h2 {
    margin-bottom: 10px;
  }
  .TCT-title h2 span {
    padding-top: 10px;
  }
}

.TCT-txt {
  color: #fff;
  font-size: 1.125rem;
  line-height: 2.5rem;
}

.TCT-bottom-wrap {
  background: #fff;
  padding: 3% 15px;
  width: 95%;
  max-width: 1200px;
  margin: 50px auto 0 auto;
  position: relative;
}
.TCT-bottom-wrap:after {
  content: "";
  background: url(../images/common/deco5.png) no-repeat center top;
  width: 70px;
  height: 36px;
  position: absolute;
  top: -30px;
  right: 0;
  left: 0;
  margin: 0 auto;
}

.TCT-bottom {
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 834px) {
  .TCT-bottom {
    flex-direction: column;
    align-items: center;
  }
}

.TCT-tel-wrap {
  width: 46%;
  margin: 2%;
  max-width: 350px;
}
@media only screen and (max-width: 834px) {
  .TCT-tel-wrap {
    width: 95%;
  }
}

.TCT-tel {
  display: flex;
  align-items: center;
  align-self: center;
  justify-content: center;
  margin-bottom: 10px;
  color: #004c22;
  font-family: "Century Gothic", sans-serif;
  letter-spacing: 1.5px;
  font-size: 2.25rem;
}
.TCT-tel i {
  font-size: 1.875rem;
  background: #f1890f;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 50px;
  color: #fff;
  margin-right: 10px;
}
@media (max-width: 1200px) {
  .TCT-tel i {
    font-size: calc(1.3125rem + 0.75vw);
  }
}
@media (max-width: 1200px) {
  .TCT-tel {
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media only screen and (max-width: 834px) {
  .TCT-tel {
    margin-bottom: 15px;
  }
}

.f-time {
  font-size: 0.8125rem;
}
.f-time span {
  background: #ccc;
  padding: 0 5px;
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
}

.TCT-cont {
  width: 46%;
  margin: 2%;
  max-width: 350px;
  align-self: center;
}
.TCT-cont a {
  background: #009342;
  border-radius: 30px;
  color: #fff;
  display: block;
  font-size: 1.125rem;
  padding: 15px 0;
}
.TCT-cont a i {
  padding-right: 10px;
}
.TCT-cont a:hover {
  opacity: 1 !important;
  background: #f1890f;
  transition: 0.5s;
}
@media only screen and (max-width: 834px) {
  .TCT-cont {
    width: 95%;
  }
}
.time-map-wrap {
  max-width: 1200px;
  height: 350px;
  margin: 20px auto 100px auto;
  display: flex;
}
.time-map-wrap .f-time {
  width: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 15px;
  background: rgba(241, 137, 15, 0.7);
}
.time-map-wrap .f-time h3 {
  font-size: 1.125rem;
  color: #fff;
  margin-bottom: 30px;
  position: relative;
}
.time-map-wrap .f-time h3:before {
  content: "";
  background: #fff;
  width: 200px;
  height: 1px;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
}
.time-map-wrap .f-time .timetable {
  width: 95%;
  margin: 0 auto;
  overflow-x: auto;
  overflow-y: hidden;
}
.time-map-wrap .f-time .timetable table {
  background: #fff;
  table-layout: fixed;
  min-width: 100%;
}
.time-map-wrap .f-time .timetable table tr:first-child {
  background: #d1e4f6;
}
.time-map-wrap .f-time .timetable .tbl-ttl {
  width: 150px;
}
.time-map-wrap .f-time .timetable td {
  height: 40px;
  width: 50px;
}
.time-map-wrap .f-time .f-time-txt {
  color: #fff;
}
.time-map-wrap .f-map {
  width: 50%;
}
@media only screen and (max-width: 834px) {
  .time-map-wrap {
    flex-direction: column;
    height: auto;
    margin: 20px auto 50px auto;
  }
  .time-map-wrap .f-time {
    width: 100%;
    padding: 5% 15px;
  }
  .time-map-wrap .f-map {
    width: 100%;
  }
}

.footer-logo {
  max-width: 300px;
  width: 90%;
  margin: 15px auto;
}

#footer-wrap {
  background: #dafad4;
  padding: 30px 15px;
  position: relative;
}
@media only screen and (max-width: 834px) {
  #footer-wrap {
    padding: 20px 15px;
  }
}
#footer-wrap .pagetop {
  position: absolute;
  top: -58px;
  right: 0;
  left: 0;
  margin: auto;
  display: block;
}

#footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: space-between;
  color: #004c22;
}
@media only screen and (max-width: 834px) {
  #footer-inner {
    flex-direction: column-reverse;
    padding: 0;
  }
}
#footer-inner address {
  font-size: 0.875rem;
  text-align: left;
}
#footer-inner address .f-id {
  margin-bottom: 10px;
}
#footer-inner address .f-id a {
  font-size: 1.125rem;
  color: #004c22;
}
#footer-inner address .f-id a span {
  display: block;
  font-size: 0.75rem;
}
#footer-inner address .f-id a:hover {
  color: #004c22;
}
@media only screen and (max-width: 834px) {
  #footer-inner address {
    margin-top: 10px;
    text-align: center;
  }
  #footer-inner address .tel-s a {
    color: #004c22;
  }
}
#footer-inner #footer-nav {
  max-width: 550px;
  text-align: right;
}
#footer-inner #footer-nav ul {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#footer-inner #footer-nav ul li {
  position: relative;
}
#footer-inner #footer-nav ul li a {
  font-size: 0.875rem;
  display: block;
  width: 100%;
  padding: 3px 10px;
  color: #004c22;
}
@media only screen and (max-width: 834px) {
  #footer-inner #footer-nav {
    display: block !important;
    max-width: 100%;
    width: 100%;
  }
  #footer-inner #footer-nav ul li {
    width: 48%;
    margin: 1%;
    border: 1px solid #009342;
  }
  #footer-inner #footer-nav ul li a {
    text-align: center;
    font-size: 0.8125rem;
  }
}
@media screen and (max-width: 350px) {
  #footer-inner #footer-nav ul li {
    width: 100%;
  }
}

iframe {
  vertical-align: bottom !important;
}

.f-map {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto 30px auto;
}

#copyright {
  background: #009342;
  text-align: center;
  color: #fff !important;
}
#copyright a {
  color: #fff !important;
}
.mean-container .mean-push {
  display: none !important;
}

/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
.top-title, .page-title, .top-title-en, .top-titleb {
  text-align: center;
}
.top-title h1, .page-title h1, .top-title-en h1, .top-titleb h1 {
  font-size: 3rem;
  color: #009342;
  font-weight: 500;
}
@media (max-width: 1200px) {
  .top-title h1, .page-title h1, .top-title-en h1, .top-titleb h1 {
    font-size: calc(1.425rem + 2.1vw);
  }
}
.top-title h2, .page-title h2, .top-title-en h2, .top-titleb h2 {
  font-size: 2.25rem;
  color: #009342;
  font-weight: 500;
}
@media (max-width: 1200px) {
  .top-title h2, .page-title h2, .top-title-en h2, .top-titleb h2 {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.top-title .sub-ttl, .page-title .sub-ttl, .top-title-en .sub-ttl, .top-titleb .sub-ttl {
  font-size: 1.125rem;
  color: #009342;
  letter-spacing: 0.3em;
}
.top-title table td, .page-title table td, .top-title-en table td, .top-titleb table td {
  border: none;
  padding: 15px !important;
}
.top-titleb h2 {
  color: #fff;
}
.top-titleb .sub-ttl {
  color: #fff;
}

.top-title2 {
  position: relative;
}
.top-title2 h2 {
  font-size: 2.25rem;
  color: #00b250;
  font-weight: 400;
}
@media (max-width: 1200px) {
  .top-title2 h2 {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.top-title2 .sub-ttl {
  font-size: 0.875rem;
  color: #00b250;
  letter-spacing: 0.3em;
  margin: 10px auto;
}
.top-title2:before {
  position: absolute;
  content: "";
  background: url(../images/common/deco3.png) no-repeat center top;
  background-size: 80%;
  width: 4px;
  height: 75px;
  left: 20%;
  top: 10px;
}
.top-title2:after {
  position: absolute;
  content: "";
  background: url(../images/common/deco3.png) no-repeat center top;
  background-size: 80%;
  width: 4px;
  height: 75px;
  right: 20%;
  top: 10px;
}
@media screen and (max-width: 1200px) {
  .top-title2 h2 {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 1200px) and (max-width: 1200px) {
  .top-title2 h2 {
    font-size: calc(1.3rem + 0.6vw);
  }
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .top-title2:before {
    left: 30%;
  }
  .top-title2:after {
    right: 30%;
  }
}
@media only screen and (max-width: 640px) {
  .top-title2:before {
    left: 10%;
  }
  .top-title2:after {
    right: 10%;
  }
}

.top-title2b {
  max-width: 1200px;
  width: 95%;
  margin: 0 auto;
}
.top-title2b > div {
  max-width: 300px;
  position: relative;
  padding-left: 20px;
}
.top-title2b > div:before {
  position: absolute;
  content: "";
  background: url(../images/common/deco3.png) no-repeat center top;
  background-size: 80%;
  width: 4px;
  height: 75px;
  left: 0;
  top: 0;
}
.top-title2b > div h2 {
  font-size: 2.25rem;
  color: #00b250;
  font-weight: 400;
}
@media (max-width: 1200px) {
  .top-title2b > div h2 {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.top-title2b .sub-ttl {
  font-size: 0.875rem;
  color: #00b250;
  letter-spacing: 0.3em;
  margin: 10px auto;
}
@media screen and (max-width: 1200px) {
  .top-title2b h2 {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 1200px) and (max-width: 1200px) {
  .top-title2b h2 {
    font-size: calc(1.3rem + 0.6vw);
  }
}
.top-title3 {
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  max-width: 1000px;
  width: 95%;
  margin: 0 auto;
  padding: 20px 0;
}
.top-title3 h2 {
  font-size: 2.25rem;
  color: #009342;
  font-weight: 600;
}
@media (max-width: 1200px) {
  .top-title3 h2 {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.top-title3 h2 span {
  color: #1b1b1b;
  font-size: 1.875rem;
  display: block;
}
@media (max-width: 1200px) {
  .top-title3 h2 span {
    font-size: calc(1.3125rem + 0.75vw);
  }
}

.top-title4 h3, .top-title4 .title h4, .top-title4 .title3 h4, .title .top-title4 h4, .title3 .top-title4 h4 {
  font-size: 1.5rem;
  color: #333;
  border-bottom: 3px dashed #ccc;
  padding: 0 5px 10px 5px;
  display: inline-block;
  margin-bottom: 20px;
}
@media (max-width: 1200px) {
  .top-title4 h3, .top-title4 .title h4, .top-title4 .title3 h4, .title .top-title4 h4, .title3 .top-title4 h4 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.top-title4 h3 img, .top-title4 .title h4 img, .top-title4 .title3 h4 img, .title .top-title4 h4 img, .title3 .top-title4 h4 img {
  margin-left: 10px;
}
.top-title4 div {
  font-size: 1.875rem;
  color: #009342;
  font-weight: 500;
  line-height: 1.5em;
}
@media (max-width: 1200px) {
  .top-title4 div {
    font-size: calc(1.3125rem + 0.75vw);
  }
}

.top-title-en h2 {
  font-family: century-gothic, sans-serif;
  font-style: normal;
  font-weight: 400;
}

.top-con1 {
  max-width: 800px;
  margin: 0 auto;
  font-size: 1rem;
  line-height: 3em;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .top-con1 {
    line-height: 2em;
  }
}
@media only screen and (max-width: 640px) {
  .top-con1 {
    line-height: 2em;
    padding: 0 15px;
  }
}

.top-con2-wrap, .top-con2-wrap-b {
  position: relative;
  padding: 3% 20px !important;
}
@media screen and (max-width: 1500px) {
  .top-con2-wrap, .top-con2-wrap-b {
    padding: 5% 20px !important;
  }
}
@media only screen and (max-width: 834px) {
  .top-con2-wrap, .top-con2-wrap-b {
    padding: 5% 15px !important;
  }
}

.top-con2-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/ptn2.png) repeat center top;
  z-index: -1;
}

.top-con2-wrap-b {
  padding: 1% 20px 5% !important;
}
@media screen and (max-width: 1500px) {
  .top-con2-wrap-b {
    padding: 5% 20px !important;
  }
}
@media only screen and (max-width: 834px) {
  .top-con2-wrap-b {
    padding: 5% 0 !important;
  }
}
.top-con2-wrap-b .top-con2-inr {
  opacity: 0.7;
}

.slider01 {
  max-width: 1500px;
  margin: 0 auto;
}
.slider01 .box, .slider01 .TFLX1 .box2, .TFLX1 .slider01 .box2 {
  margin: 30px 10px;
  background: #009342;
  border-radius: 5px;
  padding: 10px;
  position: relative;
}
.slider01 .box h3, .slider01 .box .title h4, .slider01 .box .title3 h4, .title .slider01 .box h4, .title3 .slider01 .box h4, .slider01 .TFLX1 .box2 h3, .slider01 .TFLX1 .box2 .title h4, .slider01 .TFLX1 .box2 .title3 h4, .title .slider01 .TFLX1 .box2 h4, .title3 .slider01 .TFLX1 .box2 h4, .TFLX1 .slider01 .box2 h3, .TFLX1 .slider01 .box2 .title h4, .TFLX1 .slider01 .box2 .title3 h4, .title .TFLX1 .slider01 .box2 h4, .title3 .TFLX1 .slider01 .box2 h4 {
  display: none;
}
.slider01 .box a, .slider01 .TFLX1 .box2 a, .TFLX1 .slider01 .box2 a {
  display: block;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
.slider01 .box a:hover, .slider01 .TFLX1 .box2 a:hover, .TFLX1 .slider01 .box2 a:hover {
  opacity: 1 !important;
}
.slider01 .box a:hover img, .slider01 .TFLX1 .box2 a:hover img, .TFLX1 .slider01 .box2 a:hover img {
  transform: scale(1.2, 1.2);
  transition: 1s all;
}
.slider01 .box a img, .slider01 .TFLX1 .box2 a img, .TFLX1 .slider01 .box2 a img {
  display: block;
  margin: 0 auto;
  width: 100% !important;
  transition: 1s all;
}
.slider01 .box div, .slider01 .TFLX1 .box2 div, .TFLX1 .slider01 .box2 div {
  margin: 5px auto;
  color: #fff;
}
.slider01 .box div .top-con2-ttl, .slider01 .TFLX1 .box2 div .top-con2-ttl, .TFLX1 .slider01 .box2 div .top-con2-ttl {
  font-size: 1rem;
  border-bottom: 1px solid #fff;
  padding-bottom: 5px;
}
.slider01 .box div .top-con2-txt, .slider01 .TFLX1 .box2 div .top-con2-txt, .TFLX1 .slider01 .box2 div .top-con2-txt {
  font-size: 0.8125rem;
}
.slider01 .box:before, .slider01 .TFLX1 .box2:before, .TFLX1 .slider01 .box2:before {
  content: "";
  background: url(../images/common/deco2.png) no-repeat center top;
  width: 50px;
  height: 25px;
  position: absolute;
  top: -25px;
  right: 0;
  left: 0;
  margin: 0 auto;
}
.slider01 i {
  display: none !important;
}

.link-button div a {
  display: block;
  width: 95%;
  margin: 0 auto;
  background: #009342;
  border-radius: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
}
.link-button div a:hover {
  opacity: 1 !important;
  background: #f1890f;
  transition: 0.3s;
}
.link-button div a .btn-ttl {
  width: 40%;
  text-align: center !important;
  font-size: 1.25rem;
}
.link-button div a .btn-ttl .en-font {
  display: block;
  font-size: 0.875rem;
}
@media only screen and (max-width: 834px) {
  .link-button div a .btn-ttl {
    border-right: 1px solid #fff;
    padding: 10px;
  }
}
.link-button div a .btn-txt {
  font-size: 1rem;
  padding: 0 10px;
}
.link-button div a .btn-icon {
  background: #f1890f;
  border-radius: 0 40px 40px 0;
  height: 80px;
  line-height: 80px;
  padding: 0 20px;
}
.link-button div a .btn-icon i {
  font-size: 1.5rem;
}
@media (max-width: 1200px) {
  .link-button div a .btn-icon i {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 640px) {
  .link-button div a .btn-icon {
    border-radius: 0 55px 55px 0;
    height: 110px;
    line-height: 110px;
  }
}
@media only screen and (max-width: 640px) {
  .link-button div a {
    border-radius: 55px;
  }
}

.TFLX1 {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.TFLX1 .box, .TFLX1 .box2 {
  width: 50%;
  background: url(../images/common/top_img1.png) no-repeat center top;
  background-size: cover;
  padding: 5% 10%;
}
.TFLX1 .box .box-inr, .TFLX1 .box2 .box-inr {
  background: rgba(255, 255, 255, 0.8);
  padding: 10% 5%;
}
.TFLX1 .box .box-inr .box-TBL .box-txt, .TFLX1 .box2 .box-inr .box-TBL .box-txt {
  font-size: 1rem;
}
.TFLX1 .box2 {
  background: url(../images/common/top_img2.png) no-repeat center top;
}
@media screen and (max-width: 1500px) {
  .TFLX1 .box, .TFLX1 .box2 {
    padding: 5%;
  }
}
@media only screen and (max-width: 834px) {
  .TFLX1 {
    flex-direction: column;
  }
  .TFLX1 .box, .TFLX1 .box2 {
    width: 100%;
  }
}

.top-con3-inr {
  width: 95%;
  margin: 0 auto;
  position: relative;
  padding: 3% 20px !important;
  background: url(../images/common/ptn3.png) repeat center top;
}
@media screen and (max-width: 1500px) {
  .top-con3-inr {
    padding: 5% 20px !important;
  }
}
.top-con3-wrap {
  position: relative;
  width: 100%;
}
.top-con3-wrap .decoline {
  position: absolute;
  background: url(../images/common/mokomoko_line.png) repeat-x center bottom;
  bottom: 0;
  content: "";
  width: 100%;
  height: 12px;
  display: block;
}

.top-con3 {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}
.top-con3 .box, .top-con3 .TFLX1 .box2, .TFLX1 .top-con3 .box2 {
  overflow: visible !important;
  width: 48%;
  margin: 30px 1% 1% 1%;
  background: #009342;
  border-radius: 10px;
  padding: 20px;
  position: relative;
}
.top-con3 .box a:hover img, .top-con3 .TFLX1 .box2 a:hover img, .TFLX1 .top-con3 .box2 a:hover img {
  display: block;
}
.top-con3 .box img, .top-con3 .TFLX1 .box2 img, .TFLX1 .top-con3 .box2 img {
  width: 100% !important;
  margin: 0 auto;
}
.top-con3 .box h3, .top-con3 .box .title h4, .top-con3 .box .title3 h4, .title .top-con3 .box h4, .title3 .top-con3 .box h4, .top-con3 .TFLX1 .box2 h3, .top-con3 .TFLX1 .box2 .title h4, .top-con3 .TFLX1 .box2 .title3 h4, .title .top-con3 .TFLX1 .box2 h4, .title3 .top-con3 .TFLX1 .box2 h4, .TFLX1 .top-con3 .box2 h3, .TFLX1 .top-con3 .box2 .title h4, .TFLX1 .top-con3 .box2 .title3 h4, .title .TFLX1 .top-con3 .box2 h4, .title3 .TFLX1 .top-con3 .box2 h4 {
  display: none;
}
.top-con3 .box div, .top-con3 .TFLX1 .box2 div, .TFLX1 .top-con3 .box2 div {
  margin: 5px auto;
  color: #fff;
}
.top-con3 .box div .top-con2-ttl a, .top-con3 .TFLX1 .box2 div .top-con2-ttl a, .TFLX1 .top-con3 .box2 div .top-con2-ttl a {
  font-size: 1.125rem;
  border-bottom: 1px solid #fff;
  padding: 10px 10px 15px 10px;
  text-align: center;
  display: block;
  color: #fff;
}
.top-con3 .box div .top-con2-txt, .top-con3 .TFLX1 .box2 div .top-con2-txt, .TFLX1 .top-con3 .box2 div .top-con2-txt {
  text-align: center;
}
.top-con3 .box:before, .top-con3 .TFLX1 .box2:before, .TFLX1 .top-con3 .box2:before {
  content: "";
  background: url(../images/common/deco2.png) no-repeat center top;
  width: 50px;
  height: 25px;
  position: absolute;
  top: -25px;
  right: 0;
  left: 0;
  margin: 0 auto;
}
@media only screen and (max-width: 640px) {
  .top-con3 {
    flex-direction: column;
  }
  .top-con3 .box, .top-con3 .TFLX1 .box2, .TFLX1 .top-con3 .box2 {
    width: 95%;
    margin-bottom: 15px;
  }
}

.btn1 div, .btn2 div, .btn1b div {
  min-width: 250px;
  max-width: 300px;
  width: 90%;
  margin: 0 auto;
}
.btn1 div a, .btn2 div a, .btn1b div a {
  background: #00b250;
  border-radius: 30px;
  align-self: center;
  color: #fff;
  display: block;
  font-size: 1.125rem;
  padding: 0 10px;
  line-height: 50px;
  height: 50px;
  display: block;
  text-align: center;
  position: relative;
}
.btn1 div a:hover, .btn2 div a:hover, .btn1b div a:hover {
  opacity: 1 !important;
  background: #f1890f;
  color: #fff;
  transition: 0.5s;
}
.btn1 div a:after, .btn2 div a:after, .btn1b div a:after {
  font-family: "Font Awesome 5 Pro";
  content: "\f138"; /*アイコンのユニコード*/
  font-size: 12px;
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1em; /*サイズ*/
  right: 10px; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  bottom: 0;
  color: #fff; /*アイコン色*/
}

.btn1b {
  border: 1px solid #009342;
  position: relative;
}
.btn1b a {
  color: #009342;
}
.btn1b a:hover {
  opacity: 1 !important;
  background: #009342;
  color: #fff;
  transition: 0.5s;
}
.btn1b:before {
  background: #009342;
}

.btn2 a {
  border: 1px solid #f1890f;
}
.btn2 a:hover {
  background-color: #f1890f;
}

.news-wrap {
  position: relative;
  padding: 3% 0 5% 0 !important;
}
@media only screen and (max-width: 834px) {
  .news-wrap {
    padding: 5% 15px !important;
  }
}

.news-inner {
  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/new.bg.png) no-repeat center bottom;
  z-index: -1;
}

.news-bg {
  height: 300px;
  padding: 30px;
  max-width: 1000px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 10px;
}
@media screen and (min-width: 835px) and (max-width: 1000px) {
  .news-bg {
    margin: 20px;
  }
}
@media only screen and (max-width: 834px) {
  .news-bg {
    height: 300px;
    margin: 0 10px;
  }
}

.news {
  height: 100%;
  overflow-y: auto;
  line-height: 1.2;
}
.news dl {
  border: none !important;
  border-bottom: 1px dashed #ccc !important;
  padding: 15px 0;
  color: #333;
  line-height: 1.5em;
}
.news dl dt {
  background: rgba(241, 137, 15, 0.3) !important;
  border: none !important;
  background: rgba(0, 147, 66, 0.3);
  padding: 5px 8px !important;
  text-align: center !important;
  display: block !important;
  height: 30px;
}
.news dl dd {
  border: none !important;
  width: 100% !important;
  background: none !important;
  padding: 5px 8px !important;
}
@media only screen and (max-width: 640px) {
  .news dl {
    flex-direction: column;
  }
  .news dl dt, .news dl dd {
    width: 100% !important;
  }
}

section div.form_wrap dl dt {
  background-color: none !important;
}

.tel-s a, .tel-h a {
  color: #333;
}
.tel-s a:hover, .tel-h a:hover {
  opacity: 1 !important;
}

@media only screen and (max-width: 834px) {
  .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: 834px) {
  .brdnpc br {
    display: none;
  }
}

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

.ai-company dt {
  align-items: center !important;
  background: rgba(0, 147, 66, 0.2) !important;
}
@media only screen and (max-width: 640px) {
  .ai-company dl {
    display: block !important;
  }
  .ai-company dl dt {
    width: 100% !important;
    border-right: 1px solid #ccc !important;
  }
  .ai-company dl dd {
    width: 100% !important;
  }
}

.ai-company2 {
  background: none !important;
}
.ai-company2 dl dt {
  align-items: center !important;
  background: none !important;
  border-bottom: 2px solid #009342 !important;
}
.ai-company2 dl dd {
  background: none !important;
  border-bottom: 2px solid #ccc !important;
}
.ai-company2 dl:last-of-type dt {
  border-bottom: 2px solid #009342 !important;
}
@media only screen and (max-width: 640px) {
  .ai-company2 dl {
    display: block !important;
  }
  .ai-company2 dl dt {
    width: 100% !important;
    border-right: 2px solid #009342 !important;
    border-left: 2px solid #009342 !important;
    background: rgba(0, 147, 66, 0.2) !important;
  }
  .ai-company2 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: 834px) {
  .fancybox-toolbar {
    top: 50px !important;
  }
}

.pankuzu {
  text-align: right;
  margin-top: 20px;
}
@media only screen and (max-width: 834px) {
  .pankuzu {
    display: none;
  }
}

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

.error2 h2 {
  font-size: 40px;
  font-weight: bold;
}
.error2 a {
  border: 1px solid #ccc;
  padding: 3px 20px;
  display: inline-block;
}

.pick01 {
  background: rgba(0, 178, 80, 0.3);
  font-size: 1rem;
  padding: 30px;
}
@media only screen and (max-width: 834px) {
  .pick01 {
    padding: 20px 10px;
  }
}
.pick01 h2, .pick01 h3, .pick01 .title h4, .pick01 .title3 h4, .title .pick01 h4, .title3 .pick01 h4 {
  font-size: 1.5625rem;
  color: #009342;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 30px;
  text-align: center;
}
@media (max-width: 1200px) {
  .pick01 h2, .pick01 h3, .pick01 .title h4, .pick01 .title3 h4, .title .pick01 h4, .title3 .pick01 h4 {
    font-size: calc(1.28125rem + 0.375vw);
  }
}
.pick01 h2:after, .pick01 h3:after, .pick01 .title h4:after, .pick01 .title3 h4:after, .title .pick01 h4:after, .title3 .pick01 h4:after {
  position: absolute;
  content: "";
  background: url(../images/common/deco1.png) no-repeat center top;
  background-size: 80%;
  width: 200px;
  height: 20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0;
}
.pick01 .bg1 {
  padding: 10px;
  background: rgba(255, 255, 255, 0.8);
}
.pick01 .bg1 div {
  color: #f1890f;
  font-weight: bold;
}
.pick01 .left {
  margin-top: 15px;
  text-align: left !important;
}
.pick01 .left .report-ttl {
  text-align: left !important;
  font-weight: bold;
  border-bottom: 1px solid #333;
}

.pick02 {
  background: rgba(241, 137, 15, 0.2);
  padding: 1%;
}
.pick02 h2 {
  font-size: 1.25rem;
}
@media only screen and (max-width: 834px) {
  .pick02 {
    padding: 5%;
  }
}

.pick03 {
  padding: 2%;
  background: rgba(241, 137, 15, 0.1);
}
.pick03 h3, .pick03 .title h4, .pick03 .title3 h4, .title .pick03 h4, .title3 .pick03 h4 {
  font-size: 1.125rem;
}
@media only screen and (max-width: 834px) {
  .pick03 {
    padding: 5%;
  }
}

.gallery-3 {
  display: flex;
  flex-wrap: wrap;
}
.gallery-3 .box, .gallery-3 .TFLX1 .box2, .TFLX1 .gallery-3 .box2 {
  width: 31.333%;
  margin: 1%;
}
@media only screen and (max-width: 834px) {
  .gallery-3 .box, .gallery-3 .TFLX1 .box2, .TFLX1 .gallery-3 .box2 {
    width: 48%;
  }
}

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

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

.gallery-FLX {
  display: flex;
  flex-wrap: flex-wrap;
}
.gallery-FLX .box, .gallery-FLX .TFLX1 .box2, .TFLX1 .gallery-FLX .box2 {
  width: 31.333%;
  margin: 1%;
}
.gallery-FLX .box img, .gallery-FLX .TFLX1 .box2 img, .TFLX1 .gallery-FLX .box2 img {
  display: block;
}
.gallery-FLX .box h3, .gallery-FLX .box .title h4, .gallery-FLX .box .title3 h4, .title .gallery-FLX .box h4, .title3 .gallery-FLX .box h4, .gallery-FLX .TFLX1 .box2 h3, .gallery-FLX .TFLX1 .box2 .title h4, .gallery-FLX .TFLX1 .box2 .title3 h4, .title .gallery-FLX .TFLX1 .box2 h4, .title3 .gallery-FLX .TFLX1 .box2 h4, .TFLX1 .gallery-FLX .box2 h3, .TFLX1 .gallery-FLX .box2 .title h4, .TFLX1 .gallery-FLX .box2 .title3 h4, .title .TFLX1 .gallery-FLX .box2 h4, .title3 .TFLX1 .gallery-FLX .box2 h4 {
  display: none;
}
.gallery-FLX .box div a, .gallery-FLX .TFLX1 .box2 div a, .TFLX1 .gallery-FLX .box2 div a {
  background: #f1890f;
  color: #fff;
  padding: 5px;
  display: block;
  width: 200px;
  margin: 0 auto;
  text-align: center;
}
.gallery-FLX .box article, .gallery-FLX .TFLX1 .box2 article, .TFLX1 .gallery-FLX .box2 article {
  height: 100% !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 640px) {
  .gallery-FLX {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .gallery-FLX .box, .gallery-FLX .TFLX1 .box2, .TFLX1 .gallery-FLX .box2 {
    width: 90%;
    margin-bottom: 15px;
  }
}

.en-font {
  font-family: "Lato", serif;
}

.page-title-wrap {
  position: relative;
  padding: 10% 0 5% 0 !important;
}
@media only screen and (max-width: 640px) {
  .page-title-wrap {
    padding: 5% 0 !important;
  }
}

.page-title-inner {
  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/ptn2.png) repeat center top;
  background-size: auto;
  z-index: -1;
}
.decoline2 {
  position: absolute;
  background: url(../images/common/mokomoko_line.png) repeat-x center bottom;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  width: 100%;
  height: 12px;
  display: block;
}

.page-title .sub-ttl {
  font-size: 1.875rem;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 30px;
}
@media (max-width: 1200px) {
  .page-title .sub-ttl {
    font-size: calc(1.3125rem + 0.75vw);
  }
}
.page-title .sub-ttl:after {
  content: "";
  background: url(../images/common/deco1.png) no-repeat center top;
  width: 248px;
  height: 23px;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
}
.page-title h1 {
  font-size: 2.25rem;
  color: #000;
  font-weight: 500;
  margin-bottom: 20px;
}
@media (max-width: 1200px) {
  .page-title h1 {
    font-size: calc(1.35rem + 1.2vw);
  }
}

.title h2, .title3 h2 {
  color: #004c22;
  font-size: 1.5625rem;
  padding: 0.4em 0.5em; /*文字の上下 左右の余白*/
  background: #ddd;
  position: relative;
  border-left: solid 5px #009342; /*左線*/
  border-bottom: solid 3px #ccc; /*下線*/
}
@media (max-width: 1200px) {
  .title h2, .title3 h2 {
    font-size: calc(1.28125rem + 0.375vw);
  }
}
.title h3, .title3 h3, .title h4, .title3 h4 {
  font-size: 1.25rem;
  color: #004c22;
  border-bottom: 2px dashed #ccc;
  position: relative;
  padding-left: 30px;
}
.title h3:before, .title3 h3:before, .title h4:before, .title3 h4:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f06c"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.25rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #009342; /*アイコン色*/
}
@media only screen and (max-width: 640px) {
  .title h3, .title3 h3, .title h4, .title3 h4 {
    padding-left: 25px;
  }
}
@media only screen and (max-width: 834px) {
  .title h4, .title3 h4 {
    font-size: 18px;
  }
}

.title-train h3, .title-bus h3, .title-train .title h4, .title-train .title3 h4, .title-bus .title h4, .title-bus .title3 h4, .title .title-train h4, .title3 .title-train h4, .title .title-bus h4, .title3 .title-bus h4 {
  font-size: 1.25rem;
  color: #004c22;
  border-bottom: 2px dashed #ccc;
  position: relative;
  padding-left: 30px;
}
.title-train h3:before, .title-bus h3:before, .title-train .title h4:before, .title-train .title3 h4:before, .title-bus .title h4:before, .title-bus .title3 h4:before, .title .title-train h4:before, .title3 .title-train h4:before, .title .title-bus h4:before, .title3 .title-bus h4:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f239"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.25rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #009342; /*アイコン色*/
}
@media only screen and (max-width: 640px) {
  .title-train h3, .title-bus h3, .title-train .title h4, .title-train .title3 h4, .title-bus .title h4, .title-bus .title3 h4, .title .title-train h4, .title3 .title-train h4, .title .title-bus h4, .title3 .title-bus h4 {
    padding-left: 25px;
  }
}

.title-bus h3:before, .title-bus .title h4:before, .title-bus .title3 h4:before, .title .title-bus h4:before, .title3 .title-bus h4:before {
  content: "\f207"; /*アイコンのユニコード*/
}

.title2 h3, .title2 h4 {
  font-size: 1.25rem;
  color: #004c22;
  padding-left: 25px;
  position: relative;
  border-bottom: 1px solid #ccc;
  margin: 20px auto 10px auto;
}
.title2 h3:before, .title2 h4:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f276"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.5625rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #f1890f; /*アイコン色*/
  -moz-transform: rotate(-20deg);
  -webkit-transform: rotate(-20deg);
  -o-transform: rotate(-20deg);
  -ms-transform: rotate(-20deg);
}
@media (max-width: 1200px) {
  .title2 h3:before, .title2 h4:before {
    font-size: calc(1.28125rem + 0.375vw);
  }
}
.title-center01 h2 {
  position: relative;
  color: #158b2b;
  font-size: 20px;
  padding: 10px 0;
  text-align: center;
  margin: 1.5em 0;
}
.title-center01 h2:before {
  content: "";
  position: absolute;
  top: -8px;
  left: 50%;
  width: 150px;
  height: 58px;
  border-radius: 50%;
  border: 5px solid #a6ddb0;
  border-left-color: transparent;
  border-right-color: transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media only screen and (max-width: 640px) {
  .title3 h2 {
    font-size: 18px;
  }
}

.step-title h2, .staff-title h2, .step-title2 h2 {
  color: #004c22;
  font-weight: bold;
  font-size: 1.5625rem;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  position: relative;
  border-top: solid 2px rgba(0, 76, 34, 0.5);
  border-bottom: solid 2px rgba(0, 76, 34, 0.5);
  background: #e2eee7;
  line-height: 1.4;
  padding: 0.2em;
}
@media (max-width: 1200px) {
  .step-title h2, .staff-title h2, .step-title2 h2 {
    font-size: calc(1.28125rem + 0.375vw);
  }
}
.step-title h2:after, .staff-title h2:after, .step-title2 h2:after {
  /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 pro", "Lato", serif;
  content: "\f406  STAFF";
  font-size: 0.875rem;
  background: #009342;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 3px 3px 0 0;
  padding: 5px 10px 3px;
  line-height: 1;
  letter-spacing: 0.05em;
}
.step-title h2 span, .staff-title h2 span, .step-title2 h2 span {
  font-size: 1.25rem;
  color: #333;
  font-weight: normal;
}
.step-title h3, .staff-title h3, .step-title2 h3, .step-title .title h4, .staff-title .title h4, .step-title2 .title h4, .title .step-title h4, .title .staff-title h4, .title .step-title2 h4, .step-title .title3 h4, .staff-title .title3 h4, .step-title2 .title3 h4, .title3 .step-title h4, .title3 .staff-title h4, .title3 .step-title2 h4 {
  font-size: 1.5rem;
  background: #eee;
  color: #009342;
  position: relative;
  border-top: solid 2px #f1890f;
  border-bottom: solid 2px #f1890f;
  line-height: 1.4;
  padding: 0.2em;
}
@media (max-width: 1200px) {
  .step-title h3, .staff-title h3, .step-title2 h3, .step-title .title h4, .staff-title .title h4, .step-title2 .title h4, .title .step-title h4, .title .staff-title h4, .title .step-title2 h4, .step-title .title3 h4, .staff-title .title3 h4, .step-title2 .title3 h4, .title3 .step-title h4, .title3 .staff-title h4, .title3 .step-title2 h4 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.step-title h3:after, .staff-title h3:after, .step-title2 h3:after, .step-title .title h4:after, .staff-title .title h4:after, .step-title2 .title h4:after, .title .step-title h4:after, .title .staff-title h4:after, .title .step-title2 h4:after, .step-title .title3 h4:after, .staff-title .title3 h4:after, .step-title2 .title3 h4:after, .title3 .step-title h4:after, .title3 .staff-title h4:after, .title3 .step-title2 h4:after {
  /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 pro", Montserrat, sans-serif;
  content: "\f5ad  point";
  background: #f1890f;
  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-title2 h3:after, .step-title2 .title h4:after, .title .step-title2 h4:after, .step-title2 .title3 h4:after, .title3 .step-title2 h4:after {
  content: "\f4b6  voice";
}

.step-title3 h2, .step-title3 h3, .step-title3 .title h4, .title .step-title3 h4, .step-title3 .title3 h4, .title3 .step-title3 h4 {
  font-size: 1.25rem;
  color: #004c22;
  border-bottom: 1px solid #ccc;
  padding-bottom: 5px;
}
.step-title3 h2 .sub, .step-title3 h3 .sub, .step-title3 .title h4 .sub, .title .step-title3 h4 .sub, .step-title3 .title3 h4 .sub, .title3 .step-title3 h4 .sub {
  background: #009342;
  font-family: "Lato", serif;
  color: #fff;
  font-weight: 500;
  padding: 5px 10px;
  margin-right: 5px;
}

.staff-title h2 {
  font-size: 1.5rem;
  line-height: 1.5em;
}
@media (max-width: 1200px) {
  .staff-title h2 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.staff-title h2:after {
  font-family: "Font Awesome 5 pro";
  content: "\f7f3  STAFF";
}

.land-title h2 {
  font-size: 1.5rem;
  color: #004c22;
  border-bottom: 2px dashed #ccc;
  position: relative;
  padding-left: 35px;
}
@media (max-width: 1200px) {
  .land-title h2 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.land-title h2:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f69a"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.875rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #00b250; /*アイコン色*/
}
@media (max-width: 1200px) {
  .land-title h2:before {
    font-size: calc(1.3125rem + 0.75vw);
  }
}
.land-title h3, .land-title .title h4, .title .land-title h4, .land-title .title3 h4, .title3 .land-title h4 {
  font-size: 1.125rem;
  color: #004c22;
  border-bottom: 2px dashed #ccc;
  position: relative;
  padding-left: 35px;
}
.land-title h3:before, .land-title .title h4:before, .title .land-title h4:before, .land-title .title3 h4:before, .title3 .land-title h4:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f69a"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.875rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #00b250; /*アイコン色*/
}
@media (max-width: 1200px) {
  .land-title h3:before, .land-title .title h4:before, .title .land-title h4:before, .land-title .title3 h4:before, .title3 .land-title h4:before {
    font-size: calc(1.3125rem + 0.75vw);
  }
}

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

.info-FLX {
  display: flex;
}
.info-FLX .box, .info-FLX .TFLX1 .box2, .TFLX1 .info-FLX .box2 {
  width: 48%;
  margin: 1%;
}
.info-FLX .box-time {
  overflow-x: auto;
  white-space: nowrap;
}
@media only screen and (max-width: 834px) {
  .info-FLX {
    flex-direction: column;
  }
  .info-FLX .box, .info-FLX .TFLX1 .box2, .TFLX1 .info-FLX .box2 {
    width: 95%;
    margin: 0 auto 15px auto;
  }
}

.faq-link {
  display: flex;
  justify-content: center;
}
.faq-link .box, .faq-link .TFLX1 .box2, .TFLX1 .faq-link .box2 {
  width: 31.333%;
  margin: 1%;
  min-width: 300px;
}
.faq-link .box div a, .faq-link .TFLX1 .box2 div a, .TFLX1 .faq-link .box2 div a {
  display: block;
  text-align: center;
  color: #fff;
  background: #f1890f;
  padding: 10px;
}
.faq-link .box div a:hover, .faq-link .TFLX1 .box2 div a:hover, .TFLX1 .faq-link .box2 div a:hover {
  opacity: 1 !important;
  background: #009342;
  transition: 0.5s;
}

.menu-TBL table {
  table-layout: auto !important;
}

.service-UL {
  border: 10px solid rgba(241, 137, 15, 0.5);
  padding: 10px;
}
.service-UL li {
  font-size: 1.125rem;
  padding-left: 50px;
  line-height: 2em;
  font-weight: bold;
  position: relative;
}
.service-UL li:after {
  top: 0;
  bottom: 0;
  left: 0;
  position: absolute;
  content: "";
  background: url(../images/common/checkbox.png) no-repeat;
  width: 44px;
  height: 32px;
  background-size: contain;
  background-position: center;
  display: block;
  margin: auto;
}
@media only screen and (max-width: 640px) {
  .service-UL li {
    font-size: 1.125rem;
    line-height: 2em;
    border-bottom: 1px dotted #ccc;
  }
}

.service-txt {
  font-size: 1.5rem;
  font-weight: bold;
  color: #009342;
}
@media (max-width: 1200px) {
  .service-txt {
    font-size: calc(1.275rem + 0.3vw);
  }
}

.voice-TBL table td img {
  display: block;
  width: 100% !important;
  height: 300px !important;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.sp1 {
  background-image: linear-gradient(transparent 0.7em, #ff0000 0, #ff0000 calc(0.7em + 1px), transparent 0, transparent calc(0.7em + 3px), #ff0000 0, #ff0000 calc(0.7em + 4px), transparent 0);
}

.sp2 {
  color: #ff0000;
  font-weight: bold;
  font-size: 1.5rem;
}
@media (max-width: 1200px) {
  .sp2 {
    font-size: calc(1.275rem + 0.3vw);
  }
}

.staff-FLX {
  max-width: 1000px;
  margin: 0 auto;
}
.staff-FLX .box, .staff-FLX .TFLX1 .box2, .TFLX1 .staff-FLX .box2 {
  overflow: visible !important;
  width: 27.333%;
  margin: 3%;
  background: #009342;
  border-radius: 5px;
  padding: 10px;
  position: relative;
}
.staff-FLX .box a, .staff-FLX .TFLX1 .box2 a, .TFLX1 .staff-FLX .box2 a {
  display: block;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
.staff-FLX .box a:hover, .staff-FLX .TFLX1 .box2 a:hover, .TFLX1 .staff-FLX .box2 a:hover {
  opacity: 1 !important;
}
.staff-FLX .box a:hover img, .staff-FLX .TFLX1 .box2 a:hover img, .TFLX1 .staff-FLX .box2 a:hover img {
  transform: scale(1.2, 1.2);
  transition: 1s all;
}
.staff-FLX .box a img, .staff-FLX .TFLX1 .box2 a img, .TFLX1 .staff-FLX .box2 a img {
  display: block;
  margin: 0 auto;
  width: 100% !important;
  transition: 1s all;
}
.staff-FLX .box h3, .staff-FLX .TFLX1 .box2 h3, .TFLX1 .staff-FLX .box2 h3, .staff-FLX .box .title h4, .title .staff-FLX .box h4, .staff-FLX .TFLX1 .box2 .title h4, .title .staff-FLX .TFLX1 .box2 h4, .TFLX1 .staff-FLX .box2 .title h4, .title .TFLX1 .staff-FLX .box2 h4, .staff-FLX .box .title3 h4, .title3 .staff-FLX .box h4, .staff-FLX .TFLX1 .box2 .title3 h4, .title3 .staff-FLX .TFLX1 .box2 h4, .TFLX1 .staff-FLX .box2 .title3 h4, .title3 .TFLX1 .staff-FLX .box2 h4 {
  display: none;
}
.staff-FLX .box div, .staff-FLX .TFLX1 .box2 div, .TFLX1 .staff-FLX .box2 div {
  margin: 5px auto;
  color: #fff;
}
.staff-FLX .box div .top-con2-ttl, .staff-FLX .TFLX1 .box2 div .top-con2-ttl, .TFLX1 .staff-FLX .box2 div .top-con2-ttl {
  font-size: 1rem;
  border-bottom: 1px solid #fff;
  padding-bottom: 5px;
}
.staff-FLX .box div .top-con2-txt, .staff-FLX .TFLX1 .box2 div .top-con2-txt, .TFLX1 .staff-FLX .box2 div .top-con2-txt {
  font-size: 0.8125rem;
}
.staff-FLX .box:before, .staff-FLX .TFLX1 .box2:before, .TFLX1 .staff-FLX .box2:before {
  content: "";
  background: url(../images/common/deco2.png) no-repeat center top;
  width: 50px;
  height: 25px;
  position: absolute;
  top: -25px;
  right: 0;
  left: 0;
  margin: 0 auto;
}
.staff-FLX i {
  display: none !important;
}
@media only screen and (max-width: 834px) {
  .staff-FLX .box, .staff-FLX .TFLX1 .box2, .TFLX1 .staff-FLX .box2 {
    width: 46%;
    margin: 2% 2% 30px 2%;
  }
}

.staff-TBL .txt h3, .staff-TBL .txt .title h4, .title .staff-TBL .txt h4, .staff-TBL .txt .title3 h4, .title3 .staff-TBL .txt h4 {
  border-bottom: 1px dotted #ccc;
  color: #009342;
  font-weight: bold;
}

.table-template02 {
  background: rgba(0, 76, 34, 0.1);
  border: 1px solid #e5e3e1;
  padding: 8px;
}
.table-template02 td {
  padding: 0 8px !important;
}
.table-template02 .publish div {
  font-size: 0.875rem;
  font-family: adobe-garamond-pro, serif;
  font-style: italic;
  font-weight: 400;
  text-align: right;
}
.table-template02 .label div {
  display: inline-block;
}
.table-template02 .label div span {
  display: block;
  color: #fff;
  padding: 5px 10px;
}
.table-template02 .sm-title h2 {
  margin: 10px;
  color: #f1890f;
  font-size: 1.25rem;
  font-style: oblique;
}
.table-template02 .date {
  padding-bottom: 0 !important;
}
.table-template02 .date div {
  font-size: 14px;
}
.table-template02 .date div:before {
  content: "\f073";
  font-family: FontAwesome;
  padding-right: 0.6em;
}
.table-template02 .place {
  padding-top: 0 !important;
}
.table-template02 .place div {
  font-size: 14px;
}
.table-template02 .place div:before {
  content: "\f3c5";
  font-family: "Font Awesome 5 Pro";
  padding-right: 0.6em;
  font-weight: 900;
}
.table-template02 .text div {
  background: #fff;
  padding: 12px;
  font-size: 14px;
}

.rs-tel {
  font-size: 1.5rem;
  color: #004c22 !important;
  font-family: century-gothic, sans-serif;
  font-style: normal;
  font-weight: 400;
}
@media (max-width: 1200px) {
  .rs-tel {
    font-size: calc(1.275rem + 0.3vw);
  }
}
.rs-tel a {
  color: #004c22;
}
.rs-tel:before {
  /*
   font-family: "Font Awesome 5 Free";
   content: "\f0c4";
   font-weight: 600;
  */
  content: "";
  background: url(../images/common/header_tel_icon.png) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 35px;
  height: 35px;
  vertical-align: middle;
  padding-right: 5px;
}

.list01 dl, .list02 dl {
  border-bottom: 1px dashed #333;
}
.list01 dl dt, .list02 dl dt {
  border: none !important;
  background: none !important;
}
.list01 dl dd, .list02 dl dd {
  border: none !important;
  background: none !important;
  text-align: right !important;
  min-width: 107px;
  color: #8a4609;
  font-weight: bold;
}

.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 #333;
}
.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;
  }
}

.faq table td {
  border: none;
}

.faq-q span, .faq-a span {
  width: 40px;
  height: 40px;
  display: block;
  background: #009342;
  line-height: 40px;
  border-radius: 5px;
  color: #fff;
  font-size: 1.5rem;
}
@media (max-width: 1200px) {
  .faq-q span, .faq-a span {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 640px) {
  .faq-q, .faq-a {
    background: #009342;
    padding: 0 !important;
  }
  .faq-q span, .faq-a span {
    display: inline-block;
  }
}

.faq-a span {
  background: #f1890f;
}
@media only screen and (max-width: 640px) {
  .faq-a {
    background: #f1890f;
  }
}

.faq-q-txt {
  font-weight: bold;
  color: #004c22;
}
@media screen and (min-width: 640px) {
  .faq-q-txt {
    border-bottom: 1px dashed #ccc !important;
  }
}

#blog-title {
  text-align: center !important;
}

.blog {
  max-width: 1200px;
  margin: 80px auto 0;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
  .blog {
    margin: 50px auto 0;
  }
}
@media only screen and (max-width: 640px) {
  .blog {
    margin: 30px auto 0;
  }
}
.blog .wrap {
  display: flex;
}
.blog .wrap aside {
  width: 28%;
  margin: 1%;
}
.blog .wrap aside nav {
  line-height: 2em;
}
.blog .wrap aside nav h3, .blog .wrap aside nav .title h4, .title .blog .wrap aside nav h4, .blog .wrap aside nav .title3 h4, .title3 .blog .wrap aside nav h4 {
  background: #009342 !important;
}
.blog .wrap aside nav ul li {
  border-bottom: 1px dashed #ccc;
}
.blog .wrap aside nav ul li .blogside {
  color: #333;
}
.blog .wrap aside nav ul li .blogside span {
  color: #009342;
  margin-left: 5px;
}
.blog .wrap aside nav > a {
  background: #f1890f !important;
}
.blog .wrap #contents {
  width: 68%;
  margin: 1%;
  min-width: auto;
}
.blog .wrap #contents article .date {
  color: #009342 !important;
}
.blog .wrap #contents article div img {
  width: 48%;
  margin: 1%;
}
.blog .wrap #contents article .date {
  color: #009342 !important;
}
.blog .wrap #contents article h2 {
  background: #f1890f;
  color: #fff !important;
}
@media only screen and (max-width: 834px) {
  .blog .wrap {
    flex-direction: column;
  }
  .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 div {
    flex-direction: column;
  }
  .blog .wrap #contents article div img {
    width: 100%;
  }
}

.bg_100per_wrap {
  position: relative;
  padding: 50px 0 !important;
  margin-bottom: 60px !important;
}

.bg_100per_inner {
  width: 1000%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  margin: 0% 0% 0% -500%;
  background: #f7ead4;
  z-index: -1;
}

.bg_100per_wrap {
  position: relative;
  padding: 80px 0 !important;
  margin-bottom: 60px 0 !important;
}

.bg_100per_inner {
  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/contents/cont-bg.jpg) repeat center top;
  background-size: cover;
  z-index: -1;
}

.hoverBgContents {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.hoverBgContents > .hoverBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: -1;
  pointer-events: none;
  transition: transform 0.8s;
  background-position: center;
}
.hoverBgContents:hover > .hoverBg {
  transform: scale(1.2);
}

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

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

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

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

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

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

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

.works-FLX {
  display: flex;
  flex-wrap: wrap;
  align-items: top;
}
.works-FLX a:hover {
  opacity: 1 !important;
}
.works-FLX .boxL {
  width: 43%;
  margin: 1%;
}
.works-FLX .boxL ul li article div {
  display: none;
}
.works-FLX .boxR {
  width: 53%;
  margin: 1%;
}
.works-FLX .boxR ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.works-FLX .boxR ul li {
  width: 24%;
  margin: 0 0.5% 1% 0.5%;
}
.works-FLX .boxR ul li article {
  position: relative;
}
.works-FLX .boxR ul li article:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.works-FLX .boxR ul li article img {
  position: absolute;
  top: 0;
  right: 0;
  height: 100% !important;
  width: 100% !important;
  object-fit: cover;
  font-family: "object-fit: cover;";
  display: block;
}
.works-FLX .boxR ul li article div {
  display: none;
}
@media only screen and (max-width: 834px) {
  .works-FLX {
    flex-direction: column;
    align-items: center;
  }
  .works-FLX .boxL {
    width: 90%;
  }
  .works-FLX .boxR {
    width: 95%;
  }
}
@media only screen and (max-width: 640px) {
  .works-FLX .boxR ul li {
    width: 48%;
  }
}

.modaal-close {
  position: absolute !important;
  right: 6px !important;
  top: 6px !important;
  background: #e1e1e1 !important;
  width: 50px !important;
  height: 50px !important;
}
.modaal-close:hover {
  opacity: 0.7 !important;
}
.modaal-close:before, .modaal-close:after {
  background: #000 !important;
}

.modaal-content-container table td {
  padding: 10px;
}

.modaal-container {
  background: none !important;
  color: #fff !important;
}

@media only screen and (max-width: 640px) {
  .modaal-wrapper table td {
    display: block !important;
    border: none !important;
  }
}

.modaalBox {
  display: none;
}

/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
/* title */
.midashi h2 {
  color: #fff;
  line-height: 2em;
  font-size: 40px;
  font-weight: bold;
}
@media only screen and (max-width: 640px) {
  .midashi h2 {
    font-size: 20px;
  }
}

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

article.recruit {
  padding: 0 !important;
  margin: 0 !important;
  border: none;
}

.recruit_title {
  position: relative;
  z-index: -10;
  padding: 17% 0 5% 0 !important;
  text-align: center;
}
.recruit_title ul {
  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/ptn2.png) repeat center top;
  background-size: auto;
  z-index: -1;
}
.recruit_title h1 {
  font-size: 2.25rem;
  color: #009342;
  font-weight: 500;
  position: relative;
  padding-bottom: 30px;
}
@media (max-width: 1200px) {
  .recruit_title h1 {
    font-size: calc(1.35rem + 1.2vw);
  }
}
.recruit_title h1:after {
  content: "";
  background: url(../images/common/deco1.png) no-repeat center bottom;
  background-size: contain;
  width: 100px;
  height: 15px;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
}
@media screen and (min-width: 1201px) and (max-width: 1400px) {
  .recruit_title h1:after {
    width: 80px;
    height: 10px;
  }
}
@media screen and (min-width: 1201px) and (max-width: 1400px) {
  .recruit_title h1 {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 1201px) and (max-width: 1400px) and (max-width: 1200px) {
  .recruit_title h1 {
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media only screen and (max-width: 834px) {
  .recruit_title h1 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 834px) {
  .recruit_title {
    padding: 70px 0 20px 0 !important;
  }
}

.recruit_gists {
  display: flex;
}
.recruit_gists img {
  object-fit: cover;
  width: 40%;
}
.recruit_gists h3 {
  font-size: 1.25rem;
  color: #004c22;
  border-bottom: 2px dashed #ccc;
  position: relative;
  padding-left: 30px;
  margin-bottom: 20px;
}
.recruit_gists h3:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f06c"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.25rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #009342; /*アイコン色*/
}
@media only screen and (max-width: 640px) {
  .recruit_gists h3 {
    padding-left: 25px;
  }
}
@media only screen and (max-width: 834px) {
  .recruit_gists {
    flex-direction: column;
  }
  .recruit_gists img {
    width: 100%;
  }
}

.recruit_detail h2, .recruit_flow h2 {
  font-size: 1.25rem;
  color: #004c22;
  border-bottom: 2px dashed #ccc;
  position: relative;
  padding-left: 30px;
  margin-bottom: 20px;
}
.recruit_detail h2:before, .recruit_flow h2:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f06c"; /*アイコンのユニコード*/
  font-weight: 600;
  position: absolute; /*絶対位置*/
  font-size: 1.25rem;
  /*サイズ*/
  left: 0; /*アイコンの位置*/
  top: 0; /*アイコンの位置*/
  color: #009342; /*アイコン色*/
}
@media only screen and (max-width: 640px) {
  .recruit_detail h2, .recruit_flow h2 {
    padding-left: 25px;
  }
}

/* ================================================================= 
 License : e-TRUST Inc.
 File name : common_style.css
 Style : common_style
================================================================= */
/*
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: #009342;
  text-decoration: none;
}
.zdo_drawer_menu a:visited {
  color: #009342;
}
.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: 42px;
  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;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper.open {
  transform: translate(0);
}

/*+++ 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;
}/*# sourceMappingURL=common_style.css.map */