/*
Theme Name: KUMACOMI
Description: 
*/

@charset "UTF-8";





/* font
---------------------------------------------------------- */
html {
  font-size: 16px;
}
body {
  text-align: left;
  color: #121212;
  line-height: 1.8;
  background: #fff;
  font-family: Helvetica Neue, "YuGothic Medium", YuGothic, "游ゴシック Medium", "ヒラギノ角ゴPro W3", "游ゴシック体", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka,  "ＭＳ Ｐゴシック", "MS PGothic", Arial, Verdana, sans-serif;
}

.p-single-content p{
	margin-bottom:1rem;
}


/* details
---------------------------------------------------------- */

summary {
  cursor: pointer;
}

/* プロフィールSNS
---------------------------------------------------------- */
.single-members-sns p {
  display: inline-block;
}

.single-members-sns p img {
  display: block;
  width: 50px;
}

.single-members-sns p {
  margin: 0 5px 0 0;
}


.p-talent-sec p{
	margin-bottom:1em;
}

/* LP
---------------------------------------------------------- */

.page-id-416 .l-footer-site,
.page-id-416 .l-footer-tel,

.page-id-394 .l-footer-site,
.page-id-394 .l-footer-tel,

.page-id-411 .l-footer-site,
.page-id-411 .l-footer-tel
{
	display:none;
}




/* common
---------------------------------------------------------- */
a {
  color: #c2131c;
}
a:link,
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a.line:link,
a.line:visited {
  text-decoration: underline;
}
a.line:hover {
  text-decoration: none;
}
body {
  position: relative;
  -webkit-text-size-adjust: 100%;
}
button {
  cursor: pointer;
}
strong span {
  font-weight: bold;
}

/* table */
table {
  width: 100%;
  margin: 0 0 20px 0;
  line-height: 1.5;
  color: #333;
}
table th,
table td {
  border: 1px solid #333;
  border-collapse: collapse;
  border-spacing: 0;
  padding: 20px;
  font-size: 100%;
  vertical-align: middle;
}
table th {
  background: #eee;
  color: #666;
}
table td {
  background: #fff;
}

.spp{
	display:none;
}


@media(max-width:767px) {
	
.spp{
display:block;
}

}
/*--------------------
form
--------------------*/
/* 共通 */
input[type="submit"],
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input,
select,
textarea {
  font-family: YuGothic, Osaka, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  font-size: 1rem;
}
input[type="file"] {
  font-size: .875rem;
}

/* layout
---------------------------------------------------------- */
@media(min-width:1000px) {
  body {
    padding: 106px 0 0;
  }
}
@media(max-width:999px) {
  body {
    padding: 74px 0 0;
  }
/*
  body.admin-bar {
    padding: 126px 0 0;
  }
*/
}
@media(max-width:767px) {
  body {
    padding: 69px 0 0;
  }
}
.l-content--1 {
  width: 1000px;
  margin: 0 auto;
}
.l-content--2 {
  width: 1190px;
  margin: 0 auto;
}
.l-page-wrap {
  overflow: hidden;
}

@media(max-width:1189px) {
  .l-content--2 {
    width: 96%;
  }
}

@media(max-width:999px) {
  .l-content--1 {
    width: 96%;
  }
}

/* header
---------------------------------------------------------- */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 30003;
  background-color: #43b141;
}
.admin-bar .l-header {
  top: 32px;
}
@media screen and (max-width: 782px) {
  .admin-bar .l-header{
    top: 47px;
  }
}
@media screen and (max-width: 600px){
  html #wpadminbar {
    position: fixed;
  }
}
.l-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 25px 0 20px;
}
.l-header-ttl {
  width: 20%;
}
.l-header-nav {
  width: 70%;
  letter-spacing: .1em;
}
.l-header-nav ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.l-header-nav ul li a {
  display: block;
  color: #fff;
  font-family: "HelveticaNeue-CondensedBold", Helvetica Neue, "YuGothic Medium", YuGothic, "游ゴシック Medium", "ヒラギノ角ゴPro W3", "游ゴシック体", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka,  "ＭＳ Ｐゴシック", "MS PGothic", Arial, Verdana, sans-serif;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
}
.l-header-nav ul li a:hover {
  text-decoration: none;
}
.l-header-nav ul li a span {
  display: block;
  color: #121212;
  font-size: 14px;
}
.l-header-spmenu {
  display: none;
}
@media screen and (min-width: 1000px) {
  .l-header-nav {
    margin-top: 0!important;
  }
}
@media screen and (max-width: 999px) {
  .l-header-ttl {
    width: calc(100% - 50px);
  }
  /* 枠幅いっぱいに広がるとロゴが巨大になるため幅を固定 */
  .l-header-ttl img {
    width: 180px;
  }
  /* ハンバーガー表示時は追従ヘッダーを低めにする */
  .l-header-inner {
    padding: 12px 0;
  }
  .l-header-spmenu {
    cursor: pointer;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    width: 40px;
  }
  .l-header-spmenu__line span {
    display: block;
    width: 40px;
    height: 4px;
    background-color: #fff;
  }
  .l-header-spmenu__line span:not(:last-of-type) {
    margin: 0 0 8px;
  }
  .l-header-spmenu__txt {
    font-family: "HelveticaNeue-CondensedBold", Helvetica Neue, "YuGothic Medium", YuGothic, "游ゴシック Medium", "ヒラギノ角ゴPro W3", "游ゴシック体", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka,  "ＭＳ Ｐゴシック", "MS PGothic", Arial, Verdana, sans-serif;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: .2em;
  }
  .l-header-nav {
    position: fixed;
    left: 0;
    top: 0;
    -webkit-transform: translateY(-100vh);
    transform: translateY(-100vh);
    transition: transform .3s ease;
    overflow-y: scroll;
    width: 100vw;
    height: 100vh;
/*    z-index: 30002;*/
    z-index: -1;
    background: #43b141;
  }
  .l-header-nav ul {
    display: block;
  }
  .l-header-nav ul li a {
    border-bottom: solid 1px #aaa;
    padding: .5em 0;
  }
}

@media screen and (max-width: 767px) {
  .l-header-ttl {
   width: 45%;
  }
  .l-header-inner {
    padding: 10px 0;
  }
  .l-header-nav ul li a {
    font-size: 16px;
  }
  .l-header-nav ul li a span {
    font-size: 12px;
  }

}


/*固定ヘッダー*/
.headerFixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  background: #fff;
  opacity: 0.9;
  box-shadow: 0px 2px 5px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0px 2px 5px rgba(0,0,0,0.2);
  -moz-box-shadow: 0px 2px 5px rgba(0,0,0,0.2);
}

/* footer
---------------------------------------------------------- */
/*pagetop*/
.c-pagetop-rl {
  position: relative;
}
.c-pagetop {
  display: none;
  position: fixed;
  right: 30px;
  bottom: 30px;
}
.c-pagetop a {
  display: block;
  position: relative;
  width: 60px;
  height: 60px;
  line-height: 8;
  font-size: 0.8em;
  background: #292929;
  color: #fff;
  text-align: center;
}
.c-pagetop a::after {
  content: "";
  position: absolute;
  top: 5px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(315deg) skew(0deg, 5deg);
  transform: rotate(315deg) skew(0deg, 5deg);
}
.c-pagetop a:hover {
  opacity: .8;
}
@media screen and (max-width: 767px) {
/*
  .c-pagetop {
    display: block!important;
    opacity: 1!important;
    position: absolute!important;
    width: 100%;
    right: 0;
    bottom: calc(-5vw + 10px);
  }
  .c-pagetop a {
    width: 100%;
    height: auto;
    padding: 25px 0;
  }
  */
}

.l-footer {
  background: url(img/foot_bg.jpg) no-repeat left bottom;
  background-size: cover;
  padding: 190px 0 100px;
  color: #fff;
  line-height: 1.5;
  letter-spacing: .1em;
}
.l-footer-inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 0 70px;
}
.l-footer-info {
  width: 30%;
  font-size: 18px;
}
.l-footer-name {
  margin: 1em 0;
  font-size: 20px;
  font-weight: bold;
}
.l-footer-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  width: 50%;
}
.l-footer-nav li {
  width: 49%;
}
.l-footer-nav a {
  display: block;
  position: relative;
  padding: 0 0 0 15px;
  color: #fff;
  font-size: 20px;
}
.l-footer-nav a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.l-footer-site {
  margin: 0 0 1rem;
}
.l-footer-copy {
  font-size: 14px;
  text-align: center;
}

@media screen and (max-width: 999px) {
  .l-footer-info {
    width: 40%;
  }
  .l-footer-nav {
    width: 58%;
  }
  .l-footer-nav li.l-footer-nav__fullwidth {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding: 80px 0 60px;
    background: url(img/sp_foot_bg.jpg) no-repeat left bottom;
    background-size: cover;
  }
  .l-footer .l-content--1 {
    width: 88%;
  }
  .l-footer-inner {
    margin: 0 0 45px;
  }
  .l-footer-info {
    width: 100%;
    order: 2;
    padding: 50px 0 0;
    text-align: center;
  }
  .l-footer-info a {
    color: #fff;
  }
  .l-footer-nav {
    width: 100%;
    order: 1;
    padding: 0 0 50px;
    border-bottom: solid 1px #fff;
  }
  .l-footer-nav a {
    padding: 10px 0 10px 15px;
    font-size: 16px;
  }
  .l-footer-name {
    font-size: 18px;
  }
  .l-footer-site,
  .l-footer-tel {
    font-size: 15px;
  }
  .l-footer-copy {
    font-size: 13px;
  }
  .l-footer-logo img {
    width: 75%;
    margin: 0 auto;
  }
}

/* common
---------------------------------------------------------- */
.c-skew {
  transform:skew(0deg, -5deg);
  -webkit-font-smoothing: antialiased;
}
.c-skew-modified {
  transform:skew(0deg, 5deg);
  -webkit-font-smoothing: antialiased;
}
.c-skew-block {
  margin: -5% 0;
  background: #fff;
  border-top: solid 10px #43b141;
  border-bottom: solid 10px #43b141;
}
.c-skew-area {
  position: relative;
  overflow: hidden;
}
.c-skew-area::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-top: solid 10px #c2131c;
  border-bottom: solid 10px #c2131c;
  background: #fff;
}
.c-page-mainimg-wrap {
  overflow: hidden;
}
.c-page-mainimg {
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding: 150px 0 190px;
  margin: -60px 0 0;
/*  border-bottom: solid 10px #c2131c;*/
  text-align: center;
}

.c-page-mainimg-head {
  display: inline-block;
  padding: 0.5rem 0;
  border-top: solid 3px #121212;
  border-bottom: solid 3px #121212;
  font-family: "HelveticaNeue-CondensedBold", Helvetica Neue, "YuGothic Medium", YuGothic, "游ゴシック Medium", "ヒラギノ角ゴPro W3", "游ゴシック体", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka,  "ＭＳ Ｐゴシック", "MS PGothic", Arial, Verdana, sans-serif;;
  font-size: 42px;
  font-weight: bold;
  letter-spacing: .1em;
}
.c-page-mainimg-head span {
  display: block;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .c-page-mainimg {
    padding: 110px 0 80px;
  }
  .c-page-mainimg-head {
    font-size: 30px;
  }
  .c-page-mainimg-head span {
    font-size: 18px;
  }
}
.c-indent--1 {
  padding: 0 0 0 1em;
  text-indent: -1em;
}
.c-indent--2 {
  padding: 0 0 0 1.5em;
  text-indent: -1.5em;
}

.c-contact-form {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  border-top: solid 1px #eee;
  border-bottom: solid 1px #eee;
  padding: 15px 0;
}
.c-contact-form dt,
.c-contact-form dd {
  padding: 15px 25px;
  border-bottom: solid 1px #eee;
}
.c-contact-form dt:last-of-type,
.c-contact-form dd:last-of-type {
  border-bottom: none;
}
.c-contact-form dt {
  width: 24%;
}
.c-contact-form dd {
  width: 76%;
}
.c-contact-form input,
.c-contact-form textarea {
  border: solid 1px #b5b5b5;
  padding: 5px;
}
.c-contact-form input[type="text"],
.c-contact-form input[type="email"],
.c-contact-form input[type="tel"],
.c-contact-form textarea {
  width: 100%;
  border-radius: 2px;
}

.c-contact-form input[type="text"][name="yo"],
.c-contact-form input[type="text"][name="height"],
.c-contact-form input[type="text"][name="bw"]
{
width:calc(100% - 2rem);
}

.c-contact-must {
  display: inline-block;
  background: #c2131c;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  padding: 0 .4em;
  margin: 0 0 0 .8rem;
}
.c-contact-btn-wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 35px 0 0;
}


.c-contact-btn-wrap p{
	display: block;
	width: 100%;
	text-align: center;
}


.c-contact-btn--1,
.c-contact-btn--2 {
  display: inline-block;
  padding: 25px 45px;
  width: 40%;
  background-repeat: no-repeat;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  text-align: center;
}
.c-contact-btn--1:hover,
.c-contact-btn--2:hover {
  opacity: 0.8;
  text-decoration: none;
}
.c-contact-btn--1 {
  background-color: #c2131c;
  background-image: url(img/contact_ico_1.png);
  background-position: right 10px center;
}
.c-contact-btn--2 {
  background-color: #333;
  background-image: url(img/contact_ico_2.png);
  background-position: 10px center;
  margin: 0 10px 0 0;
}

.wpcf7-radio span.wpcf7-list-item {
  margin: 0 1em 0 0;
}

@media screen and (max-width: 767px) {
  .c-contact-form dt,
  .c-contact-form dd {
    width: 100%;
    padding: 10px 5px;
  }
  .c-contact-form dt {
    border-bottom: none;
  }
  .c-contact-btn--1,
  .c-contact-btn--2 {
    width: 100%;
    padding: 25px;
  }
  .c-contact-btn--2 {
    margin: 0 0 10px;
  }

}


