@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Chakra+Petch:ital,wght@0,500;0,700;1,500;1,700&family=Zen+Kaku+Gothic+New:wght@400;500;700&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(--la);
  --Home: "";
  --panAF: inline;
}

: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;
  --Cut:"Cutive","Zen Kaku Gothic New", monospace,"Noto Sans JP", sans-serif;
  --Zkg:"Zen Kaku Gothic New", "Noto Sans JP", sans-serif;
  --bodyFF: YakuHanJP_Narrow, var(--Zkg);
  --noYH:var(--Zkg);
  --Eng:var(--Cut);
}

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

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

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

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

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

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
: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, .title1.large h1, .title1.large h2, .title1.large h3, .title1.large h4, .title1.large h5, .title1.large p, .title1.large p:is(body.blog 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, 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);
}

.part_dllist {
  --thumbC:var(--tx10);
  --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, .__Xscr .items,
.__Xscr, .__Xscr .blog_list {
  --thumbC:var(--tx10);
  --thumbW:8px;
}
.tbl_normal::-webkit-scrollbar, .tbl_scroll::-webkit-scrollbar, .__Xscr .items::-webkit-scrollbar,
.__Xscr::-webkit-scrollbar, .__Xscr .blog_list::-webkit-scrollbar {
  background-color: transparent;
  width: 0;
  height: var(--thumbW);
}
.tbl_normal::-webkit-scrollbar-thumb, .tbl_scroll::-webkit-scrollbar-thumb, .__Xscr .items::-webkit-scrollbar-thumb,
.__Xscr::-webkit-scrollbar-thumb, .__Xscr .blog_list::-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%);
  --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%);
  --sc20: color-mix(in srgb, transparent,var(--sc) 20%);
  --sc30: color-mix(in srgb, transparent,var(--sc) 30%);
  --sc40: color-mix(in srgb, transparent,var(--sc) 40%);
  --sc50: color-mix(in srgb, transparent,var(--sc) 50%);
  --sc60: color-mix(in srgb, transparent,var(--sc) 60%);
  --sc70: color-mix(in srgb, transparent,var(--sc) 70%);
  --sc80: color-mix(in srgb, transparent,var(--sc) 80%);
  --sc90: color-mix(in srgb, transparent,var(--sc) 90%);
  --ac10: color-mix(in srgb, transparent,var(--ac) 10%);
  --ac20: color-mix(in srgb, transparent,var(--ac) 20%);
  --ac30: color-mix(in srgb, transparent,var(--ac) 30%);
  --ac40: color-mix(in srgb, transparent,var(--ac) 40%);
  --ac50: color-mix(in srgb, transparent,var(--ac) 50%);
  --ac60: color-mix(in srgb, transparent,var(--ac) 60%);
  --ac70: color-mix(in srgb, transparent,var(--ac) 70%);
  --ac80: color-mix(in srgb, transparent,var(--ac) 80%);
  --ac90: color-mix(in srgb, transparent,var(--ac) 90%);
  --bc10: color-mix(in srgb, transparent,var(--bc) 10%);
  --bc20: color-mix(in srgb, transparent,var(--bc) 20%);
  --bc30: color-mix(in srgb, transparent,var(--bc) 30%);
  --bc40: color-mix(in srgb, transparent,var(--bc) 40%);
  --bc50: color-mix(in srgb, transparent,var(--bc) 50%);
  --bc60: color-mix(in srgb, transparent,var(--bc) 60%);
  --bc70: color-mix(in srgb, transparent,var(--bc) 70%);
  --bc80: color-mix(in srgb, transparent,var(--bc) 80%);
  --bc90: color-mix(in srgb, transparent,var(--bc) 90%);
  --tx10: color-mix(in srgb, transparent,var(--tx) 10%);
  --tx20: color-mix(in srgb, transparent,var(--tx) 20%);
  --tx30: color-mix(in srgb, transparent,var(--tx) 30%);
  --tx40: color-mix(in srgb, transparent,var(--tx) 40%);
  --tx50: color-mix(in srgb, transparent,var(--tx) 50%);
  --tx60: color-mix(in srgb, transparent,var(--tx) 60%);
  --tx70: color-mix(in srgb, transparent,var(--tx) 70%);
  --tx80: color-mix(in srgb, transparent,var(--tx) 80%);
  --tx90: color-mix(in srgb, transparent,var(--tx) 90%);
  --gr10: color-mix(in srgb, transparent,var(--gr) 10%);
  --gr20: color-mix(in srgb, transparent,var(--gr) 20%);
  --gr30: color-mix(in srgb, transparent,var(--gr) 30%);
  --gr40: color-mix(in srgb, transparent,var(--gr) 40%);
  --gr50: color-mix(in srgb, transparent,var(--gr) 50%);
  --gr60: color-mix(in srgb, transparent,var(--gr) 60%);
  --gr70: color-mix(in srgb, transparent,var(--gr) 70%);
  --gr80: color-mix(in srgb, transparent,var(--gr) 80%);
  --gr90: color-mix(in srgb, transparent,var(--gr) 90%);
  --bk10: color-mix(in srgb, transparent,var(--bk) 10%);
  --bk20: color-mix(in srgb, transparent,var(--bk) 20%);
  --bk30: color-mix(in srgb, transparent,var(--bk) 30%);
  --bk40: color-mix(in srgb, transparent,var(--bk) 40%);
  --bk50: color-mix(in srgb, transparent,var(--bk) 50%);
  --bk60: color-mix(in srgb, transparent,var(--bk) 60%);
  --bk70: color-mix(in srgb, transparent,var(--bk) 70%);
  --bk80: color-mix(in srgb, transparent,var(--bk) 80%);
  --bk90: color-mix(in srgb, transparent,var(--bk) 90%);
  --wh10: color-mix(in srgb, transparent,var(--wh) 10%);
  --wh20: color-mix(in srgb, transparent,var(--wh) 20%);
  --wh30: color-mix(in srgb, transparent,var(--wh) 30%);
  --wh40: color-mix(in srgb, transparent,var(--wh) 40%);
  --wh50: color-mix(in srgb, transparent,var(--wh) 50%);
  --wh60: color-mix(in srgb, transparent,var(--wh) 60%);
  --wh70: color-mix(in srgb, transparent,var(--wh) 70%);
  --wh80: color-mix(in srgb, transparent,var(--wh) 80%);
  --wh90: color-mix(in srgb, transparent,var(--wh) 90%);
}

:root {
  --bl025:calc(var(--bl)/4);
  --bl03:calc(var(--bl)/3);
  --bl05:calc(var(--bl)/2);
  --bl06:calc(var(--bl)/3*2);
  --bl075:calc(var(--bl)/4*3);
  --Nbl15:calc(var(--bl)*-1.5);
  --Nbl05:calc(var(--bl)*-0.5);
  --Nbl075:calc(var(--bl)*-0.75);
  --Nbl2:calc(var(--bl)*-2.0);
  --Nbl:calc(var(--bl)*-1.0);
  --Nbl1:calc(var(--bl)*-1.0);
  --bl:calc(var(--bl)*1.0);
  --bl1:calc(var(--bl)*1.0);
  --bl15:calc(var(--bl)*1.5);
  --bl2:calc(var(--bl)*2.0);
  --bl25:calc(var(--bl)*2.5);
  --bl3:calc(var(--bl)*3.0);
  --incont:calc(50vw - clamp(0px,50vw - var(--pad,20px), (var(--base) / 2) ));
  --in1800:calc(50vw - clamp(0px,50vw - var(--pad,20px), 900px ));
  --in1740:calc(50vw - clamp(0px,50vw - var(--pad,20px), 870px ));
  --in1728:calc(50vw - clamp(0px,50vw - var(--pad,20px), 864px ));
  --in1680:calc(50vw - clamp(0px,50vw - var(--pad,20px), 840px ));
  --in1620:calc(50vw - clamp(0px,50vw - var(--pad,20px), 810px ));
  --in1560:calc(50vw - clamp(0px,50vw - var(--pad,20px), 780px ));
  --in1536:calc(50vw - clamp(0px,50vw - var(--pad,20px), 768px ));
  --in1500:calc(50vw - clamp(0px,50vw - var(--pad,20px), 750px ));
  --in1440:calc(50vw - clamp(0px,50vw - var(--pad,20px), 720px ));
  --in1380:calc(50vw - clamp(0px,50vw - var(--pad,20px), 690px ));
  --in1320:calc(50vw - clamp(0px,50vw - var(--pad,20px), 660px ));
  --in1200:calc(50vw - clamp(0px,50vw - var(--pad,20px), 600px ));
  --in1080:calc(50vw - clamp(0px,50vw - var(--pad,20px), 540px ));
  --in1000:calc(50vw - clamp(0px,50vw - var(--pad,20px), 500px ));
  --in960: calc(50vw - clamp(0px,50vw - var(--pad,20px), 480px ));
  --in800: calc(50vw - clamp(0px,50vw - var(--pad,20px), 400px ));
  --in840: calc(50vw - clamp(0px,50vw - var(--pad,20px), 420px ));
  --in720: calc(50vw - clamp(0px,50vw - var(--pad,20px), 360px ));
  --in600: calc(50vw - clamp(0px,50vw - var(--pad,20px), 300px ));
  --contout:calc(50% - 50vw );
  --contoutsp:calc(100% - 100vw );
  --barhalf:calc(var(--bar,0px) / 2);
}

.bg100Rin, .contoutR {
  margin-inline: 0 var(--contout) !important;
  max-width: unset;
}

.bg100Lin, .contoutL {
  margin-inline: var(--contout) 0 !important;
  max-width: unset;
}

.HI-bg, .I-bg, .H-bg, .bg100in {
  margin-inline: var(--contout) !important;
  max-width: unset;
  padding-inline: var(--incont) !important;
}

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

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

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

.wrapper100in {
  margin-inline: var(--contout) !important;
  max-width: unset;
  padding-inline: var(--incont) !important;
  padding-block: var(--Wpdb);
  background-size: cover;
}

.f_link, .pan1 a,
.h_nav a:not(.drop a, .nopointer, :has(> span)),
.banner a,
.h_nav a:not(.drop a, .nopointer, :has(> span), :is(.logo *)),
.nav a:not(.drop ul li a),
.f_nav ul a,
.blog_text h3 span,
.rss-title, .f_btn,
.h_nav .drop 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(.drop a, .nopointer, :has(> span)),
.banner a:hover,
.h_nav a:hover:not(.drop a, .nopointer, :has(> span), :is(.logo *)),
.nav a:hover:not(.drop ul li a),
.f_nav ul a:hover,
.blog_text h3 span:hover,
.rss-title:hover, .f_btn:hover,
.h_nav .drop ul li:hover {
  background-position-x: 0%;
  animation: rightgrow 0.4s ease;
}
@keyframes rightgrow {
  0% {
    background-position-x: 203%;
  }
  100% {
    background-position-x: 100%;
  }
}

:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small, [class*=Bar], .p-paintCount p, .f .f_pagetop, :is(.h, .f) [class*=li-slash]:not(.nav) > ul > li > * {
  position: relative;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small::before, [class*=Bar]::before, .p-paintCount p::before, .f .f_pagetop::before, :is(.h, .f) [class*=li-slash]:not(.nav) > ul > li > ::before {
  content: "bf";
  display: inline-block;
  background-color: #777;
  z-index: 1;
  font-weight: 900;
  font-family: var(--fa);
}

:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small, [class*=Bar], .f_nav li > span, .f_nav a.nopointer, .f_nav-column .nopointer {
  position: relative;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small::after, [class*=Bar]::after, .f_nav li > span::after, .f_nav a.nopointer::after, .f_nav-column .nopointer::after {
  content: "af";
  display: inline-block;
  background-color: #777;
  z-index: 1;
  font-weight: 900;
  font-family: var(--fa);
}

.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, .mv .dotCover {
  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, .mv .dotCover::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}

.part_flexbox.__arrow .box:after {
  content: "\f105";
  display: inline-block;
  font-weight: 900;
  font-family: var(--icon);
}

: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);
  --f30:clamp(20px, 2.4vw, 30px);
  --f32:clamp(20px, 3.2vw, 32px);
  --f34:clamp(20px, 3.4vw, 34px);
  --f36:clamp(24px, 3.6vw, 36px);
  --f40:clamp(28px, 4vw, 40px);
  --f44:clamp(32px, 4vw, 44px);
  --f48:clamp(32px, 5vw, 48px);
  --f52:clamp(40px, 5vw, 52px);
  --f60:clamp(40px,6vw,60px);
  --f64:clamp(48px,6vw,64px);
  --f68:clamp(48px,6vw,68px);
  --f72:clamp(48px,7vw,72px);
  --f96:clamp(48px,9vmin,96px);
  --f160:clamp(64px,16vw,160px);
}

@keyframes rightgrow {
  0% {
    background-position-x: 203%;
  }
  100% {
    background-position-x: 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;
}

* {
  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;
  flex-direction: row;
  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: unset;
}
.part_flexbox h1 {
  font-size: unset;
}
.part_flexbox h2 {
  font-size: unset;
}
.part_flexbox h3 {
  font-size: unset;
}
.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;
}
.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(--pad);
    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(--pad2));
}
#contents::after {
  display: none;
}

blockquote {
  font-style: italic;
}

@media (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:1200px;
}
@media (max-width: 1560px) {
  html {
    --base:960px;
  }
}
html:not(.home) {
  --h2FZ:clamp(20px, 3vw, 32px);
  --Fmt:var(--bl05);
  --Wpdb:var(--bl05);
  --Schild:var(--bl05);
  --Wchild:var(--bl03);
  --Hafter:var(--bl03);
  --gap:24px;
}
@media (width <= 834px) {
  html:not(.home) {
    --gap:16px;
  }
}
html:is(.blog, .shop) {
  --h2FZ:clamp(20px, 3vw, 32px);
  --Fmt:var(--bl03);
  --Wpdb:var(--bl03);
  --Schild:var(--bl03);
}

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

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

:root {
  --hfw: 500;
  --hcolor: var(--inh);
  --hff:var(--Eng);
  --subFW: 500;
  --subFF: var(--Eng);
  --subC: var(--inh);
  --hlh:1.25;
  --hls:0.0em;
  --bigFZ:calc(var(--h2FZ)*2 );
  --h1FZ:clamp(32px, 5vw, 64px);
  --h2FZ:clamp(32px, 5vw, 64px);
  --h3FZ:clamp(20px, 2.4vw, 32px);
  --PFZ: clamp(16px, 2vw, 24px);
  --h2JA:calc(var(--h3FZ));
}
@media (max-width: 640px) {
  :root {
    --bigFZ:calc(var(--PFZ)*2 );
  }
}

:root {
  --Fmt:var(--bl075);
  --Wpdb:var(--bl075);
  --Schild:var(--bl075);
  --Wchild:var(--bl03);
  --Hafter:var(--bl03);
  --bl:120px;
  --pad:64px;
  --pad2:calc(var(--pad) * 2);
  --gap:60px;
  --Ngap:calc(var(--gap)*-1);
  --gapHalf:calc(var(--gap)/2);
}
@media (width <= 1440px) {
  :root {
    --pad:48px;
    --gap:32px;
  }
}
@media (width <= 834px) {
  :root {
    --gap:20px;
    --bl:80px;
  }
}
@media (width <= 640px) {
  :root {
    --pad:24px;
  }
}

:root {
  --bds: solid;
  --bdw: 1px;
  --bdc: var(--sc);
  --line:var(--bdw) var(--bds) var(--bdc);
  --stW: 2px;
  --rad:0px;
  --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), 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));
}

.im img {
  height: auto !important;
}

.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(--Fmt) * -1);
}

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

.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(--bl05);
}

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) * 2);
}

