@charset "UTF-8";

/*
Theme Name: オリジナルテーマ
Author: Yoko Dohi
*/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
 margin: 0;
 padding: 0;
 border: 0;
 font-size: 100%;
 font-style: normal;
 vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
 display: block;
}

body {
 line-height: 1;
}

ol,
ul {
 list-style: none;
}

blockquote,
q {
 quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
 content: '';
 content: none;
}

table {
 border-collapse: collapse;
 border-spacing: 0;
}

table td,
table th {
 vertical-align: middle;
}

input[type="text"],
input[type="password"],
textarea,
select,
*:focus {
 outline: none;
}


/*====================================================
////id |  common
====================================================*/
/* .ds_none {
 display: none !important;
} */

html {
 font-size: 10px;
 font-size: 62.5%;
 /* overflow-x : hidden; */
 width: 100%;
 max-width: 100vw;
}

:root {
 --mainColor: #45B2F1;
 --mainColor_rgb: 69, 178, 241;
 --red: #ed4740;
 --yellow: #FCE20E;
 --s_yellow: #F7D66C;
 --l_yellow: #FFFA6F;
 --blue: #45B2F1;
 --blue_2: #0675CA;
 --d_blue: #22417c;
 --w_blue: #DEF1FD;
 --l_blue: #B6E2FE;
 --s_blue: #00c0ff;

 --play: #ED5998;
 --event: #FE5757;
 --eat: #FAA655;
 --shopping: #28A4A0;

 --l_gray: #CDCDCD;
 --l_gray2: #EEEEEE;
 --gray: #999;
 --d_gray: #555;
 --d_gray2: #383838;
 --black: #000;


 --font_family: 'Roboto', 'Noto Sans JP', "Yu Gothic", "游ゴシック Medium", "YuGothic", "游ゴシック体", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
 --f_maru: "M PLUS Rounded 1c", 'Roboto', 'Noto Sans JP', "Yu Gothic", "游ゴシック Medium", "YuGothic", "游ゴシック体", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;

}

body,
button,
input,
select,
optgroup,
textarea {
 background: #fff;
 color: var(--black);
 font-family: var(--font_family);
 font-size: 16px;
 font-size: 1.6rem;
 font-weight: 400;
 line-height: 1.8;
}

button,
input,
select,
optgroup,
textarea {
 color: inherit;
 font-family: inherit;
 font-size: inherit;
}

body {
 position: relative;
}

* {
 letter-spacing: 0.05em;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

 body,
 button,
 input,
 select,
 optgroup,
 textarea {
  font-size: 3.6vw;
 }
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

body {
 position: relative;
 width: 100%;
 max-width: 100vw;
 height: auto;
 /* overflow-x: hidden; */
}

* {
 min-height: 0;
 min-width: 0;
}

body * {
 box-sizing: border-box;
}

section {
 /*	background: #fff;*/
 /*	overflow: hidden;*/
 position: relative;
 max-width: 100vw;
 z-index: 2;
}

a {
 display: inline-block;
 color: inherit;
 -webkit-backface-visibility: hidden;
 backface-visibility: hidden;
 cursor: pointer;
 outline: none;
 position: relative;
 text-decoration: none;
 transition: 0.2s ease-in-out;
}

.tel_link a {
 color: inherit !important;
 text-decoration: none !important;
}

.tel_linkBtn {
 pointer-events: none;
}

.fax a {
 color: inherit !important;
 text-decoration: none !important;
 pointer-events: none;
}

.underline {
 -webkit-text-decoration: underline solid 1px;
 text-decoration: underline solid 1px;
 text-underline-position: under;
 text-underline-offset: 0.1em;
}

p {}

p a:not(.linkBtn),
a.underline {
 color: var(--d_blue);
 -webkit-text-decoration: underline dotted 1px;
 text-decoration: underline dotted 1px;
 text-underline-position: under;
 text-underline-offset: 0.1em;
}


img {
 width: auto;
 height: auto;
 max-width: 100%;
 max-height: 100%;
 display: block;
 /* margin: auto; */
}

figure {
 margin: 0;
 position: relative;
}

figure img {
 position: relative;
}

figure.coverImg {
 overflow: hidden;
 padding-top: 56.25%;
 width: 100%;
}

figure.coverImg img {
 -o-object-fit: cover;
 object-fit: cover;
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 max-width: none;
 height: 100%;
 max-height: none;
}

figure.coverImg.contain img {
 -o-object-fit: contain;
 object-fit: contain;
}

figure figcaption.noImage {
 background: #f2faff;
 color: var(--red);
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 2.0rem;
 font-weight: bold;
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}

.scaleUpImg figure {
 overflow: hidden;
}

.scaleUpImg img {
 transition: .4s ease-in-out;
}

.round {
 border-radius: 10px;
 overflow: hidden;
}

figure.square {
 display: block;
 width: 100%;
 padding-top: 100%;
}

figure.square img {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 -o-object-fit: cover;
 object-fit: cover;
}



#contents {
 width: 100%;
 transition: .2s ease-in-out;
 position: relative;
 z-index: 1;
}

.innerBox {
 margin: 0 auto;
 padding: 160px 0;
 position: relative;
 width: 92%;
 max-width: 1100px;
 z-index: 2;
}

footer .innerBox {
 max-width: 1296px;
}

@media screen and (min-width: 770px) {
 #slider_article .innerBox {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding-inline: 23px;
  z-index: 2;
  max-width: none;
 }
}

.innerBox.wide {
 max-width: 1440px;
}

.innerBox.mediumPadding {
 padding: 90px 0;
}

.innerBox.shortPadding {
 padding: 50px 0;
}

.innerBox .innerBox {
 width: 100%;
}

.block {
 display: block;
}

.inb {
 display: inline-block;
}

.relative {
 position: relative;
 z-index: 1;
}

.flexBox,
.d-flex {
 display: flex;
 justify-content: flex-start;
 align-items: flex-start;
}

.align-items-center {
 align-items: center;
}

.justify-content-center {
 justify-content: center;
}

.justify-content-end {
 justify-content: flex-end;
}

.flexCenter {
 align-items: center;
 justify-content: center;
}

.flexWrap {
 flex-wrap: wrap;
}

.flexColumn {
 flex-direction: column;
}

.flex-1 {
 flex: 1;
}

.gridBox {
 display: grid;
}

dl.gridBox {
 /* 	grid-template: 'dt dd'; */
 grid-template-columns: auto 1fr;
}

.whiteBox {
 background: rgba(255, 255, 255, .6);
 -webkit-backdrop-filter: blur(30px) brightness(1.15);
 backdrop-filter: blur(30px) brightness(1.15);
}

.roundBox {
 border-radius: 10px;
}

p+p {
 margin-top: 1.3em;
}

.mw300 {
 max-width: 300px;
 margin: auto;
}

.mw400 {
 max-width: 400px;
 margin: auto;
}

.mw500 {
 max-width: 500px;
 margin: auto;
}

.mw600 {
 max-width: 600px;
 margin: auto;
}

.mw700 {
 max-width: 700px;
 margin: auto;
}

.mw800 {
 max-width: 800px;
 margin: auto;
}

.mw900 {
 max-width: 900px;
 margin: auto;
}

.mw1000 {
 max-width: 1000px;
 margin: auto;
}

.mw-none {
 max-width: none;
}

input[type="radio"],
input[type="checkbox"] {
 display: none;
}

.decoBox {
 position: absolute;
}

.over_hidden {
 overflow: hidden;
}

.hidden {
 display: none;
}

