@charset "utf-8";
.hidden {display: none;}

:root {
    --color-text-base: #101820;
    --color-main: #005bac;
    --color-bule: #005bac;
    --color-light-blue: #eaf1fb;
    --font-family: "Meiryo", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Roboto", sans-serif;
    --font-family-en: "Montserrat", sans-serif;
    --line-height-base: 1.8;
    --line-height-heading: 1.5;
    --letter-spacing-base: 0;
    --letter-spacing-heading: 0.05em;
    --animation-value: .3s ease-out 0s;
    --z-floating: 100;
    --z-floating-second: 200;
    font-size: 16px;
  }
  
  /*! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com*/
  *,
  :after,
  :before {
    border: 0 solid #e5e7eb;
    box-sizing: border-box
  }
  
  :after,
  :before {
    --tw-content: ""
  }
  
  html {
    -webkit-text-size-adjust: 100%;
    font-feature-settings: normal;
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
    font-variation-settings: normal;
    line-height: 1.5;
    tab-size: 4
  }
  
  body {
    line-height: inherit;
    margin: 0
  }
  
  hr {
    border-top-width: 1px;
    color: inherit;
    height: 0
  }
  
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
  }
  
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit
  }
  
  a {
    color: inherit;
    text-decoration: inherit
  }
  
  b,
  strong {
    font-weight: bolder
  }
  
  code,
  kbd,
  pre,
  samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
    font-size: 1em
  }
  
  small {
    font-size: 80%
  }
  
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: initial
  }
  
  sub {
    bottom: -.25em
  }
  
  sup {
    top: -.5em
  }
  
  table {
    border-color: inherit;
    text-indent: 0
  }
  
  button,
  input,
  optgroup,
  select,
  textarea {
    color: inherit;
    font-family: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0
  }
  
  button,
  select {
    text-transform: none
  }
  
  [type=button],
  [type=reset],
  [type=submit],
  button {
    -webkit-appearance: button;
    background-color: initial;
    background-image: none
  }
  
  :-moz-focusring {
    outline: auto
  }
  
  :-moz-ui-invalid {
    box-shadow: none
  }
  
  progress {
    vertical-align: initial
  }
  
  ::-webkit-inner-spin-button,
  ::-webkit-outer-spin-button {
    height: auto
  }
  
  [type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
  }
  
  ::-webkit-search-decoration {
    -webkit-appearance: none
  }
  
  ::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
  }
  
  summary {
    display: list-item
  }
  
  blockquote,
  dd,
  dl,
  figure,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  hr,
  p,
  pre {
    margin: 0
  }
  
  fieldset {
    margin: 0
  }
  
  fieldset,
  legend {
    padding: 0
  }
  
  menu,
  ol,
  ul {
    list-style: none;
    margin: 0;
    padding: 0
  }
  
  textarea {
    resize: vertical
  }
  
  input::placeholder,
  textarea::placeholder {
    color: #9ca3af;
    opacity: 1
  }
  
  [role=button],
  button {
    cursor: pointer
  }
  
  :disabled {
    cursor: default
  }
  
  audio,
  canvas,
  embed,
  iframe,
  img,
  object,
  svg,
  video {
    display: block;
    vertical-align: middle
  }
  
  img,
  video {
    height: auto;
    max-width: 100%
  }
  
  [hidden] {
    display: none
  }
  
  *,
  :after,
  :before {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: #3b82f680;
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia:
  }
  
  ::backdrop {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: #3b82f680;
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia:
  }
  
  a,
  abbr,
  acronym,
  address,
  applet,
  article,
  aside,
  audio,
  b,
  big,
  blockquote,
  body,
  canvas,
  caption,
  center,
  cite,
  code,
  dd,
  del,
  details,
  dfn,
  div,
  dl,
  dt,
  em,
  fieldset,
  figcaption,
  figure,
  footer,
  form,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  header,
  hgroup,
  html,
  i,
  iframe,
  img,
  ins,
  kbd,
  label,
  legend,
  li,
  mark,
  menu,
  nav,
  object,
  ol,
  output,
  p,
  pre,
  q,
  ruby,
  s,
  samp,
  section,
  small,
  span,
  strike,
  strong,
  sub,
  summary,
  sup,
  table,
  tbody,
  td,
  tfoot,
  th,
  thead,
  time,
  tr,
  tt,
  u,
  ul,
  var,
  video {
    border: 0;
    box-sizing: border-box;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: initial
  }
  
  article,
  aside,
  details,
  figcaption,
  figure,
  footer,
  header,
  hgroup,
  menu,
  nav,
  section {
    display: block
  }
  
  body {
    line-height: 1
  }
  
  ol,
  ul {
    list-style: none
  }
  
  blockquote,
  q {
    quotes: none
  }
  
  blockquote:after,
  blockquote:before,
  q:after,
  q:before {
    content: "";
    content: none
  }
  
  table {
    border-collapse: collapse;
    border-spacing: 0
  }
  
  a {
    cursor: pointer;
    -webkit-text-decoration: normal;
    text-decoration: normal
  }
  
  input,
  select {
    vertical-align: middle
  }
  
  strong {
    font-weight: 400
  }

  html {
    font-size: 4.26667vw
  }
  
  @media (min-width:768px) {
    html {
      font-size: min(1.6786570743vw, 16px)
    }
  }
  
  @media (min-width:1024px) {
    html {
      font-size: 100%
    }
  }
  
  body,
  html {
    height: auto;
    width: 100%
  }
  
  body {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: var(--color-text-base);
    font-family: var(--font-family);
    font-size: .875rem;
    font-weight: 400;
    letter-spacing: var(--letter-spacing-base);
    line-height: var(--line-height-base);
    position: relative
  }
  
  body:after {
    background-color: #000;
    content: "";
    height: -webkit-fill-available;
    height: fill-available;
    height: 100dvh;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition: opacity .2s ease-out 0s;
    visibility: hidden;
    width: 100%;
    z-index: 99
  }
  
  body.is-menu-bg-show {
    overflow: hidden
  }
  
  body.is-menu-bg-show:after {
    opacity: .8;
    pointer-events: auto;
    visibility: visible
  }
  
  @media (min-width:768px) {
    body {
      font-size: 1rem
    }
  
    body:after {
      content: none
    }
  
    body.is-menu-open {
      overflow: visible
    }
  }
  
  img {
    height: auto;
    max-width: 100%;
    vertical-align: bottom
  }
  
  @media (min-width:768px) {
    img {
      image-rendering: -webkit-optimize-contrast
    }
  }
  
  svg {
    height: 100%;
    vertical-align: bottom;
    width: 100%
  }
  
  a {
    color: var(--color-text-base);
    text-decoration: none
  }
  
  figure {
    line-height: 0
  }
  
  button {
    background: none;
    border: none;
    color: var(--color-text-base);
    cursor: pointer;
    font-family: var(--font-family);
    margin: 0;
    outline: none;
    padding: 0;
    text-align: left
  }
  
  button:focus-visible {
    outline: 2px solid var(--color-text-base)
  }
  
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-weight: 400;
    line-height: 1.5
  }
  
  em {
    font-style: normal
  }
  
  .l-wrap {
    padding-left: .625rem;
    padding-right: .625rem
  }
  
  @media (min-width:768px) {
    .l-wrap {
      padding-left: 1.25rem;
      padding-right: 1.25rem
    }
  }
  
  .is-font-en {
    font-family: var(--font-family-en)
  }
  
  .a-liink-button {
    align-items: center;
    background-color: #fff;
    border-radius: 100px;
    box-shadow: 0 3px 6px 0 #005bac4d;
    display: block;
    display: flex;
    font-size: .875rem;
    font-weight: 700;
    height: 100%;
    min-height: 2.75rem;
    padding: 0 .9375rem 0 1.875rem
  }
  
  @media (min-width:768px) {
    .a-liink-button {
      min-height: 3rem;
      padding: 0 1.25rem 0 1.875rem;
      transition: color var(--animation-value), background-color var(--animation-value)
    }
  
    .a-liink-button svg path {
      transition: fill var(--animation-value)
    }
  }
  
  @media (any-hover:hover) {
    .a-liink-button:hover {
      background-color: var(--color-main);
      color: #fff
    }
  
    .a-liink-button:hover svg path {
      fill: #fff
    }
  }
  
  .a-liink-button_inner {
    --font-family-en: "Montserrat", sans-serif;
    align-items: center;
    display: flex;
    font-family: Montserrat, Meiryo, -apple-system, BlinkMacSystemFont, Segoe UI, Hiragino Sans, Hiragino Kaku Gothic ProN, Roboto, sans-serif;
    justify-content: space-between;
    width: 100%
  }
  
  .a-liink-button_arrow {
    height: .875rem;
    width: .875rem
  }

 /*-------------------------
  header
-------------------------*/
  .o-header {
  background-color: #fff
}

