@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
}

a,
p,
span,
ul,
h1,
h2,
h3,
h4,
h5,
h6 {
  list-style: none;
  text-decoration: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

input[type="text"] {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}

img {
  width: 100%;
  vertical-align: bottom;
}

html {
  font-size: 10px;
}

body {
  position: relative;
  overflow-x: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.text {
  font-size: 1.2rem;
  line-height: 2;
  color: #999999;
  letter-spacing: 0.8px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

@media screen and (min-width: 769px) {
  .text {
    font-size: 1.4rem;
  }
}

.text.b {
  color: #333333;
}

.cap {
  font-size: 1rem;
  color: #999999;
  line-height: 1.8;
}

.grade {
  font-weight: bold;
  background: -webkit-linear-gradient(0deg, #1d7d5f, #39b56a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.brake {
  display: inline-block;
}

.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
}

.fadein.active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.load-fade {
  opacity: 0;
  -webkit-transition: all 1s;
  transition: all 1s;
}

.load-fade.load-fade_1 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.load-fade.load-fade_2 {
  -webkit-transition-delay: 1.5s;
          transition-delay: 1.5s;
}

.load-fade.load-fade_3 {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}

.load-fade.done {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.inner {
  position: relative;
  max-width: 1400px;
  height: 100%;
  margin: 0 auto;
  width: 100%;
}

@media screen and (min-width: 481px) {
  .inner {
    width: 96%;
  }
}

@media screen and (min-width: 1024px) {
  .inner {
    width: 96%;
  }
}

.content {
  margin: 0 auto;
  position: relative;
  width: 90%;
}

@media screen and (min-width: 1024px) {
  .content {
    width: 91%;
  }
}

.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.sec_tb {
  font-size: 1.4rem;
  color: #000;
  background-color: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 4rem;
}

.sec_tb span {
  font-weight: normal;
}

.sec_tb span.en {
  margin-right: 2rem;
  font-size: 2.4rem;
  padding-bottom: 4px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0;
  color: #218460;
  background: -webkit-linear-gradient(0deg, #1d7d5f, #39b56a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media screen and (min-width: 769px) {
  .sec_tb span.en {
    margin-right: 4rem;
  }
}

@media screen and (max-width: 768px) {
  .sec_tb {
    text-align: center;
    display: block;
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .sec_tb span {
    display: block;
  }
  .sec_tb span.en {
    margin-right: 0;
  }
}

.sec_ttl {
  font-weight: bold;
  color: #333333;
  line-height: 1;
  margin-bottom: 1.6rem;
  display: block;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .sec_ttl {
    margin-bottom: 5.5rem;
  }
}

.sec_ttl span {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .sec_ttl span {
    display: inline-block;
    width: auto;
  }
}

.sec_ttl span.b {
  font-size: 1.6rem;
}

.sec_ttl span.s {
  font-size: 1.6rem;
}

@media screen and (min-width: 481px) {
  .sec_ttl span.b {
    font-size: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .sec_ttl span.b {
    font-size: 3rem;
  }
}

@media screen and (min-width: 481px) {
  .sec_ttl span.b {
    font-size: 3.6rem;
  }
  .sec_ttl span.s {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 769px) {
  .sec_ttl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    line-height: 1;
  }
  .sec_ttl span.b {
    font-size: 2.6rem;
  }
  .sec_ttl span.s {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 1025px) {
  .sec_ttl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    line-height: 1;
  }
  .sec_ttl span.b {
    font-size: 3.6rem;
  }
  .sec_ttl span.s {
    font-size: 1.8rem;
  }
}

.sp_only {
  display: block !important;
}

.pc_only {
  display: none !important;
}

@media screen and (min-width: 769px) {
  .sp_only {
    display: none !important;
  }
  .pc_only {
    display: block !important;
  }
}

#about,
#service,
#company {
  padding-top: 100px;
  margin-top: -100px;
}

#mv {
  position: relative;
  height: 400px;
}

@media screen and (min-width: 680px) {
  #mv {
    height: 620px;
  }
}

@media screen and (min-width: 769px) {
  #mv {
    margin-bottom: 13rem;
    height: 650px;
  }
}

#mv .bg {
  height: 100%;
  background-image: url(../images/mv_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

#mv .bg .inner {
  height: 84%;
  background-image: url(../images/logo_mv.png);
  background-repeat: no-repeat;
  background-size: 90%;
  background-position: center top 60px;
}

#mv .bg .inner .content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  margin-top: 0;
}

@media screen and (min-width: 900px) {
  #mv .bg .inner .content {
    margin-top: 40px;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content {
    margin-top: 20px;
  }
}

#mv .bg .inner .content .logo {
  width: 90%;
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translateY(-40%) translateX(-50%);
  -webkit-transform: translateY(-40%) translateX(-50%);
}

#mv .bg .inner .content .logo img {
  width: 95%;
}

#mv .bg .inner .content .content_mv {
  position: static;
  z-index: 30;
  margin-bottom: 40px;
  width: 100%;
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content .content_mv {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    margin-bottom: 0;
  }
}

#mv .bg .inner .content .content_mv h2 {
  color: #218560;
  background-color: #fff;
  display: inline-block;
  font-weight: bold;
  margin-bottom: 1.6rem;
  font-size: 1.2rem;
  padding: 0.3em 0.6em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (min-width: 376px) {
  #mv .bg .inner .content .content_mv h2 {
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 768px) {
  #mv .bg .inner .content .content_mv h2 {
    display: block;
    text-align: center;
    padding: 0.3em 0;
  }
}

@media screen and (min-width: 600px) {
  #mv .bg .inner .content .content_mv h2 {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 700px) {
  #mv .bg .inner .content .content_mv h2 {
    font-size: 2.3rem;
  }
}

@media screen and (min-width: 769px) {
  #mv .bg .inner .content .content_mv h2 {
    padding: 0.3em 1em;
    font-size: 2.2rem;
  }
}

@media screen and (min-width: 900px) {
  #mv .bg .inner .content .content_mv h2 {
    font-size: 2.6rem;
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 1023px) {
  #mv .bg .inner .content .content_mv h2 {
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content .content_mv h2 {
    padding: 0.3em 1em;
    font-size: 2.2rem;
  }
}

@media screen and (min-width: 1201px) {
  #mv .bg .inner .content .content_mv h2 {
    margin-bottom: 1.6rem;
  }
}

#mv .bg .inner .content .content_mv h1 {
  color: #fff;
  font-weight: bold;
  font-size: 2.8rem;
  line-height: 1.4;
  margin-bottom: 1.5rem;
  text-align: center;
  text-shadow: rgba(0, 0, 0, 0.33) 0px 0px 19px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 3px;
}

