@charset "UTF-8";
/* Scss Document */
/**
 * SVG画像をアイコンに使いたい的ないろいろ
 *
 *  [Html] SVG塗りつぶしの色をBackground-Imageとして扱うときに変更する
 * https://code.i-harness.com/ja/q/cbfa3c
 */
/**
 * 下記SVGを変更した場合、インポートする側のCSSもアップする必要があります。注意してください。
 *
*/
/* Scss Document */
/* メディアクエリ
======================================== */
@media screen and (max-width: 768px) {
  .-onlyPC {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .-onlySP {
    display: none;
  }
}

/* 後付けマージン・パディング
======================================== */
/* マージンを指定　*/
@media screen and (min-width: 769px) {
  .mt-is-0 {
    margin-top: 0px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-0 {
    margin-top: 0px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-10 {
    margin-top: 10px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-10 {
    margin-top: 7.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-20 {
    margin-top: 20px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-20 {
    margin-top: 15px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-30 {
    margin-top: 30px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-30 {
    margin-top: 22.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-40 {
    margin-top: 40px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-40 {
    margin-top: 30px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-50 {
    margin-top: 50px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-50 {
    margin-top: 37.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-60 {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-60 {
    margin-top: 45px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-70 {
    margin-top: 70px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-70 {
    margin-top: 52.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-80 {
    margin-top: 80px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-80 {
    margin-top: 60px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-90 {
    margin-top: 90px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-90 {
    margin-top: 67.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-100 {
    margin-top: 100px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-100 {
    margin-top: 75px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-110 {
    margin-top: 110px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-110 {
    margin-top: 82.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-120 {
    margin-top: 120px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-120 {
    margin-top: 90px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-130 {
    margin-top: 130px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-130 {
    margin-top: 97.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-140 {
    margin-top: 140px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-140 {
    margin-top: 105px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-150 {
    margin-top: 150px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-150 {
    margin-top: 112.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-160 {
    margin-top: 160px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-160 {
    margin-top: 120px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-170 {
    margin-top: 170px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-170 {
    margin-top: 127.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-180 {
    margin-top: 180px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-180 {
    margin-top: 135px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-190 {
    margin-top: 190px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-190 {
    margin-top: 142.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mt-is-200 {
    margin-top: 200px !important;
  }
}
@media screen and (max-width: 768px) {
  .mt-is-200 {
    margin-top: 150px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-0 {
    margin-bottom: 0px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-0 {
    margin-bottom: 0px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-10 {
    margin-bottom: 10px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-10 {
    margin-bottom: 7.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-20 {
    margin-bottom: 20px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-20 {
    margin-bottom: 15px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-30 {
    margin-bottom: 30px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-30 {
    margin-bottom: 22.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-40 {
    margin-bottom: 40px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-40 {
    margin-bottom: 30px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-50 {
    margin-bottom: 50px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-50 {
    margin-bottom: 37.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-60 {
    margin-bottom: 60px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-60 {
    margin-bottom: 45px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-70 {
    margin-bottom: 70px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-70 {
    margin-bottom: 52.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-80 {
    margin-bottom: 80px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-80 {
    margin-bottom: 60px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-90 {
    margin-bottom: 90px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-90 {
    margin-bottom: 67.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-100 {
    margin-bottom: 100px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-100 {
    margin-bottom: 75px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-110 {
    margin-bottom: 110px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-110 {
    margin-bottom: 82.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-120 {
    margin-bottom: 120px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-120 {
    margin-bottom: 90px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-130 {
    margin-bottom: 130px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-130 {
    margin-bottom: 97.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-140 {
    margin-bottom: 140px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-140 {
    margin-bottom: 105px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-150 {
    margin-bottom: 150px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-150 {
    margin-bottom: 112.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-160 {
    margin-bottom: 160px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-160 {
    margin-bottom: 120px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-170 {
    margin-bottom: 170px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-170 {
    margin-bottom: 127.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-180 {
    margin-bottom: 180px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-180 {
    margin-bottom: 135px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-190 {
    margin-bottom: 190px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-190 {
    margin-bottom: 142.5px !important;
  }
}

@media screen and (min-width: 769px) {
  .mb-is-200 {
    margin-bottom: 200px !important;
  }
}
@media screen and (max-width: 768px) {
  .mb-is-200 {
    margin-bottom: 150px !important;
  }
}

/* パディングを指定　*/
.padding-is-0 {
  padding: 0px;
}

.padding-is-10 {
  padding: 10px;
}

.padding-is-20 {
  padding: 20px;
}

.padding-is-30 {
  padding: 30px;
}

.padding-is-40 {
  padding: 40px;
}

.padding-is-50 {
  padding: 50px;
}

.padding-is-60 {
  padding: 60px;
}

.padding-is-70 {
  padding: 70px;
}

.padding-is-80 {
  padding: 80px;
}

.padding-is-90 {
  padding: 90px;
}

.padding-is-100 {
  padding: 100px;
}

.pt-is-0 {
  padding-top: 0px;
}

.pt-is-10 {
  padding-top: 10px;
}

.pt-is-20 {
  padding-top: 20px;
}

.pt-is-30 {
  padding-top: 30px;
}

.pt-is-40 {
  padding-top: 40px;
}

.pt-is-50 {
  padding-top: 50px;
}

.pt-is-60 {
  padding-top: 60px;
}

.pt-is-70 {
  padding-top: 70px;
}

.pt-is-80 {
  padding-top: 80px;
}

.pt-is-90 {
  padding-top: 90px;
}

.pt-is-100 {
  padding-top: 100px;
}

.pb-is-0 {
  padding-bottom: 0px;
}

.pb-is-10 {
  padding-bottom: 10px;
}

.pb-is-20 {
  padding-bottom: 20px;
}

.pb-is-30 {
  padding-bottom: 30px;
}

.pb-is-40 {
  padding-bottom: 40px;
}

.pb-is-50 {
  padding-bottom: 50px;
}

.pb-is-60 {
  padding-bottom: 60px;
}

.pb-is-70 {
  padding-bottom: 70px;
}

.pb-is-80 {
  padding-bottom: 80px;
}

.pb-is-90 {
  padding-bottom: 90px;
}

.pb-is-100 {
  padding-bottom: 100px;
}

.pl-is-0em {
  padding-left: 0em;
}

.pl-is-1em {
  padding-left: 1em;
}

.pl-is-2em {
  padding-left: 2em;
}

.pl-is-3em {
  padding-left: 3em;
}

.pl-is-4em {
  padding-left: 4em;
}

.pl-is-5em {
  padding-left: 5em;
}

/* 後付けフォントサイズ 
======================================== */
.fs-is-inherit {
  font-size: inherit !important;
}

@media screen and (min-width: 769px) {
  .fs-is-defult {
    font-size: 1rem !important;
  }
}
@media screen and (max-width: 768px) {
  .fs-is-defult {
    font-size: 1rem !important;
  }
}

@media screen and (min-width: 769px) {
  .fs-is-small {
    font-size: 14px !important;
  }
}
@media screen and (max-width: 768px) {
  .fs-is-small {
    font-size: 12px !important;
  }
}

@media screen and (min-width: 769px) {
  .fs-is-large {
    font-size: 22px !important;
  }
}
@media screen and (max-width: 768px) {
  .fs-is-large {
    font-size: 18px !important;
  }
}

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

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

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

/* 文字色を指定 */
.fc-is-black {
  color: #000000 !important;
}

.fc-is-white {
  color: #FFFFFF !important;
}

.fc-is-red {
  color: #a60000 !important;
}

.fc-is-gray {
  color: #f6f6f6 !important;
}

/* 文字色を指定 */
.bg-is-black {
  background-color: #000000 !important;
}

.bg-is-white {
  background-color: #FFFFFF !important;
}

.bg-is-red {
  background-color: #a60000 !important;
}

.bg-is-gray {
  background-color: #f6f6f6 !important;
}

/* ボックスにボーダー
======================================== */
.boder-is-black {
  border: solid 1px #000000;
}

.boder-is-white {
  border: solid 1px #FFFFFF;
}

.boder-is-red {
  border: solid 1px #a60000;
}

.boder-is-gray {
  border: solid 1px #f6f6f6;
}

/* 後付け横幅
======================================== */
.-w800 {
  width: 800px !important;
}
.-w800.-max {
  max-width: 100%;
}
.-w800:not(.-max) {
  max-width: 84%;
}

.-w980 {
  width: 980px !important;
}
.-w980.-max {
  max-width: 100%;
}
.-w980:not(.-max) {
  max-width: 84%;
}

.-w1080 {
  width: 1080px !important;
}
.-w1080.-max {
  max-width: 100%;
}
.-w1080:not(.-max) {
  max-width: 84%;
}

.-w1180 {
  width: 1180px !important;
}
.-w1180.-max {
  max-width: 100%;
}
.-w1180:not(.-max) {
  max-width: 84%;
}

.-w1280 {
  width: 1280px !important;
}
.-w1280.-max {
  max-width: 100%;
}
.-w1280:not(.-max) {
  max-width: 84%;
}

.-w1380 {
  width: 1380px !important;
}
.-w1380.-max {
  max-width: 100%;
}
.-w1380:not(.-max) {
  max-width: 84%;
}

.-w1480 {
  width: 1480px !important;
}
.-w1480.-max {
  max-width: 100%;
}
.-w1480:not(.-max) {
  max-width: 84%;
}

.-w1680 {
  width: 1680px !important;
}
.-w1680.-max {
  max-width: 100%;
}
.-w1680:not(.-max) {
  max-width: 84%;
}

.-w2000 {
  width: 2000px !important;
}
.-w2000.-max {
  max-width: 100%;
}
.-w2000:not(.-max) {
  max-width: 84%;
}

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

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ol,
ul {
  list-style: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

blockquote,
q {
  quotes: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

td,
th {
  text-align: left;
}

em {
  font-style: italic;
  color: #666;
}

/* デフォルトデザインリセット */
input[type=text],
input[type=submit],
input[type=search] {
  margin: 0;
  padding: 0;
  background: #FFF;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=image] {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button {
  position: relative;
  display: table;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

@media screen and (min-width: 769px) {
  a[href*="tel:"] {
    pointer-events: none;
  }
}

strong,
b {
  font-weight: bold;
}

figcaption {
  text-align: center;
}

figcaption span {
  display: inline-block;
}

.swiper:has(.swiper-pagination) .swiper-wrapper {
  margin-bottom: 30px;
}

.swiper-pagination {
  bottom: 15px;
}

.swiper-pagination span {
  background: #a60000;
  width: 0.75em;
  height: 0.75em;
}

/* Swiper 12以降、ナビゲーション矢印がフォントアイコン(:after)から
   SVG(.swiper-navigation-icon)に変更されたため、ボタン幅を従来と同じ比率に戻す */
.swiper-button-prev,
.swiper-button-next {
  width: calc(var(--swiper-navigation-size) / 44 * 27);
}

@media screen and (min-width: 769px) {
  html {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 14px;
  }
}

html {
  scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

body {
  position: relative;
  text-align: center;
  font-family: "Noto Sans JP", serif;
}
@media screen and (min-width: 769px) {
  body {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
  }
}
body {
  line-height: 2em;
  background-color: #FFFFFF;
  -webkit-text-size-adjust: 100%;
  font-weight: 500;
}

@media screen and (min-width: 1024px) {
  body:has(.header__container:not(.-transparent)) {
    padding-top: 90px;
  }
}
@media screen and (max-width: 1023px) {
  body:has(.header__container:not(.-transparent)) {
    padding-top: 55px;
  }
}
body.is-fixed {
  overflow: hidden;
}

p.-note {
  position: relative;
  text-align: left;
  padding-left: 1.25em;
  line-height: 1.75;
}

p.-note:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

img:not(.-normal) {
  max-width: 100%;
  height: auto;
}

.-highlight {
  display: inline;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #fff000));
  background: linear-gradient(transparent 70%, #fff000 70%);
}

.noto-sans-jp {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}

/*<weight>: Use a value from 200 to 900*/
.noto-serif-jp {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.-weight200 {
  font-weight: 200;
}

.-weight300 {
  font-weight: 300;
}

.-weight400 {
  font-weight: 400;
}

.-weight500 {
  font-weight: 500;
}

.-weight600 {
  font-weight: 600;
}

.-weight700 {
  font-weight: 700;
}

.-weight800 {
  font-weight: 800;
}

.-weight900 {
  font-weight: 900;
}

.fjalla-one-regular {
  font-family: "Fjalla One", serif;
  font-weight: 400;
  font-style: normal;
}

a:not(.-normal) img {
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

a:not(.-normal):hover img {
  opacity: 0.75;
}

a[href*="tel:"] {
  color: #000000;
}
@media screen and (min-width: 769px) {
  a[href*="tel:"] {
    pointer-events: none;
  }
}
a[href*="tel:"] {
  text-decoration: none;
}

.-nowrap {
  white-space: nowrap;
}

/* フォントサイズ
======================================== */
@media screen and (min-width: 769px) {
  .-xxxxlarge {
    font-size: clamp(24px, 32px, 4vw);
  }
}
@media screen and (max-width: 768px) {
  .-xxxxlarge {
    font-size: clamp(18px, 24px, 8vw);
  }
}

@media screen and (min-width: 769px) {
  .-xxxlarge {
    font-size: clamp(18px, 28px, 3.5vw);
  }
}
@media screen and (max-width: 768px) {
  .-xxxlarge {
    font-size: clamp(16px, 22px, 7.5vw);
  }
}
.-xxxlarge {
  font-weight: 700;
}

@media screen and (min-width: 769px) {
  .-xxlarge {
    font-size: clamp(18px, 24px, 3vw);
  }
}
@media screen and (max-width: 768px) {
  .-xxlarge {
    font-size: clamp(16px, 20px, 7vw);
  }
}
.-xxlarge {
  font-weight: 700;
}

@media screen and (min-width: 769px) {
  .-xlarge {
    font-size: clamp(16px, 20px, 2vw);
  }
}
@media screen and (max-width: 768px) {
  .-xlarge {
    font-size: clamp(14px, 18px, 6vw);
  }
}
.-xlarge {
  font-weight: 700;
}

.-small {
  font-size: small;
  line-height: 1.75;
}

.-xsmall {
  font-size: x-small;
  line-height: 1.75;
}

.-exsmall {
  font-size: xx-small;
  line-height: 1.75;
}

/* フォントカラー
======================================== */
.-red {
  color: #a60000;
}

.-gray {
  color: #f6f6f6;
}

.-black {
  color: #000000;
}

.-white {
  color: #FFFFFF;
}

/* 揃え
======================================== */
.align-is-center {
  text-align: center;
}

.align-is-left {
  text-align: left;
}

.align-is-right {
  text-align: right;
}

.boxalign-is-center {
  margin-left: auto;
  margin-right: auto;
}

.boxalign-is-left {
  margin-left: 0;
  margin-right: auto;
}

.boxalign-is-right {
  margin-left: auto;
  margin-right: 0;
}

/* 段落
======================================== */
p.-left {
  text-align: left;
}

p.-center {
  text-align: center;
}

p.-right {
  text-align: right;
}

/* 比率を指定して画像を表示
======================================== */
.photoframe {
  width: 100%;
  position: relative;
  overflow: hidden;
  font-size: 0;
  line-height: 1;
}
.photoframe img {
  max-width: none;
  max-height: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.photoframe.-rsq img {
  aspect-ratio: 1/1;
}
.photoframe.-rw img {
  aspect-ratio: 16/9;
}
.photoframe.-rg img {
  aspect-ratio: 8/5;
}
.photoframe.-rs img {
  aspect-ratio: 4/3;
}
.photoframe.-rc img {
  aspect-ratio: 2.35/1;
}
.photoframe.-rnone img {
  width: 100%;
}
.photoframe.-br5 {
  border-radius: 5px;
}
.photoframe.-br10 {
  border-radius: 10px;
}
.photoframe.-br20 {
  border-radius: 20px;
}

/* table
======================================== */
table.-def {
  width: 100%;
  margin-top: 30px;
}
table.-def > thead > tr > th {
  text-align: center;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  table.-def > tbody > tr > th {
    width: 14em;
  }
}
@media screen and (max-width: 768px) {
  table.-def > tbody > tr > th {
    display: block;
    width: 100%;
  }
}
table.-def > tbody > tr > th {
  padding: 1em;
}
@media screen and (min-width: 769px) {
  table.-def > tbody > tr > td {
    table-layout: fixed;
  }
}
@media screen and (max-width: 768px) {
  table.-def > tbody > tr > td {
    display: block;
    width: 100%;
  }
}
table.-def > tbody > tr > td {
  padding: 1em;
}

table.-clm2 thead > tr > * {
  width: 50%;
}

table.-clm2 tbody > tr > * {
  width: 50%;
}

table.-clm3 thead > tr > * {
  width: 33.33%;
}

table.-clm3 tbody > tr > * {
  width: 33.33%;
}

table.-clm4 thead > tr > * {
  width: 25%;
}

table.-clm4 tbody > tr > * {
  width: 25%;
}

table.-clm5 thead > tr > * {
  width: 20%;
}

table.-clm5 tbody > tr > * {
  width: 20%;
}

table.-border {
  border-left: solid 1px #dddddd;
  border-top: solid 1px #dddddd;
}
table.-border th,
table.-border td {
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
}

table.-color {
  border-left: solid 1px #FFFFFF;
  border-top: solid 1px #FFFFFF;
}
table.-color thead th {
  background-color: #a60000;
  color: #FFFFFF;
  border-right: solid 1px #FFFFFF;
  border-bottom: solid 1px #FFFFFF;
  font-weight: 700;
}
table.-color tbody th {
  background-color: #a60000;
  color: #FFFFFF;
  border-right: solid 1px #FFFFFF;
  border-bottom: solid 1px #FFFFFF;
}
table.-color tbody td {
  background-color: #f6f6f6;
  border-right: solid 1px #FFFFFF;
  border-bottom: solid 1px #FFFFFF;
}

table.-alternate {
  width: 100%;
  margin-top: 30px;
}
table.-alternate > thead > tr > th {
  text-align: center;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  table.-alternate > tbody > tr > th {
    width: 12em;
  }
}
@media screen and (max-width: 768px) {
  table.-alternate > tbody > tr > th {
    display: block;
    width: 100%;
  }
}
table.-alternate > tbody > tr > th {
  padding: 1em;
}
table.-alternate > tbody > tr > td {
  padding: 1em;
}
table.-alternate > tfoot > tr > th,
table.-alternate > tfoot > tr > td {
  text-align: center;
  padding: 1em;
}

table.-alternate thead th {
  background-color: #a60000;
  color: #FFFFFF;
  font-size: large;
  border: solid 1px #FFFFFF;
}

table.-alternate tbody th,
table.-alternate tbody td {
  border: solid 1px #FFFFFF;
}

table.-alternate tfoot th,
table.-alternate tfoot td {
  background-color: #D9D9D9;
  border: solid 1px #FFFFFF;
  font-size: large;
}

table.align-is-center tbody th,
table.align-is-center tbody th,
table.align-is-center tbody td,
table.align-is-center tfoot td,
table.align-is-center tfoot td {
  text-align: center;
}

table.-alternate tbody tr:nth-child(odd) {
  background-color: #f6f6f6;
}

table.-alternate tbody tr:nth-child(even) {
  background-color: #EBEBEB;
}

@media screen and (max-width: 768px) {
  .-overflowX {
    overflow: auto;
  }
}
@media screen and (max-width: 768px) {
  .-overflowX table > tbody > tr > th {
    display: table-cell;
  }
}
.-overflowX table > tbody > tr > th {
  padding: 1em;
}
@media screen and (max-width: 768px) {
  .-overflowX table > tbody > tr > td {
    display: table-cell;
  }
}
.-overflowX table > tbody > tr > td {
  padding: 1em;
}

/* ul
======================================== */
ul.-circle,
ul.-dot,
ul.-note,
ul.-asterisk,
ul.-notes,
ol:not(.normal) {
  counter-reset: item;
  text-align: left;
  line-height: 1.6;
  margin-top: 1em;
}
ul.-circle > li,
ul.-dot > li,
ul.-note > li,
ul.-asterisk > li,
ul.-notes > li,
ol:not(.normal) > li {
  position: relative;
  margin-top: 0.5em;
}
ul.-circle > li:before,
ul.-dot > li:before,
ul.-note > li:before,
ul.-asterisk > li:before,
ul.-notes > li:before,
ol:not(.normal) > li:before {
  position: absolute;
  top: 0;
  left: 0;
}

ul.-asterisk > li {
  padding-left: 1em;
}

ul.-circle > li,
ul.-dot > li,
ul.-note > li {
  padding-left: 1.25em;
}

ol:not(.-normal) > li {
  padding-left: 2em;
}

ul.-note.-number > li {
  padding-left: 2.5em;
}

ul.-notes > li {
  padding-left: 2.5em;
}

ul.-circle > li:before {
  content: "●";
}

ul.-circle.-r > li:before {
  color: #a60000;
}

ul.-dot > li:before {
  content: "・";
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
}

ul.-note > li:before {
  content: "※";
}

ul.-note.-number > li:before {
  counter-increment: item;
  content: "※" counter(item);
}

ul.-notes > li:before {
  counter-increment: item;
  content: "注 " counter(item);
}

ul.-asterisk > li:before {
  content: "*";
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
}

ol.-dot > li:before {
  counter-increment: item;
  content: counter(item) " .";
}

ol.-brackets > li:before {
  counter-increment: item;
  content: counter(item) " )";
}

ul.-clm2,
ul.-clm3,
ul.-clm4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ul.-clm2 > li {
  width: 48.5%;
}

ul.-clm2 > li:nth-child(odd) {
  margin-right: 3%;
}

ul.-clm3 > li {
  width: 31.3%;
}

ul.-clm3 > li:not(:nth-child(3n)) {
  margin-right: 3%;
}

@media screen and (min-width: 769px) {
  ul.-clm4 > li {
    width: 23.5%;
  }
}
@media screen and (max-width: 768px) {
  ul.-clm4 > li {
    width: 48.5%;
  }
}

@media screen and (min-width: 769px) {
  ul.-clm4 > li:not(:nth-child(4n)) {
    margin-right: 2%;
  }
}

@media screen and (max-width: 768px) {
  ul.-clm4 > li:not(:nth-child(2n)) {
    margin-right: 3%;
  }
}

/* 定義リスト
======================================== */
dt.-colon {
  position: relative;
}

dt.-colon:after {
  position: absolute;
  right: 1em;
  top: 0;
  content: "：";
}

dl.-acco > dd {
  overflow: hidden;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

dl.-acco dt:not(.is-open) + dd {
  max-height: 0;
}

dl.dt-is-0 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-0 > dt {
  width: 0em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-0 > dt + dd {
  width: calc(100% - 0em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-1 > dt {
  width: 1em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-1 > dt + dd {
  width: calc(100% - 1em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-2 > dt {
  width: 2em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-2 > dt + dd {
  width: calc(100% - 2em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-3 > dt {
  width: 3em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-3 > dt + dd {
  width: calc(100% - 3em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-4 > dt {
  width: 4em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-4 > dt + dd {
  width: calc(100% - 4em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-5 > dt {
  width: 5em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-5 > dt + dd {
  width: calc(100% - 5em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-6 > dt {
  width: 6em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-6 > dt + dd {
  width: calc(100% - 6em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-7 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-7 > dt {
  width: 7em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-7 > dt + dd {
  width: calc(100% - 7em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-8 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-8 > dt {
  width: 8em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-8 > dt + dd {
  width: calc(100% - 8em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-9 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-9 > dt {
  width: 9em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-9 > dt + dd {
  width: calc(100% - 9em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-10 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-10 > dt {
  width: 10em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-10 > dt + dd {
  width: calc(100% - 10em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-11 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-11 > dt {
  width: 11em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-11 > dt + dd {
  width: calc(100% - 11em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-12 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-12 > dt {
  width: 12em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-12 > dt + dd {
  width: calc(100% - 12em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-13 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-13 > dt {
  width: 13em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-13 > dt + dd {
  width: calc(100% - 13em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-14 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-14 > dt {
  width: 14em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-14 > dt + dd {
  width: calc(100% - 14em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-15 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-15 > dt {
  width: 15em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-15 > dt + dd {
  width: calc(100% - 15em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-16 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-16 > dt {
  width: 16em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-16 > dt + dd {
  width: calc(100% - 16em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-17 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-17 > dt {
  width: 17em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-17 > dt + dd {
  width: calc(100% - 17em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-18 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-18 > dt {
  width: 18em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-18 > dt + dd {
  width: calc(100% - 18em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-19 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-19 > dt {
  width: 19em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-19 > dt + dd {
  width: calc(100% - 19em);
  padding: 1em 1em 1me 0;
}

dl.dt-is-20 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

dl.dt-is-20 > dt {
  width: 20em;
  padding: 1em 1em 1me 0;
}

dl.dt-is-20 > dt + dd {
  width: calc(100% - 20em);
  padding: 1em 1em 1me 0;
}

/* 段落
======================================== */
.default__container p:not(.-left):not(.-right):not(.-center):not(.align-is-left):not(.align-is-right):not(.align-is-center),
.contents__wrapper p:not(.-left):not(.-right):not(.-center):not(.align-is-left):not(.align-is-right):not(.align-is-center) {
  text-align: left;
  line-height: 1.75;
}

/* ボタン
======================================== */
.-btn {
  display: table;
  text-decoration: none;
}

td .-btn {
  display: inline-block;
}

.-btn:not(.-left):not(.-right):not(.-icon) {
  margin-left: auto;
  margin-right: auto;
}

.-btn.-left {
  margin-left: 0;
  margin-right: auto;
}

.-btn.-right {
  margin-left: auto;
  margin-right: 0;
}

.-btn.-capsule {
  position: relative;
  padding: 0.75em 3.5em;
  line-height: 1;
  border-radius: 3em;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.-btn.-capsule:not(.-red) {
  color: #a60000;
  border: solid 3px #a60000;
  background-color: #FFFFFF;
}

.-btn.-capsule.-red {
  color: #FFFFFF;
  border: solid 3px #FFFFFF;
  background-color: #a60000;
}

.-btn.-capsule:not(.-red):hover {
  background-color: #a60000;
  color: #FFFFFF;
}

.-btn.-capsule.-red:hover {
  background-color: #FFFFFF;
  color: #a60000;
}

.-btn.-capsule:after {
  position: absolute;
  right: 1.25em;
  top: 50%;
  -webkit-transform: translateY(-46%) rotate(45deg);
          transform: translateY(-46%) rotate(45deg);
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 2px #a60000;
  border-right: solid 2px #a60000;
  z-index: 1;
}

.-btn.-capsule:not(.-red):after {
  border-top: solid 2px #a60000;
  border-right: solid 2px #a60000;
}

.-btn.-capsule.-red:after {
  border-top: solid 2px #FFFFFF;
  border-right: solid 2px #FFFFFF;
}

.-btn.-capsule:not(.-red):hover:after {
  border-top: solid 2px #FFFFFF;
  border-right: solid 2px #FFFFFF;
}

.-btn.-capsule.-red:hover:after {
  border-top: solid 2px #a60000;
  border-right: solid 2px #a60000;
}

.-btn.-icon {
  text-align: left !important;
  padding-left: 1.5em;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cg%3E%3Cpath%20fill%3D%22%23a60000%22%20d%3D%22M255.992%2C0C114.615%2C0%2C0%2C114.615%2C0%2C256s114.615%2C256%2C255.992%2C256C397.385%2C512%2C512%2C397.385%2C512%2C256%20S397.385%2C0%2C255.992%2C0z%20M232.213%2C389.57l-44.097-44.106L277.572%2C256l-89.456-89.464l44.097-44.097L365.782%2C256L232.213%2C389.57z%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 0.75em auto;
  background-repeat: no-repeat;
  background-position: left center;
  color: #000000;
}

span.-blank {
  display: inline-block;
  padding-right: 1.5em;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cg%3E%3Cpath%20fill%3D%22%23a60000%22%20d%3D%22M96%2C0v416h416V0H96z%20M472%2C376H136V112h336V376z%22%3E%3C%2Fpath%3E%3Cpolygon%20fill%3D%22%23a60000%22%20points%3D%2240%2C472%2040%2C296%2040%2C136%2040%2C96%200%2C96%200%2C512%20416%2C512%20416%2C472%20376%2C472%20%22%3E%3C%2Fpolygon%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: auto 0.8em;
  background-repeat: no-repeat;
  background-position: right center;
}

/* youtube
======================================== */
.-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* ページネーション
======================================== */
.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 60px 0 0 !important;
  position: relative;
  font-size: 13px;
  border-bottom: none !important;
}

.pagination span,
.pagination a {
  display: block;
  width: auto;
  margin: 4px;
  padding: 8px;
  background-color: #fff;
  text-decoration: none;
  text-align: center;
  color: #000;
  line-height: 16px;
}

/* ページ番号 */
.pagination .pager {
  width: 32px;
}

/* ホバー時 & 現在のページ */
.pagination a:hover,
.pagination .current {
  color: #FFF;
  background-color: #a60000;
  font-weight: 700;
}

/* 前へ */
.pagination a.prev {
  margin-right: 16px;
}

/* 次へ */
.pagination a.next {
  margin-left: 16px;
}

/* 最初へ 
.pagination a.first {}*/
/* 最後へ 
.pagination a.last {}*/
/* Page x / y */
.pagination span.page_num {
  display: none;
}

.halftone {
  background-color: #a60000;
  color: #FFF !important;
}

/* 後付けプロパティ
======================================== */
.marginless {
  margin: 0 !important;
}

.paddingless {
  padding: 0 !important;
}

/* 回り込み解除 
WPで左寄せ・右寄せを行う際にFloatを使っているため
親要素につけてください。
======================================== */
.clfix {
  clear: both;
  content: "";
  display: block;
}

/* ヘッダー
======================================== */
.header__container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 101;
}
@media screen and (min-width: 769px) {
  .header__container {
    padding: 15px 3% 18px;
    min-height: 90px;
  }
}
@media screen and (max-width: 768px) {
  .header__container {
    padding: 10px 3% 10px;
    min-height: 55px;
  }
}
.header__container {
  text-align: left;
  pointer-events: none;
}

@media screen and (min-width: 769px) {
  .header__item.-desc {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .header__item.-desc {
    font-size: 10px;
  }
}
.header__item.-desc {
  line-height: 1;
  letter-spacing: 0.025em;
}

.header__item.-logo {
  display: block;
  font-size: 0;
  line-height: 1;
  background-image: url("../img/logo_black.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 283px;
  height: 57px;
  text-indent: -999px;
  line-height: 1;
  overflow: hidden;
  pointer-events: all;
}

@media screen and (min-width: 1024px) {
  .header__item.-logo {
    width: 283px;
    height: 57px;
  }
}
@media screen and (max-width: 1023px) {
  .header__item.-logo {
    width: 184px;
    height: 37px;
  }
}
.header__container.-transparent:not(.-default) {
  background-color: rgba(0, 0, 0, 0.6);
}

.header__container:not(.-transparent),
.header__container.-transparent.-default {
  background-color: #FFFFFF;
}

.header__container.-transparent > .header__item.-logo {
  background-image: url("../img/logo_white.svg");
}

.header__container:not(.-transparent) > .header__item.-logo,
.header__container.-transparent.-default > .header__item.-logo {
  background-image: url("../img/logo_black.svg");
}

/* メニュー
======================================== */
.menu__container a {
  text-decoration: none;
}

@media screen and (min-width: 1024px) {
  .menu__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: fixed;
    top: 0;
    right: 90px;
    z-index: 102;
  }
}
@media screen and (max-width: 1023px) {
  .menu__container {
    display: none;
  }
}
.menu__box.-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: clamp(10px, 14px, 1.2vw);
}

.menu__box.-sub li:not(:first-child) {
  margin-left: 20px;
}

.menu__box.-sub li a.-family {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20d%3D%22M78.641%2C118.933c22.88%2C0%2C41.416-18.551%2C41.416-41.414c0-22.887-18.536-41.423-41.416-41.423		c-22.887%2C0-41.422%2C18.536-41.422%2C41.423C37.218%2C100.382%2C55.754%2C118.933%2C78.641%2C118.933z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M255.706%2C228.73v0.062c0.101%2C0%2C0.194-0.031%2C0.294-0.031c0.101%2C0%2C0.194%2C0.031%2C0.294%2C0.031v-0.062		c15.562-0.317%2C28.082-12.976%2C28.082-28.601c0-15.648-12.52-28.299-28.082-28.616v-0.063c-0.101%2C0-0.194%2C0.031-0.294%2C0.031		c-0.1%2C0-0.193-0.031-0.294-0.031v0.063c-15.563%2C0.317-28.082%2C12.968-28.082%2C28.616C227.623%2C215.754%2C240.143%2C228.413%2C255.706%2C228.73		z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M433.359%2C118.933c22.887%2C0%2C41.423-18.551%2C41.423-41.414c0-22.887-18.536-41.423-41.423-41.423		c-22.88%2C0-41.416%2C18.536-41.416%2C41.423C391.944%2C100.382%2C410.48%2C118.933%2C433.359%2C118.933z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M470.097%2C138.553h-36.312h-18.404c-21.106%2C0-40.432%2C11.831-50.033%2C30.622l-33.494%2C97.967		c-1.154%2C2.246-3.298%2C3.84-5.792%2C4.282c-2.493%2C0.442-5.048-0.309-6.914-2.036l-20.836-18.04c-6.233-5.769-14.408-8.973-22.902-8.973		H256h-19.41c-8.494%2C0-16.669%2C3.204-22.902%2C8.973l-20.835%2C18.04c-1.866%2C1.727-4.421%2C2.478-6.914%2C2.036		c-2.492-0.442-4.637-2.036-5.791-4.282l-33.495-97.967c-9.6-18.791-28.926-30.622-50.032-30.622H78.215H41.902		C21.834%2C138.553%2C0%2C160.387%2C0%2C180.464v139.211c0%2C10.034%2C8.13%2C18.171%2C18.164%2C18.171c4.939%2C0%2C0%2C0%2C12.682%2C0l6.906%2C118.725		c0%2C10.676%2C8.664%2C19.332%2C19.34%2C19.332c4.506%2C0%2C12.814%2C0%2C21.122%2C0c8.308%2C0%2C16.616%2C0%2C21.122%2C0c10.676%2C0%2C19.34-8.656%2C19.34-19.332		l6.906-118.725l-0.085-84.766c0-1.339%2C0.914-2.493%2C2.222-2.818c1.309-0.31%2C2.648%2C0.309%2C3.26%2C1.502l26.572%2C65.401		c3.206%2C6.256%2C9.152%2C10.654%2C16.074%2C11.885c6.922%2C1.231%2C14.022-0.844%2C19.186-5.613l25.426-18.729		c0.852-0.782%2C2.083-0.984%2C3.136-0.542c1.061%2C0.473%2C1.743%2C1.518%2C1.743%2C2.663l0.093%2C73.508l4.777%2C82.187		c0%2C7.387%2C6.001%2C13.379%2C13.395%2C13.379c3.113%2C0%2C8.865%2C0%2C14.618%2C0c5.753%2C0%2C11.506%2C0%2C14.618%2C0c7.394%2C0%2C13.394-5.992%2C13.394-13.379		l4.778-82.187l0.093-73.508c0-1.146%2C0.681-2.19%2C1.742-2.663c1.053-0.442%2C2.284-0.24%2C3.136%2C0.542l25.427%2C18.729		c5.164%2C4.769%2C12.264%2C6.844%2C19.186%2C5.613c6.922-1.231%2C12.868-5.629%2C16.073-11.885l26.573-65.401		c0.611-1.192%2C1.951-1.812%2C3.259-1.502c1.309%2C0.325%2C2.222%2C1.478%2C2.222%2C2.818l-0.085%2C84.766l6.906%2C118.725		c0%2C10.676%2C8.664%2C19.332%2C19.341%2C19.332c4.507%2C0%2C12.814%2C0%2C21.122%2C0c8.308%2C0%2C16.616%2C0%2C21.121%2C0c10.677%2C0%2C19.342-8.656%2C19.342-19.332		l6.906-118.725c12.682%2C0%2C7.742%2C0%2C12.682%2C0c10.034%2C0%2C18.164-8.137%2C18.164-18.171V180.464		C512%2C160.387%2C490.166%2C138.553%2C470.097%2C138.553z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  background-size: auto 1.5em;
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 2.5em;
}

.menu__box.-sub li a.-docs {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E	%3Cpath%20d%3D%22M429.343%2C0H226.509v139.052c0%2C15.343-12.48%2C27.832-27.818%2C27.832H59.948V489.3c0%2C12.514%2C10.182%2C22.7%2C22.7%2C22.7		h346.696c12.522%2C0%2C22.708-10.185%2C22.708-22.7V22.683C452.052%2C10.176%2C441.865%2C0%2C429.343%2C0z%20M383.185%2C434.225H128.811v-24.304		h254.374V434.225z%20M383.185%2C335.655H128.811v-24.303h254.374V335.655z%20M383.185%2C237.095H128.811v-24.304h254.374V237.095z		%20M383.185%2C138.534H263.287v-24.303h119.898V138.534z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M200.587%2C123.45V6.865L66.499%2C140.958h116.577C195.676%2C140.958%2C200.587%2C136.051%2C200.587%2C123.45z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
  background-size: auto 1.5em;
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 2em;
}

.menu__box.-sub li a.-access {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22contents%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20419.8%20567.9%22%3E%3Cpath%20d%3D%22M209.9%2C0h0C94%2C0%2C0%2C94%2C0%2C209.9s6.1%2C57.7%2C17.1%2C83.2c5.1%2C11.8%2C19.2%2C35.2%2C19.7%2C36%2C43.3%2C69.9%2C89.4%2C141.5%2C134.3%2C213.1%2C10.8%2C17.2%2C24.7%2C25.7%2C38.7%2C25.7h0c14%2C0%2C27.9-8.6%2C38.7-25.7%2C44.9-71.6%2C91.1-143.2%2C134.3-213.1.5-.8%2C14.7-24.2%2C19.7-36%2C11-25.5%2C17.1-53.6%2C17.1-83.2C419.8%2C94%2C325.9%2C0%2C209.9%2C0ZM209.9%2C300.6c-49.5%2C0-89.6-40.1-89.6-89.6s40.1-89.6%2C89.6-89.6%2C89.6%2C40.1%2C89.6%2C89.6-40.1%2C89.6-89.6%2C89.6Z%22%20style%3D%22fill%3A%20%23a60000%3B%22%20%2F%3E%3C%2Fsvg%3E");
  background-size: auto 1.5em;
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 2em;
}

.menu__box.-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.menu__box.-main li {
  position: relative;
  padding-left: 1.5em;
  padding-right: 1.5em;
}

.menu__box.-main li:before {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  display: block;
  width: 1px;
  height: 1.25em;
}

.menu__box.-main li:last-child:after {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  display: block;
  width: 1px;
  height: 1.25em;
}

.menu__box.-sub a,
.menu__box.-sub a {
  font-weight: 600;
  line-height: 1.5em;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.menu__box.-sub a:hover,
.menu__box.-main a:hover {
  opacity: 0.5;
}

.menu__box.-sub a {
  letter-spacing: 0.05em;
}

.menu__box.-main a {
  letter-spacing: 0.2em;
}

.header__container.-transparent:not(.-default) + .menu__container .menu__box a {
  color: #FFFFFF !important;
}

.header__container.-transparent:not(.-default) + .menu__container .menu__box.-main li:before,
.header__container.-transparent:not(.-default) + .menu__container .menu__box.-main li:last-child:after {
  background-color: #FFFFFF;
}

.header__container:not(.-transparent) + .menu__container .menu__box a,
.header__container.-transparent.-default + .menu__container .menu__box a {
  color: #000000 !important;
}

.header__container.-transparent.-default + .menu__container .menu__box.-main li:before,
.header__container.-transparent.-default + .menu__container .menu__box.-main li:last-child:after,
.header__container:not(.-transparent) + .menu__container .menu__box.-main li:before,
.header__container:not(.-transparent) + .menu__container .menu__box.-main li:last-child:after {
  background-color: #000000;
}

.menu__item.-opensearch {
  width: 90px;
  height: 90px;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
  pointer-events: none;
  opacity: 0.5;
  background-size: 22px 22px;
  background-repeat: no-repeat;
  background-position: top 26px center;
}

.menu__item.-opensearch.is-active {
  pointer-events: all;
  opacity: 1;
}

.header__container.-transparent:not(.-default) + .menu__container .menu__item.-opensearch {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20d%3D%22M180.8%2C150.8c9.7-15.2%2C15.3-33.3%2C15.3-52.6C196.2%2C44%2C152.2%2C0%2C98.1%2C0s-37.4%2C5.6-52.6%2C15.3c-12.1%2C7.7-22.4%2C18-30.2%2C30.2C5.6%2C60.7%2C0%2C78.8%2C0%2C98.1c0%2C54.1%2C44%2C98.1%2C98.1%2C98.1s37.4-5.6%2C52.6-15.3c12.1-7.7%2C22.4-18%2C30.2-30.2ZM129.9%2C160.1c-9.5%2C4.9-20.4%2C7.7-31.8%2C7.7-38.4%2C0-69.6-31.3-69.6-69.7s2.8-22.3%2C7.7-31.8c6.7-12.9%2C17.2-23.5%2C30.2-30.2%2C9.5-4.9%2C20.3-7.7%2C31.8-7.7%2C38.4%2C0%2C69.6%2C31.3%2C69.6%2C69.7s-2.8%2C22.3-7.7%2C31.8c-6.7%2C12.9-17.2%2C23.5-30.1%2C30.2Z%22%20style%3D%22fill%3A%20%23FFFFFF%3B%22%2F%3E%3Cpath%20d%3D%22M249.8%2C219.6l-56.6-56.5c-8.1%2C11.8-18.4%2C22.1-30.2%2C30.2l56.6%2C56.5c4.2%2C4.2%2C9.6%2C6.3%2C15.1%2C6.3s10.9-2.1%2C15.1-6.3c8.3-8.3%2C8.3-21.8%2C0-30.2Z%22%20style%3D%22fill%3A%20%23FFFFFF%22%2F%3E%3C%2Fsvg%3E");
  color: #FFFFFF;
}

.header__container:not(.-transparent) + .menu__container .menu__item.-opensearch,
.header__container.-transparent.-default + .menu__container .menu__item.-opensearch {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20d%3D%22M180.8%2C150.8c9.7-15.2%2C15.3-33.3%2C15.3-52.6C196.2%2C44%2C152.2%2C0%2C98.1%2C0s-37.4%2C5.6-52.6%2C15.3c-12.1%2C7.7-22.4%2C18-30.2%2C30.2C5.6%2C60.7%2C0%2C78.8%2C0%2C98.1c0%2C54.1%2C44%2C98.1%2C98.1%2C98.1s37.4-5.6%2C52.6-15.3c12.1-7.7%2C22.4-18%2C30.2-30.2ZM129.9%2C160.1c-9.5%2C4.9-20.4%2C7.7-31.8%2C7.7-38.4%2C0-69.6-31.3-69.6-69.7s2.8-22.3%2C7.7-31.8c6.7-12.9%2C17.2-23.5%2C30.2-30.2%2C9.5-4.9%2C20.3-7.7%2C31.8-7.7%2C38.4%2C0%2C69.6%2C31.3%2C69.6%2C69.7s-2.8%2C22.3-7.7%2C31.8c-6.7%2C12.9-17.2%2C23.5-30.1%2C30.2Z%22%20style%3D%22fill%3A%20%23000000%3B%22%2F%3E%3Cpath%20d%3D%22M249.8%2C219.6l-56.6-56.5c-8.1%2C11.8-18.4%2C22.1-30.2%2C30.2l56.6%2C56.5c4.2%2C4.2%2C9.6%2C6.3%2C15.1%2C6.3s10.9-2.1%2C15.1-6.3c8.3-8.3%2C8.3-21.8%2C0-30.2Z%22%20style%3D%22fill%3A%20%23000000%22%2F%3E%3C%2Fsvg%3E");
  color: #000000;
}

.menu__item.-opensearch .-text {
  position: absolute;
  bottom: 1.15em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 12px;
  font-weight: 400;
}

.menu__box.-search {
  position: absolute;
  right: 0;
  top: 100px;
  background-color: #a60000;
  width: 500px;
  max-width: 50%;
  padding: 55px 16px 20px 27px;
  border-radius: 10px;
  -webkit-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
}

.menu__box.-search:not(.is-active) {
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
  opacity: 0;
}

.menu__box.-search.is-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.menu__box.-search:not(.is-active) input {
  display: block;
}

.menu__box.-search:not(.is-active) button {
  pointer-events: none;
}

.menu__box.-search.is-active input {
  display: block;
}

.menu__box.-search.is-active button {
  pointer-events: all;
}

.menu__item.-closesearch {
  position: absolute;
  right: 16px;
  top: 16px;
  width: 24px;
  height: 24px;
}

.menu__item.-closesearch:before,
.menu__item.-closesearch:after {
  content: "";
  display: block;
  position: relative;
  width: 24px;
  height: 2px;
  background-color: #FFF;
}

.menu__item.-closesearch:before {
  -webkit-transform: translateY(2px) rotate(-45deg);
          transform: translateY(2px) rotate(-45deg);
}

.menu__item.-closesearch:after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.gsc-input {
  padding-right: 0 !important;
  -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
}

.gsc-input .gsc-input {
  padding: 0.5em !important;
  -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
}

.gsc-search-button {
  margin-left: 0 !important;
  height: 40px;
  background-color: #FFF;
}

.gsc-search-button-v2 {
  display: block;
  border-color: transparent !important;
  background-color: #FFF !important;
  width: 60px;
  height: 40px;
}

.gsc-search-button-v2 svg {
  width: 20px !important;
  height: 20px !important;
  fill: #a60000 !important;
}

.gsc-input-box {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.menu__item.-searchtext,
.megamenu__item.-searchtext {
  width: 100%;
  padding: 0.5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 40px;
}

.menu__item.-searchbutton,
.megamenu__item.-searchbutton {
  position: absolute;
  right: 0;
  top: 0;
  border-left: solid 1px #e5e5e5;
  height: 100%;
}

.menu__block.-search,
.megamenu__block.-search {
  position: relative;
}

.menu__item.-openmenu {
  position: fixed;
  right: 0;
  top: 0;
  z-index: 105;
  background-color: #a60000;
  color: #FFFFFF;
  width: 90px;
  height: 90px;
}

.menu__item.-openmenu:after {
  content: "MENU";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.menu__item.is-active.-openmenu:after {
  content: "CLOSE";
}

.menu__item.-openmenu .-trigger {
  display: block;
  width: 30px;
  height: 22px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -90%);
          transform: translate(-50%, -90%);
  z-index: 102;
}

.menu__item.-openmenu .-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #FFFFFF;
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.menu__item.-openmenu .-trigger span:nth-of-type(1) {
  top: 0;
}

.menu__item.-openmenu .-trigger span:nth-of-type(2) {
  top: calc(50% - 1px);
}

.menu__item.-openmenu .-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu__item.-openmenu.is-active .-trigger span:nth-of-type(2) {
  opacity: 0;
}

@media screen and (min-width: 1024px) {
  .menu__item.-openmenu {
    width: 90px;
    height: 90px;
  }
  .menu__item.-openmenu:after {
    font-size: 13px;
    bottom: 1.15em;
  }
  .menu__item.-openmenu .-trigger {
    width: 30px;
    height: 22px;
  }
  .menu__item.-openmenu.is-active .-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-315deg);
    transform: translateY(10px) rotate(-315deg);
  }
  .menu__item.-openmenu.is-active .-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(315deg);
    transform: translateY(-10px) rotate(315deg);
  }
}
@media screen and (max-width: 1023px) {
  .menu__item.-openmenu {
    width: 55px;
    height: 55px;
  }
  .menu__item.-openmenu:after {
    font-size: 10px;
    bottom: 0.75em;
  }
  .menu__item.-openmenu .-trigger {
    width: 20px;
    height: 15px;
  }
  .menu__item.-openmenu.is-active .-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(7px) rotate(-315deg);
    transform: translateY(7px) rotate(-315deg);
  }
  .menu__item.-openmenu.is-active .-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(315deg);
    transform: translateY(-7px) rotate(315deg);
  }
}
/*
メガメニュー
==================================================== */
.megamenu__container {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 103;
  width: 100%;
  height: 100vh;
  overflow-x: scroll;
  background-color: #a60000;
}
@media screen and (min-width: 769px) {
  .megamenu__container {
    padding-top: 90px;
  }
}
@media screen and (max-width: 768px) {
  .megamenu__container {
    padding-top: 55px;
  }
}
.megamenu__container {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.megamenu__container.is-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.megamenu__container:not(.is-active):after {
  opacity: 0;
}

.megamenu__container.is-active:after {
  opacity: 1;
}

.megamenu__container::-webkit-scrollbar {
  display: none;
}

.megamenu__wrapper {
  position: relative;
  z-index: 2;
  -webkit-transition: opacity 0.25s ease 0.25s;
  transition: opacity 0.25s ease 0.25s;
}

.megamenu__container:not(.is-active) .megamenu__wrapper.-body,
.megamenu__container:not(.is-active) .megamenu__wrapper.-sub,
.megamenu__container:not(.is-active) .megamenu__wrapper.-search {
  opacity: 0;
}

.megamenu__container.is-active .megamenu__wrapper {
  opacity: 1;
}

.megamenu__wrapper.-header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 5;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .megamenu__wrapper.-header {
    padding: 15px 3% 18px;
    min-height: 90px;
  }
}
@media screen and (max-width: 768px) {
  .megamenu__wrapper.-header {
    padding: 15px 3% 10px;
    min-height: 55px;
  }
}
.megamenu__wrapper.-header {
  text-align: left;
  border-bottom: solid 1px #c01212;
  background-color: #a60000;
}

@media screen and (min-width: 1024px) {
  .megamenu__item.-logo {
    width: 283px;
    height: 57px;
  }
}
@media screen and (max-width: 1023px) {
  .megamenu__item.-logo {
    width: 184px;
    height: 37px;
  }
}
.megamenu__wrapper.-body a {
  color: #FFFFFF;
  text-decoration: none;
}

.megamenu__wrapper.-body a:hover {
  opacity: 0.75;
}

.megamenu__box.-list dt a span {
  position: relative;
  font-weight: 700;
  padding-right: 1em;
}

.megamenu__box.-list dd a {
  position: relative;
}

@media screen and (min-width: 1024px) {
  .megamenu__wrapper.-body {
    text-align: left;
    color: #FFFFFF;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 2em 3%;
    font-size: clamp(14px, 22px, 1.75vw);
    border-bottom: solid 1px #c01212;
  }
  .megamenu__box.-list + .megamenu__box.-list {
    margin-left: 4em;
  }
  .megamenu__box.-list dt {
    padding-bottom: 0.5em;
  }
  .megamenu__box.-list dt a span {
    font-size: clamp(14px, 22px, 1.75vw);
  }
  .megamenu__box.-list dt a span:after {
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-30%) rotate(45deg);
            transform: translateY(-30%) rotate(45deg);
    content: "";
    display: block;
    width: 0.45em;
    height: 0.45em;
    border-top: solid 3px #FFFFFF;
    border-right: solid 3px #FFFFFF;
  }
  .megamenu__box.-list dd > ul > li {
    margin-top: 1em;
    font-size: clamp(12px, 16px, 1.25vw);
    line-height: 1.5em;
  }
}
@media screen and (max-width: 1023px) {
  .megamenu__wrapper.-body {
    text-align: left;
    color: #FFFFFF;
    font-size: 16px;
  }
  .megamenu__box.-list dt a,
  .megamenu__box.-list dd a {
    position: relative;
    display: block;
  }
  .megamenu__box.-list dt a:after {
    position: absolute;
    right: 5%;
    top: 50%;
    content: "";
    display: block;
    width: 0.6em;
    height: 0.6em;
    border-top: solid 2px #FFFFFF;
    border-right: solid 2px #FFFFFF;
  }
  .megamenu__box.-list dt:not(.is-open) a:after {
    -webkit-transform: translateY(-30%) rotate(135deg);
            transform: translateY(-30%) rotate(135deg);
  }
  .megamenu__box.-list dt.is-open a:after {
    -webkit-transform: translateY(-30%) rotate(-45deg);
            transform: translateY(-30%) rotate(-45deg);
  }
  .megamenu__box.-list dt {
    pointer-events: all;
    cursor: pointer;
  }
  .megamenu__box.-list dt a {
    padding: 1em 1em;
    font-size: 14px;
    pointer-events: none;
    border-bottom: solid 1px #c01212;
  }
  .megamenu__box.-list dt:not(.is-open) + dd {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
  }
  .megamenu__box.-list dt.is-open + dd {
    max-height: 100vh;
  }
  .megamenu__box.-list dd a {
    padding: 1em 1em;
    font-size: 14px;
    background-color: #7f0303;
    border-bottom: solid 1px #c01212;
  }
  .megamenu__box.-list dd a:after {
    position: absolute;
    right: 5%;
    top: 50%;
    -webkit-transform: translateY(-30%) rotate(45deg);
            transform: translateY(-30%) rotate(45deg);
    content: "";
    display: block;
    width: 0.6em;
    height: 0.6em;
    border-top: solid 2px #FFFFFF;
    border-right: solid 2px #FFFFFF;
  }
}
.megamenu__wrapper.-sub {
  text-align: left;
  color: #FFFFFF;
  font-size: 16px;
  border-bottom: solid 1px #c01212;
}

.megamenu__wrapper.-sub a {
  color: #FFFFFF;
  text-decoration: none;
}

.megamenu__wrapper.-sub a:hover {
  opacity: 0.75;
}

@media screen and (min-width: 1024px) {
  .megamenu__wrapper.-sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 20px 3%;
  }
  .megamenu__box.-sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    font-size: clamp(10px, 14px, 1.2vw);
  }
  .megamenu__box.-sub li:not(:first-child) {
    margin-left: 20px;
  }
  .megamenu__box.-sub li a.-family {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20d%3D%22M78.641%2C118.933c22.88%2C0%2C41.416-18.551%2C41.416-41.414c0-22.887-18.536-41.423-41.416-41.423		c-22.887%2C0-41.422%2C18.536-41.422%2C41.423C37.218%2C100.382%2C55.754%2C118.933%2C78.641%2C118.933z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M255.706%2C228.73v0.062c0.101%2C0%2C0.194-0.031%2C0.294-0.031c0.101%2C0%2C0.194%2C0.031%2C0.294%2C0.031v-0.062		c15.562-0.317%2C28.082-12.976%2C28.082-28.601c0-15.648-12.52-28.299-28.082-28.616v-0.063c-0.101%2C0-0.194%2C0.031-0.294%2C0.031		c-0.1%2C0-0.193-0.031-0.294-0.031v0.063c-15.563%2C0.317-28.082%2C12.968-28.082%2C28.616C227.623%2C215.754%2C240.143%2C228.413%2C255.706%2C228.73		z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M433.359%2C118.933c22.887%2C0%2C41.423-18.551%2C41.423-41.414c0-22.887-18.536-41.423-41.423-41.423		c-22.88%2C0-41.416%2C18.536-41.416%2C41.423C391.944%2C100.382%2C410.48%2C118.933%2C433.359%2C118.933z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M470.097%2C138.553h-36.312h-18.404c-21.106%2C0-40.432%2C11.831-50.033%2C30.622l-33.494%2C97.967		c-1.154%2C2.246-3.298%2C3.84-5.792%2C4.282c-2.493%2C0.442-5.048-0.309-6.914-2.036l-20.836-18.04c-6.233-5.769-14.408-8.973-22.902-8.973		H256h-19.41c-8.494%2C0-16.669%2C3.204-22.902%2C8.973l-20.835%2C18.04c-1.866%2C1.727-4.421%2C2.478-6.914%2C2.036		c-2.492-0.442-4.637-2.036-5.791-4.282l-33.495-97.967c-9.6-18.791-28.926-30.622-50.032-30.622H78.215H41.902		C21.834%2C138.553%2C0%2C160.387%2C0%2C180.464v139.211c0%2C10.034%2C8.13%2C18.171%2C18.164%2C18.171c4.939%2C0%2C0%2C0%2C12.682%2C0l6.906%2C118.725		c0%2C10.676%2C8.664%2C19.332%2C19.34%2C19.332c4.506%2C0%2C12.814%2C0%2C21.122%2C0c8.308%2C0%2C16.616%2C0%2C21.122%2C0c10.676%2C0%2C19.34-8.656%2C19.34-19.332		l6.906-118.725l-0.085-84.766c0-1.339%2C0.914-2.493%2C2.222-2.818c1.309-0.31%2C2.648%2C0.309%2C3.26%2C1.502l26.572%2C65.401		c3.206%2C6.256%2C9.152%2C10.654%2C16.074%2C11.885c6.922%2C1.231%2C14.022-0.844%2C19.186-5.613l25.426-18.729		c0.852-0.782%2C2.083-0.984%2C3.136-0.542c1.061%2C0.473%2C1.743%2C1.518%2C1.743%2C2.663l0.093%2C73.508l4.777%2C82.187		c0%2C7.387%2C6.001%2C13.379%2C13.395%2C13.379c3.113%2C0%2C8.865%2C0%2C14.618%2C0c5.753%2C0%2C11.506%2C0%2C14.618%2C0c7.394%2C0%2C13.394-5.992%2C13.394-13.379		l4.778-82.187l0.093-73.508c0-1.146%2C0.681-2.19%2C1.742-2.663c1.053-0.442%2C2.284-0.24%2C3.136%2C0.542l25.427%2C18.729		c5.164%2C4.769%2C12.264%2C6.844%2C19.186%2C5.613c6.922-1.231%2C12.868-5.629%2C16.073-11.885l26.573-65.401		c0.611-1.192%2C1.951-1.812%2C3.259-1.502c1.309%2C0.325%2C2.222%2C1.478%2C2.222%2C2.818l-0.085%2C84.766l6.906%2C118.725		c0%2C10.676%2C8.664%2C19.332%2C19.341%2C19.332c4.507%2C0%2C12.814%2C0%2C21.122%2C0c8.308%2C0%2C16.616%2C0%2C21.121%2C0c10.677%2C0%2C19.342-8.656%2C19.342-19.332		l6.906-118.725c12.682%2C0%2C7.742%2C0%2C12.682%2C0c10.034%2C0%2C18.164-8.137%2C18.164-18.171V180.464		C512%2C160.387%2C490.166%2C138.553%2C470.097%2C138.553z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-size: auto 1.25em;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2.5em;
    line-height: 1.8em;
  }
  .megamenu__box.-sub li a.-docs {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E	%3Cpath%20d%3D%22M429.343%2C0H226.509v139.052c0%2C15.343-12.48%2C27.832-27.818%2C27.832H59.948V489.3c0%2C12.514%2C10.182%2C22.7%2C22.7%2C22.7		h346.696c12.522%2C0%2C22.708-10.185%2C22.708-22.7V22.683C452.052%2C10.176%2C441.865%2C0%2C429.343%2C0z%20M383.185%2C434.225H128.811v-24.304		h254.374V434.225z%20M383.185%2C335.655H128.811v-24.303h254.374V335.655z%20M383.185%2C237.095H128.811v-24.304h254.374V237.095z		%20M383.185%2C138.534H263.287v-24.303h119.898V138.534z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M200.587%2C123.45V6.865L66.499%2C140.958h116.577C195.676%2C140.958%2C200.587%2C136.051%2C200.587%2C123.45z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-size: auto 1.25em;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2.25em;
    line-height: 1.8em;
  }
  .megamenu__box.-sub li a.-access {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22contents%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20419.8%20567.9%22%3E%3Cpath%20d%3D%22M209.9%2C0h0C94%2C0%2C0%2C94%2C0%2C209.9s6.1%2C57.7%2C17.1%2C83.2c5.1%2C11.8%2C19.2%2C35.2%2C19.7%2C36%2C43.3%2C69.9%2C89.4%2C141.5%2C134.3%2C213.1%2C10.8%2C17.2%2C24.7%2C25.7%2C38.7%2C25.7h0c14%2C0%2C27.9-8.6%2C38.7-25.7%2C44.9-71.6%2C91.1-143.2%2C134.3-213.1.5-.8%2C14.7-24.2%2C19.7-36%2C11-25.5%2C17.1-53.6%2C17.1-83.2C419.8%2C94%2C325.9%2C0%2C209.9%2C0ZM209.9%2C300.6c-49.5%2C0-89.6-40.1-89.6-89.6s40.1-89.6%2C89.6-89.6%2C89.6%2C40.1%2C89.6%2C89.6-40.1%2C89.6-89.6%2C89.6Z%22%20style%3D%22fill%3A%20%23FFFFFF%3B%22%20%2F%3E%3C%2Fsvg%3E");
    background-size: auto 1.25em;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2em;
    line-height: 1.8em;
  }
}
@media screen and (max-width: 1023px) {
  .megamenu__box.-sub {
    font-size: 14px;
  }
  .megamenu__box.-sub a {
    display: block;
    padding: 1em 1em;
    border-bottom: solid 1px #c01212;
  }
  .megamenu__box.-sub li a.-family span {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20d%3D%22M78.641%2C118.933c22.88%2C0%2C41.416-18.551%2C41.416-41.414c0-22.887-18.536-41.423-41.416-41.423		c-22.887%2C0-41.422%2C18.536-41.422%2C41.423C37.218%2C100.382%2C55.754%2C118.933%2C78.641%2C118.933z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M255.706%2C228.73v0.062c0.101%2C0%2C0.194-0.031%2C0.294-0.031c0.101%2C0%2C0.194%2C0.031%2C0.294%2C0.031v-0.062		c15.562-0.317%2C28.082-12.976%2C28.082-28.601c0-15.648-12.52-28.299-28.082-28.616v-0.063c-0.101%2C0-0.194%2C0.031-0.294%2C0.031		c-0.1%2C0-0.193-0.031-0.294-0.031v0.063c-15.563%2C0.317-28.082%2C12.968-28.082%2C28.616C227.623%2C215.754%2C240.143%2C228.413%2C255.706%2C228.73		z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M433.359%2C118.933c22.887%2C0%2C41.423-18.551%2C41.423-41.414c0-22.887-18.536-41.423-41.423-41.423		c-22.88%2C0-41.416%2C18.536-41.416%2C41.423C391.944%2C100.382%2C410.48%2C118.933%2C433.359%2C118.933z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M470.097%2C138.553h-36.312h-18.404c-21.106%2C0-40.432%2C11.831-50.033%2C30.622l-33.494%2C97.967		c-1.154%2C2.246-3.298%2C3.84-5.792%2C4.282c-2.493%2C0.442-5.048-0.309-6.914-2.036l-20.836-18.04c-6.233-5.769-14.408-8.973-22.902-8.973		H256h-19.41c-8.494%2C0-16.669%2C3.204-22.902%2C8.973l-20.835%2C18.04c-1.866%2C1.727-4.421%2C2.478-6.914%2C2.036		c-2.492-0.442-4.637-2.036-5.791-4.282l-33.495-97.967c-9.6-18.791-28.926-30.622-50.032-30.622H78.215H41.902		C21.834%2C138.553%2C0%2C160.387%2C0%2C180.464v139.211c0%2C10.034%2C8.13%2C18.171%2C18.164%2C18.171c4.939%2C0%2C0%2C0%2C12.682%2C0l6.906%2C118.725		c0%2C10.676%2C8.664%2C19.332%2C19.34%2C19.332c4.506%2C0%2C12.814%2C0%2C21.122%2C0c8.308%2C0%2C16.616%2C0%2C21.122%2C0c10.676%2C0%2C19.34-8.656%2C19.34-19.332		l6.906-118.725l-0.085-84.766c0-1.339%2C0.914-2.493%2C2.222-2.818c1.309-0.31%2C2.648%2C0.309%2C3.26%2C1.502l26.572%2C65.401		c3.206%2C6.256%2C9.152%2C10.654%2C16.074%2C11.885c6.922%2C1.231%2C14.022-0.844%2C19.186-5.613l25.426-18.729		c0.852-0.782%2C2.083-0.984%2C3.136-0.542c1.061%2C0.473%2C1.743%2C1.518%2C1.743%2C2.663l0.093%2C73.508l4.777%2C82.187		c0%2C7.387%2C6.001%2C13.379%2C13.395%2C13.379c3.113%2C0%2C8.865%2C0%2C14.618%2C0c5.753%2C0%2C11.506%2C0%2C14.618%2C0c7.394%2C0%2C13.394-5.992%2C13.394-13.379		l4.778-82.187l0.093-73.508c0-1.146%2C0.681-2.19%2C1.742-2.663c1.053-0.442%2C2.284-0.24%2C3.136%2C0.542l25.427%2C18.729		c5.164%2C4.769%2C12.264%2C6.844%2C19.186%2C5.613c6.922-1.231%2C12.868-5.629%2C16.073-11.885l26.573-65.401		c0.611-1.192%2C1.951-1.812%2C3.259-1.502c1.309%2C0.325%2C2.222%2C1.478%2C2.222%2C2.818l-0.085%2C84.766l6.906%2C118.725		c0%2C10.676%2C8.664%2C19.332%2C19.341%2C19.332c4.507%2C0%2C12.814%2C0%2C21.122%2C0c8.308%2C0%2C16.616%2C0%2C21.121%2C0c10.677%2C0%2C19.342-8.656%2C19.342-19.332		l6.906-118.725c12.682%2C0%2C7.742%2C0%2C12.682%2C0c10.034%2C0%2C18.164-8.137%2C18.164-18.171V180.464		C512%2C160.387%2C490.166%2C138.553%2C470.097%2C138.553z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-size: auto 1.25em;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2.5em;
    line-height: 1.8em;
  }
  .megamenu__box.-sub li a.-docs span {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E	%3Cpath%20d%3D%22M429.343%2C0H226.509v139.052c0%2C15.343-12.48%2C27.832-27.818%2C27.832H59.948V489.3c0%2C12.514%2C10.182%2C22.7%2C22.7%2C22.7		h346.696c12.522%2C0%2C22.708-10.185%2C22.708-22.7V22.683C452.052%2C10.176%2C441.865%2C0%2C429.343%2C0z%20M383.185%2C434.225H128.811v-24.304		h254.374V434.225z%20M383.185%2C335.655H128.811v-24.303h254.374V335.655z%20M383.185%2C237.095H128.811v-24.304h254.374V237.095z		%20M383.185%2C138.534H263.287v-24.303h119.898V138.534z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M200.587%2C123.45V6.865L66.499%2C140.958h116.577C195.676%2C140.958%2C200.587%2C136.051%2C200.587%2C123.45z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-size: auto 1.25em;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2.25em;
    line-height: 1.8em;
  }
  .megamenu__box.-sub li a.-access span {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22contents%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20419.8%20567.9%22%3E%3Cpath%20d%3D%22M209.9%2C0h0C94%2C0%2C0%2C94%2C0%2C209.9s6.1%2C57.7%2C17.1%2C83.2c5.1%2C11.8%2C19.2%2C35.2%2C19.7%2C36%2C43.3%2C69.9%2C89.4%2C141.5%2C134.3%2C213.1%2C10.8%2C17.2%2C24.7%2C25.7%2C38.7%2C25.7h0c14%2C0%2C27.9-8.6%2C38.7-25.7%2C44.9-71.6%2C91.1-143.2%2C134.3-213.1.5-.8%2C14.7-24.2%2C19.7-36%2C11-25.5%2C17.1-53.6%2C17.1-83.2C419.8%2C94%2C325.9%2C0%2C209.9%2C0ZM209.9%2C300.6c-49.5%2C0-89.6-40.1-89.6-89.6s40.1-89.6%2C89.6-89.6%2C89.6%2C40.1%2C89.6%2C89.6-40.1%2C89.6-89.6%2C89.6Z%22%20style%3D%22fill%3A%20%23FFFFFF%3B%22%20%2F%3E%3C%2Fsvg%3E");
    background-size: auto 1.25em;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2em;
    line-height: 1.8em;
  }
}
.megamenu__wrapper.-search {
  padding: 25px 3%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.megamenu__block.-search {
  position: relative;
  width: 100%;
  max-width: 500px;
}

.sidemenu__container {
  position: fixed;
  z-index: 102;
}

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

.sidemenu__wrapper.-buttons > li:first-child {
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.sidemenu__wrapper.-tagcloud {
  position: relative;
  z-index: 2;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.sidemenu__container .sidemenu__item.-tab {
  display: block;
  background-color: #FFFFFF;
  text-decoration: none;
  color: #a60000;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.sidemenu__wrapper.-tagcloud a {
  display: block;
  white-space: nowrap;
  background-color: #f2d6d6;
  color: #a60000;
  text-decoration: none;
  padding: 1em 0.25em;
  line-height: 1;
  min-width: 7.14em;
  border-radius: 6px;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.sidemenu__wrapper.-tagcloud a:hover {
  background-color: #a60000;
  color: #FFF;
}

.sidemenu__wrapper.-tagcloud::-webkit-scrollbar {
  display: none;
}

@media screen and (min-width: 1024px) {
  .sidemenu__container {
    position: fixed;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%) translateX(calc(100% - 38px));
            transform: translateY(-50%) translateX(calc(100% - 38px));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .sidemenu__wrapper.-buttons li:not(:first-child) {
    margin-top: 20px;
  }
  .sidemenu__item.-tab {
    border-top: solid 3px #a60000;
    border-left: solid 3px #a60000;
    border-bottom: solid 3px #a60000;
    border-radius: 10px 0 0 10px;
    padding: 60px 0.5em 20px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
            writing-mode: vertical-rl;
  }
  .sidemenu__container .sidemenu__item.-tab.-tag {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20d%3D%22M512%2C292.4c0-16.5-6.3-33.1-18.9-45.7L273.6%2C27.2c-11.3-11.3-26.4-18-42.4-18.8L66.8%2C0h1.2c-1%2C0-2.1%2C0-3.3%2C0C47.6%2C0%2C31.1%2C6.8%2C18.9%2C19%2C6.8%2C31.1%2C0%2C47.6%2C0%2C64.7c0%2C1.1%2C0%2C2.2%2C0%2C3.3l8.3%2C163.3c.8%2C16%2C7.5%2C31.1%2C18.9%2C42.4l219.5%2C219.5c12.6%2C12.6%2C29.2%2C19%2C45.7%2C18.9%2C16.5%2C0%2C33.1-6.4%2C45.7-18.9l155-154.9-11.9-11.9%2C11.9%2C11.9c12.6-12.6%2C18.9-29.2%2C18.9-45.7ZM314.2%2C469.2c-6.1%2C6.1-13.9%2C9-21.9%2C9.1-8%2C0-15.8-3-21.9-9.1L51.1%2C249.8c-5.4-5.4-8.6-12.6-9-20.3l-8.3-163.2v-1.6c0-8.2%2C3.2-16%2C9-21.9%2C5.8-5.8%2C13.7-9.1%2C21.9-9.1h1.5s163.3%2C8.4%2C163.3%2C8.4c7.7.4%2C14.9%2C3.6%2C20.3%2C9l219.5%2C219.4c6.1%2C6.1%2C9%2C13.9%2C9.1%2C21.9%2C0%2C8-3%2C15.8-9.1%2C21.9h0l-155%2C154.9Z%22%20style%3D%22fill%3A%23a60000%22%2F%3E%3Cpath%20d%3D%22M105.6%2C105.6c-15.4%2C15.4-15.4%2C40.3%2C0%2C55.6s40.3%2C15.4%2C55.6%2C0%2C15.4-40.3%2C0-55.6c-15.4-15.4-40.3-15.4-55.6%2C0Z%22%20style%3D%22fill%3A%23a60000%22%2F%3E%3C%2Fsvg%3E");
    background-size: 20px 20px;
    background-repeat: no-repeat;
    background-position: top 30px center;
  }
  .sidemenu__container.is-active .sidemenu__item.-tab.-tag,
  .sidemenu__container .sidemenu__item.-tab.-tag:hover {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20d%3D%22M512%2C292.4c0-16.5-6.3-33.1-18.9-45.7L273.6%2C27.2c-11.3-11.3-26.4-18-42.4-18.8L66.8%2C0h1.2c-1%2C0-2.1%2C0-3.3%2C0C47.6%2C0%2C31.1%2C6.8%2C18.9%2C19%2C6.8%2C31.1%2C0%2C47.6%2C0%2C64.7c0%2C1.1%2C0%2C2.2%2C0%2C3.3l8.3%2C163.3c.8%2C16%2C7.5%2C31.1%2C18.9%2C42.4l219.5%2C219.5c12.6%2C12.6%2C29.2%2C19%2C45.7%2C18.9%2C16.5%2C0%2C33.1-6.4%2C45.7-18.9l155-154.9-11.9-11.9%2C11.9%2C11.9c12.6-12.6%2C18.9-29.2%2C18.9-45.7ZM314.2%2C469.2c-6.1%2C6.1-13.9%2C9-21.9%2C9.1-8%2C0-15.8-3-21.9-9.1L51.1%2C249.8c-5.4-5.4-8.6-12.6-9-20.3l-8.3-163.2v-1.6c0-8.2%2C3.2-16%2C9-21.9%2C5.8-5.8%2C13.7-9.1%2C21.9-9.1h1.5s163.3%2C8.4%2C163.3%2C8.4c7.7.4%2C14.9%2C3.6%2C20.3%2C9l219.5%2C219.4c6.1%2C6.1%2C9%2C13.9%2C9.1%2C21.9%2C0%2C8-3%2C15.8-9.1%2C21.9h0l-155%2C154.9Z%22%20style%3D%22fill%3A%23FFFFFF%22%2F%3E%3Cpath%20d%3D%22M105.6%2C105.6c-15.4%2C15.4-15.4%2C40.3%2C0%2C55.6s40.3%2C15.4%2C55.6%2C0%2C15.4-40.3%2C0-55.6c-15.4-15.4-40.3-15.4-55.6%2C0Z%22%20style%3D%22fill%3A%23FFFFFF%22%2F%3E%3C%2Fsvg%3E");
    background-color: #a60000;
    color: #FFFFFF;
  }
  .sidemenu__container .sidemenu__item.-tab.-entry {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%22512px%22%20height%3D%22512px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M64.875%2C371.016h382.234c16.453%2C0%2C29.828-13.359%2C29.828-29.813V93.391c0-16.453-13.375-29.828-29.828-29.828		H64.875c-16.438%2C0-29.813%2C13.375-29.813%2C29.828v247.813C35.063%2C357.656%2C48.438%2C371.016%2C64.875%2C371.016z%20M84.781%2C110.938h342.438		v212.703H84.781V110.938z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M0%2C401.625v21.656c0%2C13.875%2C11.281%2C25.156%2C25.141%2C25.156h461.703c13.875%2C0%2C25.156-11.281%2C25.156-25.156		v-21.656H0z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-size: 20px 20px;
    background-repeat: no-repeat;
    background-position: top 30px center;
  }
  .sidemenu__container .sidemenu__item.-tab.-entry:hover {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%22512px%22%20height%3D%22512px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M64.875%2C371.016h382.234c16.453%2C0%2C29.828-13.359%2C29.828-29.813V93.391c0-16.453-13.375-29.828-29.828-29.828		H64.875c-16.438%2C0-29.813%2C13.375-29.813%2C29.828v247.813C35.063%2C357.656%2C48.438%2C371.016%2C64.875%2C371.016z%20M84.781%2C110.938h342.438		v212.703H84.781V110.938z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M0%2C401.625v21.656c0%2C13.875%2C11.281%2C25.156%2C25.141%2C25.156h461.703c13.875%2C0%2C25.156-11.281%2C25.156-25.156		v-21.656H0z%22%20style%3D%22fill%3A%20%23FFFFFF%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-color: #a60000;
    color: #FFFFFF;
  }
  .sidemenu__wrapper.-tagcloud {
    border-top: solid 3px #a60000;
    border-left: solid 3px #a60000;
    border-bottom: solid 3px #a60000;
    border-radius: 0 0 0 10px;
    background-color: #FFFFFF;
    padding: 30px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    max-height: 288px;
    overflow-y: scroll;
    -ms-overflow-style: none;
  }
}
@media screen and (max-width: 1023px) {
  .sidemenu__container {
    width: 100%;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(calc(100% - 38px));
            transform: translateY(calc(100% - 38px));
  }
  .sidemenu__wrapper.-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .sidemenu__wrapper.-buttons > li {
    width: 50%;
  }
  .sidemenu__container .sidemenu__item.-tab {
    padding: 0.5em 0.25em;
    border-top: solid 2px #a60000;
    width: 100%;
  }
  .sidemenu__container .sidemenu__item.-tab span {
    display: inline-block;
    padding-left: 1.5em;
    background-repeat: no-repeat;
    background-position: left center;
  }
  .sidemenu__container .sidemenu__item.-tab.-tag span {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20d%3D%22M512%2C292.4c0-16.5-6.3-33.1-18.9-45.7L273.6%2C27.2c-11.3-11.3-26.4-18-42.4-18.8L66.8%2C0h1.2c-1%2C0-2.1%2C0-3.3%2C0C47.6%2C0%2C31.1%2C6.8%2C18.9%2C19%2C6.8%2C31.1%2C0%2C47.6%2C0%2C64.7c0%2C1.1%2C0%2C2.2%2C0%2C3.3l8.3%2C163.3c.8%2C16%2C7.5%2C31.1%2C18.9%2C42.4l219.5%2C219.5c12.6%2C12.6%2C29.2%2C19%2C45.7%2C18.9%2C16.5%2C0%2C33.1-6.4%2C45.7-18.9l155-154.9-11.9-11.9%2C11.9%2C11.9c12.6-12.6%2C18.9-29.2%2C18.9-45.7ZM314.2%2C469.2c-6.1%2C6.1-13.9%2C9-21.9%2C9.1-8%2C0-15.8-3-21.9-9.1L51.1%2C249.8c-5.4-5.4-8.6-12.6-9-20.3l-8.3-163.2v-1.6c0-8.2%2C3.2-16%2C9-21.9%2C5.8-5.8%2C13.7-9.1%2C21.9-9.1h1.5s163.3%2C8.4%2C163.3%2C8.4c7.7.4%2C14.9%2C3.6%2C20.3%2C9l219.5%2C219.4c6.1%2C6.1%2C9%2C13.9%2C9.1%2C21.9%2C0%2C8-3%2C15.8-9.1%2C21.9h0l-155%2C154.9Z%22%20style%3D%22fill%3A%23a60000%22%2F%3E%3Cpath%20d%3D%22M105.6%2C105.6c-15.4%2C15.4-15.4%2C40.3%2C0%2C55.6s40.3%2C15.4%2C55.6%2C0%2C15.4-40.3%2C0-55.6c-15.4-15.4-40.3-15.4-55.6%2C0Z%22%20style%3D%22fill%3A%23a60000%22%2F%3E%3C%2Fsvg%3E");
    background-size: 20px 20px;
  }
  .sidemenu__container .sidemenu__item.-tab.-tag {
    border-right: solid 2px #a60000;
  }
  .sidemenu__container .sidemenu__item.-tab.-entry span {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%22512px%22%20height%3D%22512px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M64.875%2C371.016h382.234c16.453%2C0%2C29.828-13.359%2C29.828-29.813V93.391c0-16.453-13.375-29.828-29.828-29.828		H64.875c-16.438%2C0-29.813%2C13.375-29.813%2C29.828v247.813C35.063%2C357.656%2C48.438%2C371.016%2C64.875%2C371.016z%20M84.781%2C110.938h342.438		v212.703H84.781V110.938z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M0%2C401.625v21.656c0%2C13.875%2C11.281%2C25.156%2C25.141%2C25.156h461.703c13.875%2C0%2C25.156-11.281%2C25.156-25.156		v-21.656H0z%22%20style%3D%22fill%3A%20%23a60000%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E");
    background-size: 20px 20px;
  }
  .sidemenu__wrapper.-tagcloud {
    border-top: solid 2px #a60000;
    background-color: #FFFFFF;
    padding: 10px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    max-height: 50vh;
    overflow-y: scroll;
    -ms-overflow-style: none;
  }
  .sidemenu__wrapper.-tagcloud a {
    width: 100%;
  }
}
/* フッター
======================================== */
.footer__container {
  position: relative;
}
@media screen and (min-width: 769px) {
  .footer__container {
    padding-top: 120px;
  }
}
@media screen and (max-width: 768px) {
  .footer__container {
    padding-top: 60px;
  }
}

.footer__container a {
  color: inherit;
  text-decoration: none;
}

.footer__wrapper.-main {
  border-top: solid 1px #dddddd;
  background-color: #f6f6f6;
  padding: 1em 5%;
}

.footer__block.-address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: left;
  margin-top: 1em;
  font-size: 14px;
}

.footer__item.-zip {
  display: inline-block;
  padding-right: 1.25em;
}

.footer__block.-sns {
  margin-top: 1em;
  font-size: 14px;
}

.footer__block.-sns li {
  position: relative;
}

.footer__block.-sns li:first-child {
  padding-left: 10em;
}

.footer__block.-sns li:first-child:before {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "公式SNSアカウント";
  font-weight: 700;
}

.footer__block.-sns li + li {
  margin-left: 15px;
}

.footer__item.-insta {
  display: block;
  width: 25px;
  height: 25px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20enable-background%3D%22new%200%200%20512%20512%22%20version%3D%221.1%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%3Cg%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M505%2C257c0%2C34.8-0.7%2C69.7%2C0.2%2C104.5c1.5%2C61.6-37.2%2C109.2-86.5%2C130.4c-19.8%2C8.5-40.6%2C13-62.1%2C13c-67.3%2C0.1-134.7%2C1-202-0.3%20%20%20c-50.7-1-92.4-22.2-122.3-64c-15.7-22-23.2-47-23.2-74.1c0-71.7%2C0-143.3%2C0-215c0-58.5%2C28.5-99.4%2C79.1-126C110.2%2C14%2C134.1%2C9.1%2C159%2C9%20%20%20c65.3%2C0%2C130.7-0.4%2C196%2C0.2c50.7%2C0.4%2C93%2C19.8%2C124.2%2C60.6c17.4%2C22.8%2C25.8%2C49%2C25.8%2C77.8C505%2C184%2C505%2C220.5%2C505%2C257z%20M46%2C257%20%20%20c0%2C36.7%2C0%2C73.3%2C0%2C110c0%2C16.4%2C3.8%2C31.8%2C12.3%2C45.7c22.3%2C36.5%2C56%2C54.3%2C97.8%2C55c67.1%2C1%2C134.3%2C0.4%2C201.5%2C0.2c16.5%2C0%2C32.5-3.4%2C47.4-10.5%20%20%20c40.6-19.4%2C63.3-50.3%2C63.1-96.7c-0.4-71-0.1-142-0.1-213c0-20.1-5.7-38.5-17.6-54.7c-23-31.1-54.8-46.4-92.8-46.8%20%20%20c-67-0.8-134-0.3-201-0.2c-14.3%2C0-28.1%2C2.9-41.5%2C7.9c-36.8%2C13.7-71%2C48.4-69.4%2C99.5C46.9%2C188%2C46%2C222.5%2C46%2C257z%22%2F%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M257.6%2C363c-64.5%2C0-116.5-51.4-116.6-115.4c-0.1-63%2C52.3-114.6%2C116.4-114.6c64.3-0.1%2C116.5%2C51.4%2C116.6%2C114.9%20%20%20C374%2C311.3%2C321.9%2C362.9%2C257.6%2C363z%20M257.6%2C326c43.9%2C0%2C79.5-35.1%2C79.4-78.3c-0.1-42.8-35.7-77.8-79.4-77.8%20%20%20c-43.9%2C0-79.7%2C34.9-79.7%2C78C178%2C291.1%2C213.7%2C326.1%2C257.6%2C326z%22%2F%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M387.5%2C98c13.5%2C0%2C24.5%2C11.5%2C24.5%2C25.6c-0.1%2C14.1-11.2%2C25.5-24.7%2C25.4c-13.3-0.1-24.2-11.5-24.2-25.3%20%20%20C363%2C109.6%2C374%2C98%2C387.5%2C98z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 25px auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.footer__item.-youtube {
  display: block;
  width: 25px;
  height: 25px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20121.5%2085%22%3E%3Cpath%20d%3D%22M118.9%2C13.3c-1.4-5.2-5.5-9.3-10.7-10.7C98.7%2C0%2C60.7%2C0%2C60.7%2C0c0%2C0-38%2C0-47.5%2C2.5C8.1%2C3.9%2C3.9%2C8.1%2C2.5%2C13.3%2C0%2C22.8%2C0%2C42.5%2C0%2C42.5c0%2C0%2C0%2C19.8%2C2.5%2C29.2%2C1.4%2C5.2%2C5.5%2C9.3%2C10.7%2C10.7%2C9.5%2C2.5%2C47.5%2C2.5%2C47.5%2C2.5%2C0%2C0%2C38%2C0%2C47.5-2.5%2C5.2-1.4%2C9.3-5.5%2C10.7-10.7%2C2.5-9.5%2C2.5-29.2%2C2.5-29.2%2C0%2C0%2C0-19.8-2.5-29.2ZM48.6%2C60.7V24.3l31.6%2C18.2-31.6%2C18.2Z%22%2F%3E%3C%2Fsvg%3E");
  background-size: 25px auto;
  background-repeat: no-repeat;
  background-position: center center;
}

@media screen and (min-width: 1024px) {
  .footer__wrapper.-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1em 5%;
  }
  .footer__block.-sign {
    text-align: left;
  }
  .footer__block.-address p + p {
    margin-left: 1.25em;
  }
  .footer__block.-sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: relative;
    margin-top: 1em;
    font-size: 14px;
  }
}
@media screen and (max-width: 1023px) {
  .footer__block.-sign {
    text-align: center;
    padding: 20px 5%;
  }
  .footer__block.-sign img {
    max-width: 55%;
  }
  .footer__block.-address .-location {
    width: 100%;
  }
  .footer__block.-address .-fax {
    margin-left: 1.25em;
  }
  .footer__block.-sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    margin-top: 1.5em;
    font-size: 16px;
  }
}
.footer__block.-mainmenu {
  font-size: 16px;
  margin-top: 2em;
}

.footer__wrapper.-links {
  font-size: 14px;
  background-color: #f6f6f6;
}

.footer__block.-mainmenu li {
  position: relative;
  line-height: 1.25em;
}

.footer__block.-mainmenu li:before,
.footer__block.-mainmenu li:last-child:after {
  content: "";
  display: block;
  background-color: #000000;
  position: absolute;
}

.footer__block.-submenu2 {
  margin-top: 1.5em;
}

.footer__block.-submenu3 {
  margin-top: 2em;
}

.footer__wrapper.-copyright {
  background-color: #a60000;
  color: #FFFFFF;
  padding: 1em 5%;
  line-height: 1;
}

@media screen and (min-width: 1024px) {
  .footer__block.-mainmenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: relative;
  }
  .footer__wrapper.-links {
    border-top: solid 1px #dddddd;
    padding: 2.25em 5% 1.25em;
  }
  .footer__wrapper.-links > .footer__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .footer__block.-mainmenu li {
    padding: 0 1.25em;
  }
  .footer__block.-mainmenu li:before {
    left: 0;
    top: 0;
    width: 1px;
    height: 100%;
  }
  .footer__block.-mainmenu li:last-child:after {
    right: 0;
    top: 0;
    width: 1px;
    height: 100%;
  }
  .footer__wrapper.-links > .footer__block li {
    position: relative;
    padding: 0 1em;
    line-height: 1.25em;
  }
  .footer__wrapper.-links > .footer__block li:not(:last-child):after {
    position: absolute;
    right: 0;
    top: 0;
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    background-color: #000000;
  }
  .footer__wrapper.-copyright {
    padding: 1em 5%;
  }
}
@media screen and (max-width: 1023px) {
  .footer__block.-mainmenu li {
    padding: 1.25em 0;
    line-height: 1;
    text-align: left;
  }
  .footer__block.-mainmenu li:before {
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
  }
  .footer__block.-mainmenu li:last-child:after {
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
  }
  .footer__wrapper.-links {
    padding-bottom: 2em;
  }
  .footer__wrapper.-links > .footer__block {
    text-align: left;
    padding: 0 5%;
  }
  .footer__wrapper.-links > .footer__block li {
    position: relative;
    padding: 0.75em 0;
    line-height: 1.25em;
  }
  .footer__wrapper.-copyright {
    padding: 1em 5% 60px;
  }
}
/* パン屑リスト
======================================== */
.breadcrumb__container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: left;
  padding: 10px 0 1em;
}
.breadcrumb__container a {
  color: #a60000;
  text-decoration: none;
}
.breadcrumb__container a:hover {
  text-decoration: underline;
}

.breadcrumb__container ol {
  margin-top: 0;
}

@media screen and (min-width: 769px) {
  .breadcrumb__container ol > li {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .breadcrumb__container ol > li {
    font-size: 10px;
  }
}
.breadcrumb__container ol > li {
  line-height: 1.5;
  display: inline-block;
  vertical-align: top;
  padding-left: 0;
  text-indent: 0;
}

.breadcrumb__container ol > li + li:before {
  position: relative;
  display: inline-block;
  counter-increment: none;
  content: " > ";
  padding-left: 5px;
  padding-right: 5px;
}

.breadcrumb__container ol li:before {
  display: inline-block;
  content: "";
}

.breadcrumb__container ol li:last-child {
  color: #000000;
}

/* ボタン
======================================== */
.-pagetop {
  position: fixed;
  bottom: 60px;
  right: 5%;
  z-index: 51;
  background-color: #FFFFFF;
}
@media screen and (min-width: 769px) {
  .-pagetop {
    border: solid 3px #a60000;
    bottom: 60px;
  }
}
@media screen and (max-width: 768px) {
  .-pagetop {
    border: solid 2px #a60000;
    bottom: 100px;
  }
}
.-pagetop {
  opacity: 0;
  -webkit-transition: opacity 0.4s ease 0s;
  transition: opacity 0.4s ease 0s;
}

.-pagetop:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  width: 12px;
  height: 12px;
}
@media screen and (min-width: 769px) {
  .-pagetop:before {
    border-right: solid 3px #a60000;
    border-top: solid 3px #a60000;
    -webkit-transform: rotate(-45deg) translate(-40%, -40%);
            transform: rotate(-45deg) translate(-40%, -40%);
  }
}
@media screen and (max-width: 768px) {
  .-pagetop:before {
    border-right: solid 2px #a60000;
    border-top: solid 2px #a60000;
    -webkit-transform: rotate(-45deg) translate(-30%, -40%);
            transform: rotate(-45deg) translate(-30%, -40%);
  }
}

.-pagetop.is-active {
  opacity: 1;
}

.-pagetop:hover {
  background-color: #a60000;
}

@media screen and (min-width: 769px) {
  .-pagetop:hover:before {
    border-right: solid 3px #FFFFFF;
    border-top: solid 3px #FFFFFF;
    -webkit-transform: rotate(-45deg) translate(-40%, -40%);
            transform: rotate(-45deg) translate(-40%, -40%);
  }
}
@media screen and (max-width: 768px) {
  .-pagetop:hover:before {
    border-right: solid 2px #FFFFFF;
    border-top: solid 2px #FFFFFF;
    -webkit-transform: rotate(-45deg) translate(-30%, -40%);
            transform: rotate(-45deg) translate(-30%, -40%);
  }
}

@media screen and (min-width: 1080px) {
  .-pagetop:not(.is-fixed) {
    width: 60px;
    height: 60px;
  }
  .-pagetop.is-fixed {
    bottom: 60px;
    width: 60px;
    height: 60px;
  }
}
@media screen and (max-width: 1079px) {
  .-pagetop:not(.is-fixed) {
    width: 40px;
    height: 40px;
  }
  .-pagetop.is-fixed {
    bottom: 30px;
    width: 40px;
    height: 40px;
  }
}
.ancer__container {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  line-height: 1;
  border: solid 2px #a60000;
}

.ancer__container > li > a {
  display: block;
  padding: 1em 0.25em;
  text-decoration: none;
  color: #a60000;
  background-color: #FFFFFF;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.ancer__container > li > a > span {
  position: relative;
  padding-right: 2em;
}

.ancer__container > li > a > span:after {
  display: block;
  width: 0.4em;
  height: 0.4em;
  border-right: solid 2px #a60000;
  border-bottom: solid 2px #a60000;
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.ancer__container > li > a:hover {
  color: #FFFFFF;
  background-color: #a60000;
}

.ancer__container > li > a:hover > span:after {
  border-right: solid 2px #FFFFFF;
  border-bottom: solid 2px #FFFFFF;
}

.ancer__container > li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.ancer__container > li:not(:last-child) > a {
  border-right: solid 2px #a60000;
}

@media screen and (min-width: 1024px) {
  .ancer__container {
    margin-top: 60px;
  }
}
@media screen and (max-width: 1023px) {
  .ancer__container {
    margin-top: 30px;
  }
}
/* 下層共通
======================================== */
main.-indexbg {
  background-image: url("../img/index_mainbg.jpg");
  background-repeat: no-repeat;
}
@media screen and (min-width: 769px) {
  main.-indexbg {
    background-position: right top 240px;
  }
}
@media screen and (max-width: 768px) {
  main.-indexbg {
    background-size: 80% auto;
    background-position: right top 120px;
  }
}

.kv__container {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.kv__item.-headline {
  position: relative;
  z-index: 2;
  width: 100%;
  line-height: 1.45em;
  font-weight: 700;
  letter-spacing: 0.15em;
}

.kv__item.-headline span {
  display: inline-block;
}

.kv__item.-headline span::first-letter {
  color: #a60000;
}

.kv__item.-headtape {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 2;
  width: 90%;
  max-width: 1200px;
  text-align: left;
  overflow: hidden;
}

.kv__item.-headtape > span {
  position: relative;
  display: table;
  color: #FFFFFF;
  background-color: #a60000;
  font-weight: 700;
}

.kv__item.-headtape > span:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 4px;
  display: block;
  width: 100%;
  height: 2px;
  background-color: #FFFFFF;
}

.kv__item.-headtape > span:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 4px;
  display: block;
  width: 32px;
  height: 32px;
  border: solid 2px #FFFFFF;
  -webkit-transform: translate(65%, 65%) rotate(45deg);
          transform: translate(65%, 65%) rotate(45deg);
}

.kv__box.-bg {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.kv__box.-bg img {
  width: 100%;
  height: 100%;
  max-width: none;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 768px) {
  .kv__container {
    height: 240px;
  }
  .kv__container:has(.-headtape) {
    margin-bottom: 72px;
  }
  .kv__item.-headline {
    font-size: 50px;
  }
  .kv__item.-headtape {
    -webkit-transform: translate(-50%, 72px);
            transform: translate(-50%, 72px);
  }
  .kv__item.-headtape > span {
    min-width: 420px;
    font-size: 36px;
    padding: 1.25em 2em;
  }
}
@media screen and (max-width: 767px) {
  .kv__container {
    height: 120px;
  }
  .kv__container:has(.-headtape) {
    margin-bottom: 36px;
  }
  .kv__item.-headline {
    font-size: 30px;
  }
  .kv__item.-headtape {
    -webkit-transform: translate(-50%, 36px);
            transform: translate(-50%, 36px);
  }
  .kv__item.-headtape > span {
    min-width: 70%;
    font-size: 24px;
    padding: 1em 1em;
  }
}
/* ページタイトル
======================================== */
.pagetitle__container {
  position: relative;
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.pagetitle__container .-title {
  font-weight: 700;
}

.pagetitle__container .-catch {
  font-weight: 700;
  line-height: 1.5;
}

.pagetitle__container .-lead {
  margin-top: 1em;
}

.pagetitle__container .-title span,
.pagetitle__container .-catch span,
.pagetitle__container .-lead span {
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .pagetitle__container .-title {
    margin: 50px auto 0;
    font-size: 36px;
  }
  .pagetitle__container .-catch {
    margin: 50px auto 0;
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .pagetitle__container .-title {
    margin: 20px auto 0;
    font-size: 30px;
  }
  .pagetitle__container .-catch {
    margin: 30px auto 0;
    font-size: 18px;
  }
}
/* 見出し
======================================== */
.comp__headline.-border {
  text-align: left;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .comp__headline.-border {
    font-size: 26px;
  }
}
@media screen and (max-width: 768px) {
  .comp__headline.-border {
    font-size: 18px;
  }
}
.comp__headline.-border {
  font-weight: 700;
  line-height: 1.5em;
  border-bottom: solid 2px #a60000;
  padding-bottom: 10px;
}

.comp__headline.-bggray {
  text-align: left;
  width: 100%;
  line-height: 1.5em;
  padding: 1em;
  background-color: #f6f6f6;
}
@media screen and (min-width: 769px) {
  .comp__headline.-bggray {
    font-size: 22px;
    border-left: solid 6px #a60000;
  }
}
@media screen and (max-width: 768px) {
  .comp__headline.-bggray {
    font-size: 16px;
    border-left: solid 3px #a60000;
  }
}
.comp__headline.-bggray {
  font-weight: 700;
}

.comp__headline.-bgred {
  text-align: center;
  width: 100%;
  line-height: 1.5em;
  padding: 1em;
  color: #FFFFFF;
  background-color: #a60000;
}
@media screen and (min-width: 769px) {
  .comp__headline.-bgred {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .comp__headline.-bgred {
    font-size: 16px;
  }
}
.comp__headline.-bgred {
  font-weight: 700;
}

.comp__headline.-circle {
  position: relative;
  padding-left: 1.25em;
  text-align: left;
}
@media screen and (min-width: 769px) {
  .comp__headline.-circle {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .comp__headline.-circle {
    font-size: 16px;
  }
}
.comp__headline.-circle {
  font-weight: 700;
}

.comp__headline.-circle:after {
  position: absolute;
  left: 0;
  top: 0;
  content: "●";
  color: #a60000;
}

.comp__headline.-red {
  position: relative;
}
@media screen and (min-width: 769px) {
  .comp__headline.-red {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .comp__headline.-red {
    font-size: 16px;
  }
}
.comp__headline.-red {
  font-weight: 700;
  color: #a60000;
}

.comp__headline.-black,
.comp__headline.-bold {
  position: relative;
}
@media screen and (min-width: 769px) {
  .comp__headline.-black,
  .comp__headline.-bold {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  .comp__headline.-black,
  .comp__headline.-bold {
    font-size: 16px;
  }
}
.comp__headline.-black,
.comp__headline.-bold {
  font-weight: 700;
  color: #000000;
}

/*　基本コンテナ
======================================== */
.default__container {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.clm2__container > .-text {
  text-align: left;
}

.clm2__container > .-body {
  text-align: left;
}

@media screen and (min-width: 1024px) {
  .clm2__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .clm2__container > .-text {
    width: 62%;
    text-align: left;
  }
  .clm2__container > .-image {
    width: 35%;
  }
  .clm2__container > div:nth-child(n+3) {
    margin-top: 30px;
  }
  .clm2__container > div:nth-child(n+3) {
    margin-top: 30px;
  }
  .clm2__container > .-body {
    width: 48%;
  }
  .clm2__container > .-photolist {
    width: 48%;
  }
  .clm2__container > .-w240 {
    width: 240px;
  }
  .clm2__container > .-w240 + * {
    width: calc(97% - 240px);
  }
  .clm2__container > .-w360 {
    width: 360px;
  }
  .clm2__container > .-w360 + * {
    width: calc(97% - 360px);
  }
  .clm2__container > .-split {
    width: 48%;
  }
  .clm2__container > .-split:nth-child(n+3) {
    margin-top: 30px;
  }
  .clm2__container > .-split:nth-child(n+3) {
    margin-top: 30px;
  }
}
@media screen and (max-width: 1023px) {
  .clm2__container > .-text {
    width: 100%;
  }
  .clm2__container > .-image {
    margin-top: 20px;
    width: 100%;
  }
  .clm2__container > .-body {
    width: 100%;
  }
  .clm2__container > .-photolist {
    margin-top: 20px;
    width: 100%;
  }
  .clm2__container > .-split {
    width: 100%;
  }
  .clm2__container > .-split + .-split {
    margin-top: 20px;
  }
  .clm2__container > .-w240,
  .clm2__container > .-w360 {
    width: 100%;
  }
  .clm2__container > .-w240 + *,
  .clm2__container > .-w360 + * {
    margin-top: 20px;
  }
}
@media screen and (min-width: 1024px) {
  .clm3__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .clm3__container:not(.-g1-2) > div {
    width: 31.3%;
    margin-right: 3%;
  }
  .clm3__container:not(.-g1-2) > div:nth-child(3n) {
    margin-right: 0;
  }
  .clm3__container:not(.-g1-2) > div:nth-child(n+4) {
    margin-top: 30px;
  }
  .clm3__container.-g1-2 > div:first-child {
    width: 31.3%;
    margin-right: 3%;
  }
  .clm3__container.-g1-2 > div:last-child {
    width: 65.7%;
  }
}
@media screen and (max-width: 1023px) {
  .clm3__container > div:not(:first-child) {
    margin-top: 30px;
  }
}
.clm4__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (min-width: 1024px) {
  .clm4__container > div {
    width: 23.5%;
    margin-right: 2%;
  }
  .clm4__container > div:nth-child(4n) {
    margin-right: 0;
  }
  .clm4__container > div:nth-child(n+5) {
    margin-top: 30px;
  }
}
@media screen and (max-width: 1023px) {
  .clm4__container > div {
    width: 48.5%;
    margin-right: 3%;
  }
  .clm4__container > div:nth-child(even) {
    margin-right: 0;
  }
  .clm4__container > div:nth-child(n+3) {
    margin-top: 10px;
  }
}
/*　目次
======================================== */
.index__container {
  width: 90%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.index__wrapper {
  text-align: left;
}

.index__wrapper a {
  position: relative;
  display: block;
  color: #000000;
  background-color: #f6f6f6;
  text-decoration: none;
  padding-bottom: 20px;
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.index__wrapper a:hover {
  background-color: #fafafa;
}

.index__wrapper a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  display: block;
  background-color: #a60000;
  width: 100%;
  height: 1px;
}

.index__box.-photo {
  position: relative;
  z-index: 2;
  width: 100%;
  aspect-ratio: 5.75/3.66;
  overflow: hidden;
  line-height: 1;
}

.index__box.-photo img {
  max-width: none;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.index__box.-header {
  position: relative;
  z-index: 3;
  font-size: 22px;
  font-weight: 700;
  line-height: 1em;
}

.index__item.-title {
  position: relative;
  padding-right: 3em;
}

.index__item.-title:before {
  display: block;
  width: 8px;
  height: 8px;
  border-right: solid 2px #a60000;
  border-bottom: solid 2px #a60000;
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

.index__block.-list {
  margin-top: 1em;
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.index__block.-list > li {
  position: relative;
  padding-left: 1.25em;
  width: 48.5%;
}

.index__block.-list > li:nth-child(even) {
  margin-left: 3%;
}

.index__block.-list > li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "・";
}

@media screen and (min-width: 1024px) {
  .index__item.-lead {
    font-size: 26px;
  }
  .index__item.-lead span {
    display: inline-block;
    font-weight: 700;
  }
  .index__container {
    margin-top: 60px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 50px;
    grid-row-gap: 50px;
  }
  .index__wrapper {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 0 0;
  }
  .index__wrapper a {
    display: inherit;
    grid-template-rows: inherit;
    grid-row: inherit;
  }
  .index__box.-header {
    margin-top: 30px;
    padding: 0 40px 30px;
    font-size: 22px;
  }
  .index__box.-text {
    border-top: solid 2px #FFFFFF;
    padding: 10px 40px 0;
  }
  .index__block.-list {
    padding: 20px 30px;
  }
}
@media screen and (max-width: 1023px) {
  .index__item.-lead {
    font-size: 18px;
  }
  .index__item.-lead span {
    display: table;
    margin-left: auto;
    margin-right: auto;
  }
  .index__wrapper {
    margin-top: 40px;
  }
  .index__box.-header {
    margin-top: 20px;
    padding: 0 20px 20px;
    font-size: 17px;
  }
  .index__box.-text {
    border-top: solid 2px #FFFFFF;
    padding: 10px 20px 0;
  }
  .index__block.-list {
    padding: 15px 15px;
  }
}
/*　検索結果
======================================== */
.searchbox__inner {
  position: relative;
}

.search__input {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 0.5em 86px 0.5em 1em !important;
  min-height: 40px;
  font-size: 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.search__button {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  width: 76px;
  height: 40px;
  background-color: #FFF;
  border-left: solid 1px #CCC;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%3E%3Cpath%20d%3D%22M180.8%2C150.8c9.7-15.2%2C15.3-33.3%2C15.3-52.6C196.2%2C44%2C152.2%2C0%2C98.1%2C0s-37.4%2C5.6-52.6%2C15.3c-12.1%2C7.7-22.4%2C18-30.2%2C30.2C5.6%2C60.7%2C0%2C78.8%2C0%2C98.1c0%2C54.1%2C44%2C98.1%2C98.1%2C98.1s37.4-5.6%2C52.6-15.3c12.1-7.7%2C22.4-18%2C30.2-30.2ZM129.9%2C160.1c-9.5%2C4.9-20.4%2C7.7-31.8%2C7.7-38.4%2C0-69.6-31.3-69.6-69.7s2.8-22.3%2C7.7-31.8c6.7-12.9%2C17.2-23.5%2C30.2-30.2%2C9.5-4.9%2C20.3-7.7%2C31.8-7.7%2C38.4%2C0%2C69.6%2C31.3%2C69.6%2C69.7s-2.8%2C22.3-7.7%2C31.8c-6.7%2C12.9-17.2%2C23.5-30.1%2C30.2Z%22%20style%3D%22fill%3A%20%23a60000%3B%22%2F%3E%3Cpath%20d%3D%22M249.8%2C219.6l-56.6-56.5c-8.1%2C11.8-18.4%2C22.1-30.2%2C30.2l56.6%2C56.5c4.2%2C4.2%2C9.6%2C6.3%2C15.1%2C6.3s10.9-2.1%2C15.1-6.3c8.3-8.3%2C8.3-21.8%2C0-30.2Z%22%20style%3D%22fill%3A%20%23a60000%22%2F%3E%3C%2Fsvg%3E");
  background-size: 20px auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.search__button:hover {
  cursor: pointer;
}

.result__wrapper {
  margin: 80px auto 60px;
}

.result__wrapper li {
  padding: 0 0 1.25em 0;
}

.result__wrapper a {
  color: inherit;
  text-decoration: none;
}

.result__wrapper h2 {
  position: relative;
}
@media screen and (min-width: 769px) {
  .result__wrapper h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .result__wrapper h2 {
    font-size: 16px;
  }
}
.result__wrapper h2 {
  font-weight: 700;
  padding-bottom: 0.5em;
  border-bottom: solid 1px #CCC;
}

.result__wrapper a:hover h2 {
  color: #a60000;
}

.result__wrapper h2:before {
  position: absolute;
  right: 0.5em;
  top: 0.5em;
  content: "";
  display: block;
  width: 0.4em;
  height: 0.4em;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s;
}

.result__wrapper a:hover h2:before {
  border-top: solid 2px #a60000;
  border-right: solid 2px #a60000;
}

.result__wrapper p {
  margin-top: 1em;
}
@media screen and (min-width: 769px) {
  .result__wrapper p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .result__wrapper p {
    font-size: 12px;
  }
}