@charset "UTF-8";
:root {
  --main:#31443a;
  --main-sub:#8d8d8d;
  --primary:#93c67e;
  --accent: #c7d794;
  --gray: #f3f3f3;
  --sub: #e8f3e3;
  --inverse: #fff;
  --red: #cc0000;
  --color-def: #31443a;
  --color-catch: #f5f5f5;
  --color-link: #93c67e;
  --color-footer: #fff;
  --inverse-def: #fff;
  --bg-blue: #dde2f1;
  --btn-bg: #93c67e;
  --btn-color: #fff;
  --btn-border: #93c67e;
  --btn-bg-h: #92c67eaf;
  --btn-color-h: #fff;
  --btn-border-h: #93c67e;
  --btn-w: calc(300em / 16);
  --btn-h: calc(60em / 16);
  --btn-round: 9999px;
  --link-bg: #93c67e;
  --link-color: var(--main);
  --link-ic: #93c67e;
  --link-bg-h: #93c67e;
  --link-color-h: #93c67e;
  --link-ic-h: #fff;
  --header-h: 180px;
  --header-hscroll: 100px;
  --header-bg: #fff;
  --header-bg-scroll: #fff;
  --gnav-bg:#e8f3e3;
  --gnav-bg_hv:#000;
  --gnav-color:#000;
  --gnav-color-h:#93c67e;
  --gnav-h: 60px;
  --gnav-btn-h:30px;
  --gnav-btn-w:clamp(40px, calc(140vmin / 15), 46px);
  --gnav-btn-bg:#000;
  --gnav-btn-active:#93c67e;
  --gnav-line-top:translate(0,-0.85em);
  --gnav-line-bottom:translate(0,0.85em);
  --svg-bg: var(--primary);
  --svg-color: #fff;
  --svg-w: 1em;
  --gra-base: rgba(0,129,155,1) 0%, rgba(0,130,180,1) 23%, rgba(0,74,147,1) 60%, rgba(66,94,164,1) 100%;
  --gra: linear-gradient(var(--gra-agl, 90deg), var(--gra-base));
  --table-head: #aa9986;
  --title-bottom: 1.5em;
  --lineheight: calc(40 / 16);
  --lineheight-title: 1.5;
  --letterspace-def: 0;
  --letterspace: 0.025em;
  --letterspace-narrow: 0.0em;
  --letterspace-wide: 0.17em;
  --size-def: clamp(13px, calc(13vmin / 4), 16px);
  --size-12: clamp(10px, calc(10vmin / 4), 12px);
  --size-14: clamp(12px, calc(10vmin / 4), 14px);
  --size-15: clamp(14px, calc(10vmin / 4), 15px);
  --size-16: clamp(14px, calc(13vmin / 4), 16px);
  --size-18: clamp(14px, calc(13vmin / 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-23: clamp(16px, calc(16vmin / 4), 23px);
  --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-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-45: clamp(26px, calc(24vmin / 4), 45px);
  --size-48: clamp(30px, calc(26vmin / 4), 48px);
  --size-50: clamp(30px, calc(26vmin / 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-100: clamp(40px, calc(40vmin / 4), 100px);
  --size-110: clamp(40px, calc(40vmin / 4), 110px);
  --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: 1230px;
  --container-wide: 1430px;
  --container-slim: 1030px;
  --container-pad: min(calc(100% / 12.8), 15px);
  --container-pad_sp: min(calc(100% / 12.8), 15px);
  --sec-top:clamp(3em, calc(100% / 12), 90px);
  --sec-bottom:clamp(3em, calc(100% / 12), 90px);
  --thumb-aspect: 470 / 307;
  --font-gothic: 'Yu Gothic', 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN',sans-serif;
  --font-mincho: 'Shippori Mincho B1', 'YuMincho', 'Hiragino Mincho ProN', 'Yu Mincho', 'MS PMincho', serif;
  --font-en: 'Gideon Roman', 'Yu Gothic','ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic ProN', sans-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: 10px;
}

.fz11 {
  font-size: 11px;
}

.fz12 {
  font-size: 12px;
}

.fz13 {
  font-size: 13px;
}

.fz14 {
  font-size: 14px;
}

.fz15 {
  font-size: 15px;
}

.fz16 {
  font-size: 16px;
}

.fz17 {
  font-size: 17px;
}

.fz18 {
  font-size: 18px;
}

.fz19 {
  font-size: 19px;
}

.fz20 {
  font-size: 20px;
}

.fz21 {
  font-size: 21px;
}

.fz22 {
  font-size: 22px;
}

.fz23 {
  font-size: 23px;
}

.fz24 {
  font-size: 24px;
}

.fz25 {
  font-size: 25px;
}

.fz26 {
  font-size: 26px;
}

.fz27 {
  font-size: 27px;
}

.fz28 {
  font-size: 28px;
}

.fz29 {
  font-size: 29px;
}

.fz30 {
  font-size: 30px;
}

.fz31 {
  font-size: 31px;
}

.fz32 {
  font-size: 32px;
}

.fz33 {
  font-size: 33px;
}

.fz34 {
  font-size: 34px;
}

.fz35 {
  font-size: 35px;
}

.fz36 {
  font-size: 36px;
}

.fz37 {
  font-size: 37px;
}

.fz38 {
  font-size: 38px;
}

.fz39 {
  font-size: 39px;
}

.fz40 {
  font-size: 40px;
}

.fz41 {
  font-size: 41px;
}

.fz42 {
  font-size: 42px;
}

.fz43 {
  font-size: 43px;
}

.fz44 {
  font-size: 44px;
}

.fz45 {
  font-size: 45px;
}

.fz46 {
  font-size: 46px;
}

.fz47 {
  font-size: 47px;
}

.fz48 {
  font-size: 48px;
}

.fz49 {
  font-size: 49px;
}

.fz50 {
  font-size: 50px;
}

@media print, screen and (max-width: 767px) {
  .fz10-smt {
    font-size: 10px;
  }
  .fz11-smt {
    font-size: 11px;
  }
  .fz12-smt {
    font-size: 12px;
  }
  .fz13-smt {
    font-size: 13px;
  }
  .fz14-smt {
    font-size: 14px;
  }
  .fz15-smt {
    font-size: 15px;
  }
  .fz16-smt {
    font-size: 16px;
  }
  .fz17-smt {
    font-size: 17px;
  }
  .fz18-smt {
    font-size: 18px;
  }
  .fz19-smt {
    font-size: 19px;
  }
  .fz20-smt {
    font-size: 20px;
  }
  .fz21-smt {
    font-size: 21px;
  }
  .fz22-smt {
    font-size: 22px;
  }
  .fz23-smt {
    font-size: 23px;
  }
  .fz24-smt {
    font-size: 24px;
  }
  .fz25-smt {
    font-size: 25px;
  }
  .fz26-smt {
    font-size: 26px;
  }
  .fz27-smt {
    font-size: 27px;
  }
  .fz28-smt {
    font-size: 28px;
  }
  .fz29-smt {
    font-size: 29px;
  }
  .fz30-smt {
    font-size: 30px;
  }
  .fz31-smt {
    font-size: 31px;
  }
  .fz32-smt {
    font-size: 32px;
  }
  .fz33-smt {
    font-size: 33px;
  }
  .fz34-smt {
    font-size: 34px;
  }
  .fz35-smt {
    font-size: 35px;
  }
  .fz36-smt {
    font-size: 36px;
  }
  .fz37-smt {
    font-size: 37px;
  }
  .fz38-smt {
    font-size: 38px;
  }
  .fz39-smt {
    font-size: 39px;
  }
  .fz40-smt {
    font-size: 40px;
  }
  .fz41-smt {
    font-size: 41px;
  }
  .fz42-smt {
    font-size: 42px;
  }
  .fz43-smt {
    font-size: 43px;
  }
  .fz44-smt {
    font-size: 44px;
  }
  .fz45-smt {
    font-size: 45px;
  }
  .fz46-smt {
    font-size: 46px;
  }
  .fz47-smt {
    font-size: 47px;
  }
  .fz48-smt {
    font-size: 48px;
  }
  .fz49-smt {
    font-size: 49px;
  }
  .fz50-smt {
    font-size: 50px;
  }
}
/* -----------------------------
 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-mincho);
  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;
}
@media print, screen and (max-width: 767px) {
  body {
    --header-h: 60px;
    --gotop:40px;
    --gnav-btn-h: calc(var(--gnav-btn-w) * 0.6);
    --container-pad:clamp(10px, (50% / 12.8), 15px);
  }
}
body {
  --wp--style--root--padding-right:0;
  --wp--style--root--padding-left:0;
}
@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);
    --wp--preset--font-size--lg: var(--size-28);
    --wp--preset--font-size--xl: var(--size-32);
    --wp--preset--font-size--xxl: var(--size-48);
  }
}

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

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

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

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

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

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

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

.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 {
    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: sticky;
  z-index: 101;
  width: 100%;
  background-color: var(--header-bg);
  transition: background-color 0.3s 0.2s ease-in-out;
  top: 0;
  left: 0;
  width: 100%;
}
.header-h {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  max-height: 100px;
}
.header > .container {
  position: relative;
  z-index: 110;
}
.header-row {
  display: flex;
  height: var(--header-h);
  position: relative;
  justify-content: space-between;
  align-items: center;
}
.header-logo {
  position: relative;
  z-index: 18;
  pointer-events: initial;
  flex-basis: clamp(120px, 39.3%, 393px);
}
.header-logo .custom-logo-link {
  display: block;
  line-height: 1;
  height: 100%;
}
.header-btns {
  flex-basis: 11.1111111111em;
  --btn-round: 9999px;
  --btn-h:calc(60em / 18);
}
@media print, screen and (max-width: 1020px) {
  .header {
    --container-pad:calc(50% / 12.8);
  }
  .header-row {
    padding-top: 0.5em;
    align-items: center;
  }
  .header-logo {
    flex-basis: 50%;
  }
  .header-logo img {
    width: auto;
    height: calc(var(--header-h) - 1em);
    object-fit: contain;
  }
  .header-btns {
    --btn-h:calc(50em / 18);
    flex-basis: 9.4444444444em;
  }
}
.gnav {
  pointer-events: initial;
}
.gnav-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}
.gnav-menu .menu-item a {
  color: var(--gnav-color);
  position: relative;
  padding: 0.5em;
}
.gnav-menu .menu-item a::before {
  content: "";
  width: 100%;
  height: 2px;
  background-color: var(--gnav-color-h);
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 0;
  transform: translateY(0);
  transition: 0.3s var(--easing);
}
.gnav-menu .menu-item a:hover {
  color: var(--gnav-color-h);
  opacity: 1;
}
.gnav-menu .menu-item.current-menu-item a {
  color: var(--gnav-color-h);
  opacity: 1;
}
.gnav-top {
  white-space: nowrap;
}
@media print, screen and (max-width: 1020px) {
  .gnav {
    background-color: var(--gnav-bg);
    position: fixed;
    right: 0;
    top: var(--header-h);
    height: calc(100vh - var(--header-h));
    width: clamp(260px, 85vw, 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;
  }
  .gnav-item a {
    color: var(--gnav-color);
    transition: color 0.3s, background-color 0.3s;
  }
  .gnav-btn {
    position: relative;
    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: var(--header-h);
    height: clamp(1px, 0.2vw, 2px);
    background-color: var(--gnav-btn-bg);
    display: block;
    position: relative;
  }
  .gnav-btn .-line::before, .gnav-btn .-line::after {
    content: "";
    background-color: var(--gnav-btn-bg);
    display: block;
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    transition: all 0.3s ease-in;
    transform: var(--gnav-line-top);
  }
  .gnav-btn .-line::after {
    transform: var(--gnav-line-bottom);
  }
  .gnav-inner {
    width: 100%;
  }
  .gnav-top {
    display: flex;
    align-items: center;
    gap: 1em;
    margin-top: 2em;
  }
  .gnav-menu {
    gap: 0.5em 1em;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: var(--size-30);
  }
}
@media print, screen and (min-width: 1021px) {
  .gnav-btn {
    display: none;
    pointer-events: none;
  }
  .gnav-inner {
    display: grid;
    gap: 1.5em 1em;
  }
  .gnav-inner .menu-gnav-container {
    order: 1;
  }
  .gnav-top {
    display: flex;
    align-items: center;
    gap: 1em;
    justify-content: flex-end;
    --btn-w:130px;
    --btn-h:40px;
    order: 0;
  }
  .gnav-menu ul {
    display: flex;
    gap: 1em 2em;
  }
}

.onscroll {
  --header-bg:rgba(255, 255, 255, 1);
}
@media print, screen and (min-width: 1021px) {
  .onscroll {
    --header-h: 100px;
  }
  .onscroll .header-logo {
    flex-basis: 208px;
  }
  .onscroll .gnav-inner {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 2em;
  }
  .onscroll .gnav-top {
    flex-shrink: 0;
    white-space: nowrap;
  }
}

.navopen {
  --header-bg:#fff;
}
.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(25deg);
  top: 0;
}
.navopen .gnav-btn .-line::after {
  top: 0;
  transform: rotate(335deg);
}

.fcontact {
  display: grid;
  --title-btm: 0.5em;
}
.fcontact-bg {
  grid-column: 1/2;
  grid-row: 1/2;
}
.fcontact-bg img {
  max-width: none;
  width: 100%;
  object-fit: cover;
}
.fcontact-front {
  grid-column: 1/2;
  grid-row: 1/2;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.fcontact-box {
  background-color: #fff;
  padding: 6.6666666667% 1em 0;
}
.fcontact-inner {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.fcontact .title-sec {
  line-height: 1;
}
.fcontact-btns {
  margin-top: 3.125em;
  display: flex;
  gap: 1.5em 4%;
  justify-content: center;
  flex-wrap: wrap;
  --btn-w:480px;
  --btn-h:120px;
}
.fcontact-btns .btn-tel {
  --btn-bg: #f5f5f5;
  --btn-border: #f5f5f5;
  --btn-color: var(--main);
  text-align: center;
}
.fcontact-btns .btn-tel-head {
  color: var(--primary);
  display: flex;
  justify-content: center;
  gap: 1em;
  align-items: baseline;
  margin-bottom: 0.5em;
}
@media print, screen and (max-width: 767px) {
  .fcontact-front {
    grid-row: 2/3;
  }
  .fcontact-btns {
    --btn-h:80px;
  }
  .fcontact-box {
    padding: 1.5em 0;
  }
}
@media print, screen and (min-width: 768px) {
  .fcontact-btns .btn-tel {
    pointer-events: none;
  }
  .fcontact-bg {
    max-height: 520px;
  }
  .fcontact-bg img {
    height: 100%;
  }
}

.footer {
  position: relative;
}
.footer-col {
  flex-basis: 360px;
}
.footer-logo {
  margin-bottom: 2em;
}
.footer-logo a {
  display: block;
}
.footer-logo a img {
  width: 100%;
}
.footer-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em 2em;
}
.footer-links {
  flex-grow: 1;
}
.footer-sns {
  margin-bottom: 3.75em;
  display: flex;
  gap: 1em 1.625em;
  justify-content: flex-end;
}
.footer .copy {
  padding: 2em 0 calc(2em + env(safe-area-inset-bottom));
  background-color: var(--primary);
  color: #fff;
}
.footer .copy a {
  color: #fff;
}
.footer .copy-row {
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
.footer .copy-link {
  order: 1;
}
@media print, screen and (max-width: 767px) {
  .footer-logo {
    width: 10em;
  }
}
@media print, screen and (min-width: 768px) {
  .footer-links {
    order: 1;
  }
  .footer-info {
    order: 0;
    flex-grow: 1;
  }
}

.fnav-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 1em 2em;
  justify-content: flex-end;
}
.fnav-top {
  margin-top: 1.5em;
  display: flex;
  align-items: center;
  gap: 1em;
  justify-content: flex-end;
  --btn-w:130px;
  --btn-h:40px;
}

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

.is-bigger {
  font-size: 1.2857142857em;
}

.is-style-title-gra {
  background: linear-gradient(var(--gra-agl, 90deg), var(--gra-base));
  color: white;
  font-size: var(--title-size, var(--size-25));
  padding: 0.5em;
  margin-bottom: var(--mb, 1em);
  letter-spacing: var(--letterspace-wide);
}

/* 下線スタイル */
.is-style-title-line {
  font-size: var(--title-size, var(--size-25));
  padding: 0.5em;
  margin-bottom: var(--mb, 1em);
  border-bottom: var(--primary) 1px solid;
}

.product-contents {
  border-top: 1px #000 solid;
  border-bottom: 1px #000 solid;
  padding: 1.5em 0;
}

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

.block-group {
  margin-top: var(--sec-top);
  margin-bottom: var(--sec-bottom);
}
.block-group-row {
  gap: 2em 6%;
}
.block-group-row .-col-img {
  flex-basis: clamp(250px, 40%, 400px);
  flex-grow: 1;
  text-align: center;
}
.block-group-row .-col {
  flex-basis: clamp(350px, 53.6%, 536px);
  flex-grow: 1;
}
.block-group-sub {
  margin-top: var(--sec-top);
  margin-bottom: var(--sec-bottom);
}
.block-group-sub .is-layout-grid {
  gap: 3em 5%;
}
.block-group-sub .wp-block-image {
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .block-group-sub .is-layout-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}

.page-mv {
  background: url(../images/theme/mv-bg.webp) center bottom no-repeat;
}
.page-mv-top {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: var(--mv-h);
}
.page-mv-inner {
  display: flex;
  align-items: center;
}
.page-mv-text {
  flex-basis: 600px;
  margin-left: auto;
}
.page-mv-title {
  line-height: 1.2;
}
.page-mv-sub {
  display: block;
}
.page-mv.-noimg {
  --mv-h:210px;
}
.page-mv.-noimg .page-mv-top {
  grid-template-columns: 1fr;
}
.page-mv.-noimg .page-mv-text {
  flex-basis: 1200px;
  margin-right: auto;
}
@media print, screen and (max-width: 1020px) {
  .page-mv-top {
    padding-left: var(--container-pad);
  }
}

.title-sec {
  margin-bottom: var(--title-btm, 1em);
}
@media print, screen and (max-width: 767px) {
  .title-sec {
    --size-30:clamp(20px, calc(20vmin / 4), 30px);
  }
}

.sec {
  padding: var(--sec-top, clamp(3em, 10%, 100px)) 0 var(--sec-bottom, clamp(3em, 10%, 100px));
}
.sec-inner {
  max-width: var(--sec-inner, 1000px);
  margin-left: auto;
  margin-right: auto;
}
.sec-title .has-xxl-font-size {
  font-weight: 600;
  letter-spacing: 0.2em;
}

.page-nav {
  padding: 2.5em 0;
}
.page-nav-list {
  display: flex;
  gap: 1em 2em;
  white-space: nowrap;
}
.page-nav-list .arrow-link-ic::before {
  rotate: 90deg;
}
.page-nav-list .arrow-link-ic::after {
  rotate: 90deg;
  left: calc(50% - 0.25em);
  top: 0.8em;
}
.page-nav-list .arrow-link {
  display: grid;
  grid-template-columns: 3.5em auto;
}
@media print, screen and (max-width: 767px) {
  .page-nav {
    padding: 1.5em 0;
  }
  .page-nav-list {
    flex-wrap: wrap;
    gap: 0.5em 1.5em;
  }
  .page-nav-list li {
    flex-grow: 1;
  }
}

.page-row {
  display: grid;
  gap: 2em 10.8333333333%;
  --aside-w: clamp(200px, calc(270% / 12), 270px);
}
@media print, screen and (min-width: 768px) {
  .page-row {
    grid-template-columns: auto var(--aside-w);
  }
}

.post-wrapper {
  background-color: var(--sub);
}
.post-link-wrap {
  display: flex;
  justify-content: space-between;
  gap: 1em;
  align-items: center;
  margin-top: var(--sec-top);
  border-top: 1px #c6c6c6 solid;
  padding-top: 3em;
}
.post-link-back {
  flex-basis: 10em;
  --btn-h:calc(40em / 16);
}
.post-link.prev .arrow-link-ic {
  transform: scaleX(-1);
}
.post-archive {
  --item-col: clamp(150px, calc(260% / 12), 260px);
}
.post-archive-head {
  display: flex;
  align-items: center;
  border-bottom: 1px #b7b7b7 solid;
  padding-bottom: 1.25em;
  gap: 1em 2em;
  margin-bottom: 3em;
}
.post-archive-head .-category {
  padding-left: 2em;
  border-left: 1px #b7b7b7 solid;
}
.post-archive-head .-category-list {
  min-height: 4.375em;
  display: flex;
  gap: 0.5em 2em;
  flex-wrap: wrap;
  align-items: center;
}
.post-archive-head .-category-list a:hover {
  color: var(--primary);
}
.post-archive-title {
  margin-bottom: 3em;
}
.post-archive-list {
  display: grid;
  gap: 3.75em 4.1666666667%;
  grid-template-columns: repeat(auto-fit, minmax(var(--item-col), 1fr));
}
.post-archive-list .-item-thumb {
  margin-bottom: 1em;
}
.post-archive-list .-item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  align-items: center;
}
@media print, screen and (max-width: 767px) {
  .post-link-back {
    flex-basis: 8em;
  }
}

.entry-content h2 {
  background-color: #fff;
  color: #47aa1f;
  padding: 1em;
}
.entry-content h3 {
  background-color: #fafcef;
  color: #47aa1f;
  padding: 0.5em 0.8em;
}
.entry-content h4 {
  padding-bottom: 0.5em;
  border-bottom: 2px #93c67e solid;
}
.entry-content h4::first-letter {
  color: #93c67e;
}

.aside .widget {
  margin-bottom: 2em;
}
.aside .widget-title {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 1px #aeaeae solid;
  line-height: 1.2;
}
.aside .widget-category a:hover {
  color: var(--primary);
}

.cat-label {
  background-color: #93c67e;
  padding: 0.4em 1em;
  border-radius: 9999px;
  color: #fff;
  text-align: center;
  font-size: var(--size-12);
  line-height: 1;
  display: inline-block;
}

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

.arrow {
  display: inline-block;
  width: 2.2222222222em;
  height: 0.5555555556em;
  border-bottom: 1px var(--btn-color) solid;
  position: relative;
  margin-left: auto;
}
.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;
}

.svg-arrow, .svg-arrow-s {
  width: var(--svg-w);
  display: inline-block;
  line-height: 1;
  vertical-align: bottom;
}
.svg-arrow .-circle, .svg-arrow-s .-circle {
  fill: var(--svg-bg);
}
.svg-arrow .-arrow, .svg-arrow-s .-arrow {
  fill: var(--svg-color);
}

.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, inherit);
  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);
  gap: var(--btn-gap, 1em);
  font-weight: inherit;
  padding: 0.5em 1em;
}
.btn-arrow {
  width: 0.9333333333em;
  height: 1em;
  position: absolute;
  right: 1.5em;
  margin-left: auto;
  display: flex;
  align-items: center;
}
.btn-arrow::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--btn-color);
}
.btn-arrow::after {
  content: "";
  display: block;
  border-top: 1px var(--btn-color) solid;
  border-right: 1px var(--btn-color) solid;
  width: 0.6666666667em;
  height: 0.6666666667em;
  position: absolute;
  left: calc(50% - 0.1em);
  transform: rotate(45deg);
}
.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 .arrow {
  border-bottom: 1px var(--btn-color-h) solid;
}
.btn:hover .arrow::before {
  background-color: var(--btn-color-h);
}
.btn:hover .btn-arrow {
  border-bottom: 1px var(--btn-color-h) solid;
}
.btn:hover .btn-arrow::before {
  background-color: 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;
  }
}