hr {
 background: var(--mainColor);
 border: none;
 height: 1px;
 opacity: .4;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 /* #contents {
    min-height: calc(100vh - 300px);
    min-height: calc(100dvh - 300px);
  } */

 .innerBox {
  width: calc(100% - 39px);
 }

 .innerBox {
  padding: 6em 0;
 }

 .innerBox.mediumPadding {
  padding: 4.5em 0;
 }

 .innerBox.shortPadding {
  padding: 30px 0;
 }


 .hidden-mob {
  display: none;
 }

 .display-mob {
  display: block;
 }

 figure figcaption.noImage {
  font-size: 1.6rem;
 }

 .whiteBox {}

 .flexColumn-mob,
 .flexColumn-tab {
  flex-direction: column;
 }

 dl.gridBox {
  grid-template: 'dt' 'dd';
 }
}

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

 .hidden-small {
  display: none;
 }

 .display-small {
  display: block;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 /* #contents {
    min-height: calc(100vh - 475px);
    min-height: calc(100dvh - 475px);
  } */

 .hidden-pc_d-tab,
 .hidden-pc {
  display: none;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
 /* #contents {
  min-height: calc(100vh - 420px);
  min-height: calc(100dvh - 420px);
 } */

 .innerBox {
  padding: 100px 0;
 }

 .flexColumn-tab {
  flex-direction: column;
 }

 .hidden-tab {
  display: none;
 }

 .hidden-pc_d-tab,
 .display-tab {
  display: block;
 }
}

@media screen and (min-width:960px) and (max-width:1300px) {
 .display-small_pc {
  display: block;
 }
}

@media screen and (min-width:1300px) {
 .hidden-wide {
  display: none;
 }

 .display-wide {
  display: block;
 }
}

@media (hover: hover) {

 /*NOTE ホバー処理*/
 div>a:not([class]):hover,
 p a:not([class]):hover {
  opacity: .7;
 }

 a.opacity-1:hover {
  opacity: 1;
 }

 .scaleUpImg:hover img {
  transform: scale(1.05);
 }

 a.scaleUpImg:hover {
  opacity: 1;
 }

 a.scaleUpImg .coverImg::after {
  border: solid 2px #fff;
  box-sizing: border-box;
  content: '';
  display: block;
  margin: auto;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: .3s ease-in-out;
  width: calc(100% - min(2vw, 1.6em));
  height: calc(100% - min(2vw, 1.6em));
 }

 a.scaleUpImg:hover .coverImg::after {
  opacity: 1;
 }
}

.h100 {
 height: 100%;
}

.w100 {
 width: 100%;
}

/*====================================================
// NOTE |  余白
====================================================*/
.ma-auto {
 margin: auto !important
}

.ma-0 {
 margin: 0 !important
}

.ma-05em {
 margin: .5em !important
}

.ma-10em {
 margin: 1.0em !important
}

.ma-15em {
 margin: 1.5em !important
}

.ma-20em {
 margin: 2em !important
}

.ma-30em {
 margin: 3em !important
}

.mt-0 {
 margin-top: 0 !important
}

.mt-03em {
 margin-top: .3em !important
}

.mt-05em {
 margin-top: .5em !important
}

.mt-08em {
 margin-top: .8em !important
}

.mt-10em {
 margin-top: 1.0em !important
}

.mt-15em {
 margin-top: 1.5em !important
}

.mt-20em {
 margin-top: 2em !important
}

.mt-30em {
 margin-top: 3em !important
}

.ml-0 {
 margin-left: 0 !important
}

.ml-03em {
 margin-left: .3em !important
}

.ml-05em {
 margin-left: .5em !important
}

.ml-10em {
 margin-left: 1.0em !important
}

.ml-15em {
 margin-left: 1.5em !important
}

.ml-20em {
 margin-left: 2em !important
}

.ml-30em {
 margin-left: 3em !important
}

.mr-0 {
 margin-right: 0 !important
}

.mr-02em {
 margin-right: .2em !important
}

.mr-05em {
 margin-right: .5em !important
}

.mr-10em {
 margin-right: 1.0em !important
}

.mr-15em {
 margin-right: 1.5em !important
}

.mr-20em {
 margin-right: 2em !important
}

.mr-30em {
 margin-right: 3em !important
}

.mb-0 {
 margin-bottom: 0 !important
}

.mb-03em {
 margin-bottom: .3em !important
}

.mb-05em {
 margin-bottom: .5em !important
}

.mb-08em {
 margin-bottom: .8em !important
}

.mb-10em {
 margin-bottom: 1.0em !important
}

.mb-15em {
 margin-bottom: 1.5em !important
}

.mb-20em {
 margin-bottom: 2em !important
}

.mb-30em {
 margin-bottom: 3em !important
}

.ma-10 {
 margin: 10px !important
}

.ma-20 {
 margin: 20px !important
}

.ma-30 {
 margin: 30px !important
}

.ma-40 {
 margin: 40px !important
}

.ma-50 {
 margin: 50px !important
}

.mt-10 {
 margin-top: 10px !important
}

.mt-20 {
 margin-top: 20px !important
}

.mt-30 {
 margin-top: 30px !important
}

.mt-40 {
 margin-top: 40px !important
}

.mt-50 {
 margin-top: 50px !important
}

.mt-60 {
 margin-top: 60px !important
}

.mt-70 {
 margin-top: 70px !important
}

.ml-10 {
 margin-left: 10px !important
}

.ml-20 {
 margin-left: 20px !important
}

.ml-30 {
 margin-left: 30px !important
}

.ml-40 {
 margin-left: 40px !important
}

.ml-50 {
 margin-left: 50px !important
}

.mr-10 {
 margin-right: 10px !important
}

.mr-20 {
 margin-right: 20px !important
}

.mr-30 {
 margin-right: 30px !important
}

.mr-40 {
 margin-right: 40px !important
}

.mr-50 {
 margin-right: 50px !important
}

.mb-10 {
 margin-bottom: 10px !important
}

.mb-20 {
 margin-bottom: 20px !important
}

.mb-30 {
 margin-bottom: 30px !important
}

.mb-40 {
 margin-bottom: 40px !important
}

.mb-50 {
 margin-bottom: 50px !important
}

.mb-60 {
 margin-bottom: 60px !important
}

.mb-70 {
 margin-bottom: 70px !important
}

.pa-0 {
 padding: 0 !important
}

.pa-05em {
 padding: .5em !important
}

.pa-10em {
 padding: 1.0em !important
}

.pa-15em {
 padding: 1.5em !important
}

.pa-20em {
 padding: 2em !important
}

.pt-0 {
 padding-top: 0 !important
}

.pt-05em {
 padding-top: .5em !important
}

.pt-10em {
 padding-top: 1.0em !important
}

.pt-15em {
 padding-top: 1.5em !important
}

.pt-20em {
 padding-top: 2em !important
}

.pb-0 {
 padding-bottom: 0 !important
}

.pb-05em {
 padding-bottom: .5em !important
}

.pb-10em {
 padding-bottom: 1.0em !important
}

.pb-15em {
 padding-bottom: 1.5em !important
}

.pb-20em {
 padding-bottom: 2em !important
}


/*====================================================
//class eachTextAnime
====================================================*/
.eachTextAnime {
 opacity: 0;
}

.eachTextAnime.appeartext {
 opacity: 1;
}

.eachTextAnime span {
 opacity: 0;
}

.eachTextAnime.appeartext span {
 -webkit-animation: text_anime_on 1s ease-out forwards;
 animation: text_anime_on 1s ease-out forwards;
 /* animation-delay: .4s; */
}

@-webkit-keyframes text_anime_on {
 0% {
  opacity: 0;
 }

 100% {
  opacity: 1;
 }
}

@keyframes text_anime_on {
 0% {
  opacity: 0;
 }

 100% {
  opacity: 1;
 }
}


.delay-01 {
 transition-delay: .1s;
}

.delay-02 {
 transition-delay: .2s;
}

.delay-03 {
 transition-delay: .3s;
}

.delay-04 {
 transition-delay: .4s;
}

.delay-05 {
 transition-delay: .5s;
}

.delay-06 {
 transition-delay: .6s;
}

/*====================================================
// NOTE |  テキスト
====================================================*/
.f-default {
 font-family: var(--font_family);
}

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

.ff_setting {
 font-feature-settings: "palt";
 letter-spacing: .1em;
}

.tate {
 -ms-writing-mode: tb-rl;
 writing-mode: vertical-rl;
 -webkit-text-orientation: upright;
 text-orientation: upright;
}

.f-05em {
 font-size: .5em
}

.f-06em {
 font-size: .6em
}

.f-07em {
 font-size: .7em
}

.f-08em {
 font-size: .8em
}

.f-09em {
 font-size: .9em
}

.f-10em {
 font-size: 1.0em
}

.f-11em {
 font-size: 1.1em
}

.f-12em {
 font-size: 1.2em
}

.f-13em {
 font-size: 1.3em
}

.f-14em {
 font-size: 1.4em
}

.f-15em {
 font-size: 1.5em
}

.f-16em {
 font-size: 1.6em
}

.f-17em {
 font-size: 1.7em
}

.f-18em {
 font-size: 1.8em
}

.f-20em {
 font-size: 2.0em
}

.f-10 {
 font-size: 1.0rem
}

.f-11 {
 font-size: 1.1rem
}

.f-12 {
 font-size: 1.2rem
}

.f-13 {
 font-size: 1.3rem
}

.f-14 {
 font-size: 1.4rem
}

.f-15 {
 font-size: 1.5rem
}

.f-16 {
 font-size: 1.6rem
}

.f-17 {
 font-size: 1.7rem
}

.f-18 {
 font-size: 1.8rem
}

.f-20 {
 font-size: 2.0rem
}

.f-22 {
 font-size: 2.2rem
}

.f-24 {
 font-size: 2.4rem
}

.lh-10 {
 line-height: 1.0;
}

.lh-12 {
 line-height: 1.2;
}

.lh-14 {
 line-height: 1.4;
}

.lh-16 {
 line-height: 1.6;
}

.lh-18 {
 line-height: 1.8;
}

.lh-20 {
 line-height: 2.0;
}

.lh-20 {
 line-height: 2.2;
}

.ls-0 {
 letter-spacing: 0;
}

.ls-03 {
 letter-spacing: .03em;
}

.ls-06 {
 letter-spacing: .06em;
}

.ls-10 {
 letter-spacing: .1em;
}

.ls-15 {
 letter-spacing: .15em;
}

.ls-20 {
 letter-spacing: .2em;
}

.ls-25 {
 letter-spacing: .25em;
}

small,
.small {
 font-size: .8em;
}

big,
.big {
 font-size: 1.2em;
}

strong {
 font-weight: bold;
}

sup {
 font-size: .5em;
 vertical-align: .5em;
}

.fuchi2 {
 text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
}

.fuchi3 {
 text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}

.fuchi5 {
 text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

.fw-normal {
 font-weight: 400;
}

.fw-light {
 font-weight: 300;
}

.fw-medium {
 font-weight: 500;
}

.fw-semibold {
 font-weight: 600;
}

.fw-bold {
 font-weight: 700;
}

.fw-black {
 font-weight: 900;
}

.txt-left,
.text-left {
 text-align: left;
}

.txt-right,
.text-right {
 text-align: right;
}

.txt-center,
.text-center {
 text-align: center;
}

.text-justify {
 text-align: justify;
}

h1,
h2,
h3,
h4,
h5,
h6 {
 font-weight: 700;
 line-height: 1.5;
}

h1,
h2,
h3 {
 line-height: 1.4;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 .f-10 {
  font-size: .625em
 }

 .f-11 {
  font-size: .69em
 }

 .f-12 {
  font-size: .75em
 }

 .f-13 {
  font-size: .81em
 }

 .f-14 {
  font-size: .875em
 }

 .f-15 {
  font-size: .937em
 }

 .f-16 {
  font-size: 1em
 }

 .f-17 {
  font-size: 1.06em
 }

 .f-18 {
  font-size: 1.125em
 }

 .f-20 {
  font-size: 1.25em
 }

 .f-22 {
  font-size: 1.375em
 }

 .f-24 {
  font-size: 1.5em
 }

 h1 {
  font-size: 3.2rem;
 }

 h2 {
  font-size: 2.6rem;
 }

 h3 {
  font-size: 2.2rem;
 }

 h4 {
  font-size: 2.0rem;
 }

 h5 {
  font-size: 1.8rem;
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
  /* letter-spacing: .08em; */
 }
}

@media screen and (max-width: 500px) {
 h1 {
  font-size: 2.2em;
 }

 h2 {
  font-size: 1.6em;
 }

 h3 {
  font-size: 1.4em;
 }

 h4 {
  font-size: 1.2em;
 }

 h5 {
  font-size: 1.1em;
 }
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 h1 {
  font-size: 3.4rem;
 }

 h2 {
  font-size: 3.0rem;
 }

 h3 {
  font-size: 2.6rem;
 }

 h4 {
  font-size: 2.4rem;
 }

 h5 {
  font-size: 2.2rem;
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
  /* letter-spacing: .1em; */
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

/*====================================================
// NOTE |  装飾系
====================================================*/
.arrow {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40"><path fill="%23000000" d="M20,0C8.95,0,0,8.95,0,20s8.95,20,20,20,20-8.95,20-20S31.05,0,20,0ZM26.79,21.2l-9.96,6.08c-.8.49-1.82-.09-1.82-1.02v-12.52c0-.93,1.02-1.51,1.82-1.02l9.96,6.06c.91.55.91,1.86,0,2.42Z" /></svg>') no-repeat center / contain;
 border-radius: 100%;
 display: inline-block;
 line-height: 0;
 position: relative;
 transition: .2s ease-in-out;
 width: 1em;
 height: 1em;
}

.btn_wrap {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
}

.menu-btn-container .menu a,
.wp-block-button:not(.is-style-outline) .wp-block-button__link,
.linkBtn {
 /*class linkBtn */
 background: var(--s_yellow);
 border: none;
 border-radius: 2em;
 color: var(--black);
 cursor: pointer;
 display: flex;
 align-items: center;
 grid-gap: 0 .4em;
 justify-content: center;
 font-family: var(--f_maru);
 font-size: 1.625em;
 font-weight: 700;
 line-height: 1.4;
 margin: 0;
 opacity: 1;
 overflow: hidden;
 padding: .5em 1em;
 position: relative;
 text-align: center;
 transition: .3s ease-in-out;
 width: auto;
 min-width: 300px;
 max-width: 100%;
 min-height: 78px;
 z-index: auto;
}

.linkBtn.bg-transparent {
 border: solid 2px var(--mainColor);
 color: var(--mainColor);
}

.linkBtn.bg-transparent .arrow {
 transition: .0001s ease-in-out;
}

.linkBtn.bg-blue .arrow {
 filter: invert(10);
}

.smallBtn,
.wp-block-button.wp-smallBtn .wp-block-button__link {
 font-size: 1em;
 min-width: 260px;
}

.wp-block-button.is-style-outline .wp-block-button__link,
main .bodyText .is-style-outline .wp-block-button__link,
.linkBtn-small {
 background: transparent;
 border: none;
 border-bottom: solid 1px var(--mainColor);
 border-radius: 0;
 cursor: pointer;
 display: grid;
 grid-gap: .6em;
 grid-template-columns: 1fr auto;
 place-content: center;
 place-items: center;
 filter: none;

 font-size: 1em;
 font-weight: 500;
 line-height: 1.4;
 opacity: 1;
 padding: .3em 0;
 position: relative;
 text-align: center;
}

.linkBtn img {
 display: inline-block;
 height: 1em;
 margin-right: .5em;
 transition: .1s ease-in-out;
 vertical-align: -.1em;
}

.link_icon {
 display: inline-block;
 height: .8em;
 margin-left: .5em;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {

 .menu-btn-container .menu a,
 .formBox input[type="submit"],
 .formBox button[type="submit"] {
  padding: .8em;
  min-width: 300px;
 }

 .wp-block-button:not(.is-style-outline) .wp-block-button__link,
 main .bodyText .wp-block-button:not(.is-style-outline) .wp-block-button__link,
 .linkBtn {
  /* class linkBtn mobile */
  font-size: 14px;
  grid-gap: .6em;
  max-width: 500px;
  min-width: 156px;
  min-height: 40px;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 /* NOTE linkBtn pc */
}

@media (hover: hover) {

 .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
 .formBox input[type="submit"]:hover,
 button[type="submit"]:hover,
 .linkBtn:hover,
 a:hover .linkBtn {
  /* border-color: var(--mainColor);
		color: var(--mainColor); */
  filter: brightness(1.1);
  opacity: 1;
 }

 a:hover .linkBtn.bg-transparent,
 .linkBtn.bg-transparent:hover {
  background: var(--mainColor);
  color: #fff;
 }

 .is-style-outline .wp-block-button__link:hover,
 main .bodyText .is-style-outline .wp-block-button__link:hover,
 a:hover .linkBtn-small,
 .linkBtn-small:hover {
  background: var(--subColor);
  opacity: 1;
 }

 button[type="submit"]:hover .arrow,
 a:hover .arrow {
  transform: translateX(.2em);
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

.tax {
 font-size: .5em;
 margin-left: .3em;
}

dl.accordion>dt,
dl.review_post>dt,
dl.menu-accordion>dt {
 cursor: pointer;
 position: relative;
}

dl.accordion>dd,
dl.review_post>dd,
dl.menu-accordion>dd {
 overflow: hidden;
 transition: .3s ease-in-out;
}

dl.accordion .accordion_close {
 cursor: pointer;
}

.bgBox {
 pointer-events: none;
 position: absolute;
 top: 0;
 left: 0;
 margin: auto;
 width: 100%;
 height: 100%;
 z-index: -1;
}

.bgBox img {
 width: 100% !important;
 height: 100% !important;
 -o-object-fit: cover;
 object-fit: cover;
}

.decoBox {
 pointer-events: none;
 position: absolute;
}

.opacity-6 {
 opacity: .6
}

.opacity-8 {
 opacity: .8
}

.opacity-10 {
 opacity: 1
}



ul.markList li,
.bodyText.default_deco ul li {
 position: relative;
 padding-left: 1.0em;
 line-height: 1.4;
 margin: .5em 0;
}

ul.markList li::before,
.bodyText.default_deco ul li::before {
 content: '\30FB';
 display: block;
 margin: auto;
 position: absolute;
 top: 0;
 left: 0;
 width: 1em;
 height: 1em;
}

ul.markList>li:after {
 display: none !important;
}

ul.markList.attentionMark>li:before,
.bodyText ul.is-style-ark-list-note>li:before {
 background: transparent;
 content: '\203B';
 top: .1em;
 left: 0;
}

ul.markList.circleMark li:before,
.bodyText.default_deco ul li::before {
 background: var(--mainColor);
 border-radius: 100%;
 content: '';
 top: .4em;
 left: 0;
 width: .5em;
 height: .5em;
}

ol {
 counter-reset: number;
 /* 名前を付けたカウンターをリセット */
 list-style: none;
 /* olが数字を付けることをキャンセル */
 margin: 0;
 padding: 0;
}

ol>li {
 padding-left: 2em;
 line-height: 1.4;
 margin: .5em 0;
 position: relative;
}

ol>li:before {
 background: var(--mainColor);
 box-sizing: border-box;
 color: #fff;
 counter-increment: number;
 content: counter(number);
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: .8em;
 padding-bottom: .15em;
 position: absolute;
 top: 0;
 left: 0;
 text-align: center;
 width: 1.85em;
 height: 1.85em;
 line-height: 1;
}

ol.circleMarkList>li:before {
 border: solid 1px;
 border-radius: 100%;
 font-size: .9em;
 top: .05em;
}

.circleBox {
 border-radius: 100%;
}

.markerline {
 background: linear-gradient(transparent 70%, var(--l_blue) 70%, var(--l_blue) 100%);
}

.squareMark {
 border-radius: 2px;
 display: inline-block;
 padding: .2em .7em .3em;
 line-height: 1;
}

.circleMark {
 border-radius: 100px;
 display: inline-block;
 line-height: 1.2;
 padding: .25em .6em .3em;
}


/*====================================================
//// NOTE |  カラー
====================================================*/

.bg-white {
 background: #fff;
}

.bg-mainColor {
 background: var(--mainColor);
 color: #fff;
}

.bg-red {
 background: var(--red);
 color: #fff;
}

.bg-yellow {
 background: var(--yellow);
}

.bg-s_yellow {
 background: var(--s_yellow);
}

.bg-l_yellow {
 background: var(--l_yellow);
}

.bg-blue {
 background: var(--blue);
 color: #fff;
}

.bg-l_blue {
 background: var(--l_blue);
}

.bg-l_gray {
 background: var(--l_gray);
}

.bg-l_gray2 {
 background: var(--l_gray2);
}

.bg-gray {
 background: var(--d_gray);
 color: #fff;
}

.bg-d_gray {
 background: var(--d_gray);
 color: #fff;
}

.bg-black {
 background: var(--black);
 color: #fff;
}

.bg-transparent {
 background: transparent;
}

.bg-grd {
 background: var(--grd);
 color: #fff;
}

.white {
 color: #fff;
}

.mainColor {
 color: var(--mainColor);
}

.red {
 color: var(--red);
}

.yellow {
 color: var(--yellow);
}

.l_yellow {
 color: var(--l_yellow);
}

.blue {
 color: var(--blue);
}

.l_blue {
 color: var(--l_blue);
}

.gray {
 color: var(--gray);
}

.d_gray {
 color: var(--d_gray);
}

.b_gray {
 color: var(--b_gray);
}

.black {
 color: var(--black);
}

.border-none {
 border: none;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}


/*====================================================
////class .tabBox
====================================================*/
.tabBox {
 overflow: hidden;
 position: relative;
}

.tabBox .tabArea {
 grid-gap: 4px;
 position: relative;
 z-index: 5;
}

.tabBox .tab {
 background: var(--l_gray);
 border: solid 1px var(--gray);
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 flex: 1;
 height: 50px;
 line-height: 1.2;
 padding: 5px;
}

.tabBox .tab.current {
 background: #fff;
 border-bottom-color: #fff;
 cursor: default;
 pointer-events: none;
}

.tabBox .tab a {
 display: flex;
 align-items: center;
 justify-content: center;
 text-decoration: none;
 width: 100%;
 height: 100%;
}

.tabBox .tab.current a {
 pointer-events: none;
}

.tabBox .contentArea {
 background: #fff;
 /* border: solid 1px var(--gray); */
 margin-top: -1px;
 position: relative;
 transition: .4s all;
}

.tabBox .contentArea .tab_content {
 background: #fff;
 transition: 1.2s all;
 transition-delay: .4s;
}

.tabBox .contentArea .tab_content:not(.current) {
 border-bottom: solid 2px #fff;
 opacity: 0;
 pointer-events: none;
 position: absolute;
 top: 0;
 left: 0;
 transition: .2s all;
 transition-delay: 0s;
 width: 100%;
}

.tabBox .contentArea .tab_content:not(.current).hover {
 opacity: 1;
 pointer-events: auto;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 768px) {
 .tabBox .tabArea {
  display: flex;
 }

 .tabBox .tabArea .tab {
  flex: 1;
  font-size: 1.1rem;
  height: auto;
  min-height: 28px;
  padding: 6px 3px;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:959px) {}

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

/*====================================================
////id |  .yt
====================================================*/
.yt,
.wp-block-embed__wrapper {
 position: relative;
 height: 0;
 padding: 0px 0 56.3%;
 overflow: hidden;
}

.yt iframe,
.wp-block-embed__wrapper iframe {
 position: absolute;
 bottom: 0;
 width: 100%;
 height: 100%;
}


/*====================================================
////id 【header】
====================================================*/
header {
 transition: .3s ease-in-out;
 position: relative;
 z-index: 9999;
}

header .headerBox {
 background: var(--mainColor);
 position: relative;
 transition: .2s ease-in-out;
 width: 100%;
 height: 100%;
 z-index: 9999;
}

header .innerBox {
 justify-content: center;
 position: unset;
}

header .header_logo {
 align-items: center;
 position: relative;
 z-index: 100;
}

header img {
 margin: 0;
}

header .searchBox {
 margin: auto;
 /* pointer-events: auto; */
 position: absolute;
 top: 0;
 left: 20px;
 bottom: 0;
 height: 48px;
}

header .header_logo {
 pointer-events: auto;
}

header .header_logo .logo_img {
 opacity: 1;
 transition: .4s ease-in-out;
}

header .header_logo .logo_wh {
 opacity: 0;
 pointer-events: none;
 position: absolute;
 left: 0;
 transition: .4s ease-in-out;
}

header .menu-outer {
 pointer-events: auto;
 /* position: relative; */
 z-index: 30;
}

header .menuBtn {
 background: var(--blue_2);
 cursor: pointer;
 margin: auto;
 place-items: center;
 position: absolute;
 top: 0;
 right: 0;
 transition: .2s ease-in-out;
 width: 60px;
 height: 60px;
 z-index: 10;
}

header .menuBtn .humberger {
 display: block;
 width: 40%;
 height: 35%;
 position: relative;
 margin: 0;
}

header .menuBtn .humberger span {
 /* background: #fff; */
 border-top: solid 2px #fff;
 margin: auto;
 opacity: 1;
 position: absolute;
 left: 0;
 transition: .4s ease-in-out;
 width: 100%;
 height: 0;
}

header .menuBtn .humberger span:nth-child(1) {
 top: 0;
}

header .menuBtn .humberger span:nth-child(2) {
 top: 0;
 bottom: 0;
}

header .menuBtn .humberger span:nth-child(3) {
 bottom: 0;
}

header .maskBox {
 background: transparent;
 opacity: 0;
 pointer-events: none;
 position: fixed;
 bottom: 0;
 left: 0;
 transition: .5s ease-in-out;
 width: 100%;
 height: calc(100vh - 64px);
 height: calc(100dvh - 64px);
}

header .menuBox {
 background: var(--l_blue);
 color: var(--black);
 opacity: 0;
 overflow-y: auto;
 pointer-events: none;
 position: fixed;
 bottom: 0;
 right: -500px;
 transition: .5s ease-in-out;
 width: 100%;
 height: calc(100vh - 80px);
 height: calc(100dvh - 80px);
 z-index: 1;

 overflow-y: scroll;
 -ms-overflow-style: none;
 /* IE, Edge 対応 */
 scrollbar-width: none;
 /* Firefox 対応 */
}

header .menuBox::-webkit-scrollbar {
 /* Chrome, Safari 対応 */
 display: none;
}

header .menu-outer.open .menuBtn {
 transition: .2s ease-in-out;
}

header .menu-outer.open .humberger span {
 background: #fff;
 right: 0;
 width: 80%;
}

header .menu-outer.open .humberger span:nth-child(2) {
 opacity: 0;
}

header .menu-outer.open .humberger span:nth-child(1) {
 top: calc(50% - 1px);
 right: 0;
 transform: rotate(-135deg);
}

header .menu-outer.open .humberger span:nth-child(3) {
 bottom: calc(50% - 0px);
 right: 0;
 transform: rotate(135deg);
}

header .menu-outer.open .humberger span:nth-child(2)::before,
header .menu-outer.open .humberger span:nth-child(3)::before {
 display: none;
}

header .menu-outer.open .maskBox {
 opacity: 1;
 pointer-events: auto;
}

header .menu-outer.open .menuBox {
 pointer-events: auto;
 right: 0;
 opacity: 1;
}

header .menuBox .menuBox-inner {
 width: 92%;
}

header .menuBox .menu-wrapper {
 font-size: min(3vw, 2.5rem);
 font-weight: 700;
 grid-gap: 0 min(3vw, 60px);
 grid-template-columns: 1fr 1fr;
}

header .menuBox .menu_item {
 border-top: solid 1px var(--gray);
 position: relative;
}

header .menuBox .menu_item.parent_item:last-child {
 border-bottom: solid 1px var(--gray);
}

header .menuBox .menu_item a {
 display: flex;
 align-items: center;
 grid-gap: .6em;
 padding: .1em .5em;
 font-weight: normal;
}

header .menuBox .menu_item a .text {
 font-size: .8em;
}

header .menuBox .menu_item a .icon {
 width: 1.8em;
 height: 1.4em;
}

header .menuBox .menu_item .sub-menu-btn {
 cursor: pointer;
 position: absolute;
 top: 0;
 right: 0;
 width: 100%;
 height: 2em;
 z-index: 10;
}

header .menuBox .menu_item .sub-menu-btn::before,
header .menuBox .menu_item .sub-menu-btn::after {
 border-top: solid 2px var(--black);
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: 0;
 right: 1em;
 bottom: 0;
 transition: .2s ease-in-out;
 width: 1em;
 height: 0;
}

header .menuBox .menu_item .sub-menu-btn::after {
 transform: rotate(90deg);
}

header .menuBox .menu_item.open .sub-menu-btn::before {
 transform: rotate(180deg);
}

header .menuBox .menu_item.open .sub-menu-btn::after {
 opacity: 0;
 transform: rotate(360deg);
}



header .menuBox .sub-menu-outer {
 height: 0;
 overflow: hidden;
 transition: .2s ease-in-out;
}

header .menuBox .menu_item.child_item a {
 background: #fff;
 padding-left: 2.5em;
}

header #search_btn {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40"><path fill="%23ffffff" d="M38.93,33.95l-9.12-9.12c1.59-2.51,2.53-5.47,2.53-8.66C32.34,7.24,25.1,0,16.17,0S0,7.24,0,16.17s7.24,16.17,16.17,16.17c3.45,0,6.63-1.09,9.26-2.92l9.02,9.02c1.24,1.24,3.25,1.24,4.49,0,1.24-1.24,1.24-3.25,0-4.49ZM16.17,27.13c-6.05,0-10.96-4.91-10.96-10.96s4.91-10.96,10.96-10.96,10.96,4.91,10.96,10.96-4.91,10.96-10.96,10.96Z" /></svg>') no-repeat center;
 background-size: 20px 20px;
 cursor: pointer;
 position: absolute;
 top: 0;
 left: 0;
 width: 60px;
 height: 50px;
 z-index: 10;
}

header .search_menuBox {
 background: var(--l_blue);
 color: var(--black);
 opacity: 0;
 overflow-y: auto;
 pointer-events: none;
 position: fixed;
 bottom: 0;
 left: -500px;
 transition: .5s ease-in-out;
 width: 100%;
 height: calc(100vh - 50px);
 height: calc(100dvh - 50px);
 z-index: 1;
 overflow-y: scroll;
 -ms-overflow-style: none;
 scrollbar-width: none;
}

header .search-outer.open .search_menuBox {
 left: 0;
 opacity: 1;
 pointer-events: auto;
}

header .search_menuBox .innerBox {
 padding-top: 50px;
}

header .search_menuBox .head_text {
 font-size: min(4.3vw, 3.0rem);
}

header .search_menuBox .ex_text {
 font-size: min(3.8vw, 2.0rem);
}

header .search_menuBox .searchBox {
 position: unset;
 left: 0;
}

header .search_menuBox .searchBox .searchform {
 border: none;
 font-size: min(3.8vw, 2.4rem);
 margin: auto;
 width: min(100%, 600px);
}

/* ////////// mobile ////////// NOTE header mobile */
@media screen and (max-width: 959.8px) {
 header {
  height: 50px;
 }

 header.hide {
  top: -130px;
 }

 .menu-open header .headerBox::before {
  opacity: 1;
 }

 header .headerBox.hide {
  /* opacity: 0; */
 }

 header .innerBox {
  align-items: center;
  padding: 0;
  height: 100%;
 }

 header .header_logo {
  height: 100%;
  justify-content: flex-start;
 }

 header .header_logo a {
  display: flex;
  align-items: center;
 }

 header .header_logo img {
  height: 40px;
 }

 header .pc_search {
  display: none;
 }

 header .menuBox {
  height: calc(100vh - 50px);
  height: calc(100dvh - 50px);
 }

 header .menuBtn {
  width: 60px;
  height: 50px;
 }

 header .menuBtn .humberger::before,
 header .menuBtn .humberger::after {
  width: 5px;
  height: 100%;
 }

 header .menu-outer.open .humberger::before {
  left: -3px;
 }

 header .menu-outer.open .humberger::after {
  right: -3px;
 }

 header .menuBox .menu_item.parent_item:last-child {
  border-bottom: solid 1px var(--gray);
 }

}

@media screen and (max-width:769px) {
 header .menuBox .menu-wrapper {
  grid-template-columns: 1fr;
  font-size: min(4.5vw, 1.8rem);
  margin: auto;
  max-width: 400px;
 }

 header .menuBox .menu:first-child .menu_item.parent_item:last-child {
  border-bottom: none;
 }

 header .search_menuBox .head_text {
  font-size: min(4.3vw, 1.6rem);
 }

 header .search_menuBox .ex_text {
  font-size: min(3.8vw, 1.2rem);
 }

 header .search_menuBox .searchBox .searchform {
  font-size: min(3.8vw, 1.4rem);
  width: min(100%, 320px);
 }

}

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


/* ////////// PC ////////// NOTE header PC */
@media print,
screen and (min-width: 769px) {
 header .menu:first-child .parent_item:first-child {
  border-top: none;
 }

 header .menu:not(.sub-menu):last-child {
  padding-top: 2em;
 }
}

@media print,
screen and (min-width: 960px) {
 header {
  height: 80px;
 }

 header.global .headerBox:hover::before {
  opacity: 1;
 }

 header.hide {
  top: -180px;
 }

 header .header_main {
  align-items: center;
  grid-gap: 0 20px;
  height: 100%;
  max-width: none;
  padding: 0;
 }

 header .header_logo {
  /* flex: 1; */
  justify-content: center;
  height: 100%;
 }

 header .header_logo img {
  width: 250px;
 }

 header .header_logo a:hover {
  color: inherit;
  opacity: .8;
 }

 header .menuBtn {
  width: 100px;
  height: 80px;
 }

 /* header .menuBox {
		height: 100vh;
		height: 100dvh;
    } */
 header .menu-outer.open .menuBox {}

 header .menuBox .menu {}

 header .menuBox .menu li {
  padding: 0;
 }

 header .menuBox .menu>li>a {
  padding: 1em 2em 1em 0;
 }

 header .menuBox .menu>li>a:hover {
  color: var(--mainColor);
  opacity: 1;
 }

 header .menuBox .menu>li>a:hover::after {
  border-color: var(--mainColor);
  transform: translateX(.2em) rotate(45deg);
 }

 header #search_btn {
  display: none;
 }

}


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

@media screen and (min-width:1300px) {
 header {
  height: 100px;
 }

 header .headerBox {
  height: 100px;
 }

 header .menuBtn {
  width: 120px;
  height: 100px;
 }

 header .menuBox {
  height: calc(100vh - 100px);
  height: calc(100dvh - 100px);
 }
}

@media screen and (min-width:1700px) {
 header .pc_menu .menu {
  max-width: none;
 }

 header .pc_menu .menu {
  font-size: 1.8rem;
 }
}

@media (hover: hover) {
 header .pc_menu .sub-menu a:hover {
  background: #fff;
  opacity: 1;
 }

 header .pc_menu .sub-menu a:hover .arrow::after {
  filter: none;
 }


 header .menuBox .menu li a::after {
  border-bottom: solid 2px var(--black);
  content: '';
  display: block;
  margin: auto;
  position: absolute;
  left: auto;
  right: 0;
  bottom: 0;
  transition: .3s ease-in-out;
  width: 0;
  height: 0;
 }

 header .menuBox .menu li a:hover::after {
  left: 0;
  right: auto;
  width: 100%;
 }
}


/*====================================================
////id |   loader
====================================================*/
.is-hide {
 display: none;
}

/* ローディング画面をフェードアウト */
/* .fadeout-bg {
 transition-property: opacity;
 transition-delay: .8s;
 transition-duration: 1.7s;
 opacity: 0;
 pointer-events: none;
} */

/* ローダーをフェードアウト */
/* .fadeout-loader {
 transition-property: opacity;
 transition-delay: .8s;
 transition-duration: 1.7s;
 opacity: 0;
 pointer-events: none;
} */

/* ローディング画面 */
/* #loader-bg {
 background: #fff;
 height: 100%;
 left: 0;
 position: fixed;
 top: 0;
 width: 100%;
 z-index: 10000;
} */

#loader {
 /* height: 120px;
	left: 50%;
	margin-left: -60px;
	margin-top: -60px;
	position: fixed;
	top: 50%;
	width: 120px; */
}

/*
#loader-first {
 opacity: 0;
 width: 100%;
 height: 100%;
}

#loader-first img,
#loader-first svg {
 width: 25vw;
 max-width: 100px;
}

#loader-first.fadeout img,
#loader-first.fadeout svg {}

#loader-first svg {
 opacity: 0;
 animation: loader_logo 4s linear 0s 1;
} */


/*====================================================
//class .sa
====================================================*/
.sa {
 opacity: 0;
 transition: all 1.0s ease-in-out;
}

.sa.show {
 opacity: 1;
 transform: none;
}

.sa.show_after {
 opacity: 1;
 transform: none;
 transition: 0s;
}

.sa-lr {
 transform: translate(-40px, 0);
}

.sa-rl {
 transform: translate(40px, 0);
}

.sa-up {
 transform: translate(0, 40px);
}

.sa-down {
 transform: translate(0, -40px);
}

.sa-scaleUp {
 transform: scale(.8);
}

.sa-scaleDown {
 transform: scale(1.2);
}

.sa-rotateL {
 transform: rotate(180deg);
}

.sa-rotateR {
 transform: rotate(-180deg);
}

.sa.slideShow {
 opacity: 1;
 position: relative;
 z-index: 1;
}

.sa.slideShow:before {
 background: var(--l_blue);
 content: '';
 position: absolute;
 top: 0;
 left: 0;
 right: auto;
 transition: .5s ease-in-out;
 width: 0;
 height: 100%;
 z-index: 10;
}

.sa.slideShow.show:before {
 -webkit-animation: anim-slide 1.0s ease-in-out forwards;
 animation: anim-slide 1.0s ease-in-out forwards;
 -webkit-animation-delay: .4s;
 animation-delay: .4s;
}

@-webkit-keyframes anim-slide {
 0% {}

 55% {
  width: 100%;
  left: 0;
  right: 0;
 }

 65% {
  width: 100%;
  left: auto;
  right: 0;
 }

 100% {
  width: 0;
  left: auto;
  right: 0;
 }
}

@keyframes anim-slide {
 0% {}

 47% {
  width: 100%;
  left: 0;
  right: 0;
 }

 53% {
  width: 100%;
  left: auto;
  right: 0;
 }

 100% {
  width: 0;
  left: auto;
  right: 0;
 }
}

.sa.slideShow:not(.show) img,
.sa.slideShow:not(.show)>img,
.sa.slideShow:not(.show)>.box-inner {
 opacity: 0;
}

.sa.slideShow.show img,
.sa.slideShow.show>img,
.sa.slideShow.show>.box-inner {
 opacity: 1;
 transition-delay: .9s;
}


.sa.slideShow.slide-rl {
 transform: rotate(180deg);
}

.sa.slideShow.slide-rl img {
 transform: rotate(180deg);
}

.sa.slideShow.slide-white:before {
 background: #fff;
}

/*====================================================
////class .slick
====================================================*/
.slider {
 display: none;
}

.slick-track {
 display: flex !important;
}

.slick-slide {
 height: auto !important;
}

.slider.slick-initialized {
 display: block;
 /*slick-initializedが付与されたら表示*/
}

.slick-dotted.slick-slider {
 margin-bottom: 0;
 padding-bottom: 0px;
}

.slick-dots {
 display: flex;
 justify-content: center;
 height: 20px;
 margin: 1em auto 0;
 /* position: absolute;
		left: 0;
		right: 0;
		bottom: 1.3em; */
 z-index: 10;
}

.slick-dots li {
 width: auto;
 height: auto;
 margin: 0;
 padding: 0;
}

.slick-dots li::before {
 display: none;
}

.slick-dots li button {
 background: none;
 border: none;
 cursor: pointer;
 outline: none;
 overflow: hidden;
 padding: 0;
 position: relative;
 text-indent: -9999px;
 width: 20px;
 height: 20px;
}

.slick-dots li button:before {
 background: #EEEEEE;
 border-radius: 10px;
 content: '';
 margin: auto;
 opacity: 1;
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 transition: .2s ease-in-out;
 width: 8px;
 height: 8px;
}

.slick-dots li.slick-active button:before {
 background: #ADADAD;
 opacity: 1;
}

.dots_bar.slick-dotted.slick-slider {
 margin-bottom: 1em;
}

.dots_bar .slick-dots {
 margin: auto;
 position: absolute;
 top: calc(100% + .5em);
 left: 0;
 right: 0;
 width: calc(99% - min(1vw, 14px));
}

@media screen and (max-width: 769px) {
 .dots_bar .slick-dots {
  top: calc(100% - 10px);
  width: calc(100% - min(1vw, 14px));
 }
}

.dots_bar .slick-dots li {
 display: flex;
 align-items: center;
 flex: 1;
}

.dots_bar .slick-dots li button {
 width: 100%;
 height: 10px;
}

.dots_bar .slick-dots li button::before {
 border-radius: 0;
 width: 100%;
 height: 4px;
}

.dots_bar .slick-dots li:first-child button::before {
 border-radius: 10px 0 0 10px;
}

.dots_bar .slick-dots li:last-child button::before {
 border-radius: 0 10px 10px 0;
}

.slick-arrow {
 border: none;
 border-radius: 100%;
 margin: auto;
 position: absolute;
 top: 0;
 bottom: 0;
 transform: none;
 transition: .2s ease-in-out;
 width: 20px;
 height: 20px;
 z-index: 1000;
}


.slick-prev {
 left: 0;
}


.slick-next {
 right: 0;
}


.slick-arrow:hover {
 /*	background: #fff;*/
 opacity: 1;
}

.slick-prev {
 left: calc(min(3.5vw, 20px) * -1);
}

.slick-next {
 right: calc(min(3.5vw, 20px) * -1);
}

.slick-prev * {
 display: none;
}

@media screen and (max-width: 769px) {
 .slick-prev {
  left: -17px;
 }


 .slick-next {
  right: -17px;
 }
}

.slick-arrow:before {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 11 20"><path fill="%230675CA" d="M.78,20C.35,20,0,19.66,0,19.24c0-.2.08-.4.23-.54l8.89-8.7L.23,1.3C-.08,1.01-.08.52.23.22c.3-.3.8-.3,1.1,0h0l9.44,9.24c.3.3.31.78,0,1.08,0,0,0,0,0,0L1.33,19.78c-.15.14-.35.22-.55.22Z" /></svg>') no-repeat center / contain;
 content: '';
 margin: auto;
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 transition: .3s ease-in-out;
 width: 60%;
 height: 100%;
}

@media screen and (min-width: 770px) {
 .slick-arrow:before {
  width: 19px;
  height: 35px;
 }
}

@media screen and (max-width: 769px) {
 .slick-arrow:before {
  width: 50%;
 }
}

.slick-prev:before {
 transform: rotate(-180deg);
}

.slick-next:before {}

.slick-arrow.slick-disabled {
 cursor: default;
 opacity: 0;
 pointer-events: none;
}


/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {
 .slick-prev:hover::before {
  transform: translateX(-.5em) rotate(-180deg);
 }

 .slick-next:hover::before {
  transform: translateX(.5em);
 }
}

/*====================================================
////class .headBox
====================================================*/
.headBox {
 position: relative;
 z-index: 2;
}

.headBox h2,
.headBox h3,
.headBox h4 {
 position: relative;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

@media screen and (min-width:960px) and (max-width:1300px) {}

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

/*
// NOTE |  【特殊装飾】 */
.headBox {
 position: relative;
}

.deco_head {
 overflow: hidden;
 text-align: center;
}

.deco_head .en {
 display: inline-block;
 padding: 0 .8em;
 position: relative;
 font-size: 1.4em;
}

@media screen and (max-width: 769px) {
 .deco_head .en {
  display: inline-block;
  padding: 0 1.2em;
  position: relative;
  font-size: 1.4em;
 }
}


.deco_head .en::before,
.deco_head .en::after {
 background: no-repeat top center / contain;
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: 0;
 width: 1.6em;
 height: 1.4em;
}

.deco_head .en::before {
 left: -4vw;
}

.deco_head .en::after {
 right: -4vw;
}

.deco_head .share {
 margin-top: 3px;
 font-size: 2rem;
 font-weight: normal;
}

@media screen and (max-width: 769px) {
 .deco_head .share {
  margin-top: 1px;
  font-size: 1.2rem;
 }
}

/* .deco_head.deco-articles .en::before,
.deco_head.deco-articles .en::after, */
.deco_head.deco-search .en::before,
.deco_head.deco-search .en::after {
 background-image: url('img/cmn/nav-7-0.webp');
 filter: brightness(1.2);
}

.deco_head.deco-star .en::before,
.deco_head.deco-star .en::after,
.deco_head.deco-special .en::before,
.deco_head.deco-special .en::after {
 background-image: url('img/cmn/nav-7-0.webp');
 filter: brightness(1.2);
}

.deco_head.deco-special-new .en::before,
.deco_head.deco-special-new .en::after {
 background-image: url('img/cmn/nav-7-2.webp');
 filter: brightness(1.2);
}

.deco_head.deco-special-value .en::before,
.deco_head.deco-special-value .en::after {
 background-image: url('img/cmn/nav-7-3.webp');
 filter: brightness(1.2);
}

.deco_head.deco-special-season .en::before,
.deco_head.deco-special-season .en::after {
 background-image: url('img/cmn/nav-7-5.webp');
 filter: brightness(1.2);
}

.deco_head.deco-special-matome .en::before,
.deco_head.deco-special-matome .en::after {
 background-image: url('img/cmn/nav-7-4.webp');
 filter: brightness(1.2);
}

.deco_head.deco-xo_event .en::before,
.deco_head.deco-xo_event .en::after,
.deco_head.deco-events .en::before,
.deco_head.deco-events .en::after {
 background-image: url('img/cmn/nav-3-0.webp');
 filter: brightness(1.2);
}

.deco_head.deco-new .en::before,
.deco_head.deco-new .en::after {
 background-image: url('img/cmn/nav-1-2.webp');
 filter: brightness(1.2);
}

.deco_head.deco-new2 .en::before,
.deco_head.deco-new2 .en::after {
 background-image: url('img/cmn/nav-1-2.png');
}

.deco_head.deco-ranking .en::before,
.deco_head.deco-ranking .en::after {
 background-image: url('img/cmn/icon-ranking.webp');
}

.deco_head.deco-area .en::before,
.deco_head.deco-area .en::after {
 background-image: url('img/cmn/nav-2-2.webp');
}

.deco_head.deco-play .en::before,
.deco_head.deco-play .en::after {
 background-image: url('img/cmn/nav-2-0.webp');
}

.deco_head.deco-event .en::before,
.deco_head.deco-event .en::after {
 background-image: url('img/cmn/nav-3-0.webp');
}

.deco_head.deco-play_area .en::before,
.deco_head.deco-play_area .en::after {
 background-image: url('img/cmn/nav-2-2.webp');
}

.deco_head.deco-play_category .en::before,
.deco_head.deco-play_category .en::after {
 background-image: url('img/cmn/nav-2-3.webp');
}

.deco_head.deco-play_map .en::before,
.deco_head.deco-play_map .en::after {
 background-image: url('img/cmn/nav-2-4.webp');
}

.deco_head.deco-event .en::before,
.deco_head.deco-event .en::after {
 background-image: url('img/cmn/nav-3-0.webp');
}

.deco_head.deco-event_area .en::before,
.deco_head.deco-event_area .en::after,
.deco_head.deco-xo_event_area .en::before,
.deco_head.deco-xo_event_area .en::after {
 background-image: url('img/cmn/nav-3-3.webp');
}

.deco_head.deco-event_category .en::before,
.deco_head.deco-event_category .en::after {
 background-image: url('img/cmn/nav-3-4.webp');
}

.deco_head.deco-event_calendar .en::before,
.deco_head.deco-event_calendar .en::after {
 background-image: url('img/cmn/nav-3-2.webp');
}

.deco_head.deco-eat .en::before,
.deco_head.deco-eat .en::after {
 background-image: url('img/cmn/nav-4-0.webp');
}

.deco_head.deco-eat_area .en::before,
.deco_head.deco-eat_area .en::after {
 background-image: url('img/cmn/nav-4-2.webp');
}

.deco_head.deco-eat_category .en::before,
.deco_head.deco-eat_category .en::after {
 background-image: url('img/cmn/nav-4-3.webp');
}

.deco_head.deco-eat_map .en::before,
.deco_head.deco-eat_map .en::after {
 background-image: url('img/cmn/nav-4-4.webp');
}

.deco_head.deco-shopping .en::before,
.deco_head.deco-shopping .en::after {
 background-image: url('img/cmn/nav-5-0.webp');
}

.deco_head.deco-shopping_area .en::before,
.deco_head.deco-shopping_area .en::after {
 background-image: url('img/cmn/nav-5-2.webp');
}

.deco_head.deco-shopping_category .en::before,
.deco_head.deco-shopping_category .en::after {
 background-image: url('img/cmn/nav-5-3.webp');
}

.deco_head.deco-shopping_map .en::before,
.deco_head.deco-shopping_map .en::after {
 background-image: url('img/cmn/nav-5-4.webp');
}

.deco_head.deco-stay .en::before,
.deco_head.deco-stay .en::after {
 background-image: url('img/cmn/nav-6-0.webp');
}

.deco_head.deco-stay_area .en::before,
.deco_head.deco-stay_area .en::after {
 background-image: url('img/cmn/nav-6-2.webp');
}

.deco_head.deco-stay_category .en::before,
.deco_head.deco-stay_category .en::after {
 background-image: url('img/cmn/nav-6-3.webp');
}

.deco_head.deco-stay_map .en::before,
.deco_head.deco-stay_map .en::after {
 background-image: url('img/cmn/nav-6-4.webp');
}

.deco_head .jp {
 display: block;
 font-family: var(--f_maru);
 font-size: .67em;
 font-weight: 500;
 line-height: 1.4;
 padding-bottom: .7em;
 position: relative;
}

.deco_head .jp::after {
 border-bottom: solid 2px;
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 bottom: 0;
 left: -100%;
 right: -100%;
 width: 8em;
 height: 0;
}

.head_text {
 font-family: var(--f_maru);
 font-weight: bold;
}

.cover_bgImg {
 background: no-repeat center / cover;
}

.event_bgBox {
 background: no-repeat top center;
 background-size: 100% auto;
}

.bg_decoBox.deco-wave {
 background: #fff url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 150 35"><path fill="%2345B2F1" d="M0,30.08v4.92h150v-4.92c-37.43-.05-37.47-30.08-74.96-30.08S37.52,30.08,0,30.08Z" /></svg>') repeat-x top center / auto calc(100% + 1px);
 margin-top: -1px;
 width: 100%;
 height: 4vw;
 max-height: 30px;
}

.bg_decoBox.deco-round {
 background: #fff url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 600 70"><path fill="%2345B2F1" d="M438.94,69.75c-112.01-4.47-164.15-49.17-256.49-65.17C85.39-12.24,0,22.69,0,22.69v47.31h600V22.69s-13.25,4.84-55.34,25.36c-19.98,9.74-61.52,23.46-105.72,21.7Z" /></svg>') repeat-x bottom center / auto 100%;
 margin-top: -1px;
 width: 100%;
 height: 12vw;
 max-height: 150px;
}

.icon {
 display: inline-block;
 vertical-align: -.2em;
 width: 1.2em;
 height: 1.2em;
}

.icon.icon-new_window {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23000000" d="M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z" /></svg>') no-repeat center / contain;
}

.icon.icon-instagram {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23000000" d="M12,2.16c3.2,0,3.58.01,4.85.07,1.17.05,1.81.25,2.23.41.56.22.96.48,1.38.9.42.42.68.82.9,1.38.16.42.36,1.06.41,2.23.06,1.27.07,1.64.07,4.85s-.01,3.58-.07,4.85c-.05,1.17-.25,1.81-.41,2.23-.22.56-.48.96-.9,1.38s-.82.68-1.38.9c-.42.16-1.06.36-2.23.41-1.27.06-1.64.07-4.85.07s-3.58-.01-4.85-.07c-1.17-.05-1.81-.25-2.23-.41-.56-.22-.96-.48-1.38-.9-.42-.42-.68-.82-.9-1.38-.16-.42-.36-1.06-.41-2.23-.06-1.27-.07-1.64-.07-4.85s.01-3.58.07-4.85c.05-1.17.25-1.81.41-2.23.22-.56.48-.96.9-1.38s.82-.68,1.38-.9c.42-.16,1.06-.36,2.23-.41,1.27-.06,1.64-.07,4.85-.07M12,0c-3.26,0-3.67.01-4.95.07-1.28.06-2.15.26-2.91.56-.79.31-1.46.72-2.13,1.38-.67.67-1.08,1.34-1.38,2.13-.3.76-.5,1.64-.56,2.91-.06,1.28-.07,1.69-.07,4.95s.01,3.67.07,4.95c.06,1.28.26,2.15.56,2.91.31.79.72,1.46,1.38,2.13.67.67,1.34,1.08,2.13,1.38.76.3,1.64.5,2.91.56,1.28.06,1.69.07,4.95.07s3.67-.01,4.95-.07c1.28-.06,2.15-.26,2.91-.56.79-.31,1.46-.72,2.13-1.38.67-.67,1.08-1.34,1.38-2.13.3-.76.5-1.64.56-2.91.06-1.28.07-1.69.07-4.95s-.01-3.67-.07-4.95c-.06-1.28-.26-2.15-.56-2.91-.31-.79-.72-1.46-1.38-2.13-.67-.67-1.34-1.08-2.13-1.38-.76-.3-1.64-.5-2.91-.56-1.28-.06-1.69-.07-4.95-.07h0ZM12,5.84c-3.4,0-6.16,2.76-6.16,6.16s2.76,6.16,6.16,6.16,6.16-2.76,6.16-6.16-2.76-6.16-6.16-6.16ZM12,16c-2.21,0-4-1.79-4-4s1.79-4,4-4,4,1.79,4,4-1.79,4-4,4ZM18.41,4.15c-.8,0-1.44.64-1.44,1.44s.64,1.44,1.44,1.44,1.44-.64,1.44-1.44-.64-1.44-1.44-1.44Z" /></svg>') no-repeat center / contain;
}

.icon.icon-x {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23000000" d="M13.24,11.55l6.25,8.94h-2.56l-5.1-7.29h0s-.75-1.07-.75-1.07L5.12,3.61h2.56l4.81,6.87.75,1.07ZM24,3.53v16.94c0,1.95-1.58,3.53-3.53,3.53H3.53c-1.95,0-3.53-1.58-3.53-3.53V3.53C0,1.58,1.58,0,3.53,0h16.94c1.95,0,3.53,1.58,3.53,3.53ZM21.77,21.69l-7.66-11.15h0l7.04-8.19h-1.67l-6.12,7.11-4.88-7.11H2.85l7.39,10.75-7.39,8.59h1.67l6.46-7.51,5.16,7.51h5.63Z" /></svg>') no-repeat center / contain;
}

.icon.icon-tiktok {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23000000" d="M20.42,0H3.58C1.6,0,0,1.6,0,3.58v16.84c0,1.98,1.6,3.58,3.58,3.58h16.84c1.98,0,3.58-1.6,3.58-3.58V3.58c0-1.98-1.6-3.58-3.58-3.58ZM20.62,7.6v2.64c-1.76,0-3.39-.56-4.73-1.52v6.9c0,3.45-2.81,6.25-6.25,6.25-1.33,0-2.57-.42-3.58-1.13-1.61-1.13-2.67-3-2.67-5.12,0-3.45,2.81-6.25,6.25-6.25.29,0,.57.02.84.06v3.47c-.27-.08-.55-.13-.84-.13-1.57,0-2.86,1.28-2.86,2.86,0,1.1.62,2.05,1.53,2.53.4.21.85.33,1.32.33,1.54,0,2.79-1.22,2.85-2.75V2.12h3.4c0,.29.03.58.08.86.24,1.29,1.01,2.41,2.07,3.1.74.48,1.63.77,2.57.77v.76Z" /></svg>') no-repeat center / contain;
}

.icon.icon-facebook {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 24"><path fill="%23000000" d="M12,0C5.37,0,0,5.37,0,12c0,5.99,4.39,10.95,10.12,11.85v-8.39h-3.05v-3.47h3.05v-2.64c0-3.01,1.79-4.67,4.53-4.67,1.31,0,2.69.23,2.69.23v2.95h-1.51c-1.49,0-1.96.93-1.96,1.87v2.25h3.33l-.53,3.47h-2.8v8.39c5.74-.9,10.12-5.86,10.12-11.85C24,5.37,18.63,0,12,0Z" /></svg>') no-repeat center / contain;
}

/* 流れるテキスト */
.c-text {
 display: flex;
 grid-gap: 0 2em;
 overflow: hidden;
 width: 100vw;
 margin-inline: calc(50% - 50vw);
}

@media screen and (max-width: 769px) {
 .c-text {
  line-height: 1.4;
  font-size: .8em;
 }
}

.c-text__item {
 flex-shrink: 0;
 white-space: nowrap;
}

.c-text__item:nth-child(odd) {
 animation: MoveLeft 40s -20s infinite linear;
}

.c-text__item:nth-child(even) {
 animation: MoveLeft2 40s infinite linear;
}

@keyframes MoveLeft {
 from {
  transform: translateX(100%);
 }

 to {
  transform: translateX(-100%);
 }
}

@keyframes MoveLeft2 {
 from {
  transform: translateX(0);
 }

 to {
  transform: translateX(-200%);
 }
}

.searchform {
 background: #fff;
 border: solid 1px var(--mainColor);
 border-radius: 8px;
 display: grid;
 grid-template-columns: 1fr auto;
 overflow: hidden;
}

.searchform input[type="text"] {
 border: none;
}

.searchform button {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40"><path fill="%23000000" d="M38.93,33.95l-9.12-9.12c1.59-2.51,2.53-5.47,2.53-8.66C32.34,7.24,25.1,0,16.17,0S0,7.24,0,16.17s7.24,16.17,16.17,16.17c3.45,0,6.63-1.09,9.26-2.92l9.02,9.02c1.24,1.24,3.25,1.24,4.49,0,1.24-1.24,1.24-3.25,0-4.49ZM16.17,27.13c-6.05,0-10.96-4.91-10.96-10.96s4.91-10.96,10.96-10.96,10.96,4.91,10.96,10.96-4.91,10.96-10.96,10.96Z" /></svg>') no-repeat center;
 background-size: 50% 100%;
 display: flex;
 align-items: center;
 justify-content: center;
 width: 2.5em;
 height: 100%;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 .deco_head .en {
  font-size: 2.2rem;
 }

 .deco_head .jp {
  font-size: 1.2rem;
  padding-bottom: 7.5px;
 }

 .deco_head .jp::after {
  border-bottom: solid 1px;
 }

 .event_bgBox {
  background: no-repeat top center;
  background-size: 140% auto;
 }

}

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


/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

@media print,
screen and (min-width: 1080px) {}

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

@media (hover: hover) {}


/*====================================================
////id |  post common
====================================================*/
.term_item {
 border-radius: 2em;
 line-height: 1.6;
 min-width: 8em;
 padding: .1em .5em;
 text-align: center;
}

.cate_item {
 font-weight: bold;
}

.date {
 grid-gap: .7em;
}

.date .date_item {
 display: flex;
 align-items: center;
 grid-gap: .3em;
}

.date .date_item::before {
 content: '';
 display: block;
 width: 1.2em;
 height: 1.2em;
}

.date .postdate::before {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 15 15"><path fill="%23999999" d="M9.96.68l-.68.68L1.83,8.81s0,.01-.01.02c-.03.03-.05.08-.08.12-.03.04-.05.08-.07.12,0,0,0,.01-.01.02L.04,14.06c-.08.26-.02.54.17.73s.47.26.73.17l4.97-1.63s.01,0,.02-.01c.1-.03.19-.08.26-.16,0,0,0,0,0,0h0s0,0,0,0l7.44-7.44.68-.68c.91-.91.91-2.39,0-3.3l-1.06-1.06c-.91-.91-2.39-.91-3.3,0ZM2.66,10.64l1.7,1.7-2.53.83.83-2.53ZM3.35,9.31l6.43-6.43,2.34,2.34-6.43,6.43-2.34-2.34ZM13.31,2.75c.35.35.35.92,0,1.28l-.17.17-2.34-2.34.17-.17c.35-.35.92-.35,1.28,0l1.06,1.06Z" /></svg>') no-repeat center / contain;
}

.date .update::before {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 15 15"><path fill="%23999999" d="M15,7.5c0,4.14-3.36,7.5-7.5,7.5S0,11.64,0,7.5,3.36,0,7.5,0c.39,0,.7.31.7.7s-.31.7-.7.7C4.14,1.4,1.4,4.14,1.4,7.5s2.74,6.1,6.1,6.1,6.1-2.74,6.1-6.1c0-.39.31-.7.7-.7s.7.31.7.7ZM8.2,7.07v-3.83c0-.39-.31-.7-.7-.7s-.7.31-.7.7v4.26c0,.27.15.51.39.63l2.87,1.45c.1.05.21.08.32.08.26,0,.5-.14.63-.39.17-.35.04-.77-.31-.94l-2.48-1.25ZM10.1,1.92c.39,0,.71-.32.71-.71s-.32-.71-.71-.71-.71.32-.71.71.32.71.71.71ZM12.32,3.39c.39,0,.71-.32.71-.71s-.32-.71-.71-.71-.71.32-.71.71.32.71.71.71ZM13.8,5.59c.39,0,.71-.32.71-.71s-.32-.71-.71-.71-.71.32-.71.71.32.71.71.71Z" /></svg>') no-repeat center / contain;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {}

/*====================================================
////id ｜ archive_item
====================================================*/
.archive_itemBox {
 position: relative;
 z-index: 10;
}

.archive_item a {
 background: #fff;
 border-radius: min(2vw, 1em);
 display: grid;
 grid-template-rows: auto 1fr;
 line-height: 1.6;
 overflow: hidden;
 padding: 0;
 position: relative;
}

.archive_item .imgBox .coverImg {
 /* padding-top: 65%; */
 aspect-ratio: 16 / 9;
}

.archive_item .txtBox {
 padding: .8em .8em 2.5em;
 position: relative;
}

.category.flexBox,
.area.flexBox {
 grid-gap: 5px;
}

.archive_item .date {
 margin: auto;
 position: absolute;
 bottom: .8em;
 right: .8em;
}

.archive_item .date>span {
 font-size: .75em;
}

.archive_item .category {
 grid-gap: .2em .5em;
 position: absolute;
 top: 15px;
 left: 13px;
}

@media screen and (max-width: 769px) {
 .archive_item .category {
  grid-gap: .2em .5em;
  position: absolute;
  top: 0.8em;
  left: 0.8em;
 }
}

.archive_item .title {
 font-size: 1.25em;
}

.archive_item .excerpt {
 font-size: .875em;
 display: -webkit-box;
 -webkit-box-orient: vertical;
 -webkit-line-clamp: 2;
 /* 制限したい行数が3の場合 */
 overflow: hidden;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 .archive_itemBox {
  grid-gap: 3vw;
  grid-template-columns: repeat(2, 1fr);
 }

 .archive_item {
  font-size: .9em;
 }

 .archive_item:nth-child(1) {
  grid-column: span 2;
 }

 .archive_item .term_item {
  font-size: .6em;
  padding: .1em .5em;
 }

 .term_item {
  font-size: .8em;
 }

 .archive_item .title {
  font-size: 1em;
  margin-bottom: 0 !important;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 .archive_itemBox {
  grid-gap: 3vw;
  grid-template-columns: repeat(6, 1fr);
 }

 .archive_item {
  grid-column: span 2;
 }

 .archive_item:nth-child(1),
 .archive_item:nth-child(2) {
  font-size: 1.8rem;
  grid-column: span 3;
 }

 .archive_item .title {
  transition: .3s ease-in-out;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {

 .archive_item .category,
 .archive_item .area {
  font-size: .7em;
 }

 .archive_item .title {
  font-size: 1.1em;
 }

}

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

@media (hover: hover) {
 .archive_item a:hover .title {
  color: var(--mainColor);
  filter: brightness(.8);
 }
}

/*====================================================
////id |  global_nav
====================================================*/
#global_nav {
 position: sticky;
 z-index: 9000;
}

#global_nav .tab_parent {
 background: var(--w_blue);
 overflow: hidden;
 padding: 0 15px;
}

#global_nav .slick-arrow {
 height: 100%;
}

#global_nav .slick-prev {
 left: min(1vw, .5em);
}

#global_nav .slick-next {
 right: min(1vw, .5em);
}

@media screen and (max-width: 769px) {
 #global_nav .slick-prev {
  left: -5px;
 }

 #global_nav .slick-next {
  right: -5px;
 }
}

#global_nav .tabArea {
 grid-gap: 0;
}

#global_nav .slick-list {
 overflow: visible;
}

#global_nav .nav_item {
 background: transparent;
 border: none;
 display: grid;
 justify-content: unset;
 line-height: 1;
 padding: 0;
 position: relative;
 text-align: center;
}

#global_nav .nav_item::before {
 border-right: solid 1px var(--l_gray);
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: 0;
 left: 0;
 bottom: 0;
 transition: .2s ease-in-out;
 width: 0;
 height: 80%;
}

