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

/* =====
 * LAYOUT :: ALL DEVICE
=================================================================== */
.block-index-01 figure {position: relative;}
.block-index-01 figure figcaption {color: #fff;position: absolute;right: 2em;bottom: 1.8em;}
.block-index-01 figure figcaption span {display: block;text-align: right;}
.block-index-01 figure figcaption span:nth-child(1) {font-size: 156.25%;font-weight: bold;}
.block-index-01 figure figcaption span:nth-child(2) {font-size: 87.5%;}
.block-index-02 {padding: 3em 0 9em;position: relative;z-index: 3;}
.block-index-03 .container {padding: 5em 0;}
.block-index-03 .container h4 {color: var(--codate-color2);font-size: 125%;font-weight: bold;text-align: center;position: relative;z-index: 1;}
.block-index-03 .container h4::after {display: block;content: attr(data-num);color: #fff;font-size: 650%;letter-spacing: 0;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);z-index: -1;}
.block-index-03 .container h4 + p {font-size: 156.25%;font-weight: bold;text-align: center;letter-spacing: 0.1em;margin: 1.75em 0 2em;}
.block-index-03 .container > div {width: calc(100% - 2.8em);max-width: 1100px;margin: 0.7em auto 0;}
.block-index-03 .container .txt {margin: 0 auto;padding: 2.5em;box-sizing: border-box;border-radius: 0.4em;background: #fff;}
.block-index-03 .container .txt + .txt {margin-top: 3em;}
.block-index-03 .container .txt .ttl-style-02 {padding: 0 0 0 1.5em;}
.block-index-03 .container .txt .ttl-style-02::before {background: linear-gradient(to bottom,#0c6698,#2583b8);left: 0;right: auto;}
.block-index-03 .container .txt .ttl-style-02 h5 {color: var(--codate-color2);font-size: 125%;}
.block-index-03 .container .txt .note {font-size: 75%;margin-top: 1.5em;}
.block-index-03 .container .txt .note small {display: block;margin-top: 0.5em;}
.block-index-03 .container .txt .note a {color: var(--default);text-decoration: none;padding-bottom: 0.3em;border-bottom: 1px solid var(--default);}
.block-index-03 #deductions-01 .container {padding-top: 9em;background: var(--codate-grad4);position: relative;z-index: 2;}
.block-index-03 #deductions-01 .container .txt {display: flex;flex-wrap: wrap;justify-content: space-between;}
.block-index-03 #deductions-01 .container .txt > div:nth-child(1) {width: 47%;}
.block-index-03 #deductions-01 .container .txt > figure {width: 47%;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table {margin: 2em 0;width: 100%;border-bottom: 2px solid var(--codate-color2);position: relative;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table:after {display: block;content: '';width: 0;height: 0;border-style: solid;border-width: 10px 8px 0 8px;border-color: var(--codate-color2) transparent transparent transparent;margin: 0 auto;position: absolute;top: 100%;left: 0;right: 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table tr th,
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table tr td {font-size: 87.5%;text-align: center;vertical-align: middle;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table tr th {background: #e3eef4;border-bottom: 1px solid #fff;padding: 1em 0.5em;font-weight: bold;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table thead tr:nth-child(1) th {border-top-left-radius: 0.4em;overflow: hidden;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table thead tr:nth-child(1) td {border-top-right-radius: 0.4em;overflow: hidden;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table thead tr td {background: #eaeaea;border-left: 1px solid #fff;border-bottom: 1px solid #fff;padding: 0.5em;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) > p:not(.note) {text-align: center;margin: 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) > p:not(.note) > span {display: inline-block;font-size: 156.25%;font-weight: bold;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) > p:not(.note) > span span {font-size: 240%;line-height: 1;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) > p:not(.note) strong {display: inline-block;color: #fff;font-size: 87.5%;padding: 0.1em 1em;margin-right: 0.5em;background: var(--codate-grad2);vertical-align: text-bottom;}
.block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) > p:not(.note) strong span {font-size: 80%;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) {flex-direction: row-reverse;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > p:nth-of-type(1) {font-size: 87.5%;margin: 2em 0 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > p:nth-of-type(1) strong {color: var(--codate-color3);}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > p:nth-of-type(2) {margin-top: 0.5em;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) {padding: 1em 1.5em;margin-top: 1em;background: #e3eef4;border-radius: 0.4em;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) .ttl-style-03::after {background: var(--codate-color2);}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) .ttl-style-03 span {color: var(--codate-color2);}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) ul {margin: 1em 0 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) ul li {font-size: 87.5%;font-weight: bold;padding-left: 2.5em;position: relative;}
.block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) ul li svg {color: var(--codate-color3);width: 1.5em;height: 1.2em;position: absolute;top: 0.2em;left: 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > figure,
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) {width: 48.75%;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) p:nth-of-type(1) {color: var(--codate-color2);font-size: 87.5%;text-align: center;padding: 0 0.5em;margin: 2em 0 0;border: 1px solid var(--codate-color2);border-radius: 1.5em;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table {margin: 1em 0 0;width: 100%;border-radius: 0.4em;overflow: hidden;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr th,
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr td {font-size: 87.5%;text-align: center;padding: 1em 0.5em;border-bottom: 1px solid #fff;vertical-align: middle;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr th {font-weight: bold;width: 14em;background: #e3eef4;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr td {border-left: 1px solid #fff;background: #f5f5f5;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr td small {display: block;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) {display: flex;flex-wrap: wrap;justify-content: space-between;width: 100%;margin-top: 2.5%;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div {width: 48.75%;padding-bottom: 1.5em;border-radius: 0.4em;background: #e3eef4;overflow: hidden;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div {display: flex;flex-wrap: wrap;justify-content: flex-start;align-items: center;color: #fff;padding: 1.25em 1.5em;background: var(--codate-grad2);}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p {font-size: 93.75%;margin: 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p:nth-of-type(1) {font-weight: bold;padding-right: 1em;margin-right: 1em;border-right: 1px solid rgba(255,255,255,0.5);}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p:nth-of-type(1) span {font-size: 160%;line-height: 1;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p:nth-of-type(2) small {display: block;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div figure {width: 70%;max-width: 342px;margin: 1.5em auto 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div > p {color: var(--codate-color3);font-size: 125%;font-weight: bold;text-align: center;margin: 1.5em 0 0;}
.block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div > p span {font-size: 140%;line-height: 1;}
.block-index-03 #deductions-02 .container {background: var(--codate-grad6);position: relative;z-index: 1;}
.block-index-03 #deductions-02 .container .txt {display: flex;flex-wrap: wrap;justify-content: space-between;}
.block-index-03 #deductions-02 .container .txt > p {text-align: center;width: 100%;margin-bottom: 1.5em;}
.block-index-03 #deductions-02 .container .txt > p > span {display: inline-block;font-size: 156.25%;font-weight: bold;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.block-index-03 #deductions-02 .container .txt > p > span span {font-size: 200%;line-height: 1;}
.block-index-03 #deductions-02 .container .txt > p strong {display: inline-block;color: #fff;font-size: 87.5%;padding: 0.1em 1em;margin-right: 0.5em;background: var(--codate-grad2);vertical-align: text-bottom;}
.block-index-03 #deductions-02 .container .txt > p strong span {font-size: 80%;}
.block-index-03 #deductions-02 .container .txt > div {width: 48.75%;}
.block-index-03 #deductions-02 .container .txt > div p:nth-of-type(1) {color: var(--codate-color2);font-size: 87.5%;text-align: center;padding: 0 0.5em;border: 1px solid var(--codate-color2);border-radius: 1.5em;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(1) figure {max-width: 496px;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table {margin: 1em 0 0;width: 100%;border-radius: 0.4em;overflow: hidden;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table tr th,
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table tr td {font-size: 87.5%;text-align: center;padding: 1em 0.5em;border-bottom: 1px solid #fff;vertical-align: middle;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table tr th {font-weight: bold;width: 11em;background: #e3eef4;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table tr td {border-left: 1px solid #fff;background: #f5f5f5;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table tr td > span {display: inline-block;font-size: 114.28%;font-weight: bold;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) table tr td > span span {font-size: 200%;line-height: 1;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) p:nth-of-type(2) {font-size: 87.5%;font-weight: bold;text-align: center;letter-spacing: 0;width: 100%;margin: 1em 0 1.5em;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) p:nth-of-type(2) > span {display: inline-block;font-size: 178.5%;font-weight: bold;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) p:nth-of-type(2) > span span {font-size: 180%;line-height: 1;}
.block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) p:nth-of-type(2) > span span:nth-child(3) {font-size: 130%;}
.block-index-03 #deductions-03 .container {background: var(--codate-grad4);position: relative;z-index: 0;}
.block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) {text-align: center;width: 100%;margin-bottom: 1.5em;}
.block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) > span {display: inline-block;font-size: 156.25%;font-weight: bold;background: var(--codate-grad5);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
.block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) > span span {font-size: 200%;line-height: 1;}
.block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) strong {display: inline-block;color: #fff;font-size: 87.5%;padding: 0.1em 1em;margin-right: 0.5em;background: var(--codate-grad2);vertical-align: text-bottom;}
.block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) strong span {font-size: 80%;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div p:nth-of-type(1) {font-size: 87.5%;margin-top: 2em;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div figure:nth-of-type(1) {max-width: 810px;margin: 3em auto 0;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) {padding: 1.5em 3em;margin-top: 2em;background: #e3eef4;border-radius: 0.4em;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) .ttl-style-03 {margin: 0;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) .ttl-style-03::after {background: var(--codate-color2);}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) .ttl-style-03 span {color: var(--codate-color2);}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) ul {margin: 1em 0 0;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) ul li {font-size: 87.5%;font-weight: bold;padding-left: 2.5em;position: relative;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) ul li svg {color: var(--codate-color3);width: 1.5em;height: 1.2em;position: absolute;top: 0.2em;left: 0;}
.block-index-03 #deductions-03 .container .txt:nth-child(2) > div figure:nth-of-type(2) {max-width: 791px;margin: 3em auto 0;}
/* =====
* LAYOUT :: PC
=================================================================== */
@media only screen and (min-width: 1025px) {}
/* =====
* LAYOUT :: TAB
=================================================================== */
@media only screen and (max-width: 1024px) {}
/* =====
* LAYOUT :: SP
=================================================================== */
@media only screen and (max-width: 768px) {
  .block-common-mv {z-index: 4;}
  .block-index-01 figure {height: 16em;}
  .block-index-01 figure img {height: 100%;object-fit: cover;}
  .block-index-01 figure figcaption {text-shadow: 0 0 4px rgba(0,0,0,0.4);right: 1em;bottom: 0.7em;}
  .block-index-01 figure figcaption span:nth-child(1) {font-size: 137.5%;}
  .block-index-02 {padding: 2em 0 4.5em;}
  .block-index-03 .container {padding: 4em 0 3em;}
  .block-index-03 .container h4 {font-size: 150%;}
  .block-index-03 .container h4::after {font-size: 500%;}
  .block-index-03 .container h4 + p {font-size: 137.5%;margin-bottom: 1em;}
  .block-index-03 .container .txt {padding: 5vw;}
  .block-index-03 .container .txt + .txt {margin-top: 1.5em;}
  .block-index-03 .container .txt .ttl-style-02 h5 {font-size: 137.5%;}
  .block-index-03 #deductions-01 .container {padding-top: 6em;}
  .block-index-03 #deductions-01 .container .txt > div:nth-child(1) {width: 100%;}
  .block-index-03 #deductions-01 .container .txt > figure {width: 100%;margin-top: 1.5em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table {margin-top: 1.5em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table tr th,
  .block-index-03 #deductions-01 .container .txt:nth-child(1) > div:nth-child(1) table tr td {font-size: 100%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > p:nth-of-type(1) {font-size: 100%;margin-top: 1.5em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(2) > div:nth-child(1) > div:nth-of-type(2) ul li {font-size: 100%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) {width: 100%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) p:nth-of-type(1) {font-size: 100%;margin-top: 1.5em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr th,
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr td {font-size: 100%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-child(1) table tr th {width: 8em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > figure {width: 100%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) {margin-top: 1.5em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div {width: 100%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div:nth-child(2) {margin-top: 1.5em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div {padding: 1em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p:nth-of-type(1) {padding-right: 0.75em;margin-right: 0.75em;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p:nth-of-type(1) span {font-size: 130%;}
  .block-index-03 #deductions-01 .container .txt:nth-child(3) > div:nth-of-type(2) > div div p:nth-of-type(2) {font-size: 87.5%;}
  .block-index-03 #deductions-02 .container .txt > p strong {font-size-adjust: 100%;}
  .block-index-03 #deductions-02 .container .txt > p > span {font-size: 137.5%;margin-top: 0.2em;}
  .block-index-03 #deductions-02 .container .txt > div {width: 100%;}
  .block-index-03 #deductions-02 .container .txt > div p:nth-of-type(1) {font-size: 100%;}
  .block-index-03 #deductions-02 .container .txt > div + div {margin-top: 1.5em;}
  .block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) p:nth-of-type(2) {font-size: 100%;}
  .block-index-03 #deductions-02 .container .txt > div:nth-of-type(2) p:nth-of-type(2) > span {font-size: 137.5%;}
  .block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) {margin-top: 1.5em;}
  .block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) strong {font-size: 100%;}
  .block-index-03 #deductions-03 .container .txt:nth-child(1) > div p:nth-of-type(1) > span {font-size: 131.25%;margin-top: 0.2em;}
  .block-index-03 #deductions-03 .container .txt:nth-child(2) > div p:nth-of-type(1) {font-size: 112.5%;margin-top: 1.5em;}
  .block-index-03 #deductions-03 .container .txt:nth-child(2) > div figure:nth-of-type(1) {margin-top: 1.5em;}
  .block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) {padding: 1em 1.5em;}
  .block-index-03 #deductions-03 .container .txt:nth-child(2) > div div:nth-of-type(2) ul li {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) {}