@charset "UTF-8";
 #top-catch {
position: relative;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
padding: 140px 40px 0px;
box-sizing: border-box;
}
#top-catch::after {
position: fixed; top: 0;
left: 0;
z-index: -1;
display: block;
width: 100vw;
height: 1000px;
background-size: cover;
background-position: center bottom;
content: "";
opacity: 0;
will-change: transform, opacity;
}
body.loaded #top-catch::after {
animation: catchBg 1.5s forwards;
}
@keyframes catchBg {
0% {
opacity: 0;
transform: scale(1.5);
}
100% {
opacity: 1;
transform: scale(1);
}
}
#top-catch #top-catch-box {
will-change: transform, opacity;
opacity: 0;
}
body.loaded #top-catch #top-catch-box {
animation: catchBgBox 1s 1s forwards;
}
@keyframes catchBgBox {
0% {
opacity: 0;
transform: translateY(50px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
#top-catch #top-catch-box .top-catch-img {
text-align: center;
}
#top-catch #top-catch-box .top-catch-img img {
width: 80px;
}
@media screen and (min-width: 576px) {
#top-catch #top-catch-box .top-catch-img img {
width: 178px;
}
}
#top-catch #top-catch-box h2 {
margin: 40px auto;
font-weight: bold;
text-align: center;
font-size: 20px;
}
@media screen and (min-width: 768px) {
#top-catch #top-catch-box h2 {
font-size: 32px;
}
}
@media screen and (min-width: 960px) {
#top-catch #top-catch-box h2 {
font-size: 40px;
}
}
#top-catch #top-catch-box #catch-desc {
margin: 40px auto 0;
max-width: 640px;
}
#top-catch #top-catch-box #catch-desc p {
text-shadow: 0 0 4px rgb(255, 255, 255), 0 0 4px rgb(255, 255, 255), 0 0 4px rgb(255, 255, 255), 0 0 4px rgb(255, 255, 255);
}
#top-banner {
max-width: 94%;
margin: 0 auto;
}
#top-banner #top-banner-link {
display: flex;
justify-content: center;
opacity: 0;
transition: opacity 0.5s;
}
#top-banner #top-banner-link.active {
opacity: 1;
}
#top-banner #top-banner-link li {
margin: 0;
}
#top-banner #top-banner-link a {
margin: 0 5px;
background: #00489d;
color: #fff;
border-radius: 100px;
padding: 9px 30px 10px;
display: inline-block;
border: solid 2px #00489d;
transition: 0.3s;
font-weight: bold;
}
@media screen and (min-width: 576px) {
#top-banner #top-banner-link a {
margin: 0 16px;
padding: 16px 40px 13px;
}
}
#top-banner #top-banner-link a span {
text-align: center;
display: block;
font-size: 16px;
line-height: 1.2;
}
#top-banner #top-banner-link a:hover {
color: #00489d;
background: #fff;
}
#top-banner #top-banner-box {
max-width: 990px;
text-align: center;
margin: 48px auto 64px;
opacity: 0;
transition: opacity 0.5s;
transition-delay: 0.2s;
}
#top-banner #top-banner-box.active {
opacity: 1;
}
#top-banner #top-banner-box {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
#top-banner #top-banner-box a {
transition: 0.3s;
display: flex;
justify-content: center;
margin: 0 0 20px;
border: solid 2px #fff;
}
#top-banner #top-banner-box a:hover {
opacity: 0.7;
}
#top-banner #top-banner-box a img {
width: 480px;
max-width: 100%;
vertical-align: bottom;
}
@media screen and (min-width: 768px) {
#top-banner #top-banner-box a {
width: 49%;
}
#top-banner #top-banner-box a:nth-child(odd) {
margin-right: 2%;
}
#top-banner #top-banner-box a:last-child {
margin-right: 0;
}
}
#top-service {
position: relative;
padding: 80px 0 40px;
min-height: auto;
}
@media screen and (min-width: 768px) {
#top-service {
padding: 36px 0 80px;
}
}
#top-service #svg-top-service {
position: absolute;
left: 0;
top: 0;
width: 210px;
height: 50px;
}
@media screen and (min-width: 768px) {
#top-service #svg-top-service {
width: 24.667vw;
height: 5.867vw;
}
}
@media screen and (min-width: 1500px) {
#top-service #svg-top-service {
width: 370px;
height: 88px;
}
}
#top-service #svg-top-service path {
fill: #bee3fd;
}
#top-service #top-service-box {
position: relative;
z-index: 2;
max-width: 94%;
margin: 0 auto;
width: 960px;
}
@media screen and (min-width: 576px) {
#top-service #top-service-box #top-service-slider-ul {
padding: 50px 0 0;
display: flex;
flex-wrap: wrap;
}
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li {
position: relative;
}
@media screen and (min-width: 576px) {
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li {
margin: 0 0 2%;
width: 49%;
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li:nth-child(odd) {
margin-right: 2%;
}
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li a {
color: #fff;
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li a:hover img {
opacity: 0.7;
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-desc {
z-index: 2;
width: 94%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 13px;
text-shadow: 0 0 5px rgb(0, 9, 21);
text-align: center;
font-weight: bold;
}
@media screen and (min-width: 576px) {
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-desc {
font-size: 1.875vw;
}
}
@media screen and (min-width: 960px) {
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-desc {
font-size: 22px;
}
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-desc .top-service-slider-title {
margin-bottom: 5px;
font-size: 18px;
background: rgba(0, 0, 0, 0.6);
border-radius: 100px;
display: inline-block;
padding: 5px 40px;
min-width: 70%;
}
@media screen and (min-width: 576px) {
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-desc .top-service-slider-title {
margin-bottom: 10px;
font-size: 2.917vw;
}
}
@media screen and (min-width: 960px) {
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-desc .top-service-slider-title {
font-size: 28px;
}
}
#top-service #top-service-box #top-service-slider-ul .top-service-slider-li .top-service-slider-img img {
transition: opacity 0.3s;
vertical-align: bottom;
}
#top-system {
position: relative;
padding: 80px 0 40px;
min-height: auto;
}
@media screen and (min-width: 768px) {
#top-system {
position: relative;
padding: 48px 0;
}
}
#top-system #svg-top-system {
position: absolute;
left: 0;
top: 0;
width: 210px;
height: 50px;
}
@media screen and (min-width: 768px) {
#top-system #svg-top-system {
width: 24.667vw;
height: 5.867vw;
}
}
@media screen and (min-width: 1500px) {
#top-system #svg-top-system {
width: 343px;
height: 110px;
}
}
#top-system #svg-top-system path {
fill: #fff;
}
#top-system #top-system-box {
position: relative;
z-index: 2;
max-width: 94%;
margin: 0 auto;
width: 960px;
}
#top-system h2 {
font-size: 5vw;
margin-bottom: 32px;
}
@media screen and (min-width: 960px) {
#top-system h2 {
font-size: 44px;
}
}
@media screen and (min-width: 768px) {
.top-system-ul {
display: flex;
flex-wrap: wrap;
}
}
@media screen and (min-width: 768px) {
.top-system-ul li {
width: 46%;
}
}
.top-system-ul li p {
font-size: 14px;
}
@media screen and (min-width: 768px) {
.top-system-ul li:nth-child(odd) {
margin-right: 8%;
}
}
.top-system-ul li a {
background: #3399cc;
color: #fff;
border-radius: 20px;
border-top-right-radius: 0;
display: block;
padding: 20px;
transition: background 0.3s;
font-weight: bold;
font-size: 20px;
}
.top-system-ul li a:hover {
background: #00489d;
}
@media screen and (min-width: 768px) {
.top-system-ul li a {
font-size: 28px;
}
}