#global_nav .nav_item.current::before,
#global_nav .nav_item.current+.nav_item::before,
#global_nav .nav_item:first-child::before {
 display: none;
}

#global_nav .tab.current {
 pointer-events: auto;
}

#global_nav .nav_item.current a {
 pointer-events: none;
}

#global_nav .tab_content {
 background: #fff;
 z-index: 100;
}

#global_nav .nav_item .nav-inner {
 display: grid;
 grid-gap: 7px;
 place-content: center;
 padding: 4px;
 position: relative;
 width: 100%;
}

#global_nav .nav_item .bg {
 background: #fff;
 border-radius: 15px 15px 0 0;
 margin: auto;
 opacity: 0;
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 transition: .2s ease-in-out;
 width: 100%;
 height: 100%;
 z-index: -1;
}

#global_nav .nav_item .bg::before,
#global_nav .nav_item .bg::after {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 15 15"><path fill="%23ffffff" d="M0,15h15V0C15,8.28,8.28,15,0,15h0Z" /></svg>') no-repeat center;
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 bottom: 0;
}

#global_nav .nav_item .bg::after {
 transform: scale(-1, 1);
}

#global_nav .nav_item.current .bg {
 opacity: 1;
}

#global_nav .nav_item .icon {
 transition: .2s ease-in-out;
 width: 100%;
}

