@charset "UTF-8";
/*====================================================================================================
//////////////////////////////////////////////////////////////////////////////////////////////////////

    version: 1.0
    created: 2025/02/04
    update : -

//////////////////////////////////////////////////////////////////////////////////////////////////////
====================================================================================================*/
/*====================================================================================================

format

====================================================================================================*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  overflow-y: scroll;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
}

p {
  margin-top: 0;
}

ul,
ol {
  padding-left: 0;
  list-style: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

table th > *:last-child,
table td > *:last-child {
  margin-bottom: 0 !important;
}

hr {
  display: none;
}

img,
picture {
  max-width: 100%;
  display: block;
}

img {
  border: none;
  vertical-align: middle;
}

li img {
  vertical-align: middle;
}

button,
input,
select,
textarea {
  font: inherit;
}

button,
input[type=button],
input[type=submit],
input[type=reset],
input[type=radio],
input[type=checkbox],
select {
  cursor: pointer;
}

button,
input[type=button],
input[type=submit],
input[type=reset],
select {
  appearance: none;
}

button {
  display: inline-block;
  border: none;
  padding: 0;
  background: none;
}

button::-moz-focus-inner {
  border: none;
  padding: 0;
}

::placeholder {
  color: #949494;
}

:placeholder-shown {
  color: #949494;
}

::-webkit-input-placeholder {
  color: #949494;
}

em,
address,
small {
  font-style: normal;
}

em {
  font-weight: 700;
}

*[hidden],
*[hidden=true] {
  display: none;
}

*[hidden=false] {
  display: block;
}

fieldset {
  margin: 0;
  border: none;
  padding: 0;
}

summary::-webkit-details-marker {
  display: none;
}

:target {
  scroll-margin-block: 5ex;
}

/*====================================================================================================

base

====================================================================================================*/
:root {
  --color-text: #000000;
  --color-yellow: #f9be00;
  --color-blue: #003f87;
  --color-blue-rgb: 0 63 135;
  --color-lightblue: #aec3dc;
  --color-green: #3b993e;
  --color-brown: #993b3b;
  --color-red: #d30000;
  --color-bg: #efefef;
  --color-bg-candidate: linear-gradient(90deg, #e2f0ff 0, #94bae4 100%);
  --color-bg-schedule: linear-gradient(90deg, #e3ffe2 0, #9fd59d 100%);
  --color-bg-policies: linear-gradient(90deg, #ffeeee 0, #f39581 100%);
  --color-bg-support: linear-gradient(90deg, #fffced 0, #ddcc70 100%);
  --color-border-gray: #b5b5b5;
  --max-content-width: 1100px;
  --sp-min-width: 320px;
  --breakpoint: 768px;
}

@media screen and (max-width: 374px) {
  html {
    font-size: 4.2666666667vw;
  }
}

body {
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;;
  font-weight: 500;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}
@media (min-width: 768px) {
  body {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1rem;
    line-height: 1.5;
  }
}

a {
  color: #004ba5;
}
@media (min-width: 768px) {
  a[href*="tel:"] {
    cursor: text;
    text-decoration: none;
    pointer-events: none;
    color: #1e2d58;
  }
  a[href*="tel:"] img {
    cursor: default;
  }
}
button,
input,
select,
textarea {
  font-family: "Noto Sans JP", sans-serif;;
}
@media (min-width: 768px) {
  button,
  input,
  select,
  textarea {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  button,
  input,
  select,
  textarea {
    font-size: 1rem;
    line-height: 1.5;
  }
}

:focus:not(:focus-visible),
:where(:root[data-mousedown] dialog *),
[data-modal-open]:where(:root[data-mousedown] *) {
  outline: none;
}

#document {
  min-height: 100%;
  min-width: var(--sp-min-width);
}

.loadWindow {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background-color: #ffffff;
  z-index: 9999;
  transition: opacity 0.3s ease;
}
.loadWindow.is_anim {
  opacity: 0;
}

/* Header
--------------------------------------------------------------------------------------------------- */
/*
* "font-awesome" is lisenced under the SIL Open Font License 1.1
* https://fortawesome.github.io/Font-Awesome
* http://scripts.sil.org/OFL
*/
@font-face {
  font-family: "icon";
  src: url("../../fonts/icon.woff?250604");
}
.mod_ico_01_arrow::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e001";
  vertical-align: middle;
}

.mod_ico_02_blank::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  vertical-align: middle;
}

.mod_ico_03_pdf::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e003";
  vertical-align: middle;
}

.mod_ico_04_search::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e004";
  vertical-align: middle;
}

.mod_ico_05_twitter::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e005";
  vertical-align: middle;
}

.mod_ico_06_facebook::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e006";
  vertical-align: middle;
}

.mod_ico_07_human::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e007";
  vertical-align: middle;
}

.mod_ico_08_calendar::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e008";
  vertical-align: middle;
}

.mod_ico_09_mic::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e009";
  vertical-align: middle;
}

.mod_ico_10_shakehands::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00a";
  vertical-align: middle;
}

.mod_ico_11_check::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00b";
  vertical-align: middle;
}

.mod_ico_12_share::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00c";
  vertical-align: middle;
}

.mod_ico_13_calendar::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00d";
  vertical-align: middle;
}

.mod_ico_14_back::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00e";
  vertical-align: middle;
}

.mod_ico_15_close::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00f";
  vertical-align: middle;
}

.mod_ico_16_human::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e010";
  vertical-align: middle;
}

.mod_ico_17_search::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e011";
  vertical-align: middle;
}

.mod_ico_18_message::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e012";
  vertical-align: middle;
}

.mod_ico_19_book::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e013";
  vertical-align: middle;
}

.l_gheader {
  --scale: .8;
}
.l_gheader .logo {
  position: fixed;
  top: 20px;
  left: 20px;
  margin: 0;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -3%;
  z-index: 2000;
}
.l_gheader .logo a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: var(--color-text);
  width: -moz-fit-content;
  width: fit-content;
}
.l_gheader .logo svg {
  transition: width 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), height 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