.o-header_inner {
  margin: 0 auto;
  max-width: 1920px;
  padding: 1.5625rem 1.25rem;
  width: 100%
}

.o-header-logo {
  display: block;
  position: relative;
  width: auto;
  z-index: var(--z-floating-second)
}
.o-header-logo img{
  width: auto;
  height: 2.8rem;
}

@media (min-width:768px) {
  .o-header-logo{
    width: auto;
  }
  .o-header-logo img{
    width: auto;
    height: 3.5rem;
  }
}

.o-header-menu {
  display: flex;
  padding: .9375rem 0 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: var(--z-floating)
}

@media (min-width:768px) {
  .o-header-menu {
    height: 0;
    padding-top: 1.25rem
  }
}

.is-menu-open .o-header-menu {
  background-color: #fff
}

@media (min-width:768px) {
  .is-menu-open .o-header-menu {
    background-color: initial
  }
}

.o-header-menu_button {
  align-items: center;
  background-color: var(--color-main);
  border-radius: 100px;
  color: #fff;
  display: flex;
  font-weight: 700;
  height: 2.75rem;
  justify-content: center;
  letter-spacing: .05em;
  margin: 0 1.25rem 0 auto;
  width: 2.75rem
}

.o-header-menu_button.is-open {
  background-color: #000
}