#global_nav .nav_item .text {
 min-width: 4em;
}

#global_nav .nav_item.small-mob .text {
 letter-spacing: -.05em;
}

#global_nav .tab_content.current {
 border-bottom: solid 1px var(--blue);
 position: relative;
 z-index: 5;
}

#global_nav .child_tab .nav_item {
 flex: 1;
 margin-bottom: -1px;
}

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

 #global_nav .child_tab .nav_item.current .nav-inner::before,
 #global_nav .child_tab .nav_item.current .nav-inner::after {
  background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 15 15"><path fill="%2345B2F1" d="M0,15h15V0C15,8.28,8.28,15,0,15h0Z" /></svg>') no-repeat center;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
  bottom: 1px;
  z-index: -5;
  border-radius: 10px;
 }
}

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

 #global_nav .child_tab .nav_item.current .nav-inner::before,
 #global_nav .child_tab .nav_item.current .nav-inner::after {
  background: url('img/cmn/menu_border.png') no-repeat center;
  background-size: contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
  bottom: 1px;
  z-index: 1;
 }
}

#global_nav .child_tab .nav_item.current .nav-inner::after {
 transform: scale(-1, 1);
}

#global_nav .child_tab .nav_item .bg {
 border: solid 1px var(--blue);
 border-bottom: none;
}

