@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;500;700&display=swap");
.inner { width: 100%; max-width: 1040px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner { max-width: 88%; padding: 0; } }

.inner_w { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_w { max-width: 88%; padding: 0; } }

.inner_s { width: 100%; max-width: 970px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_s { max-width: 88%; padding: 0; } }

.inner_ss { width: 100%; max-width: 800px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 959px) { .inner_ss { max-width: 88%; padding: 0; } }

.inner { width: 100%; max-width: 940px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner { max-width: 88%; padding: 0; } }

body { background: url(../img/back/back01.png) no-repeat top left/29% auto; }
@media (max-width: 959px) { body { background: url(../img/back/back01.png) no-repeat top 4vw left -14vw/85% auto; } }

.PageTitle { margin-top: 130px; padding: 0 0 100px 0; background: url(../img/back/back02.png) no-repeat bottom right/27% auto; }
@media (max-width: 959px) { .PageTitle { position: relative; margin: 0; padding: 41vw 0 0 0; background: none; } }
.PageTitle:after { position: absolute; right: 0; bottom: -22vw; content: ""; display: block; width: 100%; height: 50vw; background: url(../img/back/back07.png) no-repeat bottom right -8vw/70% auto; }
.PageTitle ul { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; width: 100%; max-width: 1160px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .PageTitle ul { -webkit-flex-direction: column; flex-direction: column; max-width: 88%; padding: 0; } }
.PageTitle ul li:nth-child(1) { width: 540px; }
@media (max-width: 959px) { .PageTitle ul li:nth-child(1) { width: 100%; } }
.PageTitle ul li:nth-child(2) { flex: 1; }
@media (max-width: 959px) { .PageTitle ul li:nth-child(2) { padding-top: 5vw; } }
.PageTitle h2 { color: #202020; font-size: 42px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .PageTitle h2 { font-size: 6.5vw; text-align: center; } }
.PageTitle h2 i { display: flex; overflow: hidden; color: #0073FF; font-size: 20px; font-weight: 700; font-family: Noto Sans JP; }
@media (max-width: 959px) { .PageTitle h2 i { -webkit-justify-content: center; justify-content: center; font-size: 4vw; margin-bottom: 3vw; } }
.PageTitle h2 i p { margin: 0; opacity: 0; animation: textanimation 1s forwards; }
.PageTitle h2 i p:nth-child(1) { animation-delay: 0.05s; }
.PageTitle h2 i p:nth-child(2) { animation-delay: 0.1s; }
.PageTitle h2 i p:nth-child(3) { animation-delay: 0.15s; }
.PageTitle h2 i p:nth-child(4) { animation-delay: 0.2s; }
.PageTitle h2 i p:nth-child(5) { animation-delay: 0.25s; }
.PageTitle h2 i p:nth-child(6) { animation-delay: 0.3s; }
.PageTitle h2 i p:nth-child(7) { animation-delay: 0.35s; }
.PageTitle h2 i p:nth-child(8) { animation-delay: 0.4s; }
.PageTitle h2 i p:nth-child(9) { animation-delay: 0.45s; }
.PageTitle h2 i p:nth-child(10) { animation-delay: 0.5s; }
.PageTitle h2 i p:nth-child(11) { animation-delay: 0.55s; }
.PageTitle h2 i p:nth-child(12) { animation-delay: 0.6s; }
.PageTitle h2 i p:nth-child(13) { animation-delay: 0.65s; }
.PageTitle h2 i p:nth-child(14) { animation-delay: 0.7s; }
.PageTitle h2 i p:nth-child(15) { animation-delay: 0.75s; }
@keyframes textanimation { 0% { opacity: 0; }
  100% { opacity: 1; } }
.PageTitle img { width: 590px; }
@media (max-width: 959px) { .PageTitle img { position: relative; z-index: 10; display: block; width: 72%; margin: 0 auto; } }

.Overview { margin: 55px 0 0 0; }
@media (max-width: 959px) { .Overview { margin: 18vw 0 0 0; } }
.Overview h2 { font-size: 32px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .Overview h2 { font-size: 5.4vw; text-align: center; } }
.Overview h2 i { display: block; margin-bottom: 0.5em; color: #0073FF; font-size: 15px; font-weight: 700; font-family: Noto Sans JP; }
@media (max-width: 959px) { .Overview h2 i { font-size: 3vw; margin-bottom: 0.8em; } }
.Overview table { width: 100%; margin: 48px 0 0 0; }
@media (max-width: 959px) { .Overview table { margin: 11vw 0 0 0; } }
.Overview table th { width: 240px; padding: 23px 10px 23px 20px; font-size: 16px; font-weight: 500; line-height: 28px; font-family: Noto Sans JP; border-top: 1px solid #202020; }
@media (max-width: 959px) { .Overview table th { display: block; width: 100%; padding: 7vw 0 0 0; font-size: 3.4vw; text-align: center; } }
.Overview table tr:last-child th { border-bottom: 1px solid #202020; }
@media (max-width: 959px) { .Overview table tr:last-child th { border-bottom: none; } }
.Overview table td { width: 585px; padding: 23px 10px 23px 20px; font-size: 16px; font-weight: 500; line-height: 28px; font-family: Noto Sans JP; border-top: 1px solid #202020; }
@media (max-width: 959px) { .Overview table td { display: block; width: 100%; padding: 3vw 0 6vw 0; font-size: 3.4vw; font-weight: 400; line-height: 1.7em; text-align: center; border-top: none; } }
.Overview table tr:last-child td { border-bottom: 1px solid #202020; }
.Overview table td.Dummy { width: 75px; border: none; }
@media (max-width: 959px) { .Overview table td.Dummy { display: none; } }

.Access { margin: 130px 0 150px 0; }
@media (max-width: 959px) { .Access { margin: 22vw 0 0 0; } }
.Access h2 { font-size: 32px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .Access h2 { font-size: 5.4vw; text-align: center; } }
.Access h2 i { display: block; margin-bottom: 0.5em; color: #0073FF; font-size: 15px; font-weight: 700; font-family: Noto Sans JP; }
@media (max-width: 959px) { .Access h2 i { font-size: 3vw; margin-bottom: 0.8em; } }
.Access iframe { width: 100%; height: 470px; margin-top: 80px; }
@media (max-width: 959px) { .Access iframe { height: 87vw; margin-top: 12vw; } }
.Access iframe + p { margin: 45px 0 0 0; font-size: 16px; font-weight: 500; line-height: 28px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .Access iframe + p { margin: 5vw 0 12vw 0; font-size: 3.4vw; font-weight: 400; line-height: 1.8em; text-align: center; } }