@media (min-width:768px) {
  .o-header-menu_button {
    box-shadow: 0 3px 6px 0 #005bac4d;
    column-gap: .625rem;
    display: grid;
    grid-template-columns: .75rem auto;
    height: 3rem;
    width: 9.625rem
  }
}

@media (min-width:1280px) {
  .o-header-menu_button {
    margin-right: 2.5rem
  }
}

@media (any-hover:hover) {
  .o-header-menu_button {
    transition: background-color var(--animation-value)
  }

  .o-header-menu_button:hover {
    background-color: #000
  }
}

@media (min-width:768px) {
  .p-top .o-header-menu_button {
    margin-right: 2.375rem
  }
}

@media (min-width:1280px) {
  .p-top .o-header-menu_button {
    margin-right: 3.625rem
  }
}

.o-header-nav-area {
  display: none
}

@media (min-width:768px) {
  .o-header-nav-area {
    padding: 0 1.25rem
  }
}

@media (min-width:1280px) {
  .o-header-nav-area {
    padding: 0 2.5rem
  }
}

.o-header-nav-area_inner {
  background-color: #fff;
  border-radius: .3125rem;
  padding: 2.5rem;
  width: 100vw
}

@media (min-width:768px) {
  .o-header-nav-area_inner {
    border-radius: .625rem;
    box-shadow: 0 3px 10px 0 #005bac4d;
    margin: .625rem 0;
    padding: 1.25rem;
    width: 16.25rem
  }
}

.o-header-nav-list {
  display: grid
}

.o-header-nav-list>:not(:first-child) {
  border-top: 1px solid #e5e5e5
}

.o-header-nav-list>:not(:first-child) a {
  padding-top: 1.25rem
}

.o-header-nav-list>:not(:last-child) a {
  padding-bottom: 1.25rem
}

.o-header-nav-link {
  align-items: center;
  display: grid;
  font-weight: 700;
  grid-template-columns: 3.75rem 1fr .625rem;
  letter-spacing: .05em
}

.o-header-menu_icon {
  height: .75rem;
  width: .75rem
}

.o-header-menu_icon line {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform var(--animation-value)
}

.is-open .o-header-menu_icon>line:first-child {
  transform: translateY(5px) rotate(45deg)
}

.is-open .o-header-menu_icon>line:nth-child(2) {
  opacity: 0
}

.is-open .o-header-menu_icon>line:nth-child(3) {
  transform: translateY(-5px) rotate(-45deg)
}

.o-header-nav-link_thum {
  border: 1px solid #8bb4d9;
  border-radius: 100px;
  overflow: hidden;
  padding: .25rem;
  position: relative
}