#global_nav .child_tab .nav_item:not(.current) .bg {
 display: none;
}


/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 #global_nav {
  top: -78px;
 }

 #global_nav .tab_parent {
  padding: 0 3px;
 }

 #global_nav .nav_item .nav-inner {
  font-size: 1.3rem;
  grid-gap: 0;
  margin-top: 6px;
  height: 5.5em;
 }

 #global_nav .nav_item .bg {
  border-radius: 4px 4px 0 0;
 }

 #global_nav .nav_item .bg::before,
 #global_nav .nav_item .bg::after {
  width: 5px;
  height: 5px;
 }

 #global_nav .nav_item .bg::before {
  left: -5px;
 }

 #global_nav .nav_item .bg::after {
  right: -5px;
 }

 #global_nav .nav_item .icon {
  height: 2.4em;
 }

 #global_nav .nav_item .text {
  display: grid;
  align-items: center;
  margin-top: .3em;
  line-height: 1.2;
 }

 #global_nav .nav_item.small-mob .text {
  font-size: min(2vw, 1em);
 }

 #global_nav .child_tab {
  padding: 0 3px;
 }

 #global_nav .child_tab .nav_item.current .nav-inner::before,
 #global_nav .child_tab .nav_item.current .nav-inner::after {
  width: 10px;
  height: 10px;
  bottom: 0;
 }

 #global_nav .child_tab .nav_item.current .nav-inner::before {
  left: -9px;
 }

 #global_nav .child_tab .nav_item.current .nav-inner::after {
  right: -9px;
 }

 #global_nav .nav_item .bg::before,
 #global_nav .nav_item .bg::after {
  width: 7px;
  height: 7px;
 }

 #global_nav .nav_item .bg::before {
  left: -6px;
 }

 #global_nav .nav_item .bg::after {
  right: -6px;
 }
}

