@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Figtree:wght@300..900&family=Noto+Sans+JP:wght@100..900&display=swap");
:root {
  --fa: "Font Awesome 6 Free","Font Awesome 6 Brand","Font Awesome 6 Duotone","Line Awesome Free","Line Awesome Brands";
  --la: "Line Awesome Free","Line Awesome Brands","Font Awesome 6 Free","Font Awesome 6 Brand","Font Awesome 6 Duotone";
  --icon:var(--fa);
}

:root {
  --Hig: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", "Noto Sans JP", sans-serif;
  --Him: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Yu Mincho", "MS PMincho", "Noto Serif JP", serif;
  --Yug:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", "Noto Sans JP", sans-serif;
  --Yum: "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", "Noto Serif JP", serif;
  --Tnr:"Times New Roman", Times, "Noto Serif JP", sans-serif;
  --Ser: "Noto Serif JP", serif;
  --San: "Noto Sans JP", sans-serif;
  --Fig:"Figtree","Noto Sans JP", sans-serif;
  --bodyFF: YakuHanJP_Narrow, var(--San);
  --noYH:var(--San);
  --Eng:var(--Fig);
}

.noYH {
  font-family: var(--noYH) !important;
}

.Ser {
  font-family: var(--Ser) !important;
}

.San {
  font-family: var(--San) !important;
}

.Eng {
  font-family: var(--Eng) !important;
}

.Fig {
  font-family: var(--Fig) !important;
}

:is(p:not(:has(> a)), h1, h2, h3, h4, h5), .form_wrap.form_01 dl:has(dd:empty) dt:is(#contents dt), .it01 p, .ti01 p, .part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt), .part_dllist.form_02 dl:has(dd:empty) dt:is(#contents dt), .part_dllist.form_column dl:has(dd:empty) dt, .bigFZ, p, :is(h1, .h1FZ), :is(h2, .h2FZ), :is(h3, .h3FZ), .Hfont {
  font-weight: var(--hfw);
  font-family: var(--hff);
  line-height: var(--hlh);
  letter-spacing: var(--hls);
  color: var(--hcolor);
}

:is(h1, .h1FZ) {
  font-size: var(--h1FZ);
}

:is(h2, .h2FZ) {
  font-size: var(--h2FZ);
}

.form_wrap.form_01 dl:has(dd:empty) dt:is(#contents dt), .part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt), .part_dllist.form_02 dl:has(dd:empty) dt:is(#contents dt), :is(h3, .h3FZ) {
  font-size: var(--h3FZ);
}

:root {
  --f12:clamp(10px, 1.2vw, 12px);
  --f14:clamp(12px, 1.3vw, 14px);
  --f15:clamp(14px, 1.4vw, 15px);
  --f16:clamp(14px, 1.4vw, 16px);
  --f18:clamp(14px, 1.6vw, 18px);
  --f20:clamp(14px, 1.8vw, 20px);
  --f22:clamp(16px, 2vw, 22px);
  --f24:clamp(16px, 2.4vw, 24px);
  --f26:clamp(18px, 2.4vw, 26px);
  --f28:clamp(20px, 2.4vw, 28px);
  --f32:clamp(20px, 3.2vw, 32px);
  --f36:clamp(24px, 3.6vw, 36px);
  --f48:clamp(32px, 5vw, 48px);
  --f64:clamp(48px,6vw,64px);
  --f72:clamp(48px,7vw,72px);
  --f96:clamp(48px,9vmin,96px);
}

.part_dllist {
  overflow-y: scroll;
  --thumbC:var(--tx20);
  --thumbW:8px;
}
.part_dllist::-webkit-scrollbar {
  background-color: transparent;
  width: var(--thumbW);
  height: 0;
}
.part_dllist::-webkit-scrollbar-thumb {
  background-color: var(--thumbC);
}

.tbl_normal, .tbl_scroll, .__scrollX > :is(div) {
  overflow-x: scroll;
  --thumbC:var(--tx20);
  --thumbW:8px;
}
.tbl_normal::-webkit-scrollbar, .tbl_scroll::-webkit-scrollbar, .__scrollX > :is(div)::-webkit-scrollbar {
  background-color: transparent;
  width: 0;
  height: var(--thumbW);
}
.tbl_normal::-webkit-scrollbar-thumb, .tbl_scroll::-webkit-scrollbar-thumb, .__scrollX > :is(div)::-webkit-scrollbar-thumb {
  background-color: var(--thumbC);
}

:root {
  --un:unset;
  --inh:inherit;
  --cur:currentColor;
  --tr:transparent;
  --mc10: color-mix(in srgb, transparent,var(--mc) 10%);
  --mc15: color-mix(in srgb, transparent,var(--mc) 15%);
  --mc20: color-mix(in srgb, transparent,var(--mc) 20%);
  --mc30: color-mix(in srgb, transparent,var(--mc) 30%);
  --mc40: color-mix(in srgb, transparent,var(--mc) 40%);
  --mc50: color-mix(in srgb, transparent,var(--mc) 50%);
  --mc60: color-mix(in srgb, transparent,var(--mc) 60%);
  --mc70: color-mix(in srgb, transparent,var(--mc) 70%);
  --mc80: color-mix(in srgb, transparent,var(--mc) 80%);
  --mc90: color-mix(in srgb, transparent,var(--mc) 90%);
  --sc10: color-mix(in srgb, transparent,var(--sc) 10%);
  --ac10: color-mix(in srgb, transparent,var(--ac) 10%);
  --bc10: color-mix(in srgb, transparent,var(--bc) 10%);
  --tx10: color-mix(in srgb, transparent,var(--tx) 10%);
  --gr10: color-mix(in srgb, transparent,var(--gr) 10%);
  --wh10: color-mix(in srgb, transparent,var(--wh) 10%);
  --bk10: color-mix(in srgb, transparent,var(--bk) 10%);
  --sc20: color-mix(in srgb, transparent,var(--sc) 20%);
  --ac20: color-mix(in srgb, transparent,var(--ac) 20%);
  --bc20: color-mix(in srgb, transparent,var(--bc) 20%);
  --tx20: color-mix(in srgb, transparent,var(--tx) 20%);
  --gr20: color-mix(in srgb, transparent,var(--gr) 20%);
  --wh20: color-mix(in srgb, transparent,var(--wh) 20%);
  --bk20: color-mix(in srgb, transparent,var(--bk) 20%);
  --sc30: color-mix(in srgb, transparent,var(--sc) 30%);
  --ac30: color-mix(in srgb, transparent,var(--ac) 30%);
  --bc30: color-mix(in srgb, transparent,var(--bc) 30%);
  --tx30: color-mix(in srgb, transparent,var(--tx) 30%);
  --gr30: color-mix(in srgb, transparent,var(--gr) 30%);
  --wh30: color-mix(in srgb, transparent,var(--wh) 30%);
  --bk30: color-mix(in srgb, transparent,var(--bk) 30%);
  --sc40: color-mix(in srgb, transparent,var(--sc) 40%);
  --ac40: color-mix(in srgb, transparent,var(--ac) 40%);
  --bc40: color-mix(in srgb, transparent,var(--bc) 40%);
  --tx40: color-mix(in srgb, transparent,var(--tx) 40%);
  --gr40: color-mix(in srgb, transparent,var(--gr) 40%);
  --wh40: color-mix(in srgb, transparent,var(--wh) 40%);
  --bk40: color-mix(in srgb, transparent,var(--bk) 40%);
  --sc50: color-mix(in srgb, transparent,var(--sc) 50%);
  --ac50: color-mix(in srgb, transparent,var(--ac) 50%);
  --bc50: color-mix(in srgb, transparent,var(--bc) 50%);
  --tx50: color-mix(in srgb, transparent,var(--tx) 50%);
  --gr50: color-mix(in srgb, transparent,var(--gr) 50%);
  --wh50: color-mix(in srgb, transparent,var(--wh) 50%);
  --bk50: color-mix(in srgb, transparent,var(--bk) 50%);
  --sc60: color-mix(in srgb, transparent,var(--sc) 60%);
  --ac60: color-mix(in srgb, transparent,var(--ac) 60%);
  --bc60: color-mix(in srgb, transparent,var(--bc) 60%);
  --tx60: color-mix(in srgb, transparent,var(--tx) 60%);
  --gr60: color-mix(in srgb, transparent,var(--gr) 60%);
  --wh60: color-mix(in srgb, transparent,var(--wh) 60%);
  --bk60: color-mix(in srgb, transparent,var(--bk) 60%);
  --sc70: color-mix(in srgb, transparent,var(--sc) 70%);
  --ac70: color-mix(in srgb, transparent,var(--ac) 70%);
  --bc70: color-mix(in srgb, transparent,var(--bc) 70%);
  --tx70: color-mix(in srgb, transparent,var(--tx) 70%);
  --gr70: color-mix(in srgb, transparent,var(--gr) 70%);
  --wh70: color-mix(in srgb, transparent,var(--wh) 70%);
  --bk70: color-mix(in srgb, transparent,var(--bk) 70%);
  --sc80: color-mix(in srgb, transparent,var(--sc) 80%);
  --ac80: color-mix(in srgb, transparent,var(--ac) 80%);
  --bc80: color-mix(in srgb, transparent,var(--bc) 80%);
  --tx80: color-mix(in srgb, transparent,var(--tx) 80%);
  --gr80: color-mix(in srgb, transparent,var(--gr) 80%);
  --wh80: color-mix(in srgb, transparent,var(--wh) 80%);
  --bk80: color-mix(in srgb, transparent,var(--bk) 80%);
  --sc90: color-mix(in srgb, transparent,var(--sc) 90%);
  --ac90: color-mix(in srgb, transparent,var(--ac) 90%);
  --bc90: color-mix(in srgb, transparent,var(--bc) 90%);
  --tx90: color-mix(in srgb, transparent,var(--tx) 90%);
  --gr90: color-mix(in srgb, transparent,var(--gr) 90%);
  --wh90: color-mix(in srgb, transparent,var(--wh) 90%);
  --bk90: color-mix(in srgb, transparent,var(--bk) 90%);
}

:root {
  --block:120px;
  --block25:calc(var(--block)/4 );
  --block3:calc(var(--block)/3 );
  --block5:calc(var(--block)/2 );
  --block6:calc(var(--block)/3*2);
  --block75:calc(var(--block)/4*3);
  --15block:calc(var(--block)*1.5);
  --2block:calc(var(--block)*2.0);
  --25block:calc(var(--block)*2.5);
  --3block:calc(var(--block)*3.0);
  --inBase:calc(50vw - (var(--base) / 2) );
  --inBase:calc(50vw - clamp(0px,50vw - var(--inline,20px), (var(--base) / 2) ));
  --in1800:calc(50vw - clamp(0px,50vw - var(--inline,20px), 900px ));
  --in1740:calc(50vw - clamp(0px,50vw - var(--inline,20px), 870px ));
  --in1728:calc(50vw - clamp(0px,50vw - var(--inline,20px), 864px ));
  --in1680:calc(50vw - clamp(0px,50vw - var(--inline,20px), 840px ));
  --in1620:calc(50vw - clamp(0px,50vw - var(--inline,20px), 810px ));
  --in1560:calc(50vw - clamp(0px,50vw - var(--inline,20px), 780px ));
  --in1536:calc(50vw - clamp(0px,50vw - var(--inline,20px), 768px ));
  --in1500:calc(50vw - clamp(0px,50vw - var(--inline,20px), 750px ));
  --in1440:calc(50vw - clamp(0px,50vw - var(--inline,20px), 720px ));
  --in1380:calc(50vw - clamp(0px,50vw - var(--inline,20px), 690px ));
  --in1320:calc(50vw - clamp(0px,50vw - var(--inline,20px), 660px ));
  --in1200:calc(50vw - clamp(0px,50vw - var(--inline,20px), 600px ));
  --in1080:calc(50vw - clamp(0px,50vw - var(--inline,20px), 540px ));
  --in1000:calc(50vw - clamp(0px,50vw - var(--inline,20px), 500px ));
  --in960: calc(50vw - clamp(0px,50vw - var(--inline,20px), 480px ));
  --in800: calc(50vw - clamp(0px,50vw - var(--inline,20px), 400px ));
  --in840: calc(50vw - clamp(0px,50vw - var(--inline,20px), 420px ));
  --in720: calc(50vw - clamp(0px,50vw - var(--inline,20px), 360px ));
  --in600: calc(50vw - clamp(0px,50vw - var(--inline,20px), 300px ));
  --outBase:calc(50% - 50vw);
}

.bg100R, .outBaseR {
  margin-right: var(--outBase) !important;
  max-width: unset !important;
}

.bg100L, .outBaseL {
  margin-left: var(--outBase) !important;
  max-width: unset !important;
}

.bg100Rin, .outBaseR {
  margin-right: var(--outBase) !important;
  padding-right: var(--inBase) !important;
  max-width: unset !important;
}

.bg100Lin, .outBaseL {
  margin-left: var(--outBase) !important;
  padding-left: var(--inBase) !important;
  max-width: unset !important;
}

.H-bg, .bg100in {
  margin-inline: var(--outBase) !important;
  padding-inline: var(--inBase) !important;
  max-width: unset !important;
}

.mv, .title1, .bg100 {
  margin-inline: var(--outBase) !important;
  max-width: unset !important;
}

.wrapper {
  padding-block: var(--wrapperPY);
  background-size: cover;
}

.wrapper100 {
  margin-inline: var(--outBase) !important;
  max-width: unset;
  padding-block: var(--wrapperPY);
  background-size: cover;
}

.H-02, .wrapper100in {
  margin-inline: var(--outBase) !important;
  max-width: unset;
  padding-inline: var(--inBase) !important;
  padding-block: var(--wrapperPY);
  background-size: cover;
}

.f_link, .pan1 a,
.h_nav a:not(.expand a, .nopointer, :has(> span)),
.banner a,
.h_nav a:not(.expand a, .nopointer, :has(> span), :is(.logo *)),
.nav a:not(.expand ul li a),
.f_nav ul a,
.blog_text h3 span,
.rss-title, .f_btn,
.h_nav .expand ul li {
  background-image: linear-gradient(currentColor, currentColor);
  transition: background 0.4s ease;
  background-repeat: no-repeat;
  background-position-y: 100%;
  background-position-x: -103%;
  background-size: 200% 2px;
}
.f_link:hover, .pan1 a:hover,
.h_nav a:hover:not(.expand a, .nopointer, :has(> span)),
.banner a:hover,
.h_nav a:hover:not(.expand a, .nopointer, :has(> span), :is(.logo *)),
.nav a:hover:not(.expand ul li a),
.f_nav ul a:hover,
.blog_text h3 span:hover,
.rss-title:hover, .f_btn:hover,
.h_nav .expand ul li:hover {
  background-position-x: 0%;
  animation: rightgrow 0.4s ease;
}
@keyframes rightgrow {
  0% {
    background-position-x: 203%;
  }
  100% {
    background-position-x: 100%;
  }
}

[class*=Bar], .f .f_pagetop {
  position: relative;
}
[class*=Bar]::before, .f .f_pagetop::before {
  content: "";
  display: inline-block;
  z-index: 1;
  font-weight: 900;
  font-family: var(--icon);
}

[class*=Bar], .f .f_pagetop {
  position: relative;
}
[class*=Bar]::before, .f .f_pagetop::before {
  content: "";
  display: inline-block;
  z-index: 1;
  font-weight: 900;
  font-family: var(--icon);
}

[class*=Bar], .f_nav li > span, .f_nav a.nopointer, .f_nav-column .nopointer {
  position: relative;
}
[class*=Bar]::after, .f_nav li > span::after, .f_nav a.nopointer::after, .f_nav-column .nopointer::after {
  content: "";
  display: inline-block;
  z-index: 1;
  font-weight: 900;
  font-family: var(--icon);
}

.part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt), .board {
  position: relative;
  z-index: 1;
}
.part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt)::before, .board::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}

.part_flexbox.__arrow .box, .i-overMC i, .i-overAC i, .title1 i, .i-blurMC i, .i-blurAC i {
  position: relative;
  z-index: 1;
}
.part_flexbox.__arrow .box::after, .i-overMC i::after, .i-overAC i::after, .title1 i::after, .i-blurMC i::after, .i-blurAC i::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}

.part_slide:not(.mv_slide) .emoji,
#contents .sns_slide .emoji {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: var(--lineClamp);
  -webkit-line-clamp: var(--lineClamp);
  overflow: hidden;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: unset;
  font-size: unset;
  line-height: unset;
}

img, video {
  max-width: 100%;
  max-height: 100%;
}

img.zoom, video.zoom {
  cursor: pointer;
}

img.load {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

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

input, textarea, select {
  padding: 6px 10px;
  max-width: 100%;
  border: 1px solid #ddd;
  border-radius: 3px;
  outline: none;
}

input::placeholder {
  font-size: 13px;
}

textarea {
  resize: vertical;
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

a[target=_blank]:hover, a[target=_self]:hover {
  font-weight: unset;
}

h1 {
  font-weight: unset;
  font-size: unset;
  line-height: unset;
}

h2 {
  font-weight: unset;
  font-size: unset;
  line-height: unset;
}

h3 {
  font-weight: unset;
  font-size: unset;
  line-height: unset;
}

h1 span, h2 span, h3 span {
  margin-left: unset;
  font-size: unset;
}

div.map {
  padding-top: unset;
  width: 100%;
  height: 100%;
  position: relative;
}

div.map iframe {
  width: 100%;
  height: unset;
  position: unset;
  top: 0;
  left: 0;
}

.tb, .sp {
  display: none !important;
}

.flex {
  display: flex;
  justify-content: unset;
  flex-wrap: wrap;
}

.post input {
  width: unset;
}

.post + input {
  max-width: 600px;
}

.post + input + input {
  max-width: 600px;
}

a.link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 30px;
  width: 200px;
  transition: 0.3s;
  cursor: pointer;
}

a.link:hover {
  opacity: 0.8;
}

div.share {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 35px;
}

a.x {
  width: 35px;
  height: 35px;
  background: #000 url(../image/resource/logo_x.svg) no-repeat center/60%;
}

a.facebook {
  width: 45px;
  height: 45px;
  background: url(../image/resource/logo_facebook.svg) no-repeat center/100%;
}

a.instagram {
  display: inline-block;
  width: 45px;
  height: 45px;
  background: url(../image/resource/logo_instagram.svg) no-repeat center/100%;
}

div.sns {
  display: flex;
  align-items: center;
  justify-content: space-around;
}
div.sns span {
  display: block;
  color: #888;
  font-size: 13px;
  word-break: break-all;
}
div.sns span:last-child {
  color: #fff;
}
div.sns a {
  display: flex;
  align-items: center;
  padding: 0 20px;
  width: 300px;
  max-width: 33.33%;
  height: 100px;
  background: #000;
}
div.sns a::before {
  display: block;
  content: "";
  margin: 0 25px 0 10px;
  width: 45px;
  height: 45px;
}
div.sns a.x::before {
  background: url(../image/resource/logo_x.svg) no-repeat center/60%;
}
div.sns a.facebook::before {
  display: block;
  content: "";
  mask-image: url(../image/resource/logo_facebook.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-image: url(../image/resource/logo_facebook.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: #fff;
}
div.sns a.instagram::before {
  display: block;
  content: "";
  background: url(../image/resource/logo_instagram.svg) no-repeat center/100%;
}

body > div.cover {
  display: block;
  width: 100%;
  height: 100vh;
  padding: 50px;
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
}
body > div.cover > a {
  display: block;
  width: 30px;
  height: 30px;
  background: url(../image/resource/close.svg) no-repeat center/100%;
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}
body > div.cover .swiper-slide {
  object-fit: scale-down;
  opacity: 0.2;
}
body > div.cover .swiper-slide-active {
  opacity: 1;
}
body > div.cover .swiper-pagination-bullets {
  bottom: 15px !important;
}
body > div.cover .swiper-button-next {
  right: 13px !important;
}
body > div.cover .swiper-button-prev {
  left: 13px !important;
}

header {
  display: block;
  align-items: unset;
  justify-content: unset;
  gap: unset;
  padding: unset;
  width: 100%;
  height: unset;
  font-family: unset;
  font-weight: unset;
  font-size: unset;
  position: relative;
}

header > div a {
  display: unset;
  align-items: unset;
  gap: unset;
}
header > div a img {
  display: block;
  height: unset;
}
header > div a span {
  font-size: unset;
  white-space: unset;
}

header menu > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

header menu ul li {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 10px;
  min-width: 100px;
  border-radius: 3px;
  font-size: 15px;
  line-height: 20px;
  text-align: center;
  word-break: keep-all;
  position: relative;
}
header menu ul li a {
  width: 100%;
  height: 100%;
}
header menu ul li ul {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0 10px;
  border-radius: 3px;
  position: absolute;
  top: 40px;
  left: 0;
  z-index: 1;
}

header menu ul li:last-child ul {
  left: initial;
  right: 0;
}

header menu ul ul li {
  justify-content: flex-start;
  min-width: 200px;
  padding: 10px 0;
  font-size: 13px;
}

header menu ul ul li:nth-child(n+2) {
  border-top: 1px solid var(--header-menu-color);
}

footer {
  display: block;
  justify-content: unset;
  padding: unset;
  width: 100%;
  min-height: unset;
  background: var(--footer-back);
  color: var(--footer-color);
  position: relative;
}
footer div {
  display: block;
  flex-direction: unset;
}
footer div:first-child {
  justify-content: unset;
}
footer div:first-child img {
  display: unset;
  height: unset;
}
footer div:first-child > span {
  margin-bottom: unset;
  font-size: unset;
}
footer address {
  font-style: unset;
  font-size: unset;
}
footer address > span {
  display: unset;
  font-size: unset;
  line-height: unset;
}
footer address span:nth-child(n+2) {
  margin-left: unset;
}
footer menu {
  padding: 20px;
}
footer menu ul {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}
footer menu ul li {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-width: 150px;
  font-size: 13px;
  line-height: 20px;
  word-break: keep-all;
  position: relative;
}
footer menu ul li ul {
  display: flex !important;
  flex-direction: column;
  gap: 10px;
  margin-top: 10px;
  padding-top: 20px;
}
footer menu ul li ul li {
  font-size: 12px;
}

body > div {
  display: flex;
  width: 100%;
  min-height: calc(100dvh - 400px);
}

aside {
  width: 0;
}

main {
  display: block;
  width: 100%;
  position: relative;
}

main > section {
  width: unset;
}

main > nav {
  width: unset;
}

.part_slide {
  overflow: unset;
}

.slider.fade img {
  width: 100%;
}

.slider.slide img {
  width: 100%;
}

.part_image > div {
  display: flex;
  flex-direction: column;
  align-items: unset;
  gap: unset;
  height: unset;
}
.part_image > div.left {
  flex-direction: row;
  align-items: unset;
}
.part_image > div.right {
  flex-direction: row-reverse;
  align-items: unset;
}
.part_image > div.bottom {
  flex-direction: column-reverse;
  align-items: unset;
}
.part_image > div > div {
  flex: unset;
}
.part_image > div > a, .part_image picture, .part_image video {
  flex: unset;
  height: unset;
}
.part_image picture img {
  width: 100%;
}
.part_image h1, .part_image h2, .part_image h3 {
  margin: unset;
  line-height: var(--hlh);
}

.part_text {
  padding: unset;
}

.part_media {
  overflow: unset;
}

.part_media > div {
  margin: unset;
}

.part_media .slick-dotted.slick-slider {
  margin-bottom: unset;
}

.part_media .slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  height: unset;
  bottom: unset;
}

.part_media div.media {
  display: flex;
  gap: unset;
  margin: unset;
  padding: unset;
  height: unset;
  background: var(--content-back);
}

.part_media div.media > a {
  flex: 1;
  display: flex;
}

.part_media div.media > a img {
  object-fit: cover;
}

.part_media div.media > div {
  flex: 1;
  word-break: break-all;
}

.part_flexbox {
  overflow: unset;
}
.part_flexbox div.row {
  display: flex;
  flex-direction: row;
  gap: unset;
  align-items: unset;
  flex-wrap: wrap;
  width: 100%;
}
.part_flexbox div.column {
  display: flex;
  flex-direction: column;
  gap: unset;
  align-items: unset;
  width: 100%;
}
.part_flexbox div.box {
  display: flex;
  flex-direction: unset;
  padding: unset;
  width: unset;
  height: unset;
}
.part_flexbox div.slider div.box {
  margin-right: unset;
}
.part_flexbox h1, .part_flexbox h2, .part_flexbox h3 {
  margin: unset;
  line-height: var(--hlh);
}
.part_flexbox h1 {
  font-size: var(--h1FZ);
}
.part_flexbox h2 {
  font-size: var(--h2FZ);
}
.part_flexbox h3 {
  font-size: var(--h3FZ);
}
.part_flexbox div.box.bottom {
  flex-direction: column-reverse;
  justify-content: unset;
}
.part_flexbox div.box.left {
  flex-direction: row;
  align-items: unset;
}
.part_flexbox div.box.right {
  flex-direction: row-reverse;
  align-items: unset;
}
.part_flexbox div.box.left > img {
  max-width: unset;
}
.part_flexbox div.box.right > img {
  max-width: unset;
}

.part_dllist {
  padding: unset;
}
.part_dllist > div {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.part_dllist dl {
  display: flex;
  gap: unset;
}
.part_dllist dl dt {
  padding: 10px;
  width: unset;
  color: inherit;
}
.part_dllist dl dd {
  padding: 10px;
  width: unset;
}

.part_form {
  padding: 10px;
}
.part_form h3 {
  margin-bottom: 20px;
}
.part_form > div {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.part_form dl {
  display: flex;
  gap: 10px;
}
.part_form dl dt {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  width: 20%;
  color: inherit;
}
.part_form dl dt span {
  font-size: 13px;
  color: #ff0000;
  white-space: nowrap;
}
.part_form dl dd {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 10px;
  width: 80%;
}
.part_form dl dd > div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.part_form dl dd > div.selector {
  flex-wrap: wrap;
  gap: 20px;
  margin: 10px;
}
.part_form dl dd > div.selector + input {
  min-width: 200px;
}
.part_form dl dd label {
  max-width: 100%;
}
.part_form dl dd label input {
  margin-right: 10px;
  position: relative;
  top: 0.5px;
}
.part_form dl dd p {
  font-size: 13px;
}

html.confirm form {
  margin: 0 auto;
  max-width: calc(100% - 100px);
}

html.confirm .part_form dl dd p {
  color: #ff0000;
}

.part_submit {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin: 50px 0;
}

.part_submit button {
  padding: 15px 30px;
  min-width: 200px;
  max-width: calc(100% - 20px);
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.15);
  border-radius: 6px;
  transition: 0.3s;
  cursor: pointer;
}

.part_submit button:hover {
  opacity: 0.8;
}

.part_submit a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px 30px;
  min-width: 200px;
  max-width: calc(100% - 20px);
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.15);
  border-radius: 6px;
  transition: 0.3s;
  cursor: pointer;
}

.part_submit a:hover {
  opacity: 0.8;
  text-decoration: none;
}

div.complete {
  margin: 50px auto;
  padding: 60px 160px;
  max-width: calc(100% - 30px);
  width: 800px;
}

div.complete ul li:first-child {
  padding: 20px 0;
  font-size: 20px;
}

div.complete a.button {
  display: block;
  margin: 50px auto 30px;
  padding: 15px 30px;
  width: unset;
  max-width: 100%;
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.15);
  border-radius: 6px;
  transition: 0.3s;
  cursor: pointer;
}

div.complete a.button:hover {
  opacity: 0.8;
  text-decoration: none;
}

div.complete span {
  font-size: 13px;
}

html.blog aside {
  min-width: 320px;
}

html.blog main {
  width: calc(100% - 400px);
}

aside > div {
  background: var(--header-back);
  color: var(--header-color);
  padding: 10px 20px;
}

aside > div:nth-of-type(n+2) {
  margin-top: 20px;
}

aside > div.search {
  padding: 0;
  background: none;
  position: relative;
}

aside > div.search input {
  padding-right: 42px;
  width: 100%;
  height: 40px;
  border-radius: 8px;
}

aside > div.search input + a {
  display: block;
  width: 30px;
  height: 30px;
  mask-image: url(../image/resource/search.svg);
  mask-size: 24px;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-image: url(../image/resource/search.svg);
  -webkit-mask-size: 24px;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--header-color);
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

aside ul li {
  padding: 10px 20px;
  background: var(--content-back);
  border-bottom: var(--content-border);
  border-bottom-style: dashed;
}

aside ul li a {
  text-decoration: underline;
  color: var(--link-color);
}

aside ul li:last-child {
  border: none;
  font-size: 0.8em;
}

aside ul li:last-child a {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

aside ul li:last-child a::before {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  mask-image: url(../image/resource/next.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-image: url(../image/resource/next.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--header-color);
  position: relative;
  top: 1px;
}

aside ul li span:first-child {
  display: block;
  font-size: 0.85em;
}

aside ul.pages li span:last-child {
  font-family: "Noto Color Emoji", sans-serif;
  font-weight: 400;
  font-style: normal;
}

div.notfound {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--content-back);
  padding: 30px 50px;
  height: 200px;
}

html.blog article.blog {
  margin: unset;
}

html.blog.article article.blog {
  padding: unset;
  background: var(--content-back);
}

article.blog div.title {
  padding: unset;
  background: var(--un);
}

article.blog time {
  display: block;
  margin-bottom: 15px;
  color: var(--header-menu-color);
}

article.blog h1, article.blog h2 {
  color: var(--header-color);
  font-size: var(--h1FZ);
  font-family: var(--hff);
  font-weight: var(--hfw);
  font-style: normal;
}

article.blog div.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 1em;
}

:root {
  --content-button-back: var(--sc);
  --content-button-color: var(--wh);
  --header-color:var(--hcolor);
}

article.blog div.tags a {
  padding: 5px;
  background: var(--content-button-back);
  color: var(--content-button-color);
  border-radius: 6px;
  line-height: 1em;
  font-size: 12px;
}

article.blog div.detail {
  padding-top: 30px;
  line-height: 2.5em;
  font-size: 16px;
  font-family: "Noto Color Emoji", sans-serif;
  font-weight: 400;
  font-style: normal;
}

article.blog div.share {
  margin-top: 30px;
}

article.blog div.image > div:not(.slide, .thumb) {
  display: flex;
}

article.blog div.image img {
  width: 100%;
  max-height: 500px;
  object-fit: cover;
}

article.blog div.slide img {
  width: 100%;
}

article.blog div.thumb {
  margin: 20px 10px;
}

article.blog div.thumb .slick-slide {
  margin: 0 10px;
  cursor: pointer;
}

article.blog div.thumb .slick-track {
  margin-left: initial;
}

article.blog article {
  padding: var(--gap);
  background: var(--content-back);
  background-color: var(--bc);
  margin-top: var(--gap);
}

article.blog article div.detail {
  display: block;
  gap: 30px;
  font-family: "Noto Color Emoji", sans-serif;
  font-weight: 400;
  font-style: normal;
}

article.blog article div.detail div.image {
  min-width: 360px;
}

article.blog article div.detail div.image a {
  display: flex;
}

article.blog article div.link {
  display: flex;
  justify-content: flex-end;
  margin-top: 30px;
}

article.blog article div.link a {
  display: flex;
  align-items: center;
  padding: 10px 20px;
  background: var(--content-button-back);
  color: var(--content-button-color);
  border-radius: 6px;
  transition: 0.3s;
}

article.blog article div.link a:hover {
  opacity: 0.8;
}