.c-pagination {
  margin: 30px 0 0;
}
.c-pagination ul {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination ul li {
  margin: 0 15px 15px 0;
}
.c-pagination ul li:last-of-type {
  margin: 0 0 15px;
}
.c-pagination ul li a,
.c-pagination ul li span {
  display: block;
  padding: .5em 1em;
  border: solid 1px #c2131c;
  color: #c2131c;
  font-weight: bold;
  font-size: 14px;
}
.c-pagination ul li a:hover,
.c-pagination ul li span.c-pagination-active {
  background: #c2131c;
  color: #fff;
}

.c-pagepost {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 30px 0 0;
  border-top: solid 2px #dcdcdc;
  padding: 55px 0 0;
}
.c-pagepost > p {
  width: 48.8%;
}
.c-pagepost a {
  position: relative;
  display: block;
  background: #3ca642;
  padding: 15px 40px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
}
.c-pagepost a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.c-pagepost a.c-pagepost__prev::after {
  left: 20px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.c-pagepost a.c-pagepost__next::after {
  right: 20px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.c-pagepost a:hover {
  opacity: .8;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .c-pagepost {
    padding: 30px 0 0;
  }
  .c-pagepost > p {
    width: 100%;
    margin: 0 0 15px;
  }
}

/* main
---------------------------------------------------------- */
/*--------------------
Top
--------------------*/
.p-top-mainimg {
  padding: 40.2% 0 0;
  margin: 0;
  background-image: url(img/mv_top_manga.jpg);
}
.p-top-mainimg-wrap .slick-prev,
.p-top-mainimg-wrap .slick-next {
  top: 42%;
  bottom: 0;
  z-index: 1;
  width: 60px;
  height: 60px;
}
.p-top-mainimg-wrap .slick-prev {
  left: 2%;
  background: url(img/slider_l.png) no-repeat;
  background-size: cover;
}
.p-top-mainimg-wrap .slick-next {
  right: 2%;
  background: url(img/slider_r.png) no-repeat;
  background-size: cover;
}
.p-top-mainimg-wrap .slick-prev:before,
.p-top-mainimg-wrap .slick-next:before {
  content: "";
}
.p-top-mainimg-wrap .slick-prev:hover,
.p-top-mainimg-wrap .slick-prev:focus {
  background: url(img/slider_l.png) no-repeat;
  background-size: cover;
}
.p-top-mainimg-wrap .slick-next:hover,
.p-top-mainimg-wrap .slick-next:focus {
  background: url(img/slider_r.png) no-repeat;
  background-size: cover;
}
.p-top-mainimg-wrap .slick-prev:hover,
.p-top-mainimg-wrap .slick-next:hover {
  opacity: .8;
}
.p-top-mainimg-wrap .slick-dots {
  bottom: 10%;
  display: none!important;
}
.p-top-wrap {
  padding: 0;
}
.p-top-wrap.c-skew-block {
  margin: -6% 0 -5%;
}
.p-top-wrap .c-contact-btn--1 {
  font-size: 20px;
}
.p-top-sec--1 {
  background: url(img/top_bg_1.png) no-repeat center center;
  background-size: contain;
  padding: 0 0 150px;
}
.p-top-head-wrap {
  margin: 0 0 80px;
  text-align: center;
  line-height: 1.3;
}
.p-top-head-wrap .c-page-mainimg-head {
  padding: .5rem 2rem;
}
.p-top-sec--1__txt {
  margin: 0 0 60px;
  line-height: 2;
}
.p-top-sec--1__box {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 90px;
}
.p-top-sec--1__box > * {
  width: 32%;
  margin: 0 2% 0 0;
}

.p-top-sec--1__box.sv {
  gap: 2%;
}
.p-top-sec--1__box.sv > * {
  width: calc((100% - 4%) / 3);
  margin: 0;
  text-align:center;
}

.p-top-sec--1__box.sv > *:nth-of-type(3n) {
  margin: 0;
}
/* 元画像のサイズ・比率が揃っていなくても、他の画像（320×200）と同じ大きさで表示する */
.p-top-sec--1__box.sv .p-top-sec--1__box__img img {
  width: 320px;
  aspect-ratio: 8 / 5;
  object-fit: cover;
}
/* 3列だと画像が窮屈になる幅から縦積みにする（767px以下の指定より手前で切り替え） */
@media screen and (max-width: 850px) {
  .p-top-sec--1__box.sv {
    gap: 15px;
  }
  .p-top-sec--1__box.sv > * {
    width: 100%;
  }
}

.p-top-sec--1__box > *:nth-of-type(3n) {
  margin: 0;
}
.p-top-sec--1__box__img {
  position: relative;
  overflow: hidden;
  display: inline-block;
  text-align: center;
}
.p-top-sec--1__box__txt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  background: rgba(0,0,0,0.7);
  color: #fff;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 0 10px;
}
.p-top-sec--1__box__txt h4 {
  font-size: 30px;
  font-weight: bold;
}
.p-top-sec--1__box__txt h4 span {
  display: block;
  font-size: 18px;
}

.p-top-sec--2 {
  background: url(img/top_bg_2.png) no-repeat center center;
  background-size: cover;
  padding: 45px 0;
}
.p-top-sec--2__box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 0 90px;
}
.p-top-sec--2__box > * {
  width: 18%;
  margin: 0 2.5% 2% 0;
}

.p-top-sec--2__box .p-talent-list__head span{
	font-size:11px;
}

.p-top-sec--2__box > *:nth-of-type(5n),
.p-top-sec--2__box > *:last-of-type {
  margin: 0;
}

.p-top-sec--3 {
  padding: 150px 0 250px;
}
.p-top-sec--3__box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 0 90px;
}
.p-top-sec--3__box > .p-archive-list__box {
  width: 23%;
  margin: 0 2% 0 0;
}
.p-top-sec--3__box > .p-archive-list__box:nth-of-type(4n),
.p-top-sec--3__box > .p-archive-list__box:last-of-type {
  margin: 0;
}
.p-top-sec--3__box .p-archive-list__thumb {
  padding: 66.9% 0 0;
}

.p-top-sec--4 {
  background: url(img/top_bg_3.png) no-repeat center center;
  background-size: cover;
  padding: 17% 0 200px;
  margin: -10% 0 0;
}
.p-top-sec--5 {
  display: flex;
  flex-wrap: wrap;
  margin: -5% 0 0;
}
.p-top-sec--5 > * {
  width: 50%;
}
.p-top-sec--5__img {
  background: url(img/top_bg_4.jpg) no-repeat center center;
  background-size: cover;
}
.p-top-sec--5__txt {
  background: #e9e9e9;
  padding: 200px 0 180px;
}
.p-top-sec--6 {
  padding: 170px 0;
}
.p-top-sec--6 a:hover {
  opacity: .8;
}
.p-top-sec--6__child {
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid 2px #d2d2d2;
  margin-bottom: 20px;
}
.p-top-sec--6__child a {
  display: block;
  padding: 35px 0;
}
.p-top-sec--1__box > .p-top-sec--6__child:nth-of-type(3n) {
  margin-bottom: 20px;
}
.p-top-sec--6 .p-top-sec--6__head {
  margin: 0 0 50px;
}

@media screen and (max-width: 999px) {
  .p-top-mainimg {
/*    margin: 0 0 -5%;*/
  }
  .p-top-wrap.c-skew-block {
/*    margin: -10% 0 -5%;*/
  }
  .p-top-mainimg-wrap .slick-prev,
  .p-top-mainimg-wrap .slick-next {
    width: 40px;
    height: 40px;
    background-size: cover;
  }
}
@media screen and (max-width: 767px) {
  .p-top-wrap.c-skew-block {
    margin: -14% 0 -5%;
  }
  .p-top-mainimg {
    padding: 133.3% 0 0; /* SP用画像の縦横比（1086×1448）に合わせる */
    /* SP専用画像を先に指定。img/mv_top_manga_sp.jpg を置けば自動で切り替わり、
       未設置の間は下のレイヤー（PC用）にフォールバックして崩れない */
    background-image: url(img/mv_top_manga_sp.jpg), url(img/mv_top_manga.jpg);
  }
  .p-top-mainimg-wrap .slick-dots {
    display: block!important;
  }
  .p-top-mainimg-wrap .slick-prev,
  .p-top-mainimg-wrap .slick-next {
    display: none!important;
  }
  .p-top-wrap {
    padding: 0 0 60px;
  }
  .p-top-head-wrap {
    margin: 0 0 40px;
  }
  .p-top-sec--1 {
    padding: 0 0 100px;
  }
  .p-top-sec--1__txt {
    margin: 0 0 50px;
    text-align: center;
  }
  .p-top-sec--1__box {
    margin: 0 0 60px;
  }
  .p-top-sec--1__box.sv {
    gap: 15px;
  }
  .p-top-sec--1__box > * {
    width: 100%;
    margin: 0 0 15px;
    text-align: center;
  }
  .p-top-sec--1__box.sv > * {
    width: 100%;
    margin: 0;
  }
  .p-top-sec--1__box.sv > *:nth-of-type(3n) {
    margin: 0;
  }
  .p-top-sec--1__box__txt h4 {
    font-size: 22px;
  }
  .p-top-sec--1__box__txt h4 span {
    font-size: 14px;
  }
  .p-top-wrap .c-contact-btn--1 {
    font-size: 16px;
  }
  .p-top-sec--2 {
    padding: 30px 0 80px;
    background: url(img/top_bg_2_sp.png) no-repeat center center;
    background-size: cover;
  }
  .p-top-sec--2__box {
    padding: 20px 0 0;
    margin: 0 0 40px;
  }
  .p-top-sec--2__box > *,
  .p-top-sec--2__box > *:last-of-type {
    width: 49%;
    margin: 0 2% 2% 0;
  }
  .p-top-sec--2__box > *:nth-of-type(5n), .p-top-sec--2__box > *:last-of-type{
	margin: 0 2% 2% 0;
}
  .p-top-sec--2__box > *:nth-of-type(2n) {
    margin: 0 0 2%;
  }
  .p-top-sec--2__box > *:nth-of-type(5n) {
    /*display: none;*/
  }
  .p-top-sec--3 {
    padding: 80px 0 60px;
  }
  .p-top-sec--3__box {
    margin: 0 0 45px;
  }
  .p-top-sec--3__box > .p-archive-list__box,
  .p-top-sec--3__box > .p-archive-list__box:nth-of-type(4n),
  .p-top-sec--3__box > .p-archive-list__box:last-of-type {
    width: 100%;
    margin: 0 0 15px;
  }
  .p-top-sec--4 {
    padding: 20% 0 60px;
    margin: -10% 0 30px;
    background: url(img/top_bg_3_sp.png) no-repeat center center;
    background-size: cover;
  }
  .p-top-sec--5 > * {
    width: 100%;
  }
  .p-top-sec--5__img {
    padding: 73.2% 0 0;
  }
  .p-top-sec--5__txt {
    padding: 70px 2% 60px;
  }
  .p-top-sec--6 {
    padding: 70px 0;
  }
  .p-top-sec--6__child {
    margin: 0 0 20px;
  }
  .p-top-sec--6 .p-top-sec--6__head {
    margin: 0 0 25px;
  }
  .p-top-sec--6 .p-top-sec--1__box {
    margin: 0 0 40px;
  }
  .p-top-sec--6 .p-top-sec--1__box > * {
    width: 32%;
    margin: 0 2% 15px 0;
    text-align: center;
  }
  .p-top-sec--6 .p-top-sec--1__box > *:nth-of-type(3n) {
    margin: 0 0 15px;
  }
  .p-top-sec--6__child a {
    padding: 20px 0;
  }
}

/*--------------------
Movie
--------------------*/
.p-movie-mainimg {
  background-image: url(img/movie_mv.jpg);
}
.p-movie-wrap {
  padding: 120px 0 100px;
}
.p-movie-list {
  display: flex;
  flex-wrap: wrap;
}
.p-movie-list li {
  width: 32%;
  margin: 0 2% 2% 0;
}
.p-movie-list li:nth-of-type(3n) {
  margin: 0 0 2%;
}
.p-movie-list li a {
  position: relative;
  display: block;
  overflow: hidden;
  text-align: center;
}
.p-movie-list-hover {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  background: rgba(0,0,0,0.7);
  color: #fff;
  bottom: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  -webkit-transition: opacity 400ms ease 0s;
  -moz-transition: opacity 400ms ease 0s;
  transition: opacity 400ms ease 0s;
}
.p-movie-list-hover:hover {
  opacity: 1;
}
.p-movie-list-hover > * {
  width: 100%;
  text-align: center;
}
.p-movie-list-hover h2 {
  font-size: 16px;
  font-weight: bold;
}
.p-movie-list-hover span {
  display: block;
  margin: 15px 0 0;
  font-size: 12px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .p-movie-wrap {
    padding: 50px 0 100px;
  }
  .p-movie-list li,
  .p-movie-list li:nth-of-type(3n) {
    width: 49%;
    margin: 0 2% 2% 0;
  }
  .p-movie-list li:nth-of-type(2n) {
    margin: 0 0 2%;
  }
}

/*--------------------
Company
--------------------*/
.p-company-mainimg {
  background-image: url(img/company_mv.jpg);
}
.p-company-wrap {
  display: flex;
  flex-wrap: wrap;
  border: solid 2px #c2131c;
  padding: 45px;
}
.p-company-wrap dt,
.p-company-wrap dd {
  padding: 20px;
  border-bottom: solid 1px #eee;
}
.p-company-wrap dt {
  width: 20%;
  font-weight: bold;
}
.p-company-wrap dd {
  width: 80%;
}
.p-company-wrap dt:last-of-type,
.p-company-wrap dd:last-of-type {
  border-bottom: none;
}
@media screen and (max-width: 767px) {
  .p-company-wrap {
    padding: 10px;
  }
  .p-company-wrap dt, .p-company-wrap dd {
    width: 100%;
    padding: 5px;
  }
  .p-company-wrap dt {
    border-bottom: none;
  }
}

/*--------------------
Service
--------------------*/
.p-service-mainimg {
  background-image: url(img/service_mv.jpg);
}
.p-service-wrap {
  padding: 150px 0;
}
.p-service-head {
  margin: 0 0 1em;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  line-height: 2;
}
.p-service-head p {
  font-weight: bold;
  margin: 0 0 15px;
}
.p-service-box {
  margin: 60px 0 0;
}
.p-service-box--inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 45px 0 0;
}
.p-service-box--img {
  width: 32%;
}
.p-service-box--txt {
  width: 64%;
}
.p-service-box--head {
  margin: 0 0 0.5em;
  font-size: 26px;
  font-weight: bold;
}
.p-service-box--btn {
  margin: 24px 0 0;
}
.p-service-btn {
  display: inline-block;
  padding: 12px 28px;
  background-color: #333;
  border: 1px solid #333;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}
.p-service-btn:hover {
  background-color: #fff;
  border-color: #333;
  color: #333;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-service-wrap {
    padding: 70px 0 120px;
  }
  .p-service-head {
    font-size: 18px;
  }
  .p-service-box--img {
    width: 100%;
    order: 2;
    text-align: center;
  }
  .p-service-box--txt {
    width: 100%;
    order: 1;
    margin: 0 0 15px;
  }
  .p-service-box--head {
    font-size: 17px;
  }
  .p-service-btn {
    display: block;
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
    padding: 14px 20px;
    font-size: 15px;
  }
}

/*--------------------
Contact
--------------------*/
.p-contact-mainimg {
  background-image: url(img/contact_mv.jpg);
}

.p-kabukitabi-mainimg {
  background-image: url(img/kabukitabi-min.png);
}

@media screen and (max-width:660px) {

.p-kabukitabi-mainimg {
  background-image: url(img/kabukitabi_s-min.png);
}

/* .p-top-mainimg は SP 用の縦比率 padding（128.6%）を維持するため除外 */
.c-page-mainimg:not(.p-top-mainimg) {
    padding: 100px 0 170px;
    margin-top:0;
}


}
.p-contact-wrap {
  padding: 130px 0;
}
@media screen and (max-width: 767px) {
  .p-contact-wrap {
    padding: 70px 0 120px;
  }
}

/*--------------------
Privacy
--------------------*/
.p-privacy-mainimg {
  background-image: url(img/plivacy-policy_mv.jpg);
}
.p-privacy-wrap {
  padding: 130px 0;
}
.p-privacy-phase {
  margin: 0 0 2em;
}