@media screen and (max-width:500px) {
 #global_nav {
  top: calc((8px + 3.6em) * -1);
 }

 #global_nav .nav_item .nav-inner {
  font-size: 2.4vw;
  letter-spacing: 0;
 }
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 #global_nav {
  top: -110px;
 }

 #global_nav .nav_item .nav-inner {
  height: 100px;
  margin-top: 6px;
 }

 #global_nav .tabArea .nav_item .bg {
  box-shadow: 0 0 6px rgba(0, 0, 0, .1);
 }

 #global_nav .nav_item .bg::before,
 #global_nav .nav_item .bg::after {
  width: 15px;
  height: 15px;
 }

 #global_nav .nav_item .bg::before {
  left: -15px;
 }

 #global_nav .nav_item .bg::after {
  right: -15px;
 }

 #global_nav .nav_item .icon {
  height: 45px;
 }

 #global_nav .nav_item .text {
  font-size: min(1.8vw, 1.8rem);
 }

 #global_nav .child_tab {
  padding: 0 15px;
 }

 #global_nav .child_tab .nav_item.current .nav-inner::before,
 #global_nav .child_tab .nav_item.current .nav-inner::after {
  width: 15px;
  height: 15px;
 }

 #global_nav .child_tab .nav_item.current .nav-inner::before {
  left: -15px;
 }

 #global_nav .child_tab .nav_item.current .nav-inner::after {
  right: -15px;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
 #global_nav {
  top: -90px;
 }

 #global_nav .nav_item .nav-inner {
  height: 80px;
 }

 #global_nav .nav_item .icon {
  height: 40px;
 }
}

@media screen and (min-width:1300px) {
 #global_nav {
  top: -120px;
 }

 #global_nav .nav_item .nav-inner {
  height: 110px;
 }

 #global_nav .nav_item .icon {
  height: 55px;
 }

 #global_nav .nav_item .text {
  font-size: 2.2rem;
 }
}

@media (hover: hover) {
 #global_nav .slick-prev:hover::before {
  transform: translateX(-5px) rotate(-180deg);
 }

 #global_nav .slick-next:hover::before {
  transform: translateX(5px);
 }

 #global_nav .nav_item a:hover {
  filter: brightness(1.1);
 }

 #global_nav .nav_item a:hover .icon {
  transform: scale(1.08);
 }
}

/*====================================================
////id |  ranking
====================================================*/
#ranking .archive_item a::before {
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: .5em;
 right: .5em;
 width: 30%;
 max-width: 6em;
 height: 6em;
 z-index: 5;
}

#ranking .archive_item:nth-child(1) a::before {
 background: url('img/cmn/rank-1.webp') no-repeat top center / contain;
}

#ranking .archive_item:nth-child(2) a::before {
 background: url('img/cmn/rank-2.webp') no-repeat top center / contain;
}

#ranking .archive_item:nth-child(3) a::before {
 background: url('img/cmn/rank-3.webp') no-repeat top center / contain;
}

#ranking .archive_item:nth-child(4) a::before {
 background: url('img/cmn/rank-4.webp') no-repeat top center / contain;
}

#ranking .archive_item:nth-child(5) a::before {
 background: url('img/cmn/rank-5.webp') no-repeat top center / contain;
}

#ranking .archive_item .category {
 width: 70%;
}

/*====================================================
////id | areamap
====================================================*/
.areamap_wrapper {
 margin-left: -3vw;
 width: calc(100% + 6vw);
}

@media screen and (max-width: 769px) {
 .map-top {
  margin-top: -14px;
 }
}

.areamap {
 position: relative;
}

.areamap .area_link {
 display: flex;
 align-items: center;
 justify-content: center;
 margin: auto;
 position: absolute;
}

.areamap .area-nagahama {
 top: 20%;
 left: 60%;
 right: 19%;
}

.areamap .area-maibara {
 top: 40%;
 left: 71%;
 right: 8%;
}

.areamap .area-takashima {
 top: 35%;
 left: 18%;
}

.areamap .area-otsu {
 top: 50%;
 left: 8%;
 right: 70%;
}

.areamap .area-hikone {
 top: 47%;
 right: 29%;
}

.areamap .area-taga {
 top: 50%;
 left: 73%;
}

.areamap .area-koura {
 top: 54.8%;
 left: 73%;
}

.areamap .area-toyosato {
 top: 51.8%;
 left: 44%;
 right: 32%;
}

.areamap .area-aisho {
 top: 62%;
 left: 52%;
 right: 23%;
}

.areamap .area-omihachiman {
 top: 58.5%;
 left: 23%;
 right: 42%;
}

.areamap .area-higashioumi {
 top: 66%;
 left: 65%;
 right: 5%;
}

.areamap .area-yasu {
 top: 65%;
 left: 25%;
 right: 50%;
}

.areamap .area-moriyama {
 top: 66.5%;
 left: 14%;
 right: 70%;
}

.areamap .area-ryuoh {
 top: 69%;
 left: 38%;
 right: 40%;
}

.areamap .area-kusatsu {
 top: 73.5%;
 left: 14%;
 right: 70%;
}

.areamap .area-ritto {
 top: 73.5%;
 left: 30%;
 right: 53%;
}

.areamap .area-konan {
 top: 77.5%;
 left: 38.5%;
 right: 40%;
}

.areamap .area-hino {
 top: 73%;
 left: 58%;
 right: 18%;
}

.areamap .area-koka {
 top: 81.7%;
 left: 48%;
 right: 28%;
}

.areamap .area-outside {
 bottom: 1%;
 left: 75%;
}

.areamap .area_link {
 font-size: min(2.4vw, 18px);
}

.areamap .area_link a .btn {
 background: #fff;
 border: solid 2px var(--s_blue);
 border-radius: 2em;
 color: var(--black);
 display: flex;
 align-items: center;
 grid-gap: .3em;
 justify-content: space-evenly;
 font-weight: 700;
 overflow: hidden;
 letter-spacing: 0;
 line-height: 1.2;
 padding: .2em .3em .15em .5em;
 position: relative;
 transition: .2s ease-in-out;
 z-index: 10;
}

.areamap .area_link a .btn::after {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 50 50"><path fill="%2300c0ff" d="M25,0C11.19,0,0,11.19,0,25s11.19,25,25,25,25-11.19,25-25S38.81,0,25,0ZM33.04,26.33l-11.57,11.57c-.37.37-.85.55-1.33.55s-.96-.18-1.33-.55c-.73-.73-.73-1.92,0-2.66l10.24-10.24-10.24-10.24c-.73-.73-.73-1.92,0-2.66.73-.73,1.92-.73,2.66,0l11.57,11.57c.73.73.73,1.92,0,2.66Z" /></svg>') no-repeat center / contain;
 content: '';
 display: block;
 width: 1em;
 height: 1em;
}

.areamap .area-outside a .btn {
 border: solid 2px #f8705d;
 min-width: 5em;
}

.areamap .area-outside a .btn::after {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 50 50"><path fill="%23f8705d" d="M25,0C11.19,0,0,11.19,0,25s11.19,25,25,25,25-11.19,25-25S38.81,0,25,0ZM33.04,26.33l-11.57,11.57c-.37.37-.85.55-1.33.55s-.96-.18-1.33-.55c-.73-.73-.73-1.92,0-2.66l10.24-10.24-10.24-10.24c-.73-.73-.73-1.92,0-2.66.73-.73,1.92-.73,2.66,0l11.57,11.57c.73.73.73,1.92,0,2.66Z" /></svg>') no-repeat center / contain;
}

.areamap .area_link a .point {
 background: var(--s_blue);
 display: none;
 margin: auto;
 position: absolute;
 top: 0;
 bottom: 0;
 left: 99%;
 transform-origin: left center;
 height: min(.5vw, 2px);
}

.areamap .area_link a .point::after {
 background: var(--s_blue);
 border-radius: 100%;
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: -.3em;
 right: -.3em;
 bottom: -.3em;
 width: .6em;
 height: .6em;
}

.areamap .area-toyosato a .point {
 display: block;
 transform: rotate(50deg);
 width: 1.4em;
}

.areamap .area-koura a .point {
 display: block;
 left: auto;
 right: 99%;
 transform: rotate(35deg);
 transform-origin: right;
 width: 1.4em;
}

.areamap .area-aisho a .point {
 display: block;
 top: auto;
 left: 45%;
 bottom: 99%;
 transform: rotate(-75deg);
 width: 1.2em;
}

.areamap .area-moriyama a .point,
.areamap .area-kusatsu a .point {
 display: block;
 transform: rotate(35deg);
 width: .8em;
}

.areamap .area-koura a .point::after {
 left: -.3em;
 right: auto;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {
 .areamap .area_link a:hover {
  opacity: 1;
 }

 .areamap .area_link a:hover .btn {
  background: #e6f6ff;
  transform: scale(1.1);
 }

 .areamap .area-outside a:hover .btn {
  background: #ffe5e1;
 }

}

/*====================================================
////id |  xo-event
====================================================*/
.xo-event-calendar table.xo-month .month-header {
 align-items: end;
}

.xo-event-calendar table.xo-month button {
 background: #fff;
 border-radius: 100%;
 position: relative;
 width: 30px;
 height: 30px;
}

.xo-event-calendar table.xo-month button.month-prev {
 transform: rotate(180deg);
}

.xo-event-calendar table.xo-month button::before {
 background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40"><path fill="%23000000" d="M20,0C8.95,0,0,8.95,0,20s8.95,20,20,20,20-8.95,20-20S31.05,0,20,0ZM26.79,21.2l-9.96,6.08c-.8.49-1.82-.09-1.82-1.02v-12.52c0-.93,1.02-1.51,1.82-1.02l9.96,6.06c.91.55.91,1.86,0,2.42Z" /></svg>') no-repeat center / contain;
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 width: calc(100% - 4px);
 height: calc(100% - 4px);
}

.xo-event-calendar table.xo-month button>span {
 display: none !important;
}

.xo-event-calendar table.xo-month .calendar-caption {
 font-weight: bold;
 font-size: 2.5em;
 line-height: 1.2;
}

.xo-event-calendar table.xo-month .month-dayname td div {
 text-align: center;
}

.xo-event-calendar table.xo-month .month-dayname-space {
 height: 1.8em;
}

.xo-event-calendar table a {
 display: contents;
}

.xo-event-calendar .holiday-titles {
 display: flex;
 flex-wrap: wrap;
 grid-gap: 1em;
}

.event-count {
 display: flex;
 align-items: center;
 left: 50%;
 transform: translateX(-50%);
 width: 35px;
 height: 35px;
 border-radius: 50%;
 justify-content: center;
 pointer-events: all;
 position: relative;
 z-index: 2;
 color: var(--blue);
 /* background: var(--blue); */
 font-weight: bold;
 margin-top: 2.5px;
 font-size: 2rem;
}

@media screen and (min-width:501px) {
 .event-count {
  margin-top: 15px;
  width: 60px;
  height: 60px;
  font-size: 2rem;
 }
}

.month-dayname-space {
 height: 120px !important;
}

@media screen and (max-width:500px) {
 .month-dayname-space {
  height: 60px !important;
 }
}

.month-event {
 display: none;
}

.month-event-space {
 display: none;
}

#single .xo-event-meta-details {
 display: none;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 .xo-event-calendar table.xo-month .month-dayname td div {
  font-size: 1.6rem;
 }

 .xo-event-calendar table.xo-month .month-event-title {
  font-size: 1.5rem;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {}

/*====================================================
////id | cmn_banner
====================================================*/
#cmn_banner .itemBox {
 grid-gap: min(2vw, 40px);
 margin-bottom: 1.5em;
}

#cmn_banner .item {
 flex: 1;
 max-width: 50%;
}

#cmn_banner img {
 aspect-ratio: 16 / 9;
}

/* #cmn_banner .slick-dots {
	margin: 15px auto 0;
	width: 90%;
}
#cmn_banner .slick-dots li {
	flex: 1;
}
#cmn_banner .slick-dots li button {
	width: 100%;
	height: 10px;
}
#cmn_banner .slick-dots li button::before {
	border-radius: 0;
	width: 100%;
	height: 4px;
}
#cmn_banner .slick-dots li:first-child button::before {
	border-radius: 10px 0 0 10px;
}
#cmn_banner .slick-dots li:last-child button::before {
	border-radius: 0 10px 10px 0;
} */
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 #cmn_banner .innerBox {
  padding: min(2vw, 20px) 0;
 }

 /* #cmn_banner .item {
	padding: 0 1.5vw;
	} */
}

@media screen and (max-width:560px) {
 /* #cmn_banner .item {
	padding: 0 5vw;
	} */
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 #cmn_banner .innerBox {
  padding: 30px 0;
 }

 /* #cmn_banner .item {
	padding: 0 1vw;
	} */

}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:1080px) {}

@media screen and (min-width:1300px) {
 /* #cmn_banner .item {
	padding: 0px 10px;
	} */
}

@media (hover: hover) {
 #cmn_banner .item a:hover {
  transform: scale(1.03);
 }
}

/*====================================================
//id |  form
====================================================*/
input,
button,
select {
 margin: 0;
 padding: 0;
 background: none;
 background-image: none;
 background-position-x: initial;
 background-position-y: initial;
 background-size: initial;
 background-attachment: initial;
 background-origin: initial;
 background-clip: initial;
 background-color: initial;
 border: none;
 border-radius: 0;
 outline: none;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 color: inherit;
 cursor: pointer;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="password"],
input[type="url"],
input[type="number"],
input[type="date"],
select,
textarea {
 -webkit-appearance: none;
 background: #fff;
 border: solid 1px var(--gray);
 border-radius: 2px;
 color: var(--black);
 display: block;
 font-family: var(--font_family);
 line-height: 1.4;
 padding: .7em 1em;
 width: 100%;
 min-height: 3em;
 flex: 1;
 transition: .2s ease-in-out;
}

textarea {
 resize: vertical;
 line-height: 1.6;
 min-height: 80px;
 width: 100%;
}

::-moz-placeholder {
 color: var(--gray);
 font-size: .8em;
}

:-ms-input-placeholder {
 color: var(--gray);
 font-size: .8em;
}

::placeholder {
 color: var(--gray);
 font-size: .8em;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus {}

input[type="file"],
label {
 cursor: pointer;
}

form label {
 line-height: 1.4;
 display: inline-block;
 position: relative;
}

label,
input[type="checkbox"]+span,
input[type="checkbox"]+label {
 position: relative;
 padding-left: 1.5em;
 display: inline-block;
}

label::before,
input[type="checkbox"]+span:before,
input[type="checkbox"]+label:before {
 position: absolute;
 content: '';
 width: 1em;
 height: 1em;
 border: solid 1px;
 border-radius: 3px;
 border-color: var(--d_gray);
 top: .2em;
 left: 0px;
 background: #fff;
 transition: .2s ease-in-out;
}

input[type="checkbox"]+label:before {
 top: -.15em;
}

label::after,
input[type="checkbox"]+span:after,
input[type="checkbox"]+label:after {
 position: absolute;
 content: '';
 width: .7em;
 height: .35em;
 border: solid;
 border-width: 0 0 3px 3px;
 border-color: transparent transparent var(--red) var(--red);
 transform: rotate(-45deg);
 top: .2em;
 left: 3px;
 opacity: 0;
 transition: .2s ease-in-out;
}

input[type="checkbox"]+label:after {
 top: -2px;
}

label:has(input[type="checkbox"]:checked)::after,
input[type="checkbox"]:checked+span:after,
input[type="checkbox"]:checked+label:after {
 opacity: 1;
}

input[type="radio"]+span,
input[type="radio"]+label {
 position: relative;
 padding-left: 1.5em;
}

input[type="radio"]+span:before,
input[type="radio"]+label:before {
 position: absolute;
 content: '';
 width: 1em;
 height: 1em;
 border: solid 1px;
 border-radius: 100%;
 border-color: var(--d_gray);
 top: .2em;
 left: 0px;
 background: #fff;
 transition: .2s ease-in-out;
}

input[type="radio"]+span:after,
input[type="radio"]+label:after {
 position: absolute;
 content: '';
 width: .6em;
 height: .6em;
 top: .44em;
 left: .25em;
 border-radius: 100%;
 opacity: 0;
 transition: .2s ease-in-out;
}

input[type="radio"]:checked+span:after,
input[type="radio"]:checked+label:after {
 opacity: 1;
 background: var(--red);
}

.select {
 position: relative;
}

.select:before {
 background: var(--black);
 clip-path: polygon(0 0, 100% 0, 50% 100%);
 content: '';
 display: block;
 margin: auto;
 pointer-events: none;
 position: absolute;
 top: 50%;
 right: 1em;
 width: .8em;
 height: .5em;
 transform: translateY(-50%);
 z-index: 100;
}

#confirm .select:before {
 display: none;
}

