@charset "UTF-8";
/* ===================
共通変数
===================*/
/* ===================
ブレークポイント
===================*/
/* ===================
rem計算
===================*/
/* ===================
コンテンツサイズ
===================*/
/* ａタグ基本スタイル */
/* buttonデフォルトのスタイルをリセット */
/* スタイルを一部リセット */
/* #Base
   -------------------------------------------------------------------------- */
/**
* Baseレイヤーにはプロジェクトにおける、基本的なベーススタイルを定義します
* 要素セレクタや属性セレクタなど、詳細度はできるかぎり低く保っておきます
* 基本的にclass属性は使用しません
*/
body {
  font-family: "Arial", "BIZ UDPGothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  color: #000000;
}

html {
  scroll-behavior: smooth;
}
@media print, screen and (min-width: 768px) {
  html {
    scroll-padding-top: 159px;
  }
}
@media only screen and (max-width: 767px) {
  html {
    scroll-padding-top: 51px;
  }
}

@media only screen and (max-width: 767px) {
  #scroll_area_Off {
    overflow: hidden;
  }
}

a:link, a:visited, a:hover, a:active {
  color: #000000;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a:hover img {
  opacity: 0.7;
}

/* -----------------------------------------------------------------------------
   #Spacing
   -------------------------------------------------------------------------- */
/*
  bootstrapのユーティリティを補う為の
  margin,paddingの汎用クラス
*/
/* -----------------------------------------------------------------------------
   #Margin
   -------------------------------------------------------------------------- */
.u-m10 {
  margin: 10px !important;
}

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

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

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

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

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

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

