/* -----------------------------------
追加CSS
--------------------------------- */

#img2{
	color:#002e6d;
	font-weight:600
}

.seresjapanimg{
	padding-top:20px;
}



#servicep{
	font-size:2rem;
}
#company .access_area2 {
    padding: 40px 0 0; }
    #company .access_area2 h3 {
      color:black;
		font-size: 3rem;
      padding-bottom:30px;
padding-top:30px;}
      #company .access_area2 h3 span {
        font-size: 1.4rem; }
  #company .address_area2 {
    overflow: hidden; }
  #company .address {
    float: left;
    padding: 38px 0 0; }
  #company .link_map {
    margin: 0 0 40px;
    float: right; }
    #company .link_map a {
      font-size: 1.5rem;
      max-width: 230px; }
      #company .link_map a span {
        background: url(../images/shared/icon_window.png) no-repeat right 0 top 6px/19px;
        padding: 0 26px 0 0; }
  #company .company_list {
    overflow: hidden; }
    #company .company_list li {
      float: left; }
    #company .company_list li:not(:last-child) {
      padding: 0 40px 0 0; }
    #company .company_list img {
      width: 168px; }

#company .access_area1 {
    padding: 0px 0 0; }
    #company .access_area1 h3 {
      color:black;
		font-size: 3rem;
      padding-bottom:30px; }
      #company .access_area1 h3 span {
        font-size: 1.4rem; }
  #company .address_area1 {
    overflow: hidden; }
  #company .address {
    float: left;
    padding: 38px 0 0; }
  #company .link_map {
    margin: 0 0 40px;
    float: right; }
    #company .link_map a {
      font-size: 1.5rem;
      max-width: 230px; }
      #company .link_map a span {
        background: url(../images/shared/icon_window.png) no-repeat right 0 top 6px/19px;
        padding: 0 26px 0 0; }
  #company .company_list {
    overflow: hidden; }
    #company .company_list li {
      float: left; }
    #company .company_list li:not(:last-child) {
      padding: 0 40px 0 0; }
    #company .company_list img {
      width: 168px; }
/* -----------------------------------
  CONTENTS
--------------------------------- */
#contents {
  min-height: 600px;
  margin: 105px 0 0;
  padding: 80px 0;
  flex:1;}
  #contents h2 {
     /*color:#fff;*/
     color:#000000;
    font-size: 6rem;
    font-weight: 900;
    letter-spacing: 5px;
    margin: 0 0 60px;
    padding: 0 0 120px;
    position: relative;
    text-align: center; }
    #contents h2 span {
      display: block;
      font-size: 3.4rem;
      font-weight: normal;
      letter-spacing: 2px; }
    #contents h2:after {
      /* background: #FB0707; */
      /*background: #ffa500;*/
      background: #3cb371;
	
      content: "";
      height: 80px;
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      width: 2px; }
  #contents h3 {
 	  /*  	  color: #FB0707;
	   */
/* 	  color: #FB0707; 
     background: -webkit-linear-gradient(0deg, #ff0000, #f0ff9d);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;  */
    font-size: 5rem;
    font-weight: 900;
    padding: 0 0 50px;
    text-align: center; }
    #contents h3.default_h3 {
      color: #000;
      font-size: 3.5rem;
      padding: 0 0 30px;
      text-align: left; }
    #contents h3.font_black {
      color: #000; }
    #contents h3.role {
      font-weight: normal; }
  #contents h4 {
    color: #000;
    font-size: 4rem;
    font-weight: 900;
    padding: 0 0 50px;
    text-align: center; }

.read_border_bottom {
  border-bottom: 1px solid #282828;
  margin: 0 0 40px;
  padding: 0 0 40px; }

.list_num {
  padding-left: 2.5em;
  text-indent: -2.8em; }
  .list_num li:not(:last-child) {
    margin: 0 0 10px; }

.indent li:not(:last-child) {
  margin: 0 0 10px; }

.border_top {
  border-top: 1px solid #7a7a7a; }

dl.each {
  border-bottom: 1px solid #7a7a7a;
  overflow: hidden;
  padding: 40px 0; }
  dl.each dt {
    float: left;
    width: 140px;
    /*color:#fff; */
    color:#000;  
}
  dl.each dd {
    float: left;
    max-width: 700px;
    width: 76%;
　　　　　　/*color:#fff;*/
　　　　　　color:#000;
}
    dl.each dd span {
      display: block; }

.pager {
  height: 82px;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
  width: 700px; }
  .pager .btn_prev {
    float: left;
    margin: 0 45px 0 0;
    width: 200px!important; }
    .pager .btn_prev a {
      /*background: url(../images/shared/icon_prev.png) no-repeat left 20px center/14px 16px #89cd38; */
      background: url(../images/shared/icon_prev.png) no-repeat left 20px center/14px 16px #495057; 
    }
  .pager .btn_list {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: 200px; }
  .pager .btn_next {
    float: right;
    width: 200px!important; }
    .pager .btn_next a {
      /*background: url(../images/shared/icon_next.png) no-repeat right 20px center/14px 16px #89cd38; */
      background: url(../images/shared/icon_next.png) no-repeat right 20px center/14px 16px #495057;
    }
  .pager .page-numbers {
    background: #000;
    color: #fff;
    display: inline-block;
    margin: 0 0 0 5px;
    padding: 10px 18px;
    vertical-align: top;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    .pager .page-numbers:hover, .pager .page-numbers.current {
      /*background: #f49c00; */
      background: #3cb371;
    }

	.inner .btn {
    width: 50%;
    /*margin-top: 90px;*/
    margin-left: auto;
    margin-right: auto;
    font-size:1em;}

/* -----------------------------------
  ABOUT
----------------------------------- */
#about .history_img {
  overflow-x: scroll;
  margin: 100px 0 0; }
  #about .history_img img {
    background: #282828;
    max-width: inherit;
    padding: 40px 0 60px; }
