@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:wght@600&display=swap");
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

ul, ol {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

button, input, textarea {
  font: inherit;
  border: none;
  background: none;
}

img, video {
  max-width: 100%;
  height: auto;
}

table {
  border-collapse: collapse;
  width: 100%;
}

@font-face {
  font-family: "Noto Sans JP";
  font-weight: 400;
}
@font-face {
  font-family: "Noto Sans JP";
  font-weight: 700;
}
@font-face {
  font-family: "Noto Sans JP";
  font-weight: 900;
}
@font-face {
  font-family: "Poppins";
  font-weight: 600;
}
body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #0a0a0a;
  overflow-x: hidden;
}

.container_lg {
  width: 99.99936vw;
  padding: 0 40px;
  margin: 0 auto;
  max-width: 1540px;
}
@media (max-width: 1440px) {
  .container_lg {
    width: 86.11056vw;
    padding: 0;
    margin: 0 auto;
    max-width: 1240px;
  }
}
@media (max-width: 768px) {
  .container_lg {
    padding: 0;
    width: 89.3332vw;
  }
}

.container_md {
  width: 71.110656vw;
  margin: 0 auto;
  padding: 0;
  max-width: 1024px;
}
@media (max-width: 1024px) {
  .container_md {
    width: calc(100vw - 160px);
  }
}
@media (max-width: 768px) {
  .container_md {
    width: 89.3332vw;
  }
}

.container_sm {
  width: 58.888512vw;
  margin: 0 auto;
  padding: 0;
  max-width: 848px;
}
@media (max-width: 768px) {
  .container_sm {
    width: 89.3332vw;
  }
}

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

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

.loading {
  /*ローディング画面の縦横幅を画面いっぱいになるように指定*/
  width: 100vw;
  height: 100vh;
  /*ローディング画面の表示位置を固定*/
  position: fixed;
  top: 0;
  left: 0;
  background: #1899d6;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  /*ローディング画面を0.5秒かけて非表示にする*/
  transition: all 0.5s linear;
  z-index: 99999;
}

/*ローディング画面を非表示にする*/
.loading.loaded {
  /*0.5秒かけてopacityを0にする*/
  opacity: 0;
  visibility: hidden;
}

.loading-text {
  color: #FFF;
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}

.spinner {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 3px solid #FFF;
  border-left-color: #1082ce;
  /* アニメーションを1秒かけて実行 */
  animation: spinner-rotation 1s linear infinite;
}

