@charset "UTF-8";
/*================================================================================

media query mixin

================================================================================*/
/*    google font on web
--------------------------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Marcellus&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300&display=swap");
/*    google font on server
--------------------------------------------------------------------------------*/
/*    icomoon
--------------------------------------------------------------------------------*/
/*    custom
--------------------------------------------------------------------------------*/
@-webkit-keyframes zoomUp { 0% { -webkit-transform: scale(1); transform: scale(1); }
  100% { -webkit-transform: scale(1.1); transform: scale(1.1);
    /* 拡大率 */ } }
@keyframes zoomUp { 0% { -webkit-transform: scale(1); transform: scale(1); }
  100% { -webkit-transform: scale(1.1); transform: scale(1.1);
    /* 拡大率 */ } }
.add-animation { -webkit-animation: zoomUp 5s linear 0s normal both; animation: zoomUp 5s linear 0s normal both; }

.top .mainArea { position: relative; }
.top .mainArea .topSlider .topSlider_item { position: relative; width: 100%; height: 100vh; }
@media screen and (max-width: 768px) { .top .mainArea .topSlider .topSlider_item { width: auto; height: 600px; } }
.top .mainArea .topSlider .topSlider_item .back { position: absolute; top: 0; left: 0; width: 100%; height: 100vh; }
.top .mainArea .topSlider .topSlider_item .back.img01 { background: url(../img/top_main01_pc.jpg) no-repeat top center; background-size: cover; }
@media screen and (max-width: 768px) { .top .mainArea .topSlider .topSlider_item .back.img01 { background: url(../img/top_main01_sp.jpg) no-repeat top center; background-size: cover; } }
.top .mainArea .topSlider .topSlider_item .back.img02 { background: url(../img/top_main02_pc.jpg) no-repeat top center; background-size: cover; }
@media screen and (max-width: 768px) { .top .mainArea .topSlider .topSlider_item .back.img02 { background: url(../img/top_main02_sp.jpg) no-repeat top center; background-size: cover; } }
.top .mainArea .topSlider .topSlider_item .back.img03 { background: url(../img/top_main03_pc.jpg) no-repeat top center; background-size: cover; }
@media screen and (max-width: 768px) { .top .mainArea .topSlider .topSlider_item .back.img03 { background: url(../img/top_main03_sp.jpg) no-repeat top center; background-size: cover; } }
.top .mainArea .topSlider .topSlider_item .back.img04 { background: url(../img/top_main04_pc.jpg) no-repeat top center; background-size: cover; }
@media screen and (max-width: 768px) { .top .mainArea .topSlider .topSlider_item .back.img04 { background: url(../img/top_main04_sp.jpg) no-repeat top center; background-size: cover; } }
.top .mainArea .topCath { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 600px; height: 275px; z-index: 10; }
@media screen and (max-width: 768px) { .top .mainArea .topCath { width: 80%; height: auto; } }
.top .top-about { background: url(../img/top_bg01.png) no-repeat; background-size: cover; padding-top: 100px; }
@media screen and (max-width: 768px) { .top .top-about { padding-top: 70px; } }
.top .top-about .textBox .txt01 { font-size: 32px; font-weight: bold; text-align: center; margin-bottom: 30px; }
@media screen and (max-width: 768px) { .top .top-about .textBox .txt01 { font-size: 22px; margin-bottom: 20px; } }
.top .top-about .textBox .txt02 { font-size: 18px; line-height: 2.2; text-align: center; margin-bottom: 60px; }
@media screen and (max-width: 768px) { .top .top-about .textBox .txt02 { font-size: 16px; line-height: 2; margin-bottom: 40px; text-align: left; } }
.top .top-about .imgBox .box01 { overflow: hidden; margin-bottom: 4px; }
@media screen and (max-width: 768px) { .top .top-about .imgBox .box01 { margin-bottom: 1px; } }
.top .top-about .imgBox .box01 .img { float: left; width: 50%; }
.top .top-ftr { background: url(../img/top_bg02.jpg); background-repeat: no-repeat; background-size: cover; padding: 70px 0 100px; }
@media screen and (max-width: 768px) { .top .top-ftr { background-repeat: repeat-y; background-size: contain; padding: 60px 0 80px; } }
.top .top-ftr .c-title .-jp, .top .top-ftr .c-title .-en { color: #fff; }
.top .top-ftr .ftrList .item { background: #fff; overflow: hidden; padding: 50px; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item { padding: 20px; } }
.top .top-ftr .ftrList .item .img { float: left; width: 480px; margin-right: 50px; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item .img { float: none; width: auto; margin-right: 0; margin-bottom: 0; } }
.top .top-ftr .ftrList .item .box { float: right; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item .box { float: left; } }
.top .top-ftr .ftrList .item .box .tit { color: #1a6ca2; font-size: 46px; font-weight: bold; margin-bottom: 20px; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item .box .tit { font-size: 30px; text-align: center; margin-bottom: 10px; } }
.top .top-ftr .ftrList .item .box .txt { font-size: 18px; line-height: 2.2; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item .box .txt { font-size: 16px; line-height: 2; margin-bottom: 20px; } }
.top .top-ftr .ftrList .item.-reverse .img { float: right; margin-right: 0; margin-left: 50px; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item.-reverse .img { float: none; margin-left: 0; } }
.top .top-ftr .ftrList .item.-reverse .box { float: left; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item.-reverse .box { float: none; } }
.top .top-ftr .ftrList .item + .item { margin-top: 50px; }
@media screen and (max-width: 768px) { .top .top-ftr .ftrList .item + .item { margin-top: 30px; } }
.top .top-msg .msgBlock { overflow: hidden; }
.top .top-msg .msgBlock .img { float: right; width: 400px; }
@media screen and (max-width: 768px) { .top .top-msg .msgBlock .img { float: none; width: auto; margin-bottom: 20px; } }
.top .top-msg .msgBlock .txtBox { float: left; width: 650px; line-height: 2.2; }
@media screen and (max-width: 768px) { .top .top-msg .msgBlock .txtBox { float: right; width: auto; line-height: 2; } }
.top .top-msg .msgBlock .txtBox .txt { margin-bottom: 20px; }

/*# sourceMappingURL=top.css.map */