#mv .bg .inner .content .content_mv h1 span {
  text-align: left;
  display: inline-block;
}

#mv .bg .inner .content .content_mv h1 .tb_only {
  display: none;
}

@media screen and (min-width: 400px) {
  #mv .bg .inner .content .content_mv h1 {
    font-size: 2.8rem;
  }
}

@media screen and (min-width: 600px) {
  #mv .bg .inner .content .content_mv h1 {
    font-size: 4rem;
  }
}

@media screen and (min-width: 700px) {
  #mv .bg .inner .content .content_mv h1 {
    font-size: 5.3rem;
  }
}

@media screen and (min-width: 720px) {
  #mv .bg .inner .content .content_mv h1 {
    font-size: 5.6rem;
  }
}

@media screen and (min-width: 769px) {
  #mv .bg .inner .content .content_mv h1 {
    font-size: 7.6rem;
    line-height: 1.2;
    margin-bottom: 2rem;
    text-align: left;
  }
}

@media screen and (min-width: 1023px) {
  #mv .bg .inner .content .content_mv h1 {
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content .content_mv h1 {
    font-size: 7.5rem;
    line-height: 1.2;
    margin-bottom: 1.5rem;
  }
  #mv .bg .inner .content .content_mv h1 .tb_only {
    display: block;
  }
}

@media screen and (min-width: 1201px) {
  #mv .bg .inner .content .content_mv h1 .tb_only {
    display: none;
  }
}

@media(min-width: 960px) {
                
                  h1 br{
                    display: none;

                  }
                }

                @media(min-width:  1025px) {
                  #mv .bg .inner .content .content_mv h1 {
                    font-size: 8.5rem;
                  }
                }


                @media(min-width:  1030px) {

                  #mv .bg .inner .content .content_mv h1 {
                    font-size: 7.5rem;
                  }
                  h1 br{
                    display: block;

                  }
                }

                

             @media(min-width:  1300px) {

                  h1 {
                    margin: 20px 0 20px !important;
                  }
                  h1 br{
                    display: none;

                  }
                }

                 @media(min-width:  1400px) {

                  #mv .bg .inner .content .content_mv h1 {
                    font-size: 8.5rem;
                  }
                }

                

                @media(max-width: 768px) {
                
                  h1 br{
                    display: none;

                  }
                }

#mv .bg .inner .content .content_mv p {
  color: #fff;
  font-size: 1.2rem;
  margin-bottom: 3rem;
  text-align: center;
}

@media screen and (min-width: 600px) {
  #mv .bg .inner .content .content_mv p {
    font-size: 2rem;
  }
}

@media screen and (min-width: 700px) {
  #mv .bg .inner .content .content_mv p {
    font-size: 2.4rem;
  }
}

@media screen and (min-width: 720px) {
  #mv .bg .inner .content .content_mv p {
    font-size: 3rem;
  }
}

@media screen and (min-width: 769px) {
  #mv .bg .inner .content .content_mv p {
    font-size: 2.2rem;
    text-align: left;
  }
}

@media screen and (min-width: 900px) {
  #mv .bg .inner .content .content_mv p {
    font-size: 2.6rem;
  }
}

@media screen and (min-width: 1023px) {
  #mv .bg .inner .content .content_mv p {
    margin-bottom: 4rem;
    font-size: 3.4rem;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content .content_mv p {
    margin-bottom: 3rem;
    font-size: 1.6rem;
    letter-spacing: 2px;
  }
}

#mv .bg .inner .content .content_mv .creation .cuntry {
  display: block;
  margin: 0 0 3rem;
  text-align: center;
}

@media screen and (max-width: 480px) {
  #mv .bg .inner .content .content_mv .creation .cuntry {
    width: 100%;
  }
}

#mv .bg .inner .content .content_mv .creation .cuntry select {
  width: 100%;
  border-bottom: 1px solid #fff;
  color: #fff;
  padding-bottom: 6px;
  font-size: 1.8rem;
}

#mv .bg .inner .content .content_mv .creation .num {
  display: inline-block;
  width: 100%;
  margin: 0 0 3rem;
}

#mv .bg .inner .content .content_mv .creation .num input {
  width: 100%;
  color: #fff;
  border-bottom: 1px solid #fff;
  padding-bottom: 5px;
  font-size: 1.8rem;
}

#mv .bg .inner .content .content_mv .creation .num input::-webkit-input-placeholder {
  color: #fff;
}

#mv .bg .inner .content .content_mv .creation .num input:-ms-input-placeholder {
  color: #fff;
}

#mv .bg .inner .content .content_mv .creation .num input::-ms-input-placeholder {
  color: #fff;
}

#mv .bg .inner .content .content_mv .creation .num input::placeholder {
  color: #fff;
}

#mv .bg .inner .content .content_mv .creation .btn {
  display: block;
  width: 100%;
}

#mv .bg .inner .content .content_mv .creation .btn ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#mv .bg .inner .content .content_mv .creation .btn ul li {
  -webkit-transition: 0.4s;
  transition: 0.4s;
  position: relative;
  width: 28%;
}

#mv .bg .inner .content .content_mv .creation .btn ul li:hover {
  opacity: 0.5;
}

#mv .bg .inner .content .content_mv .creation .btn ul li a {
  padding: 1.5rem 1rem;
  display: block;
}

#mv .bg .inner .content .content_mv .creation .btn ul li:before {
  content: "";
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  position: absolute;
  top: 1.5rem;
  left: 2rem;
}

#mv .bg .inner .content .content_mv .creation .btn ul li span {
  color: #fff;
  font-family: din-condensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 3.5rem;
  letter-spacing: 2px;
}

#mv .bg .inner .content .content_mv .creation .btn ul li span:after {
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.4rem;
  padding-left: 2.4rem;
  letter-spacing: 0.2px;
}

#mv .bg .inner .content .content_mv .creation .btn ul li.btn_club {
  /*background-color: #df6495;*/
  /*margin-right: 2rem;*/
}
/*
#mv .bg .inner .content .content_mv .creation .btn ul li.btn_club:before {
  background-image: url(../images/icon_club.png);
}

#mv .bg .inner .content .content_mv .creation .btn ul li.btn_club span:after {
  content: "新規登録する";
}*/

/*#mv .bg .inner .content .content_mv .creation .btn ul li.btn_player {
  background-color: #556f9a;
}

#mv .bg .inner .content .content_mv .creation .btn ul li.btn_player:before {
  background-image: url(../images/icon_player.png);
}

#mv .bg .inner .content .content_mv .creation .btn ul li.btn_player span:after {
  content: "新規登録する";
}*/

