@charset "UTF-8";
:root {
  --f-jp: "Zen Kaku Gothic New", sans-serif;
  --f-en: "Abel", sans-serif;
  --main-color: #f15922;
  --clr1: #402720;
  --clr2: #f58220;
  --clr3: #fbedc3;
  --cl-button-tab-hover:#ffa800;
  --ttl_size: 30px;
  --wrapper: 100px;
  --border-radius: 10px;
  --line-height-p:2;
  --value-transition: all .3s;
}

/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/
/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
body {
  background-color: #ffffff;
  -webkit-text-size-adjust: none;
  letter-spacing: 0.1em;
  color: var(--clr1);
  font-family: var(--f-jp);
}
body::-webkit-scrollbar {
  display: block;
  width: 10px;
  height: 10px;
}
body::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #fff;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5);
}
body::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: linear-gradient(to bottom, var(--clr2) 0%, var(--main-color) 50%, var(--clr2) 100%);
  box-shadow: inset 0 0 6px #fff;
}
body::-webkit-scrollbar-thumb:window-inactive {
  background: linear-gradient(to bottom, var(--clr2) 0%, var(--main-color) 50%, var(--clr2) 100%);
}

h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
pre,
address,
li,
dt,
dd {
  font-size: 100%;
  -webkit-text-size-adjust: none;
}

header,
section,
footer,
aside,
nav,
main,
article,
figure,
picture {
  display: block;
  padding: 0;
  margin: 0;
}

img {
  display: table;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

a:not(.tel_click) {
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  color: #64b5f7;
}
a.tel_click {
  text-decoration: none;
  color: inherit;
}

@media only screen and (min-width: 769px) {
  a:not([target*=_blank]) {
    transition: opacity 0.3s ease;
  }
  a:not([target*=_blank]):hover {
    opacity: 0.7;
  }
  a.tel_click {
    pointer-events: none;
  }
  a:not(.tel_click):hover, a:not(.tel_click):active {
    color: #64b5f7;
  }
}
a.logo:hover,
.logo a:hover,
a.ft_logo:hover,
.ft_logo a:hover,
a.tel_click:hover {
  opacity: 1 !important;
}

table {
  width: 100%;
}

iframe {
  width: 100%;
  height: 100%;
}

.captcha_box iframe {
  height: auto;
}

.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

p {
  line-height: var(--line-height-p);
  letter-spacing: 0.1em;
  word-wrap: break-word;
  word-break: break-word;
  margin-bottom: 15px;
}
p:empty {
  display: none !important;
}
p:last-child {
  margin-bottom: 0;
}

.red {
  color: #ca0a0a !important;
}

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

.fl {
  float: left;
}

.fr {
  float: right;
}

*,
::after,
::before {
  box-sizing: border-box;
}

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html {
  overflow-x: auto !important;
}

.wrapper {
  padding-top: var(--wrapper);
  overflow: hidden;
}

.inner_max,
.inner_big,
.inner,
.inner_sm {
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}

.inner_max {
  max-width: 1480px;
}

.inner_big {
  max-width: 1320px;
}

.inner {
  max-width: 1210px;
}

.inner_sm {
  max-width: 1020px;
}

.fullWidthBreak {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.txt_ver {
  writing-mode: vertical-rl;
}

@media only screen and (min-width: 769px) {
  .txt_ver_pc {
    writing-mode: vertical-rl;
  }
}
/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                           WordPress Core                                 */
/*==========================================================================*/
.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 35px;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}
a img.alignnone {
  margin: 5px 20px 20px 0;
}
a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}
a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center;
}
.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}
.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}
.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/*==========================================================================*/
/*==========================================================================*/
/*==========================================================================*/
/*                              General                                     */
/*==========================================================================*/
@media only screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }
}
@media only screen and (min-width: 769px) {
  .sp_only {
    display: none !important;
  }
}
.TabContainer .TabContent {
  position: relative;
  z-index: 2;
  overflow: hidden;
}
.TabContainer .TabContent .content {
  transition: all 0.3s ease-in-out;
}
.TabContainer .TabContent .content > div {
  opacity: 0;
  z-index: -10;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transition: all 0.5s ease-in-out;
}
.TabContainer .TabContent .content > div.active {
  opacity: 1;
  z-index: 1;
  visibility: visible;
  position: relative;
}
.TabContainer .TabPager {
  display: flex;
  justify-content: center;
  margin: 0px auto;
}
.TabContainer .TabPager > div {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  transition: var(--value-transition);
  cursor: pointer;
}

.rel {
  position: relative;
}

.ovh {
  overflow: hidden !important;
}

.ovs {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  /* Lets it scroll lazy */
}

.lt0 {
  letter-spacing: 0 !important;
}

figure,
picture {
  text-align: center;
  line-height: 1;
}

.fblock {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.key {
  position: relative;
}

.txt_l {
  float: left;
  width: calc(100% - 385px);
}

.txt_r {
  float: right;
  width: calc(100% - 385px);
}

.link > a {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.tel_click {
  display: table;
  text-decoration: none;
}
.tel_click .icon {
  display: flex;
  align-items: center;
  font-family: var(--f-en);
  font-weight: 700;
  color: var(--main-color);
  letter-spacing: 0.05em;
  font-size: 1.5em;
}
.tel_click .icon::before {
  content: "";
  display: block;
  margin-right: 0.3214em;
  margin-top: 0.1786em;
  width: 0.893em;
  height: 0.893em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 101' %3E%3Cpath d='M97.829,82.824 C98.198,91.823 96.073,94.826 87.308,97.205 C74.144,100.791 61.788,98.752 50.561,91.066 C33.671,79.497 19.384,65.207 7.912,48.225 C-0.287,36.096 -1.826,22.855 2.769,8.952 C4.752,2.953 8.059,0.771 14.407,0.925 C23.639,1.157 23.633,1.157 26.561,10.079 C27.869,14.063 29.100,18.078 30.561,22.007 C32.367,26.859 31.432,30.918 27.914,34.711 C22.303,40.765 22.378,40.854 26.680,47.891 C33.854,59.628 43.600,68.580 55.717,75.040 C57.758,76.123 59.178,76.250 60.774,74.416 C62.051,72.951 63.620,71.738 65.076,70.429 C68.123,67.696 71.576,66.743 75.537,68.072 C82.013,70.255 88.532,72.319 94.923,74.723 C96.087,75.162 97.048,76.900 97.511,78.240 C97.992,79.641 97.756,81.285 97.829,82.824 Z'/%3E%3C/svg%3E");
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: var(--main-color);
}

.en {
  font-family: var(--f-en);
}

.btn a {
  position: relative;
  color: var(--main-color);
  text-decoration: none;
  font-family: var(--f-jp);
}
.btn a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 0.8889em;
  height: 0.5em;
  right: 0.77778em;
  top: 0;
  bottom: 0;
  margin: auto 0;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 157 91' %3E%3Cpath d='M145.372,45.803 L145.372,45.852 L156.999,45.803 L110.489,90.660 L98.865,83.194 L132.344,53.290 L0.040,53.290 L0.040,38.358 L131.448,38.358 L98.865,8.454 L110.489,0.967 L156.999,45.803 L145.372,45.803 Z'/%3E%3C/svg%3E");
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: white;
}

.btn-group {
  font-size: 0.625em;
}
.btn-group .btn {
  font-size: 1em;
}
.btn-group .btn.style01 {
  width: 100%;
  min-width: 100px;
  max-width: 360px;
  overflow: hidden;
}
.btn-group .btn.style01 a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 56px;
  padding: 0.5em 2em;
  font-size: 1.8em;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  background-color: var(--clr2);
  transition: var(--value-transition);
}
.btn-group .btn.style01 a::after {
  background-color: #fff;
}
.btn-group .btn.style01 a:hover {
  opacity: 1;
}
@media only screen and (min-width: 769px) {
  .btn-group .btn.style01 a:not([target*=_blank]):hover {
    background-color: var(--main-color);
  }
}
.btn-group .btn.bg02 a {
  background-color: var(--main-color);
}
@media only screen and (min-width: 769px) {
  .btn-group .btn.bg02 a:not([target*=_blank]):hover {
    background-color: var(--clr2);
  }
}
.btn-group .btn.btn-border {
  --cl-mode-border: var(--clr2);
}
.btn-group .btn.btn-border a {
  color: var(--cl-mode-border);
  background-color: white;
}
.btn-group .btn.btn-border a::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--cl-mode-border);
  border-radius: inherit;
}
.btn-group .btn.btn-border a::after {
  background-color: var(--cl-mode-border);
}
@media only screen and (min-width: 769px) {
  .btn-group .btn.btn-border a:not([target*=_blank]):hover {
    --cl-mode-border: white;
  }
  .btn-group .btn.btn-border a:not([target*=_blank]):hover::before {
    opacity: 0;
  }
}
.btn-group .btn.btn-border.bd-white {
  --cl-mode-border: white;
}
.btn-group .btn.btn-border.bd-white a {
  background-color: transparent;
}