/* アニメーションの設定 */
@keyframes spinner-rotation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
#header {
  position: fixed;
  width: 100%;
  top: 16px;
  left: 0;
  z-index: 9999;
}
#header .pc .inner {
  border-radius: 16px;
  padding: 10px 32px;
  background: rgb(255, 255, 255);
  width: calc(100% - 32px);
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: right;
  align-items: center;
}
#header .pc .logo {
  margin-right: auto;
}
#header .pc .logo a img {
  margin-top: 8px;
  width: 190px;
}
#header .pc .h_link {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.5;
  margin: 0 12px;
  transition: all 0.5s ease;
}
#header .pc .h_link:hover {
  color: #1899d6;
}
#header .pc .h_right {
  display: flex;
  flex-direction: row;
  justify-content: right;
  align-items: center;
}
#header .pc .h_right .tel_group {
  margin-left: 40px;
  margin-right: 16px;
}
#header .pc .h_right .tel_group .tel {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-bottom: -12px;
}
#header .pc .h_right .tel_group .tel .icon {
  width: 28px;
  height: 28px;
  margin-right: 4px;
}
#header .pc .h_right .tel_group .tel span {
  color: #1899d6;
  font-size: 24px;
  line-height: 1.5;
}
#header .pc .h_right .tel_group .info {
  color: #1899d6;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 400;
}
#header .pc .h_button a {
  background: #1899d6;
  color: #fff;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #fff;
  padding: 10px 38px;
  border-radius: 4px;
  transition: all 0.5s ease;
}
#header .pc .h_button a:hover {
  opacity: 0.6;
  color: #fff;
}
@media (max-width: 1440px) {
  #header .pc .inner {
    border-radius: 16px;
    padding: 10px 16px;
    background: rgb(255, 255, 255);
    width: calc(100% - 32px);
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: right;
    align-items: center;
  }
  #header .pc .logo {
    margin-right: auto;
  }
  #header .pc .logo a img {
    margin-top: 8px;
    width: 13.19436vw;
  }
  #header .pc .h_link {
    color: #000;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.5;
    margin: 0 8px;
    transition: all 0.5s ease;
  }
  #header .pc .h_link:hover {
    color: #1899d6;
  }
  #header .pc .h_right {
    display: flex;
    flex-direction: row;
    justify-content: right;
    align-items: center;
  }
  #header .pc .h_right .tel_group {
    margin-left: 18px;
    margin-right: 12px;
  }
  #header .pc .h_right .tel_group .tel {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-bottom: -6px;
  }
  #header .pc .h_right .tel_group .tel .icon {
    width: 24px;
    height: 24px;
    margin-right: 4px;
  }
  #header .pc .h_right .tel_group .tel span {
    color: #1899d6;
    font-size: 20px;
    line-height: 1.5;
  }
  #header .pc .h_right .tel_group .info {
    color: #1899d6;
    font-size: 12px;
    line-height: 1.5;
    font-weight: 400;
  }
  #header .pc .h_button a {
    background: #1899d6;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: 0.04em;
    color: #fff;
    padding: 10px 16px;
    border-radius: 4px;
    transition: all 0.5s ease;
  }
  #header .pc .h_button a:hover {
    opacity: 0.6;
    color: #fff;
  }
}
@media (max-width: 1024px) {
  #header .pc .inner {
    border-radius: 1.111104vw;
    padding: 18px 2.222208vw;
    width: calc(100% - 2.2222208vw);
  }
  #header .pc .logo {
    margin-right: auto;
  }
  #header .pc .logo a img {
    margin-top: 0.555552vw;
    width: 13.19436vw;
  }
  #header .pc .h_link {
    font-size: 12px;
    margin: 0 6px;
  }
  #header .pc .h_right .tel_group {
    display: none;
    margin-left: 16px;
    margin-right: 1.111104vw;
  }
  #header .pc .h_right .tel_group .tel {
    margin-bottom: -0.833328vw;
  }
  #header .pc .h_right .tel_group .tel .icon {
    width: 16px;
    height: 16px;
    margin-right: 0.277776vw;
  }
  #header .pc .h_right .tel_group .tel span {
    font-size: 12px;
  }
  #header .pc .h_right .tel_group .info {
    font-size: 10px;
  }
  #header .pc .h_button a {
    font-size: 14px;
    padding: 8px 16px;
    border-radius: 0.277776vw;
  }
}
@media (max-width: 768px) {
  #header {
    top: 0;
    padding: 4.26672vw 6.40008vw;
    filter: drop-shadow(0 0 10px rgba(10, 112, 26, 0.1607843137));
  }
  #header .pc {
    display: none;
  }
  #header .sp {
    position: relative;
    height: 10.6668vw;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 99;
  }
  #header .sp .logo {
    width: 40.0005vw;
    display: flex;
  }
  #header .sp .logo .h_logo {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative;
    z-index: 999;
  }
  #header .sp .ham_btn {
    width: 6.40008vw;
    height: 100%;
    z-index: 9999;
  }
  #header .sp .ham_btn span {
    width: 100%;
    height: 0.26667vw;
    background-color: #1899d6;
    position: relative;
    transition: ease 0.4s;
    display: block;
    border-radius: 1px;
  }
  #header .sp .ham_btn span:nth-child(1) {
    top: 0;
  }
  #header .sp .ham_btn span:nth-child(2) {
    margin: 2.13336vw 0;
  }
  #header .sp .ham_btn span:nth-child(3) {
    top: 0;
  }
  #header .sp .ham_btn.active span:nth-child(1) {
    top: 1.06668vw;
    transform: rotate(45deg);
  }
  #header .sp .ham_btn.active span:nth-child(2) {
    opacity: 0;
  }
  #header .sp .ham_btn.active span:nth-child(3) {
    top: -3.73338vw;
    transform: rotate(-45deg);
  }
  #header .sp .h_menu {
    position: absolute;
    width: 90vw;
    background: rgba(255, 255, 255, 0.97);
    z-index: 999;
    top: 0;
    left: 5vw;
    border-radius: 4.26672vw;
    margin-top: 14.93352vw;
    padding: 10.6668vw 10.6668vw;
    transition: 0.5s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    transform-origin: top;
    transform: translateY(-120vh) translateX(-6.40008vw);
    backdrop-filter: blur(10.6668vw);
  }
  #header .sp .h_menu li {
    padding: 4.00005vw 0;
    transition: 0.5s;
  }
  #header .sp .h_menu li .h_contact {
    padding: 2.13336vw 4.26672vw;
    border-radius: 1.06668vw;
    margin-left: 0;
  }
  #header .sp .h_menu a {
    font-weight: 700;
    font-size: 4.26672vw;
    transition: 0.5s;
  }
  #header .sp .h_menu.active {
    transform: translateY(0) translateX(-6.40008vw);
  }
}

