@charset "UTF-8";
@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, .PageTitle h1 { width: 100%; max-width: 1040px; padding: 0 20px; margin: 0 auto; }
@media (max-width: 959px) { .inner, .PageTitle h1 { 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; } }

html { height: 100%; overflow-x: hidden; overflow-y: scroll; scroll-behavior: smooth; scroll-padding-top: 80px; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
html.active { overflow: hidden; }

body { position: relative; margin: 80px 0 0 0; padding: 0 0 0 0; color: #060001; font-size: 16px; text-align: left; line-height: 1.5em; font-weight: 400; font-style: normal; letter-spacing: 1px; font-family: "Zen Kaku Gothic New", sans-serif; background: #fff; overflow: hidden; }
@media (max-width: 959px) { body { margin: 20vw 0 0 0; margin: 0; font-size: 3.5vw; line-height: 1.7em; } }
body.active:before { position: absolute; top: 0; left: 0; z-index: 100; content: ""; display: block; width: 100%; height: 100%; }

*, *:before, *:after { box-sizing: border-box; }

a[href], label[for], button, input[type="button"], input[type="submit"], input[type="radio"], input[type="checkbox"], select { cursor: pointer; }

a { outline: none; text-decoration: none; -webkit-transition: all .3s; transition: all .3s; }
a:link, a:visited { color: #060001; }
a:hover { color: #060001; text-decoration: none; }
a:hover img { opacity: 0.6; -webkit-transition: all .3s; transition: all .3s; }
a:focus { outline: none; }

img { border: 0; margin: 0; padding: 0; max-width: 100%; line-height: 100%; vertical-align: bottom; }

h1, h2, h3, h4, h5 { margin: 0; padding: 0; font-size: 1em; line-height: 1.5em; font-weight: normal; }

ul, ol { margin: 0; padding: 0; clear: both; display: block; list-style-type: none; }

dl, dt, dd { margin: 0; padding: 0; overflow: hidden; }

i { font-style: normal; }

p { margin: 0; }
p + p { margin-top: 1.5em; }
p + ul { margin-top: 1.5em; }
p.center { text-align: center; }
p.right { text-align: right; }

.column { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.SP { display: none; }
@media (max-width: 959px) { .SP { display: block; } }

span.SP { display: none; }
@media (max-width: 959px) { span.SP { display: inline; } }

.PC { display: block; }
@media (max-width: 959px) { .PC { display: none; } }

span.PC { display: inline; }
@media (max-width: 959px) { span.PC { display: none; } }

header { position: fixed; top: 0; left: 0; width: 100%; z-index: 100000; transition: transform 0.5s; }
@media (max-width: 959px) { header { padding: 5vw 7.5%; background: #fff; } }
header > h1 { display: none; }
@media (max-width: 959px) { header > h1 { display: block; width: 40vw; } }

.header.js_hide { transform: translateY(-100%); }

nav.Nav { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-box-align: center; align-items: center; width: 100%; max-width: 1300px; padding: 13px 125px 13px 90px; margin: 24px auto 0 auto; background: #fff; border-radius: 9999px; box-shadow: 0px 4px 6.8px 0px #E7E7E740; }
@media (max-width: 959px) { nav.Nav { position: fixed; top: 0; right: -120%; display: block; width: 100%; height: 100vh; margin: 0 auto; padding: 5vw 7.5%; background: linear-gradient(266deg, #4498ff 0%, #0022cc 100%); border-radius: 0; -webkit-transition: all .5s; transition: all .5s; overflow-y: scroll; } }
nav.Nav.active { right: 0; }
nav.Nav h1 { width: 197px; }
@media (max-width: 959px) { nav.Nav h1 { width: 40vw; margin-bottom: 20vw; } }
nav.Nav h1 img:nth-child(1) { display: none; }
@media (max-width: 959px) { nav.Nav h1 img:nth-child(1) { display: block; } }
@media (max-width: 959px) { nav.Nav h1 img:nth-child(2) { display: none; } }
nav.Nav div { display: -webkit-flex; display: flex; }
@media (max-width: 959px) { nav.Nav div { display: block; } }
nav.Nav div.active { right: 0; }
nav.Nav div > a:link, nav.Nav div > a:visited { font-size: 15px; font-weight: 500; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { nav.Nav div > a:link, nav.Nav div > a:visited { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; width: 100%; padding: 0 5vw 2vw 5vw; color: #fff; font-size: 3.6vw; line-height: 1.5em; border-bottom: 1px solid #fff; } }
@media (max-width: 959px) { nav.Nav div > a:link:after, nav.Nav div > a:visited:after { content: "▲"; display: block; width: 1em; height: 1em; font-size: 0.8em; transform: rotate(90deg); } }
nav.Nav div > a:link:hover, nav.Nav div > a:visited:hover { opacity: 0.7; }
nav.Nav div > a:link + a, nav.Nav div > a:visited + a { margin-left: 45px; }
@media (max-width: 959px) { nav.Nav div > a:link + a, nav.Nav div > a:visited + a { margin: 3vw 0 0 0; } }
nav.Nav .Tel { display: none; }
@media (max-width: 959px) { nav.Nav .Tel { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 80%; height: 23.5vw; margin: 10vw auto 4.5vw auto; border-radius: 9999px; box-shadow: 5px 5px 9.1px 0px rgba(0, 0, 0, 0.3); background: linear-gradient(90deg, #4498FF 0%, #0022CC 100%); padding: 0; }
  nav.Nav .Tel .Tel-Contents { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 100%; height: 22.5vw; padding: 0; margin-top: -1vw; background: #fff; border-radius: 9999px; }
  nav.Nav .Tel:hover { transform: translateY(-2px); box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.3), 0 0 5px rgba(0, 0, 0, 0.3); }
  nav.Nav .Tel em { display: block; color: #0022CC; font-size: 5vw; font-weight: 700; line-height: 100%; font-style: normal; text-align: center; font-family: Noto Sans JP; }
  nav.Nav .Tel em i { display: inline; margin-right: 2vw; }
  nav.Nav .Tel i { display: block; margin-top: 2vw; color: #0022CC; font-size: 2.9vw; font-weight: 400; line-height: 100%; font-family: Noto Sans JP; } }
nav.Nav .Mail { display: none; }
@media (max-width: 959px) { nav.Nav .Mail { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 80%; height: 23.5vw; margin: 0 auto 15vw auto; border-radius: 9999px; border: 0vw solid #FFF; border-bottom: 0.9vw solid #FFF; border-top: none; box-shadow: 5px 5px 9.1px 0px rgba(0, 0, 0, 0.3); background: linear-gradient(90deg, #4498FF 0%, #0022CC 100%); }
  nav.Nav .Mail:hover { transform: translateY(-2px); box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.3), 0 0 5px rgba(0, 0, 0, 0.3); }
  nav.Nav .Mail em { display: block; color: #fff; font-size: 5vw; font-weight: 700; line-height: 100%; font-style: normal; text-align: center; font-family: Noto Sans JP; }
  nav.Nav .Mail i { display: block; margin-top: 2vw; color: #fff; font-size: 2.9vw; font-weight: 400; line-height: 100%; font-family: Noto Sans JP; } }

#Nav-Btn { display: none; }
@media (max-width: 959px) { #Nav-Btn { position: fixed; top: 2.9vw; right: 5%; z-index: 1000; cursor: pointer; display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 13vw; height: 13vw; color: #fff; font-size: 2.2vw; border-radius: 50%; background: #033884; }
  #Nav-Btn:hover { background: #696a6d; }
  #Nav-Btn.active { font-size: 6vw; } }

.PageTitle { margin-top: 280px; }
@media (max-width: 959px) { .PageTitle { margin-top: 20vw; } }
.PageTitle h1 { margin-bottom: 2.6em; font-size: 46px; font-weight: 700; line-height: 100%; }
@media (max-width: 959px) { .PageTitle h1 { font-size: 7vw; margin-bottom: 2.2em; } }
.PageTitle h1 i { display: block; margin-top: 15px; font-size: 0.35em; font-weight: 500; line-height: 100%; }
.PageTitle img { display: block; }

.f_Contact { padding: 85px 0 110px 0; background: #F6F6F6 url(../img/index/Rectangle.png) no-repeat bottom center/100% auto; }
@media (max-width: 959px) { .f_Contact { padding: 12vw 0 26vw 0; background: #F6F6F6 url(../img/index/Rectangle.png) no-repeat bottom center/auto 30vw; } }
.f_Contact .Contents { position: relative; width: 1115px; margin: 0 auto; padding-left: 150px; }
@media (max-width: 959px) { .f_Contact .Contents { width: 85%; padding-left: 0; } }
.f_Contact .Contents .Img { position: absolute; top: 40px; left: 3px; width: 88px; }
@media (max-width: 959px) { .f_Contact .Contents .Img { position: static; top: auto; left: auto; display: block; width: 22%; margin: 0 auto; } }
.f_Contact ul { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; }
@media (max-width: 959px) { .f_Contact ul { -webkit-flex-direction: column; flex-direction: column; } }
.f_Contact ul li:nth-child(1) { flex: 1; }
.f_Contact ul li:nth-child(2) { width: 300px; }
@media (max-width: 959px) { .f_Contact ul li:nth-child(2) { width: 100%; } }
.f_Contact h2 { margin-bottom: 35px; font-size: 28px; font-weight: 700; line-height: 100%; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact h2 { margin: 6vw 0 6vw 0; font-size: 5.2vw; text-align: center; } }
.f_Contact h2 i { display: block; margin-bottom: 1.2em; color: #0073FF; font-size: 15px; font-weight: 500; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact h2 i { font-size: 3.2vw; margin-bottom: 4.8vw; } }
.f_Contact p { font-size: 16px; font-weight: 500; line-height: 36px; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact p { margin-bottom: 8vw; font-size: 3.5vw; line-height: 100%; } }
.f_Contact .Tel { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 293px; height: 87px; margin-bottom: 12px; border-radius: 9999px; box-shadow: 5px 5px 9.1px 0px #C7C7C7; background: linear-gradient(90deg, #4498FF 0%, #0022CC 100%); padding: 0; }
@media (max-width: 959px) { .f_Contact .Tel { width: 78%; height: 23.5vw; margin: 0 auto 4.5vw auto; } }
.f_Contact .Tel .Tel-Contents { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 289px; height: 83px; padding: 0; background: #fff; border-radius: 9999px; }
@media (max-width: 959px) { .f_Contact .Tel .Tel-Contents { width: 100%; margin-top: -1vw; height: 22.5vw; } }
.f_Contact .Tel:hover { transform: translateY(-2px); box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.3), 0 0 5px rgba(0, 0, 0, 0.3); }
.f_Contact .Tel em { display: block; color: #0022CC; font-size: 24px; font-weight: 700; line-height: 100%; font-style: normal; text-align: center; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact .Tel em { font-size: 5vw; } }
.f_Contact .Tel em i { display: inline; margin-right: 5px; }
@media (max-width: 959px) { .f_Contact .Tel em i { margin-right: 2vw; } }
.f_Contact .Tel i { display: block; margin-top: 9px; color: #0022CC; font-size: 13px; font-weight: 400; line-height: 100%; letter-spacing: 0; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact .Tel i { font-size: 3vw; margin-top: 2vw; } }
.f_Contact .Mail { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; width: 293px; height: 87px; border-radius: 9999px; border: 2px solid #FFF; box-shadow: 5px 5px 9.1px 0px #C7C7C7; background: linear-gradient(90deg, #4498FF 0%, #0022CC 100%); }
@media (max-width: 959px) { .f_Contact .Mail { width: 78%; height: 23.5vw; margin: 0 auto 5vw auto; border: 0.6vw solid #FFF; border-bottom: 0.9vw solid #FFF; border-top: none; } }
.f_Contact .Mail:hover { transform: translateY(-2px); box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.3), 0 0 5px rgba(0, 0, 0, 0.3); }
.f_Contact .Mail em { display: block; color: #fff; font-size: 24px; font-weight: 700; line-height: 100%; font-style: normal; text-align: center; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact .Mail em { font-size: 5vw; } }
.f_Contact .Mail i { display: block; margin-top: 9px; color: #fff; font-size: 13px; font-weight: 400; line-height: 100%; letter-spacing: 0; font-family: Noto Sans JP; }
@media (max-width: 959px) { .f_Contact .Mail i { font-size: 3vw; margin-top: 2vw; } }

footer { position: relative; padding: 105px 0 35px 0; background: #4498FF; background: linear-gradient(180deg, #4498FF 0%, #0022CC 100%); }
@media (max-width: 959px) { footer { padding: 16vw 0 13vw 0; background: linear-gradient(266deg, #4498ff 0%, #0022cc 100%); } }
footer:after { content: ""; position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; background: url(../img/index/footer.png) no-repeat right bottom/auto 77%; }
@media (max-width: 959px) { footer:after { background: url(../img/index/footer.png) no-repeat right -14vw bottom -7vw/auto 45.5%; } }
footer ul { position: relative; z-index: 100; display: -webkit-flex; display: flex; -webkit-box-align: start; align-items: flex-start; -webkit-justify-content: space-between; justify-content: space-between; width: 100%; max-width: 990px; margin: 0 auto; }
@media (max-width: 959px) { footer ul { -webkit-flex-direction: column; flex-direction: column; width: 85%; } }
footer ul li:nth-child(1) { flex: 1; }
@media (max-width: 959px) { footer ul li:nth-child(1) { width: 100%; } }
footer ul li:nth-child(2) { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; width: 260px; }
@media (max-width: 959px) { footer ul li:nth-child(2) { width: 72%; margin: 0 auto; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; flex-direction: row; -webkit-justify-content: space-between; justify-content: space-between; } }
@media (max-width: 959px) { footer h1 { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; -webkit-justify-content: center; justify-content: center; } }
footer h1 a { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; color: #fff !important; font-size: 16px; font-weight: 700; font-family: Noto Sans JP; }
@media (max-width: 959px) { footer h1 a { font-size: 4vw; } }
footer h1 a img { width: 200px; margin-right: 25px; }
@media (max-width: 959px) { footer h1 a img { width: 64%; margin: 0 auto; } }
footer h1 + p { margin-top: 1.8em; color: #fff; font-size: 15px; font-weight: 400; line-height: 28px; font-family: Noto Sans JP; }
@media (max-width: 959px) { footer h1 + p { width: 100%; margin: 2.1em 0 3vw 4vw; font-size: 3.2vw; line-height: 1.8em; } }
@media (max-width: 959px) { footer h1 + p span { display: block; margin: 1.5em 0 0 -4vw; text-align: center; } }
footer li:nth-child(2) a:link, footer li:nth-child(2) a:visited { color: #fff; font-size: 15px; font-weight: 400; line-height: 28px; font-family: Noto Sans JP; }
@media (max-width: 959px) { footer li:nth-child(2) a:link, footer li:nth-child(2) a:visited { width: 50%; font-size: 3.2vw; line-height: 3.45em; } }
footer li:nth-child(2) a:last-child { width: 100%; }
footer a:hover { opacity: 0.7; }
footer ul + p { margin: 140px 0 0 0; color: #fff; font-size: 15px; font-weight: 400; text-align: center; font-family: Noto Sans JP; }
@media (max-width: 959px) { footer ul + p { font-size: 3.3vw; margin: 5.5vw 0 0 0; } }

.f_Contact2 { position: fixed; right: 2%; bottom: 5%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; }
.f_Contact2 a + a { margin-top: 10px; }