.l_gheader .logo .siteName {
  transition: font-size 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
@media (min-width: 768px) {
  .l_gheader .logo a {
    gap: 21px;
    font-size: 1.375rem;
  }
  .l_gheader .factcheck {
    position: fixed;
    top: 0;
    right: 146px;
    margin: 0;
    z-index: 1100;
  }
  .l_gheader .factcheck a {
    display: flex;
    align-items: center;
    gap: 5px;
    border-radius: 0 0 4px 4px;
    padding: 0 20px;
    height: 45px;
    color: #ffffff;
    background: var(--color-blue);
    text-decoration: none;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -3%;
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  .l_gheader .factcheck a::before {
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e00b";
    font-size: 18px;
    line-height: 18px;
    vertical-align: middle;
  }
  .l_gheader .factcheck a:hover {
    opacity: 0.7;
  }
  .l_gheader.is_small .logo svg {
    width: calc(142px * var(--scale));
    height: calc(72px * var(--scale));
  }
  .l_gheader.is_small .logo .siteName {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 1024px) {
  .l_gheader .logo {
    right: 60px;
  }
  .l_gheader .logo svg {
    width: 94.2px;
    height: 48px;
  }
  .l_gheader .logo a {
    gap: 13px;
    font-size: 0.9375rem;
  }
  .l_gheader .siteName {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .l_gheader .factcheck {
    display: none;
  }
}

/* GlobalNavigation
--------------------------------------------------------------------------------------------------- */
.l_gnav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2000;
}
.l_gnav .menu {
  position: relative;
  z-index: 10;
}
.l_gnav .menu button {
  position: relative;
  overflow: hidden;
  display: block;
  background: var(--color-yellow);
  border-radius: 0 0 0 4px;
  white-space: nowrap;
  text-indent: 120%;
}
.l_gnav .menu button::before, .l_gnav .menu button::after, .l_gnav .menu button > span::before {
  position: absolute;
  display: block;
  border-radius: 10px;
  content: "";
  background: var(--color-blue);
}
.l_gnav .menu button::before, .l_gnav .menu button::after {
  transition: all 0.3s ease-in-out;
}
.l_gnav .menu button > span::before {
  transition: opacity 0.3s ease-in-out;
}
.l_gnav > .primary {
  overflow: auto;
  margin: 2px 0 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.l_gnav > .primary > li a {
  display: flex;
  flex-direction: column;
  gap: 13px;
  align-items: center;
  justify-content: center;
  border-radius: 4px 0 0 4px;
  background: var(--color-blue);
  color: #ffffff;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), background-color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
.l_gnav > .primary > li a[href*="#candidate"][aria-current=true] {
  background-color: #94bae4;
}
.l_gnav > .primary > li a[href*="#schedule"][aria-current=true] {
  background-color: #96cc94;
}
.l_gnav > .primary > li a[href*="#policies"][aria-current=true] {
  background-color: #f6ac9c;
}
.l_gnav > .primary > li a[href*="#support"][aria-current=true] {
  background-color: #d4c264;
}
.l_gnav .primary > li a::before {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  line-height: 1;
}
.l_gnav > .primary > .candidate a::before {
  content: "\e007";
}
.l_gnav .nav > .primary > .candidate a::before {
  content: "\e010";
}
.l_gnav .primary > .schedule a::before {
  content: "\e008";
}
.l_gnav .primary > .policies a::before {
  content: "\e009";
}
.l_gnav .primary > .support a::before {
  content: "\e00a";
}
.l_gnav .nav {
  position: absolute;
  top: 0;
  right: 0;
  background: var(--color-yellow);
  padding: 20px;
  height: 100dvh;
  overflow: auto;
  transform: translateX(100%);
}
.l_gnav .nav .logo {
  margin: 0;
}
.l_gnav .nav .primary {
  padding: 20px 0 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -3%;
}
.l_gnav .nav .primary > li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border-radius: 8px;
  height: 100px;
  background: #ffffff;
  color: var(--color-text);
  text-decoration: none;
  text-align: center;
}
.l_gnav .nav .primary > li a::before {
  color: var(--color-yellow);
  font-size: 28px;
}
.l_gnav .nav .banner {
  margin: 30px 0;
}
.l_gnav .nav .banner img {
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.l_gnav .nav .secondary {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 30px 0 0;
  font-weight: 700;
  line-height: 1.2;
}
.l_gnav .nav .secondary > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  height: 49px;
  background: #ffffff;
  color: var(--text);
  text-decoration: none;
}
.l_gnav .nav .officialSite {
  margin: 30px 0 0;
  text-align: center;
  line-height: 1.6;
}
.l_gnav .nav .officialSite a {
  text-decoration: none;
  color: var(--text);
}
.l_gnav .nav .officialSite a::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  font-size: 14px;
  line-height: 14px;
  vertical-align: middle;
  margin-left: 5px;
}
.l_gnav .nav .social {
  margin: 30px 0 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
}
.l_gnav .nav .social dd {
  margin: 10px 0 0;
}
.l_gnav .nav .social :where(.list) {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px;
}
.l_gnav .nav .social :where(.list) a {
  display: block;
}
.l_gnav .nav.is_anim {
  transition: transform 0.3s ease-in-out;
}
.l_gnav.is_open .menu button::before,
.l_gnav.is_open .menu button::after {
  top: 50%;
  right: 50%;
}
@media (min-width: 768px) {
  .l_gnav.is_open .menu button::before,
  .l_gnav.is_open .menu button::after {
    width: 56px;
  }
}
@media screen and (max-width: 767px) {
  .l_gnav.is_open .menu button::before,
  .l_gnav.is_open .menu button::after {
    width: 32px;
  }
}
.l_gnav.is_open .menu button::before {
  transform: translate(50%, -50%) rotate(-45deg);
}
.l_gnav.is_open .menu button::after {
  transform: translate(50%, -50%) rotate(45deg);
}
.l_gnav.is_open .menu button > span::before {
  opacity: 0;
}
.l_gnav.is_open .nav {
  transform: translateX(0);
}
@media (min-width: 768px) {
  .l_gnav {
    --buttonSize: 117px;
  }
  .l_gnav .menu button {
    width: var(--buttonSize);
    height: var(--buttonSize);
  }
  .l_gnav .menu button::before, .l_gnav .menu button::after, .l_gnav .menu button > span::before {
    height: 6px;
    right: 30px;
  }
  .l_gnav .menu button::before {
    top: 38px;
    width: 55px;
  }
  .l_gnav .menu button::after {
    top: 73px;
    width: 23px;
  }
  .l_gnav .menu button > span::before {
    top: 55px;
    width: 36px;
  }
  .l_gnav > .primary {
    height: calc(100vh - 200px);
    line-height: 1.4;
    letter-spacing: -3%;
  }
  .l_gnav > .primary > li {
    height: min(33%, 158px);
  }
  .l_gnav > .primary > li a {
    width: var(--buttonSize);
    height: 100%;
    text-align: center;
  }
  .l_gnav > .primary > .candidate a::before {
    font-size: 24px;
  }
  .l_gnav > .primary > .schedule a::before, .l_gnav > .primary > .support a::before {
    font-size: 30px;
  }
  .l_gnav > .primary > .policies a::before {
    font-size: 32px;
  }
  .l_gnav > .primary > li a[href*="#candidate"]:hover {
    background-color: #94bae4;
  }
  .l_gnav > .primary > li a[href*="#schedule"]:hover {
    background-color: #96cc94;
  }
  .l_gnav > .primary > li a[href*="#policies"]:hover {
    background-color: #f6ac9c;
  }
  .l_gnav > .primary > li a[href*="#support"]:hover {
    background-color: #d4c264;
  }
  .l_gnav .nav {
    width: 400px;
  }
  .l_gnav .nav li a,
  .l_gnav .nav .banner a {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  .l_gnav .nav li a:hover,
  .l_gnav .nav .banner a:hover {
    opacity: 0.7;
  }
  .l_gnav .social svg {
    --size: 46px;
    width: var(--size);
    height: var(--size);
  }
}
@media screen and (max-width: 767px) {
  .l_gnav {
    --buttonSize: 55px;
  }
  .l_gnav .logo {
    display: none;
  }
  .l_gnav .menu button {
    width: var(--buttonSize);
    height: var(--buttonSize);
  }
  .l_gnav .menu button::before, .l_gnav .menu button::after, .l_gnav .menu button > span::before {
    height: 4px;
    right: 9px;
  }
  .l_gnav .menu button::before {
    top: 14px;
    width: 37px;
  }
  .l_gnav .menu button::after {
    top: 37px;
    width: 15px;
  }
  .l_gnav .menu button > span::before {
    top: 25px;
    width: 24px;
  }
  .l_gnav > .primary {
    height: min(80dvh, 100vh - 150px);
    line-height: 1.2;
    font-size: 0.75rem;
    padding: 0;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(4, 1fr);
    writing-mode: vertical-rl;
  }
  .l_gnav > .primary > li a {
    flex-direction: row;
    padding-inline: 10px;
    width: var(--buttonSize);
  }
  .l_gnav > .primary > li a::before {
    writing-mode: horizontal-tb;
  }
  .l_gnav > .primary > .candidate a::before {
    font-size: 16px;
  }
  .l_gnav > .primary > .schedule a::before, .l_gnav > .primary > .policies a::before {
    font-size: 24px;
  }
  .l_gnav > .primary > .support a::before {
    font-size: 23px;
  }
  .l_gnav .nav {
    width: 100vw;
  }
  .l_gnav .social .list {
    gap: 3.5897435897vw;
  }
  .l_gnav .social .list svg {
    --size: 45;
    width: min(var(--size) / 390 * 100vw, var(--size) * 1px);
    height: min(var(--size) / 390 * 100vw, var(--size) * 1px);
  }
}
/* Breadcrumb
--------------------------------------------------------------------------------------------------- */
l_breadcrumb ol {
  position: relative;
  margin: 0;
}
l_breadcrumb ol > li {
  padding: 10px 0;
  line-height: 1.2;
  display: inline-block;
  vertical-align: middle;
}
l_breadcrumb ol > li:nth-child(n+2)::before {
  width: 2em;
  content: ">";
  text-align: center;
  display: inline-block;
  vertical-align: middle;
}
l_breadcrumb ol > li em {
  font-weight: 500;
}

/* MainContents
--------------------------------------------------------------------------------------------------- */
.skip {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.l_container {
  position: relative;
}

.l_wrapper {
  display: flex;
}
@media (min-width: 768px) {
  .l_wrapper #mainContents {
    padding-right: 30px;
  }
}
@media (min-width: 768px) {
  .l_wrapper {
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .l_wrapper {
    flex-direction: column;
  }
}

@media screen and (min-width: 1025px) {
  .l_mainContents {
    padding-top: 110px;
  }
}
@media screen and (max-width: 1024px) {
  .l_mainContents {
    padding-top: 88px;
  }
}

/* SubContents
--------------------------------------------------------------------------------------------------- */
@media (min-width: 768px) {
  #subContents {
    flex-basis: 200px;
  }
}
/* Footer
--------------------------------------------------------------------------------------------------- */
.l_gfooter {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 1000;
}
.l_gfooter::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100vw;
  content: "";
  background: var(--color-blue);
  transform: translateX(-50%);
  z-index: 0;
}
.l_gfooter .countdown {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  background: no-repeat 0 0/100% 100%;
  color: #ffffff;
  text-align: center;
  font-weight: 700;
  z-index: 0;
}
.l_gfooter .countdown::before {
  position: absolute;
  top: 0;
  left: 50%;
  content: "";
  background: var(--color-blue);
  z-index: -1;
  border-radius: 50%/100% 100% 0 0;
  transform: translateX(-50%);
}
.l_gfooter .countdown p {
  margin: 0;
}
.l_gfooter .countdown p .timer {
  display: flex;
  align-items: baseline;
  letter-spacing: -3%;
}
.l_gfooter .countdown p .timer > span {
  color: var(--color-yellow);
  font-family: Roboto, sans-serif;
}
.l_gfooter .countdown .open {
  position: relative;
}
.l_gfooter .countdown .open .go {
  display: block;
  color: var(--color-yellow);
  font-weight: 900;
  letter-spacing: -3%;
}
.l_gfooter .howto {
  position: absolute;
  line-height: 1.2;
}
.l_gfooter .howto img {
  position: absolute;
}
.l_gfooter .howto a {
  display: block;
  color: var(--color-blue);
  font-weight: 700;
  text-decoration: none;
}
.l_gfooter .howto a > span {
  display: flex;
  align-items: center;
  justify-content: center;
  background: no-repeat 0 0/cover;
}
@media (min-width: 768px) {
  .l_gfooter {
    margin-inline: auto;
  }
  .l_gfooter::before {
    height: 40px;
  }
  .l_gfooter .countdown {
    position: relative;
    width: 478px;
    height: 130px;
    margin: 0 auto;
    padding: 0 0 8px;
    font-size: 1.25rem;
    line-height: 1.2;
    background-image: url(/images/common/cmn_bg_footer.svg);
    transform: translateX(-58px);
    border-radius: 70% 70% 0 0/180px 180px 0 0;
  }
  .l_gfooter .countdown .timer {
    margin: 4px 0 0;
    font-size: 1.375rem;
  }
  .l_gfooter .countdown .timer > span {
    font-size: 3.75rem;
  }
  .l_gfooter .countdown .open {
    margin-block-end: 25px;
    font-size: 1.6875rem;
  }
  .l_gfooter .countdown .open .go {
    font-size: 2.3125rem;
  }
  .l_gfooter .howto {
    top: 38px;
    left: calc(50% + 266px - 58px);
    font-size: 1rem;
  }
  .l_gfooter .howto img {
    top: -62px;
    left: -98px;
    z-index: -1;
  }
  .l_gfooter .howto a {
    width: 188px;
    height: 41px;
  }
  .l_gfooter .howto a img {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  .l_gfooter .howto a > span {
    width: 188px;
    height: 41px;
    padding-left: 16px;
    background-image: url(/images/common/cmn_bg_footer_baloon.svg);
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  .l_gfooter .howto a:hover > img, .l_gfooter .howto a:hover > span {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .l_gfooter::before {
    height: 15px;
    left: 0;
    transform: none;
  }
  .l_gfooter .countdown {
    width: 320px;
    height: 94px;
    margin: 0 0 0 -40px;
    padding: 0 0 8px;
    font-size: 0.9375rem;
    line-height: 1.2;
    background-image: url(/images/common/cmn_bg_footer_@2x.svg);
  }
  .l_gfooter .countdown .timer {
    margin: 2px 0 0;
    font-size: 1rem;
  }
  .l_gfooter .countdown .timer > span {
    font-size: 2.375rem;
  }
  .l_gfooter .countdown .open {
    margin-block-end: 8px;
    font-size: 1.25rem;
  }
  .l_gfooter .countdown .open .go {
    font-size: 1.5625rem;
  }
  .l_gfooter .countdown:has(.open) {
    margin-left: -20px;
    padding-bottom: 12px;
  }
  .l_gfooter .howto {
    top: 8px;
    left: calc(100vw - 147px);
    font-size: 0.75rem;
  }
  .l_gfooter .howto img {
    --width: 106px;
    top: -21px;
    left: 76px;
    z-index: -1;
    width: var(--width);
    height: var(--width);
    transform: scale(-1, 1) rotate(4deg);
  }
  .l_gfooter .howto a {
    width: 95px;
    height: 42px;
  }
  .l_gfooter .howto a > span {
    width: 95px;
    height: 42px;
    padding-right: 10px;
    background-image: url(/images/common/cmn_bg_footer_baloon_@2x.svg);
    text-align: center;
  }
}
@media screen and (max-width: 374px) {
  .l_gfooter .countdown {
    width: 290px;
  }
}

/*====================================================================================================

    module

====================================================================================================*/
/* section module
--------------------------------------------------------------------------------------------------- */
.m_section {
  position: relative;
  z-index: 10;
  min-height: 100vh;
}
.m_section .m_pageTitle {
  z-index: 1000;
}
.m_section > .sectionInner {
  position: relative;
}
@media (min-width: 768px) {
  .m_section {
    padding: 0 146px 210px 20px;
  }
  .m_section > .sectionInner {
    margin-inline: auto;
    max-width: var(--max-content-width);
  }
}
@media screen and (max-width: 767px) {
  .m_section {
    padding: 0 65px 160px 20px;
  }
}

.m_prevSection:first-child {
  margin-block-start: 40px;
}
.m_dialog .m_prevSection:first-child {
  margin-block-start: 0;
}
.m_prevSection .m_textHeading {
  color: var(--color-blue);
}
@media (min-width: 768px) {
  .m_prevSection {
    margin-block: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_prevSection {
    margin-block: 40px 0;
  }
}

/* heading module
--------------------------------------------------------------------------------------------------- */
.m_textHeading:first-child {
  margin-top: 0 !important;
}
@media (min-width: 768px) {
  .m_textHeading {
    margin: 30px 0 10px;
    font-size: 1.25rem;
  }
  .m_textHeading[class*=_semiLarge], .m_textHeading[class*=_pcSemiLarge] {
    font-size: 1.625rem;
  }
  .m_textHeading[class*=_large] {
    font-size: 2.25rem;
  }
  .m_textHeading[class*=_small] {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .m_textHeading {
    margin: 20px 0 10px;
    font-size: 1rem;
  }
  .m_textHeading[class*=_large], .m_textHeading[class*=_semiLarge], .m_textHeading[class*=_spLarge] {
    font-size: 1.25rem;
  }
  .m_textHeading[class*=_exLarge], .m_textHeading[class*=_spExLarge] {
    font-size: 1.375rem;
  }
  .m_textHeading[class*=_small] {
    font-size: 1.3125rem;
  }
}

.m_pageTitle {
  --scale: .8;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  display: grid;
  align-items: center;
  background: #ffffff;
  color: var(--color-blue);
  line-height: 1.2;
  transition: padding 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), font-size 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
@media screen and (min-width: 1025px) {
  .m_pageTitle {
    margin: 0 0 0 -20px;
    padding: 20px 146px 20px 540px;
    font-size: 2.125rem;
  }
  .m_pageTitle > span {
    padding: 15px 0 15px 34px;
    border-left: 2px solid currentColor;
  }
  .m_pageTitle.is_small {
    font-size: 1.7rem;
  }
  .m_pageTitle.is_small > span {
    padding: calc(15px * var(--scale)) 0 calc(15px * var(--scale)) calc(34px * var(--scale));
  }
  .l_gheader.is_small ~ .l_container .m_pageTitle {
    padding-left: calc(540px * var(--scale));
  }
}
@media screen and (max-width: 1024px) {
  .m_pageTitle {
    margin: 0;
    padding: 20px 65px 20px 127px;
    min-height: 88px;
    font-size: 1.125rem;
  }
}

/* box module
--------------------------------------------------------------------------------------------------- */
.m_keyVisual {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: 1fr auto 1fr;
  text-align: center;
}
.m_keyVisual::before {
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
  z-index: -2;
  background: #f6f6f6;
}
.m_keyVisual .inner {
  position: relative;
  grid-row: 2/3;
  grid-column: 2/3;
  z-index: 1;
}
.m_keyVisual .copy {
  grid-column: 2/3;
  grid-row: 2/3;
  font-weight: 700;
  margin: 0;
}
.m_keyVisual .news {
  box-sizing: border-box;
  grid-column: 1/4;
  grid-row: 3/4;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: min-content;
  margin: 0 auto;
  background: #ffffff;
  text-align: left;
  font-size: 0.875rem;
}
.m_keyVisual .news > .heading {
  grid-column: 1/2;
  margin: 0;
  white-space: nowrap;
}
.m_keyVisual .news > .body {
  overflow: hidden;
  grid-column: 2/3;
}
.m_keyVisual .news .newsList {
  display: flex;
  margin: 0;
  width: 100%;
}
.m_keyVisual .news .newsList li {
  overflow: hidden;
  flex-shrink: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.m_keyVisual .news .newsList li time {
  display: inline-block;
  margin-right: 2em;
}
.m_keyVisual .imageSlide {
  position: relative;
  overflow: hidden;
  grid-column: 1/4;
  grid-row: 1/4;
  z-index: 0;
}
.m_keyVisual .imageSlide .slick-list,
.m_keyVisual .imageSlide .slick-track,
.m_keyVisual .imageSlide .imageItem,
.m_keyVisual .imageSlide .imageItem picture {
  height: 100%;
}
.m_keyVisual .imageSlide .imageItem img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  object-position: center;
}
.m_keyVisual .imageSlide .slick-dots {
  position: absolute;
  right: 0;
  bottom: 20px;
  left: 0;
  margin: 0;
  display: flex;
  align-content: center;
  justify-content: center;
  gap: 0 10px;
}
.m_keyVisual .imageSlide .slick-dots > li button {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
  background: #ffffff;
  border: 1px solid #004ba5;
}
.m_keyVisual .imageSlide .slick-dots > li.slick-active button {
  background: #004ba5;
}
@media (min-width: 768px) {
  .m_keyVisual {
    height: 678px;
  }
  .m_keyVisual::before {
    right: 0;
    left: 0;
  }
  .m_keyVisual .copy {
    font-size: 3rem;
  }
  .m_keyVisual .text {
    margin: 35px 0 0;
  }
  .m_keyVisual .m_button {
    margin: 33px 0 0;
  }
  .m_keyVisual .news {
    align-self: end;
    width: 1024px;
    padding: 15px 50px;
    gap: 0 58px;
  }
  .m_keyVisual .imageSlide {
    margin: 0;
  }
}
@media (min-width: 1025px) {
  .m_keyVisual::before {
    right: calc(50% - 50vw);
    left: calc(50% - 50vw);
  }
  .m_keyVisual .imageSlide {
    margin: 0 calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_keyVisual {
    margin: 0 -20px auto;
    height: 597px;
  }
  .m_keyVisual::before {
    right: 0;
    left: 0;
  }
  .m_keyVisual .copy {
    font-size: 2rem;
  }
  .m_keyVisual .text {
    margin: 26px 20px 0;
    font-size: 0.9375rem;
  }
  .m_keyVisual .m_button {
    margin: 51px auto 0;
    width: 170px;
  }
  .m_keyVisual .news {
    align-self: end;
    padding: 15px 20px;
    gap: 0 58px;
  }
  .m_keyVisual .imageSlide {
    margin: 0;
  }
}

.m_box {
  margin: 0 0 20px;
  border: solid var(--color-blue);
  background: #ffffff;
  border-radius: 8px;
}
.m_box > *:last-child {
  margin-bottom: 0 !important;
}
.m_box[class*=_border] {
  border: 1px solid;
}
.m_box[class*=_nobg] {
  background-color: transparent;
}
@media (min-width: 768px) {
  .m_box {
    padding: 15px 30px 30px;
  }
  .m_box:nth-of-type(n+2) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_box {
    padding: 15px;
  }
  .m_box:nth-of-type(n+2) {
    margin-top: 10px;
  }
}

.m_media {
  display: grid;
}
.m_media > .heading {
  text-align: center;
}
.m_media > .image img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
}
.m_media > .body {
  flex-grow: 1;
}
.m_media > .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_media {
    grid-template-columns: auto 1fr;
    grid-template-rows: min-content min-content 1fr;
  }
  .m_media > .heading {
    grid-column: 1/3;
    grid-row: 1/2;
  }
  .m_media > .image {
    grid-column: 1/2;
    grid-row: 2/4;
    margin-right: 30px;
  }
  .m_media > .body {
    grid-column: 2/3;
    grid-row: 2/4;
  }
  .m_media > .body .m_button {
    justify-content: flex-start;
  }
  .m_media[class*=_pcType02] > .m_tagList {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .m_media[class*=_pcType02] > .heading {
    grid-column: 2/3;
    grid-row: 2/3;
    text-align: left;
  }
  .m_media[class*=_pcType02] > .image {
    grid-column: 1/2;
    grid-row: 1/4;
  }
  .m_media[class*=_pcType02] > .body {
    grid-column: 2/3;
    grid-row: 3/4;
  }
  .m_media[class*=_flipped] {
    grid-template-columns: 1fr auto;
  }
  .m_media[class*=_flipped] > .m_tagList {
    grid-column: 1/2;
  }
  .m_media[class*=_flipped] > .image {
    grid-column: 2/3;
    margin-right: 0;
    margin-left: 30px;
  }
  .m_media[class*=_flipped] > .body {
    grid-column: 1/2;
  }
  .m_media[class*=_flipped][class*=_pcType02] > .heading {
    grid-column: 1/2;
  }
}
@media screen and (max-width: 767px) {
  .m_media > .m_tagList {
    grid-row: 1/2;
  }
  .m_media > .heading {
    grid-row: 2/3;
  }
  .m_media > .image {
    grid-row: 3/4;
  }
  .m_media > .body {
    grid-row: 4/5;
  }
  .m_media .image {
    text-align: center;
  }
  .m_media .image img {
    max-width: 100%;
    height: auto;
  }
  .m_media > .body {
    margin: 20px 0 0;
  }
  .m_media[class*=_spType02] > .heading {
    grid-row: 1/2;
  }
  .m_media[class*=_spType02] > .image {
    grid-row: 3/4;
    margin-top: 20px;
  }
  .m_media[class*=_spType02] > .body {
    grid-row: 2/3;
    margin-top: 0;
  }
  .m_media[class*=_spType03] > .heading {
    grid-row: 2/3;
  }
  .m_media[class*=_spType03] > .image {
    grid-row: 1/2;
    margin-bottom: 20px;
  }
  .m_media[class*=_spType03] > .body {
    grid-row: 3/4;
  }
}

.m_column {
  display: flex;
}
.m_column > .column {
  flex-grow: 1;
  width: 1%;
}
.m_column > .column > *:last-child {
  margin-bottom: 0 !important;
}
.m_column > .column > section > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_column {
    gap: 20px;
    margin: 20px 0 0;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .m_column {
    gap: 0 20px;
    margin: 0 0 20px;
  }
  .m_column[class*=_spNoColumn] {
    flex-direction: column;
    gap: 40px;
  }
  .m_column[class*=_spNoColumn] > .column {
    width: 100%;
  }
}

.m_faq {
  margin: 0;
}
.m_faq dt, .m_faq dd {
  position: relative;
  margin: 0;
}
.m_faq dt .ico, .m_faq dd .ico {
  position: absolute;
  font-style: normal;
  font-weight: 700;
}
.m_faq dt {
  background: #f6f6f6;
}
.m_faq dd {
  overflow: hidden;
  border: solid #f6f6f6;
  border-width: 0 1px 1px;
}
.m_faq dd > .inner {
  position: relative;
}
.m_faq dd > .inner > *:last-child {
  margin-bottom: 0 !important;
}
.m_faq.js_faq dt {
  cursor: pointer;
}
.m_faq.js_faq dt::before, .m_faq.js_faq dt::after {
  position: absolute;
  top: 50%;
  content: "";
  border-top: 2px solid currentColor;
  transform: translateY(-50%);
}
.m_faq.js_faq dt::after {
  transform: translateY(-50%) rotate(90deg);
}
.m_faq.js_faq dt.is_open::after {
  transform: translateY(-50%);
}
.m_faq > div:nth-of-type(n+2) {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .m_faq dt .ico, .m_faq dd .ico {
    top: 15px;
    left: 30px;
    font-size: 1.25rem;
  }
  .m_faq dt, .m_faq dd > .inner {
    padding: 19px 80px 16px 75px;
  }
  .m_faq dt::before,
  .m_faq dt::after {
    right: 30px;
    width: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_faq dt .ico, .m_faq dd .ico {
    top: 15px;
    left: 10px;
    font-size: 1.125rem;
  }
  .m_faq dt, .m_faq dd > .inner {
    padding: 17px 35px 15px;
  }
  .m_faq dt::before,
  .m_faq dt::after {
    right: 10px;
    width: 16px;
  }
}

.m_accordion::marker {
  display: none;
}
/* paragraph module
--------------------------------------------------------------------------------------------------- */
@media (min-width: 768px) {
  .m_text[class*=_small] {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_text[class*=_large] {
    font-size: 1rem;
  }
  .m_text[class*=_small] {
    font-size: 0.75rem;
  }
}

.m_lead {
  line-height: 2;
}
@media (min-width: 768px) {
  .m_lead {
    margin: 30px 0 45px;
    text-align: center;
  }
  .m_lead[class*=_large] {
    font-size: 1.125rem;
  }
  .m_lead[class*=_small] {
    font-size: 0.875rem;
  }
  .m_visualHeading + .m_lead {
    margin: 70px 0 0;
  }
  .m_visualHeading + .m_lead[class*=_border] {
    padding-bottom: 65px;
    border-bottom: 1px solid #e5e5e5;
  }
}
@media screen and (max-width: 767px) {
  .m_lead {
    font-size: 0.9375rem;
  }
  .m_lead[class*=_large] {
    font-size: 1rem;
  }
  .m_lead[class*=_small] {
    font-size: 0.75rem;
  }
}

.m_liquidImage {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: min-content min-content;
}
.m_liquidImage img {
  max-width: 100%;
  height: auto;
}
.m_liquidImage .image {
  grid-row: 1/2;
  grid-column: 2/3;
  text-align: center;
}
.m_liquidImage .caption {
  grid-row: 2/3;
  grid-column: 2/3;
  color: #707f89;
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  .m_liquidImage .caption {
    margin: 12px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .m_liquidImage .caption {
    margin: 7px 0 0;
  }
}

.m_link::after {
  display: inline-block;
  margin-left: 5px;
}
.m_link[target=_blank]::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  vertical-align: middle;
}
.m_link[target=_blank][href*=".pdf"]::after {
  content: "\e003";
}

/* list module
--------------------------------------------------------------------------------------------------- */
.m_list {
  margin: 0;
}
.m_list > li {
  position: relative;
  padding-left: 1em;
}
.m_list > li > *:last-child {
  margin-bottom: 0 !important;
}
.m_list > li:before {
  position: absolute;
  left: 0;
  content: "・";
}
.m_list[class*=_unstyled] > li {
  padding: 0;
}
.m_list[class*=_unstyled] > li::before {
  content: none;
}

.m_numberList {
  counter-reset: li;
  margin: 0;
}
.m_numberList > li {
  display: flex;
}
.m_numberList > li > *:last-child {
  margin-bottom: 0 !important;
}
.m_numberList > li:before {
  flex-shrink: 0;
  content: counter(li) ".";
  counter-increment: li;
}
@media (min-width: 768px) {
  .m_numberList > li::before {
    width: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_numberList > li::before {
    width: 25px;
  }
}

.m_notesList {
  font-size: 0.875rem;
}
.m_notesList > li {
  display: table-row;
}
.m_notesList > li > *:last-child {
  margin-bottom: 0 !important;
}
.m_notesList > li::before {
  display: table-cell;
  content: "※";
  text-align: center;
}
.m_notesList[class*=_small] > li::before, .m_notesList > li[class*=_small]::before {
  content: "*";
}
.m_notesList[class*=_mark] > li .mark, .m_notesList > li[class*=_mark] .mark {
  display: table-cell;
  text-align: right;
}
.m_notesList[class*=_mark] > li::before, .m_notesList > li[class*=_mark]::before {
  content: none;
}
.m_notesList[class*=_alignCenter] {
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
  text-align: left !important;
}
@media (min-width: 768px) {
  .m_notesList[class*=_pcAlignCenter] {
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left !important;
  }
}
@media screen and (max-width: 767px) {
  .m_notesList[class*=_spAlignCenter] {
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left !important;
  }
}

.m_newsList {
  display: flex;
  flex-direction: column;
}
.m_newsList .update {
  grid-column: 1;
  grid-row: 1;
  font-weight: 600;
  font-family: "Roboto, Noto Sans JP", sans-serif;;
  letter-spacing: -4%;
}
.m_newsList .category {
  grid-column: 2;
  grid-row: 1;
  font-weight: 700;
  letter-spacing: -4%;
}
.m_newsList .category a {
  position: relative;
  color: inherit;
  z-index: 20;
}
.m_newsList .title {
  grid-column: 1/3;
  margin: 0;
  font-weight: 700;
  line-height: 1.7;
}
.m_newsList .title a {
  color: #000000;
}
.m_newsList .title a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 10;
}
.m_newsList > li {
  position: relative;
  display: grid;
  align-items: baseline;
  grid-template-columns: auto 1fr;
  gap: 15px 0;
  border-radius: 4px;
  padding: 20px;
  background: #ffffff;
}
@media (min-width: 768px) {
  .m_newsList {
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList {
    gap: 10px;
  }
}

.m_scheduleList {
  display: flex;
  flex-direction: column;
  gap: 10px;
  letter-spacing: -3%;
}
.m_scheduleList .icon {
  position: relative;
  background: url(/images/common/mod_bg_calendar.svg) no-repeat 0 0/cover;
  color: var(--color-blue);
  font-family: Roboto, sans-serif;
  font-weight: 600;
  font-style: normal;
}
.m_scheduleList .icon::before {
  position: absolute;
  border-left: 2px solid currentColor;
  content: "";
  transform: rotate(40deg);
}
.m_scheduleList .icon > span:not([class]) {
  display: none;
}
.m_scheduleList .icon .month,
.m_scheduleList .icon .day {
  position: absolute;
}
.m_scheduleList .icon .day {
  min-width: 1em;
  text-align: center;
}
.m_scheduleList .update {
  display: block;
  font-weight: 600;
  font-family: Roboto, sans-serif;
}
.m_scheduleList .title {
  margin: 0;
  font-weight: 700;
}
.m_scheduleList .title a {
  color: var(--color-text);
}
.m_scheduleList .title a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 10;
}
.m_scheduleList .communication {
  position: relative;
  flex-direction: column;
  gap: 10px;
  z-index: 20;
  margin: 0;
}
.m_scheduleList .communication button {
  min-width: 264px;
  min-height: 40px;
  font-size: 0.875rem;
}
.m_scheduleList .communication button::before {
  margin-right: 10px;
}
.m_scheduleList .communication .share button::before {
  content: "\e00c";
  font-size: 20px;
  line-height: 20px;
}
.m_scheduleList .communication .calendarAdd button::before {
  content: "\e00d";
  font-size: 20px;
  line-height: 20px;
}
.m_scheduleList > li {
  position: relative;
  display: grid;
  border-radius: 4px;
  background: #ffffff;
}
.m_scheduleList > li.is_animSet {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), transform 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  will-change: opacity, transform;
}
.m_scheduleList > li.is_anim {
  opacity: 1;
  transform: translateY(0);
}
@media (min-width: 768px) {
  .m_scheduleList .icon {
    grid-column: 1;
    grid-row: 1/3;
    margin-top: 7px;
    width: 69px;
    height: 79px;
    align-self: start;
  }
  .m_scheduleList .icon::before {
    top: 43px;
    left: 28px;
    height: 25px;
  }
  .m_scheduleList .icon .month {
    top: 34px;
    left: 15px;
    font-size: 1.0625rem;
  }
  .m_scheduleList .icon .day {
    top: 47px;
    left: 35px;
    font-size: 1.125rem;
  }
  .m_scheduleList .update {
    grid-column: 2;
    grid-row: 1;
    font-size: 1.125rem;
  }
  .m_scheduleList .title {
    grid-column: 2;
    grid-row: 2;
    font-size: 1.25rem;
    line-height: 1.5;
  }
  .m_scheduleList .title a:hover {
    text-decoration: none;
  }
  .m_scheduleList .communication {
    grid-column: 3;
    grid-row: 1/3;
  }
  .m_scheduleList > li {
    grid-template-columns: auto 1fr auto;
    gap: 0 26px;
    padding: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_scheduleList .icon {
    grid-column: 1;
    grid-row: 1;
    width: 40px;
    height: 45px;
    align-self: center;
    font-size: 0.75rem;
  }
  .m_scheduleList .icon::before {
    top: 21px;
    left: 16px;
    height: 19px;
  }
  .m_scheduleList .icon .month {
    top: 18px;
    left: 8px;
  }
  .m_scheduleList .icon .day {
    top: 26px;
    left: 19px;
  }
  .m_scheduleList .update {
    grid-column: 2;
    grid-row: 1;
  }
  .m_scheduleList .title {
    grid-column: 1/3;
    margin: 10px 0 0;
    font-size: 1.125rem;
    line-height: 1.7;
  }
  .m_scheduleList .communication {
    grid-column: 1/3;
    margin: 10px 0 0;
  }
  .m_scheduleList .communication button {
    min-width: auto;
  }
  .m_scheduleList > li {
    grid-template-columns: auto 1fr;
    gap: 0 10px;
    padding: 20px;
  }
}

.m_candidateList {
  display: grid;
  grid-template-columns: repeat(4, repeat);
  gap: 25px;
}
.m_candidateList .data {
  position: relative;
  container-type: inline-size;
  display: grid;
  grid-template-columns: 1fr;
  margin: 0;
  border-radius: 8px;
  background-color: var(--color-yellow);
  font-weight: 700;
  line-height: 1.2;
}
.m_candidateList .data .image {
  width: 100cqw;
  height: 100cqw;
  background: #ffffff;
}
.m_candidateList .data .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.m_candidateList .data .label {
  position: absolute;
  top: -8px;
  right: -5px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  width: 43px;
  height: 43px;
  background: var(--color-blue);
  font-size: 0.875rem;
  color: #ffffff;
}
.m_candidateList .data .name a {
  color: inherit;
  text-decoration: none;
}
.m_candidateList .data .name a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 0;
}
.m_candidateList > li {
  z-index: 0;
}
.m_candidateList > li[data-label=recommendation] .data {
  background: var(--color-blue);
  color: #ffffff;
}
.m_candidateList > li[data-label=recommendation] .data .label {
  color: var(--color-text);
  background-color: var(--color-yellow);
}
.m_candidateList > li.is_animSet {
  opacity: 0;
  transform: translateY(-50px);
  transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), transform 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  will-change: opacity, transform;
}
.m_candidateList > li.is_anim {
  opacity: 1;
  transform: translateY(0);
}
.m_candidateList + .m_textHeading {
  border-top: 1px solid #595959;
}
@media (min-width: 768px) {
  .m_candidateList {
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    margin-block: 20px 0;
  }
  .m_candidateList .data {
    padding: 12px;
    gap: 12px;
  }
  .m_candidateList .data .area {
    font-size: 1rem;
  }
  .m_candidateList .data .name {
    font-size: 1.25rem;
  }
  .m_candidateList + .m_textHeading {
    margin-block-start: 48px;
    padding-block-start: 48px;
  }
}
@media screen and (max-width: 767px) {
  .m_candidateList {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 10px;
    margin-block: 28px 0;
  }
  .m_candidateList .data {
    padding: 10px;
    gap: 10px;
    min-width: 135px;
  }
  .m_candidateList .data .area,
  .m_candidateList .data .name {
    font-size: 1rem;
  }
  .m_candidateList + .m_textHeading {
    margin-block-start: 38px;
    padding-block-start: 38px;
  }
}

.m_summaryList {
  display: flex;
  flex-direction: column;
}
.m_summaryList .heading {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--color-blue);
  font-weight: 700;
  list-style: none;
  cursor: pointer;
}
.m_summaryList .heading > .num {
  font-family: Roboto, sans-serif;
  font-variation-settings: "wdth" 75;
}
.m_summaryList .heading::after {
  margin-left: auto;
  transition: transform 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
.m_summaryList .heading::-webkit-details-marker {
  display: none;
}
.m_summaryList .lead {
  margin: 0;
}
.m_summaryList [data-anim-status=runnning] .content {
  overflow: hidden;
}
.m_summaryList .contentInner {
  position: relative;
  font-size: 1.125rem;
}
.m_summaryList .contentInner > .inner {
  border-radius: 8px;
  background: var(--color-yellow);
}
.m_summaryList .contentInner > .inner .m_text {
  margin: 30px 0 0;
  position: relative;
}
.m_summaryList .contentInner > .inner .m_text .note {
  font-size: 0.875rem;
}
.m_summaryList .contentInner > .inner > *:first-child {
  margin-top: 0 !important;
}
.m_summaryList > li {
  overflow: hidden;
  border-radius: 8px;
  border: 4px solid var(--color-blue);
  background: #ffffff;
  counter-increment: num;
}
.m_summaryList .is_open .heading::after {
  transform: scale(1, -1);
}
@media (min-width: 768px) {
  .m_summaryList {
    margin: 50px 0 0;
    gap: 20px;
  }
  .m_summaryList .heading {
    padding: 15px 30px;
    min-height: 93px;
    font-size: 1.75rem;
  }
  .m_summaryList .heading > .num {
    font-size: 2.625rem;
  }
  .m_summaryList .heading::after {
    content: "";
    display: block;
    border: solid var(--color-blue);
    border-color: var(--color-blue) transparent transparent;
    border-width: 21px 12px 0;
    width: 0;
    line-height: 1;
  }
  .m_summaryList .contentInner {
    padding: 15px 30px 30px;
  }
  .m_summaryList .contentInner > .inner {
    margin: 30px 0 0;
    padding: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_summaryList {
    margin: 20px 0 0;
    gap: 10px;
  }
  .m_summaryList .heading {
    padding: 15px;
    font-size: 1.25rem;
    line-height: 1.4;
  }
  .m_summaryList .heading > .num {
    font-size: 2rem;
  }
  .m_summaryList .heading::after {
    content: "";
    display: block;
    border: solid var(--color-blue);
    border-color: var(--color-blue) transparent transparent;
    border-width: 16px 9px 0;
    width: 0;
    line-height: 1;
  }
  .m_summaryList .contentInner {
    padding: 15px 15px 15px;
  }
  .m_summaryList .contentInner > .inner {
    margin: 20px 0 0;
    padding: 15px;
  }
}

[class*=List][class*=_horizontal] > li {
  margin-right: 20px;
  display: inline-block;
  vertical-align: top;
}

/* table module
--------------------------------------------------------------------------------------------------- */
.m_table table {
  box-sizing: border-box;
  border: solid #e5e5e5;
  border-width: 0 0 1px 1px;
  width: 100%;
}
.m_table table th,
.m_table table td {
  border: solid #e5e5e5;
  border-width: 1px 1px 0 0;
  padding: 8px 10px 6px;
  text-align: left;
}
.m_table table th {
  background: #f6f6f6;
  font-weight: 500;
}
.m_table[class*=_fixed] table {
  table-layout: fixed;
}
@media screen and (max-width: 767px) {
  .m_table {
    overflow: auto;
  }
  .m_table table th {
    white-space: nowrap;
  }
}

.m_table02 table {
  box-sizing: border-box;
  border-bottom: 1px solid #e5e5e5;
  width: 100%;
}
.m_table02 table th,
.m_table02 table td {
  text-align: left;
}
.m_table02 table th {
  font-weight: 500;
}
.m_table02[class*=_fixed] table {
  table-layout: fixed;
}
@media (min-width: 768px) {
  .m_table02 table th, .m_table02 table td {
    border-top: 1px solid #e5e5e5;
  }
  .m_table02 table th {
    padding: 25px 0 25px 20px;
    min-width: 20%;
  }
  .m_table02 table td {
    padding: 25px 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_table02 table tbody, .m_table02 table thead, .m_table02 table tfoot, .m_table02 table tr, .m_table02 table th, .m_table02 table td {
    box-sizing: border-box;
    display: block;
    width: 100%;
  }
  .m_table02 table tr {
    border-top: 1px solid #e5e5e5;
    padding: 20px 0;
  }
  .m_table02 table th {
    margin-bottom: 20px;
    font-size: 0.9375rem;
  }
}

.m_cartTable table {
  width: 100%;
}
.m_cartTable th, .m_cartTable td {
  vertical-align: baseline;
  font-weight: 500;
}
.m_cartTable .totalPrice th, .m_cartTable .totalPrice td {
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_cartTable th, .m_cartTable td {
    border-bottom: 1px solid #e5e5e5;
    padding: 20px 25px;
    font-size: 1rem;
    text-align: left;
  }
  .m_cartTable .totalPrice th, .m_cartTable .totalPrice td {
    padding: 0 0 5px;
    font-size: 1.25rem;
  }
  .m_cartTable .totalPrice th {
    width: 260px;
  }
  .m_cartTable .totalPrice td {
    text-align: right;
  }
  .m_cartTable .totalPrice .val {
    font-size: 2.25rem;
  }
  .m_cartTable .totalPrice + tr th, .m_cartTable .totalPrice + tr td {
    padding-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  .m_cartTable th, .m_cartTable td {
    display: block;
    width: 100%;
  }
  .m_cartTable th {
    margin-bottom: 20px;
    padding-top: 20px;
    text-align: left;
  }
  .m_cartTable td {
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 20px;
  }
  .m_cartTable .totalPrice {
    text-align: center;
  }
  .m_cartTable .totalPrice th {
    margin: 0 0 5px;
    font-size: 0.9375rem;
    text-align: center;
  }
  .m_cartTable .totalPrice td {
    padding: 0 0 15px;
    font-size: 1.25rem;
  }
  .m_cartTable .totalPrice .val {
    font-size: 1.75rem;
  }
  .m_cartTable .totalPrice + tr th {
    padding-top: 35px;
  }
}

/* navigation module
--------------------------------------------------------------------------------------------------- */
.m_button {
  text-align: center;
}
.m_button a,
.m_button button,
.m_button input[type=button],
.m_button input[type=submit],
.m_button input[type=reset],
.m_button span {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: calc(infinity * 1px);
  min-height: 60px;
  background: var(--color-blue);
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 700;
  text-decoration: none;
}
.m_button a::before,
.m_button button::before,
.m_button input[type=button]::before,
.m_button input[type=submit]::before,
.m_button input[type=reset]::before,
.m_button span::before {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
}
.m_button a.is_disabled, .m_button a[disabled], .m_button a[aria-disabled=true],
.m_button button.is_disabled,
.m_button button[disabled],
.m_button button[aria-disabled=true],
.m_button input[type=button].is_disabled,
.m_button input[type=button][disabled],
.m_button input[type=button][aria-disabled=true],
.m_button input[type=submit].is_disabled,
.m_button input[type=submit][disabled],
.m_button input[type=submit][aria-disabled=true],
.m_button input[type=reset].is_disabled,
.m_button input[type=reset][disabled],
.m_button input[type=reset][aria-disabled=true],
.m_button span.is_disabled,
.m_button span[disabled],
.m_button span[aria-disabled=true] {
  background: #d8d8d8;
  pointer-events: none;
  cursor: not-allowed;
}
.m_button a[class*=_back],
.m_button button[class*=_back],
.m_button input[type=button][class*=_back],
.m_button input[type=submit][class*=_back],
.m_button input[type=reset][class*=_back],
.m_button span[class*=_back] {
  background: #004ba5;
}
.m_button a[target=_blank]::after {
  margin-left: 10px;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  vertical-align: middle;
  transform: translateY(2px);
}
.m_button a[target=_blank][href*=".pdf"]::after {
  content: "\e003";
}
.m_button[class*=_share] a::before, .m_button[class*=_share] button::before,
.m_button a[class*=_share]::before,
.m_button button[class*=_share]::before {
  margin-right: 10px;
  content: "\e00c";
  font-size: 20px;
  line-height: 20px;
}
.m_button[class*=_small] a, .m_button[class*=_small] button {
  min-width: 264px;
  min-height: 40px;
  font-size: 0.875rem;
}
.m_button span {
  background: #c1c1c1;
}
@media (min-width: 768px) {
  .m_button {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin: 40px 0;
  }
  .m_button a,
  .m_button button,
  .m_button input[type=button],
  .m_button input[type=submit],
  .m_button input[type=reset] {
    padding: 10px 40px;
    min-width: 300px;
    transition: opacity 0.5s ease;
  }
  .m_button a:hover,
  .m_button button:hover,
  .m_button input[type=button]:hover,
  .m_button input[type=submit]:hover,
  .m_button input[type=reset]:hover {
    opacity: 0.7;
  }
  .m_indexList + .m_button {
    margin-top: 35px;
  }
}
@media screen and (max-width: 767px) {
  .m_button {
    margin: 30px 0;
  }
  .m_button > li:nth-child(n+2) {
    margin-top: 10px;
  }
  .m_button a,
  .m_button button,
  .m_button input[type=button],
  .m_button input[type=submit],
  .m_button input[type=reset],
  .m_button span {
    width: 100%;
    padding: 20px;
  }
}

.m_pager {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 40px 0 0;
  font-family: Roboto, sans-serif;
  font-weight: 700;
  text-align: center;
}
.m_pager > li a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f5f5f5;
  text-decoration: none;
  line-height: 1;
  transition: transition(color), transition(background-color), transition(opacity);
}
.m_pager > li a > span:not([class]) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.m_pager > li.is_active a {
  background: var(--color-blue);
  color: #ffffff;
}
.m_pager > li.s_ellipsis {
  flex-shrink: 0;
}
.m_pager > li.s_ellipsis > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ffffff;
  color: var(--color-blue);
  line-height: 1;
}
.m_pager > li.prev a::before, .m_pager > li.next a::after {
  content: "";
  display: block;
  border: solid currentColor;
  border-color: transparent transparent transparent currentColor;
  border-width: 6.5px 0 6.5px 11px;
  width: 0;
  line-height: 1;
}
.m_pager > li.prev a {
  transform: scale(-1, 1);
}
@media (min-width: 768px) {
  .m_pager {
    --size: 50px;
    gap: 10px;
  }
  .m_pager > li a, .m_pager > li.s_ellipsis span {
    width: var(--size);
    height: var(--size);
  }
  .m_pager > li a {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  .m_pager > li a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .m_pager {
    --size: 38px;
    gap: 6px;
  }
  .m_pager > li a, .m_pager > li.s_ellipsis > span {
    width: var(--size);
    height: var(--size);
  }
}

.m_tab .tabNav {
  position: sticky;
  z-index: 100;
  display: flex;
  font-weight: 700;
  text-align: center;
  letter-spacing: -3%;
  line-height: 1.2;
  transition: top 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), min-height 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
.m_tab .tabNav > li {
  width: 1%;
  flex-grow: 1;
}
.m_tab .tabNav > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  background: #ffffff;
  color: var(--color-blue);
  text-decoration: none;
  transition: background-color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), padding 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
.m_tab .tabNav > li a[aria-current=true] {
  background: var(--color-blue);
  color: #ffffff;
}
.m_tab .tabNav > li:first-child a {
  border-radius: 10px 0 0 0;
}
.m_tab .tabNav > li:last-child a {
  border-radius: 0 10px 0 0;
}
@media (min-width: 768px) {
  .m_tab {
    max-width: var(--max-content-width);
    margin: auto;
  }
  .m_tab .tabNav {
    top: 110px;
    gap: 8px;
    margin: 40px 0;
    min-height: 55px;
    font-size: 1.25rem;
    background: inherit;
  }
  .m_tab .tabNav > li a {
    padding: 10px 30px;
  }
  .m_tab .tabNav > li a:hover {
    background: var(--color-blue);
    color: #ffffff;
  }
  .m_tab .tabContents {
    position: relative;
    margin: 40px 0 0;
  }
  .l_gheader.is_small ~ .l_container .m_tab .tabNav {
    top: 96px;
    min-height: 56px;
  }
  .l_gheader.is_small ~ .l_container .m_tab .tabNav > li a {
    padding-block: 10px;
  }
}
@media screen and (max-width: 767px) {
  .m_tab .tabNav {
    top: 88px;
    gap: 2px;
    margin: 20px 0;
    min-height: 50px;
    font-size: 0.75rem;
  }
  .m_tab .tabNav > li a {
    padding: 10px 5px;
  }
  .l_gheader.is_small ~ .l_container .m_tab .tabNav {
    min-height: 48px;
  }
  .l_gheader.is_small ~ .l_container .m_tab .tabNav > li a {
    padding-block: 10px;
  }
}

.m_social {
  display: flex;
  align-items: center;
  justify-content: center;
}
.m_social button {
  overflow: hidden;
  display: block;
  border-radius: 50%;
}
.m_social button svg {
  display: block;
}
@media (min-width: 768px) {
  .m_social {
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_social {
    gap: 15px;
  }
}

.m_dialog {
  overflow: visible;
  border: unset;
  border-radius: 8px;
  background: #ffffff;
  text-align: center;
  line-height: 1.2;
  font-weight: bold;
  transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), scale 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
.m_dialog .m_social {
  gap: 13px;
}
.m_dialog .text {
  margin: 18px 0 0;
  font-size: 0.875rem;
}
.m_dialog .inner {
  overflow: auto;
  max-height: 80vh;
  height: 100%;
}
.m_dialog .close {
  position: absolute;
  right: 0;
}
.m_dialog .close::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00f";
  vertical-align: middle;
  color: #ffffff;
}
.m_dialog .close > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.m_dialog:not([data-active=true]) {
  opacity: 0;
  scale: 0.95;
}
.m_dialog::backdrop {
  background-color: rgba(0, 0, 0, 0.8);
}
.m_dialog:has(.inner) {
  padding: 0;
}
.m_dialog#socialDialog {
  background: var(--color-yellow);
  height: min-content;
}
@media (min-width: 768px) {
  .m_dialog {
    padding: 40px;
    max-width: var(--max-content-width);
  }
  .m_dialog .container {
    overflow: auto;
    height: 462px;
  }
  .m_dialog .close {
    top: -65px;
  }
  .m_dialog .close::after {
    font-size: 40px;
  }
  .m_dialog#socialDialog {
    padding: 50px 110px;
  }
  .m_dialog#socialDialog .close {
    right: 65px;
  }
}
@media screen and (max-width: 767px) {
  .m_dialog {
    padding: 30px;
    min-width: 320px;
    height: 70vh;
  }
  .m_dialog .container {
    overflow: auto;
    height: 100%;
  }
  .m_dialog .close {
    top: -40px;
    right: 0;
  }
  .m_dialog .close::after {
    font-size: 20px;
  }
}

/* form module
--------------------------------------------------------------------------------------------------- */
.m_checkbox input[type=checkbox] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.m_checkbox input[type=checkbox] + .textlabel {
  position: relative;
  display: inline-block;
  padding-left: 24px;
}
.m_checkbox input[type=checkbox] + .textlabel::before {
  position: absolute;
  top: 4px;
  left: 0;
  border: 1px solid #000000;
  width: 18px;
  height: 18px;
  content: "";
}
.m_checkbox input[type=checkbox] + .textlabel::after {
  position: absolute;
  top: 9px;
  left: 5px;
  width: 9px;
  height: 5px;
  border: solid currentColor;
  border-width: 0 0 2px 2px;
  content: "";
  opacity: 0;
  transform: rotate(-45deg);
  transition: transition(opacity);
}
.m_checkbox input[type=checkbox]:checked + .textlabel::after {
  opacity: 1;
}
.m_radio input[type=radio] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.m_radio input[type=radio] + .textlabel {
  position: relative;
  display: inline-block;
  padding-left: 24px;
}
.m_radio input[type=radio] + .textlabel::before {
  position: absolute;
  top: 4px;
  left: 0;
  border: 1px solid #000000;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  content: "";
}
.m_radio input[type=radio] + .textlabel::after {
  position: absolute;
  top: 9px;
  left: 5px;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  content: "";
  background: #000000;
  opacity: 0;
  transition: transition(opacity);
}
.m_radio input[type=radio]:checked + .textlabel::after {
  opacity: 1;
}
.m_inputText {
  display: inline-flex;
  align-items: center;
  gap: 0 10px;
  width: 100%;
}
.m_inputText .textlabel {
  flex-basis: 2.5em;
}
.m_inputText input[type=text] {
  flex-grow: 1;
  border: 1px solid #000000;
  padding: 5px 10px;
  height: 30px;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .m_inputText[class*=_col2] {
    width: 30%;
  }
  .m_inputText[class*=_col3] {
    width: 20%;
  }
}
@media screen and (max-width: 767px) {
  .m_inputText[class*=_col2] {
    width: 50%;
  }
  .m_inputText[class*=_col3] {
    width: 33.3333333333%;
  }
}

.m_textarea {
  display: inline-flex;
  width: 100%;
}
.m_textarea textarea {
  box-sizing: border-box;
  border: 1px solid #000000;
  padding: 5px 10px;
  width: 100%;
  height: 250px;
  font-size: 1rem;
}

.m_select {
  position: relative;
  display: inline-block;
  border: 3px solid currentColor;
  background: #ffffff;
  color: var(--color-blue);
}
.m_select::before {
  position: absolute;
  top: 50%;
  right: 16px;
  content: "";
  display: block;
  border: solid currentColor;
  border-color: currentColor transparent transparent;
  border-width: 14px 7px 0;
  width: 0;
  line-height: 1;
  transform: translateY(-50%);
  z-index: 0;
}
.m_select select {
  position: relative;
  display: block;
  border: none;
  background: none;
  padding: 5px 40px 5px 20px;
  width: 100%;
  height: 48px;
  color: inherit;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -3%;
  z-index: 1;
}
@media (min-width: 768px) {
  .m_select {
    width: 292px;
  }
}
@media screen and (max-width: 767px) {
  .m_select {
    width: 200px;
  }
}

.searchandfilter {
  position: relative;
  display: inline-block;
  border: 3px solid currentColor;
  background: #ffffff;
  color: var(--color-blue);
}
.searchandfilter::before {
  position: absolute;
  top: 50%;
  right: 16px;
  content: "";
  display: block;
  border: solid currentColor;
  border-color: currentColor transparent transparent;
  border-width: 14px 7px 0;
  width: 0;
  line-height: 1;
  transform: translateY(-50%);
  z-index: 0;
}
.searchandfilter ul {
  margin-block: 0;
  display: contents !important;
}
.searchandfilter ul > li {
  display: contents;
}
.searchandfilter select {
  position: relative;
  display: block;
  border: none;
  background: none;
  padding: 5px 40px 5px 20px;
  width: 100%;
  height: 48px;
  color: inherit;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -3%;
  z-index: 1;
}
@media (min-width: 768px) {
  .searchandfilter {
    width: 292px;
  }
}
@media screen and (max-width: 767px) {
  .searchandfilter {
    width: 200px;
  }
}

.m_inputList[class*=_col] {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
}
.m_inputList[class*=_col2] > li {
  width: calc(50% - 10px);
}
.m_inputList[class*=_col3] > li {
  width: calc(33.3333333333% - 13.3333333333px);
}
.m_inputList[class*=_col4] > li {
  width: calc(25% - 15px);
}
.m_inputList[class*=_media] {
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 25px;
}
.m_inputList[class*=_media] > li {
  position: relative;
}
.m_inputList[class*=_media] > li .image {
  margin: 0 0 10px;
}
.m_inputList[class*=_media] > li .image img {
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}
.m_inputList[class*=_media] > li .descripion {
  margin: 10px 0 0;
  font-size: 0.875rem;
}
@media (min-width: 768px) {
  .m_inputList[class*=_media] > li {
    width: 255px;
  }
}
.m_step {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.m_step > li {
  position: relative;
  border: 1px solid #000000;
}
.m_step > li.is_current {
  background: #000000;
  color: #ffffff;
}
.m_step > li:nth-of-type(n+2)::before {
  position: absolute;
  top: 50%;
  left: -21px;
  width: 20px;
  content: "";
  border-top: 1px solid #000000;
}
@media (min-width: 768px) {
  .m_step {
    gap: 0 20px;
  }
  .m_step > li {
    width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .m_step {
    gap: 0 20px;
  }
  .m_step > li {
    width: 50px;
  }
  .m_step > li.is_current {
    flex-grow: 1;
  }
  .m_step > li:not(.is_current) .omissionLabel {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

.m_form .formList dt {
  margin: 0;
  padding: 6px 0 0;
  width: 257px;
}
.m_form .formList dd {
  display: flex;
  gap: 0 20px;
  flex-grow: 1;
  margin: 0;
}
.m_form .formList dd .m_button {
  display: inline-flex;
  align-self: center;
  margin: 0;
}
.m_form .formList dd .m_button a, .m_form .formList dd .m_button button, .m_form .formList dd .m_button input[type=button], .m_form .formList dd .m_button input[type=reset], .m_form .formList dd .m_button input[type=submit] {
  height: 30px;
  min-width: 100px;
}
.m_form .formList .mark {
  display: inline-block;
  border: 1px solid #1e2d58;
  background: rgba(0, 0, 0, 0.3);
  font-size: 0.875rem;
  line-height: 1.4285714286;
  padding: 0 10px;
  font-weight: 500;
  margin-right: 10px;
}
.m_form .formList .mark.required {
  color: #ffffff;
  background: #ff0000;
}
.m_form .agreement,
.m_form .business {
  text-align: center;
}
.m_form .business a[href^="tel:"] {
  display: inline-block;
  font-weight: 700;
  color: #000000;
  margin-left: 1em;
}
@media (min-width: 768px) {
  .m_form .formList > div {
    display: flex;
    align-items: flex-start;
    gap: 0 20px;
  }
  .m_form .formList > div:nth-of-type(n+2) {
    margin-top: 30px;
  }
  .m_form .agreement {
    margin: 40px 0;
  }
  .m_form .business {
    margin: 0;
  }
  .m_form .business a[href^="tel:"] {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .m_form .formList > div:nth-of-type(n+2) {
    margin-top: 30px;
  }
  .m_form .formList dd {
    margin-top: 10px;
  }
}

/* inline module
--------------------------------------------------------------------------------------------------- */
.m_br[class*=_before]::before,
.m_br::after {
  content: "\a";
  white-space: pre;
}

.m_br[class*=_before]::after {
  content: none;
}

@media (min-width: 768px) {
  .m_pcHide {
    display: none !important;
  }
  .m_pcbr[class*=_before]::before,
  .m_pcbr::after {
    content: "\a";
    white-space: pre;
  }
  .m_pcbr[class*=_before]::after {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .m_spHide {
    display: none !important;
  }
  .m_spbr[class*=_before]::before,
  .m_spbr::after {
    content: "\a";
    white-space: pre;
  }
  .m_spbr[class*=_before]::after {
    content: none;
  }
}
.m_blankIco[target=_blank]::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  vertical-align: middle;
  display: inline-block;
  margin-left: 5px;
}

.m_pdfIco::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e003";
  vertical-align: middle;
  display: inline-block;
  margin-left: 5px;
}

/* modifier module
--------------------------------------------------------------------------------------------------- */
/* text align */
[class*=_alignLeft] {
  text-align: left !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignLeft] {
    text-align: left !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignLeft] {
    text-align: left !important;
  }
}
[class*=_alignCenter] {
  text-align: center !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignCenter] {
    text-align: center !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignCenter] {
    text-align: center !important;
  }
}
[class*=_alignRight] {
  text-align: right !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignRight] {
    text-align: right !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignRight] {
    text-align: right !important;
  }
}
[class*=_alignTop] {
  vertical-align: top !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignTop] {
    vertical-align: top !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignTop] {
    vertical-align: top !important;
  }
}
[class*=_alignMiddle] {
  vertical-align: middle !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignMiddle] {
    vertical-align: middle !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignMiddle] {
    vertical-align: middle !important;
  }
}
[class*=_alignBottom] {
  vertical-align: bottom !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignBottom] {
    vertical-align: bottom !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignBottom] {
    vertical-align: bottom !important;
  }
}
/* font style */
[class*=_fontBold] {
  font-weight: 700;
}

[class*=_fontItalic] {
  font-style: italic;
}

[class*=_fontNormal] {
  font-weight: 500 !important;
  font-style: normal !important;
}

/* fontColor */
[class*=_colorType01] {
  color: #000000 !important;
}

[class*=_colorType02] {
  color: #1e2d58 !important;
}

[class*=_colorType03] {
  color: #004ba5 !important;
}

[class*=_colorType04] {
  color: #f4d520 !important;
}

[class*=_colorType05] {
  color: #505050 !important;
}

[class*=_colorType06] {
  color: #004ba5 !important;
}

[class*=_colorType07] {
  color: #e5e5e5 !important;
}

[class*=_colorType08] {
  color: #f6f6f6 !important;
}

[class*=_colorType09] {
  color: #949494 !important;
}

/* block width */
/* ※※ module
--------------------------------------------------------------------------------------------------- */
/*====================================================================================================

    libs

====================================================================================================*/
/* colorbox
--------------------------------------------------------------------------------------------------- */
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
:root {
  --cbox-overlay: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAAAAAAeW/F+AAAAOklEQVR4Ae3QIQrAUADD0Lj2AIV//5uO+RE59asKz4U177rz9VAdqkU1qAbVoBpUg2pR3V/VbrVb7QHULigVcx3ZmQAAAABJRU5ErkJggg==);
  --cbox-controls: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAAAyCAMAAADLEaG/AAAAxlBMVEUAAAD///8AAAAAAAAAAAAAAAAAAAAAAABmZmbMzMy1tbXe3t7i4+PMzMzv7+/m5uYqTIX///9SUlKlpaby9PbW1tZqgaiEhIRed6FZWVm9vb3ExcVmZmaZmZno6/Ctra2Qob739/fX3efk6O95j7JEYpR4eHiKioqzvtJsg6s2VYvGzt3g5ey1tbV0iq6vu9Grt86hsMhie6TN1OFycnKHmrpac5+ZqMN9kbOClbZOaZgyUolRbZuKnLtWcJ06WY28xteGmbhVJeX1AAAAC3RSTlOIADNVdwARZpndzGjEPW4AAAPLSURBVHhe7ZqHjts4EIbdsm1Y1eXay/b0Xu7e/6VCaqlQEkVjJSc07pCBAQH6MIsP1GJM/XSnXPyPVDevXn/QOVCDfu9FXrrbbGgvvCCLBsI9bWt37h0tTEMsK6StgBY+O+88q87PjhImwghRSpGQIBUAlBJKQQNbR+Y76DyzBmdHCAMOp4F87ItgGmIoAiAKECgCVOpAGbD42o1bCwNGevUIwlAAwS8QaGB0ICV83mlQ522FidLSYuQXWBTAQgFbhxgPnUbVaymMQ1K6QUKsAFQAYHuHFB40Ex60E6aYigsaDhHno+FI3cnAVAmFaj2nOaAKQPFviAVuWL1WwmG2XMEkngSjOA6zJx5qIGs4QZzXgJnPuQbdflPhfith9Y+K4vh+F88kWADWgALALN6BATjx4wmIykF30FR4cIwwF8srFjkDRa9hLGubDguASoB2T2Cbg26ncbUUVkNgt01HvCTMlfDb1PO8+zKg0nc79jz3wmq6+kIqJUpYg9k49WRNqgCPxwKcRHiRXcQapt5W/atqgH3f33rp0ADC2BsLeJ8DU/jikhfq8uL3CIfZ1CdSduR5MzUMcpCVn4obJoC3Wz0laoSveKWuDOH2c3jk+1TOKb84h5HyGam5iypzmPilOWzztRu3/KbDpLp1swL7N50hfMFr6uJ3CBMMpZ0BSE8FimJEA7PDFL6sE748UlhvIota0A507ati8zpiP0xJtrsltLIfxkgBhDHYOxwLc4KFDlAAcSUmAA3sHe2F3b/TORBu/3JsdrgUPr7+t8J/hQlgWUCsecnhDvdjLQRKKYSH8hJrh3NhWopFqDVhsXY4FqalWAQwtSYs1g6HwmYsAva8xATuNz/2IMUO3G8vzSDl5Xx+y4MP8/k0v5NfJLyTlzrgegOvY5G7KHqYvoyiV8W8JH/u84dlXZAS/Bs5f0XSucQ+ij6KT1DNS273+70A/5hByp24vVwu37h+Cc2f7zyKotcrI5eYR7Le/1jnIO+4fZDg9YadKkiZRslmzU3hTJcxdl0Gb5QuY6cKUtY3wmppBCmfPm++MFFfV2UQfPu+uWGyThSkvGJsIz5BNS95lySJELs2AF8L2USUyzBQxyJLxm5W14yt64KUhL3j3ASPjLmOW/VUXSfJIw/Eeq1qxu31Y/0cXt44CLSbfNNhBQJbkLI6xZEBp0YsQq15ibXD5aEMh6JYcCgvsXY4O/bSsciTQEDDA3mJtcPlwaJ6xjgERBGEGFNrXmLtcHp0qwWyen6QglQHcnw4rosQYs1LrB0Ofn7wn/iBx0+cH2kdOV60OgAAAABJRU5ErkJggg==);
  --cbox-border: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAQAAAA38nkBAAAAE0lEQVR4AWNgaCAW/f9PISLeLgDrojnVPQEingAAAABJRU5ErkJggg==);
  --cbox-loading-background: url(data:image/gif;base64,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);
  --cbox-loading: url(data:image/gif;base64,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);
}

#colorbox, #cboxOverlay, #cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: rgb(0 0 0/80%);
}

#colorbox {
  outline: 0;
}

/* #cboxTopLeft{width:21px; height:21px; background:var(--cbox-controls) no-repeat -101px 0;}
#cboxTopRight{width:21px; height:21px; background:var(--cbox-controls) no-repeat -130px 0;}
#cboxBottomLeft{width:21px; height:21px; background:var(--cbox-controls) no-repeat -101px -29px;}
#cboxBottomRight{width:21px; height:21px; background:var(--cbox-controls) no-repeat -130px -29px;}
#cboxMiddleLeft{width:21px; background:var(--cbox-controls) left top repeat-y;}
#cboxMiddleRight{width:21px; background:var(--cbox-controls) right top repeat-y;}
#cboxTopCenter{height:21px; background:var(--cbox-border) 0 0 repeat-x;}
#cboxBottomCenter{height:21px; background:var(--cbox-border) 0 -29px repeat-x;} */
#cboxContent {
  background: #fff;
  overflow: hidden;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

/* #cboxLoadedContent{margin-bottom:28px;} */
#cboxTitle {
  position: absolute;
  bottom: 4px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #949494;
}

