@charset "utf-8";

* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }

body { font-family: 游ゴシック体, YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", sans-serif; width: 100%; font-size: 62.5%; line-height: 1; color: rgb(51, 51, 51); -webkit-font-smoothing: antialiased; text-size-adjust: 100%; font-feature-settings: "palt"; }

@media screen and (max-width: 767px) {
  body { font-size: 20px; line-height: 1; }
}

@media screen and (min-width: 768px) {
  body { min-width: 1094px; }
}

a { -webkit-tap-highlight-color: transparent; text-decoration: none; color: rgb(51, 51, 51); }

img, svg { vertical-align: bottom; max-width: 100%; }

.pc_hide { display: none; }

@media screen and (max-width: 767px) {
  .pc_hide { display: inline-block; }
  .sp_hide { display: none; }
}

.pc .hover { transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); cursor: pointer; }

.pc .hover:hover { opacity: 0.6; }

.hide { display: none !important; }

.show { display: block !important; }

.disable { pointer-events: none !important; }

.js_fadein { opacity: 0; filter: blur(10px); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

.js_fadein.-show { opacity: 1; filter: blur(0px); }

.js_split_text { font-feature-settings: normal; }

.js_split_text .chara { display: inline-block; opacity: 0; filter: blur(5px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.js_split_text.-show .chara { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.js_split_line { font-feature-settings: normal; }

.js_split_line .line { display: inline-block; opacity: 0; filter: blur(5px); transform: translateY(10px); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

.js_split_line.-show .line { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.js_anime_img { display: block; overflow: hidden; }

.js_anime_img_inner { height: 0%; overflow: hidden; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

.js_anime_img img { transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); opacity: 0; transform-origin: center center; transform: scale(1.1); }

.js_anime_img.-show .js_anime_img_inner { height: 100%; }

.js_anime_img.-show img { opacity: 1; transform: scale(1); }

.-delay100 { transition-delay: 100ms !important; }

.-delay200 { transition-delay: 200ms !important; }

.-delay300 { transition-delay: 300ms !important; }

.-delay400 { transition-delay: 400ms !important; }

.-delay500 { transition-delay: 500ms !important; }

.-delay600 { transition-delay: 600ms !important; }

.-delay700 { transition-delay: 700ms !important; }

.-delay800 { transition-delay: 800ms !important; }

.-delay900 { transition-delay: 900ms !important; }

.-delay1000 { transition-delay: 1000ms !important; }

.-delay1100 { transition-delay: 1100ms !important; }

.-delay1200 { transition-delay: 1200ms !important; }

.-delay1300 { transition-delay: 1300ms !important; }

.-delay1400 { transition-delay: 1400ms !important; }

.-delay1500 { transition-delay: 1500ms !important; }

.-delay1600 { transition-delay: 1600ms !important; }

.-delay1700 { transition-delay: 1700ms !important; }

.-delay1800 { transition-delay: 1800ms !important; }

.-delay1900 { transition-delay: 1900ms !important; }

.-delay2000 { transition-delay: 2000ms !important; }

@media screen and (max-width: 767px) {
  .-sp_delay100 { transition-delay: 100ms !important; }
  .-sp_delay200 { transition-delay: 200ms !important; }
  .-sp_delay300 { transition-delay: 300ms !important; }
  .-sp_delay400 { transition-delay: 400ms !important; }
  .-sp_delay500 { transition-delay: 500ms !important; }
  .-sp_delay600 { transition-delay: 600ms !important; }
  .-sp_delay700 { transition-delay: 700ms !important; }
  .-sp_delay800 { transition-delay: 800ms !important; }
  .-sp_delay900 { transition-delay: 900ms !important; }
  .-sp_delay1000 { transition-delay: 1000ms !important; }
}

.-delay_before500::before { transition-delay: 500ms !important; }

.-delay_before1500::before { transition-delay: 1500ms !important; }

.-delay_after500::after { transition-delay: 500ms !important; }

.-delay_after1500::after { transition-delay: 1500ms !important; }

.wrap { width: 100%; }

.header::before { content: ""; display: block; position: fixed; z-index: 109; top: 0px; left: 0px; width: 100%; height: 17.9487vw; background: rgb(255, 255, 255); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .header::before { display: none; }
}

.header.-nobg::before { display: none; }

.header_logo { position: fixed; z-index: 110; top: 2.5641vw; left: 5.12821vw; width: 11.7949vw; mix-blend-mode: multiply; opacity: 0; visibility: hidden; pointer-events: none; transition: 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .header_logo { top: 30px; left: 20px; width: 73px; }
}

.header_logo::after { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: url("../img/common/kv_logo_w.svg") 0px 0px / 100% 100% no-repeat; transition: 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }

.header_logo img { transition: 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }

.header_logo.-show { pointer-events: auto; visibility: visible; opacity: 1; }

.header_logo.-change::after { opacity: 0; }

.header_logo.-change img { opacity: 1; }

.header_burger { position: fixed; top: 2.5641vw; right: 5.12821vw; z-index: 110; display: block; width: 10.2564vw; height: 10.2564vw; mix-blend-mode: multiply; opacity: 0; visibility: hidden; pointer-events: none; transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .header_burger { top: 10px; right: 30px; width: 40px; height: 40px; }
}

.header_burger::before, .header_burger::after { content: ""; display: block; position: absolute; top: 50%; left: 50%; width: 10.2564vw; height: 0.51282vw; background: rgb(0, 52, 92); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .header_burger::before, .header_burger::after { width: 40px; height: 2px; }
}

.header_burger::before { transform: translate(-50%, 400%); }

.header_burger::after { transform: translate(-50%, -500%); }

.header_burger.-show { pointer-events: auto; cursor: pointer; visibility: visible; opacity: 1; }

.header_burger span { display: block; position: absolute; top: 50%; left: 50%; width: 10.2564vw; height: 0.51282vw; background: rgb(0, 52, 92); transform: translate(-50%, -50%); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .header_burger span { width: 40px; height: 2px; }
}

.header_burger.js_on::before { transform: translate(-50%, 0%) rotate(-45deg); }

.header_burger.js_on::after { transform: translate(-50%, 0%) rotate(45deg); }

.header_burger.js_on span { width: 0px; }

.header_navi { position: fixed; top: 0px; left: 0px; z-index: 100; display: flex; align-items: center; min-height: 100vh; width: 100%; background: white; opacity: 0; transform: translateX(-110%); transition: 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .header_navi { left: auto; right: 0px; display: block; opacity: 0; transform: translateX(110%); background: rgba(255, 255, 255, 0.9); width: 510px; box-shadow: rgba(0, 0, 0, 0.25) -3px 0px 6px; }
}

.header_navi.js_open { opacity: 1; transform: translateX(0%); }

.header_navi_logo { display: none; }

@media screen and (min-width: 768px) {
  .header_navi_logo { display: block; margin: 0px 0px 0px 73px; padding: 40px 0px 0px; width: 73px; }
}

.header_navi_list { position: relative; padding: 0px 0px 2.5641vw 12.8205vw; }

@media screen and (min-width: 768px) {
  .header_navi_list { position: relative; top: auto; left: auto; padding: 40px 0px 0px 73px; transform: none; }
}

.header_navi_list li { padding: 6.41026vw 0px 0px; font-size: 5.12821vw; letter-spacing: 0.2rem; }

@media screen and (min-width: 768px) {
  .header_navi_list li { padding: 25px 0px 0px; font-size: 20px; }
}

.header_navi_list li:first-child { display: none; }

@media screen and (min-width: 768px) {
  .header_navi_list li:first-child { display: block; padding-top: 0px; width: 73px; }
}

.header_navi_list li:nth-child(2) { padding: 0px; }

@media screen and (min-width: 768px) {
  .header_navi_list li:nth-child(2) { padding: 34px 0px 0px; }
}

.header_navi_list li:last-child { padding: 6.41026vw 0px 0px; width: 47.4359vw; }

@media screen and (min-width: 768px) {
  .header_navi_list li:last-child { margin: 44px 0px 0px; padding: 0px; width: 190px; }
}

.header_navi_list li dl dt { padding: 0px 0px 1.28205vw; font-size: 5.12821vw; }

@media screen and (min-width: 768px) {
  .header_navi_list li dl dt { padding: 0px; font-size: 20px; }
}

.header_navi_list li dl dt + dd { margin: 3.84615vw 0px 0px; }

@media screen and (min-width: 768px) {
  .header_navi_list li dl dt + dd { margin: 15px 0px 0px; }
}

.header_navi_list li dl dd { position: relative; margin: 2.5641vw 0px 0px; padding: 0px 0px 0px 4.61538vw; font-size: 3.84615vw; letter-spacing: 0.15rem; }

@media screen and (min-width: 768px) {
  .header_navi_list li dl dd { margin: 10px 0px 0px; padding: 0px 0px 0px 18px; font-size: 15px; }
}

.header_navi_list li dl dd::before { content: ""; display: block; position: absolute; top: 50%; left: 0px; width: 1.79487vw; height: 1px; background: rgb(0, 52, 92); transform: translateY(-50%); }

@media screen and (min-width: 768px) {
  .header_navi_list li dl dd::before { width: 7px; }
}

.header_navi_list li a { display: inline-block; color: rgb(0, 52, 92); }

.header_navi_links { position: relative; display: flex; justify-content: left; align-items: center; padding: 8.97436vw 0px 0px 12.8205vw; }

@media screen and (min-width: 768px) {
  .header_navi_links { position: relative; left: auto; bottom: auto; justify-content: left; margin: 44px 0px 0px 73px; padding: 0px; width: auto; transform: none; }
}

.header_navi_links li { width: 8.97436vw; }

@media screen and (min-width: 768px) {
  .header_navi_links li { margin-right: 20px; width: 30px; }
}

.header_navi_links li:first-child { margin-right: 6.41026vw; width: 47.4359vw; }

@media screen and (min-width: 768px) {
  .header_navi_links li:first-child { margin-right: 30px; width: 190px; }
}

.header_navi_links li a { display: block; }

.footer { padding: 20.5128vw 0px 0px; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .footer { position: relative; margin: 0px auto; padding: 200px 0px 0px; width: 1094px; }
}

.footer_links { margin: 0px auto; display: flex; justify-content: center; flex-wrap: wrap; width: 61.5385vw; }

@media screen and (min-width: 768px) {
  .footer_links { position: absolute; top: 350px; left: 307px; width: 70px; justify-content: space-between; }
}

.footer_links li { padding: 0px 2.5641vw; }

@media screen and (min-width: 768px) {
  .footer_links li { padding: 0px; width: 30px; }
}

.footer_links li:last-child { padding-top: 10.3448vw; }

@media screen and (min-width: 768px) {
  .footer_links li:last-child { display: none; }
}

.footer_links li:last-child a { width: 61.5385vw; }

.footer_links li a { display: block; color: rgb(0, 52, 92); }

.footer_navi { margin: 15.3846vw auto 0px; width: 89.7436vw; border-top: 1px solid rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .footer_navi { margin: 0px auto; width: 1094px; }
}

.footer_navi_list { position: relative; padding: 0px 5.12821vw; }

@media screen and (min-width: 768px) {
  .footer_navi_list { display: flex; margin: 0px 0px 0px 307px; padding: 37px 0px 0px; }
}

.footer_navi_list_item { padding: 6.41026vw 0px 0px; font-size: 3.84615vw; line-height: 1; letter-spacing: 0.1rem; }

@media screen and (min-width: 768px) {
  .footer_navi_list_item { padding: 0px; width: 25%; font-size: 15px; }
  .footer_navi_list_item:nth-of-type(3) { width: 23%; }
  .footer_navi_list_item:nth-of-type(4) { width: 27%; }
  .footer_navi_list_item:nth-of-type(5) { width: 24%; }
}

.footer_navi_list_item dl dd { position: relative; margin: 3.33333vw 0px 0px; padding: 0px 0px 0px 4.61538vw; font-size: 3.33333vw; line-height: 1.2; }

@media screen and (min-width: 768px) {
  .footer_navi_list_item dl dd { margin: 14px 0px 0px; padding: 0px 0px 0px 18px; font-size: 13px; }
}

.footer_navi_list_item dl dd::before { content: ""; display: block; position: absolute; top: 1.5vw; left: 0px; width: 1.79487vw; height: 1px; background: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .footer_navi_list_item dl dd::before { top: 50%; width: 7px; transform: translateY(-50%); }
}

.footer_navi_list_item:first-child { position: relative; padding: 7.69231vw 0px 3.84615vw; width: 100%; text-align: center; }

@media screen and (min-width: 768px) {
  .footer_navi_list_item:first-child { position: absolute; top: 40px; left: -80px; bottom: auto; padding: 0px; width: 128px; transform: translateX(-100%); }
}

.footer_navi_list_item:first-child a { display: inline-block; width: 17.9487vw; }

@media screen and (min-width: 768px) {
  .footer_navi_list_item:first-child a { width: 100%; }
}

.footer_navi_list_item:nth-child(4) { position: absolute; top: 31.2821vw; left: 57.9487vw; }

@media screen and (min-width: 768px) {
  .footer_navi_list_item:nth-child(4) { position: relative; top: auto; left: auto; }
}

.footer_navi_list_item:nth-child(5) { position: absolute; top: 81.2vw; left: 57.9487vw; }

@media screen and (min-width: 768px) {
  .footer_navi_list_item:nth-child(5) { position: relative; top: auto; left: auto; padding-left: 10px; }
}

.footer_navi_list_item a { display: block; color: rgb(0, 52, 92); }

.footer_info { margin: 0px auto; padding: 12.8205vw 0px 0px; width: 79.4872vw; font-size: 2.5641vw; line-height: 2; text-align: center; }

@media screen and (min-width: 768px) {
  .footer_info { margin: 0px auto; padding: 80px 0px 0px; width: 100%; font-size: 10px; }
}

.footer_info a { display: inline-block; }

.footer_info dd { padding: 5.12821vw 0px 0px; }

@media screen and (min-width: 768px) {
  .footer_info dd { padding: 10px 0px 0px; }
}

.footer_copyrights { padding: 3.58974vw 10.2564vw 7.69231vw; font-size: 2.5641vw; letter-spacing: 0.025rem; text-align: center; }

@media screen and (min-width: 768px) {
  .footer_copyrights { padding: 28px 0px 30px; font-size: 10px; }
}

.home { }

.home .kv { position: relative; z-index: 20; min-height: 100svh; width: 100%; overflow-x: hidden; }

@media screen and (min-width: 768px) {
  .home .kv { min-height: auto; min-width: 1094px; overflow: hidden; }
}

.home .kv .inner { min-height: 56.1493vw; }

.home .kv_logo { position: absolute; z-index: 10; top: 50%; left: 50%; opacity: 0; transform: translate(-50%, -50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_logo { width: 15.8858vw; height: 17.4231vw; filter: blur(10px); }
}

.home .kv_logo::after { content: ""; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: url("../img/common/kv_logo_w.svg") 0px 0px / 100% 100% no-repeat; }

.home .kv_logo img { position: relative; z-index: 2; width: 100%; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .kv_logo.-show1 { opacity: 1; filter: blur(0px); }

.home .kv_logo.-show2 img { opacity: 0; }

.home .kv_scroll { position: absolute; z-index: 11; bottom: 0px; left: 0px; width: 100%; height: 25.641vw; opacity: 0; visibility: hidden; transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_scroll { height: 4.39239vw; min-height: 60px; }
}

.home .kv_scroll.-show { opacity: 1; visibility: visible; }

.home .kv_scroll_txt { display: block; position: absolute; top: 55%; right: 5.12821vw; font-size: 3.07692vw; line-height: 1; color: rgb(255, 255, 255); transform: translateY(-50%); }

@media screen and (min-width: 768px) {
  .home .kv_scroll_txt { top: 16%; right: 1.83016vw; font-size: 0.87848vw; line-height: 1; transform: none; }
}

.home .kv_scroll_txt::before { content: ""; display: block; position: absolute; left: 50%; bottom: 0px; width: 5.12821vw; height: 5.12821vw; background: url("../img/common/icon_scroll.png") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 120%); }

@media screen and (min-width: 768px) {
  .home .kv_scroll_txt::before { width: 28px; height: 28px; }
}

.home .kv_anime { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }

.home .kv_anime1 { position: absolute; background: rgb(230, 113, 53); z-index: 2; top: 0px; left: 0px; width: 0%; height: 17.9487vw; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_anime1 { width: 0%; height: 4.39239vw; min-height: 60px; }
}

.home .kv_anime1.-show { width: 100%; }

.home .kv_anime2 { position: absolute; background: rgb(0, 150, 169); z-index: 2; bottom: 0px; right: 0px; width: 0%; height: 17.9487vw; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_anime2 { width: 0%; height: 4.39239vw; min-height: 60px; }
}

.home .kv_anime2.-show { width: 100%; }

.home .kv_anime3 { position: absolute; z-index: 3; top: 0px; left: 0px; width: 84.8718vw; height: 48.718vw; background: url("../img/home/kv_blue.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-100%, -100%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_anime3 { width: 45.754vw; height: 16.7643vw; background: url("../img/home/pc_kv_blue.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-100%, -100%); }
}

.home .kv_anime3.-show { transform: translate(0%, 0%); }

.home .kv_anime4 { position: absolute; z-index: 3; bottom: 0px; right: 0px; background: rgb(0, 102, 75); width: 0%; height: 17.9487vw; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_anime4 { width: 0vw; height: 4.39239vw; min-height: 60px; }
}

.home .kv_anime4.-show { width: 74.359vw; }

@media screen and (min-width: 768px) {
  .home .kv_anime4.-show { width: 88.3602vw; }
}

.home .kv_anime5 { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: url("../img/home/kv_bg.jpg") 0px 0px / cover no-repeat; opacity: 0; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .kv_anime5 { width: 100vw; min-width: 1094px; height: 56.1493vw; background: url("../img/home/pc_kv_bg.jpg") center center / cover no-repeat; }
}

.home .kv_anime5.-show { opacity: 1; }

.home .about { position: relative; z-index: 3; padding: 0px 0px 25.641vw; width: 100%; overflow-x: hidden; text-align: center; background: rgb(255, 255, 255); }

@media screen and (min-width: 768px) {
  .home .about { min-width: 1094px; padding: 0px 0px 200px; }
}

.home .about_top { position: relative; display: flex; flex-flow: row-reverse; justify-content: center; padding: 35.8974vw 0px 53.8462vw; }

@media screen and (min-width: 768px) {
  .home .about_top { padding: 106px 0px 0px; }
}

.home .about_top::before, .home .about_top::after { content: ""; display: block; position: absolute; }

.home .about_top::before { left: -6.41026vw; bottom: 0px; width: 56.4103vw; height: 105.641vw; background: rgb(143, 72, 137); }

@media screen and (min-width: 768px) {
  .home .about_top::before { left: 0px; bottom: 0px; width: 400px; height: 100%; }
}

.home .about_top::after { top: -114.359vw; left: -56.4103vw; width: 257.692vw; height: 313.077vw; background: url("../img/home/bg_blue.svg") 0px 0px / 100% 100% no-repeat; }

@media screen and (min-width: 768px) {
  .home .about_top::after { top: 0px; left: -40px; width: 2811px; height: 764px; background: url("../img/home/pc_bg_blue.svg") 0px 0px / 100% 100% no-repeat; }
}

.home .about_top .inner { display: flex; flex-flow: row-reverse; justify-content: center; }

@media screen and (min-width: 768px) {
  .home .about_top .inner { display: flex; justify-content: center; align-items: flex-start; margin: 0px auto; width: 1094px; min-height: 580px; }
}

.home .about_top h2 { position: relative; z-index: 3; font-size: 6.66667vw; line-height: 1.92308; letter-spacing: 0.35rem; color: rgb(255, 255, 255); writing-mode: vertical-rl; text-align: left; white-space: nowrap; }

@media screen and (min-width: 768px) {
  .home .about_top h2 { font-size: 26px; }
}

.home .about_top p { position: relative; z-index: 3; padding: 0px 7.69231vw 0px 0px; font-size: 4.61538vw; line-height: 2.22222; letter-spacing: 0.24rem; color: rgb(255, 255, 255); writing-mode: vertical-rl; text-orientation: upright; text-align: left; white-space: nowrap; }

@media screen and (min-width: 768px) {
  .home .about_top p { padding: 0px 56px 0px 0px; font-size: 18px; }
}

.home .about_item { position: relative; display: flex; flex-wrap: wrap; }

.home .about_item .img { position: absolute; display: inline-block; }

.home .about_item .img figure { display: inline-block; }

.home .about_item .img img { width: 100%; height: auto; }

.home .about_item p { font-size: 4.61538vw; line-height: 1.66667; letter-spacing: 0.18rem; color: rgb(0, 52, 92); text-align: left; writing-mode: vertical-rl; }

@media screen and (min-width: 768px) {
  .home .about_item p { font-size: 18px; }
}

@media screen and (min-width: 768px) {
  .home .about_item_wrap { position: relative; margin: 0px auto; width: 1094px; }
}

.home .about_item1 { justify-content: right; }

@media screen and (min-width: 768px) {
  .home .about_item1 { justify-content: center; align-items: center; padding: 50px 0px 0px; }
}

.home .about_item1 .img { top: 43.5897vw; left: 10.2564vw; width: 61.5385vw; height: 61.5385vw; }

@media screen and (min-width: 768px) {
  .home .about_item1 .img { position: relative; top: auto; left: auto; width: 450px; height: 450px; }
}

.home .about_item1 p { padding: 13.5897vw 11.0256vw 65.8974vw 0px; }

@media screen and (min-width: 768px) {
  .home .about_item1 p { padding: 0px 0px 0px 155px; }
}

.home .about_item2 { justify-content: left; }

@media screen and (min-width: 768px) {
  .home .about_item2 { justify-content: right; flex-flow: row-reverse; padding: 50px 0px 0px; }
}

.home .about_item2 .img { top: 32.5641vw; left: 50vw; width: 44.8718vw; height: 69.2308vw; }

@media screen and (min-width: 768px) {
  .home .about_item2 .img { position: relative; top: auto; left: auto; margin-right: 100px; width: 295px; height: 455px; }
}

.home .about_item2 p { padding: 7.17949vw 0px 43.5897vw 23.8462vw; }

@media screen and (min-width: 768px) {
  .home .about_item2 p { padding: 80px 198px 0px 0px; }
}

.home .about_item3 { justify-content: right; }

@media screen and (min-width: 768px) {
  .home .about_item3 { position: absolute; top: 630px; left: 0px; width: 100%; }
}

.home .about_item3 .img { top: 0px; left: 0px; width: 42.3077vw; height: 42.3077vw; }

@media screen and (min-width: 768px) {
  .home .about_item3 .img { top: 320px; left: auto; right: 414px; width: 265px; height: 265px; }
}

.home .about_item3 p { padding: 16.6667vw 16.6667vw 15.8974vw 0px; }

@media screen and (min-width: 768px) {
  .home .about_item3 p { padding: 0px 715px 0px 0px; }
}

.home .about_item4 { justify-content: center; }

@media screen and (min-width: 768px) {
  .home .about_item4 { justify-content: left; padding: 305px 0px 255px; }
}

.home .about_item4 .img { top: 0px; left: 5.12821vw; width: 74.359vw; height: 55.8974vw; }

@media screen and (min-width: 768px) {
  .home .about_item4 .img { position: relative; top: auto; left: auto; margin-left: 45px; width: 550px; height: 413px; }
}

.home .about_item4 p { padding: 63.8462vw 10.2564vw 18.9744vw 0px; }

@media screen and (min-width: 768px) {
  .home .about_item4 p { padding: 0px 0px 0px 236px; }
}

.home .about_item5 { justify-content: left; }

@media screen and (min-width: 768px) {
  .home .about_item5 { position: absolute; top: 1315px; left: 0px; justify-content: right; width: 100%; }
}

.home .about_item5 .img { top: 0px; left: 38.4615vw; width: 56.4103vw; height: 56.4103vw; }

@media screen and (min-width: 768px) {
  .home .about_item5 .img { top: 325px; left: auto; right: 150px; width: 265px; height: 265px; }
}

.home .about_item5 p { padding: 56.4103vw 0px 23.5897vw 11.7949vw; }

@media screen and (min-width: 768px) {
  .home .about_item5 p { padding: 0px 321px 0px 0px; }
}

.home .about_item6 { justify-content: center; }

@media screen and (min-width: 768px) {
  .home .about_item6 { flex-flow: column-reverse; align-items: center; padding: 0px 0px 80px; }
}

.home .about_item6 .img { position: relative; width: 100vw; height: 83.3333vw; }

@media screen and (min-width: 768px) {
  .home .about_item6 .img { width: 100%; height: 750px; }
}

.home .about_item6 p { padding: 7.69231vw 0px 34.1026vw; }

@media screen and (min-width: 768px) {
  .home .about_item6 p { padding: 0px 0px 60px; }
}

.home .about_detail { position: relative; display: inline-block; padding: 1.28205vw 6.41026vw 1.28205vw 5.12821vw; font-size: 3.07692vw; line-height: 1; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .about_detail { padding: 5px 26px 5px 20px; font-size: 12px; line-height: 1; }
}

.home .about_detail::before, .home .about_detail::after { content: ""; display: block; position: absolute; background: rgb(0, 52, 92); }

.home .about_detail::before { bottom: 0px; left: 0px; width: 100%; height: 1px; }

.home .about_detail::after { right: 0px; bottom: 0px; width: 3.07692vw; height: 1px; border-radius: 0px 1px 1px 0px; transform-origin: right top; transform: rotate(45deg); }

@media screen and (min-width: 768px) {
  .home .about_detail::after { width: 10px; }
}

.home .item { position: relative; width: 100%; padding: 14.1026vw 0px 0px; overflow-x: hidden; text-align: center; }

@media screen and (min-width: 768px) {
  .home .item { padding: 150px 0px 250px; min-width: 1094px; width: auto; overflow: hidden; }
}

.home .item::before, .home .item::after { content: ""; display: block; position: absolute; }

.home .item::before { z-index: 3; top: 0px; right: 0px; width: 71.7949vw; height: 95.8974vw; background: rgb(0, 102, 75); }

@media screen and (min-width: 768px) {
  .home .item::before { top: 0px; right: 0px; width: 450px; height: 711px; }
}

.home .item::after { z-index: 3; top: 0px; left: -118.205vw; width: 236.667vw; height: 116.923vw; background: url("../img/home/bg_blue_green.svg") 0px 0px / 100% 100% no-repeat; }

@media screen and (min-width: 768px) {
  .home .item::after { top: 0px; right: 95px; width: 3026px; height: 691px; background: url("../img/home/pc_bg_blue_green.svg") 0px 0px / 100% 100% no-repeat; }
}

.home .item h2 { position: relative; z-index: 4; padding: 35.8974vw 0px 16.6667vw; text-align: center; font-size: 7.17949vw; line-height: 1; letter-spacing: 0.38rem; color: rgb(255, 255, 255); }

@media screen and (min-width: 768px) {
  .home .item h2 { padding: 120px 0px 0px; font-size: 28px; }
}

.home .item h2::before, .home .item h2::after { content: ""; display: block; position: absolute; }

.home .item h2::before { top: 0px; left: 50%; width: 1px; height: 0vw; background: rgb(255, 255, 255); transform: translateX(-50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .item h2::before { inset: 0px auto auto 50%; width: 1px; height: 0px; transform: translateX(-50%); }
}

.home .item h2.-show::before { height: 30.7692vw; }

@media screen and (min-width: 768px) {
  .home .item h2.-show::before { height: 110px; }
}

.home .item h2 span { position: relative; z-index: 3; display: inline-block; writing-mode: vertical-rl; }

.home .item_list_item { position: relative; color: rgb(255, 255, 255); }

@media screen and (min-width: 768px) {
  .home .item_list_item { display: flex; align-items: center; justify-content: center; }
}

.home .item_list_item .img { position: relative; z-index: 2; display: block; }

.home .item_list_item dl { position: relative; }

.home .item_list_item dl dt { position: relative; z-index: 2; font-size: 6.66667vw; letter-spacing: 0.075rem; text-align: left; }

@media screen and (min-width: 768px) {
  .home .item_list_item dl dt { font-size: 26px; }
}

.home .item_list_item dl dt span { display: block; padding-top: 1.28205vw; font-size: 3.33333vw; letter-spacing: 0.05em; }

@media screen and (min-width: 768px) {
  .home .item_list_item dl dt span { padding-top: 5px; font-size: 13px; }
}

.home .item_list_item dl dd { position: relative; z-index: 2; padding: 5.12821vw 0px 0px; font-size: 3.33333vw; letter-spacing: 0.05rem; line-height: 1.69231; text-align: justify; }

@media screen and (min-width: 768px) {
  .home .item_list_item dl dd { padding: 20px 0px 0px; font-size: 13px; }
}

.home .item_list_item.item1 { padding-bottom: 20.5128vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item1 { z-index: 5; padding: 95px 0px 0px; }
}

.home .item_list_item.item1 .img { width: 100vw; height: 100vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item1 .img { margin-left: 100px; width: 540px; height: 540px; }
}

.home .item_list_item.item1 dl { margin-left: 18.4615vw; padding: 6.92308vw 10.2564vw 8.97436vw 7.17949vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item1 dl { margin-left: 40px; margin-right: 45px; padding: 40px 40px 35px; width: 330px; }
}

.home .item_list_item.item1 dl.-show::before { width: 100%; }

.home .item_list_item.item1 dl.-show::after { height: 15.8974vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item1 dl.-show::after { height: 62px; }
}

.home .item_list_item.item1 dl.-show dt, .home .item_list_item.item1 dl.-show dd { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.home .item_list_item.item1 dl::before, .home .item_list_item.item1 dl::after { content: ""; display: block; position: absolute; transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item1 dl::before { top: 0px; right: 0px; width: 0%; height: 100%; background: rgb(143, 72, 137); }

.home .item_list_item.item1 dl::after { right: 0px; bottom: -10.7692vw; width: 25.641vw; height: 0vw; background: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .item_list_item.item1 dl::after { right: -49px; bottom: -32px; width: 100px; height: 0px; }
}

.home .item_list_item.item1 dl dt, .home .item_list_item.item1 dl dd { opacity: 0; filter: blur(10px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item1 dl dt { font-size: 7.17949vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item1 dl dt { font-size: 28px; }
}

.home .item_list_item.item2 { padding-bottom: 15.8974vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item2 { flex-flow: row-reverse; padding: 120px 0px 0px; }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .home .item_list_item.item2.-show::after { height: 62px; }
}

@media screen and (min-width: 768px) {
  .home .item_list_item.item2::before, .home .item_list_item.item2::after { content: ""; display: block; position: absolute; }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .home .item_list_item.item2::before { top: 0px; right: 50%; width: 1547px; height: 600px; background: url("../img/home/pc_bg_orange.svg") 0px 0px / 100% 100% no-repeat; transform: translateX(91px); }
}

@media screen and (min-width: 768px) {
  .home .item_list_item.item2::after { background: rgb(0, 102, 75); }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .home .item_list_item.item2::after { right: 50%; bottom: -82px; width: 100px; height: 0px; transform: translateX(-117px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }
}

.home .item_list_item.item2 .img { width: 100vw; height: 79.4872vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item2 .img { margin-right: 100px; width: 564px; height: 433px; }
}

.home .item_list_item.item2 dl { padding: 7.69231vw 20.5128vw 6.41026vw 10.2564vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item2 dl { margin-right: 30px; margin-left: 140px; padding: 0px; width: 265px; }
}

.home .item_list_item.item2 dl.-show::after { height: 15.8974vw; }

.home .item_list_item.item2 dl.-show dt, .home .item_list_item.item2 dl.-show dd { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.home .item_list_item.item2 dl::before, .home .item_list_item.item2 dl::after { content: ""; display: block; position: absolute; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item2 dl::before, .home .item_list_item.item2 dl::after { display: none; }
}

.home .item_list_item.item2 dl::before { top: -93.5897vw; left: 0px; width: 93.3333vw; height: 147.436vw; background: url("../img/home/bg_orange.svg") 0px 0px / 100% 100% no-repeat; }

.home .item_list_item.item2 dl::after { left: 57.6923vw; bottom: -8.97436vw; width: 25.641vw; height: 0vw; background: rgb(0, 102, 75); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item2 dl dt, .home .item_list_item.item2 dl dd { opacity: 0; filter: blur(10px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item3 { padding-bottom: 30.7692vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item3 { padding: 142px 0px 0px; }
}

.home .item_list_item.item3 .img { left: 10.2564vw; width: 89.7436vw; height: 74.359vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item3 .img { left: auto; margin-left: 45px; width: 540px; height: 540px; }
}

.home .item_list_item.item3 dl { top: -7.69231vw; margin-right: 18.2051vw; margin-bottom: -7.69231vw; padding: 15.3846vw 7.69231vw 8.97436vw 10.2564vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item3 dl { top: 0px; margin-bottom: 0px; margin-right: 140px; margin-left: 40px; padding: 40px 40px 35px; width: 330px; }
}

.home .item_list_item.item3 dl.-show::before { height: 24.359vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item3 dl.-show::before { top: -50px; height: 95px; }
}

.home .item_list_item.item3 dl.-show::after { width: 100%; }

.home .item_list_item.item3 dl.-show dt, .home .item_list_item.item3 dl.-show dd { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.home .item_list_item.item3 dl::before, .home .item_list_item.item3 dl::after { content: ""; display: block; position: absolute; transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item3 dl::before { bottom: -9.74359vw; left: 70vw; width: 24.359vw; height: 0vw; background: rgb(194, 32, 71); }

@media screen and (min-width: 768px) {
  .home .item_list_item.item3 dl::before { inset: 45px -50px auto auto; width: 95px; height: 0px; }
}

.home .item_list_item.item3 dl::after { top: 0px; left: 0px; width: 0%; height: 100%; background: rgb(0, 150, 169); }

.home .item_list_item.item3 dl dt, .home .item_list_item.item3 dl dd { opacity: 0; filter: blur(10px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item4 { padding-bottom: 51.282vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item4 { display: block; padding: 100px 0px 184px; }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .home .item_list_item.item4.-show::after { height: 200px; }
}

@media screen and (min-width: 768px) {
  .home .item_list_item.item4::before, .home .item_list_item.item4::after { content: ""; display: block; position: absolute; }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .home .item_list_item.item4::before { top: 50px; left: 50%; width: 2292px; height: 664px; background: url("../img/home/pc_bg_green.svg") 0px 0px / 100% 100% no-repeat; transform: translateX(-397px); }
}

@media screen and (min-width: 768px) {
  .home .item_list_item.item4::after { background: rgb(143, 72, 137); }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .home .item_list_item.item4::after { left: 50%; bottom: 127px; width: 200px; height: 0px; transform: translateX(-547px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }
}

@media screen and (min-width: 768px) {
  .home .item_list_item.item4 .inner { display: flex; flex-flow: row-reverse; align-items: center; justify-content: right; margin: 0px auto; width: 1094px; }
}

.home .item_list_item.item4 .img { left: 5.12821vw; width: 94.8718vw; height: 74.359vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item4 .img { left: auto; width: 580px; height: 446px; }
}

.home .item_list_item.item4 dl { padding: 7.69231vw 15.3846vw 0px 17.9487vw; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item4 dl { margin-right: 30px; margin-bottom: 50px; padding: 0px; width: 250px; }
}

.home .item_list_item.item4 dl.-show::after { top: 35.8974vw; height: 44.8718vw; }

.home .item_list_item.item4 dl.-show dt, .home .item_list_item.item4 dl.-show dd { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.home .item_list_item.item4 dl::before, .home .item_list_item.item4 dl::after { content: ""; display: block; position: absolute; }

@media screen and (min-width: 768px) {
  .home .item_list_item.item4 dl::before, .home .item_list_item.item4 dl::after { display: none; }
}

.home .item_list_item.item4 dl::before { top: -87.1795vw; left: 0px; width: 100vw; height: 183.59vw; background: url("../img/home/bg_green.svg") 0px 0px / 100% 100% no-repeat; }

.home .item_list_item.item4 dl::after { top: 80.7692vw; left: 5.12821vw; width: 44.8718vw; height: 0vw; background: rgb(143, 72, 137); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .item_list_item.item4 dl dt, .home .item_list_item.item4 dl dd { opacity: 0; filter: blur(10px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.home .shop { width: 100%; overflow: hidden; text-align: center; }

.home .shop h2 { position: relative; padding: 35.8974vw 0px 14.1026vw; text-align: center; font-size: 7.17949vw; line-height: 1; letter-spacing: 0.38rem; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .shop h2 { padding: 120px 0px 95px; font-size: 28px; }
}

.home .shop h2::before, .home .shop h2::after { content: ""; display: block; position: absolute; }

.home .shop h2::before { top: 0px; left: 50%; width: 1px; height: 0vw; background: rgb(0, 52, 92); transform: translateX(-50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .shop h2::before { inset: 0px auto auto 50%; width: 1px; height: 0px; transform: translateX(-50%); }
}

.home .shop h2::after { z-index: 2; bottom: -1.79487vw; left: 50%; width: 104.103vw; height: 50.2564vw; background: url("../img/home/shop_bg1.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 10%); opacity: 0; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .shop h2::after { bottom: 0px; width: 1463px; height: 201px; background: url("../img/home/pc_shop_bg1.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-45%, 10%); }
}

.home .shop h2.-show::before { height: 30.7692vw; }

@media screen and (min-width: 768px) {
  .home .shop h2.-show::before { height: 110px; }
}

.home .shop h2.-show::after { opacity: 1; transform: translate(-50%, 0%); }

@media screen and (min-width: 768px) {
  .home .shop h2.-show::after { transform: translate(-45%, 0%); }
}

.home .shop h2 span { position: relative; z-index: 3; display: inline-block; writing-mode: vertical-rl; }

.home .shop_list_item { position: relative; padding: 0px 0px 17.9487vw; }

@media screen and (min-width: 768px) {
  .home .shop_list_item { display: flex; align-items: center; margin: 0px auto; padding: 0px 0px 140px; width: 1094px; }
}

.home .shop_list_item.-show dl { opacity: 1; }

.home .shop_list_item .img { display: block; width: 100%; }

@media screen and (min-width: 768px) {
  .home .shop_list_item .img { width: 650px; height: 350px; }
}

.home .shop_list_item .img .js_anime_img_inner { transition-delay: 500ms !important; }

.home .shop_list_item dl { color: rgb(0, 52, 92); opacity: 0; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1) 1000ms; }

.home .shop_list_item dl dt { padding: 5.12821vw 0px 0px; font-size: 5.12821vw; line-height: 1; letter-spacing: 0.2rem; }

@media screen and (min-width: 768px) {
  .home .shop_list_item dl dt { padding: 0px; font-size: 20px; }
}

.home .shop_list_item dl dd { padding: 4.35897vw 0px 0px; font-size: 3.58974vw; line-height: 1.85714; }

@media screen and (min-width: 768px) {
  .home .shop_list_item dl dd { padding: 17px 0px 0px; font-size: 14px; }
}

.home .shop_list_item.item1::before { content: ""; display: block; position: absolute; z-index: 2; bottom: -1vw; left: -0.92308vw; width: 97.6923vw; height: 41.282vw; background: url("../img/home/shop_bg2.svg") 0px 0px / 100% 100% no-repeat; opacity: 0; transform: translate(0px, 10%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item1::before { bottom: -11px; left: 50%; width: 1313px; height: 195px; background: url("../img/home/pc_shop_bg2.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 10%); }
}

.home .shop_list_item.item1.-show::before { opacity: 1; transform: translate(0px, 0%); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item1.-show::before { transform: translate(-50%, 0%); }
}

@media screen and (min-width: 768px) {
  .home .shop_list_item.item1 dl { margin-left: 50px; }
}

@media screen and (min-width: 768px) {
  .home .shop_list_item.item2 { flex-flow: row-reverse; justify-content: right; }
}

.home .shop_list_item.item2::before { content: ""; display: block; position: absolute; z-index: 2; bottom: 0px; left: -1.02564vw; width: 98.718vw; height: 32.0513vw; background: url("../img/home/shop_bg3.svg") 0px 0px / 100% 100% no-repeat; opacity: 0; transform: translate(0px, 10%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item2::before { bottom: -5px; left: 50%; width: 1338px; height: 143px; background: url("../img/home/pc_shop_bg3.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 10%); }
}

.home .shop_list_item.item2.-show::before { opacity: 1; transform: translate(0px, 0%); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item2.-show::before { transform: translate(-50%, 0%); }
}

@media screen and (min-width: 768px) {
  .home .shop_list_item.item2 dl { margin-right: 50px; }
}

.home .shop_list_item.item3::before { content: ""; display: block; position: absolute; z-index: 2; bottom: -22.6154vw; left: 50%; width: 103.077vw; height: 76.9231vw; background: url("../img/home/shop_bg4.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 10%); opacity: 0; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item3::before { bottom: -100px; left: 50%; width: 1330px; height: 338px; background: url("../img/home/pc_shop_bg4.svg") 0px 0px / 100% 100% no-repeat; }
}

.home .shop_list_item.item3.-show::before { opacity: 1; transform: translate(-50%, 0%); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item3 dl { margin-left: 50px; }
}

.home .shop_list_item.item4 { padding-bottom: 43.8462vw; }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item4 { padding-bottom: 400px; }
}

.home .shop_list_item.item4::before { content: ""; display: block; position: absolute; z-index: 2; bottom: -14.6154vw; left: 50%; width: 103.077vw; height: 76.9231vw; background: url("../img/home/shop_bg5.svg") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 10%); opacity: 0; transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item4::before { bottom: 96px; left: 50%; width: 1330px; height: 338px; background: url("../img/home/pc_shop_bg5.svg") 0px 0px / 100% 100% no-repeat; }
}

.home .shop_list_item.item4.-show::before { opacity: 1; transform: translate(-50%, 0%); }

.home .shop_list_item.item4 { flex-flow: row-reverse; justify-content: right; }

@media screen and (min-width: 768px) {
  .home .shop_list_item.item4 dl { margin-right: 50px; }
}

.home .shop_detail { position: relative; display: inline-block; z-index: 3; margin: 6.41026vw; padding: 1.28205vw 6.41026vw 1.28205vw 5.12821vw; font-size: 3.07692vw; line-height: 1; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .shop_detail { margin: 25px 0px 0px; padding: 5px 26px 5px 20px; font-size: 12px; line-height: 1; }
}

.home .shop_detail::before, .home .shop_detail::after { content: ""; display: block; position: absolute; background: rgb(0, 52, 92); }

.home .shop_detail::before { bottom: 0px; left: 0px; width: 100%; height: 1px; }

.home .shop_detail::after { right: 0px; bottom: 0px; width: 3.07692vw; height: 1px; border-radius: 0px 1px 1px 0px; transform-origin: right top; transform: rotate(45deg); }

@media screen and (min-width: 768px) {
  .home .shop_detail::after { width: 10px; }
}

.home .news { width: 100%; overflow: hidden; text-align: center; }

.home .news h2 { position: relative; padding: 35.8974vw 0px 14.1026vw; text-align: center; font-size: 7.17949vw; line-height: 1; letter-spacing: 0.38rem; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .news h2 { padding: 120px 0px 0px; font-size: 28px; }
}

.home .news h2::before, .home .news h2::after { content: ""; display: block; position: absolute; }

.home .news h2::before { top: 0px; left: 50%; width: 1px; height: 0vw; background: rgb(0, 52, 92); transform: translateX(-50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .home .news h2::before { inset: 0px auto auto 50%; width: 1px; height: 0px; transform: translateX(-50%); }
}

.home .news h2 span { position: relative; z-index: 3; display: inline-block; writing-mode: vertical-rl; }

.home .news h2.-show::before { height: 30.7692vw; }

@media screen and (min-width: 768px) {
  .home .news h2.-show::before { height: 110px; }
}

.home .news_list { margin: 0px auto; padding: 20.5128vw 0px 10.2564vw; width: 79.4872vw; }

@media screen and (min-width: 768px) {
  .home .news_list { padding: 80px 0px 40px; width: 794px; }
}

.home .news_list_item { display: none; }

.home .news_list_item:nth-child(1), .home .news_list_item:nth-child(2), .home .news_list_item:nth-child(3) { display: block; }

.home .news_list_item a { position: relative; display: block; padding: 3.84615vw 0px; }

@media screen and (min-width: 768px) {
  .home .news_list_item a { padding: 14px 0px; }
}

.home .news_list_item a::before, .home .news_list_item a::after { content: ""; display: block; position: absolute; }

.home .news_list_item a::before { left: 0px; bottom: 0px; width: 100%; height: 1px; background: rgb(0, 52, 92); }

.home .news_list_item a::after { top: 50%; right: 2.5641vw; width: 3.07692vw; height: 3.07692vw; border-right: 1px solid rgb(0, 52, 92); border-bottom: 1px solid rgb(0, 52, 92); transform: translateY(-50%) rotate(-45deg); }

@media screen and (min-width: 768px) {
  .home .news_list_item a::after { right: 10px; width: 12px; height: 12px; }
}

.home .news_list_item a dl { display: flex; font-size: 3.58974vw; line-height: 1.57143; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .news_list_item a dl { font-size: 14px; line-height: 1.57143; }
}

.home .news_list_item a dl dt { white-space: nowrap; }

.home .news_list_item a dl dd { padding-left: 1em; padding-right: 2.5em; text-align: left; }

@media screen and (min-width: 768px) {
  .home .news_list_item a dl dd { padding-left: 3em; }
}

.home .news_list_detail { position: relative; display: inline-block; z-index: 3; padding: 1.28205vw 6.41026vw 1.28205vw 5.12821vw; font-size: 3.07692vw; line-height: 1; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .home .news_list_detail { margin: 25px 0px 0px; padding: 5px 26px 5px 20px; font-size: 12px; line-height: 1; }
}

.home .news_list_detail::before, .home .news_list_detail::after { content: ""; display: block; position: absolute; background: rgb(0, 52, 92); }

.home .news_list_detail::before { bottom: 0px; left: 0px; width: 100%; height: 1px; }

.home .news_list_detail::after { right: 0px; bottom: 0px; width: 3.07692vw; height: 1px; border-radius: 0px 1px 1px 0px; transform-origin: right top; transform: rotate(45deg); }

@media screen and (min-width: 768px) {
  .home .news_list_detail::after { width: 10px; }
}

.story { padding: 17.9487vw 0px 0px; }

@media screen and (min-width: 768px) {
  .story { padding-top: 0px; }
}

.story .kv { position: relative; }

.story .kv_img { width: 100%; }

@media screen and (min-width: 768px) {
  .story .kv_img { min-width: 1094px; }
}

.story .kv_img img { width: 100%; }

.story .kv_scroll { position: absolute; z-index: 3; top: 125.641vw; left: 0px; width: 100%; height: 25.641vw; opacity: 0; visibility: hidden; transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .story .kv_scroll { top: auto; bottom: 0px; height: 4.39239vw; }
}

.story .kv_scroll.-show { opacity: 1; visibility: visible; }

.story .kv_scroll_txt { display: block; position: absolute; top: 50%; right: 5.12821vw; font-size: 3.07692vw; line-height: 1; color: rgb(0, 52, 92); transform: translateY(-50%); }

@media screen and (min-width: 768px) {
  .story .kv_scroll_txt { top: 20%; right: 1.83016vw; font-size: 0.87848vw; line-height: 1; transform: none; }
}

.story .kv_scroll_txt::before { content: ""; display: block; position: absolute; left: 50%; bottom: 0px; width: 5.12821vw; height: 5.12821vw; background: url("../img/common/icon_scroll_blue.png") 0px 0px / 100% 100% no-repeat; transform: translate(-50%, 120%); }

@media screen and (min-width: 768px) {
  .story .kv_scroll_txt::before { width: 28px; height: 28px; }
}

.story .about { position: relative; top: 2.82051vw; padding: 0px 0px 19.2308vw; }

@media screen and (min-width: 768px) {
  .story .about { top: auto; margin: 50px 0px 0px; padding: 0px 0px 50px; }
}

.story .about h2 { position: relative; padding: 35.8974vw 0px 21.2821vw; text-align: center; font-size: 7.17949vw; line-height: 1; letter-spacing: 0.38rem; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .about h2 { padding: 140px 0px 80px; font-size: 28px; }
}

.story .about h2::before, .story .about h2::after { content: ""; display: block; position: absolute; }

.story .about h2::before { top: 0px; left: 50%; width: 1px; height: 0vw; background: rgb(0, 52, 92); transform: translateX(-50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .story .about h2::before { height: 0px; }
}

.story .about h2.-show::before { height: 30.7692vw; }

@media screen and (min-width: 768px) {
  .story .about h2.-show::before { height: 110px; }
}

.story .about h2 span { position: relative; z-index: 3; display: inline-block; writing-mode: vertical-rl; }

.story .about h2 + p { display: flex; justify-content: center; }

.story .about h2 + p span { display: inline-block; font-size: 4.61538vw; line-height: 2.22222; letter-spacing: 0.24rem; color: rgb(0, 52, 92); writing-mode: vertical-rl; text-orientation: upright; }

@media screen and (min-width: 768px) {
  .story .about h2 + p span { font-size: 18px; }
}

.story .about h2 + p span b { position: relative; display: inline-block; padding: 1.79487vw 0px 3.07692vw; font-weight: normal; font-style: normal; }

@media screen and (min-width: 768px) {
  .story .about h2 + p span b { padding: 7px 0px 12px; }
}

.story .about h2 + p span b::before, .story .about h2 + p span b::after { display: block; position: absolute; }

.story .about h2 + p span b::before { content: "”"; top: 0px; right: 0px; transform: translateX(20%); }

.story .about h2 + p span b::after { content: "“"; bottom: -1.53846vw; left: 0px; transform: translateX(-20%); }

@media screen and (min-width: 768px) {
  .story .about h2 + p span b::after { bottom: -6px; }
}

.story .about_item { position: relative; padding: 0px 0px 38.4615vw; }

@media screen and (min-width: 768px) {
  .story .about_item { margin: 0px auto; padding: 0px 0px 250px; width: 1094px; }
}

.story .about_item .img { position: absolute; display: block; z-index: 3; }

.story .about_item .img figure { display: inline-block; }

.story .about_item .img img { width: 100%; height: auto; }

.story .about_item_txt { position: relative; margin-bottom: 10.2564vw; color: rgb(255, 255, 255); }

@media screen and (min-width: 768px) {
  .story .about_item_txt { width: 500px; height: 500px; }
}

.story .about_item_txt::before { content: ""; display: block; position: absolute; top: 0px; width: 0%; height: 100%; transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

.story .about_item_txt h3 { font-size: 6.15385vw; line-height: 1.66667; letter-spacing: 0.025rem; white-space: nowrap; opacity: 0; filter: blur(10px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .story .about_item_txt h3 { font-size: 26px; line-height: 1.92308; letter-spacing: 0.05rem; }
}

.story .about_item_txt p { padding: 3.84615vw 0px 0px; font-size: 4.61538vw; line-height: 1.69231; letter-spacing: 0.075rem; opacity: 0; filter: blur(10px); transform: translateY(10px); transition: 0.5s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .story .about_item_txt p { padding: 50px 0px 0px; font-size: 18px; letter-spacing: 0px; }
}

.story .about_item_txt.-show::before { width: 100%; }

.story .about_item_txt.-show h3, .story .about_item_txt.-show p { opacity: 1; filter: blur(0px); transform: translateY(0px); }

.story .about_item.item1 { margin-top: 25.641vw; padding-top: 82.0513vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item1 { margin-top: 100px; padding-top: 0px; }
}

.story .about_item.item1 .img { top: 0px; left: 0px; width: 89.7436vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item1 .img { top: 97px; left: 0px; width: 684px; height: 684px; }
}

.story .about_item.item1 .about_item_txt { margin-left: auto; padding: 15.3846vw 5.12821vw 8.97436vw 10.2564vw; width: 76.9231vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item1 .about_item_txt { margin-bottom: 380px; width: 500px; padding: 148px 0px 0px 190px; }
}

.story .about_item.item1 .about_item_txt::before { right: 0px; background: rgb(0, 150, 169); }

.story .about_item.item2 .img { top: 51.7949vw; right: 0px; width: 89.7436vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item2 .img { top: 97px; right: 0px; width: 684px; height: 684px; }
}

.story .about_item.item2 .about_item_txt { margin-bottom: 91.7949vw; padding: 10.2564vw 5.12821vw 18.4615vw 10.2564vw; width: 82.0513vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item2 .about_item_txt { margin-bottom: 393px; width: 500px; padding: 135px 0px 0px 100px; }
}

.story .about_item.item2 .about_item_txt::before { left: 0px; background: rgb(230, 113, 53); }

.story .about_item.item3 { padding-top: 82.0513vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item3 { padding-top: 0px; }
}

.story .about_item.item3 .img { top: 0px; left: 0px; width: 89.7436vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item3 .img { top: 97px; left: 0px; width: 684px; height: 684px; }
}

.story .about_item.item3 .about_item_txt { margin-left: auto; padding: 15.3846vw 5.12821vw 8.97436vw 10.2564vw; width: 82.0513vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item3 .about_item_txt { margin-bottom: 393px; width: 500px; padding: 135px 0px 0px 194px; }
}

.story .about_item.item3 .about_item_txt::before { right: 0px; background: rgb(0, 102, 75); }

.story .about_item.item4 .img { top: 51.7949vw; right: 0px; width: 89.7436vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item4 .img { top: 97px; right: 0px; width: 684px; height: 684px; }
}

.story .about_item.item4 .about_item_txt { margin-bottom: 91.7949vw; padding: 10.2564vw 5.12821vw 18.4615vw 10.2564vw; width: 82.0513vw; }

@media screen and (min-width: 768px) {
  .story .about_item.item4 .about_item_txt { margin-bottom: 393px; width: 500px; padding: 135px 0px 0px 102px; }
}

.story .about_item.item4 .about_item_txt::before { left: 0px; background: rgb(143, 72, 137); }

@media screen and (min-width: 768px) {
  .story .about_item_feature ol { display: flex; justify-content: center; margin: 0px auto; }
}

.story .about_item_feature ol li { position: relative; }

@media screen and (min-width: 768px) {
  .story .about_item_feature ol li { padding: 0px 35px; width: auto; }
}

.story .about_item_feature ol li::before { content: ""; display: block; position: absolute; top: 0px; left: 50%; width: 12.8205vw; height: 12.8205vw; border-radius: 12.8205vw; background: rgb(0, 52, 92); font-size: 5.38462vw; line-height: 12.8205vw; text-align: center; color: rgb(255, 255, 255); transform: translateX(-50%); }

@media screen and (min-width: 768px) {
  .story .about_item_feature ol li::before { width: 50px; height: 50px; border-radius: 50px; font-size: 21px; line-height: 50px; }
}

.story .about_item_feature ol li.feature1::before { content: "1"; }

.story .about_item_feature ol li.feature2::before { content: "2"; }

.story .about_item_feature ol li.feature3::before { content: "3"; }

.story .about_item_feature ol li dl { margin: 0px auto; max-width: 70.5128vw; width: 100%; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .about_item_feature ol li dl { width: 260px; max-width: 100%; }
}

.story .about_item_feature ol li dl dt { padding: 17.9487vw 0px 0px; font-size: 5.38462vw; line-height: 1.52381; letter-spacing: 0.05rem; text-align: center; }

@media screen and (min-width: 768px) {
  .story .about_item_feature ol li dl dt { padding: 75px 0px 0px; font-size: 21px; white-space: nowrap; }
}

.story .about_item_feature ol li dl dd { padding: 4.61538vw 0px 11.5385vw; font-size: 3.33333vw; line-height: 1.69231; letter-spacing: 0.075rem; text-align: justify; }

@media screen and (min-width: 768px) {
  .story .about_item_feature ol li dl dd { padding: 20px 0px 0px; font-size: 13px; }
}

@media screen and (min-width: 768px) {
  .story .about_item_feature .feature_pagination { display: none; }
}

.story .about_item_feature .feature_pagination .swiper-pagination-bullet { margin: 0px 1.28205vw; height: 2.5641vw; width: 2.5641vw; border-radius: 2.5641vw; border: 1px solid rgb(0, 52, 92); background: rgb(255, 255, 255); }

.story .about_item_feature .feature_pagination .swiper-pagination-bullet-active { background: rgb(0, 52, 92); }

.story .fun h2 { position: relative; padding: 35.8974vw 0px 21.2821vw; text-align: center; font-size: 7.17949vw; line-height: 1; letter-spacing: 0.38rem; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .fun h2 { padding: 140px 0px 80px; font-size: 28px; }
}

.story .fun h2::before, .story .fun h2::after { content: ""; display: block; position: absolute; }

.story .fun h2::before { top: 0px; left: 50%; width: 1px; height: 0vw; background: rgb(0, 52, 92); transform: translateX(-50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .story .fun h2::before { height: 0px; }
}

.story .fun h2.-show::before { height: 30.7692vw; }

@media screen and (min-width: 768px) {
  .story .fun h2.-show::before { height: 110px; }
}

.story .fun h2 span { position: relative; z-index: 3; display: inline-block; writing-mode: vertical-rl; }

.story .fun h2 + p { display: flex; justify-content: center; padding: 0px 0px 30.7692vw; }

@media screen and (min-width: 768px) {
  .story .fun h2 + p { padding: 0px; }
}

.story .fun h2 + p span { display: inline-block; font-size: 4.61538vw; line-height: 2.22222; letter-spacing: 0.24rem; color: rgb(0, 52, 92); writing-mode: vertical-rl; text-orientation: upright; }

@media screen and (min-width: 768px) {
  .story .fun h2 + p span { font-size: 18px; }
}

.story .fun_scene { position: relative; padding: 17.9487vw 0px 0px; width: 100%; overflow: hidden; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .fun_scene { margin: 0px auto; padding: 0px; width: 1094px; }
}

.story .fun_scene::before, .story .fun_scene::after { content: ""; display: block; position: absolute; z-index: 3; }

.story .fun_scene h3 { position: relative; z-index: 2; font-size: 5.38462vw; letter-spacing: 0.24rem; writing-mode: vertical-rl; }

@media screen and (min-width: 768px) {
  .story .fun_scene h3 { font-size: 21px; }
}

.story .fun_scene figure { position: absolute; display: block; }

.story .fun_scene p { position: relative; z-index: 2; padding: 7.69231vw 10.2564vw 0px; font-size: 3.33333vw; line-height: 1.69231; letter-spacing: 0.075rem; }

@media screen and (min-width: 768px) {
  .story .fun_scene p { display: inline-block; padding: 40px 0px 0px; font-size: 13px; line-height: 1.69231; text-align: center; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene1 { padding-top: 150px; }
}

.story .fun_scene.scene1::before { top: 11.5385vw; right: 7.69231vw; width: 10.2564vw; height: 10.2564vw; background: rgb(0, 102, 75); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene1::before { top: 196px; right: auto; left: 631px; width: 40px; height: 40px; }
}

.story .fun_scene.scene1::after { top: 0vw; right: -5.12821vw; width: 15.3846vw; height: 15.3846vw; background: rgb(143, 72, 137); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene1::after { top: 149px; right: auto; left: 661px; width: 40px; height: 60px; }
}

.story .fun_scene.scene1 h3 { margin-left: 10.2564vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene1 h3 { margin-left: 150px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene1 p { margin-left: 50px; }
}

.story .fun_scene.scene1 figure { top: 10.5128vw; left: 24.359vw; width: 64.1026vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene1 figure { top: 53px; left: 225px; width: 375px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene2 { top: -28px; margin-bottom: -28px; min-height: 492px; text-align: right; }
}

.story .fun_scene.scene2::before { top: 25.8974vw; left: 0vw; width: 15.3846vw; height: 7.69231vw; background: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene2::before { top: 310px; left: 364px; width: 60px; height: 30px; }
}

.story .fun_scene.scene2::after { top: 18.7179vw; left: 10.2564vw; width: 10.2564vw; height: 10.2564vw; background: rgb(194, 32, 71); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene2::after { top: 282px; left: 404px; width: 40px; height: 40px; }
}

.story .fun_scene.scene2 h3 { margin-left: auto; margin-right: 7.69231vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene2 h3 { margin-left: auto; margin-right: 169px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene2 p { margin-left: auto; margin-right: 80px; }
}

.story .fun_scene.scene2 figure { top: 14.1026vw; left: 22.3077vw; width: 55.1282vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene2 figure { top: 33px; left: 475px; width: 319px; }
}

.story .fun_scene.scene3 { padding-top: 30.7692vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene3 { padding-top: 61px; }
}

.story .fun_scene.scene3::before { top: 15.1282vw; right: 7.69231vw; width: 14.8718vw; height: 11.5385vw; background: rgb(0, 150, 169); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene3::before { top: 124px; left: 711px; width: 58px; height: 45px; }
}

.story .fun_scene.scene3::after { top: 23.5897vw; right: 0px; width: 10.2564vw; height: 10.2564vw; background: rgb(230, 113, 53); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene3::after { top: 157px; left: 759px; width: 40px; height: 40px; }
}

.story .fun_scene.scene3 h3 { margin-left: 10.2564vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene3 h3 { margin-left: 156px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene3 p { margin-left: 50px; }
}

.story .fun_scene.scene3 figure { top: 26.9231vw; left: 22.0513vw; width: 71.7949vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene3 figure { top: 18px; left: 252px; width: 401px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene4 { padding-top: 50px; text-align: right; }
}

.story .fun_scene.scene4::before { top: 23.5897vw; left: 12.8205vw; width: 7.69231vw; height: 15.3846vw; background: rgb(143, 72, 137); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene4::before { top: 201px; left: 319px; width: 30px; height: 60px; }
}

.story .fun_scene.scene4::after { top: 17.6923vw; left: 5.12821vw; width: 10.2564vw; height: 10.2564vw; background: rgb(0, 102, 75); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene4::after { top: 171px; left: 299px; width: 40px; height: 40px; }
}

.story .fun_scene.scene4 h3 { margin-left: auto; margin-right: 7.69231vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene4 h3 { margin-left: auto; margin-right: 185px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene4 p { margin-left: auto; margin-right: 80px; }
}

.story .fun_scene.scene4 figure { top: 17.9487vw; left: 10.2564vw; width: 71.7949vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene4 figure { top: 65px; left: 364px; width: 395px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene5 { padding-top: 75px; }
}

.story .fun_scene.scene5::before { top: 9.74359vw; right: 2.5641vw; width: 10.2564vw; height: 10.2564vw; background: rgb(194, 32, 71); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene5::before { top: 160px; left: 701px; width: 40px; height: 40px; }
}

.story .fun_scene.scene5::after { top: 15.3846vw; right: -7.69231vw; width: 12.8205vw; height: 20.5128vw; background: rgb(0, 150, 169); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene5::after { top: 182px; left: 731px; width: 50px; height: 80px; }
}

.story .fun_scene.scene5 h3 { margin-left: 10.2564vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene5 h3 { margin-left: 150px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene5 p { margin-left: 50px; }
}

.story .fun_scene.scene5 figure { top: 25.641vw; left: 17.6923vw; width: 81.0256vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene5 figure { top: 67px; left: 214px; width: 486px; }
}

.story .fun_scene.scene6 { padding-top: 26.9231vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene6 { padding-top: 40px; text-align: right; }
}

.story .fun_scene.scene6::before { top: 20.7692vw; left: 5.12821vw; width: 10.2564vw; height: 10.2564vw; background: rgb(230, 113, 53); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene6::before { top: 294px; left: 273px; width: 37px; height: 37px; }
}

.story .fun_scene.scene6::after { top: 16.4103vw; left: 11.5385vw; width: 15.3846vw; height: 7.69231vw; background: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene6::after { top: 320px; left: 299px; width: 60px; height: 30px; }
}

.story .fun_scene.scene6 h3 { margin-left: auto; margin-right: 7.69231vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene6 h3 { margin-left: auto; margin-right: 184px; }
}

@media screen and (min-width: 768px) {
  .story .fun_scene.scene6 p { margin-left: auto; margin-right: 80px; }
}

.story .fun_scene.scene6 figure { top: 28.9744vw; left: 5.64103vw; width: 74.359vw; }

@media screen and (min-width: 768px) {
  .story .fun_scene.scene6 figure { top: 57px; left: 370px; width: 433px; }
}

.story .page_back { padding: 30.7692vw 0px 0px; text-align: center; }

@media screen and (min-width: 768px) {
  .story .page_back { padding: 155px 0px 0px; }
}

.story .page_back a { position: relative; display: inline-block; z-index: 3; padding: 1.28205vw 6.41026vw 1.28205vw 7.69231vw; font-size: 3.07692vw; line-height: 1; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .story .page_back a { padding: 5px 20px 5px 26px; font-size: 12px; }
}

.story .page_back a::before, .story .page_back a::after { content: ""; display: block; position: absolute; background: rgb(0, 52, 92); }

.story .page_back a::before { bottom: 0px; left: 0px; width: 100%; height: 1px; }

.story .page_back a::after { left: 0px; bottom: 0px; width: 3.07692vw; height: 1px; border-radius: 0px 1px 1px 0px; transform-origin: left top; transform: rotate(-45deg); }

@media screen and (min-width: 768px) {
  .story .page_back a::after { width: 10px; }
}

.wrap.news .news_main { padding-top: 28.2051vw; overflow: hidden; }

@media screen and (min-width: 768px) {
  .wrap.news .news_main { padding-top: 100px; }
}

.wrap.news .news_main h1 { position: relative; padding: 35.8974vw 0px 23.0769vw; text-align: center; font-size: 7.17949vw; line-height: 1; letter-spacing: 0.38rem; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .wrap.news .news_main h1 { padding: 140px 0px 175px; font-size: 28px; }
}

.wrap.news .news_main h1::before, .wrap.news .news_main h1::after { content: ""; display: block; position: absolute; }

.wrap.news .news_main h1::before { top: 0px; left: 50%; width: 1px; height: 0vw; background: rgb(0, 52, 92); transform: translateX(-50%); transition: 1s cubic-bezier(0.21, 0.51, 0.51, 1); }

@media screen and (min-width: 768px) {
  .wrap.news .news_main h1::before { height: 0px; }
}

.wrap.news .news_main h1::after { bottom: 6.41026vw; left: 50%; width: 105.128vw; height: 38.4615vw; background: url("../img/news/news_bg1.svg") center 0px / 100% 100% no-repeat; transform: translateX(-50%); }

@media screen and (min-width: 768px) {
  .wrap.news .news_main h1::after { bottom: -10px; width: 1342px; height: 247px; background: url("../img/news/pc_news_bg1.svg") center 0px / 100% 100% no-repeat; }
}

.wrap.news .news_main h1.-show::before { height: 30.7692vw; }

@media screen and (min-width: 768px) {
  .wrap.news .news_main h1.-show::before { height: 110px; }
}

.wrap.news .news_main h1 span { position: relative; z-index: 3; display: inline-block; writing-mode: vertical-rl; }

.wrap.news .news_list { margin: 0px auto; width: 79.4872vw; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .wrap.news .news_list { width: 894px; }
}

.wrap.news .news_list_item { display: none; padding: 7.69231vw 0px 11.5385vw; border-top: 1px solid rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .wrap.news .news_list_item { position: relative; padding: 40px 0px 70px 200px; }
}

.wrap.news .news_list_item.-noborder { border: none; }

.wrap.news .news_list_item.-show { display: block; }

.wrap.news .news_date { font-size: 3.33333vw; line-height: 1; }

@media screen and (min-width: 768px) {
  .wrap.news .news_date { position: absolute; left: 0px; top: 40px; font-size: 13px; }
}

.wrap.news .news_title { padding: 3.84615vw 0px; font-size: 4.61538vw; line-height: 1.44444; }

@media screen and (min-width: 768px) {
  .wrap.news .news_title { padding: 0px 0px 13px; font-size: 18px; }
}

.wrap.news .news_content { font-size: 3.58974vw; line-height: 1.85714; }

@media screen and (min-width: 768px) {
  .wrap.news .news_content { font-size: 14px; }
}

.wrap.news .news_navi { position: relative; padding: 7.69231vw 0px 38.718vw; }

@media screen and (min-width: 768px) {
  .wrap.news .news_navi { padding: 0px 0px 185px; }
}

.wrap.news .news_navi::before { content: ""; display: block; position: absolute; bottom: 0px; left: 50%; width: 93.8461vw; height: 36.1538vw; background: url("../img/news/news_bg2.svg") center 0px / 100% 100% no-repeat; transform: translateX(-50%); }

@media screen and (min-width: 768px) {
  .wrap.news .news_navi::before { width: 1375px; height: 197px; background: url("../img/news/pc_news_bg2.svg") center 0px / 100% 100% no-repeat; }
}

.wrap.news .news_navi_list { position: relative; z-index: 2; display: flex; justify-content: center; align-items: center; font-size: 3.07692vw; }

@media screen and (min-width: 768px) {
  .wrap.news .news_navi_list { font-size: 12px; }
}

.wrap.news .news_navi_list a { display: inline-block; padding: 0px 2.5641vw; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .wrap.news .news_navi_list a { padding: 0px 10px; }
}

.wrap.news .news_navi_prev, .wrap.news .news_navi_next { opacity: 0; pointer-events: none; }

.wrap.news .news_navi_prev.-show, .wrap.news .news_navi_next.-show { opacity: 1; pointer-events: auto; }

.wrap.news .news_navi_prev span, .wrap.news .news_navi_next span { position: relative; display: block; cursor: pointer; width: 2.5641vw; height: 2.5641vw; }

@media screen and (min-width: 768px) {
  .wrap.news .news_navi_prev span, .wrap.news .news_navi_next span { width: 10px; height: 10px; }
}

.wrap.news .news_navi_prev span::before, .wrap.news .news_navi_next span::before { content: ""; display: block; width: 100%; height: 100%; }

.wrap.news .news_navi_prev span::before { border-left: 1px solid rgb(0, 52, 92); border-bottom: 1px solid rgb(0, 52, 92); transform: rotate(45deg); }

.wrap.news .news_navi_next span::before { border-right: 1px solid rgb(0, 52, 92); border-bottom: 1px solid rgb(0, 52, 92); transform: rotate(-45deg); }

.wrap.news .news_navi_pager ol { display: flex; justify-content: center; }

.wrap.news .news_navi_pager ol li { visibility: hidden; opacity: 0; display: none; }

.wrap.news .news_navi_pager ol li span { display: inline-block; padding: 0px 2.5641vw; color: rgb(0, 52, 92); text-decoration: underline; cursor: pointer; pointer-events: none; }

@media screen and (min-width: 768px) {
  .wrap.news .news_navi_pager ol li span { padding: 0px 10px; }
}

.wrap.news .news_navi_pager ol li.-show { display: block; opacity: 1; visibility: visible; }

.wrap.news .news_navi_pager ol li.-show span { cursor: pointer; pointer-events: auto; }

.wrap.news .news_navi_pager ol .current span { text-decoration: none; cursor: auto; }

.wrap.news .page_back { padding: 11.5385vw 0px 0px; text-align: center; }

@media screen and (min-width: 768px) {
  .wrap.news .page_back { margin-bottom: -66.66px; padding: 0px; }
}

.wrap.news .page_back a { position: relative; display: inline-block; z-index: 3; padding: 1.28205vw 6.41026vw 1.28205vw 7.69231vw; font-size: 3.07692vw; line-height: 1; color: rgb(0, 52, 92); }

@media screen and (min-width: 768px) {
  .wrap.news .page_back a { padding: 5px 20px 5px 26px; font-size: 12px; }
}

.wrap.news .page_back a::before, .wrap.news .page_back a::after { content: ""; display: block; position: absolute; background: rgb(0, 52, 92); }

.wrap.news .page_back a::before { bottom: 0px; left: 0px; width: 100%; height: 1px; }

.wrap.news .page_back a::after { left: 0px; bottom: 0px; width: 3.07692vw; height: 1px; border-radius: 0px 1px 1px 0px; transform-origin: left top; transform: rotate(-45deg); }

@media screen and (min-width: 768px) {
  .wrap.news .page_back a::after { width: 10px; }
}