@charset "UTF-8";

/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / FONT ->                     */
/* =====>=====>=====>=====>=====>=====>===== */

@font-face {font-family: 'LINE Seed JP_OTF';
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  src: local('LINE Seed JP_OTF Regular'),
       local('LINESeedJP_OTF-Regular'),
         url('../font/LINESeedJP_OTF_Rg.woff2') format('woff2');
}
@font-face {font-family: 'LINE Seed JP_OTF';
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  src: local('LINE Seed JP_OTF Bold'),
       local('LINESeedJP_OTF-Bold'),
         url('../font/LINESeedJP_OTF_Bd.woff2') format('woff2');
}

:root {
  --WF-s-serif:
    'LINE Seed JP_OTF',
    'Noto Sans CJK JP','Noto Sans JP',
    'Hiragino Sans',
    'BIZ UDPGothic',
    sans-serif;
  --ST-s-serif:
    'Helvetica Neue', /* M */
    'Arial',          /* W */
    'Hiragino Sans',  /* M */
    'BIZ UDPGothic',  /* W10 */
    'Meiryo',         /* W Legacy */
    sans-serif;
  --WF-serif:
    'Times New Roman',
    'Noto Serif JP',
    serif;
  --ST-serif:
    'Times New Roman',      /* M W */
    'Hiragino Mincho ProN', /* M */
    'BIZ UDPMincho',        /* W10 */
    'Yu Mincho',            /* W Legacy */
    serif;

  --appearance-clr: #ddd;
}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / HTML ->                     */
/* =====>=====>=====>=====>=====>=====>===== */

*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)) {
  all: unset;
  display: revert;
}
*,
*::before,*::after {
  box-sizing: inherit;
}

html {
  block-size: 100%;
  box-sizing: border-box;
/*   font-family: system-ui,sans-serif; */
  font-family: var(--WF-s-serif);
  font-feature-settings: 'palt';
  line-height: 1.5;
   -webkit-text-size-adjust: none;
  text-size-adjust: none;
  touch-action: manipulation;
  scroll-behavior: smooth;
  color-scheme: dark light;
}
:where([draggable="true"]) { /* Chromium, Safari // Apply back the draggable feature - exist only. */
  -webkit-user-drag: element;
}
:where(dialog:modal) {
  all: revert;
}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / GENERAL ->                  */
/* =====>=====>=====>=====>=====>=====>===== */

html,
body {
  height: 100%;
  min-height: 100vh;
}
body {
  min-block-size: 100%;
  text-align: justify;
   -moz-osx-font-smoothing: grayscale;
   -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4,h5,h6 {
  line-height: calc(.25rem + 1em + .25rem);
}
h1,h2,h3,h4,h5,h6,
p {
  overflow-wrap: break-word;
}
p + p {
  margin-top: 1em;
}
ol,ul,menu, summary {
  list-style: none;
}
details,
img,
picture {
  display: block;
}
img {
  max-inline-size: 100%;
  max-block-size: 100%;
  font-style: italic;
  pointer-events: none;
}
a,button { /* Reapply the pointer cursor for anchor tags. */
  cursor: revert;
}
a:not([class]) {
  text-decoration-skip-ink: auto;
  text-underline-offset: .2ex;
}
strong {
  font-weight: inherit;
}
:where(pre),
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}
::-webkit-details-marker { /* Remove details summary webkit styles. */
  display: none;
}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / GENERAL CLASS ->            */
/* =====>=====>=====>=====>=====>=====>===== */

.fx {
  display: flex;
    flex-wrap: wrap;
    justify-content: space-between;align-items: flex-start;
}
.gd {
  display: grid;
    place-items: center;
}
.WPcnt > * + * {
  margin-top: 1em;
}

@media (hover:hover) and (pointer:fine) {

.call {
  pointer-events: none;
}

}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / TABLE ->                    */
/* =====>=====>=====>=====>=====>=====>===== */

table,th,td,
caption {
  text-align: left;
}
table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
th,td {
  vertical-align: middle;
}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / FORM ->                     */
/* =====>=====>=====>=====>=====>=====>===== */

[role="button"],
[role="option"],
button,
label,
select,
summary {
  cursor: pointer;
}
button,select {
   -moz-appearance: button;
   -webkit-appearance: button;
  appearance: button;
}
input,select,textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
}
input,select {
  vertical-align: middle;
}
[type="button"],
[type="email"],
[type="tel"],
[type="text"],
[type="search"],
[type="submit"],
select,textarea {
  width: 100%;
  font-size: 16px;
  background: transparent;
}
[type="search"] {
  -webkit-appearance: textfield;
}
input,textarea { /* Safari // Solving issue when using 'user-select:none' on the <body> text input doesn't working. */
  -webkit-user-select: auto;
}
select,textarea {
  border: 1px solid var(--appearance-clr);
}
textarea {
  white-space: revert; /* Safari // Revert the 'white-space' property for textarea elements. */
  vertical-align: top;
  resize: vertical;
}
meter {
   -webkit-appearance: revert;
  appearance: revert;
}
:where(button,button[type],input[type="button"],input[type="submit"],input[type="reset"])[disabled] {
  cursor: not-allowed;
}
:where([hidden]:not([hidden="until-found"])) {
  display: none!important;
}
::placeholder {
  color: unset;
  color: var(--appearance-clr);
}

/*===== select =====*/
select {
  text-indent: .01px;
  text-overflow: '';
  background: none transparent;
}
select:focus-visible {
  text-shadow: 0 0 0 #828c9a;
}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / MOTION ->                   */
/* =====>=====>=====>=====>=====>=====>===== */

@media (hover:hover) and (pointer:fine) {

/*===== .alpha =====*/
.alpha,
.alpha img {
  transition: .5s ease-in-out;
  transition-property: opacity;
  cursor: pointer;
}
.alpha:hover,
.alpha:hover img {
  opacity: .6;
}

}



/* =====<=====<=====<=====<=====<=====<===== */
/* !<- ORDERED / MOBILE ->                   */
/* =====>=====>=====>=====>=====>=====>===== */

#SPhead,
.hidePC {
  display: none;
}

@media (width < 1024px) {

#SPhead {
  display: flex;
}
.hidePC {
  display: inherit;
}
.hideSP {
  display: none;
}
img:not([class^="wp-image-"]) {
  width: 100%;height: auto!important;
}

}