article.blog article div.link a::after {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  mask-image: url(../image/resource/next.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-image: url(../image/resource/next.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--content-button-color);
  position: relative;
  top: 1px;
}

div.pager {
  display: flex;
  justify-content: space-between;
  background: var(--content-back);
  padding: 30px;
}

div.pager > div {
  display: flex;
  align-items: flex-end;
  gap: 10px;
}

div.pager span {
  color: var(--content-button-back);
}

div.pager a {
  display: flex;
  align-items: center;
  padding: 8px 13px;
  background: var(--content-button-back);
  color: var(--content-button-color);
  border-radius: 6px;
  transition: 0.3s;
}

div.pager a.current {
  background: var(--content-button-color);
  color: var(--content-button-back);
  border: 1px solid var(--content-button-back);
}

div.pager a:hover {
  opacity: 0.8;
}

div.pager a.prev::before {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  mask-image: url(../image/resource/prev.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-image: url(../image/resource/prev.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--content-button-color);
  position: relative;
  top: 1px;
}

div.pager a.next::after {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  mask-image: url(../image/resource/next.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-image: url(../image/resource/next.svg);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--content-button-color);
  position: relative;
  top: 1px;
}

@media screen and (min-width: 641px) and (max-width: 960px) {
  img, video {
    min-width: initial !important;
    max-width: 100%;
  }
  .tb {
    display: block !important;
  }
  .tb + .pc {
    display: none !important;
  }
  div.sns {
    justify-content: space-between;
  }
  header {
    flex-direction: unset;
    gap: unset;
    height: unset;
    min-height: unset;
  }
  footer {
    flex-direction: unset;
  }
  footer > div {
    flex-direction: unset;
  }
  footer menu ul {
    gap: unset;
  }
  footer menu ul li {
    min-width: unset;
  }
  body > div {
    min-height: unset;
  }
}
@media screen and (max-width: 640px) {
  html {
    line-height: unset;
  }
  img, video {
    min-width: initial !important;
    max-width: 100%;
  }
  div.map {
    padding-top: unset;
  }
  .sp {
    display: block !important;
  }
  .sp + .tb, .sp + .pc, .tb + .pc {
    display: none !important;
  }
  .flex {
    flex-direction: unset;
    align-items: unset;
  }
  a.link {
    width: 100%;
  }
  div.sns {
    flex-direction: column;
    gap: 20px;
  }
  div.sns a {
    width: 100%;
    max-width: initial;
  }
  body > div.cover {
    padding: 50px 0;
  }
  body > div.cover .swiper-button-next, body > div.cover .swiper-button-prev {
    display: none;
  }
  header {
    gap: unset;
    padding: unset;
    height: unset;
    position: unset;
    z-index: unset;
  }
  header > div a {
    gap: unset;
  }
  header > div a img {
    height: unset;
  }
  header > div a span {
    font-size: unset;
  }
  header menu a.icon.menu {
    display: block;
    width: 30px;
    height: 30px;
    mask-image: url(../image/resource/menu.svg);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-image: url(../image/resource/menu.svg);
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    cursor: pointer;
  }
  header menu > ul {
    display: none;
  }
  body > menu {
    display: none;
    padding: 50px 20px 20px;
    min-width: 300px;
    max-width: 100%;
    min-height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
  }
  body > menu a.icon.menu {
    display: block;
    width: 30px;
    height: 30px;
    mask-image: url(../image/resource/menu_close.svg);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-image: url(../image/resource/menu_close.svg);
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 10px;
  }
  body > menu > ul {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  body > menu > ul li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    font-size: 13px;
    line-height: 20px;
    word-break: keep-all;
    position: relative;
  }
  body > menu > ul li ul {
    display: flex !important;
    flex-direction: column;
    gap: 20px;
    margin-top: 10px;
    padding-top: 20px;
    width: 100%;
  }
  body > menu > ul li ul li {
    padding: 0 0 0 10px;
    font-size: 12px;
  }
  footer {
    flex-direction: unset;
    padding: unset;
  }
  footer > div:first-child {
    align-items: unset;
    justify-content: unset;
  }
  footer address {
    margin-top: unset;
  }
  footer address > span {
    margin-bottom: unset;
  }
  footer menu {
    margin-bottom: 10px;
    padding: 20px 0;
  }
  footer menu ul {
    flex-direction: column;
    gap: 30px;
  }
  footer menu ul li {
    width: 100%;
  }
  footer menu ul li ul {
    width: 100%;
  }
  footer menu ul li ul li {
    padding: 0 0 0 10px;
  }
  body > div {
    min-height: unset;
  }
  main {
    padding-top: unset;
  }
  .part_slide img {
    height: unset;
    object-fit: unset;
    object-position: unset;
  }
  .part_image > div.left {
    flex-direction: unset;
    align-items: unset;
  }
  .part_image > div.right {
    flex-direction: unset;
    align-items: unset;
  }
  .part_image > div > div {
    width: unset;
  }
  .part_text {
    padding: unset;
  }
  .part_flexbox div.box.left {
    flex-direction: column;
    align-items: initial;
  }
  .part_flexbox div.box.right {
    flex-direction: column-reverse;
    align-items: initial;
  }
  .part_flexbox div.box.left > img {
    max-width: 100%;
  }
  .part_flexbox div.box.right > img {
    max-width: 100%;
  }
  .part_dllist dl {
    flex-direction: column;
  }
  .part_dllist dl dt {
    width: 100%;
  }
  .part_dllist dl dd {
    width: 100%;
  }
  .part_form dl {
    flex-direction: column;
  }
  .part_form dl dt {
    width: 100%;
  }
  .part_form dl dd {
    width: 100%;
    min-height: 50px;
  }
  html.confirm form {
    margin: 0 auto;
    max-width: calc(100% - 40px);
  }
  .part_submit {
    flex-wrap: wrap;
    gap: 20px;
  }
  div.complete {
    padding: 20px;
  }
  html.blog body > div {
    flex-direction: column-reverse;
  }
  html.blog aside {
    padding: var(--inline);
    min-width: 100%;
  }
  html.blog main {
    width: 100%;
  }
  aside > div:nth-of-type(n+2) {
    margin-top: 0;
  }
  aside > div.search {
    margin: 50px auto;
    width: calc(100% - 40px);
  }
  article.blog {
    margin: 0;
    padding: 0;
  }
  html.blog.article article.blog {
    padding: unset;
  }
  article.blog article div.detail {
    flex-direction: column;
  }
  div.pager {
    padding-top: 110px;
    position: relative;
  }
  div.pager > div {
    position: absolute;
    top: 30px;
  }
}
*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  min-height: 0vw;
  border: none;
  background-color: unset;
}

html {
  font-size: 62.5% !important;
  text-size-adjust: none;
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

body {
  counter-reset: number 0;
  min-height: 100vh;
  min-height: 100dvh;
  font-style: normal;
  margin: 0;
  color: unset;
  text-align: unset;
}

#contents {
  width: calc(var(--base) + var(--inline2));
}
#contents::after {
  display: none;
}

blockquote {
  font-style: italic;
}

@media (max-width: 834px) {
  .imgR, .imgL {
    float: none;
  }
}

iframe {
  width: 100%;
}

span.translate {
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  color: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

.clearfix:after {
  visibility: visible;
}

span, b, u {
  display: inline-block;
}

img {
  max-width: 100%;
  object-fit: contain;
  display: block;
}

.im {
  width: 100%;
}

body img.imgL {
  max-width: 100%;
}
body img.imgR {
  max-width: 100%;
}

li {
  list-style: none;
  outline: none;
}

small {
  font-size: 66%;
}

input, button, textarea, select {
  font: inherit;
  color: inherit;
}

input[type=button] {
  cursor: pointer;
  padding: 5px 10px;
}

a:not([class], .h a, .f a) {
  text-decoration-skip-ink: auto;
  color: var(--linkC);
}

div.blog_list {
  border: none;
}

div.sns_list div.sns_text, div.blog_list div.blog_text {
  width: 100%;
  padding: 0px;
  font-size: inherit;
}

div.sns_list ul li a, div.blog_list ul li a {
  display: block;
  font-size: inherit;
  line-height: inherit;
}

div.detail, div.detail2 {
  margin-top: unset;
}

h2.mail.title {
  display: none !important;
}

.form_wrap.confirm {
  margin-top: 40px;
}
.form_wrap.confirm dl:last-of-type dt, .form_wrap.confirm dl:last-of-type dd {
  border-bottom: 1px solid #ddd;
}

.map li {
  border-left: 5px solid #CCCCCC;
  list-style: none;
  margin: 0 0 15px;
  padding: 0 0 0 10px;
  text-align: left;
}

table {
  table-layout: auto;
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  table {
    table-layout: fixed;
  }
}
pre {
  margin: 0;
  padding: 0;
  white-space: pre-line;
}

u {
  text-decoration: line-through;
  text-decoration-skip-ink: none;
  text-decoration: underline;
}

em {
  font-style: normal;
}

section div.purchase div.cardform {
  display: block;
}

html {
  --base:1000px;
}
html:not(.home) {
  --block:40px;
}
html:is(.blog, .shop) {
  --h2FZ:clamp(20px, 3vw, 32px);
}

:root {
  --bodyFZ:var(--f18);
}

body {
  font-size: var(--bodyFZ);
  overflow-x: hidden;
  font-family: var(--bodyFF);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: var(--tx);
  font-style: normal;
}

:root {
  --hfw: 700;
  --hcolor: var(--inh);
  --hff:var(--Eng);
  --subFW: 700;
  --subFF: var(--Eng);
  --subC: var(--mc);
  --hlh:1.5;
  --hls:0.05em;
  --bigFZ:7vmax;
  --h1FZ:clamp(22px, 3vw, 32px);
  --h2FZ:clamp(20px, 2.5vw, 28px);
  --h3FZ:clamp(16px, 2vw, 24px);
  --PFZ: clamp(16px, 2vw, 24px);
  --h2EN:calc(var(--h2FZ)*1.5);
}
@media (max-width: 640px) {
  :root {
    --bigFZ:calc(var(--PFZ)*2 );
  }
}

.bigFZ {
  font-size: var(--bigFZ);
  line-height: 1;
  color: var(--mc);
}

:root {
  --footerMT:var(--block);
  --wrapperPY:var(--block);
  --Schild:var(--block);
  --Wchild:var(--block);
  --Hafter:var(--block3);
  --block:90px;
  --inline:60px;
  --inline2:calc(var(--inline) * 2);
  --gap:20px;
  --Ngap:calc(var(--gap)*-1);
  --gapHalf:calc(var(--gap)/2);
}
@media (max-width: 1440px) {
  :root {
    --inline:48px;
  }
}
@media (max-width: 834px) {
  :root {
    --block:60px;
  }
}
@media (max-width: 640px) {
  :root {
    --inline:30px;
  }
}

:root {
  --bds: solid;
  --bdw: 1px;
  --bdc: var(--mc);
  --line:var(--bdw) var(--bds) var(--bdc);
  --stW: 2px;
  --rad:4px;
  --rad2:calc(var(--rad)*2 );
  --Hrad:calc(var(--rad)/3 );
  --radhalf:calc(var(--rad)/2 );
  --sheetR:var(--rad);
  --sheetBG:var(--bc);
  --sheetP:3vmin;
  --boardR:var(--radhalf);
  --lineClamp:3;
  --tsW: 4px;
  --txshwh: 0 0 var(--tsW) var(--wh),0 0 var(--tsW) var(--wh);
  --txshbk: 0 0 var(--tsW) var(--bk);
  --dsW:5px;
  --dswh: drop-shadow(0 0px var(--dsW) var(--wh)) drop-shadow(0 0px var(--dsW) var(--wh));
  --dsbk: drop-shadow(0 0px var(--dsW) var(--bk));
  --dsmc: drop-shadow(0 0px var(--dsW) var(--mc));
  --dsbc: drop-shadow(0 0px var(--dsW) var(--bc)) drop-shadow(0 2px var(--dsW) var(--bc));
  --dstx: drop-shadow(0 0px var(--dsW) var(--tx));
  --dsgr: drop-shadow(0 0px var(--dsW) var(--gr));
  --dssc: drop-shadow(0 0px var(--dsW) var(--sc));
}

.txshwh {
  text-shadow: var(--txshwh);
}

.txshbk {
  text-shadow: var(--txshbk);
}

.txstwh {
  -webkit-text-stroke: var(--stW) var(--wh);
  paint-order: stroke;
  color: var(--tx);
}

.txstbk {
  -webkit-text-stroke: var(--stW) var(--bk);
  paint-order: stroke;
  color: var(--wh);
}

.txstmc {
  -webkit-text-stroke: var(--stW) var(--mc);
  paint-order: stroke;
  color: var(--wh);
}

.dswh {
  filter: var(--dswh);
}

.dsbk {
  filter: var(--dsbk);
}

.dsmc {
  filter: var(--dsmc);
}

.dsbc {
  filter: var(--dsbc);
}

.dstx {
  filter: var(--dstx);
}

.dsgr {
  filter: var(--dsgr);
}

.beforeF, .beforeFooter {
  margin-bottom: calc(var(--footerMT) * -1);
}

.f {
  margin-top: var(--footerMT);
}

.shopOnly:not(.page-shop *) {
  display: none;
}

main > *, form > *:where(:not(.page-shop *)) {
  max-width: 100%;
  margin-inline: auto;
  position: relative;
}
main > * + *, form > *:where(:not(.page-shop *)) + * {
  margin-top: var(--Schild);
}
main > * + *:is(nav), form > *:where(:not(.page-shop *)) + *:is(nav) {
  margin-top: 0;
}
main > * + *.box, form > *:where(:not(.page-shop *)) + *.box {
  margin-top: 0;
}
main > * > *, form > *:where(:not(.page-shop *)) > * {
  max-width: 100%;
}

.wrapper, .wrapper100, .wrapper100in {
  position: relative;
}
.wrapper > *, .wrapper100 > *, .wrapper100in > * {
  margin-inline: auto;
  max-width: 100%;
}
.wrapper > * + *, .wrapper100 > * + *, .wrapper100in > * + * {
  margin-top: var(--Wchild);
}
.wrapper > .box, .wrapper100 > .box, .wrapper100in > .box {
  margin: unset;
}
.wrapper + div, .wrapper100 + div, .wrapper100in + div {
  margin-top: var(--Schild);
}
.wrapper > .bg100, .wrapper100 > .bg100, .wrapper100in > .bg100 {
  max-width: unset !important;
}

.wrapper, .wrapper100, .wrapper100in {
  background: repeat center/cover;
}
.wrapper > * + *, .wrapper100 > * + *, .wrapper100in > * + * {
  margin-top: var(--Wchild);
}

.wrapper > *, .wrapper100 > *, .wrapper100in > * {
  position: relative;
}

[class*=wrapper] + [class*=wrapper] {
  margin-top: unset;
}

html {
  overflow-x: hidden;
  scroll-behavior: smooth;
}
html:has(.h.active, .policy-wrap.active) {
  overflow: hidden;
}

html, div, span, applet, object, iframe, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  font-weight: inherit;
  vertical-align: unset;
}

i, a:after {
  font-weight: 900;
  line-height: inherit;
}

.ph:before {
  font-weight: inherit;
}

b, strong {
  font-weight: 700;
}

u {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25em;
}

mark {
  --bdc:var(--sc);
  display: inline-block;
  color: inherit;
  background: linear-gradient(transparent 50%, var(--bdc) 50%);
}

:where(h1, h2, h3) .ph:before {
  content: "\f219";
  font-family: var(--icon);
  font-weight: 900;
}

:where(h1, h2, h3) > img {
  display: inline-block;
  vertical-align: middle;
  object-fit: contain;
}

p {
  font-size: var(--PFZ);
}

.h2EN {
  font-size: var(--h2EN);
  line-height: var(--h2FZ);
}

h5, h4 {
  font-size: 1.25em;
}

em, span {
  font-size: inherit;
  font-weight: inherit;
  display: inline-block;
}

section div.form_wrap dl {
  color: var(--tx);
}

:where(.box) {
  position: relative;
}
:where(.box) article > h3 {
  display: none;
}

.submit:is(#contents *) {
  margin-top: var(--block5);
}

div.clearfix > div:empty:not([class], [id]), div.clearfix > article > div:empty:not([class], [id]) {
  display: none !important;
}
div.clearfix > div a:not([class], [id]), div.clearfix > article > div a:not([class], [id]) {
  color: var(--linkC);
}

#contents .slick-list {
  width: 100%;
}

:target, [id] {
  scroll-margin-top: calc(var(--head) * 1.5);
}

#contents .form_wrap dl dt {
  flex-direction: row;
}
#contents .form_wrap:is(.confirm, .message, .error) {
  font-size: var(--f16);
  --bdc:#ccc;
}
#contents .form_wrap:is(.confirm, .message, .error) *:not(label) {
  color: #111 !important;
}
#contents .form_wrap:is(.confirm, .message, .error) {
  --tx: #000;
  margin-top: calc(var(--head) * 1.2) !important;
  margin-inline: auto !important;
}
#contents .form_wrap:is(.confirm, .message, .error) dl:last-of-type dt,
#contents .form_wrap:is(.confirm, .message, .error) dl:last-of-type dd {
  border-color: #ccc;
}
#contents .form_wrap:is(.entry) {
  --tx: #111;
}
#contents .form_wrap:is(.entry) dl:last-of-type dt,
#contents .form_wrap:is(.entry) dl:last-of-type dd {
  border-color: #ccc;
}

section div.form_wrap dl dt label {
  font-size: inherit;
}

p.annot {
  width: var(--base);
  margin-inline: auto !important;
  max-width: 100%;
}

.pankuzu,
.pan1 {
  position: relative;
  z-index: 1;
}
.pankuzu.__center ul,
.pan1.__center ul {
  justify-content: center;
}
.pankuzu.__right ul,
.pan1.__right ul {
  justify-content: flex-end;
}
.pankuzu.__left ul,
.pan1.__left ul {
  justify-content: flex-start;
}
.pankuzu:is(.title1 + *),
.pan1:is(.title1 + *) {
  margin-top: calc(var(--Schild) / 2);
}
.pankuzu ul li a:any-link::after,
.pan1 ul li a:any-link::after {
  content: var(--Home);
  font-family: var(--icon);
  margin-inline-start: 0.5em;
  display: var(--panAF);
}
.pankuzu ul,
.pan1 ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  max-width: var(--base);
  display: inline-flex;
}
.pankuzu ul li:not(:first-child),
.pan1 ul li:not(:first-child) {
  pointer-events: none;
}
.pankuzu ul li:not(:first-child) a,
.pan1 ul li:not(:first-child) a {
  text-decoration: none;
  color: currentColor;
  background: none;
}
.pankuzu ul a:any-link,
.pan1 ul a:any-link {
  text-decoration: none;
  color: var(--linkC);
}

.ph, .la, .fa-solid {
  font-family: var(--icon);
  color: inherit;
}

hr {
  border-bottom: var(--line);
  margin-block: 1em;
}

div#form_calendar div.head span:nth-of-type(5), div.calendar div.head span:nth-of-type(5),
div#form_calendar div.head span:nth-of-type(1), div.calendar div.head span:nth-of-type(1) {
  width: unset;
  font-size: 1.5em;
  transition: 0.4s;
}
div#form_calendar div.head span:nth-of-type(5):hover, div.calendar div.head span:nth-of-type(5):hover,
div#form_calendar div.head span:nth-of-type(1):hover, div.calendar div.head span:nth-of-type(1):hover {
  color: inherit;
  opacity: 0.7;
}

div#form_calendar table tbody tr td.open.level1 span {
  border-color: var(--gr);
}

div#form_calendar table tbody tr td label, div.calendar table tbody tr td label,
div#form_calendar table tbody tr td.close span {
  font-size: unset;
}

.dis {
  display: none;
}

html.page-blog .clearfix:after {
  display: none;
}

html.page-blog {
  /* ================================================================= 
  スマホ　CSS
  ================================================================= */
}
html.page-blog section.blog {
  margin-top: var(--block3);
}
html.page-blog #contents article ul.clearfix, html.page-blog #contents article style + * {
  margin-top: 0;
}
html.page-blog .h_btn:is(a) {
  text-decoration: none;
}
html.page-blog img {
  border: 0px;
}
html.page-blog video {
  max-width: 100%;
}
html.page-blog input,
html.page-blog textarea,
html.page-blog select,
html.page-blog button {
  margin: 0;
  padding: unset;
  font-family: sans-serif;
  font-size: 100%;
}
html.page-blog * html .clearfix {
  height: 1%;
}
html.page-blog .clearfix:after {
  clear: both;
  display: none;
  height: 0px;
  line-height: 0px;
  content: ".";
  visibility: hidden;
}
html.page-blog select {
  padding: 4px 2px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #ccc;
  font-size: 100%;
  max-width: 100%;
}
html.page-blog div.wrap {
  width: unset;
  max-width: unset;
  margin: 0 auto;
  display: flex;
}
html.page-blog #main_image {
  width: 100%;
  height: 300px;
  height: 700px;
  background-image: url(../images/home/mvtrimresize.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
}
html.page-blog footer {
  width: 100%;
  background: unset;
}
html.page-blog section div.wrap {
  display: flex;
}
html.page-blog section aside {
  padding: 0 10px;
  width: 25%;
  min-width: 200px;
  overflow: hidden;
}
html.page-blog section div#contents {
  width: 75%;
  overflow: hidden;
}
html.page-blog aside div#prof a {
  display: block;
  width: 100%;
  height: 30px;
  text-align: right;
  padding-right: 10px;
}
html.page-blog aside div#search {
  position: relative;
}
html.page-blog aside div#search input {
  width: 100%;
}
html.page-blog aside div#search button {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 5px;
  width: 28px;
  height: 28px;
  border: none;
  background: url(../img/search.png) no-repeat;
  background-size: 22px;
  background-position: center center;
  text-indent: -9999px;
}
html.page-blog aside h3,
html.page-blog aside nav > div {
  font-size: 15px;
  line-height: 50px;
}
html.page-blog aside h3:nth-of-type(2),
html.page-blog aside nav > div:nth-of-type(2) {
  margin-top: 20px;
}
html.page-blog aside nav {
  padding: 20px 0;
}
html.page-blog aside nav > a {
  display: block;
  text-align: right;
  padding-right: 10px;
  margin-top: 10px;
}
html.page-blog aside ul li {
  padding: 10px 0;
  border-bottom: 1px solid #ccc;
}
html.page-blog aside ul li:first-child {
  border-top: unset;
}
html.page-blog aside ul li a span:nth-of-type(2) {
  display: unset;
}
html.page-blog section div#contents div.pager {
  line-height: 30px;
  padding: 0 10px 50px 10px;
}
html.page-blog section div#contents div.pager a.next {
  float: right;
}
html.page-blog section div#contents div#blog_detail {
  padding: 10px 10px 0 10px;
}
html.page-blog section div#contents div#prof_detail img {
  padding: 0 10px;
  float: right;
}
html.page-blog section div#contents div#prof_detail div#prof_text {
  clear: right;
  padding: 10px;
}
html.page-blog section div#contents article div.date {
  line-height: 30px;
  color: var(--tx);
}
html.page-blog section div#contents article h1,
html.page-blog section div#contents article h1 span:nth-of-type(2),
html.page-blog section div#contents article h2 span:nth-of-type(2) {
  display: unset;
}
html.page-blog section div#contents article h1:empty,
html.page-blog section div#contents article h1 span:nth-of-type(2):empty,
html.page-blog section div#contents article h2 span:nth-of-type(2):empty {
  display: none;
}
html.page-blog section div#contents article ul {
  margin-bottom: 10px;
}
html.page-blog section div#contents article ul li {
  float: left;
  list-style: none;
}
html.page-blog section div#contents article ul li a {
  display: block;
  line-height: inherit;
  margin-left: 0.5em;
  margin-right: unset;
  border-radius: calc(var(--rad) / 2);
}
html.page-blog section div#contents article div.flex {
  display: flex;
  flex-direction: column;
}
html.page-blog section div#contents article div.flex_images {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2%;
  order: 1;
}
html.page-blog section div#contents article div.flex_images > * {
  flex: 1;
}
@media (max-width: 960px) {
  html.page-blog section div#contents article div.flex_images > * {
    flex: unset;
    width: 49%;
  }
}
html.page-blog section div#contents div.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
html.page-blog section div#contents div.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
html.page-blog section div#contents article div.sns {
  display: flex;
  justify-content: center;
}
html.page-blog section div#contents article div.sns a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px;
  width: 200px;
  height: 45px;
  border-radius: 3px;
  text-decoration: none;
}
html.page-blog section div#contents article div.sns a span {
  font-size: 16px;
}
html.page-blog section div#contents article div.sns a i {
  display: block;
  width: 40px;
  height: 40px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
html.page-blog section div#contents article div.sns a.tw {
  background: #1da1f2;
}
html.page-blog section div#contents article div.sns a.fb {
  background: #2f6db6;
}
html.page-blog section div#contents article div.sns a.line {
  background: #00b900;
}
html.page-blog section div#contents article div.sns a.tw i {
  background-image: url(../img/TW.png);
}
html.page-blog section div#contents article div.sns a.fb i {
  background-image: url(../img/FB.png);
  background-size: 28px;
  background-position: center 3px;
}
html.page-blog section div#contents article div.sns a.line i {
  background-image: url(../img/LINE.png);
}
html.page-blog section div#contents > dl {
  display: block;
  margin: 0 10px 20px 10px;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
}
html.page-blog section div#contents > dl dt {
  font-size: 18px;
  line-height: 30px;
  margin-bottom: 10px;
}
html.page-blog section div#contents > dl dt > div > a {
  text-underline-offset: 0.25em;
  color: var(--tx);
  text-decoration-color: var(--mc);
  font-size: var(--h3FZ);
}
html.page-blog section div#contents > dl dt span.translate {
  display: block;
  font-weight: var(--hfw);
  margin-top: 8px;
}
html.page-blog section div#contents > dl dd {
  margin-top: var(--f16);
}
html.page-blog section div#contents > dl ul li {
  float: left;
  list-style: none;
  margin-bottom: 0.5em;
}
html.page-blog section div#contents > dl ul li a {
  display: block;
  margin-right: 0.5em;
  padding: 0.25em 0.5em;
  background-color: var(--mc);
  color: #fff;
  text-decoration: none;
  border-radius: var(--radhalf);
}
html.page-blog section div#contents > dl dt span:nth-of-type(2) {
  display: block;
  font-size: 12px;
}
html.page-blog div#form_calendar {
  width: 100%;
  max-width: 100%;
  margin: 10px auto 10px auto;
  min-width: unset;
}
html.page-blog div#form_calendar td.blog {
  background-color: var(--mc30);
}
html.page-blog div#form_calendar div.head {
  position: relative;
  width: 100%;
  height: 30px;
  text-align: center;
}
html.page-blog div#form_calendar div.head span {
  position: absolute;
  display: block;
  line-height: 30px;
  font-size: 12px;
  font-weight: bold;
}
html.page-blog div#form_calendar div.head span:nth-of-type(1) {
  top: 0;
  left: 0;
  width: 20px;
  font-size: 20px;
}
html.page-blog div#form_calendar div.head span:nth-of-type(2) {
  top: 0;
  left: 25px;
}
html.page-blog div#form_calendar div.head span:nth-of-type(3) {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-size: 14px;
}
html.page-blog div#form_calendar div.head span:nth-of-type(4) {
  top: 0;
  right: 25px;
}
html.page-blog div#form_calendar div.head span:nth-of-type(5) {
  top: 0;
  right: 0;
  width: 20px;
  font-size: 20px;
}
html.page-blog div#form_calendar div.head span:nth-of-type(1):hover,
html.page-blog div#form_calendar div.head span:nth-of-type(5):hover {
  color: #6f94f5;
  cursor: pointer;
}
html.page-blog div#form_calendar table {
  table-layout: fixed;
  border-collapse: collapse;
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px;
  width: 100%;
}
html.page-blog div#form_calendar table thead tr th {
  border: none;
  text-align: center;
  font-size: 11px;
  font-weight: normal;
}
html.page-blog div#form_calendar table tbody tr {
  height: 30px;
}
html.page-blog div#form_calendar table tbody tr td {
  border: none;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  text-align: center;
  position: relative;
}
html.page-blog div#form_calendar table tbody tr td:first-of-type {
  border-left: 1px solid #ccc;
  background: #f1f1f1;
}
html.page-blog div#form_calendar table tbody tr td.other {
  background: #f9f9f9;
}
html.page-blog div#form_calendar table tbody tr td label {
  font-size: 12px;
}
html.page-blog div#form_calendar table tbody tr td:last-of-type label {
  color: #6f94f5;
}
html.page-blog div#form_calendar table tbody tr td:first-of-type label,
html.page-blog div#form_calendar table tbody tr td.holiday label {
  color: #f17878;
}
html.page-blog div#form_calendar table tbody tr td.other label {
  font-size: 12px;
  color: #ccc;
}
html.page-blog div#form_calendar table tbody tr td.other:last-of-type label {
  color: #92adf3;
}
html.page-blog div#form_calendar table tbody tr td.other:first-of-type label,
html.page-blog div#form_calendar table tbody tr td.other.holiday label {
  color: #f5acac;
}
html.page-blog div#form_calendar table tbody tr td:hover {
  background: rgba(0, 200, 255, 0.82) !important;
  cursor: pointer;
}
html.page-blog div#form_calendar table tbody tr td:hover label {
  cursor: pointer;
}
html.page-blog div#form_calendar table tbody tr td.open {
  background: var(--mc20);
}
html.page-blog div#form_calendar table tbody tr td.close {
  background: var(--ac);
}
html.page-blog div#form_calendar dl.open,
html.page-blog div#form_calendar dl.close {
  display: flex;
  font-size: 12px;
}
html.page-blog div#form_calendar dl.open label,
html.page-blog div#form_calendar dl.close label {
  display: inline-block;
  margin-right: 10px;
  width: 30px;
  height: 20px;
  font-size: 12px;
}
html.page-blog div#form_calendar dl.open label {
  background: var(--mc20);
}
html.page-blog div#form_calendar dl.close label {
  background: var(--ac);
}
html.page-blog div#builingual {
  background: #f1f1f1;
  padding: 5px 0;
}
html.page-blog div#builingual div.progress {
  display: none;
  float: left;
  line-height: 32px;
  color: #2e7200;
  font-weight: bold;
}
html.page-blog div#builingual div.progress img {
  float: left;
  margin-top: 4px;
  padding: 0 10px 0 20px;
}
html.page-blog div#builingual div.language {
  float: right;
  color: #999;
  font-weight: bold;
}
html.page-blog div#builingual div.language select {
  margin: 0 20px 0 10px;
}
html.page-blog div.translate {
  margin: 30px 0 30px 0;
}
html.page-blog section div#contents div#blog_detail + div.translate {
  margin: 10px 10px 30px 10px;
}
html.page-blog section div#contents article > p + div.translate {
  margin: 5px 0 30px 0;
}
html.page-blog section div#contents img {
  height: auto !important;
}
html.page-blog section div#contents article h1 span {
  display: block;
  font-size: var(--f40);
  line-height: 1.6;
  margin-bottom: 20px;
  padding-bottom: 12px;
  position: relative;
  position: relative;
  border-bottom: var(--line);
  padding: 0.25em;
  margin-bottom: var(--f16);
  line-height: 1.3;
}
html.page-blog section div#contents article h1 span::before, html.page-blog section div#contents article h1 span::after {
  content: "";
  height: 8px;
  position: absolute;
  left: 0;
  bottom: -8px;
  border-radius: 2px;
}
html.page-blog section div#contents article h1 span::before {
  width: 66%;
  background-color: var(--mctr);
  display: none;
}
html.page-blog section div#contents article h1 span::after {
  width: 20%;
  background-color: var(--mc);
  display: none;
}
html.page-blog section div.form_wrap dl {
  display: flex;
}
html.page-blog section div.form_wrap dl dt {
  border: 1px solid #ccc;
  border-right: none;
  border-bottom: none;
  background-color: #f5f5f5;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  box-sizing: border-box;
}
html.page-blog section div.form_wrap dl dd {
  border: 1px solid #ccc;
  border-bottom: none;
  box-sizing: border-box;
}
html.page-blog section div.form_wrap dl:last-of-type dt {
  border-bottom: 1px solid #ddd;
}
html.page-blog section div.form_wrap dl:last-of-type dd {
  border-bottom: 1px solid #ddd;
}
html.page-blog section div.form_wrap dl dt label,
html.page-blog section div.form_wrap p.annot {
  color: #ff0000;
}
html.page-blog section div.form_wrap dl dd > div {
  display: flex;
}
html.page-blog section div.form_wrap dl dd input[type=text],
html.page-blog section div.form_wrap dl dd input[type=password] {
  width: 300px;
  max-width: 100%;
}
html.page-blog section div.form_wrap dl dd div input[type=text],
html.page-blog section form div.form_wrap dl dd div select {
  margin-bottom: 8px;
}
html.page-blog section div.form_wrap dl dd div:last-of-type input[type=text],
html.page-blog section div.form_wrap dl dd div:last-of-type select {
  margin-bottom: 0;
}
html.page-blog section div.form_wrap dl dd span {
  margin-right: 8px;
  line-height: 32px;
}
html.page-blog section div.form_wrap dl dd input[type=text] + span,
html.page-blog section div.form_wrap dl dd select + span {
  margin-left: 8px;
}
html.page-blog section div.form_wrap dl dd p {
  margin-top: 4px;
}
html.page-blog section div.form_wrap dl dd.addr input,
html.page-blog section div.form_wrap dl dd.ship_addr input {
  width: 100%;
}
html.page-blog section div.form_wrap dl dd.addr select,
html.page-blog section div.form_wrap dl dd.ship_addr select {
  width: 122px !important;
}
html.page-blog section div.form_wrap dl dd.addr div:nth-of-type(1) input,
html.page-blog section div.form_wrap dl dd.ship_addr div:nth-of-type(1) input {
  width: 100px !important;
  text-align: center;
}
html.page-blog section div.form_wrap dl dd.date div,
html.page-blog section div.form_wrap dl dd.birthday div,
html.page-blog section div.form_wrap dl dd.is_entry div {
  float: left;
  margin-right: 8px;
}
html.page-blog section div.form_wrap dl dd.is_entry div {
  display: flex;
  height: 32px;
  align-items: center;
}
html.page-blog section div.form_wrap dl dd.is_entry label {
  width: 80px;
}
html.page-blog section div.form_wrap dl dd.is_entry input[type=text] {
  width: 160px !important;
}
html.page-blog section div.form_wrap dl dd.date input,
html.page-blog section div.form_wrap dl dd.birthday input {
  width: 80px !important;
  text-align: center;
}
html.page-blog section div.form_wrap dl dd.date select,
html.page-blog section div.form_wrap dl dd.birthday select {
  width: 60px !important;
}
html.page-blog section div.form_wrap dl dd.date p,
html.page-blog section div.form_wrap dl dd.birthday p,
html.page-blog section div.form_wrap dl dd.is_entry p {
  padding-top: 4px;
  clear: left;
}
html.page-blog section div.form_wrap dl dd.date div:last-of-type input[type=text],
html.page-blog section div.form_wrap dl dd.birthday div:last-of-type input[type=text],
html.page-blog section div.form_wrap dl dd.date div:last-of-type select,
html.page-blog section div.form_wrap dl dd.birthday div:last-of-type select {
  margin-bottom: 8px;
}
html.page-blog section div.form_wrap dl dd.number input {
  width: 60px !important;
  text-align: right;
}
html.page-blog section div.form_wrap dl dd.radio label,
html.page-blog section div.form_wrap dl dd.checkbox label {
  display: inline-block;
  min-width: 80px;
  margin-right: 8px;
}
html.page-blog section div.form_wrap.confirm dl dd span {
  color: #ff0000;
}
html.page-blog section div.form_wrap.message {
  background: #fff;
  border: 1px solid #ddd;
  padding: 20px;
  margin: 50px 20px 20px 20px;
  border-radius: 2px;
}
html.page-blog section div.form_wrap.message ul li {
  font-size: 20px;
  margin-bottom: 10px;
}
html.page-blog section div.form_wrap.message p span {
  width: 100%;
  display: block;
  margin-top: 15px;
  font-size: 12px;
}
html.page-blog section div.form_wrap.error {
  background: #ff0000;
  margin-bottom: 10px;
}
html.page-blog section div.form_wrap.error p {
  padding: 5px;
}
@media only screen and (max-width: 960px) {
  html.page-blog section div.wrap {
    flex-direction: column-reverse;
    padding-inline: unset;
  }
  html.page-blog section aside {
    width: 98%;
  }
  html.page-blog section div#contents {
    width: 98%;
  }
  html.page-blog section div#contents article div.sns a {
    background: initial !important;
    width: 40px;
    width: 40px;
  }
  html.page-blog section div#contents article div.sns a span {
    display: none;
  }
  html.page-blog section div#contents article div.sns a i {
    background-size: 40px 40px !important;
    background-position: center center !important;
  }
  html.page-blog .tbl_block th {
    text-align: center;
  }
  html.page-blog .tbl_block th,
  html.page-blog .tbl_block td {
    display: block;
  }
  html.page-blog .tbl_scroll {
    overflow-x: auto;
    white-space: nowrap;
  }
}
html.page-blog .imgL {
  float: unset;
  margin-right: var(--gap);
}
html.page-blog .imgR {
  float: unset;
  margin-left: var(--gap);
}
html.page-blog .imgC {
  margin: 0px auto 0px auto;
  display: block;
}
@media (max-width: 834px) {
  html.page-blog #contents {
    margin-bottom: 12%;
  }
}
html.page-blog aside nav > div {
  font-size: 15px;
  line-height: 50px;
  border-bottom: 1px solid var(--tx);
}
html.page-blog #contents .card.card3 {
  gap: 20px 2%;
  flex-wrap: wrap;
  margin-bottom: 6%;
}
html.page-blog #contents .card.card3 ul {
  display: contents;
}
html.page-blog #contents .card.card3 li {
  flex: unset;
  width: 32%;
  margin-top: 0;
}
@media (max-width: 960px) {
  html.page-blog #contents .card.card3 li {
    width: 49%;
  }
}
@media (max-width: 640px) {
  html.page-blog #contents .card.card3 li {
    width: 100%;
  }
}
html.page-blog #contents .card.card3 a {
  padding: 0 !important;
  margin-right: 0 !important;
}
html.page-blog #contents .card.card3 img {
  width: 100% !important;
  margin: 0;
}
html.page-blog #contents .title3 article {
  padding-left: 0;
}