#about .jspTrack,
#about .jspHorizontalBar {
  background: #d0d0c5; }
#about .jspDrag {
  background: #89cd38;
  top: 3px; }
#about .jspHorizontalBar .jspTrack, #about .jspHorizontalBar .jspDrag {
  height: 10px; }
.list_num li {
	color:#fff;
    color:black;
}

/* -----------------------------------
  GAME
----------------------------------- */
#game #contents {
  padding: 80px 0 0; }
#game .service_area {
  background: url(../images/game/bg_service.jpg) no-repeat center 0/cover;
  margin: 100px 0 0;
  padding: 30px 0 70px;
  text-align: center; }

/* -----------------------------------
  NEWS
----------------------------------- */
#news .topics {
  /*border-bottom: 1px solid #07aafb;*/
  /*border-bottom: 1px solid #f49c00;*/
  border-bottom: 1px solid #3cb371;
  margin: 0 0 20px;
  padding: 0 0 20px; }
  #news .topics a {
    /*color: #fff;*/
    color: #000000;
   }
    #news .topics a:hover {
      text-decoration: underline; }
#news article {
  padding: 0 0 20px; }
  #news article h3 {
    text-align: left; }
  #news article > p {
    padding: 0 0 20px; }

/* -----------------------------------
  CONTACT
----------------------------------- */
#contact .question dt {
  padding: 5px 0; }
  #contact .question dt:before {
    content: "";
    /*border: 2px solid #ffa500;*/
    border: 2px solid #3cb371;
    border-radius: 2px;
    margin: 0 20px 0 0; }
#contact .question dd {
  padding: 20px 0 40px; }
  #contact .question dd input, #contact .question dd textarea {
    box-sizing: border-box;
    padding: 10px;
    width: 100%; }
#contact .btn_list li.btn_back, #contact .btn_list li.btn_send {
  display: none; }
#contact .btn_list li:not(:last-child) {
  margin: 0 0 30px; }
#contact .btn_list {
  padding: 40px 0 0; }
#contact #agree,
#contact #agree-1 {
  padding: 10px;
  appearance: checkbox;
  -webkit-appearance: checkbox;
  -moz-appearance: nocheckboxne; }
#contact .comp_text {
  text-align: center; }
#contact .mw_wp_form_confirm .btn_list .btn_confirm {
  display: none; }
#contact .mw_wp_form_confirm .btn_list .btn_back,
#contact .mw_wp_form_confirm .btn_list .btn_send {
  display: inline-block; }
#contact .form-complete {
  min-height: 600px; }

/* -----------------------------------
  RECRUIT
----------------------------------- */
#recruit .recruit_list {
  background: #fff;
  clear: both;
  margin: 0 0 20px;
  overflow: hidden;
  padding: 10px; }
  #recruit .recruit_list dt {
    box-sizing: border-box;
    color: #75c714;
    padding: 10px 0 20px; }

/* -----------------------------------
  COMPANY
----------------------------------- */
#company .access_area {
  padding: 20px 0 0; }
  #company .access_area h3 {
    color: #000;
    font-size: 6rem;
    font-weight: 900;
    letter-spacing: 5px;
    padding: 50px 0; }
    #company .access_area h3 span {
      display: block;
      font-size: 3.4rem;
      font-weight: normal;
      letter-spacing: 2px; }
#company #map {
  height: 300px;
  margin: 0 auto;
  max-width: 800px; }
#company .link_map {
  margin: 20px 0 40px; }
  #company .link_map span {
    background: url(../images/shared/icon_window.png) no-repeat right 0 top 6px/38px;
    padding: 0 50px 0 0; }
#company .company_list li:not(:last-child) {
  padding: 0 0 20px; }
#company .company_list img {
  width: 70%; }

/* -----------------------------------
  SITEMAP
----------------------------------- */
#sitemap .list_page {
  margin: 0 0 40px; }
  #sitemap .list_page li {
    display: inline-block;
    width: calc(97% / 3); }
  #sitemap .list_page a {
    border: 1px solid black;
    display: inline-block;
    min-width: 100%;
    margin: 0 10px 20px 0;
    padding: 20px;
    box-sizing: border-box;
    border-radius:5px;
    }
  #sitemap .list_page .privacy {
    width: inherit; }
/* #sitemap a {
	color:#fff;
} */
@media print, screen and (max-width: 751px) {
  #sitemap .list_page li {
    width: calc(97% / 1); 
  }
}


#business {
  background-color: white;
  color: black;
  /*background-color: black;
  color: white;*/
}

#business .inner p {
  color: black;
  /*color: white;*/
}

#business .inner dl.each dt {
  color: black;
  /*color: white;*/
  width: 160px;
  margin-right: 20px;
}

#business .inner dl.each dd {
  width: 70%;
}


