@charset "UTF-8";
body,
html {
  overflow-x: hidden;
}

html {
  /* iOS15のモーダル余白抑止 */
  height: 100vh;
}

.member_group {
  padding: 0;
}

#umigyo * {
  transition: initial;
}
#umigyo *,
#umigyo *:after,
#umigyo *:before {
  box-sizing: border-box;
}
#umigyo dl,
#umigyo ol,
#umigyo ul {
  margin: 0;
  padding-left: 0;
}
#umigyo ol li,
#umigyo ul li {
  list-style: none;
}
#umigyo div:after,
#umigyo ul:after,
#umigyo li:after,
#umigyo dd:after,
#umigyo section:after,
#umigyo article:after {
  display: none;
}
#umigyo a {
  text-decoration: none;
}
#umigyo a:active,
#umigyo a:hover {
  text-decoration: none;
  cursor: pointer;
}
#umigyo img {
  max-width: 100%;
  height: auto;
  border: none;
}
#umigyo a img {
  border: 0;
}
#umigyo img {
  vertical-align: bottom;
}
#umigyo {
  font-family: "Noto Sans JP", sans-serif;
  max-width: 1080px;
  margin: 0 auto;
  position: relative;
}
#umigyo a {
  color: #000;
  text-decoration: none;
}
#umigyo p {
  font-size: 16px;
  line-height: 2;
  color: #000;
  text-align: justify;
}
#umigyo .lead {
  font-weight: 500;
}
#umigyo .bold {
  font-weight: bold;
}
#umigyo section + section {
  margin-top: 50px;
}
#umigyo .inner {
  margin: 0 auto;
  padding: 50px;
  display: block;
  position: relative;
}
#umigyo h2 {
  font-size: 30px !important;
  font-weight: 700;
  line-height: 1;
  color: #000 !important;
  padding: 50px 0 35px !important;
  margin-bottom: 28px !important;
  border-top: none !important;
  position: relative;
}
#umigyo h2::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  color: #004A96;
}
#umigyo h2::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  width: 20px;
  height: 2px;
  display: block;
  background-image: url(../img/h2_line_blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
#umigyo h3 {
  font-size: 40px !important;
  line-height: 1.3;
  font-weight: 700;
  text-align: center;
  color: #000 !important;
  margin: 0 0 25px !important;
}
#umigyo .cards {
  margin-top: 50px;
  display: flex;
  gap: 20px;
}
#umigyo .cards.--light {
  gap: 25px;
  background-color: transparent;
}
#umigyo .cards.--light li {
  background-color: #fff;
  padding: 25px;
}
#umigyo .cards.--light .image {
  margin: -25px 0 30px -25px;
  max-width: none;
  width: calc(100% + 50px);
  height: 207px;
}
#umigyo .cards.--light h4 {
  color: #004A96;
  padding: 0 0 17px;
}
#umigyo .cards.--light h4::after {
  background-image: url(../img/h2_line_blue.svg);
}
#umigyo .cards.--light h5 {
  color: #000;
  min-height: auto;
}
#umigyo .cards.--light p {
  color: #000 !important;
}
#umigyo .cards li {
  background-color: rgba(255, 255, 255, 0.1);
  padding: 20px;
}
#umigyo .cards .image {
  height: 100px;
  margin: 0 auto 30px;
  display: block;
}
#umigyo .cards h4 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  color: #fff;
  padding: 0 0 21px;
  margin-bottom: 15px;
  position: relative;
}
#umigyo .cards h4::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  width: 20px;
  height: 2px;
  display: block;
  background-image: url(../img/h2_line_white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
#umigyo .cards h5 {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 1em;
  text-align: center;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.6em;
}
#umigyo .cards p {
  font-size: 16px;
  line-height: 1.8;
  color: #fff !important;
  margin: 0;
}
#umigyo .cards .link {
  display: flex;
  align-items: center;
  padding: 0 20px;
  margin-top: 15px;
  width: 158px;
  height: 28px;
  border-radius: 5px;
  background-color: #fff;
  color: #004A96;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  background-image: url(../img/arrow_right_blue.svg);
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 11px auto;
}
@media (hover: hover) {
  #umigyo .cards .link {
    transition: opacity 0.2s;
  }
  #umigyo .cards .link:hover {
    opacity: 0.75;
  }
}
#umigyo .bg-blue p {
  color: #fff;
}
#umigyo .bg-blue h2,
#umigyo .bg-blue h3 {
  color: #fff !important;
}
#umigyo .bg-blue h2::before {
  color: #fff;
}
#umigyo .bg-blue h2::after {
  background-image: url(../img/h2_line_white.svg);
}
#umigyo .bg-blue {
  background-image: url(../img/bg_blue.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#umigyo .bg-gray {
  background: linear-gradient(to bottom right, rgba(8, 86, 166, 0.1) 0%, rgba(86, 177, 205, 0.1) 100%);
}
@media screen and (min-width: 961px) {
  #umigyo .sp {
    display: none;
  }
}
@media screen and (min-width: 640px) and (max-width: 960px) {
  #umigyo .pc {
    display: none;
  }
  #umigyo p {
    font-size: 22.9743589744px;
  }
  #umigyo .lead {
    text-align: justify !important;
  }
  #umigyo section + section {
    margin-top: 16.4102564103px;
  }
  #umigyo .inner {
    padding: 49.2307692308px;
  }
  #umigyo h2 {
    font-size: 26.2564102564px !important;
    padding: 41.0256410256px 0 29.5384615385px !important;
    margin-bottom: 24.6153846154px !important;
  }
  #umigyo h2::before {
    font-size: 19.6923076923px;
    letter-spacing: 0.05em;
  }
  #umigyo h2::after {
    width: 32.8205128205px;
    height: 2px;
  }
  #umigyo h3 {
    font-size: 32.8205128205px !important;
    margin: 0 0 16.4102564103px !important;
  }
  #umigyo .cards {
    margin-top: 49.2307692308px;
    flex-direction: column;
    gap: 32.8205128205px;
  }
  #umigyo .cards.--light {
    gap: 32.8205128205px;
  }
  #umigyo .cards.--light li {
    padding: 41.0256410256px;
  }
  #umigyo .cards.--light .image {
    margin: -41.0256410256px 0 49.2307692308px -41.0256410256px;
    width: calc(100% + 82.0512820513px);
    height: 339.6923076923px;
  }
  #umigyo .cards.--light h4 {
    padding: 0 0 26.2564102564px;
    margin-bottom: 22.9743589744px;
  }
  #umigyo .cards.--light h5 {
    margin-bottom: 1.2em;
  }
  #umigyo .cards li {
    padding: 41.0256410256px;
  }
  #umigyo .cards .image {
    height: 164.1025641026px;
    margin: 0 auto 24.6153846154px;
  }
  #umigyo .cards h4 {
    font-size: 32.8205128205px;
    padding: 0 0 19.6923076923px;
    margin-bottom: 16.4102564103px;
  }
  #umigyo .cards h4::after {
    width: 32.8205128205px;
  }
  #umigyo .cards h5 {
    font-size: 26.2564102564px;
    margin-bottom: 0.5em;
    min-height: 1.95em;
  }
  #umigyo .cards p {
    font-size: 22.9743589744px;
  }
  #umigyo .cards .link {
    padding: 0 32.8205128205px;
    margin-top: 16.4102564103px;
    width: 259.2820512821px;
    height: 45.9487179487px;
    border-radius: 8.2051282051px;
    font-size: 19.6923076923px;
    background-position: right 32.8205128205px center;
    background-size: 18.0512820513px auto;
  }
  #umigyo .cards .link::after {
    display: none !important;
  }
  #umigyo .bg-blue {
    background-image: url(../img/sp_bg_blue.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}