.o-header-nav-link_thum:after {
  border: .25rem solid #fff;
  border-radius: 100px;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}

.o-header-nav-link_thum img {
  border-radius: 100px;
  position: relative;
  z-index: 0
}

@media (min-width:768px) {
  .o-header-nav-link_thum img {
    transition: transform var(--animation-value)
  }
}

.o-header-nav-link_text {
  font-size: 1rem;
  line-height: 1.5;
  padding-left: 1.25rem
}

@media (min-width:768px) {
  .o-header-nav-link_text {
    padding-left: .9375rem
  }
}

.o-header-nav-link_arrow {
  height: .3125rem;
  transition: transform var(--animation-value);
  width: .625rem
}

body:not(.p-top) .o-header-nav-link_arrow {
  transform: rotate(-90deg)
}

@media (any-hover:hover) {
  .p-top .o-header-nav-link:hover .o-header-nav-link_arrow {
    transform: translateY(.3125rem)
  }

  body:not(.p-top) .o-header-nav-link:hover .o-header-nav-link_arrow {
    transform: translateX(.3125rem) rotate(-90deg)
  }

  .o-header-nav-link:hover .o-header-nav-link_thum img {
    transform: scale(1.1)
  }
}

.o-header-nav-area_button {
  height: 4.0625rem;
  margin-top: 1.25rem
}

.o-header-nav-area_button a {
  align-items: center;
  background-color: var(--color-main);
  border: 1px solid var(--color-main);
  border-radius: 100px;
  color: #fff;
  display: flex;
  flex-direction: column;
  font-weight: 700;
  height: 100%;
  justify-content: center;
  letter-spacing: .05em;
  line-height: 1;
  text-align: center;
  transition: color var(--animation-value), background-color var(--animation-value)
}

.o-header-nav-area_button a svg path {
  transition: fill var(--animation-value)
}

@media (min-width:768px) {
  .o-header-nav-area_button {
    height: 3.125rem
  }
}

@media (any-hover:hover) {
  .o-header-nav-area_button a:hover {
    background-color: #fff;
    color: var(--color-main)
  }

  .o-header-nav-area_button a:hover svg path {
    fill: var(--color-main)
  }
}

.o-header-nav-area_arrow {
  height: .625rem;
  margin: 0 auto;
  width: .625rem
}

.o-header-nav-area_arrow>line {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform .3s ease 0s
}

.o-header-nav-area_arrow>line:first-child {
  transform: rotate(45deg)
}

.o-header-nav-area_text {
  margin-top: .5rem
}