#cboxCurrent {
  position: absolute;
  bottom: 4px;
  left: 58px;
  color: #949494;
}

#cboxLoadingOverlay {
  background: var(--cbox-loading-background) no-repeat center center;
}

#cboxLoadingGraphic {
  background: var(--cbox-loading) no-repeat center center;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 4px;
  right: 30px;
  color: #0092ef;
}

#cboxPrevious {
  position: absolute;
  bottom: 0;
  left: 0;
  background: var(--cbox-controls) no-repeat -75px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxPrevious:hover {
  background-position: -75px -25px;
}

#cboxNext {
  position: absolute;
  bottom: 0;
  left: 27px;
  background: var(--cbox-controls) no-repeat -50px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxNext:hover {
  background-position: -50px -25px;
}

#cboxClose {
  position: absolute;
  bottom: 0;
  right: 0;
  background: var(--cbox-controls) no-repeat -25px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxClose:hover {
  background-position: -25px -25px;
}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
  filter: progid:DXImageTransform.icrosoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

#colorbox, #cboxWrapper, #cboxContent {
  overflow: unset;
}

#cboxClose {
  background: none;
}
#cboxClose::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: unset;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00f";
  vertical-align: middle;
  color: #ffffff;
  line-height: 1;
  text-indent: 0;
}
@media (min-width: 768px) {
  #cboxClose {
    --size: 40px;
    top: -60px;
    width: var(--size);
    height: var(--size);
  }
  #cboxClose::after {
    font-size: var(--size);
  }
}
@media screen and (max-width: 767px) {
  #cboxClose {
    --size: 20px;
    top: -40px;
    width: var(--size);
    height: var(--size);
  }
  #cboxClose::after {
    font-size: var(--size);
  }
}