@media screen and (min-width: 769px) and (max-width: 1023px) {
  #mv .bg .inner .content .content_mv .creation .btn {
    display: block;
  }
}

@media screen and (min-width: 1023px) {
  #mv .bg .inner .content .content_mv .creation .cuntry {
    margin-right: 4rem;
    margin-bottom: 5rem;
  }
  #mv .bg .inner .content .content_mv .creation .cuntry select {
    font-size: 3rem;
  }
  #mv .bg .inner .content .content_mv .creation .num {
    margin-bottom: 6rem;
    width: 45%;
  }
  #mv .bg .inner .content .content_mv .creation .num input {
    font-size: 3rem;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content .content_mv .creation .cuntry {
    margin-right: 3.5rem;
  }
  #mv .bg .inner .content .content_mv .creation .cuntry select {
    font-size: 1.8rem;
  }
  #mv .bg .inner .content .content_mv .creation .num {
    width: 220px;
    margin-right: 3.5rem;
  }
  #mv .bg .inner .content .content_mv .creation .num input {
    font-size: 1.8rem;
  }
}

#mv .bg .inner .content .photo {
  width: 280px;
  right: 0;
}

@media screen and (min-width: 769px) {
  #mv .bg .inner .content .photo {
    margin: 0;
    width: 240px;
    right: 0;
    bottom: -180px;
    max-width: none;
    position: absolute;
  }
}

@media screen and (min-width: 1024px) and (max-width: 1025px) {
  #mv .bg .inner .content .photo {
    width: 200px;
    left: 0;
    right: 0;
    margin-left: auto;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content .photo {
    width: 290px;
    right: 0;
    bottom: -140px;
    margin-left: auto;
  }
}

@media screen and (min-width: 1025px) {
  #mv .bg .inner .content {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
}

@media screen and (min-width: 769px) {
  #mv .bg .inner {
    background-position: left center;
  }
}

@media screen and (min-width: 1023px) {
  #mv .bg .inner {
    background-position: center top 40px;
  }
}

#header {
  width: 100%;
  position: absolute;
  z-index: 10;
  top: 0;
}

#header p {
  color: #fff;
  padding: 1rem;
  font-size: 1rem;
}

@media screen and (min-width: 769px) {
  #header p {
    padding: 1.7rem 0;
    font-size: 1.1rem;
  }
}

@media screen and (min-width: 1024px) {
  #header p {
    font-size: 1.2rem;
  }
}

#header .border {
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.5);
}

#header_logo {
  width: 100%;
  position: absolute;
  top: 1.2rem;
  z-index: 10;
  padding-left: 1.2rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (min-width: 769px) {
  #header_logo {
    top: 7.2rem;
  }
  #header_logo.fixed {
    position: fixed;
    top: 8px;
    z-index: 110;
    width: 127px;
    margin-left: 2rem;
  }
}

#header_logo a {
  width: 107px;
  display: block;
}

@media screen and (min-width: 769px) {
  #header_logo {
    padding: 0;
  }
  #header_logo a {
    width: 86px;
  }
}

@media screen and (min-width: 1024px) {
  #header_logo a {
    width: 107px;
  }
}

.menu_btn {
  width: 62px;
  height: 24px;
  position: fixed;
  right: 2.6rem;
  top: 1.6rem;
  z-index: 110;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.menu_btn:before {
  content: "MENU";
  color: #fff;
  font-weight: bold;
}

.menu_btn.active:before {
  content: "CLOSE";
  color: #34ab68;
}

@media screen and (min-width: 769px) {
  .menu_btn {
    display: none !important;
  }
}

.menu_btn .btn-trigger {
  position: relative;
  width: 100%;
  height: 100%;
  cursor: pointer;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  display: inline-block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.menu_btn .btn-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 0px;
  display: inline-block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.menu_btn .btn-trigger span:nth-of-type(1) {
  top: 0;
}

.menu_btn .btn-trigger span:nth-of-type(2) {
  top: 11px;
}

.menu_btn .btn-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu_btn .btn-trigger.active span {
  background-color: #34ab68;
}

.menu_btn .btn-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(16px) rotate(-28deg);
  transform: translateY(16px) rotate(-28deg);
  top: -4px;
}

.menu_btn .btn-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.menu_btn .btn-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-16px) rotate(28deg);
  transform: translateY(-16px) rotate(28deg);
  bottom: -6px;
}

.menu_btn.sc:before {
  color: #34ab68;
}

.menu_btn.sc .btn-trigger span {
  background-color: #34ab68;
}

@media screen and (min-width: 769px) {
  #navi_wrap {
    display: block;
  }
  #navi_wrap.fixed {
    background-color: #1d7d5f;
    width: 100%;
    position: fixed;
    height: 60px;
    z-index: 100;
    top: 0;
  }
  #navi_wrap.fixed #g_navi {
    top: 15px;
    z-index: 120;
  }
  #navi_wrap.fixed #sub_navi {
    /*top: 6px;*/
    height: 100%;
    display: flex;
    align-items: center;
    top: 0;
    z-index: 120;
  }
}

@media screen and (max-width: 768px) {
  #navi_wrap {
    padding: 8.7rem 2rem 4rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 100;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    -webkit-transition: -webkit-transform 250ms ease-in-out;
    transition: -webkit-transform 250ms ease-in-out;
    transition: transform 250ms ease-in-out;
    transition: transform 250ms ease-in-out, -webkit-transform 250ms ease-in-out;
    background-color: #fff;
  }
  #navi_wrap #g_navi {
    position: static;
  }
  #navi_wrap #g_navi ul {
    display: block;
  }
  #navi_wrap #g_navi ul li {
    text-align: right;
  }
  #navi_wrap #g_navi ul li a {
    color: #333333;
  }
  #navi_wrap #g_navi .sp_sns {
    padding-right: 1.7rem;
  }
  #navi_wrap #g_navi .sp_sns ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  #navi_wrap #g_navi .sp_sns ul li {
    width: 23px;
    margin: 0 0 0 4rem;
  }
  #navi_wrap #sub_navi {
    display: none;
  }
}

#navi_wrap.active {
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}

#g_navi {
  position: absolute;
  width: 100%;
  top: 7.6rem;
  z-index: 10;
  right: 0;
}

#g_navi ul {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 3rem;
}

#g_navi ul li:not(:last-child) {
  margin-bottom: 2rem;
  margin-right: 0;
}

#g_navi ul li a {
  font-size: 1.6rem;
  color: #fff;
  position: relative;
  line-height: 2.2;
  font-weight: bold;
}

