@charset "UTF-8";
:root {
  --color-def: #000;
  --color-title: #2d8551;
  --color-link: #2d8551;
  --accent: #eeb71a;
  --primary: #2d8551;
  --primary-sub: #2d8584;
  --primary-sub_02: #2d858420;
  --primary_015: #2d855215;
  --primary-2: #91bc4a;
  --bg-body: #fff;
  --lh: calc(30 / 16);
  --size-def: clamp(1.4rem, calc(13vmin / 4), 1.6rem);
  --size-bigger: clamp(1.4rem, calc(14vmin / 4), 1.8rem);
  --size-title: clamp(2rem, calc(20vmin / 4), 3.0rem);
  --size-title-mid: clamp(2.0rem, calc(20vmin / 4), 3.5rem);
  --size-title-large: clamp(2.2rem, calc(22vmin / 4), 4.0rem);
  --size-title-sub: clamp(1.6rem, calc(16vmin / 4), 2.2rem);
  --size-title-huge: clamp(3.5rem, calc(35vmin / 4), 7rem);
  --size-mid: clamp(1.6rem, calc(16vmin / 4), 2.0rem);
  --size-large: clamp(1.8rem, calc(18vmin / 4), 2.4rem);
  --size-small: clamp(1.2rem, calc(12vmin / 4), 1.4rem);
  --size-xsmall: clamp(1.0rem, calc(10vmin / 4), 1.2rem);
  --size-huge: clamp(2.4rem, calc(24vmin / 4), 5rem);
  --size-catch: clamp(2.2rem, calc(22vmin / 4), 3.6rem);
  --header-color: #2d8551;
  --header-bg: #fff;
  --header-h: 120px;
  --btn-color:#fff;
  --btn-bg: #2d8551;
  --btn-color_h:#2d8551;
  --btn-bg_h: #fff;
  --btn-w: calc(170em / 16);
  --btn-h: calc(50em / 16);
  --footer-color: #000;
  --footer-bg: #eeeeee;
  --ls-0: 0;
  --ls-def: 0.025em;
  --ls-narrow: 0.02em;
  --ls-wide: 0.075em;
  --ls-title: 0.2em;
  --ls-huge: 0.4em;
  --container: 1230px;
  --container-pad: 15px;
  --section-space: clamp(3em,calc(8%),9rem);
  --ff-gothic: "Noto Sans JP","Yu Gothic", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",sans-serif;
  --ff-mincho: "Noto Serif JP", serif;
  --ffserif: "Noto Serif JP", serif;
  --ff-en: "Barlow", sans-serif;
  --color-faq-btn: #DFDCD7;
  --bg-circle: #E0DCD6;
  --bg-box: #e0dcd6;
  --bg-footer: #E0DCD6;
  --bg-header: rgb(255, 255, 255);
  --bg-btn: transparent;
  --easing: cubic-bezier(0.550, 0.085, 0.680, 0.530);
}

@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-style: normal;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
  text-decoration: none;
}

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

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

.pr0 {
  padding-right: 0rem;
}

.pb0 {
  padding-bottom: 0rem;
}

.pl0 {
  padding-left: 0rem;
}

.mt0 {
  margin-top: 0rem;
}

.mr0 {
  margin-right: 0rem;
}

.mb0 {
  margin-bottom: 0rem;
}

.ml0 {
  margin-left: 0rem;
}

.pt5 {
  padding-top: 0.5rem;
}

.pr5 {
  padding-right: 0.5rem;
}

.pb5 {
  padding-bottom: 0.5rem;
}

.pl5 {
  padding-left: 0.5rem;
}

.mt5 {
  margin-top: 0.5rem;
}

.mr5 {
  margin-right: 0.5rem;
}

.mb5 {
  margin-bottom: 0.5rem;
}

.ml5 {
  margin-left: 0.5rem;
}

.pt10 {
  padding-top: 1rem;
}

.pr10 {
  padding-right: 1rem;
}

.pb10 {
  padding-bottom: 1rem;
}

.pl10 {
  padding-left: 1rem;
}

.mt10 {
  margin-top: 1rem;
}

.mr10 {
  margin-right: 1rem;
}

.mb10 {
  margin-bottom: 1rem;
}

.ml10 {
  margin-left: 1rem;
}

.pt15 {
  padding-top: 1.5rem;
}

.pr15 {
  padding-right: 1.5rem;
}

.pb15 {
  padding-bottom: 1.5rem;
}

.pl15 {
  padding-left: 1.5rem;
}

.mt15 {
  margin-top: 1.5rem;
}

.mr15 {
  margin-right: 1.5rem;
}

.mb15 {
  margin-bottom: 1.5rem;
}

.ml15 {
  margin-left: 1.5rem;
}

.pt20 {
  padding-top: 2rem;
}

.pr20 {
  padding-right: 2rem;
}

.pb20 {
  padding-bottom: 2rem;
}

.pl20 {
  padding-left: 2rem;
}

.mt20 {
  margin-top: 2rem;
}

.mr20 {
  margin-right: 2rem;
}

.mb20 {
  margin-bottom: 2rem;
}

.ml20 {
  margin-left: 2rem;
}

.pt25 {
  padding-top: 2.5rem;
}

.pr25 {
  padding-right: 2.5rem;
}

.pb25 {
  padding-bottom: 2.5rem;
}

.pl25 {
  padding-left: 2.5rem;
}

.mt25 {
  margin-top: 2.5rem;
}

.mr25 {
  margin-right: 2.5rem;
}

.mb25 {
  margin-bottom: 2.5rem;
}

.ml25 {
  margin-left: 2.5rem;
}

.pt30 {
  padding-top: 3rem;
}

.pr30 {
  padding-right: 3rem;
}

.pb30 {
  padding-bottom: 3rem;
}

.pl30 {
  padding-left: 3rem;
}

.mt30 {
  margin-top: 3rem;
}

.mr30 {
  margin-right: 3rem;
}

.mb30 {
  margin-bottom: 3rem;
}

.ml30 {
  margin-left: 3rem;
}

.pt35 {
  padding-top: 3.5rem;
}

.pr35 {
  padding-right: 3.5rem;
}

.pb35 {
  padding-bottom: 3.5rem;
}

.pl35 {
  padding-left: 3.5rem;
}

.mt35 {
  margin-top: 3.5rem;
}

.mr35 {
  margin-right: 3.5rem;
}

.mb35 {
  margin-bottom: 3.5rem;
}

.ml35 {
  margin-left: 3.5rem;
}

.pt40 {
  padding-top: 4rem;
}

.pr40 {
  padding-right: 4rem;
}

.pb40 {
  padding-bottom: 4rem;
}

.pl40 {
  padding-left: 4rem;
}

.mt40 {
  margin-top: 4rem;
}

.mr40 {
  margin-right: 4rem;
}

.mb40 {
  margin-bottom: 4rem;
}

.ml40 {
  margin-left: 4rem;
}

.pt45 {
  padding-top: 4.5rem;
}

.pr45 {
  padding-right: 4.5rem;
}

.pb45 {
  padding-bottom: 4.5rem;
}

.pl45 {
  padding-left: 4.5rem;
}

.mt45 {
  margin-top: 4.5rem;
}

.mr45 {
  margin-right: 4.5rem;
}

.mb45 {
  margin-bottom: 4.5rem;
}

.ml45 {
  margin-left: 4.5rem;
}

.pt50 {
  padding-top: 5rem;
}

.pr50 {
  padding-right: 5rem;
}

.pb50 {
  padding-bottom: 5rem;
}

.pl50 {
  padding-left: 5rem;
}

.mt50 {
  margin-top: 5rem;
}

.mr50 {
  margin-right: 5rem;
}

.mb50 {
  margin-bottom: 5rem;
}

.ml50 {
  margin-left: 5rem;
}

.pt55 {
  padding-top: 5.5rem;
}

.pr55 {
  padding-right: 5.5rem;
}

.pb55 {
  padding-bottom: 5.5rem;
}

.pl55 {
  padding-left: 5.5rem;
}

.mt55 {
  margin-top: 5.5rem;
}

.mr55 {
  margin-right: 5.5rem;
}

.mb55 {
  margin-bottom: 5.5rem;
}

.ml55 {
  margin-left: 5.5rem;
}

.pt60 {
  padding-top: 6rem;
}

.pr60 {
  padding-right: 6rem;
}

.pb60 {
  padding-bottom: 6rem;
}

.pl60 {
  padding-left: 6rem;
}

.mt60 {
  margin-top: 6rem;
}

.mr60 {
  margin-right: 6rem;
}

.mb60 {
  margin-bottom: 6rem;
}

.ml60 {
  margin-left: 6rem;
}

.pt65 {
  padding-top: 6.5rem;
}

.pr65 {
  padding-right: 6.5rem;
}

.pb65 {
  padding-bottom: 6.5rem;
}

.pl65 {
  padding-left: 6.5rem;
}

.mt65 {
  margin-top: 6.5rem;
}

.mr65 {
  margin-right: 6.5rem;
}

.mb65 {
  margin-bottom: 6.5rem;
}

.ml65 {
  margin-left: 6.5rem;
}

.pt70 {
  padding-top: 7rem;
}

.pr70 {
  padding-right: 7rem;
}

.pb70 {
  padding-bottom: 7rem;
}

.pl70 {
  padding-left: 7rem;
}

.mt70 {
  margin-top: 7rem;
}

.mr70 {
  margin-right: 7rem;
}

.mb70 {
  margin-bottom: 7rem;
}

.ml70 {
  margin-left: 7rem;
}

.pt75 {
  padding-top: 7.5rem;
}

.pr75 {
  padding-right: 7.5rem;
}

.pb75 {
  padding-bottom: 7.5rem;
}

.pl75 {
  padding-left: 7.5rem;
}

.mt75 {
  margin-top: 7.5rem;
}

.mr75 {
  margin-right: 7.5rem;
}

.mb75 {
  margin-bottom: 7.5rem;
}

.ml75 {
  margin-left: 7.5rem;
}

.pt80 {
  padding-top: 8rem;
}

.pr80 {
  padding-right: 8rem;
}

.pb80 {
  padding-bottom: 8rem;
}

.pl80 {
  padding-left: 8rem;
}

.mt80 {
  margin-top: 8rem;
}

.mr80 {
  margin-right: 8rem;
}

.mb80 {
  margin-bottom: 8rem;
}

.ml80 {
  margin-left: 8rem;
}

.pt85 {
  padding-top: 8.5rem;
}

.pr85 {
  padding-right: 8.5rem;
}

.pb85 {
  padding-bottom: 8.5rem;
}

.pl85 {
  padding-left: 8.5rem;
}

.mt85 {
  margin-top: 8.5rem;
}

.mr85 {
  margin-right: 8.5rem;
}

.mb85 {
  margin-bottom: 8.5rem;
}

.ml85 {
  margin-left: 8.5rem;
}

.pt90 {
  padding-top: 9rem;
}

.pr90 {
  padding-right: 9rem;
}

.pb90 {
  padding-bottom: 9rem;
}

.pl90 {
  padding-left: 9rem;
}

.mt90 {
  margin-top: 9rem;
}

.mr90 {
  margin-right: 9rem;
}

