@charset "utf-8";
/* CSS Document */

/* メインビジュアル */



@media screen and (min-width:961px) { /*PC*/
	.p-mv {
		background:url("../img/mainvisual.jpg") center top no-repeat;
		background-size:cover;
		width:100%;
		max-width:1920px;
		height:550px;
		width:100%;
		margin:0 auto;
		overflow:hidden;
		border-radius:20px;
		position:relative;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-mv {
		background:url("../img/mv_mobile.jpg") center top no-repeat;
		background-size:cover;
		width:100%;
		aspect-ratio:1 / 1;
		width:100%;
		margin:0 auto;
		overflow:hidden;
		border-radius:20px;
		position:relative;
	}
}

@media screen and (min-width:961px) { /*PC*/
	.p-mv-logo {
		background:url("../img/mv-title.png") center center no-repeat;
		background-size:contain;
		width:40%;
		max-width:500px;
		height:308px;
		position:absolute;
		left:0;
		top:50px;
		z-index:50;
	}
	.p-mv-shadow {
		width:100%;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+70,0.65+100 */
		background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0) 70%,rgba(0,0,0,0.3) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		width:100%;
		height:550px;
		z-index:1;
	}
	.p-mv-catch {
		width:100%;
		background:url("../img/mv-catch.png") center center no-repeat;
		background-size:contain;
		height:147px;
		position:absolute;
		z-index:10;
		bottom:0;
		left:0;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-mv-title {
		display:none;
	}
}



/* コンタクトボタン */

.p-contact-bt {
	background-color:#ea68a2;
	display:block;
	width:100%;
	border-radius:20px;
	transition:all 0.3s;
	box-shadow:0 0 0 #ea68a2;
}

a:hover.p-contact-bt {
	transform:translateY(-5px);
	box-shadow:0 0 15px #ea68a2;
}

/* タイトル */

.p-head {
	margin:0 auto 60px;
}

/* ABOUT */

.p-about-wrap1 {
	width:100%;
	position:relative;
	
	display:flex;
	justify-content:center;
	
	flex-wrap:wrap;
}

@media screen and (min-width:961px) { /*PC*/
	.p-about-box {
		width:calc((100% - 36px) / 2);
		text-align:left;
		margin-bottom:60px;
		gap:36px;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-about-box {
		width:100%;
		text-align:left;
		margin-bottom:24px;
	}
}

.p-about-img {
	background:url("../img/about_catch.jpg") center center no-repeat;
	background-size:cover;
	border-radius:20px;
	overflow:hidden;
}

@media screen and (max-width:960px) { /*MB*/
	.p-about-img {
		aspect-ratio:4 / 3;
	}
}

.p-about-head {
	margin-bottom:24px;
}

.p-about-catch p {
	font-size:2rem;
	font-weight:bold;
}

.p-about-catch p strong {
	background: #ffffff;
	color:#ea68a2;
}

@media screen and (min-width:961px) { /*PC*/
	.p-about-catch p {
		line-height:2;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-about-catch p {
		line-height:1.7;
	}
	.p-about-catch p br {
		display:none;
	}
}

.p-about-wrap2 {
	width:100%;
	position:relative;
	background:url("../img/situation.png") center top no-repeat;
	background-size:contain;
	background-color:#fff;
	
	box-sizing:border-box;
	border:3px solid #fff;
	margin-bottom:36px;
}

@media screen and (min-width:961px) { /*PC*/
	.p-about-wrap2 {
		padding:80px 40px 40px;
		border-radius:50px;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-about-wrap2 {
		padding:40px 20px 20px;
		border-radius:20px;
	}
}

.p-about-howto {
	margin-bottom:48px;
}

.p-about-list {
	margin-bottom:24px;
}

.p-about-list ul {
	display:flex;
	flex-wrap:wrap;
	gap:24px;
	justify-content:center;
}

.p-about-list ul li {
	width:calc((100% - 72px) / 4);
	border-radius:10px;
	overflow:hidden;
}

@media screen and (min-width:961px) { /*PC*/
	.p-about-list ul li {
		width:calc((100% - 72px) / 4);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-about-list ul li {
		width:calc((100% - 24px) / 2);
	}
}

.p-task-end {
	background-color:#1d2088;
	border-radius:10px;
	overflow:hidden;
	padding:0 40px;
	box-sizing:border-box;
}



@media screen and (min-width:961px) { /*PC*/
	.p-about-end {
		font-size:3.6rem;
		line-height:2;
		font-weight:bold;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-about-end {
		font-size:2.4rem;
		line-height:1.7;
		font-weight:bold;
	}
}

.p-about-end p strong {
	background: #ffffff;
	color:#ea68a2;
}

/* タレント */

.p-talent-wrap {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	position:relative;
	width:100%;
	margin-bottom:60px;
}

.p-talent-box {
	border-radius:20px;
	overflow:hidden;
	background-color:#fff;
	display:flex;
	flex-direction:column;
}

@media screen and (min-width:961px) { /*PC*/
	.p-talent-wrap {
		gap:32px;
	}
	.p-talent-box {
		width:calc((100% - 64px) / 3);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-talent-wrap {
		gap:16px;
	}
	.p-talent-box {
		width:calc((100% - 16px) / 2);
	}
}
@media screen and (max-width:728px) { /*MB*/
	.p-talent-wrap {
		gap:16px;
	}
	.p-talent-box {
		width:100%;
	}
}

.p-talent-img {
	width:100%;
	aspect-ratio:3 / 4;
	overflow:hidden;
	position:relative;
}

@media screen and (min-width:961px) { /*PC*/
	.p-talent-img {
		width:100%;
		aspect-ratio:3 / 4;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-talent-img {
		width:100%;
		aspect-ratio:1 / 1;
	}
}

.p-front-affilication {
	position:absolute;
	left:20px;
	top:20px;
}

.p-talent-img a img {
	transition:all 0.3s;
}

.p-talent-img a:hover img {
	transform:scale(110%);
	opacity:0.6;
}

.p-talent-name {
	display:flex;
	flex-direction:column;
	gap:8px;
	box-sizing:border-box;
	padding:12px;
}

.p-talent-name p {
	font-size:2.2rem;
	font-weight:bold;
	color:#ea68a2;
}

.p-talent-name span {
	font-size:1.6rem;
	color:#ea68a2;
}

/* WORKS */

.p-works-wrap {
	display:flex;
	flex-wrap:wrap;
	gap:32px;
	margin-bottom:60px;
}

.p-works-box {
	width:calc((100% - 32px) / 2);
	background-color:#fff;
	text-align:left;
	border-radius:10px;
	overflow:hidden;
	box-sizing:border-box;
	padding:24px;
}

@media screen and (min-width:961px) { /*PC*/
	.p-works-box {
		width:calc((100% - 32px) / 2);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-works-box {
		width:100%;
	}
}

.box1 {
	border:1px solid #6a77e1;
	color: #6a77e1;
}

.box2 {
	border:1px solid #6fba32;
	color: #6fba32;
}

.box3 {
	border:1px solid #f19149;
	color: #f19149;
}

.box4 {
	border:1px solid #21d8fe;
	color: #21d8fe;
}

.p-works-topics {
	margin-bottom:12px;
}

.p-works-box ul li {
	font-size:2rem;
	line-height:1.8;
}

.p-works-catch {
	font-size:2.5rem;
	line-height:2;
	font-weight:bold;
}

.p-works-catch p strong {
	background: #ea68a2;
	color:#fff;
}

@media screen and (min-width:961px) { /*PC*/
}
@media screen and (max-width:960px) { /*MB*/
	.p-works-catch p {
		text-align:left;
	}
	.p-works-catch p strong br {
		display:none;
	}
}

/* FAQ */

.p-faq-wrap {
	display:flex;
	flex-wrap:wrap;
	gap:32px;
}

.p-faq-box {
	background-color:#fff;
	text-align:left;
	border-radius:10px;
	overflow:hidden;
}

@media screen and (min-width:961px) { /*PC*/
	.p-faq-box {
		width:calc((100% - 32px) / 2);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-faq-box {
		width:100%;
	}
}

.p-faq-box dt {
	background-color:#ea68a2;
	color:#fff;
	font-size:1.5rem;
	box-sizing:border-box;
	padding:12px;
	line-height:1.5;
}

.p-faq-box dd {
	color:#ea68a2;
	font-size:1.5rem;
	box-sizing:border-box;
	padding:12px;
	line-height:1.5;
}

/* フッター */

.p-foot-wrap {
	display:flex;
	flex-direction:column;
	gap:24px;
}

.p-foot-logo {
	max-width:80%;
	margin:0 auto 24px;
}

.p-foot-banner {
	display:flex;
	justify-content:center;
	align-items:center;
}

@media screen and (min-width:961px) { /*PC*/
	.p-foot-banner {
		gap:60px;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-foot-banner {
		gap:24px;
		width:80%;
		margin:0 auto;
		flex-direction:column;
	}
}

.p-copyright {
	font-size:1.4rem;
}

/* サブページ戻る */

.p-return a {
	background-color:#f5accd;
	display:flex;
	width:150px;
	height:40px;
	font-size:1.5rem;
	justify-content:center;
	align-items:center;
	color:#fff;
	font-weight:bold;
}

.p-return a:hover {
	text-decoration:none;
	color:#f5accd;
	background-color:#fff;
}

/* タレント個別 */

.p-st-wrap {
	width:100%;
	position:relative;
	display:flex;
	flex-wrap:wrap;
	gap:32px;
}

@media screen and (min-width:961px) { /*PC*/
	.p-st-left, .p-st-right {
		width:calc((100% - 32px) / 2);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-st-left, .p-st-right {
		width:100%;
	}
}



.p-st-thum {
	width:100%;
	border-radius:10px;
	overflow:hidden;
	margin-bottom:32px;
}

.p-st-gallery-wrap {
	display:flex;
	flex-wrap:nowrap!important;
	gap:16px!important;
}

.p-st-gallery-wrap figure {
	border-radius:10px;
	overflow:hidden;
}

.p-st-right {
	text-align:left;
}

.p-st-name {
	margin-bottom:60px;
}

.p-st-spell {
	font-family: "Fredoka", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-variation-settings:
	"wdth" 100;
	font-size:2.4rem;
	letter-spacing:0.5rem;
	color:#ea68a2;
	margin-bottom:16px;
	display:block;
}

.p-st-name p {
	font-size:5rem;
	font-weight:bold;
	letter-spacing:0.5rem;
	margin-bottom:16px;
	display:block;
}

.a01 {
	display:none;
	visibility:hidden;
	opacity:0;
}

.a02 span {
	box-sizing:border-box;
	padding:4px 16px;
	background-color:#ea68a2;
	color:#fff;
	font-size:1.5rem;
}

.a03 span {
	box-sizing:border-box;
	padding:4px 16px;
	background-color:orange;
	color:#fff;
	font-size:1.5rem;
}

.p-st-right h2 {
	color:#ea68a2;
	font-size:1.8rem;
}

.p-st-line {
	display:flex;
	flex-wrap:wrap;
	flex-direction:column;
	gap:12px;
	border-bottom:1px dashed #666666;
	margin-bottom:24px;
	padding-bottom:8px;
}

.p-st-line p {
	font-size:1.6rem;
	line-height:1.5;
}

ul.p-st-sns {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:12px;
}

ul.p-st-sns li {
	width:40px;
	height:40px;
	background-color:#fff;
	border-radius:5px;
	overflow:hidden;
}

ul.p-st-sns li a {
	text-indent:-9999px;
	overflow:hidden;
	width:40px;
	height:40px;
	display:block;
	transition:all 0.3s;
}

ul.p-st-sns li a:hover {
	opacity:0.6;
}

a.p-twitter {background:url("../img/icon_x.png") center center no-repeat; background-size:cover;}
a.p-tiktok {background:url("../img/icon_tiktok.png") center center no-repeat; background-size:cover;}
a.p-instagram {background:url("../img/icon_instagram.png") center center no-repeat; background-size:cover;}
a.p-youtube {background:url("../img/icon_youtube.png") center center no-repeat; background-size:cover;}
a.p-twitch {background:url("../img/icon_twitch.png") center center no-repeat; background-size:cover;}
a.p-otherurl {background:url("../img/icon_home.png") center center no-repeat; background-size:cover;}

ul.p-st-taiou, ul.p-st-katagaki, ul.p-st-language {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:12px;
}

ul.p-st-taiou li span, ul.p-st-katagaki li span, ul.p-st-language li span {
	box-sizing:border-box;
	padding:4px 8px;
	font-size:1.5rem;
	display:inline-block;
}

.k01 span {background-color:#E5546B;color:#fff;}
.k02 span {background-color:#E87740;color:#fff;}
.k03 span {background-color:#D4952A;color:#fff;}
.k04 span {background-color:#6EA840;color:#fff;}
.k05 span {background-color:#2A9E9E;color:#fff;}
.k06 span {background-color:#4A8FE0;color:#fff;}
.k07 span {background-color:#8B6EC0;color:#fff;}
.k08 span {background-color:#C45DA0;color:#fff;}
.k09 span {background-color:#5E7A96;color:#fff;}
.k10 span {background-color:#A87058;color:#fff;}

.p-katagaki_oth01 span {background-color:#4A5AC0;color:#fff;}
.p-katagaki_oth02 span {background-color:#B8B020;color:#fff;}

.t01 span {border:1px solid #E5546B; color:#E5546B;}
.t02 span {border:1px solid #E87740; color:#E87740;}
.t03 span {border:1px solid #D4952A; color:#D4952A;}
.t04 span {border:1px solid #6EA840; color:#6EA840;}
.t05 span {border:1px solid #2A9E9E; color:#2A9E9E;}
.t06 span {border:1px solid #4A8FE0; color:#4A8FE0;}
.t07 span {border:1px solid #8B6EC0; color:#8B6EC0;}
.t08 span {border:1px solid #C45DA0; color:#C45DA0;}
.t09 span {border:1px solid #5E7A96; color:#5E7A96;}
.t10 span {border:1px solid #A87058; color:#A87058;}

.p-taiou_oth01 span {border:1px solid #4A5AC0; color:#4A5AC0;}
.p-taiou_oth02 span {border:1px solid #B8B020; color:#B8B020;}

.p-st-language li span {
	background-color:#ea68a2;color:#fff;
}

/*お問い合わせ*/

.p-contact-form {
	width:100%;
}

.p-form-premise,
.p-form-acceptance {
	text-align: left;
	width:100%;
}

.p-contact-form dl {
	width:100%;
	display: flex;
	justify-content: space-between;
	margin-bottom:8px;
}

.p-contact-form dl dt {
	width:29%;
	color:#fff;
	background-color:#ea68a2;
	font-size:1.6rem;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	padding:16px;
}

.p-contact-form dl dt span {
	margin-left:8px;
	font-size: 90%;
	color:yellow;
	font-weight: bold;
}

.p-contact-form dl dd {
	width:70%;
	background-color:#F9F9F7;
	position: relative;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	flex-direction: column;
	padding:16px;
	font-size:1.6rem;
}

@media screen and (min-width:1025px) {
	.p-contact-form dl {
		display: flex;
		justify-content: space-between;
	}
	.p-contact-form dl dt {
		width:29%;
	}
	.p-contact-form dl dd {
		width:70%;
	}
}
@media screen and (max-width:1024px) {
	.p-contact-form dl {
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		flex-wrap: wrap;
	}
	.p-contact-form dl dt {
		width:100%;
	}
	.p-contact-form dl dd {
		width:100%;
	}
}

.p-contact-form dl dd div {
	width:100%;
	margin:0 auto;
	position: relative;
	text-align: left;
}

.p-contact-form dl dd input[type="text"],input[type="email"],input[type="tel"],input[type="url"] {
	width:100%;
	display: block;
	margin:0 auto;
    box-sizing: border-box;
    outline: none;
    border: 1px solid lightgray;
    border-radius: 3px;
    padding: 10px 10px 10px 10px;
    transition: all 0.1s ease-out;
	font-size:1.6rem;
	color:dimgray;
	position: relative;
}

span.check {color:dimgray; margin:8px 0;display: block;}

.p-contact-form select {
	width:100%;
	display: block;
    box-sizing: border-box;
    outline: none;
    border: 1px solid lightgray;
    border-radius: 3px;
    padding: 10px 10px 10px 10px;
    transition: all 0.1s ease-out;
	font-size:1.6rem;
	color:dimgray;
	position: relative;
}

.p-contact-form dl dd textarea {
	width:100%;
	display: block;
	margin:0 auto;
	box-sizing: border-box;
    outline: none;
    border: 1px solid lightgray;
    border-radius: 3px;
    padding: 10px 10px 10px 10px;
    transition: all 0.1s ease-out;
	font-size:1.6rem;
	color:dimgray;
	position: relative;
}

.wpcf7-form-control-wrap {
	display: block;
}

.wpcf7-form-control.wpcf7-checkbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap:10px;
}

.wpcf7-list-item-label {/*項目の色や文字サイズ*/
	cursor: pointer;
}

.p_form_label .wpcf7-list-item {
	display: block;
	
	line-height: 40px;
	height:40px;
	background-color:#FFF;
	box-sizing: border-box;
	padding:0 8px;
	border-radius: 5px;
	position: relative;
	margin:0!important;
}

/*PC*/
@media screen and (min-width:1025px) {
	.p-form-label .wpcf7-list-item {
		width:calc(calc(100% - 20px) / 3);
	}
}
/*MOB*/
@media screen and (max-width:1024px) {
	.p-form-label .wpcf7-list-item {
		width:calc(calc(100% - 20px) / 2);
	}
}

input[type="checkbox"] {
  position: absolute;
  opacity: 0;/*既存のチェックボックスを見えなくする*/
}

.wpcf7-list-item-label:before {/*チェックボックスの枠*/
  content: '';
  border: 1px solid #ea68a2;
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  top: -3px;
  margin-right: 12px;
  vertical-align: middle;
  cursor: pointer;
  text-align: center;
}

input[type="checkbox"]:checked + .wpcf7-list-item-label:after {/*チェックアイコン*/
	content: "";
	display: block;
	position: absolute;
	top: 10px;
	left: 8px;
	width: 20px;
	height: 20px;
	background: url("../img/check-solid.svg") no-repeat center;
  background-size: contain;
}

.p-contact-check {
	width:100%;
	background-color:#F9F9F7;
	position: relative;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	flex-direction: column;
	padding:16px;
	font-size:1.6rem;
}

.p-contact-check .wpcf7-list-item {
	display: block!important;
	width:100%;
	line-height: 40px;
	height:40px;
	background-color:#FFF;
	box-sizing: border-box;
	padding:0 8px;
	border-radius: 5px;
	position: relative;
	margin: 0!important;
}

.p-form-bt {
	width:100%;
	margin:0 auto;
}

.p-form-bt input[type="submit"],input[type="reset"] {
	display: block;
	width:200px;
	height:60px;
	color:#fff;
	background-color:#503989;
	outline: none;
	border:0;
	font-size: 1.6rem;
	font-weight: bold;
	cursor: pointer;
	margin:0 auto;
}

.p-form-bt input[type="submit"] {
	background-color:#ea68a2;
	transition: all 0.3s;
	border:5px solid #ea68a2;
}

.p-form-bt input[type="submit"]:hover {
	background-color:#fff;
	color:#ea68a2;
	border:5px solid #ea68a2;
}

.wpcf7 form .wpcf7-response-output {
	margin:0!important;
}

div.wpcf7-mail-sent-ok {
	width:100%;
border: 2px solid #ea68a2;
}
div.wpcf7-mail-sent-ng {
	width:100%;
border: 2px solid #ff0000;
}
div.wpcf7-spam-blocked {
	width:100%;
border: 2px solid #ffa500;
}
div.wpcf7-validation-errors {
	width:100%;
border: 2px solid #f7e700;
}


.wpcf7 form.sent .wpcf7-response-output {/* 送信ボタン下完了時 */
    border-color: #8cebe5;
	font-size: 1.8rem;
	box-sizing: border-box;
	padding:12px;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {/* 送信ボタン下未入力警告 */
    border-color: #f88;
	font-size: 1.8rem;
	box-sizing: border-box;
	padding:12px;
}
.wpcf7 span.wpcf7-not-valid-tip {
    display: none;
}
.wpcf7 .wpcf7-not-valid {
    background: pink;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
width: 100%!important
}

/*プライバシー*/

.p-privacy-body {
	width:100%;
	margin:0 auto;
	font-size:1.6rem;
	text-align: left;
	padding:40px 0;
	box-sizing: border-box;

}

.p-privacy-body strong {
	font-size: 130%;
	font-weight: bold;
	color:#ea68a2;
}