select {
 cursor: pointer;
}

.tel input[type="text"] {
 width: calc(100% / 3 - 10px);
 max-width: 100px;
}

button {
 transition: .2s ease-in-out;
}

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

 input[type="text"],
 input[type="email"],
 input[type="tel"],
 input[type="search"],
 input[type="password"],
 input[type="url"],
 input[type="number"],
 select,
 textarea,
 .vkfs input[type="text"],
 .vkfs input[type="search"] {
  padding: .7em .7em;
 }
}

/*====================================================
////class コンタクトフォーム7
====================================================*/
.wpcf7-form .wpcf7-checkbox,
.wpcf7-form .wpcf7-radio {
 display: flex;
 flex-wrap: wrap;
 grid-gap: .3em 1.2em;
}

.wpcf7-form .wpcf7-list-item {
 margin-left: 0;
}

.wpcf7-not-valid-tip {
 bottom: -7px;
 background: var(--red);
 color: #fff;
 display: inline-block;
 font-size: 1.2rem;
 font-weight: bold;
 margin: 5px 0 10px;
 padding: 1px .8em 1px .8em;
 position: relative;
 text-align: center;
 /* width: 12em; */
 white-space: nowrap;
}

.wpcf7-not-valid-tip:before {
 border: solid transparent;
 border-width: 0 5px 12px 5px;
 border-bottom-color: var(--red);
 content: '';
 margin: auto;
 position: absolute;
 top: -10px;
 left: 20px;
 width: 0;
 height: 0;
}

.wpcf7-spinner {
 display: none;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
 background: var(--red);
 border-color: var(--red);
 border-radius: 5px;
 color: #fff;
 margin: 1.5em auto 0;
 max-width: 720px;
 padding: .5em 1em;
}

/*====================================================
////class .formBox
====================================================*/

.formBox {
 /* background: #fff; */
 margin: auto;
}

.formBox .whiteBox {
 background: transparent;
}

.formBox .formItem-outer {
 grid-gap: 3em;
}

.formBox .formItem {
 grid-gap: .5em 1em;
 width: 100%;
}

.formBox .formItem dt {}

.formBox .required {
 background: var(--subColor);
 border-radius: 1em;
 display: inline-block;
 font-size: .8em;
 font-weight: 400;
 line-height: 1;
 margin-left: 1em;
 padding: .25em 1em .3em;
}

.formBox .formItem .mwform-tel-field {
 display: flex;
 margin-left: -3px;
 align-items: center;
}

.formBox .formItem .mwform-tel-field input {
 margin: 0 3px;
}

.formBox .formItem input[type="number"] {
 width: 100px;
}

.formBox .backBtn {
 position: relative;
}

.formBox .backBtn .linkBtn-small {
 padding: 0;
}

.formBox .backBtn .linkBtn-small:after {
 transform: rotate(-135deg);
 right: auto;
 left: 25px;
}

.formBox .backBtn .linkBtn-small:hover:after {
 left: 15px !important;
}

.formBox .backBtn input[type="submit"] {
 background: transparent;
 color: inherit;
 display: inline-block;
 font-size: 1.4rem;
 margin: 0 !important;
 min-width: 140px;
 /*	padding: .2em 20px .1em 40px;*/
 transition: .2s ease-in-out;
}

.formBox .linkBtn:hover input {}

.formBox .formItem dt {

 font-weight: 500;
}

.formBox dd {
 position: relative;
 text-align: left;
}

.formBox .h_radioBox {
 display: grid;
 grid-gap: 0 2em;
 grid-template-columns: auto 1fr;
}

.mw_wp_form .formBox .horizontal-item+.horizontal-item {
 margin-left: 0;
 display: block;
 /* margin: 5px 0; */
}

.formBox .consentBox {
 margin: 2.5em auto 0;
 /*    font-size: 1.3rem;*/
}

.formBox .consentBox .checkBox {
 width: 1.5em;
}

.formBox .consentBox div {
 position: relative;
}

.formBox .consentBox .mwform-checkbox-field {
 display: block;
}

/*
.formBox .backBtn {
margin-top: -10px;
}
*/
.formBox .linkBox.flexBox {
 grid-gap: .8em;
}

.formBox .linkBox .back .linkBtn {
 background: transparent;
}

.formBox .btn-outer {
 border-radius: 3em;
 display: inline-block;
 /* overflow: hidden; */
 position: relative;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 .formBox .formItem-outer {
  grid-gap: 2em;
 }

 .formBox .formItem dt {
  font-size: 1.2em;
  text-align: left;
  position: relative;
 }

 .formBox .formItem dd {
  text-align: left;
  width: 100%;
 }

 .mw_wp_form .formBox .error {
  /*		bottom: -2em;*/
  left: 0;
  padding-left: 1em;
 }

 .formBox .consentBox {
  align-items: stretch;
  /* flex-direction: column; */
 }

 .formBox .linkBox {
  margin: auto;
  max-width: calc(480px + 1em);
 }

 .formBox .linkBox.flexBox>div {
  flex: 1;
 }

 .formBox .linkBox.flexBox input[type="submit"],
 .formBox .linkBox.flexBox .linkBtn {
  max-width: 240px;
  min-width: 0;
  width: 100%;
 }
}

@media screen and (min-width:480px) and (max-width:769px) {}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 .formBox .formItem {
  font-size: 1.6rem;
 }

 .formBox dl.formItem {
  align-items: flex-start;
 }

 .formBox .formItem dt {
  display: flex;
  align-items: center;
  font-size: 1.1em;
  line-height: 1.4;
  min-height: 50px;
  width: 11em;
 }

 .formBox .formItem dt p {}

 #confirm .formBox .formItem dt {
  padding-top: 0;
 }

 .mw_wp_form_confirm .formBox dd {
  position: relative;
 }

 .formBox .formItem dd .wpcf7-radio {
  padding: .7em 0;
 }

 .mw_wp_form_confirm .formBox .formItem dt,
 .mw_wp_form_confirm .formBox .formItem dd {
  padding: 20px 0;
 }

 .formBox dd .dateBox {
  width: calc(50% - 5px);
 }

 .formBox .error {}

 .formBox .btn-outer:hover:before {
  left: 0;
 }

 .formBox input[type="submit"],
 .formBox .linkBtn {}

 .formBox .linkBox .back .linkBtn:hover {}

 .formBox .btn-outer:hover {
  filter: brightness(1.1);
 }

 .formBox .btn-outer:hover::before {
  left: 0;
 }

 .formBox input[type="submit"] {}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

/*====================================================
////class .wp-block-table
====================================================*/
.bodyText p+.wp-block-table,
.bodyText .wp-block-table+.wp-block-table {
 margin: 1.5em 0;
}

#info table,
#info .bodyText .wp-block-table table {
 border-collapse: collapse;
 border-spacing: 0;
 font-size: .875em;
 line-height: 1.6;
 vertical-align: middle;
 width: 100%;
}

#info table thead,
#info .wp-block-table thead {
 border: none;
 /* border-bottom-width: 2px; */
}

#info table thead th,
#info table tr td,
#info .wp-block-table thead th,
#info .wp-block-table tr td {
 padding: 1em 1.3em;
}

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

 #info table thead th,
 #info table tr td,
 #info .wp-block-table thead th,
 #info .wp-block-table tr td {
  padding: 16px 9px;
 }
}

#info table th,
#info .wp-block-table th {
 background: var(--blue);
 color: #fff;
 margin-bottom: 2px;
}

#info table thead th:not(th:last-child),
#info .wp-block-table thead th:not(th:last-child) {
 border-right: solid 1px var(--l_gray);
}

table tbody tr td {
 background-color: var(--l_blue2);
 border: solid var(--l_gray);
 border-width: 0 0 1px;
}

/* #info table tbody td:not(td:last-child),
#info .wp-block-table tbody td:not(td:last-child) {
 border-right: solid 1px var(--l_gray);
} */

#info table tbody tr:last-child,
#info .wp-block-table tbody tr:last-child {
 border-bottom: solid 1px var(--l_blue2);
}

#info table tr td a,
#info .wp-block-table tr td a {
 color: var(--d_blue);
 -webkit-text-decoration: underline dotted 1px;
 text-decoration: underline dotted 1px;
 text-underline-position: under;
 text-underline-offset: 0.2em;
}

#info table tr td .tel_link a,
#info .wp-block-table tr td .tel_link a {
 color: inherit;
}

#info table tfoot,
#info .wp-block-table tfoot {
 border: none;
}

#info table tfoot td,
#info .wp-block-table tfoot td {
 background: var(--blue);
 border: solid var(--l_gray);
 border-width: 1px 0;
 color: #fff;
 text-align: center;
}

#info table tfoot td:not(td:last-child),
#info .wp-block-table tfoot td:not(td:last-child) {
 border-right: solid 1px var(--l_gray);
}

#info table figcaption,
#info .wp-block-table figcaption {
 font-size: .8em;
 margin: .5em 0 0 1em;
}

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

 #info table thead th,
 #info table tr td,
 #info .wp-block-table thead th,
 #info .wp-block-table tr td {
  padding: .7em .7em;
 }

}

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

 #info table.responsive,
 #info .wp-block-table.responsive table,
 #info table.responsive tbody,
 #info .wp-block-table.responsive table tbody,
 #info table.responsive tr,
 #info .wp-block-table.responsive table tr,
 #info table.responsive td,
 #info .wp-block-table.responsive table td {
  display: block;
 }

 #info table.responsive,
 #info .wp-block-table.responsive table {
  border: none;
 }

 #info table.responsive thead,
 #info .wp-block-table.responsive thead {
  display: none;
 }

 #info table.responsive tbody,
 #info .wp-block-table.responsive tbody {
  display: block;
 }

 #info table.responsive tr,
 #info .wp-block-table.responsive tr {
  background: #fff;
  margin-bottom: 15px;
  position: relative;
  width: 100%;
 }

 #info table.responsive th,
 #info .wp-block-table.responsive td:first-child {
  border: none;
  font-weight: bold;
  padding: 10px 15px;
  width: 100%;
 }

 #info table.responsive td,
 #info .wp-block-table.responsive td {
  border: none !important;
  padding: 10px 15px;
  text-align: left;
  transition: .4s ease;
  width: 100%;
 }

 #info table.responsive td.price,
 #info .wp-block-table.responsive td.price {
  text-align: right;
 }

 #info table.responsive td:before {
  color: var(--black);
  content: attr(data-label);
  font-weight: normal;
  padding-top: .25em;
  position: absolute;
  left: 18px;
 }
}

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

@media print,
screen and (min-width: 769px) {
 #info table.responsive td.blank .blank_line {
  background: #fff;
  display: block;
  margin: -8px auto -8px -12px;
  position: relative;
  width: 3px;
  height: calc(100% + 16px);
  z-index: 1;
 }

}

/*
table,
.bodyText .wp-block-table table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: .875em;
  line-height: 1.6;
  vertical-align: middle;
  width: 100%;
}

table thead,
.wp-block-table thead {
  border: none;
}

table thead th,
table tr td,
.wp-block-table thead th,
.wp-block-table tr td {
  padding: 1em 1.3em;
}

table th,
.wp-block-table th {
  background: var(--blue);
  color: #fff;
  margin-bottom: 2px
}

table thead th:not(th:last-child),
.wp-block-table thead th:not(th:last-child) {
  border-right: solid 1px var(--l_gray);
}

table tbody tr td {
  background-color: var(--l_blue2);
  border: solid var(--l_gray);
  border-width: 0 0 1px;
}

table tbody td:not(td:last-child),
.wp-block-table tbody td:not(td:last-child) {
  border-right: solid 1px var(--l_gray);
}

table tbody tr:last-child,
.wp-block-table tbody tr:last-child {
  border-bottom: solid 1px var(--l_blue2);
}

table tr td a,
.wp-block-table tr td a {
  color: var(--d_blue);
  -webkit-text-decoration: underline dotted 1px;
  text-decoration: underline dotted 1px;
  text-underline-position: under;
  text-underline-offset: 0.2em;
}

table tr td .tel_link a,
.wp-block-table tr td .tel_link a {
  color: inherit;
}

table tfoot,
.wp-block-table tfoot {
  border: none;
}

table tfoot td,
.wp-block-table tfoot td {
  background: var(--blue);
  border: solid var(--l_gray);
  border-width: 1px 0;
  color: #fff;
  text-align: center;
}

table tfoot td:not(td:last-child),
.wp-block-table tfoot td:not(td:last-child) {
  border-right: solid 1px var(--l_gray);
}

table figcaption,
.wp-block-table figcaption {
  font-size: .8em;
  margin: .5em 0 0 1em;
}

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

  table thead th,
  table tr td,
  .wp-block-table thead th,
  .wp-block-table tr td {
    padding: .7em .7em;
  }

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

  table.responsive,
  .wp-block-table.responsive table,
  table.responsive tbody,
  .wp-block-table.responsive table tbody,
  table.responsive tr,
  .wp-block-table.responsive table tr,
  table.responsive td,
  .wp-block-table.responsive table td {
    display: block;
  }

  table.responsive,
  .wp-block-table.responsive table {
    border: none;
  }

  table.responsive thead,
  .wp-block-table.responsive thead {
    display: none;
  }

  table.responsive tbody,
  .wp-block-table.responsive tbody {
    display: block;
  }

  table.responsive tr,
  .wp-block-table.responsive tr {
    background: #fff;
    margin-bottom: 15px;
    position: relative;
    width: 100%;
  }

  table.responsive th,
  .wp-block-table.responsive td:first-child {
    border: none;
    font-weight: bold;
    padding: 10px 15px;
    width: 100%;
  }

  table.responsive td,
  .wp-block-table.responsive td {
    border: none !important;
    padding: 10px 15px;
    text-align: left;
    transition: .4s ease;
    width: 100%;
  }

  table.responsive td.price,
  .wp-block-table.responsive td.price {
    text-align: right;
  }

  table.responsive td:before {
    color: var(--black);
    content: attr(data-label);
    font-weight: normal;
    padding-top: .25em;
    position: absolute;
    left: 18px;
  }
}

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

@media print,
screen and (min-width: 769px) {
  table.responsive td.blank .blank_line {
    background: #fff;
    display: block;
    margin: -8px auto -8px -12px;
    position: relative;
    width: 3px;
    height: calc(100% + 16px);
    z-index: 1;
  }

} */

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

/*====================================================
////id |  mapBox
====================================================*/
.mapBox .box-inner {
 overflow: hidden;
 position: relative;
}

.mapBox iframe {
 margin: auto;
 /* position: absolute; */
 /* top: -200px; */
 width: 100%;
 height: 100vh;
 max-height: 560px;
}