/* slick
--------------------------------------------------------------------------------------------------- */
/* modal
--------------------------------------------------------------------------------------------------- */
/*====================================================================================================

    unique

====================================================================================================*/
/* home
--------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
  #document.home .l_gheader .logo .siteName {
    position: unset !important;
    width: unset !important;
    height: unset !important;
    margin: unset !important;
    white-space: unset !important;
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document.home .l_gheader .logo .siteName > span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
  #document.home .l_gheader .logo .siteName.is_anim {
    opacity: 0;
  }
}
#document.home .l_mainContents {
  padding-top: 0;
}
#document.home .stickyContent {
  position: relative;
  z-index: 10;
  width: 100%;
  min-height: 100vh;
  backface-visibility: hidden;
}
#document.home .stickyContent .m_pageTitle {
  position: absolute;
  left: 20px;
  z-index: 1000;
}
#document.home .stickyContent .m_pageTitle.is_fixed {
  position: fixed;
}
#document.home .stickyContent .m_tab .tabNav {
  position: relative;
  margin-block: 0;
  top: 0;
}
#document.home .stickyContent .m_tab .tabNav.is_fixed {
  position: fixed;
  margin-top: 0;
  width: 100%;
}
@media screen and (max-width: 1265px) {
  #document.home .stickyContent .m_tab .tabNav.is_fixed {
    left: 20px;
    right: 146px;
    width: unset;
  }
}
@media (min-width: 768px) {
  #document.home .stickyContent {
    padding: 110px 146px 220px 20px;
  }
  #document.home .stickyContent .m_pageTitle .is_small ~ .m_tab .tabNav.is_fixed {
    top: 96px;
  }
  #document.home .stickyContent .m_tab {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  #document.home .stickyContent {
    padding: 33px 65px 150px 20px;
  }
  #document.home .stickyContent .m_pageTitle {
    margin-left: -20px;
  }
  #document.home .stickyContent .m_tab {
    margin-top: 20px;
  }
  #document.home .stickyContent .m_tab .tabNav {
    top: 0;
  }
  #document.home .stickyContent .m_tab .tabNav.is_fixed {
    right: 65px;
    left: 20px;
    width: unset;
  }
}
#document.home .a_mainvisual {
  overflow: hidden;
  position: sticky;
  top: 0;
  height: 100vh;
  transform: translateZ(0.01px);
}
#document.home .a_mainvisual .image,
#document.home .a_mainvisual .obj,
#document.home .a_mainvisual .obj02 {
  position: absolute;
}
#document.home .a_mainvisual .image img,
#document.home .a_mainvisual .obj img,
#document.home .a_mainvisual .obj02 img {
  display: block;
}
#document.home .a_mainvisual .image img {
  max-width: 100%;
  max-height: 100%;
}
#document.home .a_mainvisual .headBox {
  position: relative;
  display: flex;
  flex-direction: column;
  z-index: 10;
}
#document.home .a_mainvisual .headBox .title .motto {
  overflow: hidden;
  position: absolute;
  border-radius: 50%;
  animation: bounce 2.2s infinite;
  will-change: transform;
  z-index: 10;
}
#document.home .a_mainvisual .image {
  display: grid;
  align-items: end;
  left: 50%;
  margin: 0;
  z-index: 9;
}
#document.home .a_mainvisual .banner {
  position: absolute;
  z-index: 10;
  margin: 0;
}
#document.home .a_mainvisual .banner img {
  max-width: 100%;
  height: auto;
}
#document.home .a_mainvisual:has(~ .sectionWrap:not(:nth-of-type(1)).is_active) {
  opacity: 0;
}
@media (min-width: 768px) {
  #document.home .a_mainvisual {
    padding: 17vh 0 0;
    background: url(/images/home/home_bg_mainvisual.webp) no-repeat calc(100% - 115px) 30px/507px 736px, linear-gradient(90deg, #ffd905 0, #f98d00 100%);
  }
  #document.home .a_mainvisual .title {
    margin: 0 auto 0 10vw;
    width: 40vw;
  }
  #document.home .a_mainvisual .title picture {
    height: 100%;
  }
  #document.home .a_mainvisual .title .motto {
    top: -70px;
    left: 50px;
    box-shadow: 18px 18px 36px rgba(35, 24, 21, 0.2);
  }
  #document.home .a_mainvisual .image {
    top: 20px;
    bottom: -17px;
    right: 134px;
  }
  #document.home .a_mainvisual .image img {
    margin-inline: auto;
  }
  #document.home .a_mainvisual .obj {
    bottom: 1px;
    left: 14px;
  }
  #document.home .a_mainvisual .obj02 {
    top: 30px;
    left: calc(50% - 44px);
  }
  #document.home .a_mainvisual .banner {
    left: 20px;
    bottom: 60px;
  }
  #document.home .a_mainvisual .banner img {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
    max-width: 350px;
  }
}
@media screen and (max-width: 1350px) {
  #document.home .a_mainvisual .banner {
    bottom: min(130px, 60px + 1350px - 100vw);
  }
}
@media (any-hover: hover) {
  #document.home .a_mainvisual .banner img:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_mainvisual {
    padding-block: 32vh 95px;
    background: url(/images/home/home_bg_mainvisual_@2x.webp) no-repeat 0 110px/485px 551px, linear-gradient(90deg, #ffd905 0, #f98d00 100%);
  }
  #document.home .a_mainvisual .obj,
  #document.home .a_mainvisual .obj02 {
    display: none;
  }
  #document.home .a_mainvisual .title {
    margin: 0 -3px 0 8px;
    height: 100%;
  }
  #document.home .a_mainvisual .title picture {
    height: 100%;
  }
  #document.home .a_mainvisual .title > img {
    margin: 0 auto;
    width: min(350px, 70vw);
    transform: translateX(-34px);
  }
  #document.home .a_mainvisual .title .motto {
    top: -50px;
    left: 10px;
  }
  #document.home .a_mainvisual .title .motto img {
    width: 25.641025641vw;
    height: auto;
    box-shadow: 10px 10px 18px rgba(35, 24, 21, 0.2);
  }
  #document.home .a_mainvisual .image {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    top: 100px;
    bottom: 180px;
    width: 371px;
    transform: translateX(-195px);
  }
  #document.home .a_mainvisual .image img {
    max-height: 100%;
  }
  #document.home .a_mainvisual .banner {
    left: 26px;
    right: 70px;
    top: 66vh;
  }
  #document.home .a_mainvisual .banner img {
    width: 100%;
    max-width: 294px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #document.home .a_mainvisual .banner {
    animation: none;
  }
}
#document.home .a_candidate {
  background: var(--color-bg-candidate) no-repeat 0 0/100% 100%;
}
#document.home .a_candidate .m_pageTitle {
  background: var(--color-bg-candidate) no-repeat 0 0/100% 100%;
}
#document.home .a_candidate .m_textHeading {
  color: var(--color-blue);
}
#document.home .a_candidate .m_tab .tabNav {
  max-width: var(--max-content-width);
  background: var(--color-bg-candidate) no-repeat 0 0/100% 100%;
  transition: unset;
}
#document.home .a_candidate .m_tab .tabContents {
  z-index: 0;
}
#document.home .a_candidate .m_tab .tabContent {
  max-width: var(--max-content-width);
}
#document.home .a_candidate .m_tab .tabContent#candidate-content01 {
  position: relative;
  max-width: 1142px;
}
@media (min-width: 768px) {
  #document.home .a_candidate .m_tab .tabContents {
    margin-block-start: -78px;
  }
  #document.home .a_candidate .m_tab .tabContent#candidate-content01 .obj {
    position: absolute;
    right: -143px;
    bottom: -102px;
  }
  #document.home .a_candidate .m_tab .tabContent#candidate-content02 {
    padding-block-start: 118px;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_candidate .m_tab .tabNav {
    top: 0;
  }
  #document.home .a_candidate .m_tab .tabContents {
    margin-block-start: -78px;
  }
  #document.home .a_candidate .m_tab .tabContent#candidate-content01 .obj {
    display: none;
  }
}
#document.home .a_candidate .mapContainer .mapInner {
  position: relative;
  background: url(/images/home/home_bg_map.webp) no-repeat 100% 0/1170px 723px;
  width: 1195px;
  height: 820px;
}
@media screen and (max-width: 767px) {
  #document.home .a_candidate .mapContainer {
    margin-inline: -20px -10px;
    padding-left: 20px;
  }
}
#document.home .a_candidate .legend {
  position: absolute;
  top: 113px;
  left: 3px;
  margin: 0;
  width: 295px;
  font-weight: 700;
  line-height: 1;
}
#document.home .a_candidate .legend .label {
  font-size: 1.375rem;
}
#document.home .a_candidate .legend .body .inner {
  display: flex;
  justify-content: end;
  align-items: baseline;
}
#document.home .a_candidate .legend .note {
  margin-block-start: 3px;
  width: 100%;
  font-size: 0.6875rem;
  font-weight: 500;
  text-align: right;
}
#document.home .a_candidate .legend .count {
  font-size: 3.125rem;
  font-family: Roboto, sans-serif;
}
#document.home .a_candidate .legend .unit {
  font-size: 1.125rem;
  transform: translateY(-3px);
}
#document.home .a_candidate .legend .text01 {
  font-size: 0.6875rem;
  line-height: 1.2;
  align-self: center;
  margin-inline-end: 5px;
}
#document.home .a_candidate .legend .text02 {
  font-size: 0.875rem;
  align-self: center;
  margin-inline-end: 5px;
}
#document.home .a_candidate .legend .candidates {
  padding-block-end: 25px;
}
#document.home .a_candidate .legend .candidates .unit {
  font-size: 1.375rem;
}
#document.home .a_candidate .legend .goal {
  padding-block: 15px;
}
#document.home .a_candidate .legend > li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid currentColor;
}
#document.home .a_candidate .update {
  margin: 10px 0 0;
  font-size: 0.875rem;
  text-align: center;
  letter-spacing: -3%;
}
#document.home .a_candidate .prefList {
  margin: 0;
}
#document.home .a_candidate .prefList .label {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px 6px 0 0;
  padding-block: 4px;
  color: #ffffff;
  font-size: 0.875rem;
}
#document.home .a_candidate .prefList .local {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 5px 10px;
  border-radius: 0 0 6px 6px;
  padding: 12px 10px;
  background: #ffffff;
  font-size: 1rem;
  line-height: 1.2;
}
#document.home .a_candidate .prefList .local > li {
  flex-shrink: 0;
}
#document.home .a_candidate .prefList .local > li button {
  color: var(--color-blue);
}
#document.home .a_candidate .prefList .local > li:not(.noBorder):nth-of-type(n+2) {
  border-left: 1px solid #d9d9d9;
  padding-left: 10px;
}
#document.home .a_candidate .prefList > li {
  position: absolute;
  border: 1px solid #ffffff;
  border-radius: 6px;
  z-index: 10;
}
#document.home .a_candidate .prefList > li::before {
  position: absolute;
  content: "";
  display: block;
  border: solid #ffffff;
  border-color: transparent transparent transparent #ffffff;
  border-width: 8.5px 0 8.5px 23px;
  width: 0;
  line-height: 1;
}
#document.home .a_candidate .prefList > li.hokkaido {
  top: 113px;
  left: 634px;
  width: 116px;
}
#document.home .a_candidate .prefList > li.hokkaido::before {
  top: 32px;
  right: -23px;
}
#document.home .a_candidate .prefList > li.hokkaido .label {
  background: #9ad4ff;
}
#document.home .a_candidate .prefList > li.tohoku {
  top: 256px;
  left: 859px;
  width: 168px;
}
#document.home .a_candidate .prefList > li.tohoku::before {
  top: 46px;
  left: -23px;
  transform: scale(-1, 1);
}
#document.home .a_candidate .prefList > li.tohoku .label {
  background: #73eaee;
}
#document.home .a_candidate .prefList > li.kitakanto {
  top: 399px;
  left: 800px;
  width: 221px;
}
#document.home .a_candidate .prefList > li.kitakanto::before {
  top: 72px;
  left: -89px;
  transform: scale(-1, 1) rotate(22deg);
  border-left-width: 94px;
}
#document.home .a_candidate .prefList > li.kitakanto .label {
  background: #abd6d0;
}
#document.home .a_candidate .prefList > li.tokyo {
  top: 496px;
  left: 769px;
  width: 110px;
}
#document.home .a_candidate .prefList > li.tokyo::before {
  top: 31px;
  left: -92px;
  transform: scale(-1, 1);
  border-left-width: 92px;
}
#document.home .a_candidate .prefList > li.tokyo .label {
  background: #f8d2cf;
}
#document.home .a_candidate .prefList > li.minamikanto {
  top: 592px;
  left: 627px;
  width: 131px;
}
#document.home .a_candidate .prefList > li.minamikanto::before {
  top: -21px;
  left: 52px;
  transform: rotate(-90deg);
}
#document.home .a_candidate .prefList > li.minamikanto .label {
  background: #b6e3ff;
}
#document.home .a_candidate .prefList > li.hokushinetsu {
  top: 306px;
  left: 464px;
  width: 168px;
}
#document.home .a_candidate .prefList > li.hokushinetsu::before {
  bottom: -20px;
  left: 73px;
  transform: rotate(90deg);
}
#document.home .a_candidate .prefList > li.hokushinetsu .label {
  background: #d5c7e8;
}
#document.home .a_candidate .prefList > li.hokushinetsu .local li:nth-of-type(1) {
  padding-inline-start: 10px;
}
#document.home .a_candidate .prefList > li.hokushinetsu .local li:nth-of-type(2) {
  padding-inline-end: 10px;
}
#document.home .a_candidate .prefList > li.tokai {
  top: 593px;
  left: 499px;
  width: 115px;
}
#document.home .a_candidate .prefList > li.tokai::before {
  top: -20px;
  left: 44px;
  transform: rotate(-90deg);
}
#document.home .a_candidate .prefList > li.tokai .label {
  background: #bcdea6;
}
#document.home .a_candidate .prefList > li.kinki {
  top: 622px;
  left: 308px;
  width: 184px;
}
#document.home .a_candidate .prefList > li.kinki::before {
  top: -20px;
  left: 79px;
  transform: rotate(-90deg);
}
#document.home .a_candidate .prefList > li.kinki .label {
  background: #ebcba1;
}
#document.home .a_candidate .prefList > li.chugoku {
  top: 387px;
  left: 175px;
  width: 168px;
}
#document.home .a_candidate .prefList > li.chugoku::before {
  bottom: -20px;
  left: 72px;
  transform: rotate(90deg);
}
#document.home .a_candidate .prefList > li.chugoku .label {
  background: #ead9a5;
}
#document.home .a_candidate .prefList > li.chugoku .local li:nth-of-type(1) {
  padding-inline-start: 10px;
}
#document.home .a_candidate .prefList > li.chugoku .local li:nth-of-type(2) {
  padding-inline-end: 10px;
}
#document.home .a_candidate .prefList > li.shikoku {
  top: 633px;
  left: 186px;
  width: 115px;
}
#document.home .a_candidate .prefList > li.shikoku::before {
  top: -20px;
  left: 45px;
  transform: rotate(-90deg);
}
#document.home .a_candidate .prefList > li.shikoku .label {
  background: #ffc2fd;
}
#document.home .a_candidate .prefList > li.kyushuokinawa {
  top: 655px;
  left: 11px;
  width: 168px;
}
#document.home .a_candidate .prefList > li.kyushuokinawa::before {
  top: -20px;
  left: 71px;
  transform: rotate(-90deg);
}
#document.home .a_candidate .prefList > li.kyushuokinawa .label {
  background: #ffc1cd;
}
#document.home .a_candidate .m_dialog {
  background: #fff2ca;
  text-align: left;
}
#document.home .a_candidate .m_dialog .m_textHeading {
  color: var(--color-blue);
}
#document.home .a_candidate .m_dialog .m_textHeading:first-child {
  margin-block-start: 0;
}
@media (min-width: 768px) {
  #document.home .a_candidate .mapContainer .mapScroll {
    height: 794px;
  }
  #document.home .a_candidate .mapInner {
    transform-origin: top left;
  }
  #document.home .a_candidate .banner {
    margin: 40px auto 0;
    width: var(--max-content-width);
  }
  #document.home .a_candidate .banner a {
    display: block;
    margin-inline: auto;
    width: -moz-fit-content;
    width: fit-content;
  }
  #document.home .a_candidate .m_dialog {
    width: 976px;
  }
  #document.home .a_candidate .m_dialog .inner {
    padding: 40px;
  }
  #document.home .a_candidate .m_dialog .candidateList + .m_textHeading {
    margin-block-start: 50px;
    padding-block-start: 50px;
  }
}
@media (any-hover: hover) {
  #document.home .a_candidate .banner a {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document.home .a_candidate .banner a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_candidate {
    --zoom: 0.8;
  }
  #document.home .a_candidate .mapContainer {
    overflow: auto;
  }
  #document.home .a_candidate .mapScroll {
    overflow: hidden;
    width: calc(1212px * var(--zoom));
    height: calc(820px * var(--zoom));
  }
  #document.home .a_candidate .mapInner {
    transform: scale(var(--zoom));
    transform-origin: top left;
  }
  #document.home .a_candidate .banner {
    margin: 30px auto 0;
  }
  #document.home .a_candidate .m_dialog {
    width: 89.7435897436vw;
  }
  #document.home .a_candidate .m_dialog .inner {
    padding: 30px 20px;
  }
  #document.home .a_candidate .m_dialog .candidateList + .m_textHeading {
    margin-block-start: 30px;
    padding-block-start: 30px;
  }
}
#document.home .a_schedule {
  background: var(--color-bg-schedule) no-repeat 0 0/100% 100%;
}
#document.home .a_schedule .m_pageTitle {
  background: var(--color-bg-schedule) no-repeat 0 0/100% 100%;
}
#document.home .a_schedule .m_tab {
  position: relative;
}
#document.home .a_schedule .m_tab .tabNav {
  max-width: var(--max-content-width);
  clip-path: inset(0);
  background-color: transparent;
  transition: unset;
}
#document.home .a_schedule .m_tab .tabNav::before {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: var(--color-bg-schedule) no-repeat 0 0/100% 100%;
  z-index: -1;
}
@media (min-width: 768px) {
  #document.home .a_schedule .obj {
    position: absolute;
    left: -170px;
    top: 348px;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_schedule .obj {
    display: none;
  }
}
#document.home .a_policies {
  background: var(--color-bg-policies) no-repeat 0 0/100% 100%;
  padding-bottom: 0;
}
#document.home .a_policies .m_pageTitle {
  background: var(--color-bg-policies) no-repeat 0 0/100% 100%;
}
#document.home .a_policies .mvarea {
  overflow: hidden;
}
@media (min-width: 768px) {
  #document.home .a_policies .mvarea {
    margin-inline: -20px -146px;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_policies {
    padding-bottom: 300px;
  }
  #document.home .a_policies .mvarea {
    margin-inline: -20px -65px;
  }
}
#document.home .a_policies .lnavBottom {
  position: absolute;
  left: 20px;
  margin: 0;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 10;
}
#document.home .a_policies .lnavBottom .navList {
  margin: 0;
  display: flex;
  line-height: 1.3;
}
#document.home .a_policies .lnavBottom .navList a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: var(--color-blue);
  color: #ffffff;
  border-radius: 4px;
  text-align: center;
  font-weight: 700;
  text-decoration: none;
}
#document.home .a_policies .lnavBottom .navList a::before {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  line-height: 1;
}
#document.home .a_policies .lnavBottom .navList a[href="/policies/search/"]::before {
  content: "\e011";
}
#document.home .a_policies .lnavBottom .navList a[href="/policies/specifics/"]::before {
  content: "\e012";
}
#document.home .a_policies .lnavBottom .navList a[href="/file/DPFP-PolicyCollection2026.pdf"]::before {
  content: "\e013";
}
@media (min-width: 768px) {
  #document.home .a_policies .lnavBottom {
    top: calc(100vh - 160px);
  }
  #document.home .a_policies .lnavBottom .navList {
    gap: 15px;
  }
  #document.home .a_policies .lnavBottom .navList a {
    width: 96px;
    height: 96px;
    font-size: 0.75rem;
    gap: 4px;
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document.home .a_policies .lnavBottom .navList a[href="/policies/search/"]::before {
    font-size: 1.75rem;
  }
  #document.home .a_policies .lnavBottom .navList a[href="/policies/specifics/"]::before {
    font-size: 2rem;
  }
  #document.home .a_policies .lnavBottom .navList a[href="/file/DPFP-PolicyCollection2026.pdf"]::before {
    font-size: 1.625rem;
  }
  #document.home .a_policies .lnavBottom .navList a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_policies .lnavBottom {
    top: calc(100dvh - 190px);
  }
  #document.home .a_policies .lnavBottom .navList {
    gap: 10px;
  }
  #document.home .a_policies .lnavBottom .navList a {
    --size: 80px;
    width: var(--size);
    height: var(--size);
    font-size: 0.625rem;
    gap: 4px;
  }
  #document.home .a_policies .lnavBottom .navList a[href="/policies/search/"]::before {
    font-size: 23px;
  }
  #document.home .a_policies .lnavBottom .navList a[href="/policies/specifics/"]::before {
    font-size: 27px;
  }
  #document.home .a_policies .lnavBottom .navList a[href="/file/DPFP-PolicyCollection2026.pdf"]::before {
    font-size: 19px;
  }
}
#document.home .sectionWrap.is_view .a_policies .lnavBottom {
  position: fixed;
  top: auto;
}
@media (min-width: 768px) {
  #document.home .sectionWrap.is_view .a_policies .lnavBottom {
    bottom: 70px;
  }
}
@media screen and (max-width: 767px) {
  #document.home .sectionWrap.is_view .a_policies .lnavBottom {
    bottom: 120px;
  }
}
#document.home .a_support {
  background: var(--color-bg-support) no-repeat 0 0/100% 100%;
}
#document.home .a_support .m_pageTitle {
  background: var(--color-bg-support) no-repeat 0 0/100% 100%;
}
#document.home .a_support .m_textHeading {
  color: var(--color-blue);
}
@media (min-width: 768px) {
  #document.home .a_support .section {
    margin: 0 auto;
    max-width: var(--max-content-width);
  }
}
#document.home .a_support .message {
  font-weight: 700;
}
@media (min-width: 768px) {
  #document.home .a_support .message {
    margin: 27px 0 0;
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_support .message {
    margin: 20px 0 0;
  }
}
@media (min-width: 768px) {
  #document.home .a_support .banner {
    margin-block: 30px;
  }
  #document.home .a_support .banner img {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
}
@media (any-hover: hover) {
  #document.home .a_support .banner img:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_support .banner {
    margin-block: 18px;
  }
}
#document.home .a_support .m_summaryList .image,
#document.home .a_support .m_summaryList .m_button {
  margin: 20px 0 0;
}
#document.home .a_support .m_summaryList .image img {
  margin-inline: auto;
  height: auto;
}
#document.home .a_support .m_summaryList .social {
  display: flex;
  justify-content: center;
  margin: 0 auto 20px;
  width: -moz-fit-content;
  width: fit-content;
}
#document.home .a_support .m_summaryList .supported {
  display: flex;
  text-align: center;
  line-height: 1;
}
#document.home .a_support .m_summaryList .supported .count {
  display: block;
  color: var(--color-blue);
  font-weight: 700;
}
#document.home .a_support .m_summaryList .supported .count .counter {
  font-family: Roboto, sans-serif;
  font-variation-settings: "wdth" 75;
}
#document.home .a_support .m_summaryList .supported .count .unit {
  font-weight: 900;
}
#document.home .a_support .m_summaryList .m_notesList + .m_button {
  margin-top: 30px;
}
@media (min-width: 768px) {
  #document.home .a_support .m_summaryList .lead {
    margin-right: 280px;
  }
  #document.home .a_support .m_summaryList .obj {
    position: absolute;
  }
  #document.home .a_support .m_summaryList .obj.obj01 {
    top: -20px;
    right: 84px;
  }
  #document.home .a_support .m_summaryList .obj.obj02 {
    top: -26px;
    right: 107px;
  }
  #document.home .a_support .m_summaryList .obj.obj03 {
    top: -26px;
    right: 88px;
  }
  #document.home .a_support .m_summaryList .obj.obj04 {
    top: -37px;
    right: 60px;
  }
  #document.home .a_support .m_summaryList .obj.obj05 {
    top: -25px;
    right: 110px;
  }
  #document.home .a_support .m_summaryList .obj.obj06 {
    top: -45px;
    right: 110px;
  }
  #document.home .a_support .m_summaryList .obj.obj06 + .inner {
    padding-top: 80px;
  }
  #document.home .a_support .m_summaryList .social {
    gap: 20px;
  }
  #document.home .a_support .m_summaryList .supported {
    justify-content: center;
    margin: 30px 0;
  }
  #document.home .a_support .m_summaryList .supported .count {
    font-size: 4.8125rem;
  }
  #document.home .a_support .m_summaryList .supported .unit {
    font-size: 2.375rem;
  }
  #document.home .a_support .m_summaryList .supported > li:first-child {
    padding-right: 30px;
    border-right: 2px solid #ffffff;
  }
  #document.home .a_support .m_summaryList .supported > li:last-child {
    padding-left: 30px;
  }
  #document.home .a_support .m_summaryList .m_button a {
    min-width: 295px;
  }
  #document.home .a_support .m_summaryList ul.m_button a {
    padding-inline: 20px;
  }
  #document.home .a_support .m_summaryList .image:has(a) img {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
}
@media (any-hover: hover) {
  #document.home .a_support .m_summaryList .image:has(a) img:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document.home .a_support .m_summaryList .obj {
    display: none;
    margin: 10px 0 20px;
    text-align: center;
  }
  #document.home .a_support .m_summaryList .obj img {
    margin-inline: auto;
    width: auto;
    height: 160px;
  }
  #document.home .a_support .m_summaryList .social {
    flex-wrap: wrap;
    gap: 15px;
  }
  #document.home .a_support .m_summaryList .social svg {
    --size: 45px;
    width: var(--size);
    height: var(--size);
  }
  #document.home .a_support .m_summaryList .supported {
    flex-direction: column;
    gap: 20px;
    margin: 30px 0;
  }
  #document.home .a_support .m_summaryList .supported .count {
    font-size: 2.25rem;
  }
  #document.home .a_support .m_summaryList .supported .unit {
    font-size: 1.5rem;
  }
  #document.home .a_support .m_summaryList .image,
  #document.home .a_support .m_summaryList .m_button {
    margin: 20px 0 0;
  }
  #document.home .a_support .m_summaryList .image img {
    width: 100%;
  }
}
#document.home .notfound {
  display: grid;
  align-items: center;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
}
#document.home .notfound .heading {
  display: grid;
  grid-template-columns: 1fr;
  justify-content: center;
  gap: 10px;
  margin: 0;
  color: var(--color-blue);
  font-family: Roboto, sans-serif;
  font-size: 3.75rem;
  line-height: 1.2;
  letter-spacing: -3%;
}
#document.home .notfound .heading::before {
  margin-inline: auto;
  content: "";
  background: url(/images/common/404_img_obj.webp) no-repeat 0 0/cover;
}
#document.home .notfound .text {
  margin: 10px 0 0;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
}
#document.home .notfound .image img {
  margin-inline: auto;
}
@media (min-width: 768px) {
  #document.home .notfound {
    padding: 110px 0 0;
    min-height: calc(100vh - 210px);
  }
  #document.home .notfound .heading::before {
    width: 140px;
    height: 276px;
  }
}
@media screen and (max-width: 767px) {
  #document.home .notfound {
    padding: 88px 0 0;
    min-height: calc(100vh - 160px);
  }
  #document.home .notfound .heading::before {
    width: 96px;
    height: 190px;
  }
  #document.home .notfound .image img {
    width: 96px;
    height: 190px;
  }
}

/* candidate
--------------------------------------------------------------------------------------------------- */
#document[class*=candidate-]:not([class*=-quiz]) {
  background: var(--color-bg-candidate) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document[class*=candidate-]:not([class*=-quiz]) .m_pageTitle {
  background: var(--color-bg-candidate) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document[class*=candidate-]:not([class*=-quiz]) .m_tab .tabNav {
  background: var(--color-bg-candidate) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document[class*=candidate-]:not([class*=-quiz]) .m_section .banner a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media (min-width: 768px) {
  #document[class*=candidate-]:not([class*=-quiz]) .m_section .banner {
    margin: 40px auto 0;
    width: var(--max-content-width);
  }
  #document[class*=candidate-]:not([class*=-quiz]) .m_section .banner a {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document[class*=candidate-]:not([class*=-quiz]) .m_section .banner a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=candidate-]:not([class*=-quiz]) .m_section .banner {
    margin: 30px auto 0;
  }
}