#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(--bl03);
}
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 (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 (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 (width <= 960px) {
  html.page-blog #contents .card.card3 li {
    width: 49%;
  }
}
@media (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 (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 (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 (width <= 834px) {
  html.page-blog #contents article h2 {
    --pad: 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 (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 (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 (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 (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(--bl025);
}

section div#contents > article + article {
  margin-top: var(--bl05);
  padding-top: var(--bl05);
  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 (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(--pad);
}

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(--pad);
  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 (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.1) saturate(1.2);
  --btnBG:var(--ac);
  --btnC:var(--tx);
  --btnFZ:var(--f20);
  --btnFF:var(--Eng);
  --btnLH:1.25;
  --btnFW: 500;
  --btnLS:0.0em;
  --btnW:345px;
  --btnH:52px;
  --btnPX:1em;
  --btnPY: 0.25em 0.125em;
  --btnG:.5em;
  --btnTR:0.4s ease-in-out;
  --btnRad:1000px;
  --btnIFZ:calc(var(--btnFZ)*1);
  --btnImg:calc(var(--bodyFZ)*2.75 );
  --btnIFF:var(--icon);
  --btnIMX: 0 0.5em;
  --btnDir:row;
  --btnJC:center;
  --btnAF: "";
  --btnAFdis: inline-block;
  --btnAFMX: 0.5em ;
  --btnAFC: var(--inh);
  --btnAFFZ: calc(var(--btnFZ)*1);
  --btnAFFW: 900;
  --btnAFPOS: absolute;
  --btnAFRT: unset;
}
@media (max-width: 420px) {
  :root {
    --btnW:100%;
  }
}

.btn, .btnL, .btn2 {
  position: relative;
  z-index: 1;
  text-decoration: none;
  display: inline-block;
  align-items: center;
  align-content: center;
  text-align: center;
  justify-content: var(--btnJC);
  flex-direction: var(--btnDir);
  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%;
  text-align: center;
  will-change: filter;
  align-items: center;
  overflow: visible !important;
  transition: var(--btnTR);
}

.btn:after, .btnL: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);
  transition: 0.4s;
  width: 1em;
  aspect-ratio: 3/2;
  background-color: #fff;
  margin-top: 0.125em;
  clip-path: polygon(0% 0%, 0% 100%, 100% 100%);
}
.btn:after:is([target=_blank]:after), .btnL:after:is([target=_blank]:after), .btn2:after:is([target=_blank]:after) {
  content: "\f35d";
}
.btn:hover, .btnL:hover, .btn2:hover {
  filter: var(--btnHover);
}
.btn:hover:after, .btnL:hover:after, .btn2:hover:after {
  flex: unset;
}
.btn.__wh, .__wh.btnL, .__wh.btn2 {
  --btnBG:var(--wh);
  color: var(--ac);
  border: var(--line);
}
.btn.__tel:after, .__tel.btnL:after, .__tel.btn2:after {
  display: none;
}
.btn.__tel i:before, .__tel.btnL i:before, .__tel.btn2 i:before {
  font-size: calc(var(--btnIFZ) * 0.9);
}
.btn.__column, .__column.btnL, .__column.btn2 {
  flex-direction: column;
  gap: 0;
}
.btn.__anchor, .__anchor.btnL, .__anchor.btn2 {
  justify-content: center;
}
.btn.__anchor:after, .__anchor.btnL:after, .__anchor.btn2:after {
  rotate: 90deg;
  flex: unset;
  width: 1.5em;
}
.btn:is(.txbk *), .btnL:is(.txbk *), .btn2:is(.txbk *), .btn.__bk, .__bk.btnL, .__bk.btn2 {
  color: var(--wh);
}
.btn i, .btnL i, .btn2 i {
  font-size: var(--btnIFZ);
}
.btn img, .btnL img, .btn2 img {
  width: var(--btnImg);
  object-fit: contain;
  display: inline-block;
  vertical-align: middle;
}
.btn:has(img), .btnL:has(img), .btn2:has(img) {
  flex-direction: column;
}
.btn:has(img) img, .btnL:has(img) img, .btn2:has(img) img {
  width: var(--btnImg);
  margin-inline: auto;
  display: block;
}
.btn:is(a, span), .btnL:is(a, span), .btn2:is(a, span) {
  color: var(--btnC);
  transition: var(--btnTR);
}
.btn.__top::after, .__top.btnL::after, .__top.btn2::after {
  rotate: -90deg;
}
.btn.noArrow:after, .noArrow.btnL:after, .noArrow.btn2:after {
  display: none;
}
.btn.arrowRev:after, .arrowRev.btnL:after, .arrowRev.btn2:after {
  rotate: 180deg;
}
.btn[href*="#contents"]:after, [href*="#contents"].btnL:after, [href*="#contents"].btn2:after {
  rotate: -90deg;
}
.btn.__tr, .__tr.btnL, .__tr.btn2 {
  background: unset;
  color: var(--mc);
  border: 1px solid currentColor;
}
.btn.__bc, .__bc.btnL, .__bc.btn2 {
  --btnBG: var(--bc);
  color: var(--mc);
}
.btn.__mc, .__mc.btnL, .__mc.btn2 {
  --btnBG: var(--mc);
}
.btn.__tw, .__tw.btnL, .__tw.btn2 {
  background-color: var(--bg);
  --bg:var(--TW);
}
.btn.__ins, .__ins.btnL, .__ins.btn2 {
  background-color: var(--bg);
  --bg:var(--INS);
}
.btn.__lg, .__lg.btnL, .__lg.btn2 {
  padding-block: 1.5em;
}
.btn.__sc, .__sc.btnL, .__sc.btn2 {
  --btnBG: var(--sc);
}
.btn.__ac, .__ac.btnL, .__ac.btn2 {
  --btnBG: var(--ac);
}

i {
  font-style: normal;
}

.btnL {
  --btnFZ:var(--h3FZ);
  --btnBG:var(--mc60);
  --btnW:100%;
  --btnH:100%;
  --btnFW:700;
  -webkit-text-stroke: 4px var(--tr);
  paint-order: stroke;
}
.btnL:hover {
  -webkit-text-stroke-color: var(--ac);
}
.btnL::after {
  display: block;
  inset: 0;
  font-size: 5em;
  margin-inline: unset;
  align-content: center;
  opacity: 0.2;
  z-index: -1;
}
.btnL > i {
  font-size: 2em;
  display: block;
}

.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 (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 .drop ul li, .f_link, .pan1 a,
.h_nav a:not(.drop a, .nopointer, :has(> span)),
.banner a,
.h_nav a:not(.drop a, .nopointer, :has(> span), :is(.logo *)),
.nav a:not(.drop 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 .drop ul li:hover, .f_link:hover, .pan1 a:hover,
.h_nav a:hover:not(.drop a, .nopointer, :has(> span)),
.banner a:hover,
.h_nav a:hover:not(.drop a, .nopointer, :has(> span), :is(.logo *)),
.nav a:hover:not(.drop 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(.drop a, .nopointer, :has(> span)),
.banner a,
.h_nav a:not(.drop a, .nopointer, :has(> span), :is(.logo *)),
.nav a:not(.drop 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: 960px) {
  .f_link, .pan1 a,
  .h_nav a:not(.drop a, .nopointer, :has(> span)),
  .banner a,
  .h_nav a:not(.drop a, .nopointer, :has(> span), :is(.logo *)),
  .nav a:not(.drop ul li a),
  .f_nav ul a,
  .blog_text h3 span,
  .rss-title {
    background-position-x: 0%;
    animation: rightgrow var(--btnTR);
  }
}

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

.f_btn,
.h_nav .drop ul li {
  background-image: linear-gradient(var(--wh20), var(--wh20));
  background-size: 200% 100%;
}
.f_btn:active,
.h_nav .drop 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 (width <= 834px) {
  .part_dllist {
    --pdb:1em;
    --pdi: .5em;
  }
}
@media (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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: solid;
    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 (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);
}
.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 (width <= 640px) {
  .part_dllist.form_enkaku dl:is(#contents *) dt {
    min-width: 100px !important;
  }
}
@media (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 (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 (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-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:4px;
  --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) * 3);
}
.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 (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 (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.firstMC tr:first-of-type, .tbl_scroll.firstMC tr:first-of-type {
  background-color: var(--mc);
  color: #fff;
  font-weight: bold;
}
.tbl_normal.firstMC td:first-of-type, .tbl_scroll.firstMC td:first-of-type {
  background-color: var(--mc);
  color: #fff;
  font-weight: bold;
}
.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 (width <= 480px) {
  .tbl_normal td:is(#contents *), .tbl_scroll td:is(#contents *) {
    padding: 0.5em;
  }
}

.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 (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 (width <= 834px) {
  .scroll-hint-icon:before {
    display: inline-block;
  }
}
.scroll-hint-icon:after {
  transition-delay: 0s;
  top: 1em;
}

.__Xscr .items,
.__Xscr, .__Xscr .blog_list {
  flex-wrap: nowrap !important;
  overflow-x: scroll;
  justify-content: start !important;
  padding-bottom: 1em;
}
.__Xscr .items .box,
.__Xscr .box, .__Xscr .blog_list .box {
  flex-grow: 0;
  flex-shrink: 0;
}
@media (width <= 834px) {
  .__Xscr .items .box,
  .__Xscr .box, .__Xscr .blog_list .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;
}

[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 {
  margin: unset;
  width: 100%;
}
[class*=card]:not(.page-shop *) > div .box:is(#contents *) {
  overflow: visible;
}
[class*=card]:not(.page-shop *) > div .box div {
  flex: 1;
}
@media (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 {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}
.cardflex.__center {
  text-align: center;
}
.cardflex + .cardflex {
  margin-top: var(--gap);
}
.cardflex > * {
  flex: 1;
  min-width: unset;
}

.cardfix {
  gap: var(--gap);
  --w: 380px;
  flex-wrap: wrap;
}
.cardfix .box {
  width: var(--w);
}
@media (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:2em;
  --innerPX: calc(var(--gap)*1 );
  --innerPX: calc(var(--headG)*1 );
  --navPX: calc(var(--headG)*1 );
  --itemPX: calc(var(--headG)*0 );
  --logoPX: calc(var(--headG)*1 );
  --itemG: calc(var(--headG)*1 );
  --innerG: calc(var(--headG)*0 );
  --logoH:calc(var(--head) - 1em );
  --head:96px;
  --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 (width <= 1200px) {
  :root {
    --itemG: 1em;
  }
}
@media screen and (max-width: 960px) {
  :root {
    --innerPI: 1em;
    --logoPX: 1em;
    --headG: 1em;
    --head:80px;
  }
}
@media (width <= 834px) {
  :root {
    --headG: 0.5em;
    --head:64px;
    --itemG:0.5em;
  }
}
.fixPageTop .h_pagetop {
  --PTdis: block;
}

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

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

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

.h {
  --navFZ: var(--inh);
  --navLH: 1.5;
  --navFW: inherit;
  --dropBG:var(--mc);
  --dropC:var(--wh);
  --SPnavBG: var(--innerBG);
  --SPnavFZ: clamp(16px,2vw,18px);
  --dropbtnBG:var(--un);
  --dropbtnBF:var(--tx);
  --spanC:var(--cur);
  --bargap:calc(var(--btnH) * .2 );
  --spanW:65%;
  --spanH:2px;
  --menuM:0.5em 0;
  --menuH:48px;
  --SPulPY:calc(var(--head)*1.25) ;
  --SPnavPY: 1.25em;
  --SPnavPX: .5em;
  --dropbtnH: calc(1em + var(--SPnavPY)*2);
  --trans:0.6s;
  --btnW:240px;
}
.h:is(#header) .h_menu {
  display: grid;
  margin-inline: var(--headG);
}
.h:is(#header) .fix-pc {
  --btnFZ:var(--inh);
  font-size: var(--f16);
  right: 1em;
  bottom: 1em;
}
@media screen and (max-width: 960px) {
  .h:is(#header) .fix-pc {
    right: 0.5em;
    bottom: 0.5em;
    width: unset;
  }
}
.h:is(#header) .h_menu,
.h:is(#header) .h_nav a {
  color: #fff;
}
.h:is(#header) .h_menu:not(.home *), .h:is(#header) .h_menu:is(.active *), .h:is(#header) .h_menu:is(.trans *),
.h:is(#header) .h_nav a:not(.home *),
.h:is(#header) .h_nav a:is(.active *),
.h:is(#header) .h_nav a:is(.trans *) {
  color: inherit;
}
.h:is(#header) .h_logo {
  opacity: 0;
  pointer-events: none;
  transition: var(--trans);
}
.h:is(#header) .h_logo:not(.home *), .h:is(#header) .h_logo:is(.trans *) {
  opacity: 1;
  pointer-events: all;
}
@media (width <= 1560px) {
  .h:is(#header) .h_logo img {
    max-width: calc(var(--logoW) * 0.8);
  }
}
@media (width <= 960px) {
  .h:is(#header) .h_logo img {
    width: calc(var(--logoW) * 0.7);
  }
}
@media (width <= 480px) {
  .h:is(#header) .h_logo img {
    width: calc(var(--logoW) * 0.6);
  }
}
.h:is(#header) .h_menu {
  --bargap:calc(var(--btnH) * .2 );
  width: var(--head);
  height: var(--head);
  order: unset;
}
.h:is(#header) .h_inner {
  background-color: var(--un);
  transition: var(--trans);
}
.h:is(#header) .h_inner:not(.home *), .h:is(#header) .h_inner:is(.trans *) {
  background-color: var(--innerBG);
}
.h:is(#header) .nav_inner li.drop li > a > small {
  font-size: 1em;
}
.h:is(#header) .h_nav > ul li.drop ul a {
  padding-block: 0.25em;
}
.h:is(#header) .h_nav > ul li.drop ul a:hover {
  filter: var(--btnHover);
}
.h:is(#header) .h_nav > ul li.drop {
  transition-delay: 0s !important;
}
.h.innerWrap.trans {
  --head:72px;
}
@media (max-width: 834px) {
  .h.innerWrap.trans {
    --head:64px;
  }
}
.h.innerWrap .h_menu {
  --bargap:calc(var(--btnH) * .2 );
  width: var(--head);
  height: var(--head);
  order: unset;
}
@media (width <= 834px) {
  .h.innerWrap .fix-tab {
    padding: 0.5em;
    gap: 0.25em;
  }
}
@media (width <= 640px) {
  .h.innerWrap .fix-tab .btn {
    padding-inline: 0.5em;
  }
}
.h.innerWrap .h_nav {
  width: 100%;
}
.h.innerWrap .h_nav:is(.trans *) {
  width: unset;
}
.h.innerWrap .h_items {
  order: unset;
  justify-content: end;
}
.h.innerWrap .h_inner {
  flex-direction: row-reverse;
  justify-content: unset;
  align-content: center;
  background-color: unset;
  flex-wrap: wrap;
  transition: 0.4s;
  gap: 1.25vh;
}
@media screen and (max-width: 960px) {
  .h.innerWrap .h_inner {
    gap: unset;
  }
}
.h.innerWrap .h_inner:not(html.home *), .h.innerWrap .h_inner:is(.trans *) {
  background-color: var(--innerBG);
}
.h.innerWrap .h_logo {
  position: absolute;
  top: 0;
  left: var(--logoPX);
  transition: 0.6s 0.3s;
}
.h.innerWrap .h_logo:is(.trans *) {
  transition: 0.6s 0s;
}
@media (max-width: 1560px) {
  .h.innerWrap .h_logo:is(.trans *) {
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 960px) {
  .h.innerWrap .h_logo:is(.trans *) {
    opacity: 1;
    pointer-events: all;
  }
}
@media (width <= 1560px) {
  .h.innerWrap .h_logo img {
    max-width: calc(var(--logoW) * 0.8);
  }
}
@media (width <= 960px) {
  .h.innerWrap .h_logo img {
    width: calc(var(--logoW) * 0.7);
  }
}
@media (width <= 480px) {
  .h.innerWrap .h_logo img {
    width: calc(var(--logoW) * 0.6);
  }
}
.h.innerWrap .btn {
  padding-inline: var(--headG);
}
@media (width <= 834px) {
  .h.innerWrap .btn {
    min-width: unset;
  }
}
.h.innerWrap .nav_inner li.drop li > a > small {
  font-size: 1em;
}
.h.innerWrap .h_nav li.drop > a {
  transition-delay: 0.6s !important;
}
.h.innerWrap .h_nav > ul li.drop ul a {
  padding-block: 0.25em;
}
.h.innerWrap .h_nav > ul li.drop ul a:hover {
  filter: var(--btnHover);
}
.h.innerWrap .h_nav > ul li.drop {
  transition-delay: 0s !important;
}
.h.mvBottom {
  position: fixed;
  top: 0;
}
.h.mvBottom.init {
  position: absolute;
  top: calc(var(--mvImg));
}
@media screen and (max-width: 960px) {
  .h.mvBottom.init {
    position: fixed;
    top: 0;
  }
}
.h.mvBottom .h_inner {
  justify-content: center;
}
.h.mvBottom .nav li.logo {
  display: none;
}
@media screen and (max-width: 960px) {
  .h.mvBottom {
    position: fixed;
    top: 0;
  }
  .h.mvBottom .h_nav:has(li.logo) {
    display: block;
  }
  .h.mvBottom .h_nav:has(li.logo) li:not(.logo) {
    display: none;
  }
}
.h.innerCol .h_inner, .h.nav100 .h_inner {
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-evenly;
}
@media screen and (max-width: 960px) {
  .h.innerCol .h_inner, .h.nav100 .h_inner {
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    padding-block: unset;
  }
}
.h.innerCol .h_logo, .h.nav100 .h_logo {
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 960px) {
  .h.innerCol .h_logo, .h.nav100 .h_logo {
    position: unset;
  }
}
.h.innerCol .h_items, .h.nav100 .h_items {
  order: unset;
}
.h.innerCol .h_nav, .h.nav100 .h_nav {
  height: unset;
}
.h.leftSide {
  --headG:calc( 3vh);
  --innerPX:calc(var(--headG)*1 );
  --navFZ: 2.25vh;
  --btnW:calc(var(--head) - 3em );
  pointer-events: none;
  font-size: 1.8vh;
  position: fixed;
  top: 0;
  left: 0;
  width: var(--head);
  height: 100vh;
  z-index: 1000;
}
.h.leftSide a {
  text-decoration: none;
}
.h.leftSide .h_logo {
  max-width: 100%;
  height: unset;
  margin-inline: unset;
  margin-bottom: auto;
  filter: var(--pxdsbc);
}
.h.leftSide .h_logo:is(.trans *) {
  scale: 0.75;
}
.h.leftSide .h_inner {
  background-color: var(--un);
  padding-block: var(--innerPX);
  padding-inline: unset;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  transition: 0.4s;
  gap: 1em;
  pointer-events: none;
}
.h.leftSide .h_inner > * {
  pointer-events: all;
  transition: 0.6s;
}
.h.leftSide .h_items {
  --btnBG:var(--mc);
  --btnC:var(--wh);
  z-index: 100;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1em;
}
.h.leftSide .h_items > * {
  padding-inline: var(--btnPX);
}
.h.leftSide .h_text {
  padding: var(--btnPX);
  line-height: calc(var(--btnH) / 2);
  flex: unset;
  font-size: 70%;
}
.h.leftSide .h_menu {
  position: fixed;
  inset: unset;
  right: 0.5em;
  top: 0.5em;
  --btnH: 5vh;
  display: grid;
  opacity: 0;
  pointer-events: none;
  filter: var(--pxdsbc);
}
.h.leftSide .h_nav {
  width: 100%;
  z-index: 1;
  padding-block: var(--headG);
}
.h.leftSide .h_nav hr {
  border-bottom: 1px solid var(--tx);
  margin-block: unset;
  width: 100%;
}
.h.leftSide .h_nav a {
  border-bottom: var(--un);
}
.h.leftSide .h_nav > ul {
  width: 100%;
  flex-direction: column;
  justify-content: space-evenly;
}
.h.leftSide .h_nav ul > li {
  height: unset;
  flex: 1;
  padding-inline: unset;
  padding-block: var(--headG);
}
.h.leftSide .h_nav ul > li > a {
  height: 100%;
}
.h.leftSide .h_nav ul > li > a img {
  display: inline-block;
}
.h.leftSide .nav {
  display: none;
}
.h.leftSide .nav .nav_inner > ul {
  padding-block: calc(var(--logoH) * 2) !important;
}
.h.leftSide:not(.home *), .h.leftSide.trans {
  width: 100%;
}
.h.leftSide:not(.home *) .h_menu, .h.leftSide.trans .h_menu {
  opacity: 1;
  pointer-events: all;
}
.h.leftSide:not(.home *).active .h_nav, .h.leftSide.trans.active .h_nav {
  opacity: 1;
  pointer-events: all;
}
.h.leftSide:not(.home *).active .h_inner, .h.leftSide.trans.active .h_inner {
  background-color: var(--innerBG);
}
.h.leftSide:not(.home *):not(.active) .h_nav, .h.leftSide.trans:not(.active) .h_nav {
  transition: 0s;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 960px) {
  .h.leftSide {
    width: 100%;
  }
  .h.leftSide:is(.active) .h_nav {
    opacity: 1;
    pointer-events: all;
  }
  .h.leftSide:is(.active) .h_inner {
    background-color: var(--bc);
  }
  .h.leftSide .focus_trap {
    display: none;
  }
  .h.leftSide .h_nav {
    display: block;
    opacity: 0;
    pointer-events: none;
  }
  .h.leftSide .h_inner {
    padding-block: 1em 0;
    padding-inline: unset;
  }
  .h.leftSide .h_menu {
    right: 0;
    top: 0;
    --btnH: 4vh;
    opacity: 1;
    pointer-events: all;
  }
  .h.leftSide .h_items {
    flex-direction: row;
    padding-inline: unset;
  }
  .h.leftSide .h_items:is(#header *) .h_text {
    background-color: #fff;
  }
  .h.leftSide .h_items:is(#header *) .textlink {
    min-height: var(--btnH);
    padding-inline: var(--btnPX);
    font-size: var(--btnFZ);
    border-radius: var(--btnRad);
    background-color: #fff;
    display: inline-flex;
    align-items: center;
    gap: var(--btnG);
  }
  .h.leftSide.active .h_nav {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}
.h.parallel .h_inner {
  justify-content: center;
}
@media (width <= 834px) {
  .h.parallel .fix-tab:is(#header *) > * {
    text-align: center;
  }
  .h.parallel .fix-tab:is(#header *) .textlink {
    font-size: calc(var(--btnH) * 0.3);
  }
}
.h:has(.h_nav.__tate):is(html:has(.policy-wrap.active) *) {
  opacity: 0;
  pointer-events: none;
}
.h:has(.h_nav.__tate) nav.__tate {
  transition: var(--btnTR);
}
.h:has(.h_nav.__tate) nav.__tate:is(.trans *) {
  background-color: var(--innerBG);
}
.h:has(.h_nav.__tate) nav.__tate > ul {
  align-items: flex-start;
}
.h:has(.h_nav.__tate) nav.__tate > ul li {
  display: inline-block;
  writing-mode: vertical-rl;
  height: unset;
  text-align: left;
  transition: var(--btnTR);
}
.h:has(.h_nav.__tate) nav.__tate > ul li:hover {
  background-color: var(--bc);
}
.h:has(.h_nav.__tate) nav.__tate > ul li.drop {
  z-index: 1;
}
.h:has(.h_nav.__tate) nav.__tate > ul li.drop ul {
  right: 0;
  left: unset;
  transform-origin: right;
}
.h:has(.h_nav.__tate) nav.__tate > ul li.drop ul li {
  transition: var(--btnTR);
}
.h:has(.h_nav.__tate) nav.__tate > ul li.drop ul li:hover {
  background-color: var(--bc);
}
.h:has(.h_nav.__tate) nav.__tate > ul li.drop ul li {
  height: unset;
}
.h:has(.h_nav.__tate) nav.KUSHI > ul > li {
  background: linear-gradient(var(--ac30), var(--ac30)) no-repeat center/2px 100%;
  padding-block: 0.25em;
}
.h:has(.h_nav.__tate) nav.KUSHI > ul > li a, .h:has(.h_nav.__tate) nav.KUSHI > ul > li span {
  padding-inline: 0.35em;
  background-color: var(--innerBG);
  vertical-align: unset;
}
.h:has(.h_nav.__tate) nav.KUSHI > ul > li a:hover {
  filter: brightness(140%);
}
.h:has(.h_nav.__tate) nav.KUSHI > ul > li.drop ul {
  --size: .5em;
}
.h:has(.h_nav.__tate) nav.KUSHI > ul > li.drop ul a {
  padding-block: 0.5em;
}
.h:has(.h_nav.__tate) nav.KUSHI > ul > li.drop::after {
  background-color: var(--ac);
}
.h:has(.h_nav.__tate).trans .btn {
  background-color: color-mix(in srgb, var(--btnBG), transparent 30%);
}
.h:has(.h_nav.__tate).trans .btn:hover {
  background-color: var(--btnBG);
}
@media (width <= 480px) {
  .h:has(.h_nav.__tate) .btn {
    --btnDir:column;
    --btnFZ:14px;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 960px) {
  .h:has(.h_nav.__tate) {
    top: 0;
    left: 0;
  }
}
.h:has(.h_nav.__tate) .h_inner {
  height: unset;
  background-color: unset;
  align-items: flex-start;
}
@media (width <= 834px) {
  .h:has(.h_nav.__tate) .h_inner {
    justify-content: space-between;
  }
}
.h:has(.h_nav.__tate) .h_logo {
  overflow: hidden;
}
.h:has(.h_nav.__tate) .h_items.fix-pc {
  flex-wrap: nowrap;
  bottom: var(--gap);
  right: var(--gap);
  box-shadow: 0 0 2px var(--mc);
}
@media screen and (max-width: 960px) {
  .h:has(.h_nav.__tate) .h_items.fix-pc {
    flex-direction: row;
    bottom: 0;
    right: 0;
  }
}
@media (width <= 834px) {
  .h:has(.h_nav.__tate) .h_items.fix-pc {
    flex-direction: row;
    width: 100%;
  }
  .h:has(.h_nav.__tate) .h_items.fix-pc > * {
    flex: 1;
    min-width: unset;
  }
}
.h.navColumnRight {
  --navgap:2vh;
}
.h.navColumnRight .h_inner {
  align-items: flex-end;
  padding-bottom: 0.5em;
}
@media screen and (max-width: 960px) {
  .h.navColumnRight .h_inner {
    align-items: center;
    padding-bottom: unset;
  }
}
.h.navColumnRight .h_items {
  padding-bottom: 0.5em;
}
@media screen and (max-width: 960px) {
  .h.navColumnRight .h_items {
    padding-bottom: unset;
  }
}
.h.navColumnRight .textlink:not(.__tel) {
  font-size: 1.25em;
}
.h.navColumnRight .textlink {
  font-size: 1.25em;
}
@media screen and (max-width: 960px) {
  .h.navColumnRight .textlink {
    padding-block: 0.25em;
  }
}
.h.navColumnRight .h_nav {
  position: absolute;
  right: 0;
  top: var(--head);
  padding-block: var(--navgap);
}
.h.navColumnRight .h_nav > ul {
  flex-direction: column;
  align-items: flex-end;
  gap: var(--navgap);
}
.h.navColumnRight .h_nav:is(.trans *) {
  --tsW: 12px;
  --txshbk: 0 0 var(--tsW) var(--wh),0 0 var(--tsW) var(--wh),0 0 var(--tsW) var(--wh),0 0 var(--tsW) var(--wh);
}
.h.navColumnRight .h_nav:is(.trans *) a {
  color: var(--tx);
}
.h.navColumnRight .h_nav > ul li.drop ul {
  right: 0;
}
.h.navColumnRight .h_nav > ul li.drop ul a {
  justify-content: flex-end;
  padding-inline: var(--headG);
}
.h.navColumnRight .h_nav > ul li.drop ul {
  transform-origin: right;
  padding-block: 1em;
}
.h.navColumnRight .h_nav > ul li.drop ul li {
  display: grid;
  place-items: center end;
  place-content: center end;
  padding-inline: var(--headG);
}
.h.navColumnRight .h_nav > ul li.drop ul li a {
  padding-inline: unset;
}
.h.navBtn {
  --innerPX: calc(var(--un)*1 );
  --navPX: calc(var(--un)*.5 );
  --itemPX: calc(var(--un)*1 );
  --itemG: 0em;
  pointer-events: none;
}
.h.navBtn .h_inner {
  align-items: unset;
}
.h.navBtn .h_inner > * {
  pointer-events: all;
}
.h.navBtn .h_logo:is(a) {
  height: var(--btnH);
}
.h.navBtn .h_menu {
  --btnH: var(--head);
  --btnBG:var(--wh);
  background-color: var(--btnBG);
  border-radius: unset;
}
.h.navBtn .h_nav ul li {
  padding: unset;
}
.h.navBtn .h_nav ul a {
  height: 100%;
}
.h.navBtn .h_nav > ul li.drop::after {
  top: calc(100% - var(--size) - 0.5vh);
}
.h.menuPC .h_menu {
  display: grid;
}
.h.menuPC .h_nav {
  display: none;
}
.h.noFix {
  position: absolute;
}
@media screen and (max-width: 960px) {
  .h.noFix {
    position: fixed;
  }
}
.h.nav100 {
  --innerGap:calc(var(--head)*.14 );
}
@media screen and (max-width: 960px) {
  .h.nav100 {
    --innerGap:0px;
  }
}
.h.nav100 .h_nav {
  height: unset;
  width: 100%;
}
.h.nav100 .h_nav > ul {
  display: grid;
  grid-auto-flow: column;
  place-content: stretch;
}
.h.navLeft .h_logo {
  margin-right: unset;
}
@media screen and (max-width: 960px) {
  .h.navLeft .h_logo {
    margin-right: auto;
  }
}
.h.navLeft .h_nav {
  margin-right: auto;
}

.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(--innerBG);
  background-image: var(--innerBGI);
  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 (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: 960px) {
  .h_btn:is(a) {
    min-width: unset;
  }
}
@media (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 (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: 960px) {
  .h_pagetop {
    mix-blend-mode: unset;
  }
}
@media (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 (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 (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 (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 (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 (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 (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 (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: 960px) {
  .h_items.fix-menu {
    flex-wrap: wrap;
    background-color: var(--innerBG);
    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 (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 (width <= 960px) {
  .h_items.fix-960 {
    flex-wrap: wrap;
    background-color: var(--innerBG);
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    padding: 0.5em;
    gap: 0.5em;
    border-top-left-radius: 10px;
    justify-content: flex-end;
  }
}
@media (width <= 834px) {
  .h_items.fix-tab {
    position: fixed;
    top: unset;
    bottom: 0;
    right: 0px;
    width: 100%;
    padding: 0.25em 0.25em;
    background-color: var(--innerBG);
  }
  .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 (width <= 480px) {
  .h_items.fix-tab .textlink > img, .h_items.fix-tab .btn > img {
    display: none !important;
  }
}
@media (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(--innerBG);
  }
  .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 (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 (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 (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: 960px) {
  .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.drop {
  --size:7.5px;
  will-change: transform;
}
.h_nav > ul li.drop::after {
  content: "";
}
@media screen and (max-width: 960px) {
  .h_nav > ul li.drop::after {
    display: none;
  }
}
.h_nav > ul li.drop ul {
  position: absolute;
  top: 100%;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
  scale: 0 1;
  opacity: 0;
  background-color: var(--dropBG);
  transition: var(--navTRT);
}
.h_nav > ul li.drop ul li {
  position: relative;
  height: 3em;
}
.h_nav > ul li.drop ul a {
  width: 100%;
  margin-inline: auto;
  padding-inline: 1.5em;
  white-space: nowrap;
}
.h_nav > ul li.drop ul a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: var(--dropC);
}
.h_nav > ul li.drop .dropbtn {
  display: none;
}
.h_nav .focus_trap {
  display: none;
}
.h_nav li.drop:hover ul {
  pointer-events: all;
  scale: 1 1;
  opacity: 1;
}
.h_nav li.drop ul:hover {
  pointer-events: all;
  scale: 1 1;
}
.h_nav li.drop 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: 960px) {
  .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(--pad) * 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: 960px) {
  .nav_inner > ul {
    width: 66%;
  }
}
@media (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.droplink {
  flex: 1;
}
.nav_inner > ul a.nopointer {
  cursor: pointer;
}
.nav_inner li.drop {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.nav_inner li.drop:has(.dropbtn) {
  padding-right: var(--h);
}
.nav_inner li.drop::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.drop ul {
  width: 100%;
  overflow: hidden;
  transition: 0.6s;
}
.nav_inner li.drop 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.drop li > a {
  padding-block: 0;
  width: 100%;
}
.nav_inner li.drop li > a:is(#header *) {
  transition: 0.4s;
}
.nav_inner li.drop li:is(ul.show > *) {
  grid-template-rows: 1fr;
}
.nav_inner li.drop li:is(ul.show > *) a {
  padding-block: var(--SPnavPY);
}
.nav_inner .dropbtn {
  position: absolute;
  right: 0;
  top: 0;
  background-color: var(--dropbtnBG);
  width: var(--dropbtnH);
  height: var(--dropbtnH);
  display: grid;
  place-items: center;
  align-self: center;
  --bargap:3px;
}
.nav_inner .dropbtn:after, .nav_inner .dropbtn:before {
  content: "";
  display: block;
  grid-area: 1/1;
  width: 33%;
  height: 2px;
  background-color: var(--dropbtnBF);
  transition: 0.4s;
}
.nav_inner .dropbtn:after {
  rotate: 90deg;
}
.nav_inner .dropbtn:focus {
  outline-color: transparent;
}
.nav_inner .dropbtn:active {
  scale: 1.05;
}
.nav_inner .dropbtn.active:after {
  rotate: 360deg;
}

:is(.h, .f) [class*=li-bd]:not(.nav) {
  height: unset;
}
:is(.h, .f) [class*=li-bd]:not(.nav) > ul > li {
  --line: 1px solid var(--cur);
  padding-inline: var(--headG);
  line-height: 1.3;
}
:is(.h, .f) .li-bdInline > ul > li {
  border-inline: var(--line);
}
:is(.h, .f) .li-bdInline > ul > li + li {
  margin-inline-start: -1px;
}
:is(.h, .f) .li-bdL > ul > li {
  padding-inline: var(--headG) 0;
}
:is(.h, .f) .li-bdL > ul > li + li {
  border-left: var(--line);
}
:is(.h, .f) .li-bdR > ul > li {
  padding-inline: 0 var(--headG);
  border-right: var(--line);
}

:is(.h, .f) [class*=li-slash]:not(.nav) {
  height: unset;
}
:is(.h, .f) [class*=li-slash]:not(.nav) > ul > li {
  line-height: 1;
}
:is(.h, .f) [class*=li-slash]:not(.nav) > ul > li:first-child:before {
  display: none;
}
:is(.h, .f) [class*=li-slash]:not(.nav) > ul > li > * {
  line-height: 1.2;
  gap: 0.5em;
  place-items: start;
}
:is(.h, .f) [class*=li-slash]:not(.nav) > ul > li > *:before {
  content: "/";
  inset: unset;
  left: 0em;
  background-color: unset;
  color: inherit;
  font-size: 1.5em;
  font-weight: 100;
  margin-right: 0.25em;
}
:is(.h, .f) [class*=li-slash]:not(.nav) > ul > li.drop a {
  place-items: center;
}

.bfChevron a:before {
  content: "\f105";
  font-family: var(--icon);
  font-weight: var(--btnAFFW);
  color: var(--sc);
  font-size: 0.75em;
  margin-right: 0.25em;
}

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_contact {
  background: no-repeat 100% 50%/auto 100%;
}
@media (max-width: 960px) {
  #footer .f_contact {
    font-weight: 700;
    background-size: cover;
  }
}
#footer .f_main {
  gap: 2em 0;
  align-items: flex-end;
}
#footer .f_main > * {
  margin-top: unset;
  width: 50%;
}
@media (max-width: 1680px) {
  #footer .f_main {
    padding-bottom: 180px;
  }
}
@media (width <= 960px) {
  #footer .f_main {
    padding-bottom: var(--bl);
  }
  #footer .f_main > *:is(#footer *) {
    flex-basis: 100%;
  }
}
#footer .f_main .f_copy {
  width: unset;
  margin-left: auto;
}
#footer .f_main .f_nav {
  --gap:1em;
  flex-direction: row;
  flex-wrap: wrap;
  flex: 1 0;
}
#footer .f_main .f_nav ul {
  gap: 0.5em 0em;
}
#footer .f_info {
  padding-right: 1em;
}
@media (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(--Wpdb);
  display: flex;
  flex-wrap: wrap;
}
.f .f_row {
  display: flex;
  padding: 1.5%;
  align-items: center;
  justify-content: space-evenly;
}
@media (width <= 834px) {
  .f .f_row {
    flex-direction: column;
    padding: var(--pad);
  }
}
.f .f_column {
  display: flex;
  flex-direction: column;
}
.f .f_column > .f_column {
  padding-block: var(--bl05);
}
@media (width <= 960px) {
  .f .f_column > .f_column {
    padding-inline: var(--pad);
  }
}
.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 {
  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 (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(--pad2));
  position: relative;
  max-width: 100%;
  margin-inline: auto;
  position: relative;
  padding-inline: var(--pad);
}
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_form .part_image {
  --imgPer: 0.5;
  --imgW: 50%;
}
.part_form .part_image.AIU > div {
  align-items: unset;
}
.part_form .part_image.AIC > div {
  align-items: center;
}
.part_form .part_image.AIS > div {
  align-items: flex-start;
}
.part_form .part_image.AIE > div {
  align-items: flex-end;
}

.part_image picture {
  width: var(--imgW);
}
.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 (width <= 480px) {
  .part_flexbox div.box:is(#contents *) {
    flex: 0 0 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;
}

: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 {
  white-space: nowrap;
  font-family: var(--subFF);
  font-weight: var(--subFW);
  word-break: break-word;
  letter-spacing: 0em;
  line-height: 2;
  font-style: normal;
  font-size: var(--bigFZ);
}
: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])) i:is(.txbk), :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(i:not([class*=la])) i:is(.txbk *) {
  color: var(--bk);
}
: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 {
  margin-block: 0.675em;
  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;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--barGap);
}
: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;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:is(.H-bd *) {
  border-bottom: unset;
}
:is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:before, :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:after {
  content: "";
  height: var(--bdw);
  width: 80px;
  background-color: var(--bdc);
  font-size: inherit;
}
@media (width <= 480px) {
  :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:before, :is(p:not(:has(> a)), h1, h2, h3, h4, h5):has(small) small:after {
    flex: 1;
  }
}

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

.card_slide {
  flex-wrap: nowrap;
}
@media (width <= 640px) {
  .card_slide {
    --gap:10px;
  }
}
.card_slide:not(.noDot) + div {
  margin-top: var(--bl);
}
.card_slide img {
  object-fit: cover;
}
.card_slide p {
  font-size: var(--PFZ);
}
.card_slide .box {
  padding: 2em;
}
@media (width <= 834px) {
  .card_slide .box {
    padding: 1em;
  }
}
.card_slide .box article > div {
  padding: unset;
  font-size: 0.875em;
  margin-top: 1em;
  background-color: unset;
}
.card_slide.__visible .slick-list {
  overflow: visible !important;
}

.sns01 {
  --divBG:unset;
  --imgW: min(300px, 33%);
}
.sns01 div.sns_list > div div.sns_text ul a {
  background-color: unset;
  color: var(--mc);
}

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

:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div i {
  position: absolute;
  right: 0;
  top: -0.5em;
  font-size: 2em;
  width: 2em;
  height: 2em;
  border-radius: 1000px;
  background-color: var(--sc);
  color: var(--wh);
  text-align: center;
  line-height: 1.8;
}
: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 (width <= 834px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div > * {
    flex: 0 0 calc(50% - var(--gap) / 2);
  }
}
@media (width <= 480px) {
  :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) > div > *:is(#contents *) {
    flex: 0 0 100%;
  }
}

:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix) + [class*=card] {
  margin-top: var(--gap);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div h2, :is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div p {
  margin-bottom: unset;
}
: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 p {
  pointer-events: all;
  background-color: #fff;
  writing-mode: vertical-rl;
  vertical-align: middle;
  margin-left: auto;
  align-content: center;
  padding: 1em;
  padding-left: 0.5em;
  min-height: 12em;
  text-align: center;
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__layer > div p: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: 0 0.25em;
  margin-top: var(--btnAFMX);
  transition: 0.4s;
  width: 1em;
  aspect-ratio: 3/2;
  background-color: var(--ac);
  clip-path: polygon(0% 0%, 0% 100%, 100% 100%);
}
:is(.card3, .card2, .card4, .card5, .cardflex, .cardfix).__icon {
  --w:6em;
  text-align: center;
}
@media (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 {
  border: 1px solid var(--mc);
}
: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 (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 (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 (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 (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 (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 (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 (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 (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 (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(--bl05);
  --p:2vmin;
  --bg:var(--wh);
  --beforeFZ:75%;
  --beforeC:var(--mc);
  --afterBG:var(--bc2);
}
.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;
}
@media (width <= 640px) {
  .fb_flow {
    --p:var(--pad);
  }
}
.fb_flow .box {
  background-color: var(--bg);
}
.fb_flow .box:is(#contents div) {
  counter-increment: cnt;
  width: 100%;
  overflow: visible;
  display: flex;
  align-items: flex-start;
  font-size: 3.6vmax;
  border-radius: var(--rad);
  padding: var(--p);
  gap: var(--p);
}
.fb_flow .box:is(#contents div) + .box {
  font-size: clamp(0px, 4vw, 30px);
  margin-top: 2.2em;
}
.fb_flow .box:is(#contents div):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 div):last-child:after {
  display: none;
}
.fb_flow .box:is(#contents div) article {
  width: 100%;
  font-size: var(--f16);
  font-weight: 400;
  display: flex;
  height: 100%;
  flex-wrap: wrap;
  gap: 1em;
}
.fb_flow .box:is(#contents div) article img:is(#contents *) {
  width: 100%;
}
.fb_flow .box:is(#contents div) article:has(> div:empty) .im {
  width: 100%;
}
.fb_flow .box:is(#contents div) article .im {
  order: 1;
  font-size: var(--beforeFZ);
  width: 30%;
  max-width: 100%;
}
.fb_flow .box:is(#contents div) article .im:is(.__icon *) {
  padding: 4em;
}
@media (width <= 834px) {
  .fb_flow .box:is(#contents div) article .im:is(.__icon *) {
    width: 160px;
    padding: 1em;
  }
}
@media (width <= 834px) {
  .fb_flow .box:is(#contents div) article .im {
    width: 360px;
    flex: unset !important;
    order: -1;
    margin-inline: auto;
  }
}
.fb_flow .box:is(#contents div) article > div {
  flex: 1;
  margin-top: unset;
}
@media (width <= 834px) {
  .fb_flow .box:is(#contents div) article > *:is(#contents *) {
    flex-basis: 100%;
  }
}
.fb_flow .box:is(#contents div) article > h3 {
  display: none;
}
.fb_flow .box:is(#contents div) 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 div) 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 div) article div > :is(p, h3) i {
  margin-right: 0.25em;
}
.fb_flow .box:is(#contents div) article div > :is(p, h3):has(> a) {
  border: unset;
}
.fb_flow .box:is(#contents div) 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 div) article .btn {
  font-family: var(--ser);
  margin-right: 0.5em;
  margin-top: 0.5em;
  font-size: clamp(18px, 2vw, 24px);
}

.H-bdl {
  --w:8px;
  --o:calc(var(--w)*.5 );
  --c:var(--mc);
}

body > * .border {
  border: var(--line);
}
body > * .borderB {
  border-bottom: var(--line);
}
body > * .borderT {
  border-top: var(--line);
}
body > * .borderY {
  border-block: var(--line);
}
body > * .borderX {
  border-inline: var(--line);
}

section > .borderT {
  padding-top: var(--Wpdb);
  --line:1em solid var(--ac);
}
section > .borderT:is(#contents *) {
  margin-inline: var(--contout);
  max-width: unset;
  padding-inline: var(--incont);
}

section > .borderB {
  padding-bottom: var(--Wpdb);
  --line:1em solid var(--ac);
}
section > .borderB:is(#contents *) {
  margin-inline: var(--contout);
  max-width: unset;
  padding-inline: var(--incont);
}

[class*=border] {
  --bdc:var(--bc);
}

.border7 {
  border: 7px solid var(--bc2);
}

.li-label li {
  text-decoration: none;
  display: inline-block;
  background-color: var(--mc);
  color: var(--wh) !important;
  padding-block: 0.25em;
  padding-inline: 0.5em;
  margin-inline-end: 0.5em;
  margin-block-end: 0.5em;
  border-radius: var(--rad);
  vertical-align: unset;
  font-weight: 700;
}

.fb_column .box {
  padding-block: 1.5em;
}
.fb_column .box + .box {
  border-top: 1px dashed var(--tx20);
}
.fb_column .box article {
  display: flex;
  justify-content: center;
}
.fb_column .box article .im {
  width: 8em;
  align-content: center;
}
.fb_column .box article .im img {
  margin: auto;
}
@media (width <= 834px) {
  .fb_column .box article {
    flex-wrap: wrap;
  }
  .fb_column .box article > * {
    width: 100%;
  }
  .fb_column .box article .im {
    max-width: 66%;
  }
}
.fb_column .box div {
  margin-top: unset;
  flex: 1 1 360px;
}
.fb_column .box div a {
  padding-inline: 1em;
}
.fb_column .box:has(div > [class*=bg]):after {
  background-color: var(--wh);
  color: var(--mc);
}
.fb_column .box:has(div > [class*=bg]) article > div {
  color: var(--wh);
}
.fb_column .box:has(div > [class*=bg]) article > div h1, .fb_column .box:has(div > [class*=bg]) article > div h2, .fb_column .box:has(div > [class*=bg]) article > div h3 {
  border-color: var(--wh);
}
.fb_column .box:has(div > [class*=bg]) article > div em {
  color: var(--wh);
}
.fb_column .box:has(div > [class*=bg]) article > div [class*=bg] {
  display: none;
}
.fb_column .box:has(div > .bgmc) article > div {
  background-color: var(--mc);
}
.fb_column .box:has(div > .bgac) article > div {
  background-color: var(--ac);
}
.fb_column .box:has(div > .bgsc) article > div {
  background-color: var(--sc);
}

#contents .form_simple {
  line-height: 1.5;
  --bdc:var(--tx20);
  --bdw:1px;
  --bds:solid;
  --thumbC:var(--tx10);
  --pdb:1.5em;
  --pdi: .5em;
  --dtw:bold;
  --maxH:26em;
}
@media (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 (width <= 1200px) {
  #contents .form_simple.__border {
    border-inline: 6vmin solid transparent;
  }
}

@media (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 {
  --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.5);
  border: none !important;
  position: relative;
}
.fb_qa .box + .box {
  margin-top: 20px;
}
.fb_qa .box a {
  color: var(--linkC);
}
.fb_qa .box:nth-child(odd) {
  padding-right: calc(var(--bfFZ) * 1.5);
  background-color: var(--qBG);
  cursor: pointer;
  transition: var(--btnTR);
}
.fb_qa .box:nth-child(odd):hover {
  opacity: 0.8;
}
.fb_qa .box:nth-child(even) {
  background-color: var(--aBG);
  display: none;
}
.fb_qa .box:nth-child(even).__open {
  display: block;
}
.fb_qa .box:nth-child(odd):before {
  content: "Q";
}
.fb_qa .box:nth-child(even):before {
  content: "A";
  background-color: var(--abfBG);
}
.fb_qa .box:nth-child(even):after {
  content: unset;
}
.fb_qa .box:before, .fb_qa .box:after {
  font-family: var(--bfFF);
  color: var(--bfC);
  background-color: var(--bfBG);
  display: block;
  position: absolute;
  left: 1em;
  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: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.show:after {
  scale: -1 1;
}
.fb_qa .box:has(article > figure) {
  width: 100%;
  align-items: flex-start;
}
.fb_qa .box:has(article > figure) article {
  display: flex;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
  gap: 1em;
}
.fb_qa .box:has(article > figure) figure {
  max-width: 100%;
  order: 1;
  width: var(--imgW);
  margin-left: auto;
}
@media (width <= 640px) {
  .fb_qa .box:has(article > figure) figure {
    width: var(--imgWsp);
  }
}
.fb_qa .box:has(article > figure) article > div {
  flex: 1;
}
@media (width <= 640px) {
  .fb_qa .box: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 (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 (width <= 640px) {
  .it01:is(#contents *), .ti01:is(#contents *) {
    --imgW:var(--spMW);
  }
}

@media (width <= 834px) {
  .it01.contoutR article, .ti01.contoutR article {
    padding-inline-end: var(--pad);
  }
}
.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(--BL);
}
.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(--bl05);
}
@media (width <= 480px) {
  .it01[class*=art-], .ti01[class*=art-] {
    --bpMW:100%;
  }
}
@media (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 (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(--pad);
  }
}
.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(--incont);
  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 (width <= 834px) {
  .it01.homeIT article, .ti01.homeIT article {
    margin-inline: var(--pad);
    --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(--incont));
}
.it01.kasouIT .im img, .ti01.kasouIT .im img {
  border-radius: unset;
  height: 100% !important;
}
@media (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 (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(--incont);
  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 (width <= 834px) {
  .part_image.homeIT > div.right > div {
    margin-inline: var(--pad);
    --trans:40%;
  }
}
.part_image.homeIT h1, .part_image.homeIT h2, .part_image.homeIT h3 {
  margin: unset;
  line-height: unset;
}

.imgMask figure {
  z-index: -1;
}
.imgMask img:not(article *) {
  mask-image: radial-gradient(closest-side, #000 50%, rgba(0, 0, 0, 0.0666666667) 95%, rgba(0, 0, 0, 0) 100%);
}

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

div:has(> .bgToright, > .bgToBottom) {
  z-index: 1;
  position: relative;
}

.bgToRight, .bgToBottom {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: no-repeat center/100% 100%;
}
.bgToRight + *, .bgToBottom + * {
  margin-top: unset;
}

.bgToRight {
  --bgStart:var(--gr);
  --bgStartPer:33%;
  --bgEnd:var(--tr);
  background-image: linear-gradient(to right, var(--bgStart) var(--bgStartPer), var(--bgEnd));
}

.bgToBottom {
  background-image: linear-gradient(to bottom, var(--bgStart), var(--bgEnd));
}

.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;
  height: 100%;
  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 (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 (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(--bl);
  padding-block: var(--pad);
  display: grid;
  place-items: center start;
  place-content: center start;
}
@media (width <= 1440px) {
  .mv_slide li:has(> div):is(#contents *) > div, .mv_img li:has(> div):is(#contents *) > div {
    padding-inline: var(--pad);
  }
}
@media (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 (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 (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 (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 (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 .dotCover:after {
  display: block !important;
  content: "";
  inset: 0;
  --col:var(--wh50);
  --size:4px;
  --pos:0px;
  background: repeating-radial-gradient(var(--col), var(--col) var(--pos), transparent calc(var(--pos) + 1px), transparent) repeat center/var(--size) var(--size);
}
.mv .mv_video {
  margin-inline: auto;
  width: 100%;
  height: var(--mvImg);
}
.mv .mv_video :is(img, video, iframe) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: unset;
  pointer-events: none;
  margin: unset;
  display: block;
  object-fit: contain !important;
  aspect-ratio: 16/9;
}
.mv:has(.bg_slide) {
  min-height: var(--mvImg);
}
.mv_switch {
  z-index: 1;
  --jsBlur:0px;
  transition: 0.6s 0.4s;
  transform-origin: center bottom;
  overflow: hidden;
  height: 100%;
  transition: 1s;
}
.mv_switch.hide {
  opacity: 0;
  visibility: hidden;
}
.mv_switch:after {
  display: none;
}
.mv_switch.__fixed {
  position: fixed;
  inset: 0;
}
.mv_switch img {
  margin: unset;
  display: block;
  width: 100%;
  max-width: 100%;
  max-height: var(--mvImg);
}
@media (width <= 834px) {
  .mv_switch img {
    height: calc(var(--mvImg) / 2) !important;
    width: unset !important;
  }
}
.mv_switch .slick-slide {
  height: 100%;
  outline: none;
  pointer-events: none;
}
.mv_switch .slick-slide > ul {
  height: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.mv_switch .slick-slide > ul > li {
  max-width: 85%;
}
.mv_switch .slick-slide > ul > li:nth-child(even) {
  margin-top: auto;
}
@media (width <= 834px) {
  .mv_switch .slick-slide > ul {
    flex-direction: column !important;
  }
  .mv_switch .slick-slide > ul > li:nth-child(odd) {
    margin-left: auto;
  }
}
.mv_switch .card2, .mv_switch .ul_card2 > ul {
  --gap:0px;
  display: flex;
  justify-content: space-between;
}
@media (width <= 834px) {
  .mv_switch .card2, .mv_switch .ul_card2 > ul {
    flex-direction: column !important;
  }
  .mv_switch .card2 > *, .mv_switch .ul_card2 > ul > * {
    width: 100% !important;
  }
}
.mv_switch .card2 > *:nth-child(even), .mv_switch .ul_card2 > ul > *:nth-child(even) {
  animation-delay: 0.3s;
}
@keyframes cp-hide {
  0% {
    clip-path: inset(0);
  }
  99% {
    clip-path: inset(0 0 100% 0);
  }
  100% {
    clip-path: inset(100% 0 0 0);
  }
}
@keyframes cp-show {
  0% {
    clip-path: inset(100% 0 0 0);
  }
  99% {
    clip-path: inset(0);
  }
}
@keyframes cp-hide-tab {
  0% {
    clip-path: inset(0);
  }
  99% {
    clip-path: inset(0 0 0 100%);
  }
  100% {
    clip-path: inset(0 100% 0 0);
  }
}
@keyframes cp-show-tab {
  0% {
    clip-path: inset(0 100% 0 0);
  }
  99% {
    clip-path: inset(0);
  }
}
.mv_switch .slick-list {
  height: 100%;
}
.mv_switch .slick-track {
  display: flex;
  height: 100%;
  gap: unset;
}
.mv_switch .slick-slide {
  padding-inline: unset;
  margin: unset;
}

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

#contents :is(.mv_img, .mv_slide) img:is(#contents *) {
  object-position: center top;
}

#contents :is(.mv_img, .mv_slide) {
  margin-inline: auto;
}
#contents :is(.mv_img, .mv_slide).__framed {
  padding-inline: calc(var(--headG) * 2);
}
#contents :is(.mv_img, .mv_slide).__framed > * {
  border-radius: var(--rad2);
  overflow: hidden;
}
#contents :is(.mv_img, .mv_slide) 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) img:is(#contents *) {
    height: var(--un);
    aspect-ratio: 3/2;
  }
}
@media (width <= 834px) {
  #contents :is(.mv_img, .mv_slide) img:is(#contents *) {
    aspect-ratio: 4/3;
  }
}

#contents :is(.mv_img, .mv_slide) .slick-slide a {
  text-decoration: none;
  color: inherit;
}
#contents :is(.mv_img, .mv_slide) .slick-slide article {
  display: grid;
}
#contents :is(.mv_img, .mv_slide) .slick-slide article > * {
  grid-area: 1/1;
}
#contents :is(.mv_img, .mv_slide) .slick-slide article > div {
  font-family: var(--eng);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 2% 12%;
  z-index: 1;
  font-size: clamp(20px, 5vw, 40px);
  font-weight: 500;
  text-shadow: var(--txshwh);
  transition: opacity 1s 1s, filter 1.5s 1s;
  opacity: 0;
}
#contents :is(.mv_img, .mv_slide) .slick-slide article > div:is(.slick-current *) {
  opacity: 1;
  filter: blur(0px);
}
@media screen and (max-width: 960px) {
  #contents :is(.mv_img, .mv_slide) .slick-slide article > div {
    text-align: center;
    font-weight: 700;
  }
}

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

.cont01 {
  margin-top: unset;
}
.cont02 {
  padding: var(--pad);
}
.cont02 .box:is(#contents *) {
  display: flex;
  flex-direction: column;
}
.cont02 .box:is(#contents *) > img {
  width: unset;
  order: 1;
  margin-left: auto;
}
@media (max-width: 834px) {
  .cont02 .box:is(#contents *) {
    flex-basis: 100%;
  }
  .cont02 .box:is(#contents *) > img {
    max-width: 40%;
  }
}
.cont04 > div:is(#contents *) {
  gap: 2em var(--gap);
}
.cont04 .box:is(#contents *):nth-child(odd) {
  margin-left: var(--incont);
  width: calc(50% - var(--incont) - var(--gap) / 2);
}
.cont04 .box:is(#contents *):nth-child(even) {
  flex: 1;
  padding-inline-end: var(--pad);
}
.cont04 .box:is(#contents *):nth-child(even) > div, .cont04 .box:is(#contents *):nth-child(even) > div > div {
  height: 100%;
}
.cont04 .box:is(#contents *):nth-child(even) .btnL {
  background-color: unset;
  color: var(--ac);
  -webkit-text-stroke: 6px var(--wh);
  paint-order: stroke;
  border-color: #fff;
}
@media (max-width: 960px) {
  .cont04 .box:is(#contents *):nth-child(even) .btnL {
    aspect-ratio: 3/1;
  }
}
.cont04 .box:is(#contents *):nth-child(even) .btnL::after {
  font-size: 7em;
}
.cont04 .box:is(#contents *) p:has(> a) > * {
  min-width: 250px;
}
.cont04 .box:is(#contents *) .sheet {
  padding: var(--pad);
  --hlh: 2;
  font-weight: 500;
}
.cont04 .box:is(#contents *) .sheet b {
  font-weight: 700;
  color: var(--ac);
}
@media (max-width: 960px) {
  .cont04 .box:is(#contents *):is(:nth-child(n)) {
    flex-basis: 100%;
    margin-inline: unset;
    padding-inline: var(--pad);
  }
}
.cont05 {
  padding: var(--pad);
}
.cont05 .box:is(#contents *) {
  display: flex;
  flex-direction: column;
  border-radius: var(--rad);
}
.cont05 .box:is(#contents *):not(:has(img, .btnL)) {
  padding: 1.5em;
  background-color: #fff;
}
@media (max-width: 834px) {
  .cont05 .box:is(#contents *):not(:has(img, .btnL)):nth-child(2) {
    order: -1;
  }
}
.cont05 .box:is(#contents *) div {
  align-content: center;
}
.cont05 .box:is(#contents *) .btnL {
  background-color: var(--mc);
}
@media (max-width: 834px) {
  .cont05 .box:is(#contents *) .btnL {
    min-height: 5em;
  }
}
.cont05 .box:is(#contents *) > img {
  width: 100%;
  object-fit: cover;
  border-radius: var(--rad);
  overflow: hidden;
}
.cont05 .box:is(#contents *) i {
  font-size: 1.25em;
  color: var(--wh);
  -webkit-text-stroke-width: 8px;
}
.cont06 .btnL:hover {
  background-color: var(--ac10);
}
.cont06.in1800 {
  --in1800: calc(50vw - clamp(0px, 50vw - var(--pad) - 4px, 900px));
}
.cont07 .box:is(#contents *) img {
  border: var(--line);
  border-color: var(--ac);
  border-radius: var(--rad);
  transition: var(--btnTR);
}
.cont07 .box:is(#contents *) img:hover {
  filter: var(--btnHover);
}
.cont08 .box:is(#contents *) {
  border: var(--line);
  border-color: var(--ac);
  border-radius: var(--rad);
  gap: 0;
  container-type: inline-size;
  transition: var(--btnTR);
  display: grid;
}
.cont08 .box:is(#contents *):hover {
  filter: var(--btnHover);
}
.cont08 .box:is(#contents *) > * {
  grid-area: 1/1;
}
.cont08 .box:is(#contents *) > div {
  pointer-events: none;
}
.cont08 .box:is(#contents *) > div > div > div {
  width: 50%;
  height: 100%;
  align-content: center;
  font-size: 5cqw;
  padding: 0.5em;
  font-weight: 700;
  line-height: 1.25;
  color: var(--wh);
}
.cont08 .box:is(#contents *) img {
  width: 50%;
  margin-inline-start: auto;
}
.cont09 {
  padding: var(--pad);
  padding-inline-start: var(--incont);
}
.cont10 {
  margin-block: var(--gap) var(--Ngap);
  padding: var(--pad);
  padding-inline-end: var(--incont);
}

[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(--bl03));
  z-index: 100;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
  border-bottom: none;
}
@media (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 (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 (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 (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;
}

.fb_bg {
  mix-blend-mode: hard-light;
  padding-inline: var(--pad);
  position: absolute;
  inset: 0;
  --shift:5%;
}
@media (max-width: 960px) {
  .fb_bg {
    --shift:48px;
  }
}
.fb_bg .row {
  height: 100%;
}
.fb_bg .box {
  flex-wrap: wrap;
  align-content: start;
  max-width: 15%;
}
@media (max-width: 960px) {
  .fb_bg .box {
    max-width: 25%;
  }
}
.fb_bg .box:nth-child(even) {
  align-content: end;
}
.fb_bg .box:nth-child(4n+1) {
  margin-top: var(--shift);
}
.fb_bg .box:nth-child(4n) {
  margin-bottom: var(--shift);
}
.fb_bg.__3rdRight .box:nth-child(3) {
  margin-inline-start: auto;
}

.Concept {
  text-align: center;
}
@media (max-width: 960px) {
  .Concept:has(.fb_bg) {
    padding-block: var(--bl15) var(--bl2);
  }
}
.Concept_tx {
  display: inline-block;
  text-shadow: var(--txshwh);
  padding-inline: var(--pad);
}

.HI-bg {
  font-size: var(--PFZ);
  --start:calc(var(--PFZ)*2.5 );
  --Iend:64px;
  --end:calc(var(--start) + var(--Iend));
  background: linear-gradient(to top, var(--tr), var(--tr) var(--start), var(--bc) var(--start), var(--bc) var(--end), var(--tr) var(--end)) no-repeat center/100% 100%;
  padding-top: var(--bigFZ);
}
.HI-bg + * {
  margin-top: var(--Hafter);
}
.HI-bg :is(h1, h2, h3, h4) {
  position: relative;
}
.HI-bg i:is(#contents *) {
  display: inline-block;
  position: absolute;
  line-height: 1.25;
  padding-bottom: unset;
  padding-inline: 0.5em;
  bottom: var(--start);
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 640px) {
  .HI-bg i:is(#contents *) {
    padding-top: 0;
  }
}
.HI-bg i:is(#contents *):after {
  width: 2em;
  height: 1em;
  top: unset;
  left: 0em;
  bottom: 0;
}
.HI-bg.i-overMC i:is(#contents *), .HI-bg.i-overAC i:is(#contents *) {
  background: linear-gradient(to top, var(--bc), var(--bc) var(--Iend), var(--tr) var(--Iend)) no-repeat center/100% 100%;
}

.I-bg {
  font-size: var(--PFZ);
  --start:calc(var(--PFZ)*2.5 );
  --Iend:64px;
  --end:calc(var(--start) + var(--Iend));
  background: linear-gradient(to top, var(--tr), var(--tr) var(--start), var(--bc) var(--start), var(--bc) var(--end), var(--tr) var(--end)) no-repeat center/100% 100%;
  padding-top: calc(var(--PFZ) * 2.5);
}
.I-bg + * {
  margin-top: var(--Hafter);
}
.I-bg :is(h1, h2, h3, h4) {
  position: relative;
}
.I-bg i:is(#contents *) {
  background: linear-gradient(to top, var(--bc), var(--bc) var(--Iend), var(--tr) var(--Iend)) no-repeat center/100% 100%;
  display: inline-block;
  line-height: 1.25;
  padding-bottom: unset;
  padding-inline: 0.5em;
  bottom: var(--start);
  position: relative;
  left: 0;
  transform: translateX(0%);
}
@media (max-width: 640px) {
  .I-bg i:is(#contents *) {
    padding-top: 0;
  }
}
.I-bg i:is(#contents *):after {
  width: 2em;
  height: 1em;
  top: unset;
  left: 0em;
  bottom: 0;
}

.dsRight {
  --size:4vmin;
  --Nsize:calc(var(--size)*-1 );
  filter: drop-shadow(var(--size) var(--size) var(--gr));
}

.dsLeft {
  --size:4vmin;
  --Nsize:calc(var(--size)*-1 );
  filter: drop-shadow(var(--Nsize) var(--size) var(--gr));
}

.fb01 {
  --shift:8%;
  --Nshift:calc(var(--shift)*-1 );
  width: 50%;
  position: relative;
  flex: 1;
  margin-bottom: calc(var(--shift) * 1);
}
.fb01 .box:is(#contents *) {
  width: 100%;
}
.fb01 .box:is(#contents *):nth-child(even) {
  position: absolute;
  left: var(--Nshift);
  bottom: var(--Nshift);
  width: 37.5%;
}
@media (max-width: 834px) {
  .fb01 .box:is(#contents *):nth-child(even) {
    left: -4%;
    bottom: -32%;
  }
}

.H-paint01 :is(h1, h2, h3, h4) {
  display: inline-block;
  background: url(../image/service/h01.png) no-repeat 0 bottom/contain;
  padding-inline: 0.5em;
}

.p-paintCount {
  --p-margin:0.75em;
  --p-width:15em;
}

.p-paintCount p {
  background: url(../image/service/h02.png) no-repeat 0 bottom/contain;
  width: var(--p-width);
  padding-inline: 0 0.5em;
  counter-increment: cnt;
}
.p-paintCount p + p {
  margin-top: 0.5em;
}
.p-paintCount p:is(.noCount *)::before {
  display: none;
}
.p-paintCount p:before {
  content: counter(cnt, decimal-leading-zero);
  color: var(--mc);
  background-color: unset;
  font-family: var(--Eng);
  margin-inline: 0.25em;
  font-weight: 400;
}
.p-paintCount p:nth-child(5n+2) {
  margin-left: calc(var(--p-margin) * 1);
}
.p-paintCount p:nth-child(5n+3) {
  margin-left: calc(var(--p-margin) * 2);
}
.p-paintCount p:nth-child(5n+4) {
  margin-left: calc(var(--p-margin) * 3);
}
.p-paintCount p:nth-child(5n) {
  margin-left: calc(var(--p-margin) * 4);
}

.g01 {
  display: flex;
  flex-wrap: wrap;
  gap: 3em 0;
}
.g01 > .part_text {
  margin-inline-start: var(--incont);
  width: calc(var(--base) / 2);
}
@media (max-width: 1080px) {
  .g01 {
    padding-inline: var(--pad);
  }
  .g01 > *:is(#contents *) {
    flex: unset;
    margin-inline: auto;
    width: fit-content;
    max-width: 80%;
  }
}

.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 {
  --stW:4px;
}

.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:400px;
  align-content: center;
  padding-block: 6vh;
  padding-inline: var(--incont);
  min-height: var(--h);
}
.title1 .txwh * {
  color: var(--wh) !important;
}
.title1 .txbk * {
  color: var(--bk) !important;
}
@media (width <= 1440px) {
  .title1 {
    min-height: calc(var(--h) * 0.9);
  }
}
@media (width <= 834px) {
  .title1 {
    min-height: calc(var(--h) * 0.7);
  }
}
@media (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.bg_photo {
  background: no-repeat 100% 100%/auto 100%;
  margin-top: var(--head);
}
.title1.bg_photo article {
  mix-blend-mode: difference;
}
@media (width <= 480px) {
  .title1.bg_photo {
    background: no-repeat center/auto 100%;
  }
}
.title1.bg_fix {
  --h:75vh;
  background-repeat: no-repeat;
  background-position: center calc(100% - 50vh + var(--h) * 1);
  background-size: cover;
  background-attachment: fixed;
}
@media (width <= 640px) {
  .title1.bg_fix {
    background-position: center;
    background-attachment: unset;
  }
}
.title1.large {
  --h:720px;
}
.title1.large .title1_inner {
  display: grid;
  place-items: end;
  place-content: unset;
  padding-inline: var(--incont);
  padding-block: var(--bl05);
  height: 100%;
  color: var(--wh);
  text-align: right;
  font-size: var(--f24);
}
.title1.large h1, .title1.large h2, .title1.large h3, .title1.large h4, .title1.large h5, .title1.large p, .title1.large p:is(body.blog p) {
  place-self: start;
  text-align-last: left;
  transition-delay: 0s !important;
  translate: none;
  line-height: 1.4;
  text-align: center;
  font-weight: normal;
}
.title1.large h1 i, .title1.large h2 i, .title1.large h3 i, .title1.large h4 i, .title1.large h5 i, .title1.large p i, .title1.large p:is(body.blog p) i {
  color: #fff !important;
}
.title1:is(header *) {
  margin-top: var(--head);
}

.course :is(h2, h3, h4),
.p-i20 p {
  position: relative;
  padding-left: 1.5em;
  font: inherit;
}
.course :is(h2, h3, h4):before,
.p-i20 p:before {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1em;
  font-weight: 900;
  font-family: var(--icon);
  margin-right: 0.33em;
  display: inline-block;
  color: var(--ac);
  content: "";
  width: 1em;
  height: 2em;
  background-color: currentColor;
  mask: url(https://asshi-project.jp/image/home/i20.png) no-repeat center/100% auto;
}
.course :is(h2, h3, h4):is(.Inherit *),
.p-i20 p:is(.Inherit *) {
  font: inherit;
}

.course :is(h2, h3, h4) {
  font-size: var(--h3FZ);
}
.course :is(h2, h3, h4):not(:first-of-type) {
  margin-top: 1em;
}
.course :is(h2, h3, h4)::before {
  height: 1.5em;
}
.course p {
  text-align: right;
  border-bottom: 1px dashed var(--mc);
  margin-bottom: 1em;
}
.course u {
  display: block;
  text-decoration: none;
  border-bottom: 1px solid var(--sc);
  margin-bottom: 0.5em;
}

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

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 > * .contoutL {
  margin-left: var(--contout);
  max-width: unset;
}
body > * .contoutR {
  margin-right: var(--contout);
  max-width: unset;
}
body > * .contout {
  margin-inline: var(--contout);
  max-width: unset;
}
body > * .incontL {
  padding-left: var(--incont);
}
body > * .incontR {
  padding-right: var(--incont);
}
body > * .incont {
  padding-inline: var(--incont);
}
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);
}

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(--bl));
}
body > * .mtB03 {
  margin-top: calc(0.33 * var(--bl));
}
body > * .mtB05 {
  margin-top: calc(0.5 * var(--bl));
}
body > * .mtB06 {
  margin-top: calc(0.66 * var(--bl));
}
body > * .mtB075 {
  margin-top: calc(0.75 * var(--bl));
}
body > * .mtB1 {
  margin-top: calc(1 * var(--bl));
}
body > * .mtB125 {
  margin-top: calc(1.25 * var(--bl));
}
body > * .mtB15 {
  margin-top: calc(1.5 * var(--bl));
}
body > * .mtB2 {
  margin-top: calc(2 * var(--bl));
}
body > * .mtB3 {
  margin-top: calc(3 * var(--bl));
}
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 (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 (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 (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 (width <= 480px) {
  body > * .left-480 {
    text-align: left !important;
  }
  body > * .left-480 * {
    text-align: left !important;
  }
}

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

body > * .op05 {
  opacity: 0.05;
}
body > * .op1 {
  opacity: 0.1;
}
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 */