@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;600&family=Noto+Serif+JP:wght@300;600&display=swap");
.container { padding-bottom: 0; background: none; }
@media screen and (max-width: 640px) { .container { padding-top: 0; } }

section { max-width: 1100px; margin-inline: auto; }

.naiken-mv { width: 100%; }
.naiken-mv .mv-txt { width: 90%; max-width: 500px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; }

.naiken-section { font-family: '游ゴシック', 'Yu Gothic', 'YuGothic', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', sans-serif; font-weight: 300; -webkit-font-smoothing: antialiased; width: 100%; }
.naiken-section:first-of-type { margin-top: 0; }
.naiken-section .inner { width: 90%; max-width: 960px; margin: 3rem auto 0 auto; padding-bottom: 3rem; }

.naiken-ttl { background: #005bac; color: #fff; text-align: center; padding: 1rem; font-size: 2.2rem; letter-spacing: .05em; line-height: 1.4; }

.fukidashi { text-align: center; font-size: 1.8rem; line-height: 1.6; padding: 1rem; border-radius: 10px; position: relative; color: #fff; }
.fukidashi::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 10px 10px 0px 10px; position: absolute; left: calc(50% - 10px); bottom: -10px; }

.n02-box { margin-top: 3rem; border-radius: 10px; padding: 2rem; display: grid; gap: 1rem; grid-template-columns: 1fr 20%; align-items: center; }
.n02-box .ttl { font-size: 2rem; letter-spacing: .05em; line-height: 1.8; font-weight: bold; }
.n02-box .ttl .num { display: inline-block; margin-right: .5rem; font-size: 300%; line-height: 1; }
.n02-box .txt { margin-top: 1.5rem; font-size: 1.6rem; line-height: 1.8; }
@media screen and (max-width: 640px) { .n02-box { grid-template-columns: 1fr; }
  .n02-box .img-box .img { max-width: 200px; margin: auto; } }
@media screen and (max-width: 480px) { .n02-box .img-box .img { max-width: 140px; } }

.naiken01 .lead { margin-top: 3rem; text-align: center; }
.naiken01 .img01 { margin: 3rem auto 0 auto; width: 100%; max-width: 900px; }

.naiken02 .before-res .fukidashi { background: #f08300; }
.naiken02 .before-res .fukidashi::before { border-color: #f08300 transparent transparent transparent; }
.naiken02 .before-res .n02-box { border: solid 2px #f08300; }
.naiken02 .before-res .n02-box .ttl { color: #f08300; }
.naiken02 .flow-res { margin-top: 3rem; }
.naiken02 .flow-res .fukidashi { background: #005bac; }
.naiken02 .flow-res .fukidashi::before { border-color: #005bac transparent transparent transparent; }
.naiken02 .flow-res .n02-box { border: solid 2px #005bac; }
.naiken02 .flow-res .n02-box .ttl { color: #005bac; }

.caution { margin-top: 3rem; background: #E9F1F8; border-top: solid 2px #005bac; border-bottom: solid 2px #005bac; padding: 3rem 1rem; }
.caution .caution-ttl { color: #005bac; font-weight: bold; font-size: 1.6rem; line-height: 1; text-align: center; }
.caution ul { width: 90%; max-width: 600px; margin: 2rem auto 0 auto; }
.caution ul li { margin-top: 1rem; position: relative; font-size: 1.4rem; line-height: 1.8; padding-left: 2rem; }
.caution ul li::before { content: ""; display: inline-block; background: #005bac; width: 1.4rem; height: 1.4rem; position: absolute; top: .35rem; left: 0; }

.naiken-res-btn a { display: block; margin: 3rem auto 0 auto; max-width: 600px; background: #f08300; text-align: center; padding: 2rem 1rem; border-radius: 10px; }
.naiken-res-btn .txt { position: relative; display: inline-block; color: #fff; font-size: 2.4rem; padding-right: 2rem; }
.naiken-res-btn .txt .txt-s { font-size: 80%; }
.naiken-res-btn .txt::before, .naiken-res-btn .txt::after { content: ""; display: block; position: absolute; top: 50%; width: 10px; height: 10px; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); }
.naiken-res-btn .txt::before { right: 10px; }
.naiken-res-btn .txt::after { right: 16px; }