.arrow-link {
  display: flex;
  line-height: 1;
  align-items: center;
  gap: 1em;
  color: var(--link-color);
}
.arrow-link-ic {
  border: 1px var(--link-bg) solid;
  flex-basis: 3.5em;
  height: 2em;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 9999px;
  display: flex;
  position: relative;
}
.arrow-link-ic::before {
  content: "";
  display: block;
  width: 0.7em;
  height: 1px;
  background-color: var(--link-bg);
}
.arrow-link-ic::after {
  content: "";
  display: block;
  border-top: 1px var(--link-ic) solid;
  border-right: 1px var(--link-ic) solid;
  width: 0.5em;
  height: 0.5em;
  position: absolute;
  left: calc(50% - 0.1em);
  transform: rotate(45deg);
}
.arrow-link:hover {
  color: var(--link-color-h);
}
.arrow-link:hover .arrow-link-ic {
  background-color: var(--link-bg-h);
}
.arrow-link:hover .arrow-link-ic::before {
  background-color: var(--link-ic-h);
}
.arrow-link:hover .arrow-link-ic::after {
  border-top: 1px var(--link-ic-h) solid;
  border-right: 1px var(--link-ic-h) solid;
}

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

.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: 37.5%;
}
.map-wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.size-12 {
  font-size: var(--size-12);
}
.size-14 {
  font-size: var(--size-14);
}
.size-15 {
  font-size: var(--size-15);
}
.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-23 {
  font-size: var(--size-23);
}
.size-24 {
  font-size: var(--size-24);
}
.size-25 {
  font-size: var(--size-25);
}
.size-26 {
  font-size: var(--size-26);
}
.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-45 {
  font-size: var(--size-45);
}
.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-100 {
  font-size: var(--size-100);
}
.size-110 {
  font-size: var(--size-110);
}
.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);
}
.fc-mainsub {
  color: var(--main-sub);
}

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