#document.candidate-member .memberBox .image {
  background: #ffffff;
}
#document.candidate-member .memberBox .image figure {
  margin: 0;
}
#document.candidate-member .memberBox .image img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#document.candidate-member .memberBox .social {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 40px 0 0;
}
#document.candidate-member .memberBox .social a, #document.candidate-member .memberBox .social svg {
  display: block;
}
#document.candidate-member .memberBox .body {
  background: var(--color-yellow);
  container-type: inline-size;
}
#document.candidate-member .memberBox .copy {
  margin: 0;
  background: #ffde72;
  font-weight: 700;
  line-height: 1.2;
  border-radius: 10px;
}
#document.candidate-member .memberBox .name {
  font-weight: 700;
  line-height: 1.2;
}
#document.candidate-member .memberBox .name .kana {
  display: block;
}
#document.candidate-member .memberBox .profile {
  font-weight: 700;
}
#document.candidate-member .memberBox .desc {
  line-height: 1.8;
  font-weight: 400;
}
#document.candidate-member .memberBox .broadcast {
  margin: 0;
  width: 100%;
  height: 56.25cqw;
}
@media (min-width: 768px) {
  #document.candidate-member .memberBox {
    display: grid;
    grid-template-columns: 6fr 5fr;
    margin: 0 auto;
    max-width: var(--max-content-width);
  }
  #document.candidate-member .memberBox .m_textHeading {
    font-size: 1.5rem;
  }
  #document.candidate-member .memberBox .image {
    padding-bottom: 40px;
  }
  #document.candidate-member .memberBox .social {
    gap: 20px;
  }
  #document.candidate-member .memberBox .m_button {
    margin: 20px 0 0;
  }
  #document.candidate-member .memberBox .m_button button {
    width: 336px;
  }
  #document.candidate-member .memberBox .body {
    padding: 40px;
  }
  #document.candidate-member .memberBox .copy {
    padding: 26px 20px;
    font-size: 2.375rem;
  }
  #document.candidate-member .memberBox .name {
    margin: 30px 0 0;
    font-size: 3.375rem;
  }
  #document.candidate-member .memberBox .name .kana {
    margin: 13px 0 0;
    font-size: 1.125rem;
  }
  #document.candidate-member .memberBox .profile {
    margin: 30px 0 0;
    font-size: 1.125rem;
  }
  #document.candidate-member .memberBox .desc {
    margin: 10px 0 0;
  }
  #document.candidate-member .memberBox .desc em {
    font-size: 1.125rem;
  }
  #document.candidate-member .memberBox .body .m_button {
    margin: 30px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-member .memberBox .m_textHeading {
    font-size: 1.125rem;
  }
  #document.candidate-member .memberBox .image {
    padding-bottom: 40px;
  }
  #document.candidate-member .memberBox .social {
    flex-wrap: wrap;
    gap: 10px;
    margin-inline: 15px;
  }
  #document.candidate-member .memberBox .social svg {
    width: min(10.2564102564vw, 40px);
    height: min(10.2564102564vw, 40px);
  }
  #document.candidate-member .memberBox .m_button {
    margin: 20px 15px 0;
  }
  #document.candidate-member .memberBox .m_button button {
    min-width: auto;
  }
  #document.candidate-member .memberBox .body {
    padding: 20px;
  }
  #document.candidate-member .memberBox .copy {
    padding: 15px;
    font-size: 1.375rem;
  }
  #document.candidate-member .memberBox .name {
    margin: 20px 0 0;
    font-size: 2rem;
  }
  #document.candidate-member .memberBox .name .kana {
    margin: 10px 0 0;
    font-size: 0.75rem;
  }
  #document.candidate-member .memberBox .profile {
    margin: 20px 0 0;
  }
  #document.candidate-member .memberBox .desc {
    margin: 10px 0 0;
    font-size: 0.875rem;
  }
  #document.candidate-member .memberBox .desc em {
    font-size: 1rem;
  }
  #document.candidate-member .memberBox .body .m_button {
    margin: 20px 0 0;
  }
  #document.candidate-member .memberBox .body .m_button a {
    padding: 10px;
  }
}