/*-------------------------
  footer
-------------------------*/
.o-footer {
    background-color: #f5f5f5;
    padding: 1.5625rem 1.25rem;
    position: relative
  }
  
  @media (min-width:768px) {
    .o-footer {
      background-color: #fff;
      border-top: 1px solid #ccc;
      padding: 1.25rem 8rem;
    }
  
    .o-footer-inner {
      align-items: center;
      display: flex;
      flex-wrap: wrap;
      margin: 0 auto;
      max-width: 160rem;
      min-width: auto;
      row-gap: 1.25rem;
      width: 100%;
    }
  
    .o-footer-inner>:first-child {
      flex: 1
    }
  
    .o-footer-link-wrap {
      align-items: center;
      display: flex
    }
  }
  
  .o-footer-list {
    display: flex;
    flex-wrap: wrap
  }
  
  .o-footer-list li {
    line-height: 1
  }
  
  .o-footer-list li:first-child {
    margin-right: 1.5625rem
  }
  
  .o-footer-list li:nth-child(n+3) {
    margin-top: 1.875rem
  }
  
  .o-footer-list li:last-child {
    width: 100%
  }
  
  .o-footer-list a {
    padding-right: .625rem;
    position: relative
  }
  
  .o-footer-list a:after {
    border-right: 2px solid #ccc;
    border-top: 2px solid #ccc;
    content: "";
    height: 6px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 6px
  }
  
  @media (min-width:768px) {
    .o-footer-list {
      align-items: center;
      display: flex;
      flex-wrap: nowrap;
      margin-right: 1.5625rem
    }
  
    .o-footer-list li {
      white-space: nowrap
    }
  
    .o-footer-list li:nth-child(n+3) {
      margin-top: 0
    }
  
    .o-footer-list li:last-child {
      width: auto
    }
  
    .o-footer-list li:not(:last-child) {
      margin-right: 3.75rem
    }
  
    .o-footer-list a {
      font-size: 1.4rem;
      padding: 0
    }
  
    .o-footer-list a:after {
      content: none
    }
  }
  
  @media (any-hover:hover) {
    .o-footer-list a:hover {
      text-decoration: underline
    }
  }
  
  .o-footer-icon-list {
    align-items: center;
    column-gap: 2.1875rem;
    display: grid;
    grid-template-columns: 2.375rem 2.375rem 2.9375rem;
    justify-content: center;
    margin-top: 1.875rem
  }
  
  .o-footer-icon-list>li:first-child {
    padding-right: .3125rem
  }
  
  @media (min-width:768px) {
    .o-footer-icon-list {
      column-gap: .625rem;
      grid-template-columns: 1.8125rem 1.8125rem 2.125rem;
      justify-content: flex-start;
      margin-right: 1.875rem;
      margin-top: 0
    }
  }
  
  .o-footer-copy {
    font-family: Meiryo, Arial, Helvetica, Tahoma, sans-serif;
    font-size: .875rem;
    font-weight: 700;
    line-height: 1;
    margin-top: 1.875rem;
    text-align: center
  }
  
  @media (min-width:768px) {
    .o-footer-copy {
      margin-top: 0;
      text-align: left;
      font-size: 1.4rem;
    }
  }
  
  .a-go-top {
    height: 2.8125rem;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-100%);
    width: 2.8125rem
  }
  
  .a-go-top a {
    align-items: center;
    background-color: var(--color-main);
    color: #fff;
    display: flex;
    flex-direction: column;
    font-size: .75rem;
    height: 100%;
    justify-content: center;
    line-height: 1.2;
    transition: .3s;
    width: 100%
  }
  
  .a-go-top svg {
    height: .625rem;
    width: 1rem
  }
  
  @media (min-width:768px) {
    .a-go-top {
      height: 5rem;
      width: 5rem
    }
  
    .a-go-top svg {
      height: 1.125rem;
      width: 1.75rem
    }
  }
  
  @media (any-hover:hover) {
    .a-go-top a:hover {
      opacity: .7
    }
  }

/*-------------------------
 　検索フォーム 
-------------------------*/
.main {
  background-color: white !important;
}

form.search {
  width: 600px;
  margin: 0 auto;
  padding: 1.5em;
}

form.search h2 {
  color: #333333;
  background-color: #f2f2f2;
  font-size: 12pt;
  font-weight: bold;
  margin-bottom: 14px;
  padding: 0px;
}

form.search h2 span {
  display: block;
  padding: 12px;
  border-left: 8px solid #005bac;
  font-size: 1.25em;
}

form.search div.frame {
  border-radius: 10px;
  border: solid 1px lightgray;
}

form.search div.frame div.title {
  border-bottom: solid 1px lightgray;
  font-weight: bold;
}

form.search div.frame div.note {
  background-color: #f2f2f2;
}

form.search div.frame div {
  padding: 1em 1.5em;
}

form.search input[type='text'] {
  border-radius: 2px;
  border: solid 1px gray;
  padding: 4px;
  width: 400px;
}

form.search h3 {
  font-weight: bold;
}

form.search label {
  display: block;
}

form.search button {
  width: 200px;
  margin: 0 auto;
}

form.search div.message {
  border-radius: 10px;
  border: 0px;
  background-color: #ffcccc;
  padding: 1em 1.5em;
}
@media screen and (max-width: 970px){
  form.search{
    width: 100%;
  }
  form.search input[type='text']{
    width: 100%;
  }
}

 /*-------------------------
 　共通 
-------------------------*/