.spacer-dot {
  height: 10px;
  background: url(../images/theme/spacer-dot.svg) repeat;
  border: none;
  outline: none;
  width: 100%;
  margin: var(--spacer-top, var(--sec-top)) 0 var(--spacer-bottom, var(--sec-bottom));
}
.spacer-short {
  width: 6rem;
  margin: var(--spacer-top, 1em) 0 var(--spacer-bottom, 1em);
}
.spacer-dotline {
  height: 2px;
  border: none;
  outline: none;
  width: 100%;
  background-color: transparent;
  background-image: radial-gradient(#FFF000 30%, transparent 0);
  background-size: 8px 8px;
  background-position: center;
}

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

.w-440 {
  max-width: 440px;
}
.w-full img {
  width: 100%;
}

.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;
}
@media print, screen and (max-width: 767px) {
  .hide-sp {
    display: none;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1020px) {
  .hide-tablet {
    display: none;
  }
}
@media print, screen and (min-width: 1021px) {
  .hide-pc {
    display: none;
  }
}

.form-area {
  --form-reqmark: none;
}
.form-row {
  padding: 1.6666666667em 0;
  display: grid;
  border-bottom: 1px #fff solid;
}
.form-row.-required {
  --form-reqmark: "必須" ;
}
.form-head {
  margin-bottom: 0.5em;
  padding-top: 0.5em;
}
.form-head::after {
  content: var(--form-reqmark);
  color: #fff;
  display: inline-block;
  background-color: var(--primary);
  line-height: 1;
  font-size: var(--size-12);
  padding: 3px 0.5em;
  border-radius: 4px;
  margin-left: 1em;
}
.form-item {
  margin-bottom: 1.6666666667em;
}
.form-bottom .btn-wrap {
  flex-direction: column;
  margin-top: 1em;
}
.form-bottom .btn {
  margin-left: auto;
  margin-right: auto;
}
.form-check .wpcf7-list-item {
  padding: 0;
  margin: 0;
}
.form-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625em 1.25em;
  --input-color:#c9c9c9;
  --input-color-dot:#fff;
}
.form-radio label {
  position: relative;
}
.form-radio input {
  opacity: 0;
  position: absolute;
}
.form-radio input:checked + .wpcf7-list-item-label {
  --input-color: var(--primary);
  --input-color-dot: var(--primary);
  outline: 1px var(--input-color) solid;
  background-color: #fff;
}
.form-radio .wpcf7-list-item {
  padding: 0;
  margin: 0;
}
.form-radio .wpcf7-list-item-label {
  position: relative;
  width: 22.5em;
  height: 3em;
  display: flex;
  align-items: center;
  padding: 1em;
  border: none;
  border-radius: 5px;
  background-color: #fafcef;
  gap: 0.5em;
  line-height: 1;
}
.form-radio .wpcf7-list-item-label::before {
  content: "";
  width: 1em;
  height: 1em;
  background-color: #fff;
  background: radial-gradient(circle, var(--input-color-dot) 35%, rgb(255, 255, 255) 35%);
  border: 1px var(--input-color) solid;
  border-radius: 50%;
}
.form-radio .wpcf7-list-item-label::after {
  position: absolute;
}
.form-fill {
  background-color: #fff;
  border-radius: 5px;
  height: 3.125em;
  padding: 0.5em 1em;
  line-height: 1.25;
  width: 100%;
  max-width: 100%;
  font-size: var(--size-def);
}
.form-fill:placeholder-shown {
  color: #b5b5b5;
}
.form-fill::-webkit-input-placeholder {
  color: #b5b5b5;
}
.form-fill:-moz-placeholder {
  color: #b5b5b5;
  opacity: 1;
}
.form-fill::-moz-placeholder {
  color: #b5b5b5;
  opacity: 1;
}
.form-fill:-ms-input-placeholder {
  color: #b5b5b5;
}
.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-bottom: 3em;
}
.form-submit {
  text-align: left;
  padding-left: 1.8em;
}
.form-submit-wrap {
  --btn-w:calc(400em / 18);
  --btn-h:calc(80em / 18);
  --btn-color-h: #fff;
  --btn-bg-h: var(--main);
  width: 100%;
  max-width: var(--btn-w);
  position: relative;
  --btn-round: calc(var(--btn-h) / 2) ;
}
.form-submit-wrap .-arrow {
  width: 2.2222222222em;
  height: 2.2222222222em;
  background-color: #fff;
  color: var(--main);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: calc(var(--btn-h) / 2);
  right: 1em;
  margin-left: auto;
  transform: translateY(-50%);
  pointer-events: none;
}
.form-submit-wrap .-arrow::before {
  content: ">";
}
.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);
}
.form-sub {
  padding: 1.75em 0;
}
.form-sub .form-col {
  flex-grow: 1;
}
.form-sub:first-of-type {
  padding-top: 0;
}
.form-sub:last-of-type {
  padding-bottom: 0;
}
.form-btn {
  position: relative;
  --btn-w:calc(380em / 20);
  --btn-h: calc(70em / 20);
}
.form-btn .form-submit {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.form-btn .wpcf7-spinner {
  position: absolute;
}
@media print, screen and (max-width: 767px) {
  .form-row {
    padding: 0.5em 0;
  }
  .form-item {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) and (orientation: portrait) {
  .form-content {
    padding-left: 1em;
    padding-right: 1em;
  }
  .form-head {
    gap: 0 1em;
  }
  .form-item {
    grid-template-columns: repeat(1, 1fr);
  }
  .form-label {
    padding: 1em 0;
  }
  .form-col {
    padding-top: 0;
  }
  .form-col .-sub-row {
    grid-template-columns: repeat(1, 1fr);
  }
  .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: 24% auto;
    gap: 0 1.25em;
  }
  .form-sub .-row {
    display: flex;
    gap: 1.5625em;
  }
  .form-sub + .form-sub {
    border-top: 1px #fff solid;
  }
  .form-check {
    grid-template-columns: repeat(2, 1fr);
  }
  .form-item, .form-head {
    margin-bottom: 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;
}
@keyframes move {
  0% {
    offset-distance: 0%;
    transform: scale(0);
  }
  60% {
    transform: scale(0.5) rotateX(0);
  }
  80% {
    transform: scale(0.75) rotateX(70deg);
  }
  100% {
    offset-distance: 100%;
    transform: scale(1) rotateX(0);
  }
}
@media print, screen and (min-width: 1021px) {
  .page-template-page-home, .page-template-page-en {
    --header-h:260px;
  }
  .page-template-page-home .header-logo, .page-template-page-en .header-logo {
    flex-basis: clamp(120px, 56.75%, 681px);
  }
  .page-template-page-home .header-logo img, .page-template-page-en .header-logo img {
    width: 100%;
  }
  .page-template-page-home .onscroll .header-logo, .page-template-page-en .onscroll .header-logo {
    flex-basis: 208px;
  }
}
.page-template-page-home .mv, .page-template-page-en .mv {
  position: relative;
  display: grid;
  background: #FFF;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 55.6818181818%, rgb(232, 243, 227) 55.6818181818%, rgb(232, 243, 227) 100%);
}
.page-template-page-home .mv-bg, .page-template-page-en .mv-bg {
  grid-column: 1/2;
  grid-row: 1/2;
}
.page-template-page-home .mv-bg-wrap, .page-template-page-en .mv-bg-wrap {
  max-width: 1400px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: flex-end;
  padding-left: 11.4285714286%;
}
.page-template-page-home .mv-front, .page-template-page-en .mv-front {
  grid-column: 1/2;
  grid-row: 1/2;
}
.page-template-page-home .mv-front-wrap, .page-template-page-en .mv-front-wrap {
  max-width: 1400px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  height: 100%;
}
.page-template-page-home .mv-scroll, .page-template-page-en .mv-scroll {
  color: var(--primary);
  position: absolute;
  left: 5.7142857143%;
  bottom: -2em;
}
.page-template-page-home .mv-scroll .-link, .page-template-page-en .mv-scroll .-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
.page-template-page-home .mv-scroll .-line, .page-template-page-en .mv-scroll .-line {
  background-color: var(--primary);
  height: 13.75em;
  width: 1px;
  display: block;
}
.page-template-page-home .mv-title, .page-template-page-en .mv-title {
  line-height: 1;
  display: grid;
  gap: 1.5em;
}
.page-template-page-home .mv-title-artist, .page-template-page-en .mv-title-artist {
  margin-top: 1em;
}
.page-template-page-home .mv-text, .page-template-page-en .mv-text {
  padding-top: 7.1428571429%;
}
@media print, screen and (max-width: 1020px) {
  .page-template-page-home .mv, .page-template-page-en .mv {
    --size-30:calc(30vw / 12);
    --size-40:calc(40vw / 12);
  }
  .page-template-page-home .mv-title, .page-template-page-en .mv-title {
    font-size: 1.3333333333vw;
  }
  .page-template-page-home .mv-title-artist, .page-template-page-en .mv-title-artist {
    width: 10vw;
  }
  .page-template-page-home .mv-scroll, .page-template-page-en .mv-scroll {
    font-size: 1.3333333333vw;
    left: 3.5%;
  }
}
.page-template-page-home .mv.-loaded .mv-img-desc, .page-template-page-en .mv.-loaded .mv-img-desc {
  animation: 0.8s var(--anim-delay, 0.1s) cubic-bezier(0.37, 0, 0.63, 1) forwards;
  animation-name: fade_in, slide_in_x_left2;
}
.page-template-page-home .top-catch, .page-template-page-en .top-catch {
  background: url(../images/home/catch-bg.webp) bottom right repeat;
  background-size: cover;
}
.page-template-page-home .top-catch-row, .page-template-page-en .top-catch-row {
  display: flex;
  gap: 2em 5.8333333333%;
  flex-wrap: wrap;
}
.page-template-page-home .top-catch-text, .page-template-page-en .top-catch-text {
  flex-basis: clamp(300px, 47.0833333333%, 565px);
  flex-grow: 1;
}
.page-template-page-home .top-catch-img, .page-template-page-en .top-catch-img {
  flex-basis: clamp(300px, 47.0833333333%, 565px);
  flex-grow: 1;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1em 9.5575221239%;
}
.page-template-page-home .top-catch-img .-img-01, .page-template-page-en .top-catch-img .-img-01 {
  grid-column: 1/3;
  grid-row: 1/2;
  text-align: center;
  position: relative;
  z-index: 1;
}
.page-template-page-home .top-catch-img .-img-02, .page-template-page-en .top-catch-img .-img-02 {
  grid-column: 1/2;
  grid-row: 2/3;
  transform: translateY(-56px);
  position: relative;
}
.page-template-page-home .top-catch-img .-img-03, .page-template-page-en .top-catch-img .-img-03 {
  grid-column: 2/3;
  grid-row: 2/3;
}
.page-template-page-home .top-catch-img-sp, .page-template-page-en .top-catch-img-sp {
  padding-top: 10.2941176471%;
  padding-left: 10.2941176471%;
  padding-right: 1.6176470588%;
  padding-bottom: 10.2941176471%;
}
.page-template-page-home .top-catch-title, .page-template-page-en .top-catch-title {
  line-height: 1.8888888889;
  margin-bottom: 1.5em;
}
@media print, screen and (max-width: 767px) {
  .page-template-page-home .top-catch-img, .page-template-page-en .top-catch-img {
    display: none;
    grid-template-columns: 36.5217391304% auto;
  }
}
.page-template-page-home .top-profile-row, .page-template-page-en .top-profile-row {
  display: flex;
  gap: 2em 5%;
  flex-wrap: wrap;
}
.page-template-page-home .top-profile-img, .page-template-page-en .top-profile-img {
  flex-basis: clamp(300px, 50%, 600px);
}
.page-template-page-home .top-profile-img .-row, .page-template-page-en .top-profile-img .-row {
  display: grid;
  align-items: center;
  gap: 1em 6.3333333333%;
  grid-template-columns: auto 1fr;
}
.page-template-page-home .top-profile-catch, .page-template-page-en .top-profile-catch {
  line-height: 1.8888888889;
  margin-bottom: 1.15em;
}
.page-template-page-home .top-profile-desc, .page-template-page-en .top-profile-desc {
  margin-bottom: 3.75em;
}
@media print, screen and (max-width: 767px) {
  .page-template-page-home .top-profile-img, .page-template-page-en .top-profile-img {
    flex-grow: 1;
  }
  .page-template-page-home .top-profile-img .-row, .page-template-page-en .top-profile-img .-row {
    grid-template-columns: 3fr 2fr;
  }
}
.page-template-page-home .top-gallery, .page-template-page-en .top-gallery {
  overflow-y: hidden;
}
.page-template-page-home .top-gallery-bg, .page-template-page-en .top-gallery-bg {
  background-color: #f5f5f5;
  background-image: url(../images/home/gallery-bg.webp);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
  padding-top: 30px;
}
.page-template-page-home .top-gallery-row, .page-template-page-en .top-gallery-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2em 5%;
  justify-content: space-between;
}
.page-template-page-home .top-gallery-text, .page-template-page-en .top-gallery-text {
  flex-basis: clamp(300px, 51.6666666667%, 620px);
}
.page-template-page-home .top-gallery-img, .page-template-page-en .top-gallery-img {
  flex-basis: clamp(300px, 40%, 480px);
  position: relative;
}
.page-template-page-home .top-gallery-list, .page-template-page-en .top-gallery-list {
  margin-bottom: 4.375em;
}
.page-template-page-home .top-gallery-list li, .page-template-page-en .top-gallery-list li {
  display: grid;
  grid-template-columns: 6.25em auto;
  margin-bottom: 2em;
}
.page-template-page-home .top-gallery-list li .-no, .page-template-page-en .top-gallery-list li .-no {
  line-height: 1;
}
.page-template-page-home .top-gallery-list li h3, .page-template-page-en .top-gallery-list li h3 {
  margin-bottom: 0.5em;
}
.page-template-page-home .top-gallery .gallery-slide-row, .page-template-page-en .top-gallery .gallery-slide-row {
  height: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.page-template-page-home .top-gallery .gallery-slide-col, .page-template-page-en .top-gallery .gallery-slide-col {
  position: relative;
  text-align: center;
}
.page-template-page-home .top-gallery .gallery-slide-col .-col2, .page-template-page-en .top-gallery .gallery-slide-col .-col2 {
  position: relative;
  height: 100%;
  width: 100%;
}
.page-template-page-home .top-gallery .gallery-slide-img img, .page-template-page-en .top-gallery .gallery-slide-img img {
  width: 100%;
}
@media print, screen and (max-width: 767px) {
  .page-template-page-home .top-gallery-text, .page-template-page-en .top-gallery-text {
    flex-grow: 1;
  }
  .page-template-page-home .top-gallery-img, .page-template-page-en .top-gallery-img {
    flex-grow: 1;
  }
  .page-template-page-home .top-gallery .gallery-slide, .page-template-page-en .top-gallery .gallery-slide {
    margin-top: 52.1739130435%;
  }
}
@media print, screen and (min-width: 768px) {
  .page-template-page-home .top-gallery-img, .page-template-page-en .top-gallery-img {
    flex-basis: clamp(300px, 40%, 480px);
    position: relative;
  }
  .page-template-page-home .top-gallery-img .-img, .page-template-page-en .top-gallery-img .-img {
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .page-template-page-home .top-gallery .gallery-slide, .page-template-page-en .top-gallery .gallery-slide {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .page-template-page-home .top-gallery .gallery-slide2, .page-template-page-en .top-gallery .gallery-slide2 {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .page-template-page-home .top-gallery .gallery-slide-col:nth-of-type(2), .page-template-page-en .top-gallery .gallery-slide-col:nth-of-type(2) {
    padding-bottom: 52.1739130435%;
  }
}
.page-template-page-home .top-lesson-row, .page-template-page-en .top-lesson-row {
  display: flex;
  gap: 2em 10%;
  flex-wrap: wrap;
}
.page-template-page-home .top-lesson-img, .page-template-page-en .top-lesson-img {
  flex-basis: clamp(300px, 45%, 540px);
  flex-grow: 1;
}
.page-template-page-home .top-lesson-catch, .page-template-page-en .top-lesson-catch {
  margin-bottom: 0.5em;
}
.page-template-page-home .top-lesson-text, .page-template-page-en .top-lesson-text {
  flex-basis: clamp(300px, 45%, 540px);
  flex-grow: 1;
}
.page-template-page-home .top-lesson-btn, .page-template-page-en .top-lesson-btn {
  margin-top: 3em;
}
.page-template-page-home .top-blog, .page-template-page-en .top-blog {
  background-color: var(--sub);
  overflow-x: hidden;
}
.page-template-page-home .top-blog-slide .-item-meta, .page-template-page-en .top-blog-slide .-item-meta {
  display: flex;
  align-items: center;
  gap: 1em;
}
.page-template-page-home .top-blog-slide .splide__track, .page-template-page-en .top-blog-slide .splide__track {
  overflow: visible;
}

.page-template-page-en .top-profile {
  --lineheight-title:1;
  --col: clamp(400px, calc(550% / 12), 550px);
}
.page-template-page-en .top-profile-row {
  display: grid;
  gap: 2em 8.3333333333%;
}
@media print, screen and (min-width: 768px) {
  .page-template-page-en .top-profile-row {
    grid-template-columns: repeat(auto-fill, minmax(var(--col), 1fr));
  }
}
@media print, screen and (min-width: 768px) {
  .page-template-page-en .top-gallery {
    --sec-top:0;
    --sec-bottom:30px;
  }
  .page-template-page-en .top-gallery-row {
    min-height: 510px;
  }
  .page-template-page-en .top-gallery-text {
    align-self: center;
  }
  .page-template-page-en .top-gallery .gallery-slide {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .page-template-page-en .top-gallery .gallery-slide2 {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .page-template-page-en .top-gallery .gallery-slide-col {
    overflow: hidden;
  }
  .page-template-page-en .top-gallery .gallery-slide-col:nth-of-type(1) {
    padding-top: 20px;
  }
  .page-template-page-en .top-gallery .gallery-slide-col:nth-of-type(1) .gallery-slide {
    transform: translateY(11.8%);
  }
  .page-template-page-en .top-gallery .gallery-slide-col:nth-of-type(2) {
    padding-bottom: 20px;
  }
}
.page-template-page-en .fcontact-btns {
  --btn-w:520px;
}

.profile-about {
  background-color: var(--sub);
}
.profile-about-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
  justify-content: space-between;
}
.profile-about-text .-row {
  display: grid;
  align-items: center;
  gap: 1em 6.3333333333%;
  grid-template-columns: auto 1fr;
  margin: clamp(2em, 11.6666666667%, 70px) 0;
}
.profile-about-img .-img-01 {
  margin-bottom: -30px;
  margin-left: -40px;
  position: relative;
  z-index: 2;
}
.profile-about-img .-img-02 {
  z-index: 1;
  position: relative;
  margin-bottom: -10px;
}
.profile-about-img .-img-03 {
  z-index: 0;
  position: relative;
  margin-left: -60px;
}
@media print, screen and (max-width: 767px) {
  .profile-about-row {
    flex-grow: 1;
  }
  .profile-about-row .-row {
    grid-template-columns: 3fr 2fr;
  }
  .profile-about-img .-img-01 {
    margin-bottom: -30px;
    margin-left: -10px;
    position: relative;
    z-index: 2;
  }
  .profile-about-img .-img-02 {
    z-index: 1;
    position: relative;
    margin-bottom: -10px;
    margin-left: 2em;
  }
  .profile-about-img .-img-03 {
    z-index: 0;
    position: relative;
    margin-left: 0;
  }
}
.profile-works-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2em 0;
}
.profile-works-col {
  flex-basis: 1000px;
  display: flex;
  justify-content: center;
}
.profile-works-btm {
  margin-top: clamp(2em, 7%, 70px);
  padding-top: clamp(2em, 7%, 70px);
  border-top: 1px #dbdbdb solid;
  display: flex;
  justify-content: center;
}
.profile-works-btn {
  display: grid;
}
.profile-works-btn .-bg {
  grid-column: 1/2;
  grid-row: 1/2;
}
.profile-works-btn .-front {
  grid-column: 1/2;
  grid-row: 1/2;
  display: flex;
  align-items: center;
  justify-content: center;
}
.profile-works-btn .-front-text {
  display: flex;
  gap: 2em;
  align-items: center;
  line-height: 1;
}
.profile-works-btn .-bg img {
  opacity: 0;
  transition: 0.3s ease-in-out;
}
.profile-works-btn:hover .-bg img {
  opacity: 1;
}
.profile-works-btn:hover .-front span {
  color: #fff;
}
.profile-message {
  background-color: var(--gray);
}
.profile-message-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2em 15%;
}

.page-template-page-gallery .mmWrap {
  background-color: #fff;
}
.page-template-page-gallery .mmClose:before, .page-template-page-gallery .mmClose:after {
  background-color: var(--main);
  height: 2px;
}
.page-template-page-gallery .mmNext, .page-template-page-gallery .mmPrev {
  background-color: #fff;
  border: 1px var(--primary) solid;
  border-radius: 9999px;
  position: absolute;
  width: 80px;
  height: 50px;
  right: 14.2857142857%;
  top: calc(50% + 5em);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  text-indent: -9999px;
}
.page-template-page-gallery .mmNext::before, .page-template-page-gallery .mmPrev::before {
  height: 1px;
  width: 18px;
  background-color: var(--accent);
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 0deg;
  margin: 0;
  aspect-ratio: initial;
  border: none;
}
.page-template-page-gallery .mmNext::after, .page-template-page-gallery .mmPrev::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
}
.page-template-page-gallery .mmPrev {
  left: auto;
  right: calc(14.2857142857% + 110px);
}
.page-template-page-gallery .mmPrev::after {
  left: calc(50% - 3px);
  border-top: 1px var(--accent) solid;
  border-left: 1px var(--accent) solid;
  rotate: -45deg;
  translate: -50% -50%;
}
.page-template-page-gallery .mmNext::after {
  border-top: 1px var(--accent) solid;
  border-right: 1px var(--accent) solid;
  right: calc(50% - 3px);
  rotate: 45deg;
  translate: 50% -50%;
}
@media print, screen and (max-width: 767px) {
  .page-template-page-gallery .mmNext, .page-template-page-gallery .mmPrev {
    top: auto;
    bottom: calc(2em + env(safe-area-inset-bottom));
  }
}

.gallery-archive {
  --btn-w:calc(190em / 15);
  --btn-h:calc(40em / 15);
}
.gallery-archive:nth-of-type(odd) {
  background-color: var(--gray);
}
.gallery-archive-title {
  display: flex;
  line-height: 1.2;
  margin-bottom: 1.75em;
  align-items: center;
}
.gallery-archive-title .-num {
  flex-shrink: 0;
  flex-basis: 2em;
  line-height: 1;
}
.gallery-archive-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 3.75em 3.3333333333%;
}
.gallery-archive .ajax-more-btn {
  margin-top: 6.6666666667em;
}
@media print, screen and (max-width: 767px) {
  .gallery-archive-list {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}
.gallery-article {
  background-color: #fff;
}
.gallery-article-wrap {
  display: flex;
  justify-content: space-between;
  gap: 2em;
}
.gallery-article-content {
  flex-basis: 500px;
  flex-grow: 1;
}
.gallery-article-content .is-layout-grid {
  gap: 1.875em;
}
.gallery-article-info {
  flex-basis: 500px;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 5em;
  flex-grow: 1;
}
.gallery-article-inner {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
@media print, screen and (max-width: 767px) {
  .gallery-article-wrap {
    flex-wrap: wrap;
    padding-top: 4em;
    --wp--preset--spacing--xl:1.5em;
  }
  .gallery-article-info {
    display: block;
    flex-basis: 100%;
    padding-bottom: calc(6em + env(safe-area-inset-bottom));
  }
}

.lesson-school {
  background-color: var(--sub);
}
.lesson-school-top {
  margin: clamp(2em, 6%, 60px) auto;
}
.lesson-school-top .-img {
  margin-bottom: clamp(2em, 6%, 70px);
}
.lesson-school-block {
  background-color: #fff;
  padding: 4.1666666667% 1em;
  margin: 3.125em auto;
  --item-head:clamp(420px, calc(50%), 550px);
  --item-gallery:clamp(150px, calc(250% / 11), 250px);
}
.lesson-school-block .-item {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.lesson-school-block .-item-head {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--item-head), 1fr));
  margin-bottom: 3em;
}
.lesson-school-block .-item-title {
  margin-bottom: 1em;
}
.lesson-school-block .-item-address {
  margin-bottom: 0.5em;
}
.lesson-school-block .-item-access {
  --btn-w:110px;
  --btn-h:30px;
}
.lesson-school-block .-item-access .btn-arrow {
  right: 1em;
}
.lesson-school-block .-item-detail {
  margin-top: 1.5em;
}
.lesson-school-block .-item-detail table {
  width: 100%;
}
.lesson-school-block .-item-detail table tr {
  border-top: 1px #dadada solid;
  border-bottom: 1px #dadada solid;
}
.lesson-school-block .-item-detail table th {
  vertical-align: top;
  color: var(--primary);
  text-align: left;
  padding: 1em 0;
  width: 8.2857142857em;
}
.lesson-school-block .-item-detail table td {
  padding: 1em 0;
}
.lesson-school-block .-item-detail .--day {
  flex-basis: 4.2857142857em;
  border-right: 2px var(--primary) solid;
}
.lesson-school-block .-item-detail .--day-list li {
  display: flex;
  gap: 1.2em;
  line-height: 1.2;
  margin-bottom: 1em;
}
.lesson-school-block .-item-gallery .--list {
  margin-top: 0.5em;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--item-gallery), 1fr));
  gap: 2.125em 2.7272727273%;
}
.lesson-school-fee {
  background-color: #fff;
  padding: 4.1666666667% 1em;
  margin: 3.125em auto;
  --item-head:clamp(420px, calc(50%), 550px);
  --item-gallery:clamp(150px, calc(250% / 11), 250px);
}
.lesson-school-fee .-row {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  gap: 1em;
  width: 100%;
}
.lesson-school-fee .-row .-head {
  flex-basis: 260px;
}
.lesson-school-fee .-row .-body {
  flex-basis: 400px;
  flex-grow: 1;
}
.lesson-school-fee .--fee-label {
  display: grid;
  background-color: #f2f2f2;
  text-align: center;
  line-height: 2.5;
  text-align: center;
  width: 15em;
  grid-template-columns: 6.25em 8.75em;
}
.lesson-school-fee .--fee-item {
  background-color: var(--primary);
  color: #fff;
}
.lesson-school-fee .--fee-detail {
  width: 100%;
  margin: 1.5em 0;
}
.lesson-school-fee .--fee-detail tr {
  border-top: 1px #cbcbce solid;
  border-bottom: 1px #cbcbce solid;
}
.lesson-school-fee .--fee-detail th {
  text-align: left;
  padding: 0.5em 0;
  width: 5.625em;
}
@media print, screen and (max-width: 767px) {
  .lesson-school-block {
    --item-head:clamp(300px, calc(50%), 550px);
  }
  .lesson-school-block .-item-head {
    gap: 1.5em;
  }
  .lesson-school-fee .-row {
    flex-wrap: wrap;
  }
}
.lesson-trial-block {
  background-color: #f2f2f2;
  padding: 4.1666666667% 1em;
  margin-bottom: clamp(3em, 10%, 100px);
}
.lesson-trial-block .-inner {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.lesson-trial-block .-img {
  margin-bottom: 3em;
}
.lesson-trial-block .-box {
  background-color: #fafcef;
  padding: 4.5454545455%;
  margin: 2em auto;
}
.lesson-trial .-btn {
  display: flex;
  justify-content: center;
  --btn-w:calc(480em / 20);
  --btn-h: calc(90em / 20);
}
.lesson-trial .-btn .btn {
  padding-left: 3em;
  padding-right: 3em;
}
.lesson-visit {
  background-color: var(--sub);
}
.lesson-visit .-table {
  margin: 2.5em 0 1.5em;
  width: 100%;
  background-color: #fff;
}
.lesson-visit .-table th, .lesson-visit .-table td {
  padding: 0.5em;
  text-align: center;
  border: 1px #cbcbce solid;
}
.lesson-visit .-table th {
  background-color: #d2e5c9;
}
.lesson-visit .-table th:first-child {
  width: 25%;
}
.lesson-visit .-table th:nth-child(2), .lesson-visit .-table th:nth-child(3) {
  width: 37.5%;
}
.lesson-visit-block {
  margin-top: var(--sec-top);
  background-color: #fff;
  padding: 4.1666666667%;
  margin-bottom: clamp(3em, 10%, 100px);
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em 7.5%;
}
.lesson-visit-block .-img {
  margin-left: auto;
}
.lesson-visit-block .-text {
  flex-basis: clamp(400px, 65.8333333333%, 790px);
  flex-grow: 1;
}
.lesson-visit .-btn {
  display: flex;
  justify-content: center;
  --btn-w:calc(480em / 20);
  --btn-h: calc(90em / 20);
  --btn-align: flex-start;
}
.lesson-visit .-btn .btn {
  padding-left: 2em;
  padding-right: 3em;
}
.lesson-howto .-course-list {
  display: grid;
  gap: 4em;
  margin-top: 4em;
}
.lesson-howto .-course-table {
  display: grid;
  grid-template-columns: 7.875em 7.875em 1fr;
  border-top: 1px #bdbdbd solid;
  border-bottom: 1px #bdbdbd solid;
  padding: 4px 0;
  margin: 0.85em 0 0.5em;
}
.lesson-howto .-course-table .--unit, .lesson-howto .-course-table .--time {
  text-align: center;
  border-right: 1px #bdbdbd solid;
}
.lesson-howto .-course-table p {
  margin-left: 1.5em;
}

.access-sec {
  background-color: var(--sub);
}
.access-sec-block {
  background-color: #fff;
  padding: 4.1666666667% 1em;
  margin: 0 auto 3.125em;
  --item-head:clamp(420px, calc(50%), 550px);
  --item-gallery:clamp(150px, calc(250% / 11), 250px);
}
.access-sec-block .-item {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.access-sec-block .-item-head {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--item-head), 1fr));
  margin-bottom: 3em;
}
.access-sec-block .-item-title {
  margin-bottom: 1em;
}
.access-sec-block .-item-address {
  margin-bottom: 0.5em;
}
.access-sec-block .-item-map {
  max-width: 1000px;
  width: 100%;
  margin: 3em auto 1.5em;
  --btn-w:140px;
  --btn-h:30px;
  --btn-align:flex-start;
}
.access-sec-block .-item-map-desc {
  margin-top: 2em;
  display: flex;
  align-items: center;
  gap: 0.5em 1em;
  flex-wrap: wrap;
}
.access-sec-block .-item-btm {
  border-top: 1px #dadada solid;
  margin-top: 1.5em;
  padding-top: 1.5em;
}
.access-sec-block .-item-tag {
  display: inline-block;
  border-radius: 9999px;
  background-color: #e4edc9;
  padding: 0.5em 1em;
  line-height: 1.1;
}
.access-sec-block .-item-taglist {
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
}
.access-sec-block .-item-access {
  flex-grow: 1;
}
.access-sec-block .-item-access-row {
  margin-top: 1.875em;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em 2em;
}
.access-sec-block .-item-access-row .-train {
  flex-basis: 59.0909090909%;
}
.access-sec-block .-item-access {
  display: grid;
  grid-template-columns: 120px auto;
  gap: 1em;
  align-items: center;
}
.access-sec-block .-item-access .-icon {
  min-height: 6.8571428571em;
  background-color: var(--sub);
  color: var(--primary);
  text-align: center;
  padding: 1em;
}
.access-sec-block .-item-access .-text {
  line-height: 1.875;
}
.access-sec-block .-item-detail {
  margin-top: 1.5em;
}
.access-sec-block .-item-detail table tr {
  border-top: 1px #dadada solid;
  border-bottom: 1px #dadada solid;
}
.access-sec-block .-item-detail table th {
  vertical-align: top;
  color: var(--primary);
  text-align: left;
  padding: 1em 0;
  width: 8.2857142857em;
}
.access-sec-block .-item-detail table td {
  padding: 1em 0;
}
.access-sec-block .-item-detail .--day {
  flex-basis: 4.2857142857em;
  border-right: 2px var(--primary) solid;
}
.access-sec-block .-item-detail .--day-list li {
  display: flex;
  gap: 1.2em;
  line-height: 1.2;
  margin-bottom: 1em;
}
@media print, screen and (max-width: 767px) {
  .access-sec-block {
    --item-head:clamp(300px, calc(50%), 550px);
  }
  .access-sec-block .-item-head {
    gap: 1.5em;
  }
}

.contact-sec {
  background-color: var(--sub);
  --container:1030px;
}
.contact-sec-tel .-tel-block {
  display: flex;
  align-items: baseline;
  line-height: 1;
  gap: 2em;
  flex-wrap: wrap;
}
.contact-sec-tel .-tel-link {
  color: var(--primary);
}
.contact-sec-tel .-tel-ic {
  margin-right: 0.6em;
}
.contact-sec-mail {
  border-top: 1px var(--primary) solid;
  margin-top: 2.5em;
  padding-top: 2.5em;
}/*# sourceMappingURL=style.css.map */