
:root {
  --vj-paper: var(--theme-palette-color-8, #FFFFFF);
  --vj-sora: var(--theme-palette-color-7, #D2E0ED);
  --vj-sora-2: var(--theme-palette-color-6, #E9F0F7);
  --vj-line: var(--theme-palette-color-5, #C9D7E5);
  --vj-sumi: var(--theme-palette-color-3, #1B2230);
  --vj-ai: var(--theme-palette-color-1, #134D81);
  --vj-ai-2: var(--theme-palette-color-2, #3F72A6);
  --vj-ai-deep: #0D3C67;
  --vj-grid: #E4ECF5;
  --vj-nezu: #5A6472;
  --vj-shu: #D2462E;
  --vj-tab-life: #CFE1F3;
  --vj-tab-shop: #F3E08E;
  --vj-tab-trip: #C9E3B8;
  --vj-tab-ball: #F5C7B5;
  --vj-tab-acg: #D9CDF0;
  --vj-serif: "Noto Serif TC", "Shippori Mincho", serif;
  --vj-sans: "Noto Sans TC", "Zen Kaku Gothic New", sans-serif;
  --vj-ja-serif: "Shippori Mincho", "Noto Serif TC", serif;
  --vj-ja-sans: "Zen Kaku Gothic New", "Noto Sans TC", sans-serif;
  --vj-hand: "LXGW WenKai TC", "Noto Sans TC", sans-serif;
  --vj-ease: cubic-bezier(.22, .7, .16, 1);
  --vj-spring: cubic-bezier(.34, 1.4, .5, 1);
  --vj-header-h: 76px;
  --vj-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .08 0 0 0 0 .3 0 0 0 0 .5 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --vj-m-momiji: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 3L55 15L59 13L58 28L67 21L73 23L79 13L81 25L89 27L83 37L72 43L85 45L97 47L90 55L80 61L86 73L74 71L62 65L56 73L52 79L52 97L48 97L48 79L44 73L38 65L26 71L14 73L20 61L10 55L3 47L15 45L28 43L17 37L11 27L19 25L21 13L27 23L33 21L42 28L41 13L45 15Z'/%3E%3C/svg%3E");
  --vj-m-icho: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M49 97H51L52 66L89 30C86 17 70 7 55 9L50 19L45 9C30 7 14 17 11 30L48 66Z'/%3E%3C/svg%3E");
  --vj-m-petal: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 96C25 82 11 55 21 30C29 11 41 6 45 15L50 25L55 15C59 6 71 11 79 30C89 55 75 82 50 96Z'/%3E%3C/svg%3E");
  --vj-m-sakura: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg id='p'%3E%3Cpath d='M50 50C38 40 33 24 40 13C43 9 47 10 50 16C53 10 57 9 60 13C67 24 62 40 50 50Z'/%3E%3C/g%3E%3Cuse href='%23p' transform='rotate(72 50 50)'/%3E%3Cuse href='%23p' transform='rotate(144 50 50)'/%3E%3Cuse href='%23p' transform='rotate(216 50 50)'/%3E%3Cuse href='%23p' transform='rotate(288 50 50)'/%3E%3C/svg%3E");
  --vj-m-ume: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='26' r='20'/%3E%3Ccircle cx='72.8' cy='42.6' r='20'/%3E%3Ccircle cx='64.1' cy='69.4' r='20'/%3E%3Ccircle cx='35.9' cy='69.4' r='20'/%3E%3Ccircle cx='27.2' cy='42.6' r='20'/%3E%3Ccircle cx='50' cy='51' r='16'/%3E%3C/svg%3E");
  --vj-m-ajisai: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='31' r='17'/%3E%3Ccircle cx='69' cy='50' r='17'/%3E%3Ccircle cx='50' cy='69' r='17'/%3E%3Ccircle cx='31' cy='50' r='17'/%3E%3C/svg%3E");
  --vj-m-yuki: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23000' stroke-width='7' stroke-linecap='round'%3E%3Cpath d='M50 8V92M13.6 29L86.4 71M13.6 71L86.4 29'/%3E%3Cpath d='M50 24L41 15M50 24L59 15M50 76L41 85M50 76L59 85M27 37L15 38M27 37L22 26M73 63L85 62M73 63L78 74M27 63L22 74M27 63L15 62M73 37L78 26M73 37L85 38'/%3E%3C/g%3E%3C/svg%3E");
  --vj-m-furin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M47 6H53V14H47ZM26 52C26 28 37 16 50 16C63 16 74 28 74 52ZM48.5 52H51.5V66H48.5ZM41 66H59L61 96H39Z'/%3E%3C/svg%3E");
  --vj-scene: #D2462E;
  --vj-scene-m: var(--vj-m-momiji);
}
[data-vj-scene="snow"] { --vj-scene: #7FA6CF; --vj-scene-m: var(--vj-m-yuki); }
[data-vj-scene="ume"] { --vj-scene: #D97A93; --vj-scene-m: var(--vj-m-ume); }
[data-vj-scene="sakura"] { --vj-scene: #E58FA5; --vj-scene-m: var(--vj-m-sakura); }
[data-vj-scene="ajisai"] { --vj-scene: #7B8FD6; --vj-scene-m: var(--vj-m-ajisai); }
[data-vj-scene="natsu"] { --vj-scene: #3FA7C9; --vj-scene-m: var(--vj-m-furin); }
[data-vj-scene="momiji"] { --vj-scene: #D2462E; --vj-scene-m: var(--vj-m-momiji); }


html { scroll-padding-top: calc(var(--vj-header-h) + 16px); }
[lang="ja"] { font-family: var(--vj-ja-sans); }
:focus-visible { outline: 2px solid var(--vj-ai); outline-offset: 3px; }
::selection { background: var(--vj-ai); color: #fff; }


.ct-header [data-row*="middle"] { transition: background-color .35s var(--vj-ease), border-color .35s var(--vj-ease); }
.ct-header-text .entry-content > * { margin: 0; }
.ct-header-text .vj-logo { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; color: var(--vj-ai); text-decoration: none; }
.ct-header-text .vj-logo__mark { flex-shrink: 0; width: 40px; height: 29px; overflow: visible; }
.ct-header-text .vj-logo__eyes { transform-box: fill-box; transform-origin: center; }
.ct-header-text .vj-logo__eye { transition: transform .35s var(--vj-ease); }
.ct-header-text .vj-logo:hover .vj-logo__eye { transform: translate(-.5px, -2.4px); }
.ct-header-text .vj-logo:hover .vj-logo__eyes { animation: vj-blink .7s var(--vj-ease) .35s; }
@keyframes vj-blink { 0%, 100% { transform: scaleY(1); } 45% { transform: scaleY(.12); } 60% { transform: scaleY(1); } }
.ct-header-text .vj-logo__text { font-family: var(--vj-serif); font-weight: 700; font-size: 21px; letter-spacing: .06em; line-height: 1.3; color: var(--vj-sumi); white-space: nowrap; }
.ct-header-text .vj-logo__text [lang="ja"] { font-family: var(--vj-ja-serif); color: var(--vj-ai); padding: 0 .06em; }
.ct-header-text .vj-logo__sub { padding-left: 12px; border-left: 1px solid var(--vj-line); font-size: 12px; letter-spacing: .3em; line-height: 1.6; color: var(--vj-ai-2); white-space: nowrap; }
.ct-header-text .vj-ig { display: inline-flex; flex-direction: column; justify-content: center; min-height: 44px; padding-left: 24px; border-left: 1px solid var(--vj-line); line-height: 1.3; color: var(--vj-ai); font-weight: 500; font-size: 14px; letter-spacing: .06em; text-decoration: none; }
.ct-header-text .vj-ig__label::after { content: " ↗"; display: inline-block; transition: transform .3s var(--vj-ease); }
.ct-header-text .vj-ig:hover .vj-ig__label::after { transform: translate(2px, -2px); }
.ct-header-text .vj-ig__num { font-size: 12px; color: var(--vj-nezu); font-weight: 400; }
.ct-header [data-id="menu"] > ul > li > a { font-feature-settings: "palt"; }
.ct-header [data-sticky*="yes"] [data-row*="middle"] { box-shadow: 0 10px 24px -20px rgba(19, 77, 129, .45); }
.ct-header .ct-header-trigger { min-width: 44px; min-height: 44px; }
#offcanvas .ct-panel-content { padding-top: 12px; }
#offcanvas .mobile-menu a { min-height: 52px; }
#offcanvas .ct-header-text { margin-top: 24px; }
#offcanvas .vj-ig { padding-left: 0; border-left: 0; }


.ct-footer {
  position: relative; margin-top: 0;
  color: #fff;
  background-color: var(--vj-ai);
  background-image:
    radial-gradient(circle at 100% 150%, var(--vj-ai) 24%, #1D5A92 24%, #1D5A92 28%, var(--vj-ai) 28%, var(--vj-ai) 36%, #1D5A92 36%, #1D5A92 40%, transparent 40%),
    radial-gradient(circle at 0 150%, var(--vj-ai) 24%, #1D5A92 24%, #1D5A92 28%, var(--vj-ai) 28%, var(--vj-ai) 36%, #1D5A92 36%, #1D5A92 40%, transparent 40%),
    radial-gradient(circle at 50% 100%, #1D5A92 10%, var(--vj-ai) 10%, var(--vj-ai) 23%, #1D5A92 23%, #1D5A92 30%, var(--vj-ai) 30%, var(--vj-ai) 43%, #1D5A92 43%, #1D5A92 50%, var(--vj-ai) 50%, var(--vj-ai) 63%, #1D5A92 63%, #1D5A92 71%, transparent 71%),
    radial-gradient(circle at 100% 50%, #1D5A92 5%, var(--vj-ai) 5%, var(--vj-ai) 15%, #1D5A92 15%, #1D5A92 20%, var(--vj-ai) 20%, var(--vj-ai) 29%, #1D5A92 29%, #1D5A92 34%, var(--vj-ai) 34%, var(--vj-ai) 44%, #1D5A92 44%, #1D5A92 49%, transparent 49%),
    radial-gradient(circle at 0 50%, #1D5A92 5%, var(--vj-ai) 5%, var(--vj-ai) 15%, #1D5A92 15%, #1D5A92 20%, var(--vj-ai) 20%, var(--vj-ai) 29%, #1D5A92 29%, #1D5A92 34%, var(--vj-ai) 34%, var(--vj-ai) 44%, #1D5A92 44%, #1D5A92 49%, transparent 49%);
  background-size: 80px 40px;
}
.ct-footer::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, var(--vj-ai) 0, rgba(19, 77, 129, .82) 56px, rgba(19, 77, 129, 0) 190px);
}
.ct-footer::after {
  content: ""; position: absolute; left: 0; right: 0; top: -25px; height: 26px; pointer-events: none;
  background: radial-gradient(circle at 50% 100%, var(--vj-ai) 0 24px, transparent 25px) 0 100% / 50px 26px repeat-x;
  animation: vj-drift 60s linear infinite reverse;
}
@keyframes vj-drift { to { background-position-x: -500px; } }
.ct-footer > [data-row] { position: relative; z-index: 1; }
.ct-footer > [data-row*="bottom"] { padding-bottom: 64px; }
.ct-footer .ct-widget { margin: 0; }
.ct-footer .vj-fw__lead { margin: 0; font-family: var(--vj-serif); font-weight: 700; font-size: clamp(30px, 3.2vw, 46px); line-height: 1.4; letter-spacing: .1em; color: #fff; }
.ct-footer .vj-fw__ig { display: inline-flex; flex-direction: column; align-items: flex-end; gap: 2px; min-height: 44px; font-family: var(--vj-ja-sans); font-size: 22px; font-weight: 500; letter-spacing: .04em; line-height: 1.4; color: #fff; text-decoration: none; }
.ct-footer .vj-fw__handle::after { content: " ↗"; display: inline-block; transition: transform .3s var(--vj-ease); }
.ct-footer .vj-fw__ig:hover .vj-fw__handle::after { transform: translate(3px, -3px); }
.ct-footer .vj-fw__num { font-size: 13px; letter-spacing: .16em; opacity: .8; }
.ct-footer .vj-fw__nav { display: flex; flex-wrap: wrap; gap: 4px 30px; }
.ct-footer .vj-fw__nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; letter-spacing: .06em; color: #fff; text-decoration: none; opacity: .88; background: linear-gradient(currentColor, currentColor) 0 calc(100% - 9px) / 0 1px no-repeat; transition: opacity .3s var(--vj-ease), background-size .35s var(--vj-ease); }
.ct-footer .vj-fw__nav a:hover { opacity: 1; background-size: 100% 1px; }
.ct-footer .ct-footer-copyright p { margin: 0; }
.ct-footer .ct-footer-copyright a { text-decoration: none; }
.ct-footer .ct-footer-copyright a:hover { text-decoration: underline; text-underline-offset: 4px; }
#footer [data-id="menu"] ul { --theme-text-transform: none; --theme-font-size: 13px; --theme-letter-spacing: .08em; }
#footer [data-id="menu"] > ul > li > a { --theme-link-initial-color: rgba(255, 255, 255, .8); --theme-link-hover-color: #fff; min-height: 44px; }


.vj-fall { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.vj-fall--front { z-index: 4; }
.vj-p {
  position: absolute; top: -40px; left: var(--x);
  width: var(--s); height: var(--s); opacity: var(--o);
  background: var(--c, var(--vj-scene));
  will-change: transform;
  animation: vj-p-fall var(--d) linear var(--delay) infinite;
}
.vj-p--momiji, .vj-p--icho, .vj-p--petal, .vj-p--sakura, .vj-p--ume, .vj-p--ajisai, .vj-p--yuki { -webkit-mask: var(--m) center / contain no-repeat; mask: var(--m) center / contain no-repeat; animation-name: vj-p-flutter; }
.vj-p--momiji { --m: var(--vj-m-momiji); }
.vj-p--icho { --m: var(--vj-m-icho); }
.vj-p--petal { --m: var(--vj-m-petal); }
.vj-p--sakura { --m: var(--vj-m-sakura); }
.vj-p--ume { --m: var(--vj-m-ume); }
.vj-p--ajisai { --m: var(--vj-m-ajisai); animation-name: vj-p-fall; }
.vj-p--yuki { --m: var(--vj-m-yuki); animation-name: vj-p-fall; }
.vj-p--snow { border-radius: 50%; background: #fff; box-shadow: 0 0 0 1px rgba(19, 77, 129, .14), 0 2px 6px rgba(19, 77, 129, .3); }
.vj-p--rain { width: 2px; border-radius: 1px; background: linear-gradient(180deg, rgba(63, 114, 166, 0), rgba(63, 114, 166, .8)); animation-name: vj-p-rain; animation-timing-function: linear; }
.vj-p--bubble {
  top: auto; bottom: -40px; border-radius: 50%;
  background:
    radial-gradient(circle at 34% 30%, rgba(255, 255, 255, .95) 0 9%, rgba(255, 255, 255, 0) 20%),
    radial-gradient(circle, rgba(255, 255, 255, 0) 56%, rgba(130, 188, 236, .7) 69%, rgba(206, 168, 240, .7) 79%, rgba(255, 255, 255, 0) 86%);
  box-shadow: inset 0 0 0 1px rgba(63, 114, 166, .3), 0 2px 8px rgba(19, 77, 129, .12);
  animation-name: vj-p-rise; animation-timing-function: ease-in-out;
}
@keyframes vj-p-fall {
  0% { transform: translate3d(0, 0, 0) rotate(0deg); }
  25% { transform: translate3d(calc(var(--sway) * .45), calc(var(--h) * .25), 0) rotate(calc(var(--rot) * .25)); }
  50% { transform: translate3d(calc(var(--sway) * -.15), calc(var(--h) * .5), 0) rotate(calc(var(--rot) * .5)); }
  75% { transform: translate3d(calc(var(--sway) * .6), calc(var(--h) * .75), 0) rotate(calc(var(--rot) * .75)); }
  100% { transform: translate3d(var(--sway), var(--h), 0) rotate(var(--rot)); }
}
@keyframes vj-p-flutter {
  0% { transform: translate3d(0, 0, 0) rotateZ(0deg) rotateX(0deg); }
  25% { transform: translate3d(calc(var(--sway) * .5), calc(var(--h) * .25), 0) rotateZ(calc(var(--rot) * .25)) rotateX(65deg); }
  50% { transform: translate3d(calc(var(--sway) * -.2), calc(var(--h) * .5), 0) rotateZ(calc(var(--rot) * .5)) rotateX(0deg); }
  75% { transform: translate3d(calc(var(--sway) * .7), calc(var(--h) * .75), 0) rotateZ(calc(var(--rot) * .75)) rotateX(-65deg); }
  100% { transform: translate3d(var(--sway), var(--h), 0) rotateZ(var(--rot)) rotateX(0deg); }
}
@keyframes vj-p-rain {
  from { transform: translate3d(0, 0, 0) rotate(12deg); }
  to { transform: translate3d(calc(var(--h) * -.21), var(--h), 0) rotate(12deg); }
}
@keyframes vj-p-rise {
  0% { transform: translate3d(0, 0, 0) scale(.6); opacity: 0; }
  12% { opacity: var(--o); }
  50% { transform: translate3d(calc(var(--sway) * .5), calc(var(--h) * -.5), 0) scale(1); }
  88% { opacity: var(--o); }
  100% { transform: translate3d(var(--sway), calc(var(--h) * -1), 0) scale(1.06); opacity: 0; }
}


#scm-player-shell .scm-pbar { bottom: 14px !important; }
#scm-player-shell .scm-panel:not(.is-full) { bottom: 88px !important; }
#scm-player-shell .scm-pbar:not(.is-ball) { border-radius: 2px; border: 1px solid var(--vj-line); box-shadow: 0 18px 32px -22px rgba(19, 77, 129, .5); }
#scm-player-shell .scm-pbar.is-ball { box-shadow: 0 10px 22px -12px rgba(19, 77, 129, .6); }


body .ct-back-to-top[data-shape] {
  --top-button-background-color: var(--vj-paper);
  --top-button-background-hover-color: var(--vj-ai);
  --theme-icon-color: var(--vj-ai);
  --theme-icon-hover-color: #fff;
  --theme-border-radius: 0;
  border: 1px solid var(--vj-line);
  box-shadow: 0 10px 22px -14px rgba(19, 77, 129, .5);
}


@media (min-width: 1000px) and (max-width: 1279.98px) {
  .ct-header-text .vj-logo__sub, .ct-header-text .vj-ig__num { display: none; }
  .ct-header-text .vj-logo__text { font-size: 19px; }
  html body .ct-header [data-row*="middle"] [data-id="menu"] { --menu-items-spacing: 16px; --margin: 0 16px 0 0 !important; }
  .ct-header-text .vj-ig { padding-left: 18px; }
}
@media (min-width: 1000px) and (max-width: 1179.98px) {
  html body .ct-header [data-row*="middle"] [data-id="menu"] { --menu-items-spacing: 10px; --margin: 0 10px 0 0 !important; }
  html body .ct-header [data-row*="middle"] [data-id="menu"] > ul > li > a { --theme-font-size: 14px; }
  .ct-header-text .vj-logo__text { font-size: 18px; }
}


@media (max-width: 999.98px) {
  :root { --vj-header-h: 68px; }
  .ct-footer .vj-fw__ig { font-size: 20px; }
}


@media (max-width: 689.98px) {
  :root { --vj-header-h: 60px; }
  .ct-header-text .vj-logo { gap: 10px; }
  .ct-header-text .vj-logo__mark { width: 34px; height: 25px; }
  .ct-header-text .vj-logo__text { font-size: 18px; }
  .ct-header-text .vj-logo__sub { display: none; }
  .ct-footer .vj-fw__ig { align-items: flex-start; font-size: 18px; }
  .ct-footer .vj-fw__nav { gap: 0 24px; }
  .ct-footer .vj-copy__a, .ct-footer .vj-copy__b { display: block; }
  .ct-footer .vj-copy__a { text-wrap: balance; word-break: keep-all; }
  .ct-footer .vj-copy__sep { display: none; }
}


@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .ct-footer::after, .ct-header-text .vj-logo:hover .vj-logo__eyes { animation: none; }
  .vj-fall { display: none; }
  .ct-header-text .vj-logo__eye, .ct-header [data-row*="middle"] { transition: none; }
}


.vj-contact { width: min(640px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 40px); margin: auto; padding: 0; border: 0; background: transparent; color: var(--vj-sumi); overflow: visible; }
.vj-contact::backdrop { background: rgba(13, 60, 103, .42); backdrop-filter: blur(2px); }
.vj-contact[open] { animation: vj-contact-in .35s var(--vj-ease); }
@keyframes vj-contact-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.vj-contact__paper { position: relative; max-height: calc(100dvh - 40px); overflow: auto; overscroll-behavior: contain; padding: 40px 40px 30px; background: var(--vj-paper); border: 1px solid var(--vj-line); box-shadow: 0 30px 60px -30px rgba(13, 60, 103, .6); }
.vj-contact__close { position: absolute; top: 10px; right: 10px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--vj-ai); cursor: pointer; transition: background-color .3s var(--vj-ease); }
.vj-contact__close:hover { background: var(--vj-sora-2); }
.vj-contact__close svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.vj-contact__kana { margin: 0 0 4px; font-family: var(--vj-ja-serif); font-size: 13px; letter-spacing: .3em; color: var(--vj-ai-2); }
.vj-contact__title { margin: 0 0 10px; font-family: var(--vj-serif); font-size: 28px; font-weight: 700; letter-spacing: .1em; line-height: 1.4; color: var(--vj-sumi); }
.vj-contact__lead { margin: 0 0 24px; font-size: 15px; line-height: 1.8; color: var(--vj-nezu); word-break: keep-all; overflow-wrap: break-word; }
html:has(.vj-contact[open]) { overflow: hidden; }
body .fluentform .ff-el-group { margin-bottom: 18px; }
body .fluentform .ff-el-input--label label { font-size: 14px; font-weight: 700; letter-spacing: .06em; color: var(--vj-sumi); }
body .fluentform .ff-el-form-control { border: 1px solid var(--vj-line); border-radius: 0; padding: 11px 14px; font-size: 16px; line-height: 1.6; color: var(--vj-sumi); background-color: #fff; transition: border-color .25s var(--vj-ease), box-shadow .25s var(--vj-ease); }
body .fluentform .ff-el-form-control::placeholder { color: #95A1AF; }
body .fluentform .ff-el-form-control:focus { border-color: var(--vj-ai); box-shadow: 0 0 0 3px rgba(19, 77, 129, .12); outline: none; }
body .fluentform .ff-el-is-error .ff-el-form-control { border-color: var(--vj-shu); }
body .fluentform .error.text-danger { font-size: 13px; color: var(--vj-shu); }
body .fluentform .ff-el-tc, body .fluentform .ff_t_c { font-size: 14px; line-height: 1.7; color: var(--vj-nezu); }
body .fluentform .ff-el-tc a, body .fluentform .ff_t_c a { color: var(--vj-ai); text-decoration: underline; text-underline-offset: 3px; }
body .fluentform .ff-btn-submit { padding: 13px 36px !important; border-radius: 0 !important; font-size: 15px !important; font-weight: 700; letter-spacing: .14em; }
body .ff-message-success { margin: 0; padding: 20px 22px; border: 1px solid var(--vj-line); border-left: 6px solid var(--vj-ai); background: var(--vj-sora-2); box-shadow: none; font-size: 16px; line-height: 1.8; }
@media (max-width: 689.98px) {
  .vj-contact__paper { padding: 34px 20px 24px; }
  .vj-contact__title { font-size: 24px; }
}
