@charset "UTF-8";
/* CSS Document */

/* =====
 * LAYOUT :: ALL DEVICE
=================================================================== */
.block-common-mv p {padding-bottom: 1.25em;}
.block-index-02 {padding: 3em 0 7em;position: relative;z-index: 4;}
.block-index-02::after {display: block;content: '';width: 100%;height: 35%;background: var(--codate-grad4);position: absolute;left: 0;bottom: 0;}
.block-index-02 .container {display: flex;flex-wrap: wrap;justify-content: space-between;width: 90%;max-width: 1100px;margin: 3em auto 0;position: relative;z-index: 1;}
.block-index-02 .container div {width: 35%;}
.block-index-02 .container div p {font-size: 87.5%;line-height: 1.7;margin-top: 2em;}
.block-index-02 .container div figure {margin-top: 3em;}
.block-index-02 .container > figure {width: 57%;max-width: 625px;}
.block-index-02 .nav-style-01 ul li:nth-child(1) a span {color: var(--codate-color2);}
.block-index-02 .nav-style-01 ul li:nth-child(2) a span {color: #15847f;}
.block-index-02 .nav-style-01 ul li:nth-child(2) a span svg {color: #15847f;}
.block-index-02 .nav-style-01 ul li:nth-child(3) a span {color: #7066a5;}
.block-index-02 .nav-style-01 ul li:nth-child(3) a span svg {color: #7066a5;}
.block-index-03 .container:nth-child(1) > div {width: 90%;max-width: 1100px;margin: 0 auto;padding-top: 20em;position: relative;}
.block-index-03 .container:nth-child(1) {border-bottom: 0.7em solid;}
.block-index-03 .container:nth-child(1) .txt {width: 55%;max-width: 600px;padding: 2.5em 5em 7em;background: #fff;border-radius: 0.4em 0.4em 0 0;box-sizing: border-box;position: relative;z-index: 1;}
.block-index-03 .container:nth-child(1) .txt h4 {color: var(--codate-color2);font-size: 156.25%;font-weight: bold;}
.block-index-03 .container:nth-child(1) .txt p {font-size: 87.5%;margin: 1.5em 0 0;}
.block-index-03 .container:nth-child(1) .txt button {color: #fff;font-weight: bold;position: absolute;left: 0;right: 0;bottom: 0;}
.block-index-03 .container:nth-child(1) .txt button::after {font-size: 112.5%;}
.block-index-03 .container:nth-child(2) {max-height: 0;overflow: hidden;transition: max-height 0.6s ease-in-out;}
.block-index-03 .container:nth-child(2) > div {width: calc(100% - 2.8em);max-width: 1100px;margin: 0.7em auto 0;}
.block-index-03 .container:nth-child(2) .txt {margin: 0 auto;padding: 2.5em 2.5em 2.5em 4.5em;box-sizing: border-box;border-radius: 0.4em;background: #fff;}
.block-index-03 .container:nth-child(2) .txt + .txt {margin-top: 2em;}
.block-index-03 .container:nth-child(2) .txt > div:nth-child(2) div p:not(.ttl-style-03):not(.note) {font-size: 87.5%;line-height: 1.7;margin: 1em 0 0;}
.block-index-03 .container:nth-child(2) .txt .note {font-size: 87.5%;line-height: 1.7;margin: 1em 0 0;}
.block-index-03 .container:nth-child(2) .txt .note strong {color: var(--codate-color2);font-weight: bold;}
.block-index-03 .container:nth-child(2) .txt .note small {display: block;font-weight: normal;}
.block-index-03 .container:nth-child(2) .accordion-02-close {text-align: center;margin-top: 0;padding: 0.6em 0;width: 100%;cursor: pointer;position: relative;z-index: 1;}
.block-index-03 .container:nth-child(2) .accordion-02-close span {display: inline-block;color: #fff;font-size: 87.5%;font-weight: bold;letter-spacing: 0.1em;position: relative;}
.block-index-03 .container:nth-child(2) .accordion-02-close span::after {display: block;content: '';width: 0.8em;height: 0.8em;background: url(../../../assets/img/common/icon_arrow.svg) no-repeat center/contain;position: absolute;top: 52%;left: calc(100% + 1em);transform: translateY(-50%) rotate(-90deg);filter: invert(1);}
.block-index-03 #quality-01 .container:nth-child(1) {border-color: var(--codate-color2);background: url("../img/img_10.webp") no-repeat center/cover;position: relative;z-index: 3;}
.block-index-03 #quality-01 .container:nth-child(1) .txt {margin: 0 0 0 auto;}
.block-index-03 #quality-01 .container:nth-child(1) .txt button {background: var(--codate-color2);}
.block-index-03 #quality-01 .container:nth-child(2) {background: var(--codate-color2);}
.block-index-03 #quality-01 .container:nth-child(2) .txt .ttl-style-02::before {background: linear-gradient(to bottom,#0c6698,#2583b8);}
.block-index-03 #quality-01 .container:nth-child(2) .txt .ttl-style-02 h5 {color: var(--codate-color2);}
.block-index-03 #quality-01 .container:nth-child(2) .txt .note {font-weight: bold;}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) {display: flex;flex-wrap: wrap;justify-content: space-between;margin-top: 2em;}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) div {width: 55%;}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) div p:nth-of-type(3) {margin: 1.5em 0 0.5em;}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) div figure {max-width: 543px;}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) > figure {width: 40%;max-width: 394px;}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) .ttl-style-03 {color: var(--codate-color2);}
.block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) .ttl-style-03::after {background: var(--codate-color2);}
.block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) {display: flex;flex-wrap: wrap;justify-content: space-between;margin-top: 2em;}
.block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div:nth-child(1) {width: 55%;max-width: 543px;}
.block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div:nth-child(1) p {white-space: nowrap;margin-top: 1.5em;}
.block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div:nth-child(2) {width: 40%;max-width: 394px;}

.block-index-03 #quality-02 .container:nth-child(1) {border-color: #15847f;background: url("../img/img_20.webp") no-repeat center/cover;position: relative;z-index: 2;}
.block-index-03 #quality-02 .container:nth-child(1) .txt h4 {color: #15847f;}
.block-index-03 #quality-02 .container:nth-child(1) .txt button {background: #15847f;}
.block-index-03 #quality-02 .container:nth-child(2) .txt .note strong {color: #15847f;}
.block-index-03 #quality-02 .container:nth-child(2) {background: #15847f;}
.block-index-03 #quality-02 .container:nth-child(2) > div {display: flex;flex-wrap: wrap;justify-content: space-between;}
.block-index-03 #quality-02 .container:nth-child(2) > div .txt {width: calc(50% - 1em);margin: 0 0 2em;}
.block-index-03 #quality-02 .container:nth-child(2) > div .txt:nth-child(4),
.block-index-03 #quality-02 .container:nth-child(2) > div .txt:nth-child(3) {margin-bottom: 0;}
.block-index-03 #quality-02 .container:nth-child(2) > div .txt:nth-child(4) {background: url("../img/img_24.webp") no-repeat center/cover;}
.block-index-03 #quality-02 .container:nth-child(2) .txt .ttl-style-02::before {background: linear-gradient(to bottom,#009188,#00bcba);}
.block-index-03 #quality-02 .container:nth-child(2) .txt .ttl-style-02 h5 {color: #15847f;}
.block-index-03 #quality-02 .container:nth-child(2) .txt > div:nth-child(2) figure {margin-top: 2em;}
.block-index-03 #quality-02 .container:nth-child(2) .txt > div:nth-child(2) .ttl-style-03 {color: #15847f;}
.block-index-03 #quality-02 .container:nth-child(2) .txt > div:nth-child(2) .ttl-style-03::after {background: #15847f;}
.block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) p:nth-of-type(1),
.block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) p:nth-of-type(1) {color: #fff;font-weight: bold;text-align: center;border-radius: 1.5em;padding: 0.2em 0.15em;margin: 1.25em 0 1em;background: linear-gradient(to right,#009188,#00bcba)}
.block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) p:nth-of-type(3) {margin-bottom: 2em;}
.block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) ul {margin: 0;padding: 0 1em;}
.block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) ul li {display: inline-block;font-size: 87.5%;font-weight: bold;margin: 0 1em 0 0;}
.block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) ul li::before {content: '●';color: #15847f;margin-right: 0.5em;}

.block-index-03 #quality-03 .container:nth-child(1) {border-color: #7066a5;background: url("../img/img_30.webp") no-repeat center/cover;position: relative;z-index: 1;}
.block-index-03 #quality-03 .container:nth-child(1) .txt h4 {color: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(1) .txt {margin: 0 0 0 auto;}
.block-index-03 #quality-03 .container:nth-child(1) .txt button {background: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(2) {background: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(2) .txt {background: #f5f5f5;}
.block-index-03 #quality-03 .container:nth-child(2) .txt .ttl-style-02::before {background: linear-gradient(to bottom,#5f58b3,#938dd6);}
.block-index-03 #quality-03 .container:nth-child(2) .txt .ttl-style-02 h5 {color: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(2) .txt .ttl-style-03 {color: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(2) .txt .ttl-style-03::after {background: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(2) .txt .note strong {color: #7066a5;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) {display: flex;flex-wrap: wrap;justify-content: space-between;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div > div div p {margin: 0;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) {display: flex;flex-wrap: wrap;justify-content: space-between;width: 65%;position: relative;border-radius: 0.4em;overflow: hidden;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div {width: 50%;box-sizing: border-box;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div:nth-child(1){background: #666c70;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div:nth-child(2) {background: var(--codate-grad5);}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div:nth-child(2)::before {display: block;content: '';width: 1px;height: 100%;background: #fff;position: absolute;top: 0;left: 50%;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div div {color: #fff;padding: 1em 1.5em;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div div p:nth-of-type(1) {font-size: 100%;font-weight: bold;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div div p:nth-of-type(2) {font-size: 87.5%;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) {width: 31%;max-width: 306px;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) div {padding: 1em 0 0;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) div p:nth-of-type(1) {color: #7066a5;font-size: 100%;font-weight: bold;margin: 0;}
.block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) div p:nth-of-type(2) {font-size: 87.5%;margin: 0;}
.block-index-03 #quality-03 .container:nth-child(2) .txt + .txt {padding-bottom: 1em;}
.block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul {display: flex;flex-wrap: wrap;justify-content: flex-start;margin: 2em -1em 0;}
.block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li {width: calc(33.33% - 2em);margin: 0 1em 2em;}
.block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li figure {max-width: 306px;}
.block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li p:nth-of-type(1) {color: #7066a5;font-weight: bold;margin-top: 0.5em;}
.block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li p:nth-of-type(2) {font-size: 87.5%;margin-top: 0.5em;}
/* =====
* LAYOUT :: PC
=================================================================== */
@media only screen and (max-width: 1450px) {
  .block-index-02 .ttl-style-01::before {font-size: 225%;}
  .block-index-02 .nav-style-01 ul li a span {font-size: 100%;}
  .block-index-03 .container:nth-child(2) .txt + .txt {margin-top: 1.4em;}
  .block-index-03 #quality-02 .container:nth-child(2) > div .txt {width: calc(50% - 0.7em);margin: 0 0 1.4em;}
}
@media only screen and (min-width: 769px) and (max-width: 1300px) {
  .nav-style-01 {max-width: 46em !important;}
  .block-index-02 .nav-style-01 ul {max-width: 44em;}
  .block-index-02 .nav-style-01 ul::before,
  .block-index-02 .nav-style-01 ul::after {display: none;}
  .block-index-02 .nav-style-01 ul li {width: auto;}
  .block-index-02 .nav-style-01 ul li a {padding: 1em 0.5em 1em 0;}
  .block-index-02 .nav-style-01 ul li + li a::before {display: block;}
  .block-index-02 .nav-style-01 ul li a span {font-size: 87.5%;width: 12em;}
  .block-index-03 .container:nth-child(1) .txt {width: 75%;padding: 1.5em 3em 6em;}
}
@media only screen and (max-width: 1200px) {
  .block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div:nth-child(1) p {white-space: wrap;}
}
@media only screen and (min-width: 1025px) {}
/* =====
* LAYOUT :: TAB
=================================================================== */
@media only screen and (max-width: 1024px) {}
@media only screen and (min-width: 769px) {
  .block-index-02 .nav-style-01 {max-width: 750px;}
}
/* =====
* LAYOUT :: SP
=================================================================== */
@media only screen and (max-width: 768px) {
  .block-index-01 figure {height: 16em;}
  .block-index-01 figure img {height: 100%;object-fit: cover;}  
  .block-index-02 {padding: 2em 0 5em;}
  .block-index-02::after {height: 24%;}
  .block-index-02 .ttl-style-01::before {font-size: 200%;}
  .block-index-02 .container {flex-direction: column-reverse;margin-top: 2em;}
  .block-index-02 .container div {width: 100%;margin-top: 2em;}
  .block-index-02 .container div p {font-size: 100%;}
  .block-index-02 .container div p:nth-child(1) {margin-top: 0;}
  .block-index-02 .container div p + p {margin-top: 1em;}
  .block-index-02 .container div figure {margin-top: 2em;}  
  .block-index-02 .container > figure {width: 100%;max-width: 100%;}
  .block-index-03 .container:nth-child(1) > div {padding-top: 15em;}
  .block-index-03 .container:nth-child(1) .txt {width: 100%;padding: 1em 5vw 4em;}
  .block-index-03 .container:nth-child(1) .txt h4 {font-size: 137.5%;}
  .block-index-03 .container:nth-child(1) .txt p {font-size: 100%;margin-top: 0.5em;}
  .block-index-03 .container:nth-child(2) > div {width: 90%;margin: 5vw auto 0;}
  .block-index-03 .container:nth-child(2) .txt {padding: 5vw;}
  .block-index-03 .container:nth-child(2) .txt .note {font-size: 100%;}
  .block-index-03 .container:nth-child(2) .txt > div:nth-child(2) div p:not(.ttl-style-03):not(.note) {font-size: 100%;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) {margin-top: 1.5em;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) div {width: 100%;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt > div:nth-child(2) div p:nth-of-type(3) {margin-top: 1em;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > figure {width: 100%;margin-top: 1.5em;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) {margin-top: 1.5em;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div {width: 100% !important;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div:nth-child(2) {margin-top: 1.5em;padding-top: 23em;border-radius: 0.4em;position: relative;overflow: hidden;}
  .block-index-03 #quality-01 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) div:nth-child(2) img {position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
  .block-index-03 #quality-02 .container:nth-child(2) > div .txt {width: 100%;}
  .block-index-03 #quality-02 .container:nth-child(2) > div .txt:nth-child(4) {display: none;height: 20em;margin-top: 1.5em;}
  .block-index-03 #quality-02 .container:nth-child(2) .txt > div:nth-child(2) figure {margin-top: 1.5em;}
  .block-index-03 #quality-02 .container:nth-child(2) .txt > div:nth-child(2) .ttl-style-03,
  .block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) p:nth-of-type(1),
  .block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) p:nth-of-type(1) {font-size: 112.5%;}
  .block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) p:nth-of-type(3) {margin-bottom: 1em;}
  .block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) ul {padding: 0;}
  .block-index-03 #quality-02 .container:nth-child(2) .txt:nth-child(2) > div:nth-child(2) ul li {font-size: 100%;width: 100%;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) {margin-top: 1.5em;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div {width: 100% !important;border-radius: 0;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div {width: 100% !important;border-radius: 0.4em;overflow: hidden;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div:nth-child(2) {margin-top: 1.5em;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div:nth-child(2)::before {display: none;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div div p:nth-of-type(1) {font-size: 112.5%;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(1) > div div p:nth-of-type(2) {font-size: 100%;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) {max-width: 100%;margin-top: 1.5em;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) div p:nth-of-type(1) {font-size: 112.5%;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt:nth-child(1) > div:nth-child(2) > div:nth-child(2) div p:nth-of-type(2) {font-size: 100%;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul {justify-content: space-between;margin: 1.5em 0 0;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li {width: 48%;margin: 0 0 1em;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li p:nth-of-type(1) {font-size: 112.5%;}
  .block-index-03 #quality-03 .container:nth-child(2) .txt + .txt ul li p:nth-of-type(2) {font-size: 100%;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 480px) {}