.yt {
  max-width: 960px;
  margin: 0px auto;
}

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.slick-arrow {
  display: block;
  border: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-color: transparent;
  position: absolute;
  top: 37%;
  width: 2em;
  height: 2em;
  transform: translateY(-50%);
  cursor: pointer;
  color: transparent;
}
.slick-arrow:focus {
  outline: 0;
}

.slick-prev {
  left: -1em;
}

.slick-next {
  right: -1em;
}

/* Tablet
-------------------------------------------*/
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  body {
    font-size: 87.5%;
  }
}
@media only screen and (max-width: 1024px) {
  .btn-group .btn.style01 a {
    min-height: 50px;
  }
}
.br_auto {
  display: inline-block;
}

@media only screen and (max-width: 319px) {
  .br_auto {
    display: inline;
  }
}
.br_1366,
.br_1280,
.br_1170,
.br_769,
.ft_br_769,
.br_750,
.br_640,
.br_520,
.br_480,
.br_430,
.br_390,
.br_375,
.br_360,
.br_320 {
  display: none;
}

@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .br_1366 {
    display: block;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1280px) {
  .br_1280,
  footer .ft_br_1280 {
    display: block;
  }
  .dis_1280 {
    display: none;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1170px) {
  .br_1170 {
    display: block;
  }
  .dis_1170 {
    display: none;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  footer .ft_br_769,
  .br_769 {
    display: block;
  }
  .dis_769 {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .br_750 {
    display: block;
  }
  .dis_750 {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  .br_640 {
    display: block;
  }
  .dis_640 {
    display: none;
  }
}
@media only screen and (max-width: 520px) {
  .br_520 {
    display: block;
  }
  .dis_520 {
    display: none;
  }
}
@media only screen and (max-width: 480px) {
  .br_480 {
    display: block;
  }
  .in_480 {
    display: inline;
  }
  .dis_480 {
    display: none;
  }
}
@media only screen and (max-width: 430px) {
  .br_430 {
    display: block;
  }
  .in_430 {
    display: inline;
  }
  .dis_430 {
    display: none;
  }
}
@media only screen and (max-width: 390px) {
  .br_390 {
    display: block;
  }
  .in_390 {
    display: inline;
  }
  .dis_390 {
    display: none;
  }
}
@media only screen and (max-width: 375px) {
  .br_375 {
    display: block;
  }
  .in_375 {
    display: inline;
  }
  .dis_375 {
    display: none;
  }
}
@media only screen and (max-width: 360px) {
  .br_360 {
    display: block;
  }
  .dis_360 {
    display: none;
  }
  .in_360 {
    display: inline;
  }
}
@media only screen and (max-width: 350px) {
  .in_320 {
    display: inline;
  }
  .br_320 {
    display: block;
  }
  .dis_320 {
    display: none;
  }
  .inside .inside_br_320 {
    display: block;
  }
}
@media only screen and (max-width: 319px) {
  .br_769,
  .br_640,
  .br_520,
  .br_480,
  .br_430,
  .br_375 {
    display: none;
  }
}
.flex_gr {
  --size-mg: 5px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: calc(var(--size-mg) * -1);
}
.flex_gr .item {
  width: 100%;
  margin: var(--size-mg);
}
@media only screen and (min-width: 769px) {
  .flex_gr.col-2 .item {
    width: calc(50% - 2 * var(--size-mg));
  }
  .flex_gr.col-3 .item {
    width: calc(33.333333% - 2 * var(--size-mg));
  }
  .flex_gr.col-4 .item {
    width: calc(25% - 2 * var(--size-mg));
  }
  .flex_gr.col-5 .item {
    width: calc(20% - 2 * var(--size-mg));
  }
}

.link a {
  position: absolute;
  display: block;
  inset: 0;
  z-index: 2;
}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                           Header - Footer                                */
/*==========================================================================*/
h1 {
  position: absolute;
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--wrapper);
  z-index: 20;
  font-size: min(0.85vw, 10px);
  background-color: white;
}

.ovh header .right_head {
  padding-right: calc(var(--wrapper) * 2 - 20px);
}

.header_top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  margin: 0 auto;
  padding: 5px 20px;
  height: 100%;
  transition: all 0.3s ease-in-out;
}

.logo {
  width: 25%;
  max-width: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.logo a {
  display: block;
  width: 100%;
  text-align: center;
}
.logo img {
  width: auto;
}

.right_head {
  width: 70%;
  padding-right: calc(var(--wrapper) + 7.3em);
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  transition: var(--value-transition);
}

.pc_navi {
  width: 100%;
}
.pc_navi > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  text-align: center;
  width: 100%;
}
.pc_navi > ul > li {
  position: relative;
  margin-right: 13.4em;
}
.pc_navi > ul > li:last-of-type {
  margin-right: 0;
}
.pc_navi > ul > li:hover > a,
.pc_navi > ul > li:hover > p {
  opacity: 0.8;
  color: var(--main-color);
}
.pc_navi > ul > li.menu-item-has-children > a::after,
.pc_navi > ul > li.menu-item-has-children > p::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  width: 8px;
  height: 7px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--clr2);
}
.pc_navi > ul > li.menu-item-has-children > a:hover::after,
.pc_navi > ul > li.menu-item-has-children > p:hover::after {
  transform: translateY(5px);
}
.pc_navi > ul > li > a,
.pc_navi > ul > li > p {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 0;
  height: 40px;
  text-decoration: none;
  text-align: center;
  font-size: 1.6em;
  line-height: 1.5;
  letter-spacing: 0.1em;
  transition: var(--value-transition);
  color: var(--clr1);
}
.pc_navi > ul > li > a span,
.pc_navi > ul > li > p span {
  display: block;
  width: 100%;
  padding-top: 0px;
  font-size: 66.6666666667%;
  font-weight: 600;
}
.pc_navi > ul > li:hover a.title::after,
.pc_navi > ul > li:hover p.title::after {
  transform: translateY(5px);
}
.pc_navi > ul .subInner {
  position: absolute;
  width: min(30em, 230px);
  right: 50%;
  bottom: -15px;
  padding-top: 0px;
  transform: translate(50%, 100%);
  transition: all 0.2s ease-in-out;
  opacity: 0;
  visibility: hidden;
  z-index: 1;
}
.pc_navi > ul .subInner.active {
  opacity: 1;
  visibility: visible;
}
.pc_navi > ul .subInner ul {
  background-color: var(--main-color);
  padding-bottom: 10px;
}
.pc_navi > ul .subInner ul li {
  padding: 0 10px;
}
.pc_navi > ul .subInner ul li a {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 1.2em 0.6em 1.2em 1.6em;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.7);
  transition: all 0.2s ease;
  font-size: 1.4em;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  text-align: left;
  letter-spacing: 0.05em;
}
.pc_navi > ul .subInner ul li a::before {
  content: "›";
  display: block;
  position: absolute;
  top: 50%;
  left: 0.6em;
  transform: translateY(-54%);
}

.hd-line {
  position: fixed;
  top: 0;
  right: calc(var(--wrapper));
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--wrapper);
  height: var(--wrapper);
  font-size: 1em;
  transition: var(--value-transition);
}
.hd-line .icon {
  position: relative;
  z-index: 1;
  width: 4.7em;
  height: 4.4em;
  background: url(../images/hd_line_ico.png) no-repeat center/cover;
}

