@charset "UTF-8";
@keyframes rotate-left {0% {transform: rotate(360deg);}100% {transform: rotate(0deg);}}
@keyframes rotate-right {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);}}
img:not(.figlio) {display: block;width: 100%;height: auto;}
figure[data-caps] {position: relative;}
figure[data-caps]::after {content: attr(data-caps)"";position: absolute;bottom: 0;right: 0;font-size: 10px;line-height: 1;color: #fff;padding: 1em;z-index: 3;}
figure[data-caps].invert::after {color: #333;}
a.venogallery {position: relative;}
a.venogallery::after {position: absolute;bottom: 0;right: 0;margin: 0; width: 2em;height: 2em;background: rgba(255,255,255,0.5) url("../img/common/icon_search.svg") no-repeat 55% 55%;background-size: 50% auto;content: "";filter: invert(1);}
.fadeIn.observe {position: relative;opacity: 0;transform: translateY(1%);-webkit-backface-visibility: hidden;backface-visibility: hidden;will-change: transform;overflow: hidden;}
.fadeIn.staging {opacity: 1;transform: translateY(0);transition: transform ease-in-out 1000ms 200ms,opacity ease-out 600ms 200ms;}
.appear.observe {position: relative;opacity: 0;-webkit-backface-visibility: hidden;backface-visibility: hidden;will-change: transform;}
.appear.staging {opacity: 1;transition: opacity ease-out 600ms 200ms;}
.container {max-width: 1160px;width: calc(100% - 4em);margin-left: auto;margin-right: auto;box-sizing: border-box;}
.grid-list {display: flex;align-items: stretch;flex-direction: row;flex-wrap: wrap;}
.tbl-style-01, .tbl-style-02 {width: 100%;border-collapse: separate;border-spacing: 1px;background-color: #ddd;}
.tbl-style-01 tr th, .tbl-style-02 tr th {border-top: 0 none transparent;border-right: 0 none transparent;border-left: 0 none transparent;border-bottom: 1px solid #fff;padding: 1em;text-align: center;vertical-align: middle;font-weight: 700;color: #333333;}
.tbl-style-01 tr td, .tbl-style-02 tr td {border-top: 0 none transparent;border-right: 0 none transparent;border-left: 0 none transparent;border-bottom: 1px solid #f6f6f6;background-color: #fff;padding: 1em;font-weight: 500;text-align: center;}
.tbl-style-01 thead th, .tbl-style-02 thead th {text-align: center;background-color: #678b9c;width: 10em;color: #fff;}
.loader {position: fixed;top: calc(50% - 32px);left: calc(50% - 32px);width: 64px;height: 64px;z-index: -2;}
.loader div {position: absolute;top: 0;left: 0;width: 100%;height: 100%;border-radius: 50%;box-sizing: border-box;opacity: .8;}
.one {border-top: 1px solid #8FB259;animation: rotate-left 1s linear infinite;}
.two {border-right: 1px solid #CCCC52;animation: rotate-right 1s linear infinite;}
.three {border-bottom: 1px solid #FFD933;animation: rotate-right 1s linear infinite;}
.four {border-left: 1px solid #FF7F00;animation: rotate-right 1s linear infinite;}
.grad {display: inline-block;background: rgb(118,68,125);background: linear-gradient(90deg, rgba(118,68,125,1) 0%, rgba(123,149,188,1) 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}
.lead span {display: inline-block;white-space: nowrap;}
.typeWriter > span {opacity: 0;}
.typeWriter.staging > span:nth-child(1) {transition: opacity ease-in 1000ms 50ms;}
.typeWriter.staging > span:nth-child(2) {transition: opacity ease-in 1000ms 100ms;}
.typeWriter.staging > span:nth-child(3) {transition: opacity ease-in 1000ms 150ms;}
.typeWriter.staging > span:nth-child(4) {transition: opacity ease-in 1000ms 200ms;}
.typeWriter.staging > span:nth-child(5) {transition: opacity ease-in 1000ms 250ms;}
.typeWriter.staging > span:nth-child(6) {transition: opacity ease-in 1000ms 300ms;}
.typeWriter.staging > span:nth-child(7) {transition: opacity ease-in 1000ms 350ms;}
.typeWriter.staging > span:nth-child(8) {transition: opacity ease-in 1000ms 400ms;}
.typeWriter.staging > span:nth-child(9) {transition: opacity ease-in 1000ms 450ms;}
.typeWriter.staging > span:nth-child(10) {transition: opacity ease-in 1000ms 500ms;}
.typeWriter.staging > span:nth-child(11) {transition: opacity ease-in 1000ms 550ms;}
.typeWriter.staging > span:nth-child(12) {transition: opacity ease-in 1000ms 600ms;}
.typeWriter.staging > span:nth-child(13) {transition: opacity ease-in 1000ms 650ms;}
.typeWriter.staging > span:nth-child(14) {transition: opacity ease-in 1000ms 700ms;}
.typeWriter.staging > span:nth-child(15) {transition: opacity ease-in 1000ms 750ms;}
.typeWriter.staging > span:nth-child(16) {transition: opacity ease-in 1000ms 800ms;}
.typeWriter.staging > span:nth-child(17) {transition: opacity ease-in 1000ms 850ms;}
.typeWriter.staging > span:nth-child(18) {transition: opacity ease-in 1000ms 900ms;}
.typeWriter.staging > span:nth-child(19) {transition: opacity ease-in 1000ms 950ms;}
.typeWriter.staging > span:nth-child(20) {transition: opacity ease-in 1000ms 1000ms;}
.typeWriter.staging > span:nth-child(21) {transition: opacity ease-in 1000ms 1050ms;}
.typeWriter.staging > span:nth-child(22) {transition: opacity ease-in 1000ms 1100ms;}
.typeWriter.staging > span:nth-child(23) {transition: opacity ease-in 1000ms 1150ms;}
.typeWriter.staging > span:nth-child(24) {transition: opacity ease-in 1000ms 1200ms;}
.typeWriter.staging > span:nth-child(25) {transition: opacity ease-in 1000ms 1250ms;}
.typeWriter.staging > span:nth-child(26) {transition: opacity ease-in 1000ms 1300ms;}
.typeWriter.staging > span:nth-child(27) {transition: opacity ease-in 1000ms 1350ms;}
.typeWriter.staging > span:nth-child(28) {transition: opacity ease-in 1000ms 1400ms;}
.typeWriter.staging > span:nth-child(29) {transition: opacity ease-in 1000ms 1450ms;}
.typeWriter.staging > span:nth-child(30) {transition: opacity ease-in 1000ms 1500ms;}
.typeWriter.staging > span:nth-child(31) {transition: opacity ease-in 1000ms 1550ms;}
.typeWriter.staging > span:nth-child(32) {transition: opacity ease-in 1000ms 1600ms;}
.typeWriter.staging > span:nth-child(33) {transition: opacity ease-in 1000ms 1650ms;}
.typeWriter.staging > span:nth-child(34) {transition: opacity ease-in 1000ms 1700ms;}
.typeWriter.staging > span:nth-child(35) {transition: opacity ease-in 1000ms 1750ms;}
.typeWriter.staging > span:nth-child(36) {transition: opacity ease-in 1000ms 1800ms;}
.typeWriter.staging > span:nth-child(37) {transition: opacity ease-in 1000ms 1850ms;}
.typeWriter.staging > span:nth-child(38) {transition: opacity ease-in 1000ms 1900ms;}
.typeWriter.staging > span:nth-child(39) {transition: opacity ease-in 1000ms 1950ms;}
.typeWriter.staging > span:nth-child(40) {transition: opacity ease-in 1000ms 2000ms;}
.typeWriter.staging > span {opacity: 1;transform: translateY(0);-webkit-backface-visibility: hidden;backface-visibility: hidden;will-change: transform;}

#Contents {background-color: #fff;}
/* -----
  * Pagetop
-------------------------------------- */
#Pagetop p a {font-size: 87.5%;background-color: var(--color-01);}
#Pagetop p a img {max-width: 49px;margin: 0 auto;}
/* -----
/*    Bread
  -------------------------------------- */
#Breadcrumb {position: relative;border-top: 1px solid rgb(0 62 89 / 15%);border-bottom: 1px solid rgb(0 62 89 / 15%);background-color: #fff;font-size: 75%;}
#Breadcrumb ul {overflow: hidden;}
#Breadcrumb ul li {position: relative;float: left;margin: 0;padding: 1em;overflow: hidden;line-height: 1;white-space: nowrap;text-overflow: ellipsis;}
#Breadcrumb ul.col-05-list li:nth-child(5),
#Breadcrumb ul.col-07-list li:nth-child(7) {max-width: 12em;}
#Breadcrumb ul.col-07-list li:nth-child(3),
#Breadcrumb ul.col-07-list li:nth-child(5) {max-width: 3.5em;}
#Breadcrumb ul li a {display: block;overflow: hidden;white-space: nowrap;text-decoration: none;text-overflow: ellipsis;color: #4d5357;}
#Breadcrumb ul li a svg {width: 1em;height: auto;fill: rgba(77, 83, 87, 0.5);}
#Breadcrumb ul li.separator {height: 1em;padding: 1em 0.5em;}
#Breadcrumb ul li.separator::before {position: absolute;top: 50%;right: 0.5em;z-index: 2;display: block;content: "";border-right: 1px solid rgb(0 62 89 / 20%);width: 1px;height: 50%;transform: skew(-25deg);}
#Breadcrumb ul li.separator::after {position: absolute;bottom: 50%;right: 0.5em;z-index: 2;display: block;content: "";border-right: 1px solid rgb(0 62 89 / 20%);width: 1px;height: 50%;transform: skew(25deg);}
#Breadcrumb ul li span,
#Breadcrumb ul li .icon-angle-right {display: none;}
/* -----
    * Footer
-------------------------------------- */
.pageCaption {position: relative;background-color: #fff;padding: 1.5em 1em;border-bottom: 1px solid rgba(145, 145, 145,0.2);}
.pageCaption p {font-size: 62.5%;line-height: 1.5;margin: 0;}
#Colophon {position: relative;}
#Colophon h3 img {filter: invert(1);width: auto;height: 2.4em;}
#Colophon h3 + p {margin: 1.5em 0;font-size: 81.25%;}
#Colophon h4 {position: relative;margin-bottom: 1.375em;font-size: 87.5%;line-height: 1;color: var(--color-01);}
#Colophon h4::after {content: "";position: absolute;bottom: 0.15em;left: 6.5em;right: 0;height: 1px;background-color: #888;}
#Colophon .sns {display: flex;gap: 0.5em;}
#Colophon .sns img {width: auto;height: 1.5em;}
#Colophon .column {width: calc(100% - 6em);margin: 5em auto 4em;box-sizing: border-box;}
#Colophon .column-list ul {margin: 0;height: auto!important;break-inside: avoid;}
#Colophon .column-list li {margin: 0.25em 0;}
#Colophon .column-list li a {font-size: 81.25%;text-decoration: none;color: var(--color-01);}
#Colophon .copyright {padding: 1em 4em;border-top: 1px solid var(--color-01);font-size: 75%;letter-spacing: 0.1em;line-height: 1.5;}
#Colophon .copyright span {white-space: nowrap;display: inline-block;}
/* =====
* LAYOUT :: PC
=================================================================== */
@media only screen and (min-width: 769px) {
  .cf:after,
  .cf::after {content: "";display: table;clear: both;}
  .cf > .left {float: left;}
  .cf > .right {float: right;}
  .anchor {margin-top: -5em;padding-top: 5em;}
  /* -----
  /*    Footer
    -------------------------------------- */
  #Contents .pageCaption .container {padding: 0;}

  #Colophon .column {display: flex;justify-content: space-between;}
  #Colophon .column > div:nth-child(2) {width: calc(100% - 26em);max-width: 40em;}
  #Colophon .column-list {column-count: 3;}
  #Colophon .column-list li a[href*="privacy"] {position: absolute;bottom: 1em;right: 3.5em;font-size: 75%;}
}
@media only screen and (min-width: 769px) and (max-width: 1224px) {}
/* =====
* LAYOUT :: SP
=================================================================== */
@media only screen and (max-width: 768px) {
  .cf > .left, .cf > .right {float: none;}
  .anchor {margin-top: -4em;padding-top: 4em;}
  .tbl-style-01 {display: block;border-top: 3px solid #eaf1f3;background-color: transparent;}
  .tbl-style-01 tr {display: block;border-bottom: 3px solid #eaf1f3;}
  .tbl-style-01 thead {display: none;}
  .tbl-style-01 tbody {display: block;}
  .tbl-style-01 tr th {display: block;font-weight: 700;text-align: center;padding: 0;background-color: transparent;}
  .tbl-style-01 tr td {display: block;position: relative;min-height: 1.5em;border-bottom: 1px solid #ddd;background-color: #fff;padding: 1em;width: auto;text-align: right;}
  .tbl-style-01 tr td:first-child {text-align: left;background-color: #678b9c;color: #fff;}
  .tbl-style-01 tr td:last-child {border-bottom: 0 none transparent;}
  .tbl-style-01 tr td::before {content: attr(aria-label);font-weight: 700;display: block;position: absolute;top: 1em;left: 1em;}
  .tbl-style-01 tr td:nth-child(2)::before {color: #333;}
  .tbl-style-01 tr td:nth-child(3)::before {color: #333;}
  /* -----
  /*    Footer
    -------------------------------------- */
  #Colophon .column-list {column-count: 2;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 480px) {}
/* =====
* LAYOUT :: 改行調整
=================================================================== */
#Contents br.sp, #Contents br.pc {display: none;}
@media only screen and (min-width: 769px) {#Contents br.pc {display: block;}}
@media only screen and (max-width: 768px) {#Contents br.sp {display: block;}}

