@charset "UTF-8";
/* ======================================================================
 setting
====================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Roboto:ital,wght@1,100&display=swap");
@font-face {
  font-family: 'Kozuka Gothic Pr6N';
  src: url(../fonts/kozgopr6n-regular.otf);
}
@font-face {
  font-family: 'Meiryo UI';
  src: url(../fonts/Meiryo-UI-W53-Regular.ttf) format("ttf");
}
@font-face {
  font-family: '03SmartFontUI';
  src: url(../fonts/智能字体03SmartFontUI.otf);
}
/* ======================================================================
 p_top
====================================================================== */
.p_top .txt-ttl {
  background-color: #000000;
  font-size: 2.2rem;
  line-height: 1.2;
  padding: 0.5rem 1rem;
  text-align: center;
  font-family: "03SmartFontUI";
}
@media screen and (min-width: 969px) {
  .p_top .txt-ttl {
    font-size: calc(30/1920*100vw);
    line-height: calc(50/33);
    padding: calc(5/1920*100vw) calc(10/1920*100vw);
    color: #fff;
    text-align: left;
  }
}
.p_top .banner {
  position: relative;
}
.p_top .banner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.p_top .banner .bg-banner {
  line-height: 0;
}
.p_top .banner .bg-ttl {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  max-width: 100%;
  width: 100%;
  padding-left: 1.5rem;
}
@media screen and (min-width: 969px) {
  .p_top .banner .bg-ttl {
    width: calc(790/1920*100vw);
    padding-left: 0;
  }
}
@media screen and (min-width: 969px) {
  .p_top .banner .bg-des {
    width: calc(720/1920*100vw);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(260/1920*100vw);
    z-index: 2;
  }
}
.p_top .banner .btn {
  padding: 0 3rem;
  width: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(290/1920*100vw);
  z-index: 2;
}
@media screen and (min-width: 969px) {
  .p_top .banner .btn {
    width: calc(740/1920*100vw);
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(160/1920*100vw);
    z-index: 2;
  }
}
.p_top .banner .btn .container {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 969px) {
  .p_top .banner .btn .container {
    max-width: calc(1015/1920*100vw);
  }
}
.p_top .banner .btn .cs-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
@media screen and (min-width: 969px) {
  .p_top .banner .btn .cs-flex {
    align-items: flex-start;
    flex-direction: row;
  }
}
.p_top .banner .btn .cs-btn {
  display: inline-block;
  color: #fff;
  background-color: #000000;
  font-size: 1.5rem;
  font-family: "03SmartFontUI";
  padding: 0.8rem 0.5rem;
  border-radius: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  width: 70%;
}
@media screen and (min-width: 969px) {
  .p_top .banner .btn .cs-btn {
    width: calc(50% - calc(20/1920*100vw));
    border-radius: calc(10/1920*100vw);
    padding: calc(15/1920*100vw) calc(10/1920*100vw);
    font-size: calc(40/1920*100vw);
    margin-bottom: 0;
  }
}
.p_top .main_content {
  padding: 1.5rem 1rem;
}
@media screen and (min-width: 969px) {
  .p_top .main_content {
    padding: 5.5rem 0 2.5rem 0;
  }
}
@media screen and (max-width: 968px) {
  .p_top .main_content .bg-des {
    margin-bottom: 0.5rem;
  }
}
.p_top .main_content .text-content {
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.5;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 2rem;
  color: #000000;
}
@media screen and (min-width: 969px) {
  .p_top .main_content .text-content {
    font-size: calc(26/1920*100vw);
    line-height: calc(50/26);
    margin-bottom: calc(60/1920*100vw);
  }
}
.p_top .main_content .group-img {
  margin-bottom: 3rem;
  padding: 0 1rem;
}
@media screen and (min-width: 969px) {
  .p_top .main_content .group-img {
    margin-bottom: calc(55/1920*100vw);
    padding: 0;
  }
}
.p_top .main_content .group-img .container {
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 969px) {
  .p_top .main_content .group-img .container {
    max-width: calc(1420/1920*100vw);
  }
}
.p_top .main_content .group-img .cs-flex {
  display: flex;
  align-items: flex-end;
  justify-content: space-around;
  flex-wrap: wrap;
}
@media screen and (max-width: 968px) {
  .p_top .main_content .group-img .cs-flex {
    justify-content: center;
  }
}
.p_top .main_content .group-img .cs-flex .list {
  width: 48%;
  display: flex;
  align-items: center;
  text-align: center;
  margin: 0 0 20px;
}
@media screen and (max-width: 968px) {
  .p_top .main_content .group-img .cs-flex .list {
    width: 100%;
  }
}
.p_top .main_content .group-img .gr-top .c-left {
  margin-bottom: 1rem;
}
@media screen and (min-width: 969px) {
  .p_top .main_content .group-img .gr-top .c-left {
    width: calc(50% - 0.5rem);
    margin-bottom: 0;
    text-align: right;
  }
}
.p_top .main_content .group-img .gr-top .c-right {
  margin-bottom: 1rem;
}
@media screen and (min-width: 969px) {
  .p_top .main_content .group-img .gr-top .c-right {
    max-width: calc(50% - 0.5rem);
    margin-bottom: 0;
    text-align: left;
  }
}
.p_top .main_content .group-img .gr-bot .c-left {
  margin-bottom: 1rem;
}
@media screen and (min-width: 969px) {
  .p_top .main_content .group-img .gr-bot .c-left {
    width: calc(50% - 0.5rem);
    margin-bottom: 0;
    text-align: right;
  }
}
@media screen and (min-width: 969px) {
  .p_top .main_content .group-img .gr-bot .c-right {
    width: calc(50% - 0.5rem);
    text-align: right;
  }
}
.p_top .main_content .text-des-img {
  color: #000000;
  text-align: center;
  font-size: 1.1rem;
  margin-bottom: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  line-height: calc(20/11);
}
@media screen and (min-width: 969px) {
  .p_top .main_content .text-des-img {
    font-size: calc(24/1920*100vw);
    line-height: calc(50/24);
    margin-bottom: 0;
  }
}
.p_top .main_content .text-copyright {
  color: #000000;
  text-align: center;
  font-size: 1.1rem;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 0;
  line-height: calc(20/11);
}
@media screen and (min-width: 969px) {
  .p_top .main_content .text-copyright {
    font-size: calc(24/1920*100vw);
    line-height: calc(50/24);
    margin-bottom: 0;
  }
}
.p_top .ico {
  width: 100%;
}
@media screen and (min-width: 969px) {
  .p_top .mw-100 {
    max-width: 100% !important;
  }
}
@media screen and (min-width: 969px) {
  .p_top .text-lg-align-left {
    text-align: left !important;
  }
}
@media screen and (min-width: 969px) {
  .p_top .flex-lg-row-reverse {
    flex-direction: row-reverse;
  }
}
@media screen and (max-width: 968px) {
  .p_top .flex-sp-column-reverse {
    flex-direction: column;
  }
}
@media screen and (max-width: 968px) {
  .p_top .flex-sp-col-reverse {
    flex-direction: column;
    align-items: center !important;
  }
}
.p_top .align-sp-center {
  align-items: center !important;
}

.widget {
  margin: 0 0 60px;
}
.widget .inner .flex {
  display: flex;
  justify-content: center;
}
.widget .inner .flex .item {
  width: 800px;
}
.widget .inner .flex .item .ttl {
  background: #f67c29;
  padding: 14px 10px 10px;
  font-size: 2rem;
  font-weight: bold;
}
.widget .inner .flex .item .widget_item {
  border: solid 2px #f67c29;
  padding: 0 10px 10px;
}
@media screen and (max-width: 968px) {
  .widget .inner .flex .item .widget_item {
    overflow: scroll;
  }
}

/*# sourceMappingURL=top.css.map */