.mb90 {
  margin-bottom: 9rem;
}

.ml90 {
  margin-left: 9rem;
}

.pt95 {
  padding-top: 9.5rem;
}

.pr95 {
  padding-right: 9.5rem;
}

.pb95 {
  padding-bottom: 9.5rem;
}

.pl95 {
  padding-left: 9.5rem;
}

.mt95 {
  margin-top: 9.5rem;
}

.mr95 {
  margin-right: 9.5rem;
}

.mb95 {
  margin-bottom: 9.5rem;
}

.ml95 {
  margin-left: 9.5rem;
}

.pt100 {
  padding-top: 10rem;
}

.pr100 {
  padding-right: 10rem;
}

.pb100 {
  padding-bottom: 10rem;
}

.pl100 {
  padding-left: 10rem;
}

.mt100 {
  margin-top: 10rem;
}

.mr100 {
  margin-right: 10rem;
}

.mb100 {
  margin-bottom: 10rem;
}

.ml100 {
  margin-left: 10rem;
}

.pt105 {
  padding-top: 10.5rem;
}

.pr105 {
  padding-right: 10.5rem;
}

.pb105 {
  padding-bottom: 10.5rem;
}

.pl105 {
  padding-left: 10.5rem;
}

.mt105 {
  margin-top: 10.5rem;
}

.mr105 {
  margin-right: 10.5rem;
}

.mb105 {
  margin-bottom: 10.5rem;
}

.ml105 {
  margin-left: 10.5rem;
}

.pt110 {
  padding-top: 11rem;
}

.pr110 {
  padding-right: 11rem;
}

.pb110 {
  padding-bottom: 11rem;
}

.pl110 {
  padding-left: 11rem;
}

.mt110 {
  margin-top: 11rem;
}

.mr110 {
  margin-right: 11rem;
}

.mb110 {
  margin-bottom: 11rem;
}

.ml110 {
  margin-left: 11rem;
}

.pt115 {
  padding-top: 11.5rem;
}

.pr115 {
  padding-right: 11.5rem;
}

.pb115 {
  padding-bottom: 11.5rem;
}

.pl115 {
  padding-left: 11.5rem;
}

.mt115 {
  margin-top: 11.5rem;
}

.mr115 {
  margin-right: 11.5rem;
}

.mb115 {
  margin-bottom: 11.5rem;
}

.ml115 {
  margin-left: 11.5rem;
}

.pt120 {
  padding-top: 12rem;
}

.pr120 {
  padding-right: 12rem;
}

.pb120 {
  padding-bottom: 12rem;
}

.pl120 {
  padding-left: 12rem;
}

.mt120 {
  margin-top: 12rem;
}

.mr120 {
  margin-right: 12rem;
}

.mb120 {
  margin-bottom: 12rem;
}

.ml120 {
  margin-left: 12rem;
}

.pt125 {
  padding-top: 12.5rem;
}

.pr125 {
  padding-right: 12.5rem;
}

.pb125 {
  padding-bottom: 12.5rem;
}

.pl125 {
  padding-left: 12.5rem;
}

.mt125 {
  margin-top: 12.5rem;
}

.mr125 {
  margin-right: 12.5rem;
}

.mb125 {
  margin-bottom: 12.5rem;
}

.ml125 {
  margin-left: 12.5rem;
}

.pt130 {
  padding-top: 13rem;
}

.pr130 {
  padding-right: 13rem;
}

.pb130 {
  padding-bottom: 13rem;
}

.pl130 {
  padding-left: 13rem;
}

.mt130 {
  margin-top: 13rem;
}

.mr130 {
  margin-right: 13rem;
}

.mb130 {
  margin-bottom: 13rem;
}

.ml130 {
  margin-left: 13rem;
}

.pt135 {
  padding-top: 13.5rem;
}

.pr135 {
  padding-right: 13.5rem;
}

.pb135 {
  padding-bottom: 13.5rem;
}

.pl135 {
  padding-left: 13.5rem;
}

.mt135 {
  margin-top: 13.5rem;
}

.mr135 {
  margin-right: 13.5rem;
}

.mb135 {
  margin-bottom: 13.5rem;
}

.ml135 {
  margin-left: 13.5rem;
}

.pt140 {
  padding-top: 14rem;
}

.pr140 {
  padding-right: 14rem;
}

.pb140 {
  padding-bottom: 14rem;
}

.pl140 {
  padding-left: 14rem;
}

.mt140 {
  margin-top: 14rem;
}

.mr140 {
  margin-right: 14rem;
}

.mb140 {
  margin-bottom: 14rem;
}

.ml140 {
  margin-left: 14rem;
}

.pt145 {
  padding-top: 14.5rem;
}

.pr145 {
  padding-right: 14.5rem;
}

.pb145 {
  padding-bottom: 14.5rem;
}

.pl145 {
  padding-left: 14.5rem;
}

.mt145 {
  margin-top: 14.5rem;
}

.mr145 {
  margin-right: 14.5rem;
}

.mb145 {
  margin-bottom: 14.5rem;
}

.ml145 {
  margin-left: 14.5rem;
}

.pt150 {
  padding-top: 15rem;
}

.pr150 {
  padding-right: 15rem;
}

.pb150 {
  padding-bottom: 15rem;
}

.pl150 {
  padding-left: 15rem;
}

.mt150 {
  margin-top: 15rem;
}

.mr150 {
  margin-right: 15rem;
}

.mb150 {
  margin-bottom: 15rem;
}

.ml150 {
  margin-left: 15rem;
}

.pt155 {
  padding-top: 15.5rem;
}

.pr155 {
  padding-right: 15.5rem;
}

.pb155 {
  padding-bottom: 15.5rem;
}

.pl155 {
  padding-left: 15.5rem;
}

.mt155 {
  margin-top: 15.5rem;
}

.mr155 {
  margin-right: 15.5rem;
}

.mb155 {
  margin-bottom: 15.5rem;
}

.ml155 {
  margin-left: 15.5rem;
}

.pt160 {
  padding-top: 16rem;
}

.pr160 {
  padding-right: 16rem;
}

.pb160 {
  padding-bottom: 16rem;
}

.pl160 {
  padding-left: 16rem;
}

.mt160 {
  margin-top: 16rem;
}

.mr160 {
  margin-right: 16rem;
}

.mb160 {
  margin-bottom: 16rem;
}

.ml160 {
  margin-left: 16rem;
}

.pt165 {
  padding-top: 16.5rem;
}

.pr165 {
  padding-right: 16.5rem;
}

.pb165 {
  padding-bottom: 16.5rem;
}

.pl165 {
  padding-left: 16.5rem;
}

.mt165 {
  margin-top: 16.5rem;
}

.mr165 {
  margin-right: 16.5rem;
}

.mb165 {
  margin-bottom: 16.5rem;
}

.ml165 {
  margin-left: 16.5rem;
}

.pt170 {
  padding-top: 17rem;
}

.pr170 {
  padding-right: 17rem;
}

.pb170 {
  padding-bottom: 17rem;
}

.pl170 {
  padding-left: 17rem;
}

.mt170 {
  margin-top: 17rem;
}

.mr170 {
  margin-right: 17rem;
}

.mb170 {
  margin-bottom: 17rem;
}

.ml170 {
  margin-left: 17rem;
}

.pt175 {
  padding-top: 17.5rem;
}

.pr175 {
  padding-right: 17.5rem;
}

.pb175 {
  padding-bottom: 17.5rem;
}

.pl175 {
  padding-left: 17.5rem;
}

.mt175 {
  margin-top: 17.5rem;
}

.mr175 {
  margin-right: 17.5rem;
}

.mb175 {
  margin-bottom: 17.5rem;
}

.ml175 {
  margin-left: 17.5rem;
}

.pt180 {
  padding-top: 18rem;
}

.pr180 {
  padding-right: 18rem;
}

.pb180 {
  padding-bottom: 18rem;
}

.pl180 {
  padding-left: 18rem;
}

.mt180 {
  margin-top: 18rem;
}

.mr180 {
  margin-right: 18rem;
}

.mb180 {
  margin-bottom: 18rem;
}

.ml180 {
  margin-left: 18rem;
}

.pt185 {
  padding-top: 18.5rem;
}

.pr185 {
  padding-right: 18.5rem;
}

.pb185 {
  padding-bottom: 18.5rem;
}

.pl185 {
  padding-left: 18.5rem;
}

.mt185 {
  margin-top: 18.5rem;
}

.mr185 {
  margin-right: 18.5rem;
}

.mb185 {
  margin-bottom: 18.5rem;
}

.ml185 {
  margin-left: 18.5rem;
}

.pt190 {
  padding-top: 19rem;
}

.pr190 {
  padding-right: 19rem;
}

.pb190 {
  padding-bottom: 19rem;
}

.pl190 {
  padding-left: 19rem;
}

.mt190 {
  margin-top: 19rem;
}

.mr190 {
  margin-right: 19rem;
}

.mb190 {
  margin-bottom: 19rem;
}

.ml190 {
  margin-left: 19rem;
}

.pt195 {
  padding-top: 19.5rem;
}

.pr195 {
  padding-right: 19.5rem;
}

.pb195 {
  padding-bottom: 19.5rem;
}

.pl195 {
  padding-left: 19.5rem;
}

.mt195 {
  margin-top: 19.5rem;
}

.mr195 {
  margin-right: 19.5rem;
}

.mb195 {
  margin-bottom: 19.5rem;
}

.ml195 {
  margin-left: 19.5rem;
}

.pt200 {
  padding-top: 20rem;
}

.pr200 {
  padding-right: 20rem;
}

.pb200 {
  padding-bottom: 20rem;
}

.pl200 {
  padding-left: 20rem;
}

.mt200 {
  margin-top: 20rem;
}

.mr200 {
  margin-right: 20rem;
}

.mb200 {
  margin-bottom: 20rem;
}

.ml200 {
  margin-left: 20rem;
}

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

/* -----------------------------
 font-size
----------------------------- */
.size-10 {
  font-size: 1rem;
}

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

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

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

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

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

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

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

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

.size-19 {
  font-size: 1.9rem;
}

.size-20 {
  font-size: 2rem;
}

.size-21 {
  font-size: 2.1rem;
}

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

.size-23 {
  font-size: 2.3rem;
}

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

.size-25 {
  font-size: 2.5rem;
}

.size-26 {
  font-size: 2.6rem;
}

.size-27 {
  font-size: 2.7rem;
}

.size-28 {
  font-size: 2.8rem;
}

.size-29 {
  font-size: 2.9rem;
}

.size-30 {
  font-size: 3rem;
}

.size-31 {
  font-size: 3.1rem;
}

.size-32 {
  font-size: 3.2rem;
}

.size-33 {
  font-size: 3.3rem;
}

.size-34 {
  font-size: 3.4rem;
}

.size-35 {
  font-size: 3.5rem;
}

.size-36 {
  font-size: 3.6rem;
}

.size-37 {
  font-size: 3.7rem;
}

.size-38 {
  font-size: 3.8rem;
}

.size-39 {
  font-size: 3.9rem;
}

.size-40 {
  font-size: 4rem;
}

.size-41 {
  font-size: 4.1rem;
}