#document.candidate-quiz .m_section {
  padding-block-end: 0;
  min-height: unset;
}
#document.candidate-quiz .sectionInner {
  overflow: hidden;
  max-width: unset;
}
@media (min-width: 768px) {
  #document.candidate-quiz .sectionInner {
    margin-inline: -20px -146px;
    padding-inline: 20px 146px;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz .sectionInner {
    margin-inline: -20px -65px;
    padding: 18px 65px 120px 20px;
  }
}
#document.candidate-quiz :where(.section) {
  min-height: 100vh;
}
@media (min-width: 768px) {
  #document.candidate-quiz :where(.section):not(.a_startSection) {
    padding-block: 10px 140px;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz :where(.section):not(.a_startSection) {
    padding-block-start: 10px;
  }
}
#document.candidate-quiz .a_startSection .innerBox {
  position: relative;
  display: grid;
  text-align: center;
  color: var(--color-blue);
  z-index: 0;
}
#document.candidate-quiz .a_startSection .innerBox::before {
  position: absolute;
  left: 50%;
  content: "";
  z-index: -1;
  background: no-repeat 0 0/cover;
}
#document.candidate-quiz .a_startSection .innerBox > .heading {
  margin: 0;
}
#document.candidate-quiz .a_startSection .innerBox > .heading > span {
  display: block;
}
#document.candidate-quiz .a_startSection .innerBox .text {
  font-weight: 700;
}
@media (min-width: 768px) {
  #document.candidate-quiz .a_startSection .innerBox {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr min-content min-content min-content 1fr;
    width: -moz-fit-content;
    width: fit-content;
    min-height: calc(100vh - 152px);
    margin-inline: auto;
  }
  #document.candidate-quiz .a_startSection .innerBox::before {
    top: 50%;
    background-image: url(/images/candidate/quiz_bg_section.webp);
    width: 957px;
    height: 577px;
    transform: translate(-50%, -50%) translate(-4px, -50px);
  }
  #document.candidate-quiz .a_startSection .innerBox > .heading {
    grid-row: 2;
    align-self: end;
    font-size: 3.5625rem;
    line-height: 1;
  }
  #document.candidate-quiz .a_startSection .innerBox > .heading > span {
    margin: 18px 0 0;
    font-size: 2.125rem;
  }
  #document.candidate-quiz .a_startSection .innerBox .text {
    grid-row: 3;
    align-self: center;
    margin: 21px 0 0;
    font-size: 1.5rem;
    line-height: 1.3;
  }
  #document.candidate-quiz .a_startSection .innerBox .button {
    align-self: start;
    grid-row: 4;
    margin: 61px 0 0;
  }
  #document.candidate-quiz .a_startSection .innerBox .button button, #document.candidate-quiz .a_startSection .innerBox .button a {
    min-width: 431px;
    font-size: 1.875rem;
    height: 80px;
  }
  #document.candidate-quiz .a_startSection .innerBox .obj {
    position: absolute;
    top: 50%;
    right: -380px;
    transform: translateY(-50%) translateY(-29px);
  }
  #document.candidate-quiz .a_startSection .innerBox .obj02 {
    position: absolute;
    top: 63px;
    left: -147px;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz .a_startSection {
    padding-top: 10px;
  }
  #document.candidate-quiz .a_startSection .innerBox {
    grid-template-columns: 1fr;
    justify-content: center;
  }
  #document.candidate-quiz .a_startSection .innerBox::before {
    top: 83px;
    background-image: url(/images/candidate/quiz_bg_section_@2x.webp);
    width: 684px;
    height: 411px;
    transform: translateX(calc(-50% - 1px));
  }
  #document.candidate-quiz .a_startSection .innerBox > .heading {
    font-size: 2.75rem;
    line-height: 1.15;
  }
  #document.candidate-quiz .a_startSection .innerBox > .heading > span {
    margin: 9px 0 0;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  #document.candidate-quiz .a_startSection .innerBox .text {
    margin: 9px 0 0;
    font-size: 1.125rem;
  }
  #document.candidate-quiz .a_startSection .innerBox .obj {
    order: -1;
    padding-right: 18px;
  }
  #document.candidate-quiz .a_startSection .innerBox .obj img {
    margin-inline: auto;
    width: 96px;
    height: 179px;
  }
  #document.candidate-quiz .a_startSection .innerBox .button {
    margin: 81px 0 0;
  }
  #document.candidate-quiz .a_startSection .innerBox .button button, #document.candidate-quiz .a_startSection .innerBox .button a {
    font-size: 1.375rem;
    height: 56px;
    min-height: auto;
  }
  #document.candidate-quiz .a_startSection .innerBox .obj02 {
    display: none;
  }
}
#document.candidate-quiz .a_questionSection .headingBox,
#document.candidate-quiz .a_answerSection .headingBox {
  position: relative;
  z-index: 0;
}
#document.candidate-quiz .a_questionSection .headingBox::before, #document.candidate-quiz .a_questionSection .headingBox::after,
#document.candidate-quiz .a_answerSection .headingBox::before,
#document.candidate-quiz .a_answerSection .headingBox::after {
  position: absolute;
  content: "";
  background: no-repeat 0 0/cover;
}
#document.candidate-quiz .a_questionSection .headingBox::before,
#document.candidate-quiz .a_answerSection .headingBox::before {
  z-index: -1;
}
#document.candidate-quiz .a_questionSection .headingBox > .heading,
#document.candidate-quiz .a_answerSection .headingBox > .heading {
  color: var(--color-blue);
  margin: 0;
  line-height: 1;
  letter-spacing: -3%;
}
#document.candidate-quiz .a_questionSection .headingBox > .heading > span,
#document.candidate-quiz .a_answerSection .headingBox > .heading > span {
  display: inline-block;
}
#document.candidate-quiz .a_questionSection .headingBox .label,
#document.candidate-quiz .a_answerSection .headingBox .label {
  display: flex;
  align-items: center;
  position: relative;
  border: 5px solid var(--color-blue);
  font-weight: 700;
  background: #ffffff;
  line-height: 1.6;
}
#document.candidate-quiz .a_questionSection .headingBox .label::after,
#document.candidate-quiz .a_answerSection .headingBox .label::after {
  position: absolute;
  content: "";
  background: no-repeat 0 0/cover;
  background-image: url(/images/candidate/quiz_img_obj_03.webp);
}
#document.candidate-quiz .a_questionSection .nav,
#document.candidate-quiz .a_answerSection .nav {
  display: flex;
}
#document.candidate-quiz .a_questionSection .nav .back button,
#document.candidate-quiz .a_answerSection .nav .back button {
  color: var(--color-blue);
  font-weight: 700;
  line-height: 1.2;
}
#document.candidate-quiz .a_questionSection .nav .back button::before,
#document.candidate-quiz .a_answerSection .nav .back button::before {
  margin-right: 8px;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00e";
  font-size: 15px;
  line-height: 15px;
  vertical-align: middle;
}
#document.candidate-quiz .a_questionSection .nav .button,
#document.candidate-quiz .a_answerSection .nav .button {
  margin: 0;
}
@media (min-width: 768px) {
  #document.candidate-quiz .a_questionSection,
  #document.candidate-quiz .a_answerSection {
    max-width: var(--max-content-width);
    margin-inline: auto;
  }
  #document.candidate-quiz .a_questionSection .headingBox::before,
  #document.candidate-quiz .a_answerSection .headingBox::before {
    top: -2px;
    left: 50%;
    background-image: url(/images/candidate/quiz_bg_quesitionHeader.webp);
    width: 1304px;
    height: 230px;
    transform: translateX(-50%) translateX(-23px);
  }
  #document.candidate-quiz .a_questionSection .headingBox > .heading,
  #document.candidate-quiz .a_answerSection .headingBox > .heading {
    font-size: 2.25rem;
    margin-left: -3px;
  }
  #document.candidate-quiz .a_questionSection .headingBox > .heading > span,
  #document.candidate-quiz .a_answerSection .headingBox > .heading > span {
    font-size: 4.375rem;
    transform: translateY(2px);
  }
  #document.candidate-quiz .a_questionSection .headingBox .label,
  #document.candidate-quiz .a_answerSection .headingBox .label {
    margin: -3px 0 0;
    min-height: 177px;
    padding: 30px 36px;
    font-size: 2rem;
  }
  #document.candidate-quiz .a_questionSection .headingBox .label::after,
  #document.candidate-quiz .a_answerSection .headingBox .label::after {
    top: -22px;
    left: -90px;
    width: 91px;
    height: 196px;
  }
  #document.candidate-quiz .a_questionSection .nav,
  #document.candidate-quiz .a_answerSection .nav {
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    margin: 20px 0 0;
  }
  #document.candidate-quiz .a_questionSection .nav .button button,
  #document.candidate-quiz .a_answerSection .nav .button button {
    height: 80px;
    font-size: 1.5625rem;
    min-width: 295px;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz .a_questionSection .headingBox,
  #document.candidate-quiz .a_answerSection .headingBox {
    padding-left: 29px;
  }
  #document.candidate-quiz .a_questionSection .headingBox::before,
  #document.candidate-quiz .a_answerSection .headingBox::before {
    top: -4px;
    left: 50%;
    background-image: url(/images/candidate/quiz_bg_quesitionHeader_@2x.webp);
    width: 390px;
    height: 188px;
    transform: translateX(calc(-50% + 21px));
  }
  #document.candidate-quiz .a_questionSection .headingBox > .heading,
  #document.candidate-quiz .a_answerSection .headingBox > .heading {
    font-size: 1.625rem;
  }
  #document.candidate-quiz .a_questionSection .headingBox > .heading > span,
  #document.candidate-quiz .a_answerSection .headingBox > .heading > span {
    font-size: 3.75rem;
    transform: translateY(2px);
  }
  #document.candidate-quiz .a_questionSection .headingBox .label,
  #document.candidate-quiz .a_answerSection .headingBox .label {
    margin: -3px 0 0;
    min-height: 130px;
    padding: 30px 16px;
  }
  #document.candidate-quiz .a_questionSection .headingBox .label::after,
  #document.candidate-quiz .a_answerSection .headingBox .label::after {
    bottom: -7px;
    left: -90px;
    width: 91px;
    height: 196px;
  }
  #document.candidate-quiz .a_questionSection .nav,
  #document.candidate-quiz .a_answerSection .nav {
    flex-direction: column;
    gap: 30px;
    margin: 30px 0 0;
  }
  #document.candidate-quiz .a_questionSection .nav .button button,
  #document.candidate-quiz .a_answerSection .nav .button button {
    height: 56px;
    min-height: 0;
    font-size: 1.375rem;
  }
  #document.candidate-quiz .a_questionSection .nav .back,
  #document.candidate-quiz .a_answerSection .nav .back {
    text-align: center;
  }
}
#document.candidate-quiz .a_questionSection .questionList {
  display: grid;
  margin: 20px 0 0;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox {
  position: relative;
  display: grid;
  gap: 0 20px;
  border: 3px solid var(--color-border-gray);
  border-radius: 12px;
  padding: 60px 15px 15px;
  font-weight: 700;
  letter-spacing: -3%;
  cursor: pointer;
  transition: background-color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875), border-color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
#document.candidate-quiz .a_questionSection .questionList .radioBox input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .label {
  display: contents;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .label::before, #document.candidate-quiz .a_questionSection .questionList .radioBox .label::after {
  position: absolute;
  content: "";
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .label::before {
  right: 0;
  left: 0;
  margin: auto;
  border: 3px solid var(--color-border-gray);
  border-radius: 50%;
  width: 34px;
  height: 34px;
  background: #ffffff;
  transition: border-color 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .label::after {
  right: 0;
  left: 0;
  margin: auto;
  width: 21px;
  height: 16px;
  background: url(/images/common/mod_ico_check.svg) no-repeat 0 0/cover;
  transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  opacity: 0;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .count {
  align-self: flex-end;
  line-height: 1;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .image {
  margin: 0;
  background: #ffffff;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox .image img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox:has(input[type=radio]:checked) {
  border-color: var(--color-yellow);
  background: var(--color-yellow);
}
#document.candidate-quiz .a_questionSection .questionList .radioBox:has(input[type=radio]:checked) .label::before {
  border-color: #ffffff;
}
#document.candidate-quiz .a_questionSection .questionList .radioBox:has(input[type=radio]:checked) .label::after {
  opacity: 1;
}
@media (min-width: 768px) {
  #document.candidate-quiz .a_questionSection .questionList {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox {
    grid-template-columns: auto 1fr;
    font-size: 1.125rem;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .count {
    font-size: 2rem;
    grid-column: 2;
    grid-row: 1;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .name {
    grid-column: 2;
    grid-row: 2;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .image {
    grid-column: 1;
    grid-row: 1/3;
    width: min(11.125vw, 178px);
    height: min(11.125vw, 178px);
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .label::before {
    top: 16px;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .label::after {
    top: 26px;
  }
  #document.candidate-quiz .a_questionSection .nav {
    margin: 20px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz .a_questionSection .questionList {
    grid-template-columns: 1fr auto auto 1fr;
    gap: 20px;
  }
  #document.candidate-quiz .a_questionSection .questionList > li {
    grid-column: 1/5;
    grid-template-columns: subgrid;
    display: grid;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox {
    grid-column: 1/5;
    grid-template-columns: subgrid;
    padding: 60px 0 15px;
    min-height: 90px;
    font-size: 1.125rem;
    line-height: 1.4;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox::before {
    font-size: 1.9375rem;
    line-height: 1.6;
    width: 30px;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .image {
    grid-column: 2;
    grid-row: 1/3;
    width: 100px;
    height: 100px;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .count {
    grid-column: 3;
    grid-row: 1;
    font-size: 2rem;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .name {
    grid-column: 3;
    grid-row: 2;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .label::before {
    top: 15px;
  }
  #document.candidate-quiz .a_questionSection .questionList .radioBox .label::after {
    top: 25px;
  }
}
#document.candidate-quiz .a_answerSection .answer .result {
  position: relative;
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  line-height: 1.6;
  font-weight: 700;
}
#document.candidate-quiz .a_answerSection .answer .result::before, #document.candidate-quiz .a_answerSection .answer .result::after {
  position: absolute;
  content: "";
  background: no-repeat 0 0/cover;
}
#document.candidate-quiz .a_answerSection .answer .result.correct::before {
  background-image: url(/images/candidate/quiz_bg_result.webp);
}
#document.candidate-quiz .a_answerSection .answer .result.correct::after {
  background-image: url(/images/candidate/quiz_bg_result_02.webp);
}
#document.candidate-quiz .a_answerSection .answer .result.correct + .inner::before {
  background-image: url(/images/candidate/quiz_img_obj_04.webp);
}
#document.candidate-quiz .a_answerSection .answer .result.wrong ~ .inner::before {
  background-image: url(/images/candidate/quiz_img_obj_05.webp);
}
#document.candidate-quiz .a_answerSection .answer .inner {
  position: relative;
  display: grid;
  border-radius: 8px;
  background: var(--color-yellow);
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: -3%;
}
#document.candidate-quiz .a_answerSection .answer .inner::before {
  position: absolute;
  z-index: -1;
  content: "";
  background: no-repeat 0 0/cover;
}
#document.candidate-quiz .a_answerSection .answer .inner .headBox {
  display: contents;
}
#document.candidate-quiz .a_answerSection .answer .inner .headBox > .name {
  margin: 0;
  letter-spacing: 0;
  font-size: 2.375rem;
}
#document.candidate-quiz .a_answerSection .answer .inner .headBox > .name .kana {
  display: block;
  font-size: 0.875rem;
  letter-spacing: -3%;
}
#document.candidate-quiz .a_answerSection .answer .inner .image {
  margin: 0;
  background: #ffffff;
}
#document.candidate-quiz .a_answerSection .answer .inner .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#document.candidate-quiz .a_answerSection .answer .inner .contact {
  margin: 0;
}
#document.candidate-quiz .a_answerSection .answer .inner .contact a, #document.candidate-quiz .a_answerSection .answer .inner .contact button {
  padding: 0 40px;
  min-height: 40px;
  font-size: 0.875rem;
}
@media (min-width: 768px) {
  #document.candidate-quiz .a_answerSection .headingBox::after {
    bottom: -64px;
    left: 50%;
    background-image: url(/images/candidate/quiz_bg_quesitionHeader_02.webp);
    width: 898px;
    height: 52px;
    transform: translateX(-50%) translateX(-57px);
  }
  #document.candidate-quiz .a_answerSection .answer {
    margin-top: 74px;
  }
  #document.candidate-quiz .a_answerSection .answer .result {
    font-size: 4.375rem;
    gap: 20px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.correct::before {
    left: -95px;
    bottom: -5px;
    width: 87px;
    height: 87px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.correct::after {
    right: -95px;
    bottom: 9px;
    width: 100px;
    height: 73px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.correct + .inner::before {
    top: -188px;
    right: 23px;
    width: 142px;
    height: 242px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.wrong ~ .inner::before {
    top: -144px;
    right: 32px;
    width: 139px;
    height: 198px;
  }
  #document.candidate-quiz .a_answerSection .answer .correctAnswer {
    font-size: 1.25rem;
    margin-block: -1.5em 8px;
  }
  #document.candidate-quiz .a_answerSection .answer .inner {
    grid-template-columns: auto 1fr auto;
    gap: 0 30px;
    margin: 10px 0 0;
    padding: 20px;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .headBox .name {
    grid-column: 2;
    grid-row: 2;
    align-self: center;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .headBox .copy {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    margin-block-end: 5px;
    font-size: 1.75rem;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .headBox .copy br {
    display: none;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .image {
    margin: 0;
    grid-column: 1;
    grid-row: 1/4;
    width: 200px;
    height: 200px;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .profile {
    grid-column: 2;
    grid-row: 3;
    margin-block: 5px 0;
    align-self: start;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .profile .birth {
    margin-inline-start: 1em;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .contact {
    grid-column: 3;
    grid-row: 1/4;
    gap: 10px;
    flex-direction: column-reverse;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .contact a, #document.candidate-quiz .a_answerSection .answer .inner .contact button {
    min-width: 222px;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz .a_answerSection .answer {
    position: relative;
    margin-top: 12px;
  }
  #document.candidate-quiz .a_answerSection .answer .result {
    font-size: 2.625rem;
    gap: 13px;
  }
  #document.candidate-quiz .a_answerSection .answer .result svg {
    width: 54px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.correct::before {
    left: -69px;
    bottom: 5px;
    width: 57px;
    height: 57px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.correct::after {
    right: -69px;
    bottom: 15px;
    width: 65px;
    height: 47px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.correct + .inner::before {
    top: -132px;
    left: 50%;
    width: 101px;
    height: 170px;
    transform: translateX(calc(-50% + 6px));
  }
  #document.candidate-quiz .a_answerSection .answer .result.wrong {
    font-size: 2.25rem;
  }
  #document.candidate-quiz .a_answerSection .answer .result.wrong svg {
    width: 38px;
  }
  #document.candidate-quiz .a_answerSection .answer .result.wrong ~ .inner::before {
    top: -132px;
    left: 50%;
    width: 104px;
    height: 148px;
    transform: translateX(calc(-50% - 3px));
  }
  #document.candidate-quiz .a_answerSection .answer .correctAnswer {
    position: absolute;
    left: 0;
    top: 163px;
  }
  #document.candidate-quiz .a_answerSection .answer .inner {
    margin: 127px 0 0;
    padding: 30px;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .headBox {
    grid-template-columns: 1fr;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .headBox .name {
    grid-row: 3;
    margin-block: 5px 0;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .headBox .copy {
    grid-row: 2;
    margin-block: 15px 0;
    font-size: 1.25rem;
    line-height: 1.4;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .image {
    grid-row: 1;
    margin-inline: auto;
    width: 41.0256410256vw;
    height: 41.0256410256vw;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .profile {
    margin-block: 5px 0;
  }
  #document.candidate-quiz .a_answerSection .answer .inner .profile .birth::before {
    white-space: pre;
    content: "\a";
  }
  #document.candidate-quiz .a_answerSection .answer .inner .contact {
    flex-direction: column;
    gap: 20px;
    margin: 15px -15px 0;
  }
}
#document.candidate-quiz .a_resultSection .headingBox {
  position: relative;
  text-align: center;
  line-height: 1;
}
#document.candidate-quiz .a_resultSection .headingBox::before {
  position: absolute;
  content: "";
  background: no-repeat 0 0/cover;
}
#document.candidate-quiz .a_resultSection .headingBox .heading {
  margin: 0;
  letter-spacing: -3%;
  color: var(--color-blue);
}
#document.candidate-quiz .a_resultSection .headingBox .text {
  font-weight: 700;
}
#document.candidate-quiz .a_resultSection .headingBox .text .result {
  color: var(--color-red);
}
#document.candidate-quiz .a_resultSection .message {
  position: relative;
  font-size: 1.125rem;
}
#document.candidate-quiz .a_resultSection .message > *:last-child {
  margin-bottom: 0 !important;
}
#document.candidate-quiz .a_resultSection .message::before, #document.candidate-quiz .a_resultSection .message::after {
  position: absolute;
  content: "";
  background: no-repeat 0 0/cover;
}
#document.candidate-quiz .a_resultSection .message::before {
  background-image: url(/images/candidate/quiz_img_obj_06.webp);
}
#document.candidate-quiz .a_resultSection .message::after {
  background-image: url(/images/candidate/quiz_img_obj_07.webp);
}
@media (min-width: 768px) {
  #document.candidate-quiz .a_resultSection {
    margin-inline: auto;
    padding-top: 52px;
    max-width: 936px;
  }
  #document.candidate-quiz .a_resultSection .headingBox::before {
    top: -48px;
    left: 50%;
    width: 639px;
    height: 125px;
    background-image: url(/images/candidate/quiz_bg_resultHeader.webp);
    transform: translateX(calc(-50% + 12px));
  }
  #document.candidate-quiz .a_resultSection .headingBox .heading {
    font-size: 2.625rem;
  }
  #document.candidate-quiz .a_resultSection .headingBox .text {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin: 14px 0 0;
    gap: 10px;
    font-size: 2.25rem;
  }
  #document.candidate-quiz .a_resultSection .headingBox .text .result {
    margin-inline: 8px;
    font-size: 5.4375rem;
  }
  #document.candidate-quiz .a_resultSection .headingBox .text > span {
    font-size: 2.75rem;
  }
  #document.candidate-quiz .a_resultSection .message {
    margin: 45px 0 0;
    line-height: 2;
    text-align: center;
  }
  #document.candidate-quiz .a_resultSection .message::before {
    top: -240px;
    left: -66px;
    width: 133px;
    height: 241px;
  }
  #document.candidate-quiz .a_resultSection .message::after {
    top: 36px;
    right: -217px;
    width: 232px;
    height: 399px;
  }
  #document.candidate-quiz .a_resultSection .button {
    margin: 40px 0 0;
  }
  #document.candidate-quiz .a_resultSection .button button {
    min-width: 295px;
    height: 80px;
    font-size: 1.5625rem;
  }
}
@media screen and (max-width: 767px) {
  #document.candidate-quiz .a_resultSection {
    padding-top: 60px;
  }
  #document.candidate-quiz .a_resultSection .headingBox::before {
    top: -4px;
    left: 50%;
    width: 305px;
    height: 70px;
    background-image: url(/images/candidate/quiz_bg_resultHeader_@2x.webp);
    transform: translateX(calc(-50% + 2px));
  }
  #document.candidate-quiz .a_resultSection .headingBox .heading {
    font-size: 1.8125rem;
  }
  #document.candidate-quiz .a_resultSection .headingBox .text {
    margin: 19px 0 0;
    font-size: 1.5rem;
    line-height: 1.05;
  }
  #document.candidate-quiz .a_resultSection .headingBox .text .result {
    font-size: 3.75rem;
  }
  #document.candidate-quiz .a_resultSection .headingBox .text > span {
    font-size: 2.625rem;
  }
  #document.candidate-quiz .a_resultSection .message {
    margin: 200px 0 0;
    line-height: 1.8;
  }
  #document.candidate-quiz .a_resultSection .message::before {
    top: -393px;
    left: 31px;
    width: 47px;
    height: 84px;
  }
  #document.candidate-quiz .a_resultSection .message::after {
    top: -181px;
    left: 50%;
    width: 94px;
    height: 161px;
    transform: translateX(calc(-50% - 11px));
  }
  #document.candidate-quiz .a_resultSection .button {
    margin: 20px 0 0;
  }
  #document.candidate-quiz .a_resultSection .button button {
    height: 56px;
    font-size: 1.375rem;
  }
}