.tw-relative {
    position: relative
  }
  
  .tw-z-10 {
    z-index: 10
  }
  
  .tw-z-20 {
    z-index: 20
  }
  
  .tw-row-start-1 {
    grid-row-start: 1
  }
  
  .tw-row-start-2 {
    grid-row-start: 2
  }
  
  .tw-row-start-3 {
    grid-row-start: 3
  }
  
  .tw-row-end-2 {
    grid-row-end: 2
  }
  
  .tw-row-end-3 {
    grid-row-end: 3
  }
  
  .tw-row-end-4 {
    grid-row-end: 4
  }
  
  .tw-mx-auto {
    margin-left: auto;
    margin-right: auto
  }
  
  .tw-mt-10 {
    margin-top: 2.5rem
  }
  
  .tw-mt-12 {
    margin-top: 3rem
  }
  
  .tw-mt-14 {
    margin-top: 3.5rem
  }
  
  .tw-mt-16 {
    margin-top: 4rem
  }
  
  .tw-mt-2 {
    margin-top: .5rem
  }
  
  .tw-mt-20 {
    margin-top: 5rem
  }
  
  .tw-mt-3 {
    margin-top: .75rem
  }
  
  .tw-mt-4 {
    margin-top: 1rem
  }
  
  .tw-mt-5 {
    margin-top: 1.25rem
  }
  
  .tw-mt-6 {
    margin-top: 1.5rem
  }
  
  .tw-mt-7 {
    margin-top: 1.75rem
  }
  
  .tw-mt-8 {
    margin-top: 2rem
  }
  
  .tw-mt-9 {
    margin-top: 2.25rem
  }
  
  .tw-block {
    display: block
  }
  
  .tw-grid {
    display: grid
  }
  
  .tw-hidden {
    display: none
  }
  
  .tw-aspect-\[654\/388\] {
    aspect-ratio: 654/388
  }
  
  .tw-h-12 {
    height: 3rem
  }
  
  .tw-h-6 {
    height: 1.5rem
  }
  
  .tw-h-full {
    height: 100%
  }
  
  .tw-w-6 {
    width: 1.5rem
  }
  
  .tw-w-\[calc\(176\/16\*1rem\)\] {
    width: 11rem
  }
  
  .tw-w-\[calc\(285\/16\*1rem\)\] {
    width: 17.8125rem
  }
  
  .tw-max-w-3xl {
    max-width: 48rem
  }
  
  .tw-max-w-\[1200px\] {
    max-width: 1200px
  }
  
  .tw-max-w-\[1880px\] {
    max-width: 1880px
  }
  
  .tw-max-w-\[calc\(1200\/16\*1rem\)\] {
    max-width: 75rem
  }
  
  .tw-max-w-\[calc\(1920\/16\*1rem\)\] {
    max-width: 120rem
  }
  
  .tw-max-w-\[calc\(800\/16\*1rem\)\] {
    max-width: 50rem
  }
  
  .tw-grid-cols-\[1fr_auto\] {
    grid-template-columns: 1fr auto
  }
  
  .tw-items-center {
    align-items: center
  }
  
  .tw-justify-center {
    justify-content: center
  }
  
  .tw-gap-y-16 {
    row-gap: 4rem
  }
  
  .tw-break-keep {
    word-break: keep-all
  }
  
  .tw-rounded-\[calc\(5\/16\*1rem\)\] {
    border-radius: .3125rem
  }
  
  .tw-rounded-full {
    border-radius: 9999px
  }
  
  .tw-border {
    border-width: 1px
  }
  
  .tw-border-solid {
    border-style: solid
  }
  
  .tw-border-\[var\(--color-bule\)\] {
    border-color: var(--color-bule)
  }
  
  .tw-bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255/var(--tw-bg-opacity))
  }
  
  .tw-px-2 {
    padding-left: .5rem;
    padding-right: .5rem
  }
  
  .tw-px-3 {
    padding-left: .75rem;
    padding-right: .75rem
  }
  
  .tw-px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem
  }
  
  .tw-px-\[calc\(30\/16\*1rem\)\] {
    padding-left: 1.875rem;
    padding-right: 1.875rem
  }
  
  .tw-py-14 {
    padding-bottom: 3.5rem;
    padding-top: 3.5rem
  }
  
  .tw-pb-10 {
    padding-bottom: 2.5rem
  }
  
  .tw-pb-12 {
    padding-bottom: 3rem
  }
  
  .tw-pb-14 {
    padding-bottom: 3.5rem
  }
  
  .tw-pb-24 {
    padding-bottom: 6rem
  }
  
  .tw-pb-6 {
    padding-bottom: 1.5rem
  }
  
  .tw-pl-5 {
    padding-left: 1.25rem
  }
  
  .tw-pl-\[calc\(30\/16\*1rem\)\] {
    padding-left: 1.875rem
  }
  
  .tw-pr-\[calc\(30\/16\*1rem\)\] {
    padding-right: 1.875rem
  }
  
  .tw-pt-10 {
    padding-top: 2.5rem
  }
  
  .tw-pt-11 {
    padding-top: 2.75rem
  }
  
  .tw-pt-16 {
    padding-top: 4rem
  }
  
  .tw-pt-20 {
    padding-top: 5rem
  }
  
  .tw-pt-3 {
    padding-top: .75rem
  }
  
  .tw-pt-\[calc\(35\/16\*1rem\)\] {
    padding-top: 2.1875rem
  }
  
  .tw-pt-\[calc\(40\/16\*1rem\)\] {
    padding-top: 2.5rem
  }
  
  .tw-text-center {
    text-align: center
  }
  
  .tw-text-2xl\/normal {
    font-size: 1.5rem;
    line-height: 1.5
  }
  
  .tw-text-3xl\/normal {
    font-size: 1.875rem;
    line-height: 1.5
  }
  
  .tw-font-bold {
    font-weight: 700
  }
  
  .tw-leading-none {
    line-height: 1
  }
  
  .tw-tracking-\[0\.06em\] {
    letter-spacing: .06em
  }
  
  .tw-tracking-wide {
    letter-spacing: .025em
  }
  
  .\!tw-text-white {
    --tw-text-opacity: 1 !important;
    color: rgb(255 255 255/var(--tw-text-opacity)) !important
  }
  
  .tw-text-\[\#999\] {
    --tw-text-opacity: 1;
    color: rgb(153 153 153/var(--tw-text-opacity))
  }
  
  .tw-text-\[var\(--color-bule\)\] {
    color: var(--color-bule)
  }
  
  .tw-text-\[var\(--color-main\)\] {
    color: var(--color-main)
  }
  
  .tw-text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255/var(--tw-text-opacity))
  }
  
  .tw-shadow-\[0_6px_10px_0_rgba\(0\,0\,0\,0\.1\)\] {
    --tw-shadow: 0 6px 10px 0 #0000001a;
    --tw-shadow-colored: 0 6px 10px 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
  }
  
  .tw-duration-300 {
    transition-duration: .3s
  }
  
  .tw-ease-out {
    transition-timing-function: cubic-bezier(0, 0, .2, 1)
  }
  
  @keyframes splide-loading {
    0% {
      transform: rotate(0)
    }
  
    to {
      transform: rotate(1turn)
    }
  }