html:not(.page-blog) section .h_title {
  display: none;
}

html.page-blog {
  max-width: 100%;
  padding-inline: 0;
}
@media (max-width: 834px) {
  html.page-blog {
    padding-inline: 0;
  }
}

div.blog_list h3,
div.blog_list div.blog_text {
  font-size: unset;
}

section aside {
  width: 24%;
  padding: 0 10px;
}
section aside * {
  text-align: left;
}
section aside *:is(nav > div) {
  text-align: center;
}
@media (max-width: 834px) {
  section aside {
    padding: 0;
  }
}

section div#contents {
  width: 74%;
}

section.blog {
  width: var(--base);
  max-width: 100%;
  margin-inline: auto;
  margin-top: 2%;
}

html.page-blog #contents article h2 {
  position: relative;
  z-index: 1;
  --wid: 112px;
}
html.page-blog #contents article h2:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.2);
  width: var(--wid);
  height: 100%;
  z-index: -1;
  clip-path: polygon(100% 100%, 0% 100%, 0% 0%);
  display: none;
}
@media (max-width: 834px) {
  html.page-blog #contents article h2 {
    --inline: 20px;
    --wid: 60px;
  }
}

section div#contents > dl {
  overflow: auto;
}

aside ul li a {
  background-color: rgba(255, 255, 255, 0);
  transition: 0.4s;
  border-radius: 0;
}

aside ul li a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

input[type=text],
input[type=password],
textarea,
select {
  border-radius: 0;
}

aside nav > a {
  background-color: rgba(255, 255, 255, 0);
  border-radius: 0;
}
aside nav > a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.blog #calendar #form_calendar {
  box-shadow: none;
  background: transparent;
}

td.other {
  background: transparent !important;
}

section div#contents article ul li a {
  display: block;
  padding: 5px 10px;
  border-radius: 4px;
  color: unset;
  margin: 0 10px 10px 0;
}

section div#contents article ul li a {
  border-radius: 0;
  border: 1px solid #fff;
  background-color: var(--mc);
  text-decoration: none;
}

@media (max-width: 834px) {
  section.blog div#contents *,
  section.blog aside * {
    float: none !important;
  }
}
section.blog div#contents article,
section.blog aside article {
  margin-bottom: 0;
}
@media (max-width: 834px) {
  section.blog div#contents article img,
  section.blog div#contents section div#contents article video,
  section.blog aside article img,
  section.blog aside section div#contents article video {
    margin: 10px 0 10px 0 !important;
  }
}
section.blog div#contents .category a,
section.blog div#contents ul a,
section.blog aside .category a,
section.blog aside ul a {
  border: unset;
}
section.blog div#contents div.date,
section.blog aside div.date {
  border-radius: 0;
  border: none;
  background-color: unset;
  padding: 0;
}
section.blog div#contents #calendar #form_calendar td:hover,
section.blog aside #calendar #form_calendar td:hover {
  background: unset !important;
}
section.blog div#contents #calendar #form_calendar td.close,
section.blog aside #calendar #form_calendar td.close {
  background: #aaa;
}
section.blog div#contents #calendar #form_calendar td.blog label,
section.blog aside #calendar #form_calendar td.blog label {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  aspect-ratio: 1/1;
  line-height: 22px;
  background: #fff;
  border-radius: 999px;
  bottom: 0;
  left: 0;
}
section.blog div#contents #calendar #form_calendar dl.open,
section.blog div#contents #calendar #form_calendar dl.close,
section.blog aside #calendar #form_calendar dl.open,
section.blog aside #calendar #form_calendar dl.close {
  display: flex;
  padding-left: 5px;
}
section.blog div#contents #calendar #form_calendar dl.open label,
section.blog div#contents #calendar #form_calendar dl.close label,
section.blog aside #calendar #form_calendar dl.open label,
section.blog aside #calendar #form_calendar dl.close label {
  display: block;
  width: 40px;
  height: 20px;
  margin-bottom: 5px;
}
section.blog div#contents #calendar #form_calendar dl.close label,
section.blog aside #calendar #form_calendar dl.close label {
  background-color: #aaa;
}

@media (max-width: 640px) {
  section.blog div#contents article {
    margin-bottom: 20px;
  }
}
section.blog div#contents article ul {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
section.blog div#contents article ul li {
  float: none;
  list-style: none;
  margin-top: unset;
  display: inline-block;
}
section.blog div#contents article h2 span {
  display: block;
  font-size: var(--f32);
  line-height: 1.6;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 12px;
  position: relative;
  font-weight: 600;
  padding: 6px 0 10px;
  position: relative;
  padding: 0.25em;
  border-bottom: var(--line);
  margin-bottom: var(--f16);
  line-height: 1.3;
}
section.blog div#contents .tate article {
  display: flex;
  flex-direction: column;
}
section.blog div#contents .tate h3 {
  order: -1;
  display: inline-block;
}
section.blog div#contents .tate div {
  margin-bottom: 20px;
}
section.blog div#contents .imglast article {
  display: flex;
  flex-direction: column;
}
section.blog div#contents .imglast .imgW {
  order: 1;
}
section.blog div#contents .imglast div {
  margin-bottom: 20px;
}
section.blog div#contents .yoko {
  display: flex;
  flex-wrap: nowrap;
}
@media (max-width: 640px) {
  section.blog div#contents .yoko {
    flex-wrap: wrap;
  }
}
section.blog div#contents .yoko article {
  width: 100%;
}
section.blog div#contents .yoko div {
  margin-bottom: 20px;
}

aside .pages a {
  text-align: left;
}

section div#contents > article > * + * {
  margin-top: var(--block25);
}

section div#contents > article + article {
  margin-top: var(--block5);
  padding-top: var(--block5);
  border-top: 1px dashed var(--tx50);
}
section div#contents > article ul li a {
  color: var(--wh);
}
section div#contents > article h2 span {
  line-height: 2;
}
section div#contents > article time {
  display: inline-block;
  padding: 0.25em 1em;
  border-radius: var(--radhalf);
  color: #fff;
  background-color: var(--ac);
}

html.page-blog.bk {
  background-color: var(--bk);
}
html.page-blog.bk section div.wrap {
  background-color: var(--bk);
}
@media (max-width: 834px) {
  html.page-blog.bk .fl37 > * {
    padding-left: 0px;
  }
}

div.bxi_index ol li:hover {
  color: var(--mc);
}

section div#contents div.bxi_index {
  margin: unset;
  border: 1px solid var(--tx50);
  padding: var(--inline);
}

div.bxi_index ol li {
  padding-inline: unset;
}

.blog article h1, .blog article h2, .blog article h3 {
  scroll-margin-top: var(--head);
}

html.page-blog section div#contents article ul li a,
html.page-blog section div#contents > dl ul li a {
  font-size: 80%;
}

section div#contents > article time {
  background-color: var(--mc);
  border-radius: var(--rad);
}

div.bxi_index ol li {
  border-bottom: var(--line);
}

div.bxi_index label {
  display: none;
}

html.page-blog section div#contents > dl dt span.translate {
  font-size: var(--f24);
}

div#form_calendar div.head span, div.calendar div.head span {
  color: unset;
}

.blog :is(.it01, .ti01) img {
  width: 100% !important;
}

aside ul li {
  border-bottom: var(--line);
  border-bottom-width: 2px;
}

:root {
  --trt:translate 1.2s,opacity 1.2s ,clip-path 1.2s ,filter 1.2s ,scale 1.8s ;
  --jsBlur:0px;
  --transX: 6vmin;
  --transY: 6vmin;
}

[class*=js-].show:nth-child(1), [class*=js-ch] > *.show:nth-child(1), [class*=js-art] article > *.show:nth-child(1) {
  transition-delay: 0s;
}
[class*=js-].show:nth-child(1):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(1):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(1):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(2), [class*=js-ch] > *.show:nth-child(2), [class*=js-art] article > *.show:nth-child(2) {
  transition-delay: 0.1s;
}
[class*=js-].show:nth-child(2):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(2):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(2):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(3), [class*=js-ch] > *.show:nth-child(3), [class*=js-art] article > *.show:nth-child(3) {
  transition-delay: 0.2s;
}
[class*=js-].show:nth-child(3):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(3):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(3):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(4), [class*=js-ch] > *.show:nth-child(4), [class*=js-art] article > *.show:nth-child(4) {
  transition-delay: 0.3s;
}
[class*=js-].show:nth-child(4):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(4):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(4):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(5), [class*=js-ch] > *.show:nth-child(5), [class*=js-art] article > *.show:nth-child(5) {
  transition-delay: 0.4s;
}
[class*=js-].show:nth-child(5):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(5):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(5):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(6), [class*=js-ch] > *.show:nth-child(6), [class*=js-art] article > *.show:nth-child(6) {
  transition-delay: 0.5s;
}
[class*=js-].show:nth-child(6):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(6):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(6):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(7), [class*=js-ch] > *.show:nth-child(7), [class*=js-art] article > *.show:nth-child(7) {
  transition-delay: 0.6s;
}
[class*=js-].show:nth-child(7):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(7):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(7):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(8), [class*=js-ch] > *.show:nth-child(8), [class*=js-art] article > *.show:nth-child(8) {
  transition-delay: 0.7s;
}
[class*=js-].show:nth-child(8):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(8):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(8):is(section > *, form > *) {
  transition-delay: 0s !important;
}
[class*=js-].show:nth-child(9), [class*=js-ch] > *.show:nth-child(9), [class*=js-art] article > *.show:nth-child(9) {
  transition-delay: 0.8s;
}
[class*=js-].show:nth-child(9):is(section > *, form > *), [class*=js-ch] > *.show:nth-child(9):is(section > *, form > *), [class*=js-art] article > *.show:nth-child(9):is(section > *, form > *) {
  transition-delay: 0s !important;
}