#g_navi ul li a span {
  border-right: 3px solid transparent;
  border-bottom: 4px solid #fff;
  border-left: 3px solid transparent;
  position: absolute;
  margin: auto;
  width: 0px;
  bottom: 5px;
  right: -20px;
  left: auto;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  display: none;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

#g_navi ul li a.ex {
  position: relative;
}

#g_navi ul li a.ex:after {
  content: "";
  background-image: url(../images/icon_link.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 13px;
  height: 10px;
  position: absolute;
  right: 0;
  top: 0;
}

@media screen and (max-width: 768px) {
  #g_navi ul {
    width: 96%;
  }
  #g_navi ul li a {
    padding-right: 1.8rem;
  }
}

@media screen and (min-width: 769px) {
  #g_navi {
    width: 88%;
  }
  #g_navi ul {
    margin-bottom: 0;
  }
  #g_navi ul li a {
    font-size: 1rem;
  }
  #g_navi ul li a span {
    left: 0;
    right: 0;
    bottom: -15px;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    display: block;
  }
  #g_navi ul li:not(:first-child) {
    margin-right: 0;
  }
  #g_navi ul li:not(:last-child) {
    margin-right: 1.2rem;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 900px) {
  #g_navi ul li a {
    font-size: 1.2rem;
  }
  #g_navi ul li:not(:last-child) {
    margin-right: 1.4rem;
  }
}

@media screen and (min-width: 1024px) {
  #g_navi {
    width: 88%;
  }
  #g_navi ul {
    margin-bottom: 0;
  }
  #g_navi ul li a {
    font-size: 1.4rem;
    padding-bottom: 10px;
  }
  #g_navi ul li a span {
    left: 0;
    right: 0;
    bottom: -15px;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    display: block;
  }
  #g_navi ul li a:hover {
    border-bottom: 1px solid #fff;
  }
  #g_navi ul li:not(:first-child) {
    margin-right: 0;
  }
  #g_navi ul li:not(:last-child) {
    margin-right: 1.6rem;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1025px) {
  #g_navi ul li a:hover span {
    bottom: -20px;
  }
}

@media screen and (min-width: 1200px) {
  #g_navi {
    width: 88%;
  }
  #g_navi ul {
    margin-bottom: 0;
  }
  #g_navi ul li a {
    font-size: 1.4rem;
  }
  #g_navi ul li a span {
    left: 0;
    right: 0;
    bottom: -15px;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    display: block;
  }
  #g_navi ul li:not(:first-child) {
    margin-right: 0;
  }
  #g_navi ul li:not(:last-child) {
    margin-right: 4rem;
    margin-bottom: 0;
  }
}

#sub_navi {
  position: absolute;
  top: 6.8rem;
  z-index: 20;

}

#sub_navi ul li {
  width: 100%;
  /*padding: 4px 0;*/
  position: relative;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

#sub_navi ul li:hover {
  opacity: 0.5;
}

#sub_navi ul li a {
  font-weight: bold;
}

#sub_navi ul li a span {
  font-family: din-condensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  padding-left: 10px;
}

#sub_navi ul li a span:after {
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: 400;
  font-style: normal;
  display: block;
  font-size: 1rem;
}

#sub_navi ul li:before {
  content: "";
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  position: absolute;
  top: 12px;
  left: 14px;
}

/*#sub_navi ul li.btn_club {
  background-color: #df6495;
}

#sub_navi ul li.btn_club:before {
  background-image: url(../images/icon_club.png);
}
*/
/*#sub_navi ul li.btn_club span:after {
  content: "新規登録";
}*/

/*#sub_navi ul li.btn_player {
  background-color: #556f9a;
}

#sub_navi ul li.btn_player:before {
  background-image: url(../images/icon_player.png);
}*/

/*#sub_navi ul li.btn_player span:after {
  content: "新規登録";
}*/

/*#sub_navi ul li.btn_login {
  background-color: #333333;
}

#sub_navi ul li.btn_login:before {
  background-image: url(../images/icon_login.png);
}*/

/*#sub_navi ul li.btn_login span:after {
  content: "ログイン";
}*/

#sub_navi ul li:not(:last-child) {
 /* margin-bottom: 2rem;*/
}

#sub_navi ul li a {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

#sub_navi ul li a span {
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 1.4rem;
  display: block;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

@media screen and (min-width: 769px) {
  #sub_navi {
    right: 1rem;
  }
  #sub_navi ul li {
    width: 100px;
  }
  #sub_navi ul li.btn_player {
    width: 134px;
  }
  #sub_navi ul li.btn_club {
    width: 158px;
  }
  #sub_navi ul li a span {
    font-size: 1rem;
  }
  #sub_navi ul li:first-child {
    margin-bottom: 0rem;
  }
  #sub_navi ul li:not(:first-child) {
    margin-left: 1.2rem;
  }
}



@media screen and (min-width: 1024px) {
  #sub_navi {
    right: 2.5rem;
  }
  #sub_navi ul li {
    width: 100px;
  }
  #sub_navi ul li.btn_club {
    width: 158px;
  }
  #sub_navi ul li.btn_player {
    width: 134px;
  }
  #sub_navi ul li a span .en {
    font-size: 1.6rem;
  }
  #sub_navi ul li a span .ja {
    font-size: 1rem;
  }
  #sub_navi ul li:first-child {
    margin-bottom: 0rem;
  }
  #sub_navi ul li:not(:first-child) {
    margin-left: 1.2rem;
  }
}
@media screen and (min-width: 1100px) {
#sub_navi ul li {
    width: 128px;
  }
  #sub_navi ul li.btn_club {
    width: 200px;
  }
  #sub_navi ul li.btn_player {
    width: 172px;
  }
}

#about .block_1 {
  margin-bottom: 4rem;
}

@media screen and (min-width: 769px) {
  #about .block_1 {
    margin-bottom: 8.5rem;
  }
}

#about .block_1 .photo {
  width: 230px;
  margin: -17rem auto 4rem;
}

@media screen and (min-width: 320px) {
  #about .block_1 .photo {
    margin: -7rem auto 4rem;
  }
}

@media screen and (min-width: 360px) {
  #about .block_1 .photo {
    margin: -14rem auto 4rem;
    width: 200px;
  }
}

@media screen and (min-width: 376px) {
  #about .block_1 .photo {
    margin: -14rem auto 4rem;
  }
}

@media screen and (min-width: 400px) {
  #about .block_1 .photo {
    margin: -12rem auto 4rem;
  }
}

@media screen and (min-width: 600px) {
  #about .block_1 .photo {
    margin: -8rem auto 4rem;
  }
}

@media screen and (min-width: 768px) {
  #about .block_1 .photo {
    width: 280px;
    margin: -18rem auto 4rem;
  }
}