.u-mt60 {
  margin-top: 60px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

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

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

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

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

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

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

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

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-mb120 {
  margin-bottom: 120px !important;
}

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

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

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

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

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

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

@media only screen and (max-width: 767px) {
  .u-m10_sp {
    margin: 10px !important;
  }
  .u-mt0_sp {
    margin-top: 0px !important;
  }
  .u-mt10_sp {
    margin-top: 10px !important;
  }
  .u-mt20_sp {
    margin-top: 20px !important;
  }
  .u-mt30_sp {
    margin-top: 30px !important;
  }
  .u-mt40_sp {
    margin-top: 40px !important;
  }
  .u-mt50_sp {
    margin-top: 50px !important;
  }
  .u-mt60_sp {
    margin-top: 60px !important;
  }
  .u-mb0_sp {
    margin-bottom: 0 !important;
  }
  .u-mb10_sp {
    margin-bottom: 10px !important;
  }
  .u-mb20_sp {
    margin-bottom: 20px !important;
  }
  .u-mb30_sp {
    margin-bottom: 30px !important;
  }
  .u-mb40_sp {
    margin-bottom: 40px !important;
  }
  .u-mb50_sp {
    margin-bottom: 50px !important;
  }
  .u-mb60_sp {
    margin-bottom: 60px !important;
  }
  .u-mb80_sp {
    margin-bottom: 80px !important;
  }
  .u-mr10_sp {
    margin-right: 10px !important;
  }
  .u-mr20_sp {
    margin-right: 20px !important;
  }
  .u-mr30_sp {
    margin-right: 30px !important;
  }
  .u-ml0_sp {
    margin-left: 0 !important;
  }
  .u-ml10_sp {
    margin-left: 10px !important;
  }
  .u-ml20_sp {
    margin-left: 20px !important;
  }
  .u-ml30_sp {
    margin-left: 30px !important;
  }
}
/* -----------------------------------------------------------------------------
   #Padding
   -------------------------------------------------------------------------- */
.u-p10 {
  padding: 10px !important;
}

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

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

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

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

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

.u-pt60 {
  padding-top: 60px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pt80 {
  padding-top: 80px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

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

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

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

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

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

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

.u-pb80 {
  padding-bottom: 80px !important;
}

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

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

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

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

.u-pl90 {
  padding-left: 90px !important;
}

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

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

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

@media only screen and (max-width: 767px) {
  .u-p10_sp {
    padding: 10px !important;
  }
  .u-pt0_sp {
    padding-top: 0px !important;
  }
  .u-pt10_sp {
    padding-top: 10px !important;
  }
  .u-pt20_sp {
    padding-top: 20px !important;
  }
  .u-pt30_sp {
    padding-top: 30px !important;
  }
  .u-pt40_sp {
    padding-top: 40px !important;
  }
  .u-pt50_sp {
    padding-top: 50px !important;
  }
  .u-pt60_sp {
    padding-top: 60px !important;
  }
  .u-pt70_sp {
    padding-top: 70px !important;
  }
  .u-pt80_sp {
    padding-top: 80px !important;
  }
  .u-pt90_sp {
    padding-top: 90px !important;
  }
  .u-pt100_sp {
    padding-top: 100px !important;
  }
  .u-pb10_sp {
    padding-bottom: 10px !important;
  }
  .u-pb20_sp {
    padding-bottom: 20px !important;
  }
  .u-pb30_sp {
    padding-bottom: 30px !important;
  }
  .u-pb40_sp {
    padding-bottom: 40px !important;
  }
  .u-pb50_sp {
    padding-bottom: 50px !important;
  }
  .u-pb60_sp {
    padding-bottom: 60px !important;
  }
  .u-pl0_sp {
    padding-left: 0px !important;
  }
  .u-pl10_sp {
    padding-left: 10px !important;
  }
  .u-pl20_sp {
    padding-left: 20px !important;
  }
  .u-pl30_sp {
    padding-left: 30px !important;
  }
  .u-pl90_sp {
    padding-left: 90px !important;
  }
  .u-pr10_sp {
    padding-right: 10px !important;
  }
  .u-pr0_sp {
    padding-right: 0px !important;
  }
  .u-pr20_sp {
    padding-right: 20px !important;
  }
  .u-pr30_sp {
    padding-right: 30px !important;
  }
}
/* -----------------------------------------------------------------------------
   #Text
   -------------------------------------------------------------------------- */
/*
  bootstrapのユーティリティを補う為の
  テキスト系の汎用クラス
*/
.u-serif {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "Meiryo", serif;
}

.u-red {
  color: #C7161E !important;
}

.u-black {
  color: #000000 !important;
}

.u-lineheight_175 {
  line-height: 1.75;
}

.u-lineheight_200 {
  line-height: 2;
}

.u-ws_nowrap {
  white-space: nowrap;
}

.u-f10 {
  font-size: 0.625rem !important;
}

.u-f11 {
  font-size: 0.6875rem !important;
}

.u-f12 {
  font-size: 0.75rem !important;
}

.u-f13 {
  font-size: 0.8125rem !important;
}

.u-f14 {
  font-size: 0.875rem !important;
}

.u-f15 {
  font-size: 0.9375rem !important;
}

.u-f16 {
  font-size: 1rem !important;
}

.u-f17 {
  font-size: 1.0625rem !important;
}

.u-f18 {
  font-size: 1.125rem !important;
}

.u-f19 {
  font-size: 1.1875rem !important;
}

.u-f20 {
  font-size: 1.25rem !important;
}

.u-f21 {
  font-size: 1.3125rem !important;
}

.u-f22 {
  font-size: 1.375rem !important;
}

.u-f23 {
  font-size: 1.4375rem !important;
}

.u-f24 {
  font-size: 1.5rem !important;
}

.u-f25 {
  font-size: 1.5625rem !important;
}

.u-f26 {
  font-size: 1.625rem !important;
}

.u-f27 {
  font-size: 1.6875rem !important;
}

.u-f28 {
  font-size: 1.75rem !important;
}

.u-f29 {
  font-size: 1.8125rem !important;
}

.u-f30 {
  font-size: 1.875rem !important;
}

.u-f31 {
  font-size: 1.9375rem !important;
}

.u-f32 {
  font-size: 2rem !important;
}

.u-f33 {
  font-size: 2.0625rem !important;
}

.u-f34 {
  font-size: 2.125rem !important;
}

.u-f35 {
  font-size: 2.1875rem !important;
}

.u-f36 {
  font-size: 2.25rem !important;
}

.u-f37 {
  font-size: 2.3125rem !important;
}

.u-f38 {
  font-size: 2.375rem !important;
}

.u-f39 {
  font-size: 2.4375rem !important;
}

.u-f40 {
  font-size: 2.5rem !important;
}

.u-f41 {
  font-size: 2.5625rem !important;
}

.u-f42 {
  font-size: 2.625rem !important;
}

.u-f43 {
  font-size: 2.6875rem !important;
}

.u-f44 {
  font-size: 2.75rem !important;
}

.u-f45 {
  font-size: 2.8125rem !important;
}

.u-f46 {
  font-size: 2.875rem !important;
}

.u-f47 {
  font-size: 2.9375rem !important;
}

.u-f48 {
  font-size: 3rem !important;
}

.u-f49 {
  font-size: 3.0625rem !important;
}

.u-f50 {
  font-size: 3.125rem !important;
}

.u-f55 {
  font-size: 3.4375rem !important;
}

@media only screen and (max-width: 767px) {
  .u-f10_sp {
    font-size: 0.625rem !important;
  }
  .u-f11_sp {
    font-size: 0.6875rem !important;
  }
  .u-f12_sp {
    font-size: 0.75rem !important;
  }
  .u-f13_sp {
    font-size: 0.8125rem !important;
  }
  .u-f14_sp {
    font-size: 0.875rem !important;
  }
  .u-f15_sp {
    font-size: 0.9375rem !important;
  }
  .u-f16_sp {
    font-size: 1rem !important;
  }
  .u-f17_sp {
    font-size: 1.0625rem !important;
  }
  .u-f18_sp {
    font-size: 1.125rem !important;
  }
  .u-f19_sp {
    font-size: 1.1875rem !important;
  }
  .u-f20_sp {
    font-size: 1.25rem !important;
  }
  .u-f21_sp {
    font-size: 1.3125rem !important;
  }
  .u-f22_sp {
    font-size: 1.375rem !important;
  }
  .u-f23_sp {
    font-size: 1.4375rem !important;
  }
  .u-f24_sp {
    font-size: 1.5rem !important;
  }
  .u-f25_sp {
    font-size: 1.5625rem !important;
  }
  .u-f26_sp {
    font-size: 1.625rem !important;
  }
  .u-f27_sp {
    font-size: 1.6875rem !important;
  }
  .u-f28_sp {
    font-size: 1.75rem !important;
  }
  .u-f29_sp {
    font-size: 1.8125rem !important;
  }
  .u-f30_sp {
    font-size: 1.875rem !important;
  }
  .u-f31_sp {
    font-size: 1.9375rem !important;
  }
  .u-f32_sp {
    font-size: 2rem !important;
  }
  .u-f33_sp {
    font-size: 2.0625rem !important;
  }
  .u-f34_sp {
    font-size: 2.125rem !important;
  }
  .u-f35_sp {
    font-size: 2.1875rem !important;
  }
  .u-f36_sp {
    font-size: 2.25rem !important;
  }
  .u-f37_sp {
    font-size: 2.3125rem !important;
  }
  .u-f38_sp {
    font-size: 2.375rem !important;
  }
  .u-f39_sp {
    font-size: 2.4375rem !important;
  }
  .u-f40_sp {
    font-size: 2.5rem !important;
  }
  .u-f41_sp {
    font-size: 2.5625rem !important;
  }
  .u-f42_sp {
    font-size: 2.625rem !important;
  }
  .u-f43_sp {
    font-size: 2.6875rem !important;
  }
  .u-f44_sp {
    font-size: 2.75rem !important;
  }
  .u-f45_sp {
    font-size: 2.8125rem !important;
  }
  .u-f46_sp {
    font-size: 2.875rem !important;
  }
  .u-f47_sp {
    font-size: 2.9375rem !important;
  }
  .u-f48_sp {
    font-size: 3rem !important;
  }
  .u-f49_sp {
    font-size: 3.0625rem !important;
  }
  .u-f50_sp {
    font-size: 3.125rem !important;
  }
}
/* #Show
  -------------------------------------------------------------------------- */
/*
PCとスマホの表示・非表示切り替え
*/
@media print, screen and (min-width: 768px) {
  .u-show_sp {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .u-show_sp {
    display: inherit;
  }
}

@media print, screen and (min-width: 768px) {
  .u-show_pc {
    display: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .u-show_pc {
    display: none !important;
  }
}

header {
  width: 100%;
  top: 0;
  left: 0;
  z-index: 99990;
  background-color: #fff;
}
header dl, header dt, header dd, header ul, header ol, header li, header h1, header h2, header h3, header h4, header h5, header h6, header p, header th, header td, header figure {
  margin: 0;
  padding: 0;
  font-weight: normal;
}
header ul, header ol {
  list-style: none;
}
header caption {
  padding-top: 0;
  padding-bottom: 0;
  color: #000000;
  caption-side: top;
}
header a:link, header a:visited, header a:hover, header a:active {
  color: #000000;
}
header a:hover img {
  opacity: 0.7;
}
header button {
  padding: 0;
  background-color: transparent;
  border: none;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  header h1 {
    margin-left: 50px;
  }
  header h1 img {
    width: 150px;
  }
}

@media only screen and (max-width: 767px) {
  .h_sns img {
    width: 25px;
  }
}

@media print, screen and (min-width: 768px) {
  nav {
    background-color: #F0F0F0;
  }
}

.h_gnv {
  font-size: 0.875rem;
}
@media print, screen and (min-width: 768px) {
  .h_gnv dl {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .h_gnv dd {
    display: none;
    position: absolute;
    z-index: 999;
    top: 100%;
    left: 0;
    min-width: 100%;
    white-space: nowrap;
    text-align: left;
    font-size: 0.8125rem;
  }
  .h_gnv .mega_menu dl {
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .h_gnv {
    overflow: scroll;
  }
  .h_gnv > li {
    border-bottom: 1px solid #D2D4D6;
  }
  .h_gnv > li:first-child {
    border-top: 1px solid #D2D4D6;
  }
  .h_gnv dd {
    display: none;
  }
  .h_gnv dd li {
    border: none;
  }
}

.gnv_ttl {
  text-decoration: none;
  width: 100%;
  height: 100%;
  font-size: 0.875rem;
}
@media print, screen and (min-width: 768px) {
  .gnv_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 10px;
    border-left: 1px solid #fff;
    cursor: pointer;
  }
  .gnv_ttl:hover, .gnv_ttl.is-current {
    color: #fff;
    background-color: #F90000;
    text-decoration: none;
  }
}
@media only screen and (max-width: 767px) {
  .gnv_ttl {
    display: block;
    padding: 15px;
  }
  .gnv_ttl:hover {
    background-color: #F90000;
    text-decoration: none;
    color: #fff;
  }
}
.gnv_ttl span {
  margin-left: 10px;
}
@media print, screen and (min-width: 768px) {
  .gnv_ttl span {
    display: none;
  }
}
li:first-child .gnv_ttl {
  border-left: none;
}

@media print, screen and (min-width: 768px) {
  .megamenu_wrapper {
    margin-inline: auto;
    padding-left: 0px;
    padding-right: 0px;
    width: 100%;
    max-width: 1400px;
    border: 1px solid #DCDCDC;
    background-color: #fff;
  }
}

@media print, screen and (min-width: 768px) {
  .megamenu_heading {
    width: 300px;
    background-color: #E95858;
  }
  .megamenu_heading p {
    color: #fff;
    font-size: 1.25rem;
  }
  .megamenu_heading span {
    font-size: 1rem;
  }
}

@media print, screen and (min-width: 768px) {
  .mega_menu dd {
    display: none;
    position: absolute;
    z-index: 999;
    left: 0;
    text-align: left;
  }
}

@media print, screen and (min-width: 768px) {
  .nav_welfare a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .nav_welfare a:hover {
    background-color: #eee;
  }
}

.nav_about p {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .nav_about p {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .nav_about p {
    font-size: 1rem;
  }
}
.nav_about li {
  font-size: 0.875rem;
  margin-bottom: 15px;
}
.nav_about li:last-child {
  margin-bottom: 0;
}
.nav_about a {
  text-decoration: none;
}
.nav_about a:after {
  content: "▶";
  color: #F90000;
  display: inline-block;
  margin-left: 10px;
}
.nav_about a:hover {
  text-decoration: underline;
}
@media print, screen and (min-width: 768px) {
  .nav_about {
    width: 100%;
  }
  .nav_about > div {
    border-left: 1px solid #DCDCDC;
  }
  .nav_about > div:first-child {
    border-left: none;
  }
}
@media only screen and (max-width: 767px) {
  .nav_about > div {
    border-top: 1px solid #DCDCDC;
  }
  .nav_about > div:first-child {
    border-top: none;
  }
}

.nav_store p {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .nav_store p {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .nav_store p {
    font-size: 1rem;
  }
}
.nav_store li {
  font-size: 0.875rem;
  margin-bottom: 15px;
}
.nav_store li:last-child {
  margin-bottom: 0;
}
.nav_store a {
  text-decoration: none;
}
.nav_store a:after {
  content: "▶";
  color: #F90000;
  display: inline-block;
  margin-left: 10px;
}
.nav_store a:hover {
  text-decoration: underline;
}

.dropdown_menu p {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .dropdown_menu p {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .dropdown_menu p {
    font-size: 1rem;
  }
}
.dropdown_menu li {
  font-size: 0.875rem;
  margin-bottom: 15px;
}
.dropdown_menu li:last-child {
  margin-bottom: 0;
}
.dropdown_menu a {
  text-decoration: none;
}
.dropdown_menu a:after {
  content: "▶";
  color: #F90000;
  display: inline-block;
  margin-left: 10px;
}
.dropdown_menu a:hover {
  text-decoration: underline;
}
@media print, screen and (min-width: 768px) {
  .dropdown_menu dd {
    background-color: #fff;
    border: 1px solid #DCDCDC;
  }
}

.drawer-hamburger {
  position: absolute;
  font-size: 10px;
  font-weight: bold;
  top: 0;
  width: 50px;
  padding: 7px 0 25px;
  text-align: center;
  background-color: #000;
  color: #fff;
}
.drawer-hamburger button {
  padding: 0;
  background-color: transparent;
  border: none;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
.drawer-hamburger:hover {
  background-color: #000;
}

@media only screen and (max-width: 767px) {
  .drawer-overlay {
    background-color: transparent;
  }
  .drawer--left .drawer-hamburger, .drawer--left.drawer-open .drawer-hamburger {
    left: 0px !important;
  }
  .drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
    width: 28px !important;
    height: 3px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 15px;
    -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    background-color: #fff;
  }
  .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
    position: absolute;
    top: -8px;
    left: 0;
    content: " ";
  }
  .drawer-open .drawer-hamburger-icon:before, .drawer-open .drawer-hamburger-icon:after {
    top: -5px;
  }
  .drawer-hamburger-icon:after {
    top: 0px;
  }
  .drawer-hamburger-icon:after.drawer-open {
    top: 5px;
  }
  .drawer-open .drawer-hamburger-text-open, .drawer-open .drawer-hamburger-text-close {
    opacity: 0;
  }
  .drawer-open .drawer-hamburger-text-close {
    opacity: 1;
  }
  .drawer-hamburger-text-open, .drawer-hamburger-text-close {
    width: 100%;
    position: absolute;
    left: 0;
    top: 5px;
    -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  }
  .drawer-hamburger-text-close {
    opacity: 0;
  }
  .drawer--left.drawer-open .drawer-nav {
    left: 0;
  }
  .drawer-nav {
    position: fixed;
    z-index: 101;
    top: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .drawer--left .drawer-nav {
    top: 51px !important;
    left: 100%;
    width: 100%;
    height: calc(100vh - 51px);
    overflow: auto;
    -webkit-transition: left 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: left 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  }
}
.sns_fancybox {
  text-align: center;
  font-size: 14px;
  color: #fff;
  padding: 50px 0;
}
.sns_fancybox a:link {
  color: #fff;
}
.sns_fancybox a:visited {
  color: #fff;
}
.sns_fancybox a:hover {
  color: #fff;
}
.sns_fancybox a:active {
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .sns_fancybox {
    max-width: 1000px;
  }
}
.sns_fancybox p {
  margin-bottom: 20px;
  line-height: 1.5;
}
.sns_fancybox ul {
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  .sns_fancybox ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .sns_fancybox ul {
    margin-top: 30px;
  }
}
.sns_fancybox li {
  line-height: 1.5;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .sns_fancybox li {
    margin-right: 10px;
    width: calc((100% - 20px) / 3);
  }
  .sns_fancybox li:nth-child(3n) {
    margin-right: 0;
  }
}
.sns_fancybox li img {
  margin-right: 10px;
}

.fancybox-content {
  background-color: transparent;
}
@media print, screen and (min-width: 768px) {
  .fancybox-content {
    max-width: 1030px !important;
  }
}
@media only screen and (max-width: 767px) {
  .fancybox-content {
    padding: 15px !important;
  }
}

.fancybox-close-small {
  right: 50px !important;
}
.fancybox-close-small svg {
  border: 3px solid #fff;
  border-radius: 10px;
  width: 48px;
  height: 48px;
}

footer {
  background-color: #fff;
}
footer dl, footer dt, footer dd, footer ul, footer ol, footer li, footer h1, footer h2, footer h3, footer h4, footer h5, footer h6, footer p, footer th, footer td, footer figure {
  margin: 0;
  padding: 0;
  font-weight: normal;
}
footer ul, footer ol {
  list-style: none;
}
footer caption {
  padding-top: 0;
  padding-bottom: 0;
  color: #000000;
  caption-side: top;
}
footer a:link, footer a:visited, footer a:hover, footer a:active {
  color: #000000;
}
footer a:hover img {
  opacity: 0.7;
}
footer small {
  font-size: 0.8125rem;
  color: #fff;
  background-color: #F90000;
}
footer a {
  text-decoration: none;
}
footer a:hover {
  text-decoration: underline;
}

.f_nav > ul {
  border-right: 1px solid #C8C8C8;
}
.f_nav > ul > li {
  border-left: 1px solid #C8C8C8;
}
.f_nav .fnav_ttl {
  color: #F90000;
  font-size: 1rem;
  font-weight: bold;
}
.f_nav .fnav_ttl a:link {
  color: #F90000;
}
.f_nav .fnav_ttl a:visited {
  color: #F90000;
}
.f_nav .fnav_ttl a:hover {
  color: #F90000;
}
.f_nav .fnav_ttl a:active {
  color: #F90000;
}
.f_nav dd {
  font-size: 0.875rem;
  line-height: 1.75;
}

.f_nav_sp {
  background-color: #000;
}
.f_nav_sp a:link {
  color: #fff;
}
.f_nav_sp a:visited {
  color: #fff;
}
.f_nav_sp a:hover {
  color: #fff;
}
.f_nav_sp a:active {
  color: #fff;
}
.f_nav_sp a {
  border-left: 1px solid #fff;
  text-decoration: none;
}
.f_nav_sp a:first-child {
  border-left: none;
}
.f_nav_sp a:hover {
  background-color: #666;
  text-decoration: none;
}

.pageTop {
  position: absolute;
}
@media print, screen and (min-width: 768px) {
  .pageTop {
    right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .pageTop {
    right: 0;
  }
}

/* #Content
-------------------------------------------------------------------------- */
/*doc

*/
@media print, screen and (min-width: 768px) {
  #contents {
    margin-top: 159px;
  }
}
@media only screen and (max-width: 767px) {
  #contents {
    margin-top: 51px;
  }
}

#breadcrumb {
  margin-top: 10px;
  margin-bottom: 10px;
}
#breadcrumb * dl, #breadcrumb * dt, #breadcrumb * dd, #breadcrumb * ul, #breadcrumb * ol, #breadcrumb * li, #breadcrumb * h1, #breadcrumb * h2, #breadcrumb * h3, #breadcrumb * h4, #breadcrumb * h5, #breadcrumb * h6, #breadcrumb * p, #breadcrumb * th, #breadcrumb * td, #breadcrumb * figure {
  margin: 0;
  padding: 0;
  font-weight: normal;
}
#breadcrumb * ul, #breadcrumb * ol {
  list-style: none;
}
#breadcrumb * caption {
  padding-top: 0;
  padding-bottom: 0;
  color: #000000;
  caption-side: top;
}
#breadcrumb * a:link, #breadcrumb * a:visited, #breadcrumb * a:hover, #breadcrumb * a:active {
  color: #000000;
}
#breadcrumb * a:hover img {
  opacity: 0.7;
}
#breadcrumb li {
  list-style: none;
  display: inline-block;
  font-size: 0.75rem;
}
#breadcrumb li a:link {
  color: #000000;
}
#breadcrumb li a:visited {
  color: #000000;
}
#breadcrumb li a:hover {
  color: #000000;
}
#breadcrumb li a:active {
  color: #000000;
}
#breadcrumb li:before {
  margin: 0 8px;
  content: ">";
  color: #000000;
}
#breadcrumb li:first-child:before {
  margin: 0;
  content: "";
}