@media screen and (max-width: 639px) {
  #umigyo .pc {
    display: none;
  }
  #umigyo p {
    font-size: 3.5897435897vw;
  }
  #umigyo .lead {
    text-align: justify !important;
  }
  #umigyo section + section {
    margin-top: 2.5641025641vw;
  }
  #umigyo .inner {
    padding: 7.6923076923vw;
  }
  #umigyo h2 {
    font-size: 4.1025641026vw !important;
    padding: 6.4102564103vw 0 4.6153846154vw !important;
    margin-bottom: 3.8461538462vw !important;
  }
  #umigyo h2::before {
    font-size: 3.0769230769vw;
    letter-spacing: 0.05em;
  }
  #umigyo h2::after {
    width: 5.1282051282vw;
    height: 2px;
  }
  #umigyo h3 {
    font-size: 5.1282051282vw !important;
    margin: 0 0 2.5641025641vw !important;
  }
  #umigyo .cards {
    margin-top: 7.6923076923vw;
    flex-direction: column;
    gap: 5.1282051282vw;
  }
  #umigyo .cards.--light {
    gap: 5.1282051282vw;
  }
  #umigyo .cards.--light li {
    padding: 6.4102564103vw;
  }
  #umigyo .cards.--light .image {
    margin: -6.4102564103vw 0 7.6923076923vw -6.4102564103vw;
    width: calc(100% + 12.8205128205vw);
    height: 53.0769230769vw;
  }
  #umigyo .cards.--light h4 {
    padding: 0 0 4.1025641026vw;
    margin-bottom: 3.5897435897vw;
  }
  #umigyo .cards.--light h5 {
    margin-bottom: 1.2em;
  }
  #umigyo .cards li {
    padding: 6.4102564103vw;
  }
  #umigyo .cards .image {
    height: 25.641025641vw;
    margin: 0 auto 3.8461538462vw;
  }
  #umigyo .cards h4 {
    font-size: 5.1282051282vw;
    padding: 0 0 3.0769230769vw;
    margin-bottom: 2.5641025641vw;
  }
  #umigyo .cards h4::after {
    width: 5.1282051282vw;
  }
  #umigyo .cards h5 {
    font-size: 4.1025641026vw;
    margin-bottom: 0.5em;
    min-height: 1.95em;
  }
  #umigyo .cards p {
    font-size: 3.5897435897vw;
  }
  #umigyo .cards .link {
    padding: 0 5.1282051282vw;
    margin-top: 2.5641025641vw;
    width: 40.5128205128vw;
    height: 7.1794871795vw;
    border-radius: 1.2820512821vw;
    font-size: 3.0769230769vw;
    background-position: right 5.1282051282vw center;
    background-size: 2.8205128205vw auto;
  }
  #umigyo .cards .link::after {
    display: none !important;
  }
  #umigyo .bg-blue {
    background-image: url(../img/sp_bg_blue.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}