#about .block_1 .box {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#about .block_1 .box .text_box {
  width: 100%;
  margin-bottom: 4rem;
}

@media screen and (min-width: 769px) {
  #about .block_1 .box .text_box {
    width: 50%;
    margin-bottom: 0;
  }
}

#about .block_1 .box .text_box .text {
  text-align: justify;
}

#about .block_1 .box .text_box .text:not(:last-child) {
  margin-bottom: 2.6rem;
}

#about .block_1 .box .img_box {
  width: 100%;
}

@media screen and (min-width: 769px) {
  #about .block_1 .box .img_box {
    margin-top: 0.6rem;
    width: 45%;
  }
}

#about .block_2 .copy {
  text-align: center;
      margin-bottom: 3.6rem;
}

@media screen and (min-width: 769px) {
       #about .block_2 .copy {

      margin-bottom: 7rem;
}
      }

#about .block_2 .bg {
  background-color: #f3f8f7;
  padding: 3.2rem 0 4rem;
}

@media screen and (min-width: 769px) {
  #about .block_2 .bg {
    padding: 12rem 0;
  }
}

#about .block_2 .content {
  background-image: url(../images/tb_feature_2.png);
  background-repeat: no-repeat;
  background-position: calc(50% - 0px) calc(50% - 130px);
  background-size: 90%;
}

@media screen and (min-width: 769px) {
  #about .block_2 .content {
    background-position: calc(50% - 0px) calc(50% - -70px);
    background-size: 450px;
  }
}

#about .block_2 h3 {
  color: #333333;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 3.2rem;
  line-height: 1.8;
}

@media screen and (min-width: 769px) {
  #about .block_2 h3 {
    font-size: 3.6rem;
    margin-bottom: 5rem;
  }
}

#about .block_2 ul {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (min-width: 1025px) {
  #about .block_2 ul.feature_list_1 {
    margin-bottom: 8rem;
  }
  #about .block_2 ul.feature_list_1 li:nth-child(1) {
    margin-right: 5.7rem;
  }
  #about .block_2 ul.feature_list_1 li:nth-child(2) {
    margin-left: 5.7rem;
  }
  #about .block_2 ul.feature_list_2 li:nth-child(2) {
    margin: 0 10rem 0;
  }
}

@media screen and (min-width: 769px) {
  #about .block_2 ul.feature_list_1 {
    margin-bottom: 8rem;
  }
  #about .block_2 ul.feature_list_1 li:nth-child(1) {
    margin-right: 2rem;
  }
  #about .block_2 ul.feature_list_1 li:nth-child(2) {
    margin-left: 2rem;
  }
  #about .block_2 ul.feature_list_2 li:nth-child(2) {
    margin: 0 4rem 0;
  }
}

@media screen and (max-width: 768px) {
  #about .block_2 ul li {
    width: 48%;
  }
  #about .block_2 ul li:nth-child(1), #about .block_2 ul li:nth-child(2) {
    margin-bottom: 4rem;
  }
}

@media screen and (max-width: 480px) {
  #about .block_2 ul li {
    width: 100%;
  }
  #about .block_2 ul li:nth-child(1), #about .block_2 ul li:nth-child(2), #about .block_2 ul li:nth-child(3) {
    margin-bottom: 3.6rem;
  }
}

@media screen and (min-width: 1025px) {
  #about .block_2 ul li {
    width: 26%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  #about .block_2 ul li {
    width: 30%;
    margin-bottom: 0;
  }
}

#about .block_2 ul li .icon {
  width: 40%;
  margin: 0 auto;
}

@media screen and (max-width: 480px) {
  #about .block_2 ul li .icon {
    width: 35%;
  }
}

#about .block_2 ul li h4 {
  font-weight: bold;
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.4;
  margin: 2rem 0 1.6rem;
  color: #333333;
}

@media screen and (max-width: 480px) {
  #about .block_2 ul li h4 {
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 769px) {
  #about .block_2 ul li h4 {
    font-size: 1.6rem;
    margin: 2rem 0 1.2rem;
  }
}

#about .block_3 {
  padding: 7rem 0 8rem;
}

@media screen and (min-width: 1024px) {
  #about .block_3 {
    padding: 12rem 0 17rem;
  }
}

#about .block_3 h3 {
  color: #333333;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 3rem;
  line-height: 1.8;
}

@media screen and (min-width: 769px) {
  #about .block_3 h3 {
    font-size: 3.6rem;
    margin-bottom: 5rem;
  }
}

#about .block_3 .text{
  text-align: center;
  margin-bottom: 3.6rem;
}

@media screen and (min-width: 769px) {
  #about .block_3 .text{
    margin-bottom: 7rem;
  }
}

#about .block_3 .box {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#about .block_3 .box .graph {
  width: 100%;
  margin-bottom: 3.8rem;
}

@media screen and (min-width: 769px) {
  #about .block_3 .box .graph {
    width: 52%;
    margin-bottom: 0;
  }
}

#about .block_3 .box .graph .cap {
  padding-top: 1.5rem;
}

#about .block_3 .box .emblem {
  width: 100%;
}

@media screen and (max-width: 768px) {
  #about .block_3 .box .emblem .pc {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  #about .block_3 .box .emblem {
    width: 43%;
  }
  #about .block_3 .box .emblem .sp {
    display: none;
  }
}

#about .block_3 .box .emblem ul.sp li {
  padding: 0 0.4rem;
}

@media screen and (min-width: 769px) {
  #about .block_3 .box .emblem ul.pc li {
    width: calc((100% - 100px) / 6);
  }
  #about .block_3 .box .emblem ul.pc li:not(:nth-child(6n)) {
    margin-right: 20px;
  }
  #about .block_3 .box .emblem ul.pc li:not(:nth-last-child(-n + 6)) {
    margin-bottom: 4rem;
  }
}

@media screen and (min-width: 481px) and (max-width: 768px) {
  #about .block_3 .box .emblem ul.pc li {
    width: calc((100% - 13.5rem) / 5);
  }
  #about .block_3 .box .emblem ul.pc li:not(:nth-child(5n)) {
    margin-right: 3rem;
  }
  #about .block_3 .box .emblem ul.pc li:not(:nth-last-child(-n + 5)) {
    margin-bottom: 3rem;
  }
}

@media screen and (min-width: 320px) and (max-width: 480px) {
  #about .block_3 .box .emblem ul.pc li {
    width: calc((100% - 4rem) / 3);
  }
  #about .block_3 .box .emblem ul.pc li:not(:nth-child(3n)) {
    margin-right: 2rem;
  }
  #about .block_3 .box .emblem ul.pc li:not(:nth-last-child(-n + 3)) {
    margin-bottom: 2rem;
  }
}