.mapBox .box-inner {
 width: 100%;
 height: 100vh;
 max-height: 560px;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (max-width: 769px) {
 .mapBox iframe {
  max-height: 80vh;
 }

 .mapBox .box-inner {
  width: 100%;
  max-height: 80vh;
 }
}


/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

/*====================================================
////id |  faq
====================================================*/
.itemBox.faq_layout {
 grid-gap: 1em;
 position: relative;
 z-index: 5;
}

.faq_layout .item dt {
 border-bottom: solid 1px var(--gray);
 grid-gap: 1.2em;
 padding: 1em 3em 1em 0;
 position: relative;
 transition: .2s ease-in-out;
}

.faq_layout .item dt::before,
.faq_layout .item dt::after {
 border-top: solid 2px var(--black);
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 top: 0;
 right: 1em;
 bottom: 0;
 transition: .2s ease-in-out;
 width: 1.1em;
 height: 0;
}

.faq_layout .item dt::after {
 transform: rotate(-90deg);
}

.faq_layout .item .open dt::before {
 transform: rotate(180deg);
}

.faq_layout .item .open dt::after {
 opacity: 0;
 transform: rotate(180deg);
}

.faq_layout .item dt .alphabet,
.faq_layout .item .accordion-inner .alphabet {
 font-size: 1.25em;
 margin-top: .2em;
}

.faq_layout .item .accordion-inner {
 grid-gap: 1.2em;
 padding: 1.2em 3em 2em 0;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 .itemBox.faq_layout {
  grid-gap: .5em;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {
 .faq_layout .item dt:hover {
  color: var(--blue);
 }
}

/*====================================================
////id |  cmn_cta
====================================================*/
#cmn_cta {
 background: #DDEFFB;
}

#cmn_cta .linkBox {
 grid-gap: 10px 22px;
}

#cmn_cta .linkBtn {
 width: 100%;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 #cmn_cta .innerBox {
  padding: 20px 0;
 }

 #cmn_cta .txtBox {
  font-size: 1.6rem;
 }

 #cmn_cta .linkBox {
  align-items: stretch;
  max-width: 240px;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 #cmn_cta .txtBox {
  font-size: min(2.8vw, 2.4rem);
 }

 #cmn_cta .linkBox .btn_wrap {
  flex: 1;
 }

 #cmn_cta .linkBtn {
  font-size: 2.2rem;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {}

/*====================================================
////id |  cmn_contact
====================================================*/
#cmn_contact {
 background-size: cover;
 background-position: center;
 background-repeat: no-repeat;
}

#cmn_contact .item {
 border-radius: 100%;
 place-content: center;
 place-items: center;
 width: 440px;
 height: 440px;
}

#cmn_contact .item .text {
 margin-top: 1em;
}

#cmn_contact .item .bgBox {
 border-radius: 100%;
 opacity: .87;
 transition: .3s ease-in-out;
}

#cmn_contact .item .arrow {
 margin-top: .5em;
 width: 22px;
}

#cmn_contact .item .arrow:before {
 filter: brightness(0) invert(10);
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 #cmn_contact>.bgBox {
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
 }

 #cmn_contact .itemBox {
  grid-gap: 1.5em;
 }

 #cmn_contact .item {
  font-size: 1.7rem;
  grid-gap: 1em;
  width: 75vw;
  max-width: 380px;
  height: 75vw;
  max-height: 380px;
 }

 #cmn_contact .item .text {}

 #cmn_contact .item img {
  height: 3.5em;
 }

 #cmn_contact .item .link_title {
  font-size: 1.2em;
 }
}

@media screen and (max-width:500px) {
 #cmn_contact .item {
  font-size: 1em;
 }
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 #cmn_contact .itemBox {
  grid-gap: 3vw;
 }

 #cmn_contact .item {
  grid-gap: 1em;
  width: 380px;
  height: 380px;
 }

 #cmn_contact .item .text {}

 #cmn_contact .item img {
  height: 3.5em;
 }

 #cmn_contact .item .link_title {
  font-size: 2.4rem;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
 #cmn_contact .item {
  grid-gap: 1em;
  width: 45vw;
  height: 45vw;
 }

 #cmn_contact .item .link_title {
  font-size: 2.2rem;
 }
}

@media screen and (min-width:1300px) {
 #cmn_contact .itemBox {
  grid-gap: 72px;
 }

 #cmn_contact .item {
  font-size: 1.7rem;
  grid-gap: 1.5em;
  width: 440px;
  height: 440px;
 }

 #cmn_contact .item img {
  height: 4em;
 }
}

@media (hover: hover) {
 #cmn_contact .item:hover {
  opacity: 1;
 }

 #cmn_contact .item:hover .bgBox {
  opacity: 1;
  top: -10px;
  left: -10px;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
 }
}

/*====================================================
////id |  fixedBtn
====================================================*/
#fixedBtn {
 margin: auto;
 position: fixed;
 left: 0;
 right: 0;
 bottom: 0;
 transition: .6s ease-in-out;
 width: 100%;
 z-index: 1000;
}

#fixedBtn.hide {
 bottom: -100px;
}

#fixedBtn.hide {
 bottom: -70px;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 960px) {
 #fixedBtn .cmn_contactBtn {
  font-size: 2.0rem;
  grid-gap: 0;
 }

 #fixedBtn .cmn_contactBtn .item {
  flex: 1;
  height: 60px;
 }

 #fixedBtn .cmn_contactBtn .item img {
  height: 1.6em;
 }

 #fixedBtn .cmn_contactBtn .item .sub_txt {
  display: none;
 }
}

@media screen and (max-width:600px) {
 #fixedBtn .cmn_contactBtn {
  font-size: .95em;
 }
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 960px) {
 #fixedBtn {
  bottom: 10px;
 }

 #fixedBtn .cmn_contactBtn {
  font-size: 2.0rem;
  grid-gap: 1em;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
 /* #fixedBtn {
		bottom: 0;
		width: 100%;
	}
	#fixedBtn a {
		flex: 1;
	} */
}

@media screen and (min-width:1180px) {
 #fixedBtn {
  display: none;
 }
}

/*====================================================
////id |  sns_share
====================================================*/
#sns_share .itemBox {
 grid-gap: min(5vw, 40px);
}

@media screen and (max-width: 769px) {
 #sns_share .itemBox {
  grid-gap: 25px
 }

}


#sns_share .item {
 width: min(10vw, 70px);
}

@media screen and (max-width: 769px) {
 #sns_share .item {
  width: 28px;
 }

}

@media screen and (min-width: 770px) {
 #sns_share .url_copy {
  height: min(10vw, 70px);
 }
}

@media screen and (max-width: 769px) {
 #sns_share .url_copy {
  width: 31px;
 }

}

.success-msg {
 background-color: var(--l_blue);
 border-radius: 5px;
 box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
 /* color: #fff; */
 display: none;
 font-weight: 700;
 line-height: 40px;
 margin: auto;
 position: fixed;
 top: 30vh;
 left: 0;
 right: 0;
 text-align: center;
 width: 18em;
 height: 40px;
 z-index: 8888;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {

 #sns_share .item a:hover,
 #sns_share .item button:hover {
  filter: brightness(1.05);
  opacity: 1;
  transform: scale(1.1);
 }
}

/*====================================================
////id |  profile
====================================================*/
#profile .imgBox {
 margin: 0 auto 1em;
 position: relative;
 width: min(33vw, 200px);
}

#profile .imgBox .coverImg {
 border-radius: 100%;
 padding-top: 100%;
}

#profile .imgBox .sns_link {
 margin: auto;
 position: absolute;
 left: 95%;
 bottom: 0;
 width: min(10vw, 70px);
 height: min(10vw, 70px);
}

#profile .wrapBox {
 grid-gap: 1em min(5vw, 60px);
}

#profile .name,
#profile .account {
 font-size: 1.6em;
 line-height: 1.4;
}

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

 #profile .name,
 #profile .account {
  font-size: 1.6rem;
  line-height: 1.4;
 }
}

#profile .instagramBox {
 grid-template-columns: repeat(3, 1fr);
 grid-gap: 5px;
}

#profile .instagramBox .item-inner {
 overflow: hidden;
 padding-top: 100%;
 position: relative;
}

#profile .instagramBox .item-inner .iframe {
 position: absolute;
 top: -5%;
 left: -5%;
 width: 110%;
 height: 110%;
}

#profile .instagramBox .item-inner .iframe iframe {
 min-width: 0 !important;
 transform: translateY(calc((54px + 2vw) * -1));
}

#profile .instagramBox .item-inner a {
 display: block;
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 960px) {
 #profile .instagramBox {
  margin: auto;
  width: 100%;
  max-width: 700px;
 }

 #profile .instagramBox .item-inner .iframe iframe {
  transform: translateY(-85px);
 }
}

@media screen and (max-width: 780px) {
 #profile .instagramBox .item-inner .iframe iframe {
  transform: translateY(calc((54px + 4vw) * -1));
 }
}

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

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 960px) {
 #profile .wrapBox {
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

@media screen and (min-width:1300px) {
 #profile .instagramBox .item-inner .iframe iframe {
  transform: translateY(-80px);
 }
}

@media (hover: hover) {}

/*====================================================
////id |  information
====================================================*/
/* #information:after {
  content: '';
  display: block;
  width: 100%;
  height: min(30vw, 250px);
} */

#information .itemBox {
 grid-gap: min(5vw, 26px) min(4vw, 36px);
 grid-template-columns: 1fr 1fr;
 margin: auto;
 max-width: 960px;
}

#information a {
 line-height: 1.3;
 position: relative;
 z-index: 10;
}

#information a .bgBox {
 filter: brightness(.9);
 top: 100%;
 left: 0;
 width: 100%;
 height: 8px;
 z-index: -1;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
 #information .itemBox {
  margin: auto;
  width: 95%;
  max-width: 500px;
 }

 #information a {
  flex-direction: column;
  grid-gap: .3em;
  min-height: 8em;
  padding: .7em;
  text-align: center;
 }

 #information a .icon {
  width: 3.3em;
  height: 3em;
 }

 #information a .text {
  min-height: 2.5em;
 }

 #information a .arrow {
  display: none;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 #information a {
  font-size: min(2.5vw, 2.6rem);
  grid-gap: .5em;
  min-height: 4.8em;
  padding: .5em 1em;
 }

 #information a .icon {
  width: 2.5em;
  height: 2.3em;
 }

 #information a .text {
  flex: 1;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {
 #information a:hover {
  filter: brightness(1.05);
 }
}

/*====================================================
////class .pagetop
====================================================*/
.pagetop-sp {
 position: absolute;
 left: 0;
 width: 100%;
 top: -40px;
 z-index: 99;
}

.pagetop {
 display: none;
 position: fixed;
 bottom: 15px;
 right: 15px;
 transform: none !important;
 width: 100px;
 height: 120px;
 z-index: 1000;
 /*	border: solid 1px*/
}

.pagetop.stop {
 position: absolute;
 top: 0;
 bottom: auto;
}

.pagetop a {
 border-radius: 100%;
 display: flex;
 align-items: center;
 justify-content: center;
 padding-top: 3%;
 position: relative;
 width: 100%;
 height: 100%;
}

/* ////////// mobile ////////// */
@media screen and (min-width: 770px) {
 .pagetop svg {
  width: 100px;
  height: 120px;
 }
}

@media screen and (max-width: 769px) {
 .pagetop {
  width: 70px;
  height: 80px;
 }
}

@media screen and (min-width:480px) and (max-width:769px) {}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
 .pagetop {
  bottom: 80px;
 }
}

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

@media (hover: hover) {
 .pagetop a:hover {
  opacity: 1;
  transform: scale(1.05);
 }
}


/*====================================================
////id |  footer
====================================================*/
footer {
 /* margin-top: min(22vw, 140px); */
 position: relative;
 z-index: 1000;
}

footer .bg_decoBox {
 background: var(--l_blue) url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 700 60"><path fill="%2345B2F1" d="M700,27.04c-8.92-4.92-19.67-7.8-31.25-7.8-24.94,0-46.06,13.35-53.21,31.76-12.7-9.29-31.13-15.14-51.65-15.14-5.99,0-11.8.5-17.35,1.44C536.73,15.77,504.82,0,466.96,0c-40.09,0-73.5,17.69-81.08,41.16-9-5.08-19.92-8.05-31.7-8.05-15.83,0-30.12,5.38-40.28,14.01-12.69-9.17-31-14.93-51.37-14.93-17.68,0-33.81,4.34-46.06,11.49-8.79-17.44-31.84-29.88-58.9-29.88-14.12,0-27.14,3.39-37.62,9.1C107.1,11.27,85.94,3.68,62.03,3.68,35.36,3.68,12.13,13.11,0,27.06v32.94h700V27.04Z" /></svg>') repeat-x center / auto 100%;
 margin-bottom: -2px;
 position: relative;
 /* position: absolute;
		top: auto;
		bottom: calc(100% - 5px); */
 width: 100%;
 height: min(22vw, 140px);
}

footer .bg_decoBox::before,
footer .bg_decoBox::after {
 content: '';
 display: block;
 margin: auto;
 position: absolute;
 left: 0;
 width: 100%;
 height: 2px;
}

footer .bg_decoBox::before {
 background-color: var(--l_blue);
 top: -1px;
}

footer .bg_decoBox::after {
 background-color: var(--blue);
 bottom: -1px;
}

#contents:has(#post_archive.bg-blue)+footer .bg_decoBox {
 display: none;
}

/* ////////// mobile ////////// */

@media screen and (max-width: 769px) {
 footer .blankBox {
  height: 50px;
 }

 footer .bg_decoBox {
  transform: scale(-1, 1);
 }

 footer .innerBox {
  max-width: 500px;
 }

 footer .menuBox .menu li {
  border-bottom: solid 1px;
 }

 footer .menuBox .menu li:first-child {
  max-width: 7em;
 }

 footer .menuBox .menu a {
  padding: .8em 0;
 }
}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
 footer .blankBox {
  height: 120px;
 }

 footer .menuBox .menu {
  display: grid;
  grid-gap: 1.5vw 2.5vw;
  grid-template-columns: auto auto auto auto auto auto;
  font-size: 1.6vw;
  font-weight: 700;
 }

 footer .menuBox .menu a {
  display: grid;
  grid-template-columns: 1fr auto;
 }

 footer .menuBox .menu a:after {
  background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40"><path fill="%23ffffff" d="M20,0C8.95,0,0,8.95,0,20s8.95,20,20,20,20-8.95,20-20S31.05,0,20,0ZM26.79,21.2l-9.96,6.08c-.8.49-1.82-.09-1.82-1.02v-12.52c0-.93,1.02-1.51,1.82-1.02l9.96,6.06c.91.55.91,1.86,0,2.42Z" /></svg>') no-repeat center / contain;
  content: '';
  display: block;
  margin: auto;
  transition: .2s ease-in-out;
  width: 1em;
  height: 1em;
 }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
 footer .menuBox .menu {
  grid-template-columns: auto auto auto auto auto;
  font-size: 1.8vw;
 }
}

@media screen and (min-width:1300px) {
 footer .menuBox .menu {
  font-size: 2.0rem;
  grid-gap: 20px 50px;
 }
}

@media (hover: hover) {
 footer .menuBox .menu a:hover::after {
  transform: translateX(5px);
 }
}


/*====================================================
////id |  xxx
====================================================*/

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {}

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

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {}

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

@media (hover: hover) {}

.c-coming {
 color: #fff;
}


.event-top {
 margin-top: -20px;
}

.status {
 color: #000;
 border: solid 1px #000;
}