footer {
  background: #313131;
  text-align: center;
  padding: 50px 0 40px;
}
footer .link_area {
  margin-top: 32px;
  margin-bottom: 64px;
}
footer .link_area ul {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
footer .link_area ul li {
  margin: 0 25px;
}
footer .link_area ul li a {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
  transition: all 0.5s ease;
}
footer .link_area ul li a:hover {
  opacity: 0.5;
}
footer small {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 1440px) {
  footer {
    padding: 3.4722vw 0 2.77776vw;
  }
  footer .link_area {
    margin-top: 2.222208vw;
    margin-bottom: 4.444416vw;
  }
  footer .link_area ul li {
    margin: 0 1.7361vw;
  }
  footer .link_area ul li a {
    font-size: 1.111104vw;
  }
  footer small {
    font-size: 1.111104vw;
  }
}
@media (max-width: 768px) {
  footer {
    padding: 10.6668vw 0;
  }
  footer .link_area {
    margin-top: 8.53344vw;
    margin-bottom: 10.6668vw;
  }
  footer .link_area ul {
    display: block;
  }
  footer .link_area ul li {
    margin: 0 0 6.40008vw;
  }
  footer .link_area ul li a {
    font-size: 3.73338vw;
  }
  footer .link_area ul li a:hover {
    opacity: 1;
  }
  footer small {
    font-size: 3.20004vw;
  }
}

.c_heading {
  text-align: center;
  margin-bottom: 50px;
}
.c_heading_sub {
  color: #C0C0C0;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 2px;
  position: relative;
}
.c_heading_sub::before {
  content: "";
  width: 4px;
  height: 2px;
  background-color: #1899d6;
  position: absolute;
  left: -10px;
  top: 8px;
}
.c_heading_sub::after {
  content: "";
  width: 4px;
  height: 2px;
  background-color: #1899d6;
  position: absolute;
  right: -10px;
  top: 8px;
}
.c_heading_h2 {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
@media (max-width: 1440px) {
  .c_heading {
    margin-bottom: 3.4722vw;
  }
  .c_heading_sub {
    font-size: 0.833328vw;
    margin-bottom: 0.138888vw;
  }
  .c_heading_sub::before {
    width: 0.277776vw;
    height: 0.138888vw;
    left: -0.69444vw;
    top: 0.555552vw;
  }
  .c_heading_sub::after {
    width: 0.277776vw;
    height: 0.138888vw;
    right: -0.69444vw;
    top: 0.555552vw;
  }
  .c_heading_h2 {
    font-size: 2.222208vw;
  }
}
@media (max-width: 1024px) {
  .c_heading {
    margin-bottom: 50px;
  }
  .c_heading_sub {
    font-size: 12px;
    margin-bottom: 2px;
  }
  .c_heading_sub::before {
    width: 4px;
    height: 2px;
    left: -10px;
    top: 8px;
  }
  .c_heading_sub::after {
    content: "";
    width: 4px;
    height: 2px;
    right: -10px;
    top: 8px;
  }
  .c_heading_h2 {
    font-size: 32px;
  }
}
@media (max-width: 768px) {
  .c_heading {
    margin-bottom: 10.6668vw;
  }
  .c_heading_sub {
    font-size: 3.20004vw;
    margin-bottom: 0.53334vw;
  }
  .c_heading_sub::before {
    width: 1.06668vw;
    height: 0.53334vw;
    left: -2.6667vw;
    top: 2.13336vw;
  }
  .c_heading_sub::after {
    width: 1.06668vw;
    height: 0.53334vw;
    right: -2.6667vw;
    top: 2.13336vw;
  }
  .c_heading_h2 {
    font-size: 6.40008vw;
  }
}

.c_button {
  display: block;
  width: fit-content;
  height: 60px;
  max-height: 60px;
  border-radius: 30px;
  background: var(----yellow-color, #FFD803);
  padding: 0vw 55px;
  font-size: 18px;
  font-weight: 900;
  line-height: 56px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: 0.4s cubic-bezier(0.45, 0, 0.55, 1);
}
.c_button::before {
  content: "";
  position: absolute;
  top: -120px;
  left: -320px;
  width: 500px;
  height: 80px;
  background: rgba(255, 255, 255, 0.6);
  transform: rotate(-45deg);
  opacity: 0.5;
  z-index: 0;
  transition: all 0.6s ease-out;
}
.c_button:hover {
  box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.4);
}
.c_button:hover::before {
  top: 100%;
  left: 100%;
}
@media (max-width: 1440px) {
  .c_button {
    height: 4.16664vw;
    max-height: 4.16664vw;
    border-radius: 2.08332vw;
    padding: 0vw 3.81942vw;
    font-size: 1.249992vw;
    line-height: 3.888864vw;
  }
}
@media (max-width: 768px) {
  .c_button {
    height: 14.93352vw;
    width: 100%;
    max-height: 14.93352vw;
    border-radius: 14.93352vw;
    font-size: 4.26672vw;
    line-height: 13.86684vw;
  }
}

body {
  position: relative;
}

.background_wrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -98;
}
.background_wrap iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: -100;
}
.background_wrap_overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -99;
  background-color: #000;
  opacity: 0.6;
}