@media print, screen and (min-width: 751px) {
  /* -----------------------------------
    CONTENTS
  ----------------------------------- */
  #contents {
    margin: 80px 0 0;
    padding: 40px 0 140px; }
    #contents h2 {
      font-size: 3rem;
      margin: 0 0 40px;
      padding: 0 0 80px; }
      #contents h2 span {
        font-size: 1.4rem; }
      #contents h2:after {
        height: 50px; }
    #contents h3 {
      font-size: 4rem;
      padding: 0 0 30px; }
      #contents h3.default_h3 {
        font-size: 2rem;
        padding: 0 0 10px; }
    #contents h4 {
		color: #002e6d;
		color:#FFA500;
		color:black;
      font-size: 3rem;
      padding: 0 0 30px; }

  .read_border_bottom {
    margin: 0 0 30px;
    padding: 0 0 30px; }

  .list_num {
    text-indent: -3em; }

  dl.each {
    box-sizing: border-box;
    padding: 40px 20px 40px 50px; }
    dl.each dd span:not(:last-child) {
      margin: 0 0 10px; }

  .pager {
    height: 72px;
    width: 800px; }

  /* -----------------------------------
    PC ABOUT
  ----------------------------------- */
  #about .history_img {
    margin: 70px 0 0; }
  #about p.center {
    font-size: 2rem; }

  /* -----------------------------------
    PC GAME
  ----------------------------------- */
  #game #contents {
    padding: 40px 0 0; }
  #game .service_area {
    margin: 60px 0 0;
    padding: 60px 0 150px; }

  /* -----------------------------------
    PC NEWS
  ----------------------------------- */
  #news .topics {
  	/*color:#fff;*/
    color:#000000;
    box-sizing: border-box;
    max-width: 800px;
    margin: 0 auto 20px;
    padding: 20px 50px;
    overflow: hidden; }
    #news .topics dt {
      float: left;
      max-width: 120px;
      width: 20%; }
    #news .topics dd {
      float: left;
      max-width: 800px;
      width: 80%; }
  #news article {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 0 60px; }
    #news article h3 {
      font-size: 2.8rem; }

  /* -----------------------------------
    PC CONTACT
  ----------------------------------- */
	#contact{
		/*background-color:#000000;*/
    background-color:#fff;
	}
  #contact .question {
    margin: 0 auto 20px;
    max-width: 800px;
    overflow: hidden;
    /*color:#ffffff; */
    color:#000;
  }
    #contact .question dt {
      box-sizing: border-box;
      float: left;
      padding: 10px 0;
      width: 300px;
      /*color:#ffffff; */
      color:#000; 
    }
      #contact .question dt:before {
        padding: 8px 0; }
    #contact .question dd {
      float: left;
      padding: 0;
      width: 500px;
      border:1px solid #000;
      border-radius: 10px;
        padding: 2px 7px;
     }
  #contact .btn_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: center;
    display: -ms-flex;
    -ms-flex-pack: center; }
    #contact .btn_list li,
    #contact .btn_list li:not(:last-child) {
      margin: 0 10px;
      width: 240px; }
    #contact .btn_list li {
      display: inline-block; }
  #contact .submit {
    margin: 0 auto;
    max-width: 280px; }
  #contact .comp_text {
    font-size: 2rem; }
  #contact .select_target{
  padding: 1rem 1rem;}


  /* -----------------------------------
    PC RECRUIT
  ----------------------------------- */
  #recruit .recruit_list dt {
    font-size: 2rem;
    float: left;
    padding: 14px 30px;
    width: 75%; }
  #recruit .recruit_list dd {
    float: right;
    width: 25%; }

  /* -----------------------------------
    PC COMPANY
  ----------------------------------- */
  #company .access_area {
    padding: 40px 0 0; }
    #company .access_area h3 {
      font-size: 3rem;
      padding: 30px 0; }
      #company .access_area h3 span {
        font-size: 1.4rem; }
  #company .address_area {
    overflow: hidden; }
  #company .address {
    float: left;
    padding: 38px 0 0; }
  #company .link_map {
    margin: 0 0 40px;
    float: right; }
    #company .link_map a {
      font-size: 1.5rem;
      max-width: 230px; }
      #company .link_map a span {
        background: url(../images/shared/icon_window.png) no-repeat right 0 top 6px/19px;
        padding: 0 26px 0 0; }
  #company .company_list {
    overflow: hidden; }
    #company .company_list li {
      float: left; }
    #company .company_list li:not(:last-child) {
      padding: 0 40px 0 0; }
    #company .company_list img {
      width: 106px; }

  /* -----------------------------------
    PC SITEMAP
  ----------------------------------- */
  #sitemap .list_page {
    margin: 0 0 40px; }
    #sitemap .list_page li {
      display: inline-block;
      width: calc(97% / 3); }
    #sitemap .list_page .privacy {
      letter-spacing: 0;
      font-size: 1.3rem;
      width: calc(97% / 5); } }
      
.service_area {
	margin-bottom:84px;
}

@media print, screen and (max-width: 751px) {
	#company .company_list li {
		width:100%;
		text-align:center;
	}
	.ul-left{
		float:none;
	}
	.ul-50 {
	width:100%;
}
	.sp-only {
		display:none;
	}
	#first {
		margin-top:0;
	}
	#first img {
		width:230px !important;
	}
	#second {
		margin-top:0;
	}
	#second img {
		width:280px !important;
	}
	#third {
		margin-top:32px !important;
	}
	#third img{
		width:330px !important;
	}
	#fourth {
		margin-top:54px !important;
	}
	#fourth  img {
		width:270px !important;
	}
	#fifth {
		margin-top:70px !important;
	}
	#fifth img {
		width:290px !important;
	}
	#logolist_dt {
		float:none;
	}
	#logolist_dd{
		width:100%;
	}
	
}

@media screen and (min-width: 751px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 751px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
}