.size-42 {
  font-size: 4.2rem;
}

.size-43 {
  font-size: 4.3rem;
}

.size-44 {
  font-size: 4.4rem;
}

.size-45 {
  font-size: 4.5rem;
}

.size-46 {
  font-size: 4.6rem;
}

.size-47 {
  font-size: 4.7rem;
}

.size-48 {
  font-size: 4.8rem;
}

.size-49 {
  font-size: 4.9rem;
}

.size-50 {
  font-size: 5rem;
}

.size-51 {
  font-size: 5.1rem;
}

.size-52 {
  font-size: 5.2rem;
}

.size-53 {
  font-size: 5.3rem;
}

.size-54 {
  font-size: 5.4rem;
}

.size-55 {
  font-size: 5.5rem;
}

.size-56 {
  font-size: 5.6rem;
}

.size-57 {
  font-size: 5.7rem;
}

.size-58 {
  font-size: 5.8rem;
}

.size-59 {
  font-size: 5.9rem;
}

.size-60 {
  font-size: 6rem;
}

.size-61 {
  font-size: 6.1rem;
}

.size-62 {
  font-size: 6.2rem;
}

.size-63 {
  font-size: 6.3rem;
}

.size-64 {
  font-size: 6.4rem;
}

.size-65 {
  font-size: 6.5rem;
}

.size-66 {
  font-size: 6.6rem;
}

.size-67 {
  font-size: 6.7rem;
}

.size-68 {
  font-size: 6.8rem;
}

.size-69 {
  font-size: 6.9rem;
}

.size-70 {
  font-size: 7rem;
}

.size-71 {
  font-size: 7.1rem;
}

.size-72 {
  font-size: 7.2rem;
}

.size-73 {
  font-size: 7.3rem;
}

.size-74 {
  font-size: 7.4rem;
}

.size-75 {
  font-size: 7.5rem;
}

.size-76 {
  font-size: 7.6rem;
}

.size-77 {
  font-size: 7.7rem;
}

.size-78 {
  font-size: 7.8rem;
}

.size-79 {
  font-size: 7.9rem;
}

.size-80 {
  font-size: 8rem;
}

.size-81 {
  font-size: 8.1rem;
}

.size-82 {
  font-size: 8.2rem;
}

.size-83 {
  font-size: 8.3rem;
}

.size-84 {
  font-size: 8.4rem;
}

.size-85 {
  font-size: 8.5rem;
}

.size-86 {
  font-size: 8.6rem;
}

.size-87 {
  font-size: 8.7rem;
}

.size-88 {
  font-size: 8.8rem;
}

.size-89 {
  font-size: 8.9rem;
}

.size-90 {
  font-size: 9rem;
}

.size-91 {
  font-size: 9.1rem;
}

.size-92 {
  font-size: 9.2rem;
}

.size-93 {
  font-size: 9.3rem;
}

.size-94 {
  font-size: 9.4rem;
}

.size-95 {
  font-size: 9.5rem;
}

.size-96 {
  font-size: 9.6rem;
}

.size-97 {
  font-size: 9.7rem;
}

.size-98 {
  font-size: 9.8rem;
}

.size-99 {
  font-size: 9.9rem;
}

.size-100 {
  font-size: 10rem;
}

.size-101 {
  font-size: 10.1rem;
}

.size-102 {
  font-size: 10.2rem;
}

.size-103 {
  font-size: 10.3rem;
}

.size-104 {
  font-size: 10.4rem;
}

.size-105 {
  font-size: 10.5rem;
}

.size-106 {
  font-size: 10.6rem;
}

.size-107 {
  font-size: 10.7rem;
}

.size-108 {
  font-size: 10.8rem;
}

.size-109 {
  font-size: 10.9rem;
}

.size-110 {
  font-size: 11rem;
}

.size-111 {
  font-size: 11.1rem;
}

.size-112 {
  font-size: 11.2rem;
}

.size-113 {
  font-size: 11.3rem;
}

.size-114 {
  font-size: 11.4rem;
}

.size-115 {
  font-size: 11.5rem;
}

.size-116 {
  font-size: 11.6rem;
}

.size-117 {
  font-size: 11.7rem;
}

.size-118 {
  font-size: 11.8rem;
}

.size-119 {
  font-size: 11.9rem;
}

.size-120 {
  font-size: 12rem;
}

.size-121 {
  font-size: 12.1rem;
}

.size-122 {
  font-size: 12.2rem;
}

.size-123 {
  font-size: 12.3rem;
}

.size-124 {
  font-size: 12.4rem;
}

.size-125 {
  font-size: 12.5rem;
}

.size-126 {
  font-size: 12.6rem;
}

.size-127 {
  font-size: 12.7rem;
}

.size-128 {
  font-size: 12.8rem;
}

.size-129 {
  font-size: 12.9rem;
}

.size-130 {
  font-size: 13rem;
}

.size-131 {
  font-size: 13.1rem;
}

.size-132 {
  font-size: 13.2rem;
}

.size-133 {
  font-size: 13.3rem;
}

.size-134 {
  font-size: 13.4rem;
}

.size-135 {
  font-size: 13.5rem;
}

.size-136 {
  font-size: 13.6rem;
}

.size-137 {
  font-size: 13.7rem;
}

.size-138 {
  font-size: 13.8rem;
}

.size-139 {
  font-size: 13.9rem;
}

.size-140 {
  font-size: 14rem;
}

.size-141 {
  font-size: 14.1rem;
}

.size-142 {
  font-size: 14.2rem;
}

.size-143 {
  font-size: 14.3rem;
}

.size-144 {
  font-size: 14.4rem;
}

.size-145 {
  font-size: 14.5rem;
}

.size-146 {
  font-size: 14.6rem;
}

.size-147 {
  font-size: 14.7rem;
}

.size-148 {
  font-size: 14.8rem;
}

.size-149 {
  font-size: 14.9rem;
}

.size-150 {
  font-size: 15rem;
}

.size-151 {
  font-size: 15.1rem;
}

.size-152 {
  font-size: 15.2rem;
}

.size-153 {
  font-size: 15.3rem;
}

.size-154 {
  font-size: 15.4rem;
}

.size-155 {
  font-size: 15.5rem;
}

.size-156 {
  font-size: 15.6rem;
}

.size-157 {
  font-size: 15.7rem;
}

.size-158 {
  font-size: 15.8rem;
}

.size-159 {
  font-size: 15.9rem;
}

.size-160 {
  font-size: 16rem;
}

.size-161 {
  font-size: 16.1rem;
}

.size-162 {
  font-size: 16.2rem;
}

.size-163 {
  font-size: 16.3rem;
}

.size-164 {
  font-size: 16.4rem;
}

.size-165 {
  font-size: 16.5rem;
}

.size-166 {
  font-size: 16.6rem;
}

.size-167 {
  font-size: 16.7rem;
}

.size-168 {
  font-size: 16.8rem;
}

.size-169 {
  font-size: 16.9rem;
}

.size-170 {
  font-size: 17rem;
}

.size-171 {
  font-size: 17.1rem;
}

.size-172 {
  font-size: 17.2rem;
}

.size-173 {
  font-size: 17.3rem;
}

.size-174 {
  font-size: 17.4rem;
}

.size-175 {
  font-size: 17.5rem;
}

.size-176 {
  font-size: 17.6rem;
}

.size-177 {
  font-size: 17.7rem;
}

.size-178 {
  font-size: 17.8rem;
}

.size-179 {
  font-size: 17.9rem;
}

.size-180 {
  font-size: 18rem;
}

.size-181 {
  font-size: 18.1rem;
}

.size-182 {
  font-size: 18.2rem;
}

.size-183 {
  font-size: 18.3rem;
}

.size-184 {
  font-size: 18.4rem;
}

.size-185 {
  font-size: 18.5rem;
}

.size-186 {
  font-size: 18.6rem;
}

.size-187 {
  font-size: 18.7rem;
}

.size-188 {
  font-size: 18.8rem;
}

.size-189 {
  font-size: 18.9rem;
}

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

.lh11 {
  line-height: 1.1;
}

.lh12 {
  line-height: 1.2;
}

.lh13 {
  line-height: 1.3;
}

.lh14 {
  line-height: 1.4;
}

.lh15 {
  line-height: 1.5;
}

.lh16 {
  line-height: 1.6;
}

.lh17 {
  line-height: 1.7;
}

.lh18 {
  line-height: 1.8;
}

.lh19 {
  line-height: 1.9;
}

.lh20 {
  line-height: 2;
}

.lh21 {
  line-height: 2.1;
}

.lh22 {
  line-height: 2.2;
}

.lh23 {
  line-height: 2.3;
}

.lh24 {
  line-height: 2.4;
}

.lh25 {
  line-height: 2.5;
}

.lh26 {
  line-height: 2.6;
}

.lh27 {
  line-height: 2.7;
}

.lh28 {
  line-height: 2.8;
}

.lh29 {
  line-height: 2.9;
}

.lh30 {
  line-height: 3;
}

.lh31 {
  line-height: 3.1;
}

.lh32 {
  line-height: 3.2;
}

.lh33 {
  line-height: 3.3;
}

.lh34 {
  line-height: 3.4;
}

.lh35 {
  line-height: 3.5;
}

.lh36 {
  line-height: 3.6;
}

.lh37 {
  line-height: 3.7;
}

.lh38 {
  line-height: 3.8;
}

.lh39 {
  line-height: 3.9;
}

.lh40 {
  line-height: 4;
}

.lh41 {
  line-height: 4.1;
}

.lh42 {
  line-height: 4.2;
}

.lh43 {
  line-height: 4.3;
}

.lh44 {
  line-height: 4.4;
}

.lh45 {
  line-height: 4.5;
}

.lh46 {
  line-height: 4.6;
}

.lh47 {
  line-height: 4.7;
}

.lh48 {
  line-height: 4.8;
}

.lh49 {
  line-height: 4.9;
}

.lh50 {
  line-height: 5;
}

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

.mw110 {
  max-width: 110px;
}

.mw120 {
  max-width: 120px;
}

.mw130 {
  max-width: 130px;
}

.mw140 {
  max-width: 140px;
}

.mw150 {
  max-width: 150px;
}

.mw160 {
  max-width: 160px;
}

.mw170 {
  max-width: 170px;
}

.mw180 {
  max-width: 180px;
}

.mw190 {
  max-width: 190px;
}

.mw200 {
  max-width: 200px;
}

.mw210 {
  max-width: 210px;
}

.mw220 {
  max-width: 220px;
}

.mw230 {
  max-width: 230px;
}

.mw240 {
  max-width: 240px;
}

.mw250 {
  max-width: 250px;
}

.mw260 {
  max-width: 260px;
}

.mw270 {
  max-width: 270px;
}

.mw280 {
  max-width: 280px;
}

.mw290 {
  max-width: 290px;
}

.mw300 {
  max-width: 300px;
}

.mw310 {
  max-width: 310px;
}

.mw320 {
  max-width: 320px;
}

.mw330 {
  max-width: 330px;
}

.mw340 {
  max-width: 340px;
}

.mw350 {
  max-width: 350px;
}

.mw360 {
  max-width: 360px;
}

.mw370 {
  max-width: 370px;
}