#service .heading {
  text-align: center;
}

#service .heading h3 {
  font-size: 1.6rem;
  margin-bottom: 2.4rem;
  line-height: 1.8;
}

@media screen and (min-width: 769px) {
  #service .heading h3 {
    font-size: 3.6rem;
    margin-bottom: 3.5rem;
  }
}

#service .bg_service {
  background-image: url(../images/bg_service_2.jpg);
  background-size: cover;
  padding: 3.6rem 0 49rem;
  position: relative;
  background-position: center;
}

#service .bg_service .tb_en {
  width: 80%;
  position: absolute;
  top: 32%;
  left: 50%;
  transform: translateY(-55%) translateX(-50%);
  -webkit-transform: translateY(-55%) translateX(-50%);
}

@media screen and (min-width: 769px) {
  #service .bg_service .tb_en {
    width: 430px;
    top: 48%;
  }
}

@media screen and (min-width: 481px) {
  #service .bg_service .tb_en {
    width: 40%;
  }
}

@media screen and (min-width: 769px) {
  #service .bg_service {
    padding: 12rem 0 40rem;
  }
}

#service .sec_ttl {
  margin-bottom: 2.8rem;
}

#service .sec_ttl span.s {
  padding-left: 1em;
}

@media screen and (max-width: 768px) {
  #service .sec_ttl {
    text-align: center;
  }
  #service .sec_ttl span {
    display: block;
  }
  #service .sec_ttl span.b {
    font-size: 1.6rem;
    padding-bottom: 2px;
  }
  #service .sec_ttl span.s {
    font-size: 1.2rem;
    padding-left: 0;
  }
}

#service .row {
  position: relative;
  margin-bottom: 3.5rem;
}

@media screen and (min-width: 769px) {
  #service .row {
    margin-bottom: 14rem;
  }
}

#service .row .bg {
  background-image: url(../images/bg_service.jpg);
  background-size: cover;
  position: absolute;
  width: 100%;
}

@media screen and (max-width: 768px) {
  #service .row .bg {
    height: 630px;
    top: -8rem;
  }
}

@media screen and (min-width: 769px) {
  #service .row .bg {
    height: 790px;
    top: -29rem;
  }
}

#service .row .bg.bg_consulting .tb_en {
  width: 90%;
  top: 35rem;
  position: absolute;
  right: 0;
  top: 34rem;
}

@media screen and (max-width: 768px) {
  #service .row .bg.bg_consulting .tb_en {
    left: 0;
    right: 0;
    margin: auto;
  }
}

@media screen and (min-width: 481px) {
  #service .row .bg.bg_consulting .tb_en {
    width: 60%;
    top: 28rem;
  }
}

@media screen and (min-width: 769px) {
  #service .row .bg.bg_consulting .tb_en {
    width: 640px;
    top: 34rem;
  }
}

@media screen and (max-width: 480px) {
  #service .row .bg {
    height: 820px;
    top: -3.6rem;
    background-position: left 50% top;
  }
}

#service .service_list {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 10;
}

@media screen and (min-width: 769px) {
  #service .service_list {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

#service .service_list .txt_block {
  width: 100%;
  margin-bottom: 4rem;
}

#service .service_list .txt_block .box .b {
  color: #333333 !important;
}

#service .service_list .txt_block .box .b * {
  color: #333333 !important;
}

#service .service_list .txt_block .box:not(:last-child) {
  margin-bottom: 2rem;
}

@media screen and (min-width: 769px) {
  #service .service_list .txt_block .box:not(:last-child) {
    margin-bottom: 6rem;
  }
}

#service .service_list .txt_block .box h5 {
  font-size: 1.6rem;
  margin-bottom: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #39b56a;
}

@media screen and (min-width: 769px) {
  #service .service_list .txt_block .box h5 {
    margin-bottom: 2rem;
  }
}

#service .service_list .txt_block .box h5 span {
  font-weight: bold;
}

#service .service_list .txt_block .box h5 span.num {
  color: #39b56a;
  font-weight: normal;
  margin-right: 1rem;
}

@media screen and (min-width: 769px) {
  #service .service_list .txt_block .box h5 span.num {
    margin-right: 2.4rem;
  }
}

#service .service_list .txt_block .box .text.mb {
  margin-bottom: 3rem;
}

#service .service_list .txt_block .box ul {
  margin: 0.5rem 0 0.5rem;
}

#service .service_list .txt_block .box ul.mb {
  margin-bottom: 2.2rem;
}

#service .service_list .txt_block .box ul li {
  font-size: 1.2rem;
  line-height: 2;
  color: #999999;
  letter-spacing: 0.8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0.2rem 0;
}

@media screen and (min-width: 769px) {
  #service .service_list .txt_block .box ul li {
    font-size: 1.4rem;
  }
}

#service .service_list .txt_block .box ul.check li > span:before {
  content: "";
  margin-right: 6px;
  background-image: url(../images/icon_check.png);
  width: 14px;
  height: 18px;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: text-bottom;
}

#service .service_list .txt_block .box ul.arrow li:before {
  display: none;
}

@media screen and (min-width: 769px) {
  #service .service_list .txt_block .box ul.arrow li:before {
    width: 14px;
    height: 13px;
  }
}

#service .service_list .txt_block .box ul.arrow li > span::before {
  content: "";
  margin-right: 6px;
  background-image: url(../images/icon_arrow.png);
  width: 20px;
  height: 14px;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top 2px center;
}

@media screen and (max-width: 768px) {
  #service .service_list .txt_block .box ul.arrow li > span {
    display: inline-block;
    width: 100%;
  }
  #service .service_list .txt_block .box ul.arrow li > span::before {
    background-position: top 4px center;
  }
}

#service .service_list .img_block .sld {
  position: relative;
}

@media screen and (min-width: 320px) {
  #service .service_list .img_block .sld {
    width: 200px;
  }
}

@media screen and (min-width: 414px) {
  #service .service_list .img_block .sld {
    width: 250px;
  }
}

@media screen and (min-width: 480px) {
  #service .service_list .img_block .sld {
    width: 300px;
  }
}

@media screen and (min-width: 769px) {
  #service .service_list .img_block .sld {
    width: 170px;
  }
}

@media screen and (min-width: 1000px) {
  #service .service_list .img_block .sld {
    width: 220px;
  }
}

@media screen and (min-width: 1200px) {
  #service .service_list .img_block .sld {
    width: 300px;
  }
}

#service .service_list .img_block .sld .front {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
}

#service .service_list .img_block .sld .slick-dots {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  bottom: auto;
  right: auto;
  width: 0px;
  top: 40%;
}