/*-------------------------
  パンくず
-------------------------*/  
  #cmnBreadcrumbNavi {
    background-color: #F2F2F2;
    padding: 11px 0;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  
  @media screen and (max-width: 970px) {
    #cmnBreadcrumbNavi.is-spHide {
      height: 0;
      padding: 0;
      border: none;
      overflow: hidden;
      opacity: 0;
    }
  }
  
  #cmnBreadcrumbNavi.has-fa {
    margin-top: 130px;
  }
  
  #cmnBreadcrumbNavi ul {
    font-size: 0;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: content-box;
    padding: 0 80px;
  }
  
  @media screen and (max-width: 970px) {
    #cmnBreadcrumbNavi ul {
      padding: 0 20px;
    }
  }
  
  @media screen and (min-width: 1361px) {
    #cmnBreadcrumbNavi ul {
      width: 83.33%;
      max-width: 1600px;
      min-width: 1200px;
    }
  }
  
  #cmnBreadcrumbNavi ul li {
    display: inline-block;
    padding-right: 40px;
    display: inline-block;
    position: relative;
  }
  
  #cmnBreadcrumbNavi ul li:last-of-type {
    padding-right: 0;
  }
  
  #cmnBreadcrumbNavi ul li a {
    font-size: 14px;
    color: #777;
    position: relative;
  }
  
  #cmnBreadcrumbNavi ul li span {
    font-size: 14px;
    color: #000;
    padding-right: 0;
  }
  
  #cmnBreadcrumbNavi ul li a:hover {
    text-decoration: underline;
  }
  
  #cmnBreadcrumbNavi ul li::after {
    content: "";
    background-image: url("/common/ver.7/img/header/cmn_ico_arrow01.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 7px;
    height: 12px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
  }
  
  #cmnBreadcrumbNavi ul li.is-current::after {
    display: none;
  }