@charset "UTF-8";
:root {
  --main:#333333;
  --main-sub:#383838;
  --primary:#298948;
  --accent: #ffff00;
  --gray: #f1f1f1;
  --inverse: #fff;
  --red: #ff0000;
  --color-def: #000000;
  --color-catch: #f5f5f5;
  --color-link: #aa9986;
  --color-footer: #fff;
  --inverse-def: #fff;
  --body-bg: #dfede4;
  --btn-bg: var(--primary);
  --btn-color: #fff;
  --btn-border: var(--primary, #333333);
  --btn-bg-h: #fff;
  --btn-color-h: var(--primary);
  --btn-border-h: var(--primary, #333333);
  --btn-w: calc(250em / 18);
  --btn-h: calc(50em / 18);
  --btn-round: calc(25em / 18);
  --btn-size: clamp(14px, calc(14vmin / 4), 18px);
  --header-h: 120px;
  --header-bg: #fff;
  --header-bg-scroll: #fff;
  --gnav-bg:#f0f5f5;
  --gnav-bg_hv:#000;
  --gnav-color:#000;
  --gnav-color-h:#0082b4;
  --gnav-h: 60px;
  --gnav-btn-h:30px;
  --gnav-btn-w:clamp(40px, calc(140vmin / 15), 46px);
  --gnav-btn-bg:var(--primary);
  --gnav-btn-active:var(--primary);
  --footer-bg: var(--primary);
  --table-head: #aa9986;
  --title-bottom: 1.5em;
  --lineheight: calc(36 / 18);
  --lineheight-title: 1.5;
  --letterspace-def: 0.1em;
  --letterspace: 0.025em;
  --letterspace-narrow: 0.0em;
  --letterspace-wide: 0.17em;
  --size-def: clamp(13px, calc(13vmin / 4), 16px);
  --size-10: clamp(10px, calc(10vmin / 4), 10px);
  --size-12: clamp(10px, calc(10vmin / 4), 12px);
  --size-14: clamp(12px, calc(10vmin / 4), 14px);
  --size-15: clamp(12px, calc(10vmin / 4), 15px);
  --size-16: clamp(14px, calc(10vmin / 4), 16px);
  --size-18: clamp(14px, calc(12vmin / 4), 18px);
  --size-20: clamp(16px, calc(16vmin / 4), 20px);
  --size-21: clamp(16px, calc(16vmin / 4), 21px);
  --size-22: clamp(16px, calc(16vmin / 4), 22px);
  --size-24: clamp(18px, calc(16vmin / 4), 24px);
  --size-25: clamp(18px, calc(16vmin / 4), 25px);
  --size-26: clamp(18px, calc(18vmin / 4), 26px);
  --size-27: clamp(18px, calc(18vmin / 4), 27px);
  --size-28: clamp(18px, calc(18vmin / 4), 28px);
  --size-30: clamp(18px, calc(18vmin / 4), 30px);
  --size-32: clamp(18px, calc(18vmin / 4), 32px);
  --size-34: clamp(18px, calc(18vmin / 4), 34px);
  --size-35: clamp(18px, calc(18vmin / 4), 35px);
  --size-36: clamp(20px, calc(20vmin / 4), 36px);
  --size-38: clamp(22px, calc(20vmin / 4), 38px);
  --size-40: clamp(26px, calc(24vmin / 4), 40px);
  --size-42: clamp(26px, calc(24vmin / 4), 42px);
  --size-48: clamp(30px, calc(26vmin / 4), 48px);
  --size-50: clamp(30px, calc(28vmin / 4), 50px);
  --size-70: clamp(30px, calc(30vmin / 4), 70px);
  --size-72: clamp(30px, calc(30vmin / 4), 72px);
  --size-80: clamp(40px, calc(40vmin / 4), 80px);
  --size-84: clamp(40px, calc(40vmin / 4), 84px);
  --size-120: clamp(40px, calc(50vmin / 4), 120px);
  --size-150: clamp(45px, calc(150vw / 16.8), 150px);
  --easing: cubic-bezier(0.37, 0, 0.63, 1);
  --easing-def: cubic-bezier(0.42, 0, 0.58, 1);
  --easing-slide: cubic-bezier(0.77, 0, 0.175, 1);
  --container: 1130px;
  --container-wide: 1430px;
  --container-slim: 1030px;
  --container-pad: min(calc(110% / 15), 15px);
  --container-pad_sp: min(calc(110% / 12.8), 15px);
  --sec-top:clamp(2em, calc(35% / 9.5), 35px);
  --sec-bottom:clamp(2em, calc(100% / 9.5), 35px);
  --thumb-aspect: 470 / 307;
  --font-gothic:"Kiwi Maru","Yu Gothic", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",sans-serif;
  --font-mincho: "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
/* ===========================================================================

/assets/sass/common/_reset.scss
Reset

=========================================================================== */
body {
  /* webkit系のスマホで文字が拡大されるのを防ぐ */
  -webkit-text-size-adjust: 100%;
}

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, hr {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-size: inherit;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

html {
  overflow-y: scroll;
}

blockquote, q {
  quotes: none;
}

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

input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  /* 必要に応じて下記はコメントアウト */
  /*
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
  */
}

ol, ul {
  list-style: none;
}

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

a:focus {
  outline: none;
}

img {
  vertical-align: bottom;
}

a, span, small, strong {
  color: inherit;
  font-weight: inherit;
}

/* ===========================================================================

/assets/sass/common/_common.scss

=========================================================================== */
html {
  box-sizing: border-box;
}

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

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

p {
  margin-bottom: var(--p-margin, 1.5em);
}
p:last-of-type {
  margin-bottom: var(--p-margin-last, 0);
}

a {
  color: inherit;
  text-decoration: none;
}
a:visited {
  text-decoration: none;
}

a:hover, a:active {
  color: inherit;
  text-decoration: none;
}

/* -----------------------------
 margin,padding
----------------------------- */
.pt0 {
  padding-top: 0px;
}

.pr0 {
  padding-right: 0px;
}

.pb0 {
  padding-bottom: 0px;
}

.pl0 {
  padding-left: 0px;
}

.mt0 {
  margin-top: 0px;
}

.mr0 {
  margin-right: 0px;
}

.mb0 {
  margin-bottom: 0px;
}

.ml0 {
  margin-left: 0px;
}

.pt5 {
  padding-top: 5px;
}

.pr5 {
  padding-right: 5px;
}

.pb5 {
  padding-bottom: 5px;
}

.pl5 {
  padding-left: 5px;
}

.mt5 {
  margin-top: 5px;
}

.mr5 {
  margin-right: 5px;
}

.mb5 {
  margin-bottom: 5px;
}

.ml5 {
  margin-left: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pr10 {
  padding-right: 10px;
}

.pb10 {
  padding-bottom: 10px;
}

.pl10 {
  padding-left: 10px;
}

.mt10 {
  margin-top: 10px;
}

.mr10 {
  margin-right: 10px;
}

.mb10 {
  margin-bottom: 10px;
}

.ml10 {
  margin-left: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pr15 {
  padding-right: 15px;
}

.pb15 {
  padding-bottom: 15px;
}

.pl15 {
  padding-left: 15px;
}

.mt15 {
  margin-top: 15px;
}

.mr15 {
  margin-right: 15px;
}

.mb15 {
  margin-bottom: 15px;
}

.ml15 {
  margin-left: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pr20 {
  padding-right: 20px;
}

.pb20 {
  padding-bottom: 20px;
}

.pl20 {
  padding-left: 20px;
}

.mt20 {
  margin-top: 20px;
}

.mr20 {
  margin-right: 20px;
}

.mb20 {
  margin-bottom: 20px;
}

.ml20 {
  margin-left: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pr25 {
  padding-right: 25px;
}

.pb25 {
  padding-bottom: 25px;
}

.pl25 {
  padding-left: 25px;
}

.mt25 {
  margin-top: 25px;
}

.mr25 {
  margin-right: 25px;
}

.mb25 {
  margin-bottom: 25px;
}

.ml25 {
  margin-left: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pr30 {
  padding-right: 30px;
}

.pb30 {
  padding-bottom: 30px;
}

.pl30 {
  padding-left: 30px;
}

.mt30 {
  margin-top: 30px;
}

.mr30 {
  margin-right: 30px;
}

.mb30 {
  margin-bottom: 30px;
}

.ml30 {
  margin-left: 30px;
}

.pt35 {
  padding-top: 35px;
}

.pr35 {
  padding-right: 35px;
}

.pb35 {
  padding-bottom: 35px;
}

.pl35 {
  padding-left: 35px;
}

.mt35 {
  margin-top: 35px;
}

.mr35 {
  margin-right: 35px;
}

.mb35 {
  margin-bottom: 35px;
}

.ml35 {
  margin-left: 35px;
}

.pt40 {
  padding-top: 40px;
}

.pr40 {
  padding-right: 40px;
}

.pb40 {
  padding-bottom: 40px;
}

.pl40 {
  padding-left: 40px;
}

.mt40 {
  margin-top: 40px;
}

.mr40 {
  margin-right: 40px;
}

.mb40 {
  margin-bottom: 40px;
}

.ml40 {
  margin-left: 40px;
}

.pt45 {
  padding-top: 45px;
}

.pr45 {
  padding-right: 45px;
}

.pb45 {
  padding-bottom: 45px;
}

.pl45 {
  padding-left: 45px;
}

.mt45 {
  margin-top: 45px;
}

.mr45 {
  margin-right: 45px;
}

.mb45 {
  margin-bottom: 45px;
}

.ml45 {
  margin-left: 45px;
}

.pt50 {
  padding-top: 50px;
}

.pr50 {
  padding-right: 50px;
}

.pb50 {
  padding-bottom: 50px;
}

.pl50 {
  padding-left: 50px;
}

.mt50 {
  margin-top: 50px;
}

.mr50 {
  margin-right: 50px;
}

.mb50 {
  margin-bottom: 50px;
}

.ml50 {
  margin-left: 50px;
}

.pt55 {
  padding-top: 55px;
}

.pr55 {
  padding-right: 55px;
}

.pb55 {
  padding-bottom: 55px;
}

.pl55 {
  padding-left: 55px;
}

.mt55 {
  margin-top: 55px;
}

.mr55 {
  margin-right: 55px;
}

.mb55 {
  margin-bottom: 55px;
}

.ml55 {
  margin-left: 55px;
}

.pt60 {
  padding-top: 60px;
}

.pr60 {
  padding-right: 60px;
}

.pb60 {
  padding-bottom: 60px;
}

.pl60 {
  padding-left: 60px;
}

.mt60 {
  margin-top: 60px;
}

.mr60 {
  margin-right: 60px;
}

.mb60 {
  margin-bottom: 60px;
}

.ml60 {
  margin-left: 60px;
}

.pt65 {
  padding-top: 65px;
}

.pr65 {
  padding-right: 65px;
}

.pb65 {
  padding-bottom: 65px;
}

.pl65 {
  padding-left: 65px;
}

.mt65 {
  margin-top: 65px;
}

.mr65 {
  margin-right: 65px;
}

.mb65 {
  margin-bottom: 65px;
}

.ml65 {
  margin-left: 65px;
}

.pt70 {
  padding-top: 70px;
}

.pr70 {
  padding-right: 70px;
}

.pb70 {
  padding-bottom: 70px;
}

.pl70 {
  padding-left: 70px;
}

.mt70 {
  margin-top: 70px;
}

.mr70 {
  margin-right: 70px;
}

.mb70 {
  margin-bottom: 70px;
}

.ml70 {
  margin-left: 70px;
}

.pt75 {
  padding-top: 75px;
}

.pr75 {
  padding-right: 75px;
}

.pb75 {
  padding-bottom: 75px;
}

.pl75 {
  padding-left: 75px;
}

.mt75 {
  margin-top: 75px;
}

.mr75 {
  margin-right: 75px;
}

.mb75 {
  margin-bottom: 75px;
}

.ml75 {
  margin-left: 75px;
}

.pt80 {
  padding-top: 80px;
}

.pr80 {
  padding-right: 80px;
}

.pb80 {
  padding-bottom: 80px;
}

.pl80 {
  padding-left: 80px;
}

.mt80 {
  margin-top: 80px;
}

.mr80 {
  margin-right: 80px;
}

.mb80 {
  margin-bottom: 80px;
}

.ml80 {
  margin-left: 80px;
}

.pt85 {
  padding-top: 85px;
}

.pr85 {
  padding-right: 85px;
}

.pb85 {
  padding-bottom: 85px;
}

.pl85 {
  padding-left: 85px;
}

.mt85 {
  margin-top: 85px;
}

.mr85 {
  margin-right: 85px;
}

.mb85 {
  margin-bottom: 85px;
}

.ml85 {
  margin-left: 85px;
}

.pt90 {
  padding-top: 90px;
}

.pr90 {
  padding-right: 90px;
}

.pb90 {
  padding-bottom: 90px;
}

.pl90 {
  padding-left: 90px;
}

.mt90 {
  margin-top: 90px;
}

.mr90 {
  margin-right: 90px;
}

.mb90 {
  margin-bottom: 90px;
}

.ml90 {
  margin-left: 90px;
}

.pt95 {
  padding-top: 95px;
}

.pr95 {
  padding-right: 95px;
}

.pb95 {
  padding-bottom: 95px;
}

.pl95 {
  padding-left: 95px;
}

.mt95 {
  margin-top: 95px;
}

.mr95 {
  margin-right: 95px;
}

.mb95 {
  margin-bottom: 95px;
}

.ml95 {
  margin-left: 95px;
}

.pt100 {
  padding-top: 100px;
}

.pr100 {
  padding-right: 100px;
}

.pb100 {
  padding-bottom: 100px;
}

.pl100 {
  padding-left: 100px;
}

.mt100 {
  margin-top: 100px;
}

.mr100 {
  margin-right: 100px;
}

.mb100 {
  margin-bottom: 100px;
}

.ml100 {
  margin-left: 100px;
}

.pt105 {
  padding-top: 105px;
}

.pr105 {
  padding-right: 105px;
}

.pb105 {
  padding-bottom: 105px;
}

.pl105 {
  padding-left: 105px;
}

.mt105 {
  margin-top: 105px;
}

.mr105 {
  margin-right: 105px;
}

.mb105 {
  margin-bottom: 105px;
}

.ml105 {
  margin-left: 105px;
}

.pt110 {
  padding-top: 110px;
}

.pr110 {
  padding-right: 110px;
}

.pb110 {
  padding-bottom: 110px;
}

.pl110 {
  padding-left: 110px;
}

.mt110 {
  margin-top: 110px;
}

.mr110 {
  margin-right: 110px;
}

.mb110 {
  margin-bottom: 110px;
}

.ml110 {
  margin-left: 110px;
}

.pt115 {
  padding-top: 115px;
}

.pr115 {
  padding-right: 115px;
}

.pb115 {
  padding-bottom: 115px;
}

.pl115 {
  padding-left: 115px;
}

.mt115 {
  margin-top: 115px;
}

.mr115 {
  margin-right: 115px;
}

.mb115 {
  margin-bottom: 115px;
}

.ml115 {
  margin-left: 115px;
}

.pt120 {
  padding-top: 120px;
}

.pr120 {
  padding-right: 120px;
}

.pb120 {
  padding-bottom: 120px;
}

.pl120 {
  padding-left: 120px;
}

.mt120 {
  margin-top: 120px;
}

.mr120 {
  margin-right: 120px;
}

.mb120 {
  margin-bottom: 120px;
}

.ml120 {
  margin-left: 120px;
}

.pt125 {
  padding-top: 125px;
}

.pr125 {
  padding-right: 125px;
}

.pb125 {
  padding-bottom: 125px;
}

.pl125 {
  padding-left: 125px;
}

.mt125 {
  margin-top: 125px;
}

.mr125 {
  margin-right: 125px;
}

.mb125 {
  margin-bottom: 125px;
}

.ml125 {
  margin-left: 125px;
}

.pt130 {
  padding-top: 130px;
}

.pr130 {
  padding-right: 130px;
}

.pb130 {
  padding-bottom: 130px;
}

.pl130 {
  padding-left: 130px;
}

.mt130 {
  margin-top: 130px;
}

.mr130 {
  margin-right: 130px;
}

.mb130 {
  margin-bottom: 130px;
}

.ml130 {
  margin-left: 130px;
}

.pt135 {
  padding-top: 135px;
}

.pr135 {
  padding-right: 135px;
}

.pb135 {
  padding-bottom: 135px;
}

.pl135 {
  padding-left: 135px;
}

.mt135 {
  margin-top: 135px;
}

.mr135 {
  margin-right: 135px;
}

.mb135 {
  margin-bottom: 135px;
}

.ml135 {
  margin-left: 135px;
}

.pt140 {
  padding-top: 140px;
}

.pr140 {
  padding-right: 140px;
}

.pb140 {
  padding-bottom: 140px;
}

.pl140 {
  padding-left: 140px;
}

.mt140 {
  margin-top: 140px;
}

.mr140 {
  margin-right: 140px;
}

.mb140 {
  margin-bottom: 140px;
}

.ml140 {
  margin-left: 140px;
}

.pt145 {
  padding-top: 145px;
}

.pr145 {
  padding-right: 145px;
}

.pb145 {
  padding-bottom: 145px;
}

.pl145 {
  padding-left: 145px;
}

.mt145 {
  margin-top: 145px;
}

.mr145 {
  margin-right: 145px;
}

.mb145 {
  margin-bottom: 145px;
}

.ml145 {
  margin-left: 145px;
}

.pt150 {
  padding-top: 150px;
}

.pr150 {
  padding-right: 150px;
}

.pb150 {
  padding-bottom: 150px;
}

.pl150 {
  padding-left: 150px;
}

.mt150 {
  margin-top: 150px;
}

.mr150 {
  margin-right: 150px;
}

.mb150 {
  margin-bottom: 150px;
}

.ml150 {
  margin-left: 150px;
}

.pt155 {
  padding-top: 155px;
}

.pr155 {
  padding-right: 155px;
}

.pb155 {
  padding-bottom: 155px;
}

.pl155 {
  padding-left: 155px;
}

.mt155 {
  margin-top: 155px;
}

.mr155 {
  margin-right: 155px;
}

.mb155 {
  margin-bottom: 155px;
}

.ml155 {
  margin-left: 155px;
}

.pt160 {
  padding-top: 160px;
}

.pr160 {
  padding-right: 160px;
}

.pb160 {
  padding-bottom: 160px;
}

.pl160 {
  padding-left: 160px;
}

.mt160 {
  margin-top: 160px;
}

.mr160 {
  margin-right: 160px;
}

.mb160 {
  margin-bottom: 160px;
}

.ml160 {
  margin-left: 160px;
}

.pt165 {
  padding-top: 165px;
}

.pr165 {
  padding-right: 165px;
}

.pb165 {
  padding-bottom: 165px;
}

.pl165 {
  padding-left: 165px;
}

.mt165 {
  margin-top: 165px;
}

.mr165 {
  margin-right: 165px;
}

.mb165 {
  margin-bottom: 165px;
}

.ml165 {
  margin-left: 165px;
}

.pt170 {
  padding-top: 170px;
}

.pr170 {
  padding-right: 170px;
}

.pb170 {
  padding-bottom: 170px;
}

.pl170 {
  padding-left: 170px;
}

.mt170 {
  margin-top: 170px;
}

.mr170 {
  margin-right: 170px;
}

.mb170 {
  margin-bottom: 170px;
}

.ml170 {
  margin-left: 170px;
}

.pt175 {
  padding-top: 175px;
}

.pr175 {
  padding-right: 175px;
}

.pb175 {
  padding-bottom: 175px;
}

.pl175 {
  padding-left: 175px;
}

.mt175 {
  margin-top: 175px;
}

.mr175 {
  margin-right: 175px;
}

.mb175 {
  margin-bottom: 175px;
}

.ml175 {
  margin-left: 175px;
}

.pt180 {
  padding-top: 180px;
}

.pr180 {
  padding-right: 180px;
}

.pb180 {
  padding-bottom: 180px;
}

.pl180 {
  padding-left: 180px;
}

.mt180 {
  margin-top: 180px;
}

.mr180 {
  margin-right: 180px;
}

.mb180 {
  margin-bottom: 180px;
}

.ml180 {
  margin-left: 180px;
}

.pt185 {
  padding-top: 185px;
}

.pr185 {
  padding-right: 185px;
}

.pb185 {
  padding-bottom: 185px;
}

.pl185 {
  padding-left: 185px;
}

.mt185 {
  margin-top: 185px;
}

.mr185 {
  margin-right: 185px;
}

.mb185 {
  margin-bottom: 185px;
}

.ml185 {
  margin-left: 185px;
}

.pt190 {
  padding-top: 190px;
}

.pr190 {
  padding-right: 190px;
}

.pb190 {
  padding-bottom: 190px;
}

.pl190 {
  padding-left: 190px;
}

.mt190 {
  margin-top: 190px;
}

.mr190 {
  margin-right: 190px;
}

.mb190 {
  margin-bottom: 190px;
}

.ml190 {
  margin-left: 190px;
}

.pt195 {
  padding-top: 195px;
}

.pr195 {
  padding-right: 195px;
}

.pb195 {
  padding-bottom: 195px;
}

.pl195 {
  padding-left: 195px;
}

.mt195 {
  margin-top: 195px;
}

.mr195 {
  margin-right: 195px;
}

.mb195 {
  margin-bottom: 195px;
}

.ml195 {
  margin-left: 195px;
}

.pt200 {
  padding-top: 200px;
}

.pr200 {
  padding-right: 200px;
}

.pb200 {
  padding-bottom: 200px;
}

.pl200 {
  padding-left: 200px;
}

.mt200 {
  margin-top: 200px;
}

.mr200 {
  margin-right: 200px;
}

.mb200 {
  margin-bottom: 200px;
}

.ml200 {
  margin-left: 200px;
}

@media print, screen and (max-width: 767px) {
  .pt0 {
    padding-top: 0px;
  }
  .pr0 {
    padding-right: 0px;
  }
  .pb0 {
    padding-bottom: 0px;
  }
  .pl0 {
    padding-left: 0px;
  }
  .mt0 {
    margin-top: 0px;
  }
  .mr0 {
    margin-right: 0px;
  }
  .mb0 {
    margin-bottom: 0px;
  }
  .ml0 {
    margin-left: 0px;
  }
  .pt5 {
    padding-top: 2.5px;
  }
  .pr5 {
    padding-right: 2.5px;
  }
  .pb5 {
    padding-bottom: 2.5px;
  }
  .pl5 {
    padding-left: 2.5px;
  }
  .mt5 {
    margin-top: 2.5px;
  }
  .mr5 {
    margin-right: 2.5px;
  }
  .mb5 {
    margin-bottom: 2.5px;
  }
  .ml5 {
    margin-left: 2.5px;
  }
  .pt10 {
    padding-top: 5px;
  }
  .pr10 {
    padding-right: 5px;
  }
  .pb10 {
    padding-bottom: 5px;
  }
  .pl10 {
    padding-left: 5px;
  }
  .mt10 {
    margin-top: 5px;
  }
  .mr10 {
    margin-right: 5px;
  }
  .mb10 {
    margin-bottom: 5px;
  }
  .ml10 {
    margin-left: 5px;
  }
  .pt15 {
    padding-top: 7.5px;
  }
  .pr15 {
    padding-right: 7.5px;
  }
  .pb15 {
    padding-bottom: 7.5px;
  }
  .pl15 {
    padding-left: 7.5px;
  }
  .mt15 {
    margin-top: 7.5px;
  }
  .mr15 {
    margin-right: 7.5px;
  }
  .mb15 {
    margin-bottom: 7.5px;
  }
  .ml15 {
    margin-left: 7.5px;
  }
  .pt20 {
    padding-top: 10px;
  }
  .pr20 {
    padding-right: 10px;
  }
  .pb20 {
    padding-bottom: 10px;
  }
  .pl20 {
    padding-left: 10px;
  }
  .mt20 {
    margin-top: 10px;
  }
  .mr20 {
    margin-right: 10px;
  }
  .mb20 {
    margin-bottom: 10px;
  }
  .ml20 {
    margin-left: 10px;
  }
  .pt25 {
    padding-top: 12.5px;
  }
  .pr25 {
    padding-right: 12.5px;
  }
  .pb25 {
    padding-bottom: 12.5px;
  }
  .pl25 {
    padding-left: 12.5px;
  }
  .mt25 {
    margin-top: 12.5px;
  }
  .mr25 {
    margin-right: 12.5px;
  }
  .mb25 {
    margin-bottom: 12.5px;
  }
  .ml25 {
    margin-left: 12.5px;
  }
  .pt30 {
    padding-top: 15px;
  }
  .pr30 {
    padding-right: 15px;
  }
  .pb30 {
    padding-bottom: 15px;
  }
  .pl30 {
    padding-left: 15px;
  }
  .mt30 {
    margin-top: 15px;
  }
  .mr30 {
    margin-right: 15px;
  }
  .mb30 {
    margin-bottom: 15px;
  }
  .ml30 {
    margin-left: 15px;
  }
  .pt35 {
    padding-top: 17.5px;
  }
  .pr35 {
    padding-right: 17.5px;
  }
  .pb35 {
    padding-bottom: 17.5px;
  }
  .pl35 {
    padding-left: 17.5px;
  }
  .mt35 {
    margin-top: 17.5px;
  }
  .mr35 {
    margin-right: 17.5px;
  }
  .mb35 {
    margin-bottom: 17.5px;
  }
  .ml35 {
    margin-left: 17.5px;
  }
  .pt40 {
    padding-top: 20px;
  }
  .pr40 {
    padding-right: 20px;
  }
  .pb40 {
    padding-bottom: 20px;
  }
  .pl40 {
    padding-left: 20px;
  }
  .mt40 {
    margin-top: 20px;
  }
  .mr40 {
    margin-right: 20px;
  }
  .mb40 {
    margin-bottom: 20px;
  }
  .ml40 {
    margin-left: 20px;
  }
  .pt45 {
    padding-top: 22.5px;
  }
  .pr45 {
    padding-right: 22.5px;
  }
  .pb45 {
    padding-bottom: 22.5px;
  }
  .pl45 {
    padding-left: 22.5px;
  }
  .mt45 {
    margin-top: 22.5px;
  }
  .mr45 {
    margin-right: 22.5px;
  }
  .mb45 {
    margin-bottom: 22.5px;
  }
  .ml45 {
    margin-left: 22.5px;
  }
  .pt50 {
    padding-top: 25px;
  }
  .pr50 {
    padding-right: 25px;
  }
  .pb50 {
    padding-bottom: 25px;
  }
  .pl50 {
    padding-left: 25px;
  }
  .mt50 {
    margin-top: 25px;
  }
  .mr50 {
    margin-right: 25px;
  }
  .mb50 {
    margin-bottom: 25px;
  }
  .ml50 {
    margin-left: 25px;
  }
  .pt55 {
    padding-top: 27.5px;
  }
  .pr55 {
    padding-right: 27.5px;
  }
  .pb55 {
    padding-bottom: 27.5px;
  }
  .pl55 {
    padding-left: 27.5px;
  }
  .mt55 {
    margin-top: 27.5px;
  }
  .mr55 {
    margin-right: 27.5px;
  }
  .mb55 {
    margin-bottom: 27.5px;
  }
  .ml55 {
    margin-left: 27.5px;
  }
  .pt60 {
    padding-top: 30px;
  }
  .pr60 {
    padding-right: 30px;
  }
  .pb60 {
    padding-bottom: 30px;
  }
  .pl60 {
    padding-left: 30px;
  }
  .mt60 {
    margin-top: 30px;
  }
  .mr60 {
    margin-right: 30px;
  }
  .mb60 {
    margin-bottom: 30px;
  }
  .ml60 {
    margin-left: 30px;
  }
  .pt65 {
    padding-top: 32.5px;
  }
  .pr65 {
    padding-right: 32.5px;
  }
  .pb65 {
    padding-bottom: 32.5px;
  }
  .pl65 {
    padding-left: 32.5px;
  }
  .mt65 {
    margin-top: 32.5px;
  }
  .mr65 {
    margin-right: 32.5px;
  }
  .mb65 {
    margin-bottom: 32.5px;
  }
  .ml65 {
    margin-left: 32.5px;
  }
  .pt70 {
    padding-top: 35px;
  }
  .pr70 {
    padding-right: 35px;
  }
  .pb70 {
    padding-bottom: 35px;
  }
  .pl70 {
    padding-left: 35px;
  }
  .mt70 {
    margin-top: 35px;
  }
  .mr70 {
    margin-right: 35px;
  }
  .mb70 {
    margin-bottom: 35px;
  }
  .ml70 {
    margin-left: 35px;
  }
  .pt75 {
    padding-top: 37.5px;
  }
  .pr75 {
    padding-right: 37.5px;
  }
  .pb75 {
    padding-bottom: 37.5px;
  }
  .pl75 {
    padding-left: 37.5px;
  }
  .mt75 {
    margin-top: 37.5px;
  }
  .mr75 {
    margin-right: 37.5px;
  }
  .mb75 {
    margin-bottom: 37.5px;
  }
  .ml75 {
    margin-left: 37.5px;
  }
  .pt80 {
    padding-top: 40px;
  }
  .pr80 {
    padding-right: 40px;
  }
  .pb80 {
    padding-bottom: 40px;
  }
  .pl80 {
    padding-left: 40px;
  }
  .mt80 {
    margin-top: 40px;
  }
  .mr80 {
    margin-right: 40px;
  }
  .mb80 {
    margin-bottom: 40px;
  }
  .ml80 {
    margin-left: 40px;
  }
  .pt85 {
    padding-top: 42.5px;
  }
  .pr85 {
    padding-right: 42.5px;
  }
  .pb85 {
    padding-bottom: 42.5px;
  }
  .pl85 {
    padding-left: 42.5px;
  }
  .mt85 {
    margin-top: 42.5px;
  }
  .mr85 {
    margin-right: 42.5px;
  }
  .mb85 {
    margin-bottom: 42.5px;
  }
  .ml85 {
    margin-left: 42.5px;
  }
  .pt90 {
    padding-top: 45px;
  }
  .pr90 {
    padding-right: 45px;
  }
  .pb90 {
    padding-bottom: 45px;
  }
  .pl90 {
    padding-left: 45px;
  }
  .mt90 {
    margin-top: 45px;
  }
  .mr90 {
    margin-right: 45px;
  }
  .mb90 {
    margin-bottom: 45px;
  }
  .ml90 {
    margin-left: 45px;
  }
  .pt95 {
    padding-top: 47.5px;
  }
  .pr95 {
    padding-right: 47.5px;
  }
  .pb95 {
    padding-bottom: 47.5px;
  }
  .pl95 {
    padding-left: 47.5px;
  }
  .mt95 {
    margin-top: 47.5px;
  }
  .mr95 {
    margin-right: 47.5px;
  }
  .mb95 {
    margin-bottom: 47.5px;
  }
  .ml95 {
    margin-left: 47.5px;
  }
  .pt100 {
    padding-top: 50px;
  }
  .pr100 {
    padding-right: 50px;
  }
  .pb100 {
    padding-bottom: 50px;
  }
  .pl100 {
    padding-left: 50px;
  }
  .mt100 {
    margin-top: 50px;
  }
  .mr100 {
    margin-right: 50px;
  }
  .mb100 {
    margin-bottom: 50px;
  }
  .ml100 {
    margin-left: 50px;
  }
  .pt105 {
    padding-top: 52.5px;
  }
  .pr105 {
    padding-right: 52.5px;
  }
  .pb105 {
    padding-bottom: 52.5px;
  }
  .pl105 {
    padding-left: 52.5px;
  }
  .mt105 {
    margin-top: 52.5px;
  }
  .mr105 {
    margin-right: 52.5px;
  }
  .mb105 {
    margin-bottom: 52.5px;
  }
  .ml105 {
    margin-left: 52.5px;
  }
  .pt110 {
    padding-top: 55px;
  }
  .pr110 {
    padding-right: 55px;
  }
  .pb110 {
    padding-bottom: 55px;
  }
  .pl110 {
    padding-left: 55px;
  }
  .mt110 {
    margin-top: 55px;
  }
  .mr110 {
    margin-right: 55px;
  }
  .mb110 {
    margin-bottom: 55px;
  }
  .ml110 {
    margin-left: 55px;
  }
  .pt115 {
    padding-top: 57.5px;
  }
  .pr115 {
    padding-right: 57.5px;
  }
  .pb115 {
    padding-bottom: 57.5px;
  }
  .pl115 {
    padding-left: 57.5px;
  }
  .mt115 {
    margin-top: 57.5px;
  }
  .mr115 {
    margin-right: 57.5px;
  }
  .mb115 {
    margin-bottom: 57.5px;
  }
  .ml115 {
    margin-left: 57.5px;
  }
  .pt120 {
    padding-top: 60px;
  }
  .pr120 {
    padding-right: 60px;
  }
  .pb120 {
    padding-bottom: 60px;
  }
  .pl120 {
    padding-left: 60px;
  }
  .mt120 {
    margin-top: 60px;
  }
  .mr120 {
    margin-right: 60px;
  }
  .mb120 {
    margin-bottom: 60px;
  }
  .ml120 {
    margin-left: 60px;
  }
  .pt125 {
    padding-top: 62.5px;
  }
  .pr125 {
    padding-right: 62.5px;
  }
  .pb125 {
    padding-bottom: 62.5px;
  }
  .pl125 {
    padding-left: 62.5px;
  }
  .mt125 {
    margin-top: 62.5px;
  }
  .mr125 {
    margin-right: 62.5px;
  }
  .mb125 {
    margin-bottom: 62.5px;
  }
  .ml125 {
    margin-left: 62.5px;
  }
  .pt130 {
    padding-top: 65px;
  }
  .pr130 {
    padding-right: 65px;
  }
  .pb130 {
    padding-bottom: 65px;
  }
  .pl130 {
    padding-left: 65px;
  }
  .mt130 {
    margin-top: 65px;
  }
  .mr130 {
    margin-right: 65px;
  }
  .mb130 {
    margin-bottom: 65px;
  }
  .ml130 {
    margin-left: 65px;
  }
  .pt135 {
    padding-top: 67.5px;
  }
  .pr135 {
    padding-right: 67.5px;
  }
  .pb135 {
    padding-bottom: 67.5px;
  }
  .pl135 {
    padding-left: 67.5px;
  }
  .mt135 {
    margin-top: 67.5px;
  }
  .mr135 {
    margin-right: 67.5px;
  }
  .mb135 {
    margin-bottom: 67.5px;
  }
  .ml135 {
    margin-left: 67.5px;
  }
  .pt140 {
    padding-top: 70px;
  }
  .pr140 {
    padding-right: 70px;
  }
  .pb140 {
    padding-bottom: 70px;
  }
  .pl140 {
    padding-left: 70px;
  }
  .mt140 {
    margin-top: 70px;
  }
  .mr140 {
    margin-right: 70px;
  }
  .mb140 {
    margin-bottom: 70px;
  }
  .ml140 {
    margin-left: 70px;
  }
  .pt145 {
    padding-top: 72.5px;
  }
  .pr145 {
    padding-right: 72.5px;
  }
  .pb145 {
    padding-bottom: 72.5px;
  }
  .pl145 {
    padding-left: 72.5px;
  }
  .mt145 {
    margin-top: 72.5px;
  }
  .mr145 {
    margin-right: 72.5px;
  }
  .mb145 {
    margin-bottom: 72.5px;
  }
  .ml145 {
    margin-left: 72.5px;
  }
  .pt150 {
    padding-top: 75px;
  }
  .pr150 {
    padding-right: 75px;
  }
  .pb150 {
    padding-bottom: 75px;
  }
  .pl150 {
    padding-left: 75px;
  }
  .mt150 {
    margin-top: 75px;
  }
  .mr150 {
    margin-right: 75px;
  }
  .mb150 {
    margin-bottom: 75px;
  }
  .ml150 {
    margin-left: 75px;
  }
  .pt155 {
    padding-top: 77.5px;
  }
  .pr155 {
    padding-right: 77.5px;
  }
  .pb155 {
    padding-bottom: 77.5px;
  }
  .pl155 {
    padding-left: 77.5px;
  }
  .mt155 {
    margin-top: 77.5px;
  }
  .mr155 {
    margin-right: 77.5px;
  }
  .mb155 {
    margin-bottom: 77.5px;
  }
  .ml155 {
    margin-left: 77.5px;
  }
  .pt160 {
    padding-top: 80px;
  }
  .pr160 {
    padding-right: 80px;
  }
  .pb160 {
    padding-bottom: 80px;
  }
  .pl160 {
    padding-left: 80px;
  }
  .mt160 {
    margin-top: 80px;
  }
  .mr160 {
    margin-right: 80px;
  }
  .mb160 {
    margin-bottom: 80px;
  }
  .ml160 {
    margin-left: 80px;
  }
  .pt165 {
    padding-top: 82.5px;
  }
  .pr165 {
    padding-right: 82.5px;
  }
  .pb165 {
    padding-bottom: 82.5px;
  }
  .pl165 {
    padding-left: 82.5px;
  }
  .mt165 {
    margin-top: 82.5px;
  }
  .mr165 {
    margin-right: 82.5px;
  }
  .mb165 {
    margin-bottom: 82.5px;
  }
  .ml165 {
    margin-left: 82.5px;
  }
  .pt170 {
    padding-top: 85px;
  }
  .pr170 {
    padding-right: 85px;
  }
  .pb170 {
    padding-bottom: 85px;
  }
  .pl170 {
    padding-left: 85px;
  }
  .mt170 {
    margin-top: 85px;
  }
  .mr170 {
    margin-right: 85px;
  }
  .mb170 {
    margin-bottom: 85px;
  }
  .ml170 {
    margin-left: 85px;
  }
  .pt175 {
    padding-top: 87.5px;
  }
  .pr175 {
    padding-right: 87.5px;
  }
  .pb175 {
    padding-bottom: 87.5px;
  }
  .pl175 {
    padding-left: 87.5px;
  }
  .mt175 {
    margin-top: 87.5px;
  }
  .mr175 {
    margin-right: 87.5px;
  }
  .mb175 {
    margin-bottom: 87.5px;
  }
  .ml175 {
    margin-left: 87.5px;
  }
  .pt180 {
    padding-top: 90px;
  }
  .pr180 {
    padding-right: 90px;
  }
  .pb180 {
    padding-bottom: 90px;
  }
  .pl180 {
    padding-left: 90px;
  }
  .mt180 {
    margin-top: 90px;
  }
  .mr180 {
    margin-right: 90px;
  }
  .mb180 {
    margin-bottom: 90px;
  }
  .ml180 {
    margin-left: 90px;
  }
  .pt185 {
    padding-top: 92.5px;
  }
  .pr185 {
    padding-right: 92.5px;
  }
  .pb185 {
    padding-bottom: 92.5px;
  }
  .pl185 {
    padding-left: 92.5px;
  }
  .mt185 {
    margin-top: 92.5px;
  }
  .mr185 {
    margin-right: 92.5px;
  }
  .mb185 {
    margin-bottom: 92.5px;
  }
  .ml185 {
    margin-left: 92.5px;
  }
  .pt190 {
    padding-top: 95px;
  }
  .pr190 {
    padding-right: 95px;
  }
  .pb190 {
    padding-bottom: 95px;
  }
  .pl190 {
    padding-left: 95px;
  }
  .mt190 {
    margin-top: 95px;
  }
  .mr190 {
    margin-right: 95px;
  }
  .mb190 {
    margin-bottom: 95px;
  }
  .ml190 {
    margin-left: 95px;
  }
  .pt195 {
    padding-top: 97.5px;
  }
  .pr195 {
    padding-right: 97.5px;
  }
  .pb195 {
    padding-bottom: 97.5px;
  }
  .pl195 {
    padding-left: 97.5px;
  }
  .mt195 {
    margin-top: 97.5px;
  }
  .mr195 {
    margin-right: 97.5px;
  }
  .mb195 {
    margin-bottom: 97.5px;
  }
  .ml195 {
    margin-left: 97.5px;
  }
  .pt200 {
    padding-top: 100px;
  }
  .pr200 {
    padding-right: 100px;
  }
  .pb200 {
    padding-bottom: 100px;
  }
  .pl200 {
    padding-left: 100px;
  }
  .mt200 {
    margin-top: 100px;
  }
  .mr200 {
    margin-right: 100px;
  }
  .mb200 {
    margin-bottom: 100px;
  }
  .ml200 {
    margin-left: 100px;
  }
  .pt0-smt {
    padding-top: 0px;
  }
  .pr0-smt {
    padding-right: 0px;
  }
  .pb0-smt {
    padding-bottom: 0px;
  }
  .pl0-smt {
    padding-left: 0px;
  }
  .mt0-smt {
    margin-top: 0px;
  }
  .mr0-smt {
    margin-right: 0px;
  }
  .mb0-smt {
    margin-bottom: 0px;
  }
  .ml0-smt {
    margin-left: 0px;
  }
  .pt5-smt {
    padding-top: 2.5px;
  }
  .pr5-smt {
    padding-right: 2.5px;
  }
  .pb5-smt {
    padding-bottom: 2.5px;
  }
  .pl5-smt {
    padding-left: 2.5px;
  }
  .mt5-smt {
    margin-top: 2.5px;
  }
  .mr5-smt {
    margin-right: 2.5px;
  }
  .mb5-smt {
    margin-bottom: 2.5px;
  }
  .ml5-smt {
    margin-left: 2.5px;
  }
  .pt10-smt {
    padding-top: 5px;
  }
  .pr10-smt {
    padding-right: 5px;
  }
  .pb10-smt {
    padding-bottom: 5px;
  }
  .pl10-smt {
    padding-left: 5px;
  }
  .mt10-smt {
    margin-top: 5px;
  }
  .mr10-smt {
    margin-right: 5px;
  }
  .mb10-smt {
    margin-bottom: 5px;
  }
  .ml10-smt {
    margin-left: 5px;
  }
  .pt15-smt {
    padding-top: 7.5px;
  }
  .pr15-smt {
    padding-right: 7.5px;
  }
  .pb15-smt {
    padding-bottom: 7.5px;
  }
  .pl15-smt {
    padding-left: 7.5px;
  }
  .mt15-smt {
    margin-top: 7.5px;
  }
  .mr15-smt {
    margin-right: 7.5px;
  }
  .mb15-smt {
    margin-bottom: 7.5px;
  }
  .ml15-smt {
    margin-left: 7.5px;
  }
  .pt20-smt {
    padding-top: 10px;
  }
  .pr20-smt {
    padding-right: 10px;
  }
  .pb20-smt {
    padding-bottom: 10px;
  }
  .pl20-smt {
    padding-left: 10px;
  }
  .mt20-smt {
    margin-top: 10px;
  }
  .mr20-smt {
    margin-right: 10px;
  }
  .mb20-smt {
    margin-bottom: 10px;
  }
  .ml20-smt {
    margin-left: 10px;
  }
  .pt25-smt {
    padding-top: 12.5px;
  }
  .pr25-smt {
    padding-right: 12.5px;
  }
  .pb25-smt {
    padding-bottom: 12.5px;
  }
  .pl25-smt {
    padding-left: 12.5px;
  }
  .mt25-smt {
    margin-top: 12.5px;
  }
  .mr25-smt {
    margin-right: 12.5px;
  }
  .mb25-smt {
    margin-bottom: 12.5px;
  }
  .ml25-smt {
    margin-left: 12.5px;
  }
  .pt30-smt {
    padding-top: 15px;
  }
  .pr30-smt {
    padding-right: 15px;
  }
  .pb30-smt {
    padding-bottom: 15px;
  }
  .pl30-smt {
    padding-left: 15px;
  }
  .mt30-smt {
    margin-top: 15px;
  }
  .mr30-smt {
    margin-right: 15px;
  }
  .mb30-smt {
    margin-bottom: 15px;
  }
  .ml30-smt {
    margin-left: 15px;
  }
  .pt35-smt {
    padding-top: 17.5px;
  }
  .pr35-smt {
    padding-right: 17.5px;
  }
  .pb35-smt {
    padding-bottom: 17.5px;
  }
  .pl35-smt {
    padding-left: 17.5px;
  }
  .mt35-smt {
    margin-top: 17.5px;
  }
  .mr35-smt {
    margin-right: 17.5px;
  }
  .mb35-smt {
    margin-bottom: 17.5px;
  }
  .ml35-smt {
    margin-left: 17.5px;
  }
  .pt40-smt {
    padding-top: 20px;
  }
  .pr40-smt {
    padding-right: 20px;
  }
  .pb40-smt {
    padding-bottom: 20px;
  }
  .pl40-smt {
    padding-left: 20px;
  }
  .mt40-smt {
    margin-top: 20px;
  }
  .mr40-smt {
    margin-right: 20px;
  }
  .mb40-smt {
    margin-bottom: 20px;
  }
  .ml40-smt {
    margin-left: 20px;
  }
  .pt45-smt {
    padding-top: 22.5px;
  }
  .pr45-smt {
    padding-right: 22.5px;
  }
  .pb45-smt {
    padding-bottom: 22.5px;
  }
  .pl45-smt {
    padding-left: 22.5px;
  }
  .mt45-smt {
    margin-top: 22.5px;
  }
  .mr45-smt {
    margin-right: 22.5px;
  }
  .mb45-smt {
    margin-bottom: 22.5px;
  }
  .ml45-smt {
    margin-left: 22.5px;
  }
  .pt50-smt {
    padding-top: 25px;
  }
  .pr50-smt {
    padding-right: 25px;
  }
  .pb50-smt {
    padding-bottom: 25px;
  }
  .pl50-smt {
    padding-left: 25px;
  }
  .mt50-smt {
    margin-top: 25px;
  }
  .mr50-smt {
    margin-right: 25px;
  }
  .mb50-smt {
    margin-bottom: 25px;
  }
  .ml50-smt {
    margin-left: 25px;
  }
  .pt55-smt {
    padding-top: 27.5px;
  }
  .pr55-smt {
    padding-right: 27.5px;
  }
  .pb55-smt {
    padding-bottom: 27.5px;
  }
  .pl55-smt {
    padding-left: 27.5px;
  }
  .mt55-smt {
    margin-top: 27.5px;
  }
  .mr55-smt {
    margin-right: 27.5px;
  }
  .mb55-smt {
    margin-bottom: 27.5px;
  }
  .ml55-smt {
    margin-left: 27.5px;
  }
  .pt60-smt {
    padding-top: 30px;
  }
  .pr60-smt {
    padding-right: 30px;
  }
  .pb60-smt {
    padding-bottom: 30px;
  }
  .pl60-smt {
    padding-left: 30px;
  }
  .mt60-smt {
    margin-top: 30px;
  }
  .mr60-smt {
    margin-right: 30px;
  }
  .mb60-smt {
    margin-bottom: 30px;
  }
  .ml60-smt {
    margin-left: 30px;
  }
  .pt65-smt {
    padding-top: 32.5px;
  }
  .pr65-smt {
    padding-right: 32.5px;
  }
  .pb65-smt {
    padding-bottom: 32.5px;
  }
  .pl65-smt {
    padding-left: 32.5px;
  }
  .mt65-smt {
    margin-top: 32.5px;
  }
  .mr65-smt {
    margin-right: 32.5px;
  }
  .mb65-smt {
    margin-bottom: 32.5px;
  }
  .ml65-smt {
    margin-left: 32.5px;
  }
  .pt70-smt {
    padding-top: 35px;
  }
  .pr70-smt {
    padding-right: 35px;
  }
  .pb70-smt {
    padding-bottom: 35px;
  }
  .pl70-smt {
    padding-left: 35px;
  }
  .mt70-smt {
    margin-top: 35px;
  }
  .mr70-smt {
    margin-right: 35px;
  }
  .mb70-smt {
    margin-bottom: 35px;
  }
  .ml70-smt {
    margin-left: 35px;
  }
  .pt75-smt {
    padding-top: 37.5px;
  }
  .pr75-smt {
    padding-right: 37.5px;
  }
  .pb75-smt {
    padding-bottom: 37.5px;
  }
  .pl75-smt {
    padding-left: 37.5px;
  }
  .mt75-smt {
    margin-top: 37.5px;
  }
  .mr75-smt {
    margin-right: 37.5px;
  }
  .mb75-smt {
    margin-bottom: 37.5px;
  }
  .ml75-smt {
    margin-left: 37.5px;
  }
  .pt80-smt {
    padding-top: 40px;
  }
  .pr80-smt {
    padding-right: 40px;
  }
  .pb80-smt {
    padding-bottom: 40px;
  }
  .pl80-smt {
    padding-left: 40px;
  }
  .mt80-smt {
    margin-top: 40px;
  }
  .mr80-smt {
    margin-right: 40px;
  }
  .mb80-smt {
    margin-bottom: 40px;
  }
  .ml80-smt {
    margin-left: 40px;
  }
  .pt85-smt {
    padding-top: 42.5px;
  }
  .pr85-smt {
    padding-right: 42.5px;
  }
  .pb85-smt {
    padding-bottom: 42.5px;
  }
  .pl85-smt {
    padding-left: 42.5px;
  }
  .mt85-smt {
    margin-top: 42.5px;
  }
  .mr85-smt {
    margin-right: 42.5px;
  }
  .mb85-smt {
    margin-bottom: 42.5px;
  }
  .ml85-smt {
    margin-left: 42.5px;
  }
  .pt90-smt {
    padding-top: 45px;
  }
  .pr90-smt {
    padding-right: 45px;
  }
  .pb90-smt {
    padding-bottom: 45px;
  }
  .pl90-smt {
    padding-left: 45px;
  }
  .mt90-smt {
    margin-top: 45px;
  }
  .mr90-smt {
    margin-right: 45px;
  }
  .mb90-smt {
    margin-bottom: 45px;
  }
  .ml90-smt {
    margin-left: 45px;
  }
  .pt95-smt {
    padding-top: 47.5px;
  }
  .pr95-smt {
    padding-right: 47.5px;
  }
  .pb95-smt {
    padding-bottom: 47.5px;
  }
  .pl95-smt {
    padding-left: 47.5px;
  }
  .mt95-smt {
    margin-top: 47.5px;
  }
  .mr95-smt {
    margin-right: 47.5px;
  }
  .mb95-smt {
    margin-bottom: 47.5px;
  }
  .ml95-smt {
    margin-left: 47.5px;
  }
  .pt100-smt {
    padding-top: 50px;
  }
  .pr100-smt {
    padding-right: 50px;
  }
  .pb100-smt {
    padding-bottom: 50px;
  }
  .pl100-smt {
    padding-left: 50px;
  }
  .mt100-smt {
    margin-top: 50px;
  }
  .mr100-smt {
    margin-right: 50px;
  }
  .mb100-smt {
    margin-bottom: 50px;
  }
  .ml100-smt {
    margin-left: 50px;
  }
  .pt105-smt {
    padding-top: 52.5px;
  }
  .pr105-smt {
    padding-right: 52.5px;
  }
  .pb105-smt {
    padding-bottom: 52.5px;
  }
  .pl105-smt {
    padding-left: 52.5px;
  }
  .mt105-smt {
    margin-top: 52.5px;
  }
  .mr105-smt {
    margin-right: 52.5px;
  }
  .mb105-smt {
    margin-bottom: 52.5px;
  }
  .ml105-smt {
    margin-left: 52.5px;
  }
  .pt110-smt {
    padding-top: 55px;
  }
  .pr110-smt {
    padding-right: 55px;
  }
  .pb110-smt {
    padding-bottom: 55px;
  }
  .pl110-smt {
    padding-left: 55px;
  }
  .mt110-smt {
    margin-top: 55px;
  }
  .mr110-smt {
    margin-right: 55px;
  }
  .mb110-smt {
    margin-bottom: 55px;
  }
  .ml110-smt {
    margin-left: 55px;
  }
  .pt115-smt {
    padding-top: 57.5px;
  }
  .pr115-smt {
    padding-right: 57.5px;
  }
  .pb115-smt {
    padding-bottom: 57.5px;
  }
  .pl115-smt {
    padding-left: 57.5px;
  }
  .mt115-smt {
    margin-top: 57.5px;
  }
  .mr115-smt {
    margin-right: 57.5px;
  }
  .mb115-smt {
    margin-bottom: 57.5px;
  }
  .ml115-smt {
    margin-left: 57.5px;
  }
  .pt120-smt {
    padding-top: 60px;
  }
  .pr120-smt {
    padding-right: 60px;
  }
  .pb120-smt {
    padding-bottom: 60px;
  }
  .pl120-smt {
    padding-left: 60px;
  }
  .mt120-smt {
    margin-top: 60px;
  }
  .mr120-smt {
    margin-right: 60px;
  }
  .mb120-smt {
    margin-bottom: 60px;
  }
  .ml120-smt {
    margin-left: 60px;
  }
  .pt125-smt {
    padding-top: 62.5px;
  }
  .pr125-smt {
    padding-right: 62.5px;
  }
  .pb125-smt {
    padding-bottom: 62.5px;
  }
  .pl125-smt {
    padding-left: 62.5px;
  }
  .mt125-smt {
    margin-top: 62.5px;
  }
  .mr125-smt {
    margin-right: 62.5px;
  }
  .mb125-smt {
    margin-bottom: 62.5px;
  }
  .ml125-smt {
    margin-left: 62.5px;
  }
  .pt130-smt {
    padding-top: 65px;
  }
  .pr130-smt {
    padding-right: 65px;
  }
  .pb130-smt {
    padding-bottom: 65px;
  }
  .pl130-smt {
    padding-left: 65px;
  }
  .mt130-smt {
    margin-top: 65px;
  }
  .mr130-smt {
    margin-right: 65px;
  }
  .mb130-smt {
    margin-bottom: 65px;
  }
  .ml130-smt {
    margin-left: 65px;
  }
  .pt135-smt {
    padding-top: 67.5px;
  }
  .pr135-smt {
    padding-right: 67.5px;
  }
  .pb135-smt {
    padding-bottom: 67.5px;
  }
  .pl135-smt {
    padding-left: 67.5px;
  }
  .mt135-smt {
    margin-top: 67.5px;
  }
  .mr135-smt {
    margin-right: 67.5px;
  }
  .mb135-smt {
    margin-bottom: 67.5px;
  }
  .ml135-smt {
    margin-left: 67.5px;
  }
  .pt140-smt {
    padding-top: 70px;
  }
  .pr140-smt {
    padding-right: 70px;
  }
  .pb140-smt {
    padding-bottom: 70px;
  }
  .pl140-smt {
    padding-left: 70px;
  }
  .mt140-smt {
    margin-top: 70px;
  }
  .mr140-smt {
    margin-right: 70px;
  }
  .mb140-smt {
    margin-bottom: 70px;
  }
  .ml140-smt {
    margin-left: 70px;
  }
  .pt145-smt {
    padding-top: 72.5px;
  }
  .pr145-smt {
    padding-right: 72.5px;
  }
  .pb145-smt {
    padding-bottom: 72.5px;
  }
  .pl145-smt {
    padding-left: 72.5px;
  }
  .mt145-smt {
    margin-top: 72.5px;
  }
  .mr145-smt {
    margin-right: 72.5px;
  }
  .mb145-smt {
    margin-bottom: 72.5px;
  }
  .ml145-smt {
    margin-left: 72.5px;
  }
  .pt150-smt {
    padding-top: 75px;
  }
  .pr150-smt {
    padding-right: 75px;
  }
  .pb150-smt {
    padding-bottom: 75px;
  }
  .pl150-smt {
    padding-left: 75px;
  }
  .mt150-smt {
    margin-top: 75px;
  }
  .mr150-smt {
    margin-right: 75px;
  }
  .mb150-smt {
    margin-bottom: 75px;
  }
  .ml150-smt {
    margin-left: 75px;
  }
  .pt155-smt {
    padding-top: 77.5px;
  }
  .pr155-smt {
    padding-right: 77.5px;
  }
  .pb155-smt {
    padding-bottom: 77.5px;
  }
  .pl155-smt {
    padding-left: 77.5px;
  }
  .mt155-smt {
    margin-top: 77.5px;
  }
  .mr155-smt {
    margin-right: 77.5px;
  }
  .mb155-smt {
    margin-bottom: 77.5px;
  }
  .ml155-smt {
    margin-left: 77.5px;
  }
  .pt160-smt {
    padding-top: 80px;
  }
  .pr160-smt {
    padding-right: 80px;
  }
  .pb160-smt {
    padding-bottom: 80px;
  }
  .pl160-smt {
    padding-left: 80px;
  }
  .mt160-smt {
    margin-top: 80px;
  }
  .mr160-smt {
    margin-right: 80px;
  }
  .mb160-smt {
    margin-bottom: 80px;
  }
  .ml160-smt {
    margin-left: 80px;
  }
  .pt165-smt {
    padding-top: 82.5px;
  }
  .pr165-smt {
    padding-right: 82.5px;
  }
  .pb165-smt {
    padding-bottom: 82.5px;
  }
  .pl165-smt {
    padding-left: 82.5px;
  }
  .mt165-smt {
    margin-top: 82.5px;
  }
  .mr165-smt {
    margin-right: 82.5px;
  }
  .mb165-smt {
    margin-bottom: 82.5px;
  }
  .ml165-smt {
    margin-left: 82.5px;
  }
  .pt170-smt {
    padding-top: 85px;
  }
  .pr170-smt {
    padding-right: 85px;
  }
  .pb170-smt {
    padding-bottom: 85px;
  }
  .pl170-smt {
    padding-left: 85px;
  }
  .mt170-smt {
    margin-top: 85px;
  }
  .mr170-smt {
    margin-right: 85px;
  }
  .mb170-smt {
    margin-bottom: 85px;
  }
  .ml170-smt {
    margin-left: 85px;
  }
  .pt175-smt {
    padding-top: 87.5px;
  }
  .pr175-smt {
    padding-right: 87.5px;
  }
  .pb175-smt {
    padding-bottom: 87.5px;
  }
  .pl175-smt {
    padding-left: 87.5px;
  }
  .mt175-smt {
    margin-top: 87.5px;
  }
  .mr175-smt {
    margin-right: 87.5px;
  }
  .mb175-smt {
    margin-bottom: 87.5px;
  }
  .ml175-smt {
    margin-left: 87.5px;
  }
  .pt180-smt {
    padding-top: 90px;
  }
  .pr180-smt {
    padding-right: 90px;
  }
  .pb180-smt {
    padding-bottom: 90px;
  }
  .pl180-smt {
    padding-left: 90px;
  }
  .mt180-smt {
    margin-top: 90px;
  }
  .mr180-smt {
    margin-right: 90px;
  }
  .mb180-smt {
    margin-bottom: 90px;
  }
  .ml180-smt {
    margin-left: 90px;
  }
  .pt185-smt {
    padding-top: 92.5px;
  }
  .pr185-smt {
    padding-right: 92.5px;
  }
  .pb185-smt {
    padding-bottom: 92.5px;
  }
  .pl185-smt {
    padding-left: 92.5px;
  }
  .mt185-smt {
    margin-top: 92.5px;
  }
  .mr185-smt {
    margin-right: 92.5px;
  }
  .mb185-smt {
    margin-bottom: 92.5px;
  }
  .ml185-smt {
    margin-left: 92.5px;
  }
  .pt190-smt {
    padding-top: 95px;
  }
  .pr190-smt {
    padding-right: 95px;
  }
  .pb190-smt {
    padding-bottom: 95px;
  }
  .pl190-smt {
    padding-left: 95px;
  }
  .mt190-smt {
    margin-top: 95px;
  }
  .mr190-smt {
    margin-right: 95px;
  }
  .mb190-smt {
    margin-bottom: 95px;
  }
  .ml190-smt {
    margin-left: 95px;
  }
  .pt195-smt {
    padding-top: 97.5px;
  }
  .pr195-smt {
    padding-right: 97.5px;
  }
  .pb195-smt {
    padding-bottom: 97.5px;
  }
  .pl195-smt {
    padding-left: 97.5px;
  }
  .mt195-smt {
    margin-top: 97.5px;
  }
  .mr195-smt {
    margin-right: 97.5px;
  }
  .mb195-smt {
    margin-bottom: 97.5px;
  }
  .ml195-smt {
    margin-left: 97.5px;
  }
  .pt200-smt {
    padding-top: 100px;
  }
  .pr200-smt {
    padding-right: 100px;
  }
  .pb200-smt {
    padding-bottom: 100px;
  }
  .pl200-smt {
    padding-left: 100px;
  }
  .mt200-smt {
    margin-top: 100px;
  }
  .mr200-smt {
    margin-right: 100px;
  }
  .mb200-smt {
    margin-bottom: 100px;
  }
  .ml200-smt {
    margin-left: 100px;
  }
}
.mb1em {
  margin-bottom: 1em;
}

/* -----------------------------
 text-align
----------------------------- */
.ta_r {
  text-align: right;
}

.ta_c {
  text-align: center;
}

.ta_l {
  text-align: left;
}

@media print, screen and (max-width: 767px) {
  .ta_r-smt {
    text-align: right;
  }
  .ta_c-smt {
    text-align: center;
  }
  .ta_l-smt {
    text-align: left;
  }
}
/* -----------------------------
 font-size
----------------------------- */
.fz10 {
  font-size: 1rem;
}

.fz11 {
  font-size: 1.1rem;
}

.fz12 {
  font-size: 1.2rem;
}

.fz13 {
  font-size: 1.3rem;
}

.fz14 {
  font-size: 1.4rem;
}

.fz15 {
  font-size: 1.5rem;
}

.fz16 {
  font-size: 1.6rem;
}

.fz17 {
  font-size: 1.7rem;
}

.fz18 {
  font-size: 1.8rem;
}

.fz19 {
  font-size: 1.9rem;
}

.fz20 {
  font-size: 2rem;
}

.fz21 {
  font-size: 2.1rem;
}

.fz22 {
  font-size: 2.2rem;
}

.fz23 {
  font-size: 2.3rem;
}

.fz24 {
  font-size: 2.4rem;
}

.fz25 {
  font-size: 2.5rem;
}

.fz26 {
  font-size: 2.6rem;
}

.fz27 {
  font-size: 2.7rem;
}

.fz28 {
  font-size: 2.8rem;
}

.fz29 {
  font-size: 2.9rem;
}

.fz30 {
  font-size: 3rem;
}

.fz31 {
  font-size: 3.1rem;
}

.fz32 {
  font-size: 3.2rem;
}

.fz33 {
  font-size: 3.3rem;
}

.fz34 {
  font-size: 3.4rem;
}

.fz35 {
  font-size: 3.5rem;
}

.fz36 {
  font-size: 3.6rem;
}

.fz37 {
  font-size: 3.7rem;
}

.fz38 {
  font-size: 3.8rem;
}

.fz39 {
  font-size: 3.9rem;
}

.fz40 {
  font-size: 4rem;
}

.fz41 {
  font-size: 4.1rem;
}

.fz42 {
  font-size: 4.2rem;
}

.fz43 {
  font-size: 4.3rem;
}

.fz44 {
  font-size: 4.4rem;
}

.fz45 {
  font-size: 4.5rem;
}

.fz46 {
  font-size: 4.6rem;
}

.fz47 {
  font-size: 4.7rem;
}

.fz48 {
  font-size: 4.8rem;
}

.fz49 {
  font-size: 4.9rem;
}

.fz50 {
  font-size: 5rem;
}

@media print, screen and (max-width: 767px) {
  .fz10-smt {
    font-size: 1rem;
  }
  .fz11-smt {
    font-size: 1.1rem;
  }
  .fz12-smt {
    font-size: 1.2rem;
  }
  .fz13-smt {
    font-size: 1.3rem;
  }
  .fz14-smt {
    font-size: 1.4rem;
  }
  .fz15-smt {
    font-size: 1.5rem;
  }
  .fz16-smt {
    font-size: 1.6rem;
  }
  .fz17-smt {
    font-size: 1.7rem;
  }
  .fz18-smt {
    font-size: 1.8rem;
  }
  .fz19-smt {
    font-size: 1.9rem;
  }
  .fz20-smt {
    font-size: 2rem;
  }
  .fz21-smt {
    font-size: 2.1rem;
  }
  .fz22-smt {
    font-size: 2.2rem;
  }
  .fz23-smt {
    font-size: 2.3rem;
  }
  .fz24-smt {
    font-size: 2.4rem;
  }
  .fz25-smt {
    font-size: 2.5rem;
  }
  .fz26-smt {
    font-size: 2.6rem;
  }
  .fz27-smt {
    font-size: 2.7rem;
  }
  .fz28-smt {
    font-size: 2.8rem;
  }
  .fz29-smt {
    font-size: 2.9rem;
  }
  .fz30-smt {
    font-size: 3rem;
  }
  .fz31-smt {
    font-size: 3.1rem;
  }
  .fz32-smt {
    font-size: 3.2rem;
  }
  .fz33-smt {
    font-size: 3.3rem;
  }
  .fz34-smt {
    font-size: 3.4rem;
  }
  .fz35-smt {
    font-size: 3.5rem;
  }
  .fz36-smt {
    font-size: 3.6rem;
  }
  .fz37-smt {
    font-size: 3.7rem;
  }
  .fz38-smt {
    font-size: 3.8rem;
  }
  .fz39-smt {
    font-size: 3.9rem;
  }
  .fz40-smt {
    font-size: 4rem;
  }
  .fz41-smt {
    font-size: 4.1rem;
  }
  .fz42-smt {
    font-size: 4.2rem;
  }
  .fz43-smt {
    font-size: 4.3rem;
  }
  .fz44-smt {
    font-size: 4.4rem;
  }
  .fz45-smt {
    font-size: 4.5rem;
  }
  .fz46-smt {
    font-size: 4.6rem;
  }
  .fz47-smt {
    font-size: 4.7rem;
  }
  .fz48-smt {
    font-size: 4.8rem;
  }
  .fz49-smt {
    font-size: 4.9rem;
  }
  .fz50-smt {
    font-size: 5rem;
  }
}
/* -----------------------------
 line-height
----------------------------- */
.lh10 {
  line-height: 1;
}

.lh11 {
  line-height: 1.1;
}

.lh12 {
  line-height: 1.2;
}

.lh13 {
  line-height: 1.3;
}

.lh14 {
  line-height: 1.4;
}

.lh15 {
  line-height: 1.5;
}

.lh16 {
  line-height: 1.6;
}

.lh17 {
  line-height: 1.7;
}

.lh18 {
  line-height: 1.8;
}

.lh19 {
  line-height: 1.9;
}

.lh20 {
  line-height: 2;
}

.lh21 {
  line-height: 2.1;
}

.lh22 {
  line-height: 2.2;
}

.lh23 {
  line-height: 2.3;
}

.lh24 {
  line-height: 2.4;
}

.lh25 {
  line-height: 2.5;
}

.lh26 {
  line-height: 2.6;
}

.lh27 {
  line-height: 2.7;
}

.lh28 {
  line-height: 2.8;
}

.lh29 {
  line-height: 2.9;
}

.lh30 {
  line-height: 3;
}

.lh31 {
  line-height: 3.1;
}

.lh32 {
  line-height: 3.2;
}

.lh33 {
  line-height: 3.3;
}

.lh34 {
  line-height: 3.4;
}

.lh35 {
  line-height: 3.5;
}

.lh36 {
  line-height: 3.6;
}

.lh37 {
  line-height: 3.7;
}

.lh38 {
  line-height: 3.8;
}

.lh39 {
  line-height: 3.9;
}

.lh40 {
  line-height: 4;
}

.lh41 {
  line-height: 4.1;
}

.lh42 {
  line-height: 4.2;
}

.lh43 {
  line-height: 4.3;
}

.lh44 {
  line-height: 4.4;
}

.lh45 {
  line-height: 4.5;
}

.lh46 {
  line-height: 4.6;
}

.lh47 {
  line-height: 4.7;
}

.lh48 {
  line-height: 4.8;
}

.lh49 {
  line-height: 4.9;
}

.lh50 {
  line-height: 5;
}

/* -----------------------------
 max-width
----------------------------- */
.mw100 {
  max-width: 100px;
}

.mw110 {
  max-width: 110px;
}

.mw120 {
  max-width: 120px;
}

.mw130 {
  max-width: 130px;
}

.mw140 {
  max-width: 140px;
}

.mw150 {
  max-width: 150px;
}

.mw160 {
  max-width: 160px;
}

.mw170 {
  max-width: 170px;
}

.mw180 {
  max-width: 180px;
}

.mw190 {
  max-width: 190px;
}

.mw200 {
  max-width: 200px;
}

.mw210 {
  max-width: 210px;
}

.mw220 {
  max-width: 220px;
}

.mw230 {
  max-width: 230px;
}

.mw240 {
  max-width: 240px;
}

.mw250 {
  max-width: 250px;
}

.mw260 {
  max-width: 260px;
}

.mw270 {
  max-width: 270px;
}

.mw280 {
  max-width: 280px;
}

.mw290 {
  max-width: 290px;
}

.mw300 {
  max-width: 300px;
}

.mw310 {
  max-width: 310px;
}

.mw320 {
  max-width: 320px;
}

.mw330 {
  max-width: 330px;
}

.mw340 {
  max-width: 340px;
}

.mw350 {
  max-width: 350px;
}

.mw360 {
  max-width: 360px;
}

.mw370 {
  max-width: 370px;
}

.mw380 {
  max-width: 380px;
}

.mw390 {
  max-width: 390px;
}

.mw400 {
  max-width: 400px;
}

.mw410 {
  max-width: 410px;
}

.mw420 {
  max-width: 420px;
}

.mw430 {
  max-width: 430px;
}

.mw440 {
  max-width: 440px;
}

.mw450 {
  max-width: 450px;
}

.mw460 {
  max-width: 460px;
}

.mw470 {
  max-width: 470px;
}

.mw480 {
  max-width: 480px;
}

.mw490 {
  max-width: 490px;
}

.mw500 {
  max-width: 500px;
}

.mw510 {
  max-width: 510px;
}

.mw520 {
  max-width: 520px;
}

.mw530 {
  max-width: 530px;
}

.mw540 {
  max-width: 540px;
}

.mw550 {
  max-width: 550px;
}

.mw560 {
  max-width: 560px;
}

.mw570 {
  max-width: 570px;
}

.mw580 {
  max-width: 580px;
}

.mw590 {
  max-width: 590px;
}

.mw600 {
  max-width: 600px;
}

.mw610 {
  max-width: 610px;
}

.mw620 {
  max-width: 620px;
}

.mw630 {
  max-width: 630px;
}

.mw640 {
  max-width: 640px;
}

.mw650 {
  max-width: 650px;
}

.mw660 {
  max-width: 660px;
}

.mw670 {
  max-width: 670px;
}

.mw680 {
  max-width: 680px;
}

.mw690 {
  max-width: 690px;
}

.mw700 {
  max-width: 700px;
}

.mw710 {
  max-width: 710px;
}

.mw720 {
  max-width: 720px;
}

.mw730 {
  max-width: 730px;
}

.mw740 {
  max-width: 740px;
}

.mw750 {
  max-width: 750px;
}

.mw760 {
  max-width: 760px;
}

.mw770 {
  max-width: 770px;
}

.mw780 {
  max-width: 780px;
}

.mw790 {
  max-width: 790px;
}

.mw800 {
  max-width: 800px;
}

.mw810 {
  max-width: 810px;
}

.mw820 {
  max-width: 820px;
}

.mw830 {
  max-width: 830px;
}

.mw840 {
  max-width: 840px;
}

.mw850 {
  max-width: 850px;
}

.mw860 {
  max-width: 860px;
}

.mw870 {
  max-width: 870px;
}

.mw880 {
  max-width: 880px;
}

.mw890 {
  max-width: 890px;
}

.mw900 {
  max-width: 900px;
}

.mw910 {
  max-width: 910px;
}

.mw920 {
  max-width: 920px;
}

.mw930 {
  max-width: 930px;
}

.mw940 {
  max-width: 940px;
}

.mw950 {
  max-width: 950px;
}

.mw960 {
  max-width: 960px;
}

.mw970 {
  max-width: 970px;
}

.mw980 {
  max-width: 980px;
}

.mw990 {
  max-width: 990px;
}

.mw1000 {
  max-width: 1000px;
}

.mw1010 {
  max-width: 1010px;
}

.mw1020 {
  max-width: 1020px;
}

.mw1030 {
  max-width: 1030px;
}

.mw1040 {
  max-width: 1040px;
}

.mw1050 {
  max-width: 1050px;
}

.mw1060 {
  max-width: 1060px;
}

.mw1070 {
  max-width: 1070px;
}

.mw1080 {
  max-width: 1080px;
}

/* ===========================================================================

/assets/sass/common/_item.scss

=========================================================================== */
/* -----------------------------
 clearfix
----------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
  min-height: 1%;
}

/* for IE-mac */
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* -----------------------------
 hide
----------------------------- */
@media print, screen and (min-width: 1021px) {
  .pc-hide {
    display: none;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1020px) {
  .tablet-hide {
    display: none;
  }
}
@media print, screen and (max-width: 767px) {
  .smt-hide {
    display: none;
  }
}
/* -----------------------------
 text-indent
----------------------------- */
.ind-1em {
  text-indent: -1em;
  padding-left: 1em;
}

/* -----------------------------
 hover
----------------------------- */
@media print, screen and (min-width: 1021px) {
  .h-alpha {
    transition: 0.2s opacity ease-in;
  }
  .h-alpha:hover {
    opacity: 0.6;
  }
}

@media print, screen and (min-width: 1021px) {
  .hover-line:hover {
    text-decoration: underline;
  }
}

/* ANIMATION */
.delay-03 {
  --anim-delay: 0.3s;
}
.delay-05 {
  --anim-delay: 0.5s;
}
.delay-06 {
  --anim-delay: 0.6s;
}
.delay-08 {
  --anim-delay: 0.8s;
}
.delay-1 {
  --anim-delay: 1s;
}

.js-animate-fig {
  overflow: hidden;
  position: relative;
}
.js-animate-fig::before {
  background: var(--gray);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  transform: translateX(-100%);
  width: 100%;
  z-index: 1;
  top: 0;
  left: 0;
}
.js-animate-fig img {
  opacity: 0;
  display: block;
  position: relative;
  z-index: 0;
}
.js-animate-fig.inView {
  opacity: 1;
}
.js-animate-fig.inView::before {
  transition: all 0.8s var(--anim-delay, 0.1s) cubic-bezier(0.47, 0, 0.745, 0.715);
  transform: translateX(100%);
}
.js-animate-fig.inView img {
  transition: all 0.5s calc(var(--anim-delay, 0.1s) + 0.3s) cubic-bezier(0.47, 0, 0.745, 0.715);
  opacity: 1;
}
.js-animate.blur {
  filter: blur(14px);
  opacity: 0;
}
.js-animate.blur.active {
  transition: all 1.2s 0.2s cubic-bezier(0.47, 0, 0.745, 0.715);
  filter: blur(0);
  opacity: 1;
}
.js-animate-fadeup {
  opacity: 0;
  transform: translateY(10%);
  --anim-delay:0.1s;
}
.js-animate-fadeup.inView {
  opacity: 1;
  transform: translateY(0);
  transition: transform 0.9s var(--anim-delay) cubic-bezier(0.37, 0, 0.63, 1), opacity 0.8s calc(var(--anim-delay) + 0.1s) cubic-bezier(0.61, 1, 0.88, 1);
}
.js-animate-fadeup:nth-of-type(2) {
  --anim-delay:0.5s;
}
.js-animate-fadeup:nth-of-type(3) {
  --anim-delay:0.9s;
}
.js-animate-fadeup:nth-of-type(4) {
  --anim-delay:1.3s;
}
.js-animate-fadeleft {
  opacity: 0;
  transform: translateX(-30px);
}
.js-animate-fadeleft.inView {
  opacity: 1;
  transform: translateX(0);
  transition: transform 0.6s 0.1s cubic-bezier(0.37, 0, 0.63, 1), opacity 0.8s 0.2s cubic-bezier(0.61, 1, 0.88, 1);
}
.js-animate-blk {
  overflow: hidden;
  position: relative;
  --anim-delay: 0s;
}
.js-animate-blk::before {
  background-color: #f3f3f3;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  transform: translateX(-100%);
  width: 100%;
  z-index: 1;
  top: 0;
  left: 0;
}
.js-animate-blk .js-blk-in {
  opacity: 0;
  display: block;
  position: relative;
  z-index: 0;
}
.js-animate-blk.inView::before {
  animation: 0.8s var(--anim-delay, 0s) cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  animation-name: blockBg;
}
.js-animate-blk.inView .js-blk-in {
  animation: 0.5s calc(var(--anim-delay, 0s) + 0.3s) cubic-bezier(0.47, 0, 0.745, 0.715) forwards;
  animation-name: fade_in;
}
.js-animate-blk:nth-of-type(2)::before {
  transition-delay: 0.3s;
}
.js-animate-blk:nth-of-type(2) .js-blk-in {
  transition-delay: 0.6s;
}
.js-animate-blk:nth-of-type(2)::before {
  transition-delay: 0.6s;
}
.js-animate-blk:nth-of-type(2) .js-blk-in {
  transition-delay: 0.9s;
}
.js-animate.fadein {
  opacity: 0;
}
.js-animate.fadein.inView {
  animation: 0.9s var(--anim-delay, 0s) cubic-bezier(0.37, 0, 0.63, 1) forwards, 0.8s calc(var(--anim-delay, 0s) + 0.1s) cubic-bezier(0.61, 1, 0.88, 1) forwards;
  animation-name: fade_in, slide_in_y;
}
.js-animate.fadein-left {
  opacity: 0;
}
.js-animate.fadein-left.inView {
  animation: 0.8s var(--anim-delay, 0.1s) cubic-bezier(0.37, 0, 0.63, 1) forwards;
  animation-name: fade_in, slide_in_x_left;
}
.js-animate.fadein-blur {
  opacity: 0;
  filter: blur(100px);
}
.js-animate.fadein-blur.inView {
  animation: 0.8s var(--anim-delay, 0.1s) cubic-bezier(0.37, 0, 0.63, 1) both;
  animation-name: fade_in, blur;
}

@media print, screen and (max-width: 767px) {
  .js-blk-in img {
    width: 100%;
  }
}
@keyframes fade_in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade_out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes slide_in_y {
  0% {
    transform: translateY(5vw);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes slide_in_x_left {
  0% {
    transform: translateX(-1.5em);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slide_in_x {
  0% {
    transform: translateX(25vw);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slide_in_x_left2 {
  0% {
    transform: translateX(-50vw);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slide_in_x2 {
  0% {
    transform: translateX(50vw);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes bg_slide_x {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0 0;
  }
}
@keyframes slide_in_down {
  0% {
    transform: translateY(-5vw);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes blur {
  0% {
    filter: blur(1em);
  }
  100% {
    filter: blur(0);
  }
}
@keyframes mvslider {
  0% {
    filter: blur(20px);
    transform: scale(1.2);
  }
  10% {
    filter: blur(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes dash {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes svgfill {
  0% {
    stroke-dashoffset: 2000;
    fill: transparent;
  }
  40% {
    stroke-dashoffset: 2000;
  }
  100% {
    stroke-dashoffset: 0;
    fill: #55A540;
  }
}
@keyframes blockBg {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes hoverOv {
  0% {
    clip-path: polygon(50% 50%, 100% 0, 50% 50%, 0% 100%);
  }
  100% {
    clip-path: polygon(0% 0%, 100% 0, 100% 100%, 0% 100%);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes zoom {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.1);
  }
}
@keyframes mv-fadeIn {
  0% {
    transform: scale(1.15);
    filter: blur(5px);
  }
  100% {
    transform: scale(1);
    filter: blur(0);
  }
}
@keyframes bgGra {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
body {
  font-family: var(--font-gothic);
  color: var(--color-def);
  line-height: var(--lineheight);
  font-feature-settings: "pkna";
  -webkit-font-smoothing: antialiased;
  letter-spacing: var(--letterspace-def);
  font-size: var(--size-def);
  font-weight: 500;
  background-color: var(--body-bg);
  --wp--style--root--padding-right:0;
  --wp--style--root--padding-left:0;
}
@media print, screen and (max-width: 1020px) {
  body {
    --header-h: 60px;
    --header-top:0;
    --gotop:40px;
    --gnav-btn-h: calc(var(--gnav-btn-w) * 0.6);
  }
}
@media print, screen and (max-width: 767px) {
  body {
    --wp--preset--font-size--size-16: var(--size-16);
    --wp--preset--font-size--size-18: var(--size-18);
    --wp--preset--font-size--size-20: var(--size-20);
    --wp--preset--font-size--size-22: var(--size-22);
    --wp--preset--font-size--size-24: var(--size-24);
    --wp--preset--font-size--size-26: var(--size-26);
    --wp--preset--font-size--size-28: var(--size-28);
    --wp--preset--font-size--size-32: var(--size-32);
    --wp--preset--font-size--size-36: var(--size-36);
    --wp--preset--font-size--size-42: var(--size-42);
  }
}

.table {
  color: var(--color-def);
}

ul,
ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

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

.inter {
  font-family: var(--font-inter);
}

.mincho {
  font-family: var(--font-mincho);
}

.gothic {
  font-family: var(--font-gothic);
}

b, strong, .bold {
  font-weight: 700;
}

.light {
  font-weight: 300;
}

.regular {
  font-weight: 400;
}

.medium {
  font-weight: 500;
}

.semi {
  font-weight: 600;
}

.t-vtl {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-feature-settings: "pkna";
  white-space: nowrap;
}

.container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-pad);
  padding-right: var(--container-pad);
}
@media print, screen and (min-width: 768px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
    max-width: var(--container);
  }
  .container .-wide {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    max-width: var(--container-wide);
  }
  .container-slim {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    max-width: var(--container-slim);
  }
}
@media print, screen and (max-width: 767px) {
  .container-fluid {
    padding-left: var(--container-pad);
    padding-right: var(--container-pad);
  }
  .container-wide {
    padding-left: var(--container-pad);
    padding-right: var(--container-pad);
  }
  .container-slim {
    padding-left: var(--container-pad);
    padding-right: var(--container-pad);
  }
}

h1, h2, h3, h4, h5 {
  line-height: var(--lineheight-title);
  font-feature-settings: "palt" 1;
}

.d-flex {
  display: flex;
}

a:hover {
  opacity: 0.75;
}

a img:hover {
  opacity: 0.75;
}
a img.js-img-on:hover {
  opacity: 1;
}

.h-alpha {
  display: inline-block;
  transition: opacity 0.3s ease;
}
.h-alpha:hover {
  opacity: 0.75;
}

video {
  max-width: 100%;
  height: auto;
}

.image-full img {
  max-width: none;
  width: 100%;
}

.ilblk {
  display: inline-block;
}

@media print, screen and (min-width: 1021px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media print, screen and (min-width: 768px) {
  .spacer {
    height: 10rem;
  }
}
@media print, screen and (max-width: 767px) {
  .spacer {
    height: 4em;
  }
}
.header {
  position: fixed;
  left: 0;
  top: var(--header-top);
  z-index: 101;
  width: 100%;
  transition: background-color 0.3s 0.2s ease-in-out, top 0.3s 0.2s ease-in-out;
  pointer-events: none;
  --container:calc(var(--container-pad) * 2 + 1306px);
  z-index: 10;
}
.header > .container {
  position: relative;
  z-index: 110;
  padding: 0;
}
.header-row {
  background-color: var(--header-bg);
  display: flex;
  align-items: center;
  height: var(--header-h);
  position: relative;
  padding: 10px clamp(10px, 2.34375%, 30px);
}
.header-logo {
  position: relative;
  z-index: 18;
  pointer-events: initial;
  flex-basis: clamp(220px, 34.4563552833%, 450px);
}
.header-logo .custom-logo-link {
  display: block;
  line-height: 1;
  height: 100%;
}
.header-logo img {
  object-fit: contain;
}
.header-btn {
  flex-shrink: 0;
}
@media print, screen and (max-width: 1020px) {
  .header-top {
    display: none;
  }
  .header-row {
    padding: 0.5em 0;
  }
  .header-logo {
    padding-left: 1em;
  }
  .header-logo img {
    height: calc(var(--header-h) - 1em);
    object-fit: contain;
  }
}
@media print, screen and (min-width: 1021px) {
  .header-top {
    color: #fff;
  }
  .header-row {
    border-radius: 10px;
  }
}

.gnav {
  pointer-events: initial;
}
.gnav-menu {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 2em;
  list-style: none;
}
.gnav-menu-btn {
  flex-basis: 80px;
  --btn-size: 10px;
  --btn-h:32px;
  --btn-color: #231815;
  --btn-border: #231815;
  --btn-round: 5px;
  --btn-bg:#f19ebc;
  display: grid;
  align-items: center;
  gap: 15px;
}
.gnav-menu-btn .btn {
  padding: 0.5em 0;
}
.gnav-menu-btn .-faq {
  --btn-bg:#26bdab;
}
.gnav-item {
  height: 100%;
}
.gnav-item .-link {
  display: grid;
  grid-template-rows: auto 30px;
  height: 100%;
  justify-content: center;
  text-align: center;
  gap: 10px;
  align-items: flex-end;
}
.gnav-item .-icon {
  align-items: center;
}
.gnav-item .-title span {
  display: block;
}
@media print, screen and (max-width: 1020px) {
  .gnav {
    display: none;
    background-color: var(--gnav-bg);
    position: fixed;
    right: 0;
    top: var(--header-h);
    height: calc(100vh - var(--header-h));
    width: clamp(260px, 40%, 600px);
    pointer-events: none;
    transition: transform 0.3s 0.2s ease-in-out;
    z-index: 105;
    overflow-y: scroll;
    transform: scaleX(0);
    transform-origin: right;
    display: flex;
    justify-content: center;
    padding: 1.5em 1em;
    overflow: scroll;
  }
  .gnav-item a {
    color: var(--gnav-color);
    transition: color 0.3s, background-color 0.3s;
  }
  .gnav-btn {
    position: fixed;
    right: 1em;
    top: 1.25em;
    z-index: 20;
    width: var(--gnav-btn-w);
    height: var(--gnav-btn-h);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    pointer-events: initial;
    flex-shrink: 0;
  }
  .gnav-btn .-line {
    width: 100%;
    height: 1px;
    background-color: var(--gnav-btn-bg);
    display: block;
  }
  .gnav-btn .-line::before, .gnav-btn .-line::after {
    content: "";
    background-color: var(--gnav-btn-bg);
    display: block;
    position: absolute;
    height: 1px;
    left: 0;
    top: 0;
    width: 100%;
    transition: all 0.3s ease-in;
  }
  .gnav-btn .-line::after {
    top: 100%;
  }
  .gnav-menu {
    gap: 1em 1.5em;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .gnav-seminar {
    margin-top: 1em;
  }
  .gnav-seminar br {
    display: none;
  }
}
@media print, screen and (min-width: 1021px) {
  .gnav {
    margin-left: auto;
    flex-grow: 1;
    flex-basis: 600px;
    height: 100%;
    line-height: 1.3333333333;
    flex-shrink: 0;
  }
  .gnav-row {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1.25em;
    height: 100%;
  }
  .gnav-seminar {
    align-self: flex-start;
    border-radius: 0 0 5px 5px;
  }
  .gnav-menu .menu-item:nth-of-type(n + 2)::before {
    content: " ｜ ";
  }
}
@media screen and (orientation: landscape) {
  .gnav-item:nth-of-type(n + 2) {
    border-top: none;
  }
}

.onscroll {
  --header-bg:rgba(255, 255, 255, 0.859);
}

.navopen {
  --header-bg:#fff;
}
.navopen .fnav {
  pointer-events: initial;
  transform: scaleY(1);
}
.navopen .gnav {
  pointer-events: initial;
  transform: scaleY(1);
}
.navopen .gnav-btn .-line {
  background-color: transparent;
}
.navopen .gnav-btn .-line::before, .navopen .gnav-btn .-line::after {
  background-color: var(--gnav-btn-active);
}
.navopen .gnav-btn .-line::before {
  transform: rotate(35deg);
  top: 0.75em;
}
.navopen .gnav-btn .-line::after {
  top: 0.75em;
  transform: rotate(-35deg);
}

.fnav-row {
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
.fnav-menu a {
  color: #fff;
}
@media print, screen and (max-width: 1020px) {
  .fnav {
    display: block;
    background-color: var(--gnav-bg);
    position: fixed;
    right: 0;
    top: var(--header-h);
    height: calc(100vh - var(--header-h));
    width: 100vmin;
    pointer-events: none;
    transition: transform 0.3s 0.2s ease-in-out;
    z-index: 105;
    overflow-y: scroll;
    transform: scaleX(0);
    transform-origin: right;
    padding: 1.5em 1em;
  }
  .fnav-menu {
    font-size: var(--size-22);
    width: 100%;
  }
  .fnav-menu a {
    color: var(--primary);
    display: block;
  }
  .fnav-menu > li {
    border-bottom: 1px var(--primary) solid;
    padding: 0.5em;
  }
  .fnav .sub-menu {
    display: none;
  }
}
@media print, screen and (min-width: 1021px) {
  .fnav-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    font-size: 15px;
  }
  .fnav-menu > li {
    flex-basis: calc(25% - 1em);
  }
  .fnav-menu .sub-menu {
    font-size: 12px;
  }
  .fnav-menu .sub-menu a::before {
    content: "- ";
  }
}
@media print, screen and (min-width: 1021px) {
  .fnav {
    flex-basis: 600px;
  }
}

.footer {
  position: relative;
  padding: clamp(2em, 8%, 80px) 0 calc(1em + env(safe-area-inset-bottom));
  background-color: var(--footer-bg);
  color: #fff;
}
.footer-logo a {
  width: 253px;
  display: block;
  max-width: 100%;
}
.footer-logo a img {
  width: 100%;
}
.footer-row {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.5em 2em;
}
.footer .copy {
  border-top: 1px #fff solid;
  padding-top: 1em;
  margin-top: 2em;
}
.footer .copy-row {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  gap: 0.5em 1em;
}
@media print, screen and (max-width: 767px) {
  .footer-logo {
    width: 10em;
    margin-left: auto;
    margin-right: auto;
  }
}

.pagetop {
  position: fixed;
  z-index: 5;
  right: 5%;
  bottom: 5%;
}
@media print, screen and (max-width: 1020px) {
  .pagetop {
    width: 3em;
  }
}

.edit-content h2 {
  display: flex;
  font-size: var(--size-26);
  border-bottom: 1px var(--primary) solid;
  margin: 3em 0 1em;
  padding-bottom: 10px;
  gap: 0.5em;
}
.edit-content h2::before {
  content: "";
  background: url(../images/theme/title-icon.svg) center no-repeat;
  background-size: contain;
  width: 2em;
  aspect-ratio: 52/28;
  display: inline-block;
  flex-shrink: 0;
}
.edit-content h3 {
  display: flex;
  font-size: var(--size-22);
  margin: 3em 0 1em;
  gap: 0.5em;
}
.edit-content h3::before {
  content: "";
  background: url(../images/theme/title-icon-2.svg) center no-repeat;
  background-size: contain;
  width: 2em;
  aspect-ratio: 52/28;
  display: inline-block;
  flex-shrink: 0;
}
.edit-content a {
  color: var(--primary);
  text-decoration: underline;
}

.page-mv {
  position: relative;
}
.page-mv-front {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: var(--header-h);
}
.page-mv-img img {
  max-width: none;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.page-mv-title {
  letter-spacing: 0;
  line-height: 1.1;
  text-align: center;
  opacity: 0;
  color: #fff;
}
.page-mv-jp {
  display: block;
  margin-bottom: 0.2em;
}
@media print, screen and (max-width: 1020px) {
  .page-mv {
    padding-top: var(--header-h);
  }
}
@media print, screen and (min-width: 1021px) {
  .page-mv-img img {
    aspect-ratio: 1366/450;
  }
}
.page-nav {
  --btn-h: calc(110em / 18);
  --btn-w: 100%;
  --btn-radius: 10px;
  --arrow-w: calc(40em / 18);
}
.page-nav-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25em;
}
.page-nav-row .-item {
  flex-basis: var(--nav-w, 200px);
  flex-grow: 1;
  position: relative;
}
.page-nav-row .-item .btn-text {
  display: grid;
  text-align: center;
  gap: 5px;
}
.page-nav-row .-item .-arrow {
  line-height: 1;
  position: absolute;
  bottom: 0;
  width: var(--arrow-w);
  display: inline-block;
  left: calc(50% - var(--arrow-w) / 2);
  transform: translateY(50%);
  border: 0;
}
.page-nav-row .-item .-arrow .path {
  fill: var(--accent);
  stroke-width: 0;
}
.page-content {
  background-color: var(--content-bg, #fff);
  padding: 6.8181818182%;
  border-radius: 20px;
  margin-bottom: clamp(3em, 10%, 100px);
}
.page-row {
  display: grid;
  gap: 2em 4.2105263158%;
}
@media print, screen and (min-width: 768px) {
  .page-row {
    grid-template-columns: clamp(150px, 21.0526315789%, 200px) auto;
  }
  .page-row-main {
    order: 2;
  }
  .page-row .aside {
    order: 1;
  }
}

.wf-active .page-mv-title {
  --anim-delay: 0.3s;
  animation: fade_in 0.5s var(--anim-delay, 0s) var(--easing-def) forwards, slide_in_y 0.8s calc(var(--anim-delay, 0s) + 0.1s) var(--easing-def) forwards;
}

.main-row {
  margin-bottom: var(--sec-bottom);
  padding-bottom: var(--sec-bottom);
}
.main-aside {
  order: 1;
}
@media print, screen and (min-width: 768px) {
  .main-row {
    grid-template-columns: clamp(120px, 18%, 180px) auto;
  }
  .main-content {
    order: 2;
  }
}

.title-sec {
  margin-bottom: var(--title-margin, 1em);
  line-height: var(--title-lh, 1.2);
}
.title-sec .-text {
  display: grid;
  text-align: var(--title-align, center);
}
.title-sec .-text::before {
  content: "";
  display: block;
  background: url(../images/theme/title-icon.svg) center no-repeat;
  background-size: contain;
  width: 54px;
  height: 30px;
  margin-left: auto;
  margin-right: auto;
}

.text-link-arrow a {
  display: flex;
  align-items: baseline;
}
.text-link-arrow a::after {
  content: "";
  width: 2.2222222222em;
  height: 0.5555555556em;
  display: block;
  flex-shrink: 0;
  border-bottom: var(--btn-color) 1px solid;
  border-right: var(--btn-color) 1px solid;
  transform: skewX(45deg);
  transition: 0.3s ease-in-out;
}
.text-link-arrow a:hover::after {
  transform: skewX(45deg) translateX(15%);
}

.sec {
  padding: var(--sec-top, clamp(3em, 8.3333333333%, 10rem)) 0 var(--sec-bottom, clamp(3em, 8.3333333333%, 10rem));
}
.sec-inner {
  max-width: var(--sec-inner, 1000px);
  margin-left: auto;
  margin-right: auto;
}
.sec:first-of-type {
  --sec-top:0;
}

.breadcrumb {
  margin: 1.5em 0 1.5em;
}
.breadcrumb-list {
  display: flex;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}
.breadcrumb-list a {
  color: var(--primary);
  text-decoration: underline;
}
.breadcrumb-list li:nth-of-type(n + 2) {
  display: flex;
  align-items: center;
}
.breadcrumb-list li:nth-of-type(n + 2)::before {
  content: ">";
  margin: 0 0.5em;
  line-height: 1;
}
.pager {
  --pager-bg: #fff;
  --pager-color: var(--primary);
}
.pager-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  color: var(--primary);
  line-height: 1.2;
  flex-wrap: wrap;
  gap: 15px;
}
.pager-nav .page-numbers {
  background-color: var(--pager-bg);
  color: var(--pager-color);
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px var(--primary) solid;
}
.pager-nav .page-numbers:hover, .pager-nav .page-numbers.current {
  --pager-bg: var(--primary);
  --pager-color: #fff;
}
.pager-nav .page-numbers.prev {
  transform: scaleX(-100%);
}
.pager-nav .-arrow {
  width: 1em;
  height: 0.5em;
  display: inline-block;
  line-height: 1;
}
.pager-nav .-arrow svg {
  vertical-align: super;
}
.pager-nav .-arrow .path {
  fill: var(--pager-color);
  stroke: none;
  stroke-linecap: unset;
  stroke-linejoin: unset;
}
.pager-btn .arrow {
  width: 2.2222222222em;
  height: 0.8333333333em;
  border-bottom: 1px var(--btn-color) solid;
  position: relative;
  margin-left: auto;
}
.pager-btn .arrow::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 1px;
  transform: rotate(-45deg);
  background-color: var(--btn-color);
  transform-origin: bottom right;
}
@media print, screen and (max-width: 767px) {
  .pager {
    margin: 3em auto;
  }
}
.aside-archive {
  --arrow-deg: rotate(0);
}
.aside-archive-head {
  margin-bottom: 0.5em;
}
.aside-archive .-year {
  background-color: var(--primary);
  color: #fff;
  display: flex;
  align-items: center;
  gap: 1em;
  min-height: 2.7777777778em;
  padding: 0.5em 1em;
  border-radius: 5px;
  --btn-color:#fff;
  position: relative;
}
.aside-archive .-year .-arrow {
  width: 0.4em;
  height: 0.8em;
  position: absolute;
  line-height: 0.8;
  display: inline-block;
  right: 1em;
  transform: var(--arrow-deg);
  transition: 0.3s;
}
.aside-archive .-month-item {
  border-bottom: 2px #ccc dotted;
}
.aside-archive .-month-item .-link {
  display: flex;
  align-items: center;
  padding: 0.5em 1em;
  --btn-color:var(--primary);
  position: relative;
}
.aside-archive .-month-item .-arrow {
  width: 0.4em;
  height: 0.8em;
  position: absolute;
  line-height: 0.8;
  display: inline-block;
  right: 1em;
  transform: var(--arrow-deg);
  transition: 0.3s;
}
.aside-category .-item {
  border-bottom: 2px #ccc dotted;
}
.aside-category .-item .-link {
  display: flex;
  align-items: center;
  padding: 0.5em 1em;
  --btn-color:var(--primary);
  position: relative;
}
.aside-category .-item .-arrow {
  width: 0.4em;
  height: 0.8em;
  position: absolute;
  line-height: 0.8;
  display: inline-block;
  right: 1em;
  transform: var(--arrow-deg);
  transition: 0.3s;
}

.post-link-wrap {
  display: flex;
  gap: 1em;
  justify-content: space-between;
  align-items: center;
}
.post-link.back {
  color: var(--primary);
  text-decoration: underline;
  flex-shrink: 0;
}
.post-link.prev {
  transform: scaleX(-100%);
}
.post-link .-pager {
  --pager-bg:transparent;
  --pager-color: var(--primary);
  background-color: var(--pager-bg);
  color: var(--pager-color);
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px var(--primary) solid;
}
.post-link .-pager:hover, .post-link .-pager.current {
  --pager-bg: var(--primary);
  --pager-color: #fff;
}
.post-link .-pager .-arrow {
  width: 1em;
  height: 0.5em;
  display: inline-block;
  line-height: 1;
}
.post-link .-pager .-arrow svg {
  vertical-align: super;
}
.post-link .-pager .-arrow .path {
  fill: var(--pager-color);
  stroke: none;
  stroke-linecap: unset;
  stroke-linejoin: unset;
}

.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-left {
  text-align: left;
}

.path {
  fill: none;
  stroke: var(--btn-color);
  stroke-linecap: round;
  stroke-linejoin: round;
}

.btn {
  position: relative;
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, color 0.3s ease, color 0.3s ease, color 0.3s ease;
  line-height: 1;
  cursor: pointer;
  border: 1px var(--btn-border) solid;
  color: var(--btn-color);
  font-size: var(--btn-size);
  background-color: var(--btn-bg);
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: var(--btn-align, center);
  max-width: var(--btn-w);
  width: 100%;
  height: var(--btn-h);
  border-radius: var(--btn-round);
  font-weight: inherit;
  padding: 0.5em 1em;
  letter-spacing: 0.04em;
}
.btn-wide {
  --btn-w: calc(390em / 16);
}
.btn-s {
  --btn-w: calc(160em / 16);
  --btn-h: calc(40em / 16);
}
.btn-left {
  justify-content: flex-start;
  text-align: left;
}
.btn-primary {
  --btn-color:#fff;
  --btn-bg:var(--primary);
}
.btn-back {
  --btn-border: transparent;
  --btn-border-h: transparent;
  --btn-color: var(--primary);
  --btn-color-h: var(--color-def);
  flex-direction: row-reverse;
  gap: 0 1em;
}
.btn-back .btn-arrow {
  transform: scaleX(-1);
}
.btn-arrow {
  width: 0.4em;
  height: 0.8em;
  position: absolute;
  line-height: 0.8;
  display: inline-block;
  right: 1em;
}
.btn:hover {
  opacity: 1;
  border-color: var(--btn-border-h, var(--btn-bg-h));
  color: var(--btn-color-h);
  background-color: var(--btn-bg-h);
}
.btn:hover .path {
  stroke: var(--btn-color-h);
}
.btn-wrap {
  display: flex;
  justify-content: var(--btn-align, center);
}
@media print, screen and (max-width: 767px) {
  .btn {
    min-width: 6em;
  }
  .btn-wide {
    --btn-width: 100%;
    max-width: 24.375em;
  }
}

.wp-block-button {
  flex-basis: var(--btn-w);
  line-height: 1.2;
  letter-spacing: 0;
  --btn-bg-h: var(--primary);
  --btn-color-h: #fff;
}
.wp-block-button__link {
  min-height: var(--btn-h);
  display: flex;
  align-items: center;
  gap: 0 1em;
  color: var(--btn-color);
  transition: 0.3s ease-in-out;
}
.wp-block-button__link .arrow {
  width: 2.2222222222em;
  height: 0.5555555556em;
  border-bottom: 1px var(--btn-color) solid;
  position: relative;
  margin-left: auto;
  transition: 0.3s ease-in-out;
}
.wp-block-button__link .arrow::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 1px;
  transform: rotate(-45deg);
  background-color: var(--btn-color);
  transform-origin: bottom right;
}
.wp-block-button__link:hover {
  background-color: var(--btn-bg-h) !important;
  color: var(--btn-color-h) !important;
}
.wp-block-button__link:hover .arrow {
  --btn-color: var(--btn-color-h);
  transform: scaleX(1.2);
}
.wp-block-button.is-style-more {
  --btn-w: calc(225em / 18);
  --btn-bg-h: transparent;
  --btn-color-h: var(--main);
}
.wp-block-button.is-style-more .arrow {
  height: 0.8333333333em;
}
.wp-block-button.is-style-more.no-line {
  --btn-w: auto;
}
.wp-block-button.is-style-more.no-line .wp-block-button__link {
  border: none;
}
.wp-block-button.-back .wp-block-button__link {
  flex-direction: row-reverse;
}
.wp-block-button.-back .arrow {
  transform: scaleX(-1);
}

.page-content .title-marker mark {
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  line-height: 2;
}

.map-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.map-wrap::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 62.5%;
}
.map-wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.movie-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.movie-wrap::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 62.5%;
}
.movie-wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.size-10 {
  font-size: var(--size-10);
}
.size-12 {
  font-size: var(--size-12);
}
.size-14 {
  font-size: var(--size-14);
}
.size-16 {
  font-size: var(--size-16);
}
.size-18 {
  font-size: var(--size-18);
}
.size-20 {
  font-size: var(--size-20);
}
.size-21 {
  font-size: var(--size-21);
}
.size-22 {
  font-size: var(--size-22);
}
.size-24 {
  font-size: var(--size-24);
}
.size-25 {
  font-size: var(--size-25);
}
.size-26 {
  font-size: var(--size-26);
}
.size-27 {
  font-size: var(--size-27);
}
.size-28 {
  font-size: var(--size-28);
}
.size-30 {
  font-size: var(--size-30);
}
.size-32 {
  font-size: var(--size-32);
}
.size-34 {
  font-size: var(--size-34);
}
.size-35 {
  font-size: var(--size-35);
}
.size-36 {
  font-size: var(--size-36);
}
.size-38 {
  font-size: var(--size-38);
}
.size-40 {
  font-size: var(--size-40);
}
.size-42 {
  font-size: var(--size-42);
}
.size-48 {
  font-size: var(--size-48);
}
.size-50 {
  font-size: var(--size-50);
}
.size-70 {
  font-size: var(--size-70);
}
.size-72 {
  font-size: var(--size-72);
}
.size-80 {
  font-size: var(--size-80);
}
.size-84 {
  font-size: var(--size-84);
}
.size-120 {
  font-size: var(--size-120);
}
.size-150 {
  font-size: var(--size-150);
}

.lh-35 {
  line-height: 2.1875;
}

.fc-primary {
  color: var(--primary);
}
.fc-secondary {
  color: var(--secondary);
}
.fc-accent {
  color: var(--accent);
}
.fc-red {
  color: var(--red);
}

.bd-rounded {
  border-radius: var(--round, 2rem);
}

.ltsp-0 {
  letter-spacing: 0;
}
.ltsp-25 {
  letter-spacing: 0.025em;
}
.ltsp-50 {
  letter-spacing: 0.05em;
}
.ltsp-75 {
  letter-spacing: 0.075em;
}
.ltsp-100 {
  letter-spacing: 0.1em;
}

.d-ilblk {
  display: inline-block;
}

.marker-ol mark {
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  line-height: 2;
  border: 1px var(--ol-color, #ed97bc) solid;
}

.marker mark {
  box-decoration-break: clone;
  line-height: 2;
  -webkit-box-decoration-break: clone;
  background: linear-gradient(transparent 70%, #ccddd9 70%) !important;
}

.gra-text {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.list-circle li {
  display: flex;
  margin-bottom: 0.5em;
}
.list-circle li::before {
  content: "●";
  color: var(--list-color, var(--accent));
  flex-shrink: 0;
}
.list-disc {
  list-style: disc;
  padding-left: 1.2em;
}
.list-disc li::marker {
  color: var(--list-color, var(--primary));
}
.list-ind1 li {
  padding-left: 1em;
  text-indent: -1em;
}
.list-num li {
  display: flex;
  gap: 0.5em;
  align-items: baseline;
}
.list-num li > *:first-child {
  flex-shrink: 0;
}

ul.is-style-bullet-square {
  padding-left: 0;
}
ul.is-style-bullet-square li {
  display: flex;
  gap: 0.3em;
}
ul.is-style-bullet-square li::before {
  content: "■";
  color: var(--list-color, var(--primary));
  flex-shrink: 0;
}
ul.is-style-bullet-circle {
  padding-left: 0;
}
ul.is-style-bullet-circle li {
  display: flex;
  gap: 0.3em;
}
ul.is-style-bullet-circle li::before {
  content: "●";
  color: var(--list-color, var(--primary));
  flex-shrink: 0;
}
ul.is-style-bullet-check {
  padding-left: 0;
}
ul.is-style-bullet-check li {
  display: flex;
  gap: 0.3em;
  line-height: 2.5454545455;
  align-items: baseline;
}
ul.is-style-bullet-check li::before {
  content: "";
  background: url(../images/theme/check.webp) no-repeat;
  background-size: contain;
  width: 1.4545454545em;
  height: 1.4545454545em;
  flex-shrink: 0;
  transform: translateY(25%);
}
@media print, screen and (max-width: 767px) {
  ul.is-style-bullet-check li {
    line-height: 2;
    margin-bottom: 1em;
  }
}
ul.is-style-default li::before {
  content: "・";
  flex-shrink: 0;
}

.row {
  display: grid;
  gap: var(--gap-h, 1.5em) var(--gap-w, clamp(1em, 5.8333333333%, 7rem));
  align-items: var(--row-align, normal);
}
@media print, screen and (min-width: 768px) {
  .row {
    grid-template-columns: var(--gridcol, repeat(2, 1fr));
  }
}

.grid-3 {
  --gridcol: repeat(3, 1fr);
}

.gap-20 {
  --gap-w: clamp(1rem, calc(20% / 10), 2rem);
}

.gallery {
  display: grid;
  gap: var(--gap-h, clamp(1.5em, 16.6666666667%, 5rem)) var(--gap-w, clamp(1.5em, 16.6666666667%, 5rem));
  grid-template-columns: repeat(var(--grids, 2), 1fr);
}
.gallery-columns-3 {
  --grids: 3;
}

.d-grid {
  display: grid;
}

.jc-c {
  justify-content: center;
}
.jc-sb {
  justify-content: space-between;
}

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

.accordion-inner {
  height: 0;
  padding: 0;
  overflow: hidden;
  transition: 0.5s;
}

.tab__panel-box {
  display: none;
}
.tab__panel-box img {
  opacity: 0;
}
.tab__panel-box.is-show {
  display: block;
}
.tab__panel-box.is-show img {
  animation: 0.8s var(--anim-delay, 0s) cubic-bezier(0.37, 0, 0.63, 1) forwards;
  animation-name: fade_in;
}

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

.table-wrap {
  --table-gap:20px;
}
.table-line {
  position: relative;
  left: calc(var(--table-gap) * -0.5) !important;
  width: calc(100% + var(--table-gap));
}
.table-line table {
  border-collapse: separate;
  border-spacing: calc(var(--table-gap) * 1) 0;
}
.table-line table th, .table-line table td {
  border: none;
  border-bottom: 1px #c1c1c1 solid;
  padding: 1.5em 0;
}
.table-line table th:first-child, .table-line table td:first-child {
  font-weight: 500;
}
.table-line table tr:first-of-type th, .table-line table tr:first-of-type td {
  border-top: 1px #c1c1c1 solid;
}
.timetable table {
  border-style: solid;
}
.timetable table thead {
  background-color: var(--table-head);
}
.timetable table th, .timetable table td {
  padding: 1em 0.5em;
}

.row-wide {
  display: grid;
  gap: 2em 4.0476190476%;
}
@media print, screen and (max-width: 767px) {
  .row-wide {
    grid-template-columns: repeat(1, 1fr);
  }
  .row-wide .-col {
    padding-left: 1em;
    padding-right: 1em;
  }
}
@media print, screen and (min-width: 768px) {
  .row-wide {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .row-wide .-img {
    order: var(--img-order, 0);
  }
  .row-wide .-col {
    order: var(--col-order, 1);
  }
  .row-wide .-col-inner {
    max-width: 500px;
    margin-left: var(--col-left, 0);
  }
  .row-wide.-img-r {
    --img-order:2;
    --col-left: auto;
  }
}

.contact-sec {
  padding: 0 0 var(--sec-bottom);
}

.form-fields {
  border: 2px var(--primary) solid;
  border-radius: 10px;
  overflow: hidden;
}
.form-item {
  position: relative;
}
.form-item::after {
  background-image: linear-gradient(to right, #ccc 2px, transparent 2px);
  background-size: 10px 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
  content: "";
  display: inline-block;
  height: 2px;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.form-item:last-of-type::after {
  content: none;
}
.form-row {
  display: grid;
  min-height: 80px;
  align-items: center;
}
.form-head {
  background-color: var(--primary);
  color: #fff;
  display: flex;
  align-items: start;
  padding: 1em;
  padding-top: 1.75em;
  gap: 0.1em;
  flex-wrap: wrap;
  align-self: stretch;
  line-height: 1;
}
.form-head .-reqd {
  background-color: var(--accent);
  font-size: var(--size-12);
  color: var(--primary);
  display: inline-block;
  padding: 4px 0.5em;
  border-radius: 1em;
  line-height: 1;
}
.form-detail {
  padding: 1em;
}
.form-bottom .btn-wrap {
  flex-direction: column;
  margin-top: 1em;
}
.form-bottom .btn {
  margin-left: auto;
  margin-right: auto;
}
.form-check {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 1em;
}
.form-check .wpcf7-list-item {
  padding: 0;
  margin: 0;
}
.form-fill {
  background-color: #e6e6e6;
  border-radius: 0;
  height: 2.5em;
  padding: 0.5em 1em;
  line-height: 1.25;
  width: 100%;
  max-width: 100%;
  font-size: var(--size-def);
  border-radius: 5px;
}
.form-fill:placeholder-shown {
  color: #999999;
}
.form-fill::-webkit-input-placeholder {
  color: #999999;
}
.form-fill:-moz-placeholder {
  color: #999999;
  opacity: 1;
}
.form-fill::-moz-placeholder {
  color: #999999;
  opacity: 1;
}
.form-fill:-ms-input-placeholder {
  color: #999999;
}
.form-fill.-fat {
  height: 18.75em;
  padding: 1em;
}
.form-fill.short {
  max-width: 430px;
}
.form-policy {
  margin: 2em auto var(--sec-bottom);
}
.form-btns {
  display: flex;
  justify-content: center;
  gap: 1.5em;
  flex-wrap: wrap;
  margin-top: 4em;
}
.form-submit {
  --btn-border: var(--primary);
  text-align: left;
  padding-left: 1.8em;
}
.form-submit-wrap {
  --btn-w:calc(360em / 18);
  --btn-h:calc(72em / 18);
  --btn-color-h: #fff;
  width: 100%;
  max-width: var(--btn-w);
  position: relative;
  border-radius: calc(var(--btn-h) / 2);
}
.form-submit-wrap .arrow {
  width: 2.2222222222em;
  height: 0.5555555556em;
  border-bottom: 1px var(--btn-color) solid;
  position: absolute;
  top: calc(var(--btn-h) / 2);
  right: 2em;
  margin-left: auto;
}
.form-submit-wrap .arrow::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 1px;
  transform: rotate(-45deg);
  background-color: var(--btn-color);
  transform-origin: bottom right;
}
.form-submit-wrap:hover .arrow {
  border-bottom: 1px var(--btn-color-h) solid;
}
.form-submit-wrap:hover .arrow::before {
  background-color: var(--btn-color-h);
}
.form-submit-wrap .wpcf7-spinner {
  position: absolute;
  top: calc(100% + 1em);
}
.form-desc {
  margin-top: clamp(2em, 10%, 100px);
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .form-head {
    gap: 0 1em;
  }
  .form-item {
    grid-template-columns: repeat(1, 1fr);
  }
  .form-label {
    padding: 1em 0;
  }
  .form-col {
    padding-top: 0;
  }
  .form-rows > li {
    padding: 1.5em 0;
  }
  .form-rows > li dl {
    flex-wrap: wrap;
    gap: 0.5em;
  }
  .form-rows > li dl dt, .form-rows > li dl dd {
    width: 100%;
  }
  .form-control.w-150, .form .wpcf7-text.w-150, .form .wpcf7-select.w-150, .form .wpcf7-textarea.w-150 {
    max-width: 80px;
  }
  .form-control.w-100, .form .wpcf7-text.w-100, .form .wpcf7-select.w-100, .form .wpcf7-textarea.w-100 {
    max-width: 60px;
  }
}
@media print, screen and (min-width: 768px) {
  .form-row {
    grid-template-columns: 200px auto;
    gap: 0;
  }
  .form .input-m {
    width: 560px;
  }
}

.wpcf7-acceptance .wpcf7-list-item {
  display: block;
  margin: 0;
}
.wpcf7-acceptance label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
  width: 100%;
  cursor: pointer;
  position: relative;
}
.wpcf7-acceptance label input {
  position: relative;
  z-index: 2;
}
.wpcf7 .wpcf7-submit:disabled {
  background-color: #878787;
}

.page-template-page-home {
  --body-bg:#fff;
}
.page-template-page-home .mv {
  --mv-h: 730px;
  --container: 100%;
  position: relative;
  overflow: hidden;
}
.page-template-page-home .mv::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(to right, var(--primary) 20%, #f1f1f1 30%, var(--accent) 70%, var(--primary) 80%);
  background-size: 500% auto;
  animation: bgGra 3s ease-in-out infinite alternate;
}
.page-template-page-home .mv-img {
  height: var(--mv-h);
  width: 100%;
  opacity: 0;
}
.page-template-page-home .mv-img img {
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 7s 1s ease-out;
}
.page-template-page-home .mv .is-active .mv-img img {
  transition-delay: 0s;
  transform: scale(1.05);
}
.page-template-page-home .mv .is-active .mv-text {
  animation: mv-fadeIn 1s 0.5s var(--easing-def) both;
}
.page-template-page-home .mv-text {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: grid;
  align-items: center;
  justify-content: center;
  color: #fff;
  --lineheight-title:calc(54 / 24);
  letter-spacing: 0.04em;
}
.page-template-page-home .mv-text .-scroll {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
.page-template-page-home .mv-text .-scroll-arrow {
  display: block;
  text-align: center;
}
.page-template-page-home .mv-title {
  opacity: 0;
  padding: 1em;
}
.page-template-page-home .mv .splide__pagination {
  border-top: 3px var(--accent) solid;
  gap: 1em;
  padding-top: 0.5em;
  position: relative;
  z-index: 5;
}
.page-template-page-home .mv .splide__pagination__page {
  width: 12px;
  height: 12px;
  background-color: var(--pager-bg, #cbcbcb);
  border-radius: 50%;
}
.page-template-page-home .mv .splide__pagination__page.is-active {
  --pager-bg: var(--accent);
}
@media (max-width: 980px) and (orientation: portrait) {
  .page-template-page-home .mv {
    --mv-h: 100vh;
  }
}
.page-template-page-home .mv.-loaded::after {
  animation: fade_out 0.5s var(--easing-def) forwards;
}
.page-template-page-home .mv.-loaded .mv-img {
  animation: fade_in 0.5s 0.3s var(--easing-def) forwards;
}
.page-template-page-home .mv.-loaded .mv-title {
  animation: blur 1.2s 0.6s var(--easing-slide) forwards, fade_in 1.2s 0.6s var(--easing-slide) forwards;
}

.top-title {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  line-height: 1.2;
  margin-bottom: clamp(2em, 6.3636363636%, 70px);
}
.top-title .-text {
  text-align: center;
  align-self: end;
}
.top-title .-text span {
  display: block;
}
.top-title .-icon {
  text-align: right;
  padding-right: 1.5em;
}
.top-hoiku {
  --sec-top:clamp(3em, calc(80% / 10), 80px);
  --sec-bottom:clamp(3em, calc(150% / 10), 150px);
}
.top-hoiku-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2em clamp(1em, 4.5454545455%, 50px);
}
.top-hoiku-row .-img {
  flex-basis: clamp(300px, 50%, 550px);
  flex-grow: 1;
}
.top-hoiku-row .-col {
  flex-basis: clamp(300px, 45.4545454545%, 500px);
  line-height: 1.75;
  flex-grow: 1;
}
.top-about {
  background-color: var(--primary);
  --sec-top:clamp(3em, calc(50% / 10), 50px);
  --sec-bottom:clamp(3em, calc(120% / 10), 120px);
  color: #fff;
  --btn-color:var(--primary);
  --btn-bg:var(--accent);
  --btn-color-h:var(--primary);
  --btn-bg-h:var(--accent);
  --btn-border: var(--accent);
}
.top-about-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2em clamp(1em, 4.5454545455%, 50px);
}
.top-about-row .-img {
  flex-basis: clamp(300px, 50%, 550px);
  flex-grow: 1;
}
.top-about-row .-col {
  flex-basis: clamp(300px, 45.4545454545%, 500px);
  line-height: 1.75;
  flex-grow: 1;
}
@media print, screen and (min-width: 768px) {
  .top-about-row {
    flex-direction: row-reverse;
  }
}
.top-diary {
  --sec-top:clamp(3em, calc(80% / 10), 80px);
  --sec-bottom:clamp(3em, calc(80% / 10), 80px);
}
.top-diary .diary-list {
  display: grid;
  gap: 1.5em;
  grid-template-columns: repeat(2, 1fr);
}
.top-diary .diary-list-item img {
  border-radius: 10px;
}
.top-diary .diary-list-item .-date {
  margin-top: 1em 0 0.5em;
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .top-diary .diary-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media print, screen and (min-width: 768px) {
  .top-diary .diary-list {
    grid-template-columns: repeat(4, 1fr);
  }
}
.top-news {
  --sec-top:clamp(3em, calc(110% / 10), 110px);
  --sec-bottom:clamp(3em, calc(120% / 10), 120px);
  position: relative;
  background: url(../images/theme/bg-dot.svg) center repeat;
  --btn-color:var(--primary);
  --btn-bg:var(--accent);
  --btn-color-h:var(--primary);
  --btn-bg-h:var(--accent);
  --btn-border: var(--accent);
}
.top-news-box {
  background-color: var(--primary);
  border-radius: 20px;
  padding: clamp(2em, 5.4545454545%, 60px) 1em;
  color: #fff;
}
.top-news-box .-inner {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.top-news .container {
  position: relative;
  padding-top: 2em;
}
.top-news .news-list {
  margin: 1.5em auto 2.5em;
}
.top-news .news-list-item {
  border-bottom: #fff 1px dotted;
}
@media print, screen and (min-width: 768px) {
  .top-news .top-title {
    position: relative;
    grid-template-columns: 1fr;
  }
  .top-news .top-title .-icon {
    position: absolute;
    right: 1em;
  }
}
.top-bnrs {
  background-color: #dfede4;
  --sec-top:clamp(3em, calc(120% / 10), 120px);
  --sec-bottom:clamp(3em, calc(80% / 10), 120px);
}
.top-bnrs-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  --btn-w: 360px;
  --btn-h: 110px;
  --btn-round:10px;
}
.top-bnrs-row .-item {
  flex-basis: 200px;
  flex-grow: 1;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}
.top-bnrs-row .btn-text {
  display: grid;
  text-align: center;
}

.about-greeting .-row {
  display: grid;
  gap: 2em 5.2631578947%;
}
@media print, screen and (min-width: 768px) {
  .about-greeting .-row {
    grid-template-columns: auto 320px;
  }
}
.about-guidance .-row {
  display: grid;
  gap: 2em 3.1578947368%;
}
.about-guidance .-box {
  border: 3px var(--guide-border, var(--primary)) solid;
  padding: 1.5em;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}
.about-guidance .-box .btn-wrap {
  width: 100%;
}
.about-guidance .-box-tel {
  color: var(--guide-border);
  line-height: 1;
}
.about-guidance .-tel {
  --guide-border: #e85734;
}
@media print, screen and (min-width: 768px) {
  .about-guidance .-row {
    grid-template-columns: 1fr 1fr;
  }
}
.about-about .-outline {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: repeat(1, 39.4736842105% auto);
}
.about-about .-outline-wide {
  grid-column: 1/3;
  padding-left: 1.5em;
}
.about-about .-outline dt, .about-about .-outline dd {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px var(--primary) solid;
}
.about-about .-outline dt:last-of-type, .about-about .-outline dd:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.about-about .-outline dt {
  padding-left: 1.5em;
  color: var(--primary);
}

.hoiku-philosophy .-row, .hoiku-goals .-row {
  display: grid;
  gap: 2em 5.2631578947%;
}
@media print, screen and (min-width: 768px) {
  .hoiku-philosophy .-row, .hoiku-goals .-row {
    grid-template-columns: auto 320px;
  }
}
.hoiku-policy .-row {
  display: grid;
  gap: 2em 5.2631578947%;
}
@media print, screen and (min-width: 768px) {
  .hoiku-policy .-row {
    grid-template-columns: 320px auto;
  }
  .hoiku-policy .-row .-col {
    order: 2;
  }
  .hoiku-policy .-row .-img {
    order: 1;
  }
}
.hoiku-schedule .-head {
  display: flex;
  gap: 1em 5.2631578947%;
  justify-content: center;
}
.hoiku-schedule .-head span {
  flex-basis: 207px;
  color: #fff;
  background-color: var(--primary);
  text-align: center;
  border-radius: 10px;
  line-height: 1.6666666667;
}
.hoiku-schedule .-head span.-above {
  color: var(--primary);
  background-color: #dfede4;
}
.hoiku-schedule .-flow {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  --flow-col: 240px;
  --flow-time:180px;
}
.hoiku-schedule .-flow-item {
  display: flex;
  position: relative;
  gap: 0 20px;
}
.hoiku-schedule .-flow-item .-col {
  flex-basis: var(--flow-col);
  min-height: var(--flow-col);
}
.hoiku-schedule .-flow-item .-col.-img {
  padding-top: 0;
}
.hoiku-schedule .-flow-item .-col.-text {
  padding-top: calc(var(--flow-col) / 2 - 1em);
}
.hoiku-schedule .-flow-item .-time {
  flex-basis: var(--flow-time);
  flex-shrink: 0;
  padding-left: 10px;
  text-align: center;
  line-height: 1;
  position: relative;
  z-index: 1;
  display: grid;
  justify-content: center;
  grid-template-rows: 1fr auto 1fr;
  gap: 1em 0;
}
.hoiku-schedule .-flow-item .-time p {
  background-color: #fff;
}
.hoiku-schedule .-flow-item .-time::before, .hoiku-schedule .-flow-item .-time::after {
  background-color: var(--primary);
  width: 1px;
  content: "";
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.hoiku-schedule .-flow-item:nth-of-type(odd) .-col.-text {
  order: 0;
  text-align: right;
}
.hoiku-schedule .-flow-item:nth-of-type(odd) .-col.-time {
  order: 1;
}
.hoiku-schedule .-flow-item:nth-of-type(odd) .-col.-img {
  order: 2;
}
.hoiku-schedule .-flow-item:first-of-type .-col {
  min-height: 0;
}
.hoiku-schedule .-flow-item:first-of-type .-text {
  padding-top: 1.5em;
  padding-bottom: 3em;
}
.hoiku-schedule .-flow-item:first-of-type .-time {
  grid-template-rows: 0 auto 1fr;
}
.hoiku-schedule .-flow-item:first-of-type .-time::before {
  background-color: transparent;
}
.hoiku-schedule .-flow-item:last-of-type .-time::after {
  background-color: transparent;
}
.hoiku-schedule .-flow-end {
  display: inline-block;
  background-color: var(--primary);
  color: #fff;
  border-radius: 10px;
  max-width: 350px;
  width: 100%;
  line-height: 1.6666666667;
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .hoiku-schedule .-flow {
    width: 90vw;
    --flow-time: 90px;
    --flow-col: calc(40vw - 45px);
  }
  .hoiku-schedule .-flow-item {
    gap: 0;
  }
  .hoiku-schedule .-flow .-time {
    padding-left: 0;
  }
  .hoiku-schedule .-flow .-time p {
    font-size: var(--size-24);
  }
}
.hoiku-event .-row {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  gap: 1.5em 5.3333333333%;
}
.hoiku-event .-row-img {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 10%;
}
.hoiku-event .-row-img .-img {
  margin-top: -10px;
}
.hoiku-event .-row-img .-img figure {
  position: relative;
}
.hoiku-event .-row-img .-img figure img {
  border-radius: 10px;
}
.hoiku-event .-row-img .-img figure figcaption {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}
.hoiku-event .-row-img .-icon {
  display: flex;
}
.hoiku-event .-row-img .-icon-1 {
  align-items: center;
}
.hoiku-event .-row-img .-icon-1 figure {
  transform: translate(-17px, -10px);
}
.hoiku-event .-row-img .-icon-2 {
  align-items: center;
}
.hoiku-event .-row-img .-icon-2 figure {
  transform: translate(-17px, -10px);
}
.hoiku-event .-row-img .-icon-3 {
  align-items: center;
  justify-content: flex-end;
}
.hoiku-event .-row-img .-icon-3 figure {
  transform: translate(0, -10px);
}
.hoiku-event .-row-img .-icon-4 {
  align-items: center;
}
.hoiku-event .-row-img .-icon-4 figure {
  transform: translate(-10px, -10px);
}
.hoiku-event-table table {
  width: 100%;
}
.hoiku-event-table table th {
  font-size: var(--size-30);
  color: var(--month);
  text-align: right;
  width: 90px;
}
.hoiku-event-table table td {
  padding-left: 1.2em;
}
.hoiku-event-table table tr:not(:last-of-type) {
  border-bottom: 1px #c4c4c4 solid;
}
.hoiku-event-table .-month-no {
  font-size: 150%;
}
.hoiku-event-table .-month-4 {
  --month:#9a418a;
}
.hoiku-event-table .-month-5 {
  --month:#e2488b;
}
.hoiku-event-table .-month-6 {
  --month:#e44a60;
}
.hoiku-event-table .-month-7 {
  --month:#e54b2c;
}
.hoiku-event-table .-month-8 {
  --month:#f2a135;
}
.hoiku-event-table .-month-9 {
  --month:#000000;
}
.hoiku-event-table .-month-10 {
  --month:#9ec648;
}
.hoiku-event-table .-month-11 {
  --month:#009d54;
}
.hoiku-event-table .-month-12 {
  --month:#00a19d;
}
.hoiku-event-table .-month-1 {
  --month:#00a3e7;
}
.hoiku-event-table .-month-2 {
  --month:#1774ba;
}
.hoiku-event-table .-month-3 {
  --month:#443b8b;
}
.hoiku-event-list {
  display: flex;
  gap: 0.25em 1em;
  font-size: var(--size-18);
  flex-wrap: wrap;
  line-height: 1.7222222222;
}
.hoiku-event-list li::before {
  content: "●";
  color: var(--month);
}
@media print, screen and (min-width: 768px) {
  .hoiku-event .-row {
    grid-template-columns: repeat(2, 1fr);
  }
}
.hoiku-facility .-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.hoiku-facility .-row .-img {
  position: relative;
}
.hoiku-facility .-row .-text {
  background-color: var(--primary);
  color: #fff;
  padding: 1em;
  border-radius: 10px;
}
.hoiku-facility .-row .-text-4 {
  flex-basis: 390px;
  margin-top: -40px;
}
.hoiku-facility .-row .-img img {
  border-radius: 10px;
}
.hoiku-facility .-row .-img-4 {
  flex-basis: 100%;
  display: flex;
  gap: 0 5.2631578947%;
  flex-wrap: wrap;
  justify-content: center;
}
.hoiku-facility .-row .-img-4 figure {
  flex-basis: 47.3684210526%;
}
@media print, screen and (min-width: 768px) {
  .hoiku-facility .-row {
    gap: 2em;
  }
  .hoiku-facility .-row .-img-1 {
    display: grid;
    grid-template-columns: 69.8947368421% auto;
    align-items: flex-end;
  }
  .hoiku-facility .-row .-img-3 {
    flex-basis: 580px;
    margin-left: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: flex-end;
  }
  .hoiku-facility .-row .-img-3 figure {
    order: 2;
  }
  .hoiku-facility .-row .-img-5 {
    flex-basis: 795px;
    margin-left: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: flex-end;
  }
  .hoiku-facility .-row .-img-5 figure {
    order: 2;
  }
  .hoiku-facility .-row .-text {
    padding: 1em 30px;
  }
  .hoiku-facility .-row .-text-1 {
    margin-left: -1em;
    margin-bottom: 40px;
  }
  .hoiku-facility .-row .-text-3 {
    margin-right: -2em;
    margin-bottom: 40px;
    order: 1;
    position: relative;
  }
  .hoiku-facility .-row .-text-5 {
    margin-right: -3em;
    margin-bottom: 40px;
    order: 1;
    position: relative;
  }
}

.fairy_house-about .-row {
  display: grid;
  gap: 2em 5.2631578947%;
}
@media print, screen and (min-width: 768px) {
  .fairy_house-about .-row {
    grid-template-columns: 420px auto;
  }
  .fairy_house-about .-row:nth-of-type(even) .-col {
    order: 2;
  }
  .fairy_house-about .-row:nth-of-type(even) .-img {
    order: 1;
  }
}
.fairy_house-outline .-outline {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: repeat(1, 39.4736842105% auto);
}
.fairy_house-outline .-outline-wide {
  grid-column: 1/3;
  padding-left: 1.5em;
}
.fairy_house-outline .-outline dt, .fairy_house-outline .-outline dd {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px var(--primary) solid;
}
.fairy_house-outline .-outline dt:last-of-type, .fairy_house-outline .-outline dd:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
.fairy_house-outline .-outline dt {
  padding-left: 1.5em;
  color: var(--primary);
}
.fairy_house-guidance .-row {
  display: grid;
  gap: 2em 3.1578947368%;
}
.fairy_house-guidance .-box {
  border: 3px var(--guide-border, var(--primary)) solid;
  padding: 1.5em;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}
.fairy_house-guidance .-box .btn-wrap {
  width: 100%;
}
.fairy_house-guidance .-box-tel {
  color: var(--guide-border);
  line-height: 1;
}
.fairy_house-guidance .-tel {
  --guide-border: #e85734;
}
@media print, screen and (min-width: 768px) {
  .fairy_house-guidance .-row {
    grid-template-columns: 1fr 1fr;
  }
}
.fairy_house-schedule .-head {
  display: flex;
  gap: 1em 5.2631578947%;
  justify-content: center;
}
.fairy_house-schedule .-head span {
  flex-basis: 207px;
  color: #fff;
  background-color: var(--primary);
  text-align: center;
  border-radius: 10px;
  line-height: 1.6666666667;
}
.fairy_house-schedule .-head span.-above {
  color: var(--primary);
  background-color: #dfede4;
}
.fairy_house-schedule .-flow {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  --flow-col: 240px;
  --flow-time:180px;
}
.fairy_house-schedule .-flow-item {
  display: flex;
  position: relative;
  gap: 0 20px;
}
.fairy_house-schedule .-flow-item .-col {
  flex-basis: var(--flow-col);
  min-height: var(--flow-col);
}
.fairy_house-schedule .-flow-item .-col.-img {
  padding-top: 0;
}
.fairy_house-schedule .-flow-item .-col.-text {
  padding-top: calc(var(--flow-col) / 2 - 1em);
}
.fairy_house-schedule .-flow-item .-time {
  flex-basis: var(--flow-time);
  flex-shrink: 0;
  padding-left: 10px;
  text-align: center;
  line-height: 1;
  position: relative;
  z-index: 1;
  display: grid;
  justify-content: center;
  grid-template-rows: 1fr auto 1fr;
  gap: 1em 0;
}
.fairy_house-schedule .-flow-item .-time p {
  background-color: #fff;
}
.fairy_house-schedule .-flow-item .-time::before, .fairy_house-schedule .-flow-item .-time::after {
  background-color: var(--primary);
  width: 1px;
  content: "";
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.fairy_house-schedule .-flow-item:nth-of-type(odd) .-col.-text {
  order: 0;
  text-align: right;
}
.fairy_house-schedule .-flow-item:nth-of-type(odd) .-col.-time {
  order: 1;
}
.fairy_house-schedule .-flow-item:nth-of-type(odd) .-col.-img {
  order: 2;
}
.fairy_house-schedule .-flow-item:first-of-type .-col {
  min-height: 0;
}
.fairy_house-schedule .-flow-item:first-of-type .-text {
  padding-top: 1.5em;
  padding-bottom: 3em;
}
.fairy_house-schedule .-flow-item:first-of-type .-time {
  grid-template-rows: 0 auto 1fr;
}
.fairy_house-schedule .-flow-item:first-of-type .-time::before {
  background-color: transparent;
}
.fairy_house-schedule .-flow-item:last-of-type .-time::after {
  background-color: transparent;
}
.fairy_house-schedule .-flow-end {
  display: inline-block;
  background-color: var(--primary);
  color: #fff;
  border-radius: 10px;
  max-width: 350px;
  width: 100%;
  line-height: 1.6666666667;
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .fairy_house-schedule .-flow {
    width: 90vw;
    --flow-time: 90px;
    --flow-col: calc(40vw - 45px);
  }
  .fairy_house-schedule .-flow-item {
    gap: 0;
  }
  .fairy_house-schedule .-flow .-time {
    padding-left: 0;
  }
  .fairy_house-schedule .-flow .-time p {
    font-size: var(--size-24);
  }
}
.fairy_house-event .-row {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  gap: 1.5em 5.3333333333%;
}
.fairy_house-event .-row-img {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 10%;
}
.fairy_house-event .-row-img .-img {
  margin-top: -10px;
}
.fairy_house-event .-row-img .-img figure {
  position: relative;
}
.fairy_house-event .-row-img .-img figure img {
  border-radius: 10px;
}
.fairy_house-event .-row-img .-img figure figcaption {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}
.fairy_house-event .-row-img .-icon {
  display: flex;
}
.fairy_house-event .-row-img .-icon-1 {
  align-items: center;
}
.fairy_house-event .-row-img .-icon-1 figure {
  transform: translate(-17px, -10px);
}
.fairy_house-event .-row-img .-icon-2 {
  align-items: center;
}
.fairy_house-event .-row-img .-icon-2 figure {
  transform: translate(-17px, -10px);
}
.fairy_house-event .-row-img .-icon-3 {
  align-items: center;
  justify-content: flex-end;
}
.fairy_house-event .-row-img .-icon-3 figure {
  transform: translate(0, -10px);
}
.fairy_house-event .-row-img .-icon-4 {
  align-items: center;
}
.fairy_house-event .-row-img .-icon-4 figure {
  transform: translate(-10px, -10px);
}
.fairy_house-event-table table {
  width: 100%;
}
.fairy_house-event-table table th {
  font-size: var(--size-30);
  color: var(--month);
  text-align: right;
  width: 90px;
}
.fairy_house-event-table table td {
  padding-left: 1.2em;
}
.fairy_house-event-table table tr:not(:last-of-type) {
  border-bottom: 1px #c4c4c4 solid;
}
.fairy_house-event-table .-month-no {
  font-size: 150%;
}
.fairy_house-event-table .-month-4 {
  --month:#9a418a;
}
.fairy_house-event-table .-month-5 {
  --month:#e2488b;
}
.fairy_house-event-table .-month-6 {
  --month:#e44a60;
}
.fairy_house-event-table .-month-7 {
  --month:#e54b2c;
}
.fairy_house-event-table .-month-8 {
  --month:#f2a135;
}
.fairy_house-event-table .-month-9 {
  --month:#000000;
}
.fairy_house-event-table .-month-10 {
  --month:#9ec648;
}
.fairy_house-event-table .-month-11 {
  --month:#009d54;
}
.fairy_house-event-table .-month-12 {
  --month:#00a19d;
}
.fairy_house-event-table .-month-1 {
  --month:#00a3e7;
}
.fairy_house-event-table .-month-2 {
  --month:#1774ba;
}
.fairy_house-event-table .-month-3 {
  --month:#443b8b;
}
.fairy_house-event-list {
  display: flex;
  gap: 0.25em 1em;
  font-size: var(--size-18);
  flex-wrap: wrap;
  line-height: 1.7222222222;
}
.fairy_house-event-list li::before {
  content: "●";
  color: var(--month);
}
@media print, screen and (min-width: 768px) {
  .fairy_house-event .-row {
    grid-template-columns: repeat(2, 1fr);
  }
}
.fairy_house-facility .-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.fairy_house-facility .-row .-img {
  position: relative;
}
.fairy_house-facility .-row .-text {
  background-color: var(--primary);
  color: #fff;
  padding: 1em;
  border-radius: 10px;
}
.fairy_house-facility .-row .-text-4 {
  flex-basis: 390px;
  margin-top: -40px;
}
.fairy_house-facility .-row .-img img {
  border-radius: 10px;
}
.fairy_house-facility .-row .-img-4 {
  flex-basis: 100%;
  display: flex;
  gap: 0 5.2631578947%;
  flex-wrap: wrap;
  justify-content: center;
}
.fairy_house-facility .-row .-img-4 figure {
  flex-basis: 47.3684210526%;
}
@media print, screen and (min-width: 768px) {
  .fairy_house-facility .-row {
    gap: 2em;
  }
  .fairy_house-facility .-row .-img-1 {
    display: grid;
    grid-template-columns: 69.8947368421% auto;
    align-items: flex-end;
  }
  .fairy_house-facility .-row .-img-3 {
    flex-basis: 580px;
    margin-left: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: flex-end;
  }
  .fairy_house-facility .-row .-img-3 figure {
    order: 2;
  }
  .fairy_house-facility .-row .-img-5 {
    flex-basis: 795px;
    margin-left: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: flex-end;
  }
  .fairy_house-facility .-row .-img-5 figure {
    order: 2;
  }
  .fairy_house-facility .-row .-text {
    padding: 1em 30px;
  }
  .fairy_house-facility .-row .-text-1 {
    margin-left: -1em;
    margin-bottom: 40px;
  }
  .fairy_house-facility .-row .-text-3 {
    margin-right: -2em;
    margin-bottom: 40px;
    order: 1;
    position: relative;
  }
  .fairy_house-facility .-row .-text-5 {
    margin-right: -3em;
    margin-bottom: 40px;
    order: 1;
    position: relative;
  }
}

.recruitment-recruitment .-requirement {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}
.recruitment-recruitment .-requirement .tab__menu {
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
}
.recruitment-recruitment .-requirement .tab__menu-item {
  flex-basis: 120px;
  text-align: center;
  background-color: #dfede4;
  border-radius: 5px 5px 0 0;
}
.recruitment-recruitment .-requirement .tab__menu-item.is-active {
  color: #fff;
  background-color: var(--primary);
}
.recruitment-recruitment .-requirement-detail {
  border: 1px var(--primary) solid;
  padding: clamp(1em, 4.6666666667%, 35px);
}
.recruitment-recruitment .-requirement-table table {
  width: 100%;
}
.recruitment-recruitment .-requirement-table table th, .recruitment-recruitment .-requirement-table table td {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.recruitment-recruitment .-requirement-table table th {
  width: 29.197080292%;
  padding-left: 1.5em;
  text-align: left;
  vertical-align: top;
  color: var(--primary);
}
.recruitment-recruitment .-requirement-table table td {
  padding-left: 1.2em;
}
.recruitment-recruitment .-requirement-table table tr:not(:last-of-type) {
  border-bottom: 1px var(--primary) solid;
}
.recruitment-question .-faq {
  max-width: 758px;
  margin-left: auto;
  margin-right: auto;
}
.recruitment-question .-faq-item {
  border-top: 2px #c4c4c4 dotted;
  padding: 1.5em 0;
}
.recruitment-question .-faq-q {
  display: flex;
  gap: 1em;
  align-items: center;
  --faq-ic:rotate(0);
}
.recruitment-question .-faq-q:hover {
  opacity: 0.75;
}
.recruitment-question .-faq-q.active {
  --faq-ic: rotate(90deg);
}
.recruitment-question .-faq-icon {
  margin-left: auto;
  position: relative;
  height: 2px;
  width: 1.5em;
  background-color: var(--primary);
}
.recruitment-question .-faq-icon::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--primary);
  position: absolute;
  left: 0;
  top: 0;
  transform-origin: center;
  transition: 0.3s;
  transform: var(--faq-ic);
}
.recruitment-guidance .-row {
  display: grid;
  gap: 2em 3.1578947368%;
}
.recruitment-guidance .-box {
  border: 3px var(--guide-border, var(--primary)) solid;
  padding: 1.5em;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}
.recruitment-guidance .-box .btn-wrap {
  width: 100%;
}
.recruitment-guidance .-box-tel {
  color: var(--guide-border);
  line-height: 1;
}
.recruitment-guidance .-tel {
  --guide-border: #e85734;
}
.recruitment-form {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}

.news-label {
  background-color: var(--cat-bg, #26bdab);
  color: var(--cat-color, #fff);
  font-size: var(--size-14);
  display: inline-block;
  flex-shrink: 0;
  flex-basis: 10em;
  text-align: center;
  border-radius: 1.5em;
}

.event {
  --cat-bg: #298948;
}

.important {
  --cat-bg: #d6602b;
}

.news-list {
  margin-bottom: 2.5em;
}
.news-list-item {
  padding: 1.5em 1em;
  border-bottom: #cccccc 2px dotted;
}
.news-list-item .-link {
  display: flex;
  align-items: center;
  gap: 0.5em 1.5em;
}
.news-list-item .-date {
  flex-basis: 7.1428571429em;
  flex-shrink: 0;
  font-size: var(--size-14);
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .news-list-item .-link {
    flex-wrap: wrap;
  }
  .news-list-item .-title {
    flex-basis: 100%;
  }
}

.news-main, .news-article {
  padding-bottom: var(--sec-bottom);
}
.news-head {
  display: flex;
  margin-bottom: 2em;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5em;
}
.news-head-center {
  flex-basis: 100%;
  text-align: center;
}
.news-title {
  display: inline-block;
  padding-bottom: 0.5em;
  border-bottom: 2px var(--primary) dotted;
}
.news-foot {
  padding-bottom: var(--sec-bottom);
  padding-top: var(--sec-top);
  border-top: #ccc 2px dotted;
}

.aside-title {
  background-color: var(--accent);
  color: #fff;
  text-align: center;
  padding: 0.5em;
  margin-bottom: 1em;
}

.category-list .-item {
  border-bottom: 1px dotted #808080;
}
.category-list .-item a {
  padding: 0.5em 1em;
  display: block;
}

.diary-list {
  margin-bottom: 2.5em;
  display: grid;
  gap: 2em 4.2253521127%;
}
.diary-list-item .-link {
  display: block;
}
.diary-list-item .-link img {
  border-radius: 10px;
  aspect-ratio: 342/228;
  object-fit: cover;
  width: 100%;
}
.diary-list-item .-date {
  margin: 1em 0 0.5em;
}
@media print, screen and (min-width: 768px) {
  .diary-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.faq-nav {
  background-color: var(--primary);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5em 2em;
  padding: 1em;
  border-radius: 10px;
}
.faq-nav .-link {
  display: block;
  color: #fff;
}
.faq-content .-faq {
  max-width: 758px;
  margin-left: auto;
  margin-right: auto;
}
.faq-content .-faq-item {
  border-top: 2px #c4c4c4 dotted;
  padding: 1.5em 0;
}
.faq-content .-faq-q {
  display: flex;
  gap: 1em;
  align-items: center;
  --faq-ic:rotate(0);
  line-height: 1.25;
}
.faq-content .-faq-q:hover {
  opacity: 0.75;
}
.faq-content .-faq-q.active {
  --faq-ic: rotate(90deg);
}
.faq-content .-faq-num {
  flex-basis: 1.5em;
  flex-shrink: 0;
}
.faq-content .-faq-icon {
  margin-left: auto;
  position: relative;
  height: 2px;
  width: 1.5em;
  background-color: var(--primary);
  flex-shrink: 0;
}
.faq-content .-faq-icon::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--primary);
  position: absolute;
  left: 0;
  top: 0;
  transform-origin: center;
  transition: 0.3s;
  transform: var(--faq-ic);
}
.faq-content .-faq-a .-inner {
  padding: 1em 1em 1em 4.875em;
}

.contact-guidance .-row {
  display: grid;
  gap: 2em 3.1578947368%;
}
.contact-guidance .-box {
  border: 3px var(--guide-border, var(--primary)) solid;
  padding: 1.5em;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}
.contact-guidance .-box .btn-wrap {
  width: 100%;
}
.contact-guidance .-box-tel {
  color: var(--guide-border);
  line-height: 1;
}
.contact-guidance .-tel {
  --guide-border: #e85734;
}
.contact-form {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}

.privacy-sec {
  padding-left: 1.5em;
}
.privacy-sec h3 {
  position: relative;
  margin-bottom: 0.5em;
}
.privacy-sec h3 .-no {
  position: absolute;
  right: 100%;
}/*# sourceMappingURL=style.css.map */

/* 1日の流れ：タブボタン（共通＝非アクティブの見た目） */
.hoiku-schedule .-head .tab__menu-item{
  background-color: #dfede4;   /* 非選択：薄い背景 */
  color: var(--primary);       /* 非選択：緑文字 */
  border: 1px solid var(--primary);
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

/* 1日の流れ：タブボタン（選択中＝反転） */
.hoiku-schedule .-head .tab__menu-item.is-active{
  background-color: var(--primary); /* 選択：緑背景 */
  color: #fff;                      /* 選択：白文字 */
  border-color: var(--primary);
}