#service .service_list .img_block .sld .slick-dots li {
  margin: 5px;
}

#service .service_list .img_block .sld .slick-dots li button {
  padding: 0;
}

#service .service_list .img_block .sld .slick-dots li button:before {
  font-size: 50px;
  line-height: 10px;
}

#service .service_list .img_block .sld .slick-dots li button:hover:before {
  opacity: 1;
  color: #35ad69 !important;
}

#service .service_list .img_block .sld .slick-dots li.slick-active button:before {
  color: #35ad69 !important;
}

@media screen and (min-width: 769px) {
  #service .service_list .txt_block {
    width: 63%;
    margin-bottom: 0;
  }
  #service .service_list .img_block {
    width: 32%;
  }
}

#service .row_1 {
  margin-top: -31rem;
}

@media screen and (max-width: 768px) {
  #service .row_1 {
    margin-top: -45rem;
  }
  #service .row_1 .sec_tb {
    margin-bottom: 2.4rem;
  }
}

#service .row_1 .img_block .sld {
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  #service .row_1 .img_block .sld {
    margin-left: auto;
    margin-right: 0;
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
  }
}

#service .row_1 .img_block .sld .slick-dots {
  left: -40px;
}

#service .row_1 .tb_en {
  position: absolute;
  width: 80%;
  top: 77rem;
}

@media screen and (max-width: 768px) {
  #service .row_1 .tb_en {
    left: 0;
    right: 0;
    margin: auto;
  }
}

@media screen and (min-width: 376px) {
  #service .row_1 .tb_en {
    top: 65rem;
  }
}

@media screen and (min-width: 481px) {
  #service .row_1 .tb_en {
    width: 50%;
    top: 57rem;
  }
}

@media screen and (min-width: 769px) {
  #service .row_1 .tb_en {
    width: 500px;
    top: 50rem;
  }
}

@media screen and (max-width: 480px) {
  #service .row_2 {
    margin-bottom: 0rem;
  }
}

@media screen and (max-width: 768px) {
  #service .row_2 .service_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

#service .row_2 .img_block .sld {
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  #service .row_2 .img_block .sld {
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
    margin-right: auto;
    margin-left: 0;
    margin-top: 6rem;
  }
}

#service .row_2 .img_block .sld .slick-dots {
  right: -20px;
}

#overview .bg {
  background-color: #f5f5f5;
  padding: 4rem 0 8rem;
  position: relative;
}

#overview .bg .tb_en {
  width: 60%;
  position: absolute;
  right: 0;
  top: 12rem;
}

@media screen and (min-width: 1024px) {
  #overview .bg {
    padding: 12rem 0;
  }
}

@media screen and (min-width: 769px) {
  #overview .bg .tb_en {
    width: 550px;
    top: 12rem;
  }
}

@media screen and (max-width: 480px) {
  #overview .bg .tb_en {
    width: 90%;
    top: 14rem;
  }
}

#overview .right a {
  color: #999999;
}

@media screen and (min-width: 769px) {
  #overview .right {
    padding-top: 8rem;
  }
}

#overview .sec_ttl {
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  #overview .sec_ttl {
    line-height: 1.6;
  }
}

@media screen and (max-width: 768px) {
  #overview .sec_ttl {
    text-align: center;
  }
  #overview .sec_ttl br {
    display: none;
  }
}

#overview .flex {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 768px) {
  #overview .flex {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  #overview ul:last-child {
    margin-left: 5rem;
  }
}

@media screen and (max-width: 768px) {
  #overview ul:last-child {
    margin-top: 1.5rem;
  }
}

#overview ul li {
  font-size: 1.4rem;
  color: #999999;
}

#overview ul li:not(:last-child) {
  margin-bottom: 2.5rem;
}

@media screen and (max-width: 768px) {
  #overview ul li:not(:last-child) {
    margin-bottom: 1.5rem;
  }
}

#overview ul li span {
  display: inline-block;
  vertical-align: top;
}

#overview ul li span.item {
  width: 80px;
}

.screen_view {
  margin-top: 6rem;
  position: relative;
}

.screen_view .img_block {
  width: 240px;
  margin: 0 auto;
}

.screen_view .img_block .sld {
  position: relative;
}

.screen_view .img_block .sld .front {
  position: absolute;
}

.screen_view .guide {
  pointer-events: none;
  width: 90%;
  position: absolute;
  top: 16rem;
  left: 0;
  right: 0;
  margin: 0 auto;
}

#contact {
  padding: 6rem 0;
}

#contact h3 {
  font-size: 2.4rem;
  text-align: center;
  margin-bottom: 2rem;
}

#contact .foot_btn {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#contact .to_link {
  position: relative;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  width: 220px;
  margin: 0 1rem;
}

#contact .to_link:hover {
  opacity: 0.6;
}

#contact .to_link a {
  position: relative;
  /*padding: 1.5rem 2rem;*/
  display: block;
}

#contact .to_link:before {
  content: "";
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  position: absolute;
  top: 1.5rem;
  left: 2rem;
}

/*#contact .to_link span {
  text-indent: 3.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 2.4rem;
  font-family: din-condensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 2px;
}

#contact .to_link span:after {
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: 400;
  font-style: normal;
  display: block;
  font-size: 1.4rem;
}

#contact .to_link.btn_club {
  background-color: #df6495;
  margin-right: 1rem;
}

#contact .to_link.btn_club:before {
  background-image: url(../images/icon_club.png);
}

#contact .to_link.btn_club span:after {
  content: "新規登録";
}

#contact .to_link.btn_player {
  background-color: #556f9a;
  margin-left: 1rem;
}

#contact .to_link.btn_player:before {
  background-image: url(../images/icon_player.png);
}

#contact .to_link.btn_player span:after {
  content: "新規登録";
}*/

@media screen and (min-width: 320px) {
  #contact h3 {
    font-size: 1.8rem;
    margin-bottom: 4rem;
  }
}

@media screen and (min-width: 481px) {
  #contact {
    padding: 8rem 0;
  }
  #contact h3 {
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 769px) {
  #contact h3 {
    margin-bottom: 7.5rem;
    font-size: 3.6rem;
  }
}

@media screen and (min-width: 1025px) {
  #contact {
    padding: 12rem 0;
  }
  #contact .flex {
    width: 60%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 768px) {
  #contact .foot_btn {
    display: none;
  }
}

#footer .inner {
  width: 90%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#footer .foot_navi ul {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

#footer .sub {
  margin-bottom: 12px;
  font-weight: normal !important;
}

#footer .foot_navi ul.pg_navi {
  text-align: center;
}