.mw380 {
  max-width: 380px;
}

.mw390 {
  max-width: 390px;
}

.mw400 {
  max-width: 400px;
}

.mw410 {
  max-width: 410px;
}

.mw420 {
  max-width: 420px;
}

.mw430 {
  max-width: 430px;
}

.mw440 {
  max-width: 440px;
}

.mw450 {
  max-width: 450px;
}

.mw460 {
  max-width: 460px;
}

.mw470 {
  max-width: 470px;
}

.mw480 {
  max-width: 480px;
}

.mw490 {
  max-width: 490px;
}

.mw500 {
  max-width: 500px;
}

.mw510 {
  max-width: 510px;
}

.mw520 {
  max-width: 520px;
}

.mw530 {
  max-width: 530px;
}

.mw540 {
  max-width: 540px;
}

.mw550 {
  max-width: 550px;
}

.mw560 {
  max-width: 560px;
}

.mw570 {
  max-width: 570px;
}

.mw580 {
  max-width: 580px;
}

.mw590 {
  max-width: 590px;
}

.mw600 {
  max-width: 600px;
}

.mw610 {
  max-width: 610px;
}

.mw620 {
  max-width: 620px;
}

.mw630 {
  max-width: 630px;
}

.mw640 {
  max-width: 640px;
}

.mw650 {
  max-width: 650px;
}

.mw660 {
  max-width: 660px;
}

.mw670 {
  max-width: 670px;
}

.mw680 {
  max-width: 680px;
}

.mw690 {
  max-width: 690px;
}

.mw700 {
  max-width: 700px;
}

.mw710 {
  max-width: 710px;
}

.mw720 {
  max-width: 720px;
}

.mw730 {
  max-width: 730px;
}

.mw740 {
  max-width: 740px;
}

.mw750 {
  max-width: 750px;
}

.mw760 {
  max-width: 760px;
}

.mw770 {
  max-width: 770px;
}

.mw780 {
  max-width: 780px;
}

.mw790 {
  max-width: 790px;
}

.mw800 {
  max-width: 800px;
}

.mw810 {
  max-width: 810px;
}

.mw820 {
  max-width: 820px;
}

.mw830 {
  max-width: 830px;
}

.mw840 {
  max-width: 840px;
}

.mw850 {
  max-width: 850px;
}

.mw860 {
  max-width: 860px;
}

.mw870 {
  max-width: 870px;
}

.mw880 {
  max-width: 880px;
}

.mw890 {
  max-width: 890px;
}

.mw900 {
  max-width: 900px;
}

.mw910 {
  max-width: 910px;
}

.mw920 {
  max-width: 920px;
}

.mw930 {
  max-width: 930px;
}

.mw940 {
  max-width: 940px;
}

.mw950 {
  max-width: 950px;
}

.mw960 {
  max-width: 960px;
}

.mw970 {
  max-width: 970px;
}

.mw980 {
  max-width: 980px;
}

.mw990 {
  max-width: 990px;
}

.mw1000 {
  max-width: 1000px;
}

.mw1010 {
  max-width: 1010px;
}

.mw1020 {
  max-width: 1020px;
}

.mw1030 {
  max-width: 1030px;
}

.mw1040 {
  max-width: 1040px;
}

.mw1050 {
  max-width: 1050px;
}

.mw1060 {
  max-width: 1060px;
}

.mw1070 {
  max-width: 1070px;
}

.mw1080 {
  max-width: 1080px;
}

.row-0 {
  margin-left: -0px;
  margin-right: -0px;
}
.row-0 > [class^=col-] {
  padding-left: 0px;
  padding-right: 0px;
}

.row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.row-10 > [class^=col-] {
  padding-left: 5px;
  padding-right: 5px;
}

@media print, screen and (min-width: 768px) {
  .row-40 {
    margin-left: -20px;
    margin-right: -20px;
  }
  .row-40 > [class^=col-] {
    padding-left: 20px;
    padding-right: 20px;
  }
  .row-50 {
    margin-left: -25px;
    margin-right: -25px;
  }
  .row-50 > [class^=col-] {
    padding-left: 25px;
    padding-right: 25px;
  }
}
/* ===========================================================================

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

/* -----------------------------
 box_c
----------------------------- */
.box_c {
  margin-left: auto;
  margin-right: auto;
}

