@charset "UTF-8";
/* 日本語 */
.head { background-color: #D0F5FE; padding: 90px 0 80px; }
.head h1 { max-width: 880px; height: 220px; width: calc(100% - 180px); margin: 0 auto; border: 12px solid #08F7EF; background: url("../image/single.svg") center center repeat #DFF9FF; border-radius: 30px; text-align: center; display: flex; flex-direction: column; flex-wrap: wrap; justify-content: center; align-items: center; font: 6.4rem/1em "Nunito", sans-serif; font-weight: 900; }
.head h1 span { margin: 20px 0 0; font: 2.5rem/1em "LINE Seed JP", sans-serif; font-weight: 700; letter-spacing: 0.05em; }
.head h1 rt { font-weight: 400; margin: 0 0 8px; }

/*min-width:1920px*/
/*max-width:1280px*/
@media (max-width: 1024px) { .head h1 { max-width: 768px; } }
/*max-width:1024px*/
@media (max-width: 768px) { .head h1 { max-width: 480px; height: 200px; width: calc(100% - 50px); font: 6rem/1em "Nunito", sans-serif; font-weight: 900; }
  .head h1 span { margin: 10px 0 0; } }
/*max-width:768px*/
@media (max-width: 480px) { .head h1 { height: 170px; font: 4.6rem/1em "Nunito", sans-serif; font-weight: 900; border: 10px solid #08F7EF; }
  .head h1 span { margin: 10px 0 0; font: 2.4rem/1em "LINE Seed JP", sans-serif; font-weight: 700; letter-spacing: 0.05em; } }
/*max-width:480px*/
/**********************************************/
.company { background-color: #D0F5FE; padding: 0 0 60px; }
.company .company_box { max-width: 1240px; width: calc(100% - 160px); margin: 0 auto; }
.company h2 { margin-bottom: 40px; font: 2.8rem/1.7em "LINE Seed JP", sans-serif; font-weight: 700; letter-spacing: 0.05em; border-bottom: #9EC6C6 1px solid; padding: 0 0 20px 45px; position: relative; }
.company h2:before { position: absolute; content: ""; left: 0; top: 5px; transform: translateY(0%); display: block; background-color: #08F7EF; width: 15px; height: calc(100% - 30px); }
.company .flex { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
.company .txt { max-width: 510px; width: calc(45% - 40px); font: 1.8rem/2em "Noto Sans JP", sans-serif; font-weight: 500; letter-spacing: 0.05em; }
.company .txt p { margin-bottom: 20px; }
.company .txt p:last-of-type { margin: 0; }
.company .pic { width: 55%; max-width: 690px; }

.slider { width: 100%; position: relative; }

.slider .slick-prev { left: 15px; z-index: 2; }

.slider .slick-next { right: 15px; z-index: 2; }

.slide_item { width: 100%; aspect-ratio: 690 / 460; overflow: hidden; position: relative; }

.slide_item img { display: block; width: auto; max-width: none; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.slider .slick-prev, .slider .slick-next { width: 36px; height: 36px; border-radius: 50%; background: #fff; z-index: 2; transition: 0.3s; }

.slider .slick-prev { left: 15px; }

.slider .slick-next { right: 15px; }

.slider .slick-prev:hover, .slider .slick-next:hover { background: #FFF579; }

/* Slick標準の矢印を消す */
.slider .slick-prev::before, .slider .slick-next::before { content: ""; display: block; width: 9px; height: 9px; border-top: 2px solid #666; border-right: 2px solid #666; opacity: 1; position: absolute; top: 50%; left: 50%; }

/* 左矢印 */
.slider .slick-prev::before { transform: translate(-35%, -50%) rotate(-135deg); }

/* 右矢印 */
.slider .slick-next::before { transform: translate(-65%, -50%) rotate(45deg); }

.slider .slick-dots { bottom: -20px; display: flex; justify-content: center; gap: 8px; }

.slider .slick-dots li { width: auto; height: auto; margin: 0; }

.slider .slick-dots li button { width: 10px; height: 10px; padding: 0; border: none; border-radius: 50%; background-color: #c1c4c3; transition: background-color 0.3s; }

.slider .slick-dots li button::before { display: none; }

/* 選択中 */
.slider .slick-dots li.slick-active button { background-color: #666; }

/* ホバー */
.slider .slick-dots li button:hover { background-color: #999; }

.slick-dotted.slick-slider { margin: 0 0 30px !important; }

/*min-width:1920px*/
/*max-width:1280px*/
@media (max-width: 1024px) { .company .company_box { max-width: 768px; }
  .company .flex { display: block; }
  .company .txt { font: 1.6rem/2em "Noto Sans JP", sans-serif; font-weight: 500; max-width: 100%; width: 100%; margin-bottom: 50px; }
  .company .pic { max-width: 640px; margin: 0 auto; width: 100%; } }
/*max-width:1024px*/
@media (max-width: 768px) { .company .company_box { max-width: 480px; width: calc(100% - 50px); }
  .company h2 { font: 2rem/1.7em "LINE Seed JP", sans-serif; font-weight: 700; }
  .company .flex { display: block; }
  .company .txt { max-width: 100%; width: 100%; margin-bottom: 50px; } }
/*max-width:768px*/
/*max-width:480px*/
/**********************************************/
.archive { padding: 0 0 15px; }
.archive .video { margin-bottom: 60px; height: auto; }
.archive .video iframe { aspect-ratio: 16/9; width: 100%; max-width: 100%; height: auto; margin: 0 auto 30px; }
.archive .message { margin: 45px 0 0; background-color: #9DFBF8; border-radius: 30px; padding: 30px; font: 1.8rem/2em "Noto Sans JP", sans-serif; font-weight: 500; letter-spacing: 0.05em; position: relative; }
.archive .message:before { position: absolute; content: ""; left: 60px; top: -30px; width: 0; height: 0; border-left: 20px solid transparent; border-right: 20px solid transparent; border-bottom: 30px solid #9DFBF8; }

/*min-width:1920px*/
/*max-width:1280px*/
/*max-width:1024px*/
@media (max-width: 768px) { .archive .video { margin-bottom: 50px; }
  .archive .message { font: 1.6rem/2em "Noto Sans JP", sans-serif; font-weight: 500; letter-spacing: 0.05em; position: relative; } }
/*max-width:768px*/
/*max-width:480px*/
/**********************************************/
.profile { padding: 15px 0 15px; }

/**********************************************/
.info { padding: 15px 0 120px; border-radius: 0 0 25px 25px; position: relative; z-index: 5; }

.profile table, .info table { border-top: 1px solid #9EC6C6; }
.profile tr, .info tr { border-bottom: 1px solid #9EC6C6; }
.profile th, .info th { background-color: #C4FEFC; width: 350px; border-right: 1px solid #9EC6C6; font: 1.8rem/2em "Noto Sans JP", sans-serif; font-weight: 500; letter-spacing: 0.05em; vertical-align: top; padding: 20px; }
.profile td, .info td { width: calc(100% - 350px); font: 1.8rem/2em "Noto Sans JP", sans-serif; font-weight: 400; letter-spacing: 0.05em; padding: 20px; }

/*min-width:1920px*/
/*max-width:1280px*/
@media (max-width: 1024px) { .profile table, .info table { border-top: 1px solid #9EC6C6; }
  .profile tr, .info tr { border-bottom: 1px solid #9EC6C6; display: block; }
  .profile th, .info th { display: block; background-color: #C4FEFC; width: 100%; border-right: none; font: 1.8rem/2em "Noto Sans JP", sans-serif; font-weight: 500; letter-spacing: 0.05em; vertical-align: top; padding: 15px 20px; }
  .profile td, .info td { display: block; width: 100%; font: 1.8rem/2em "Noto Sans JP", sans-serif; font-weight: 400; letter-spacing: 0.05em; padding: 20px 20px 35px; } }
/*max-width:1024px*/
@media (max-width: 768px) { .profile table, .info table { max-width: 480px; width: 100%; margin: 0 auto; }
  .profile th, .info th { padding: 10px 20px; }
  .profile td, .info td { font: 1.6rem/2em "Noto Sans JP", sans-serif; font-weight: 400; letter-spacing: 0.05em; padding: 15px 20px 25px; } }
/*max-width:768px*/
/*max-width:480px*/
/**********************************************/
.archive, .profile, .info { background-color: #D0F5FE; }
.archive .box, .profile .box, .info .box { max-width: 1240px; width: calc(100% - 160px); margin: 0 auto; border-radius: 15px; padding: 60px; background-color: #EAFBFF; }
.archive h3, .profile h3, .info h3 { margin-bottom: 30px; }
.archive h3 small, .profile h3 small, .info h3 small { font: 2.4rem/1em "Nunito", sans-serif; font-weight: 700; display: block; position: relative; margin: 0 0 10px; padding: 0 0 0 40px; }
.archive h3 span, .profile h3 span, .info h3 span { padding: 0 0 0 40px; font: 4.5rem/1em "LINE Seed JP", sans-serif; font-weight: 700; letter-spacing: .05em; position: relative; }
.archive h3 span:before, .profile h3 span:before, .info h3 span:before { position: absolute; content: ""; left: 0; top: -12px; transform: translateY(0%); display: block; background-color: #08F7EF; width: 12px; height: 60px; }
.archive h3 span br, .profile h3 span br, .info h3 span br { display: none; }
.archive h3 rt, .profile h3 rt, .info h3 rt { font: 1.3rem/1em "Noto Sans JP", sans-serif; font-weight: 400; padding: 0 0 5px; text-align: center; }

/*min-width:1920px*/
/*max-width:1280px*/
@media (max-width: 1024px) { .archive h3 span, .profile h3 span, .info h3 span { display: block; padding: 0 0 0 40px; font: 4.5rem/1.3em "LINE Seed JP", sans-serif; font-weight: 700; }
  .archive h3 span:before, .profile h3 span:before, .info h3 span:before { top: 2px; width: 12px; height: 99%; }
  .archive h3 span br, .profile h3 span br, .info h3 span br { display: block; } }
/*max-width:1024px*/
@media (max-width: 768px) { .archive .box, .profile .box, .info .box { width: 100%; max-width: 480px; padding: 40px; }
  .archive h3, .profile h3, .info h3 { max-width: 480px; margin: 0 auto 40px; width: 100%; }
  .archive h3 span, .profile h3 span, .info h3 span { display: block; padding: 0 0 0 40px; font: 3rem/1.3em "LINE Seed JP", sans-serif; font-weight: 700; }
  .archive h3 span:before, .profile h3 span:before, .info h3 span:before { top: 2px; width: 12px; height: 99%; } }
/*max-width:768px*/
@media (max-width: 480px) { .archive .box, .profile .box, .info .box { width: 100%; max-width: 480px; padding: 25px; } }
/*max-width:480px*/