.privacy_policy .list_num li {
  color: white;
}
#contents .privacy_policy h3.default_h3 {
  color: white;
}



/* add new recruit  */
.wrap-recruit-video{
  width: 100%;
  height: 93vh;
  background: linear-gradient(-45deg, rgba(4, 114, 124, 0.4), rgba(17, 66, 99, 0.6));
}

#bg-video{
    -webkit-transform: translateX(-50%);
    left: 50%;
    max-height: initial;
    max-width: initial;
    min-height: 100vh;
    min-width: 100%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    z-index: -1;
}
.mv {
	height: 95vh;
	overflow: hidden;
	position: relative;
	width: 100%;
  /* background: linear-gradient(to bottom, rgba(241, 233, 158, 0.6), rgba(241, 233, 158, 0.6));
  background: linear-gradient(-45deg, rgba(4, 114, 124, 0.4), rgba(17, 66, 99, 0.6)); */
  /* background: linear-gradient(-45deg, rgba(131, 133, 133, 0.4), rgba(59, 59, 59, 0.6)); */
  background: linear-gradient(-45deg, rgb(50 50 50 / 60%), rgb(2 2 2 / 60%));
}
.mv-content {
	-webkit-transform: translate(-50%, -50%);
	left: 50%;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	padding: 0 24px;
	z-index: 2;
}

.mv-title {
	color: #fff;
	font-size: 50px;
	font-weight: 700;
}
.mv-title span{
  display: block;
  font-size: 2rem;
} 
.mv-content-sub {
	-webkit-transform: translate(-50%, -50%);
	left: 50%;
	position: absolute;
	text-align: center;
  bottom: 5%;
	transform: translate(-50%, -50%);
	width: 100%;
	padding: 0 24px;
	z-index: 2;
}

.mv-title-sub {
	color: #fff;
	font-size: 40px;
	font-weight: 700;
}
#contents{
  padding: 0 0 140px;
}
.rec-company-info-btn{
  /* border-radius: 15px; */
  /* border:solid 1px #7a7a7a; */
  width: 70%;
  margin: 10px auto;
  padding: 5px;
  font-size: 1.8rem;
}
@media screen and (max-width: 751px){	
  .rec-company-info-btn{
    width: 100%;
    font-size: 2.1rem;
  }
}


.slider-box{
  padding-top: 12px;
  height: auto;
	overflow: hidden;
	position: relative;
	width: 100%;
  /* background: linear-gradient(to bottom, rgba(241, 233, 158, 0.6), rgba(241, 233, 158, 0.6));
  background: linear-gradient(-45deg, rgba(4, 114, 124, 0.4), rgba(17, 66, 99, 0.6)); */
  /* background: linear-gradient(-45deg, rgba(131, 133, 133, 0.4), rgba(59, 59, 59, 0.6)); */
  background: linear-gradient(-45deg, rgb(50 50 50 / 60%), rgb(2 2 2 / 60%));
  border-radius: 15px;
  border: 1px solid gray;
}

@media screen and (max-width: 751px){	
  .slider-box{
    height: 255px;
  }
}

.slider-box .slider,.slider-box .slider-2{
  z-index: -2;
}
.slider-content {
	-webkit-transform: translate(-50%, -50%);
	left: 50%;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	padding: 0 24px;
	z-index: 2;
}

.slider-title {
	/*color: #fff;*/
	color: #000;
	font-size: 42px;
	font-weight: 700;
}

/*==================================================
スライダーのためのcss
===================================*/
.slider img ,.slider-2 img{
  width:100%;/*スライダー内の画像を横幅100%に*/
  height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide,.slider-2 .slick-slide {
  margin:0 10px;/*スライド左右の余白調整*/
}

.recruit_btn {
  display: inline-block;
  padding: 1.2rem 1.8rem;
  /* font-size: 17px; */
  font-size: 3rem;
  font-weight: 500;
  /* color: white; */
  color: black;
  /* border: 1px solid rgb(7 170 251); */
  /* border: 1px solid #ffa500; */
  border: 1px solid #3cb371;
  border-radius: 10px;
  cursor: pointer;
  position: relative;
  background-color: transparent;
  text-decoration: none;
  overflow: hidden;
  z-index: 1;
  font-family: inherit;
  width: 80%;
}

.recruit_btn::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  /*background-color: rgb(0 123 255);*/
  /*background-color: #ffa500;*/
  background-color: #3cb371;
  transform: translateX(-100%);
  transition: all .3s;
  z-index: -1;
 }
 
 .recruit_btn:hover::before {
  transform: translateX(0);
 }
 
 #recruit .h3{
   font-size:2.6rem;
 }
 #recruit h3{
   font-size:4rem;
 }
 
 .recruit_btn:hover span {
  color: white;
 }
 
 /* PC */
@media print, screen and (min-width: 751px) {
  .recruit_btn {
      font-size:1.8rem;
  }
    
  #recruit .h3{
    font-size:2.1rem;
  }
  #recruit h3{
    font-size:2.5rem;
  }
    
}

.div-pre {
  white-space: pre;
}

.president img{
height:30px!important;
width:auto;
}

