@charset "UTF-8";
/*リセット
--------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*メディアクエリー
---------------------------------------------*/
/*変数
---------------------------------------------*/
/* demi: 600 */
/* medium: 500 */
/* コンテンツ
---------------------------------------------*/
html,
body,
#wrapper {
  width: 100%;
  color: #2D3B57;
  font-family: "din-2014", sans-serif;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  html,
  body,
  #wrapper {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  html,
  body,
  #wrapper {
    font-size: 12px;
  }
}
html a,
body a,
#wrapper a {
  text-decoration: none;
  color: #2D3B57;
}

img {
  width: 100%;
  display: block;
}

@media screen and (min-width: 769px) {
  .pcNone {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .pcNone {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  .spNone {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .spNone {
    display: none;
  }
}

main {
  opacity: 0;
  transition: 2s;
}
main.main_fadeIn {
  opacity: 1;
}

div.main_inner {
  overflow: clip;
}
@media screen and (min-width: 769px) {
  div.main_inner {
    display: flex;
    position: relative;
  }
}
@media screen and (min-width: 769px) {
  div.main_inner section.fv {
    width: 50%;
    height: 100vh;
    position: sticky;
    top: 0;
    left: 0;
    display: inline-block;
    overflow: clip;
  }
}
@media screen and (min-width: 769px) {
  div.main_inner div.pc_flex {
    width: 50%;
  }
}

@media screen and (min-width: 769px) {
  section.fv {
    height: 100vh;
    position: relative;
  }
}
section.fv div.fv_img {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  section.fv div.fv_img {
    background-image: url(../images/KV.jpg);
    height: 127.2vw;
  }
}
@media screen and (min-width: 769px) {
  section.fv div.fv_img {
    background-image: url(../images/KV_pc.jpg);
    height: calc(100% - min(22.0833333333vw, 318px));
    background-position: 50% 30%;
    background-size: cover;
  }
}
@media screen and (min-width: 769px) {
  section.fv div.bottom {
    position: absolute;
    bottom: 0;
    width: 100%;
    background-color: #fff;
  }
}
section.fv div.flex_area {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
@media screen and (max-width: 768px) {
  section.fv div.flex_area {
    padding: 6.4vw 6.6666666667vw 6.4vw 8vw;
    align-items: end;
  }
}
@media screen and (min-width: 769px) {
  section.fv div.flex_area {
    padding-top: min(3.125vw, 45px);
    padding-right: min(2.5694444444vw, 37px);
    padding-bottom: min(2.9166666667vw, 42px);
    padding-left: min(3.4027777778vw, 49px);
  }
}
@media screen and (max-width: 768px) {
  section.fv div.flex_area h2 img {
    width: 42.1333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.fv div.flex_area h2 img {
    width: min(18.5416666667vw, 267px);
  }
}
@media screen and (max-width: 768px) {
  section.fv div.flex_area div.logo img {
    width: 12vw;
  }
}
@media screen and (min-width: 769px) {
  section.fv div.flex_area div.logo img {
    width: min(5.1388888889vw, 74px);
  }
}

@media screen and (max-width: 768px) {
  section.sec {
    margin-top: 32vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec {
    margin-top: 11.1111111111vw;
  }
}
section.sec h3 {
  background-color: #2D3B57;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  section.sec h3 {
    padding: 4.5333333333vw 5.3333333333vw 3.4666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec h3 {
    padding: 1.9444444444vw 6.5277777778vw 1.5708333333vw;
  }
}
section.sec h3 p {
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  section.sec h3 p.num {
    font-size: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec h3 p.num {
    font-size: 4.4291666667vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec h3 p.item_name {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec h3 p.item_name {
    font-size: 1.7527777778vw;
  }
}
section.sec p.item_txt {
  font-family: "noto-sans-cjk-jp", sans-serif;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  section.sec p.item_txt {
    padding: 0 5.3333333333vw;
    margin: 10.6666666667vw auto;
    font-size: 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec p.item_txt {
    padding: 0 6.5277777778vw;
    margin: 4.5138888889vw auto;
    font-size: 1.5083333333vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec div.img_1 {
    padding: 0 5.3333333333vw;
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.img_1 {
    padding: 0 6.5277777778vw;
    margin-bottom: 4.5138888889vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area {
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area {
    margin-top: 4.5138888889vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area ul li {
    padding: 0 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area ul li {
    padding: 0 6.5277777778vw;
  }
}
section.sec div.credit_area ul li div.gender {
  background-color: #2D3B57;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area ul li div.gender {
    padding: 1.0666666667vw 2.6666666667vw;
    border-radius: 2.6666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area ul li div.gender {
    padding: 0.2777777778vw 0.6944444444vw;
    border-radius: 0.7541666667vw;
    margin-bottom: 0.6944444444vw;
  }
}
section.sec div.credit_area ul li div.gender p {
  letter-spacing: 0.03em;
  color: #fff;
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area ul li div.gender p {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area ul li div.gender p {
    font-size: 0.7541666667vw;
  }
}
section.sec div.credit_area ul li a {
  display: block;
  display: flex;
  justify-content: space-between;
  transition-duration: 0.5s;
  position: relative;
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area ul li a {
    padding-bottom: 1.0666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area ul li a {
    padding-bottom: 0.2777777778vw;
  }
}
section.sec div.credit_area ul li a::before {
  content: "";
  border-bottom: solid 1px #2D3B57;
  position: absolute;
  bottom: 0;
  left: 0;
}
section.sec div.credit_area ul li a p {
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area ul li a p {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area ul li a p {
    font-size: 1.2069444444vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec div.credit_area ul li a p.item span.type {
    font-size: 3.2vw;
    margin-left: 1.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec div.credit_area ul li a p.item span.type {
    font-size: 0.9027777778vw;
    margin-left: 0.3472222222vw;
  }
}

div.credit_area.border_on ul li a::before {
  animation: border_anim 1s linear forwards;
}

@keyframes border_anim {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
div.credit_area.border_on ul li a:hover {
  color: #A4B3D2;
}
div.credit_area.border_on ul li a:hover::before {
  border-bottom: solid 1px #A4B3D2;
}

section.sec_1 {
  margin-top: 0;
}
@media screen and (min-width: 769px) {
  section.sec_1 ul.slider {
    padding: 0 6.5277777778vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_1 ul.slider li img {
    padding: 0 1.3333333333vw;
    width: 44vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_1 ul.slider li img {
    padding: 0 0.6944444444vw;
    width: 18.0555555556vw;
  }
}

section.sec_2 .area_1, section.sec_2 .area_2 {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  section.sec_2 .area_1, section.sec_2 .area_2 {
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_2 .area_1, section.sec_2 .area_2 {
    margin-bottom: 4.5138888889vw;
    padding: 0 6.5277777778vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_2 .area_1 div.img_2_2 {
    width: 48.8vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_2 .area_1 div.img_2_2 {
    width: 17.9166666667vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_2 .area_1 div.img_2_3 {
    width: 48.5333333333vw;
    margin-top: 37.0666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_2 .area_1 div.img_2_3 {
    width: 17.9166666667vw;
    margin-top: 13.7395833333vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_2 .area_2 {
    margin-top: 21.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_2 .area_2 {
    margin-top: 7.5vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_2 .area_2 div.img_2_4 {
    width: 48.8vw;
    margin-top: 37.0666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_2 .area_2 div.img_2_4 {
    width: 17.9166666667vw;
    margin-top: 13.7395833333vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_2 .area_2 div.img_2_5 {
    width: 48.5333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_2 .area_2 div.img_2_5 {
    width: 17.9166666667vw;
  }
}

@media screen and (max-width: 768px) {
  section.sec_3 div.img_2 {
    width: 64.2666666667vw;
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_3 div.img_2 {
    width: 23.6111111111vw;
    margin-top: 4.5138888889vw;
    padding: 0 6.5277777778vw;
  }
}
section.sec_3 div.img_3 {
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  section.sec_3 div.img_3 {
    width: 87.7333333333vw;
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_3 div.img_3 {
    width: 32.2222222222vw;
    margin-top: 4.5138888889vw;
    padding: 0 6.5277777778vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_3 div.credit_area ul li {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_3 div.credit_area ul li {
    margin-bottom: 1.5277777778vw;
  }
}
section.sec_3 div.credit_area ul li:last-child {
  margin-bottom: 0;
}

section.sec_4 .area_1, section.sec_4 .area_2 {
  position: relative;
}
@media screen and (max-width: 768px) {
  section.sec_4 .area_1, section.sec_4 .area_2 {
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
    padding: 0 5.3333333333vw;
    height: 140.2666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_4 .area_1, section.sec_4 .area_2 {
    margin-top: 4.5138888889vw;
    margin-bottom: 4.5138888889vw;
    padding: 0 6.5277777778vw;
    height: 57.6138888889vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_4 .area_1 div.img_4_1 {
    width: 58.9333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_4 .area_1 div.img_4_1 {
    width: 24.2069444444vw;
  }
}
section.sec_4 .area_1 div.img_4_2 {
  position: absolute;
}
@media screen and (max-width: 768px) {
  section.sec_4 .area_1 div.img_4_2 {
    width: 43.7333333333vw;
    top: 74.9333333333vw;
    right: 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_4 .area_1 div.img_4_2 {
    width: 17.9631944444vw;
    top: 30.7784722222vw;
    right: 6.5277777778vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_4 .area_2 {
    margin-top: 7.5vw;
  }
}
section.sec_4 .area_2 div.img_4_3 {
  position: absolute;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  section.sec_4 .area_2 div.img_4_3 {
    width: 43.7333333333vw;
    top: 74.9333333333vw;
    left: 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_4 .area_2 div.img_4_3 {
    width: 17.9631944444vw;
    top: 30.7784722222vw;
    left: 6.5277777778vw;
  }
}
section.sec_4 .area_2 div.img_4_4 {
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  section.sec_4 .area_2 div.img_4_4 {
    width: 58.9333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_4 .area_2 div.img_4_4 {
    width: 24.2069444444vw;
  }
}

section.sec_5 .area_1 {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  section.sec_5 .area_1 {
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_5 .area_1 {
    padding: 0 6.5277777778vw;
    margin-top: 4.5138888889vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_5 .area_1 div.img_5_1, section.sec_5 .area_1 .img_5_2 {
    width: 48.8vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_5 .area_1 div.img_5_1, section.sec_5 .area_1 .img_5_2 {
    width: 18.0555555556vw;
  }
}

@media screen and (max-width: 768px) {
  section.sec_6 .area_1, section.sec_6 .area_2 {
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
    padding: 0 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_6 .area_1, section.sec_6 .area_2 {
    margin-top: 4.5138888889vw;
    padding: 0 6.5277777778vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_6 .area_2 {
    margin-top: 21.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_6 .area_2 {
    margin-top: 7.5vw;
  }
}

section.sec_7 .area_1 {
  position: relative;
}
@media screen and (max-width: 768px) {
  section.sec_7 .area_1 {
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
    padding: 0 5.3333333333vw;
    height: 136.2666666667vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_7 .area_1 {
    margin-top: 4.5138888889vw;
    padding: 0 6.5277777778vw;
    height: 52.7777777778vw;
  }
}
@media screen and (max-width: 768px) {
  section.sec_7 .area_1 div.img_7_1 {
    width: 74.1333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_7 .area_1 div.img_7_1 {
    width: 28.6805555556vw;
  }
}
section.sec_7 .area_1 div.img_7_2 {
  position: absolute;
  right: 0;
}
@media screen and (max-width: 768px) {
  section.sec_7 .area_1 div.img_7_2 {
    width: 49.0666666667vw;
    top: 62.9333333333vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_7 .area_1 div.img_7_2 {
    width: 18.9583333333vw;
    top: 24.3055555556vw;
    right: 6.5277777778vw;
  }
}

@media screen and (max-width: 768px) {
  section.sec_8 .area_1 {
    margin: 10.6666666667vw auto;
    width: 64vw;
  }
}
@media screen and (min-width: 769px) {
  section.sec_8 .area_1 {
    margin: 4.5138888889vw auto;
    width: 26.25vw;
    padding: 0 6.5277777778vw;
  }
}

footer {
  background-color: #2D3B57;
}
@media screen and (max-width: 768px) {
  footer {
    margin-top: 32vw;
  }
}
@media screen and (min-width: 769px) {
  footer {
    margin-top: 11.1111111111vw;
  }
}
@media screen and (max-width: 768px) {
  footer div.footer_inner {
    padding: 21.3333333333vw 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner {
    padding: 5.5555555556vw 2.7777777778vw;
  }
}
@media screen and (max-width: 768px) {
  footer div.footer_inner ul.staff_credit {
    margin-bottom: 21.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner ul.staff_credit {
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (max-width: 768px) {
  footer div.footer_inner ul.staff_credit li {
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner ul.staff_credit li {
    margin-bottom: 1.0416666667vw;
  }
}
footer div.footer_inner ul.staff_credit li:last-child {
  margin-bottom: 0;
}
footer div.footer_inner ul.staff_credit li p {
  letter-spacing: 0.03em;
  color: #fff;
}
@media screen and (max-width: 768px) {
  footer div.footer_inner ul.staff_credit li p {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner ul.staff_credit li p {
    font-size: 0.8333333333vw;
  }
}
footer div.footer_inner ul.sns_icon {
  display: flex;
}
@media screen and (max-width: 768px) {
  footer div.footer_inner ul.sns_icon li.insta {
    width: 6.9333333333vw;
    margin-right: 4.2666666667vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner ul.sns_icon li.insta {
    width: 1.8055555556vw;
    margin-right: 1.1111111111vw;
  }
}
@media screen and (max-width: 768px) {
  footer div.footer_inner ul.sns_icon li.X {
    width: 6.2106666667vw;
    margin-right: 3.656vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner ul.sns_icon li.X {
    width: 1.6173611111vw;
    margin-right: 0.9520833333vw;
  }
}
@media screen and (max-width: 768px) {
  footer div.footer_inner ul.sns_icon li.palclo {
    width: 6.4vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner ul.sns_icon li.palclo {
    width: 1.6666666667vw;
  }
}
footer div.footer_inner ul.sns_icon li a {
  display: block;
}
footer div.footer_inner div.flex {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
@media screen and (max-width: 768px) {
  footer div.footer_inner div.flex {
    margin-top: 38.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner div.flex {
    padding-top: 10.0694444444vw;
  }
}
@media screen and (max-width: 768px) {
  footer div.footer_inner div.flex div.logo {
    width: 14.6666666667vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner div.flex div.logo {
    width: 3.8194444444vw;
  }
}
footer div.footer_inner div.flex small {
  display: block;
  color: #fff;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  footer div.footer_inner div.flex small {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 769px) {
  footer div.footer_inner div.flex small {
    font-size: 0.8333333333vw;
  }
}

.fadeIn {
  transition: 1s;
  opacity: 0;
}

.fadeIn_on {
  opacity: 1;
}

.fadeTop {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-80px);
  transition: opacity 1s, visibility 1s, transform 1s;
}

.fadeBottom {
  opacity: 0;
  visibility: hidden;
  transform: translateY(80px);
  transition: opacity 1s, visibility 1s, transform 1s;
}

.fadeRight {
  opacity: 0;
  visibility: hidden;
  transform: translateX(-60px);
  transition: opacity 1s, visibility 1s, transform 1s;
}

.fadeLeft {
  opacity: 0;
  visibility: hidden;
  transform: translateX(60px);
  transition: opacity 1s, visibility 1s, transform 1s;
}

.scroll {
  opacity: 1;
  visibility: visible;
  transform: translate(0px);
}

@media screen and (min-width: 769px) {
  section.sec_1 h3.title_area {
    transition: 1s;
    opacity: 0;
  }
}
@media screen and (min-width: 769px) {
  section.sec_1 p.item_txt {
    opacity: 0;
    visibility: hidden;
    transform: translateY(80px);
    transition: opacity 1s, visibility 1s, transform 1s;
  }
}

section.sec_1 h3.pc_fadeIn {
  opacity: 1;
}
section.sec_1 p.item_txt.pc_fadeBottom {
  opacity: 1;
  visibility: visible;
  transform: translate(0px);
}/*# sourceMappingURL=style.css.map */