@media print, screen and (min-width: 768px) {
  a[href^=tel] {
    pointer-events: none;
  }
}

.wrapper_1400 {
  margin-inline: auto;
  padding-left: 0px;
  padding-right: 0px;
  width: 100%;
  max-width: 1400px;
}

.wrapper_1400_inner {
  margin-inline: auto;
  padding-left: 12px;
  padding-right: 12px;
  width: 100%;
  max-width: 1394px;
}

@media print, screen and (min-width: 768px) {
  .wrapper_1400_inner_pc {
    margin-inline: auto;
    padding-left: 12px;
    padding-right: 12px;
    width: 100%;
    max-width: 1394px;
  }
}

.stretched-link:hover::after {
  background-color: rgba(255, 255, 255, 0.5);
}

.layout_mainimg01 {
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .layout_mainimg01 {
    height: 360px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg01 {
    display: none;
  }
}

.layout_mainimg02 {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .layout_mainimg02 {
    display: none;
  }
}
.layout_mainimg02 .mainimg_txt {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.layout_mainimg02 h2 {
  text-align: center;
  color: #fff;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .layout_mainimg02 h2 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg02 h2 {
    font-size: 2.125rem;
  }
}
.layout_mainimg02 h2 span {
  margin-top: 10px;
  display: block;
}
@media print, screen and (min-width: 768px) {
  .layout_mainimg02 h2 span {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg02 h2 span {
    font-size: 1.25rem;
  }
}
.layout_mainimg02 img {
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .layout_mainimg02 img {
    height: 470px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg02 img {
    height: 360px;
  }
}

#js-slider li,
.js-slider li {
  visibility: hidden;
}

.bx-viewport #js-slider li,
.bx-viewport .js-slider li {
  visibility: visible;
}

.bx-wrapper {
  margin-bottom: 0 !important;
  box-shadow: none !important;
  border: none !important;
  background: transparent !important;
}
.bx-wrapper img {
  margin: 0 auto;
}

.slide_style01 .bx-wrapper .bx-pager.bx-default-pager a {
  background: white !important;
  border: 2px solid #E798A2;
  width: 16px !important;
  height: 16px !important;
  -moz-border-radius: 8px !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
}
.slide_style01 .bx-wrapper .bx-pager.bx-default-pager a:hover, .slide_style01 .bx-wrapper .bx-pager.bx-default-pager a.active, .slide_style01 .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: white !important;
  border: 2px solid #C50018;
}
.slide_style01 .bx-wrapper .bx-pager, .slide_style01 .bx-wrapper .bx-controls-auto {
  bottom: -40px !important;
}
.slide_style01 li {
  line-height: 1.75;
}
@media print, screen and (min-width: 768px) {
  .slide_style01 li {
    display: flex;
  }
}
@media print, screen and (min-width: 768px) {
  .slide_style01 figure {
    flex-shrink: 0;
    margin-bottom: 0;
    margin-right: 50px;
  }
}

.slide_style02 .bx-wrapper .bx-pager.bx-default-pager a {
  background: white !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #98B298;
  -moz-border-radius: 8px !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
}
.slide_style02 .bx-wrapper .bx-pager.bx-default-pager a:hover, .slide_style02 .bx-wrapper .bx-pager.bx-default-pager a.active, .slide_style02 .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: white !important;
  border: 2px solid #004000;
}
.slide_style02 .bx-wrapper .bx-pager, .slide_style02 .bx-wrapper .bx-controls-auto {
  bottom: -40px !important;
}
.slide_style02 li {
  line-height: 1.75;
}
@media print, screen and (min-width: 768px) {
  .slide_style02 li {
    display: flex;
  }
}
@media print, screen and (min-width: 768px) {
  .slide_style02 figure {
    flex-shrink: 0;
    margin-bottom: 0;
    margin-right: 50px;
  }
}

.slide_style03 .bx-wrapper .bx-pager.bx-default-pager a {
  background: white !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #98BBD1;
  -moz-border-radius: 8px !important;
  -webkit-border-radius: 8px !important;
  border-radius: 8px !important;
}
.slide_style03 .bx-wrapper .bx-pager.bx-default-pager a:hover, .slide_style03 .bx-wrapper .bx-pager.bx-default-pager a.active, .slide_style03 .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: white !important;
  border: 2px solid #00568E;
}
.slide_style03 .bx-wrapper .bx-pager, .slide_style03 .bx-wrapper .bx-controls-auto {
  bottom: -40px !important;
}
@media print, screen and (min-width: 768px) {
  .slide_style03 li {
    line-height: 1.75;
    display: flex;
  }
}
@media print, screen and (min-width: 768px) {
  .slide_style03 figure {
    flex-shrink: 0;
    margin-bottom: 0;
    margin-right: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .slide_style03 figure {
    margin-bottom: 10px;
  }
}

.btn_style01, .btn_style03, .btn_style02 {
  display: inline-block;
  padding: 10px;
  text-align: center;
  border-radius: 31px;
  color: #fff;
  background-color: #000;
  cursor: pointer;
  text-decoration: none;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .btn_style01, .btn_style03, .btn_style02 {
    width: 240px;
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .btn_style01, .btn_style03, .btn_style02 {
    width: 200px;
    font-size: 1rem;
  }
}
.btn_style01:link, .btn_style03:link, .btn_style02:link, .btn_style01:visited, .btn_style03:visited, .btn_style02:visited, .btn_style01:active, .btn_style03:active, .btn_style02:active, .btn_style01:hover, .btn_style03:hover, .btn_style02:hover {
  color: #fff;
}
.btn_style01:hover, .btn_style03:hover, .btn_style02:hover {
  opacity: 0.7;
  text-decoration: none;
}

.btn_style02 {
  background-color: #F26F43;
}

.btn_style03 {
  background-color: #FFCA00;
  color: #000000;
}
.btn_style03:link, .btn_style03:visited, .btn_style03:active, .btn_style03:hover {
  color: #000000;
}

.btn_style04, .btn_style05, .btn_style07, .btn_style06, .btn_post01 {
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 460px;
  text-align: center;
  border: 1px solid #001040;
  background-color: #fff;
  color: #001040;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .btn_style04, .btn_style05, .btn_style07, .btn_style06, .btn_post01 {
    padding: 15px 10px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .btn_style04, .btn_style05, .btn_style07, .btn_style06, .btn_post01 {
    padding: 10px;
    font-size: 0.9375rem;
  }
}
.btn_style04:link, .btn_style05:link, .btn_style07:link, .btn_style06:link, .btn_post01:link, .btn_style04:visited, .btn_style05:visited, .btn_style07:visited, .btn_style06:visited, .btn_post01:visited, .btn_style04:active, .btn_style05:active, .btn_style07:active, .btn_style06:active, .btn_post01:active, .btn_style04:hover, .btn_style05:hover, .btn_style07:hover, .btn_style06:hover, .btn_post01:hover {
  color: #001040;
}
.btn_style04:hover, .btn_style05:hover, .btn_style07:hover, .btn_style06:hover, .btn_post01:hover {
  text-decoration: none;
  opacity: 0.7;
}
.btn_style04 img, .btn_style05 img, .btn_style07 img, .btn_style06 img, .btn_post01 img {
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.btn_style05, .btn_style07, .btn_style06, .btn_post01 {
  background-color: #001040;
  color: #fff;
}
.btn_style05:link, .btn_style07:link, .btn_style06:link, .btn_post01:link, .btn_style05:visited, .btn_style07:visited, .btn_style06:visited, .btn_post01:visited, .btn_style05:active, .btn_style07:active, .btn_style06:active, .btn_post01:active, .btn_style05:hover, .btn_style07:hover, .btn_style06:hover, .btn_post01:hover {
  color: #fff;
}
.btn_style05 img, .btn_style07 img, .btn_style06 img, .btn_post01 img {
  right: inherit;
  left: 10px;
}

.btn_style06, .btn_post01 {
  background-color: #CC5520;
  border: none;
}

.btn_style07 {
  background-color: #414141;
  border: none;
}
.btn_style07 img {
  left: inherit;
  right: 10px;
}

@media only screen and (max-width: 767px) {
  .logo_size_66 {
    max-width: 66%;
  }
}

@media only screen and (max-width: 767px) {
  .logo_size_50 {
    max-width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .logo_size_35 {
    max-width: 35%;
  }
}

@media only screen and (max-width: 767px) {
  .logo_size_30 {
    max-width: 30%;
  }
}

.googlemap {
  position: relative;
  padding-top: 40%;
  width: 100%;
  border: 1px solid #ccc;
}
.googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 767px) {
  .table_scroll {
    overflow-x: scroll; /* スクロールする */
    white-space: nowrap; /* 自動改行しない */
  }
}
/* フェードインアニメーション */
.effect-fade {
  opacity: 0;
  transform: translate(0, 100px); /* フェードインで動く高さを指定 */
  transition: all 1000ms; /* フェードインにかかる時間を指定 */
}

.effect-scroll {
  opacity: 1;
  transform: translate(0, 0);
}

.ttl_top01 {
  line-height: 1;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_top01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_top01 {
    font-size: 1.625rem;
  }
}
.ttl_top01 span {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .ttl_top01 span {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_top01 span {
    font-size: 1rem;
  }
}

.layout_mainimg_top01 {
  position: fixed;
  z-index: -1;
  width: 100%;
  background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {
  .layout_mainimg_top01 {
    background-size: cover;
    background-position: center;
    height: 800px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg_top01 {
    background-size: auto 125%;
    background-position: top center;
    height: 450px;
  }
}

@media print, screen and (min-width: 768px) {
  .layout_mainimg_top02 {
    height: 800px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg_top02 {
    height: 450px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_mainimg_top02 img {
    max-width: 70%;
  }
}

.info_pickup {
  font-size: 0.875rem;
  color: #fff;
}
.info_pickup a:link {
  color: #fff;
}
.info_pickup a:visited {
  color: #fff;
}
.info_pickup a:hover {
  color: #fff;
}
.info_pickup a:active {
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .info_pickup {
    position: absolute;
    bottom: 1rem;
    right: 3rem;
    width: 324px;
    border: 2px solid #fff;
    border-radius: 5px;
  }
}
@media only screen and (max-width: 767px) {
  .info_pickup {
    margin-bottom: -50px;
    background-color: #236F89;
  }
}

@media only screen and (max-width: 767px) {
  .top_about h2 img {
    max-width: 250px;
  }
}

.layout_topwelfare01 {
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .layout_topwelfare01 {
    height: 630px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_topwelfare01 {
    height: 400px;
  }
}
@media print, screen and (min-width: 768px) {
  .layout_topwelfare01 p {
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_topwelfare01 p {
    font-size: 1.25rem;
  }
}

.top_onsen_eigyo {
  background-color: #FCD150;
  display: inline-block;
}
.top_onsen_eigyo a:link {
  color: #000000;
}
.top_onsen_eigyo a:visited {
  color: #000000;
}
.top_onsen_eigyo a:hover {
  color: #000000;
}
.top_onsen_eigyo a:active {
  color: #000000;
}
.top_onsen_eigyo .btn_close {
  position: absolute;
  top: 5px;
  right: 10px;
}
.top_onsen_eigyo .btn_close:hover {
  opacity: 0.5;
}
.top_onsen_eigyo.is-close {
  display: none;
}

@media only screen and (max-width: 767px) {
  .img_onsen01 {
    max-width: 72px;
  }
}

.layout_top01 {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .layout_top01 {
    height: 600px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_top01 {
    height: 300px;
  }
}
.layout_top01 p {
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .layout_top01 p {
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_top01 p {
    font-size: 1.25rem;
  }
}

.layout_top02 {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .layout_top02 {
    height: 600px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_top02 {
    height: 450px;
  }
}

.brand_list dl {
  position: relative;
  text-align: center;
}
.brand_list .stretched-link:hover::after {
  background-color: rgba(244, 244, 244, 0.5);
}
@media only screen and (max-width: 767px) {
  .brand_list .img_logo01 {
    max-height: 60px;
  }
}

.top_bland {
  color: #fff;
}
.top_bland h3 {
  color: #E0D887;
}
.top_bland .bx-wrapper .bx-prev {
  left: -45px;
  background: url(/images/index/bx-controls.svg) no-repeat;
  transform: scale(-1, 1);
}
.top_bland .bx-wrapper .bx-prev:link, .top_bland .bx-wrapper .bx-prev:visited, .top_bland .bx-wrapper .bx-prev:hover, .top_bland .bx-wrapper .bx-prev:active {
  background-position: 0 0;
}
.top_bland .bx-wrapper .bx-prev:hover {
  opacity: 0.7;
}
.top_bland .bx-wrapper .bx-next {
  right: -45px;
  background: url(/images/index/bx-controls.svg) no-repeat;
}
.top_bland .bx-wrapper .bx-next:link, .top_bland .bx-wrapper .bx-next:visited, .top_bland .bx-wrapper .bx-next:hover, .top_bland .bx-wrapper .bx-next:active {
  background-position: 0 0;
}
.top_bland .bx-wrapper .bx-next:hover {
  opacity: 0.7;
}

.top_media .post_img {
  height: 216px;
}
.top_media .stretched-link:hover::after {
  background-color: rgba(244, 244, 244, 0.5);
}
.top_media .post_content {
  background-color: #fff;
  border: 1px solid #B4B4B4;
}

.submenu_welfare {
  padding-left: 0;
  list-style: none;
  display: flex;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .submenu_welfare {
    font-size: 1rem;
    justify-content: center;
  }
}
@media only screen and (max-width: 767px) {
  .submenu_welfare {
    font-size: 0.875rem;
    flex-wrap: wrap;
    margin-bottom: 0;
  }
}
.submenu_welfare span {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .submenu_welfare span {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .submenu_welfare span {
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 768px) {
  .submenu_welfare li {
    margin: 0 30px;
  }
}
@media only screen and (max-width: 767px) {
  .submenu_welfare li {
    width: 50%;
    border-bottom: 1px solid #fff;
  }
  .submenu_welfare li:nth-child(even) {
    border-left: 1px solid #fff;
  }
}
@media only screen and (max-width: 767px) {
  .submenu_welfare a:link {
    color: #fff;
  }
  .submenu_welfare a:visited {
    color: #fff;
  }
  .submenu_welfare a:hover {
    color: #fff;
  }
  .submenu_welfare a:active {
    color: #fff;
  }
}
.submenu_welfare a {
  display: flex;
  text-align: center;
  height: 100%;
  align-items: center;
  justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .submenu_welfare a {
    margin-bottom: 10px;
    border-bottom: 4px solid #000;
    min-width: 150px;
  }
}
@media only screen and (max-width: 767px) {
  .submenu_welfare a {
    padding: 5px;
    width: 100%;
    min-height: 50px;
    background-color: #484848;
  }
}
.submenu_welfare a:hover {
  text-decoration: none;
  opacity: 0.7;
}

.ttl_welfare01 {
  text-align: center;
  background-color: #001040;
  color: #fff;
  font-weight: bold;
  margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .ttl_welfare01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_welfare01 {
    font-size: 1.25rem;
  }
}
.ttl_welfare01 span {
  display: block;
  color: #B4B4B4;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_welfare01 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_welfare01 span {
    font-size: 0.875rem;
  }
}

.ttl_welfare02 {
  text-align: center;
  background-color: #001040;
  color: #fff;
  font-size: 1.25rem;
  font-weight: bold;
}

.ttl_welfare03 {
  text-align: center;
  font-weight: bold;
}
.ttl_welfare03 span {
  display: block;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_welfare03 span {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_welfare03 span {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_welfare03 img {
    max-width: 66%;
  }
}

.txt_welfare01 {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "Meiryo", serif;
}
@media print, screen and (min-width: 768px) {
  .txt_welfare01 {
    font-size: 1.75rem;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .txt_welfare01 {
    font-size: 1.25rem;
  }
}

.txt_welfare02, .txt_able01 {
  color: #C50018;
  font-weight: bold;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .txt_welfare02, .txt_able01 {
    font-size: 1.6875rem;
  }
}
@media only screen and (max-width: 767px) {
  .txt_welfare02, .txt_able01 {
    font-size: 1.125rem;
  }
}
.txt_welfare02 .kakomi, .txt_able01 .kakomi {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .txt_welfare02 .kakomi, .txt_able01 .kakomi {
    border: 3px solid #C50018;
    font-size: 1.125rem;
    border-radius: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .txt_welfare02 .kakomi, .txt_able01 .kakomi {
    border: 2px solid #C50018;
    border-radius: 7px;
    font-size: 0.875rem;
  }
}

.txt_welfare03 {
  line-height: 1.75;
}
@media print, screen and (min-width: 768px) {
  .txt_welfare03 {
    font-size: 0.9375rem;
    margin-left: 129px;
  }
}
@media only screen and (max-width: 767px) {
  .txt_welfare03 {
    font-size: 0.875rem;
  }
}

.btn_welfare01 {
  position: relative;
  display: inline-block;
  font-size: 0.875rem;
  padding: 5px 30px 5px 15px;
  background-color: #fff;
  border: 1px solid #000;
  text-align: left;
}
.btn_welfare01:hover {
  text-decoration: none;
  background-color: #eee;
}
.btn_welfare01:after {
  display: flex;
  align-items: center;
  content: ">";
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin-bottom: auto;
  margin-top: auto;
}

.btn_welfare_red, .btn_veranda_green, .btn_welfare_brown, .btn_welfare_blue, .btn_welfare_green {
  display: inline-block;
  font-weight: bold;
  background-color: #C50018;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .btn_welfare_red, .btn_veranda_green, .btn_welfare_brown, .btn_welfare_blue, .btn_welfare_green {
    border-radius: 10px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .btn_welfare_red, .btn_veranda_green, .btn_welfare_brown, .btn_welfare_blue, .btn_welfare_green {
    line-height: 1.25;
    border-radius: 5px;
    font-size: 0.875rem;
  }
}
.btn_welfare_red:link, .btn_veranda_green:link, .btn_welfare_brown:link, .btn_welfare_blue:link, .btn_welfare_green:link, .btn_welfare_red:visited, .btn_veranda_green:visited, .btn_welfare_brown:visited, .btn_welfare_blue:visited, .btn_welfare_green:visited, .btn_welfare_red:hover, .btn_veranda_green:hover, .btn_welfare_brown:hover, .btn_welfare_blue:hover, .btn_welfare_green:hover, .btn_welfare_red:active, .btn_veranda_green:active, .btn_welfare_brown:active, .btn_welfare_blue:active, .btn_welfare_green:active {
  color: #fff;
}
.btn_welfare_red:hover, .btn_veranda_green:hover, .btn_welfare_brown:hover, .btn_welfare_blue:hover, .btn_welfare_green:hover {
  text-decoration: none;
  opacity: 0.7;
}

.btn_welfare_green {
  background-color: #004000;
}

.btn_welfare_blue {
  background-color: #00568E;
}

.btn_welfare_brown {
  background-color: #533D21;
}

.ttl_access {
  text-align: center;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_access {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_access {
    line-height: 1.5;
    font-size: 1.125rem;
  }
}

@media print, screen and (min-width: 768px) {
  .layout_access01 {
    display: flex;
  }
}
.layout_access01 dt {
  padding-right: 15px;
}
@media print, screen and (min-width: 768px) {
  .layout_access01 dt {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_access01 dt {
    margin-bottom: 10px;
    font-size: 1.125rem;
  }
}
.layout_access01 dd {
  padding-left: 15px;
  border-left: 4px solid #000;
}
@media print, screen and (min-width: 768px) {
  .layout_access01 dd {
    font-size: 0.9375rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_access01 dd {
    font-size: 0.875rem;
  }
}

.layout_welfare01 dl > div {
  position: relative;
  max-width: 480px;
  background-color: #F6F6F6;
  height: 100%;
}
.layout_welfare01 dt {
  position: relative;
  background-color: #001040;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .layout_welfare01 dt {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_welfare01 dt {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 768px) {
  .layout_welfare01 dd {
    font-size: 0.9375rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_welfare01 dd {
    font-size: 0.875rem;
  }
}
.layout_welfare01 .icon_arrow {
  position: absolute;
  right: 10px;
}
@media print, screen and (min-width: 768px) {
  .layout_welfare01 .icon_arrow {
    bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_welfare01 .icon_arrow {
    bottom: 7px;
  }
}
.layout_welfare01 .icon_link {
  position: absolute;
  right: 10px;
}
@media print, screen and (min-width: 768px) {
  .layout_welfare01 .icon_link {
    top: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .layout_welfare01 .icon_link {
    top: 5px;
  }
}
.layout_welfare01 .stretched-link:hover::after {
  background-color: rgba(244, 244, 244, 0.5);
}

.welfare_logo {
  text-align: center;
}
.welfare_logo > div {
  height: 100%;
}

.layout_gyozenji01 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 130px;
  border: 1px solid #C8C8C9;
  background: linear-gradient(#fff, #F0F0F0);
  border-radius: 10px;
  padding: 10px;
}

.layout_bsfukushi01 dl {
  margin-bottom: 0;
  padding: 15px 0;
  border-bottom: 1px solid #000;
}
.layout_bsfukushi01 dt {
  font-weight: bold;
  font-size: 0.9375rem;
}
@media only screen and (max-width: 767px) {
  .layout_bsfukushi01 dt {
    margin-bottom: 15px;
  }
}
.layout_bsfukushi01 dd {
  margin-bottom: 0;
  font-size: 0.9375rem;
}

.bslabo {
  max-width: 700px;
  margin: 0 auto 50px;
}

.ttl_labo, .ttl_net, .ttl_hokago, .ttl_hattatsu {
  text-align: center;
  color: #fff;
  border: 2px solid #F3982C;
  border-radius: 5px;
}
@media print, screen and (min-width: 768px) {
  .ttl_labo, .ttl_net, .ttl_hokago, .ttl_hattatsu {
    line-height: 50px;
    font-size: 1.5rem;
    margin: 50px 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_labo, .ttl_net, .ttl_hokago, .ttl_hattatsu {
    line-height: 40px;
    font-size: 1.25rem;
    margin-bottom: 30px;
  }
}
.ttl_labo span, .ttl_net span, .ttl_hokago span, .ttl_hattatsu span {
  display: block;
  border: 3px solid #fff;
  background-color: #F3982C;
  border-radius: 5px;
}

.ttl_hattatsu {
  border: 2px solid #2D93C2;
}
.ttl_hattatsu span {
  background-color: #2D93C2;
}

.ttl_hokago {
  border: 2px solid #F0668D;
}
.ttl_hokago span {
  background-color: #F0668D;
}

.ttl_net {
  border: 2px solid #4EBC65;
}
.ttl_net span {
  background-color: #4EBC65;
}

.ttl_labo_flag {
  margin-bottom: 12px;
  padding-left: 10px;
}
.ttl_labo_flag .ttl_flag {
  margin-right: 10px;
  margin-bottom: -40px;
}

.frame_labo01 {
  position: relative;
  margin-bottom: 30px;
  border: 1px solid #BABABA;
  border-radius: 10px;
  box-shadow: 10px 10px 5px -7px rgba(0, 0, 0, 0.1);
  font-size: 1rem;
  line-height: 1.75;
}
@media print, screen and (min-width: 768px) {
  .frame_labo01 {
    padding: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .frame_labo01 {
    padding: 10px;
  }
}
.frame_labo01 ul {
  font-weight: bold;
}

@media print, screen and (min-width: 768px) {
  .layout_labo01 {
    display: flex;
    align-items: flex-start;
    position: relative;
  }
}
@media print, screen and (min-width: 768px) {
  .layout_labo01 figure {
    position: relative;
    padding-right: 20px;
  }
}
.layout_labo01 p {
  font-size: 0.875rem;
  line-height: 1.5;
}

@media print, screen and (min-width: 768px) {
  .img_labo01 {
    position: absolute;
    top: calc(100% - 40px);
    left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .layout_labo02 {
    margin-top: 50px;
    margin-bottom: 20px;
    padding-left: 257px;
  }
}
.layout_labo02 p {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.5;
}

.layout_labo03 a {
  display: block;
  margin-bottom: 10px;
}
.layout_labo03 a:last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 768px) {
  .img_labo03 {
    position: relative;
    z-index: 10;
    margin-top: 20px;
    margin-left: -40px;
  }
}

@media print, screen and (min-width: 768px) {
  .img_labo04 {
    position: absolute;
    bottom: 20px;
    right: 20px;
  }
}

/* 行善寺保留レイアウトここから
	position: relative;
	@include base-style-a($fcolor);
	white-space: normal;
	width: 1000px;
	background-color: #fff;
	th,td{
		padding: 15px;
		border: 1px solid #C8C8C9;
		vertical-align: middle;
		font-weight: normal;
		font-size: rem(15);
	}
	th{
		white-space: nowrap;
	}
	td{
		&:nth-child(2),&:last-child{
			white-space: nowrap;
		}
	}
	a{
		&:link,
		&:visited,
		&:active{
			text-decoration: none;
		}
		&:hover{
			text-decoration: underline;
		}
	}
}
.deco_base{
	position: absolute;
	mix-blend-mode: multiply;
	@include max-screen($mobile){
		display: none;
	}
}
#deco01{
	@extend .deco_base;
	bottom: 100%;
	right: 100%;
}
#deco02{
	@extend .deco_base;
	bottom: 100%;
	left: calc(100% + 20px);
}
#deco03{
	@extend .deco_base;
	top: 400px;
	right: calc(100% + 30px);
}
#deco04{
	@extend .deco_base;
	top: 400px;
	left: calc(100% + 10px);
}
#deco05{
	@extend .deco_base;
	top: 850px;
	right: calc(100% + 50px);
}
#deco06{
	@extend .deco_base;
	top: 850px;
	left: calc(100% + 10px);
}
#deco07{
	@extend .deco_base;
	bottom: 0px;
	right: calc(100% + 30px);
}
#deco08{
	@extend .deco_base;
	bottom: 0px;
	left: calc(100% + 10px);
}
#deco09{
	@extend .deco_base;
	top: 100px;
	right: calc(100% + 60px);
}
#deco10{
	@extend .deco_base;
	top: 100px;
	left: calc(100% + 10px);
}
行善寺保留レイアウトここまで*/
.btn_veranda_green {
  background-color: #449042;
}

.txt_able01 {
  color: #449042;
}

.layout_veranda01 a {
  width: 100%;
  max-width: 420px;
}

.bg_able01 {
  z-index: -1;
}
@media print, screen and (min-width: 768px) {
  .bg_able01 {
    position: absolute;
    top: 0;
    right: -200px;
  }
}
@media only screen and (max-width: 767px) {
  .bg_able01 {
    position: relative;
    margin-top: -250px;
  }
}

@media print, screen and (min-width: 768px) {
  .bg_kidsmap {
    position: absolute;
    bottom: 0;
    left: -160px;
  }
}

.tbl_able01 th, .tbl_able01 td {
  padding: 10px;
  border: 1px solid #f8b200;
}
.tbl_able01 a:link {
  color: #2e5f92;
}
.tbl_able01 a:visited {
  color: #2e5f92;
}
.tbl_able01 a:hover {
  color: #2e5f92;
}
.tbl_able01 a:active {
  color: #2e5f92;
}
.tbl_able01 a:link {
  text-decoration: underline;
}
.tbl_able01 a:hover {
  text-decoration: none;
}

.ttl_able01 {
  text-align: center;
  font-size: 2.25rem;
  font-weight: bold;
}

.layout_able_fbox01 {
  max-width: 760px;
}

.layout_able_fbox02 {
  border-radius: 10px;
  height: 100%;
  padding: 5px 10px;
}

#comm {
  background: url(/images/welfare/veranda/fbox/ill01.gif) no-repeat center top;
}

#rhythem {
  background: url(/images/welfare/veranda/fbox/ill02.gif) no-repeat center top;
}

#dance {
  background: url(/images/welfare/veranda/fbox/ill03.gif) no-repeat center top;
}

#music {
  background: url(/images/welfare/veranda/fbox/ill04.gif) no-repeat center top;
}

#taiko {
  background: url(/images/welfare/veranda/fbox/ill05.gif) no-repeat center top;
}

#yosakoi {
  background: url(/images/welfare/veranda/fbox/ill06.gif) no-repeat center top;
}

#togei {
  background: url(/images/welfare/veranda/fbox/ill07.gif) no-repeat center top;
}

#pic {
  background: url(/images/welfare/veranda/fbox/ill08.gif) no-repeat center top;
}

#flower {
  background: url(/images/welfare/veranda/fbox/ill09.gif) no-repeat center top;
}

#sho {
  background: url(/images/welfare/veranda/fbox/ill10.gif) no-repeat center top;
}

#cocking {
  background: url(/images/welfare/veranda/fbox/ill11.gif) no-repeat center top;
}

#taiso {
  background: url(/images/welfare/veranda/fbox/ill12.gif) no-repeat center top;
}

#chigiri {
  background: url(/images/welfare/veranda/fbox/ill13.gif) no-repeat center top;
}

#pc {
  background: url(/images/welfare/veranda/fbox/ill14.gif) no-repeat center top;
}

#outdoor {
  background: url(/images/welfare/veranda/fbox/kids_ill01.gif) no-repeat center top;
}

#bubble {
  background: url(/images/welfare/veranda/fbox/kids_ill02.gif) no-repeat center top;
}

#swim {
  background: url(/images/welfare/veranda/fbox/kids_ill03.gif) no-repeat center top;
}

#wood {
  background: url(/images/welfare/veranda/fbox/kids_ill05.gif) no-repeat center top;
}

#craft {
  background: url(/images/welfare/veranda/fbox/kids_ill06.gif) no-repeat center top;
}

#toys {
  background: url(/images/welfare/veranda/fbox/kids_ill07.gif) no-repeat center top;
}

#art {
  background: url(/images/welfare/veranda/fbox/kids_ill08.gif) no-repeat center top;
}

#colors {
  background: url(/images/welfare/veranda/fbox/kids_ill09.gif) no-repeat center top;
}

#try {
  background: url(/images/welfare/veranda/fbox/kids_ill10.gif) no-repeat center top;
}

#noichigo {
  background: url(/images/welfare/veranda/fbox/ill15.gif) no-repeat center top;
}

#eng {
  background: url(/images/welfare/veranda/fbox/ill16.gif) no-repeat center top;
}

.ttl_saienji01 {
  text-align: center;
  background-color: #EEEFEF;
  border: 3px solid #fff;
  box-shadow: 0 0 0 1px #C8C8C9;
}
@media print, screen and (min-width: 768px) {
  .ttl_saienji01 {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_saienji01 {
    font-size: 1.125rem;
  }
}

.ttl_saienji02 {
  color: #2E683A;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_saienji02 {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_saienji02 {
    font-size: 1.25rem;
  }
}

.ttl_saienji03 {
  text-align: center;
  background-color: #fff;
  border: 3px solid #F1EEE3;
  box-shadow: 0 0 0 1px #C8C8C9;
}
@media print, screen and (min-width: 768px) {
  .ttl_saienji03 {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_saienji03 {
    font-size: 1.125rem;
  }
}

.btn_saienji01 {
  display: inline-block;
  background-color: #7483BC;
  color: #fff;
  border-radius: 8px;
}
@media print, screen and (min-width: 768px) {
  .btn_saienji01 {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .btn_saienji01 {
    font-size: 0.9375rem;
  }
}
.btn_saienji01:link, .btn_saienji01:visited, .btn_saienji01:hover, .btn_saienji01:active {
  color: #fff;
}
.btn_saienji01:hover {
  text-decoration: none;
  opacity: 0.7;
}

.layout_saienji01 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
  border-radius: 10px;
  height: 100%;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .layout_saienji01 .txt_01 {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_saienji01 .txt_01 {
    font-size: 0.875rem;
  }
}
.layout_saienji01 .txt_02 {
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .layout_saienji01 .txt_02 {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_saienji01 .txt_02 {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 768px) {
  .layout_saienji01 .txt_03 {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_saienji01 .txt_03 {
    font-size: 1rem;
  }
}

.ttl_hoshigaoka01 {
  color: #009944;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_hoshigaoka01 {
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_hoshigaoka01 {
    font-size: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .ttl_hoshigaoka02 {
    width: 66%;
  }
}

.layout_hoshigaoka01 dt {
  color: #004000;
  background-color: #fff;
  border: 2px solid #004000;
  border-radius: 10px;
  font-size: 0.9375rem;
}
.layout_hoshigaoka01 dd {
  font-size: 0.875rem;
}

.layout_hoshigaoka02 {
  background-color: #EEEFEF;
  height: 100%;
}
.layout_hoshigaoka02 .stretched-link:hover::after {
  background-color: rgba(244, 244, 244, 0.5);
}

.tbl_hoshigaoka01 {
  max-width: 770px;
  font-size: 0.875rem;
  text-align: center;
}
.tbl_hoshigaoka01 caption {
  color: #000000;
}
.tbl_hoshigaoka01 td, .tbl_hoshigaoka01 th {
  padding: 10px;
  border: 2px solid #fff;
}
.tbl_hoshigaoka01 th {
  width: 14.2857142857%;
  background-color: #2A947F;
  color: #fff;
}
.tbl_hoshigaoka01 td {
  background-color: #F0C8DE;
}

.hoshigaoka_fancybox01 {
  color: #fff;
}
.hoshigaoka_fancybox01 a:link {
  color: #fff;
}
.hoshigaoka_fancybox01 a:visited {
  color: #fff;
}
.hoshigaoka_fancybox01 a:hover {
  color: #fff;
}
.hoshigaoka_fancybox01 a:active {
  color: #fff;
}

.bxslider_thumbnail {
  display: flex;
  column-gap: 10px;
  padding-left: 0;
}
.bxslider_thumbnail li {
  list-style: none;
}

.layout_nihonkaiclub01 dt {
  color: #00568E;
  background-color: #fff;
  border: 2px solid #00568E;
  border-radius: 10px;
  font-size: 0.9375rem;
}
.layout_nihonkaiclub01 dd {
  font-size: 0.875rem;
}

@media only screen and (max-width: 767px) {
  .ttl_nihonkaiclub01 {
    width: 200px;
  }
}

.btn_mikawa {
  position: relative;
  display: block;
  padding: 10px 60px 10px 15px;
  max-width: 330px;
  border: 3px solid #533D21;
  border-radius: 10px;
  font-weight: bold;
  color: #533D21;
  font-size: 1.125rem;
}
.btn_mikawa:link, .btn_mikawa:visited, .btn_mikawa:hover, .btn_mikawa:active {
  color: #533D21;
}
.btn_mikawa:hover {
  text-decoration: none;
  opacity: 0.7;
}
.btn_mikawa img {
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  display: inline-block;
  margin-left: auto;
}

@media print, screen and (min-width: 768px) {
  .img_higecho01 {
    margin-top: -35px;
    margin-left: -35px;
  }
}

@media only screen and (max-width: 767px) {
  .img_higecho02 {
    width: 150px;
  }
}

.store_slider {
  width: 100%;
  overflow: hidden;
  margin-top: -16px;
}
@media print, screen and (min-width: 768px) {
  .store_slider .slide_wrapper {
    position: relative;
    width: 100%;
    max-width: 700px;
    overflow: visible;
    margin-inline: auto;
  }
  .store_slider .slide_wrapper:before {
    z-index: 99;
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    display: block;
    background-color: rgba(244, 244, 244, 0.5);
    width: 100vw;
    height: 100%;
  }
  .store_slider .slide_wrapper:after {
    z-index: 99;
    content: "";
    position: absolute;
    top: 0;
    left: 100%;
    display: block;
    background-color: rgba(244, 244, 244, 0.5);
    width: 100vw;
    height: 100%;
  }
}
.store_slider .bx-wrapper .bx-viewport {
  overflow: visible !important;
}

.txt_store01 {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "Meiryo", serif;
}
@media print, screen and (min-width: 768px) {
  .txt_store01 {
    font-size: 1.75rem;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .txt_store01 {
    font-size: 1.25rem;
  }
}

.layout_store01 {
  max-width: 400px;
}

.layout_store02 {
  max-width: 750px;
  line-height: 1.75;
}
.layout_store02 > div {
  max-width: 567px;
}

.bnr_store01 {
  max-width: 750px;
  font-weight: bold;
  background-color: #fff;
  border-radius: 10px;
  border: 2px solid #CC5520;
}
@media print, screen and (min-width: 768px) {
  .bnr_store01 {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .bnr_store01 {
    font-size: 1.125rem;
  }
}
.bnr_store01:link, .bnr_store01:visited, .bnr_store01:hover, .bnr_store01:active {
  color: #CC5520;
  text-decoration: none;
}
.bnr_store01:hover {
  opacity: 0.7;
}

.btn_store01 {
  font-weight: bold;
  border-radius: 10px;
  border: 2px solid #001040;
  font-size: 1rem;
}
.btn_store01:link, .btn_store01:visited, .btn_store01:hover, .btn_store01:active {
  color: #001040;
  text-decoration: none;
}
.btn_store01:hover {
  opacity: 0.7;
}

.submenu_restaurant {
  list-style: none;
  font-size: 0.9375rem;
}
.submenu_restaurant a {
  display: block;
  padding: 5px;
  border-radius: 5px;
  border: 1px solid #595858;
  text-align: center;
  background-color: #EEEFEF;
}
.submenu_restaurant a:hover {
  text-decoration: none;
  opacity: 0.7;
}

.ttl_resturant01 {
  text-align: center;
  background-color: #DF5024;
  color: #fff;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_resturant01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_resturant01 {
    font-size: 1.25rem;
  }
}
.ttl_resturant01 span {
  display: block;
  color: #B4B4B4;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_resturant01 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_resturant01 span {
    font-size: 0.875rem;
  }
}

.ttl_resturant02 {
  padding: 11px 24px;
  color: #CC5520;
  border: 2px solid #CC5520;
  font-weight: bold;
  background-color: #fff;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_resturant02 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_resturant02 {
    font-size: 1.125rem;
  }
}

.layout_resturant01 > dl {
  max-width: 480px;
}
@media print, screen and (min-width: 768px) {
  .layout_resturant01 > dl {
    width: calc((100% - 4.5rem) / 2);
  }
}
@media only screen and (max-width: 767px) {
  .layout_resturant01 > dl {
    margin-bottom: 15px;
  }
}

.txt_resturant01 {
  font-size: 1.1875rem;
  color: #001040;
  font-weight: bold;
}

.txt_resturant02 {
  font-weight: bold;
  font-size: 0.9375rem;
}
.txt_resturant02:link, .txt_resturant02:visited, .txt_resturant02:hover, .txt_resturant02:active {
  color: #C50018;
}

.ttl_delivery01 {
  text-align: center;
  background-color: #2E683A;
  color: #fff;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_delivery01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_delivery01 {
    font-size: 1.25rem;
  }
}
.ttl_delivery01 span {
  display: block;
  color: #C8C8C9;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_delivery01 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_delivery01 span {
    font-size: 0.875rem;
  }
}

.ttl_delivery02 {
  padding: 11px 24px;
  color: #2E683A;
  border: 2px solid #2E683A;
  font-weight: bold;
  background-color: #fff;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_delivery02 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_delivery02 {
    font-size: 1.125rem;
  }
}

.txt_delivery01 {
  font-weight: bold;
  font-size: 0.9375rem;
  max-width: 411px;
}
.txt_delivery01:link, .txt_delivery01:visited, .txt_delivery01:hover, .txt_delivery01:active {
  color: #C50018;
}

.ttl_spa01 {
  text-align: center;
  background-color: #1F2160;
  color: #fff;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_spa01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_spa01 {
    font-size: 1.25rem;
  }
}
.ttl_spa01 span {
  display: block;
  color: #C8C8C9;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_spa01 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_spa01 span {
    font-size: 0.875rem;
  }
}

.ttl_spa02 {
  padding: 11px 24px;
  color: #1F2160;
  border: 2px solid #1F2160;
  font-weight: bold;
  background-color: #fff;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_spa02 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_spa02 {
    font-size: 1.125rem;
  }
}