.comingsoon {
padding: 1rem 3rem;
-webkit-transform: skew(-15deg);
transform: skew(-15deg);
color: #fff;
background-image: -webkit-gradient(linear, left top, right top, from(#209cff), to(#68e0cf));
background-image: -webkit-linear-gradient(left, #209cff 0%, #68e0cf 100%);
background-image: linear-gradient(to right, #209cff 0%, #68e0cf 100%);
}

/* game studio */
.game-studio-sub-title{
text-align:center;
position:relative;
font-size: 1.1em;
}
.game-studio-sub-title:before {
position: absolute;
bottom: -15px;
left: calc(50% - 30px);
width: 60px;
height: 3px;
content: '';
border-radius: 3px;
background: #f59c00;
}


.game-studio-haishin-table-th{
background-color: orange;
  padding: 5px 0px;
  color: black;
}

.game-studio-haishin-table-1{
 border: 1px solid orange;
 border-radius: 5px 0 0 5px;
}
@media screen and (max-width: 751px){	
.game-studio-haishin-table-1{
  border-radius: 5px;
}
}
.game-studio-haishin-table-2{
border-top: 1px solid orange;
  border-bottom: 1px solid orange;
  /* margin: 0 1px; */
  border-left: 1px solid black;
  border-right: 1px solid black;
}

@media screen and (max-width: 751px){	
.game-studio-haishin-table-2{
  border: 1px solid orange;
  border-radius: 5px;
}
}

.game-studio-haishin-table-3{
 border: 1px solid orange;
 border-radius: 0 5px 5px 0;
}
@media screen and (max-width: 751px){	
.game-studio-haishin-table-3{
  border-radius: 5px;
}
}

.row-eq-height{
display: flex;
flex-wrap: wrap;
height: 88%;
align-items: center;
}

.after-arrow:after{
content: '';
width: 10px;
height: 10px;
border: 0;
border-bottom: solid 2px #ffa500;
border-right: solid 2px #ffa500;
position: absolute;
/* top: 50%; */
bottom: -15px;
/* left: 50%; */
margin-top: 0px;
transform: rotate(45deg);
}
@media screen and (max-width: 751px){
.after-arrow:after{
  width: 15px;
  height: 15px;
}
}
.game-studio-prosess-th{
border: 1px solid #ffa500;
background-color: #ffa500;
border-radius: 5px 0 0 5px;
color: #000;
}
@media screen and (max-width: 751px){
.game-studio-prosess-th{
  border-radius: 5px 5px 0 0;
}
}
.game-studio-prosess-td{
border: 1px solid #ffa500;
}

.button020 a {
background: #ffa500;
position: relative;
display: flex;
justify-content: space-around;
align-items: center;
margin: 0 auto;
/* max-width: 240px; */
padding: 10px 25px;
color: #313131;
transition: 0.3s ease-in-out;
font-weight: 500;
border-radius: 5px;
}
.button020 a:hover {
background: #ffc107;
}
.button020 a:before, 
.button020 a:after {
content: "";
position: absolute;
display: block;
transition: all 0.3s;
right: 0.6rem;
top: 50%;
}
.button020 a:before {
/* width: 1.4rem; */
height: 2px;
background: #614f38;
transform: translateY(-50%);
}
.button020 a:after {
opacity: 0;
width: 0;
height: 0;
border-top: solid 2px currentColor;
border-right: solid 2px currentColor;
transform: translateY(-50%) rotate(45deg);
}
.button020 a:hover:before {
width: 1.5rem;
}
.button020 a:hover:after {
opacity: 1;
width: 8px;
height: 8px;
}

.balloon:before {
order: 20px solid transparent;
border-top-color: #ffa500;
content: '';
position: absolute;
bottom: -40px;
left: calc(50% - 20px);
}

/* 三角形（ボックスと同色） */
.balloon:after {
border: 20px solid transparent;
border-top-color: #ffa500;
content: '';
position: absolute;
bottom: -39px;
left: calc(50% - 20px);
}

.agent-prosess-th{
border: 1px solid #ffa500;
background-color: #ffa500;
border-radius: 5px 0 0 5px;
color: #000;
}

.agent-price-box{
border-radius: 5px;
}
.agent-price-th{
background: #ffa500;
color: black;
border-radius: 5px 5px 0 0;
}
.agent-price-td{
border: 1px solid #ffa500;
height: 5em;
border-radius: 0 0 5px 5px;
}

.iw-sub-title {
position:relative;
padding: .1em .3em .1em 1em;
font-size: 1.4em;
}
.iw-sub-title-text {
font-size: 1em;
}

@media screen and (max-width: 751px){
.iw-sub-title {
  font-size: 2em;
}
.iw-sub-title-text {
  font-size: 1em;
}
}

.iw-sub-title:before{
position: absolute;
content: '';
height: 15px;
width: 15px;
display: block;
background: #ffa500;
top: -0.1em;
left: -10px;
transform: rotate(-50deg);
}
.iw-sub-title:after{
position: absolute;
content: '';
height: 10px;
width: 10px;
display: block;
background: #ffa500;
top: 0.7em;
left: -15px;
transform: rotate(-75deg);
}

.iw-feature-sub-title{
font-size: 1.2em;
}
.iw-feature-sub-text{
font-size: 0.9em;
}
.iw-feature-icon{
height: 4em;
}

.step{
list-style-type: none;
display:table;
width:100%;
padding:0;
margin:0;
overflow:hidden;
border-radius: 5px;
}
.step li{
display:table-cell;
position:relative;
background: #ffa500;
/* padding: 1em 0.5em 1em 2em; */
padding: 0.5em 0.5em 0.5em 2em;
color: black;
/* font-weight: bold; */
width: 33%;
font-size: 1.8rem;
}
.step li:last-child{
padding-right: 1em;
}
.step li:last-child:before,
.step li:last-child:after{
display:none;
}
.step li:before,
.step li:after{
content: "";
position: absolute;
width: 0;
height: 0;
margin: auto;
}
.step li:before{
top:-15px;
right:-1em;
border-style: solid;
border-color: transparent transparent transparent #000;
border-width: 40px 0 40px 1em;
z-index: 10;
}
.step li:after{
top:-15px;
right:-.8em;
border-style: solid;
border-color: transparent transparent transparent #ffa500;
border-width: 40px 0 40px 1em;
z-index: 10;
}
.step li.is-current{
background: #ffa500;
/* font-weight: bold; */
}
.step li.is-current:after{
border-color: transparent transparent transparent #ffa500;
}

.iw-top-catch{
font-size: 1.3em;
}

.agent-price-table table{
width:100%;
background-color: #ffa500;
border-radius: 5px;
}
.agent-price-table thead{
color: black;
}
.agent-price-table .td-detail {
white-space: nowrap!important;
}
@media screen and (max-width: 751px){
.agent-price-table .td-detail {
  width: 500px;
  min-width: 500px;
  white-space: normal!important;
}
}
.agent-price-table tbody tr th{
background-color: black;
border-top: 1px solid #ffa500;
}

.agent-price-table th{
padding: 1rem;
}
.agent-price-table td{
border-top: 1px solid #ffa500;
padding: 1rem;
background-color: black;
}

.contact_btn {
display: inline-block;
padding: 10px 25px;
font-size: 1.4rem;
font-weight: 500;
color: #000000 !important;
border: 1px solid #ffa500;
border-radius: 5px;
position: relative;
background-color: #FFA500;
text-decoration: none;
overflow: hidden;
z-index: 1;
font-family: inherit;
width: 100%;
}

.cout_up{
  /*font-size: 5vw;*/
  font-size: 9rem;
font-weight: bold;
  color: #ffa500;
  padding: 0 10px;
  line-height: 1.2;
font-family: 'Roboto', sans-serif;
}
/*------------------------------------
pie chart
------------------------------------*/
@media screen and (min-width: 751px) {
.pie-chart-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
}

.box {
position: relative;
/*min-width: 200px;*/
/*width: 33.3333333333%;*/
/*height: 300px;*/
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
/*background: #fff;*/
-webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 750px) {
.box {
  width: 100%;
}
}
@media screen and (min-width: 751px) {
.box + .box {
  margin-left: 20px;
}
}
@media screen and (max-width: 750px) {
.box + .box {
  margin-top: 20px;
}
}
.box .percent {
position: relative;
width: 150px;
height: 150px;
}
.box .percent svg {
position: relative;
width: 150px;
height: 150px;
-webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
}
.box .percent svg circle {
position: relative;
fill: none;
stroke-width: 10;
stroke: #f3f3f3;
stroke-dasharray: 440;
stroke-dashoffset: 0;
stroke-linecap: round;
}
.box .percent .number {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
color: #ffa500;
}
.box .percent .number .title {
font-size: 50px;
}
.box .percent .number .title span {
font-size: 22px;
}
.box .text {
padding: 10px 0 0;
text-align: center;
font-weight: bold;
font-size: 14px;
}
.box .percent .line {
-webkit-animation: circleAnim 3s forwards;
        animation: circleAnim 3s forwards;
}
.box.blue .percent .line {
stroke-dashoffset: 52.8;
stroke: #03a9f4;
}

@-webkit-keyframes circleAnim {
0% {
  stroke-dasharray: 0 440;
}
99.9%, to {
  stroke-dasharray: 440 440;
}
}

@keyframes circleAnim {
0% {
  stroke-dasharray: 0 440;
}
99.9%, to {
  stroke-dasharray: 440 440;
}
}


/*------------------------------------
bar graph
------------------------------------*/
.bar-graph-wrap {
position: relative;
height: 350px;
-webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
overflow: hidden;
}
.bar-graph-wrap .graph {
height: 50px;
position: absolute;
left: 0;
border-radius: 0 4px 4px 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
padding: 10px;
-webkit-animation: graphAnim 2.5s forwards;
        animation: graphAnim 2.5s forwards;
}
.bar-graph-wrap .graph span {
font-size: 14px;
color: #ffffff;
}
@media screen and (max-width: 750px) {
.bar-graph-wrap .graph span {
  font-size: 12px;
}
}
.bar-graph-wrap .graph.blue {
top: 15%;
background: #03a9f4;
width: 88%;
}
.bar-graph-wrap .graph.red {
top: 0;
bottom: 0;
margin: auto;
background: #ff3051;
width: 65%;
}
.bar-graph-wrap .graph.green {
bottom: 15%;
background: #1fd26c;
width: 27%;
}

@-webkit-keyframes graphAnim {
0% {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
100% {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
}

@keyframes graphAnim {
0% {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
100% {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
}

.bar-graph-wrap.vertical {
height: 500px;
margin: 0 auto;
max-width: 350px;
}

.bar-graph-wrap.vertical .graph {
width: 50px;
bottom: 0;
border-radius: 4px 4px 0 0;
animation: graphAnim02 3s forwards;
flex-direction: column-reverse;
}
.bar-graph-wrap.vertical .graph .name {
font-size: 10px;
}
.bar-graph-wrap.vertical .graph {
left: 15%;
height: 88%;
top: auto;
}
.bar-graph-wrap.vertical .graph.blue {
left: 15%;
height: 88%;
top: auto;
}
.bar-graph-wrap.vertical .graph.red {
left: 0;
right: 0;
height: 65%;
top: auto;
}
.bar-graph-wrap.vertical .graph.green {
right: 15%;
height: 27%;
left: auto;
}
@keyframes graphAnim02 {
0% {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
100% {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
}

.message_dotto{
color:#3cb371;
}

/* ボタン共通設定 */
.btn06{
  /*矢印の基点とするためrelativeを指定*/
position: relative;
  /*ボタンの形状*/
text-decoration: none;
display: inline-block;
background:#fff;
  color:#000;
  padding: 10px 40px 10px 30px;
border-radius:25px;
  text-align: center;
  outline: none;
  /*アニメーションの指定*/
  transition: ease .2s;
  width: 100%;
  border: 1px solid #dbdbdb;
}
@media screen and (max-width: 751px){	
  .btn06{
    padding: 20px 40px 20px 30px;
  }
}


.btn06:hover{
/* background:#555; */
}

/* 矢印が右に移動して現在地に戻る */

.btnarrow2::after{
  content: '';
  /*絶対配置で矢印の位置を決める*/
position: absolute;
  top:42%;
  right: 13px;
  /*矢印の形状*/
  width: 8px;
  height: 8px;
  border-top: 2px solid #3cb471;
  border-right: 2px solid #3cb471;
  transform: rotate(45deg);
}

/*hoverした際のアニメーション*/
.btnarrow2:hover::after{
animation: arrow .5s;
}

.btnarrow2:hover{
  text-decoration: none;
  text-decoration-color: #000;
  color: #000;
}
  
@keyframes arrow {
  50% {
    right: 10px;
  }
  100% {
    right: 13px;
  }
}

.fresh img{
  border-radius: 15px;
}
.fresh-img-box{
  position: relative;
}
.fresh-img-box p{
  position: absolute;
  top: 50%;
  left: 75%;
  font-size: 40px;
  font-weight: 700;
  transform: translate(-50%, -50%);
}

.career-top{
  margin-top: 100px;
}


/*矢印が縮む*/

.btnarrow6{
  /*矢印の基点とするためrelativeを指定*/
position: relative;
  /*ボタンの形状*/
background:#fff;
  padding: 5px 25px 5px 30px;
  display: inline-block;
  text-align: center;
  transition: all .2s linear;
color:#fff;
  text-decoration: none;
border:transparent 2px solid;
  outline: none;
  color: #000;
  padding-top: 10px;
  padding-bottom: 10px;
}
@media screen and (max-width: 751px){	
  .btnarrow6{
    padding-top: 20px;
    padding-bottom: 20px;  
  }
}


/*hoverした際のボタンの形状*/
.btnarrow6:hover{
background:#fff;
color:#000;
border-color:#000;
}

/*矢印と線の形状*/

.aaabtnarrow6:before{
content:"";
  /*絶対配置で線の位置を決める*/
position: absolute;
top:50%;
right:20px;
  /*線の形状*/
width:20px;
height:1px;
background:#3cb471;
transition: all .2s linear;
}

.aaabtnarrow6::after {
  content: '';
  /*絶対配置で矢印の位置を決める*/
  position: absolute;
  top: 42%;
  right: 12px;
  /*矢印の形状*/
  border: 4px solid transparent;
  border-top-width: 4px;
  border-bottom-width: 4px;
  border-left-color: #3cb471;
  /*アニメーションの指定*/
  transition: all .2s linear;
}

/*hoverした際の矢印の形状*/
.aaabtnarrow6:hover::before{
background:#3cb471;
right:25px;
}

.aaabtnarrow6:hover::after{
  border-left-color: #3cb471;
  right: 20px;
}

.link-btn-fresh,.link-btn-career{
  border: 1px solid #fff;
  border-radius: 15px;
  width: 75%;
}
@media screen and (max-width: 751px){	
  .link-btn-fresh,.link-btn-career{
    width: 60%;
    font-size: 30px;
  }
}

.recruit-inner-link-btn-box{
  position: absolute;
    bottom: 20%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 2rem;
    width: 900px;
    text-align: center;
}

@media screen and (max-width: 751px){	
  .recruit-inner-link-btn-box{
    bottom: 8%;
  }
}

#page-link a{
  text-decoration: none;
  color: #000000;
}

.arrow-icon {
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  width: 10px;
  height: 10px;
  border-style: solid;
  border-width: 0 3px 3px 0;
  border-color: #3cb371;
  transform: rotate(45deg);
}
@media screen and (max-width: 751px){	
  .arrow-icon {
    width: 18px;
    height: 18px;
    border-width: 0 5px 5px 0;  
    margin-left: 10px;
  }
}


.arrow-animation{
  display: inline-block;
  padding-left: 10px;
  animation: updown 2s infinite ease-in-out;
}
@keyframes updown {
  0% {
    transform: translate(0, -7px);
  }
  50% {
    transform: translate(0, -2px);
  }
  100% {
    transform: translate(0, -7px);
  }
}

/* キャンペーンGOページ追加 */

.cpgo-hero{
  /* height: calc(100vh - 80px); */
  height: 550px;
  min-height: 400px;
  background: url(../images/shared/cpgo-hero-bg.png) no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px){	
  .cpgo-hero{
    height: auto;
  }
}

.cpgo-hero-box{
  height: 500px;
}
@media screen and (max-width: 751px){	
  .cpgo-hero-box{
    height: auto;
  }
}

.cpgo-hero-box img{
  width: 80%;
}

.cpgo-header-text{
  border: 1px solid lightgray;
  border-radius: 15px;
  background-color: white;
  padding: 5rem 0.5rem;
  margin: auto 5%;
}
.cpgo-header-text-read1{
  font-size: 2rem;
}
@media screen and (max-width: 751px){	
  .cpgo-header-text-read1{
    font-size: 2.5rem;
  }  
}
.cpgo-header-text-read2{
  font-size: 3rem;
  font-weight: bold;
}
.cpgo-header-text-2{
  margin: auto;
  margin-top: 20px;
  width: 80%;
  font-size: 2.5rem;
  font-weight: bold;
  text-align: left;
  padding-left: 1.5rem;
}
@media screen and (max-width: 751px){	
  .cpgo-header-text-2{
    width: 100%;
    font-size: 2.5rem;
  }
}

.cpgp-summary{
  background-color: #f2f2f2;
}

a.btn_26 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 300px;
	margin: auto;
	padding: 1rem 4rem;
	border-radius: 10px;
	color: #fff;
	background: #3cb471;
}
a.btn_26:hover {
	background-position: right center;
	background-size: 200% auto;
	-webkit-animation: pulse 2s infinite;
	animation: shad26 1.5s infinite;
	color: #fff;
}
@keyframes shad26 {
	0% {box-shadow: 0 0 0 0 #3cb471;}
	70% {box-shadow: 0 0 0 10px rgb(39 172 217 / 0%);}
	100% {box-shadow: 0 0 0 0 rgb(39 172 217 / 0%);}
}


a.btn_27 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 300px;
	margin: auto;
	padding: 1rem 4rem;
	border-radius: 10px;
	color: #fff;
	background: #ea3323;
}
a.btn_27:hover {
	background-position: right center;
	background-size: 200% auto;
	-webkit-animation: pulse 2s infinite;
	animation: shad27 1.5s infinite;
	color: #fff;
}
@keyframes shad27 {
	0% {box-shadow: 0 0 0 0 #ea3323;}
	70% {box-shadow: 0 0 0 10px rgb(39 172 217 / 0%);}
	100% {box-shadow: 0 0 0 0 rgb(39 172 217 / 0%);}
}

@media screen and (max-width: 751px){	
  a.btn_26, a.btn_27 {
    padding: 2rem 4rem;
    width: 100%;
  }
}

.cpgo-game-box{
  background: url(../images/shared/cpgo-game-bg.png) repeat-y;
  background-size: contain; 
}

.cpgo-game-card{
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.2);
  border-radius: 15px;
  background-color: white;
  margin: 10px;
  padding: 20px 15px;
}

.cpgo-game-card-other{
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.2);
  border-radius: 15px;
  background-color: white;
  margin: 10px;
  padding: 20px 15px;
}

.marker {
  background:linear-gradient(transparent 50%, rgba(255, 220, 123) 50%);
  display: inline;

  /* 背景の繰り返しを停止 */
  background-repeat: no-repeat;

  /* マーカーの横方向を0にして縮める */
  background-size: 0% 100%;

  /* マーカーが引かれる速度を指定 */
  transition:background-size 1.5s;
}

/* マーカーが引かれる際に付与するクラス */
.marker.on {
  /* 横方向を100%にして、マーカーを引く */
  background-size: 100% 100%;
}


.section-title {
  color: #576965;/*文字色*/
  font-size: 20px;
  padding: 30px 20px 15px;/*文字回りの余白（上 左右 下）*/
  display: block;
  position: relative;
  font-weight: bold;
  color: black;
  font-size: 2.5rem;
  /* margin: auto 60px; */
  margin: auto;
  width: 75%;
}

@media screen and (max-width: 751px){	
  .section-title {
    width: 100%;
    font-size: 3.5rem;
  }
}


.aaasection-title:before {
  content: '';
  background: #f18a08;/*背景色*/
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  position: absolute;
  top: 0px;
  left: 6px;
  z-index: -1;
  transform: rotate(1.5deg);/*背景影部の回転*/
}

.aaasection-title:after {
  content: '';
  background: #fff;/*背景色（白）*/
  border: 3px solid #f18a08;/*背景白部の囲み線（太さ 実線 色*/
  width: 100%;
  height: 100%;
  position: absolute;
  top: 5px;
  left: -5px;
  z-index: -1;
  transform: rotate(-.5deg);/*背景白部の回転*/
}

.section-title-sub{
  font-size: 2rem;
}

@media screen and (max-width: 751px){	
  .section-title-sub{
    font-size: 3rem;
  }  
}

.contact-title{
  font-size: 1.7rem;
}
@media screen and (max-width: 751px){	
  .contact-title{
    font-size: 2.8rem;
  }
}


.contact-btn-text{
  font-size: 1.7rem;
}
@media screen and (max-width: 751px){	
  .contact-btn-text{
    font-size: 3rem;
  }
}

@media screen and (max-width: 751px){	
.section-title-game{
  font-size: 3rem;
}
}

@media screen and (max-width: 751px){	
  .section-title-game-sub{
    font-size: 2.7rem;
  }
}

@media screen and (max-width: 751px){	
.cpgo-housei-link-txt{
  font-size: 2rem;
}
}

@media screen and (max-width: 751px){	
.cpgo-game-card-text p{
  font-size: 2.7rem;
}
}

@media screen and (max-width: 751px){	
.cpgo-game-last-text p{
  font-size: 2.7rem;
}
}

/* 下から */
.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

.nowrap {
  display: inline-block;
  text-decoration: inherit;
  white-space: nowrap;
}

.cpgo-price-card{
  border-radius: 15px;
  padding: 20px 10px;
  box-shadow: 0px 2px 5px 1px rgba(0, 0, 0, 0.2);
}