@media screen and (max-width: 767px) {
  .p-privacy-wrap {
    padding: 70px 0 110px;
  }
}

/*--------------------
Archive
--------------------*/
.p-archive-mainimg {
  background-image: url(img/activity-report_mv.jpg);
}
.p-archive-list {
  display: flex;
  flex-wrap: wrap;
}
.p-archive-list__box {
  display: block;
  width: 32%;
  margin: 0 2% 2% 0;
  border: solid 3px #c2131c;
  color: #121212;
}
.p-archive-list__box:hover {
  text-decoration: none;
  opacity: .8;
}
.p-archive-list .p-archive-list__box:nth-of-type(3n) {
  margin: 0 0 2%;
}
.p-archive-list__thumb {
  padding: 53.1% 0 0;
  border-bottom: solid 1px #eee;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.p-archive-list__txt {
  padding: 15px 25px;
  background: #fff;
}
.p-archive-list__head {
  margin: 0 0 10px;
  font-weight: bold;
}
.p-archive-list__excerpt {
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .p-archive-list__box,
  .p-archive-list .p-archive-list__box:nth-of-type(3n) {
    width: 100%;
    margin: 0 0 15px;
  }
  .p-archive-list__txt {
    padding: 10px 15px;
  }
}


/*--------------------
Single
--------------------*/
.p-single-block {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.p-single-entry {
  width: 68.9%;
}
.p-single-aside {
  width: 25.1%;
}
.p-single-date {
  margin: 0 0 5px;
  font-size: 14px;
  color: #aaa;
}
.p-single-head {
  margin: 0 0 35px;
  font-size: 38px;
  font-weight: bold;
}
.p-single-thumb {
  text-align: center;
  margin: 0 0 30px;
}
.p-single-thumb img {
  height: auto;
}
.p-single-aside__talent {
  border: solid 3px #c2131c;
}
.p-single-aside__head {
  background: #c2131c;
  padding: .5em .8em;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
}
.p-single-aside__list li a {
  display: block;
  padding: .5em 2em;
  border-bottom: dashed 2px #dcdcdc;
  color: #121212;
}
.p-single-aside__list li:last-of-type a {
  border-bottom: none;
}

.p-single-wrap .slick-slide img {
  margin: 0 auto;
  height: auto;
}
.p-single-wrap .slick-prev,
.p-single-wrap .slick-next {
  top: 0;
  bottom: 0;
  z-index: 10000;
  margin: auto;
  width: 35px;
  height: 35px;
}
.p-single-wrap .slick-prev {
  left: 0;
}
.p-single-wrap .slick-next {
  right: 0;
}
.p-single-wrap .slick-prev:before,
.p-single-wrap .slick-next:before {
  color: #333;
  font-size: 35px;
}

@media screen and (max-width: 767px) {
  .p-single-entry {
    width: 100%;
    margin: 0 0 50px;
  }
  .p-single-aside {
    width: 100%;
  }
  .p-single-aside__list li a {
    padding: .5em 1em;
  }
}

/*--------------------
Talent
--------------------*/

.slick-slider .slick-track, .slick-slider .slick-list{
	-webkit-transform:none!important;
	transform:none!important;
}

.p-talent-mainimg {
  background-image: url(img/talent_mv.jpg);
}
.p-talent-sec {
  margin: 0 0 90px;
}
.p-talent-thumb {
  text-align: center;
}
.p-talent-thumb img {
  width: auto;
  height: auto;
}
.p-talent-2col {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
.p-talent-2col > * {
  width: 49%;
  margin: 0 0 2%;
}
.p-talent-2col > .p-talent-thumb,
.p-talent-2col > .p-talent-profile {
  width: 46%;
}
.p-talent-4col {
  display: flex;
  flex-wrap: wrap;
}
.p-talent-4col > * {
  width: 23%;
  margin: 0 2% 2% 0;
}
.p-talent-4col > *:nth-of-type(4n) {
  margin: 0 0 2%;
}
.p-talent-head {
  margin: 0 0 35px;
  color: #c2131c;
  font-family: "HelveticaNeue-CondensedBold", Helvetica Neue, "YuGothic Medium", YuGothic, "游ゴシック Medium", "ヒラギノ角ゴPro W3", "游ゴシック体", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Verdana, sans-serif;
  font-weight: bold;
  font-size: 34px;
  line-height: 1.5;
  letter-spacing: .1em;
}
.p-talent-head span {
  display: block;
  color: #121212;
  font-size: 16px;
}
.p-talent-head--2 {
  border-bottom: solid 1px #c2131c;
  margin: 0 0 10px;
  padding: 0 0 5px 10px;
  font-size: 18px;
  font-weight: bold;
}
.p-talent-info {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.p-talent-info dt,
.p-talent-info dd {
  margin: 0 0 10px;
}
.p-talent-info dt {
  width: 27%;
  font-weight: bold;
}
.p-talent-info dd {
  width: 71%;
}
.p-talent-info__btn {
  margin: 45px 0 0;
}

.p-talent-box {
  margin: 0 0 30px;
}
.p-talent-info__btn .c-contact-btn--1 {
  padding: 25px;
}

.p-talent-sec table.c-border-none {
  border: none;
}
.p-talent-sec table.c-border-none th,
.p-talent-sec table.c-border-none td {
  padding: 5px 10px;
  border: none;
}


@media screen and (max-width: 999px) {
  .p-talent-2col > * {
    width: 100%;
  }
  .p-talent-4col > *,
  .p-talent-4col > *:nth-of-type(4n) {
    width: 49%;
    margin: 0 2% 2% 0;
  }
  .p-talent-4col > *:nth-of-type(2n) {
    margin: 0 0 2%;
  }
}

@media screen and (max-width: 767px) {
  .p-talent-sec {
    margin: 0 0 45px;
  }
  .p-talent-2col > .p-talent-thumb,
  .p-talent-2col > .p-talent-profile {
    width: 100%;
  }
  .p-talent-head {
    font-size: 26px;
    margin: 0 0 20px;
  }
}

.p-talent-coming-soon {
  padding: 80px 0;
  font-size: 32px;
  font-weight: bold;
  letter-spacing: 0.15em;
  color: #333;
}
@media screen and (max-width: 767px) {
  .p-talent-coming-soon {
    padding: 50px 0;
    font-size: 24px;
  }
}

.p-talent-list-wrap {
  margin: 0 0 30px;
}
.p-talent-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 800px;
  margin: 0 auto;
}
.p-talent-list > * {
  width: 23%;
  margin: 0 2% 2% 0;
}
.p-talent-list > *:nth-of-type(4n),
.p-talent-list > *:last-of-type {
  margin: 0 0 2%;
}
a.p-talent-list__box {
  text-align: center;
  color: #333;
}
a.p-talent-list__box:hover {
  text-decoration: none;
  opacity: .8;
}
.p-talent-list__thumb {
  padding: 133.3% 0 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.p-talent-list__head {
  font-size: 18px;
  line-height: 1.3;
}
.p-talent-list__head span {
  font-size: 14px;
}

@media screen and (max-width: 799px) {
  .p-talent-list {
    width: 100%;
    justify-content: space-between;
  }
  .p-talent-list > * {
    width: 49%;
    margin: 0 0 2%;
  }
}

/*
error-404
---------------------------------------------------------- */
.error-404{

}
.error-404 .page-content{
  margin:100px auto;
  text-align: center;
}
.error-404 .page-content .backhome{
  text-align: center;
}
.error-404 .page-content .backhome a{
  border:1px solid #000;
  padding:1em 7em;
  display: inline-block;
  margin: 6em auto;
  color: #000;
}
/* utility
---------------------------------------------------------- */
.u-width-full {
  width: 100%;
}
.u-ta--c {
  text-align: center;
}
.u-mb--0 {
  margin-bottom: 0;
}
/* 視覚的には隠しつつ、検索エンジン・スクリーンリーダーには読ませる
   （display:none や visibility:hidden だと読み上げからも消えるため使わない） */
.u-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.u-sp-none {
  display: none;
}
.u-pc-none {
  display: block;
}
@media screen and (max-width: 767px) {
  .u-sp-none {
    display: block;
  }
  .u-pc-none {
    display: none;
  }
}





/*--kabukitabi 2020-01-22 customized--*/

@charset "UTF-8";
.p-kabukitabi-head {
  background: url("kabukitabi-img/header.jpg") center bottom no-repeat;
  height: 960px;
  position: relative;
}

.p-kabukitabi-head .p-kabukitabi-main {
  background: url("kabukitabi-img/kabuki.png") top repeat-x;
}

.p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-subtitile {
  display: block;
  text-align: center;
  padding-top: 80px;
}

.p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-titile {
  display: block;
  text-align: center;
  margin-top: -16px;
}

.p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-recruit {
  position: absolute;
  width: 300px;
  top: 310px;
  right: calc( ( 100% - 1100px ) / 2 );
  z-index: 2;
}

.p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-img {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 20px;
  width: 1000px;
  margin: auto;
  z-index: 1;
}

@media screen and (max-width: 999px) {
  .p-kabukitabi-head {
    height: auto;
    background: url("kabukitabi-img/header-m.jpg") center top no-repeat;
  }
  .p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-titile {
    margin-top: -5px;
  }
  .p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-recruit {
    display: block;
    position: relative;
    max-width: 50%;
    width: 300px;
    top: 0;
    right: 0;
    margin-left: auto;
  }
  .p-kabukitabi-head .p-kabukitabi-main .p-kabukitabi-img {
    width: auto;
    position: relative;
    right: 0;
  }
}

.p-kabukitabi-lead {
  background: #000;
  color: #fff;
  padding: 20px 0;
}

.p-kabukitabi-lead p {
  width: 1000px;
  margin: auto;
  font-size: 1.5rem;
  line-height: 1.7;
  font-family: serif;
}

@media screen and (max-width: 999px) {
  .p-kabukitabi-lead p {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
    font-size: 1rem;
  }
}

.p-kabukitabi-topics {
  background: url("kabukitabi-img/asanoha.jpg") center top no-repeat;
  padding: 40px 0px 100px;
  margin-bottom: 60px;
}

.p-kabukitabi-topics .p-kabukitabi-topics-frame {
  box-sizing: border-box;
  width: 1000px;
  margin: 0 auto;
  background: url("kabukitabi-img/paper.jpg") repeat;
  border: solid 10px #292f87;
  padding: 40px 200px;
}

.p-kabukitabi-topics .p-kabukitabi-topics-frame h3 {
  font-size: 2rem;
  line-height: 1.5;
  font-family: serif;
  border-bottom: solid 1px #333;
  text-align: center;
}

.p-kabukitabi-topics .p-kabukitabi-topics-frame h3:before,
.p-kabukitabi-topics .p-kabukitabi-topics-frame h3:after {
  content: '';
  display: inline-block;
  margin-right: 10px;
  margin-left: 10px;
  width: 25px;
  height: 25px;
  background: url("kabukitabi-img/kikko.png") center bottom/contain no-repeat;
}

.p-kabukitabi-topics .p-kabukitabi-topics-frame ul {
  margin: 20px 0;
  font-size: 1.1rem;
  text-align: center;
}

@media screen and (max-width: 999px) {
  .p-kabukitabi-topics {
    margin-bottom: 25px;
    padding-bottom: 80px;
  }
  .p-kabukitabi-topics .p-kabukitabi-topics-frame {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
    padding: 1em;
  }
  .p-kabukitabi-topics .p-kabukitabi-topics-frame h3 {
    font-size: 1.6rem;
  }
  .p-kabukitabi-topics .p-kabukitabi-topics-frame h3:before,
  .p-kabukitabi-topics .p-kabukitabi-topics-frame h3:after {
    content: '';
    display: inline-block;
    margin-right: 10px;
    margin-left: 10px;
    width: 18px;
    height: 18px;
    background: url("kabukitabi-img/kikko.png") center bottom/contain no-repeat;
  }
  .p-kabukitabi-topics .p-kabukitabi-topics-frame ul {
    font-size: 1rem;
  }
}

.p-kabukitabi-outline {
  border-bottom: solid 10px #43b141;
  background: url("kabukitabi-img/outline.jpg") center no-repeat #fff;
  margin: -5% 0;
}

.p-kabukitabi-outline h3 {
  background: url("kabukitabi-img/tile.png") repeat;
  font-size: 2rem;
  text-align: center;
  color: #fff;
  border-radius: 2rem;
  margin-bottom: 30px;
}

.p-kabukitabi-outline .p-kabukitabi-outline-table {
  box-sizing: border-box;
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 60px;
  box-shadow: 0 0 0 5px #fff;
}

.p-kabukitabi-outline .p-kabukitabi-outline-table th, .p-kabukitabi-outline .p-kabukitabi-outline-table td {
  padding: 1em;
  border: solid 1px #ffb1d0;
}

.p-kabukitabi-outline .p-kabukitabi-outline-table th {
  background: #ffd8e8;
  color: #4d353e;
  width: 25%;
  font-weight: bold;
}

.p-kabukitabi-outline .p-kabukitabi-outline-table td h4 {
  font-weight: bold;
}

.p-kabukitabi-outline .p-kabukitabi-outline-table td h4:before {
  content: '・';
}

.p-kabukitabi-outline .p-kabukitabi-outline-table td p + h4 {
  margin-top: 1em;
}

.p-kabukitabi-outline .p-kabukitabi-outline-table td ul {
  padding-left: 1em;
  list-style: disc;
}

@media screen and (max-width: 999px) {
  .p-kabukitabi-outline h3 {
    font-size: 1.6rem;
  }
  .p-kabukitabi-outline .p-kabukitabi-outline-table {
    margin-bottom: 90px;
  }
  .p-kabukitabi-outline .p-kabukitabi-outline-table tbody, .p-kabukitabi-outline .p-kabukitabi-outline-table th, .p-kabukitabi-outline .p-kabukitabi-outline-table td {
    display: block;
  }
  .p-kabukitabi-outline .p-kabukitabi-outline-table th {
    width: 100%;
    border-bottom: none;
  }
}

/*--hirameki_pocket 2020-08-24 customized--*/


h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  font-weight: normal;
}

/* Privacy / 一般事業主行動計画 — 見出し（リセット後に定義） */
.p-privacy-wrap h2.p-privacy-head {
  border-left: solid 5px #c2131c;
  padding: 0 0 0 0.7em;
  margin: 0 0 1em;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.p-privacy-wrap h3.p-privacy-subhead {
  background: #f5f5f5;
  border-bottom: solid 2px #c2131c;
  padding: 0.6em 0.8em;
  margin: 2.5em 0 1em;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}
.p-privacy-wrap h2.p-privacy-head + h3.p-privacy-subhead {
  margin-top: 2em;
}

@media screen and (max-width: 767px) {
  .p-privacy-wrap h2.p-privacy-head {
    font-size: 16px;
  }
  .p-privacy-wrap h3.p-privacy-subhead {
    font-size: 14px;
  }
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  font-size: 1em;
  font-weight: normal;
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

body {
  position: relative;
  font-family: sans-serif;
/*  border-top: solid 5px #00157F;*/
/*  padding: 106px 0 0;*/
padding-left:0;
padding-right:0;
}

body * {
  box-sizing: border-box;
}

body img {
  max-width: 100%;
}

a {
  color: #FF6E1D;
  text-decoration: none;
  transition: 0.4s;
}

a:hover {
  color: #cc0000;
}

a:hover img {
  opacity: 0.8;
}

#catch {
  position: relative;
}

.wt-main {
  display: block;
  transform: skew(0deg, -5deg);
  background: #fff;
  border-bottom: solid 10px #43b141;
  margin: 0 0 -5%;
}

.wt-main h2:not([class]) {
  background: #000;
  color: #fff;
  font-size: 2rem;
  text-align: center;
  position: relative;
  padding: 10px 0;
  margin-bottom: 50px;
}

.wt-main h2:not([class]):after {
  content: '';
  display: block;
  border-top: 30px solid #000;
  border-right: 30px solid transparent;
  border-left: 30px solid transparent;
  position: absolute;
  width: 1px;
  height: 1px;
  bottom: -30px;
  right: 0;
  left: 0;
  margin: auto;
}

.wt-main p + p {
  margin-top: 1em;
}

.wt-main > div {
  transform: skew(0deg, 5deg);
}

#goTop {
  position: fixed;
  bottom: 10px;
  right: 10px;
}

footer .copyright {
  background: #00157F;
  color: #fff;
  font-size: 0.875rem;
  text-align: center;
}

.wt-catch {
  background: url("lp-img/wt-catch.jpg") center no-repeat;
  height: 575px;
}

.wt-catch > div {
  width: 1200px;
  margin: auto;
  padding: 40px 500px 20px 20px;
}

@media (max-width: 1200px) {
  .wt-catch > div {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-catch .wt-catch-caption {
  color: #00157F;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 40px 0 120px;
}

.wt-catch .wt-btn a {
  border: solid 1px #fff;
  box-shadow: 0 0 4px #fff inset;
  width: 100%;
}

@media (max-width: 1200px) {
  .wt-catch > div {
    padding-right: calc( -700px + 100vw);
  }
}

@media (max-width: 768px) {
  .wt-catch {
    background: url("lp-img/wt-catch_sp.jpg") center top no-repeat;
    height: auto;
    padding: 360px 0 20px;
  }
  .wt-catch > div {
    padding: 20px;
    margin: 0;
    background: rgba(255, 255, 255, 0.7);
  }
  .wt-catch .wt-catch-caption {
    font-size: 1.25rem;
  }
  .wt-catch .wt-catch-caption br {
    display: none;
  }
  .wt-catch .wt-catch-caption {
    margin: 20px 0;
  }
}

.wt-btn {
  text-align: center;
}

.wt-btn a {
  display: inline-block;
  background: #00157F;
  color: #fff;
  border-radius: 6px;
  width: 50vw;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 15px;
  text-decoration: none;
}

.wt-btn a:hover {
  opacity: 0.8;
}

@media (max-width: 568px) {
  .wt-btn a {
    width: 80vw;
  }
}

.wt-main
.wt-sec1 {
  background: url("lp-img/wt-note.png") repeat;
}

.wt-main
.wt-sec1 .wt-sec1-list {
  width: 1200px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec1 .wt-sec1-list {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec1 .wt-sec1-list li {
  width: calc( 50% - 10px);
  font-size: 1.25rem;
  line-height: 2.5;
}

.wt-main
.wt-sec1 .wt-sec1-list li:before {
  content: '';
  display: inline-block;
  background: url("lp-img/wt-check.svg") left center/contain no-repeat;
  width: 30px;
  height: 30px;
  vertical-align: middle;
  margin-right: 10px;
}

.wt-main
.wt-sec1 .wt-sec1-list li:nth-child(2n - 1) {
  margin-right: 20px;
}

.wt-main
.wt-sec1 .introduce {
  background: url("lp-img/wt-introduce.jpg") center no-repeat #fff;
  padding: 60px 0;
}

.wt-main
.wt-sec1 .introduce p {
  width: 1200px;
  margin: auto;
  padding-left: 400px;
  font-size: 1.5rem;
  line-height: 2.3;
}

.wt-main
.wt-sec1 .introduce strong {
  font-weight: bold;
  border-bottom: solid 2px red;
}

.wt-main
.wt-sec1 .introduce span {
  margin-left: 4em;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec1 .introduce {
    background-position: -110px -120px;
  }
  .wt-main
.wt-sec1 .introduce p {
    width: auto;
    padding: 0 10px 0 240px;
  }
}

@media (max-width: 999px) {
  .wt-main
.wt-sec1 .wt-sec1-list {
    flex-direction: column;
  }
  .wt-main
.wt-sec1 .wt-sec1-list li {
    width: auto;
  }
}

@media (max-width: 568px) {
  .wt-main
.wt-sec1 .wt-sec1-list li {
    font-size: 1.125rem;
    text-indent: calc( ( -1 * 30px ) - 0.5em);
    padding-left: calc( 30px + 0.5em);
    line-height: 1.5;
    margin-bottom: 1em;
  }
  .wt-main
.wt-sec1 .introduce {
    padding: 250px 0 20px;
  }
  .wt-main
.wt-sec1 .introduce p {
    background: rgba(255, 255, 255, 0.7);
    width: auto;
    padding: 20px;
    font-size: 1.125rem;
  }
  .wt-main
.wt-sec1 .introduce p br {
    display: none;
  }
  .wt-main
.wt-sec1 .introduce span {
    display: block;
    margin: 1em auto 0;
    text-align: center;
    font-size: 1.25rem;
  }
}

.wt-main
.wt-sec2 {
  margin-bottom: 50px;
}

.wt-main
.wt-sec2 h2 {
  background: linear-gradient(90deg, #fff 0%, #FB8D1A 25%, #FB8D1A 75%, #fff 100%);
  font-size: 1.5rem;
  margin-bottom: 0;
}

.wt-main
.wt-sec2 h2:after {
  display: none;
}

.wt-main
.wt-sec2 h2 strong {
  font-size: 125%;
}

@media (max-width: 568px) {
  .wt-main
.wt-sec2 h2 {
    background: #FB8D1A;
    padding: 10px;
    font-size: 1.25rem;
  }
  .wt-main
.wt-sec2 h2 br {
    display: none;
  }
}

.wt-main
.wt-sec2 .wt-sec2-lead {
  width: 1200px;
  margin: auto;
  background: url("lp-img/wt-bn.jpg") 30px center/180px no-repeat;
  font-size: 1.5rem;
  line-height: 1.8;
  padding: 60px 0 60px 220px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec2 .wt-sec2-lead {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

@media (max-width: 568px) {
  .wt-main
.wt-sec2 .wt-sec2-lead {
    background-position: top center;
    padding: 160px 0 60px;
    text-align: center;
  }
}

.wt-main
.wt-sec2 .wt-sec2-list {
  width: 1200px;
  margin: auto;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec2 .wt-sec2-list {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec2 .wt-sec2-list > li {
  margin-bottom: 20px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  padding: 20px;
  display: flex;
  align-items: center;
}

.wt-main
.wt-sec2 .wt-sec2-list > li > div:nth-child(1) {
  flex-shrink: 0;
  width: 150px;
  margin-right: 20px;
}

@media (max-width: 568px) {
  .wt-main
.wt-sec2 .wt-sec2-list > li {
    flex-direction: column;
    align-items: center;
  }
  .wt-main
.wt-sec2 .wt-sec2-list > li > div:nth-child(1) {
    margin: auto;
  }
}

.wt-main
.wt-sec2 .wt-sec2-list h3 {
  color: #00157F;
}

.wt-main
.wt-sec3 {
  background: url("lp-img/wt-profile.jpg") center/cover no-repeat #6f5f35;
  padding-bottom: 40px;
}

.wt-main
.wt-sec3 .wt-sec3-box {
  width: 1200px;
  margin: auto;
  display: flex;
  align-items: center;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec3 .wt-sec3-box {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec3 .wt-sec3-box > div:nth-child(1) {
  flex-shrink: 0;
  margin-right: 100px;
}

.wt-main
.wt-sec3 .wt-sec3-box > div:nth-child(1) p {
  margin-bottom: 20px;
  text-align: center;
  color: #ff0;
  font-size: 1.25rem;
}

.wt-main
.wt-sec3 .wt-sec3-box > div:nth-child(2) p, .wt-main
.wt-sec3 .wt-sec3-box > div:nth-child(2) h3 {
  color: #fff;
}

.wt-main
.wt-sec3 .wt-sec3-box > div:nth-child(2) h3 {
  font-family: serif;
  font-size: 1.75rem;
  margin-bottom: 20px;
}

@media (max-width: 768px) {
  .wt-main
.wt-sec3 .wt-sec3-box {
    flex-direction: column-reverse;
    align-items: center;
  }
  .wt-main
.wt-sec3 .wt-sec3-box > div:nth-child(1) {
    margin: 30px auto 0;
    text-align: center;
  }
}

.wt-main
.wt-sec3 .wt-sec3-writings {
  width: 1200px;
  margin: auto;
  background: rgba(255, 255, 255, 0.5);
  padding: 30px;
  margin-top: 40px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec3 .wt-sec3-writings {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec3 .wt-sec3-writings h3 {
  text-align: center;
  font-size: 1.25rem;
  font-weight: bold;
  color: #00157F;
  margin-bottom: 40px;
}

.wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list > li {
  display: flex;
  width: calc( 50% - 15px);
  margin-bottom: 20px;
}

.wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list > li img {
  max-width: 100px;
  margin-right: 20px;
}

.wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list > li h4 {
  font-weight: bold;
  margin-bottom: 10px;
}

.wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list > li:nth-child(2n - 1) {
  margin-right: 30px;
}

@media (max-width: 768px) {
  .wt-main
.wt-sec3 .wt-sec3-writings {
    padding: 30px 10px 10px;
  }
  .wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list {
    flex-direction: column;
  }
  .wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list > li {
    width: auto;
  }
}

@media (max-width: 480px) {
  .wt-main
.wt-sec3 .wt-sec3-writings .wt-sec3-writings-list > li {
    align-items: center;
  }
}

@media (max-width: 768px) {
  .wt-main
.wt-sec3 {
    background-image: none;
  }
}

.wt-main
.wt-sec4 {
  padding-bottom: 60px;
  background: url("lp-img/wt-message.jpg") right bottom no-repeat;
}

.wt-main
.wt-sec4 .wt-sec4-box {
  width: 1000px;
  margin: auto;
  padding-top: 10px;
  font-family: serif;
}

@media (max-width: 1000px) {
  .wt-main
.wt-sec4 .wt-sec4-box {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec4 .wt-sec4-box p {
  padding-right: 40px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec4 {
    background-image: none;
  }
  .wt-main
.wt-sec4 .wt-sec4-box p {
    padding: 0;
  }
}

.wt-main
.wt-sec5 {
  padding-bottom: 40px;
}

.wt-main
.wt-sec5 .wt-sec5-table {
  width: 1000px;
  margin: auto;
  width: 1000px;
  margin: 60px auto 20px;
}

@media (max-width: 1000px) {
  .wt-main
.wt-sec5 .wt-sec5-table {
    width: auto;
    margin-right: auto;
    margin-left: auto;
  }
}

.wt-main
.wt-sec5 .wt-sec5-table th, .wt-main
.wt-sec5 .wt-sec5-table td {
  padding: 5px 10px;
  width: 50%;
  text-align: center;
  border: solid 1px #193C86;
}

.wt-main
.wt-sec5 .wt-sec5-table th {
  background: #e8ecf3;
  color: #193C86;
  font-weight: bold;
}

.wt-main
.wt-sec5 .wt-sec5-table th:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 0.5em;
  content: "";
  color: #c00;
}

.wt-main
.wt-sec5 .wt-sec5-fee {
  text-align: center;
  font-family: serif;
  font-size: 1.25rem;
}

.wt-main
.wt-sec5 .wt-sec5-fee span {
  font-size: 150%;
  font-weight: bold;
  color: #c00;
}

@media (max-width: 1000px) {
  .wt-main
.wt-sec5 .wt-sec5-table {
    width: calc( 100% - 20px);
  }
}

@media (max-width: 568px) {
  .wt-main
.wt-sec5 .wt-sec5-table tbody, .wt-main
.wt-sec5 .wt-sec5-table tr, .wt-main
.wt-sec5 .wt-sec5-table th, .wt-main
.wt-sec5 .wt-sec5-table td {
    display: block;
    width: 100%;
  }
  .wt-main
.wt-sec5 .wt-sec5-table td {
    border-top: none;
  }
  .wt-main
.wt-sec5 .wt-sec5-table tr:nth-child(n + 2) th {
    border-top: none;
  }
}

.wt-main
.wt-sec6 {
  margin-bottom: 30px;
}

.wt-main
.wt-sec6 .wt-sec6-flow {
  width: 1000px;
  margin: auto;
  overflow: hidden;
}

@media (max-width: 1000px) {
  .wt-main
.wt-sec6 .wt-sec6-flow {
    width: auto;
    margin-right: 0;
    margin-left: 0;
  }
}

.wt-main
.wt-sec6 .wt-sec6-flow li {
  margin-bottom: 30px;
  position: relative;
  padding: 20px 0 20px;
  display: flex;
  background: #fff;
}

.wt-main
.wt-sec6 .wt-sec6-flow li img {
  border: solid 1px #ccc;
}

.wt-main
.wt-sec6 .wt-sec6-flow li h3 {
  color: #00157F;
  font-size: 1.25rem;
}

.wt-main
.wt-sec6 .wt-sec6-flow li > div:nth-child(1) {
  flex-shrink: 0;
  margin-right: 20px;
}

@media (max-width: 568px) {
  .wt-main
.wt-sec6 .wt-sec6-flow li {
    flex-direction: column;
  }
  .wt-main
.wt-sec6 .wt-sec6-flow li > div:nth-child(1) {
    margin: 0 0 20px 0;
  }
}

.wt-main
.wt-sec6 .wt-sec6-flow li:not(:last-child):after,
.wt-main
.wt-sec6 .wt-sec6-flow li:not(:last-child):before {
  content: '';
  position: absolute;
  width: 1px;
  height: 1px;
  bottom: 20px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: -1;
  border-top: 10px solid #fff;
}

.wt-main
.wt-sec6 .wt-sec6-flow li:not(:last-child):before {
  box-shadow: -200px 30px 20px rgba(0, 0, 0, 0.4);
  border-left: 400px solid transparent;
  transform: skewY(3deg);
}

.wt-main
.wt-sec6 .wt-sec6-flow li:not(:last-child):after {
  border-right: 400px solid transparent;
  box-shadow: 200px 30px 20px rgba(0, 0, 0, 0.4);
  transform: skewY(-3deg);
}

.wt-main
.wt-sec6 .wt-sec6-flow li:not(:last-child) > div:nth-child(1):before {
  content: '';
  display: block;
  border-top: 20px solid #fff;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
  position: absolute;
  width: 1px;
  height: 1px;
  bottom: -20px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 2;
}

@media (max-width: 568px) {
  .wt-main
.wt-sec6 .wt-sec6-flow li {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.wt-main
.wt-sec7 {
  background: url("lp-img/wt-faq.jpg") center/cover no-repeat;
  position: relative;
  padding-bottom: 30px;
}

.wt-main
.wt-sec7 h3 {
  background: linear-gradient(90deg, #fff 0%, #FB8D1A 25%, #FB8D1A 75%, #fff 100%);
  font-size: 1.5rem;
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  padding: 10px;
}

.wt-main
.wt-sec7 h3:after {
  display: none;
}

.wt-main
.wt-sec7 .wt-sec7-list {
  width: 1200px;
  margin: auto;
  background: rgba(255, 255, 255, 0.9);
  padding: 30px 80px;
  margin-top: 30px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec7 .wt-sec7-list {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec7 .wt-sec7-list > li + li {
  margin-top: 30px;
}

.wt-main
.wt-sec7 .wt-sec7-list h4 {
  color: #00157F;
  font-size: 1.125rem;
  border-bottom: solid 1px #00157F;
  margin-bottom: 10px;
}

@media (max-width: 568px) {
  .wt-main
.wt-sec7 h3 {
    background: #FB8D1A;
  }
  .wt-main
.wt-sec7 .wt-sec7-list {
    padding: 30px;
  }
}

.wt-main
.wt-sec8 {
  width: 1200px;
  margin: auto;
  margin-top: 40px;
  margin-bottom: 40px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec8 {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec8 h3 {
  color: #00157F;
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 10px;
}

.wt-main
.wt-sec8 .wt-sec8-list li {
  margin-bottom: 1em;
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.wt-main
.wt-sec8 .wt-sec8-list li:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 0.5em;
  content: "";
}

.wt-main
.wt-sec8 .wt-btn {
  margin: 60px 0;
}

.wt-main
.wt-sec8 .wt-form {
  text-align: center;
  font-size: 1.25rem;
}

.wt-main
.wt-sec8 .wt-form a {
  text-decoration: underline;
}

.wt-main
.wt-sec9 {
  width: 1200px;
  margin: auto;
  padding-bottom: 70px;
}

@media (max-width: 1200px) {
  .wt-main
.wt-sec9 {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.wt-main
.wt-sec9 h3 {
  background: url("lp-img/wt-prof1.png") left center/100px no-repeat;
  padding: 50px 0 50px 120px;
  font-size: 1.5rem;
  font-weight: bold;
}

.wt-column {
  padding: 20px;
  border: dotted 1px #ccc;
}

/*--pitching Labo 2020-08-29 customized--*/

.st-main {
  display: block;
  transform: skew(0deg, -5deg);
  background: #fff;
  border-bottom: solid 10px #43b141;
  margin: 0 0 -5%;
}

.st-main h2:not([class]) {
  background: #193C86;
  color: #fff;
  font-family: "Yu Mincho Regular", "Yu Mincho", "YuMincho Medium", serif;
  font-size: 2rem;
  text-align: center;
  position: relative;
  padding: 10px 0;
  margin-bottom: 50px;
}

.st-main h2:not([class]):before {
  content: '';
  display: inline-block;
  background: url("lp-img/pitch.svg") center top/cover no-repeat;
  width: 50px;
  height: 50px;
  margin-right: 10px;
  vertical-align: middle;
}

@media (max-width: 568px) {
  .st-main h2:not([class]):before {
    display: none;
  }
}

.st-main h2:not([class]):after {
  content: '';
  display: block;
  border-top: 30px solid #193C86;
  border-right: 30px solid transparent;
  border-left: 30px solid transparent;
  position: absolute;
  width: 1px;
  height: 1px;
  bottom: -30px;
  right: 0;
  left: 0;
  margin: auto;
}

.st-main p + p {
  margin-top: 1em;
}

.st-main > div {
  transform: skew(0deg, 5deg);
}

#goTop {
  position: fixed;
  bottom: 10px;
  right: 10px;
}

footer .copyright {
  background: #193C86;
  color: #fff;
  font-size: 0.875rem;
  text-align: center;
}

.st-catch {
  background: url("lp-img/st-catch.jpg") center/cover no-repeat;
  overflow: hidden;
}

.st-catch .st-catch-box {
  width: 1200px;
  margin: auto;
  position: relative;
  height: 680px;
}

@media (max-width: 1200px) {
  .st-catch .st-catch-box {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-catch .st-catch-img {
  margin-left: -60px;
}

.st-catch .st-catch-img > img {
  display: block;
  transform: rotate(-5deg);
  border: solid 15px #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.st-catch .st-catch-img .st-catch-img-writings {
  position: absolute;
  z-index: 1;
  bottom: 20px;
  left: 40px;
  display: flex;
  align-items: flex-end;
}

.st-catch .st-catch-img .st-catch-img-writings img {
  width: 200px;
}

.st-catch .st-catch-img .st-catch-img-writings p {
  background: #fff;
  font-size: 0.9375rem;
  font-weight: bold;
  padding: 0 10px;
  margin-left: 20px;
}

.st-catch .st-catch-description {
  position: absolute;
  top: 30px;
  right: 0;
  padding-bottom: 20px;
  max-width: 640px;
}

.st-catch .st-catch-description .st-catch-title {
  background: url("lp-img/st-board.jpg") center/contain;
  padding: 30px;
  margin: 30px 0;
}

.st-catch .st-catch-description .st-catch-title p {
  font-size: 1.5rem;
  font-weight: bold;
/*  color: #ff0;*/
  color:#fff;
  margin-top: 20px;
}

.st-catch .st-btn a {
  border: solid 1px #fff;
  box-shadow: 0 0 4px #fff inset;
  width: 100%;
}

@media (max-width: 999px) {
  .st-catch .st-catch-box {
    height: auto;
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
  }
  .st-catch .st-catch-img {
    margin: 20px 0;
  }
  .st-catch .st-catch-description {
    position: relative;
    top: 0;
  }
}

@media (max-width: 568px) {
  .st-catch .st-catch-img .st-catch-img-writings {
    position: relative;
    left: 0;
    top: -30px;
  }
}

.st-list-normal {
  padding-left: 1em;
  list-style: disc inside;
  margin: 1em 0;
}

.st-btn {
  text-align: center;
}

.st-btn a {
  display: inline-block;
  background: #CC0000;
  color: #fff;
  border-radius: 6px;
  width: 50vw;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 15px;
  text-decoration: none;
}

.st-btn a:hover {
  opacity: 0.8;
}
@media (max-width: 999px) {
	.st-btn a {
    width: 70vw;
    font-size: 1.25rem;
  }
}
@media (max-width: 568px) {
  .st-btn a {
    width: 90vw;
    font-size: 1.1rem;
  }
}

.st-main
.st-sec1 {
  background: url("lp-img/st-lead.jpg") center/cover no-repeat;
  padding-bottom: 40px;
}

.st-main
.st-sec1 h2 {
  margin-bottom: 0;
}

.st-main
.st-sec1 .st-sec1-list {
  background: url("lp-img/st-ground.jpg") center top/cover no-repeat;
  padding: 80px 0 60px;
}

.st-main
.st-sec1 .st-sec1-list > li {
  width: 768px;
  margin: auto;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

@media (max-width: 768px) {
  .st-main
.st-sec1 .st-sec1-list > li {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec1 .st-sec1-list > li:before {
  content: '';
  display: inline-block;
  background: url("lp-img/st-check.svg") center no-repeat;
  width: 40px;
  height: 40px;
  margin-right: 15px;
  vertical-align: middle;
}

.st-main
.st-sec1 .st-sec1-list > li + li {
  margin-top: 1em;
}

@media (max-width: 768px) {
  .st-main
.st-sec1 .st-sec1-list > li {
    font-size: 1.25rem;
  }
  .st-main
.st-sec1 .st-sec1-list > li:before {
    width: 25px;
    height: 25px;
    margin-right: 8px;
  }
}

.st-main
.st-sec1 .st-sec1-lead {
  width: 1200px;
  margin: auto;
  padding-top: 60px;
  padding-right: 500px;
}

@media (max-width: 1200px) {
  .st-main
.st-sec1 .st-sec1-lead {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec1 .st-sec1-lead .st-sec1-lead-body {
  background: rgba(255, 255, 255, 0.8);
  padding: 40px;
  font-size: 1.125rem;
}

.st-main
.st-sec1 .st-sec1-lead .st-sec1-lead-body strong {
  font-weight: bold;
  font-size: 150%;
}

@media (max-width: 999px) {
  .st-main
.st-sec1 .st-sec1-lead {
    padding-top: 40px;
    padding-right: 0;
  }
  .st-main
.st-sec1 .st-sec1-lead .st-sec1-lead-body {
    padding: 20px;
    font-size: 1rem;
  }
  .st-main
.st-sec1 .st-sec1-lead .st-sec1-lead-body strong {
    font-size: 1.25rem;
  }
}

.st-main
.st-sec2 .st-sec2-prof {
  width: 1200px;
  margin: auto;
  display: flex;
  padding-bottom: 30px;
}

@media (max-width: 1200px) {
  .st-main
.st-sec2 .st-sec2-prof {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec2 .st-sec2-prof > div:nth-child(2) {
  flex-shrink: 0;
  margin-left: 40px;
}

@media (max-width: 768px) {
  .st-main
.st-sec2 .st-sec2-prof {
    flex-direction: column-reverse;
  }
  .st-main
.st-sec2 .st-sec2-prof > div:nth-child(2) {
    text-align: center;
    margin: 20px 0;
  }
}

.st-main
.st-sec2 .st-sec2-works {
  width: 1200px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 30px;
}

@media (max-width: 1200px) {
  .st-main
.st-sec2 .st-sec2-works {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec2 .st-sec2-works > div:nth-child(1) {
  max-width: 420px;
  margin-right: 40px;
}

.st-main
.st-sec2 .st-sec2-works > div:nth-child(2) {
  max-width: 620px;
}

.st-main
.st-sec2 .st-sec2-works > div:nth-child(n) {
  width: calc(50% - 10px);
  margin-bottom: 20px;
}

.st-main
.st-sec2 .st-sec2-works h3 {
  background: #000;
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 5px 10px;
  margin-bottom: 20px;
}

.st-main
.st-sec2 .st-sec2-works .st-sec2-works-img {
  display: flex;
  justify-content: center;
}

.st-main
.st-sec2 .st-sec2-works .st-sec2-works-img > div {
  width: calc( 50% - 10px);
  margin: 10px;
}

.st-main
.st-sec2 .st-sec2-works .st-sec2-works-img > div p {
  text-align: center;
}

.st-main
.st-sec2 .st-sec2-works .st-sec2-works-img > div h4 {
  margin-top: 20px;
}

.st-main
.st-sec2 .st-sec2-works .st-sec2-contents h4 {
  margin: 1em 0;
  text-decoration: underline;
  font-size: 1.125rem;
}

.st-main
.st-sec2 .st-sec2-works .st-writings img {
  height: 250px;
  width: auto;
}

.st-main
.st-sec2 .st-sec2-works q {
  font-style: italic;
  word-break: break-word;
}

@media (max-width: 1200px) {
  .st-main
.st-sec2 .st-sec2-works {
    flex-direction: column;
  }
  .st-main
.st-sec2 .st-sec2-works > div:nth-child(n) {
    width: auto;
  }
}

@media (max-width: 568px) {
  .st-main
.st-sec2 .st-sec2-works > div:nth-child(1) {
    margin-right: 0;
  }
  .st-main
.st-sec2 .st-sec2-works .st-sec2-works-img.st-tv {
    flex-direction: column;
  }
  .st-main
.st-sec2 .st-sec2-works .st-sec2-works-img.st-tv > div {
    width: auto;
    text-align: center;
  }
}

.st-main
.st-sec2 .st-sec2-message {
  display: flex;
  justify-content: center;
  background: #fae6e6;
  padding: 40px 0;
}

.st-main
.st-sec2 .st-sec2-message h3 {
  font-family: "Yu Mincho Regular", "Yu Mincho", "YuMincho Medium", serif;
  font-size: 1.125rem;
  margin-bottom: 20px;
  text-decoration: underline;
}

.st-main
.st-sec2 .st-sec2-message > div {
  flex-shrink: 0;
  flex-grow: 0;
}

.st-main
.st-sec2 .st-sec2-message > div:nth-child(1) {
  width: 304px;
  margin-right: 30px;
}

.st-main
.st-sec2 .st-sec2-message > div:nth-child(2) {
  width: 866px;
}

.st-main
.st-sec2 .st-sec2-message ul {
  margin: 1em 0;
}

.st-main
.st-sec2 .st-sec2-message ul li {
  color: #CC0000;
  font-weight: bold;
}

@media (max-width: 1200px) {
  .st-main
.st-sec2 .st-sec2-message {
    padding-right: 10px;
    padding-left: 10px;
  }
  .st-main
.st-sec2 .st-sec2-message > div:nth-child(2) {
    width: auto;
    flex-shrink: 1;
  }
}

@media (max-width: 568px) {
  .st-main
.st-sec2 .st-sec2-message {
    flex-direction: column;
  }
  .st-main
.st-sec2 .st-sec2-message > div:nth-child(1) {
    margin: 0 0 20px;
  }


.st-sec2-img{
	text-align:center;
	width: auto !important;
}

}

.st-main
.st-sec2 .st-sec2-coaching {
  background: url("lp-img/st-coaching.jpg") right top/cover no-repeat;
  padding: 30px calc( (100vw - 1200px) / 2 ) 30px calc( (100vw - 1200px) / 2 + 450px);
}

@media (max-width: 1200px) {
  .st-main
.st-sec2 .st-sec2-coaching {
    padding: 30px 10px;
  }
}

.st-main
.st-sec2 .st-sec2-coaching > div {
  background: rgba(255, 255, 255, 0.8);
  padding: 30px;
}

.st-main
.st-sec2 .st-sec2-coaching > div h3 {
  background: #193C86;
  color: #fff;
  margin: 0 0 10px;
  padding: 5px;
}

.st-main
.st-sec2 .st-sec2-coaching > div h4 {
  margin: 1em 0;
  color: #CC0000;
}

.st-main
.st-sec2 .st-sec2-coaching > div h4:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 0.5em;
  content: "";
  text-decoration: none;
}


/*
投球理論の移動
*/

.st-main
.st-sec3 .st-sec3-coaching {
  background: url("lp-img/st-coaching.jpg") right top/cover no-repeat;
  padding: 30px calc( (100vw - 1200px) / 2 ) 30px calc( (100vw - 1200px) / 2 + 450px);
}

@media (max-width: 1200px) {
  .st-main
.st-sec3 .st-sec3-coaching {
    padding: 30px 10px;
  }
}

.st-main
.st-sec3 .st-sec3-coaching > div {
  background: rgba(255, 255, 255, 0.8);
  padding: 30px;
}

.st-main
.st-sec3 .st-sec3-coaching > div h3 {
  background: #193C86;
  color: #fff;
  margin: 0 0 10px;
  padding: 5px;
}

.st-main
.st-sec3 .st-sec3-coaching > div h4 {
  margin: 1em 0;
  color: #CC0000;
}

.st-main
.st-sec3 .st-sec3-coaching > div h4:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 0.5em;
  content: "";
  text-decoration: none;
}

/*
投球理論の移動　以上
*/



.st-main
.st-sec3 {
  padding-bottom: 40px;
}

.st-main
.st-sec3 h2 {
  margin-bottom: 0;
}

.st-main
.st-sec3 .st-sec3-bn {
  background: url("lp-img/st-catch.jpg") center/cover no-repeat;
  padding-bottom: 40px;
}

.st-main
.st-sec3 .st-sec3-list {
  padding: 40px 0;
}

.st-main
.st-sec3 .st-sec3-list > li {
  width: 1200px;
  margin: auto;
  display: flex;
  align-items: center;
}

@media (max-width: 1200px) {
  .st-main
.st-sec3 .st-sec3-list > li {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec3 .st-sec3-list > li > div:nth-child(1) {
  background: url("lp-img/st-ball.png") center/contain no-repeat;
  padding: 50px;
  margin-right: 0px;
  flex-shrink: 0;
}

.st-main
.st-sec3 .st-sec3-list > li > div:nth-child(1) p {
  background: #fff;
  padding: 2px 10px;
  color: #CC0000;
  font-weight: bold;
  font-size: 1.125rem;
}

.st-main
.st-sec3 .st-sec3-list > li > div:nth-child(2) {
  flex-grow: 1;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 10px;
  padding: 20px;
}

.st-main
.st-sec3 .st-sec3-list > li:nth-child(2n-1) {
  padding-right: 50px;
}

.st-main
.st-sec3 .st-sec3-list > li:nth-child(2n) {
  padding-left: 50px;
}

.st-main
.st-sec3 .st-sec3-list > li h4 {
  font-size: 1.125rem;
  color: #CC0000;
}

.st-main
.st-sec3 .st-sec3-list > li + li {
  margin-top: 20px;
}

@media (max-width: 768px) {
  .st-main
.st-sec3 .st-sec3-list > li:nth-child(n) {
    padding-right: 0;
    padding-left: 0;
  }
  .st-main
.st-sec3 .st-sec3-list > li + li {
    margin-top: 40px;
  }
}

@media (max-width: 480px) {
  .st-main
.st-sec3 .st-sec3-list > li {
    flex-direction: column;
  }
}

.st-main
.st-sec3 .st-sec3-caption {
  width: 1200px;
  margin: auto;
  background: yellow;
  text-align: center;
  padding: 1em;
  font-size: 1.125rem;
}

@media (max-width: 1200px) {
  .st-main
.st-sec3 .st-sec3-caption {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec3 h3 {
  background: #000;
  font-size: 1.5rem;
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  padding: 10px;
}

.st-main
.st-sec3 h3:after {
  display: none;
}

.st-main
.st-sec3 .st-sec3-table {
  width: 1000px;
  margin: auto;
  width: 1000px;
  margin: 60px auto 20px;
}

@media (max-width: 1000px) {
  .st-main
.st-sec3 .st-sec3-table {
    width: auto;
    margin-right: auto;
    margin-left: auto;
  }
}

.st-main
.st-sec3 .st-sec3-table th, .st-main
.st-sec3 .st-sec3-table td {
  padding: 5px 10px;
  width: 50%;
  text-align: center;
  border: solid 1px #193C86;
}

.st-main
.st-sec3 .st-sec3-table th {
  background: #e8ecf3;
  color: #193C86;
  font-weight: bold;
}

.st-main
.st-sec3 .st-sec3-table th:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 0.5em;
  content: "";
  color: #c00;
}

@media (max-width: 1000px) {
  .st-main
.st-sec3 .st-sec3-table {
    width: calc( 100% - 20px);
  }
}

@media (max-width: 568px) {
  .st-main
.st-sec3 .st-sec3-table tbody, .st-main
.st-sec3 .st-sec3-table tr, .st-main
.st-sec3 .st-sec3-table th, .st-main
.st-sec3 .st-sec3-table td {
    display: block;
    width: 100%;
  }
  .st-main
.st-sec3 .st-sec3-table td {
    border-top: none;
  }
  .st-main
.st-sec3 .st-sec3-table tr:nth-child(n + 2) th {
    border-top: none;
  }
}

.st-main
.st-sec4 {
  margin-bottom: 30px;
}

.st-main
.st-sec4 .st-sec4-flow {
  width: 1000px;
  margin: auto;
  overflow: hidden;
}

@media (max-width: 1000px) {
  .st-main
.st-sec4 .st-sec4-flow {
    width: auto;
    margin-right: 0;
    margin-left: 0;
  }
}

.st-main
.st-sec4 .st-sec4-flow li {
  margin-bottom: 30px;
  position: relative;
  padding: 20px 0 20px;
  display: flex;
  background: #fff;
}

.st-main
.st-sec4 .st-sec4-flow li img {
  border: solid 1px #ccc;
}

.st-main
.st-sec4 .st-sec4-flow li h3 {
  color: #193C86;
  font-size: 1.25rem;
}

.st-main
.st-sec4 .st-sec4-flow li > div:nth-child(1) {
  flex-shrink: 0;
  margin-right: 20px;
}

@media (max-width: 568px) {
  .st-main
.st-sec4 .st-sec4-flow li {
    flex-direction: column;
  }
  .st-main
.st-sec4 .st-sec4-flow li > div:nth-child(1) {
    margin: 0 0 20px 0;
  }
}

.st-main
.st-sec4 .st-sec4-flow li:not(:last-child):after,
.st-main
.st-sec4 .st-sec4-flow li:not(:last-child):before {
  content: '';
  position: absolute;
  width: 1px;
  height: 1px;
  bottom: 20px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: -1;
  border-top: 10px solid #fff;
}

.st-main
.st-sec4 .st-sec4-flow li:not(:last-child):before {
  box-shadow: -200px 30px 20px rgba(0, 0, 0, 0.4);
  border-left: 400px solid transparent;
  transform: skewY(3deg);
}

.st-main
.st-sec4 .st-sec4-flow li:not(:last-child):after {
  border-right: 400px solid transparent;
  box-shadow: 200px 30px 20px rgba(0, 0, 0, 0.4);
  transform: skewY(-3deg);
}

.st-main
.st-sec4 .st-sec4-flow li:not(:last-child) > div:nth-child(1):before {
  content: '';
  display: block;
  border-top: 20px solid #fff;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
  position: absolute;
  width: 1px;
  height: 1px;
  bottom: -20px;
  right: 0;
  left: 0;
  margin: auto;
  z-index: 2;
}

@media (max-width: 568px) {
  .st-main
.st-sec4 .st-sec4-flow li {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.st-main
.st-sec5 {
  background: url("lp-img/st-ground.jpg") center/cover no-repeat;
  position: relative;
  padding-bottom: 30px;
}

.st-main
.st-sec5 h3 {
  background: #000;
  font-size: 1.5rem;
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  padding: 10px;
}

.st-main
.st-sec5 h3:after {
  display: none;
}

.st-main
.st-sec5 .st-sec5-list {
  width: 1200px;
  margin: auto;
  background: rgba(255, 255, 255, 0.7);
  padding: 30px 80px;
  margin-top: 30px;
}

@media (max-width: 1200px) {
  .st-main
.st-sec5 .st-sec5-list {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec5 .st-sec5-list > li + li {
  margin-top: 30px;
}

.st-main
.st-sec5 .st-sec5-list h4 {
  color: #193C86;
  font-size: 1.125rem;
  border-bottom: solid 1px #193C86;
  margin-bottom: 10px;
}

@media (max-width: 568px) {
  .st-main
.st-sec5 .st-sec5-list {
    padding: 30px;
  }
}

.st-main
.st-sec6 {
  width: 1200px;
  margin: auto;
  margin-top: 40px;
  margin-bottom: 40px;
  padding-bottom: 60px;
}

@media (max-width: 1200px) {
  .st-main
.st-sec6 {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-main
.st-sec6 h3 {
  color: #CC0000;
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 10px;
}

.st-main
.st-sec6 .st-sec6-list li {
  margin-bottom: 1em;
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.st-main
.st-sec6 .st-sec6-list li:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  margin-right: 0.5em;
  content: "";
}

.st-main
.st-sec6 .st-btn {
  margin: 60px 0;
}

.st-main
.st-sec6 .st-btn + .st-btn {
	margin-top: -40px;
}

.st-main
.st-sec6 .st-form {
  text-align: center;
  font-size: 1.25rem;
}

.st-main
.st-sec6 .st-form a {
  text-decoration: underline;
}


/*--pitching Labo 2021-05-20 customized--*/

.st-voice {
  width: 1200px;
  margin: auto;
  padding: 30px 0;
}

@media (max-width: 1200px) {
  .st-voice {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-voice h4 {
  font-weight: bold;
  font-size: 1.125rem;
  color: #CC0000;
}

.st-voice ul {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0 40px;
  position: relative;
}

.st-voice ul > li {
  display: block;
  padding: 2em;
  background: #fbebeb;
  border: solid 1px #eb9999;
  width: 32%;
  margin-right: 2%;
  margin-bottom: 24px;
}

.st-voice ul > li:nth-child(3n) {
  margin-right: 0;
}

@media (max-width: 1000px) {
  .st-voice ul {
    justify-content: space-between;
  }
  .st-voice ul > li {
    width: 48%;
    margin-right: 0;
  }
}

@media (max-width: 568px) {
  .st-voice ul {
    flex-direction: column;
  }
  .st-voice ul > li {
    width: auto;
  }
}

.st-ps {
  margin: 20px 0;
  border-left: solid 1px #193C86;
  padding: 1em 2em;
}

.st-ps h4 {
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.st-ps blockquote {
  margin: 1em 0;
  padding: 1em;
  background: #fbebeb;
}

.st-ps blockquote p {
  font-style: italic;
}


.st-video {
  width: 1200px;
  margin: auto;
  padding: 80px 0;
}

@media (max-width: 1200px) {
  .st-video {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }
}

.st-video ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.st-video ul > li {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 30px;
}

.st-video ul > li:nth-child(3n) {
  margin-right: 0;
}

.st-video ul > li a {
  display: block;
  margin-bottom: 10px;
}

.st-video ul > li h4 {
  font-size: 1.25rem;
  color: #193C86;
}



/*--社名変更に伴うリニューアル 2021-07-01 customized--*/


header.l-header {
  background-color: #3ca642;
}

header.l-header ul li a span {
  color: #fff;
}

header.l-header .l-header-nav ul li a {
  font-family: "Teko", sans-serif;
  font-size: 27px;
  transition: 0.5s;
}

header.l-header .l-header-nav ul li a:hover{
	opacity: 0.8;
	transform: translateY(-5px);
}

header.l-header .l-header-ttl svg {
  max-width: 100%;
  height: auto;
}

.c-page-mainimg-head{
  padding: 1rem 3rem;
  border-top: solid 7px #000;
  border-bottom: solid 7px #000;
  font-family: "Teko", sans-serif;
  font-size: 45px;
  line-height: 1.1;
}

.c-page-mainimg-head span{
  display: inline;
  margin-left: 1rem;
  white-space: nowrap;
}

.st-main,
main .c-skew-block {
  border-color: #3ca642;
}

main .p-top-head-wrap .c-page-mainimg-head {
  padding: 1rem 3rem;
  background: #fff;
  border: solid 7px #000;
  font-family: "Teko", sans-serif;
  font-size: 45px;
  line-height: 1.1;
}

main .p-top-head-wrap .c-page-mainimg-head span {
  display: inline;
  margin-left: 1rem;
}

@media (max-width: 767px) {
  main .p-top-head-wrap .c-page-mainimg-head {
    font-size: 32px;
  }
  main .p-top-head-wrap .c-page-mainimg-head span {
    font-size: 0.9375rem;
    white-space: nowrap;
  }
}

main .p-top-sec--1 {
  background: none;
  position: relative;
}

main .p-top-sec--1:before {
  content: 'SERVICE';
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-align: center;
  font-family: "Teko", sans-serif;
  font-weight: 500;
  font-size: 530px;
  color: #e9edf5;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
  vertical-align: middle;
  transform: skew(0deg, -5deg);
  opacity: 0.5;
}

main .p-top-sec--1 .p-service-head {
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
  padding: 1em;
}

main .p-top-sec--1 .p-service-head p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  margin-bottom: 0;
}

main .p-top-sec--1 .p-service-head p + p {
  margin-top: 1em;
}

@media (max-width: 767px) {
  main .p-top-sec--1 .p-service-head p {
    font-size: 1.0625rem;
    text-align: left;
  }
}

main .p-top-sec--2 {
  background: none;
  position: relative;
}

main .p-top-sec--2:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background: #e9edf5;
  z-index: -1;
  transform: skew(0deg, -5deg);
}

main .p-top-sec--3 {
  background: none;
  position: relative;
  overflow: hidden;
}

main .p-top-sec--3:before {
  content: 'ACTIVITY REPORT';
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
  line-height: 1.5;
  width: 100%;
  height: 100%;
  text-align: center;
  font-family: "Teko", sans-serif;
  font-weight: 500;
  font-size: 530px;
  color: #e9edf5;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
  vertical-align: middle;
  transform: skew(0deg, -5deg);
  opacity: 0.5;
}

main .p-top-sec--5 .p-top-sec--5__txt {
  background: #e9edf5;
}

main .p-top-sec--6 {
  background: none;
  position: relative;
  overflow: hidden;
}

main .p-top-sec--6:before {
  content: 'GROUP COMPANY';
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
  line-height: 1.5;
  width: 100%;
  height: 100%;
  text-align: center;
  font-family: "Teko", sans-serif;
  font-weight: 500;
  font-size: 530px;
  color: #e9edf5;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: -1;
  vertical-align: middle;
  transform: skew(0deg, -5deg);
  opacity: 0.5;
}

main .p-top-sec--6 .p-top-sec--6__child {
  background: #fff;
}

main .p-top-sec--6__head {
  color: #3ca642;
  font-family: "Teko", sans-serif;
  font-size: 40px;
  line-height: 1;
}

main .c-contact-btn--1 {
  background: #000;
  color: #fff;
}

main .p-archive-list__box {
  border-color: #93a4ce;
  background: #fff;
}

footer.l-footer .l-footer-logo svg {
  max-width: 100%;
  height: auto;
}

@media (max-width: 999px) {
  .l-header-spmenu__txt {
    color: #fff;
  }
  .l-header-nav {
    background: #3ca642;
  }
  .l-header-nav ul li a {
    border-color: rgba(255, 255, 255, 0.2);
    line-height: 1;
  }
}

.p-talent-head{
  color: #3ca642;
  font-family: "Teko", sans-serif;
  font-size: 40px;
  line-height: 1;
}

.p-company-wrap{
	border-color: #3ca642;
}

.p-single-aside__head{
	background: #3ca642;
}

.p-single-aside__talent{
	border-color: #3ca642;
}


/*====================================================
  Manga Art LP （/manga-art/）
====================================================*/

/* メインビジュアル */
.p-manga-art-mainimg {
  background-image:
    linear-gradient(rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.35)),
    url(lp-img/manga-art_mv.jpg);
  background-color: #1a1a1a;
}
.p-manga-art-mainimg .c-page-mainimg-head,
.p-manga-art-mainimg .c-page-mainimg-head span {
  color: #fff;
  border-color: #fff;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
}

/* 全体ラップ */
.p-manga-art-wrap {
  padding: 0 0 60px;
}

/* セクション共通 */
.p-manga-art-sec {
  padding: 110px 0;
}
.p-manga-art-sec + .p-manga-art-sec {
  border-top: solid 1px #eee;
}
.p-manga-art-sec__head-wrap {
  text-align: center;
  margin: 0 0 60px;
}
.p-manga-art-sec__head {
  font-size: 36px;
}
.p-manga-art-sec__head span {
  font-size: 18px;
  margin-top: 4px;
}

/* リード文・本文 */
.p-manga-art-lead {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.9;
  letter-spacing: 0.04em;
  margin: 0 0 1.6em;
}
.p-manga-art-text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0 auto 1.5em;
  max-width: 760px;
}
.p-manga-art-text strong {
  font-weight: bold;
  border-bottom: solid 2px #c2131c;
  padding: 0 0.05em 0.05em;
}

/* 強みセクション 導入の橋渡し文 */
.p-manga-art-bridge {
  text-align: center;
  font-weight: bold;
  max-width: none;
  margin: 0 0 50px;
}

/* 強みセクション 結びの一文 */
.p-manga-art-conclusion {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  max-width: none;
  margin: 50px 0 0;
}

/* POINT ブロック */
.p-manga-art-point {
  max-width: 800px;
  margin: 0 auto 50px;
  padding: 36px 40px 32px;
  border: solid 1px #ddd;
  border-left: solid 5px #c2131c;
  background: #fff;
  position: relative;
}
.p-manga-art-point:last-child {
  margin-bottom: 0;
}
.p-manga-art-point__label {
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #c2131c;
  line-height: 1;
  margin: 0 0 12px;
}
.p-manga-art-point__label span {
  font-size: 28px;
  margin-left: 6px;
  vertical-align: -3px;
}
.p-manga-art-point__head {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 18px;
  padding: 0 0 14px;
  border-bottom: solid 1px #eee;
}
.p-manga-art-point__text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0;
}
.p-manga-art-point__text strong {
  font-weight: bold;
  border-bottom: solid 2px #c2131c;
  padding: 0 0.05em 0.05em;
}

/* Section 4 ｜ CTA */
.p-manga-art-cta {
  background: #f7f5f1;
  text-align: center;
}
.p-manga-art-cta__head {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.06em;
  margin: 0 0 30px;
}
.p-manga-art-cta__lead {
  font-size: 16px;
  line-height: 2.0;
  max-width: 720px;
  margin: 0 auto 1em;
}
.p-manga-art-cta__lead:last-of-type {
  margin-bottom: 40px;
}

/* SP */
@media screen and (max-width: 767px) {
  .p-manga-art-wrap {
    padding: 0 0 30px;
  }
  .p-manga-art-sec {
    padding: 60px 0;
  }
  .p-manga-art-sec__head-wrap {
    margin: 0 0 32px;
  }
  .p-manga-art-sec__head {
    font-size: 26px;
  }
  .p-manga-art-sec__head span {
    font-size: 14px;
  }
  .p-manga-art-lead {
    font-size: 17px;
    line-height: 1.8;
    text-align: center;
    margin: 0 0 1.4em;
  }
  .p-manga-art-text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-manga-art-bridge {
    text-align: center;
    margin: 0 0 32px;
  }
  .p-manga-art-conclusion {
    text-align: center;
    font-size: 16px;
    margin: 32px 0 0;
  }
  .p-manga-art-point {
    padding: 26px 22px 24px;
    margin: 0 0 30px;
  }
  .p-manga-art-point__head {
    font-size: 18px;
  }
  .p-manga-art-point__text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-manga-art-cta__head {
    font-size: 22px;
  }
  .p-manga-art-cta__lead {
    font-size: 15px;
    line-height: 1.9;
    text-align: left;
  }
  .p-manga-art-cta__lead:last-of-type {
    margin-bottom: 28px;
  }
}


/*====================================================
  HP Production LP （/web-production/）
====================================================*/

/* メインビジュアル */
.p-web-mainimg {
  background-image:
    linear-gradient(rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.35)),
    url(lp-img/hp_mv.jpg);
  background-color: #e8eef5;
}
.p-web-mainimg .c-page-mainimg-head,
.p-web-mainimg .c-page-mainimg-head span {
  color: #fff;
  border-color: #fff;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
}

/* 全体ラップ */
.p-web-wrap {
  padding: 0 0 60px;
}

/* セクション共通 */
.p-web-sec {
  padding: 110px 0;
}
.p-web-sec + .p-web-sec {
  border-top: solid 1px #eee;
}
.p-web-sec__head-wrap {
  text-align: center;
  margin: 0 0 60px;
}
.p-web-sec__head {
  font-size: 36px;
}
.p-web-sec__head span {
  font-size: 18px;
  margin-top: 4px;
}

/* リード文・本文 */
.p-web-lead {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.9;
  letter-spacing: 0.04em;
  margin: 0 0 1.6em;
}
.p-web-text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0 auto 1.5em;
  max-width: 760px;
}
.p-web-text strong {
  font-weight: bold;
  border-bottom: solid 2px #3ca642;
  padding: 0 0.05em 0.05em;
}

/* 橋渡し文・結びの一文 */
.p-web-bridge {
  text-align: center;
  font-weight: bold;
  max-width: none;
  margin: 0 0 50px;
}
.p-web-conclusion {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  max-width: none;
  margin: 50px auto 0;
}

/* 比較テーブル */
.p-web-table {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  border-collapse: collapse;
  background: #fff;
  font-size: 16px;
  line-height: 1.8;
}
.p-web-table th,
.p-web-table td {
  border: solid 1px #ddd;
  padding: 16px 20px;
  text-align: left;
  vertical-align: middle;
}
.p-web-table thead th {
  background: #1b2a4a;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.p-web-table tbody th,
.p-web-table tbody td:first-child {
  width: 38%;
  background: #f4f6fa;
  font-weight: bold;
}

/* PRINCIPLE ブロック */
.p-web-point {
  max-width: 800px;
  margin: 0 auto 30px;
  padding: 36px 40px 32px;
  border: solid 1px #ddd;
  border-left: solid 5px #3ca642;
  background: #fff;
  position: relative;
}
.p-web-point:last-child {
  margin-bottom: 0;
}
.p-web-point__label {
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #3ca642;
  line-height: 1;
  margin: 0 0 12px;
}
.p-web-point__label span {
  font-size: 28px;
  margin-left: 6px;
  vertical-align: -3px;
}
.p-web-point__head {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 18px;
  padding: 0 0 14px;
  border-bottom: solid 1px #eee;
}
.p-web-point__text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0;
}
.p-web-point__text strong {
  font-weight: bold;
  border-bottom: solid 2px #3ca642;
  padding: 0 0.05em 0.05em;
}

/* FLOW ブロック */
.p-web-flow {
  list-style: none;
  max-width: 800px;
  margin: 0 auto;
  padding: 0;
  counter-reset: none;
}
.p-web-flow__item {
  position: relative;
  margin: 0 auto 24px;
  padding: 28px 36px;
  border: solid 1px #ddd;
  border-top: solid 4px #3ca642;
  background: #fff;
}
.p-web-flow__item:last-child {
  margin-bottom: 0;
}
.p-web-flow__num {
  display: inline-block;
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #3ca642;
  margin: 0 0 8px;
}
.p-web-flow__head {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 10px;
}
.p-web-flow__text {
  font-size: 16px;
  line-height: 1.9;
  margin: 0;
}

/* WORKS ブロック */
.p-web-works {
  max-width: 800px;
  margin: 0 auto;
  padding: 36px 40px;
  background: #f4f6fa;
  border-left: solid 5px #3ca642;
}
.p-web-works__head {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 16px;
  padding: 0 0 14px;
  border-bottom: solid 1px #dbe1ec;
}
.p-web-works__text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0;
}
.p-web-works__text strong {
  font-weight: bold;
  border-bottom: solid 2px #3ca642;
  padding: 0 0.05em 0.05em;
}

/* Section ｜ CTA */
.p-web-cta {
  background: #f7f5f1;
  text-align: center;
}
.p-web-cta__head {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.06em;
  margin: 0 0 30px;
}
.p-web-cta__lead {
  font-size: 16px;
  line-height: 2.0;
  max-width: 720px;
  margin: 0 auto 1em;
}
.p-web-cta__lead:last-of-type {
  margin-bottom: 40px;
}

/* SP */
@media screen and (max-width: 767px) {
  .p-web-wrap {
    padding: 0 0 30px;
  }
  .p-web-sec {
    padding: 60px 0;
  }
  .p-web-sec__head-wrap {
    margin: 0 0 32px;
  }
  .p-web-sec__head {
    font-size: 26px;
  }
  .p-web-sec__head span {
    font-size: 14px;
  }
  .p-web-lead {
    font-size: 17px;
    line-height: 1.8;
    text-align: center;
    margin: 0 0 1.4em;
  }
  .p-web-text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-web-bridge {
    text-align: center;
    margin: 0 0 32px;
  }
  .p-web-conclusion {
    text-align: center;
    font-size: 16px;
    margin: 32px auto 0;
  }
  .p-web-table {
    font-size: 14px;
  }
  .p-web-table th,
  .p-web-table td {
    padding: 12px 14px;
  }
  .p-web-table tbody th,
  .p-web-table tbody td:first-child {
    width: 42%;
  }
  .p-web-point {
    padding: 26px 22px 24px;
    margin: 0 0 24px;
  }
  .p-web-point__head {
    font-size: 18px;
  }
  .p-web-point__text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-web-flow__item {
    padding: 22px 22px;
    margin: 0 0 20px;
  }
  .p-web-flow__head {
    font-size: 18px;
  }
  .p-web-flow__text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-web-works {
    padding: 26px 22px;
  }
  .p-web-works__head {
    font-size: 18px;
  }
  .p-web-works__text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-web-cta__head {
    font-size: 22px;
  }
  .p-web-cta__lead {
    font-size: 15px;
    line-height: 1.9;
    text-align: left;
  }
  .p-web-cta__lead:last-of-type {
    margin-bottom: 28px;
  }
}

/*
フォームボタン修正
*/

.c-contact-btn-wrap {
	position: relative;
	display: flex;
	justify-content: center;
	margin: 35px 0 0;
}

.c-contact-btn--1 {
	/* box-sizing: border-box のため、固定幅だと padding 25px 45px を引いた
	   90px しか文字幅が残らず、ラベルが折り返していた。
	   内容に合わせて伸び、180px を下限とする */
	width: auto;
	min-width: 180px;
	max-width: 100%;
}

.c-contact-btn-wrap .wpcf7-spinner {
	position: absolute;
	top: 50%;
	left: calc(50% + 100px);
	margin: 0;
	transform: translateY(-50%);
}


/*====================================================
  Mirai Job LP （/mirai-job/）
====================================================*/

/* メインビジュアル */
.p-mirai-mainimg {
  background-image:
    linear-gradient(rgba(9, 20, 48, 0.55), rgba(9, 20, 48, 0.55)),
    url(img/mirai-job_01.jpg);
  background-color: #193C86;
}
.p-mirai-mainimg .c-page-mainimg-head,
.p-mirai-mainimg .c-page-mainimg-head span {
  color: #fff;
  border-color: #fff;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
}

/* 全体ラップ */
.p-mirai-wrap {
  padding: 0 0 60px;
}

/* セクション共通 */
.p-mirai-sec {
  padding: 110px 0;
}
.p-mirai-sec + .p-mirai-sec {
  border-top: solid 1px #eee;
}
.p-mirai-sec__head-wrap {
  text-align: center;
  margin: 0 0 60px;
}
.p-mirai-sec__head {
  font-size: 36px;
}
.p-mirai-sec__head span {
  font-size: 18px;
  margin-top: 4px;
}

/* リード文・本文 */
.p-mirai-catch {
  text-align: center;
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: #193C86;
  margin: 0 0 0.6em;
}
.p-mirai-lead {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.9;
  letter-spacing: 0.04em;
  margin: 0 0 1.6em;
}
.p-mirai-text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0 auto 1.5em;
  max-width: 760px;
}
.p-mirai-text strong {
  font-weight: bold;
  border-bottom: solid 2px #193C86;
  padding: 0 0.05em 0.05em;
}
.p-mirai-bridge {
  text-align: center;
  font-weight: bold;
  max-width: none;
  margin: 0 0 50px;
}
.p-mirai-conclusion {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  max-width: none;
  margin: 50px auto 0;
}

/* 導入セクション */
.p-mirai-intro {
  padding: 90px 0 100px;
}

/* 図版まわり共通 */
.p-mirai-figure {
  max-width: 800px;
  margin: 0 auto 40px;
  padding: 34px 40px 30px;
  background: #f4f6fa;
  border: solid 1px #dbe1ec;
}
.p-mirai-figure__head {
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.04em;
  color: #193C86;
  text-align: center;
  margin: 0 0 24px;
  padding: 0 0 14px;
  border-bottom: solid 1px #dbe1ec;
}
.p-mirai-figure__note {
  font-size: 14px;
  line-height: 1.9;
  margin: 22px 0 0;
  padding: 16px 0 0;
  border-top: dashed 1px #c9d3e4;
}

/* 採用コスト比較 */
.p-mirai-cost {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
}
.p-mirai-cost__item {
  flex: 0 1 240px;
  text-align: center;
  background: #fff;
  border: solid 1px #dbe1ec;
  padding: 20px 14px;
}
.p-mirai-cost__item--now {
  border-color: #c2131c;
  background: #fff8f8;
}
.p-mirai-cost__label {
  display: block;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.08em;
  color: #555;
  margin: 0 0 8px;
}
.p-mirai-cost__value {
  display: block;
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 40px;
  font-weight: 600;
  line-height: 1.1;
  color: #193C86;
}
.p-mirai-cost__item--now .p-mirai-cost__value {
  color: #c2131c;
}
.p-mirai-cost__value small {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: bold;
  margin-left: 4px;
}
.p-mirai-cost__arrow {
  flex: 0 0 auto;
  width: 30px;
  height: 2px;
  background: #99a6bd;
  position: relative;
}
.p-mirai-cost__arrow::after {
  content: "";
  position: absolute;
  right: -1px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-top: solid 2px #99a6bd;
  border-right: solid 2px #99a6bd;
  transform: translateY(-50%) rotate(45deg);
}

/* 達成度バー */
.p-mirai-bars {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-mirai-bars__item {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 14px;
}
.p-mirai-bars__item:last-child {
  margin-bottom: 0;
}
.p-mirai-bars__label {
  flex: 0 0 160px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5;
}
.p-mirai-bars__track {
  flex: 1 1 auto;
  height: 20px;
  background: #fff;
  border: solid 1px #dbe1ec;
  position: relative;
}
.p-mirai-bars__fill {
  display: block;
  height: 100%;
  background: #3ca642;
}
.p-mirai-bars__fill--full {
  background: #99a6bd;
}
.p-mirai-bars__value {
  flex: 0 0 48px;
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 20px;
  font-weight: 600;
  text-align: right;
  color: #193C86;
}

/* 実利ボックス */
.p-mirai-merit {
  max-width: 800px;
  margin: 0 auto;
  padding: 32px 40px;
  background: #f4f6fa;
  border-left: solid 5px #c2131c;
}
.p-mirai-merit__head {
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.08em;
  color: #c2131c;
  margin: 0 0 12px;
}
.p-mirai-merit__text {
  font-size: 16px;
  line-height: 2.0;
  margin: 0;
}
.p-mirai-merit__text strong {
  font-weight: bold;
  border-bottom: solid 2px #c2131c;
  padding: 0 0.05em 0.05em;
}

/* VALUE 2カラム */
.p-mirai-value {
  display: flex;
  gap: 30px;
  max-width: 900px;
  margin: 0 auto;
}
.p-mirai-value__item {
  flex: 1 1 0;
  padding: 34px 32px 30px;
  border: solid 1px #ddd;
  border-top: solid 4px #193C86;
  background: #fff;
}
.p-mirai-value__label {
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #193C86;
  line-height: 1;
  margin: 0 0 12px;
}
.p-mirai-value__label span {
  font-size: 28px;
  margin-left: 6px;
  vertical-align: -3px;
}
.p-mirai-value__head {
  font-size: 21px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 18px;
  padding: 0 0 14px;
  border-bottom: solid 1px #eee;
}
.p-mirai-value__text {
  font-size: 15px;
  line-height: 1.95;
  margin: 0 0 1em;
}
.p-mirai-value__text:last-child {
  margin-bottom: 0;
}
.p-mirai-value__text strong {
  font-weight: bold;
  border-bottom: solid 2px #193C86;
  padding: 0 0.05em 0.05em;
}

/* LINEUP */
.p-mirai-lineup {
  max-width: 800px;
  margin: 0 auto;
}
.p-mirai-lineup__item {
  margin: 0 0 24px;
  padding: 32px 40px 28px;
  border: solid 1px #ddd;
  border-left: solid 5px #193C86;
  background: #fff;
}
.p-mirai-lineup__item--sub {
  border-left-color: #99a6bd;
  background: #fafbfd;
}
.p-mirai-lineup__label {
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #193C86;
  line-height: 1;
  margin: 0 0 12px;
}
.p-mirai-lineup__label span {
  font-size: 28px;
  margin-left: 6px;
  vertical-align: -3px;
}
.p-mirai-lineup__item--sub .p-mirai-lineup__label {
  color: #6b7893;
}
.p-mirai-lineup__head {
  font-size: 21px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 8px;
}
.p-mirai-lineup__concept {
  font-size: 15px;
  font-weight: bold;
  color: #c2131c;
  margin: 0 0 16px;
  padding: 0 0 14px;
  border-bottom: solid 1px #eee;
}
.p-mirai-lineup__item--sub .p-mirai-lineup__concept {
  color: #6b7893;
}
.p-mirai-lineup__text {
  font-size: 15px;
  line-height: 1.95;
  margin: 0;
}
.p-mirai-lineup__text strong {
  font-weight: bold;
  border-bottom: solid 2px #193C86;
  padding: 0 0.05em 0.05em;
}

/* 注記 */
.p-mirai-note {
  max-width: 800px;
  margin: 30px auto 0;
  padding: 18px 24px;
  background: #f7f5f1;
  font-size: 14px;
  line-height: 1.9;
}
.p-mirai-note p {
  margin: 0;
}

/* 還元内容 */
.p-mirai-return {
  max-width: 800px;
  margin: 50px auto 0;
  padding: 36px 40px 32px;
  background: #f4f6fa;
  border: solid 1px #dbe1ec;
}
.p-mirai-return__head {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin: 0 0 22px;
  padding: 0 0 14px;
  border-bottom: solid 1px #dbe1ec;
}
.p-mirai-return__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-mirai-return__list li {
  position: relative;
  font-size: 15px;
  line-height: 1.9;
  margin: 0 0 12px;
  padding: 0 0 0 22px;
}
.p-mirai-return__list li:last-child {
  margin-bottom: 0;
}
.p-mirai-return__list li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 12px;
  width: 8px;
  height: 8px;
  background: #193C86;
}
.p-mirai-return__foot {
  font-size: 14px;
  line-height: 1.9;
  margin: 22px 0 0;
  padding: 16px 0 0;
  border-top: dashed 1px #c9d3e4;
}
.p-mirai-return__foot strong {
  font-weight: bold;
}

/* VISION フェーズ */
.p-mirai-phase {
  list-style: none;
  display: flex;
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
  padding: 0;
}
.p-mirai-phase__item {
  flex: 1 1 0;
  padding: 28px 26px;
  border: solid 1px #ddd;
  border-top: solid 4px #193C86;
  background: #fff;
  text-align: center;
}
.p-mirai-phase__num {
  display: inline-block;
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #193C86;
  margin: 0 0 10px;
}
.p-mirai-phase__head {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 10px;
}
.p-mirai-phase__role {
  font-size: 15px;
  font-weight: bold;
  color: #c2131c;
  line-height: 1.7;
  margin: 0 0 12px;
  padding: 0 0 12px;
  border-bottom: solid 1px #eee;
}
.p-mirai-phase__text {
  font-size: 14px;
  line-height: 1.8;
  margin: 0;
}

/* 比較テーブル */
.p-mirai-table-wrap {
  max-width: 900px;
  margin: 0 auto;
  overflow-x: auto;
}
.p-mirai-table {
  width: 100%;
  min-width: 680px;
  border-collapse: collapse;
  background: #fff;
  font-size: 15px;
  line-height: 1.8;
}
.p-mirai-table th,
.p-mirai-table td {
  border: solid 1px #ddd;
  padding: 16px 20px;
  text-align: left;
  vertical-align: middle;
}
.p-mirai-table thead th {
  background: #1b2a4a;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.p-mirai-table thead th.p-mirai-table__own {
  background: #193C86;
}
.p-mirai-table tbody th {
  width: 20%;
  background: #f4f6fa;
  font-weight: bold;
}
.p-mirai-table tbody td.p-mirai-table__own {
  background: #f4f6fa;
  font-weight: bold;
}

/* PARTNERSHIP */
.p-mirai-partner {
  display: flex;
  gap: 30px;
  max-width: 900px;
  margin: 0 auto;
}
.p-mirai-partner__item {
  flex: 1 1 0;
  padding: 32px 32px 28px;
  border: solid 1px #ddd;
  background: #fff;
}
.p-mirai-partner__num {
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1;
  color: #193C86;
  margin: 0 0 10px;
}
.p-mirai-partner__head {
  font-size: 19px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 8px;
}
.p-mirai-partner__role {
  font-size: 14px;
  font-weight: bold;
  color: #c2131c;
  margin: 0 0 16px;
  padding: 0 0 14px;
  border-bottom: solid 1px #eee;
}
.p-mirai-partner__list {
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
}
.p-mirai-partner__list li {
  position: relative;
  font-size: 14px;
  line-height: 1.85;
  margin: 0 0 10px;
  padding: 0 0 0 16px;
}
.p-mirai-partner__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  background: #99a6bd;
}
.p-mirai-partner__duty {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.8;
  margin: 0;
  padding: 14px 16px;
  background: #f4f6fa;
}

/* CTA */
.p-mirai-cta {
  background: #f7f5f1;
  text-align: center;
}
.p-mirai-cta__head {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.06em;
  margin: 0 0 30px;
}
.p-mirai-cta__lead {
  font-size: 16px;
  line-height: 2.0;
  max-width: 720px;
  margin: 0 auto 1em;
}
.p-mirai-cta__lead:last-of-type {
  margin-bottom: 40px;
}

/* 出典 */
.p-mirai-sources {
  padding: 50px 0 0;
}
.p-mirai-sources__head {
  font-size: 14px;
  font-weight: bold;
  color: #666;
  margin: 0 0 14px;
}
.p-mirai-sources__list {
  list-style: none;
  margin: 0 0 14px;
  padding: 0;
}
.p-mirai-sources__list li {
  font-size: 12px;
  line-height: 1.9;
  color: #666;
  margin: 0 0 4px;
  padding: 0 0 0 14px;
  text-indent: -14px;
}
.p-mirai-sources__list li::before {
  content: "\203B\0020";
}
.p-mirai-sources__note {
  font-size: 12px;
  line-height: 1.9;
  color: #888;
  margin: 0;
}

/* SP */
@media screen and (max-width: 767px) {
  .p-mirai-wrap {
    padding: 0 0 30px;
  }
  .p-mirai-sec {
    padding: 60px 0;
  }
  .p-mirai-intro {
    padding: 50px 0 60px;
  }
  .p-mirai-sec__head-wrap {
    margin: 0 0 32px;
  }
  .p-mirai-sec__head {
    font-size: 26px;
  }
  .p-mirai-sec__head span {
    font-size: 14px;
  }
  .p-mirai-catch {
    font-size: 24px;
  }
  .p-mirai-lead {
    font-size: 17px;
    line-height: 1.8;
    margin: 0 0 1.4em;
  }
  .p-mirai-text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-mirai-bridge {
    margin: 0 0 32px;
  }
  .p-mirai-conclusion {
    font-size: 16px;
    margin: 32px auto 0;
  }
  .p-mirai-figure {
    padding: 24px 20px 20px;
    margin: 0 auto 28px;
  }
  .p-mirai-cost {
    flex-direction: column;
    gap: 14px;
  }
  .p-mirai-cost__item {
    flex: 1 1 auto;
    width: 100%;
  }
  .p-mirai-cost__value {
    font-size: 34px;
  }
  .p-mirai-cost__arrow {
    width: 2px;
    height: 22px;
  }
  .p-mirai-cost__arrow::after {
    right: 50%;
    top: auto;
    bottom: -1px;
    transform: translateX(50%) rotate(135deg);
  }
  .p-mirai-bars__item {
    flex-wrap: wrap;
    gap: 6px 10px;
  }
  .p-mirai-bars__label {
    flex: 1 1 100%;
    font-size: 13px;
  }
  .p-mirai-bars__track {
    flex: 1 1 auto;
    height: 16px;
  }
  .p-mirai-bars__value {
    flex: 0 0 40px;
    font-size: 17px;
  }
  .p-mirai-merit {
    padding: 24px 20px;
  }
  .p-mirai-merit__text {
    font-size: 15px;
    line-height: 1.9;
  }
  .p-mirai-value {
    flex-direction: column;
    gap: 20px;
  }
  .p-mirai-value__item {
    padding: 26px 22px 24px;
  }
  .p-mirai-value__head {
    font-size: 18px;
  }
  .p-mirai-lineup__item {
    padding: 26px 22px 24px;
    margin: 0 0 20px;
  }
  .p-mirai-lineup__head {
    font-size: 18px;
  }
  .p-mirai-note {
    padding: 16px 18px;
    font-size: 13px;
  }
  .p-mirai-return {
    padding: 26px 22px 24px;
    margin: 36px auto 0;
  }
  .p-mirai-return__head {
    font-size: 16px;
  }
  .p-mirai-return__list li {
    font-size: 14px;
  }
  .p-mirai-phase {
    flex-direction: column;
    gap: 20px;
  }
  .p-mirai-phase__item {
    padding: 24px 22px;
  }
  .p-mirai-phase__head {
    font-size: 18px;
  }
  .p-mirai-table {
    font-size: 14px;
  }
  .p-mirai-table th,
  .p-mirai-table td {
    padding: 12px 14px;
  }
  .p-mirai-partner {
    flex-direction: column;
    gap: 20px;
  }
  .p-mirai-partner__item {
    padding: 26px 22px 24px;
  }
  .p-mirai-partner__head {
    font-size: 17px;
  }
  .p-mirai-cta__head {
    font-size: 22px;
  }
  .p-mirai-cta__lead {
    font-size: 15px;
    line-height: 1.9;
    text-align: left;
  }
  .p-mirai-cta__lead:last-of-type {
    margin-bottom: 28px;
  }
}


/*====================================================
  Mirai Job 導線（トップ PICK UP / 事業案内 サムネイル）
====================================================*/

/* 事業案内ページ サムネイル
   写真が16:9のため、他事業のサムネイル（320×200）と高さを揃えてトリミングする */
.p-service-box--img__mirai {
  width: 100%;
  height: auto;
  aspect-ratio: 320 / 200;
  object-fit: cover;
  object-position: center 62%;
}

/* トップページ PICK UP セクション */
.p-top-mirai {
  padding: 0 0 90px;
}
.p-top-mirai__inner {
  position: relative;
  padding: 60px 50px 54px;
  text-align: center;
  color: #fff;
  /* 本文まで白文字が乗るため、色味のない黒の暗幕を重ねて写真の色をそのまま活かす
     （緑系にする場合: linear-gradient(rgba(10, 36, 14, 0.85), rgba(36, 104, 41, 0.85))） */
  background-image:
    linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.7)),
    url(img/mirai-job_01.jpg);
  background-size: cover;
  background-position: center 60%;
  background-repeat: no-repeat;
  background-color: #222;
}
.p-top-mirai__label {
  display: inline-block;
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 1;
  color: #fff;
  padding: 7px 16px 6px;
  border: solid 1px rgba(255, 255, 255, 0.6);
  margin: 0 0 26px;
}
.p-top-mirai__label span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-left: 10px;
}
.p-top-mirai__logo {
  font-family: "Teko", "HelveticaNeue-CondensedBold", Arial, sans-serif;
  font-size: 54px;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1;
  margin: 0 0 8px;
}
.p-top-mirai__name {
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0.14em;
  margin: 0 0 26px;
  padding: 0 0 22px;
  position: relative;
}
.p-top-mirai__name::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 40px;
  height: 2px;
  background: rgba(255, 255, 255, 0.7);
  transform: translateX(-50%);
}
.p-top-mirai__catch {
  font-size: 21px;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0.04em;
  margin: 0 0 20px;
}
.p-top-mirai__text {
  font-size: 15px;
  line-height: 2.0;
  max-width: 680px;
  margin: 0 auto;
}
.p-top-mirai .c-contact-btn-wrap {
  margin: 34px 0 0;
}

@media screen and (max-width: 767px) {
  .p-top-mirai {
    padding: 0 0 50px;
  }
  .p-top-mirai__inner {
    padding: 40px 22px 36px;
  }
  .p-top-mirai__label {
    font-size: 14px;
    margin: 0 0 20px;
  }
  .p-top-mirai__logo {
    font-size: 38px;
  }
  .p-top-mirai__name {
    font-size: 15px;
    margin: 0 0 20px;
    padding: 0 0 18px;
  }
  .p-top-mirai__catch {
    font-size: 17px;
    line-height: 1.8;
    margin: 0 0 16px;
  }
  .p-top-mirai__text {
    font-size: 14px;
    line-height: 1.9;
    text-align: left;
  }
}
