@charset "UTF-8";
/* CSS Document */
#Main .block-quality-01 {margin: 5em 0 1px;}
#Main .block-quality-01 ul {display: flex;flex-wrap: wrap;justify-content: space-between;text-align: center;}
#Main .block-quality-01 ul li {width: 25%;}
#Main .block-quality-01 ul li a {color: #fff;font-size: 143.75%;padding: 0.8em 0 0.5em;background: #595654;position: relative;}
#Main .block-quality-01 ul li + li a::before {display: block;content: '';width: 1px;height: 100%;background: #fff;position: absolute;top: 0;left: 0;z-index: 1;pointer-events: none;}
#Main .block-quality-01 ul li a small {font-size: 50%;}
#Main .block-quality-02 {overflow: hidden;}
#Main .block-quality-02 + .block-quality-02 {margin-top: 5em;}
#Main .block-quality-02 .container {margin-top: -4.2em;padding-top: 4.2em;background: url(../img/common/bg02.webp);background-repeat: repeat;background-size: 300px 300px;}
#Main .block-quality-02 .container .detail {padding: 4em 6em;}
#Main .block-quality-02 .container .detail ul {display: flex;flex-wrap: wrap;justify-content: flex-start;margin: 0 -1.5em;}
#Main .block-quality-02 .container .detail ul li p:nth-of-type(1) {font-size: 112.5%;text-align: center;margin-top: 1.25em;}
#Main .block-quality-02 .container .detail ul li p:nth-of-type(2) {font-size: 87.5%;letter-spacing: 0.1em;margin-top: 0.75em;}
#Main .block-quality-02 .container .detail ul li p:nth-of-type(2) small {display: inline-block;font-size: 10px;letter-spacing: 0;}
#Main #security .detail {padding-bottom: 2em;}
#Main #security .detail ul:nth-child(1) {justify-content: center;}
#Main #security .detail ul:nth-child(1) li {width: calc(50% - 3.5em);margin: 0 1.75em 4em}
#Main #security .detail ul:nth-child(1) li:nth-child(1) figure figcaption {padding: 0;}
#Main #security .detail ul:nth-child(1) li:nth-child(1) p:nth-of-type(1) {margin-top: 2.5em;}
#Main #security .detail ul:nth-child(1) li:nth-child(1) p:nth-of-type(2) {margin-top: 1.5em;}
#Main #security .detail ul:nth-child(1) li:nth-child(3) {text-align: center;width: calc(75% - 3.5em);}
#Main #security .detail ul:nth-child(1) li:nth-child(3) figure {padding-bottom: 1.5em;}
#Main #security .detail ul:nth-child(1) li:nth-child(3) figure figcaption {padding: 0;}
#Main #security .detail ul:nth-child(2) {margin: 0 -1em;}
#Main #security .detail ul:nth-child(2) li {width: calc(25% - 2em);margin: 0 1em 1.5em;}
#Main #security .detail ul:nth-child(2) li p:nth-of-type(1) {font-size: 106.25%;white-space: nowrap;}
#Main #security .detail ul:nth-child(2) li:not(:nth-child(2)) p:nth-of-type(1) {margin-top: 2em;}
#Main #security .detail ul:nth-child(2) li:not(:nth-child(2)) p:nth-of-type(2) {margin-top: 1.5em;}
#Main #disaster .detail .box + .box {margin-top: 3em;}
#Main #disaster .detail .box h3 {color: #608597;font-size: 162.5%;text-align: center;}
#Main #disaster .detail .box > p:nth-of-type(1) {font-size: 112.5%;text-align: center;margin-top: 0.5em;}
#Main #disaster .detail .box > p:nth-of-type(2) {color: #fff;text-align: center;margin: 1.5em 0 3em;padding: 0.2em 0 0.1em;background: #848281;}
#Main #disaster .detail .box:nth-child(1) ul {justify-content: center;}
#Main #disaster .detail .box:nth-child(1) ul li {width: calc(50% - 7em);margin: 0 2em;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(1) figure {width: 80%;margin: 0 auto;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(1) figure figcaption {white-space: nowrap;line-height: 1.25;padding: 0;left: 100%;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(2) figure {width: 57%;margin: 0 auto;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) {display: flex;flex-wrap: wrap;justify-content: center;flex-direction: row-reverse;align-items: flex-start;width: calc(100% - 3em);padding: 3em 0;margin-top: 2em;border-top: 1px solid #bbb;border-bottom: 1px solid #bbb;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) p:nth-of-type(1) {color: #608597;font-size: 162.5%;text-align: center;width: 100%;margin: 0 0 1em;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure {width: 45%;max-width: 350px;margin-left: 1.75em;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption {position: static;padding: 0;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption span {display: block;white-space: nowrap;position: absolute;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption span:nth-child(1) {top: calc(100% + 0.5em);right: 34.5%;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption span:nth-child(2) {top: calc(100% + 0.5em);right: 0;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption span:nth-child(3) {left: calc(100% + 1em);bottom: 0;}
#Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) p:nth-of-type(2) {width: 50%;max-width: 340px;margin: 0;}
#Main #disaster .detail .box:nth-child(2) ul {margin: 0 -0.75em;}
#Main #disaster .detail .box:nth-child(2) ul li {width: calc(25% - 1.5em);margin: 0 0.75em;}
#Main #disaster .detail .box:nth-child(2) ul li:nth-child(-n+3) p:nth-of-type(1) {margin-top: 2em;}
#Main #disaster .detail .box:nth-child(2) ul li:nth-child(-n+3) p:nth-of-type(2) {margin-top: 1.5em;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child {display: flex;flex-wrap: wrap;justify-content: space-between;flex-direction: row-reverse;width: calc(100% - 1.5em);align-items: flex-start;margin-top: 4em;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child figure {width: 55%;max-width: 550px;padding-bottom: 2em;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child figure figcaption {padding: 0;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div {width: 40%;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div p:nth-of-type(1) {margin-top: 0;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div p:nth-of-type(3) {font-size: 75%;margin: 2em 0 0.75em;padding-bottom: 0.5em;border-bottom: 1px solid #888;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div table {}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div table tr th,
#Main #disaster .detail .box:nth-child(2) ul li:last-child div table tr td {font-size: 75%;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div table tr th {width: 11em;}
#Main #disaster .detail .box:nth-child(2) ul li:last-child div p:nth-of-type(4) {font-size: 10px;white-space: nowrap;margin-top: 4em;}
#Main #structure .detail .box + .box {margin-top: 2em;padding-top: 2em;border-top: 1px solid #bbb;}
#Main #structure .detail .box:nth-child(1) ul {justify-content: center;margin: 0 -3em;padding: 0 1.5em;}
#Main #structure .detail .box:nth-child(1) ul li {width: calc(50% - 6em);margin: 0 3em;}
#Main #structure .detail .box:nth-child(1) ul li figure {width: 60%;max-width: 220px;margin: 0 auto;}
#Main #structure .detail .box:nth-child(1) ul li:nth-child(1) figure figcaption {white-space: nowrap;line-height: 1.25;padding: 0;left: calc(100% + 1em);}
#Main #structure .detail .box:nth-child(1) ul li:nth-child(2) figure figcaption {white-space: nowrap;line-height: 1.25;padding: 0;left: calc(100% + 1em);}
#Main #structure .detail .box:nth-child(2) ul {margin: 0 -3em;padding: 0 1.5em;}
#Main #structure .detail .box:nth-child(2) ul li {display: flex;flex-wrap: wrap;justify-content: space-between;flex-direction: row-reverse;align-items: center;width: calc(100% - 6em);margin: 0 3em;}
#Main #structure .detail .box:nth-child(2) ul li figure {width: 68%;padding-bottom: 1em;}
#Main #structure .detail .box:nth-child(2) ul li div {width: 28%;}
#Main #structure .detail .box:nth-child(2) ul li div p:nth-of-type(1) {margin-top: 0;}
#Main #structure .detail .box:nth-child(3) ul {margin: 0 -2.5em;padding: 0 1.5em;}
#Main #structure .detail .box:nth-child(3) ul li {width: calc(50% - 5em);margin: 0 2.5em 3em;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(1) figure figcaption {padding: 0;position: static;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(1) figure figcaption span {position: absolute;bottom: 0;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(1) figure figcaption span:nth-child(1) {right: 0;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(1) figure figcaption span:nth-child(2) {right: 50%;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(2) figure figcaption {padding: 0;position: static;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(2) figure figcaption span {position: absolute;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(2) figure figcaption span:nth-child(1) {right: 0;bottom: 0;}
#Main #structure .detail .box:nth-child(3) ul li:nth-child(2) figure figcaption span:nth-child(2) {left: 0.75em;bottom: 0.5em;}
#Main #structure .detail .box:nth-child(3) ul li:last-child {display: flex;flex-wrap: wrap;justify-content: space-between;flex-direction: row-reverse;align-items: center;width: calc(100% - 6em);margin: 0 3em;}
#Main #structure .detail .box:nth-child(3) ul li:last-child figure {width: 62%;padding-bottom: 1em;}
#Main #structure .detail .box:nth-child(3) ul li:last-child div {width: 34%;}
#Main #structure .detail .box:nth-child(3) ul li:last-child div p:nth-of-type(1) {margin-top: 0;}
#Main #structure .detail .box:nth-child(4) ul {margin: 0 -0.75em;}
#Main #structure .detail .box:nth-child(4) ul li {width: calc(25% - 1.5em);margin: 0 0.75em 2em;}
#Main #structure .detail .box:nth-child(4) ul li:nth-child(1) figure figcaption {padding: 0;position: static;}
#Main #structure .detail .box:nth-child(4) ul li:nth-child(1) figure figcaption span {color: #fff;position: absolute;bottom: 0.5em;}
#Main #structure .detail .box:nth-child(4) ul li:nth-child(1) figure figcaption span:nth-child(1) {right: 0.5em;}
#Main #structure .detail .box:nth-child(4) ul li:nth-child(1) figure figcaption span:nth-child(2) {left: 0.5em;right: auto;}
#Main #structure .detail .box:nth-child(4) ul li:nth-child(3) figure figcaption {color: #fff;}
#Main #structure .detail .box:nth-child(4) ul li + li p:nth-of-type(1) {margin-top: 2em;}
#Main #structure .detail .box:nth-child(4) ul li + li p:nth-of-type(2) {margin-top: 1.7em;}
#Main #structure .detail .box:nth-child(5) {padding-top: 0;border-top: none;}
#Main #structure .detail .box:nth-child(5) > p {color: #fff;font-size: 200%;line-height: 1;padding: 0.5em 0.5em 0.35em;background: url(../img/common/bg02.webp);background-repeat: repeat;background-size: 300px 300px;position: relative;z-index: 1;}
#Main #structure .detail .box:nth-child(5) > p::after {display: block;content: '';width: 100%;height: 100%;background: #809dac;position: absolute;top: 0;left: 0;z-index: -1;mix-blend-mode: multiply;}
#Main #structure .detail .box:nth-child(5) > p small {font-size: 50%;}
#Main #structure .detail .box:nth-child(5) ul {justify-content: center;margin: 2.5em -3em 0;padding: 0 2.5em;}
#Main #structure .detail .box:nth-child(5) ul li {width: calc(50% - 6em);margin: 0 3em;}
#Main #structure .detail .box:nth-child(5) ul li p:nth-of-type(1) span {display: inline-block;position: relative;}
#Main #structure .detail .box:nth-child(5) ul li p:nth-of-type(1) span sup {font-size: 10px;line-height: 1;position: absolute;right: 0;bottom: 98%;}
#Main #structure .detail .box:nth-child(5) ul li:nth-child(1) figure figcaption {color: #fff;}
#Main #service .detail .box:nth-child(1) > img:nth-of-type(1) {width: 20%;max-width: 8em;margin: 0 auto;}
#Main #service .detail .box:nth-child(1) h3 {font-size: 118.75%;text-align: center;margin-top: 1.5em;}
#Main #service .detail .box:nth-child(1) h3 span {color: #933a47;text-align: center;}
#Main #service .detail .box:nth-child(1) p:nth-of-type(1) {font-size: 93.75%;text-align: center;line-height: 2;margin-top: 1em;}
#Main #service .detail .box:nth-child(1) div {margin-top: 3em;}
#Main #service .detail .box:nth-child(1) p:nth-of-type(2) {font-size: 10px;margin-top: 3em;}
#Main #service .detail .box:nth-child(2) {padding: 4em;margin-top: 5em;background: #fff;}
#Main #service .detail .box:nth-child(2) > img:nth-of-type(1) {width: 55%;max-width: 16em;margin: 0 auto;}
#Main #service .detail .box:nth-child(2) h3 {font-size: 125%;text-align: center;margin-top: 1.5em;}
#Main #service .detail .box:nth-child(2) p:nth-of-type(1) {font-size: 93.75%;line-height: 2;max-width: 750px;margin: 2em auto 0;}
#Main #service .detail .box:nth-child(2) div {margin-top: 1.5em;}
#Main #service .detail .box:nth-child(2) div figure {padding-bottom: 1em;}
#Main #service .detail .box:nth-child(2) div figure figcaption {padding: 0;}
#Main #service .detail .box:nth-child(2) > img:nth-of-type(2) {width: 80%;max-width: 20em;margin: 2em auto 0;}
#Main #service .detail .box:nth-child(2) p:nth-of-type(2) {font-size: 93.75%;line-height: 2;max-width: 750px;margin: 1em auto 0;}
#Main .block-common-note {padding-top: 4em;background: transparent;}
@media only screen and (min-width: 768px) and (max-width: 1350px) {
  #contentsWrap {font-size: 1.2vw;}
  #Main .block-quality-02 .container {margin-top: -4.7em;padding-top: 4.7em;}  
}
@media only screen and (max-width: 1100px) {}
@media only screen and (min-width: 768px) {}
@media only screen and (max-width: 767px) {
  #Main .block-quality-01 {margin: 3em 0 1px;}
  #Main .block-quality-01 ul li {width: 50%;}
  #Main .block-quality-01 ul li a {white-space: nowrap;}
  #Main .block-quality-01 ul li:nth-child(3) a::before {width: 100%;height: 1px;}
  #Main .block-quality-01 ul li:nth-child(4) a::after {display: block;content: '';width: 100%;height: 1px;background: #fff;position: absolute;top: 0;left: 0;}
  #Main .block-quality-01 ul li a small {font-size: 60%;margin-left: 0.5em;}
  #Main .block-quality-02 + .block-quality-02 {margin-top: 3em;}
  #Main .block-quality-02 .container .detail {padding: 5vw;}
  #Main .block-quality-02 .container .detail .scroller::after {width: 170%;background-color: rgba(0, 0, 0, 0.5);}
  #Main .block-quality-02 .container .detail .scroller > span {font-size: 10px;text-align: right;width: 170%;position: absolute;left: 0;bottom: 0;}
  #Main .block-quality-02 .container .detail .scroller figure img {width: 170%;}
  #Main .block-quality-02 .container .detail ul {margin: 0 !important;padding: 0 !important;}
  #Main .block-quality-02 .container .detail ul li {margin: 0 !important;}
  #Main .block-quality-02 .container .detail ul li + li {margin-top: 2em !important;}
  #Main .block-quality-02 .container .detail ul li p:nth-of-type(1) {font-size: 125% !important;margin-top: 1.25em !important;}
  #Main .block-quality-02 .container .detail ul li p:nth-of-type(2) {font-size: 100%;margin-top: 1em !important;}  
  #Main .detail ul li {width: 100% !important;}
  #Main #security .detail ul:nth-child(1) li:nth-child(2) figure {padding-bottom: 1em;background: #fff;}
  #Main #security .detail ul:nth-child(1) li:nth-child(3) {text-align: left;width: 100%;}
  #Main #security .detail ul:nth-child(2) {margin-top: 2em !important;}
  #Main #disaster .detail .box + .box {margin-top: 2em;}
  #Main #disaster .detail .box > p:nth-of-type(2) {margin: 1em 0 1.5em;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(1) figure {width: 100%;padding-bottom: 1.5em;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(1) figure figcaption {left: auto;right: 0;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(1) figure figcaption br {display: none;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(2) figure {width: 70%;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) {width: 100%;padding: 0 0 2em;margin-top: 2em;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) p:nth-of-type(1) {font-size: 137.5% !important;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure {width: 100%;max-width: 100%;margin-left: 0;padding-bottom: 2.5em;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption span {top: auto !important;bottom: 1.5em;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) figure figcaption span:nth-child(3) {left: auto;right: 0;}
  #Main #disaster .detail .box:nth-child(1) ul li:nth-child(3) p:nth-of-type(2) {width: 100%;max-width: 100%;}
  #Main #disaster .detail .box:nth-child(2) ul li {width: 100%;}
  #Main #disaster .detail .box:nth-child(2) ul li:last-child {flex-direction: column;width: 100%;}
  #Main #disaster .detail .box:nth-child(2) ul li:last-child figure {width: 100%;max-width: 100%;}
  #Main #disaster .detail .box:nth-child(2) ul li:last-child div {width: 100%;}
  #Main #disaster .detail .box:nth-child(2) ul li:last-child div p:nth-of-type(3) {font-size: 100%;}
  #Main #disaster .detail .box:nth-child(2) ul li:last-child div table tr th,
  #Main #disaster .detail .box:nth-child(2) ul li:last-child div table tr td {font-size: 87.5%;}
  #Main #disaster .detail .box:nth-child(2) ul li:last-child div p:nth-of-type(4) {white-space: normal;margin-top: 2em;}
  #Main #structure .detail .box:nth-child(2) ul li {flex-direction: column;}
  #Main #structure .detail .box:nth-child(2) ul li figure {width: 100%;padding-bottom: 2em;}
  #Main #structure .detail .box:nth-child(2) ul li div {width: 100%;}  
  #Main #structure .detail .box:nth-child(3) ul li:last-child {flex-direction: column;}
  #Main #structure .detail .box:nth-child(3) ul li figure {width: 100%;padding-bottom: 2em;}
  #Main #structure .detail .box:nth-child(3) ul li div {width: 100%;}
  #Main #structure .detail .box:nth-child(3) ul li:last-child div,
  #Main #structure .detail .box:nth-child(3) ul li:last-child figure {width: 100%;}
  #Main #structure .detail .box:nth-child(5) > p small {margin-left: 1em;}
  #Main #structure .detail .box:nth-child(5) ul {margin-top: 1.5em !important;}
  #Main #service .detail .box:nth-child(1) h3 {font-size: 125%;}
  #Main #service .detail .box:nth-child(1) p:nth-of-type(1) {font-size: 100%;text-align: left;line-height: 1.5;}
  #Main #service .detail .box:nth-child(1) div {margin-top: 1.5em;}
  #Main #service .detail .box:nth-child(2) {padding: 5vw;margin-top: 2em;}
  #Main #service .detail .box:nth-child(2) div {padding-bottom: 1.5em;}
  #Main #service .detail .box:nth-child(2) p:nth-of-type(1) {font-size: 100%;line-height: 1.5;margin-top: 1em;}
  #Main #service .detail .box:nth-child(2) p:nth-of-type(2) {font-size: 100%;line-height: 1.5;}
  #Main .block-common-note {padding-top: 2em;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}