@media only screen and (min-width: 769px) {
  .hd-line {
    opacity: 0;
    z-index: -1;
    right: calc(var(--wrapper) - 30px);
  }
  .ovh .hd-line {
    opacity: 1;
    z-index: 1;
    right: var(--wrapper);
  }
  .pc_navi > ul .col2 .subInner {
    width: min(66em, 530px);
  }
  .pc_navi > ul .col2 .subInner ul {
    display: flex;
    flex-wrap: wrap;
  }
  .pc_navi > ul .col2 .subInner ul li {
    width: 50%;
  }
  .menu_toggle .inside .ft_link {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .menu_toggle .inside .ft_link .link_list {
    width: 100%;
  }
  .menu_toggle .inside .ft_link a:hover {
    color: var(--main-color);
  }
  .menu_toggle .inside .ft_link .footer-main-menu > li:not(.child-has-sub) > a::before {
    background-color: var(--clr1);
  }
  .menu_toggle .inside .ft_link .footer-main-menu > li:not(.child-has-sub) > a:hover::before {
    background-color: var(--main-color);
  }
  .menu_toggle .inside .ft_link .footer-main-menu .child-has-sub > a::before {
    background-color: var(--clr1);
  }
  .menu_toggle .inside .ft_link .footer-main-menu > li > a {
    border-color: rgba(64, 39, 32, 0.3);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .pc_navi > ul > li {
    margin-right: 7em;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  :root {
    --wrapper: 80px;
  }
  .logo {
    max-width: 23vw;
  }
  .right_head {
    padding-right: calc(var(--wrapper) * 1.3);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .pc_navi > ul > li:nth-of-type(3) .subInner {
    right: 103%;
  }
  .pc_navi > ul .subInner ul li a {
    font-size: 12px;
  }
  .pc_navi > ul > li {
    margin-right: 5em;
  }
}
@media only screen and (min-width: 769px) and (max-height: 700px) {
  .menu_toggle .inside .ft_link {
    font-size: 1.25vmin;
  }
}
.idx_gallery {
  position: relative;
  z-index: 2;
}
.idx_gallery .list {
  display: flex;
}
.idx_gallery .list .img img {
  overflow: hidden;
  border-radius: 20px;
  margin: 0 6px;
}
.idx_gallery .list .item:nth-child(2n) {
  margin-top: 80px;
}

.time_sheet {
  margin: 0px auto;
  max-width: 560px;
  font-size: min(0.9vw, 10px);
}
.time_sheet .time_sheet_note {
  margin-top: 14px;
  margin-left: 13px;
}
.time_sheet .time_sheet_note li {
  position: relative;
  z-index: 1;
  padding-left: 18px;
  margin-bottom: 6.5px;
  font-size: 13px;
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1.8;
}
.time_sheet .time_sheet_note li::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  top: 0.65em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: var(--clr1);
}
.time_sheet .time_sheet_note li:last-of-type {
  margin-bottom: 0;
}
.time_sheet table th,
.time_sheet table td {
  border-top: none;
  border-right: none;
  border-left: none;
  text-align: center;
  font-size: 1.8em;
  font-weight: 400;
  letter-spacing: 0.1em;
  width: 10%;
  border-bottom: 1px solid #e1e1e1;
}
.time_sheet table th:first-child,
.time_sheet table td:first-child {
  width: 24.5%;
  padding-right: 0.05em;
}
.time_sheet table th:last-child,
.time_sheet table td:last-child {
  width: 14.7%;
  letter-spacing: 0;
}
.time_sheet table th {
  padding: 1em 0.2em;
}
.time_sheet table td {
  padding: 0.8em 0.2em 1em;
  color: var(--clr2);
}
.time_sheet table td:first-child {
  color: var(--clr1);
}
.time_sheet table tr:nth-child(3) td {
  padding-bottom: 1.6em;
}

@media only screen and (max-width: 1366px) and (min-width: 769px) {
  :root {
    --ttl_size: 26px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx_gallery .list .item:nth-child(2n) {
    margin-top: 50px;
  }
  .idx_gallery .list .img img {
    max-width: 280px;
  }
}
@media only screen and (max-width: 992px) and (min-width: 769px) {
  :root {
    --ttl_size: 24px;
    --wrapper: 80px;
  }
}
@keyframes rotate360 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.totop {
  transition: all 0.3s;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  position: fixed;
  z-index: 19;
  bottom: 25px;
  right: 25px;
}
.totop::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../images/totop_text_arround.png) no-repeat center/cover;
  animation: rotate360 10s linear infinite;
}
.totop.active {
  opacity: 1;
  visibility: visible;
}
.totop .icon {
  background-image: url(../images/totop.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  border: 0px;
  width: 86px;
  height: 86px;
  margin: 0;
  transition: var(--value-transition);
}

@media only screen and (min-width: 769px) {
  .totop:hover .icon {
    opacity: 0.9;
  }
}
.bounce {
  animation-name: bounces;
}

.animateds {
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@keyframes bounces {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@keyframes fixed_banner {
  0% {
    left: 0;
    opacity: 1;
  }
  100% {
    left: -3px;
    opacity: 0.7;
  }
}
.inside_fixed {
  --size: 8em;
  position: relative;
  top: 0;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  justify-content: flex-end;
  font-size: min(1vw, 10px);
}
.inside_fixed > div {
  position: relative;
  max-width: var(--size);
  height: var(--size);
  transition: all 0.3s ease;
}
.inside_fixed a {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  position: absolute !important;
  z-index: 2 !important;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.inside_fixed p {
  display: block;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
  color: #fff;
  font-size: 1.4em;
  letter-spacing: 0.05em;
  line-height: 1.2857;
  text-align: center;
  text-decoration: none;
}
.inside_fixed p .tt {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: 100%;
  flex-direction: column;
}
.inside_fixed p .tt::before {
  content: "";
  display: block;
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: #fff;
}
.inside_fixed .tel p {
  background-color: var(--main-color);
}
.inside_fixed .tel p .tt::before {
  margin-bottom: 0.54em;
  width: 1.57145em;
  height: 1.57145em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 219' %3E%3Cpath d='M219.067,163.378 L219.067,206.241 C219.070,212.592 214.138,217.896 207.778,218.335 C202.473,218.698 198.142,218.900 194.791,218.900 C87.532,218.900 0.593,132.079 0.593,24.946 C0.593,21.600 0.775,17.257 1.151,11.973 C1.596,5.602 6.888,0.701 13.264,0.701 L56.182,0.701 C59.301,0.701 61.915,3.057 62.226,6.152 C62.505,8.934 62.761,11.137 63.003,12.830 C65.416,29.658 70.358,46.018 77.665,61.347 C78.818,63.780 78.066,66.659 75.881,68.199 L49.688,86.916 C65.703,124.160 95.441,153.891 132.757,169.875 L151.449,143.748 C153.026,141.560 155.953,140.807 158.403,141.971 C173.758,149.241 190.126,154.170 206.953,156.568 C208.641,156.819 210.862,157.083 213.628,157.341 C216.727,157.669 219.082,160.255 219.079,163.378 L219.067,163.378 Z'/%3E%3C/svg%3E");
}
.inside_fixed .voice p {
  background-color: var(--clr2);
}
.inside_fixed .voice p .tt::before {
  margin-bottom: 0.2em;
  width: 1.7143em;
  height: 2.1429em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 300' %3E%3Cpath d='M126.322,0.092 C158.477,3.103 186.638,25.257 196.093,56.332 C199.058,66.077 199.650,76.004 199.951,86.139 C206.845,87.234 213.172,94.664 214.228,101.398 C215.036,106.563 215.129,125.684 213.871,130.390 C212.156,136.796 206.448,142.763 199.971,144.275 C199.827,152.745 199.132,160.733 193.712,167.572 C187.926,174.877 178.579,178.906 169.248,178.153 C165.266,177.840 161.216,174.779 159.737,180.698 L168.784,201.624 C176.110,204.823 184.582,212.617 191.721,215.356 C206.699,221.100 217.454,217.343 229.969,232.051 C242.704,246.996 245.658,280.345 224.404,289.156 C204.082,297.583 165.324,298.664 142.939,299.389 C107.085,300.560 70.043,300.434 34.638,293.861 C10.406,289.365 -1.749,284.269 0.178,256.344 C1.324,239.726 11.811,225.317 27.668,220.075 C34.197,217.914 42.837,217.552 48.893,215.001 C55.862,212.073 63.329,205.263 70.477,202.098 L80.119,179.757 C71.434,169.210 58.609,159.541 60.339,144.199 C52.487,144.791 42.153,146.346 35.057,142.317 C30.314,139.626 26.033,133.450 25.374,128.019 C24.685,122.331 24.699,107.525 25.461,101.879 C26.392,94.964 32.794,87.268 39.848,86.139 C40.075,74.972 40.989,64.300 44.569,53.683 C54.391,24.532 82.773,2.448 113.477,0.092 L126.322,0.092 ZM60.342,85.616 L60.342,77.119 C60.342,70.734 66.088,56.799 69.439,51.104 C88.981,17.861 131.322,9.043 160.464,35.845 C168.526,43.255 179.456,61.351 179.456,72.435 L179.456,85.616 L189.385,85.031 C191.687,56.012 174.862,27.975 148.490,16.222 C100.019,-5.380 46.778,32.457 50.413,85.031 L60.342,85.616 ZM169.530,85.031 L169.530,73.613 C169.530,61.072 156.877,44.461 146.709,37.922 C114.035,16.940 78.211,40.467 70.853,75.063 L82.139,67.353 C89.152,63.491 101.651,59.351 109.610,59.859 C114.075,60.152 114.067,63.303 116.408,65.980 C129.414,80.869 150.760,84.111 169.530,85.031 ZM169.530,149.747 L169.530,94.985 C147.495,93.981 121.191,89.597 107.517,70.518 L106.777,70.336 C95.529,71.020 83.393,76.729 75.497,84.710 C73.613,86.613 70.506,90.301 70.232,92.908 C71.453,110.725 68.732,130.424 70.248,148.019 C70.525,151.232 71.790,154.355 73.518,157.046 C76.917,162.316 96.534,184.294 101.409,187.048 C108.246,190.910 128.897,191.182 136.060,188.233 C142.651,185.507 146.561,179.199 151.425,174.347 C151.617,173.120 151.250,173.657 150.626,173.413 C148.151,172.486 145.098,172.465 142.681,171.141 C142.089,174.661 138.808,177.610 135.323,178.104 C130.418,178.822 113.892,174.668 110.019,171.378 C99.600,162.539 106.420,144.547 120.132,144.840 C123.095,144.903 136.528,148.221 139.482,149.441 C144.169,151.372 146.849,156.920 145.003,161.751 L159.595,165.013 C162.863,160.552 168.711,155.561 169.530,149.747 ZM43.855,95.145 C39.927,95.710 36.043,99.056 35.376,103.036 C34.790,106.536 34.717,124.681 35.511,127.810 C36.233,130.661 39.285,133.889 42.201,134.565 C44.165,135.025 55.295,135.192 57.011,134.697 C58.975,134.126 60.128,131.128 60.342,129.253 C60.901,124.346 61.013,103.371 59.943,99.188 C59.394,97.055 58.509,95.773 56.295,95.243 C53.700,94.630 46.604,94.734 43.855,95.145 ZM183.974,95.131 C181.036,95.647 179.888,97.780 179.507,100.603 C178.671,106.800 178.884,122.213 179.433,128.696 C179.632,131.024 180.644,134.307 183.264,134.802 C185.505,135.227 195.871,135.053 198.039,134.426 C201.046,133.547 204.050,129.929 204.528,126.876 C205.087,123.286 204.975,104.737 204.013,101.691 C203.360,99.628 200.734,96.728 198.724,95.870 C195.953,94.678 187.036,94.588 183.974,95.131 ZM189.382,144.777 L180.916,144.777 C180.734,144.777 180.090,143.969 179.459,144.199 C180.425,153.526 175.972,161.437 170.114,168.199 C176.134,168.457 182.507,166.066 186.130,161.138 C186.828,160.183 189.382,155.261 189.382,154.439 L189.382,144.777 ZM133.302,168.199 C133.786,165.585 135.012,162.448 135.282,159.869 C135.334,159.360 135.902,159.046 135.099,158.537 C130.862,158.105 118.677,152.821 115.885,156.851 C114.412,158.977 114.596,162.511 116.755,164.037 C117.840,164.811 132.612,168.694 133.302,168.199 ZM88.357,188.714 L87.165,189.049 C86.800,191.955 80.316,203.234 81.061,205.081 C81.729,206.740 89.476,214.394 91.280,215.949 C97.747,221.539 113.230,230.608 121.793,229.563 C123.866,229.305 126.902,228.113 128.960,227.381 C141.028,223.087 151.223,214.826 158.897,204.740 L152.589,188.714 C151.018,188.261 151.469,189.732 150.604,190.491 C146.556,194.081 140.943,197.643 135.668,198.961 C129.401,200.536 110.387,200.529 104.130,198.961 C98.724,197.609 91.215,193.461 88.357,188.714 ZM73.484,211.613 L57.433,221.804 C68.103,235.083 81.473,246.529 97.143,253.472 C100.591,247.875 104.092,242.277 108.793,237.614 C94.889,232.016 82.539,223.693 73.484,211.613 ZM130.995,237.335 C133.316,240.165 135.752,242.939 137.892,245.930 C138.909,247.352 142.148,253.765 143.280,253.493 C158.556,245.916 171.770,235.146 182.365,221.804 L166.316,211.613 C157.293,223.428 145.030,232.365 130.995,237.335 ZM103.932,261.726 C98.475,266.773 90.215,261.642 84.853,258.721 C75.043,253.368 64.731,244.940 57.123,236.742 C55.521,235.021 48.622,225.771 47.337,225.750 C45.240,225.722 34.143,228.489 31.606,229.291 C19.082,233.257 11.077,243.825 10.105,256.930 C8.451,279.250 17.440,280.505 36.296,284.004 C70.827,290.396 106.820,290.557 141.770,289.434 C165.206,288.682 194.010,287.880 216.486,281.209 C230.888,276.936 231.681,264.688 228.823,251.353 C224.893,233.013 208.390,228.182 192.076,225.750 C185.572,233.285 179.242,240.883 171.557,247.268 C165.736,252.106 148.994,263.942 141.797,263.956 C134.965,263.970 133.970,257.759 131.008,253.424 C127.962,248.955 124.567,244.599 120.106,241.476 C115.562,244.048 111.889,248.774 109.022,253.061 C107.344,255.577 106.021,259.788 103.932,261.726 Z'/%3E%3C/svg%3E");
}
@media only screen and (min-width: 769px) {
  .inside_fixed .voice:hover p {
    background-color: #ff7500;
  }
}
.inside_fixed .web01 p {
  background-color: #eead0d;
}
.inside_fixed .web01 p .tt::before {
  margin-bottom: 0.15em;
  width: 1.5em;
  height: 1.57145em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 208 216 ' %3E%3Cpath d='M203.695,215.961 L12.490,215.961 C5.888,215.961 0.539,210.887 0.539,204.613 L0.539,45.784 C0.539,39.510 5.888,34.436 12.490,34.436 L48.336,34.436 L48.336,11.753 C48.336,5.479 53.685,0.397 60.287,0.397 C66.890,0.397 72.239,5.479 72.239,11.753 L72.239,34.436 L143.937,34.436 L143.937,11.753 C143.937,5.479 149.297,0.397 155.888,0.397 C162.492,0.397 167.841,5.479 167.841,11.753 L167.841,34.436 L191.743,34.436 L203.695,34.436 C210.297,34.436 207.229,39.510 207.229,45.784 L207.229,204.613 C207.229,210.887 210.297,215.961 203.695,215.961 ZM99.124,143.200 L77.700,122.860 C73.033,118.426 65.469,118.426 60.802,122.860 C56.135,127.286 56.135,134.466 60.802,138.899 L90.680,167.257 C92.924,169.390 95.964,170.589 99.124,170.589 C102.294,170.589 105.334,169.390 107.578,167.257 L155.374,121.877 C160.051,117.443 160.051,110.264 155.374,105.837 C150.708,101.411 143.152,101.411 138.476,105.837 L99.124,143.200 Z'/%3E%3C/svg%3E");
}
.inside_fixed .web02 p {
  background-color: #db5c2e;
}
.inside_fixed .web02 p .tt::before {
  margin-bottom: 0.2em;
  width: 1.5em;
  height: 1.9286em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 202 261 ' %3E%3Cpath d='M195.030,255.369 C190.998,259.049 186.172,260.360 180.751,260.353 C130.148,260.304 79.546,260.325 28.944,260.325 C25.911,260.325 22.876,260.353 19.842,260.318 C9.197,260.221 1.314,252.797 0.643,242.285 C0.588,241.420 0.601,240.542 0.601,239.671 C0.600,182.078 0.617,124.479 0.578,66.893 C0.574,59.950 2.844,54.214 8.597,50.010 C13.689,46.302 19.499,46.344 25.709,46.699 C25.709,52.861 25.683,58.661 25.713,64.468 C25.780,77.356 34.991,86.732 48.021,86.767 C83.257,86.858 118.493,86.858 153.728,86.767 C166.771,86.732 175.974,77.384 176.050,64.475 C176.084,58.668 176.055,52.868 176.055,47.075 C190.351,44.155 200.452,52.952 201.113,64.558 C201.158,65.325 201.161,66.106 201.161,66.879 C201.163,124.569 201.151,182.253 201.182,239.950 C201.184,245.944 199.586,251.221 195.030,255.369 ZM35.127,216.667 C35.214,220.668 37.716,223.038 41.821,223.136 C43.772,223.185 45.725,223.143 47.678,223.150 C49.532,223.150 51.387,223.178 53.241,223.143 C57.527,223.059 60.026,220.794 60.169,216.584 C60.304,212.631 60.314,208.665 60.154,204.705 C59.1000,200.913 57.680,198.557 53.878,198.397 C49.689,198.216 45.479,198.209 41.291,198.411 C37.490,198.571 35.213,201.046 35.130,204.796 C35.044,208.755 35.044,212.708 35.127,216.667 ZM60.101,117.550 C59.926,114.044 57.488,111.778 54.034,111.674 C49.745,111.562 45.443,111.555 41.154,111.681 C37.739,111.792 35.339,114.246 35.146,117.620 C35.025,119.732 35.122,121.872 35.122,123.991 C35.119,123.991 35.113,123.991 35.108,123.991 C35.108,125.915 35.065,127.860 35.117,129.777 C35.224,133.827 37.543,136.273 41.666,136.420 C45.662,136.566 49.671,136.559 53.668,136.413 C57.429,136.280 59.887,134.133 60.085,130.571 C60.326,126.242 60.319,121.879 60.101,117.550 ZM60.169,161.542 C60.028,157.423 57.624,155.192 53.463,155.067 C51.507,155.011 49.549,155.060 47.592,155.060 C47.592,155.060 47.592,155.067 47.592,155.074 C45.537,155.074 43.478,154.997 41.427,155.087 C37.626,155.248 35.227,157.583 35.135,161.340 C35.037,165.397 35.029,169.461 35.140,173.532 C35.241,177.248 37.678,179.604 41.507,179.701 C45.518,179.799 49.534,179.792 53.544,179.708 C57.565,179.625 59.982,177.401 60.152,173.441 C60.321,169.482 60.305,165.509 60.169,161.542 ZM159.876,117.905 C147.655,117.829 135.433,117.885 123.211,117.878 C110.793,117.878 98.376,117.850 85.959,117.891 C81.607,117.905 79.020,120.296 79.043,124.068 C79.063,127.755 81.778,130.174 86.040,130.216 C90.439,130.251 94.839,130.223 99.239,130.223 C119.185,130.223 139.130,130.202 159.077,130.244 C162.048,130.251 164.520,129.512 165.954,126.779 C168.175,122.534 165.086,117.933 159.876,117.905 ZM79.047,167.335 C79.020,170.423 81.003,172.835 84.187,173.435 C85.232,173.630 86.324,173.630 87.397,173.630 C99.132,173.644 110.865,173.637 122.600,173.637 C134.335,173.637 146.070,173.637 157.804,173.637 C163.613,173.637 166.585,171.552 166.636,167.461 C166.686,163.355 163.663,161.152 157.939,161.152 C134.470,161.152 111.000,161.152 87.531,161.159 C86.460,161.159 85.368,161.145 84.318,161.326 C81.100,161.877 79.075,164.233 79.047,167.335 ZM164.602,206.399 C163.050,205.333 160.874,204.650 158.969,204.643 C140.393,204.517 121.815,204.573 103.239,204.573 C97.371,204.573 91.505,204.517 85.639,204.587 C81.644,204.629 79.013,207.201 79.046,210.826 C79.080,214.562 81.675,216.876 86.066,216.890 C98.287,216.932 110.509,216.904 122.730,216.904 C128.597,216.904 134.463,216.911 140.330,216.904 C147.075,216.897 153.823,216.925 160.568,216.855 C163.427,216.828 165.337,215.301 166.283,212.673 C167.161,210.226 166.655,207.821 164.602,206.399 ZM153.132,74.457 C135.713,74.478 118.295,74.464 100.876,74.464 C83.652,74.464 66.430,74.471 49.206,74.464 C41.822,74.457 38.211,70.895 38.192,63.589 C38.173,56.235 38.156,48.874 38.197,41.527 C38.234,34.891 42.074,31.105 48.780,31.057 C53.965,31.015 59.153,30.987 64.338,31.078 C66.016,31.098 66.625,30.624 66.914,28.868 C69.660,12.187 84.010,0.120 100.889,0.127 C117.795,0.127 132.024,12.117 134.845,28.889 C135.143,30.659 135.780,31.098 137.441,31.071 C142.626,30.987 147.814,31.015 153.000,31.057 C159.758,31.105 163.527,34.828 163.565,41.534 C163.609,49.083 163.619,56.632 163.562,64.175 C163.511,70.741 159.723,74.450 153.132,74.457 Z'/%3E%3C/svg%3E");
}
.inside_fixed .line {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
}
.inside_fixed .line .icon-big {
  width: 41px;
  height: 40px;
  background: url(../images/line_ico.png) no-repeat center/cover;
}

@media only screen and (min-width: 769px) and (max-height: 700px) {
  .inside_fixed {
    font-size: 1.25vmin;
  }
}
.fixed_banner {
  position: fixed;
  top: calc(50% - 10.7em);
  right: 0px;
  z-index: 15;
  transition: right 0.3s ease-in-out;
}
.fixed_banner > div {
  position: relative;
  transition: all 0.3s ease;
}
.fixed_banner a {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: 2;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.fixed_banner p {
  display: block;
  width: 100%;
  height: 100%;
  margin-bottom: 0;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.2857;
  text-align: center;
  text-decoration: none;
}
.fixed_banner p:hover {
  color: #fff;
}
.fixed_banner p .tt {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: 100%;
  flex-direction: column;
}
.fixed_banner p .tt::before {
  content: "";
  display: block;
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: #fff;
}
.fixed_banner .tel p {
  background-color: var(--main-color);
}
.fixed_banner .tel p .tt::before {
  margin-bottom: 0.54em;
  width: 1.57145em;
  height: 1.57145em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 219' %3E%3Cpath d='M219.067,163.378 L219.067,206.241 C219.070,212.592 214.138,217.896 207.778,218.335 C202.473,218.698 198.142,218.900 194.791,218.900 C87.532,218.900 0.593,132.079 0.593,24.946 C0.593,21.600 0.775,17.257 1.151,11.973 C1.596,5.602 6.888,0.701 13.264,0.701 L56.182,0.701 C59.301,0.701 61.915,3.057 62.226,6.152 C62.505,8.934 62.761,11.137 63.003,12.830 C65.416,29.658 70.358,46.018 77.665,61.347 C78.818,63.780 78.066,66.659 75.881,68.199 L49.688,86.916 C65.703,124.160 95.441,153.891 132.757,169.875 L151.449,143.748 C153.026,141.560 155.953,140.807 158.403,141.971 C173.758,149.241 190.126,154.170 206.953,156.568 C208.641,156.819 210.862,157.083 213.628,157.341 C216.727,157.669 219.082,160.255 219.079,163.378 L219.067,163.378 Z'/%3E%3C/svg%3E");
}
.fixed_banner .voice p {
  background-color: var(--clr2);
}
.fixed_banner .voice p .tt::before {
  margin-bottom: 0.2em;
  width: 1.7143em;
  height: 2.1429em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 300' %3E%3Cpath d='M126.322,0.092 C158.477,3.103 186.638,25.257 196.093,56.332 C199.058,66.077 199.650,76.004 199.951,86.139 C206.845,87.234 213.172,94.664 214.228,101.398 C215.036,106.563 215.129,125.684 213.871,130.390 C212.156,136.796 206.448,142.763 199.971,144.275 C199.827,152.745 199.132,160.733 193.712,167.572 C187.926,174.877 178.579,178.906 169.248,178.153 C165.266,177.840 161.216,174.779 159.737,180.698 L168.784,201.624 C176.110,204.823 184.582,212.617 191.721,215.356 C206.699,221.100 217.454,217.343 229.969,232.051 C242.704,246.996 245.658,280.345 224.404,289.156 C204.082,297.583 165.324,298.664 142.939,299.389 C107.085,300.560 70.043,300.434 34.638,293.861 C10.406,289.365 -1.749,284.269 0.178,256.344 C1.324,239.726 11.811,225.317 27.668,220.075 C34.197,217.914 42.837,217.552 48.893,215.001 C55.862,212.073 63.329,205.263 70.477,202.098 L80.119,179.757 C71.434,169.210 58.609,159.541 60.339,144.199 C52.487,144.791 42.153,146.346 35.057,142.317 C30.314,139.626 26.033,133.450 25.374,128.019 C24.685,122.331 24.699,107.525 25.461,101.879 C26.392,94.964 32.794,87.268 39.848,86.139 C40.075,74.972 40.989,64.300 44.569,53.683 C54.391,24.532 82.773,2.448 113.477,0.092 L126.322,0.092 ZM60.342,85.616 L60.342,77.119 C60.342,70.734 66.088,56.799 69.439,51.104 C88.981,17.861 131.322,9.043 160.464,35.845 C168.526,43.255 179.456,61.351 179.456,72.435 L179.456,85.616 L189.385,85.031 C191.687,56.012 174.862,27.975 148.490,16.222 C100.019,-5.380 46.778,32.457 50.413,85.031 L60.342,85.616 ZM169.530,85.031 L169.530,73.613 C169.530,61.072 156.877,44.461 146.709,37.922 C114.035,16.940 78.211,40.467 70.853,75.063 L82.139,67.353 C89.152,63.491 101.651,59.351 109.610,59.859 C114.075,60.152 114.067,63.303 116.408,65.980 C129.414,80.869 150.760,84.111 169.530,85.031 ZM169.530,149.747 L169.530,94.985 C147.495,93.981 121.191,89.597 107.517,70.518 L106.777,70.336 C95.529,71.020 83.393,76.729 75.497,84.710 C73.613,86.613 70.506,90.301 70.232,92.908 C71.453,110.725 68.732,130.424 70.248,148.019 C70.525,151.232 71.790,154.355 73.518,157.046 C76.917,162.316 96.534,184.294 101.409,187.048 C108.246,190.910 128.897,191.182 136.060,188.233 C142.651,185.507 146.561,179.199 151.425,174.347 C151.617,173.120 151.250,173.657 150.626,173.413 C148.151,172.486 145.098,172.465 142.681,171.141 C142.089,174.661 138.808,177.610 135.323,178.104 C130.418,178.822 113.892,174.668 110.019,171.378 C99.600,162.539 106.420,144.547 120.132,144.840 C123.095,144.903 136.528,148.221 139.482,149.441 C144.169,151.372 146.849,156.920 145.003,161.751 L159.595,165.013 C162.863,160.552 168.711,155.561 169.530,149.747 ZM43.855,95.145 C39.927,95.710 36.043,99.056 35.376,103.036 C34.790,106.536 34.717,124.681 35.511,127.810 C36.233,130.661 39.285,133.889 42.201,134.565 C44.165,135.025 55.295,135.192 57.011,134.697 C58.975,134.126 60.128,131.128 60.342,129.253 C60.901,124.346 61.013,103.371 59.943,99.188 C59.394,97.055 58.509,95.773 56.295,95.243 C53.700,94.630 46.604,94.734 43.855,95.145 ZM183.974,95.131 C181.036,95.647 179.888,97.780 179.507,100.603 C178.671,106.800 178.884,122.213 179.433,128.696 C179.632,131.024 180.644,134.307 183.264,134.802 C185.505,135.227 195.871,135.053 198.039,134.426 C201.046,133.547 204.050,129.929 204.528,126.876 C205.087,123.286 204.975,104.737 204.013,101.691 C203.360,99.628 200.734,96.728 198.724,95.870 C195.953,94.678 187.036,94.588 183.974,95.131 ZM189.382,144.777 L180.916,144.777 C180.734,144.777 180.090,143.969 179.459,144.199 C180.425,153.526 175.972,161.437 170.114,168.199 C176.134,168.457 182.507,166.066 186.130,161.138 C186.828,160.183 189.382,155.261 189.382,154.439 L189.382,144.777 ZM133.302,168.199 C133.786,165.585 135.012,162.448 135.282,159.869 C135.334,159.360 135.902,159.046 135.099,158.537 C130.862,158.105 118.677,152.821 115.885,156.851 C114.412,158.977 114.596,162.511 116.755,164.037 C117.840,164.811 132.612,168.694 133.302,168.199 ZM88.357,188.714 L87.165,189.049 C86.800,191.955 80.316,203.234 81.061,205.081 C81.729,206.740 89.476,214.394 91.280,215.949 C97.747,221.539 113.230,230.608 121.793,229.563 C123.866,229.305 126.902,228.113 128.960,227.381 C141.028,223.087 151.223,214.826 158.897,204.740 L152.589,188.714 C151.018,188.261 151.469,189.732 150.604,190.491 C146.556,194.081 140.943,197.643 135.668,198.961 C129.401,200.536 110.387,200.529 104.130,198.961 C98.724,197.609 91.215,193.461 88.357,188.714 ZM73.484,211.613 L57.433,221.804 C68.103,235.083 81.473,246.529 97.143,253.472 C100.591,247.875 104.092,242.277 108.793,237.614 C94.889,232.016 82.539,223.693 73.484,211.613 ZM130.995,237.335 C133.316,240.165 135.752,242.939 137.892,245.930 C138.909,247.352 142.148,253.765 143.280,253.493 C158.556,245.916 171.770,235.146 182.365,221.804 L166.316,211.613 C157.293,223.428 145.030,232.365 130.995,237.335 ZM103.932,261.726 C98.475,266.773 90.215,261.642 84.853,258.721 C75.043,253.368 64.731,244.940 57.123,236.742 C55.521,235.021 48.622,225.771 47.337,225.750 C45.240,225.722 34.143,228.489 31.606,229.291 C19.082,233.257 11.077,243.825 10.105,256.930 C8.451,279.250 17.440,280.505 36.296,284.004 C70.827,290.396 106.820,290.557 141.770,289.434 C165.206,288.682 194.010,287.880 216.486,281.209 C230.888,276.936 231.681,264.688 228.823,251.353 C224.893,233.013 208.390,228.182 192.076,225.750 C185.572,233.285 179.242,240.883 171.557,247.268 C165.736,252.106 148.994,263.942 141.797,263.956 C134.965,263.970 133.970,257.759 131.008,253.424 C127.962,248.955 124.567,244.599 120.106,241.476 C115.562,244.048 111.889,248.774 109.022,253.061 C107.344,255.577 106.021,259.788 103.932,261.726 Z'/%3E%3C/svg%3E");
}
.fixed_banner .web01 p {
  background-color: #eead0d;
}
.fixed_banner .web01 p .tt::before {
  margin-bottom: 0.15em;
  width: 1.5em;
  height: 1.57145em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 208 216 ' %3E%3Cpath d='M203.695,215.961 L12.490,215.961 C5.888,215.961 0.539,210.887 0.539,204.613 L0.539,45.784 C0.539,39.510 5.888,34.436 12.490,34.436 L48.336,34.436 L48.336,11.753 C48.336,5.479 53.685,0.397 60.287,0.397 C66.890,0.397 72.239,5.479 72.239,11.753 L72.239,34.436 L143.937,34.436 L143.937,11.753 C143.937,5.479 149.297,0.397 155.888,0.397 C162.492,0.397 167.841,5.479 167.841,11.753 L167.841,34.436 L191.743,34.436 L203.695,34.436 C210.297,34.436 207.229,39.510 207.229,45.784 L207.229,204.613 C207.229,210.887 210.297,215.961 203.695,215.961 ZM99.124,143.200 L77.700,122.860 C73.033,118.426 65.469,118.426 60.802,122.860 C56.135,127.286 56.135,134.466 60.802,138.899 L90.680,167.257 C92.924,169.390 95.964,170.589 99.124,170.589 C102.294,170.589 105.334,169.390 107.578,167.257 L155.374,121.877 C160.051,117.443 160.051,110.264 155.374,105.837 C150.708,101.411 143.152,101.411 138.476,105.837 L99.124,143.200 Z'/%3E%3C/svg%3E");
}
.fixed_banner .web02 p {
  background-color: #db5c2e;
}
.fixed_banner .web02 p .tt::before {
  margin-bottom: 0.2em;
  width: 1.5em;
  height: 1.9286em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 202 261 ' %3E%3Cpath d='M195.030,255.369 C190.998,259.049 186.172,260.360 180.751,260.353 C130.148,260.304 79.546,260.325 28.944,260.325 C25.911,260.325 22.876,260.353 19.842,260.318 C9.197,260.221 1.314,252.797 0.643,242.285 C0.588,241.420 0.601,240.542 0.601,239.671 C0.600,182.078 0.617,124.479 0.578,66.893 C0.574,59.950 2.844,54.214 8.597,50.010 C13.689,46.302 19.499,46.344 25.709,46.699 C25.709,52.861 25.683,58.661 25.713,64.468 C25.780,77.356 34.991,86.732 48.021,86.767 C83.257,86.858 118.493,86.858 153.728,86.767 C166.771,86.732 175.974,77.384 176.050,64.475 C176.084,58.668 176.055,52.868 176.055,47.075 C190.351,44.155 200.452,52.952 201.113,64.558 C201.158,65.325 201.161,66.106 201.161,66.879 C201.163,124.569 201.151,182.253 201.182,239.950 C201.184,245.944 199.586,251.221 195.030,255.369 ZM35.127,216.667 C35.214,220.668 37.716,223.038 41.821,223.136 C43.772,223.185 45.725,223.143 47.678,223.150 C49.532,223.150 51.387,223.178 53.241,223.143 C57.527,223.059 60.026,220.794 60.169,216.584 C60.304,212.631 60.314,208.665 60.154,204.705 C59.1000,200.913 57.680,198.557 53.878,198.397 C49.689,198.216 45.479,198.209 41.291,198.411 C37.490,198.571 35.213,201.046 35.130,204.796 C35.044,208.755 35.044,212.708 35.127,216.667 ZM60.101,117.550 C59.926,114.044 57.488,111.778 54.034,111.674 C49.745,111.562 45.443,111.555 41.154,111.681 C37.739,111.792 35.339,114.246 35.146,117.620 C35.025,119.732 35.122,121.872 35.122,123.991 C35.119,123.991 35.113,123.991 35.108,123.991 C35.108,125.915 35.065,127.860 35.117,129.777 C35.224,133.827 37.543,136.273 41.666,136.420 C45.662,136.566 49.671,136.559 53.668,136.413 C57.429,136.280 59.887,134.133 60.085,130.571 C60.326,126.242 60.319,121.879 60.101,117.550 ZM60.169,161.542 C60.028,157.423 57.624,155.192 53.463,155.067 C51.507,155.011 49.549,155.060 47.592,155.060 C47.592,155.060 47.592,155.067 47.592,155.074 C45.537,155.074 43.478,154.997 41.427,155.087 C37.626,155.248 35.227,157.583 35.135,161.340 C35.037,165.397 35.029,169.461 35.140,173.532 C35.241,177.248 37.678,179.604 41.507,179.701 C45.518,179.799 49.534,179.792 53.544,179.708 C57.565,179.625 59.982,177.401 60.152,173.441 C60.321,169.482 60.305,165.509 60.169,161.542 ZM159.876,117.905 C147.655,117.829 135.433,117.885 123.211,117.878 C110.793,117.878 98.376,117.850 85.959,117.891 C81.607,117.905 79.020,120.296 79.043,124.068 C79.063,127.755 81.778,130.174 86.040,130.216 C90.439,130.251 94.839,130.223 99.239,130.223 C119.185,130.223 139.130,130.202 159.077,130.244 C162.048,130.251 164.520,129.512 165.954,126.779 C168.175,122.534 165.086,117.933 159.876,117.905 ZM79.047,167.335 C79.020,170.423 81.003,172.835 84.187,173.435 C85.232,173.630 86.324,173.630 87.397,173.630 C99.132,173.644 110.865,173.637 122.600,173.637 C134.335,173.637 146.070,173.637 157.804,173.637 C163.613,173.637 166.585,171.552 166.636,167.461 C166.686,163.355 163.663,161.152 157.939,161.152 C134.470,161.152 111.000,161.152 87.531,161.159 C86.460,161.159 85.368,161.145 84.318,161.326 C81.100,161.877 79.075,164.233 79.047,167.335 ZM164.602,206.399 C163.050,205.333 160.874,204.650 158.969,204.643 C140.393,204.517 121.815,204.573 103.239,204.573 C97.371,204.573 91.505,204.517 85.639,204.587 C81.644,204.629 79.013,207.201 79.046,210.826 C79.080,214.562 81.675,216.876 86.066,216.890 C98.287,216.932 110.509,216.904 122.730,216.904 C128.597,216.904 134.463,216.911 140.330,216.904 C147.075,216.897 153.823,216.925 160.568,216.855 C163.427,216.828 165.337,215.301 166.283,212.673 C167.161,210.226 166.655,207.821 164.602,206.399 ZM153.132,74.457 C135.713,74.478 118.295,74.464 100.876,74.464 C83.652,74.464 66.430,74.471 49.206,74.464 C41.822,74.457 38.211,70.895 38.192,63.589 C38.173,56.235 38.156,48.874 38.197,41.527 C38.234,34.891 42.074,31.105 48.780,31.057 C53.965,31.015 59.153,30.987 64.338,31.078 C66.016,31.098 66.625,30.624 66.914,28.868 C69.660,12.187 84.010,0.120 100.889,0.127 C117.795,0.127 132.024,12.117 134.845,28.889 C135.143,30.659 135.780,31.098 137.441,31.071 C142.626,30.987 147.814,31.015 153.000,31.057 C159.758,31.105 163.527,34.828 163.565,41.534 C163.609,49.083 163.619,56.632 163.562,64.175 C163.511,70.741 159.723,74.450 153.132,74.457 Z'/%3E%3C/svg%3E");
}
.fixed_banner .line {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
}
.fixed_banner .line .icon-big {
  width: 41px;
  height: 40px;
  background: url(../images/line_ico.png) no-repeat center/cover;
}

@media only screen and (min-width: 769px) {
  .fixed_banner {
    font-size: 10px;
    --size: 8em;
    width: 8em;
  }
  .fixed_banner > div {
    width: var(--size);
    height: var(--size);
  }
  .fixed_banner p {
    width: var(--size);
    height: var(--size);
  }
  .fixed_banner p .tt {
    font-size: 1.4em;
  }
  .fixed_banner .tel {
    --w_tel: 20em;
    transform: translateX(calc(-var(--size) - var(--w_tel)));
    transition: all 0.3s ease;
  }
  .fixed_banner .tel .tt {
    padding-top: 0.22em;
  }
  .fixed_banner .tel .tt::before {
    margin-bottom: 0.45em;
  }
  .fixed_banner .tel .ov {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--main-color);
    position: absolute;
    left: var(--size);
    height: 100%;
    top: 0;
    width: var(--w_tel);
    border-left: 1px solid #fff;
  }
  .fixed_banner .tel .ov .text {
    font-size: 2.5em;
  }
  .fixed_banner .tel.has_hv:hover {
    transform: translateX(calc(0em - var(--w_tel)));
  }
  .fixed_banner .tel.has_hv:hover a {
    width: calc(var(--size) + var(--w_tel));
  }
  .fixed_banner .web p .tt::before {
    margin-bottom: 0.5em;
  }
  .fixed_banner .voice:hover p {
    background-color: #ff7500;
  }
  .fixed_banner .mail p {
    border-bottom-left-radius: 0.833em;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1560px) {
  .fixed_banner {
    top: calc(50% - 17em);
    font-size: 9px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .fixed_banner {
    font-size: 8px;
  }
  .totop .icon {
    width: 60px;
    height: 60px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .fixed_banner {
    top: calc(var(--wrapper) + 15em);
  }
}
@media only screen and (min-width: 769px) and (max-height: 650px) {
  .fixed_banner {
    top: calc(var(--wrapper) + 7em);
  }
}
@media only screen and (min-width: 769px) and (max-height: 550px) {
  .totop {
    right: 75px;
  }
}
footer {
  position: relative;
  z-index: 1;
  padding: 82px 0 22px;
  position: relative;
  background-color: var(--clr2);
}
footer::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 50%;
  max-height: 639px;
  --mask: url(../images/footer_bg_mask.svg);
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center bottom;
  -webkit-mask-position: center bottom;
  background: url(../images/footer_bg.jpg) no-repeat center top/cover;
}
footer p {
  margin-bottom: 0;
}
footer p,
footer a {
  color: #fff;
  text-decoration: none;
}
footer .time_sheet {
  color: white;
}
footer .time_sheet table th,
footer .time_sheet table td {
  color: white !important;
}
footer .time_sheet .time_sheet_note li::before {
  background-color: white;
}
footer .infor_tell {
  margin-bottom: 13px;
}
footer .infor_tell a {
  color: white;
  background-color: #fecc4e;
}
footer .infor_tell a > span::before {
  background-color: white;
}
footer .infor_address {
  margin-bottom: 18px;
}
footer .time_sheet .time_sheet_note {
  margin-top: 21px;
  margin-left: 10px;
}
footer .ft_logo {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 36px;
  max-width: 544px;
}
footer .ft_info {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
footer .ft_info .btn-group {
  margin-top: 30px;
}
footer .ft_info .btn-group .btn {
  margin-left: auto;
  margin-right: auto;
}
footer .ft_link {
  width: 100%;
}

.ft_link {
  font-size: min(0.94vw, 10px);
}
.ft_link a {
  text-decoration: none;
}
@media only screen and (min-width: 769px) {
  .ft_link .link_list > div > ul {
    display: flex;
    justify-content: space-between;
  }
  .ft_link .menu01 {
    width: 100%;
  }
  .ft_link .menu02 {
    width: 100%;
  }
}
.ft_link li {
  width: 100%;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media only screen and (min-width: 769px) {
  .ft_link li.w-50 {
    width: calc(50% - 1em);
    max-width: 260px;
  }
}
.ft_link a {
  position: relative;
  z-index: 1;
  display: table;
  color: inherit;
  font-size: 1.6em;
  letter-spacing: 0.1em;
  color: var(--clr1);
  line-height: 1.875;
  transition: var(--value-transition);
}
.ft_link a:hover {
  opacity: 1;
  color: var(--clr1);
}
.ft_link .footer-main-menu > li > a {
  width: 100%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.ft_link .footer-main-menu > li:not(.child-has-sub) {
  margin-bottom: 0;
}
.ft_link .footer-main-menu > li:not(.child-has-sub) > a {
  padding-top: 0.875em;
  padding-bottom: 0.5625em;
  padding-left: 1.5625em;
}
.ft_link .footer-main-menu > li:not(.child-has-sub) > a::before {
  content: "";
  position: absolute;
  left: 0.4em;
  top: 1.55em;
  width: 0.5625em;
  height: 0.4375em;
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 79 54' %3E%3Cpath d='M68.905,26.807 L68.905,26.847 L78.363,26.807 L50.532,53.296 L41.077,47.218 L57.949,32.900 L0.692,32.900 L0.692,20.750 L57.312,20.750 L41.077,6.425 L50.532,0.346 L78.363,26.807 L68.905,26.807 Z'/%3E%3C/svg%3E");
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: var(--main-color);
  background-color: white;
  transition: var(--value-transition);
}
.ft_link .footer-main-menu .child-has-sub > a {
  padding-top: 0.875em;
  padding-bottom: 0.5625em;
  padding-left: 1.5625em;
  font-weight: 500;
  pointer-events: none;
}
.ft_link .footer-main-menu .child-has-sub > a::before {
  content: "";
  position: absolute;
  left: 0.45em;
  top: 1.6em;
  width: 0.5625em;
  height: 0.5625em;
  background-color: white;
}
.ft_link .footer-main-menu .child-has-sub > ul {
  padding-top: 1.5em;
  padding-left: 2em;
}
.ft_link .footer-main-menu .child-has-sub > ul > li {
  margin-bottom: 0px;
}
.ft_link .footer-main-menu .child-has-sub > ul a {
  padding-left: 1.0625em;
}
.ft_link .footer-main-menu .child-has-sub > ul a::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
@media only screen and (min-width: 769px) {
  .ft_link .footer-main-menu .menu-child-col-2 > ul {
    max-height: 20em;
  }
  .ft_link .footer-main-menu .menu-child01 > ul {
    max-height: 14em;
  }
  .ft_link .footer-main-menu .menu-child-col-2 {
    margin-bottom: 3px;
  }
  .ft_link .footer-main-menu .menu-child-col-2 > ul {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: space-between;
  }
  .ft_link .footer-main-menu .menu-child-col-2 > ul > li {
    width: calc(50% - 10px);
  }
  .ft_link .footer-main-menu .menu-child02 {
    margin-bottom: 1.1em;
  }
  .ft_link .footer-main-menu .menu-child02 > ul {
    max-height: 14em;
  }
  .ft_link .footer-main-menu .menu-child02 > ul > li {
    width: calc(50% - 4px);
  }
}

.copyright {
  margin: 0 auto 0;
  color: #fff;
  padding-top: 57px;
  position: relative;
  z-index: 1;
}
.copyright .flex {
  align-items: center;
  justify-content: center;
  min-height: 40px;
}
.copyright .inner_big {
  max-width: 1135px;
}
.copyright .textwidget {
  display: block;
  line-height: 23px;
  padding-left: 17px;
  margin-left: 19px;
  border-left: 1px solid white;
  font-weight: 400;
  letter-spacing: 0.1em;
}
.copyright .textwidget p {
  margin-bottom: 0;
  font-size: 12px;
  line-height: inherit;
  letter-spacing: 0.1em;
}
.copyright .grits {
  margin-bottom: 0;
  line-height: 2.501;
}
.copyright .grits a {
  display: block;
}
.copyright .grits img {
  max-width: 154px;
}

@media only screen and (min-width: 769px) {
  .copyright .textwidget {
    margin-top: 7px;
  }
  .copyright .textwidget p {
    position: relative;
    top: -3px;
  }
  footer .inner_big {
    max-width: 1240px;
  }
  footer .ft_info {
    justify-content: space-between;
  }
  footer .ft_info .infor_left {
    width: 50%;
    max-width: 560px;
  }
  footer .ft_info .infor_right {
    width: calc(50% - 40px);
  }
  footer .ft_info .infor_right .infor_right_catch {
    max-width: 460px;
    margin-right: auto;
    margin-left: auto;
  }
  footer .ft_link {
    margin-top: 14.3em;
  }
  footer .ft_link .footer-main-menu > li:not(.child-has-sub) > a:hover::before {
    background-color: var(--clr1);
  }
  footer .ft_link a {
    color: white;
  }
  .ft_link {
    display: flex;
    flex-wrap: wrap;
  }
  .ft_link .fblock {
    justify-content: space-between;
    width: 100%;
  }
  .ft_link .menu01,
  .ft_link .menu02 {
    width: calc(50% - 10px);
    max-width: 560px;
  }
  .ft_link .footer-main-menu {
    flex-flow: row wrap;
  }
}
.information_sheet {
  max-width: 580px;
}
.information_sheet .ttl {
  position: relative;
  z-index: 1;
  padding-left: 52px;
  margin-bottom: 20px;
  font-size: 1.125em;
  font-weight: 500;
  line-height: 1.5;
}
.information_sheet .ttl::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0.2778em;
  top: -0.2em;
  width: 2em;
  height: 2.0556em;
  background: url(../images/clock_icon.png) no-repeat center/cover;
}
.information_sheet .ttl .time {
  display: inline-block;
  min-width: 50px;
}
.information_sheet table {
  padding: 0.2em 0.2em 0.2em;
  width: 100%;
  font-size: min(0.9vw, 10px);
}
.information_sheet table th,
.information_sheet table td {
  padding: 1.41em 0.2em;
  width: 25%;
  font-size: 1.8em;
  font-weight: 500;
  text-align: center;
  border-color: var(--clr2);
}
.information_sheet table th {
  color: #000000;
  background-color: #ffe9b1;
}
.information_sheet table td {
  background-color: white;
}

.fever_bn {
  --size-w-pic: 45%;
  position: relative;
  z-index: 1;
  max-width: 58em;
  min-height: 14em;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  background-color: var(--main-color);
  border-radius: 12px;
  overflow: hidden;
  font-size: min(0.8vw, 10px);
  transition: var(--value-transition);
}
.fever_bn::before {
  content: "";
  position: absolute;
  z-index: -2;
  left: 0;
  top: 0;
  display: block;
  width: var(--size-w-pic);
  max-width: 260px;
  height: 100%;
  background: url(../images/fever_bn_bg.jpg) no-repeat center/cover;
  background-color: white;
}
.fever_bn::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--main-color);
  border-radius: 12px;
}
.fever_bn .bn_ct {
  padding: 1em 2em 1.4em;
  width: calc(100% - var(--size-w-pic));
}
.fever_bn .bn_ct p {
  text-align: center;
  line-height: 1.5;
  color: white;
}
.fever_bn .bn_ct .ttl {
  margin-bottom: 8px;
  font-size: 2.4em;
  font-weight: 700;
}
.fever_bn .bn_ct .ttl .en {
  display: block;
  margin-bottom: -2px;
  font-size: 13px;
  letter-spacing: 0.2em;
  font-weight: 400;
  text-transform: uppercase;
  color: #ffcc4e;
}
.fever_bn .bn_ct .ct_txt {
  position: relative;
  z-index: 1;
  padding: 0.1875em 0.9375em 0.3125em 0.9375em;
  margin-left: auto;
  margin-right: auto;
  max-width: 16.25em;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  font-size: 1.6em;
}
.fever_bn .bn_ct .ct_txt::before, .fever_bn .bn_ct .ct_txt::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  top: calc(50% - 0.2813em);
  width: 0.4375em;
  height: 0.4375em;
  border-radius: 50%;
  background-color: white;
}
.fever_bn .bn_ct .ct_txt::before {
  left: 0.5em;
}
.fever_bn .bn_ct .ct_txt::after {
  right: 0.375em;
}

@media only screen and (min-width: 769px) {
  .fever_bn:hover {
    background-color: #f33606;
  }
}
.idx_logo {
  display: table;
  margin-left: auto;
  margin-right: auto;
  max-width: 427px;
}
.idx_logo a:hover {
  opacity: 1;
}

.infor_tell {
  display: table;
  width: 100%;
  max-width: 460px;
  font-size: min(0.9vw, 10px);
}
.infor_tell a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.119em 0.119em 0.2857em 0.2619em;
  width: 100%;
  min-height: 1.9048em;
  border-radius: 12px;
  font-size: 4.2em;
  line-height: 1;
  letter-spacing: 0.1em;
  text-decoration: none;
  color: var(--clr1);
  background-color: #f9edc5;
}
.infor_tell a > span {
  position: relative;
  z-index: 1;
  padding-left: 36px;
}
.infor_tell a > span::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  bottom: 0.0476em;
  width: 0.619em;
  height: 0.619em;
  --mask: url(../images/infor_tell_ico.png);
  mask-image: var(--mask);
  -webkit-mask-image: var(--mask);
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-size: 100% auto;
  -webkit-mask-size: 100% auto;
  mask-position: center;
  -webkit-mask-position: center;
  background-color: var(--clr1);
}

.infor_address {
  font-size: 1.125em;
  line-height: 1.7777778;
}

.infor_traffic {
  --size-mg: 5px;
  font-size: min(0.9vw, 10px);
}
.infor_traffic .card {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1em 1em 1em 1em;
  max-width: 225px;
  min-height: 20em;
  border-radius: 12px;
  background-color: #f9f9f2;
}
.infor_traffic .card .card_ico {
  margin-bottom: 4px;
  width: 9em;
  height: 9em;
  border-radius: 50%;
  background: no-repeat center/4.1em auto;
}
.infor_traffic .card .card_ttl {
  font-size: 1.8em;
  font-weight: 500;
  line-height: 1.666667;
  letter-spacing: 0;
  text-align: center;
  color: var(--clr1);
}
.infor_traffic .card .card_ttl .fs22 {
  line-height: 1;
  font-size: 1.2222em;
}
.infor_traffic .c1 .card_ico {
  background-image: url(../images/infor_traffic_ico01.png);
  background-color: var(--clr2);
}
.infor_traffic .c2 .card_ico {
  background-image: url(../images/infor_traffic_ico02.png);
  background-color: var(--main-color);
}

.infor_pic_map {
  max-width: 460px;
}

.idx_banner_gr {
  --size-mg: 6.5px;
  position: relative;
  z-index: 1;
  padding: 80px 20px 80px;
}
.idx_banner_gr::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  left: 0;
  bottom: 0;
  width: 100%;
  height: calc(100% + 120px);
  background-color: #f9f9f2;
}
@media only screen and (min-width: 769px) {
  .idx_banner_gr::before {
    max-height: 450px;
  }
}
.idx_banner_gr .item {
  max-width: 246px;
}

/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                                INDEX                                     */
/*==========================================================================*/
/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/*==========================================================================*/
/*                                Under                                     */
/*==========================================================================*/
/*==========================================================================*/
/*==========================================================================*/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/

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