/* schedule
--------------------------------------------------------------------------------------------------- */
#document.schedule-list {
  background: var(--color-bg-schedule) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document.schedule-list .m_pageTitle {
  background: var(--color-bg-schedule) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document.schedule-list .m_tab .tabNav {
  background: var(--color-bg-schedule) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}

#document.schedule-detail {
  background: var(--color-bg-schedule) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document.schedule-detail .m_pageTitle {
  background: var(--color-bg-schedule) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document.schedule-detail .scheduleContent {
  border-radius: 4px;
  background-color: #ffffff;
}
@media (min-width: 768px) {
  #document.schedule-detail .scheduleContent {
    padding: 30px;
  }
}
@media screen and (max-width: 767px) {
  #document.schedule-detail .scheduleContent {
    padding: 20px;
  }
}
#document.schedule-detail .scheduleTitle {
  position: relative;
  display: grid;
  gap: 10px;
  letter-spacing: -3%;
  margin: 0;
}
#document.schedule-detail .scheduleTitle .icon {
  position: relative;
  background: url(/images/common/mod_bg_calendar.svg) no-repeat 0 0/cover;
  color: var(--color-blue);
  font-family: Roboto, sans-serif;
  font-weight: 600;
  font-style: normal;
}
#document.schedule-detail .scheduleTitle .icon::before {
  position: absolute;
  border-left: 2px solid currentColor;
  content: "";
  transform: rotate(40deg);
}
#document.schedule-detail .scheduleTitle .icon > span:not([class]) {
  display: none;
}
#document.schedule-detail .scheduleTitle .icon .month,
#document.schedule-detail .scheduleTitle .icon .day {
  position: absolute;
}
#document.schedule-detail .scheduleTitle .icon .day {
  min-width: 1em;
  text-align: center;
}
#document.schedule-detail .scheduleTitle .update {
  display: block;
  font-weight: 600;
  font-family: Roboto, sans-serif;
}
#document.schedule-detail .scheduleTitle .title {
  margin: 0;
  font-weight: 700;
}
#document.schedule-detail .scheduleTitle .title a {
  color: var(--color-text);
}
#document.schedule-detail .scheduleTitle .title a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 10;
}
@media (min-width: 768px) {
  #document.schedule-detail .scheduleTitle {
    grid-template-columns: auto 1fr auto;
    gap: 0 26px;
  }
  #document.schedule-detail .scheduleTitle .icon {
    grid-column: 1;
    grid-row: 1/3;
    margin-top: 7px;
    width: 69px;
    height: 79px;
    align-self: start;
  }
  #document.schedule-detail .scheduleTitle .icon::before {
    top: 43px;
    left: 28px;
    height: 25px;
  }
  #document.schedule-detail .scheduleTitle .icon .month {
    top: 34px;
    left: 15px;
    font-size: 1.0625rem;
  }
  #document.schedule-detail .scheduleTitle .icon .day {
    top: 47px;
    left: 35px;
    font-size: 1.125rem;
  }
  #document.schedule-detail .scheduleTitle .update {
    grid-column: 2;
    grid-row: 1;
    font-size: 1.125rem;
  }
  #document.schedule-detail .scheduleTitle .title {
    grid-column: 2;
    grid-row: 2;
    font-size: 1.25rem;
    line-height: 1.5;
  }
  #document.schedule-detail .scheduleTitle .title a:hover {
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  #document.schedule-detail .scheduleTitle {
    grid-template-columns: auto 1fr;
    gap: 0 10px;
  }
  #document.schedule-detail .scheduleTitle .icon {
    grid-column: 1;
    grid-row: 1;
    width: 40px;
    height: 45px;
    align-self: center;
    font-size: 0.75rem;
  }
  #document.schedule-detail .scheduleTitle .icon::before {
    top: 21px;
    left: 16px;
    height: 19px;
  }
  #document.schedule-detail .scheduleTitle .icon .month {
    top: 18px;
    left: 8px;
  }
  #document.schedule-detail .scheduleTitle .icon .day {
    top: 26px;
    left: 19px;
  }
  #document.schedule-detail .scheduleTitle .update {
    grid-column: 2;
    grid-row: 1;
  }
  #document.schedule-detail .scheduleTitle .title {
    grid-column: 1/3;
    margin: 10px 0 0;
    font-size: 1.125rem;
    line-height: 1.7;
  }
}
#document.schedule-detail .imageList {
  display: flex;
  justify-content: center;
}
@media (min-width: 768px) {
  #document.schedule-detail .imageList {
    margin: 40px 0;
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  #document.schedule-detail .imageList {
    margin: 20px 0;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  #document.schedule-detail .entryBody {
    margin: 40px 0;
  }
}
@media screen and (max-width: 767px) {
  #document.schedule-detail .entryBody {
    margin: 20px 0;
  }
}
#document.schedule-detail .communication {
  gap: 10px;
  z-index: 20;
  margin: 0;
}
#document.schedule-detail .communication button {
  min-width: 0;
  height: 40px;
  font-size: 0.875rem;
}
#document.schedule-detail .communication button::before {
  margin-right: 10px;
}
#document.schedule-detail .communication .share button::before {
  content: "\e00c";
  font-size: 20px;
  line-height: 20px;
}
#document.schedule-detail .communication .calendarAdd button::before {
  content: "\e00d";
  font-size: 20px;
  line-height: 20px;
}
@media (min-width: 768px) {
  #document.schedule-detail .communication {
    margin: 40px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #document.schedule-detail .communication {
    margin: 20px auto 0;
    width: 264px;
  }
}

/* policies
--------------------------------------------------------------------------------------------------- */
#document[class*=policies-] {
  background: var(--color-bg-policies) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document[class*=policies-] .m_pageTitle {
  background: var(--color-bg-policies) no-repeat 0 0/100vw 100vh;
  background-attachment: fixed;
}
#document[class*=policies-] .l_container {
  position: static;
}
#document[class*=policies-] .l_gfooter {
  z-index: unset;
}
#document[class*=policies-] .m_section {
  position: static;
}
@media (min-width: 768px) {
  #document[class*=policies-] .m_section {
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=policies-] .m_section {
    padding-bottom: 113px;
  }
}
#document[class*=policies-] .lnavBottom .navList {
  margin: 0;
  display: flex;
  line-height: 1.3;
}
#document[class*=policies-] .lnavBottom .navList a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: var(--color-blue);
  color: #ffffff;
  border-radius: 4px;
  text-align: center;
  font-weight: 700;
  text-decoration: none;
}
#document[class*=policies-] .lnavBottom .navList a::before {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  line-height: 1;
}
#document[class*=policies-] .lnavBottom .navList a[href="/policies/search/"]::before {
  content: "\e011";
}
#document[class*=policies-] .lnavBottom .navList a[href="/policies/specifics/"]::before {
  content: "\e012";
}
#document[class*=policies-] .lnavBottom .navList a[href="/file/DPFP-PolicyCollection2026.pdf"]::before {
  content: "\e013";
}
@media (min-width: 768px) {
  #document[class*=policies-] .lnavBottom {
    position: relative;
    margin: 24px 0 0;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 10;
  }
  #document[class*=policies-] .lnavBottom .navList {
    gap: 15px;
  }
  #document[class*=policies-] .lnavBottom .navList a {
    width: 96px;
    height: 96px;
    font-size: 0.75rem;
    gap: 4px;
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document[class*=policies-] .lnavBottom .navList a[href="/policies/search/"]::before {
    font-size: 1.75rem;
  }
  #document[class*=policies-] .lnavBottom .navList a[href="/policies/specifics/"]::before {
    font-size: 2rem;
  }
  #document[class*=policies-] .lnavBottom .navList a[href="/file/DPFP-PolicyCollection2026.pdf"]::before {
    font-size: 1.625rem;
  }
  #document[class*=policies-] .lnavBottom .navList a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=policies-] .lnavBottom {
    margin: 60px 0 0;
    width: -moz-fit-content;
    width: fit-content;
  }
  #document[class*=policies-] .lnavBottom .navList {
    gap: 10px;
  }
  #document[class*=policies-] .lnavBottom .navList a {
    --size: 80px;
    width: var(--size);
    height: var(--size);
    font-size: 0.625rem;
    gap: 4px;
  }
  #document[class*=policies-] .lnavBottom .navList a[href="/policies/search/"]::before {
    font-size: 23px;
  }
  #document[class*=policies-] .lnavBottom .navList a[href="/policies/specifics/"]::before {
    font-size: 27px;
  }
  #document[class*=policies-] .lnavBottom .navList a[href="/file/DPFP-PolicyCollection2026.pdf"]::before {
    font-size: 19px;
  }
}

#document[class*=policies-topPolicies] {
  --color-policies01: var(--color-blue);
  --color-policies02: #408e60;
  --color-policies03: #da6e88;
  --color-policies04: #e0944f;
  --color-policies05: #3b7298;
  background-repeat: no-repeat;
}
@media (min-width: 768px) {
  #document[class*=policies-topPolicies] {
    background-image: url(/images/policies/policies_bg_container.webp);
    background-position: -1028px -279px;
    background-size: 4754px 2915px;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=policies-topPolicies] {
    background-image: url(/images/policies/policies_bg_container_@2x.webp);
    background-position: -525px 92px;
    background-size: 1975px 1212px;
  }
}
@media (min-width: 768px) {
  #document[class*=policies-topPolicies] .m_pageTitle {
    background: transparent;
  }
}
@media (min-width: 768px) {
  #document[class*=policies-topPolicies] .m_section {
    min-height: calc(100vh - 110px);
  }
}
#document[class*=policies-topPolicies] .topPolicies .m_textHeading {
  line-height: 1.3;
  padding-left: 1em;
  text-indent: -1em;
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin: 0;
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  border-radius: 50%;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: -3%;
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList a[href*="/policies/top-policies/policy"] {
  font-size: 1.375rem;
  letter-spacing: 0;
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href*="/policies/top-policies/policy"] {
  font-family: Roboto, sans-serif;
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href="/policies/top-policies/"] {
  background: var(--color-blue);
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href="/policies/top-policies/policy1/"] {
  background: var(--color-policies01);
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href="/policies/top-policies/policy2/"] {
  background: var(--color-policies02);
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href="/policies/top-policies/policy3/"] {
  background: var(--color-policies03);
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href="/policies/top-policies/policy4/"] {
  background: var(--color-policies04);
}
#document[class*=policies-topPolicies] .topPolicies .lnavTop .navList > li a[href="/policies/top-policies/policy5/"] {
  background: var(--color-policies05);
}
#document[class*=policies-topPolicies] .topPolicies .pageTitle {
  position: relative;
  color: #ffffff;
  letter-spacing: -3%;
  line-height: 1.3;
}
#document[class*=policies-topPolicies] .topPolicies .pageTitle .em {
  position: absolute;
  top: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: solid #ffffff;
  border-radius: 50%;
  transform: translateY(-50%);
}
#document[class*=policies-topPolicies] .topPolicies .imageBox {
  position: relative;
}
#document[class*=policies-topPolicies] .topPolicies .imageBox .imageBox-inner img {
  max-width: unset;
  max-height: 100%;
  width: 100%;
  object-fit: contain;
}
#document[class*=policies-topPolicies] .topPolicies .imageBox .masked-box {
  overflow: hidden;
  display: inline-block;
  clip-path: inset(0% 100% 0% 0%);
}
#document[class*=policies-topPolicies] .topPolicies .circleList {
  display: flex;
  flex-direction: column;
  margin: 0;
  font-weight: 700;
  font-size: 1.125rem;
}
#document[class*=policies-topPolicies] .topPolicies .circleList > li {
  position: relative;
  padding-left: 1.25em;
}
#document[class*=policies-topPolicies] .topPolicies .circleList > li::before {
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 1em;
  height: 1em;
  border: 1px solid currentColor;
  border-radius: 50%;
  content: "";
}
#document[class*=policies-topPolicies] .topPolicies .dotList {
  margin: 0;
  font-weight: 500;
  font-size: 1rem;
}
#document[class*=policies-topPolicies] .topPolicies .dotList > li {
  padding-left: 1em;
  text-indent: -1em;
}
#document[class*=policies-topPolicies] .topPolicies .dotList > li::before {
  content: "・";
}
#document[class*=policies-topPolicies] .topPolicies .detailLink {
  margin: 20px 0 0;
}
#document[class*=policies-topPolicies] .topPolicies .detailLink a {
  padding: 15px 40px;
  min-width: unset;
  width: -moz-fit-content;
  width: fit-content;
  height: 47px;
  font-size: 0.875rem;
}
@media (min-width: 768px) {
  #document[class*=policies-topPolicies] .topPolicies {
    display: grid;
    grid-template-columns: 1fr min(45%, 515px) min(55%, 585px) 1fr;
    grid-template-rows: min-content 1fr min-content min-content;
    height: calc(100vh - 170px);
  }
  #document[class*=policies-topPolicies] .topPolicies .m_textHeading {
    font-size: 1.375rem;
  }
  #document[class*=policies-topPolicies] .topPolicies .lnavTop {
    grid-column: 2/4;
    grid-row: 1;
  }
  #document[class*=policies-topPolicies] .topPolicies .lnavTop .navList a {
    width: 60px;
    height: 60px;
    font-size: 1.125rem;
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document[class*=policies-topPolicies] .topPolicies .lnavTop .navList a:hover {
    opacity: 0.7;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox {
    grid-column: 2;
    grid-row: 1/4;
    margin: 42px 55px 0 0;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .pageTitle {
    margin: 0 0 0 80px;
    padding: 14px 20px 14px 73px;
    border-radius: 4px;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 1.25rem;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .pageTitle .em {
    left: -88px;
    width: 140px;
    height: 140px;
    border-width: 8px;
    font-size: 1rem;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .pageTitle .em > span {
    display: block;
    font-size: 2.75rem;
    line-height: 1;
    font-family: Roboto, sans-serif;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .image img {
    width: auto;
    max-height: calc(100vh - 416px);
    height: auto;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox {
    margin: 30px 0 0;
    padding-bottom: 100px;
    width: 100%;
    height: 100%;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox .imageBox-inner,
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox .imageBox-inner figure {
    height: 100%;
  }
  #document[class*=policies-topPolicies] .topPolicies .body {
    margin: 30px 0 0;
    grid-column: 3;
    grid-row: 2;
    position: relative;
  }
  #document[class*=policies-topPolicies] .topPolicies .body .policyWrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: auto;
  }
  #document[class*=policies-topPolicies] .topPolicies .body .inner:nth-of-type(n+2) {
    margin-top: 30px;
  }
  #document[class*=policies-topPolicies] .topPolicies .circleList {
    gap: 10px;
    margin: 20px 0 0;
    line-height: 1.8;
  }
  #document[class*=policies-topPolicies] .topPolicies .detailLink {
    grid-column: 3;
    grid-row: 3;
  }
  #document[class*=policies-topPolicies] .topPolicies .detailLink a {
    margin-left: auto;
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document[class*=policies-topPolicies] .topPolicies .detailLink a:hover {
    opacity: 0.7;
  }
  #document[class*=policies-topPolicies] .topPolicies .lnavBottom {
    grid-column: 1/4;
    grid-row: 4;
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=policies-topPolicies] .topPolicies .m_textHeading {
    font-size: 1.125rem;
  }
  #document[class*=policies-topPolicies] .topPolicies .lnavTop {
    margin: 25px 0 0;
  }
  #document[class*=policies-topPolicies] .topPolicies .lnavTop .navList a {
    width: min(12.8205128205vw, 50px);
    height: min(12.8205128205vw, 50px);
    font-size: 0.875rem;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox {
    margin: 43px 0 0;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .pageTitle {
    margin: 0 0 0 52px;
    padding: 13px 10px 13px 50px;
    border-radius: 4px;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .pageTitle .em {
    --size: 88;
    left: -52px;
    width: min(var(--size) * 390 * 100vw, var(--size) * 1px);
    height: min(var(--size) * 390 * 100vw, var(--size) * 1px);
    border-width: 5px;
    font-size: 0.75rem;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .pageTitle .em > span {
    display: block;
    font-size: 2.25rem;
    line-height: 1;
    font-family: Roboto, sans-serif;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox {
    margin: 25px auto;
    width: calc(100vw - 85px);
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox .imageBox-inner {
    height: 100%;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox .imageBox-inner figure {
    display: block;
    margin: 0;
    height: 100%;
  }
  #document[class*=policies-topPolicies] .topPolicies .headingBox .imageBox .imageBox-inner img {
    object-fit: unset;
    max-width: 100%;
    margin-inline: auto;
    width: auto;
    height: auto;
    max-height: unset;
  }
  #document[class*=policies-topPolicies] .topPolicies .body {
    margin: 12px 0 0;
  }
  #document[class*=policies-topPolicies] .topPolicies .body .policyBox .inner:nth-of-type(n+2) {
    margin-top: 20px;
  }
  #document[class*=policies-topPolicies] .topPolicies .circleList {
    gap: 10px;
    margin: 20px 0 0;
    line-height: 1.8;
  }
  #document[class*=policies-topPolicies] .topPolicies .detailLink a {
    margin-inline: auto;
  }
}

#document.policies-topPolicies01 .topPolicies .m_textHeading {
  color: var(--color-policies01);
}
#document.policies-topPolicies01 .topPolicies .pageTitle {
  background: var(--color-policies01);
}
#document.policies-topPolicies01 .topPolicies .pageTitle .em {
  background: var(--color-policies01);
}
#document.policies-topPolicies01 .topPolicies .imageBox .anchor > li a {
  color: var(--color-policies01);
}
#document.policies-topPolicies01 .topPolicies .imageBox .imageBox-inner > a {
  display: none;
  position: absolute;
}
#document.policies-topPolicies01 .topPolicies .detailLink a {
  background: var(--color-policies01);
}
@media screen and (max-width: 767px) {
  #document.policies-topPolicies01 .topPolicies .imageBox {
    height: 25vh;
    margin-block-end: 5px !important;
  }
  #document.policies-topPolicies01 .topPolicies .imageBox .imageBox-inner img {
    height: 100% !important;
  }
}

#document.policies-topPolicies02 .topPolicies .m_textHeading {
  color: var(--color-policies02);
}
#document.policies-topPolicies02 .topPolicies .pageTitle {
  background: var(--color-policies02);
}
#document.policies-topPolicies02 .topPolicies .pageTitle .em {
  background: var(--color-policies02);
}
#document.policies-topPolicies02 .topPolicies .detailLink a {
  background: var(--color-policies02);
}
@media (min-width: 768px) {
  #document.policies-topPolicies02 .topPolicies .imageBox .imageBox-inner img {
    width: min(580px, 45.3125vw);
    height: auto;
    transform: translateX(max(-110px, -8.59375vw));
  }
}
#document.policies-topPolicies03 .topPolicies .m_textHeading {
  color: var(--color-policies03);
}
#document.policies-topPolicies03 .topPolicies .pageTitle {
  background: var(--color-policies03);
}
#document.policies-topPolicies03 .topPolicies .pageTitle .em {
  background: var(--color-policies03);
}
#document.policies-topPolicies03 .topPolicies .imageBox .anchor > li a {
  color: var(--color-policies03);
}
#document.policies-topPolicies03 .topPolicies .detailLink a {
  background: var(--color-policies03);
}
@media (min-width: 768px) {
  #document.policies-topPolicies03 .topPolicies .imageBox .imageBox-inner img {
    min-width: min(530px, 41.40625vw);
    transform: translateX(clamp(-100px, -7.8125vw, -40px));
  }
}
#document.policies-topPolicies04 .topPolicies .m_textHeading {
  color: var(--color-policies04);
}
#document.policies-topPolicies04 .topPolicies .pageTitle {
  background: var(--color-policies04);
}
#document.policies-topPolicies04 .topPolicies .pageTitle .em {
  background: var(--color-policies04);
}
#document.policies-topPolicies04 .topPolicies .imageBox .anchor > li a {
  color: var(--color-policies04);
}
#document.policies-topPolicies04 .topPolicies .detailLink a {
  background: var(--color-policies04);
}
@media (min-width: 768px) {
  #document.policies-topPolicies04 .topPolicies .imageBox .imageBox-inner img {
    width: min(570px, 45.15625vw);
    height: auto;
    transform: translateX(clamp(-140px, -10.9375vw, -40px));
  }
}
#document.policies-topPolicies05 .topPolicies .m_textHeading {
  color: var(--color-policies05);
}
#document.policies-topPolicies05 .topPolicies .pageTitle {
  background: var(--color-policies05);
}
#document.policies-topPolicies05 .topPolicies .pageTitle .em {
  background: var(--color-policies05);
}
#document.policies-topPolicies05 .topPolicies .imageBox .anchor > li a {
  color: var(--color-policies05);
}
#document.policies-topPolicies05 .topPolicies .detailLink a {
  background: var(--color-policies05);
}
#document[class*=policies-search] .searchSection {
  background: #ffffff;
  border-radius: 4px;
}
#document[class*=policies-search] .searchSection .inner {
  grid-column: 2;
  grid-row: 2;
}
#document[class*=policies-search] .searchSection .inner > .heading {
  margin: 0;
  color: var(--color-blue);
  line-height: 1.6;
}
#document[class*=policies-search] .searchSection .inner > .text {
  margin: 10px 0 0;
  font-size: 0.875rem;
  line-height: 1.8;
}
#document[class*=policies-search] .searchSection .resultHeading {
  text-align: center;
}
#document[class*=policies-search] .searchSection .resultHeading > .heading {
  margin: 0;
  color: var(--color-blue);
}
#document[class*=policies-search] .searchSection .resultHeading > .text {
  margin: 0;
  font-weight: 400;
}
#document[class*=policies-search] .searchSection .search {
  position: relative;
  z-index: 0;
}
#document[class*=policies-search] .searchSection .search form {
  display: grid;
  align-items: center;
}
#document[class*=policies-search] .searchSection .search input[type=text] {
  grid-column: 1;
  grid-row: 1;
  border: 1px solid #b0b0b0;
  border-radius: 4px;
  background: transparent;
  font-weight: 400;
  width: 100%;
}
#document[class*=policies-search] .searchSection .search .inputDescription {
  position: relative;
  grid-column: 1;
  grid-row: 1;
  color: #949494;
  transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  z-index: -1;
  white-space: nowrap;
}
#document[class*=policies-search] .searchSection .search input[type=submit] {
  grid-column: 2;
  grid-row: 1;
  border: unset;
  display: block;
  border-radius: 4px;
  background: var(--color-blue);
  color: #ffffff;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
}
#document[class*=policies-search] .searchSection .resultList {
  line-height: 1.8;
}
#document[class*=policies-search] .searchSection .resultList .title {
  margin: 0;
  font-weight: 700;
}
#document[class*=policies-search] .searchSection .resultList .detail {
  margin: 10px 0 0;
  font-weight: 400;
}
#document[class*=policies-search] .searchSection .resultList .detail .em {
  background: #fff709;
}
@media (min-width: 768px) {
  #document[class*=policies-search] .searchSection {
    position: relative;
    margin: 22px auto 0;
    padding: 30px;
    max-width: 938px;
    z-index: 0;
  }
  #document[class*=policies-search] .searchSection:has(.inner) {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: 1fr auto 1fr;
    height: 579px;
  }
  #document[class*=policies-search] .searchSection .inner > .heading {
    font-size: 1.125rem;
  }
  #document[class*=policies-search] .searchSection .resultHeading > .heading {
    font-size: 1.75rem;
  }
  #document[class*=policies-search] .searchSection .resultHeading > .text {
    font-size: 1rem;
  }
  #document[class*=policies-search] .searchSection .search {
    margin: 30px auto 0;
    max-width: 600px;
  }
  #document[class*=policies-search] .searchSection .search form {
    gap: 10px;
  }
  #document[class*=policies-search] .searchSection .search input[type=text] {
    padding: 15px 20px;
    width: 490px;
    height: 62px;
    font-size: 1.125rem;
  }
  #document[class*=policies-search] .searchSection .search .inputDescription {
    padding: 15px 20px;
    font-size: 1.125rem;
  }
  #document[class*=policies-search] .searchSection .search input[type=submit] {
    width: 100px;
    height: 62px;
  }
  #document[class*=policies-search] .searchSection .resultList .title {
    font-size: 1.25rem;
  }
  #document[class*=policies-search] .searchSection .resultList > li {
    margin: 30px 0 0;
  }
  #document[class*=policies-search] .searchSection .obj {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) translate(260px, -27px);
    z-index: -1;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=policies-search] .searchSection {
    margin: 20px 0 0;
    padding: 30px 20px;
  }
  #document[class*=policies-search] .searchSection .resultHeading > .heading {
    font-size: 1.125rem;
  }
  #document[class*=policies-search] .searchSection .resultHeading > .text {
    font-size: 0.875rem;
  }
  #document[class*=policies-search] .searchSection .search {
    margin: 23px 0 0;
  }
  #document[class*=policies-search] .searchSection .search form {
    gap: 5px;
  }
  #document[class*=policies-search] .searchSection .search input[type=text] {
    height: 38px;
    padding: 10px;
  }
  #document[class*=policies-search] .searchSection .search .inputDescription {
    overflow: hidden;
    padding: 10px;
  }
  #document[class*=policies-search] .searchSection .search input[type=submit] {
    width: 52px;
    height: 38px;
    font-size: 0.875rem;
  }
  #document[class*=policies-search] .searchSection .resultList .detail {
    font-size: 0.875rem;
  }
  #document[class*=policies-search] .searchSection .resultList > li {
    margin: 10px 0 0;
  }
  #document[class*=policies-search] .searchSection .obj {
    display: none;
  }
}