#footer .foot_navi ul.pg_navi li:not(:last-child) {
  margin-right: 2.5rem;
}

#footer .foot_navi ul.pg_navi li:first-child {
  width: 100%;
  margin: 0 auto 1rem;
  width: 107px;
}

#footer .foot_navi ul.pg_navi li a {
  font-size: 1.2rem;
  color: #333333;
}

@media screen and (min-width: 1024px) {
  #footer .foot_navi ul.pg_navi li a:hover {
    text-decoration: underline;
  }
}

@media screen and (max-width: 768px) {
  #footer .foot_navi ul.sns {
    display: none;
  }
}

#footer .foot_navi ul.sns li {
  width: 23px;
  height: 26px;
}

#footer .foot_navi ul.sns li:not(:last-child) {
  margin-right: 2rem;
}

@media screen and (min-width: 769px) {
  #footer .foot_navi {
    border-top: 1px solid #333333;
    border-bottom: 1px solid #333333;
    padding: 2rem 0;
  }
}

@media screen and (max-width: 768px) {
  #footer .foot_navi ul.pg_navi {
    width: 100%;
  }
  #footer .foot_navi ul.pg_navi li:first-child {
    width: 160px;
    margin: 0 auto 0 !important;
  }
}

#footer .copyright {
  padding: 2rem 0 2rem;
  text-align: center;
}

#footer .copyright p {
  font-size: 1rem;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  #footer .copyright {
    padding: 2rem 0 1rem;
  }
}

@media screen and (max-width: 768px) {
  #footer .inner {
    width: 90%;
  }
  #footer .foot_navi ul.pg_navi li:not(:first-child) {
    display: none;
  }
}

@media screen and (min-width: 481px) {
  #footer .foot_navi ul.pg_navi li:not(:last-child) {
    margin-right: 2.5rem;
  }
  #footer .copyright {
    padding: 4rem 0 3rem;
  }
}

@media screen and (min-width: 769px) {
  #footer .foot_navi {
    padding: 4rem 0;
  }
  #footer .foot_navi ul.pg_navi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #footer .foot_navi ul.pg_navi li:not(:last-child) {
    margin-right: 2rem;
  }
  #footer .foot_navi ul.pg_navi li:first-child {
    width: 107px;
    margin-right: 2rem;
    margin-top: -0.4rem;
  }
  #footer .foot_navi ul.sns li:not(:last-child) {
    margin-right: 2rem;
  }
  #footer .copyright {
    padding: 9rem 0 2.7rem;
  }
}

@media screen and (min-width: 1025px) {
  #footer .inner {
    width: 96%;
  }
  #footer .foot_navi ul.pg_navi li:not(:last-child) {
    margin-right: 2.5rem;
  }
  #footer .foot_navi ul.pg_navi li:first-child {
    width: 100px;
    margin-right: 5rem;
    margin-top: -0.4rem;
  }
  #footer .foot_navi ul.sns li {
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  #footer .foot_navi ul.sns li:not(:last-child) {
    margin-right: 3rem;
  }
  #footer .foot_navi ul.sns li:hover {
    opacity: 0.6;
  }
  #footer .copyright {
    padding: 3.5rem 0 2.5rem;
  }
}

@media screen and (max-width: 768px) {
  #footer {
    padding-bottom: 6rem;
  }
}

.pg_top {
  width: 60px;
  height: 60px;
  background-color: #1d7d5f;
  position: fixed;
  bottom: 8rem;
  left: 1.2rem;
  z-index: 100;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

@media screen and (min-width: 769px) {
  .pg_top {
    left: auto;
    right: 1rem;
    bottom: 1rem;
  }
  .pg_top:hover {
    opacity: 0.6;
  }
}

.pg_top a {
  position: relative;
  display: block;
  margin: auto;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  top: 35px;
}

.pg_top a:before, .pg_top a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.pg_top a:before {
  width: 20px;
  height: 20px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.fix_navi {
  position: fixed;
  width: 100%;
  bottom: 0;
  z-index: 99;
}

@media screen and (min-width: 769px) {
  .fix_navi {
    display: none !important;
  }
}

.fix_navi ul li {
  width: calc(100% / 3);
  position: relative;
  /*padding: 1.2rem 0;*/
  height: 60px;
}
@media screen and (min-width: 600px) {
  .fix_navi ul li {
        height: 80px;
    }
 }

.fix_navi ul li a {
  text-align: center;
  width: 100%;
  height: 100%;
  display: block;
}

.fix_navi ul li a span {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.fix_navi ul li a span img {
      width: 90%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
@media screen and (min-width: 600px) {
  .fix_navi ul li a span img {
    width: 70%;
  }
}
.fix_navi ul li.btn_club {
  background-color: #df6495;
}
.fix_navi ul li.btn_player {
  background-color: #556f9a;
}
.fix_navi ul li.btn_login {
  background-color: #333333;
}

/*.fix_navi ul li:first-child span {
  text-indent: 3.2rem;
}

.fix_navi ul li span {
  color: #fff;
  font-size: 2.4rem;
  color: #fff;
  font-family: din-condensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.4rem;
  display: block;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 2px;
  text-align: center;
  line-height: 1.1;
}

.fix_navi ul li span:after {
  display: block;
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.4rem;
  font-size: 1rem;
  letter-spacing: 0.2px;
}

.fix_navi ul li span {
  text-indent: 3.4rem;
  display: inline-block;
  margin-left: -2rem;
}

.fix_navi ul li span:before {
  content: "";
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  position: absolute;
  top: 12px;
}

.fix_navi ul li.btn_club {
  background-color: #df6495;
}

.fix_navi ul li.btn_club span:before {
  background-image: url(../images/icon_club.png);
}

.fix_navi ul li.btn_club span:after {
  content: "新規登録";
}

.fix_navi ul li.btn_player {
  background-color: #556f9a;
}

.fix_navi ul li.btn_player span:before {
  background-image: url(../images/icon_player.png);
}

.fix_navi ul li.btn_player span:after {
  content: "新規登録";
}

.fix_navi ul li.btn_login {
  background-color: #333333;
}

.fix_navi ul li.btn_login span:before {
  background-image: url(../images/icon_login.png);
}

.fix_navi ul li.btn_login span:after {
  content: "ログイン";
}

@media screen and (max-width: 375px) {
  .fix_navi ul li:first-child span {
    text-indent: 2.6rem;
  }
  .fix_navi ul li span {
    text-indent: 2.7rem;
    margin-left: -1.2rem;
  }
  .fix_navi ul li span:before {
    width: 20px;
    height: 20px;
  }
}*/
/*# sourceMappingURL=teaser.css.map */