#umigyo #ug_menu {
  position: relative;
  z-index: 1008;
  left: 0;
  right: 0;
  top: 40px;
  width: 1080px;
  margin: auto;
  display: block;
  pointer-events: none;
}
#umigyo #ug_menu .inner {
  position: absolute;
  top: 0;
  right: -100px;
  width: 142px;
  margin: 0;
  padding: 0;
  pointer-events: auto;
  background-image: url(../img/menu_bg_small.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-color: #fff;
  border: 1px solid #fff;
  transition: none;
  display: block;
  z-index: auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
}
#umigyo #ug_menu .animated .inner {
  transition: right 0.4s;
}
#umigyo #ug_menu .ttl {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1em;
  height: 55px;
  line-height: 50px;
  margin: 0;
}
#umigyo #ug_menu ul li {
  width: 100%;
  height: auto;
  position: relative;
}
#umigyo #ug_menu ul li::after {
  content: "";
  width: calc(100% - 0px);
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
  pointer-events: none;
  border-top: 1px dotted #fff;
}
#umigyo #ug_menu ul li a {
  color: #fff;
  text-decoration: none;
  text-align: center;
  font-size: 10px;
  line-height: 1.5;
  font-weight: 700;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.25em 4px;
  position: relative;
  z-index: 0;
}
#umigyo #ug_menu ul li a::before {
  content: "";
  width: 100%;
  height: calc(100% + 1px);
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  background-color: transparent;
  z-index: -1;
}
@media screen and (min-width: 1260px) {
  #umigyo #ug_menu.fixed {
    position: fixed;
    top: 100px;
  }
}
@media screen and (min-width: 1260px) and (hover: hover) {
  #umigyo #ug_menu ul li a {
    transition: color 0.2s;
  }
  #umigyo #ug_menu ul li a::before {
    transition: background-color 0.2s;
  }
  #umigyo #ug_menu ul li a:hover::before {
    background-color: rgba(255, 255, 255, 0.2);
  }
}
@media screen and (max-width: 1259px) {
  #umigyo #ug_menu {
    width: 100%;
  }
  #umigyo #ug_menu .inner {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    max-width: none;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    overflow-y: auto;
    border: none;
    border-radius: 0;
    padding: 1.7em 0;
    box-shadow: none;
    background-image: url(../img/menu_bg.svg);
  }
  #umigyo #ug_menu .ttl {
    display: none;
  }
  #umigyo #ug_menu ul {
    width: 332.3076923077px;
    margin: auto;
  }
  #umigyo #ug_menu ul li {
    border-top: 1px dotted #fff;
  }
  #umigyo #ug_menu ul li::after {
    display: none;
  }
  #umigyo #ug_menu ul li:last-of-type {
    border-bottom: 1px dotted #fff;
  }
  #umigyo #ug_menu ul li a {
    font-size: 17.2307692308px;
    line-height: 1.5;
    padding: 1.15em 0;
  }
  #umigyo #ug_menu ul li a br.pc {
    display: none;
  }
  #umigyo #ug_menu.open .inner {
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 480px) {
  #umigyo #ug_menu ul {
    width: 69.2307692308vw;
  }
  #umigyo #ug_menu ul li a {
    font-size: 3.5897435897vw;
  }
}
@media screen and (min-width: 1260px) {
  #umigyo #ug_btn_menu {
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 1259px) {
  #umigyo #ug_btn_menu {
    position: absolute;
    top: 30px;
    right: -100vw;
    display: flex;
    height: 50px;
    width: 50px;
    justify-content: center;
    align-items: center;
    z-index: 999;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    opacity: 1;
    pointer-events: auto;
    transition: none;
    background-image: url(../img/btn_menu_bg.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
  #umigyo #ug_btn_menu.fixed {
    position: fixed;
    top: 70px;
    left: auto;
    right: -3px;
  }
  #umigyo #ug_btn_menu span,
  #umigyo #ug_btn_menu span:after,
  #umigyo #ug_btn_menu span:before {
    content: "";
    display: block;
    height: 2px;
    width: 24px;
    background-color: #fff;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
  }
  #umigyo #ug_btn_menu span {
    right: -2px;
  }
  #umigyo #ug_btn_menu.animated {
    z-index: 1009;
  }
  #umigyo #ug_btn_menu.animated span,
  #umigyo #ug_btn_menu.animated span:after,
  #umigyo #ug_btn_menu.animated span:before {
    transition: background-color 0.2s, transform 0.4s, bottom 0.4s, top 0.4s;
  }
  #umigyo #ug_btn_menu span:before {
    bottom: 10px;
  }
  #umigyo #ug_btn_menu span:after {
    top: 10px;
  }
  #umigyo #ug_btn_menu.active {
    z-index: 1009;
    background-image: none;
    background-color: #fff;
  }
  #umigyo #ug_btn_menu.active span {
    background-color: rgba(255, 255, 255, 0);
    right: 0;
  }
  #umigyo #ug_btn_menu.active span::before {
    left: -2px;
    bottom: 0;
    transform: rotate(45deg);
    background-color: #004A96;
  }
  #umigyo #ug_btn_menu.active span::after {
    left: -2px;
    top: 0;
    transform: rotate(-45deg);
    background-color: #004A96;
  }
}
#umigyo .ug_mv .inner {
  padding: 0;
}
#umigyo .ug_mv h1 {
  margin: 0;
  position: absolute;
  right: 65px;
  bottom: 40px;
  width: 459px;
  z-index: 1;
}
#umigyo .ug_mv h1 img {
  width: 100%;
}
#umigyo .ug_mv .ttl {
  position: absolute;
  left: 40px;
  top: 65px;
  width: 508px;
  z-index: 1;
}
#umigyo .ug_mv .bg {
  width: 100%;
}
@media screen and (min-width: 640px) and (max-width: 960px) {
  #umigyo .ug_mv h1 {
    right: 36.1025641026px;
    bottom: 29.5384615385px;
    width: 308.5128205128px;
  }
  #umigyo .ug_mv .ttl {
    left: 32.8205128205px;
    top: 62.358974359px;
    width: 420.1025641026px;
  }
}
@media screen and (max-width: 639px) {
  #umigyo .ug_mv h1 {
    right: 5.641025641vw;
    bottom: 4.6153846154vw;
    width: 48.2051282051vw;
  }
  #umigyo .ug_mv .ttl {
    left: 5.1282051282vw;
    top: 9.7435897436vw;
    width: 65.641025641vw;
  }
}
#umigyo #ug_whats.bg-blue {
  background-image: url(../img/bg_blue_whats.svg);
}
#umigyo #ug_whats .inner::after {
  content: "";
  position: absolute;
  bottom: -106px;
  left: 0;
  width: 340px;
  height: 284px;
  display: block;
  background-image: url(../img/whats_fish.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#umigyo #ug_whats {
  margin-bottom: 240px;
}
#umigyo #ug_whats h2 {
  text-align: left;
}
#umigyo #ug_whats h2::after {
  margin-left: 0;
}
#umigyo #ug_whats h3 {
  text-align: left;
}
#umigyo #ug_whats .ph {
  width: 690px;
  display: block;
  margin: 55px -50px -240px auto;
}
#umigyo #ug_why > .inner {
  padding-top: 5px;
  padding-inline: 0;
}
#umigyo #ug_why .lead {
  text-align: center;
}
#umigyo #ug_why .fig {
  width: 800px;
  display: block;
  margin: 50px auto 0;
}
#umigyo #ug_problem .lead {
  text-align: center;
}
#umigyo #ug_model {
  margin-top: 260px;
}
#umigyo #ug_model .inner::after {
  content: "";
  position: absolute;
  top: -160px;
  right: 0;
  width: 293px;
  height: 224px;
  display: block;
  background-image: url(../img/model_fish.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#umigyo #ug_model .ph-upper {
  width: 690px;
  display: block;
  margin: -260px auto -207px -50px;
}
#umigyo #ug_model h2 {
  text-align: right;
}
#umigyo #ug_model h2::after {
  margin-right: 0;
}
#umigyo #ug_model h3 {
  text-align: right;
}
#umigyo #ug_model .lead {
  text-align: right;
}
#umigyo #ug_case .lead {
  text-align: center;
}
#umigyo #ug_players {
  margin-top: 260px;
}
#umigyo #ug_players .inner::after {
  content: "";
  position: absolute;
  top: -200px;
  left: 0;
  width: 366px;
  height: 266px;
  display: block;
  background-image: url(../img/players_fish.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#umigyo #ug_players .ph-upper {
  width: 690px;
  display: block;
  margin: -260px -50px -207px auto;
}
#umigyo #ug_players h2 {
  text-align: left;
}
#umigyo #ug_players h2::after {
  margin-left: 0;
}
#umigyo #ug_players h3 {
  text-align: left;
}
#umigyo #ug_players .large {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  margin-top: 50px;
}
#umigyo #ug_players .logo-umigyo {
  width: 240px;
  display: block;
  margin: 45px auto 50px;
}
#umigyo #ug_links {
  margin-top: 0;
}
#umigyo #ug_links .bnr {
  width: 640px;
  display: block;
  margin: 0 auto;
}
#umigyo #ug_links .bnr img {
  width: 100%;
}
@media (hover: hover) {
  #umigyo #ug_links .bnr {
    transition: opacity 0.2s;
  }
  #umigyo #ug_links .bnr:hover {
    opacity: 0.75;
  }
  #umigyo #ug_links .bnr:hover img {
    opacity: 1;
  }
}
#umigyo #ug_contact.bg-blue {
  background-image: url(../img/bg_blue_contact.svg);
}
#umigyo #ug_contact .inner::after {
  content: "";
  position: absolute;
  top: -70px;
  right: 0;
  width: 340px;
  height: 284px;
  display: block;
  background-image: url(../img/contact_fish.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#umigyo #ug_contact .link {
  width: 553px;
  height: 60px;
  border-radius: 5px;
  margin: 30px auto 0;
  background-color: #fff;
  color: #2E4FA2;
  font-size: 20px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 35px;
  background-image: url(../img/icon_new_window.svg);
  background-repeat: no-repeat;
  background-position: right 30px center;
  background-size: 14px auto;
}
@media (hover: hover) {
  #umigyo #ug_contact .link {
    transition: opacity 0.2s;
  }
  #umigyo #ug_contact .link:hover {
    opacity: 0.75;
  }
}
@media screen and (min-width: 961px) {
  #umigyo #ug_contact .inner {
    padding: 80px 100px;
  }
}
@media screen and (min-width: 961px) and (max-width: 1079px) {
  #umigyo #ug_whats .ph {
    width: 57.5vw;
    margin: 55px -50px -240px auto;
  }
  #umigyo #ug_model .ph-upper {
    width: 57.5vw;
    margin: -260px auto -207px -50px;
  }
  #umigyo #ug_players .ph-upper {
    width: 57.5vw;
    margin: -260px -50px -207px auto;
  }
}
@media screen and (min-width: 640px) and (max-width: 960px) {
  #umigyo #ug_whats.bg-blue {
    background-image: url(../img/sp_bg_blue_whats.svg);
  }
  #umigyo #ug_whats .inner::after {
    top: 16.4102564103px;
    left: auto;
    right: 32.8205128205px;
    width: 205.7846153846px;
    height: 148.1025641026px;
    background-image: url(../img/sp_whats_fish.svg);
  }
  #umigyo #ug_whats {
    margin-bottom: 177.2307692308px;
  }
  #umigyo #ug_whats .ph {
    max-width: none;
    width: calc(100% + 49.2307692308px);
    margin: 49.2307692308px 0 -210.0512820513px 0;
  }
  #umigyo #ug_why > .inner {
    padding-top: 0;
    padding-inline: 0;
  }
  #umigyo #ug_why .fig {
    width: 100%;
    margin: 49.2307692308px auto 0;
  }
  #umigyo #ug_problem {
    width: calc(100% + 65.641025641px);
    margin-left: -32.8205128205px;
    margin-bottom: -32.8205128205px;
  }
  #umigyo #ug_problem .lead {
    text-align: center;
  }
  #umigyo #ug_model {
    margin-top: 218.2564102564px;
  }
  #umigyo #ug_model .inner {
    padding-top: 139.4871794872px;
  }
  #umigyo #ug_model .inner::after {
    top: 196.9230769231px;
    right: 0;
    width: 252.7179487179px;
    height: 187.0769230769px;
    background-image: url(../img/sp_model_fish.svg);
  }
  #umigyo #ug_model .ph-upper {
    max-width: none;
    width: 557.9487179487px;
    margin: -342.0689655172px 0 -29.5384615385px -49.2307692308px;
  }
  #umigyo #ug_model h2 {
    text-align: left;
  }
  #umigyo #ug_model h2::after {
    margin-left: 0;
  }
  #umigyo #ug_model h3 {
    text-align: left;
  }
  #umigyo #ug_players {
    margin-top: 218.2564102564px;
  }
  #umigyo #ug_players .inner {
    padding-top: 139.4871794872px;
  }
  #umigyo #ug_players .inner::after {
    top: 147.6923076923px;
    left: auto;
    right: 16.4102564103px;
    width: 262.5641025641px;
    height: 165.7435897436px;
    background-image: url(../img/sp_players_fish.svg);
    z-index: 0;
  }
  #umigyo #ug_players .ph-upper {
    max-width: none;
    width: 557.9487179487px;
    margin: -342.0689655172px 0 -29.5384615385px 0;
    position: relative;
    z-index: 1;
  }
  #umigyo #ug_players .large {
    font-size: 26.2564102564px;
    text-align: justify;
    margin-top: 49.2307692308px;
  }
  #umigyo #ug_players .logo-umigyo {
    width: 393.8461538462px;
    margin: 49.2307692308px auto 0;
  }
  #umigyo #ug_links .bnr {
    width: 508.7179487179px;
  }
  #umigyo #ug_contact {
    margin-top: 32.8205128205px;
  }
  #umigyo #ug_contact.bg-blue {
    background-image: url(../img/sp_bg_blue_contact.svg);
  }
  #umigyo #ug_contact .inner::after {
    top: -49.2307692308px;
    right: 0;
    width: 213.3333333333px;
    height: 188.7179487179px;
    background-image: url(../img/sp_contact_fish.svg);
  }
  #umigyo #ug_contact .link {
    width: 100%;
    height: 134.5641025641px;
    border-radius: 8.2051282051px;
    margin: 16.4102564103px auto 0;
    font-size: 26.2564102564px;
    line-height: 1.3;
    padding-right: 57.4358974359px;
    background-position: right 49.2307692308px center;
    background-size: 22.9743589744px auto;
  }
  #umigyo #ug_contact .link::after {
    display: none;
  }
}
@media screen and (max-width: 639px) {
  #umigyo #ug_whats.bg-blue {
    background-image: url(../img/sp_bg_blue_whats.svg);
  }
  #umigyo #ug_whats .inner::after {
    top: 2.5641025641vw;
    left: auto;
    right: 5.1282051282vw;
    width: 32.1538461538vw;
    height: 23.141025641vw;
    background-image: url(../img/sp_whats_fish.svg);
  }
  #umigyo #ug_whats {
    margin-bottom: 27.6923076923vw;
  }
  #umigyo #ug_whats .ph {
    max-width: none;
    width: calc(100% + 7.6923076923vw);
    margin: 7.6923076923vw 0 -32.8205128205vw 0;
  }
  #umigyo #ug_why > .inner {
    padding-top: 0;
    padding-inline: 0;
  }
  #umigyo #ug_why .fig {
    width: 100%;
    margin: 7.6923076923vw auto 0;
  }
  #umigyo #ug_problem {
    width: calc(100% + 10.2564102564vw);
    margin-left: -5.1282051282vw;
    margin-bottom: -5.1282051282vw;
  }
  #umigyo #ug_problem .lead {
    text-align: center;
  }
  #umigyo #ug_model {
    margin-top: 34.1025641026vw;
  }
  #umigyo #ug_model .inner {
    padding-top: 21.7948717949vw;
  }
  #umigyo #ug_model .inner::after {
    top: 30.7692307692vw;
    right: 0;
    width: 39.4871794872vw;
    height: 29.2307692308vw;
    background-image: url(../img/sp_model_fish.svg);
  }
  #umigyo #ug_model .ph-upper {
    max-width: none;
    width: 87.1794871795vw;
    margin: -53.4482758621vw 0 -4.6153846154vw -7.6923076923vw;
  }
  #umigyo #ug_model h2 {
    text-align: left;
  }
  #umigyo #ug_model h2::after {
    margin-left: 0;
  }
  #umigyo #ug_model h3 {
    text-align: left;
  }
  #umigyo #ug_players {
    margin-top: 34.1025641026vw;
  }
  #umigyo #ug_players .inner {
    padding-top: 21.7948717949vw;
  }
  #umigyo #ug_players .inner::after {
    top: 23.0769230769vw;
    left: auto;
    right: 2.5641025641vw;
    width: 41.0256410256vw;
    height: 25.8974358974vw;
    background-image: url(../img/sp_players_fish.svg);
    z-index: 0;
  }
  #umigyo #ug_players .ph-upper {
    max-width: none;
    width: 87.1794871795vw;
    margin: -53.4482758621vw 0 -4.6153846154vw 0;
    position: relative;
    z-index: 1;
  }
  #umigyo #ug_players .large {
    font-size: 4.1025641026vw;
    text-align: justify;
    margin-top: 7.6923076923vw;
  }
  #umigyo #ug_players .logo-umigyo {
    width: 61.5384615385vw;
    margin: 7.6923076923vw auto 0;
  }
  #umigyo #ug_links .bnr {
    width: 79.4871794872vw;
  }
  #umigyo #ug_contact {
    margin-top: 5.1282051282vw;
  }
  #umigyo #ug_contact.bg-blue {
    background-image: url(../img/sp_bg_blue_contact.svg);
  }
  #umigyo #ug_contact .inner::after {
    top: -7.6923076923vw;
    right: 0;
    width: 33.3333333333vw;
    height: 29.4871794872vw;
    background-image: url(../img/sp_contact_fish.svg);
  }
  #umigyo #ug_contact .link {
    width: 100%;
    height: 21.0256410256vw;
    border-radius: 1.2820512821vw;
    margin: 2.5641025641vw auto 0;
    font-size: 4.1025641026vw;
    line-height: 1.3;
    padding-right: 8.9743589744vw;
    background-position: right 7.6923076923vw center;
    background-size: 3.5897435897vw auto;
  }
  #umigyo #ug_contact .link::after {
    display: none;
  }
}
#umigyo .slick-track {
  display: flex;
}
#umigyo .slick-slide {
  height: auto !important;
}
#umigyo .slickSlider {
  max-width: none !important;
  width: calc(100% - 70px);
  margin: 45px auto -30px;
}
#umigyo .slickSlider li {
  position: relative;
  margin: 0 15px;
  padding: 0 0 35px;
  overflow: hidden;
}
#umigyo .slickSlider li a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
}
#umigyo .slickSlider li .tb {
  display: block;
  max-width: none;
  max-height: 187px;
  aspect-ratio: 280/187;
  object-fit: cover;
  width: 100%;
  height: 100%;
  margin-bottom: 10px;
}
#umigyo .slickSlider li .text {
  font-size: 16px;
  line-height: 1.8;
  text-align: justify;
  margin-bottom: 10px;
}
#umigyo .slickSlider li .link {
  width: 120px;
  height: 28px;
  display: flex;
  align-items: center;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  border-radius: 5px;
  padding: 0 20px;
  position: relative;
  background-image: url(../img/case_link_bg.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#umigyo .slickSlider li .link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
  background-image: url(../img/arrow_right_white.svg);
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 11px auto;
}
@media (hover: hover) {
  #umigyo .slickSlider li {
    transition: opacity 0.2s;
  }
  #umigyo .slickSlider li:hover {
    opacity: 0.75;
  }
}
#umigyo .slickSlider .slick-arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 11px auto;
  background-color: #004A96;
  cursor: pointer;
  border: none;
  outline: none;
  font-size: 0;
  position: absolute;
  top: 73.5px;
  z-index: 1;
  transform: none;
}
#umigyo .slickSlider .slick-arrow::before {
  content: "";
}
@media (hover: hover) {
  #umigyo .slickSlider .slick-arrow {
    transition: all 0.2s;
  }
  #umigyo .slickSlider .slick-arrow:hover {
    transform: scale(1.1);
  }
}
#umigyo .slickSlider .slick-next {
  right: -35px;
  background-image: url(../img/arrow_right_white.svg);
}
#umigyo .slickSlider .slick-prev {
  left: -35px;
  background-image: url(../img/arrow_left_white.svg);
}
@media screen and (min-width: 961px) and (max-width: 1080px) {
  #umigyo .slickSlider {
    margin-bottom: -15px;
  }
}
@media screen and (min-width: 640px) and (max-width: 960px) {
  #umigyo .slickSlider {
    width: 100%;
    margin: 49.2307692308px auto -49.2307692308px;
  }
  #umigyo .slickSlider li {
    margin: 0 24.6153846154px;
    padding: 0 0 49.2307692308px;
  }
  #umigyo .slickSlider li .tb {
    max-height: 306.8717948718px;
    margin-bottom: 32.8205128205px;
  }
  #umigyo .slickSlider li .text {
    font-size: 22.9743589744px;
    margin-bottom: 24.6153846154px;
  }
  #umigyo .slickSlider li .link {
    width: 196.9230769231px;
    height: 45.9487179487px;
    font-size: 19.6923076923px;
    border-radius: 8.2051282051px;
    padding: 0 32.8205128205px;
  }
  #umigyo .slickSlider li .link::before {
    background-position: right 32.8205128205px center;
    background-size: 18.0512820513px auto;
  }
  #umigyo .slickSlider .slick-arrow {
    width: 65.641025641px;
    height: 65.641025641px;
    background-size: 18.0512820513px auto;
    top: 120.6153846154px;
  }
  #umigyo .slickSlider .slick-next {
    right: -16.4102564103px;
  }
  #umigyo .slickSlider .slick-prev {
    left: -16.4102564103px;
  }
}
@media screen and (max-width: 639px) {
  #umigyo .slickSlider {
    width: 100%;
    margin: 7.6923076923vw auto -7.6923076923vw;
  }
  #umigyo .slickSlider li {
    margin: 0 3.8461538462vw;
    padding: 0 0 7.6923076923vw;
  }
  #umigyo .slickSlider li .tb {
    max-height: 47.9487179487vw;
    margin-bottom: 5.1282051282vw;
  }
  #umigyo .slickSlider li .text {
    font-size: 3.5897435897vw;
    margin-bottom: 3.8461538462vw;
  }
  #umigyo .slickSlider li .link {
    width: 30.7692307692vw;
    height: 7.1794871795vw;
    font-size: 3.0769230769vw;
    border-radius: 1.2820512821vw;
    padding: 0 5.1282051282vw;
  }
  #umigyo .slickSlider li .link::before {
    background-position: right 5.1282051282vw center;
    background-size: 2.8205128205vw auto;
  }
  #umigyo .slickSlider .slick-arrow {
    width: 10.2564102564vw;
    height: 10.2564102564vw;
    background-size: 2.8205128205vw auto;
    top: 18.8461538462vw;
  }
  #umigyo .slickSlider .slick-next {
    right: -2.5641025641vw;
  }
  #umigyo .slickSlider .slick-prev {
    left: -2.5641025641vw;
  }
}