/* -----------------------------
 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;
  }
}

@media print, screen and (min-width: 768px) {
  .row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .row .col {
    width: 47.8632478632%;
  }
}
@media print, screen and (max-width: 767px) {
  .row-sp {
    display: flex;
    justify-content: space-between;
  }
}

.f-wrap {
  flex-wrap: wrap;
}

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

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

@media print, screen and (min-width: 768px) {
  .hidden-pc {
    display: none;
  }
}
@media print, screen and (max-width: 767px) {
  .hidden-sp {
    display: none;
  }
}

/* ANIMATION */
@keyframes up100 {
  from {
    transform: translate3d(0, 100%, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
@keyframes down100 {
  from {
    transform: translate3d(0, -100%, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeup {
  from {
    opacity: 0;
    transform: translateY(10%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes reveal {
  from {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  to {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
.js-animate-fig {
  overflow: hidden;
  position: relative;
}
.js-animate-fig::before {
  background: #fcfcfc;
  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.active {
  opacity: 1;
}
.js-animate-fig.active::before {
  transition: all 0.8s 0s cubic-bezier(0.47, 0, 0.745, 0.715);
  transform: translateX(100%);
}
.js-animate-fig.active img {
  transition: all 0.5s 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);
  opacity: 1;
}
.js-animate.blur {
  filter: blur(14px);
  opacity: 0;
}
.js-animate.blur.inView {
  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%);
}
.js-animate-fadeup.inView {
  opacity: 1;
  transform: translateY(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-fadeup:nth-of-type(2).active {
  transition: transform 0.6s 0.3s cubic-bezier(0.37, 0, 0.63, 1), opacity 0.8s 0.4s cubic-bezier(0.61, 1, 0.88, 1);
}
.js-animate-fadeup:nth-of-type(3).active {
  transition: transform 0.6s 0.5s cubic-bezier(0.37, 0, 0.63, 1), opacity 0.8s 0.6s cubic-bezier(0.61, 1, 0.88, 1);
}
.js-animate-fadeup:nth-of-type(4).active {
  transition: transform 0.6s 0.7s cubic-bezier(0.37, 0, 0.63, 1), opacity 0.8s 0.8s cubic-bezier(0.61, 1, 0.88, 1);
}
.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;
}
.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 {
  transition: all 0.8s 0s cubic-bezier(0.47, 0, 0.745, 0.715);
  transform: translateX(100%);
}
.js-animate-blk.inView .js-blk-in {
  transition: all 0.5s 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);
  opacity: 1;
}
.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;
}

@media print, screen and (max-width: 767px) {
  .js-blk-in img {
    width: 100%;
  }
}
.page-catch {
  position: relative;
  overflow: hidden;
}
.page-catch-bg {
  position: relative;
}
.page-catch-bg::before {
  display: block;
  width: 100vw;
  right: 0;
  height: 100%;
  position: absolute;
  content: "";
  background: rgb(48, 142, 106);
  background: linear-gradient(90deg, rgb(48, 142, 106) 0%, rgb(30, 217, 79) 100%);
  opacity: 0.2;
}
.page-catch-text {
  position: relative;
  z-index: 1;
  padding: 3.5em 0;
}
.page-catch-img img {
  max-width: 100vw;
  width: 100%;
  height: 100%;
}
.page-catch-title {
  font-size: clamp(3rem, 7.5vmin, 6rem);
}
.page-catch-desc {
  font-size: clamp(1.6rem, 4vmin, 2.4rem);
  line-height: 1.4166666667;
  margin-top: 1.2em;
}
@media print, screen and (max-width: 767px) {
  .page-catch-img {
    position: relative;
    z-index: 1;
  }
  .page-catch-img img {
    min-height: 40vmax;
    object-fit: cover;
  }
  .page-catch-text {
    padding-bottom: 1.5em;
  }
  .page-catch-bg::before {
    height: calc(100% + 5em);
  }
}
@media print, screen and (min-width: 768px) {
  .page-catch-bg {
    padding-bottom: 19rem;
  }
  .page-catch-img {
    position: relative;
    height: 420px;
    margin-top: -19rem;
  }
  .page-catch-img img {
    position: absolute;
    left: 0;
    top: 0;
    min-height: 420px;
    width: auto;
    object-fit: cover;
  }
}
.page-nav {
  --btn-w: calc(280em / 16);
  --btn-h: calc(70em / 16);
  display: flex;
  gap: 1.625em;
  flex-wrap: wrap;
}
@media print, screen and (max-width: 767px) {
  .page-nav {
    justify-content: center;
  }
}

.title-sec {
  letter-spacing: var(--ls-title);
  color: var(--color-title);
  margin-bottom: 2em;
}
.title-sec-en {
  display: block;
  line-height: 1;
  font-size: var(--size-title);
  margin-bottom: 0.5em;
}
.title-label {
  background-color: var(--title-bg, var(--primary-sub_02));
  color: var(--title-color, var(--primary-sub));
  padding: 0.35em;
  margin-bottom: 1em;
}

.sec {
  padding-top: var(--section-pt, var(--section-space));
  padding-bottom: var(--section-pb, var(--section-space));
}

.d-block {
  display: block;
}

.d-flex {
  display: flex;
}

.d-grid {
  display: grid;
}

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

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

@media print, screen and (min-width: 768px) {
  .grid-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .grid-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.gap-60 {
  gap: 2em 5%;
}

.size-small {
  font-size: var(--size-small);
}
.size-title {
  font-size: var(--size-title);
}
.size-title-mid {
  font-size: var(--size-title-mid);
}
.size-title-large {
  font-size: var(--size-title-large);
}
.size-title-huge {
  font-size: var(--size-title-huge);
}
.size-mid {
  font-size: var(--size-mid);
}
.size-bigger {
  font-size: var(--size-bigger);
}
.size-huge {
  font-size: var(--size-huge);
}

.breadcrumb {
  margin: 1em auto;
  font-size: var(--size-small);
}
.breadcrumb .bread-sep {
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.breadcrumb .current-item {
  color: var(--color-title);
}

.pager {
  margin: calc(var(--section-space) * 0.5) 0;
}
.pager-nav {
  display: flex;
  justify-content: center;
  gap: 0.5em;
  flex-wrap: wrap;
}
.pager .page-numbers {
  color: var(--color-def);
  background-color: #fff;
  border: 1px var(--primary) solid;
  min-width: 4rem;
  height: 4rem;
  display: grid;
  align-items: center;
  justify-content: center;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.pager .page-numbers.current, .pager .page-numbers:hover {
  background-color: var(--primary);
  color: #fff;
}
.pager .page-numbers.total {
  padding-left: 1em;
  padding-right: 1em;
}

.map-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.map-wrap::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 62.5%;
}
.map-wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 768px) {
  .map-wrap::before {
    padding-top: 73.6842105263%;
  }
}

.btn {
  max-width: 100%;
  width: var(--btn-w);
  height: var(--btn-h);
  position: relative;
  align-items: center;
  color: var(--btn-color);
  background-color: var(--btn-bg);
  justify-content: var(--btn-align, center);
  transition: opacity 0.3s ease, color 0.3s ease, background-color 0.3s ease;
  cursor: pointer;
  display: flex;
  padding: 0.5em;
  border: 1px var(--btn-bg) solid;
  line-height: 1;
  gap: 0.5em;
}
.btn svg {
  max-width: 100%;
  height: auto;
  max-height: 100%;
  fill: var(--btn-color);
}
.btn-arrow {
  display: inline-block;
  width: 0.8666666667em;
  position: absolute;
  right: 1em;
  line-height: 1;
}
.btn:hover {
  opacity: 1;
  color: var(--btn-color_h);
  background-color: var(--btn-bg_h);
  border-color: var(--btn-color_h);
}
.btn:hover svg {
  fill: var(--btn-color_h);
}
.btn-dark {
  --btn-color: #fff;
  --btn-bg: var(--primary-dark);
  --btn-color_h: var(--primary-dark);
  --btn-bg_h: #fff;
}
.btn-inverse {
  --btn-color: var(--primary);
  --btn-bg: #fff;
  --btn-color_h: #fff;
  --btn-bg_h: var(--primary);
  border-color: var(--primary);
}
.btn-out {
  --btn-color: var(--primary);
  --btn-bg: transparent;
  --btn-color_h: #fff;
  --btn-bg_h: var(--primary);
  border-color: var(--primary);
}
.btn-light {
  --btn-color: var(--primary);
  --btn-bg: #eaf3ed;
  --btn-color_h: #fff;
  --btn-bg_h: var(--primary);
}
.btn-ic_front {
  align-self: center;
  width: 1.875em;
}
.btn-ic_front svg {
  fill: var(--btn-color);
}
.btn-wrap {
  justify-content: center;
  gap: 1.5em;
  display: flex;
}

.link-arrow {
  display: flex;
  color: var(--color-link);
  gap: 0.5em;
}
.link-arrow-ic {
  width: 0.5em;
  height: 0.75em;
  fill: var(--color-link);
}
.link-tel {
  display: flex;
  align-items: center;
  gap: 0.5em;
  color: var(--color-link);
}
.link-tel-ic {
  line-height: 1;
  flex-shrink: 0;
  width: 1em;
}
.link-tel-ic svg {
  fill: var(--color-link);
}

.label-list {
  gap: 1rem;
  flex-wrap: wrap;
  align-items: center;
  display: flex;
}
.label-item {
  text-align: center;
  line-height: 1;
  border-radius: 1em;
  font-size: var(--size-mid);
  padding: 0.5em;
  min-width: 4.5em;
  color: #fff;
  background-color: var(--accent);
}
.label-item:nth-of-type(3n + 2) {
  background-color: var(--primary);
}
.label-item:nth-of-type(3n + 3) {
  background-color: var(--primary-2);
}

.list-circle li {
  display: flex;
  gap: 0.2em;
}
.list-circle li::before {
  content: "●";
  color: var(--list-color, var(--primary));
  flex-shrink: 0;
}

.post-link {
  color: var(--color-link);
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.post-link svg {
  fill: var(--color-link);
}
.post-link-wrap {
  display: flex;
  gap: 1em;
  justify-content: space-between;
  margin-top: var(--section-space);
}
.post-link-arrow {
  width: 1em;
  line-height: 0;
}
.post-link.prev svg {
  transform: rotate(180deg);
}

html {
  font-size: 0.625em;
  box-sizing: border-box;
}

body {
  font-size: var(--size-def, 1.6rem);
  font-family: var(--ff-gothic);
  color: var(--color-def);
  line-height: var(--lh);
  font-feature-settings: "pkna";
  letter-spacing: var(--ls-def);
  background-color: var(--bg-body);
  word-break: break-all;
}
@media print, screen and (max-width: 767px) {
  body {
    --header-h: calc(70em / 13);
  }
}

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

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

p:not(:last-of-type) {
  margin-bottom: 1.5em;
}

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

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

/* =================================
 wrapper
================================= */
.container {
  width: 100%;
  max-width: var(--container, 1190px);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--container-pad);
  padding-right: var(--container-pad);
}
@media print, screen and (max-width: 767px) {
  .container-fluid {
    padding-left: 6.4666666667%;
    padding-right: 6.4666666667%;
  }
  .container-slim {
    padding-left: 6.4666666667%;
    padding-right: 6.4666666667%;
  }
}
.container-grid {
  display: grid;
  gap: 3em min(5%, 6rem);
}
@media print, screen and (min-width: 768px) {
  .container-grid {
    grid-template-columns: 1fr clamp(200px, 25.8620689655%, 300px);
  }
}

.wrap {
  overflow: hidden;
}

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

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

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

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

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

.medium {
  font-weight: 500;
}

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

h1, h2, h3, h4 {
  line-height: 1.25;
}

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

.fc-primary {
  color: var(--primary);
}
.fc-primary_sub {
  color: var(--primary-sub);
}
.fc-accent {
  color: var(--accent);
}

@media print, screen and (min-width: 1021px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media print, screen and (max-width: 1020px) {
  .wrap {
    overflow: hidden;
  }
}
.site {
  padding-top: var(--header-h);
}

@media print, screen and (min-width: 768px) {
  .spacer {
    height: 10rem;
  }
}
@media print, screen and (max-width: 767px) {
  .spacer {
    height: 4em;
  }
}
.aside__title {
  font-weight: bold;
  line-height: 1.4;
  border-bottom: 1px solid #cbcbcb;
  position: relative;
  padding-bottom: 8px;
  margin-bottom: 14px;
  font-size: 18px;
  color: var(--color-title);
}
.aside__title:after {
  content: "";
  display: block;
  position: absolute;
  width: 60px;
  height: 2px;
  background-color: var(--primary);
  bottom: -1px;
  left: 0;
}
.aside__year a {
  display: inline-block;
  padding-left: 9px;
  position: relative;
  color: #4d4d4d;
}
.aside__year a:after {
  content: "";
  display: block;
  width: 5px;
  height: 2px;
  background-color: var(--primary);
  position: absolute;
  left: 0;
  top: 50%;
}
.aside__year a:hover {
  text-decoration: underline;
}
.aside__year li + li {
  margin-top: 0.3em;
}
.aside__list small {
  display: block;
  line-height: 1;
  font-weight: 600;
  font-size: 10px;
  letter-spacing: 0.05em;
  color: #4d4d4d;
}
.aside__list a {
  display: inline-block;
  position: relative;
}
.aside__list a:hover {
  text-decoration: underline;
}
.aside__list li {
  padding: 5px 0;
}
.aside__list li + li {
  margin-top: 0.3em;
}
@media print, screen and (max-width: 767px) {
  .aside__block + .aside__block {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .aside__title {
    font-size: 20px;
  }
  .aside__list small {
    font-size: 12px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 767px) {
  .aside {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .aside__block {
    flex: 0 0 calc(50% - 20px);
    width: calc(50% - 20px);
  }
}
@media print, screen and (min-width: 768px) {
  .aside__block + .aside__block {
    margin-top: 40px;
  }
}

@keyframes mv02-fadeIn {
  0% {
    transform: translateY(6rem);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes mv02-fadeOut {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-6rem);
    opacity: 0;
  }
}
.header {
  position: fixed;
  background-color: var(--header-bg);
  color: var(--header-color);
  z-index: 100;
  width: 100%;
  top: 0;
  left: 0;
  --container: 1330px;
  --color-link: var(--header-color);
}
.header .on_scroll {
  opacity: 1;
}
.header .off_scroll {
  opacity: 0;
}
.header-grid {
  height: var(--header-h);
  display: grid;
  grid-template-areas: "logo nav";
  align-items: center;
  padding: 1em 0;
}
.header-logo {
  grid-area: logo;
}
.header-logo a {
  display: inline-block;
  position: relative;
}
.header-logo .on_scroll {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
}
.header-contact {
  display: flex;
  align-items: center;
  gap: 1em 2em;
  justify-content: flex-end;
}
.header-tel {
  font-size: clamp(2rem, 5vmin, 3rem);
  letter-spacing: 0;
}
.header-btns {
  --btn-bg: var(--accent);
  --btn-bg_h: #fff;
  --btn-color_h:var(--accent);
  display: flex;
  gap: 1rem;
  justify-self: flex-end;
}
.scrolled .header {
  --header-bg: #fff;
  --header-color: var(--primary);
}
.scrolled .header .on_scroll {
  opacity: 1;
}
.scrolled .header .off_scroll {
  opacity: 0;
}
@media print, screen and (max-width: 767px) {
  .header {
    overflow: hidden;
    width: 100vw;
    --color-link: var(--primary);
  }
  .header-grid {
    grid-template-areas: "logo .";
    align-items: center;
    padding: 1em 0;
  }
  .header-logo {
    width: 80%;
    flex-wrap: wrap;
  }
  .header-logo a {
    width: 10.625em;
  }
  .header-nav {
    position: fixed;
    top: calc(var(--header-h));
    right: 0;
    width: min(90%, 240px);
    height: auto;
    max-height: calc(100vh - var(--header-h));
    background-color: rgba(255, 255, 255, 0.8);
    padding: 1.5em;
    color: var(--primary);
    transform: translateX(100%);
    transition: transform 0.5s ease-in-out;
    pointer-events: none;
    display: grid;
    grid-template-areas: "nav" "contact";
    gap: 1em;
  }
  .navopen .header-nav {
    transform: translateX(0);
    pointer-events: initial;
  }
  .header-contact {
    grid-area: "contact";
    flex-wrap: wrap;
    justify-content: center;
  }
}
.gnav {
  grid-area: nav;
}
.gnav-menu {
  display: flex;
  font-size: var(--size-bigger);
  flex-wrap: wrap;
  letter-spacing: var(--ls-wide);
  justify-content: flex-end;
}
.gnav-btn {
  position: fixed;
  z-index: 101;
  top: calc(var(--header-h) / 2 - 2.5rem);
  right: 1em;
  width: 5rem;
  height: 5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gnav-btn .line {
  height: 2px;
  width: 80%;
  background-color: var(--primary);
  position: relative;
}
.gnav-btn .line::before, .gnav-btn .line::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  background-color: var(--primary);
  transition: 0.3s ease-in-out;
}
.gnav-btn .line::before {
  top: -10px;
}
.gnav-btn .line::after {
  top: 10px;
}
.navopen .gnav-btn .line {
  background-color: transparent;
}
.navopen .gnav-btn .line::before {
  transform: rotate(45deg);
  top: 0;
}
.navopen .gnav-btn .line::after {
  transform: rotate(-45deg);
  top: 0;
}
@media print, screen and (max-width: 767px) {
  .gnav {
    color: var(--primary);
  }
  .gnav-menu {
    gap: 1em 1.5em;
  }
}
@media print and (orientation: portrait), screen and (max-width: 767px) and (orientation: portrait) {
  .gnav-menu {
    font-size: var(--size-mid);
    flex-direction: column;
  }
}
@media print, screen and (min-width: 768px) {
  .gnav {
    margin-top: 1rem;
  }
  .gnav-btn {
    display: none;
  }
  .gnav-menu {
    line-height: 1.2;
  }
  .gnav-menu li + li {
    border-left: 1px var(--header-color) solid;
    padding-left: 1em;
    margin-left: 1em;
  }
}

.fmessage {
  position: relative;
  margin-bottom: var(--section-space);
  z-index: 1;
}
.fmessage-inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.fmessage-title {
  margin-top: 1em;
}
.fmessage-bg img {
  object-fit: cover;
  min-height: 25em;
}
@media print, screen and (min-width: 768px) {
  .fmessage-bg img {
    min-height: 420px;
    width: 92.8571428571%;
    max-width: 100vw;
  }
}

.fcontact-tel {
  background: url(../images/theme/f-tel.jpg) center no-repeat;
  background-size: cover;
  height: 271px;
}
.fcontact-tel-ic {
  width: 4.1rem;
  margin: 0 auto;
}
.fcontact-tel-ic svg {
  fill: #fff;
}
.fcontact-tel-no {
  font-size: clamp(2rem, 5vmin, 3.8rem);
}
.fcontact-mail {
  background: url(../images/theme/f-form.jpg) center no-repeat;
  background-size: cover;
  height: 271px;
}
.fcontact-mail-ic {
  width: 4.1rem;
  margin: 0 auto;
}
.fcontact-mail-ic svg {
  fill: #fff;
}
.fcontact-col {
  display: grid;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.fcontact-col:hover {
  color: #fff;
}
.fcontact-inner {
  text-align: center;
}

.footer {
  background-color: var(--footer-bg);
  color: var(--footer-color);
  padding: clamp(3em, 3.3333333333%, 5rem) 0 0;
}
.footer-sns {
  display: flex;
  gap: 1em 2.5em;
  flex-wrap: wrap;
}
.footer-sns-text {
  color: var(--primary);
  font-size: var(--size-mid);
}
.footer-sns-list {
  display: flex;
  gap: 1.1em;
}
.footer-sns-list a {
  display: block;
  width: 4rem;
}
.footer-sns-list a .st0 {
  fill: #fff;
}
.footer-top {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
  align-items: center;
}
.footer-top-btns {
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  --btn-w:calc(280em / 16);
  --btn-h:calc(60em / 16);
  gap: 20px;
}
.footer-top-btns .-buypack {
  --btn-bg:#e84c4c;
  --btn-color_h:#e84c4c;
}
.footer-top-btns .-line {
  --btn-bg:#ff910f;
  --btn-color_h:#ff910f;
}
.footer-row {
  display: grid;
  gap: 1.5em;
  margin: 3em auto 4em;
}
.footer-head {
  grid-area: head;
}
.footer-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  --btn-bg: var(--accent);
  --btn-bg_h: var(--accent);
}
.footer-nav {
  grid-area: nav;
}
.footer-info {
  margin-top: 1.5em;
}
.footer-info-tel {
  font-size: var(--size-mid);
}
@media print, screen and (max-width: 767px) {
  .footer-row {
    grid-template-areas: "head" "nav";
    grid-template-columns: auto;
    justify-content: center;
  }
  .footer-top-btns {
    justify-content: center;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1020px) {
  .footer-row {
    grid-template-areas: "head nav";
  }
}
@media print, screen and (min-width: 1021px) {
  .footer-row {
    grid-template-areas: "head nav";
    grid-template-columns: 390px auto;
  }
  .footer-nav {
    padding-left: 3em;
    border-left: 4px #fff solid;
  }
}

.copy {
  color: #fff;
  background-color: var(--primary);
  padding: 1em 0;
}

.fnav-menu {
  font-size: var(--size-small);
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 1.5em;
  margin-bottom: 2em;
  max-width: 500px;
}
.fnav-menu a {
  display: flex;
  gap: 0.5em;
  align-items: center;
  font-weight: 500;
}
.fnav-menu a::before {
  content: "";
  display: block;
  background: url(../images/theme/ic-fnav.svg) no-repeat;
  background-size: contain;
  height: 1.0714285714em;
  width: 1.0714285714em;
}
.page-home {
  background-color: var(--bg-body);
  --header-bg: rgba(255,255,255,0.0);
  --header-color: #fff;
}
.page-home .site {
  padding-top: 0;
}
.page-home .header {
  opacity: 0;
}
.page-home .header .off_scroll {
  opacity: 1;
}
.page-home .header .on_scroll {
  opacity: 0;
}
.page-home .scrolled .header {
  --header-bg: #fff;
  --header-color: var(--primary);
}
.page-home .scrolled .header .on_scroll {
  opacity: 1;
}
.page-home .scrolled .header .off_scroll {
  opacity: 0;
}
.page-home .catchloaded .catch-img {
  animation: fadeIn 1.5s ease-in-out forwards;
}
.page-home .catchloaded .catch-title {
  animation: fadeIn 1.2s 0.5s ease-in-out forwards, up100 1.2s 0.5s ease-in-out forwards;
}
.page-home .catchloaded .header {
  animation: fadeIn 1s 1.4s ease-in-out forwards;
}
.page-home .topmv {
  --mv-h: 800px;
  --container: 100%;
  position: relative;
  overflow: hidden;
}
.page-home .topmv-slide .slide {
  display: grid;
}
.page-home .topmv-slide .slide-media {
  z-index: 0;
  grid-column: 1/2;
  grid-row: 1/2;
}
.page-home .topmv-slide .slide-media img {
  min-height: var(--mv-h);
  width: 100%;
  max-width: none;
  object-fit: cover;
}
.page-home .topmv-slide .slide-text {
  z-index: 1;
  grid-column: 1/2;
  grid-row: 1/2;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-home .topmv-slide .slide-catch {
  color: #fff;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 0 0 6px rgba(0, 0, 0, 0.3), 0 0 10px rgba(0, 0, 0, 0.3);
  text-align: center;
  line-height: 1.5;
}
.page-home .topmv-slide .slide-catch .-huge {
  font-size: clamp(2.6rem, 6.5vmin, 6rem);
  margin-bottom: 10px;
}
.page-home .topmv-slide .slide-media img {
  transition: 7s 1s linear;
  transform: translateX(-1.5%) scale(1.1);
}
.page-home .topmv-slide .slide-title,
.page-home .topmv-slide .slide-text,
.page-home .topmv-slide .slide-link {
  animation: 2s var(--easing) both;
  opacity: 0;
}
.page-home .topmv-slide .splide__slide[class*=-active] .slide-media img {
  transition-delay: 0s;
  transform: translateX(1.5%) scale(1.05);
}
.page-home .topmv-slide .splide__slide.anm-started .slide-title,
.page-home .topmv-slide .splide__slide.anm-started .slide-text,
.page-home .topmv-slide .splide__slide.anm-started .slide-link {
  animation-name: mv02-fadeIn;
}
.page-home .topmv-slide .splide__slide.anm-finished .slide-title,
.page-home .topmv-slide .splide__slide.anm-finished .slide-text,
.page-home .topmv-slide .splide__slide.anm-finished .slide-link {
  animation-name: mv02-fadeOut;
}
@media print, screen and (max-width: 767px) {
  .page-home .topmv {
    --mv-h:100vmax;
  }
}
.page-home .top-title {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  align-items: baseline;
  margin-bottom: var(--title-margin, 1em);
  font-size: clamp(2.23em, 5.75vmin, 4.5rem);
}
.page-home .top-title .-en {
  color: var(--color-title);
  font-family: "Alata";
  opacity: 0;
}
.page-home .top-title .-jp {
  font-weight: 500;
  font-size: var(--size-mid);
  padding: 0 1em;
  border-left: 1px var(--color-title) solid;
  border-right: 1px var(--color-title) solid;
  opacity: 0;
}
.page-home .top-title.inView .-en {
  animation: fadeup 0.5s var(--easing) forwards;
}
.page-home .top-title.inView .-jp {
  animation: fadeup 0.5s 0.3s var(--easing) forwards;
}
.page-home .topcat {
  --container:1230px;
  --section-pt:clamp(2em, calc(60% / 12), 60px);
  --section-pb:clamp(2em, calc(60% / 12), 60px);
}
.page-home .topcat-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 20px 2.0833333333%;
}
.page-home .topcat-list .-item {
  border: 1px #d9d9d9 solid;
  border-radius: 5px;
  overflow: hidden;
  opacity: 0;
}
.page-home .topcat-list .-item-img {
  text-align: center;
}
.page-home .topcat-list .-item-name {
  padding: 0.25em 0.75em;
}
.page-home .topcat-list .-item:nth-of-type(1) {
  --delay:0.1s;
}
.page-home .topcat-list .-item:nth-of-type(2) {
  --delay:0.2s;
}
.page-home .topcat-list .-item:nth-of-type(3) {
  --delay:0.3s;
}
.page-home .topcat-list .-item:nth-of-type(4) {
  --delay:0.4s;
}
.page-home .topcat-list .-item:nth-of-type(5) {
  --delay:0.5s;
}
.page-home .topcat-list .-item:nth-of-type(6) {
  --delay:0.6s;
}
.page-home .topcat-list .-item:nth-of-type(7) {
  --delay:0.7s;
}
.page-home .topcat-list .-item:nth-of-type(8) {
  --delay:0.8s;
}
.page-home .topcat-list .-item:nth-of-type(9) {
  --delay:0.9s;
}
.page-home .topcat-list .-item:nth-of-type(10) {
  --delay:1s;
}
.page-home .topcat-list .-item:nth-of-type(11) {
  --delay:1.1s;
}
.page-home .topcat-list .-item:nth-of-type(12) {
  --delay:1.2s;
}
.page-home .topcat-list .-item:nth-of-type(13) {
  --delay:1.3s;
}
.page-home .topcat-list .-item:nth-of-type(14) {
  --delay:1.4s;
}
.page-home .topcat-list .-item:nth-of-type(15) {
  --delay:1.5s;
}
.page-home .topcat-list .-item:nth-of-type(16) {
  --delay:1.6s;
}
.page-home .topcat-list .-item:nth-of-type(17) {
  --delay:0.1s;
}
.page-home .topcat-list.inView .-item {
  animation: fadeup 0.3s var(--delay) var(--easing) forwards;
}
@media print, screen and (max-width: 767px) {
  .page-home .topcat-list {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
}
.page-home .topeffort {
  background-color: #f4f4f4;
  --container:1330px;
  --section-pt:clamp(2em, calc(60% / 12), 60px);
  --section-pb:clamp(2em, calc(60% / 12), 60px);
  --accent: #f77e2d;
}
.page-home .topeffort-desc {
  margin: 2em 0 3em;
}
.page-home .topeffort-row {
  display: grid;
  gap: 30px;
}
.page-home .topeffort-bnr {
  display: grid;
  position: relative;
}
.page-home .topeffort-bnr .-img {
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}
.page-home .topeffort-bnr .-inner {
  padding: 1em;
}
.page-home .topeffort-bnr .-inner-text {
  opacity: 0;
}
.page-home .topeffort-bnr .-inner .-title {
  font-size: var(--size-title);
  margin-bottom: 1em;
  line-height: 1.2;
}
.page-home .topeffort-bnr.inView .-img {
  animation: reveal 0.5s var(--easing) forwards;
}
.page-home .topeffort-bnr.inView .-inner-text {
  animation: fadeup 0.5s 0.4s var(--easing) forwards;
}
@media print, screen and (min-width: 768px) {
  .page-home .topeffort-bnr .-img {
    grid-row: 1/2;
    grid-column: 1/2;
  }
  .page-home .topeffort-bnr .-img img {
    object-fit: cover;
    min-height: 430px;
  }
  .page-home .topeffort-bnr .-inner {
    grid-row: 1/2;
    grid-column: 1/2;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .page-home .topeffort-bnr .-inner-text {
    flex-basis: 100%;
    max-width: 1170px;
    color: #fff;
  }
  .page-home .topeffort-bnr .-inner-text p {
    max-width: 420px;
  }
}
.page-home .topconfronting {
  --container:1230px;
  --section-pt:clamp(2em, calc(60% / 12), 60px);
  --section-pb:clamp(2em, calc(60% / 12), 60px);
  --title-margin:0.5em;
}
.page-home .topconfronting-catch {
  font-size: clamp(1.8rem, 4.5vmin, 2.5rem);
  margin-bottom: 1em;
}
.page-home .topconfronting-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 12px 1%;
  background-color: #f4f4f4;
  padding: 20px;
  --delay:0;
}
.page-home .topconfronting-list .-item {
  opacity: 0;
}
.page-home .topconfronting-list .-item:nth-of-type(1) {
  --delay:0.1s;
}
.page-home .topconfronting-list .-item:nth-of-type(2) {
  --delay:0.2s;
}
.page-home .topconfronting-list .-item:nth-of-type(3) {
  --delay:0.3s;
}
.page-home .topconfronting-list .-item:nth-of-type(4) {
  --delay:0.4s;
}
.page-home .topconfronting-list .-item:nth-of-type(5) {
  --delay:0.5s;
}
.page-home .topconfronting-list .-item:nth-of-type(6) {
  --delay:0.6s;
}
.page-home .topconfronting-list .-item:nth-of-type(7) {
  --delay:0.7s;
}
.page-home .topconfronting-list .-item:nth-of-type(8) {
  --delay:0.8s;
}
.page-home .topconfronting-list .-item:nth-of-type(9) {
  --delay:0.9s;
}
.page-home .topconfronting-list .-item:nth-of-type(10) {
  --delay:1s;
}
.page-home .topconfronting-list .-item:nth-of-type(11) {
  --delay:1.1s;
}
.page-home .topconfronting-list .-item:nth-of-type(12) {
  --delay:1.2s;
}
.page-home .topconfronting-list .-item:nth-of-type(13) {
  --delay:1.3s;
}
.page-home .topconfronting-list .-item:nth-of-type(14) {
  --delay:1.4s;
}
.page-home .topconfronting-list .-item:nth-of-type(15) {
  --delay:1.5s;
}
.page-home .topconfronting-list .-item:nth-of-type(16) {
  --delay:1.6s;
}
.page-home .topconfronting-list .-item:nth-of-type(17) {
  --delay:0.1s;
}
.page-home .topconfronting-list.inView .-item {
  animation: fadeup 0.3s var(--delay) var(--easing) forwards;
}
@media print, screen and (max-width: 767px) {
  .page-home .topconfronting-list {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
}
.page-home .topinformation {
  --container:100%;
  --section-pt:1em;
  --section-pb:1em;
  --title-margin:0.5em;
  background-color: #e5f4eb;
}
.page-home .topinformation-catch {
  margin: 1em 0;
}
.page-home .topinformation-desc {
  max-width: 390px;
  margin-bottom: 2.5em;
}
.page-home .topinformation .btn {
  font-size: 14px;
  --btn-w:calc(250em / 14);
  --btn-h: calc(60em / 14);
}
@media print, screen and (min-width: 1021px) {
  .page-home .topinformation {
    position: relative;
  }
  .page-home .topinformation-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
  }
  .page-home .topinformation-row .-col-text {
    padding-top: 3em;
    padding-bottom: 3em;
  }
  .page-home .topinformation-row .-col-inner {
    max-width: 600px;
    margin-left: auto;
  }
}
@media print, screen and (max-width: 1020px) {
  .page-home .topinformation {
    --section-pt:2em;
    --section-pb:2em;
  }
  .page-home .topinformation-row .-col-img {
    text-align: center;
    margin-top: 2em;
  }
}
.page-home .topabout {
  display: grid;
  --container:1230px;
  --title-margin:0.5em;
}
.page-home .topabout .btn {
  font-size: 14px;
  --btn-w:calc(250em / 14);
  --btn-h: calc(60em / 14);
}
.page-home .topabout-desc {
  margin: 2em 0;
}
.page-home .topabout-front {
  padding: 2em 0;
}
@media print, screen and (min-width: 768px) {
  .page-home .topabout-bg {
    grid-column: 1/2;
    grid-row: 1/2;
    position: relative;
  }
  .page-home .topabout-bg img {
    min-height: 590px;
    object-fit: cover;
    width: 100%;
  }
  .page-home .topabout-bg::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../images/home/about-gra.webp) no-repeat;
    background-size: 57.7142857143% 100%;
  }
  .page-home .topabout-front {
    grid-column: 1/2;
    grid-row: 1/2;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
  }
  .page-home .topabout-desc {
    max-width: 420px;
  }
}
.page-home .topnews {
  --title-margin:0;
  align-items: center;
}
.page-home .topnews-row {
  display: grid;
  grid-template-areas: "head link" "list list";
  grid-template-columns: auto 130px;
  grid-template-rows: auto 1fr;
  gap: 1.5em clamp(2rem, 10%, 10rem);
}
.page-home .topnews-head {
  grid-area: head;
}
.page-home .topnews-list {
  grid-area: list;
  border: 1px #d9d9d9 solid;
  padding: clamp(1em, 3.3333333333%, 40px);
}
.page-home .topnews-link {
  grid-area: link;
  --btn-h: calc(40em / 15);
  font-size: 1.5rem;
  display: flex;
  align-items: flex-end;
}
@media print, screen and (max-width: 767px) {
  .page-home .topnews-row {
    grid-template-areas: "head" "list" "link";
    grid-template-columns: 1fr;
  }
  .page-home .topnews-list {
    margin-bottom: 0;
  }
  .page-home .topnews-block {
    padding: 2em 1.5em;
  }
  .page-home .topnews-link {
    display: flex;
    justify-content: center;
  }
}

.newslist-item {
  display: flex;
  line-height: 1.5;
  align-items: center;
  gap: 0.5em 1em;
  min-height: 2.5em;
  padding: 0.5em 0;
}
.newslist-date {
  width: 6.875em;
  flex-shrink: 0;
}
.newslist-cat {
  font-size: var(--size-xsmall);
  color: #fff;
  background-color: var(--label, var(--primary));
  display: block;
  width: 9.1666666667em;
  padding: 0.5em;
  text-align: center;
}
.newslist-link {
  color: var(--color-link);
}
@media print, screen and (max-width: 767px) {
  .newslist-item {
    flex-wrap: wrap;
  }
  .newslist-link {
    display: block;
    width: 100%;
    margin-bottom: 1em;
  }
}

.about-sec {
  --section-pt: calc(var(--section-space) / 2);
}
.about-catch {
  margin-bottom: 1em;
}
.about-issue-row {
  display: grid;
  gap: 2em 3.75%;
}
.about-issue-col {
  background-color: #eeeeee;
  padding: 1em;
}
.about-issue-title {
  margin-bottom: 1em;
}
.about-issue-no {
  font-family: var(--ff-en);
}
.about-sol-title {
  margin-bottom: 1em;
}
.about-sol-item {
  position: relative;
  padding-top: var(--section-space);
  padding-bottom: var(--section-space);
}
.about-sol-item:nth-of-type(even) {
  background-color: #eee;
}
.about-sol-item::before {
  content: "";
  display: block;
  height: 3.125em;
  width: 14.4375em;
  background-color: var(--accent);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
}
.about-sol-item h3 {
  margin-bottom: 1em;
  line-height: 1.5714285714;
}
@media print, screen and (max-width: 767px) {
  .about-sol-item::before {
    display: block;
    height: 1.5625em;
    width: 7.21875em;
  }
}
@media print, screen and (min-width: 768px) {
  .about-issue-row {
    grid-template-columns: repeat(3, 1fr);
  }
  .about-issue-col {
    padding: 1em 12.972972973% 1.5em;
  }
  .about-sol .item3 {
    padding-bottom: 320px;
    margin-bottom: -220px;
  }
}

.page-buy .page-catch-desc .d-flex {
  gap: 1em;
  margin-top: 0.5em;
  flex-wrap: wrap;
}

.buy-nav {
  --section-pt: calc(var(--section-space) / 2);
  --section-pb: calc(var(--section-space) / 2);
}
.buy-head {
  margin-top: var(--section-space);
}
.buy-head-sub {
  display: flex;
  gap: 1.25em;
}
.buy-head-circle {
  background-color: var(--accent);
  color: #fff;
  display: grid;
  align-items: center;
  justify-content: center;
  font-size: clamp(2rem, 5vmin, 2.5rem);
  width: 7.12em;
  height: 7.12em;
  line-height: 1.2;
  text-align: center;
  border-radius: 50%;
}
@media print, screen and (max-width: 767px) {
  .buy-head {
    gap: 1em;
    justify-content: center;
  }
}
.buy-reason {
  background-color: #eee;
}
.buy-reason-box {
  background: rgb(45, 103, 133);
  background: linear-gradient(90deg, rgba(45, 103, 133, 0.8) 0%, rgba(69, 179, 160, 0.8) 100%);
  color: #fff;
  display: flex;
  padding: 2.5em;
  margin-top: 3.125em;
}
.buy-reason-no {
  font-family: var(--ff-en);
  width: 1.5em;
  flex-shrink: 0;
  line-height: 0.8;
}
.buy-reason-head {
  margin-bottom: 0.5em;
}
.buy-reason-title {
  line-height: 1;
}
@media print, screen and (max-width: 767px) {
  .buy-reason .size-120 {
    font-size: 150%;
  }
  .buy-reason-box {
    padding: 1.5em;
  }
}
@media print and (orientation: portrait), screen and (max-width: 767px) and (orientation: portrait) {
  .buy-reason-box {
    flex-wrap: wrap;
    gap: 1.5em 0;
  }
}
.buy-item {
  --section-pb:0;
}
.buy-item-nav {
  margin-top: 3.125em;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 2.25em;
}
.buy-item-block {
  padding-top: var(--section-space);
  padding-bottom: var(--section-space);
}
.buy-item-block h3 {
  margin: 0.8em 0 0.5em;
}
.buy-item-block .d-flex {
  gap: 1em;
}
.buy-item-block:nth-of-type(odd) {
  background-color: #eaf3ed;
}
.buy-item-desc {
  margin-top: 1em;
}
.buy-item-list {
  margin-top: 1.5em;
  background-color: #fff;
  padding: 2.5em;
}
.buy-flow-item {
  border: 2px var(--accent) solid;
  position: relative;
  padding: 3em;
  display: grid;
  align-items: center;
  border-radius: 10px;
  margin-top: 5rem;
  gap: 1.5em;
  grid-template-columns: 7rem 1fr 1fr;
}
.buy-flow-no {
  color: var(--accent);
  flex-shrink: 0;
  line-height: 1;
}
.buy-flow-text {
  font-size: clamp(1.6rem, 4em, 2.5rem);
}
.buy-flow-text a {
  color: var(--color-link);
}
@media print, screen and (max-width: 767px) {
  .buy-flow-item {
    padding: 1.5em;
  }
}
@media print and (orientation: portrait), screen and (max-width: 767px) and (orientation: portrait) {
  .buy-flow-item {
    grid-template-columns: 1fr;
    gap: 0.5em;
  }
}
.buy-case {
  background-color: #eee;
}
.buy-case-title {
  margin-bottom: 1em;
}
.buy-case-list li {
  display: flex;
  border-bottom: 1px #cccccc solid;
  gap: 0.2em;
  min-height: 2.2222222222em;
  font-size: var(--size-bigger);
  padding-top: 0.3em;
}
.buy-case-list li::before {
  content: "●";
  color: var(--list-color, var(--primary));
  flex-shrink: 0;
}
.buy-case-list .amount {
  margin-left: auto;
}
@media print, screen and (min-width: 768px) {
  .buy-item-list .list-circle {
    display: grid;
    grid-template-rows: repeat(3, 1fr);
    grid-template-columns: repeat(5, 1fr);
    grid-auto-flow: column;
  }
  .buy-case {
    padding-bottom: 320px;
    margin-bottom: -220px;
  }
  .buy-case-list {
    display: grid;
    grid-template-rows: repeat(9, 1fr);
    grid-template-columns: repeat(3, 1fr);
    grid-auto-flow: column;
    gap: 0 5%;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1020px) {
  .buy-item-list .list-circle {
    grid-template-rows: repeat(5, 1fr);
    grid-template-columns: repeat(3, 1fr);
  }
}

.company-message {
  --section-pt:0;
}
.company-message-row {
  display: grid;
  gap: 2em 5.8333333333%;
}
.company-message-col {
  background-color: #eeeeee;
  padding: 1em;
}
.company-message-sub {
  margin: 2em 0 1.5em;
}
.company-message-profile {
  line-height: 1.5;
  margin-top: 0.9em;
}
.company-achieve {
  border: 2px var(--primary-sub_02) solid;
  margin-top: var(--section-space);
}
.company-achieve-title {
  color: var(--primary);
  background-color: var(--primary-sub_02);
  padding: 0.375em;
}
.company-achieve-list {
  padding: 1em 2.2em 2em;
}
.company-achieve-list li {
  display: grid;
  grid-template-columns: 1.2em 7em 3em auto;
  border-bottom: 1px var(--primary) solid;
  padding: 0.5em;
}
.company-achieve-list li::before {
  content: "●";
  color: var(--list-color, var(--primary));
  flex-shrink: 0;
}
@media print, screen and (max-width: 767px) {
  .company-achieve-list {
    padding: 1.5em;
  }
  .company-achieve-list li {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.5em;
    padding-left: 0;
    padding-right: 0;
  }
  .company-achieve-list li .program {
    width: 100%;
  }
}
.company-sdgs {
  background-color: #eee;
}
.company-sdgs-title {
  margin-bottom: 1em;
}
.company-sdgs-img {
  background-color: #fff;
  padding: 2.6666666667em 1em;
  text-align: center;
}
.company-sdgs-img1 {
  margin-bottom: 1.5em;
}
.company-sdgs-imgs {
  display: flex;
  gap: 2rem;
  align-items: center;
  justify-content: center;
  min-height: 270px;
}
.company-sdgs-block {
  padding-top: calc(var(--section-space) / 2);
  margin-top: calc(var(--section-space) / 2);
}
.company-sdgs-block:nth-of-type(n + 3) {
  border-top: 1px #fff solid;
}
.company-sdgs-sub {
  margin-bottom: 0.5em;
}
.company-sdgs-note {
  border: 1px var(--primary) solid;
  padding: 1.5em 1.5em 1em;
  margin-top: 1.5em;
}
.company-sdgs-note-title {
  margin-bottom: 0.25em;
}
@media print, screen and (max-width: 767px) {
  .company-sdgs-imgs {
    min-height: 0;
  }
  .company-sdgs-img {
    padding: 1em;
  }
}
.company-outline-title {
  margin-bottom: 1em;
}
.company-outline-item {
  display: grid;
  grid-template-columns: 12.5em auto;
  gap: 1.25em;
}
.company-outline-item .item, .company-outline-item .detail {
  min-height: 5em;
  border-top: 1px #c1c1c1 solid;
  padding: 1.5em 1em;
}
.company-outline-item:last-of-type .item, .company-outline-item:last-of-type .detail {
  border-bottom: 1px #c1c1c1 solid;
}
.company-outline-history {
  display: grid;
  grid-template-columns: 8.125em auto;
  grid-auto-rows: auto;
}
@media print and (orientation: portrait), screen and (max-width: 767px) and (orientation: portrait) {
  .company-outline-item {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  .company-outline-item .item {
    padding-bottom: 0;
    border-bottom: 0;
    min-height: 0;
  }
  .company-outline-item .detail {
    min-height: 0;
    border-top: 0;
    padding-top: 0.5em;
  }
}
.company-shop {
  background-color: #eee;
}
.company-shop-title {
  margin-bottom: 1em;
}
.company-shop-block:nth-of-type(n + 2) {
  padding-top: calc(var(--section-space) / 1);
  margin-top: calc(var(--section-space) / 1);
  border-top: 4px var(--primary-sub_02) solid;
}
.company-shop-item {
  display: grid;
  grid-template-columns: 12.5em auto;
  gap: 1.25em;
}
.company-shop-item .item, .company-shop-item .detail {
  min-height: 5em;
  border-top: 1px #c1c1c1 solid;
  padding: 1.5em 1em;
}
.company-shop-item:last-of-type .item, .company-shop-item:last-of-type .detail {
  border-bottom: 1px #c1c1c1 solid;
}
.company-shop-name {
  margin-bottom: 1em;
}
@media print and (orientation: portrait), screen and (max-width: 767px) and (orientation: portrait) {
  .company-shop-item {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  .company-shop-item .item {
    padding-bottom: 0;
    border-bottom: 0;
    min-height: 0;
  }
  .company-shop-item .detail {
    min-height: 0;
    border-top: 0;
    padding-top: 0.5em;
  }
}
@media print, screen and (min-width: 768px) {
  .company-message-row {
    grid-template-columns: 1fr 340px;
  }
}

.contact-col {
  padding: 2.3em 0;
  font-size: var(--size-bigger);
  letter-spacing: var(--ls-wide);
  line-height: 1.2;
  display: flex;
  gap: 0.5em;
  align-items: center;
  align-self: flex-start;
}
.contact-col .required {
  background-color: #e70719;
  color: #fff;
  font-size: 1.2rem;
  border-radius: 4px;
  display: inline-block;
  padding: 1px 0.5em;
}
.contact-input {
  padding: 1.8em 0;
}
.contact-row {
  display: grid;
  border-bottom: 1px #bebebe solid;
}
.contact-row:first-of-type {
  border-top: 1px #bebebe solid;
}
.contact-textarea {
  margin-top: 2.5em;
}
@media print, screen and (min-width: 768px) {
  .contact-row {
    grid-template-columns: 260px auto;
  }
}
@media print and (orientation: portrait), screen and (max-width: 767px) and (orientation: portrait) {
  .contact-col {
    padding-bottom: 0;
  }
  .contact-input {
    padding-top: 0.5em;
  }
}

.form-sec {
  background-color: #eee;
}
.form-fill {
  font-size: var(--size-def);
  height: 3.125em;
  padding: 0.5em 1em;
  font-family: var(--ff-gothic);
  background-color: #fff;
  border-radius: 5px;
  border: 1px #bdbdbd solid;
  max-width: 100%;
  width: 100%;
}
.form-fill.fat {
  width: 100%;
  height: 18.75em;
}
.form-fill.select {
  width: auto;
}
.form-fill.select option {
  font-size: var(--size-def);
}
.form-file-box {
  padding: 1rem;
  background-color: #fff;
  border-radius: 5px;
  border: 1px #bdbdbd solid;
}
.form-btn {
  --btn-w:calc(350em / 18);
  --btn-h:calc(70em / 18);
}
.form-privacy {
  margin-top: 3.5em;
}
.form-privacy-title {
  background-color: var(--primary);
  color: #fff;
  padding: 0.5em;
  margin-bottom: 1em;
}
.form-privacy-box {
  background-color: #fff;
  border: 1px #bebebe solid;
  padding: 1em 2.5em;
  height: 350px;
  overflow-y: scroll;
  margin-bottom: 3.5em;
}

.cat-communication {
  --label: #e98100;
}
.cat-topics {
  --label: #a45b9c;
}

.news-main .newslist {
  border-top: 1px #d2d2d2 solid;
}
.news-main .newslist-item {
  border-bottom: 1px #d2d2d2 solid;
  min-height: 4.375em;
}
.news-main .newslist-cat {
  padding: 0.1em 0.5em;
}
.news-row {
  display: grid;
  gap: 2em 6.6666666667%;
}
.news-aside {
  --btn-w:calc(270em / 16);
}
.news-aside-title {
  font-weight: bold;
  color: var(--primary);
  font-size: var(--size-bigger);
  margin-bottom: 1em;
}
.news-widget {
  border-bottom: 1px #d2d2d2 solid;
  padding-bottom: 2em;
  margin-bottom: 2em;
}
.news-recent {
  font-size: var(--size-small);
}
.news-recent-link {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.news-recent-arrow {
  flex-shrink: 0;
  width: 1.1em;
  line-height: 0;
}
.news-recent-arrow svg {
  fill: var(--primary);
}
.news-recent-item {
  margin-top: 0.75em;
}
.news-select select {
  border: 1px #c4c4c4 solid;
  padding: 0.8em 0.5em;
  border-radius: 5px;
  display: block;
  max-width: 270px;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .news-row {
    grid-template-columns: auto 270px;
  }
}

.entry-header {
  padding-bottom: 2em;
  border-bottom: 5px var(--primary) solid;
  border-image-source: linear-gradient(90deg, rgb(48, 142, 106) 0%, rgb(30, 217, 79) 100%);
  border-image-slice: 1;
  margin-bottom: 2.4em;
}
.entry-meta {
  border-top: 1px #d2d2d2 solid;
  padding-top: 2em;
}
.entry-title {
  font-size: var(--size-title);
  font-weight: bold;
  margin-top: 0.75em;
}
.entry-content h2 {
  background-color: var(--primary_015);
  font-size: var(--size-mid);
  color: var(--primary);
  margin-bottom: 1em;
  font-weight: bold;
}
.entry-content h3 {
  background-color: #e4e4e4;
  font-size: var(--size-bigger);
  margin-bottom: 1em;
  font-weight: bold;
  padding: 0.5em 1.5em;
  position: relative;
}
.entry-content h3::before {
  content: "";
  height: 1.15em;
  width: 5px;
  background-color: var(--primary);
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
.entry-content .wp-block-image {
  margin: 1.5em auto;
}/*# sourceMappingURL=style.css.map */