.txt_spa01 {
  font-weight: bold;
  font-size: 0.9375rem;
  max-width: 411px;
}
.txt_spa01:link, .txt_spa01:visited, .txt_spa01:hover, .txt_spa01:active {
  color: #C50018;
}

.ttl_katokitchen01 {
  color: #DF5024;
}
@media print, screen and (min-width: 768px) {
  .ttl_katokitchen01 {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_katokitchen01 {
    font-size: 1.25rem;
  }
}

.layout_katokitchen01 {
  border: 2px solid #E2644B;
  border-radius: 10px;
}

.txt_katokitchen01 {
  color: #E2644B;
  font-size: 1.125rem;
}

.tbl_katokitchen01 {
  font-size: 1rem;
  caption-side: top;
  width: 100%;
}
.tbl_katokitchen01 th, .tbl_katokitchen01 td {
  border: 2px solid #fff;
  font-weight: normal;
}
.tbl_katokitchen01 th {
  width: 140px;
  background-color: #F6E2BB;
}
.tbl_katokitchen01 td {
  background-color: #EEEFEF;
}
.tbl_katokitchen01 caption {
  color: #000000;
}

.tbl_katokitchen02 {
  font-size: 1rem;
  caption-side: top;
  width: 100%;
}
.tbl_katokitchen02 th, .tbl_katokitchen02 td {
  border: 2px solid #F9EEE4;
  font-weight: normal;
}
.tbl_katokitchen02 th {
  width: 180px;
  background-color: #F6E2BB;
}
.tbl_katokitchen02 td {
  background-color: #fff;
}
.tbl_katokitchen02 caption {
  color: #000000;
}

@media print, screen and (min-width: 768px) {
  .deco_nodamachi01 {
    position: absolute;
    right: 0;
    bottom: -20px;
  }
}

.ttl_komatsukabule01 {
  color: #CC5520;
  background-color: #fff;
  border: 2px solid #CC5520;
  border-radius: 10px;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .ttl_komatsukabule01 {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_komatsukabule01 {
    font-size: 1.125rem;
  }
}

.deco_gyozenjispa01 {
  position: absolute;
  bottom: -70px;
  left: -80px;
}

.layout_gyozenjispa01 {
  max-width: 750px;
  font-weight: bold;
  background-color: #fff;
  border-radius: 10px;
  border: 2px solid #1C6300;
  color: #1C6300;
}
@media print, screen and (min-width: 768px) {
  .layout_gyozenjispa01 {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_gyozenjispa01 {
    font-size: 1rem;
  }
}

@media print, screen and (min-width: 768px) {
  .img_toji01 {
    margin-top: -50px;
  }
}

.color_toji01 {
  color: #6E348A;
}

.color_toji02 {
  color: #DF5024;
}

.ttl_toji01 {
  background-color: #89609B;
  color: #fff;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_toji01 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_toji01 {
    font-size: 1.125rem;
  }
}

.layout_toji01 {
  border-radius: 10px;
  background-color: #fff;
  border: 2px solid #C0ABCA;
}

.layout_toji02 {
  max-width: 460px;
}

.layout_toji03 > div {
  background-color: #FFE57A;
  border-radius: 10px;
}
.layout_toji03 .txt_01 {
  font-size: 3.125rem;
  font-weight: bold;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "Meiryo", serif;
  color: #fff;
}
.layout_toji03 h4 {
  color: #DF5024;
  font-size: 1.25rem;
  border-bottom: 1px solid #fff;
  font-weight: bold;
}

.link_cafesaienji01:link, .link_cafesaienji01:visited, .link_cafesaienji01:active {
  text-decoration: underline;
}
.link_cafesaienji01:hover {
  text-decoration: none;
}

.ttl_cafesaienji01 {
  color: #224184;
  font-weight: bold;
}

.ttl_news01 {
  background-color: #53B5C1;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .ttl_news01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_news01 {
    font-size: 1.25rem;
  }
}
.ttl_news01 span:not(.ttl_news02) {
  display: block;
  margin-bottom: 10px;
  color: #E6E6E6;
}
@media print, screen and (min-width: 768px) {
  .ttl_news01 span:not(.ttl_news02) {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_news01 span:not(.ttl_news02) {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 768px) {
  .ttl_news01 .ttl_news02 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_news01 .ttl_news02 {
    font-size: 1rem;
  }
}

@media print, screen and (min-width: 768px) {
  .ttl_news02 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_news02 {
    font-size: 0.875rem;
  }
}

.cat_list a:link, .cat_list a:visited, .cat_list a:hover, .cat_list a:active {
  text-decoration: none;
}
.cat_list a.is-current, .cat_list a:hover {
  background-color: #F0F0F0;
}

.layout_postnav01 {
  padding: 0;
  font-size: 0.9375rem;
}
.layout_postnav01 a {
  padding: 10px;
  display: block;
  background-color: #fff;
}
.layout_postnav01 a:active {
  background-color: #53B5C1;
  color: #fff;
  text-decoration: none;
}
.layout_postnav01 a:hover {
  text-decoration: none;
}
.layout_postnav01 a.is-current {
  background-color: #53B5C1;
  color: #fff;
}
.layout_postnav01 li {
  list-style: none;
  text-align: center;
}

.layout_postnav03 {
  width: 100%;
  position: relative !important;
  transform: none !important;
}
@media only screen and (max-width: 767px) {
  .layout_postnav03 {
    display: block;
    z-index: inherit;
  }
}

@media only screen and (max-width: 767px) {
  .layout_postnav02.dropdown-toggle::after {
    display: none;
  }
}

.post_archive .stretched-link:hover::after {
  background-color: rgba(222, 222, 222, 0.5);
}

@media print, screen and (min-width: 768px) {
  .layout_post01 {
    padding: 24px 16px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_post01 {
    padding: 15px 10px 15px 0px;
    font-size: 0.875rem;
  }
}

.post_img {
  aspect-ratio: 300/165;
  height: 100%;
}
@media print, screen and (min-width: 768px) {
  .post_img {
    max-width: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .post_img {
    width: 100%;
  }
}

.post-pager .wp-paginate li {
  line-height: 2.5em !important;
  display: inline-block;
}

.post_wysiwyg h2, .post_wysiwyg h3 {
  line-height: 130%;
  margin-bottom: 0.9375rem;
  font-size: 0.9375rem;
  font-weight: bold;
}
.post_wysiwyg h4, .post_wysiwyg h5, .post_wysiwyg h6 {
  line-height: 150%;
  margin-bottom: 0.9375rem;
  font-weight: bold;
}
.post_wysiwyg p {
  margin-bottom: 0;
  font-size: 0.8125rem;
  line-height: 160%;
}
.post_wysiwyg img {
  max-width: 100%;
  height: auto;
}
.post_wysiwyg a:link {
  color: #2e5f92;
}
.post_wysiwyg a:visited {
  color: #2e5f92;
}
.post_wysiwyg a:hover {
  color: #2e5f92;
}
.post_wysiwyg a:active {
  color: #2e5f92;
}
.post_wysiwyg a:link, .post_wysiwyg a:visited, .post_wysiwyg a:active {
  text-decoration: underline;
}
.post_wysiwyg a:hover {
  text-decoration: none;
}

.post_paging a:link, .post_paging a:visited, .post_paging a:hover, .post_paging a:active {
  text-decoration: none;
}
.post_paging a.is-current, .post_paging a:hover {
  background-color: #F0F0F0;
}

.btn_post01 {
  background-color: #53B5C1;
  font-size: 1rem;
  font-weight: normal;
  max-width: 290px;
}

.ttl_about01 {
  background-color: #7F879F;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .ttl_about01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_about01 {
    font-size: 1.25rem;
  }
}
.ttl_about01 span {
  display: block;
  margin-bottom: 10px;
  color: #C8C8C8;
}
@media print, screen and (min-width: 768px) {
  .ttl_about01 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_about01 span {
    font-size: 1rem;
  }
}

.txt_about01 {
  color: #1A9CAC;
  font-size: 1.5rem;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "Meiryo", serif;
}
.txt_about01 ruby {
  ruby-align: center;
}
@media print, screen and (min-width: 768px) {
  .txt_about01 ruby {
    font-size: 3.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .txt_about01 ruby {
    font-size: 2.875rem;
  }
}
.txt_about01 rt {
  font-size: 0.875rem;
}

.layout_gaiyo01 {
  width: 100%;
  max-width: 800px;
}
@media print, screen and (min-width: 768px) {
  .layout_gaiyo01 {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_gaiyo01 {
    font-size: 1rem;
  }
}
.layout_gaiyo01 dt {
  position: relative;
  font-weight: bold;
  border-bottom: 1px solid #9E9E9F;
}
.layout_gaiyo01 dt span {
  position: absolute;
  display: inline-block;
  bottom: -14px;
  padding-right: 20px;
  background-color: #F5F5F5;
}
.layout_gaiyo01 dd:last-child {
  border-bottom: 1px solid #9E9E9F;
}

.btn_about01 {
  display: block;
  height: 100%;
  border: 1px solid #BDBDBD;
  background-color: #fff;
  font-size: 1.125rem;
}
.btn_about01 img {
  position: absolute;
  display: block;
  right: 10px;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
}
.btn_about01:hover {
  background-color: #eee;
  text-decoration: none;
}

.nav_history {
  text-align: center;
  width: 100%;
  max-width: 780px;
}
@media only screen and (max-width: 767px) {
  .nav_history {
    font-size: 0.875rem;
  }
}
.nav_history a {
  position: relative;
  width: 20%;
}
.nav_history a:after {
  margin-top: -13px;
  display: block;
  content: "";
  width: 100%;
  border-bottom: 1px solid #B4B4B4;
}
.nav_history a:first-child:after {
  position: absolute;
  z-index: -10;
  left: 50%;
  width: 50%;
}
.nav_history a:last-child:after {
  position: absolute;
  z-index: -10;
  right: 50%;
  width: 50%;
}

.tbl_history01 th {
  vertical-align: top;
  color: #00568E;
  line-height: 1;
  text-align: right;
  font-weight: normal;
}
@media print, screen and (min-width: 768px) {
  .tbl_history01 th {
    font-size: 1.5rem;
    padding-right: 60px;
    padding-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .tbl_history01 th {
    white-space: nowrap;
    padding-right: 10px;
    font-size: 1rem;
  }
}
.tbl_history01 .seireki {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "Meiryo", serif;
  color: #DCDCDC;
}
@media print, screen and (min-width: 768px) {
  .tbl_history01 .seireki {
    font-size: 4.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .tbl_history01 .seireki {
    display: block;
    font-size: 1.5rem;
  }
}
.tbl_history01 td {
  vertical-align: top;
  border-top: 1px solid #C8C8C9;
  white-space: nowrap;
}
@media print, screen and (min-width: 768px) {
  .tbl_history01 td {
    font-size: 1.125rem;
    padding: 30px 0 30px 50px;
  }
}
@media only screen and (max-width: 767px) {
  .tbl_history01 td {
    padding: 10px;
    font-size: 0.875rem;
  }
}
.tbl_history01 td + td {
  white-space: normal;
  padding-left: 0px;
}
.tbl_history01 .th_wrapper {
  display: block;
  margin-top: -13px;
}

.td_month {
  position: relative;
  font-weight: bold;
  font-size: 1.375rem;
}
.td_month:before {
  position: absolute;
  top: -13px;
  left: -7px;
  content: url("/images/about/history/icon_circle.svg");
}

.ttl_group01 {
  color: #1A9CAC;
  font-size: 1.125rem;
}

.link_group01 {
  color: #D60000;
  font-size: 0.8125rem;
  text-decoration: none;
}
.link_group01:link, .link_group01:visited, .link_group01:hover, .link_group01:active {
  color: #D60000;
  text-decoration: none;
}
.link_group01:hover {
  text-decoration: underline;
  opacity: 0.7;
}

@media print, screen and (min-width: 768px) {
  .layout_group01 {
    width: 20.8333333333%;
  }
}

@media print, screen and (min-width: 768px) {
  .layout_group02 {
    width: 79.1666666667%;
  }
}

@media print, screen and (min-width: 768px) {
  .layout_group03 {
    width: 27.7777777778%;
  }
}

.layout_group04 {
  font-size: 0.8125rem;
}
@media print, screen and (min-width: 768px) {
  .layout_group04 {
    width: 77.7777777778%;
  }
}

.layout_johokokai01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  border: 1px solid #878788;
  font-size: 0.9375rem;
  text-decoration: none;
}
.layout_johokokai01:hover {
  background-color: #eee;
  text-decoration: none;
}

.ttl_johokokai01 {
  color: #00568E;
}
@media print, screen and (min-width: 768px) {
  .ttl_johokokai01 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_johokokai01 {
    font-size: 1.125rem;
  }
}

.ttl_recruit01 {
  background-color: #80C1B1;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .ttl_recruit01 {
    font-size: 2.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_recruit01 {
    font-size: 1.25rem;
  }
}
.ttl_recruit01 span {
  display: block;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .ttl_recruit01 span {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_recruit01 span {
    font-size: 1rem;
  }
}

.nav_recruit {
  padding: 0;
  color: #1A9CAC;
  font-size: 0.9375rem;
  list-style: none;
}
@media print, screen and (min-width: 768px) {
  .nav_recruit {
    margin-top: -62.5px;
  }
}
@media only screen and (max-width: 767px) {
  .nav_recruit {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 768px) {
  .nav_recruit li {
    width: 100%;
    max-width: 180px;
  }
}
@media only screen and (max-width: 767px) {
  .nav_recruit li {
    margin-bottom: 1rem;
    width: calc((100% - 1rem) / 2);
  }
}
.nav_recruit a {
  display: block;
  text-align: center;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  .nav_recruit a {
    padding: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .nav_recruit a {
    padding: 10px;
    border: 1px solid #000;
    border-radius: 10px;
  }
}
.nav_recruit a:link, .nav_recruit a:visited, .nav_recruit a:hover, .nav_recruit a:active {
  color: #fff;
  text-decoration: none;
}
.nav_recruit a:hover, .nav_recruit a.is-current {
  color: #1A9CAC;
  background-color: #fff;
}
.nav_recruit a:hover img, .nav_recruit a.is-current img {
  filter: invert(60%);
}
.nav_recruit a img {
  bottom: 10px;
  right: 10px;
}
.nav_recruit .is-current a:link {
  color: #1A9CAC;
}
.nav_recruit .is-current a:visited {
  color: #1A9CAC;
}
.nav_recruit .is-current a:hover {
  color: #1A9CAC;
}
.nav_recruit .is-current a:active {
  color: #1A9CAC;
}
.nav_recruit .is-current a {
  background-color: #fff;
}

.ttl_recruit02 {
  background-color: #1A9CAC;
  font-size: 1.0625rem;
  color: #fff;
}

.txt_recruit01 {
  color: #1A9CAC;
}

.tbl_recruit01 {
  width: 100%;
}
.tbl_recruit01 th, .tbl_recruit01 td {
  padding: 5px;
  border: 1px solid #fff;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .tbl_recruit01 th, .tbl_recruit01 td {
    width: 33%;
  }
}
.tbl_recruit01 th:not(.style_td) {
  background-color: #E8F6E4;
}
.tbl_recruit01 td, .tbl_recruit01 .style_td {
  background-color: #E9E9E9;
}

.career_requirements table {
  width: 100%;
  caption-side: top;
}
@media print, screen and (min-width: 768px) {
  .career_requirements table {
    margin-bottom: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .career_requirements table {
    margin-bottom: 20px;
    border: 1px solid #9E9E9F;
  }
}
.career_requirements caption {
  padding: 15px;
  background-color: #F7F7F7;
  font-size: 1.125rem;
  color: #000000;
  border: 1px solid #9E9E9F;
  border-bottom: none;
}
.career_requirements th, .career_requirements td {
  padding: 15px;
  border: 1px solid #9E9E9F;
  font-weight: normal;
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .career_requirements th, .career_requirements td {
    display: block;
    border: none;
    width: 100%;
  }
}
.career_requirements th {
  vertical-align: middle;
  background-color: #F7F7F7;
}
@media print, screen and (min-width: 768px) {
  .career_requirements th {
    width: 200px;
    text-align: center;
  }
}

@media print, screen and (min-width: 768px) {
  .layout_recruit01 {
    max-width: 690px;
  }
}
.layout_recruit01 dl {
  margin-bottom: 0;
  border-radius: 10px;
  background-color: #fff;
  height: 100%;
}
.layout_recruit01 dt {
  padding: 10px;
  text-align: center;
  font-weight: bold;
  line-height: 1.25;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .layout_recruit01 dt {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_recruit01 dt {
    font-size: 1.125rem;
  }
}
.layout_recruit01 dd {
  margin-bottom: 0;
  color: #000;
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.layout_recruit01 dd img {
  display: block;
  margin-bottom: 10px;
}
.layout_recruit01 p {
  font-size: 0.9375rem;
  margin-bottom: 0;
  padding-left: 15px;
  text-indent: -15px;
}
.layout_recruit01 p::first-letter {
  color: #A6A7A7;
}

.shikaku_pink {
  border: 2px solid #ED97A4;
}
.shikaku_pink dt {
  background-color: #E25574;
}

.shikaku_green {
  border: 2px solid #A3C765;
}
.shikaku_green dt {
  background-color: #399D26;
}

.suki_red {
  border: 2px solid #FCA518;
}
.suki_red dt {
  background-color: #E33C0B;
}

.suki_blue {
  border: 2px solid #0099DB;
}
.suki_blue dt {
  background-color: #005DAB;
}

.wrapper_madoguchi01 {
  max-width: 650px;
  margin-inline: auto;
}

.wrapper_madoguchi02 {
  margin-inline: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 100%;
  max-width: calc(900px + 3rem);
}

.tbl_madoguchi01 {
  width: 100%;
  font-size: 0.8125rem;
  background-color: #fff;
}
.tbl_madoguchi01 th, .tbl_madoguchi01 td {
  vertical-align: center;
  border: 1px solid #B4B4B4;
  font-weight: normal;
}
@media print, screen and (min-width: 768px) {
  .tbl_madoguchi01 th, .tbl_madoguchi01 td {
    padding: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .tbl_madoguchi01 th, .tbl_madoguchi01 td {
    padding: 5px 10px;
  }
}
.tbl_madoguchi01 th {
  background-color: #D5ECE2;
  text-align: center;
}
.tbl_madoguchi01 td:first-child {
  width: 224px;
  background-color: #EEECDE;
}
.tbl_madoguchi01 td:nth-child(3) {
  width: 290px;
}
.tbl_madoguchi01 td:last-child {
  width: 260px;
}

.btn_contact01 {
  display: block;
  padding: 5px 10px;
  max-width: 400px;
  border: 1px solid #B4B4B4;
  border-radius: 10px;
  text-align: center;
  font-size: 1rem;
  font-weight: bold;
  background-color: #fff;
}
.btn_contact01:hover {
  opacity: 0.7;
  text-decoration: none;
}

.layout_madoguchi01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 1.25;
  padding: 10px 10px 10px 0;
  border: 1px solid #999999;
  font-size: 1.0625rem;
  max-width: 300px;
}
.layout_madoguchi01 > div {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .layout_madoguchi01 {
    margin: 0 auto;
  }
}

.layout_madoguchi02 {
  flex-shrink: 0;
  max-width: 192px;
}

.mail_madoguchi {
  display: block;
  position: relative;
  padding-right: 35px;
  padding-bottom: 3px;
  margin-bottom: 3px;
  border-bottom: 1px solid #999;
  font-size: 1.125rem;
}
.mail_madoguchi:hover {
  text-decoration: none;
  opacity: 0.5;
}
.mail_madoguchi:after {
  content: url("/images/contact/madoguchi/icon_mail02.svg");
  position: absolute;
  right: 0;
  top: -4px;
}

.layout_riyoflow01 {
  list-style: none;
}
.layout_riyoflow01 li {
  max-width: 250px;
}
.layout_riyoflow01 a {
  border: 1px solid #B4B4B4;
  font-size: 1.125rem;
}
.layout_riyoflow01 a:hover {
  background-color: #eee;
}

.color_riyoflow01 {
  color: #735029;
}
.color_riyoflow01:link, .color_riyoflow01:visited, .color_riyoflow01:hover, .color_riyoflow01:active {
  color: #735029;
  text-decoration: none;
}

.color_riyoflow02 {
  color: #449042;
}
.color_riyoflow02:link, .color_riyoflow02:visited, .color_riyoflow02:hover, .color_riyoflow02:active {
  color: #449042;
  text-decoration: none;
}

.color_riyoflow03 {
  color: #CC5520;
}
.color_riyoflow03:link, .color_riyoflow03:visited, .color_riyoflow03:hover, .color_riyoflow03:active {
  color: #CC5520;
  text-decoration: none;
}

.ttl_riyoflow01 {
  font-size: 1.75rem;
  border-left: 6px solid #735029;
  padding-left: 20px;
  font-weight: bold;
  color: #735029;
}

.ttl_riyoflow02 {
  font-size: 1.75rem;
  border-left: 6px solid #449042;
  padding-left: 20px;
  font-weight: bold;
  color: #449042;
}

.ttl_riyoflow03 {
  font-size: 1.75rem;
  border-left: 6px solid #CC5520;
  padding-left: 20px;
  font-weight: bold;
  color: #CC5520;
}

.txt_riyoflow01 {
  font-size: 1.125rem;
  text-align: center;
  border: 1px solid #735029;
  color: #735029;
  background-color: #F1EDE9;
  border-radius: 10px;
}

.txt_riyoflow02 {
  font-size: 1.375rem;
  text-align: center;
  border: 1px solid #735029;
  color: #fff;
  background-color: #AB967F;
  border-radius: 10px;
  font-weight: bold;
}

.txt_riyoflow03 {
  font-size: 1.125rem;
  text-align: center;
  border: 1px solid #449042;
  color: #449042;
  background-color: #ECF4EC;
  border-radius: 10px;
}

.txt_riyoflow04 {
  font-size: 1.375rem;
  text-align: center;
  border: 1px solid #449042;
  color: #fff;
  background-color: #8FBC8E;
  border-radius: 10px;
  font-weight: bold;
}

.txt_riyoflow05 {
  font-size: 1.125rem;
  text-align: center;
  border: 1px solid #CC5520;
  color: #CC5520;
  background-color: #FAEEE8;
  border-radius: 10px;
}

.txt_riyoflow06 {
  font-size: 1.375rem;
  text-align: center;
  border: 1px solid #CC5520;
  color: #fff;
  background-color: #E09979;
  border-radius: 10px;
  font-weight: bold;
}

.txt_riyoflow07 {
  padding-left: 0.9375rem;
  text-indent: -0.9375rem;
  font-size: 0.9375rem;
}

.layout_contact01 {
  max-width: 700px;
}
@media print, screen and (min-width: 768px) {
  .layout_contact01 {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .layout_contact01 {
    font-size: 0.875rem;
  }
}
.layout_contact01 input[type=text], .layout_contact01 textarea {
  padding: 10px;
  width: 100%;
}
.layout_contact01 select {
  padding: 10px;
}

@media print, screen and (min-width: 768px) {
  .layout_contact02 {
    max-width: 320px;
  }
}

.btn_form, .btn_toppage, .btn_entry, .btn_send, .btn_confirm {
  padding: 0;
  background-color: transparent;
  border: none;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  display: block;
  margin-inline: auto;
  width: 100%;
  max-width: 300px;
  text-align: center;
  background-color: #000;
  color: #fff;
  font-weight: normal;
  border-radius: 10px;
  text-decoration: none;
}
@media print, screen and (min-width: 768px) {
  .btn_form, .btn_toppage, .btn_entry, .btn_send, .btn_confirm {
    line-height: 60px;
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .btn_form, .btn_toppage, .btn_entry, .btn_send, .btn_confirm {
    font-size: 1rem;
    line-height: 40px;
  }
}
.btn_form:link, .btn_toppage:link, .btn_entry:link, .btn_send:link, .btn_confirm:link, .btn_form:visited, .btn_toppage:visited, .btn_entry:visited, .btn_send:visited, .btn_confirm:visited, .btn_form:hover, .btn_toppage:hover, .btn_entry:hover, .btn_send:hover, .btn_confirm:hover, .btn_form:active, .btn_toppage:active, .btn_entry:active, .btn_send:active, .btn_confirm:active {
  color: #fff;
  text-decoration: none;
}
.btn_form:hover, .btn_toppage:hover, .btn_entry:hover, .btn_send:hover, .btn_confirm:hover {
  opacity: 0.7;
  text-decoration: none;
  cursor: pointer;
}

.layout_send {
  display: flex;
  justify-content: space-around;
}
.layout_send button {
  max-width: 350px;
  margin-right: 10px;
  margin-left: 10px;
}

#thanks {
  line-height: 1.75;
}
#thanks a {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.req,
.validation-error,
.field-validation-error {
  font-size: 11px;
  color: Red;
  padding-left: 4px;
}

.input-validation-error {
  border: 1px solid #ff0000;
  background-color: #ffeeee;
}

label.error {
  font-size: 11px;
  color: Red;
  padding-left: 4px;
}

input.error, select.error, textarea.error {
  border: 1px solid red;
}

.shop_bxslider {
  padding-bottom: 60px;
  overflow: hidden;
}
.shop_bxslider * {
  box-sizing: border-box;
}
.shop_bxslider .bx-viewport {
  overflow: visible !important;
  width: 300px !important;
  margin: 0 auto;
}

.layout_onlineshop01 dt {
  min-height: 80px;
}

.ttl_privacy01 {
  background-color: #EEEFEF;
  border: 1px solid #B4B4B4;
  border-radius: 5px;
}
@media only screen and (max-width: 767px) {
  .ttl_privacy01 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_privacy01 {
    font-size: 1.125rem;
  }
}

.style_sitemap01 {
  line-height: 1.75;
}
.style_sitemap01 a:after {
  content: "▶";
  display: inline-block;
  margin-left: 10px;
}
.style_sitemap01 li {
  list-style: none;
  font-size: 0.9375rem;
}
.style_sitemap01 li a:before {
  content: "∟";
  display: inline-block;
  margin-right: 5px;
}

.ttl_sitemap01 {
  color: #3F6EB4;
  border-bottom: 1px solid #B4B4B4;
  font-weight: bold;
}
.ttl_sitemap01 a:link {
  color: #3F6EB4;
}
.ttl_sitemap01 a:visited {
  color: #3F6EB4;
}
.ttl_sitemap01 a:hover {
  color: #3F6EB4;
}
.ttl_sitemap01 a:active {
  color: #3F6EB4;
}
@media print, screen and (min-width: 768px) {
  .ttl_sitemap01 {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 767px) {
  .ttl_sitemap01 {
    font-size: 1.125rem;
  }
}

.line_sitemap01 {
  border: none;
  border-bottom: 1px dashed #B4B4B4;
}