.top_float {
  display: none;
}
@media (max-width: 768px) {
  .top_float {
    display: block;
    position: fixed;
    z-index: 9999;
    width: 92.00115vw;
    height: 64px;
    background-color: #1899d6;
    text-align: center;
    bottom: 16px;
    left: 4.00005vw;
    border-radius: 12px;
  }
  .top_float a {
    width: 100%;
    line-height: 64px;
    color: #fff;
    font-size: 16px;
    letter-spacing: 0.06em;
  }
}
.top_mv {
  position: relative;
  z-index: 2;
}
.top_mv:after {
  position: absolute;
  z-index: 1;
  content: "";
  width: 104.375vw;
  height: 28.194vw;
  background-image: url("../img/mv_bottom.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom center;
  bottom: 0;
  right: 0;
}
.top_mv .container_lg {
  padding-top: 135px;
  padding-bottom: 200px;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  column-gap: 24px;
}
.top_mv_left_catch {
  color: #fff;
  font-size: 48px;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 40px;
}
.top_mv_left_catch span {
  background-color: #fff;
  color: #1899d6;
  padding: 0 12px;
}
.top_mv_left_sub {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.08em;
  margin-bottom: 90px;
}
.top_mv_left_logo {
  width: 900px;
  text-align: center;
}
.top_mv_left_logo h3 {
  position: relative;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  margin: 0 auto;
  margin-bottom: 16px;
  display: block;
  width: fit-content;
}
.top_mv_left_logo h3::before {
  content: "";
  width: 2px;
  height: 24px;
  transform: rotate(-30deg);
  background-color: #fff;
  position: absolute;
  left: -12px;
  top: 2px;
}
.top_mv_left_logo h3::after {
  content: "";
  width: 2px;
  height: 24px;
  transform: rotate(30deg);
  background-color: #fff;
  position: absolute;
  right: -12px;
  top: 2px;
}
.top_mv_left_logo_area {
  border-radius: 8px;
  background-color: #fff;
  width: auto;
  height: 200px;
  position: relative;
  display: flex;
  overflow: hidden;
}
.top_mv_left_logo_img {
  max-width: none;
  width: 2344px;
  height: 200px;
}
.top_mv_left_logo_img:first-child {
  animation: loop 80s -40s linear infinite;
}
.top_mv_left_logo_img:last-child {
  animation: loop2 80s linear infinite;
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
    -ms-transform: translateX(-200%);
    transform: translateX(-200%);
  }
}
.top_mv_right {
  width: 540px;
  background-color: #fff;
  padding: 32px 16px;
  text-align: center;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.25);
}
.top_mv_right::before {
  content: "";
  background-color: #1899d6;
  width: 100%;
  height: 14px;
  position: absolute;
  top: 0;
  left: 0;
}
.top_mv_right h3 {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 1024px) {
  .top_mv_right {
    display: none;
  }
}
@media (max-width: 1440px) {
  .top_mv .container_lg {
    padding-top: 9.37494vw;
    padding-bottom: 13.8888vw;
  }
  .top_mv_left_catch {
    font-size: 3.055536vw;
    margin-bottom: 2.77776vw;
  }
  .top_mv_left_catch span {
    padding: 0 0.833328vw;
  }
  .top_mv_left_sub {
    font-size: 1.38888vw;
    margin-bottom: 6.24996vw;
  }
  .top_mv_left_logo {
    width: 44.166384vw;
  }
  .top_mv_left_logo h3 {
    font-size: 1.666656vw;
    margin-bottom: 1.111104vw;
  }
  .top_mv_left_logo h3::before {
    width: 0.138888vw;
    height: 1.666656vw;
    left: -3.20004vw;
    top: 0.138888vw;
  }
  .top_mv_left_logo h3::after {
    width: 0.138888vw;
    height: 1.666656vw;
    right: -3.20004vw;
    top: 0.138888vw;
  }
  .top_mv_left_logo_area {
    border-radius: 0.555552vw;
    height: 13.8888vw;
  }
  .top_mv_left_logo_img {
    width: 162.776736vw;
    height: 13.8888vw;
  }
  .top_mv_right {
    width: 30.55536vw;
    background-color: #fff;
    padding: 2.222208vw 1.111104vw;
    text-align: center;
    position: relative;
    border-radius: 0.555552vw;
    overflow: hidden;
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.25);
  }
  .top_mv_right::before {
    content: "";
    background-color: #1899d6;
    width: 100%;
    height: 0.972216vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .top_mv_right h3 {
    font-size: 1.38888vw;
    line-height: 1.5;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 1024px) {
  .top_mv .container_lg {
    display: block;
    padding-top: 160px;
    padding-bottom: 200px;
  }
  .top_mv_left_catch {
    font-size: 40px;
    margin-bottom: 40px;
  }
  .top_mv_left_catch span {
    padding: 0 12px;
  }
  .top_mv_left_sub {
    font-size: 20px;
    margin-bottom: 80px;
  }
  .top_mv_left_logo {
    width: 100%;
  }
  .top_mv_left_logo h3 {
    display: block;
    font-size: 20px;
    width: fit-content;
    margin: 0 auto;
    margin-bottom: 1.111104vw;
  }
  .top_mv_left_logo h3::before {
    width: 2px;
    height: 24px;
    left: -14px;
    top: 2px;
  }
  .top_mv_left_logo h3::after {
    width: 2px;
    height: 24px;
    right: -14px;
    top: 2px;
  }
  .top_mv_left_logo_area {
    border-radius: 0.555552vw;
    height: 13.8888vw;
  }
  .top_mv_left_logo_img {
    width: 162.776736vw;
    height: 13.8888vw;
  }
  .top_mv_right {
    width: 37.49976vw;
    background-color: #fff;
    padding: 2.222208vw 1.111104vw;
    text-align: center;
    position: relative;
    border-radius: 0.555552vw;
    overflow: hidden;
    box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.25);
  }
  .top_mv_right::before {
    content: "";
    background-color: #1899d6;
    width: 100%;
    height: 0.972216vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .top_mv_right h3 {
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 768px) {
  .top_mv:after {
    display: none;
  }
  .top_mv .container_lg {
    display: block;
    padding-top: 40.0005vw;
    padding-bottom: 0vw;
    margin-bottom: -20.80026vw;
  }
  .top_mv_left_catch {
    font-size: 6.40008vw;
    margin-bottom: 6.40008vw;
  }
  .top_mv_left_catch span {
    padding: 0 2.6667vw;
  }
  .top_mv_left_sub {
    font-size: 4.26672vw;
    margin-bottom: 17.06688vw;
  }
  .top_mv_left_logo {
    width: 100%;
  }
  .top_mv_left_logo h3 {
    font-size: 4.26672vw;
    margin-bottom: 4.26672vw;
  }
  .top_mv_left_logo h3::before {
    width: 0.26667vw;
    height: 4.26672vw;
    left: 2.6667vw;
    top: 0.26667vw;
  }
  .top_mv_left_logo h3::after {
    width: 0.26667vw;
    height: 4.26672vw;
    right: 2.6667vw;
    top: 0.26667vw;
  }
  .top_mv_left_logo_area {
    border-radius: 2.13336vw;
    height: 40.0005vw;
  }
  .top_mv_left_logo_img {
    width: 625.07448vw;
    height: 40.0005vw;
  }
}
.top_solution {
  background-color: #F2FBFF;
}
.top_solution .container_md {
  padding-top: 60px;
  padding-bottom: 54px;
}
.top_solution_inner {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 24px;
}
.top_solution_part {
  width: 500px;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
}
.top_solution_part:nth-child(3) h4 {
  min-height: 90px;
}
.top_solution_part_heading {
  background-image: url("../img/solution_heading_bg.png");
  background-size: cover;
  padding: 20px 24px;
}
.top_solution_part_heading h3 {
  color: #fff;
  font-size: 18px;
  color: #fff;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.top_solution_part_inner {
  padding: 20px;
  background-color: #fff;
}
.top_solution_part_inner h4 {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
.top_solution_part_inner h4 span {
  color: #1899d6;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
.top_solution_part_inner img {
  display: block;
  height: 150px;
  margin: 22px auto;
}
.top_solution_part_inner p {
  font-size: 14px;
  line-height: 1.75;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media (max-width: 1440px) {
  .top_solution .container_md {
    padding-top: 60px;
    padding-bottom: 54px;
  }
  .top_solution_inner {
    margin-bottom: -40px;
  }
  .top_solution_part {
    width: 100%;
    border-radius: 8px;
    margin-bottom: 40px;
  }
  .top_solution_part_heading {
    padding: 20px 40px;
  }
  .top_solution_part_heading h3 {
    font-size: 18px;
  }
  .top_solution_part_inner {
    padding: 24px 40px;
  }
  .top_solution_part_inner h4 {
    font-size: 20px;
  }
  .top_solution_part_inner h4 span {
    font-size: 14px;
  }
  .top_solution_part_inner img {
    height: 200px;
    margin: 32px auto;
  }
  .top_solution_part_inner p {
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .top_solution .container_md {
    padding-top: 40.53384vw;
    padding-bottom: 17.06688vw;
  }
  .top_solution_inner {
    display: block;
    margin-bottom: -10.6668vw;
  }
  .top_solution_part {
    width: 100%;
    border-radius: 2.13336vw;
    margin-bottom: 10.6668vw;
  }
  .top_solution_part_heading {
    padding: 5.3334vw 6.40008vw;
  }
  .top_solution_part_heading h3 {
    font-size: 4.80006vw;
  }
  .top_solution_part_inner {
    padding: 5.3334vw;
  }
  .top_solution_part_inner h4 {
    font-size: 5.3334vw;
  }
  .top_solution_part_inner h4 span {
    font-size: 3.73338vw;
  }
  .top_solution_part_inner img {
    height: 40.0005vw;
    margin: 5.86674vw auto;
  }
  .top_solution_part_inner p {
    font-size: 3.73338vw;
  }
}
.top_reason {
  background: #fff;
}
.top_reason .container_md {
  padding: 130px 0 100px;
}
.top_reason_part {
  padding: 32px 56px;
  background: #F9F9F9;
  border-radius: 8px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 72px;
}
.top_reason_part .left {
  max-width: 608px;
}
.top_reason_part .left h3 {
  font-size: 26px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
}
.top_reason_part .left p {
  font-size: 14px;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.06em;
}
.top_reason_part .right img {
  width: auto;
  height: 250px;
}
@media (max-width: 1440px) {
  .top_reason .container_md {
    padding: 80px 0 80px;
  }
  .top_reason_part {
    padding: 40px 40px;
    margin-bottom: 72px;
    display: block;
  }
  .top_reason_part .left {
    max-width: none;
  }
  .top_reason_part .left h3 {
    font-size: 24px;
    margin-bottom: 12px;
  }
  .top_reason_part .left p {
    font-size: 16px;
  }
  .top_reason_part .right img {
    display: block;
    margin: 24px auto 0;
    height: 300px;
  }
}
@media (max-width: 768px) {
  .top_reason .container_md {
    padding: 21.3336vw 0 21.3336vw;
  }
  .top_reason_part {
    padding: 8.53344vw 6.40008vw;
    border-radius: 2.13336vw;
    display: block;
    margin-bottom: 10.6668vw;
  }
  .top_reason_part .left {
    max-width: none;
  }
  .top_reason_part .left h3 {
    font-size: 5.3334vw;
    margin-bottom: 3.20004vw;
  }
  .top_reason_part .left p {
    font-size: 3.73338vw;
  }
  .top_reason_part .right {
    margin-top: 6.40008vw;
  }
  .top_reason_part .right img {
    height: 100%;
  }
}
.top_window {
  position: relative;
  width: 100vw;
  height: 820px;
}
.top_window::before {
  content: "";
  position: absolute;
  display: block;
  width: 430px;
  height: 493px;
  background-image: url("../img/window_pc_left.svg");
  background-size: cover;
  background-position: left bottom;
  left: 0;
  bottom: 0;
}
.top_window::after {
  content: "";
  position: absolute;
  display: block;
  width: 430px;
  height: 493px;
  background-image: url("../img/window_pc_right.svg");
  background-size: cover;
  background-position: right top;
  right: 0;
  top: 0;
}
@media (max-width: 1440px) {
  .top_window {
    height: 133.335vw;
  }
  .top_window::before {
    width: 182px;
    height: 344px;
    background-image: url("../img/window_sp_left.svg");
  }
  .top_window::after {
    width: 182px;
    height: 344px;
    background-image: url("../img/window_sp_right.svg");
  }
}
.top_function {
  background: #F2FBFF;
}
.top_function .container_md {
  padding: 80px 0 100px;
}
.top_function_inner {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 50px;
}
.top_function_part {
  width: 300px;
  text-align: center;
}
.top_function_part img {
  display: block;
  height: 150px;
  width: auto;
  margin: 0 auto 20px;
}
.top_function_part h3 {
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-bottom: 12px;
}
.top_function_part p {
  text-align: left;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
@media (max-width: 1440px) {
  .top_function .container_md {
    padding: 80px 0 100px;
  }
  .top_function_inner {
    margin: 0 -25px -50px;
  }
  .top_function_part {
    width: 300px;
    margin: 0 25px 50px;
  }
  .top_function_part img {
    height: 150px;
    margin: 0 auto 20px;
  }
  .top_function_part h3 {
    font-size: 18px;
    margin-bottom: 12px;
  }
  .top_function_part p {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .top_function .container_md {
    padding: 21.3336vw 0 26.667vw;
  }
  .top_function_inner {
    display: block;
    margin: 0 0 -14.40018vw;
  }
  .top_function_part {
    width: 100%;
    margin: 0 0 14.40018vw;
  }
  .top_function_part img {
    height: 40.0005vw;
    margin: 0 auto 3.20004vw;
  }
  .top_function_part h3 {
    font-size: 4.80006vw;
    margin-bottom: 3.20004vw;
  }
  .top_function_part p {
    font-size: 3.73338vw;
  }
}
.top_flow {
  background: #fff;
}
.top_flow .container_md {
  padding: 80px 0;
}
.top_flow_inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 -48px;
}
.top_flow_part {
  position: relative;
  text-align: center;
  width: fit-content;
}
.top_flow_part::after {
  position: absolute;
  content: "";
  width: 14px;
  height: 14px;
  background-image: url("../img/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 93px;
  right: -23px;
}
.top_flow_part:last-child::after {
  display: none;
}
.top_flow_part .num {
  position: absolute;
  color: #fff;
  font-size: 16px;
  display: block;
  line-height: 32px;
  width: 32px;
  height: 32px;
  background-color: #1899d6;
  border-radius: 32px;
  top: -16px;
  left: calc(50% - 16px);
}
.top_flow_part .img {
  width: 200px;
  height: 200px;
  background-color: #F2FBFF;
  border-radius: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top_flow_part .img img {
  width: auto;
  height: 140px;
}
.top_flow_part h3 {
  margin-top: 12px;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
@media (max-width: 1440px) {
  .top_flow .container_md {
    padding: 5.55552vw 0;
  }
  .top_flow_inner {
    margin: 0 -3.333312vw;
  }
  .top_flow_part::after {
    width: 0.972216vw;
    height: 0.972216vw;
    top: 6.458292vw;
    right: -1.597212vw;
  }
  .top_flow_part .num {
    font-size: 1.111104vw;
    line-height: 2.222208vw;
    width: 2.222208vw;
    height: 2.222208vw;
    border-radius: 2.222208vw;
    top: -1.111104vw;
    left: calc(50% - 1.111104vw);
  }
  .top_flow_part .img {
    width: 13.8888vw;
    height: 13.8888vw;
    border-radius: 6.9444vw;
  }
  .top_flow_part .img img {
    height: 9.72216vw;
  }
  .top_flow_part h3 {
    margin-top: 0.833328vw;
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .top_flow .container_md {
    padding: 21.3336vw 0;
  }
  .top_flow_inner {
    display: block;
    margin: 21.3336vw 0 -14.93352vw;
  }
  .top_flow_part {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: left;
    align-items: center;
    width: 90%;
    margin: 0 auto;
    margin-bottom: 21.3336vw;
  }
  .top_flow_part::after {
    position: absolute;
    content: "";
    width: 7.46676vw;
    height: 7.46676vw;
    background-image: url("../img/arrow.svg");
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(90deg);
    top: auto;
    bottom: -13.86684vw;
    right: calc(50% - 3.73338vw);
  }
  .top_flow_part .num {
    font-size: 5.3334vw;
    line-height: 11.73348vw;
    width: 11.73348vw;
    height: 11.73348vw;
    border-radius: 8.53344vw;
    top: -2.6667vw;
    left: -2.13336vw;
  }
  .top_flow_part .img {
    width: 40.0005vw;
    height: 40.0005vw;
    border-radius: 26.667vw;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .top_flow_part .img img {
    height: 26.667vw;
  }
  .top_flow_part h3 {
    text-align: left;
    margin-top: 0vw;
    margin-left: 4.80006vw;
    font-size: 4.80006vw;
  }
}
.top_case .container_md {
  padding: 80px 0 100px;
}
.top_case .container_md .c_heading_sub {
  color: #fff;
}
.top_case .container_md .c_heading_sub::before {
  background-color: #fff;
}
.top_case .container_md .c_heading_sub::after {
  background-color: #fff;
}
.top_case .container_md .c_heading_h2 {
  color: #fff;
}
.top_case_inner {
  margin: 0 -48px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}
.top_case_part {
  padding: 10px;
  background-color: #fff;
  text-align: center;
  width: 347px;
  border-radius: 8px;
  position: relative;
  transition: all 0.5s ease;
}
.top_case_part:hover {
  opacity: 0.5;
}
.top_case_part a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.top_case_part_img {
  width: 100%;
  height: auto;
  margin-bottom: 16px;
  border-radius: 8px;
}
.top_case_part h3 {
  color: #1899d6;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-bottom: 16px;
}
.top_case_part p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.04em;
}
.top_case_part .bottom {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
}
.top_case_part .bottom img {
  height: 40px;
  width: auto;
}
.top_case_part .bottom span {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media (max-width: 1440px) {
  .top_case .container_md {
    padding: 5.55552vw 0 6.9444vw;
  }
  .top_case_inner {
    margin: 0 -3.333312vw;
  }
  .top_case_part {
    padding: 0.69444vw;
    width: 22.708188vw;
    border-radius: 0.555552vw;
  }
  .top_case_part_img {
    margin-bottom: 1.111104vw;
    border-radius: 0.555552vw;
  }
  .top_case_part h3 {
    font-size: 16px;
    margin-bottom: 1.111104vw;
  }
  .top_case_part p {
    font-size: 14px;
  }
  .top_case_part .bottom {
    margin-top: 1.666656vw;
  }
  .top_case_part .bottom img {
    height: 2.77776vw;
  }
  .top_case_part .bottom span {
    font-size: 12px;
  }
}
@media (max-width: 768px) {
  .top_case .container_md {
    padding: 21.3336vw 0;
  }
  .top_case_inner {
    margin: 0;
    display: block;
    margin-bottom: -6.40008vw;
  }
  .top_case_part {
    padding: 2.6667vw;
    width: 100%;
    border-radius: 2.13336vw;
    margin-bottom: 6.40008vw;
  }
  .top_case_part_img {
    width: 100%;
    margin-bottom: 4.26672vw;
    border-radius: 2.13336vw;
  }
  .top_case_part h3 {
    font-size: 4.26672vw;
    margin-bottom: 4.26672vw;
  }
  .top_case_part p {
    font-size: 3.73338vw;
  }
  .top_case_part .bottom {
    margin-top: 6.40008vw;
  }
  .top_case_part .bottom img {
    height: 10.6668vw;
  }
  .top_case_part .bottom span {
    font-size: 3.20004vw;
  }
}
.top_contact .content {
  width: 800px;
  margin: 0 auto 80px;
  background-color: #fff;
  border-radius: 16px;
  text-align: center;
  padding: 48px 40px;
}
.top_contact .content .contact_desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.06em;
}
.top_contact iframe body {
  background-color: #fff !important;
}
@media (max-width: 768px) {
  .top_contact .content {
    width: 100%;
    margin: 0 auto 10.6668vw;
    background-color: #fff;
    border-radius: 2.13336vw;
    text-align: center;
    padding: 10.6668vw 0;
  }
  .top_contact .content .contact_desc {
    font-size: 3.73338vw;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.06em;
    padding: 0 4.26672vw;
  }
  .top_contact iframe body {
    background-color: #fff !important;
  }
}

.function_title .container_md {
  padding: 167px 0 30px;
}
.function_title .container_md .c_heading_sub {
  color: #fff;
}
.function_title .container_md .c_heading_sub::before {
  background-color: #fff;
}
.function_title .container_md .c_heading_sub::after {
  background-color: #fff;
}
.function_title .container_md .c_heading_h2 {
  color: #fff;
}
.function_content {
  background-color: #fff;
}
.function_content .container_md {
  padding: 80px 0 100px;
}
.function_content_nav {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  row-gap: 16px;
  margin-bottom: 40px;
}
.function_content_nav_item {
  width: fit-content;
  position: relative;
}
.function_content_nav_item a {
  display: block;
  text-align: center;
  font-size: 18px;
  font-weight: 900;
  color: #1899d6;
  padding: 16px 0;
  width: 320px;
  border: solid 2px #1899d6;
  background-color: #fff;
  border-radius: 8px;
  transition: all 0.3s ease;
}
.function_content_nav_item::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  background-image: url("../img/arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: calc(50% - 4px);
  right: 18px;
  transform: rotate(90deg);
}
.function_content_nav_item:hover a {
  background-color: #F2FBFF;
}
.function_content_inner {
  margin-bottom: -24px;
}
.function_content_item {
  display: flex;
  flex-direction: row;
  justify-content: left;
  align-items: center;
  padding: 32px 0 32px 56px;
  background: #F9F9F9;
  border-radius: 8px;
  column-gap: 40px;
  margin-bottom: 24px;
}
.function_content_item img {
  width: 300px;
}
.function_content_item .txt {
  max-width: 584px;
}
.function_content_item .txt h3 {
  font-size: 24px;
  letter-spacing: 0.08em;
  line-height: 1.5;
  margin-bottom: 10px;
}
.function_content_item .txt p {
  font-size: 16px;
  letter-spacing: 0.06em;
  font-weight: 400;
  line-height: 2;
}

.download_title .container_md {
  padding: 167px 0 80px;
}
.download_title .container_md .c_heading_sub {
  color: #fff;
}
.download_title .container_md .c_heading_sub::before {
  background-color: #fff;
}
.download_title .container_md .c_heading_sub::after {
  background-color: #fff;
}
.download_title .container_md .c_heading_h2 {
  color: #fff;
}
.download_title .container_md p {
  margin-top: -34px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.5;
  color: #fff;
}
@media (max-width: 1440px) {
  .download_title .container_md {
    padding: 11.597148vw 0 5.55552vw;
  }
  .download_title .container_md p {
    margin-top: -2.361096vw;
    font-size: 1.249992vw;
  }
}
@media (max-width: 768px) {
  .download_title .container_md {
    padding: 32.0004vw 0 21.3336vw;
  }
  .download_title .container_md p {
    margin-top: -9.06678vw;
    font-size: 3.73338vw;
  }
}
.download_content {
  background: #fff;
}
.download_content .container_md {
  padding: 64px 0 150px;
}
@media (max-width: 1440px) {
  .download_content .container_md {
    padding: 4.444416vw 0 10.4166vw;
  }
}
@media (max-width: 768px) {
  .download_content .container_md {
    padding: 17.06688vw 0 40.0005vw;
  }
}
.download_content_nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 40px;
}
.download_content_nav .title p {
  color: #1899d6;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  position: relative;
}
.download_content_nav .title p:after {
  position: absolute;
  content: "";
  width: 40px;
  height: 2px;
  background-color: #1899d6;
  right: -50px;
  top: calc(50% - 1px);
}
.download_content_nav .list {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 867px;
  flex-wrap: wrap;
  margin-right: -10px;
}
.download_content_nav .list a {
  display: block;
  min-width: 127px;
  height: 37px;
  padding: 0 16px;
  font-size: 16px;
  font-weight: 700;
  line-height: 36px;
  text-align: center;
  letter-spacing: 0.08em;
  margin-right: 10px;
  margin-bottom: 12px;
  background-color: #fff;
  color: #1899d6;
  border: solid #1899d6 1px;
  border-radius: 24px;
  transition: all 0.5s ease;
}
.download_content_nav .list a:hover {
  opacity: 0.5;
}
.download_content_nav .list a.current {
  background-color: #1899d6;
  color: #fff;
}
@media (max-width: 1440px) {
  .download_content_nav {
    margin-bottom: 2.77776vw;
  }
  .download_content_nav .title p {
    font-size: 1.38888vw;
  }
  .download_content_nav .title p:after {
    width: 2.77776vw;
    height: 0.138888vw;
    right: -3.4722vw;
    top: calc(50% - 1px);
  }
  .download_content_nav .list {
    width: 60.207948vw;
    margin-right: -0.69444vw;
  }
  .download_content_nav .list a {
    min-width: 8.819388vw;
    height: 2.569428vw;
    padding: 0 1.111104vw;
    font-size: 1.111104vw;
    line-height: 2.499984vw;
    margin-right: 0.69444vw;
    margin-bottom: 0.833328vw;
    border-radius: 1.666656vw;
  }
}
@media (max-width: 768px) {
  .download_content_nav {
    display: block;
    margin-bottom: 10.6668vw;
  }
  .download_content_nav .title {
    display: none;
    margin-bottom: 4.26672vw;
  }
  .download_content_nav .title p {
    font-size: 5.3334vw;
  }
  .download_content_nav .title p:after {
    display: none;
  }
  .download_content_nav .list {
    width: 100%;
    margin-right: -2.6667vw;
    justify-content: center;
  }
  .download_content_nav .list a {
    display: block;
    min-width: 127px;
    height: 37px;
    padding: 0 16px;
    font-size: 16px;
    font-weight: 700;
    line-height: 36px;
    text-align: center;
    letter-spacing: 0.08em;
    margin-right: 10px;
    margin-bottom: 12px;
    background-color: #fff;
    color: #1899d6;
    border: solid #1899d6 1px;
    border-radius: 24px;
    transition: all 0.5s ease;
  }
  .download_content_nav .list a:hover {
    opacity: 0.5;
  }
  .download_content_nav .list a.current {
    background-color: #1899d6;
    color: #fff;
  }
}
.download_content_inner {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
}
.download_content_inner .item {
  width: 504px;
  background-color: #fff;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.25);
  padding: 24px;
  border-radius: 12px;
  margin-bottom: 30px;
}
.download_content_inner .item img {
  display: block;
  height: 212px;
  width: auto;
  margin: 0 auto 16px;
}
.download_content_inner .item h3 {
  text-align: center;
  color: #1899d6;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04;
  margin-bottom: 8px;
}
.download_content_inner .item p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.04em;
}
@media (max-width: 1440px) {
  .download_content_inner .item {
    width: 34.999776vw;
    padding: 1.666656vw;
    border-radius: 0.833328vw;
    margin-bottom: 2.08332vw;
  }
  .download_content_inner .item img {
    height: 14.722128vw;
    margin: 0 auto 1.111104vw;
  }
  .download_content_inner .item h3 {
    font-size: 1.38888vw;
    margin-bottom: 0.555552vw;
  }
  .download_content_inner .item p {
    font-size: 0.972216vw;
  }
}
@media (max-width: 768px) {
  .download_content_inner .item {
    width: 100%;
    padding: 6.40008vw;
    border-radius: 3.20004vw;
    margin-bottom: 6.40008vw;
  }
  .download_content_inner .item img {
    height: 40.0005vw;
    margin: 0 auto 4.26672vw;
  }
  .download_content_inner .item h3 {
    font-size: 4.26672vw;
    margin-bottom: 2.13336vw;
  }
  .download_content_inner .item p {
    font-size: 3.73338vw;
  }
}
.download_content_inner .btn_download {
  display: block;
  margin-top: 32px;
  width: 100%;
  background-color: #1899d6;
  color: #fff;
  font-size: 18px;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding: 16px 0 17px;
  position: relative;
  border-radius: 8px;
  transition: all 0.5s ease;
}
.download_content_inner .btn_download::after {
  position: absolute;
  content: "";
  width: 28px;
  height: 28px;
  background-image: url("../img/icon_download.svg");
  top: 16px;
  right: 16px;
}
.download_content_inner .btn_download:hover {
  opacity: 0.6;
}
@media (max-width: 1440px) {
  .download_content_inner .btn_download {
    margin-top: 2.222208vw;
    font-size: 1.249992vw;
    padding: 1.111104vw 0 1.180548vw;
    border-radius: 0.555552vw;
  }
  .download_content_inner .btn_download::after {
    width: 1.944432vw;
    height: 1.944432vw;
    top: 1.111104vw;
    right: 1.111104vw;
  }
}
@media (max-width: 768px) {
  .download_content_inner .btn_download {
    margin-top: 8.53344vw;
    font-size: 4.26672vw;
    padding: 4.26672vw 0 4.53339vw;
    border-radius: 2.13336vw;
  }
  .download_content_inner .btn_download::after {
    width: 5.3334vw;
    height: 5.3334vw;
    top: 4.80006vw;
    right: 4.26672vw;
    background-size: contain;
  }
}
.download_content_inner .load_more {
  width: 100%;
  margin-top: -44px;
}
@media (max-width: 1440px) {
  .download_content_inner .load_more {
    margin-top: -3.055536vw;
  }
}
.download_content_inner .btn_more {
  display: block;
  margin-top: 32px;
  width: 100%;
  background-color: #fff;
  color: #1899d6;
  border: solid #1899d6 1px;
  font-size: 18px;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding: 16px 0 17px;
  position: relative;
  border-radius: 8px;
  transition: all 0.5s ease;
}
.download_content_inner .btn_more::after {
  position: absolute;
  content: "";
  width: 28px;
  height: 28px;
  background-image: url("../img/icon_download.svg");
  top: 16px;
  right: 16px;
}
.download_content_inner .btn_more:hover {
  opacity: 0.6;
}
@media (max-width: 1440px) {
  .download_content_inner {
    margin-top: 2.222208vw;
    font-size: 1.249992vw;
    padding: 1.111104vw 0 1.180548vw;
    border-radius: 0.555552vw;
  }
  .download_content_inner::after {
    width: 1.944432vw;
    height: 1.944432vw;
    top: 1.111104vw;
    right: 1.111104vw;
  }
}

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