#document[class*=policies-specifics] .m_section {
  position: static;
}
@media (min-width: 768px) {
  #document[class*=policies-specifics] .m_section {
    padding-bottom: 140px;
  }
}
#document[class*=policies-specifics] .specifics {
  border-radius: 4px;
  background: #ffffff;
  line-height: 1.8;
}
#document[class*=policies-specifics] .specifics > *:last-child {
  margin-bottom: 0 !important;
}
#document[class*=policies-specifics] .specifics > .heading {
  margin: 0;
  text-align: center;
  color: var(--color-blue);
  line-height: 1.2;
  letter-spacing: -3%;
}
#document[class*=policies-specifics] .specifics > .heading img {
  margin: 0 auto 15px;
}
#document[class*=policies-specifics] .specifics .textHeading a,
#document[class*=policies-specifics] .specifics .list a {
  text-decoration: none;
}
#document[class*=policies-specifics] .specifics .indent {
  padding-left: 2em;
}
@media (min-width: 768px) {
  #document[class*=policies-specifics] .specifics {
    margin-inline: auto;
    padding: 30px;
    width: 936px;
    font-size: 1.125rem;
  }
  #document[class*=policies-specifics] .specifics > .heading {
    font-size: 1.75rem;
  }
  #document[class*=policies-specifics] .specifics > .heading img {
    transform: translateX(-31px);
  }
  #document[class*=policies-specifics] .specifics .description {
    margin: 30px 0;
  }
  #document[class*=policies-specifics] .specifics .textHeading a:hover,
  #document[class*=policies-specifics] .specifics .list a:hover {
    text-decoration: underline;
  }
  #document[class*=policies-specifics] .specifics .textHeading {
    margin: 30px 0 0;
    font-size: 1.5rem;
  }
  #document[class*=policies-specifics] .specifics .textHeading[class*=_small] {
    font-size: 1.25rem;
  }
  #document[class*=policies-specifics] .specifics .textHeading[class*=_large] {
    font-size: 1.75rem;
  }
  #document[class*=policies-specifics] .specifics .textHeading[class*=_exLarge] {
    margin-bottom: 10px;
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 767px) {
  #document[class*=policies-specifics] .specifics {
    padding: 30px 20px;
  }
  #document[class*=policies-specifics] .specifics > .heading {
    font-size: 1.5rem;
  }
  #document[class*=policies-specifics] .specifics > .heading img {
    transform: translateX(-31px);
  }
  #document[class*=policies-specifics] .specifics .description {
    margin: 10px 0;
  }
  #document[class*=policies-specifics] .specifics .textHeading {
    margin: 10px 0 0;
    font-size: 1.25rem;
  }
  #document[class*=policies-specifics] .specifics .textHeading[class*=_small] {
    font-size: 1.125rem;
  }
  #document[class*=policies-specifics] .specifics .textHeading[class*=_large] {
    font-size: 1.5rem;
  }
  #document[class*=policies-specifics] .specifics .textHeading[class*=_exLarge] {
    margin-bottom: 10px;
    font-size: 1.5rem;
  }
}
#document[class*=policies-specifics] .lnavBottom {
  z-index: unset;
}
@media (min-width: 768px) {
  #document[class*=policies-specifics] .lnavBottom {
    margin-top: 90px;
  }
}
#document[class*=policies-specifics] .squareList {
  margin: 0;
}
#document[class*=policies-specifics] .squareList > li {
  margin: 10px 0 0;
  padding-left: 1em;
}
#document[class*=policies-specifics] .squareList > li::before {
  content: "■";
  margin-left: -1em;
}
#document[class*=policies-specifics] .squareList > li .m_text {
  margin: 0;
}
#document[class*=policies-specifics] .dotList {
  margin: 0;
}
#document[class*=policies-specifics] .dotList > li {
  padding-left: 1em;
}
#document[class*=policies-specifics] .dotList > li::before {
  content: "・";
  margin-left: -1em;
}
#document[class*=policies-specifics] .numList {
  margin: 0;
  counter-reset: num;
}
#document[class*=policies-specifics] .numList > li {
  position: relative;
  padding-left: 1.2em;
  counter-increment: num;
}
#document[class*=policies-specifics] .numList > li::before {
  position: absolute;
  left: 0;
  content: counter(num) ".";
}

/* support
--------------------------------------------------------------------------------------------------- */
#document.support-tapChallenge .m_section {
  padding-block-end: 0;
  min-height: unset;
}
#document.support-tapChallenge .sectionInner {
  overflow: hidden;
  max-width: unset;
}
@media (min-width: 768px) {
  #document.support-tapChallenge .sectionInner {
    margin-inline: -20px -146px;
    padding-inline: 20px 146px;
  }
}
@media screen and (max-width: 767px) {
  #document.support-tapChallenge .sectionInner {
    margin-inline: -20px -65px;
    padding: 18px 65px 120px 20px;
  }
}
@media (min-width: 768px) {
  #document.support-tapChallenge :where(.section):not(.a_startSection) {
    padding-block: 10px 140px;
  }
}
@media screen and (max-width: 767px) {
  #document.support-tapChallenge :where(.section):not(.a_startSection) {
    padding-block-start: 10px;
  }
}
#document.support-tapChallenge .a_startSection .innerBox {
  position: relative;
  display: grid;
  text-align: center;
  color: var(--color-blue);
  z-index: 0;
}
#document.support-tapChallenge .a_startSection .innerBox::before {
  position: absolute;
  left: 50%;
  content: "";
  z-index: -1;
  background: no-repeat 0 0/cover;
}
#document.support-tapChallenge .a_startSection .innerBox > .heading {
  margin: 0;
}
#document.support-tapChallenge .a_startSection .innerBox > .heading > span {
  display: inline-block;
}
#document.support-tapChallenge .a_startSection .innerBox .text {
  font-weight: 700;
}
@media (min-width: 768px) {
  #document.support-tapChallenge .a_startSection .innerBox {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr min-content min-content min-content 1fr;
    width: -moz-fit-content;
    width: fit-content;
    min-height: calc(100vh - 152px);
    margin-inline: auto;
  }
  #document.support-tapChallenge .a_startSection .innerBox::before {
    top: 50%;
    background-image: url(/images/support/tapChallenge_bg_section.webp);
    width: 957px;
    height: 577px;
    transform: translate(-50%, -50%) translate(-4px, -20px);
  }
  #document.support-tapChallenge .a_startSection .innerBox > .heading {
    grid-row: 2;
    align-self: end;
    font-size: 5.9375rem;
    line-height: 1;
  }
  #document.support-tapChallenge .a_startSection .innerBox > .heading > span {
    margin: 0 0 18px;
    font-size: 2.0625rem;
  }
  #document.support-tapChallenge .a_startSection .innerBox .text {
    grid-row: 3;
    align-self: center;
    margin: 21px 0 0;
    font-size: 1.5rem;
    line-height: 1.3;
  }
  #document.support-tapChallenge .a_startSection .innerBox .button {
    align-self: start;
    grid-row: 4;
    margin: 20px 0 0;
  }
  #document.support-tapChallenge .a_startSection .innerBox .button button, #document.support-tapChallenge .a_startSection .innerBox .button a {
    min-width: 431px;
    font-size: 1.875rem;
    height: 80px;
  }
  #document.support-tapChallenge .a_startSection .innerBox .obj {
    position: absolute;
    top: 50%;
    right: -380px;
    transform: translateY(-50%) translateY(-29px);
  }
  #document.support-tapChallenge .a_startSection .innerBox .obj02 {
    position: absolute;
    top: 63px;
    left: -147px;
  }
}
@media screen and (max-width: 767px) {
  #document.support-tapChallenge .a_startSection {
    padding-top: 10px;
  }
  #document.support-tapChallenge .a_startSection .innerBox {
    grid-template-columns: 1fr;
    justify-content: center;
  }
  #document.support-tapChallenge .a_startSection .innerBox::before {
    top: 76px;
    background-image: url(/images/support/tapChallenge_bg_section_@2x.webp);
    width: 390px;
    height: 486px;
    transform: translateX(calc(-50% - 15px));
  }
  #document.support-tapChallenge .a_startSection .innerBox > .heading {
    font-size: 2.75rem;
    line-height: 1.15;
  }
  #document.support-tapChallenge .a_startSection .innerBox > .heading > span {
    margin: 9px 0 0;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  #document.support-tapChallenge .a_startSection .innerBox .text {
    margin: 9px 0 0;
    font-size: 1.125rem;
  }
  #document.support-tapChallenge .a_startSection .innerBox .obj {
    order: -1;
    padding-right: 18px;
  }
  #document.support-tapChallenge .a_startSection .innerBox .obj img {
    margin-inline: auto;
    width: 96px;
    height: 179px;
  }
  #document.support-tapChallenge .a_startSection .innerBox .button {
    margin: 16px 0 0;
  }
  #document.support-tapChallenge .a_startSection .innerBox .button button, #document.support-tapChallenge .a_startSection .innerBox .button a {
    font-size: 1.375rem;
    height: 56px;
    min-height: auto;
  }
  #document.support-tapChallenge .a_startSection .innerBox .obj02 {
    display: none;
  }
}

/* factcheck
--------------------------------------------------------------------------------------------------- */
@media (min-width: 768px) {
  #document.factcheck .m_section .sectionInner,
  #document.factcheck-detail .m_section .sectionInner {
    padding-top: 43px;
  }
}
#document.factcheck .m_text.lead,
#document.factcheck-detail .m_text.lead {
  font-weight: 700;
}
@media (min-width: 768px) {
  #document.factcheck .m_text.lead,
  #document.factcheck-detail .m_text.lead {
    font-size: 1.25rem;
  }
}
#document.factcheck .factList,
#document.factcheck-detail .factList {
  display: flex;
  flex-direction: column;
}
#document.factcheck .factList .dialogHeading,
#document.factcheck-detail .factList .dialogHeading {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  color: var(--color-blue);
  font-weight: 700;
  text-align: left;
  text-decoration: none;
}
#document.factcheck .factList .dialogHeading::before,
#document.factcheck-detail .factList .dialogHeading::before {
  font-family: Roboto, sans-serif;
  font-variation-settings: "wdth" 75;
  content: "Q.";
  line-height: 1.6;
}
#document.factcheck .factList > li,
#document.factcheck-detail .factList > li {
  border-radius: 8px;
  border: solid var(--color-blue);
  background: #ffffff;
}
@media (min-width: 768px) {
  #document.factcheck .factList,
  #document.factcheck-detail .factList {
    margin: 40px 0 0;
    gap: 20px;
  }
  #document.factcheck .factList .dialogHeading,
  #document.factcheck-detail .factList .dialogHeading {
    padding: 30px;
    font-size: 1.375rem;
    line-height: 1.6;
  }
  #document.factcheck .factList .dialogHeading::before,
  #document.factcheck-detail .factList .dialogHeading::before {
    font-size: 2.625rem;
  }
  #document.factcheck .factList > li,
  #document.factcheck-detail .factList > li {
    border-width: 4px;
  }
}
@media screen and (max-width: 767px) {
  #document.factcheck .factList,
  #document.factcheck-detail .factList {
    margin: 20px 0 0;
    gap: 10px;
  }
  #document.factcheck .factList .dialogHeading,
  #document.factcheck-detail .factList .dialogHeading {
    padding: 15px;
    font-size: 1.25rem;
    line-height: 1.4;
  }
  #document.factcheck .factList .dialogHeading::before,
  #document.factcheck-detail .factList .dialogHeading::before {
    font-size: 2rem;
  }
  #document.factcheck .factList > li,
  #document.factcheck-detail .factList > li {
    border-width: 2px;
  }
}
#document.factcheck .columnWrap,
#document.factcheck-detail .columnWrap {
  text-align: left;
}
#document.factcheck .columnWrap .heading,
#document.factcheck-detail .columnWrap .heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: var(--color-blue);
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.6;
}
#document.factcheck .columnWrap .heading::before,
#document.factcheck-detail .columnWrap .heading::before {
  content: "Q.";
  font-family: Roboto, sans-serif;
  font-variation-settings: "wdth" 75;
  font-size: 2.625rem;
}
#document.factcheck .columnWrap .content,
#document.factcheck-detail .columnWrap .content {
  position: relative;
  margin: 20px 0 0;
  padding-left: 48px;
  font-size: 1.125rem;
  line-height: 2;
}
#document.factcheck .columnWrap .content > *:last-child,
#document.factcheck-detail .columnWrap .content > *:last-child {
  margin-bottom: 0 !important;
}
#document.factcheck .columnWrap .content::before,
#document.factcheck-detail .columnWrap .content::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "A.";
  font-family: Roboto, sans-serif;
  font-variation-settings: "wdth" 75;
  font-weight: 700;
  font-size: 2.625rem;
}
@media (min-width: 768px) {
  #document.factcheck .columnWrap,
  #document.factcheck-detail .columnWrap {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 20px;
    margin: 40px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #document.factcheck .columnWrap,
  #document.factcheck-detail .columnWrap {
    margin: 30px 0 0;
  }
  #document.factcheck .columnWrap .column:nth-of-type(n+2),
  #document.factcheck-detail .columnWrap .column:nth-of-type(n+2) {
    margin-top: 20px;
  }
}

#document.factcheck .underConstruction {
  display: grid;
  align-items: center;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
}
#document.factcheck .underConstruction .inner::before {
  display: block;
  margin-inline: auto;
  content: "";
  background: url(/images/common/404_img_obj.webp) no-repeat 0 0/cover;
}
#document.factcheck .underConstruction .text {
  margin: 10px 0 0;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
}
@media (min-width: 768px) {
  #document.factcheck .underConstruction {
    padding: 50px 0 0;
    min-height: calc(100vh - 210px);
  }
  #document.factcheck .underConstruction .inner::before {
    width: 140px;
    height: 276px;
  }
}
@media screen and (max-width: 767px) {
  #document.factcheck .underConstruction {
    padding: 40px 0 0;
    min-height: calc(100vh - 160px);
  }
  #document.factcheck .underConstruction .inner::before {
    width: 96px;
    height: 190px;
  }
}

/* news
--------------------------------------------------------------------------------------------------- */
#document.news {
  background: var(--color-bg);
}
#document.news .m_pageTitle {
  background: var(--color-bg);
}
@media (min-width: 768px) {
  #document.news .sectionInner {
    padding-top: 42px;
  }
}
#document.news .m_textHeading {
  color: var(--color-blue);
  margin: 0;
}
@media (min-width: 768px) {
  #document.news .m_column {
    display: grid;
    gap: 0 20px;
    grid-template-columns: repeat(2, 1fr);
  }
  #document.news .m_column .column {
    display: grid;
    grid-row: 1/11;
    grid-template-rows: subgrid;
    width: unset;
  }
  #document.news .m_column .m_newsList {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: 2/11;
  }
  #document.news .m_column .m_newsList > li {
    grid-template-rows: auto 1fr;
  }
}
@media (min-width: 768px) {
  #document.news .obj {
    position: absolute;
    left: -170px;
    top: 348px;
  }
}
@media screen and (max-width: 767px) {
  #document.news .obj {
    display: none;
  }
}

/* vote
--------------------------------------------------------------------------------------------------- */
@media (min-width: 768px) {
  #document.vote .m_section .sectionInner {
    margin-top: 43px;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .m_section .sectionInner {
    margin-top: 10px;
  }
}
#document.vote .textHeading {
  color: var(--color-blue);
  line-height: 1.6;
}
#document.vote .textHeading:first-child {
  margin-top: 0;
}
@media (min-width: 768px) {
  #document.vote .textHeading {
    margin: 80px 0 30px;
    font-size: 2.25rem;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .textHeading {
    margin: 60px 0 20px;
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) {
  #document.vote .textHeading02 {
    margin: 60px 0 20px;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .textHeading02 {
    margin: 40px 0 20px;
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  #document.vote .textHeading + .textHeading02 {
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .textHeading + .textHeading02 {
    margin-top: 20px;
  }
}
#document.vote .text {
  margin: 20px 0 0;
  font-weight: 400;
  line-height: 2;
}
#document.vote .banner img,
#document.vote .banner02 img {
  max-width: 100%;
  max-height: auto;
}
@media (min-width: 768px) {
  #document.vote .banner a,
  #document.vote .banner02 a {
    transition: opacity 0.3s cubic-bezier(0.05, 0.935, 0.905, 0.875);
  }
  #document.vote .banner a:hover,
  #document.vote .banner02 a:hover {
    opacity: 0.7;
  }
}
@media (min-width: 768px) {
  #document.vote .banner {
    margin: 22px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .banner {
    margin: 40px 0;
  }
}
@media (min-width: 768px) {
  #document.vote .banner02 {
    margin: 60px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .banner02 {
    margin: 20px 0 0;
  }
}
@media (min-width: 768px) {
  #document.vote .intro {
    position: relative;
  }
  #document.vote .intro::before {
    position: absolute;
    top: -43px;
    left: 764px;
    width: 224px;
    height: 426px;
    content: "";
    background: url(/images/vote/vote_img_obj.webp) no-repeat 0 0/cover;
    mix-blend-mode: color;
  }
}
#document.vote .point {
  position: relative;
  background: var(--color-blue);
  color: #ffffff;
  border-radius: 8px;
}
#document.vote .point > *:last-child {
  margin-bottom: 0 !important;
}
#document.vote .point::before {
  position: absolute;
  background: url(/images/vote/vote_img_obj_02.webp) no-repeat 0 0/cover;
  content: "";
  z-index: -1;
}
#document.vote .point .textHeading02 {
  margin-top: 0;
}
@media (min-width: 768px) {
  #document.vote .point {
    margin: 66px 0 60px 60px;
    padding: 40px;
  }
  #document.vote .point::before {
    left: -134px;
    bottom: 0;
    width: 154px;
    height: 253px;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .point {
    margin: 177px 0 0;
    padding: 20px;
  }
  #document.vote .point::before {
    top: -137px;
    left: 50%;
    width: 118px;
    height: 195px;
    transform: translateX(-50%) translateX(-10px);
  }
}
#document.vote .image {
  margin: 20px 0 0;
}
#document.vote .image.s_bg {
  border-radius: 8px;
  background: var(--color-yellow) no-repeat 0 0/cover;
}
#document.vote .image.s_bg img {
  margin-inline: auto;
}
@media (min-width: 768px) {
  #document.vote .image.s_bg {
    padding-block: 40px;
    background-image: url(/images/vote/vote_bg.webp);
  }
}
@media screen and (max-width: 767px) {
  #document.vote .image.s_bg {
    padding: 15px;
  }
}
#document.vote .box {
  margin-block: 20px 0;
  border: 4px solid var(--color-blue);
  border-radius: 8px;
  background: #ffffff;
}
#document.vote .box .heading {
  margin: 0;
  color: var(--color-blue);
}
#document.vote .box .text {
  margin-block: 14px 0;
  line-height: 2;
}
#document.vote .box .image img {
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  #document.vote .box {
    display: grid;
    grid-template-columns: 1fr min(50%, 486px);
    padding: 40px 50px;
    gap: 0 60px;
  }
  #document.vote .box .heading {
    grid-column: 1;
    grid-row: 1;
    align-self: end;
    font-size: 1.5rem;
  }
  #document.vote .box .text {
    grid-column: 1;
    grid-row: 2;
    font-size: 1.125rem;
  }
  #document.vote .box .image {
    grid-column: 2;
    grid-row: span 2;
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  #document.vote .box {
    padding: 20px;
  }
  #document.vote .box .heading {
    font-size: 1.25rem;
  }
  #document.vote .box .text {
    font-size: 1rem;
  }
}

/* other
--------------------------------------------------------------------------------------------------- */
#document.movies .movieList {
  display: grid;
}
#document.movies .movieList .image {
  position: relative;
  margin: 0;
}
#document.movies .movieList .image a {
  display: block;
}
#document.movies .movieList .image a::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  background: url(/images/common/cmn_ico_youtube.webp) no-repeat 0 0/cover;
}
#document.movies .movieList .image img {
  width: 100%;
}
#document.movies .movieList .update {
  display: block;
}
#document.movies .movieList .title a {
  color: var(--color-text);
}
#document.movies .movieList > li {
  border-radius: 8px;
  border: solid var(--color-blue);
  background: #ffffff;
  font-weight: 700;
}
@media (min-width: 768px) {
  #document.movies .movieList {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  #document.movies .movieList .image a::before {
    width: 84px;
    height: 59px;
  }
  #document.movies .movieList .update {
    margin: 10px 0 0;
  }
  #document.movies .movieList .title {
    margin: 10px 0 0;
    font-size: 1.25rem;
    line-height: 1.5;
  }
  #document.movies .movieList > li {
    padding: 20px 30px;
  }
}
@media screen and (max-width: 767px) {
  #document.movies .movieList {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  #document.movies .movieList .image a::before {
    width: 48px;
    height: 34px;
  }
  #document.movies .movieList .update {
    margin: 8px 0 0;
  }
  #document.movies .movieList .title {
    margin: 8px 0 0;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  #document.movies .movieList > li {
    padding: 15px;
  }
}

/*====================================================================================================

    animation

====================================================================================================*/
@keyframes bounce {
  /* 静止 */
  0%, 62% {
    transform: translateY(0) scale(1);
  }
  /* 着地の潰れ */
  66% {
    transform: translateY(0) scaleX(1.06) scaleY(0.92);
  }
  /* メインバウンド（高さ：半分） */
  78% {
    transform: translateY(-48px) scaleX(0.99) scaleY(1.02);
  }
  /* 落下して再着地 */
  88% {
    transform: translateY(0) scaleX(1.07) scaleY(0.9);
  }
  /* 収束 */
  100% {
    transform: translateY(0) scale(1);
  }
}
/*# sourceMappingURL=../../Templates/dev/sourcemap/common/styles.css.map */