.H-split :is(h1, h2, h3) > *:nth-child(1) > *,
.div-split div > * > * {
  opacity: 0;
  transition: var(--trt);
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *,
.div-split div > *.show > * {
  opacity: 1;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(1),
.div-split div > *.show > *:nth-child(1) {
  transition-delay: 0.06s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(2),
.div-split div > *.show > *:nth-child(2) {
  transition-delay: 0.12s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(3),
.div-split div > *.show > *:nth-child(3) {
  transition-delay: 0.18s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(4),
.div-split div > *.show > *:nth-child(4) {
  transition-delay: 0.24s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(5),
.div-split div > *.show > *:nth-child(5) {
  transition-delay: 0.3s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(6),
.div-split div > *.show > *:nth-child(6) {
  transition-delay: 0.36s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(7),
.div-split div > *.show > *:nth-child(7) {
  transition-delay: 0.42s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(8),
.div-split div > *.show > *:nth-child(8) {
  transition-delay: 0.48s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(9),
.div-split div > *.show > *:nth-child(9) {
  transition-delay: 0.54s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(10),
.div-split div > *.show > *:nth-child(10) {
  transition-delay: 0.6s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(11),
.div-split div > *.show > *:nth-child(11) {
  transition-delay: 0.66s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(12),
.div-split div > *.show > *:nth-child(12) {
  transition-delay: 0.72s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(13),
.div-split div > *.show > *:nth-child(13) {
  transition-delay: 0.78s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(14),
.div-split div > *.show > *:nth-child(14) {
  transition-delay: 0.84s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(15),
.div-split div > *.show > *:nth-child(15) {
  transition-delay: 0.9s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(16),
.div-split div > *.show > *:nth-child(16) {
  transition-delay: 0.96s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(17),
.div-split div > *.show > *:nth-child(17) {
  transition-delay: 1.02s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(18),
.div-split div > *.show > *:nth-child(18) {
  transition-delay: 1.08s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(19),
.div-split div > *.show > *:nth-child(19) {
  transition-delay: 1.14s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(20),
.div-split div > *.show > *:nth-child(20) {
  transition-delay: 1.2s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(21),
.div-split div > *.show > *:nth-child(21) {
  transition-delay: 1.26s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(22),
.div-split div > *.show > *:nth-child(22) {
  transition-delay: 1.32s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(23),
.div-split div > *.show > *:nth-child(23) {
  transition-delay: 1.38s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(24),
.div-split div > *.show > *:nth-child(24) {
  transition-delay: 1.44s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(25),
.div-split div > *.show > *:nth-child(25) {
  transition-delay: 1.5s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(26),
.div-split div > *.show > *:nth-child(26) {
  transition-delay: 1.56s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(27),
.div-split div > *.show > *:nth-child(27) {
  transition-delay: 1.62s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(28),
.div-split div > *.show > *:nth-child(28) {
  transition-delay: 1.68s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(29),
.div-split div > *.show > *:nth-child(29) {
  transition-delay: 1.74s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(30),
.div-split div > *.show > *:nth-child(30) {
  transition-delay: 1.8s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(31),
.div-split div > *.show > *:nth-child(31) {
  transition-delay: 1.86s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(32),
.div-split div > *.show > *:nth-child(32) {
  transition-delay: 1.92s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(33),
.div-split div > *.show > *:nth-child(33) {
  transition-delay: 1.98s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(34),
.div-split div > *.show > *:nth-child(34) {
  transition-delay: 2.04s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(35),
.div-split div > *.show > *:nth-child(35) {
  transition-delay: 2.1s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(36),
.div-split div > *.show > *:nth-child(36) {
  transition-delay: 2.16s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(37),
.div-split div > *.show > *:nth-child(37) {
  transition-delay: 2.22s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(38),
.div-split div > *.show > *:nth-child(38) {
  transition-delay: 2.28s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(39),
.div-split div > *.show > *:nth-child(39) {
  transition-delay: 2.34s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(40),
.div-split div > *.show > *:nth-child(40) {
  transition-delay: 2.4s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(41),
.div-split div > *.show > *:nth-child(41) {
  transition-delay: 2.46s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(42),
.div-split div > *.show > *:nth-child(42) {
  transition-delay: 2.52s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(43),
.div-split div > *.show > *:nth-child(43) {
  transition-delay: 2.58s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(44),
.div-split div > *.show > *:nth-child(44) {
  transition-delay: 2.64s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(45),
.div-split div > *.show > *:nth-child(45) {
  transition-delay: 2.7s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(46),
.div-split div > *.show > *:nth-child(46) {
  transition-delay: 2.76s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(47),
.div-split div > *.show > *:nth-child(47) {
  transition-delay: 2.82s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(48),
.div-split div > *.show > *:nth-child(48) {
  transition-delay: 2.88s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(49),
.div-split div > *.show > *:nth-child(49) {
  transition-delay: 2.94s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(50),
.div-split div > *.show > *:nth-child(50) {
  transition-delay: 3s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(51),
.div-split div > *.show > *:nth-child(51) {
  transition-delay: 3.06s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(52),
.div-split div > *.show > *:nth-child(52) {
  transition-delay: 3.12s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(53),
.div-split div > *.show > *:nth-child(53) {
  transition-delay: 3.18s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(54),
.div-split div > *.show > *:nth-child(54) {
  transition-delay: 3.24s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(55),
.div-split div > *.show > *:nth-child(55) {
  transition-delay: 3.3s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(56),
.div-split div > *.show > *:nth-child(56) {
  transition-delay: 3.36s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(57),
.div-split div > *.show > *:nth-child(57) {
  transition-delay: 3.42s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(58),
.div-split div > *.show > *:nth-child(58) {
  transition-delay: 3.48s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(59),
.div-split div > *.show > *:nth-child(59) {
  transition-delay: 3.54s;
}
.H-split :is(h1, h2, h3) > *:nth-child(1).show > *:nth-child(60),
.div-split div > *.show > *:nth-child(60) {
  transition-delay: 3.6s;
}

.it01.show:nth-child(1), .it01 > *.show:nth-child(1), .ti01.show:nth-child(1), .ti01 > *.show:nth-child(1) {
  transition-delay: 0s;
}
.it01.show:nth-child(1):is(section > *), .it01 > *.show:nth-child(1):is(section > *), .ti01.show:nth-child(1):is(section > *), .ti01 > *.show:nth-child(1):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(2), .it01 > *.show:nth-child(2), .ti01.show:nth-child(2), .ti01 > *.show:nth-child(2) {
  transition-delay: 0.2s;
}
.it01.show:nth-child(2):is(section > *), .it01 > *.show:nth-child(2):is(section > *), .ti01.show:nth-child(2):is(section > *), .ti01 > *.show:nth-child(2):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(3), .it01 > *.show:nth-child(3), .ti01.show:nth-child(3), .ti01 > *.show:nth-child(3) {
  transition-delay: 0.4s;
}
.it01.show:nth-child(3):is(section > *), .it01 > *.show:nth-child(3):is(section > *), .ti01.show:nth-child(3):is(section > *), .ti01 > *.show:nth-child(3):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(4), .it01 > *.show:nth-child(4), .ti01.show:nth-child(4), .ti01 > *.show:nth-child(4) {
  transition-delay: 0.6s;
}
.it01.show:nth-child(4):is(section > *), .it01 > *.show:nth-child(4):is(section > *), .ti01.show:nth-child(4):is(section > *), .ti01 > *.show:nth-child(4):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(5), .it01 > *.show:nth-child(5), .ti01.show:nth-child(5), .ti01 > *.show:nth-child(5) {
  transition-delay: 0.8s;
}
.it01.show:nth-child(5):is(section > *), .it01 > *.show:nth-child(5):is(section > *), .ti01.show:nth-child(5):is(section > *), .ti01 > *.show:nth-child(5):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(6), .it01 > *.show:nth-child(6), .ti01.show:nth-child(6), .ti01 > *.show:nth-child(6) {
  transition-delay: 1s;
}
.it01.show:nth-child(6):is(section > *), .it01 > *.show:nth-child(6):is(section > *), .ti01.show:nth-child(6):is(section > *), .ti01 > *.show:nth-child(6):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(7), .it01 > *.show:nth-child(7), .ti01.show:nth-child(7), .ti01 > *.show:nth-child(7) {
  transition-delay: 1.2s;
}
.it01.show:nth-child(7):is(section > *), .it01 > *.show:nth-child(7):is(section > *), .ti01.show:nth-child(7):is(section > *), .ti01 > *.show:nth-child(7):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(8), .it01 > *.show:nth-child(8), .ti01.show:nth-child(8), .ti01 > *.show:nth-child(8) {
  transition-delay: 1.4s;
}
.it01.show:nth-child(8):is(section > *), .it01 > *.show:nth-child(8):is(section > *), .ti01.show:nth-child(8):is(section > *), .ti01 > *.show:nth-child(8):is(section > *) {
  transition-delay: 0s;
}
.it01.show:nth-child(9), .it01 > *.show:nth-child(9), .ti01.show:nth-child(9), .ti01 > *.show:nth-child(9) {
  transition-delay: 1.6s;
}
.it01.show:nth-child(9):is(section > *), .it01 > *.show:nth-child(9):is(section > *), .ti01.show:nth-child(9):is(section > *), .ti01 > *.show:nth-child(9):is(section > *) {
  transition-delay: 0s;
}

.js-bgFix {
  z-index: 1;
  display: flex;
  flex-direction: column;
  padding-inline: var(--inline);
  transition: 1s;
}
.js-bgFix > * {
  margin-inline: auto;
  position: relative;
  max-width: unset;
}
.js-bgFix:has(+ .js-bgFix.show) {
  opacity: 0;
}
.js-bgFix .bgFix {
  position: fixed;
  opacity: 0;
  pointer-events: none;
}
.js-bgFix.show .bgFix {
  opacity: 1;
}
.js-bgFix .bgFix {
  margin-top: unset;
  background: no-repeat center/cover;
}
.js-bgFix .bgFix + * {
  margin-top: unset;
}
@media (max-width: 960px) {
  .js-bgFix .bgFix {
    background: no-repeat 0 0/cover;
  }
}

.js-left, .js-right, .js-top, .js-bottom, .js-chB > *, .js-chL > *, .js-chR > *, .js-chT > * {
  transition: var(--trt);
  opacity: 0;
  filter: blur(var(--jsBlur));
}
.js-left.show, .js-right.show, .js-top.show, .js-bottom.show, .js-chB > *.show, .js-chL > *.show, .js-chR > *.show, .js-chT > *.show {
  opacity: 1;
  translate: none;
  filter: unset;
}
.js-hide, .js-chHide > * {
  filter: blur(var(--jsBlur));
  opacity: 0;
  transition: var(--trt);
}
.js-hide.show, .js-chHide > *.show {
  opacity: 1;
  filter: unset;
}
.js-cpL, .js-cpR, .js-uHide {
  transition: var(--trt);
  opacity: 0;
}
.js-cpL.show, .js-cpR.show, .js-uHide.show {
  translate: none;
  opacity: 1;
  filter: unset;
}
.js-scale {
  opacity: 0;
  transition: scale 1.8s, opacity 1.2s 0.4s !important;
  scale: 0.8;
}
.js-scale.show {
  opacity: 1;
  scale: 1;
}
.js-left, .js-chL > *, .js-artL article > * {
  translate: calc(var(--transX) * -1);
}
.js-right, .js-chR > *, .js-artR article > * {
  translate: var(--transX);
}
.js-bottom, .js-chB > *, .js-artB article > * {
  translate: 0 var(--transY);
}
.js-top, .js-chT > *, .js-artT article > * {
  translate: 0 calc(var(--transY) * -0.5);
}

.js-cpL,
.js-cpR,
.js-cpT,
.js-cpB {
  transition: var(--trt);
  opacity: 0;
  clip-path: inset(0 95% 0 0);
}
.js-cpL.show,
.js-cpR.show,
.js-cpT.show,
.js-cpB.show {
  opacity: 1;
  clip-path: inset(0);
}

.js-cpL {
  clip-path: inset(0 95% 0 0);
}

.js-cpR {
  clip-path: inset(0 0 0 95%);
}

.js-cpT {
  clip-path: inset(0 0 50% 0);
}

.js-cpB {
  clip-path: inset(95% 0 0 0);
}

.js-clip .im {
  transition: 0.4s 0s;
  clip-path: polygon(0% 0%, 100% 0%, 100% 1px, 0% 0%);
}
.js-clip .im > * {
  transition: 0.4s;
  clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
}
.js-clip.show .im {
  transition: 0.8s;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.js-clip.show .im > * {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.js-clip.js-clipR {
  clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}
.js-clip.js-clipR:after {
  transform-origin: left;
}

.js-letter.show :is(h1, h2, h3) > *:nth-child(1) {
  transition-delay: 0.1s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(2) {
  transition-delay: 0.15s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(3) {
  transition-delay: 0.2s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(4) {
  transition-delay: 0.25s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(5) {
  transition-delay: 0.3s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(6) {
  transition-delay: 0.35s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(7) {
  transition-delay: 0.4s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(8) {
  transition-delay: 0.45s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(9) {
  transition-delay: 0.5s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(10) {
  transition-delay: 0.55s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(11) {
  transition-delay: 0.6s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(12) {
  transition-delay: 0.65s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(13) {
  transition-delay: 0.7s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(14) {
  transition-delay: 0.75s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(15) {
  transition-delay: 0.8s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(16) {
  transition-delay: 0.85s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(17) {
  transition-delay: 0.9s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(18) {
  transition-delay: 0.95s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(19) {
  transition-delay: 1s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(20) {
  transition-delay: 1.05s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(21) {
  transition-delay: 1.1s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(22) {
  transition-delay: 1.15s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(23) {
  transition-delay: 1.2s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(24) {
  transition-delay: 1.25s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(25) {
  transition-delay: 1.3s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(26) {
  transition-delay: 1.35s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(27) {
  transition-delay: 1.4s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(28) {
  transition-delay: 1.45s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(29) {
  transition-delay: 1.5s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(30) {
  transition-delay: 1.55s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(31) {
  transition-delay: 1.6s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(32) {
  transition-delay: 1.65s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(33) {
  transition-delay: 1.7s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(34) {
  transition-delay: 1.75s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(35) {
  transition-delay: 1.8s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(36) {
  transition-delay: 1.85s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(37) {
  transition-delay: 1.9s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(38) {
  transition-delay: 1.95s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(39) {
  transition-delay: 2s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(40) {
  transition-delay: 2.05s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(41) {
  transition-delay: 2.1s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(42) {
  transition-delay: 2.15s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(43) {
  transition-delay: 2.2s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(44) {
  transition-delay: 2.25s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(45) {
  transition-delay: 2.3s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(46) {
  transition-delay: 2.35s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(47) {
  transition-delay: 2.4s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(48) {
  transition-delay: 2.45s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(49) {
  transition-delay: 2.5s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(50) {
  transition-delay: 2.55s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(51) {
  transition-delay: 2.6s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(52) {
  transition-delay: 2.65s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(53) {
  transition-delay: 2.7s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(54) {
  transition-delay: 2.75s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(55) {
  transition-delay: 2.8s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(56) {
  transition-delay: 2.85s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(57) {
  transition-delay: 2.9s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(58) {
  transition-delay: 2.95s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(59) {
  transition-delay: 3s;
}
.js-letter.show :is(h1, h2, h3) > *:nth-child(60) {
  transition-delay: 3.05s;
}

.js-letter {
  opacity: 0;
  transition: var(--trt);
}
.js-letter :is(h1, h2, h3) > * {
  opacity: 0;
  transition: 0.6s;
}
.js-letter.show :is(h1, h2, h3) > * {
  opacity: 1;
}
.js-letter.show {
  opacity: 1;
  --jsBlur:0px;
}

a {
  transition: 0.4s;
}
a:where(:not([class], .h a, [href*=tel])):hover {
  opacity: 0.85;
}
a:hover, a:hover * {
  transition-delay: 0s !important;
}
a:is(.itext, .sns_slide ul a) {
  max-width: 100%;
}
a:is(.itext, .sns_slide ul a):hover {
  opacity: 0.7;
}
a:is(.h_logo a, .f_logolink, .itext, .sns_slide ul a):hover {
  opacity: 0.7;
}
a:is(.sns_slide a, .layer .box a) {
  overflow: hidden;
}
a:is(.sns_slide a, .layer .box a) .im {
  overflow: hidden;
}
a:is(.sns_slide a, .layer .box a) img {
  transition: 0.4s;
  will-change: scale;
}
a:is(.sns_slide a, .layer .box a):hover img {
  scale: 1.035;
  opacity: 1;
}

button, a {
  font-size: inherit;
}
button:not([class*=_logo], [class*=slick] button), a:not([class*=_logo], [class*=slick] button) {
  outline-style: var(--decoS);
  outline-color: var(--mc10);
  outline-width: 0px;
}
button:not([class*=_logo], [class*=slick] button):focus, a:not([class*=_logo], [class*=slick] button):focus {
  outline-width: 1px;
}

.submit:is(#contents *) {
  margin-top: 40px;
}

.submit {
  width: fit-content;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1em;
}

.submit > button {
  margin-top: 30px;
  margin-bottom: 30px;
  margin-block: 1em;
  background-size: cover;
  transition: 0.4s;
}

:root {
  --TLC:var(--inh);
  --TLFZ:var(--h2FZ);
  --TLFF:var(--Eng);
  --TLFW:400;
  --TLFS:normal;
  --TLLS:0.0em;
  --TLDeco:none;
  --TLOff:.25em;
  --TLG:.0em;
  --btnHover:brightness(1.2) saturate(1.2);
  --btnBG:var(--ac);
  --btnC:var(--wh);
  --btnFZ:var(--f16);
  --btnFF:var(--inh);
  --btnLH:1.25;
  --btnFW: 700;
  --btnLS:0.0em;
  --btnW:260px;
  --btnH:64px;
  --btnPX:1em;
  --btnPY: 0.25em 0.125em;
  --btnG:.5em;
  --btnTR:0.4s ease-in-out;
  --btnRad:var(--rad);
  --btnIFZ:calc(var(--btnFZ)*1);
  --btnImg:calc(var(--bodyFZ)*2.75 );
  --btnIFF:var(--icon);
  --btnIMX: 0 0.5em;
  --btnTA:center;
  --btnAF: "";
  --btnAFdis: inline-block;
  --btnAFMX: 0.5em ;
  --btnAFC: var(--inh);
  --btnAFFZ: calc(var(--btnFZ)*1);
  --btnAFFW: 900;
  --btnAFPOS: unset;
  --btnAFRT: unset;
}
@media (max-width: 420px) {
  :root {
    --btnW:100%;
  }
}

.btn, .btn2 {
  position: relative;
  z-index: 1;
  text-decoration: none;
  display: inline-block;
  align-content: center;
  text-align: var(--btnTA);
  font-size: var(--btnFZ);
  font-weight: var(--btnFW);
  font-family: var(--btnFF);
  line-height: var(--btnLH);
  letter-spacing: var(--btnLS);
  background: var(--btnBG);
  min-width: var(--btnW);
  min-height: var(--btnH);
  padding-inline: var(--btnPX);
  padding-block: var(--btnPY);
  gap: var(--btnG);
  border-radius: var(--btnRad);
  box-shadow: var(--btnSh);
  max-width: 100%;
  will-change: filter;
  transition: var(--btnTR);
}
.btn .fa-phone-volume, .btn2 .fa-phone-volume {
  rotate: -45deg;
  font-size: 0.8em;
}
.btn .fa-phone-volume::before, .btn2 .fa-phone-volume::before {
  margin-inline: 0.5em 0.25em;
}

.btn:after, .btn2:after {
  content: var(--btnAF);
  color: var(--btnAFC);
  font-family: var(--btnIFF);
  font-size: var(--btnAFFZ);
  font-weight: var(--btnAFFW);
  display: var(--btnAFdis);
  place-items: center;
  position: var(--btnAFPOS);
  right: var(--btnAFRT);
  place-items: center;
  line-height: var(--btnFZ);
  margin-inline: var(--btnAFMX);
}
.btn:after:is([target=_blank]:after), .btn2:after:is([target=_blank]:after) {
  content: "\f35d";
}
.btn:hover, .btn2:hover {
  filter: var(--btnHover);
}
.btn:hover:after, .btn2:hover:after {
  flex: unset;
}
.btn.__wh, .__wh.btn2 {
  --btnBG:var(--wh);
  color: var(--ac);
  border: var(--line);
  border-color: currentColor;
}
.btn.__tel:after, .__tel.btn2:after {
  display: none;
}
.btn.__tel i:before, .__tel.btn2 i:before {
  font-size: calc(var(--btnIFZ) * 0.9);
}
.btn:has(> i):after, .btn2:has(> i):after {
  display: none;
}
.btn:has(> i) i:before, .btn2:has(> i) i:before {
  color: var(--btnAFC);
  font-family: var(--btnIFF);
  font-size: var(--btnIFZ);
  margin-inline: var(--btnIMX);
  right: var(--btnAFRT);
  transition: 0.4s;
}
.btn:has(> i) i:before:not(.ph), .btn2:has(> i) i:before:not(.ph) {
  font-weight: var(--btnAFFW);
}
.btn.__column, .__column.btn2 {
  flex-direction: column;
  gap: 0;
}
.btn.__anchor, .__anchor.btn2 {
  justify-content: center;
}
.btn.__anchor:after, .__anchor.btn2:after {
  rotate: 90deg;
  flex: unset;
  width: 1.5em;
}
.btn:is(.txbk *), .btn2:is(.txbk *), .btn.__bk, .__bk.btn2 {
  color: var(--wh);
}
.btn i, .btn2 i {
  font-size: var(--btnIFZ);
}
.btn img, .btn2 img {
  width: var(--btnImg);
  object-fit: contain;
  display: inline-block;
  vertical-align: middle;
}
.btn:has(img), .btn2:has(img) {
  flex-direction: column;
}
.btn:has(img) img, .btn2:has(img) img {
  width: var(--btnImg);
  margin-inline: auto;
  display: block;
}
.btn:is(a, span), .btn2:is(a, span) {
  color: var(--btnC);
  transition: var(--btnTR);
}
.btn.__top::after, .__top.btn2::after {
  rotate: -90deg;
}
.btn.noArrow:after, .noArrow.btn2:after {
  display: none;
}
.btn.arrowRev:after, .arrowRev.btn2:after {
  rotate: 180deg;
}
.btn[href*="#contents"]:after, [href*="#contents"].btn2:after {
  rotate: -90deg;
}
.btn.__tr, .__tr.btn2 {
  background: unset;
  color: var(--mc);
  border: 1px solid currentColor;
}
.btn.__bc, .__bc.btn2 {
  --btnBG: var(--bc);
  color: var(--mc);
}
.btn.__mc, .__mc.btn2 {
  --btnBG: var(--mc);
}
.btn.__tw, .__tw.btn2 {
  background-color: var(--bg);
  --bg:var(--TW);
}
.btn.__ins, .__ins.btn2 {
  background-color: var(--bg);
  --bg:var(--INS);
}
.btn.__lg, .__lg.btn2 {
  padding-block: 1.5em;
}
.btn.__sc, .__sc.btn2 {
  --btnBG: var(--sc);
}
.btn.__ac, .__ac.btn2 {
  --btnBG: var(--ac);
}

i {
  font-style: normal;
}

.textlink {
  line-height: 1.125;
  font-size: var(--TLFZ);
  font-family: var(--TLFF);
  font-weight: var(--TLFW);
  font-style: var(--TLFS);
  letter-spacing: var(--TLLS);
  text-underline-offset: var(--TLOff);
  gap: var(--TLG);
  position: relative;
  text-align: center;
  padding-inline: 0.25em;
  display: inline-block;
  border-bottom: 1px solid currentColor;
  border: unset;
  padding-inline: unset;
  transition: var(--btnTR);
}
.textlink.__anchor:after {
  background: unset;
  content: "\f105";
  color: var(--btnAFC);
  font-family: var(--btnIFF);
  font-size: var(--btnAFFZ);
  font-weight: var(--btnAFFW);
  display: var(--btnAFdis);
  place-items: center;
  position: var(--btnAFPOS);
  right: var(--btnAFRT);
  place-items: center;
  rotate: 90deg;
  font-weight: 900;
  width: 1.25em;
}
.textlink:is(a) {
  text-decoration: var(--TLDeco) !important;
  color: var(--TLC);
}
.textlink:is(a):hover {
  color: var(--ac);
}
.textlink:hover {
  filter: var(--btnHover);
}
.textlink img {
  width: var(--btnImg) !important;
  height: var(--btnImg) !important;
  display: inline-block;
  vertical-align: bottom;
  margin-right: var(--TLG);
}
.textlink i:before {
  display: inline-block;
  margin-right: var(--TLG);
  vertical-align: bottom;
}
.textlink small {
  font-size: 50%;
  display: block;
  letter-spacing: -0.02em;
  color: inherit;
}

p:has(> a) {
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  max-width: 100%;
  display: inline-flex;
  flex-wrap: wrap;
  --gap:1.5em;
  gap: var(--gap);
  justify-content: center;
}
p:has(> a) > br {
  display: none;
}
p:has(> a) .__anchor {
  max-width: calc(50% - var(--gap) / 2) !important;
}
@media (max-width: 640px) {
  p:has(> a) .__anchor {
    min-width: unset !important;
    width: var(--btnW);
  }
}

.veil {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.f_btn,
.h_nav .expand ul li, .f_link, .pan1 a,
.h_nav a:not(.expand a, .nopointer, :has(> span)),
.banner a,
.h_nav a:not(.expand a, .nopointer, :has(> span), :is(.logo *)),
.nav a:not(.expand ul li a),
.f_nav ul a,
.blog_text h3 span,
.rss-title {
  background-image: linear-gradient(currentColor, currentColor);
  transition: var(--btnTR);
  background-repeat: no-repeat;
  background-position-y: 100%;
  background-position-x: -103%;
  background-size: 200% 1px;
}
.f_btn:hover,
.h_nav .expand ul li:hover, .f_link:hover, .pan1 a:hover,
.h_nav a:hover:not(.expand a, .nopointer, :has(> span)),
.banner a:hover,
.h_nav a:hover:not(.expand a, .nopointer, :has(> span), :is(.logo *)),
.nav a:hover:not(.expand ul li a),
.f_nav ul a:hover,
.blog_text h3 span:hover,
.rss-title:hover {
  background-position-x: 0%;
  animation: rightgrow var(--btnTR);
  opacity: 1;
}
@keyframes rightgrow {
  0% {
    background-position-x: 203%;
  }
  100% {
    background-position-x: 50%;
  }
}
@keyframes rightgrow2 {
  0% {
    background-position-x: 50%;
  }
  100% {
    background-position-x: -103%;
  }
}

@keyframes b-grow {
  0% {
    background-position-y: 200%;
  }
  100% {
    background-position-y: 0%;
  }
}

.f_link, .pan1 a,
.h_nav a:not(.expand a, .nopointer, :has(> span)),
.banner a,
.h_nav a:not(.expand a, .nopointer, :has(> span), :is(.logo *)),
.nav a:not(.expand ul li a),
.f_nav ul a,
.blog_text h3 span,
.rss-title {
  background-position-x: -105%;
  background-size: 200% 1px;
  background-image: linear-gradient(var(--cur), var(--cur));
}
@media screen and (max-width: 1080px) {
  .f_link, .pan1 a,
  .h_nav a:not(.expand a, .nopointer, :has(> span)),
  .banner a,
  .h_nav a:not(.expand a, .nopointer, :has(> span), :is(.logo *)),
  .nav a:not(.expand ul li a),
  .f_nav ul a,
  .blog_text h3 span,
  .rss-title {
    background-position-x: 0%;
    animation: rightgrow var(--btnTR);
  }
}

.nav a:not(.expand ul li a) {
  background-image: linear-gradient(var(--expandbtnBF), var(--expandbtnBF));
  background-position-x: 0%;
  animation: rightgrow var(--btnTR);
}

.f_btn,
.h_nav .expand ul li {
  background-image: linear-gradient(var(--wh20), var(--wh20));
  background-size: 200% 100%;
}
.f_btn:active,
.h_nav .expand ul li:active {
  background-position-x: 0%;
}

.box-mc {
  --boxBG:var(--mc);
}
.box-mcLT {
  --boxBG:var(--mcLT);
}
.box-bc {
  --boxBG:var(--bc);
}
.box-sc {
  --boxBG:var(--sc);
}
.box-ac {
  --boxBG:var(--ac);
}
.box-wh {
  --boxBG:var(--wh);
}
.box-bk {
  --boxBG:var(--bk);
}
.box-mc div.box, .box-mcLT div.box, .box-bc div.box, .box-sc div.box, .box-ac div.box, .box-wh div.box, .box-bk div.box, .box-mcl div.box {
  background-color: var(--boxBG);
  border-radius: var(--rad);
  padding: 1em;
}
.box-mc div.box div, .box-mcLT div.box div, .box-bc div.box div, .box-sc div.box div, .box-ac div.box div, .box-wh div.box div, .box-bk div.box div, .box-mcl div.box div {
  margin-top: unset;
}
.box-mc div.box img, .box-mcLT div.box img, .box-bc div.box img, .box-sc div.box img, .box-ac div.box img, .box-wh div.box img, .box-bk div.box img, .box-mcl div.box img {
  border-radius: 0;
}

.part_dllist {
  --bds:none;
  --bdc:currentColor;
  --pdb:1em;
  --pdi: .5em;
  --maxH:35vh;
  --dtMW: 7em;
  --thumbC: var(--tx20);
}
@media (max-width: 834px) {
  .part_dllist {
    --pdb:1em;
    --pdi: .5em;
  }
}
@media (max-width: 640px) {
  .part_dllist.__scroll {
    max-height: var(--maxH);
  }
}
.part_dllist.borderTop dl:first-of-type dt, .part_dllist.borderTop dl:first-of-type dd {
  border-top-style: solid !important;
}
@media (max-width: 640px) {
  .part_dllist.borderTop dl:first-of-type dd {
    border-top-style: none !important;
  }
}
.part_dllist.__firstPT0:is(#contents *) dl:first-of-type {
  --pdb:0 1.5em;
}
.part_dllist.dt-right:is(#contents *) dt {
  justify-content: flex-end;
  text-align: right;
}
.part_dllist.dt-center:is(#contents *) dt {
  justify-content: center;
  text-align: center;
}
.part_dllist.dd-right:is(#contents *) dd {
  text-align: right;
}
.part_dllist.dd-center:is(#contents *) dd {
  text-align: center;
}
.part_dllist.__firstmc:is(#contents *) dl:first-child {
  background-color: var(--mc);
}
.part_dllist.__firstbc:is(#contents *) dl:first-child {
  background-color: var(--bc);
}
.part_dllist dt > span {
  color: var(--mc);
}
.part_dllist.hash-ac dt > span {
  color: var(--ac);
}
.part_dllist.noscr {
  overflow: unset;
  height: unset !important;
  max-height: unset !important;
}
.part_dllist.form_simple {
  overflow-y: scroll;
  margin-inline: auto;
  max-width: 100%;
  position: relative;
}
.part_dllist.form_simple.borderTop dl:first-of-type dt, .part_dllist.form_simple.borderTop dl:first-of-type dd {
  border-top-style: solid !important;
}
@media (max-width: 640px) {
  .part_dllist.form_simple.borderTop dl:first-of-type dd {
    border-top-style: none !important;
  }
}
.part_dllist.form_simple dt, .part_dllist.form_simple dd {
  border-color: var(--bdc);
}
.part_dllist.form_simple dl:last-of-type dd,
.part_dllist.form_simple dl:last-of-type dt {
  border-color: var(--bdc);
}
.part_dllist.form_simple dt {
  width: 20%;
}
.part_dllist.form_simple dd {
  width: 80%;
}
.part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt) {
  width: 100% !important;
  padding-inline: 0.5em;
  margin-bottom: 0.5em;
  border-radius: var(--bodyFZ);
  border: 2px solid currentColor;
}
.part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt):before {
  width: 1em;
  height: 1em;
  inset: unset;
  bottom: 0.5em;
  right: calc(100% - 0.125em);
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  background-color: #fff;
  transform: skewX(-45deg);
  transform-origin: 100% 100%;
  clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 50% 0%);
}
@media (max-width: 640px) {
  .part_dllist.form_simple dl:has(dd:empty) dt:is(#contents dt):before {
    bottom: calc(100% - 0.125em);
    right: unset;
    left: 0.5em;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    background-color: #fff;
    transform: skewX(-45deg);
    transform-origin: 100% 100%;
    clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 50% 0%);
    scale: -1 1;
    rotate: -90deg;
  }
}
.part_dllist.form_simple dl:has(dd:empty) dd {
  display: none;
}
.part_dllist.form_simple dl:has(.btn, iframe, img) {
  border: none !important;
}
.part_dllist.form_simple dl:has(.btn, iframe, img) .btn {
  float: right;
  margin-top: 1em;
}
.part_dllist.form_simple dl:has(.btn, iframe, img) dt:is(#contents dt) {
  display: none;
}
.part_dllist.form_simple.noscr {
  overflow: unset;
  height: unset !important;
  max-height: unset !important;
}
.part_dllist.form_simple.__02 {
  overflow: unset;
  height: unset !important;
  max-height: unset !important;
  border-block: none;
}
.part_dllist.form_simple.__02 * {
  border-bottom-color: var(--mc);
}
.part_dllist.form_simple.__02 dt {
  font-weight: unset;
}
.part_dllist.form_simple.__02 dd {
  border-bottom-color: #fff !important;
}
.part_dllist.form_simple a {
  text-decoration: underline;
}
.part_dllist.form_simple dl:is(#contents *, #footer *) {
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  background-color: unset;
}
.part_dllist.form_simple dl:is(#contents *, #footer *) > * {
  padding-top: 0;
}
.part_dllist.form_simple dl:is(#contents *, #footer *):not(:has(dd)) {
  border-bottom: none;
}
.part_dllist.form_simple dl:is(#contents *, #footer *):not(:has(dd)) dt {
  align-items: flex-end;
  font-size: 14px;
}
.part_dllist.form_simple dl:is(#contents *, #footer *) dt, .part_dllist.form_simple dl:is(#contents *, #footer *) dd {
  padding-block: var(--pdb);
  padding-inline: var(--pdi);
  background-color: unset;
  border-top-style: none;
  border-left-style: none;
  border-right-style: none;
  border-bottom-style: solid;
  border-width: var(--bdw);
}
@media (max-width: 640px) {
  .part_dllist.form_simple dl:is(#contents *, #footer *) dt:is(dl:first-of-type dd), .part_dllist.form_simple dl:is(#contents *, #footer *) dd:is(dl:first-of-type dd) {
    border-top-style: none;
  }
}
.part_dllist.form_simple dl:is(#contents *, #footer *) dt {
  display: block;
  font-weight: var(--dtw);
}
.part_dllist.form_simple dl:is(#contents *, #footer *) dd {
  flex-grow: 1;
}
@media (max-width: 640px) {
  .part_dllist.form_simple dl:is(#contents *, #footer *):not(:last-child) {
    margin-bottom: 0px;
  }
  .part_dllist.form_simple dl:is(#contents *, #footer *) dt, .part_dllist.form_simple dl:is(#contents *, #footer *) dd {
    width: 100% !important;
  }
  .part_dllist.form_simple dl:is(#contents *, #footer *) dt {
    border-bottom: none;
    align-items: flex-start;
    width: 100%;
    width: fit-content;
  }
  .part_dllist.form_simple dl:is(#contents *, #footer *) dd {
    border-top: none;
    width: 100%;
    padding-top: 0;
  }
}
.part_dllist.form_02 {
  --p:1em;
  --bdc:var(--tx20);
  overflow: unset;
  height: unset !important;
  max-height: unset !important;
  position: relative;
}
.part_dllist.form_02 dl:has(dd:empty) dt:is(#contents dt) {
  width: 100% !important;
  background-color: var(--sc20);
  padding-inline: 0.5em;
  border-right-style: solid !important;
  border-right-width: 1px !important;
}
.part_dllist.form_02 dl:has(dd:empty) dd {
  display: none;
}
.part_dllist.form_02 dl:has(.btn, iframe, img) dt {
  display: none;
}
.part_dllist.form_02 dl:has(.btn, iframe, img) dd {
  display: flex;
  gap: 1em;
}
.part_dllist.form_02 dl:has(.btn, iframe, img) dd picture {
  width: fit-content;
}
.part_dllist.form_02 u {
  --o:0px;
}
.part_dllist.form_02 a {
  text-decoration: underline;
}
.part_dllist.form_02 .btn {
  margin-top: 0;
  margin-left: 1.5em;
  color: var(--wh);
  text-decoration: none;
}
.part_dllist.form_02 > br {
  display: none;
}
@media (max-width: 640px) {
  .part_dllist.form_02 {
    max-height: 40vh;
  }
}
.part_dllist.form_02 dt {
  min-width: 25%;
  justify-content: center;
}
.part_dllist.form_02 dd {
  flex-grow: 1;
}
@media (max-width: 834px) {
  .part_dllist.form_02 dd {
    white-space: unset;
  }
}
.part_dllist.form_02 dl {
  padding: 0;
  margin: 0;
  margin-bottom: calc(var(--p) * 0);
  display: flex;
  background-color: unset;
}
.part_dllist.form_02 dl > * {
  padding-top: 0;
}
.part_dllist.form_02 dl:last-child {
  border-bottom: none;
}
@media (max-width: 834px) {
  .part_dllist.form_02 dl:last-of-type dt {
    border-bottom: none;
  }
}
.part_dllist.form_02 dl:not(:has(dd)) {
  border-bottom: none;
}
.part_dllist.form_02 dl:not(:has(dd)) dt {
  align-items: flex-end;
  font-size: 14px;
}
@media (max-width: 640px) {
  .part_dllist.form_02 dl {
    flex-direction: row !important;
    padding: 1em 0;
  }
  .part_dllist.form_02 dl:not(:last-child) {
    margin-bottom: 0px;
  }
}
.part_dllist.form_02 dt:is(*), .part_dllist.form_02 dd:is(*) {
  line-height: 1.6;
  background-color: unset;
}
@media (max-width: 834px) {
  .part_dllist.form_02 dt:is(*), .part_dllist.form_02 dd:is(*) {
    width: 100%;
  }
}
.part_dllist.form_02 dt, .part_dllist.form_02 dd {
  padding: var(--p);
}
@media (max-width: 834px) {
  .part_dllist.form_02 dl {
    padding-block: 0;
    flex-wrap: wrap;
  }
  .part_dllist.form_02 dl > * {
    flex: unset;
    width: 100% !important;
    border-right-style: none;
    border-right-width: 1px;
  }
  .part_dllist.form_02 dl > dt {
    border-right-color: #ccc;
  }
}
.part_dllist.form_column {
  --bds:solid;
  overflow-y: scroll;
  margin-inline: auto;
  max-width: 100%;
  position: relative;
}
.part_dllist.form_column a {
  text-decoration: underline;
}
.part_dllist.form_column dt {
  width: 100% !important;
}
.part_dllist.form_column dd {
  width: 100% !important;
}
.part_dllist.form_column dl {
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  background-color: unset;
  border-bottom: var(--line);
  border-color: var(--bdc);
  border-bottom-style: var(--bds);
  border-bottom-width: var(--bdw);
  padding-block: var(--pdb);
}
.part_dllist.form_column dl > * {
  padding-block: calc(var(--pdb) / 2);
}
.part_dllist.form_column dl dt, .part_dllist.form_column dl dd {
  line-height: 1.5;
  padding-inline: var(--pdi);
  border-color: transparent;
  background-color: unset;
  border: none !important;
}
.part_dllist.form_column dl dt {
  display: block;
  font-weight: var(--dtw);
  color: var(--dtc);
  font-family: var(--dtFF);
}
.part_dllist.form_column dl dd {
  flex-grow: 1;
}
@media (max-width: 640px) {
  .part_dllist.form_column dl dt, .part_dllist.form_column dl dd {
    width: 100% !important;
  }
  .part_dllist.form_column dl dt {
    border-bottom: none;
  }
  .part_dllist.form_column dl dd {
    border-top: none;
  }
}
.part_dllist.form_column dl:has(dd:empty) {
  border: none;
}
.part_dllist.form_column dl:has(dd:empty) dt {
  font-size: var(--h3FZ) !important;
  width: 100% !important;
  color: var(--tx) !important;
}
.part_dllist.form_column dl:has(dd:empty) dd {
  display: none;
}
.part_dllist.form_column dl:has(.btn, iframe, img) {
  border: none !important;
}
.part_dllist.form_column dl:has(.btn, iframe, img) .btn {
  float: right;
  margin-top: 1em;
}
.part_dllist.form_column dl:has(.btn, iframe, img) dt:is(#contents dt) {
  display: none;
}
.part_dllist.form_column.noscr {
  overflow: unset;
  height: unset !important;
  max-height: unset !important;
}
.part_dllist.form_enkaku {
  position: relative;
  padding-left: var(--pl);
  --bdc: var(--mc);
  --maru: var(--mc);
  --yoko: var(--mc);
  --tate: var(--mc);
  --thumb: var(--mc);
  --pl: 6vmin;
  --Npl: calc(var(--pl) * -1);
  --dtFW:700;
  --dtW:15%;
  position: relative;
  padding-left: var(--pl);
}
.part_dllist.form_enkaku dl:last-of-type dt,
.part_dllist.form_enkaku dl:last-of-type dd,
.part_dllist.form_enkaku dl dd {
  border: unset;
}
.part_dllist.form_enkaku dl:has(dd:empty) dt {
  color: var(--tx);
}
.part_dllist.form_enkaku dd:empty {
  display: none;
}
.part_dllist.form_enkaku dt {
  width: var(--dtW);
  min-width: 8em;
}
.part_dllist.form_enkaku dd {
  flex: 1;
}
.part_dllist.form_enkaku dl:is(#contents *) {
  position: relative;
  padding-left: var(--pl);
  display: flex;
}
.part_dllist.form_enkaku dl:is(#contents *):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  content: "";
  background: var(--tate);
  z-index: -1;
  transform: translateX(-50%);
}
.part_dllist.form_enkaku dl:is(#contents *) dt, .part_dllist.form_enkaku dl:is(#contents *) dd {
  border-top: unset;
  border-left: unset;
  padding: 1em;
}
.part_dllist.form_enkaku dl:is(#contents *) dt {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  box-sizing: border-box;
  position: relative;
  font-weight: var(--dtFW);
}
.part_dllist.form_enkaku dl:is(#contents *) dt:before {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: var(--Npl);
  transform: translateX(-50%);
  display: block;
  width: calc(var(--pl) / 4);
  height: calc(var(--pl) / 4);
  margin: auto;
  content: "";
  border-radius: 100px;
  background: var(--maru);
}
.part_dllist.form_enkaku dl:is(#contents *) dt:after {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: var(--Npl);
  display: block;
  width: var(--pl);
  height: 1px;
  margin: auto;
  content: "";
  background: var(--yoko);
  z-index: -1;
}
@media (max-width: 640px) {
  .part_dllist.form_enkaku dl:is(#contents *) dt {
    min-width: 100px !important;
  }
}
@media (max-width: 640px) {
  .part_dllist.form_enkaku dl {
    flex-wrap: wrap;
  }
  .part_dllist.form_enkaku dt, .part_dllist.form_enkaku dd {
    width: 100% !important;
  }
}

div.blog_list div.blog_text {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
div.blog_list div.blog_text h3 {
  width: 100%;
  overflow: hidden;
}
div.blog_list div.blog_text h3 span {
  word-break: break-word;
}
div.blog_list div.blog_text div.detail {
  width: 100%;
}
div.blog_list div.blog_text div.detail {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

div.blog_list div.blog_date {
  order: -1;
}

div.blog_list ul {
  display: block;
  order: -1;
}

.mfp-wrap {
  top: 0 !important;
  left: 0;
  width: 100%;
  height: 100% !important;
  z-index: 1043;
  position: fixed !important;
  outline: none !important;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: unset;
}

.fancybox td {
  clip-path: inset(0);
}
.fancybox a {
  clip-path: inset(0);
  display: block;
  will-change: transform;
}
.fancybox a img {
  transition: 0.4s;
}
.fancybox a img:hover {
  opacity: 0.8;
}

div:has(+ #global_header) .mfp-container {
  padding-inline: unset;
  overflow-y: scroll;
}

img.mfp-img {
  min-width: 66vw;
}
@media (max-width: 834px) {
  img.mfp-img {
    min-width: 84vw;
  }
}

.mfp-picture .mfp-title {
  display: block;
  font-size: clamp(20px, 2.2vw, 22px);
}
.mfp-picture .mfp-title span {
  font-size: inherit;
  margin-left: 1em;
}

.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
  right: unset;
}

.mfp-arrow {
  width: 8vmin;
  height: 8vmin;
  display: grid;
  place-items: center;
  place-content: center;
}

.mfp-arrow:after, .mfp-arrow:before {
  content: "\f105";
  top: 0;
  margin: unset;
  border: unset;
  font-weight: 900;
  font-family: "Line Awesome Free";
  font-size: 3em;
  display: block;
  width: 100%;
  height: 100%;
  text-shadow: 2px 0 var(--wh);
}

.mfp-arrow-left:before {
  scale: -1 1;
}

.mfp-arrow:after {
  display: none;
}

.privacy-policy {
  text-decoration: underline;
}

.policy-trigger {
  text-decoration: underline;
  text-decoration-color: var(--linkC);
  color: var(--linkC);
  cursor: pointer;
}

p.annot {
  font-size: inherit;
  font-weight: inherit;
}

.policy-wrap {
  opacity: 0;
  z-index: -1;
  transition: 0.3s;
  position: fixed;
  justify-content: center;
  align-items: center;
  bottom: 0;
  left: 0;
  height: calc(100% - var(--head));
  width: 100%;
  line-height: 2;
  background-color: var(--bc50);
  overscroll-behavior: none;
  cursor: pointer;
  letter-spacing: 0.02em;
  display: none;
}
.policy-wrap > div > div {
  pointer-events: none;
}
.policy-wrap.active {
  display: flex;
  opacity: 1;
  z-index: 10;
}
.policy-wrap h2 {
  font-size: var(--h3FZ);
}
.policy-wrap h3 {
  border-left: 6px solid var(--tx);
  color: #111;
  padding-left: 10px;
  font-size: 18px;
  letter-spacing: 0.1em;
  font-weight: bold;
  text-align: left;
}
.policy-wrap p {
  margin: 10px 0 25px;
  color: #111;
  line-height: 2;
  font-size: inherit;
  font-weight: inherit;
}
.policy-wrap > div {
  position: relative;
  padding: 20px;
  width: var(--base);
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--tx);
  height: 80vh;
  max-height: calc(100vh - var(--head) * 1.5);
  overflow-y: scroll;
  max-width: 100%;
}
.policy-wrap > div a {
  position: absolute;
  top: -4px;
  right: -4px;
  font-size: 2.4rem;
  font-weight: bold;
}

.policy_contents h2 {
  font-size: var(--h3FZ);
  border-bottom: 1px solid var(--bdc);
}

.im:has(> .IMDC) {
  display: contents;
}
.im:has(> .IMDC) > .IMDC {
  display: inline-block;
}

img.Invert {
  transition: 0.6s;
  filter: brightness(0) invert(1);
}
img.Invert:is(.h.trans *) {
  filter: unset;
}

.fancybox .veil {
  display: none;
}

.sheet, .sheet02, .board {
  position: relative;
  border-radius: var(--sheetR);
  background-color: var(--sheetBG);
  padding: var(--sheetP);
}
.sheet.afterArrow, .sheet02.afterArrow, .board.afterArrow {
  position: relative;
}
.sheet.afterArrow + .sheet, .sheet02.afterArrow + .sheet, .board.afterArrow + .sheet {
  margin-top: 4em;
}
.sheet.afterArrow:after, .sheet02.afterArrow:after, .board.afterArrow:after {
  content: "\f078";
  font-family: var(--icon);
  font-weight: 900;
  font-size: var(--f32);
  width: 1em;
  height: 1em;
  line-height: 1;
  position: absolute;
  inset: calc(100% + 0.5em) 0 auto 0;
  margin: auto;
}

.board {
  border: var(--line);
  border-radius: var(--boardR);
  background-color: var(--bc);
}
.board:before {
  content: "";
  background: unset;
  inset: 1vmin;
  width: calc(100% - 2vmin);
  height: calc(100% - 2vmin);
  border: inherit;
  z-index: -1;
}

.tate {
  font-family: var(--noYH);
  writing-mode: vertical-rl;
}
.tate::after {
  display: none;
}

.noSide :is(#col_side1, #main, #col_main) {
  display: contents;
}

.fl50 > * {
  width: calc(50% - var(--gap) / 2);
}

.fl46 {
  --few:40%;
}
.fl46 > :where(:nth-child(1)) {
  width: calc(var(--few));
}
.fl46 > :where(:nth-child(2)) {
  width: calc(100% - var(--few) - var(--gap));
}

.fl64 {
  --few:40%;
}
.fl64 > :where(:nth-child(1)) {
  width: calc(100% - var(--few) - var(--gap));
}
.fl64 > :where(:nth-child(2)) {
  width: calc(var(--few));
}

.fl37 {
  --few:30%;
}
.fl37 > :where(:nth-child(1)) {
  width: calc(var(--few));
}
.fl37 > :where(:nth-child(2)) {
  width: calc(100% - var(--few) - var(--gap));
}

.fl73 {
  --few:30%;
}
.fl73 > :where(:nth-child(1)) {
  width: calc(100% - var(--few) - var(--gap));
}
.fl73 > :where(:nth-child(2)) {
  width: calc(var(--few));
}

.fl28 {
  --few:20%;
}
.fl28 > :where(:nth-child(1)) {
  width: calc(var(--few));
}
.fl28 > :where(:nth-child(2)) {
  width: calc(100% - var(--few) - var(--gap));
}

.fl82 {
  --few:20%;
}
.fl82 > :where(:nth-child(1)) {
  width: calc(100% - var(--few) - var(--gap));
}
.fl82 > :where(:nth-child(2)) {
  width: calc(var(--few));
}

:is(.fl50, .fl28, .fl37, .fl46, .fl64, .fl73, .fl28) > * {
  margin-inline: unset;
}

:is(.fl50, .fl28, .fl37, .fl46, .fl64, .fl73, .fl28) > * + * {
  margin-top: unset;
}

:is(.fl50, .fl28, .fl37, .fl46, .fl64, .fl73, .fl28) {
  gap: var(--gap);
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 834px) {
  :is(.fl50, .fl28, .fl37, .fl46, .fl64, .fl73, .fl28) > * {
    width: 100%;
  }
}

.it01, .ti01 {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --imgW: 50%;
}
.it01.noArrow:after, .ti01.noArrow:after {
  display: none;
}
.it01 .im,
.it01 picture, .ti01 .im,
.ti01 picture {
  max-width: var(--imgW);
  width: var(--imgW);
}
.it01.img100, .ti01.img100 {
  --imgW: 100%;
}
.it01.img95, .ti01.img95 {
  --imgW: 95%;
}
.it01.img90, .ti01.img90 {
  --imgW: 90%;
}
.it01.img875, .ti01.img875 {
  --imgW: 87.5%;
}
.it01.img85, .ti01.img85 {
  --imgW: 85%;
}
.it01.img80, .ti01.img80 {
  --imgW: 80%;
}
.it01.img75, .ti01.img75 {
  --imgW: 75%;
}
.it01.img70, .ti01.img70 {
  --imgW: 70%;
}
.it01.img66, .ti01.img66 {
  --imgW: 66%;
}
.it01.img65, .ti01.img65 {
  --imgW: 65%;
}
.it01.img60, .ti01.img60 {
  --imgW: 60%;
}
.it01.img55, .ti01.img55 {
  --imgW: 55%;
}
.it01.img50, .ti01.img50 {
  --imgW: 50%;
}
.it01.img45, .ti01.img45 {
  --imgW: 45%;
}
.it01.img40, .ti01.img40 {
  --imgW: 40%;
}
.it01.img35, .ti01.img35 {
  --imgW: 35%;
}
.it01.img33, .ti01.img33 {
  --imgW: 33%;
}
.it01.img30, .ti01.img30 {
  --imgW: 30%;
}
.it01.img25, .ti01.img25 {
  --imgW: 25%;
}
.it01.img20, .ti01.img20 {
  --imgW: 20%;
}
.it01.img10, .ti01.img10 {
  --imgW: 10%;
}
.it01::after, .ti01::after {
  display: none;
}
.it01:where(.ti01, .__rev), .ti01:where(.ti01, .__rev) {
  flex-direction: row-reverse;
}
.it01 > a:has(> picture > img):is(#contents *), .ti01 > a:has(> picture > img):is(#contents *) {
  width: var(--imgW);
  margin: unset;
  height: auto !important;
}
.it01 > a:has(> picture > img):is(#contents *) picture,
.it01 > a:has(> picture > img):is(#contents *) img:is(#contents *), .ti01 > a:has(> picture > img):is(#contents *) picture,
.ti01 > a:has(> picture > img):is(#contents *) img:is(#contents *) {
  max-width: 100%;
  margin: unset;
  width: 100%;
  height: auto !important;
}
.it01 > .im:has(> img):is(#contents *),
.it01 > picture:has(> img):is(#contents *), .ti01 > .im:has(> img):is(#contents *),
.ti01 > picture:has(> img):is(#contents *) {
  width: var(--imgW);
}
.it01 > .im:has(> img):is(#contents *) img,
.it01 > picture:has(> img):is(#contents *) img, .ti01 > .im:has(> img):is(#contents *) img,
.ti01 > picture:has(> img):is(#contents *) img {
  max-width: 100%;
  margin: unset;
  width: 100%;
  height: auto !important;
}
.it01 > :not(:has(img, iframe)), .ti01 > :not(:has(img, iframe)) {
  flex: 1;
}
.it01 > :not(:has(img, iframe)) div, .ti01 > :not(:has(img, iframe)) div {
  width: 100%;
}

.h1-in h1,
.H1-in h1 {
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  width: unset;
  display: inline;
  color: inherit;
}

.H-02 {
  padding-block: 2em;
  background-color: var(--mc15);
  --w:8px;
  --o:calc(var(--w)*1 );
  --c:var(--mc);
}
.H-02 h1, .H-02 h2, .H-02 h3, .H-02 h4, .H-02 h5 {
  border-left: var(--w) solid var(--c);
  padding-left: calc(var(--w) * 2);
}
.H-02 h1 + div:not(:empty), .H-02 h2 + div:not(:empty), .H-02 h3 + div:not(:empty), .H-02 h4 + div:not(:empty), .H-02 h5 + div:not(:empty) {
  margin-top: 1em;
}
.H-bd h1, .H-bd h2, .H-bd h3, .H-bd p {
  border-bottom: var(--line);
  padding-bottom: 0.25em;
}
.H-bd h1:is(.__red *), .H-bd h2:is(.__red *), .H-bd h3:is(.__red *), .H-bd p:is(.__red *) {
  border-bottom-color: var(--red);
}
.H-bd h1:is(.__mc *), .H-bd h2:is(.__mc *), .H-bd h3:is(.__mc *), .H-bd p:is(.__mc *) {
  border-bottom-color: var(--mc);
}
.H-bd h1:is(.__ac *), .H-bd h2:is(.__ac *), .H-bd h3:is(.__ac *), .H-bd p:is(.__ac *) {
  border-bottom-color: var(--ac);
}
.H-bd h1:is(.__sc *), .H-bd h2:is(.__sc *), .H-bd h3:is(.__sc *), .H-bd p:is(.__sc *) {
  border-bottom-color: var(--sc);
}
.H-bd h1:is(.__mc50 *), .H-bd h2:is(.__mc50 *), .H-bd h3:is(.__mc50 *), .H-bd p:is(.__mc50 *) {
  border-bottom-color: var(--mc50);
}
.H-bd h1:is(.__ac50 *), .H-bd h2:is(.__ac50 *), .H-bd h3:is(.__ac50 *), .H-bd p:is(.__ac50 *) {
  border-bottom-color: var(--ac50);
}
.H-bd h1:is(.__sc50 *), .H-bd h2:is(.__sc50 *), .H-bd h3:is(.__sc50 *), .H-bd p:is(.__sc50 *) {
  border-bottom-color: var(--sc50);
}
.H-bd h1:is(.__mc2 *), .H-bd h2:is(.__mc2 *), .H-bd h3:is(.__mc2 *), .H-bd p:is(.__mc2 *) {
  border-bottom-color: var(--mc2);
}
.H-bd h1:is(.__ac2 *), .H-bd h2:is(.__ac2 *), .H-bd h3:is(.__ac2 *), .H-bd p:is(.__ac2 *) {
  border-bottom-color: var(--ac2);
}
.H-bd h1:is(.__sc2 *), .H-bd h2:is(.__sc2 *), .H-bd h3:is(.__sc2 *), .H-bd p:is(.__sc2 *) {
  border-bottom-color: var(--sc2);
}
.H-bd h1:is(.__bc *), .H-bd h2:is(.__bc *), .H-bd h3:is(.__bc *), .H-bd p:is(.__bc *) {
  border-bottom-color: var(--bc);
}
.H-bd h1:is(.__wh *), .H-bd h2:is(.__wh *), .H-bd h3:is(.__wh *), .H-bd p:is(.__wh *) {
  border-bottom-color: var(--wh);
}
.H-bd h1:is(.__bk *), .H-bd h2:is(.__bk *), .H-bd h3:is(.__bk *), .H-bd p:is(.__bk *) {
  border-bottom-color: var(--bk);
}
.H-bd h1:is(.__tx *), .H-bd h2:is(.__tx *), .H-bd h3:is(.__tx *), .H-bd p:is(.__tx *) {
  border-bottom-color: var(--tx);
}
.H-bdl {
  --w:8px;
  --o:calc(var(--w)*1 );
  --c:var(--mc);
}
.H-bdl h1, .H-bdl h2, .H-bdl h3, .H-bdl h4, .H-bdl h5 {
  border-left: var(--w) solid var(--c);
  padding-left: calc(var(--w) * 2);
}
.H-bdl h1 + div:not(:empty), .H-bdl h2 + div:not(:empty), .H-bdl h3 + div:not(:empty), .H-bdl h4 + div:not(:empty), .H-bdl h5 + div:not(:empty) {
  margin-top: 1em;
}
.H-h3FZ :is(h1, h2, h3, h4, h5) {
  font-size: var(--h3FZ);
}

.BarBF:after {
  display: none;
}

.BarAF:before {
  display: none;
}

.art-flex article {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}

.D-flex div {
  display: flex;
  gap: var(--gap);
}
@media (max-width: 640px) {
  .D-flex div {
    flex-direction: column;
  }
}

.wrapperBG {
  margin-top: unset;
  background: var(--bg) no-repeat center/contain;
  position: absolute;
  inset: 0;
  width: calc(var(--base) + 240px);
  width: 100%;
  height: 100%;
  max-width: 100%;
  z-index: 0;
}
.wrapperBG + * {
  margin-top: unset;
}

.bg_center {
  background: no-repeat center/contain;
}
.bg_fix {
  background: no-repeat center/100% auto fixed;
}
.bg_fix:is(#contents *) {
  translate: none;
}
@media (max-width: 834px) {
  .bg_fix {
    background-attachment: unset;
    background-size: cover;
  }
}
.bgPattern {
  background: repeat 0 0;
}
.bg_cover {
  background: no-repeat center/cover;
}
.bgbk {
  background-color: var(--bk);
}
.bgmc {
  background-color: var(--mc);
}
.bgbc {
  background-color: var(--bc);
}
.bgsc {
  background-color: var(--sc);
}
.bgac {
  background-color: var(--ac);
}
.bgwh {
  background-color: var(--wh);
}
.bg_top {
  background: no-repeat center 0%/auto;
}
.bg_Right {
  background: no-repeat 100% 50%/auto;
}
.bg_bottom {
  background: no-repeat center 100%/auto;
}
.bg_Left {
  background: no-repeat 0% 50%/auto;
}
.bg_LB {
  background: no-repeat 0 100%/auto;
}
.bg_LT {
  background: no-repeat 0 0/auto;
}
.bg_RT {
  background: no-repeat 100% 0%/auto;
}
.bg_RB {
  background: no-repeat 100% 100%/auto;
}

.bgFix {
  position: fixed;
  inset: 0;
  background: repeat-y center/100% auto;
  pointer-events: none;
  transition: var(--trt);
  z-index: -1;
}
.bgFix.__animate {
  animation: bgUP 40s linear infinite;
  opacity: 0;
}

.tbl_normal, .tbl_scroll {
  line-height: 1.5;
}
.tbl_normal.name-link a, .tbl_scroll.name-link a {
  color: var(--linkC);
}
.tbl_normal.td-center td > div, .tbl_scroll.td-center td > div {
  text-align: center;
}
.tbl_normal.div-center div, .tbl_scroll.div-center div {
  text-align: center;
}
.tbl_normal.yokoBCtateMC tr:first-child, .tbl_scroll.yokoBCtateMC tr:first-child {
  background-color: var(--bc50);
}
.tbl_normal.yokoBCtateMC td:first-child, .tbl_scroll.yokoBCtateMC td:first-child {
  background-color: var(--mc10);
}
.tbl_normal.firstAC tr:first-of-type, .tbl_scroll.firstAC tr:first-of-type {
  background-color: var(--ac);
  color: #fff;
}
.tbl_normal.firstAC td:first-of-type, .tbl_scroll.firstAC td:first-of-type {
  background-color: var(--ac10);
}
.tbl_normal.firstMC tr:first-of-type, .tbl_scroll.firstMC tr:first-of-type {
  background-color: var(--mc);
  color: #fff;
}
.tbl_normal.firstMC td:first-of-type, .tbl_scroll.firstMC td:first-of-type {
  background-color: var(--mc10);
}
.tbl_normal.firstBC tr:first-of-type, .tbl_scroll.firstBC tr:first-of-type {
  background-color: var(--bc);
  font-weight: bold;
}
.tbl_normal.firstBC td:first-of-type, .tbl_scroll.firstBC td:first-of-type {
  background-color: var(--bc);
  font-weight: bold;
}
.tbl_normal.firstSC tr:first-of-type, .tbl_scroll.firstSC tr:first-of-type {
  background-color: var(--sc);
  font-weight: bold;
  color: var(--wh);
}
.tbl_normal.firstSC td:first-of-type, .tbl_scroll.firstSC td:first-of-type {
  background-color: var(--sc);
  font-weight: bold;
  color: var(--wh);
}
.tbl_normal.firstGR tr:first-of-type, .tbl_scroll.firstGR tr:first-of-type {
  background-color: #ccc;
}
.tbl_normal.firstBold tr:first-of-type, .tbl_scroll.firstBold tr:first-of-type {
  font-weight: bold;
}
.tbl_normal.emptyNone td:has(div:empty), .tbl_scroll.emptyNone td:has(div:empty) {
  display: none;
}
.tbl_normal.sameSize td, .tbl_scroll.sameSize td {
  width: 1%;
}
@media (max-width: 480px) {
  .tbl_normal td:is(#contents *), .tbl_scroll td:is(#contents *) {
    padding: 0.5em;
  }
}

.tbl_scroll table {
  width: 100%;
  border-left: var(--line);
  border-top: var(--line);
}
.tbl_scroll th {
  font-weight: bold;
}
.tbl_scroll th, .tbl_scroll td {
  border-right: var(--line);
  border-bottom: var(--line);
  text-align: center;
}

.tbl01 tr:first-of-type {
  background-color: var(--bc);
  font-weight: bold;
}

.tbl_hours {
  font-size: clamp(12px, 1.4vw, 16px);
  font-weight: bold;
  line-height: 1.25;
}
.tbl_hours tr + tr {
  border-top: 1px solid #ddd;
}
.tbl_hours td {
  text-align: center;
  padding: 10px;
  border: none;
}
@media (max-width: 480px) {
  .tbl_hours td {
    padding: 10px;
  }
}
.tbl_hours .marks td {
  color: var(--mc);
}

.scroll-hint-icon-wrap {
  z-index: 100;
  width: 100% !important;
  max-width: var(--un);
  margin-top: unset !important;
}

.scroll-hint-text {
  font-size: unset;
  margin-top: 0.5em;
}

.scroll-hint-icon {
  width: unset;
  height: unset;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  padding-top: 1em;
}
.scroll-hint-icon:before {
  display: none;
  margin-top: 1em;
}
@media (max-width: 834px) {
  .scroll-hint-icon:before {
    display: inline-block;
  }
}
.scroll-hint-icon:after {
  transition-delay: 0s;
  top: 1em;
}

.__scrollX > :is(div) {
  flex-wrap: nowrap !important;
  overflow-x: scroll;
  justify-content: start !important;
  padding-bottom: 1em;
}
.__scrollX > :is(div) .box {
  flex-grow: 0;
  flex-shrink: 0;
}
@media (max-width: 834px) {
  .__scrollX > :is(div) .box {
    width: calc(50% - var(--gap)) !important;
  }
}

.card1 > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --cardW: calc((100% - (var(--gap) * 0)) / 1);
}
.card1 > div ul {
  display: contents;
}
.card1 > div .box, .card1 > div li, .card1 > div > * {
  width: var(--cardW);
}
.card1 > div:after {
  display: none;
}

.card2 > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --cardW: calc((100% - (var(--gap) * 1)) / 2);
}
.card2 > div ul {
  display: contents;
}
.card2 > div .box, .card2 > div li, .card2 > div > * {
  width: var(--cardW);
}
.card2 > div:after {
  display: none;
}

.card3 > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --cardW: calc((100% - (var(--gap) * 2)) / 3);
}
.card3 > div ul {
  display: contents;
}
.card3 > div .box, .card3 > div li, .card3 > div > * {
  width: var(--cardW);
}
.card3 > div:after {
  display: none;
}

.card4 > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --cardW: calc((100% - (var(--gap) * 3)) / 4);
}
.card4 > div ul {
  display: contents;
}
.card4 > div .box, .card4 > div li, .card4 > div > * {
  width: var(--cardW);
}
.card4 > div:after {
  display: none;
}

.card5 > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --cardW: calc((100% - (var(--gap) * 4)) / 5);
}
.card5 > div ul {
  display: contents;
}
.card5 > div .box, .card5 > div li, .card5 > div > * {
  width: var(--cardW);
}
.card5 > div:after {
  display: none;
}

.card6 > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  --cardW: calc((100% - (var(--gap) * 5)) / 6);
}
.card6 > div ul {
  display: contents;
}
.card6 > div .box, .card6 > div li, .card6 > div > * {
  width: var(--cardW);
}
.card6 > div:after {
  display: none;
}

.fb_intro .box {
  border-bottom: 1px dashed var(--bdc);
  padding-bottom: 1em;
}
.fb_intro .box + * {
  margin-top: 1em;
}
.fb_intro .box:has(h2) {
  border-bottom: none;
  padding-bottom: 0;
}
.fb_intro h2 {
  border-bottom: var(--line);
  margin-bottom: 0.5em;
}
.fb_intro h3 {
  margin-bottom: 0.5em;
}
.fb_intro h3 i:is(#contents *) {
  display: inline-block;
  font-size: inherit;
  margin-inline: 0 0.5em;
  color: var(--mc);
}
.fb_layer .box:is(#contents *) {
  width: 75%;
}
.fb_layer .box:is(#contents *):nth-child(even) {
  width: 52%;
  order: -1;
  z-index: 1;
  margin-right: -27.5%;
  margin-top: 22.5%;
}
@media (max-width: 640px) {
  .fb_layer .box:is(#contents *):nth-child(even) {
    width: 75%;
    margin-right: -50%;
    margin-top: 40%;
  }
}

[class*=card]:not(.page-shop *) > div {
  display: flex;
  gap: var(--gap);
}
[class*=card]:not(.page-shop *) > div.__center div {
  text-align: center !important;
}
[class*=card]:not(.page-shop *) > div.__under div {
  text-decoration: underline var(--mc) 2px;
  text-underline-offset: 0.4em;
}
[class*=card]:not(.page-shop *) > div article > h3 {
  display: none;
}
[class*=card]:not(.page-shop *) > div img {
  width: 100%;
}
[class*=card]:not(.page-shop *) > div .box:is(#contents *) {
  overflow: visible;
}
[class*=card]:not(.page-shop *) > div .box div {
  flex: 1;
}
@media (max-width: 960px) {
  [class*=card]:not(.page-shop *) > div.bp960 > *, [class*=card]:not(.page-shop *) > div.bp960 ul li {
    width: calc(50% - var(--gap) / 2);
    flex: unset;
  }
}
[class*=card]:not(.page-shop *) > div:is(.__layer *) .box {
  display: grid !important;
}
[class*=card]:not(.page-shop *) > div:is(.__layer *) .box > * {
  grid-area: 1/1;
  z-index: 1;
}
[class*=card]:not(.page-shop *) > div:is(.__layer *) .box figure {
  width: 100%;
}

.cardflex > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}
.cardflex > div.__center {
  text-align: center;
}
.cardflex > div + .cardflex {
  margin-top: var(--gap);
}
.cardflex > div > * {
  flex: 1;
  min-width: unset;
}

.cardfix {
  gap: var(--gap);
  --w: 380px;
  flex-wrap: wrap;
}
.cardfix .box {
  width: var(--w);
}
@media (max-width: 480px) {
  .cardfix .box {
    width: 100%;
  }
}

header#global_header {
  min-width: unset;
  height: unset;
  margin-block: unset;
  margin-inline: auto;
}

:root {
  --PTdis: block;
  --PTAF: var(--btnAF);
  --PTAF: "";
  --PTbottom: 2vmin;
  --PTbottomTAB: calc(var(--btnH) + 1em );
  --headG:calc( 1.5vw - 0.5em);
  --innerPX: calc(var(--gap)*1 );
  --innerPX: calc(var(--headG)*1 );
  --navPX: calc(var(--headG)*1 );
  --itemPX: calc(var(--headG)*1 );
  --logoPX: calc(var(--headG)*1 );
  --itemG: calc(var(--headG)*1 );
  --innerG: calc(var(--headG)*0 );
  --logoH:calc(var(--head) - 1em );
  --head:88px;
  --initHead:calc(var(--head) + 24px );
  --head2:calc(var(--head)*2 );
  --Nhead:calc(var(--head)*-1 );
  --contMT:calc(var(--head)*1);
  --mvMT:calc(var(--head) * -1 );
  --mvImg:calc(100vh - var(--head)*0);
}
@media screen and (max-width: 1080px) {
  :root {
    --mvMT:calc(var(--head) * 0 );
  }
}
@media screen and (max-width: 1080px) {
  :root {
    --innerPI: 1em;
    --logoPX: 0em;
    --headG: 1em;
    --head:80px;
  }
}
@media (max-width: 834px) {
  :root {
    --headG: 0.5em;
    --head:64px;
    --itemG:0.5em;
  }
}
.fixPageTop .h_pagetop {
  --PTdis: block;
}

.noPageTop .h_pagetop {
  --PTdis: none;
}

@media (max-width: 834px) {
  html:has(.h_items.fix-tab) #builingual {
    bottom: calc(var(--btnH) + 1em);
  }
}
@media (max-width: 640px) {
  html:has(.h_items.fix-sp) #builingual {
    bottom: calc(var(--btnH) + 1em);
  }
}
@media (max-width: 834px) {
  #footer .f_copy {
    padding-bottom: calc(var(--btnH) * 1.5) !important;
  }
}

header {
  background-color: var(--un);
  height: unset;
  padding: unset;
  position: relative;
}

.h {
  --navFZ: var(--inh);
  --navFZ: clamp(12px,1vw,16px);
  --navLH: 1.5;
  --navFW: inherit;
  --dropBG:var(--mc);
  --dropC:var(--wh);
  --SPnavBG: var(--header-back);
  --SPnavFZ: clamp(16px,2vw,18px);
  --expandbtnBG:var(--un);
  --expandbtnBF:var(--tx);
  --spanC:var(--cur);
  --bargap:calc(var(--btnH) * .2 );
  --spanW:65%;
  --spanH:2px;
  --menuM:0em 0;
  --menuH:48px;
  --SPulPY:calc(var(--head)*1.25) ;
  --SPnavPY: 1.25em;
  --SPnavPX: .5em;
  --expandbtnH: calc(1em + var(--SPnavPY)*2);
  --trans:0.6s;
  --btnW:212px;
  --btnH:48px;
}
@media (max-width: 1200px) {
  .h .btn {
    min-width: unset;
  }
}
.h:is(#header) .fix-pc {
  --btnFZ:var(--inh);
  font-size: var(--f16);
  right: 1em;
  bottom: 1em;
}
@media screen and (max-width: 1080px) {
  .h:is(#header) .fix-pc {
    right: 0.5em;
    bottom: 0.5em;
    width: unset;
  }
}
@media (max-width: 1560px) {
  .h:is(#header) .h_logo img {
    max-width: calc(var(--logoW) * 0.8);
  }
}
.h:is(#header) .h_menu {
  --bargap:calc(var(--btnH) * .2 );
  width: var(--head);
  height: var(--head);
}
.h:is(#header) .h_inner {
  background-color: var(--innerBG);
  transition: var(--trans);
}
.h:is(#header) .h_inner:not(.home *), .h:is(#header) .h_inner:is(.trans *) {
  background-color: var(--header-back);
}
.h:is(#header) .nav_inner li.expand li > a > small {
  font-size: 1em;
}
.h:is(#header) .h_nav > ul li.expand ul a {
  padding-block: 0.25em;
}
.h:is(#header) .h_nav > ul li.expand ul a:hover {
  filter: var(--btnHover);
}
.h:is(#header) .h_nav > ul li.expand {
  transition-delay: 0s !important;
}

.h {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  margin-inline: auto;
  z-index: 1000;
}
.h a {
  text-decoration: none;
}
.h_inner {
  background-color: var(--header-back);
  background-image: var(--header-backI);
  min-height: var(--head);
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding-block: var(--innerPY);
  padding-inline: var(--innerPX);
  gap: var(--innerG);
}
.h_logo {
  z-index: 100;
  margin-right: auto;
  transform-origin: 0 0;
  transition: none;
  max-width: 60%;
  display: grid;
  place-items: center;
  place-content: center;
  height: 100%;
  padding-inline: var(--logoPX);
}
.h_logo a {
  display: grid;
  place-items: center;
  place-content: center;
}
.h_logo img {
  display: inline-block;
  width: var(--logoW);
  max-width: 100%;
  max-height: var(--logoH);
}
.h_logo img.Expand {
  transform-origin: 0 0;
  transition: 1.2s ease-in;
  scale: 1;
}
.h_logo img.Expand:not(.trans *) {
  scale: 1.6;
}
@media (max-width: 1560px) {
  .h_logo img.Expand:not(.trans *) {
    scale: 1.4;
  }
}
.h_btn:is(a) {
  text-align: center;
  background-color: var(--btnBG);
  color: var(--btnC);
  height: var(--Hbtn);
  min-width: var(--btnW);
  padding-inline: var(--btnP);
  gap: var(--btnG);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: var(--trt);
}
.h_btn:is(a) i {
  font-size: 120%;
}
.h_btn:is(a).h_tel {
  font-family: var(--telFF);
  font-size: 120%;
  letter-spacing: var(--telLS);
  background-color: var(--telBG);
  color: var(--telC);
  line-height: calc(var(--Hbtn) * 0.66);
  font-weight: bold;
}
.h_btn:is(a).h_tel span {
  display: block;
  font-size: 70%;
  line-height: calc(var(--Hbtn) * 0.33);
}
.h_btn:is(a).h_contact {
  background-color: var(--conBG);
  color: var(--conC);
  letter-spacing: var(--conLS);
}
.h_btn:is(a).__mc {
  background-color: var(--mc);
}
.h_btn:is(a).__ac {
  background-color: var(--ac);
}
.h_btn:is(a).__sc {
  background-color: var(--sc);
}
.h_btn:is(a).__bc {
  background-color: var(--bc);
}
.h_btn:is(a).__mcf {
  background-color: var(--mc);
  color: var(--ff);
}
.h_btn:is(a).__acf {
  background-color: var(--ac);
  color: var(--ff);
}
.h_btn:is(a).__scf {
  background-color: var(--sc);
  color: var(--ff);
}
.h_btn:is(a).__bcf {
  background-color: var(--bc);
  color: var(--ff);
}
@media screen and (max-width: 1080px) {
  .h_btn:is(a) {
    min-width: unset;
  }
}
@media (max-width: 834px) {
  .h_btn:is(a) {
    --btnW: unset;
    width: unset;
    min-width: unset;
    flex: 1;
    padding-inline: unset;
  }
}
.h_title {
  position: absolute;
  inset: 0;
  font-size: calc(var(--head) - 2em);
  z-index: 1;
  line-height: var(--head);
  font-family: var(--eng);
  text-align: center;
}
@media (max-width: 834px) {
  .h_title {
    position: unset;
    font-size: calc(var(--head) * 0.4);
  }
}
.h .nopointer {
  cursor: default;
}

.h_pagetop {
  display: var(--PTdis);
  position: fixed;
  bottom: var(--PTbottom);
  right: var(--PTbottom);
  z-index: 1000;
  opacity: 0;
  transition: 0.4s;
}
.h_pagetop:is(.h_items *) {
  position: unset;
  mix-blend-mode: unset;
  margin-top: 0.75em;
}
@media screen and (max-width: 1080px) {
  .h_pagetop {
    mix-blend-mode: unset;
  }
}
@media (max-width: 834px) {
  .h_pagetop {
    bottom: var(--PTbottomTAB);
  }
}
.h_pagetop:is(html:has(.h.trans) *) {
  opacity: 1;
  pointer-events: all;
}
.h_pagetop:is(html:has(.h_items.fix-pc) *) {
  bottom: calc(var(--btnH) * 2 + var(--PTbottom));
}

.h_pagetop a {
  display: block;
  text-align: center;
  line-height: 1;
  text-decoration: none;
  font-weight: var(--btnAFFW);
  font-family: var(--btnIFF);
  font-size: 2em;
}
.h_pagetop a:before {
  background-color: var(--btnBG);
  color: var(--btnC);
  content: var(--PTAF);
  content: var(--PTAF);
  width: 2em;
  height: 2em;
  border-radius: 1000px;
  border: var(--line);
  display: grid;
  place-items: center;
  place-content: center;
  padding-bottom: 0.05em;
  rotate: -90deg;
}
.h_pagetop a img:is(#header *) {
  width: 4em;
  height: 4em;
}

.h_fix {
  order: 1;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  gap: 0.5em;
  transition: 0.4s;
}
@media (max-width: 834px) {
  .h_fix {
    flex-direction: row;
    top: unset;
    bottom: 0;
    right: 0px;
    width: 100%;
    padding: 0.25em 0.25em;
    gap: 0.25em;
  }
}
.h_fix:is(html:has(.f.show) *) {
  opacity: 0;
  pointer-events: none;
}
.h_fix .__w100 {
  width: 100%;
  min-width: unset;
  max-width: unset;
}
.h_fix .__img {
  flex-direction: row;
  gap: 1em;
  justify-content: space-around;
}
.h_fix .__img span {
  display: block;
  color: var(--spanC);
}
@media (max-width: 834px) {
  .h_fix {
    width: 100%;
  }
  .h_fix .__img {
    gap: 1em;
    justify-content: center;
    --btnImg: calc(var(--btnH)* .64);
  }
  .h_fix .__img span {
    display: inline-block;
    margin-right: 0.5em;
  }
  .h_fix > *:not(.__w100) {
    flex: 1;
    min-width: unset;
  }
  .h_fix .btn.__line {
    flex: 0.5;
  }
  .h_fix .iconbtn {
    flex: unset;
    padding-inline: 0.5em;
    scale: 1.3;
  }
  .h_fix .iconbtn i {
    font-size: var(--btnH);
  }
  .h_fix .textlink {
    height: var(--btnH);
    padding-inline: var(--btnPX);
    font-size: var(--btnFZ);
    font-size: var(--f24);
    border: var(--btnBD);
    border-radius: var(--btnRad);
    justify-content: center;
    align-items: center;
    gap: 0;
  }
  .h_fix .textlink > * {
    font-size: 80%;
    margin-right: 0.5em;
  }
}

.h_items {
  order: 1;
  z-index: 1000;
  display: flex;
  align-items: center;
  padding-inline: var(--itemPX);
  gap: var(--itemG);
}
.h_items.fix-right {
  position: fixed;
  top: unset;
  bottom: var(--innerPX);
  right: var(--innerPX);
  flex-direction: column;
  flex-wrap: wrap;
  gap: 0.5em;
  --btnBG:var(--mc);
  --btnC:var(--wh);
  --btnFZ:var(--f22);
  --btnW:55px;
  --btnH:220px;
  --btnG:.25em;
  --btnRad:var(--radhalf);
  --btnJC:center;
  inset: 0 0 0 auto;
  margin: auto;
  flex-direction: column;
  justify-content: center;
}
.h_items.fix-right > * {
  writing-mode: vertical-rl;
}
.h_items.fix-right .btn {
  border-bottom: unset;
}
.h_items.fix-right .btn:after {
  display: none;
}
.h_items.fix-right .iconbtn {
  display: grid;
  place-items: center;
  place-content: center;
  background-color: var(--ac);
  font-size: calc(var(--btnFZ) * 1.1);
  width: var(--btnW);
  height: var(--btnW);
  border-radius: var(--radhalf);
}
.h_items.fix-right .iconbtn:is(a) {
  color: var(--wh);
}
@media (max-width: 834px) {
  .h_items.fix-right {
    --btnH:calc(var(--head) - 10px );
    --btnFZ:var(--f20);
    flex-direction: row;
    border-bottom: unset;
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    width: 100%;
    padding: 0.25em 0.25em;
    gap: 0.25em;
  }
  .h_items.fix-right > * {
    writing-mode: unset;
    flex: 1;
  }
  .h_items.fix-right .iconbtn {
    flex: unset;
    width: var(--btnH) !important;
    height: var(--btnH) !important;
  }
}
@media (max-width: 640px) {
  .h_items.fix-right .textlink {
    line-height: calc(var(--btnH) / 2);
  }
  .h_items.fix-right .textlink > * {
    display: block;
  }
}
.h_items.fix-pc {
  transition: 0.4s;
  padding: unset;
  gap: unset;
  position: fixed;
  bottom: 0;
  right: 0;
  flex-direction: column;
  align-items: flex-end;
  flex-wrap: wrap;
}
@media (max-width: 1320px) {
  .h_items.fix-pc {
    bottom: 0;
  }
}
.h_items.fix-pc .__w100 {
  width: 100%;
  min-width: unset;
  max-width: unset;
}
.h_items.fix-pc .__img {
  flex-direction: row;
  gap: 1em;
  justify-content: space-around;
}
.h_items.fix-pc .__img span {
  display: block;
  color: var(--spanC);
}
@media (max-width: 834px) {
  .h_items.fix-pc {
    width: 100%;
  }
  .h_items.fix-pc .__img {
    gap: 1em;
    justify-content: center;
    --btnImg: calc(var(--btnH)* .64);
  }
  .h_items.fix-pc .__img span {
    display: inline-block;
    margin-right: 0.5em;
  }
  .h_items.fix-pc > *:not(.__w100) {
    flex: 1;
  }
  .h_items.fix-pc .btn.__line {
    flex: 0.5;
  }
  .h_items.fix-pc .iconbtn {
    flex: unset;
    padding-inline: 0.5em;
    scale: 1.3;
  }
  .h_items.fix-pc .iconbtn i {
    font-size: var(--btnH);
  }
  .h_items.fix-pc .h_text {
    flex: unset;
    min-width: 50%;
  }
  .h_items.fix-pc .textlink {
    height: var(--btnH);
    padding-inline: var(--btnPX);
    font-size: var(--btnFZ);
    font-size: var(--f24);
    border: var(--btnBD);
    border-radius: var(--btnRad);
    justify-content: center;
    align-items: center;
    gap: 0;
  }
  .h_items.fix-pc .textlink > * {
    font-size: 80%;
    margin-right: 0.5em;
  }
}
@media (max-width: 640px) {
  .h_items.fix-pc .textlink {
    line-height: calc(var(--btnH) / 2);
  }
  .h_items.fix-pc .textlink > * {
    display: block;
  }
}
@media screen and (max-width: 1080px) {
  .h_items.fix-menu {
    flex-wrap: wrap;
    background-color: var(--header-back);
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    padding: 0.5em;
    gap: 0.5em;
    border-top-left-radius: 10px;
    justify-content: flex-end;
  }
  .h_items.fix-menu .imgBtn {
    flex: unset;
    padding-inline: 0.25em;
  }
  .h_items.fix-menu .btn {
    margin-top: unset;
    border-radius: 10px;
  }
}
@media (max-width: 640px) {
  .h_items.fix-menu {
    --btnImg: 2em;
    border-top-left-radius: 0px;
    width: 100%;
  }
  .h_items.fix-menu .btn.__coupon {
    min-width: 100%;
    padding-inline: 1em;
  }
}
@media (max-width: 960px) {
  .h_items.fix-960 {
    flex-wrap: wrap;
    background-color: var(--header-back);
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    padding: 0.5em;
    gap: 0.5em;
    border-top-left-radius: 10px;
    justify-content: flex-end;
  }
}
@media (max-width: 834px) {
  .h_items.fix-tab {
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    width: 100%;
    padding: 0.25em 0.25em;
    background-color: var(--header-back);
  }
  .h_items.fix-tab .double {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 1em;
  }
  .h_items.fix-tab > * {
    flex: 1;
    min-width: unset;
    padding-inline: 0.5em;
  }
  .h_items.fix-tab .btn.__line {
    flex: 0.5;
  }
  .h_items.fix-tab .iconbtn {
    flex: unset;
    scale: 1.2;
  }
  .h_items.fix-tab .iconbtn i {
    font-size: var(--btnH);
  }
}
@media (max-width: 480px) {
  .h_items.fix-tab .textlink > img, .h_items.fix-tab .btn > img {
    display: none !important;
  }
}
@media (max-width: 640px) {
  .h_items.fix-sp {
    justify-content: flex-end;
    border-bottom: unset;
    border-top: 1px solid #ccc;
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    width: 100%;
    gap: 0em;
    --btnG:.0em;
    background-color: var(--header-back);
  }
  .h_items.fix-sp > * {
    flex: 1;
    min-width: unset;
    --btnFZ:clamp(14px,2vw,18px);
  }
  .h_items.fix-sp > * + a {
    border-left: 1px solid #aaa;
  }
  .h_items.fix-sp .btn.__line {
    flex: 0.5;
  }
  .h_items.fix-sp .iconbtn {
    flex: unset;
    padding-inline: 0.5em;
    scale: 1.3;
  }
  .h_items.fix-sp .iconbtn i {
    font-size: var(--btnH);
  }
  .h_items.fix-sp .h_text {
    flex: unset;
    min-width: 50%;
  }
  .h_items.fix-sp .textlink {
    --btnH: var(--head);
    height: var(--btnH);
    height: 52px;
    text-align: right;
    line-height: calc(var(--btnH) / 4);
    padding-block: 0.5em;
    flex: unset;
    gap: 0;
  }
  .h_items.fix-sp a:has(> img) {
    flex: 0.4;
  }
  .h_items.fix-sp a:has(> img) img {
    margin-inline: auto;
  }
}
@media (max-width: 834px) {
  .h_items.tab-icon a:is(#header *) {
    font-size: 0px;
    aspect-ratio: 1;
  }
  .h_items.tab-icon a:is(#header *) i:before {
    font-size: calc(var(--head) / 2);
  }
}
.h_items .h_tel {
  font-size: var(--btnFZ);
  letter-spacing: var(--btnLS);
  display: flex;
  align-items: center;
  gap: 1vmin;
}
.h_items .h_tel img {
  height: var(--btnI) !important;
}
@media (max-width: 960px) {
  .h_items.noText-960 {
    padding-inline: 0em;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
  }
  .h_items.noText-960 a {
    display: block;
    font-size: 0;
    margin-left: unset !important;
  }
  .h_items.noText-960 a i:is(#header *) {
    font-size: var(--btnH) !important;
  }
  .h_items.noText-960 .btn {
    gap: 2px !important;
  }
  .h_items.noText-960 .btn i {
    font-size: 20px;
  }
}
@media (max-width: 834px) {
  .h_items.noText-960 {
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    width: 100%;
    background-color: #000;
    color: #fff;
  }
  .h_items.noText-960 a {
    flex: 1;
    display: grid;
    place-items: center;
    place-content: center;
    padding-block: 8px;
  }
}

.h_nav {
  font-size: var(--navFZ);
  line-height: var(--navLH);
  font-weight: var(--navFW);
  --liPY:calc(var(--headG)/1 );
  --aPY:var(--un);
  --aPX:var(--un);
  --spanFZ:75%;
  --spanFW:700;
  --spanFF:var(--eng);
  --navTRT:var(--trans);
  z-index: 1;
  padding-inline: var(--navPX);
}
.h_nav i {
  font-size: var(--f48) !important;
  line-height: 1;
}
.h_nav.a-chev > ul > li > a::after {
  content: "\f105";
  margin-inline-start: 0.25em;
  font-family: var(--icon);
  font-weight: 900;
  color: var(--ac);
}
.h_nav::-webkit-scrollbar {
  width: 0px;
}
@media screen and (max-width: 1080px) {
  .h_nav {
    display: none;
  }
}
.h_nav > ul {
  display: flex;
  justify-content: flex-end;
  height: 100%;
}
.h_nav > ul > li {
  position: relative;
  padding-inline: var(--liPY);
}
.h_nav > ul > li.__sub {
  display: none;
}
.h_nav > ul > li:has(span) {
  --liPY:calc(var(--headG)/2);
}
.h_nav > ul > li:has(span) > a:is(#header *) {
  --aPY:calc(var(--headG)/2);
  display: grid;
  place-items: center;
  place-content: center;
}
.h_nav > ul > li:has(span) span {
  transition: var(--trt);
  color: var(--spanC);
  font-size: var(--spanFZ);
  font-weight: var(--spanFW);
  font-family: var(--Eng);
}
.h_nav > ul > li:has(span) span:is(.span-uppercase *) {
  text-transform: uppercase;
}
.h_nav > ul a {
  padding-inline: var(--aPY);
  padding-block: var(--aPX);
  transition: var(--navTRT);
  text-align: left;
}
.h_nav > ul li.expand {
  --size:7.5px;
  will-change: transform;
}
.h_nav > ul li.expand::after {
  content: "";
  display: inline-block;
  font-weight: 900;
  font-family: var(--icon);
  vertical-align: sub;
  width: var(--size);
  height: var(--size);
  background-color: var(--cur);
  opacity: 0.7;
  position: absolute;
  z-index: 1;
  top: calc(100% + var(--size) * 1);
  left: 50%;
  translate: -50%;
  transition: 0.4s;
  clip-path: polygon(0 0, 100% 0, 50% 80%);
}
@media screen and (max-width: 1080px) {
  .h_nav > ul li.expand::after {
    display: none;
  }
}
.h_nav > ul li.expand ul {
  position: absolute;
  top: 100%;
  left: 50%;
  translate: -50% 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
  scale: 0 1;
  opacity: 0;
  background-color: var(--dropBG);
  transition: var(--navTRT);
}
.h_nav > ul li.expand ul li {
  position: relative;
  height: 3em;
}
.h_nav > ul li.expand ul a {
  width: 100%;
  margin-inline: auto;
  padding-inline: 1.5em;
  white-space: nowrap;
}
.h_nav > ul li.expand ul a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: var(--dropC);
}
.h_nav > ul li.expand .expandbtn {
  display: none;
}
.h_nav .focus_trap {
  display: none;
}
.h_nav li.expand:hover ul {
  pointer-events: all;
  scale: 1 1;
  opacity: 1;
}
.h_nav li.expand ul:hover {
  pointer-events: all;
  scale: 1 1;
}
.h_nav li.expand ul:has(a:focus) {
  scale: 1 1;
  opacity: 1;
}

.h_menu {
  display: none;
  --dotW:calc(var(--btnH) * .125 );
  --menuBG:var(--un);
  --spanR:unset;
  --menuRad:0px;
  place-items: center;
  width: var(--menuH);
  height: var(--menuH);
  margin-inline: var(--menuM);
  border-radius: var(--menuRad);
  flex-shrink: 0;
  order: 2;
  z-index: 1000;
  transition: 0.4s;
  background-color: var(--menuBG);
  position: relative;
  aspect-ratio: 1;
  --btnBG:var(--mc);
}
@media screen and (max-width: 1080px) {
  .h_menu {
    display: grid;
  }
}
.h_menu.burger > span {
  grid-area: 1/1;
  width: var(--spanW);
  height: var(--spanH);
  background-color: var(--spanC);
  border-radius: var(--spanR);
  transition: 0.4s;
}
.h_menu.burger .bar1 {
  translate: 0 calc(-1 * var(--bargap));
}
.h_menu.burger .bar3 {
  translate: 0 var(--bargap);
}
.h_menu.burger .bar2 {
  translate: 0 0px;
}
.h_menu.burger .bar2.tate {
  rotate: 90deg;
}
.h_menu.burger:hover > span {
  scale: 1.03;
}
.h_menu.burger.active .bar2 {
  scale: 1 1;
}
.h_menu.burger.active .bar2.tate {
  scale: 0 1;
}
.h_menu.burger.active .bar1 {
  translate: 0;
  rotate: 40deg;
}
.h_menu.burger.active .bar2 {
  scale: 0;
}
.h_menu.burger.active .bar3 {
  translate: 0;
  rotate: -40deg;
}
.h_menu.dots > span {
  grid-area: 1/1;
  width: var(--dotW);
  aspect-ratio: 1;
  background-color: var(--spanC);
  transition: 0.2s;
  border-radius: 999px;
}
.h_menu.dots > span:is(:has(.char) *) {
  transform: translateY(calc(var(--bargap) * -0.5));
}
.h_menu.dots .char {
  width: var(--un);
  aspect-ratio: unset;
  background-color: var(--un);
  border-radius: unset;
  transition: 0.2s;
  translate: 0 calc(var(--bargap) * 1.5);
  font-family: var(--hff);
  font-size: 12px;
  color: var(--spanC);
}
.h_menu.dots .dot1 {
  translate: calc(-1 * var(--bargap)) 0;
  transform-origin: left;
}
.h_menu.dots .dot2 {
  translate: 0 0px;
}
.h_menu.dots .dot3 {
  translate: var(--bargap) 0;
  transform-origin: right;
}
.h_menu.dots .bar2 {
  width: calc(var(--bargap) * 2 + var(--dotW));
  height: var(--dotW);
  scale: 1 0;
}
.h_menu.dots .bar2.tate {
  rotate: 90deg;
}
.h_menu.dots .bar2.tate:is(:has(.char) *) {
  transform: translateX(calc(var(--bargap) * -0.5));
}
.h_menu.dots:hover .bar2 {
  scale: 1 1;
  opacity: 1;
}
.h_menu.dots:hover .char {
  opacity: 0;
}
.h_menu.dots:hover:is(#header :has(.char)) > * {
  transform: none;
}
.h_menu.dots.active:is(#header :has(.char)) > * {
  transform: none;
}
.h_menu.dots.active .dot2 {
  scale: 0;
}
.h_menu.dots.active .bar2 {
  scale: 1 1;
}
.h_menu.dots.active .bar2.tate {
  scale: 0 1;
}
.h_menu.dots.active .char {
  opacity: 0;
}
.h_menu:focus {
  outline-color: transparent;
}
.h_menu:active {
  scale: 1.12;
}

.nav {
  font-weight: 500;
  --spanC: var(--mc);
  --spanFZ: var(--inh);
  --spanFW: 700;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  visibility: hidden;
  pointer-events: none;
}
.nav_inner > ul a:has(i) {
  background: unset !important;
}
.nav_inner > ul a:has(i) i {
  font-size: var(--f48);
}
.nav li {
  transition: 0.4s;
  filter: blur(var(--bw));
  opacity: 0;
  translate: 0 var(--bw);
}
.nav li:is(.nav.show li:nth-child(1)) {
  transition-delay: 0s;
}
.nav li:is(.nav.show li:nth-child(2)) {
  transition-delay: 0.05s;
}
.nav li:is(.nav.show li:nth-child(3)) {
  transition-delay: 0.1s;
}
.nav li:is(.nav.show li:nth-child(4)) {
  transition-delay: 0.15s;
}
.nav li:is(.nav.show li:nth-child(5)) {
  transition-delay: 0.2s;
}
.nav li:is(.nav.show li:nth-child(6)) {
  transition-delay: 0.25s;
}
.nav li:is(.nav.show li:nth-child(7)) {
  transition-delay: 0.3s;
}
.nav li:is(.nav.show li:nth-child(8)) {
  transition-delay: 0.35s;
}
.nav li:is(.nav.show li:nth-child(9)) {
  transition-delay: 0.4s;
}
.nav li:is(.nav.show li:nth-child(10)) {
  transition-delay: 0.45s;
}
.nav li:is(.nav.show li:nth-child(11)) {
  transition-delay: 0.5s;
}
.nav li:is(.nav.show li:nth-child(12)) {
  transition-delay: 0.55s;
}
.nav li:is(.nav.show li:nth-child(13)) {
  transition-delay: 0.6s;
}
.nav li:is(.nav.show li:nth-child(14)) {
  transition-delay: 0.65s;
}
.nav li:is(.nav.show li:nth-child(15)) {
  transition-delay: 0.7s;
}
.nav.show {
  visibility: visible;
  pointer-events: all;
}
.nav.show li {
  opacity: 1;
  --bw:0px;
}
.nav .focus_trap {
  width: 100%;
  background-color: rgba(255, 255, 255, 0.5333333333);
  z-index: 0;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
.nav .focus_trap:is(.show .focus_trap) {
  opacity: 1;
  visibility: visible;
}
.nav .focus_trap.__cross {
  background-image: linear-gradient(-45deg, transparent, transparent calc(50% - 1px), var(--bk) 50%, transparent calc(50% + 1px)), linear-gradient(45deg, transparent, transparent calc(50% - 1px), var(--bk) 50%, transparent calc(50% + 1px));
  position: fixed;
  top: 0;
  right: 0;
  transform: none !important;
  width: calc(100vw - var(--head));
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.4);
  visibility: hidden;
  opacity: 0;
  transition: 0.4s;
}
.nav .focus_trap.__cross:is(.active *) {
  visibility: visible;
  opacity: 1;
}
.nav_inner {
  height: 100%;
  z-index: 1;
  width: 100%;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  transition: var(--navTRT);
  display: grid;
}
.nav_inner::-webkit-scrollbar {
  width: 0px;
}
.nav_inner > * {
  grid-area: 1/1;
  height: calc(100% + 0px);
}
.nav_inner > ul {
  background: var(--SPnavBG);
  position: relative;
  z-index: 1;
  transition: var(--navTRT);
  padding: calc(var(--inline) * 1);
  padding-block: var(--SPulPY);
  width: 50%;
  margin-left: auto;
  line-height: 1;
  opacity: 0;
  visibility: hidden;
  overflow-y: scroll;
  height: calc(100% + 1px);
}
.nav_inner > ul::-webkit-scrollbar {
  width: 0px;
}
@media screen and (max-width: 1080px) {
  .nav_inner > ul {
    width: 66%;
  }
}
@media (max-width: 834px) {
  .nav_inner > ul {
    width: 100%;
  }
}
.nav_inner > ul.show {
  opacity: 1;
  visibility: visible;
}
.nav_inner > ul > li {
  display: block;
  height: fit-content;
}
.nav_inner > ul > li.__sub {
  display: none;
  visibility: hidden;
}
.nav_inner > ul > li.lastitem {
  display: none;
}
.nav_inner > ul a {
  transition: 0.4s;
  font-size: var(--SPnavFZ);
  padding: var(--SPnavPY) var(--SPnavPX);
  display: flex;
  align-items: baseline;
  gap: 1em;
  margin-inline: auto;
}
.nav_inner > ul a span {
  color: var(--spanC);
  font-weight: var(--spanFW);
  font-size: var(--spanFZ);
  margin-inline-end: 0.75em;
  font-family: var(--cor);
}
.nav_inner > ul a.expandlink {
  flex: 1;
}
.nav_inner > ul a.nopointer {
  cursor: pointer;
}
.nav_inner li.expand {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.nav_inner li.expand:has(.expandbtn) {
  padding-right: var(--h);
}
.nav_inner li.expand::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background-color: currentColor;
  position: absolute;
  top: 100%;
  left: 50%;
  translate: -50%;
  transition: 0.4s;
  clip-path: polygon(0 0, 100% 0, 50% 80%);
  display: none;
}
.nav_inner li.expand > a {
  width: 100%;
}
.nav_inner li.expand ul {
  width: 100%;
  overflow: hidden;
  transition: 0.6s;
}
.nav_inner li.expand li {
  padding: unset;
  scale: 1;
  transition: 0.4s;
  width: 100%;
  margin: unset;
  height: unset;
  overflow: hidden;
  display: grid;
  grid-template-rows: 0fr;
}
.nav_inner li.expand li > a {
  padding-block: 0;
  width: 100%;
}
.nav_inner li.expand li > a:is(#header *) {
  transition: 0.4s;
}
.nav_inner li.expand li:is(ul.show > *) {
  grid-template-rows: 1fr;
}
.nav_inner li.expand li:is(ul.show > *) a {
  padding-block: var(--SPnavPY);
}
.nav_inner .expandbtn {
  position: absolute;
  right: 0;
  top: 0;
  background-color: var(--expandbtnBG);
  width: var(--expandbtnH);
  height: var(--expandbtnH);
  display: grid;
  place-items: center;
  align-self: center;
  --bargap:3px;
}
.nav_inner .expandbtn:after, .nav_inner .expandbtn:before {
  content: "";
  display: block;
  grid-area: 1/1;
  width: 33%;
  height: 2px;
  background-color: var(--expandbtnBF);
  transition: 0.4s;
}
.nav_inner .expandbtn:after {
  rotate: 90deg;
}
.nav_inner .expandbtn:focus {
  outline-color: transparent;
}
.nav_inner .expandbtn:active {
  scale: 1.05;
}
.nav_inner .expandbtn.active:after {
  rotate: 360deg;
}

footer#global_footer {
  min-width: unset;
  height: unset;
  margin-block: unset;
  margin-inline: auto;
  position: relative;
}
footer#global_footer:is(html:has(.bgFix) *) {
  z-index: 1;
}

#footer .li-bdR li {
  padding-left: unset;
  margin-right: 1em;
}
#footer address {
  display: inline-block;
}
#footer .f_left > * + * {
  margin-top: 1.5em;
}
#footer .f_main {
  gap: 2em var(--gap);
}
#footer .f_main > * {
  margin-top: unset;
}
@media (max-width: 1680px) {
  #footer .f_main {
    padding-bottom: 180px;
  }
}
@media (max-width: 960px) {
  #footer .f_main {
    padding-bottom: var(--block);
  }
  #footer .f_main > *:is(#footer *) {
    flex-basis: 100%;
  }
}
#footer .f_main .f_copy {
  width: unset;
  margin-left: auto;
}
#footer .f_main .f_nav {
  width: 100%;
  --gap:1em;
  flex-direction: row;
  flex-wrap: wrap;
}
#footer .f_main .f_nav ul {
  gap: 0.5em 0em;
}
#footer .f_main .f_map {
  flex: 1;
}
#footer .f_info {
  padding-right: 1em;
}
@media (max-width: 960px) {
  #footer .f_info {
    padding-right: unset;
  }
}
#footer .f_info > * + * {
  margin-top: 2em;
}
#footer .f_info p:has(> a) {
  gap: 0px;
  justify-content: flex-start;
}
#footer .f_info p:has(> a) .btn {
  min-width: 10em;
  max-width: 50%;
  flex: 1;
  letter-spacing: unset;
  gap: 0.25em;
}

.f {
  position: relative;
  overflow: hidden;
}
.f > * {
  position: relative;
  z-index: 1;
}
.f .radius, .f .radius2, .f .radhalf {
  overflow: hidden;
}
.f * {
  max-width: 100%;
}
.f a:is(a) {
  text-decoration: none;
}
.f .__w100:is(#footer *) {
  flex: unset;
  width: 100%;
}
.f_main {
  padding-block: var(--wrapperPY);
  display: flex;
  flex-wrap: wrap;
}
.f .f_row {
  display: flex;
  padding: 1.5%;
  align-items: center;
  justify-content: space-evenly;
}
@media (max-width: 834px) {
  .f .f_row {
    flex-direction: column;
    padding: var(--inline);
  }
}
.f .f_column {
  display: flex;
  flex-direction: column;
}
.f .f_column > .f_column {
  padding-block: var(--block5);
}
@media (max-width: 960px) {
  .f .f_column > .f_column {
    padding-inline: var(--inline);
  }
}
.f .f_pagetop {
  position: absolute;
  inset: 0 0 auto 0;
  margin: auto;
  width: 5em;
  height: 5em;
  font-size: var(--f20);
  background-color: var(--ac);
  color: #fff;
  z-index: 100;
  text-align: center;
  align-content: center;
  border-radius: 1000px;
  line-height: 1;
}
.f .f_pagetop:before {
  content: var(--btnAF);
  font-family: var(--icon);
  font-weight: 900;
  background-color: unset;
  display: block;
  rotate: -90deg;
  margin-top: -0.25em;
}
.f .f_pagetop:hover {
  scale: 1.04;
}
.f_info {
  display: block;
}
.f_copy:is(#footer *).__w100 {
  width: 100%;
  flex: unset;
}
.f_copy:is(#footer *).__left {
  text-align: left;
}
.f_copy:is(#footer *).__center {
  text-align: center;
}
.f_copy:is(#footer *).__right {
  text-align: right;
  margin-left: auto;
}
.f_nav:has(.expand) li.expand {
  padding-right: unset;
}
.f_nav:has(.expand) li.expand > a {
  display: inline-block;
  margin-inline: 0 1.5em;
}
.f_nav:has(.expand) li.expand > a[tabindex] {
  display: none;
}
.f_nav:has(.expand) li.expand ul {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 1.25em 0em;
}
.f_nav {
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.f_nav ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25em 0em;
}
.f_nav ul:is(.__center *) {
  justify-content: center;
}
.f_nav ul:is(.__right *) {
  justify-content: flex-end;
}
.f_nav li {
  padding-inline: 0 1.5em;
}
.f_nav li > span {
  pointer-events: none;
  background-image: none;
  color: var(--sc50);
  font-weight: 700;
}
.f_nav li > span i {
  margin-inline: 0.5em;
}
.f_nav li > span:before {
  display: none;
}
.f_nav li > span:after {
  content: "\f105";
  background-color: unset;
}
.f_nav a {
  display: block;
}
.f_nav a.nopointer {
  pointer-events: none;
  background-image: none;
  color: #888;
}
.f_nav a.nopointer i {
  margin-inline: 0.5em;
}
.f_nav a.nopointer:before {
  display: none;
}
.f_nav a.nopointer:after {
  content: "\f105";
  background-color: unset;
  margin-left: 0.25em;
}
.f .f_tbl {
  font-size: clamp(12px, 1.4vw, 16px);
  font-weight: bold;
  line-height: 1.25;
}
.f .f_tbl tr + tr {
  border-top: 1px solid #ddd;
}
.f .f_tbl td {
  text-align: center;
  padding: 20px;
  border: none;
}
@media (max-width: 480px) {
  .f .f_tbl td {
    padding: 10px;
  }
}
.f .f_tbl tr:not(:first-of-type) td:not(:first-of-type) {
  scale: 1.8;
}
.f .f_tbl .marks td {
  color: var(--mc);
}
.f_logo {
  display: block;
  width: fit-content;
}
.f_logo img {
  display: inline-block;
  max-width: var(--logoW);
  width: 100%;
}
.f_map:is(#footer *) {
  margin: unset;
  overflow: hidden;
}
.f_map:is(#footer *) iframe {
  display: block;
  width: 100%;
  height: 100%;
}
.f_nav-column {
  display: flex;
  gap: 1em 6vmin;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.f_nav-column.__left {
  text-align: left;
}
.f_nav-column.__right {
  text-align: right;
  justify-content: flex-end;
}
.f_nav-column ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 1em;
  line-height: 1.5;
}
.f_nav-column ul a {
  display: block;
}
.f_nav-column ul li span {
  color: #aaa;
}
.f_nav-column ul.borderL {
  border-left: 1px dashed #aaa;
}
.f_nav-column .nopointer {
  background-image: unset;
}
.f_nav-column .nopointer::after {
  margin-left: 0.5em;
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  transition: 0.4s;
  clip-path: polygon(0 20%, 100% 20%, 50% 90%);
}
.f_bottom, .f_top {
  display: flex;
  flex-wrap: wrap;
}

header {
  z-index: 10;
}

.layout {
  justify-content: center;
}

main {
  display: block;
  width: calc(var(--base) + var(--inline2));
  position: relative;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  padding-inline: var(--inline);
}
main:is(.blog *) {
  margin-inline: unset;
}

html.blog aside {
  min-width: 320px;
}
@media (max-width: 960px) {
  html.blog aside {
    min-width: 100%;
  }
}

html.blog.article article.blog {
  margin-top: var(--gap);
}
html.blog.article article.blog + * {
  margin-top: var(--gap);
}

main > section {
  width: unset;
  margin-inline: auto;
  position: relative;
}

body {
  opacity: 0;
  animation: fadeIn 0.5s ease-in forwards;
}
body:is(.home *) {
  animation-delay: 0.25s;
}

.layout {
  margin-top: var(--head);
}
.layout .slick-arrow:before {
  display: none;
}

article.blog h1, article.blog h2 {
  border-bottom: var(--line);
}

div.map iframe {
  height: var(--mapH);
}

.part_image {
  --imgPer: 0.5;
  --imgW: 50%;
}
.part_image.AIU > div {
  align-items: unset;
}
.part_image.AIC > div {
  align-items: center;
}
.part_image.AIS > div {
  align-items: flex-start;
}
.part_image.AIE > div {
  align-items: flex-end;
}

.part_media.__visible .slick-list {
  overflow: visible;
}

.part_image picture {
  width: var(--imgW);
}
@media (max-width: 834px) {
  .part_image picture {
    order: 1;
    max-height: 50vh;
  }
}
.part_image > div {
  gap: var(--gap);
  flex-wrap: wrap;
}
.part_image > div > div {
  flex: 1;
}
@media (max-width: 834px) {
  .part_image > div > * {
    flex-basis: 100%;
  }
}

.img100 {
  --imgPer: 1;
  --imgW: 100%;
}

.img95 {
  --imgPer: 0.95;
  --imgW: 95%;
}

.img90 {
  --imgPer: 0.9;
  --imgW: 90%;
}

.img875 {
  --imgPer: 0.87;
  --imgW: 87.5%;
}

.img85 {
  --imgPer: 0.85;
  --imgW: 85%;
}

.img80 {
  --imgPer: 0.8;
  --imgW: 80%;
}

.img75 {
  --imgPer: 0.75;
  --imgW: 75%;
}

.img70 {
  --imgPer: 0.7;
  --imgW: 70%;
}

.img66 {
  --imgPer: 0.66;
  --imgW: 66%;
}

.img65 {
  --imgPer: 0.65;
  --imgW: 65%;
}

.img60 {
  --imgPer: 0.6;
  --imgW: 60%;
}

.img55 {
  --imgPer: 0.55;
  --imgW: 55%;
}

.img50 {
  --imgPer: 0.5;
  --imgW: 50%;
}

.img45 {
  --imgPer: 0.45;
  --imgW: 45%;
}

.img40 {
  --imgPer: 0.4;
  --imgW: 40%;
}

.img35 {
  --imgPer: 0.35;
  --imgW: 35%;
}

.img33 {
  --imgPer: 0.33;
  --imgW: 33%;
}

.img30 {
  --imgPer: 0.3;
  --imgW: 30%;
}

.img25 {
  --imgPer: 0.2;
  --imgW: 25%;
}

.img20 {
  --imgPer: 0.2;
  --imgW: 20%;
}

.img10 {
  --imgPer: 0.1;
  --imgW: 10%;
}

.part_flexbox div.box {
  display: block;
}
.part_flexbox div.box > *, .part_flexbox div.box img {
  width: 100%;
}
@media (max-width: 480px) {
  .part_flexbox div.box {
    width: 100%;
  }
}

.part_flexbox.__arrow .box:after {
  content: "\f105";
  position: absolute;
  right: 0;
  bottom: 50%;
  width: 2em;
  height: 2em;
  border: 2px solid currentColor;
  background-color: #fff;
  border-radius: 1000px;
  color: var(--sc);
  text-align: center;
  line-height: 1.8;
  -webkit-text-stroke: 1px var(--cur);
}
.part_flexbox.__arrow .box:last-child::after {
  display: none;
}
@media (max-width: 834px) {
  .part_flexbox.txMC60 .box {
    flex-basis: 100%;
  }
}

body {
  --bodyBG:var(--mc15);
  --start:40%;
  --end:60%;
  background: linear-gradient(-80deg, var(--tr) var(--start), var(--bodyBG) var(--start), var(--bodyBG) var(--end), var(--tr) var(--end)) no-repeat 70% 0/170% 100%;
}

:is(p:not(:has(> a)), h1, h2, h3, h4, h5) time {
  font-size: var(--bodyFZ);
  color: var(--ac);
  display: block;
  margin-bottom: 0.5em;
  padding: 4px;
  border-radius: 4px;
  display: inline-block;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5) u {
  --bdc:var(--mc);
  text-decoration: underline;
  text-decoration-color: var(--bdc);
  text-decoration-thickness: 4px;
  text-decoration-skip-ink: none;
  text-underline-offset: 1.6rem;
}
@media (max-width: 1680px) {
  :is(p:not(:has(> a)), h1, h2, h3, h4, h5) u {
    text-underline-offset: 0.8rem;
  }
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5) p {
  text-align: right;
  font-size: var(--f20);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5) i[class*=la] {
  display: inline-block;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5) i[class*=la]:before {
  font-family: var(--icon);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) {
  font-size: var(--PFZ);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) i {
  font-family: var(--subFF);
  font-weight: var(--subFW);
  word-break: break-word;
  letter-spacing: 0em;
  font-style: normal;
  color: var(--subC);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) i:is(.txwh), :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) i:is(.txwh *) {
  color: var(--wh);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) .la, :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) .las {
  margin-inline: var(--btnG);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(em) em {
  font-family: var(--subFF);
  font-weight: var(--subFW);
  word-break: break-word;
  letter-spacing: 0em;
  font-size: var(--bigFZ);
  line-height: 1;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(em) em:is(.txwh), :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(em) em:is(.txwh *) {
  color: var(--wh);
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(> img) {
  --imgW:calc(var(--bodyFZ)*3 );
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(> img) img:is(#contents *, #footer *) {
  display: inline-block;
  width: var(--imgW);
  height: var(--imgW);
  margin-right: 0.3em;
  vertical-align: text-bottom;
}
@media (max-width: 834px) {
  :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(> img) img:is(#contents *, #footer *) {
    width: calc(var(--bodyFZ) * 2);
  }
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small {
  color: var(--subC);
  font-weight: var(--subFW);
  font-family: var(--subFF);
  font-size: var(--PFZ);
  letter-spacing: 0.025em;
  text-align: inherit;
  display: block;
  --bdc:var(--sc);
  --barGap:1em;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:is(.title1 *) {
  margin-bottom: unset;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:is(.txwh *) {
  --bdc:#fff;
}

.i-overMC, .i-overAC {
  --c:var(--mc);
}
.i-overMC i, .i-overAC i {
  background-color: #fff;
  padding: 0.5em;
  padding-top: 0.675em;
}
.i-overMC i:is(.HI-bg *), .i-overAC i:is(.HI-bg *) {
  background-color: unset;
}
.i-overMC i:after, .i-overAC i:after {
  content: "";
  width: 2em;
  height: 2em;
  background: radial-gradient(closest-side, var(--c) 25%, transparent) no-repeat center/100% 100%;
  position: absolute;
  top: 0%;
  left: 0em;
  mix-blend-mode: hard-light;
}
.i-overAC {
  --c:var(--ac);
}

.title1 {
  --c:var(--ac);
}
.title1 i:after {
  content: "";
  width: 2em;
  height: 2em;
  background: radial-gradient(closest-side, var(--c) 25%, transparent) no-repeat center/100% 100%;
  position: absolute;
  top: -0.5em;
  left: -0.5em;
  z-index: -1;
}

.i-blurMC, .i-blurAC {
  --c:var(--mc);
}
.i-blurMC i:after, .i-blurAC i:after {
  content: "";
  width: 2em;
  height: 2em;
  background: radial-gradient(closest-side, var(--c) 25%, transparent) no-repeat center/100% 100%;
  position: absolute;
  top: -0.5em;
  left: -0.5em;
  z-index: -1;
}
.i-blurAC {
  --c:var(--ac);
}

:where(section, form) div > article > :where(h1, h2, h3, h4, h5) + div {
  margin-top: 1.5em;
}

.cardfix {
  --w: var(--btnW);
}

:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div img {
  margin-bottom: 1em;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div i {
  font-size: 2em;
  margin-right: 0.25em;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div figure > a:is(#contents *) {
  width: 100%;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div em {
  font-size: var(--bigFZ);
  line-height: 1;
  padding-inline: 8px;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:has(.veil), :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:is(.fancybox *) {
  overflow: visible;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:has(.veil) .im img, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:is(.fancybox *) .im img {
  transition: 0.4s;
  will-change: scale;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:has(.veil):hover img, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:is(.fancybox *):hover img {
  scale: 1.04;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div.fancybox img {
  transition: 0.6s;
  will-change: scale;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div.fancybox .box:hover img {
  scale: 1.04;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box {
  margin-top: unset;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box article {
  display: flex;
  flex-direction: column;
  gap: 1em;
  height: 100%;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box article > div:empty {
  display: none;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box article > a {
  color: inherit;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box article > a > div:empty {
  display: none;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box div {
  flex: unset;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div .box:has(.veil):hover img {
  scale: 1.03;
  opacity: 0.9;
}
@media (max-width: 834px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div > * {
    flex: 0 0 calc(50% - var(--gap) / 2);
  }
}
@media (max-width: 480px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div > *:not(.__scrollX *) {
    flex: 0 0 100%;
  }
}

:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) + [class*=card] {
  margin-top: var(--gap);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__headFirst .box {
  padding-top: calc(var(--h3FZ) * 2 * var(--hlh));
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__headFirst .box :is(h1, h2, h3, p) {
  font-size: var(--h3FZ);
  position: absolute;
  top: 0;
  left: 0;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:is(#contents *) {
  overflow: hidden;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:has(a), :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:is(.fancybox *) {
  transition: var(--btnTR);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:has(a) > div, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:is(.fancybox *) > div {
  pointer-events: none;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:has(a) img, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:is(.fancybox *) img {
  transition: var(--btnTR);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:has(a):hover img, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box:is(.fancybox *):hover img {
  scale: 1.04;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div img:is(#contents *) {
  height: 100% !important;
  object-fit: cover;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box > div {
  padding: 9% 6%;
  align-content: end;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div .box > div:is(.txMC60 *) {
  background-color: var(--mc60);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon {
  --w:6em;
  text-align: center;
}
@media (max-width: 640px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon {
    --w:4em;
  }
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon figure {
  min-height: var(--w);
  align-content: center;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon img:is(#contents *) {
  max-width: var(--w);
  max-height: var(--w);
  margin: auto;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon .box {
  padding: 1.5em 1em;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon .box a {
  font-family: var(--Eng);
  font-size: var(--PFZ);
  font-weight: 700;
  color: var(--ac);
  line-height: 2;
  padding-inline: 1em;
  display: inline-block;
  will-change: scale;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon .box a:hover {
  scale: 1.1;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).box-wh .box img {
  background-color: var(--mc10);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).box-wh .box article {
  gap: 1em;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).box-wh .box article > div {
  padding: 0em;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).box-wh .box img:is(#contents *) {
  transform-origin: bottom;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__row article {
  flex-direction: row;
  justify-content: space-between;
}
@media (max-width: 480px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__row article {
    flex-direction: column;
  }
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__row .im {
  max-width: 300px;
}
@media (max-width: 480px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__row .im {
    max-width: 100%;
  }
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 h1, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 h2, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 h3, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 h4, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 h5, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 p {
  font-weight: 700;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 .im {
  order: 1;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 .box article:has(.veil) {
  transition: 0.4s !important;
  will-change: filter;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 .box article:has(.veil):hover {
  filter: var(--btnHover);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 .box {
  padding: 1.5em;
}
@media (max-width: 960px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).i-o1 .box {
    padding: 0.75em;
  }
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix):has(.btn.__boxSize) article > div {
  height: 100%;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix):has(.btn.__boxSize) .__boxSize {
  height: 100%;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix):where(.home *) > div {
  justify-content: center;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift {
  align-items: flex-start;
  justify-content: unset;
  --shift:2em;
  --shift2:calc(var(--shift)*2);
  --Nshift:calc(var(--shift)*-1);
  --Nshift2:calc(var(--shift)*-2);
  gap: var(--gap);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift article {
  gap: 0;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift .box:is(#contents *) {
  overflow: visible;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift .box article {
  gap: 0;
  height: unset;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift .box:nth-child(3n+1) {
  margin-block: 0 var(--shift2);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift .box:nth-child(3n+2) {
  margin-block: var(--shift) var(--shift);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift .box:nth-child(3n) {
  margin-block: var(--shift2) 0;
}
@media (max-width: 834px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__shift .box:nth-child(n) {
    margin-block: 0;
  }
}

.form_wrap.form_03 dt {
  font-weight: 700;
}

.form_wrap.form_01 {
  --p: .125em;
  position: relative;
  --bdw:1px;
}
.form_wrap.form_01 dt {
  width: 25%;
}
.form_wrap.form_01 dd {
  width: 75%;
}
.form_wrap.form_01 dl:has(dd:empty) dt:is(#contents dt) {
  width: 100% !important;
  background-color: var(--sc20);
  padding-inline: 0.5em;
  margin-bottom: 0.5em;
}
.form_wrap.form_01 dl:has(dd:empty) dd {
  display: none;
}
.form_wrap.form_01 dl:has(.btn, iframe, img) dt {
  display: none;
}
.form_wrap.form_01 > br {
  display: none;
}
.form_wrap.form_01.noscr {
  overflow: unset;
  height: unset !important;
  max-height: unset !important;
}
.form_wrap.form_01 dt {
  width: 5em;
  min-width: var(--dtMW);
}
.form_wrap.form_01 a:not(.btn) {
  text-decoration: underline;
  color: var(--mc);
}
.form_wrap.form_01 dl {
  padding: 0;
  margin: 0;
  margin-bottom: calc(var(--p) * 0);
  display: flex;
  background-color: unset;
}
.form_wrap.form_01 dl > * {
  padding-top: 0;
}
.form_wrap.form_01 dl:last-child {
  border-bottom: none;
}
@media (max-width: 834px) {
  .form_wrap.form_01 dl:last-of-type dt {
    border-bottom: none;
  }
}
.form_wrap.form_01 dl:not(:has(dd)) {
  border-bottom: none;
}
.form_wrap.form_01 dl:not(:has(dd)) dt {
  align-items: flex-end;
  font-size: 14px;
}
@media (max-width: 640px) {
  .form_wrap.form_01 dl dt {
    margin-bottom: unset;
  }
  .form_wrap.form_01 dl:not(:last-child) {
    margin-bottom: 0px;
  }
}
.form_wrap.form_01 dt:is(#contents *, #footer *), .form_wrap.form_01 dd:is(#contents *, #footer *) {
  border-color: transparent;
  background-color: unset;
}
@media (max-width: 640px) {
  .form_wrap.form_01 dt:is(#contents *, #footer *), .form_wrap.form_01 dd:is(#contents *, #footer *) {
    padding: 0;
  }
}
.form_wrap.form_01 dt, .form_wrap.form_01 dd {
  padding: var(--p) var(--p) var(--p) 0;
}
.form_wrap.form_01 dt {
  align-items: left;
  justify-content: flex-start;
  padding-left: 0;
  font-weight: bold;
}
@media (max-width: 834px) {
  .form_wrap.form_01 dt {
    width: 20%;
    padding-bottom: calc(var(--p) / 2);
    margin-bottom: var(--p);
  }
}
.form_wrap.form_01 dd {
  padding-left: 0;
  flex-grow: 1;
}
.form_wrap.form_01::-webkit-scrollbar {
  background-color: transparent;
  width: 8px;
  height: 0;
}
.form_wrap.form_01::-webkit-scrollbar-thumb {
  background-color: var(--thumbC);
  border-radius: 0px;
}
@media (max-width: 834px) {
  .form_wrap.form_01 dl {
    padding-block: 0;
  }
  .form_wrap.form_01 dt {
    padding-bottom: 0;
  }
}

.policy-wrap {
  height: calc(100% - var(--head) * 1);
  margin-top: unset;
}

.p-hashSplit p + br {
  display: none;
}

.p-hashSplit p {
  line-height: 1.75;
  font-weight: inherit;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
  border-bottom: 1px dashed var(--mc);
  font-size: inherit;
}
.p-hashSplit p > span {
  margin-left: auto;
}
.p-hashSplit p > small {
  font-size: inherit;
}

.img100 :is(a, img) {
  width: 100% !important;
  height: auto !important;
}

section > :is(.sheet, .board) [id] + [id] {
  margin-top: var(--sheetP);
}

.fb_flow {
  position: relative;
  --mt:var(--block5);
  --p:2vmin;
  --bg:var(--wh);
  --beforeFZ:75%;
  --beforeC:var(--mc);
  --afterBG:var(--mc);
}
.fb_flow.noStep h3:before {
  display: none;
}
.fb_flow.noStep .box:is(#contents div):after {
  display: none;
}
.fb_flow.noStep .box:is(#contents div) + .box {
  margin-top: 1em;
}
.fb_flow.__ac {
  --mc:#f5a60a;
  --mc11:#f5a60a11;
  --mc20:#f5a60a33;
  --mc40:#f5a60a55;
  --mc50:#f5a60a88;
  --mc70:#f5a60abb;
}
.fb_flow .sheet {
  padding: 1vmin;
  margin-block: 0.5em;
}
.fb_flow a, .fb_flow a * {
  text-decoration: none;
  text-shadow: none;
  width: unset !important;
}
.fb_flow h3, .fb_flow p {
  border-bottom: var(--line);
  margin-bottom: 0.5em;
}
.fb_flow h3 small, .fb_flow p small {
  display: inline-block;
  margin-right: 0.5em;
}
@media (max-width: 640px) {
  .fb_flow {
    --p:var(--inline);
  }
}
.fb_flow .box {
  background-color: var(--bg);
}
.fb_flow .box:is(#contents *) {
  counter-increment: cnt;
  width: 100%;
  overflow: visible;
  display: flex;
  align-items: flex-start;
  border-radius: var(--rad);
  padding: var(--p);
  gap: var(--p);
}
.fb_flow .box:is(#contents *) + .box {
  margin-top: 3.5em;
}
.fb_flow .box:is(#contents *):after {
  content: "";
  position: absolute;
  top: calc(100% + 10px);
  right: 50%;
  translate: 50% 0;
  display: block;
  font-size: clamp(0px, 4vw, 30px);
  width: 1.5em;
  aspect-ratio: 1;
  clip-path: polygon(0 0%, 50% 85%, 100% 0%);
  background-color: var(--afterBG);
}
.fb_flow .box:is(#contents *):last-child:after {
  display: none;
}
.fb_flow .box:is(#contents *) article {
  width: 100%;
  font-size: var(--f16);
  font-weight: 400;
  display: flex;
  height: 100%;
  flex-wrap: wrap;
  gap: 1em;
}
.fb_flow .box:is(#contents *) article img:is(#contents *) {
  width: 100%;
}
.fb_flow .box:is(#contents *) article:has(> div:empty) .im {
  width: 100%;
}
.fb_flow .box:is(#contents *) article .im {
  order: 1;
  font-size: var(--beforeFZ);
  width: 30%;
  max-width: 100%;
}
.fb_flow .box:is(#contents *) article .im:is(.__icon *) {
  padding: 4em;
}
@media (max-width: 834px) {
  .fb_flow .box:is(#contents *) article .im:is(.__icon *) {
    width: 160px;
    padding: 1em;
  }
}
@media (max-width: 834px) {
  .fb_flow .box:is(#contents *) article .im {
    width: 360px;
    flex: unset !important;
    order: -1;
    margin-inline: auto;
  }
}
.fb_flow .box:is(#contents *) article > div {
  flex: 1;
  margin-top: unset;
}
@media (max-width: 834px) {
  .fb_flow .box:is(#contents *) article > *:is(#contents *) {
    flex-basis: 100%;
  }
}
.fb_flow .box:is(#contents *) article > h3 {
  display: none;
}
.fb_flow .box:is(#contents *) article div > i {
  display: inline-block;
  width: 3em;
  aspect-ratio: 1;
  background-color: var(--ac);
  color: var(--wh);
  border-radius: 1000px;
  text-align: center;
  align-content: center;
  margin-bottom: 0.25em;
}
.fb_flow .box:is(#contents *) article div > :is(p, h3) {
  font-size: var(--PFZ);
  border-bottom: 1px solid currentColor;
  padding-block: 0.25em;
  margin-bottom: 0.25em;
  font-weight: var(--hfw);
}
.fb_flow .box:is(#contents *) article div > :is(p, h3) i {
  margin-right: 0.25em;
}
.fb_flow .box:is(#contents *) article div > :is(p, h3):has(> a) {
  border: unset;
}
.fb_flow .box:is(#contents *) article u {
  --bdc:var(--mc);
  text-decoration: underline;
  text-decoration-color: var(--bdc);
  text-decoration-thickness: 4px;
  text-underline-offset: -4px;
  text-decoration-skip-ink: none;
  font-size: var(--PFZ);
  font-weight: 700;
  display: block;
}
.fb_flow .box:is(#contents *) article .btn {
  font-family: var(--ser);
  margin-right: 0.5em;
  margin-top: 0.5em;
  font-size: clamp(18px, 2vw, 24px);
}

#contents .form_simple {
  line-height: 1.5;
  --bdc:var(--tx20);
  --bdw:1px;
  --bds:solid;
  --thumbC:var(--tx10);
  --pdb:1.25em;
  --pdi: .5em;
  --dtw:bold;
  --maxH:26em;
}
@media (max-width: 640px) {
  #contents .form_simple {
    --pdb:1em;
  }
}
#contents .form_simple:is(.txwh *) {
  --thumbC:var(--wh50);
  color: var(--wh) !important;
}
#contents .form_simple dt {
  font-weight: 700;
}
#contents .form_simple.__border {
  border-block: 6vmin solid transparent;
  border-inline: 9vmin solid transparent;
}
@media (max-width: 1200px) {
  #contents .form_simple.__border {
    border-inline: 6vmin solid transparent;
  }
}

@media (max-width: 834px) {
  .nobr-tab {
    text-align: left;
  }
}

.fb_qa {
  line-height: 1.5;
  --hlh:inherit;
}
.fb_qa.noQa .box {
  padding-left: 1.5em;
}
.fb_qa.noQa .box:before {
  display: none;
}
.fb_qa + .fb_qa {
  margin-top: 20px;
}
.fb_qa:is(#contents *) {
  flex-direction: column;
}
.fb_qa h3 {
  font-size: var(--PFZ);
}
.fb_qa .box:is(#contents *) {
  --bfC: var(--wh);
  --bfBG: var(--mc);
  --abfBG: var(--ac);
  --bfFZ: 1.5em;
  --bfFF: var(--Eng);
  --bfRad:var(--rad);
  --bfPX:0.125em;
  --qBG:var(--bc);
  --aBG:var(--un);
  --imgW:30%;
  --imgWsp:320px;
  padding: 1.5em;
  padding-left: calc(var(--bfFZ) * 3);
  border: none !important;
  position: relative;
}
.fb_qa .box:is(#contents *) + .box {
  margin-top: 20px;
}
.fb_qa .box:is(#contents *) a {
  color: var(--linkC);
}
.fb_qa .box:is(#contents *):nth-child(odd) {
  padding-right: calc(var(--bfFZ) * 1.5);
  background-color: var(--qBG);
  cursor: pointer;
  transition: var(--btnTR);
}
.fb_qa .box:is(#contents *):nth-child(odd):hover {
  opacity: 0.8;
}
.fb_qa .box:is(#contents *):nth-child(even) {
  background-color: var(--aBG);
  display: none;
}
.fb_qa .box:is(#contents *):nth-child(even).__open {
  display: block;
}
.fb_qa .box:is(#contents *):nth-child(odd):before {
  content: "Q";
}
.fb_qa .box:is(#contents *):nth-child(even):before {
  content: "A";
  background-color: var(--abfBG);
}
.fb_qa .box:is(#contents *):nth-child(even):after {
  content: unset;
}
.fb_qa .box:is(#contents *):before, .fb_qa .box:is(#contents *):after {
  font-family: var(--bfFF);
  color: var(--bfC);
  background-color: var(--bfBG);
  display: block;
  position: absolute;
  left: 0.75em;
  top: 50%;
  translate: 0 -50%;
  font-size: var(--bfFZ);
  border-radius: var(--bfRad);
  width: 1.75em;
  aspect-ratio: 1;
  align-content: center;
  text-align: center;
  padding-bottom: 0.125em;
}
.fb_qa .box:is(#contents *):after {
  content: "\f105";
  font-weight: 900;
  font-family: var(--icon);
  font-size: 1.5em;
  color: inherit;
  left: unset;
  right: 0.5em;
  background-color: unset;
  transition: 0.4s;
  rotate: 90deg;
}
.fb_qa .box:is(#contents *).show:after {
  scale: -1 1;
}
.fb_qa .box:is(#contents *):has(article > figure) {
  width: 100%;
  align-items: flex-start;
}
.fb_qa .box:is(#contents *):has(article > figure) article {
  display: flex;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
  gap: 1em;
}
.fb_qa .box:is(#contents *):has(article > figure) figure {
  max-width: 100%;
  order: 1;
  width: var(--imgW);
  margin-left: auto;
}
@media (max-width: 640px) {
  .fb_qa .box:is(#contents *):has(article > figure) figure {
    width: var(--imgWsp);
  }
}
.fb_qa .box:is(#contents *):has(article > figure) article > div {
  flex: 1;
}
@media (max-width: 640px) {
  .fb_qa .box:is(#contents *):has(article > figure) article > div {
    flex-basis: 100%;
  }
}

.it01, .ti01 {
  --imgW:50%;
  --tabMW:75%;
  --spMW:100%;
}
.it01 + .it01, .it01 + .ti01, .ti01 + .it01, .ti01 + .ti01 {
  margin-top: var(--Hafter);
}
.it01 .sheet, .ti01 .sheet {
  --sheetR:10px;
}
.it01 > *, .ti01 > * {
  margin-top: unset;
}
.it01:has(.veil), .ti01:has(.veil) {
  overflow: visible !important;
}
.it01 article, .ti01 article {
  margin-top: unset;
}
.it01 article :is(h1, h2, h3, h4, h5) + div, .ti01 article :is(h1, h2, h3, h4, h5) + div {
  margin-top: 1.5em;
}
@media (max-width: 834px) {
  .it01:is(#contents *), .ti01:is(#contents *) {
    --imgW:var(--tabMW);
  }
  .it01 > *:is(#contents *), .ti01 > *:is(#contents *) {
    flex: unset;
    width: 100%;
  }
  .it01 > *:is(#contents a),
  .it01 > *:is(#contents figure), .ti01 > *:is(#contents a),
  .ti01 > *:is(#contents figure) {
    order: 1;
  }
}
@media (max-width: 640px) {
  .it01:is(#contents *), .ti01:is(#contents *) {
    --imgW:var(--spMW);
  }
}

@media (max-width: 834px) {
  .it01.outBaseR article, .ti01.outBaseR article {
    padding-inline-end: var(--inline);
  }
}
.it01.__link, .ti01.__link {
  --imgW:12vmax;
  row-gap: 2vmin;
  border: 4px solid var(--c);
  border-radius: 3vmin;
  padding: 1em;
  align-items: center;
  letter-spacing: 0;
  --c:var(--YE);
}
.it01.__link.__RE, .ti01.__link.__RE {
  --c:var(--RE);
}
.it01.__link.__PI, .ti01.__link.__PI {
  --c:var(--PI);
}
.it01.__link.__BL, .ti01.__link.__BL {
  --c:var(--block);
}
.it01.__link.__SK, .ti01.__link.__SK {
  --c:var(--SK);
}
.it01.__link.__GR, .ti01.__link.__GR {
  --c:var(--GR);
}
.it01.__link.__YE, .ti01.__link.__YE {
  --c:var(--YE);
}
.it01.__link.__OR, .ti01.__link.__OR {
  --c:var(--OR);
}
.it01.__link article > h3, .ti01.__link article > h3 {
  display: block;
  font-size: var(--f24);
}
.it01.__link article > h3 small, .ti01.__link article > h3 small {
  color: var(--c);
}
.it01.__link .im, .ti01.__link .im {
  background-color: var(--c);
  aspect-ratio: 1;
  border-radius: 1000px;
  display: grid;
  place-items: center;
  place-content: center;
  max-width: var(--imgW) !important;
}
.it01.__link img:is(#contents *), .ti01.__link img:is(#contents *) {
  width: calc(var(--imgW) * 0.65);
}
.it01[class*=art-], .ti01[class*=art-] {
  align-items: flex-start;
  gap: 0;
  --bpMW:75%;
  --imgW:56%;
  --move:4%;
  --move2:calc(var(--move)*0.5 );
  --Nmove:calc(var(--move)*-1 );
  --Nmove2:calc(var(--move)*-0.5 );
  padding-inline: var(--move2);
}
.it01[class*=art-] + [class*=art-], .ti01[class*=art-] + [class*=art-] {
  margin-top: var(--block5);
}
@media (max-width: 480px) {
  .it01[class*=art-], .ti01[class*=art-] {
    --bpMW:100%;
  }
}
@media (max-width: 1440px) {
  .it01[class*=art-], .ti01[class*=art-] {
    --imgW: 50%;
  }
}
.it01[class*=art-] > *, .ti01[class*=art-] > * {
  margin-inline: var(--Nmove2);
}
.it01[class*=art-] article, .ti01[class*=art-] article {
  border-radius: var(--rad);
  z-index: 10;
  padding: 6.25% var(--move);
}
.it01[class*=art-] .im, .ti01[class*=art-] .im {
  z-index: 1;
  z-index: 10;
}
.it01[class*=art-] .im img:is(#contents *), .ti01[class*=art-] .im img:is(#contents *) {
  height: 100% !important;
  object-fit: cover;
}
@media (max-width: 834px) {
  .it01[class*=art-], .ti01[class*=art-] {
    --move:0%;
  }
  .it01[class*=art-] .im, .ti01[class*=art-] .im {
    margin-top: -4%;
    z-index: 10;
  }
  .it01[class*=art-] article, .ti01[class*=art-] article {
    padding-block: 12%;
    padding-inline: var(--inline);
  }
}
.it01.homeIT, .ti01.homeIT {
  align-items: center;
}
.it01.homeIT picture, .ti01.homeIT picture {
  margin-left: calc(var(--gap) * -2);
}
.it01.homeIT article, .ti01.homeIT article {
  --trans:20%;
  margin-left: var(--inBase);
  flex: 1;
  position: relative;
  border: var(--line);
  padding: 5%;
}
.it01.homeIT article img:is(#contents *), .ti01.homeIT article img:is(#contents *) {
  max-width: 26vh;
  max-height: 21vh;
}
.it01.homeIT article .absLT, .ti01.homeIT article .absLT {
  top: calc(var(--trans) * -1);
}
.it01.homeIT article .absRB, .ti01.homeIT article .absRB {
  bottom: calc(var(--trans) * -1);
}
@media (max-width: 834px) {
  .it01.homeIT article, .ti01.homeIT article {
    margin-inline: var(--inline);
    --trans:40%;
  }
}
.it01.kasouIT, .ti01.kasouIT {
  gap: 2em 0;
  --tabMW:100%;
  --spMW:100%;
}
.it01.kasouIT + .KasouIT, .ti01.kasouIT + .KasouIT {
  margin-top: unset;
}
.it01.kasouIT .im, .ti01.kasouIT .im {
  overflow: hidden;
  width: calc(55% + var(--inBase));
}
.it01.kasouIT .im img, .ti01.kasouIT .im img {
  border-radius: unset;
  height: 100% !important;
}
@media (max-width: 834px) {
  .it01.kasouIT .im img, .ti01.kasouIT .im img {
    max-height: 45vw;
  }
}
.it01.kasouIT article, .ti01.kasouIT article {
  z-index: 1;
  margin-right: -15%;
  background-color: var(--bc70);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 834px) {
  .it01.kasouIT article, .ti01.kasouIT article {
    margin-right: unset;
  }
}

.part_image.homeIT {
  --imgW: 50%;
}
.part_image.homeIT > div.right {
  flex-direction: row-reverse;
  align-items: unset;
  align-items: center;
}
.part_image.homeIT > div.right picture {
  margin-left: calc(var(--gap) * -2);
  width: var(--imgW);
  flex: unset;
}
.part_image.homeIT > div.right > div {
  --trans:20%;
  margin-left: var(--inBase);
  flex: 1;
  position: relative;
  border: var(--line);
  padding: 5%;
}
.part_image.homeIT > div.right > div img:is(#contents *) {
  max-width: 26vh;
  max-height: 21vh;
}
.part_image.homeIT > div.right > div .absLT {
  top: calc(var(--trans) * -1);
}
.part_image.homeIT > div.right > div .absRB {
  bottom: calc(var(--trans) * -1);
}
@media (max-width: 834px) {
  .part_image.homeIT > div.right > div {
    margin-inline: var(--inline);
    --trans:40%;
  }
}
.part_image.homeIT h1, .part_image.homeIT h2, .part_image.homeIT h3 {
  margin: unset;
  line-height: unset;
}

[class*=Bar] {
  margin-bottom: 0.25em;
  --bdc:var(--bc2);
  --barGap:1em;
  display: flex;
  align-items: center;
  gap: var(--barGap);
}
[class*=Bar]:is(.txwh *) {
  --bdc:#fff;
}
[class*=Bar]:is(.H-bd *) {
  border-bottom: unset;
}
[class*=Bar]:before, [class*=Bar]:after {
  content: "";
  height: var(--bdw);
  flex: 1;
  background-color: var(--bdc);
  font-size: inherit;
}

.mv {
  justify-content: center;
  margin-top: var(--mvMT);
  position: relative;
  display: flex;
  flex-direction: column;
}
.mv .slick-dotted.slick-slider {
  margin-bottom: unset;
}
.mv.__framed {
  padding-inline: var(--gap);
}
.mv.__framed > .mv_slide {
  border-radius: var(--rad2);
  overflow: hidden;
}
.mv.__framed > .mv_it {
  left: var(--gap);
  right: var(--gap);
}
.mv_slide, .mv_img, .mv_video {
  overflow: hidden;
  transition: 1s;
}
.mv_slide.hide, .mv_img.hide, .mv_video.hide {
  opacity: 0;
  visibility: hidden;
}
.mv_slide:after, .mv_img:after, .mv_video:after {
  display: none;
}
@media (max-width: 960px) {
  .mv_slide, .mv_img, .mv_video {
    width: 100%;
  }
}
.mv_slide li, .mv_img li, .mv_video li {
  width: 100%;
}
.mv_slide .slick-list, .mv_img .slick-list, .mv_video .slick-list {
  height: 100%;
}
.mv_slide .slick-track, .mv_img .slick-track, .mv_video .slick-track {
  display: block;
  height: 100%;
}
.mv_slide .slick-slide, .mv_img .slick-slide, .mv_video .slick-slide {
  padding-inline: unset;
  margin-inline: unset;
  pointer-events: none;
}
.mv_slide li:has(> div):is(#contents *), .mv_img li:has(> div):is(#contents *) {
  display: flex;
  flex-wrap: wrap;
}
.mv_slide li:has(> div):is(#contents *) > *, .mv_img li:has(> div):is(#contents *) > * {
  grid-area: 1/1;
  flex: 0.5;
}
@media (max-width: 1080px) {
  .mv_slide li:has(> div):is(#contents *) > *:is(#contents *), .mv_img li:has(> div):is(#contents *) > *:is(#contents *) {
    flex: unset;
    width: 100%;
  }
  .mv_slide li:has(> div):is(#contents *) > *:is(#contents .im), .mv_img li:has(> div):is(#contents *) > *:is(#contents .im) {
    order: -1;
  }
}
.mv_slide li:has(> div):is(#contents *) > div, .mv_img li:has(> div):is(#contents *) > div {
  font-size: clamp(16px, 1.6vw, 24px);
  padding-inline: var(--block);
  padding-block: var(--inline);
  display: grid;
  place-items: center start;
  place-content: center start;
}
@media (max-width: 1440px) {
  .mv_slide li:has(> div):is(#contents *) > div, .mv_img li:has(> div):is(#contents *) > div {
    padding-inline: var(--inline);
  }
}
@media (max-width: 1080px) {
  .mv_slide li:has(> div):is(#contents *) > div, .mv_img li:has(> div):is(#contents *) > div {
    font-size: clamp(16px, 2vw, 24px);
  }
}
@media (max-width: 834px) {
  .mv_slide li:has(> div):is(#contents *) > div, .mv_img li:has(> div):is(#contents *) > div {
    display: grid;
    place-items: center start;
    place-content: center start;
    text-shadow: 0 0 2px #fff, 0 0 2px #fff;
  }
}
.mv_slide li:has(> div):is(#contents *) > div p, .mv_img li:has(> div):is(#contents *) > div p {
  font-size: 2em;
  letter-spacing: 0.22em;
  line-height: 1.5;
}
.mv_slide li:has(> div):is(#contents *) > div p::first-letter, .mv_img li:has(> div):is(#contents *) > div p::first-letter {
  color: var(--mc);
}
@media (max-width: 834px) {
  .mv_slide li:has(> div):is(#contents *) > div p, .mv_img li:has(> div):is(#contents *) > div p {
    font-size: 3em;
    letter-spacing: 0.06em;
  }
}
.mv_slide li:has(> div):is(#contents *) > div h1, .mv_img li:has(> div):is(#contents *) > div h1 {
  color: unset;
  line-height: unset;
}
.mv_slide li:has(> div):is(#contents *) picture, .mv_img li:has(> div):is(#contents *) picture {
  flex: 1;
}
.mv_slide li:has(> div):is(#contents *):nth-child(odd) picture, .mv_img li:has(> div):is(#contents *):nth-child(odd) picture {
  order: 1;
}
.mv_slide li:has(> div):is(#contents *) img, .mv_img li:has(> div):is(#contents *) img {
  margin: unset;
  display: block;
  width: 100%;
  max-width: 100%;
  transition: 0.3s;
  height: unset !important;
  object-fit: cover;
  aspect-ratio: 3/2;
}
@media (max-width: 960px) {
  .mv_slide li:has(> div):is(#contents *) img, .mv_img li:has(> div):is(#contents *) img {
    object-fit: cover;
  }
}
.mv_slide.__righttop, .mv_img.__righttop {
  width: 56.25%;
  margin-left: auto;
}
@media (max-width: 1440px) {
  .mv_slide.__righttop, .mv_img.__righttop {
    width: calc(100% - var(--LEFT));
  }
}
.mv_slide.__righttop img:is(#contents *), .mv_img.__righttop img:is(#contents *) {
  margin: unset;
  display: block;
  width: 100%;
  max-width: 100%;
  height: var(--mvImg) !important;
}
.mv_video {
  margin-inline: auto;
  width: 100%;
}
.mv_video :is(img, video, iframe) {
  width: 100%;
  pointer-events: none;
  margin: unset;
  display: block;
  object-fit: cover;
}
.mv_it {
  pointer-events: none;
  position: absolute;
  inset: 0;
  padding-inline: 1em;
  margin-bottom: 5vh;
  font-size: clamp(16px, 3vw, 32px);
  align-content: center;
}
.mv_it::after {
  display: none;
}
.mv_it > * {
  pointer-events: all;
}
@media (max-width: 640px) {
  .mv_it {
    position: unset;
    max-width: 100%;
  }
}
.mv_it h1 i, .mv_it p i {
  font-size: 1.75em;
  color: var(--inh);
}
.mv_it h1 i:is([class*=txst] *), .mv_it p i:is([class*=txst] *) {
  -webkit-text-stroke-color: var(--ac);
  -webkit-text-stroke-width: 8px;
}
@media (max-width: 640px) {
  .mv_it h1 i, .mv_it p i {
    display: block;
    margin-block: 0.25em;
  }
}
.mv_it > div {
  gap: 0;
}
.mv_it picture {
  width: unset;
}
.mv_it img:is(#contents *) {
  display: inline-block;
  vertical-align: sub;
  margin-inline: 0.75em;
  margin-top: 0.75em;
  max-width: 66%;
  object-fit: cover;
  overflow: visible;
}
@media (max-width: 640px) {
  .mv_it .spTxbk {
    color: var(--bk);
    text-shadow: unset;
  }
}

.mv_video.part_image > div {
  gap: unset;
}

#contents :is(.mv_img, .mv_slide, .mv_video) {
  margin-inline: auto;
}
#contents :is(.mv_img, .mv_slide, .mv_video).__framed {
  padding-inline: calc(var(--headG) * 2);
}
#contents :is(.mv_img, .mv_slide, .mv_video).__framed > * {
  border-radius: var(--rad2);
  overflow: hidden;
}
#contents :is(.mv_img, .mv_slide, .mv_video) video:is(#contents *),
#contents :is(.mv_img, .mv_slide, .mv_video) img:is(#contents *) {
  width: 100%;
  margin-inline: auto;
  display: block;
  height: var(--mvImg);
  object-fit: cover;
  border-radius: unset;
}
@media (max-width: 1200px) {
  #contents :is(.mv_img, .mv_slide, .mv_video) video:is(#contents *),
  #contents :is(.mv_img, .mv_slide, .mv_video) img:is(#contents *) {
    height: var(--un);
    aspect-ratio: 3/2;
  }
}
#contents_wrap #contents .noTrim img {
  height: unset !important;
  aspect-ratio: unset !important;
  object-fit: contain !important;
}

[class*=card]:not(.page-shop *) > div {
  display: flex;
  gap: calc(var(--gap) / 3 * 2) var(--gap);
}
@media (max-width: 834px) {
  [class*=card]:not(.page-shop *) > div {
    gap: var(--gap);
  }
}

[class*=_slide] {
  overflow: visible;
  --arrowContent: var(--btnAF);
  --arrowContent: "";
  --arrowinset: calc(100% + var(--gap));
  --arrowinset: 1em;
  --arrowBG: var(--un);
  --arrowR: 999px;
  --arrowFZ: max(16px,3vmin);
  --arrowW: 2em;
  --arrowC: var(--wh);
  --dot: 20px;
}
[class*=_slide] .slick-dotted.slick-slider {
  margin-bottom: unset;
}
[class*=_slide] .arrows:is(#contents div) {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% + var(--block3));
  z-index: 100;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
  border-bottom: none;
}
@media (max-width: 1320px) {
  [class*=_slide] {
    --arrowinset: .75em;
    --arrowW: 2em;
  }
}
[class*=_slide] .slick-prev {
  right: unset;
  left: var(--arrowinset);
  z-index: 1;
}
[class*=_slide] .slick-next {
  left: unset;
  right: var(--arrowinset);
  z-index: 1;
}
[class*=_slide] .slick-prev, [class*=_slide] .slick-next {
  background-color: var(--arrowBG);
  border-radius: var(--arrowR);
  font-size: var(--arrowFZ);
  width: var(--arrowW);
  height: var(--arrowW);
  z-index: 100;
  top: 50%;
  transform: translateY(-50%);
}
[class*=_slide] .slick-prev:is(.noText *), [class*=_slide] .slick-next:is(.noText *) {
  top: 50%;
}
@media (max-width: 480px) {
  [class*=_slide] .slick-prev, [class*=_slide] .slick-next {
    display: none !important;
  }
}
[class*=_slide] .slick-prev:before, [class*=_slide] .slick-next:before {
  color: var(--arrowC);
  font-size: inherit;
  font-family: var(--icon);
  display: inline-block;
  content: var(--arrowContent);
  font-weight: 900;
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  border-right: var(--line);
  border-top: var(--line);
  rotate: 45deg;
}
[class*=_slide] .slick-prev:before {
  rotate: -135deg;
}
[class*=_slide]:has(.slick-dots):not(.noDot) {
  padding-block-end: calc(var(--dot) * 1 + 1em);
}
[class*=_slide] .slick-dots li {
  width: var(--dot);
  height: var(--dot);
}
[class*=_slide] .slick-dots li button {
  width: var(--dot);
  height: var(--dot);
}
[class*=_slide] .slick-dots li button:before {
  position: unset;
  font-size: calc(var(--dot) / 2);
}
[class*=_slide] .slider p {
  font-size: 2rem;
  font-weight: bold;
  line-height: 100px;
  color: #666;
  margin: 10px;
  text-align: center;
  background-color: #e0e0e0;
}
[class*=_slide] .buttons {
  display: flex;
  justify-content: center;
}
[class*=_slide] .buttons .button {
  margin: 8px;
  border: 1px solid #000;
  color: #000;
  padding: 8px;
  text-align: center;
  width: 8em;
  transition: all 300ms ease;
}
[class*=_slide] .buttons .button:hover {
  cursor: pointer;
  background-color: var(--ac);
  color: #fff;
  transition: all 300ms ease;
}
[class*=_slide] .slick-dots li.slick-active button:before {
  color: var(--sc);
}
[class*=_slide] .slick-dots {
  width: fit-content;
  left: 50%;
  transform: translateX(-50%);
  bottom: unset;
  top: calc(100% + 1em);
  display: flex;
  justify-content: center;
}
[class*=_slide] .slick-dots li button {
  outline: none !important;
}

.slick-track {
  gap: var(--gap);
}

.slick-slide {
  position: relative;
  height: unset;
}

.part_slide:not(.mv_slide),
#contents .sns_slide {
  max-width: calc(100% + var(--gap));
  width: calc(100% + var(--gap));
  margin-left: calc(var(--gap) * -0.5);
  --dateFW: 500;
  --arrowinset: calc(100% - var(--gap));
  --arrowinset: -2em;
  --arrowBG: var(--un);
  --arrowR: 999px;
  --arrowFZ: max(16px,3vmin);
  --arrowW: 2em;
  --arrowC: var(--mc);
}
@media (max-width: 960px) {
  .part_slide:not(.mv_slide),
  #contents .sns_slide {
    margin-left: unset;
  }
}
.part_slide:not(.mv_slide) .slick-arrow,
#contents .sns_slide .slick-arrow {
  display: none;
}
.part_slide:not(.mv_slide).noDetail .detail,
#contents .sns_slide.noDetail .detail {
  display: none !important;
}
.part_slide:not(.mv_slide).noTag .sns_text ul,
#contents .sns_slide.noTag .sns_text ul {
  display: none !important;
}
.part_slide:not(.mv_slide).noArrow :is(.slick-arrow),
#contents .sns_slide.noArrow :is(.slick-arrow) {
  display: none !important;
}
.part_slide:not(.mv_slide).noDot :is(.slick-dots, .slick-arrow),
#contents .sns_slide.noDot :is(.slick-dots, .slick-arrow) {
  display: none !important;
}
.part_slide:not(.mv_slide).noDate .sns_date,
#contents .sns_slide.noDate .sns_date {
  display: none !important;
}
.part_slide:not(.mv_slide).noText .sns_text,
#contents .sns_slide.noText .sns_text {
  display: none !important;
}
.part_slide:not(.mv_slide).__visible .slick-list,
#contents .sns_slide.__visible .slick-list {
  overflow: visible !important;
}
.part_slide:not(.mv_slide):has(.slick-dots):not(.noDot),
#contents .sns_slide:has(.slick-dots):not(.noDot) {
  padding-bottom: unset;
}
.part_slide:not(.mv_slide) .slick-dots,
#contents .sns_slide .slick-dots {
  top: 104%;
}
@media (max-width: 1200px) {
  .part_slide:not(.mv_slide),
  #contents .sns_slide {
    --arrowBG: var(--wh50);
    --arrowinset: .25em;
  }
}
.part_slide:not(.mv_slide) img:is(#contents *),
#contents .sns_slide img:is(#contents *) {
  aspect-ratio: 1;
}
.part_slide:not(.mv_slide) .slick-dots li.slick-active button:before,
#contents .sns_slide .slick-dots li.slick-active button:before {
  color: var(--mc);
}
.part_slide:not(.mv_slide) .slick-slide > a,
#contents .sns_slide .slick-slide > a {
  border: var(--line);
  border-radius: var(--rad);
}
.part_slide:not(.mv_slide) .slick-slide,
#contents .sns_slide .slick-slide {
  display: block;
  margin-inline: var(--gapHalf);
  padding: unset;
}
.part_slide:not(.mv_slide) .slick-slide:nth-child(odd),
#contents .sns_slide .slick-slide:nth-child(odd) {
  margin-top: 2em;
}
.part_slide:not(.mv_slide) img:is(#contents *),
#contents .sns_slide img:is(#contents *) {
  aspect-ratio: 1;
  object-fit: cover;
}
.part_slide:not(.mv_slide) .emoji,
#contents .sns_slide .emoji {
  margin-top: 1em;
}

#contents .blog_form {
  overflow-y: scroll;
  --pdb: 0.5em;
  --bdc: var(--tx50);
  --maxH: 40vh;
  line-height: 1.5;
}
#contents .blog_form div:empty {
  display: none;
}
#contents .blog_form .blog_list > div {
  border-bottom: unset;
  flex-shrink: 0;
  padding: 0em;
  margin-block: 0em;
}
#contents .blog_form .blog_photo {
  display: none;
}
#contents .blog_form .blog_text:is(#contents *) {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0;
  padding-block: var(--pdb);
  border-bottom: 1px solid var(--bdc);
}
#contents .blog_form .blog_text:is(#contents *) > * {
  padding-block: calc(var(--pdb) / 2);
}
#contents .blog_form .blog_text:is(#contents *) h3 {
  width: 100%;
  margin-bottom: 0px;
  order: 1;
  font-family: inherit;
  font-weight: 500;
}
#contents .blog_form .blog_text:is(#contents *) h3 span {
  color: var(--mc);
}
#contents .blog_form .blog_text:is(#contents *) ul {
  display: none;
  order: 1;
}
#contents .blog_form .blog_text:is(#contents *) ul a {
  background-color: var(--mc);
  padding-inline: 0.25em;
  padding-bottom: 0.125em;
  line-height: 1.4;
  color: #fff;
  text-decoration: none;
  margin-right: 0.25em;
  margin-bottom: 0.25em;
  border-radius: 4px;
  vertical-align: middle;
}
#contents .blog_form .blog_text:is(#contents *) .detail {
  order: 1;
  font-size: var(--f14);
  display: none;
}
@media (max-width: 834px) {
  #contents .blog_form .blog_text:is(#contents *) {
    flex-wrap: wrap;
  }
}
#contents .blog_form .blog_date:is(div) {
  color: var(--tx);
  font-weight: 700;
}
#contents .blog_form::-webkit-scrollbar {
  background-color: transparent;
  width: 8px;
  height: 0;
}
#contents .blog_form::-webkit-scrollbar-thumb {
  background-color: var(--cc);
  border-radius: 0px;
}

.part_dllist.form_column dl {
  border-bottom-style: dashed;
}

.bg_fix {
  background-size: cover;
}
@media (max-width: 834px) {
  .bg_fix {
    background-size: auto 120%;
  }
}

.title1 {
  transition: 0.4s 0s;
  margin-top: calc(var(--head) * 0);
  background: no-repeat center/cover;
  background-color: var(--title1);
  background-image: url(/images/home/title1.jpg);
  background-position: center;
  background-size: cover;
  --h:360px;
  align-content: center;
  padding-block: 6vh;
  padding-inline: var(--inBase);
  min-height: var(--h);
}
.title1 .txwh * {
  color: var(--wh) !important;
}
.title1 .txbk * {
  color: var(--bk) !important;
}
@media (max-width: 1440px) {
  .title1 {
    min-height: calc(var(--h) * 0.9);
  }
}
@media (max-width: 834px) {
  .title1 {
    min-height: calc(var(--h) * 0.7);
  }
}
@media (max-width: 640px) {
  .title1 {
    min-height: calc(var(--h) * 0.6);
  }
}
.title1 h1, .title1 h2, .title1 h3, .title1 h4, .title1 h5, .title1 p {
  transition-delay: 0s !important;
  translate: none;
}

.title1:is(header *) {
  margin-top: var(--head);
}

.sheet {
  background-color: var(-bc);
}

.board {
  border-width: 4px;
  border-radius: var(--rad);
}
.board::before {
  display: none;
}

.H-bd :is(h1, h2, h3, p) {
  padding-block: 0em;
  border-color: var(--sc);
  margin-bottom: 0.5em;
}
.H-bd:has(div:empty) + div {
  margin-top: var(--Hafter);
}

.H-bg {
  background-color: var(--bc);
}
.H-bg :is(h1, h2, h3, p) {
  display: inline;
  vertical-align: text-top;
}
.H-bg:has(div:empty) + div {
  margin-top: var(--Hafter);
}

.fl37 {
  --few:30%;
  --gap:4vmin;
}
.fl37 > :nth-child(1) {
  width: 450px;
  padding-right: var(--inline);
}
.fl37 > :nth-child(2) {
  flex: 1;
}
@media (max-width: 960px) {
  .fl37 > *:is(#contents *) {
    flex-basis: 100%;
  }
}

.gap10p > div {
  gap: var(--gap) 10%;
}

body > * .lh3 {
  line-height: 3;
}
body > * .lh275 {
  line-height: 2.75;
}
body > * .lh25 {
  line-height: 2.5;
}
body > * .lh225 {
  line-height: 2.25;
}
body > * .lh2 {
  line-height: 2;
}
body > * .lh19 {
  line-height: 1.9;
}
body > * .lh18 {
  line-height: 1.8;
}
body > * .lh175 {
  line-height: 1.75;
}
body > * .lh166 {
  line-height: 1.66;
}
body > * .lh15 {
  line-height: 1.5;
}
body > * .lh14 {
  line-height: 1.4;
}
body > * .lh133 {
  line-height: 1.33;
}
body > * .lh13 {
  line-height: 1.3;
}
body > * .lh125 {
  line-height: 1.25;
}
body > * .lh12 {
  line-height: 1.2;
}
body > * .lh11 {
  line-height: 1.1;
}
body > * .lh1 {
  line-height: 1;
}

body > * .flex {
  display: flex;
}
body > * .JCSA {
  justify-content: space-around;
}
body > * .JCAE {
  justify-content: space-evenly;
}
body > * .JCSB {
  justify-content: space-between;
}
body > * .JCS {
  justify-content: flex-start;
}
body > * .JCC {
  justify-content: center;
}
body > * .JCE {
  justify-content: flex-end;
}
body > * .AIU {
  align-items: unset;
}
body > * .AIC {
  align-items: center;
}
body > * .AIS {
  align-items: flex-start;
}
body > * .AIE {
  align-items: flex-end;
}
body > * .DI {
  display: inline;
}
body > * .DIB {
  display: inline-block;
}
body > * .DIF {
  display: inline-flex;
}
body > * .DIG {
  display: inline-grid;
}
body > * .DB {
  display: block;
}
body > * .DF {
  display: flex;
}
body > * .DG {
  display: grid;
}
body > * .displayNone {
  display: none;
}

body > * .outBaseL {
  margin-left: var(--outBase);
  max-width: unset;
}
body > * .outBaseR {
  margin-right: var(--outBase);
  max-width: unset;
}
body > * .outBase {
  margin-inline: var(--outBase);
  max-width: unset;
}
body > * .inBaseL {
  padding-left: var(--inBase);
}
body > * .inBaseR {
  padding-right: var(--inBase);
}
body > * .inBase {
  padding-inline: var(--inBase);
}
body > * .in1800 {
  padding-inline: var(--in1800);
}
body > * .in1740 {
  padding-inline: var(--in1740);
}
body > * .in1680 {
  padding-inline: var(--in1680);
}
body > * .in1620 {
  padding-inline: var(--in1620);
}
body > * .in1560 {
  padding-inline: var(--in1560);
}
body > * .in1500 {
  padding-inline: var(--in1500);
}
body > * .in1440 {
  padding-inline: var(--in1440);
}
body > * .in1380 {
  padding-inline: var(--in1380);
}
body > * .in1320 {
  padding-inline: var(--in1320);
}
body > * .in1200 {
  padding-inline: var(--in1200);
}
body > * .in1080 {
  padding-inline: var(--in1080);
}
body > * .in1000 {
  padding-inline: var(--in1000);
}
body > * .in960 {
  padding-inline: var(--in960);
}
body > * .in840 {
  padding-inline: var(--in840);
}
body > * .in800 {
  padding-inline: var(--in800);
}
body > * .in720 {
  padding-inline: var(--in720);
}
body > * .in600 {
  padding-inline: var(--in600);
}

.py48 {
  padding-block: 48px;
}

.py40 {
  padding-block: 40px;
}

.py36 {
  padding-block: 36px;
}

.py32 {
  padding-block: 32px;
}

.py30 {
  padding-block: 30px;
}

.py24 {
  padding-block: 24px;
}

.py20 {
  padding-block: 20px;
}

.py16 {
  padding-block: 16px;
}

.py12 {
  padding-block: 12px;
}

.py10 {
  padding-block: 10px;
}

.py8 {
  padding-block: 8px;
}

.py0 {
  padding-block: 0px;
}

body > * .mt-auto {
  margin-top: auto;
}
body > * .mb-auto {
  margin-bottom: auto;
}
body > * .ml-auto {
  margin-left: auto;
}
body > * .mr-auto {
  margin-right: auto;
}
body > * .my-auto {
  margin-block: auto;
}
body > * .mx-auto {
  margin-inline: auto;
}

body > * .mt4p {
  margin-top: 4%;
}
body > * .mt5p {
  margin-top: 5%;
}
body > * .mt6p {
  margin-top: 6%;
}
body > * .mt75p {
  margin-top: 7.5%;
}
body > * .mt8p {
  margin-top: 8%;
}
body > * .mt10p {
  margin-top: 10%;
}
body > * .mt12p {
  margin-top: 12%;
}
body > * .mt15p {
  margin-top: 15%;
}
body > * .mtG {
  margin-top: var(--gap);
}
body > * .mt-auto {
  margin-top: auto;
}
body > * .mt-head {
  margin-top: var(--head);
}
body > * .mtB025 {
  margin-top: calc(0.25 * var(--block));
}
body > * .mtB03 {
  margin-top: calc(0.33 * var(--block));
}
body > * .mtB05 {
  margin-top: calc(0.5 * var(--block));
}
body > * .mtB06 {
  margin-top: calc(0.66 * var(--block));
}
body > * .mtB075 {
  margin-top: calc(0.75 * var(--block));
}
body > * .mtB1 {
  margin-top: calc(1 * var(--block));
}
body > * .mtB125 {
  margin-top: calc(1.25 * var(--block));
}
body > * .mtB15 {
  margin-top: calc(1.5 * var(--block));
}
body > * .mtB2 {
  margin-top: calc(2 * var(--block));
}
body > * .mtB3 {
  margin-top: calc(3 * var(--block));
}
body > * .mt90 {
  margin-top: 90px;
}
body > * .mt80 {
  margin-top: 80px;
}
body > * .mt72 {
  margin-top: 72px;
}
body > * .mt64 {
  margin-top: 64px;
}
body > * .mt60 {
  margin-top: 60px;
}
body > * .mt48 {
  margin-top: 48px;
}
body > * .mt40 {
  margin-top: 40px;
}
body > * .mt36 {
  margin-top: 36px;
}
body > * .mt32 {
  margin-top: 32px;
}
body > * .mt30 {
  margin-top: 30px;
}
body > * .mt24 {
  margin-top: 24px;
}
body > * .mt20 {
  margin-top: 20px;
}
body > * .mt16 {
  margin-top: 16px;
}
body > * .mt12 {
  margin-top: 12px;
}
body > * .mt10 {
  margin-top: 10px;
}
body > * .mt8 {
  margin-top: 8px;
}
body > * .mt0 {
  margin-top: 0px;
}
body > * .mb96 {
  margin-bottom: 96px;
}
body > * .mb90 {
  margin-bottom: 90px;
}
body > * .mb84 {
  margin-bottom: 84px;
}
body > * .mb80 {
  margin-bottom: 80px;
}
body > * .mb72 {
  margin-bottom: 72px;
}
body > * .mb64 {
  margin-bottom: 64px;
}
body > * .mb60 {
  margin-bottom: 60px;
}
body > * .mb48 {
  margin-bottom: 48px;
}
body > * .mb40 {
  margin-bottom: 40px;
}
body > * .mb36 {
  margin-bottom: 36px;
}
body > * .mb32 {
  margin-bottom: 32px;
}
body > * .mb30 {
  margin-bottom: 30px;
}
body > * .mb24 {
  margin-bottom: 24px;
}
body > * .mb20 {
  margin-bottom: 20px;
}
body > * .mb16 {
  margin-bottom: 16px;
}
body > * .mb12 {
  margin-bottom: 12px;
}
body > * .mb10 {
  margin-bottom: 10px;
}
body > * .mb8 {
  margin-bottom: 8px;
}
body > * .mb0 {
  margin-bottom: 0px;
}

body > * .txwh, body > * .txwh * {
  color: var(--wh);
}
body > * .txbk, body > * .txbk * {
  color: var(--bk);
}
body > * .txsc, body > * .txsc * {
  color: var(--sc);
}
body > * .txbc, body > * .txbc * {
  color: var(--bc);
}
body > * .txac, body > * .txac * {
  color: var(--ac);
}
body > * .txtx, body > * .txtx * {
  color: var(--tx);
}
body > * .tx00, body > * .tx00 * {
  color: #000;
}
body > * .txmc, body > * .txmc * {
  color: var(--mc);
}
body > * .Italic, body > * .Italic * {
  font-style: italic;
}
body > * .fw100 {
  font-weight: 100;
}
body > * .fw200 {
  font-weight: 200;
}
body > * .fw300 {
  font-weight: 300;
}
body > * .fw400 {
  font-weight: 400;
}
body > * .fw500 {
  font-weight: 500;
}
body > * .fw600 {
  font-weight: 600;
}
body > * .fw700 {
  font-weight: 700;
}
body > * .fw900 {
  font-weight: 900;
}
body > * .f12 {
  font-size: var(--f12);
}
body > * .f14 {
  font-size: var(--f14);
}
body > * .f16 {
  font-size: var(--f16);
}
body > * .f18 {
  font-size: var(--f18);
}
body > * .f20 {
  font-size: var(--f20);
}
body > * .f22 {
  font-size: var(--f22);
}
body > * .f24 {
  font-size: var(--f24);
}
body > * .f28 {
  font-size: var(--f28);
}
body > * .f30 {
  font-size: var(--f30);
}
body > * .f32 {
  font-size: var(--f32);
}
body > * .f36 {
  font-size: var(--f36);
}
body > * .f40 {
  font-size: var(--f40);
}
body > * .f44 {
  font-size: var(--f44);
}
body > * .f48 {
  font-size: var(--f48);
}
body > * .f52 {
  font-size: var(--f52);
}
body > * .f56 {
  font-size: var(--f56);
}
body > * .f60 {
  font-size: var(--f60);
}
body > * .f64 {
  font-size: var(--f64);
}
body > * .f68 {
  font-size: var(--f68);
}
body > * .f72 {
  font-size: var(--f72);
}
body > * .f76 {
  font-size: var(--f76);
}
body > * .f80 {
  font-size: var(--f80);
}
body > * .f84 {
  font-size: var(--f84);
}
body > * .f88 {
  font-size: var(--f88);
}
body > * .f92 {
  font-size: var(--f92);
}
body > * .f96 {
  font-size: var(--f96);
}

body > * .img5-7 img {
  aspect-ratio: 5/7;
}
body > * .img9-5 img {
  aspect-ratio: 9/5;
}
body > * .img8-5 img {
  aspect-ratio: 8/5;
}
body > * .img7-5 img {
  aspect-ratio: 7/5;
}
body > * .img6-5 img {
  aspect-ratio: 6/5;
}
body > * .img4-5 img {
  aspect-ratio: 4/5;
}
body > * .img3-5 img {
  aspect-ratio: 3/5;
}
body > * .img2-5 img {
  aspect-ratio: 2/5;
}
body > * .img1-5 img {
  aspect-ratio: 1/5;
}
body > * .img9-4 img {
  aspect-ratio: 9/4;
}
body > * .img7-4 img {
  aspect-ratio: 7/4;
}
body > * .img5-4 img {
  aspect-ratio: 5/4;
}
body > * .img3-4 img {
  aspect-ratio: 3/4;
}
body > * .img1-4 img {
  aspect-ratio: 1/4;
}
body > * .img7-3 img {
  aspect-ratio: 7/3;
}
body > * .img5-3 img {
  aspect-ratio: 5/3;
}
body > * .img4-3 img {
  aspect-ratio: 4/3;
}
body > * .img2-3 img {
  aspect-ratio: 2/3;
}
body > * .img1-3 img {
  aspect-ratio: 1/3;
}
body > * .img7-2 img {
  aspect-ratio: 7/2;
}
body > * .img5-2 img {
  aspect-ratio: 5/2;
}
body > * .img3-2 img {
  aspect-ratio: 3/2;
}
body > * .img1-2 img {
  aspect-ratio: 1/2;
}
body > * .img6-1 img {
  aspect-ratio: 6/1;
}
body > * .img5-1 img {
  aspect-ratio: 5/1;
}
body > * .img4-1 img {
  aspect-ratio: 4/1;
}
body > * .img3-1 img {
  aspect-ratio: 3/1;
}
body > * .img2-1 img {
  aspect-ratio: 2/1;
}
body > * .img1-1 img {
  aspect-ratio: 1/1;
}
body > * .imgContain img {
  object-fit: contain !important;
}
body > * .imgCover img {
  object-fit: cover !important;
}
body > * .img-unset img {
  width: unset !important;
}
body > * .imgRad img {
  border-radius: var(--rad) !important;
}
body > * .noRad img {
  border-radius: var(--un) !important;
}
body > * .radius {
  border-radius: var(--rad);
}
body > * .radius2 {
  border-radius: var(--rad2);
}
body > * .radhalf {
  border-radius: var(--radhalf);
}

@media (max-width: 960px) {
  body > * .left-960 {
    text-align: left !important;
  }
  body > * .left-960 * {
    text-align: left !important;
  }
}
body > * .TAC {
  text-align: center !important;
}
body > * .TAC * {
  text-align: center !important;
}
body > * .TAL {
  text-align: left !important;
}
body > * .TAL * {
  text-align: left !important;
}
body > * .TAR {
  text-align: right !important;
}
body > * .TAR * {
  text-align: right !important;
}
@media (max-width: 834px) {
  body > * .tabTAC {
    text-align: center !important;
  }
  body > * .tabTAC * {
    text-align: center !important;
  }
  body > * .tabTAL {
    text-align: left !important;
  }
  body > * .tabTAL * {
    text-align: left !important;
  }
  body > * .left-tab {
    text-align: left !important;
  }
  body > * .left-tab * {
    text-align: left !important;
  }
}
@media (max-width: 640px) {
  body > * .spTAC {
    text-align: center !important;
  }
  body > * .spTAC * {
    text-align: center !important;
  }
  body > * .spTAL {
    text-align: left !important;
  }
  body > * .spTAL * {
    text-align: left !important;
  }
  body > * .left-sp {
    text-align: left !important;
  }
  body > * .left-sp * {
    text-align: left !important;
  }
}
@media (max-width: 480px) {
  body > * .left-480 {
    text-align: left !important;
  }
  body > * .left-480 * {
    text-align: left !important;
  }
}

@media (max-width: 834px) {
  .tab-100 > * > * {
    flex: 0 0 100% !important;
  }
}
body > * .pcNone {
  display: none;
}
@media (max-width: 834px) {
  body > * .pcNone {
    display: block;
  }
}
@media (max-width: 834px) {
  body > * .tabNone {
    display: none;
  }
}
@media (max-width: 640px) {
  body > * .spNone {
    display: none !important;
  }
}
@media screen and (max-width: 1080px) {
  body > * .menuBPnone {
    display: none;
  }
}
body > * .nobr br {
  display: none;
}
@media (max-width: 640px) {
  body > * .nobr-sp br {
    display: none;
  }
}
@media (max-width: 834px) {
  body > * .nobr-tab br {
    display: none;
  }
}
@media (max-width: 960px) {
  body > * .nobr-96 br {
    display: none;
  }
}
@media (max-width: 480px) {
  body > * .nobr-48 br {
    display: none;
  }
}

body > * .op05 {
  opacity: 0.05;
}
body > * .op1 {
  opacity: 0.1;
}
body > * .op15 {
  opacity: 0.15;
}
body > * .op2 {
  opacity: 0.2;
}
body > * .op3 {
  opacity: 0.3;
}
body > * .op4 {
  opacity: 0.4;
}
body > * .op5 {
  opacity: 0.5;
}
body > * .op6 {
  opacity: 0.6;
}
body > * .op7 {
  opacity: 0.7;
}
body > * .op8 {
  opacity: 0.8;
}
body > * .op9 {
  opacity: 0.9;
}
body > * .op10 {
  opacity: 1;
}
body > * .rotate90 {
  rotate: 90deg;
}
body > * .rotate180 {
  rotate: 180deg;
}
body > * .rotate-90 {
  rotate: -90deg;
}
body > * .uppercase, body > * .uppercase * {
  text-transform: uppercase;
}
body > * .BGHL {
  background-blend-mode: hard-light;
}
body > * .BGSC {
  background-blend-mode: screen;
}
body > * .BGDK {
  background-blend-mode: darken;
}
body > * .BGSL {
  background-blend-mode: soft-light;
}
body > * .BGLT {
  background-blend-mode: lighten;
}
body > * .BGCL {
  background-blend-mode: color;
}
body > * .BGOL {
  background-blend-mode: overlay;
}
body > * .BGDF {
  background-blend-mode: difference;
}
body > * .BGMP {
  background-blend-mode: multiply;
}
body > * .Grayscale {
  filter: grayscale(100%);
}
body > * .Overlay {
  mix-blend-mode: Overlay;
}
body > * .Screen {
  mix-blend-mode: screen;
}
body > * .Lighten {
  mix-blend-mode: Lighten;
}
body > * .Darken {
  mix-blend-mode: darken;
}
body > * .Multiply {
  mix-blend-mode: multiply;
}
body > * .Difference {
  mix-blend-mode: difference;
}
body > * .Darken {
  mix-blend-mode: darken;
}
body > * .Hard-light {
  mix-blend-mode: hard-light;
}
body > * .absB {
  position: absolute;
  bottom: 0;
}
body > * .absT {
  position: absolute;
  top: 0;
}
body > * .absR {
  position: absolute;
  right: 0;
}
body > * .absL {
  position: absolute;
  left: 0;
}
body > * .absRB {
  position: absolute;
  bottom: 0;
  right: 0;
}
body > * .absRT {
  position: absolute;
  top: 0;
  right: 0;
}
body > * .absLB {
  position: absolute;
  bottom: 0;
  left: 0;
}
body > * .absLT {
  position: absolute;
  top: 0;
  left: 0;
}
body > * .abs0 {
  position: absolute;
  inset: 0;
}
body > * .min100p {
  min-width: 100%;
}
body > * .min100vh {
  min-height: 100vh;
}
body > * .migi {
  float: right;
  text-align: right;
}
body > * .floatR {
  float: right;
}
body > * .afnone:after {
  display: none;
}
body > * .order1 {
  order: 1;
}
body > * .order-1 {
  order: -1;
}
body > * .H-o1 :is(h1, h2, h3) {
  order: 1;
}
body > * .H-o-1 :is(h1, h2, h3) {
  order: -1;
}
body > * .img-o1 :is(img, *:has(> img)) {
  order: 1;
}
body > * .img-o-1 :is(img, *:has(> img)) {
  order: -1;
}
body > * .z-100 {
  position: relative;
  z-index: -100;
}
body > * .z-10 {
  position: relative;
  z-index: -10;
}
body > * .z-1 {
  position: relative;
  z-index: -1;
}
body > * .z1 {
  position: relative;
  z-index: 1;
}
body > * .z10 {
  position: relative;
  z-index: 10;
}
body > * .z100 {
  position: relative;
  z-index: 100;
}
body > * .z1000 {
  position: relative;
  z-index: 1000;
}
body > * .x-scr {
  overflow-x: scroll;
}
body > * .visible:is(#contents *) {
  overflow: visible;
}
body > * .noscr:is(#contents *) {
  overflow-y: visible;
}
body > * .scr:is(#contents *) {
  overflow-y: scroll;
}
body > * .ch-f1 > * {
  flex: 1;
  width: unset;
}
body > * .fit-auto {
  width: fit-content;
  margin-inline: auto;
}
body > * .btn.fit-auto {
  width: fit-content;
  margin-inline: auto;
  display: flex;
}/*# sourceMappingURL=common_style.css.map */