@import url('https://fonts.googleapis.com/css2?family=Mochiy+Pop+P+One&display=swap');

:root {
	margin: 0 !important;
}

body,
html {
	background-color: #FFFFFF;
	border: 0;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
	height: 100%;
}

body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	overflow-x: auto;
	overflow-y: scroll
}

p,h1,h2,h3,h4,h5,ul,li,dl,dt,dd {
	margin: 0;
	padding: 0;
}

ul,li,div,p,a,img,dl,dt,dd,tr,th,td {
	box-sizing: border-box;
}

img {
	vertical-align: bottom;
}

ul {
	list-style: none;
}

a {
	cursor: pointer;
	text-decoration: none;
}

.sp_767 {
	display: none;
}

/* common */
.header {
	width: 100%;
	background-color: #FFFFFF;
	box-shadow: -1px 1px 3px 2px rgba(0, 0, 0, 0.1);
}
.headerArea {
	max-width: 980px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0;
	width: 100%;
}

.headerLogoImg {
	max-width: 200px;
	height: auto;
}

.mainMenuUl {
	font-size: 17px;
	font-family: rodin-demi-bold,"メイリオ","meiryo","ヒラギノ角ゴ pro w3","hiragino kaku gothic pro",osaka,sans-serif;
	display: flex;
	flex-wrap: wrap;
	direction: ltr;
	flex-grow: 1;
	justify-content: space-between;
	padding: 0;
}

.mainMenuLi {
	border-right: 1px solid #000000;
	text-align: center;
	padding: 0 5px;
}

.mainMenuSpan {
	letter-spacing: .1em;
}

.mainMenuLink {
	margin: 3px 2px;
	padding: 10px;
	color: #595959;
}

.mainMenuLink:hover {
	color: #ff7b08;
}

.spMenuBtn {
	display: none;
}

.closeBtn {
	display: none;
	transition: all .4s;
}

.footerMenuArea {
	width: 100%;
	margin: 0;
	background-color: #05316a;
	padding: 30px 0;
}

.footerNav {
	display: flex;
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
	justify-content: center;
	gap: 6%;
}

.footerMenuLi a {
	color: #FFFFFF;
	font-size: 1.1rem;
}

.footerMenuLi {
	color: #FFFFFF;
	line-height: 1.8;
}

.footerMenuLi.down {
	margin: 0 0 0 1.7rem;
}

.footerMenuLi::before {
	content: "→";
	vertical-align: top;
	margin: 0 10px 0 0;
}

.footerMenuRight {
	display: grid;
}

.footerAnotherLink {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
	padding: 30px 0;
}

.footerAnotherLinkUl {
	display: flex;
	justify-content: center;
	gap: 10px;
	align-items: center;
}

.footerAnotherLinkLi {
	width: 100%;
	max-width: 160px;
}

.footerAnotherLinkLi img {
	width: 100%;
	height: auto;
}

.footerTopLogoArea {
	text-align: center;
}

.footerTopLogoArea img {
	width: 100%;
	max-width: 200px;
}

.copyrightArea {
	text-align: center;
	padding: 30px 0 30px 0;
}

.copyright a {
	color: #000000;
	text-decoration: underline;
}

/* main */

.topViewImgArea img {
	width: 100%;
}

.topViewAchievementImg img {
	width: 100%;
	height: auto;
}


/* growth */
.growthMovieBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
	padding: 50px 0;
	height: 90vh;
	background: url(../images/growth/bg01.webp) center no-repeat;
	background-size: cover;
}

.growthMovieH1 {
	font-size: 1.8rem;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-family: "Mochiy Pop P One", sans-serif;
}

.growthMovieH1 .big {
	font-size: 2.5rem;
}

.growthMovieH1 .pink {
	color: #ff5c96;
}

.growthMovie {
	width: 100%;
	max-width: 699px;
	height: 394px;
	margin: 20px auto 0;
}

.growthMessageH3 {
	text-align: center;
	font-size: 1.8rem;
	color: #0c3264;
}

.growthMessageH3 .green {
	color: #8eb921;
}

.growthMessageInner {
	width: 90%;
	max-width: 980px;
	margin: 30px auto 60px;
	padding: 30px;
	background: url(../images/common/bg01.webp) center top;
	background-size: cover;
}

.growthMessageBox {
	color: #0c3264;
	background: #FFFFFF;
	width: 90%;
	margin: 50px auto;
}

.growthMessageBox p {
	font-size: 1.2rem;
}

.growthMessageBoxTop {
	display: flex;
	justify-content: space-between;
	padding: 30px 30px 0 30px;
}

.growthMessageBoxH3 {
	font-size: 2rem;
}

.growthMessageBoxH3 .blue {
	color: #2367c2;
}

.growthMessageBox .growthMessageBoxP {
	margin: 10px 0 0 0;
	text-decoration: underline;
	font-size: 1.25rem;
}

.growthMessageBoxRight img {
	width: 100%;
	height: auto;
	max-width: 300px;
}

.growthMessageBoxText {
	padding: 0 30px 30px;
}

.growthMessageBoxText p {
	margin: 0 0 20px 0;
}

.growthMessageBoxText p:last-child {
	margin-bottom: 0;
}

.growthMessageLink {
	display: block;
	margin: 0 auto;
	text-align: center;
	color: #ff7b0a;
	background: #FFFFFF;
	border: 3px solid #ff7b0a;
	border-radius: 39px;
	width: 250px;
	padding: 20px 10px 20px 20px;
	font-size: 1.2rem;
	font-weight: bold;
	transition: .2s;
}

.growthMessageLink::after {
	content: "＞";
	margin-left: 10px;
	vertical-align: bottom;
}

.growthMessageLink:hover {
	background: #ff7b0a;
	color: #FFFFFF;
}

.growthMessageTrialLink {
	text-align: center;
	display: block;
	background: #ff7b0a;
	width: 320px;
	margin:0 auto 80px;
	color: #FFFFFF;
	padding: 30px 0 30px 15px;
	border-radius: 50px;
	font-size: 1.4rem;
	font-weight: bold;
	transition: .2s;
}

.growthMessageTrialLink::after {
	content: "＞";
	background: #FFFFFF;
	color: #ff7b0a;
	border-radius: 50%;
	padding: 8px;
	margin-left: 10px;
}

.growthMessageTrialLink:hover {
	background: #ffcb2e;
}

.growthMessageTrialLink:hover:after {
	color: #ffcb2e;
}

@media screen and (max-width:767px) {
	.growthMovieH1 {
		font-size: 1.6rem;
	}

	.growthMovieH1 .big {
		font-size: 2.2rem;
	}

	.growthMovieBox {
		height: 100%;
		width: 100%;
	}

	.growthMessageInner {
		padding: 30px 20px;
		width: 100%;
	}

	.growthMessageBox {
		margin: 0 auto;
		width: 100%;
	}

	.growthMessageBoxTop {
		flex-wrap: wrap;
		padding: 20px 20px 0 20px;
	}

	.growthMessageBoxH3 {
		font-size: 1.6rem;
	}

	.growthMessageLink {
		margin: 20px auto 0;
	}
}

/* staff */
.staffMain {
	color: #0c3264;
}

.staffLeadArea {
	margin: 0 auto 80px;
	text-align: center;
}

.staffLeadBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
	padding: 50px 0;
	height: 90vh;
	background: url(../images/staff/bg02.webp) center no-repeat;
	background-size: cover;
}

.staffLeadH1 {
	font-size: 2.4rem;
	margin: 0 auto 30px;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-family: "Mochiy Pop P One", sans-serif;
}

.staffLeadP {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.8;
	margin: 0 auto 20px;
	-webkit-text-stroke: 5px #ece9e0;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
}

.staffLeadP .pink {
	color: #ff5c96;
}

.staffIntroductionArea, .staffSupporterArea {
	padding: 80px 0;
	background: url(../images/common/bg01.webp) center no-repeat;
	background-size: cover;
	margin: 0 auto 100px;
}

.staffIntroductionH2,.staffSupporterH2, .staffFounderH2 {
	text-align: center;
	font-size: 2rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	margin: 0 auto 30px;
	font-family: "Mochiy Pop P One", sans-serif;
}

.staffBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto 20px;
	background: #FFFFFF;
	display: flex;
	gap: 1rem;
	font-size: 1.2rem;
	line-height: 1.8;
	padding: 15px 10px;
}

.staffImg img {
	width: 200px;
	height: auto;
}

.staffInfo, .staffSupporterInfo {
	width: calc(100% - (200px));
}

.staffName {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.staffNameH3 {
	font-weight: normal;
}

.staffNameH3 .big {
	font-size: 2.2rem;
	margin: 0 7px 0 0;
	color: #2a82f8;
	font-weight: bold;
}

.staffBirthplace {
	display: flex;
	align-items: end;
}

.staffBirthplace img {
	width: 100%;
	height: auto;
	max-width: 70px;
	margin: 0 0 0 10px;
}

.staffText {
	margin: 15px 0 0 0;
}

.staffSupporterBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto 20px;
	background: #FFFFFF;
	display: flex;
	gap: 1rem;
	font-size: 1.2rem;
	line-height: 1.8;
	padding: 15px 10px;
}

.staffSupporterImg img {
	width: 200px;
	height: auto;
}

.staffSupporterH3 {
	font-weight: normal;
}

.staffSupporterH3 .big {
	font-size: 2.2rem;
	color: #ff6198;
	font-weight: bold;
	margin-right: 5px;
}

.staffFounderArea {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.staffFounderBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto 80px;
	background: url(../images/common/bg01.webp) center no-repeat;
	padding: 50px;
}

.staffFounderProfileBox {
	background: #FFFFFF;
	padding: 20px 30px;
	font-size: 1.2rem;
	line-height: 1.6;
}

.staffFounderName {
	font-size: 1.1rem;
}

.staffFounderName .big {
	color: #8dba23;
	font-weight: bold;
	font-size: 2.2rem;
	margin-right: 5px;
}

.staffFounderText {
	margin: 20px auto 0;
}

.staffFounderImg {
	width: 100%;
	height: auto;
	max-width: 250px;
	float: right;
	margin-left: 10px;
}

.staffFounderImg img {
	width: 100%;
}


.trialBtnArea {
	position: relative;
	padding: 80px 0;
	margin: 0 auto 80px;
}

.trialBtnArea img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
	transition: 0.7s;
	width: 100%;
	height: auto;
	max-width: 600px;
	z-index: 1;
}

.trialBtnArea img:hover:nth-of-type(2) {
	opacity: 0;
}

@media screen and (max-width:767px) {
	.staffLeadBox {
		width: 100%;
		padding: 40px 0;
		background: url(../images/staff/bg02_sp.webp) top center no-repeat;
		background-size: cover;
	}

	.staffLeadH1 {
		font-size: 1.6rem;
	}

	.staffBox {
		flex-wrap: wrap;
		padding: 15px 18px;
	}

	.staffLeadP {
		font-size: 1.25rem;
	}

	.staffImg {
		width: 100%;
		text-align: center;
	}

	.staffImg img {
		width: 250px;
	}

	.staffInfo, .staffSupporterInfo {
		width: 100%;
	}

	.staffName {
		flex-wrap: wrap;
	}

	.staffNameH3 {
		font-weight: normal;
		width: 100%;
		text-align: center;
	}

	.staffBirthplace {
		justify-content: center;
		width: 100%;
	}

	.staffIntroductionArea, .staffSupporterArea {
		background: url(../images/common/bg01_sp.webp) center no-repeat;
		background-size: cover;
	}

	.staffSupporterBox {
		flex-wrap: wrap;
		padding: 15px 18px;
	}

	.staffSupporterImg {
		width: 100%;
		text-align: center;
	}

	.staffSupporterImg img {
		width: 250px;
	}

	.staffSupporterH3 {
		text-align: center;
	}

	.staffFounderBox {
		padding: 50px 30px;
		width: 100%;
	}

	.staffFounderProfileBox {
		padding: 20px;
	}

	.staffFounderImg {
		text-align: center;
		float: none;
		margin: 0 auto;
	}

	.staffFounderCompany {
		font-size: 1.05rem;
	}
}

/* message */
.messageMain {
	color: #0c3264;
}

.messageTitleArea {
	text-align: center;
}

.messageTitle {
	padding: 80px 0;
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	background: url(../images/message/bg01.webp) center no-repeat;
	background-size: contain;
}

.messageTitleH1 {
	font-size: 2.4rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-family: "Mochiy Pop P One", sans-serif;
}

.messageParentArea {
	margin: 0 auto 80px;
}

.messageParentBox {
	width: 90%;
	max-width: 750px;
	margin: 50px auto 0;
}

.messageParentTitleArea {
	display: flex;
	justify-content: center;
	gap: 1rem;
}

.messageParentTitle {
	font-size: 1.4rem;
}

.messageParentH2 .blue {
	color: #2a83fc;
}

.messageParentWho {
	text-decoration: underline;
	margin: 10px 0 0 0;
}

.messageParentImg {
	width: 100%;
	height: auto;
	max-width: 300px;
}

.messageParentText {
	font-size: 1.15rem;
	line-height: 1.6;
}

.messageParentP {
	margin: 20px 0 0 0;
}

@media screen and (max-width:767px) {
	.messageTitle {
		background: url(../images/message/bg01.webp) top center no-repeat;
		background-size: contain;
		padding: 30px 0 80px;
	}

	.messageTitleH1 {
		font-size: 1.8rem;
	}

	.messageParentTitleArea {
		flex-wrap: wrap;
	}

	.messageParentTitle {
		font-size: 1.2rem;
	}
}

/* inquiry */
.inquiryMain {
	color: #0c3264;
}

.inquiryTopArea {
	text-align: center;
}

.inquiryTopBox {
	margin: 0 auto 50px;
	width: 100%;
	max-width: 980px;
	background: url(../images/inquiry/bg01.webp) center no-repeat;
	background-size: contain;
	padding: 50px 0;
}

.inquiryTopH1 {
	font-size: 2rem;
	margin: 0 auto 20px;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-family: "Mochiy Pop P One", sans-serif;
}

.inquiryTopText {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.8;
	margin: 0 auto 30px;
	-webkit-text-stroke: 5px #ece9e0;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
}

.inquiryBtn {
	background-color: #FFFFFF;
	color: #FF7B0A;
	font-size: 1.2rem;
	font-weight: bold;
	border: 2px solid #FF7B0A;
	width: 300px;
	border-radius: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
	transition: .3s;
	margin: 0 auto;
}

.inquiryBtn svg {
	width: 45px;
	height: 45px;
	vertical-align: bottom;
	margin-left: 20px;
	transition: .3s;
}

.inquiryBtn svg path {
	fill: #FF7B0A;
	transition: .3s;
}

.inquiryBtn:hover {
	background-color: #FF7B0A;
	color: #FFFFFF;
}

.inquiryBtn:hover svg path {
	fill: #FFFFFF;
}

.inquiryMainBtn {
	margin: 0 auto 30px;
}

.inquiryTime {
	color: #000000;
	font-size: 1.4rem;
	margin: 5px auto 80px;
}

.inquiryFaqP {
	font-size: 1.3rem;
	color: #000000;
	margin: 0 auto 20px;
}

.inquiryFaqP::before, .inquiryFaqP::after {
	content: "▼";
}

.inquiryFormH2 {
	font-size: 2rem;
	text-align: center;
	margin: 0 auto 30px;
}

.inquiryForm {
	width: fit-content;
	margin: 0 auto 80px;
}

.infoArea {
	display: flex;
	justify-content: space-between;
	gap: 2rem;
	margin: 0 0 20px 0;
}

.inquiryForm label {
	font-size: 1rem;
	line-height: 2;
	color: #000000;
}

span.required {
	color: #FF0000;
}

.inquiryForm input[type="text"], .inquiryForm input[type="email"], .inquiryForm textarea {
	font-size: 1.15rem;
	padding: 7px;
	border-radius: 5px;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: 3px solid #FF7B0A;
	background: #fff2e7;
	box-sizing: border-box;
}

.nameForm input {
	width: 250px;
}

.contentForm textarea {
	width: 100%;
}

.inquirySubmitArea input {
	margin: 50px auto 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: none;
	text-align: center;
	display: block;
	width: 200px;
	height: 60px;
	color: #FFFFFF;
	background: #7aa6df;
	font-size: 1.15rem;
	border-radius: 10px;
	transition: .3s;
}

.inquirySubmitArea input:hover {
	background: #ff5c95;
	cursor: pointer;
}

@media screen and (max-width:767px) {
	.inquiryTopBox {
		background: url(../images/inquiry/bg01.webp) center top no-repeat;
		background-size: cover;
	}

	.inquiryTopText {
		font-size: 1.4rem;
	}

	.inquiryTopH1 {
		font-size: 1.6rem;
	}

	.inquiryTime {
		margin: 5px auto 50px;
	}

	.inquiryFormH2 {
		font-size: 1.6rem;
	}

	.inquiryForm {
		width: 90%;
	}

	.infoArea {
		flex-wrap: wrap;
	}

	.infoArea input {
		width: 100%;
	}
}

/* faq */
.faqTitleBox {
	text-align: center;
	margin: 0 auto;
	width: 100%;
	max-width: 980px;
	padding: 80px 0 150px;
	background: url(../images/faq/bg01.webp) top center no-repeat;
	background-size: cover;
}

.faqTitleH1 {
	font-size: 2.2rem;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
}

.questionArea {
	width: 100%;
	max-width: 980px;
	margin: 30px auto;
}

h2.faqDt {
	color: #333333;
	margin: 0;
}

.faqDt::before {
	content: '';
	display: inline-block;
	width: 40px;
	height: 40px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='28.5 25.999 142.999 148.001' xmlns='http://www.w3.org/2000/svg' fill='%239EC735'%3E%3Cg%3E%3Cpath d='M169.534 131.902c-2.3-2.435-6.015-2.435-8.31-4.569-1.03-.952-2.188-1.259-3.279-1.131-1.844-.634-4.324-.02-5.195 1.847-4.683 10.084-11.881 19.913-22.784 23.755-4.961 1.749-10.147 2.256-15.256.921a47.69 47.69 0 0 0 2.983-4.732c3.153-5.754 5.558-12.053 7.124-18.419 3.135-12.735 3.736-26.149 2.379-39.166-2.391-22.946-9.44-53.533-34.257-62.002a43.77 43.77 0 0 0-13.336-2.307c-3.584-.265-7.226.026-10.257.553a34.652 34.652 0 0 0-3.696.86c-3.17.584-6.301 1.914-8.83 3.269-5.661 3.029-10.575 7.306-14.535 12.336-9.315 11.814-12.983 26.222-13.664 41.06-.348 7.71.097 15.441.825 23.116.733 7.813 1.737 15.677 3.925 23.228 3.791 13.103 11.579 26.006 24.064 32.443 5.502 2.84 12.132 4.226 18.5 3.771a33.37 33.37 0 0 0 10.554-.578 33.536 33.536 0 0 0 7.624-2.666c1.491 1.468 3.33 2.691 4.862 3.689 3.34 2.19 7.168 3.975 11.025 5.029a50.505 50.505 0 0 0 23.983.655c15.006-3.259 28.414-14.009 35.003-27.838 1.967-4.124 4.231-9.23.548-13.124zm-64.396-17.217c-.866 7.659-2.931 14.894-7.168 21.049-.927-1.555-1.885-3.095-2.797-4.646-1.885-3.203-3.622-6.58-5.697-9.66-2.234-3.32-5.513-2.62-8.566-.9-3.105 1.755-6.573 3.433-9.186 5.889-.82.061-1.486.583-1.87 1.274-.031-.02-.056-.046-.087-.067-1.148 2.456-.251 5.04.661 7.47.973 2.594 2.08 5.162 3.351 7.628.225.44.461.875.702 1.31-14.484-1.985-21.559-23.423-24.111-35.584-3.607-17.201-1.347-35.339 6.204-51.189 1.163-2.435 2.398-4.82 3.822-7.086.348-.317.697-.629 1.055-.926 3.294-2.768 7.116-5.26 11.323-6.339 9.068-2.328 17.235 3.628 21.805 11.026 5.313 8.606 7.998 19.186 9.74 29.051 1.839 10.432 2.013 21.186.819 31.7z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	vertical-align: middle;
	margin-right: 10px;
}

.faqDd {
	color: #353534;
	font-size: 1.1rem;
	line-height: 1.6;
	padding: 0 0 0 50px;
	margin: -10px 0 50px 25px;
}

.faqDd::before {
	content: '';
	display: inline-block;
	width: 40px;
	height: 40px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='44.499 18.5 110.998 163.001' xmlns='http://www.w3.org/2000/svg' fill='%23FF5C95'%3E%3Cg%3E%3Cpath d='M154.446 131.222c-.112-1.642-1.26-2.895-2.949-2.956l-3.164-.123a2613.19 2613.19 0 0 1-2.21-40.947c-.332-7.237-.633-14.479-.908-21.721-.235-6.291-.903-12.29-2.179-18.361a52.317 52.317 0 0 0 2.847-.425c1.24-.23 2.266-.726 2.802-1.933 1.337-2.997.74-7.406.862-10.628.143-3.754.74-7.917.281-11.646-.439-3.596-3.924-3.626-6.828-3.841-7.945-.593-15.661.823-23.52 1.749-3.756.445-7.527.803-11.303 1.013-1.383.082-3.031.046-4.358.527-1.056.389-1.567 1.212-2.383 1.99-.281.261-.097.634.194.731a4.666 4.666 0 0 0-.556 1.831c-.138 1.673.373 3.386.668 5.012.424 2.302.786 4.629 1.271 6.915.643 3.023 2.363 4.803 5.501 5.125 1.99.21 4.052.102 6.052.123.556.005 1.123.031 1.694.056a8112.5 8112.5 0 0 0-16.615 34.206c-3.21.256-6.414.823-9.645.946-4.542.169-9.104.097-13.63.624-8.308.962-16.279 3.892-22.469 9.682-5.644 5.278-9.287 12.843-9.4 20.622-.102 7.171 3.598 14.771 9.032 19.369 2.863 2.419 6.823 5.048 10.732 4.808 1.96-.123 4.383-1.662 4.802-3.626 1.184-1.33 2.159-2.982 2.934-4.271 1.495-2.496 1.832-5.529-.699-7.452-2.041-1.545-3.95-2.363-5.455-4.312-1.204-4.174.505-8.255 3.633-11.083 3.307-2.987 7.802-4.281 12.109-4.976 2.684-.43 5.705-.302 8.583-.547-5.654 11.932-11.232 23.905-16.661 35.945a3922.276 3922.276 0 0 1-6.119 13.513c-1.985 4.378-4.144 8.679-5.588 13.272-2.368-.072-4.705-.199-7.103-.097-1.414.056-2.307 1.074-2.439 2.445a105.86 105.86 0 0 0-.398 15.057c.066 1.519 1.153 2.496 2.623 2.629 9.731.9 19.545 1.775 29.235.031 1.148-.21 2.128-1.575 2.067-2.726-.23-4.455-.189-8.894.128-13.344.077-1.089-.868-2.307-1.929-2.542-2.306-.496-4.639-.752-6.966-.491 1.072-1.708 2.016-3.509 3.006-5.253 1.74-3.074 3.531-6.117 5.164-9.247a1425.496 1425.496 0 0 0 9.451-18.423l9.298-18.51c1.51-3.012 3.026-6.02 4.537-9.032.929-1.846 2.261-3.846 3.031-5.928 2.118 1.028 4.45 1.442 6.904 1.678 3.388.322 6.955.573 10.369.169-.964 7.467-.995 15.016-1.322 22.545-.153 3.555-.26 7.104-.322 10.664a23.39 23.39 0 0 0-4.986 1.248c-1.092.404-2.005 1.345-1.97 2.593.138 4.695.25 9.395.413 14.091.056 1.509 1.235 2.782 2.781 2.787a136.664 136.664 0 0 0 30.072-3.284c1.097-.24 2.148-1.524 2.041-2.685-.4-4.528-.736-9.054-1.043-13.586zM126.62 71.357c-.148 2.721-.332 5.432-.475 8.147a2.473 2.473 0 0 0-.424.194c-1.061.65-2.664.491-3.883.629-.082.01-.153.02-.23.036 1.495-3.703 2.99-7.401 4.491-11.099.321-.798.607-1.606.883-2.419a109.812 109.812 0 0 0-.362 4.512z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	margin: 0 0 -40px -50px;
}

.faqDd .faqDtP:not(:first-child) {
	margin: 20px 0 0 0;
}

.faqDtP a, .faqLi a {
	color: #353534;
	text-decoration: underline;
}

.faqDtP .underline {
	text-decoration: underline;
}

.faqUl {
	padding-left: 2rem;
}

.faqLi {
	list-style-type: disc;
}

.faqLinkBtn {
	background-color: #FFFFFF;
	color: #FF7B0A;
	font-size: 1.2rem;
	font-weight: bold;
	border: 2px solid #FF7B0A;
	width: 300px;
	border-radius: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
	transition: .3s;
	margin: 50px auto 100px;
}

.faqLinkBtn svg {
	width: 45px;
	height: 45px;
	vertical-align: bottom;
	margin-left: 20px;
	transition: .3s;
}

.faqLinkBtn svg path {
	fill: #FF7B0A;
	transition: .3s;
}

.faqLinkBtn:hover {
	background-color: #FF7B0A;
	color: #FFFFFF;
}


.faqLinkBtn:hover svg path {
	fill: #FF7B0A;
	transition: .3s;
}

.faqLinkBtn:hover svg path {
	fill: #FFFFFF;
}

@media screen and (max-width:767px) {
	.faqTitleBox {
		background-size: contain;
		padding: 20px 0 55px;
	}

	.faqTitleH1 {
		font-size: 1.8rem;
	}

	.faqDl {
		width: 90%;
		margin: 0 auto;
	}

	.faqDd {
		margin: -5px 0 50px 0;
	}
}

/* trial */
.trialTitleBox {
	text-align: center;
	width: 100%;
	max-width: 980px;
	margin: 0 auto 50px;
	background: url(../images/trial/bg01.webp) top center no-repeat;
	background-size: contain;
	padding: 50px 0 0;
	color: #0c3264;
}

.trialTitleH1 {
	font-size: 2.2rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	margin: 50px 0 30px 0;
}

.trialTitleH1 .big {
	font-size: 3rem;
	color: #ff5c96;
}

.trialTitleArea .topViewImgArea .topViewH1 {
	text-align: center;
	text-stroke:unset;
	paint-order: unset;
	-webkit-text-stroke: unset;
}

.trialTitleArea .topViewImgArea .topViewH1 .stroke {
	text-stroke: 5px #FFFFFF;
	-webkit-text-stroke:5px #FFFFFF;
	paint-order: stroke;
}

.trialTitleArea .topViewH1 span.circle {
	background-color: #ff5b97;
	border-radius: 50%;
	padding: 5px 17px 8px;
	margin: 0 2px;
	color: #FFFFFF;
}

.trialTitleP {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.8;
	margin: 0 auto 20px;
	-webkit-text-stroke: 5px #ece9e0;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
}

.trialTitleP .underline {
	border-bottom: 2px solid #0c3264;
}

.trialImageArea {
	display: flex;
	justify-content: center;
	gap: 1rem;
	margin: 150px auto 80px;
}

.trialImageBox {
	position: relative;
}

.trialImageTitle {
	position: absolute;
	color: #787878;
	font-weight: bold;
	left: 50%;
	transform: translateX(-50%);
	top: 15px;
	font-size: 1rem;
}

.trialImageBox img {
	width: 100%;
	height: auto;
	max-width: 200px;
}

.trialImageP {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	color: #010000;
	font-size: 1rem;
	line-height: 1.2;
	bottom: 15px;
}

.trialAlreadyP {
	text-align: center;
	font-size: 1.2rem;
	margin: 80px auto -30px;
}

.trialAlreadyP::before, .trialAlreadyP::after {
	content: "▼";
}

.trialAlreadyP::before {
	margin-right: 5px;
}

.trialAlreadyP::after {
	margin-left: 5px;
}

.trialMessageArea {
	padding: 0 0 80px 0;
}

.trialMessageH2 {
	text-align: center;
	color: #0c3264;
	font-size: 1.8rem;
	position: relative;
	width: fit-content;
	margin: 0 auto;
}

.trialMessageH2::before {
	content: "";
	width: 3px;
	height: 85px;
	background-color: #0c3264;
	display: inline-block;
	position: absolute;
	transform: rotate(-15deg);
	top: 0;
	left: -30px;
}

.trialMessageH2::after {
	content: "";
	width: 3px;
	height: 85px;
	background-color: #0c3264;
	display: inline-block;
	position: absolute;
	transform: rotate(15deg);
	right: -20px;
	top: 0;
}

.trialMessageBox {
	display: flex;
	flex-wrap: wrap;
	margin: 50px auto 20px;
	width: 100%;
	max-width: 800px;
	gap: 1%;
	justify-content: center;
}

.trialMessageFlex {
	display: flex;
	align-items: center;
	width: 49%;
	gap: 1rem;
	margin: 0 0 1% 0;
}

.trialMessageImg {
	width: 100px;
}

.trialMessageImg img {
	width: 100%;
	height: auto;
	max-width: 150px;
}

.trialMessageText {
	width: calc(100% - 100px);
}

.trialMessageP {
	font-size: 1.1rem;
}

.trialMessageSmall {
	font-size: 1rem;
}

.trialMessageSummery {
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	color: #0c3264;
}

.trialMessageSummery .pink {
	color: #ff5c96;
}

.trialDetailArea {
	padding: 80px 0 100px;
	background: url(../images/trial/bg02.webp) top center no-repeat;
	background-size: cover;
}

.trialDetailBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto 50px;
	background: #FFFFFF;
	padding: 20px 35px;
}

.trialDetailDt {
	font-size: 1.35rem;
	font-weight: bold;
}

.trialDetailDt::before {
	content: "▼";
}

.trialDetailDt .orange {
	background-color: #ffc508;
	padding: 3px 5px;
}

.trialDetailDd {
	margin: 0 0 30px 1.35rem;
	font-size: 1.2rem;
	line-height: 1.8;
}

.trialDetailOl {
	margin: 20px 0 0 0;
}

.trialDetailBtnArea {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
}

.trialReservationArea img {
	width: 100%;
	height: auto;
	max-width: 560px;
}

.trialReservationArea img:hover {
	opacity: 0.8;
}

.trialFaqArea {
	padding: 50px 0 80px;
}

.trialFaqBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
}

.trialFaqContent {
	border: 3px solid #7aa6df;
	border-radius: 10px;
	margin: 0 0 20px 0;
}

.trialFaqH3 {
	background-color: #7aa6df;
	color: #FFFFFF;
	font-size: 1.4rem;
	padding: 7px 0 7px 20px;
	font-weight: normal;
}

.trialFaqH3::before {
	content: "Q.";
	margin-right: 5px;
}

.trialFaqP {
	padding: 10px 20px;
	font-size: 1.1rem;
	line-height: 1.8;
}

.trialFaqP::before {
	content: "A.";
	margin-right: 5px;
}

@media screen and (max-width:767px) {
	.trialTitleBox {
		padding: 30px 0 0;
		background: url(../images/trial/bg01_sp.webp) top center no-repeat;
		background-size: contain;
	}

	.trialTitleH1 {
		font-size: 1.8rem;
		margin: 0 0 20px 0;
	}

	.trialTitleH1 .big {
		font-size: 2.2rem;
	}

	.trialTitleP {
		font-size: 1.3rem;
	}

	.trialImageArea {
		margin: 50px auto 30px;
		flex-wrap: wrap;
	}

	.trialImageBox {
		position: relative;
		width: 45%;
	}

	.trialReservationArea img {
		width: 90%;
	}

	.trialMessageH2::before, .trialMessageH2::after {
		height: 120px;
	}

	.trialMessageFlex {
		width: 90%;
	}

	.trialDetailBox {
		padding: 20px 25px;
	}

	.trialDetailOl {
		padding: 0 0 0 1.4rem;
	}

	.trialFaqH3 {
		padding: 7px 20px;
	}
}

/* method */
.methodMain img {
	width: 100%;
	height: auto;
}

.methodTopBox {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	padding: 80px 0 150px;
	background: url(../images/method/bg01.webp) top center no-repeat;
	background-size: cover;
	text-align: center;
	height: 100vh;
}

.methodTopH1, .topMethodArea .methodTopH2 {
	font-size: 2rem;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-family: "Mochiy Pop P One", sans-serif;
}

.methodTopH1 .big, .topMethodArea .methodTopH2 .big {
	font-size: 3rem;
}

.methodTopH1 .pink, .topMethodArea .methodTopH2 .pink {
	font-size: 3.5rem;
	color: #ff5c96;
	margin: 0 5px;
}

.methodTopImg img {
	max-width: 900px;
}

.methodPointArea {
	margin: 100px auto 0;
}

.methodPointH2 {
	text-align: center;
	color: #0c3264;
	font-size: 2rem;
	position: relative;
	width: fit-content;
	margin: 0 auto;
}

.methodPointH2 .point {
	display: block;
	font-size: 1.5rem;
}

.methodPointH2 .point::before {
	content: "";
	width: 2px;
	height: 35px;
	background-color: #0c3264;
	display: block;
	position: absolute;
	transform: rotate(-15deg);
	top: 3px;
	left: -15px;
}

.methodPointH2 .point::after {
	content: "";
	width: 2px;
	height: 35px;
	background-color: #0c3264;
	display: block;
	position: absolute;
	transform: rotate(15deg);
	top: 3px;
	right: -15px;
}

.methodPoint1Box {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.methodPoint1Img {
	position: relative;
}

.methodPoint1ImgText {
	position: absolute;
	right: 5%;
	top: 10%;
}

.methodPoint1Title {
	font-size: 2.2rem;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-weight: bold;
}

.methodPoint1Title .orange {
	font-size: 3rem;
	color: #ff790b;
}

.methodPoint1P {
	font-size: 1.4rem;
	color: #1e1e1e;
	margin: 20px 0 0 auto;
	width: fit-content;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
}

.methodPoint1P .yellow {
	font-weight: bold;
	font-size: 1.6rem;
	color: #f1aa1b;
}

.methodPoint1P .right {
	text-align: right;
	display: block;
}

.methodPoint1ListArea {
	background: url(../images/common/bg01.webp) center no-repeat;
	background-size: cover;
	max-width: 800px;
	margin: -150px auto 0;
	padding: 150px 30px 50px;
}

.methodPhase01, .methodPhase03 {
	position: relative;
}

.methodPhaseH3 {
	font-size: 1.6rem;
	color: #0c3264;
	line-height: 1.6;
}

.methodPhase02 {
	margin-bottom: 70px;
}

.methodPhaseH3 .phaseNumber {
	margin-right: 20px;
	font-size: 2.5rem;
}

.methodPhaseH3 .blue {
	color: #428ae1;
	font-size: 2rem;
	text-decoration: underline;
}

.methodPhase04 .methodPhaseH3 .blue {
	margin-left: 140px;
}


.methodPhase01 .bubble{
	top: -85%;
	left: 13%;
}

.methodPhase03 .bubble {
	top: -63%;
	left: 13%;
}

.bubble {
	position: absolute;
	display: inline-block;
	margin-bottom: 20px;
	padding: 16px;
	border: 2px solid #000000;
	border-radius: 8px;
	background-color: #FFFFFF;
	text-align: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #0c3264;
	padding: 9px 15px 7px;
	font-size: 1.2rem;
	font-weight: bold;
}

.bubble::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 25%;
	border-style: solid;
	border-width: 20px 20px 0 0;
	border-color: #000000 transparent transparent;
	translate: -50% 100%;
	transform: skew(-25deg);
	transform-origin: top;
}

.bubble::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 25%;
	border-style: solid;
	border-width: 15.2px 15.2px 0 0;
	border-color: #FFFFFF transparent transparent;
	translate: calc(-50% - 0.4px) 100%;
	transform: skew(-25deg);
	transform-origin: top;
}

.methodPhaseP {
	font-size: 1.1rem;
	margin-left: 145px;
	color: #0c3264;
}

.methodPhaseSummary {
	text-align: center;
	color: #0c3264;
	font-size: 2.2rem;
	font-weight: bold;
	margin: 30px 0 0 0;
}

.methodPoint2Box {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.methodPoint2Img {
	position: relative;
}

.methodPoint2ImgText {
	position: absolute;
	left: 5%;
	top: 20%;
	font-size: 2.2rem;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-weight: bold;
	width: fit-content;
}

.methodPoint2ImgText .big {
	font-size: 2.5rem;
}

.methodPoint2ImgText .green {
	color: #8fbc21;
	font-size: 3rem;
}

.methodPoint2ImgText .right {
	display: block;
	text-align: right;
}

.methodPoint2ListArea {
	background: url(../images/common/bg01.webp) center no-repeat;
	background-size: cover;
	max-width: 800px;
	margin: -100px auto 0;
	padding: 50px 30px 50px;
}

.methodPoint3Area {
	width: 100%;
	max-width: 980px;
}

.methodPoint3Img {
	position: relative;
}

.methodPoint3Img {
	position: relative;
}

.methodPoint3ImgText {
	position: absolute;
	right: 5%;
	top: 10%;
}

.methodPoint3Title {
	font-size: 2.2rem;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-weight: bold;
	width: fit-content;
}

.methodPoint3Title .blue {
	color: #428ae1;
	font-size: 2.6rem;
}

.methodPoint3Title .right {
	display: block;
	text-align: right;
}

.methodPoint3ImgP {
	color: #1e1e1e;
	margin: 20px 0 0 auto;
	width: fit-content;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-size: 1.4rem;
}

.methodPoint3ImgP .pink {
	font-weight: bold;
	color: #ff5c96;
}

.methodPoint3ImgP .bold {
	font-size: 1.6rem;
	font-weight: bold;
}

.methodPoint3AppArea {
	background: url(../images/common/bg01.webp) center no-repeat;
	background-size: cover;
	max-width: 800px;
	margin: -100px auto 0;
	padding: 50px 30px 50px;
}

.methodAppImg {
	width: 980px;
	margin: 0 calc(50% - 490px);
}

.methodPoint6AppH3 {
	color: #0c3264;
	font-size: 2.2rem;
	width: fit-content;
	margin: 30px auto;
}

.methodPoint6AppH3 .big {
	font-size: 2.6rem;
	display: block;
}

.methodPoint6AppH3 .big .underline {
	text-decoration: underline;
}

.methodPoint6AppH3 .big .pink {
	color: #ff5c96;
	text-align: right;
	display: block;
}

.methodDownArea {
	margin: 0 auto;
	padding: 30px;
	background: #FFFFFF;
	border-radius: 20px;
	width: 90%;
}

.methodDownImg {
	text-align: center;
}

.methodDownImg img {
	max-width: 500px;
}

.methodDownArea .faqLinkBtn {
	margin: 10px auto 30px;
}

.methodAppSummary {
	text-align: center;
	margin: 20px auto 0;
	font-size: 1.8rem;
	color: #0c3264;
	font-weight: bold;
}

.methodAppSummary .blue {
	color: #428ae1;
}

.methodAppBannerArea {
	display: flex;
	max-width: 800px;
	margin: 30px auto;
}

.methodPoint3Area .growthMessageTrialLink {
	width: 450px;
	font-size: 1.8rem;
}

.methodStoryArea {
	margin: 150px auto;
}

.methodStoryBox {
	width: 100%;
	max-width: 980px;
	margin: 0 auto 50px;
	background: url(../images/common/bg01.webp) center no-repeat;
	background-size: cover;
	padding: 80px 50px;
}

.methodStoryH2 {
	text-align: center;
	line-height: 1.6;
	font-size: 1.8rem;
	margin: 0 auto 20px;
	font-weight: normal;
	width: fit-content;
	position: relative;
}

.methodStoryH2::before {
	content: "";
	display: block;
	width: 3px;
	height: 92px;
	background: #000000;
	position: absolute;
	top: 0;
	left: -35px;
	transform: rotate(-20deg);
}

.methodStoryH2::after {
	content: "";
	display: block;
	width: 3px;
	height: 92px;
	background: #000000;
	position: absolute;
	top: 0;
	right: -33px;
	transform: rotate(20deg);
}

.methodStoryTextBox {
	background: #FFFFFF;
	padding: 40px 30px;
	font-size: 1.35rem;
	line-height: 1.6;
}

.methodStoryP {
	margin: 10px 0 20px 0;
}

.methodStoryP:first-of-type {
	margin-top: 0;
}

.methodStoryP:last-of-type {
	margin-bottom: 0;
}

.methodStoryP.center {
	text-align: center;
}

.methodStoryArea .growthMessageTrialLink {
	width: 450px;
	font-size: 1.8rem;
}

@media screen and (max-width:767px) {
	.methodTopBox {
		background: url(../images/method/bg01_sp.webp) top center no-repeat;
		background-size: cover;
		height: auto;
		padding: 50px 0 80px;
	}

	.methodTopH1 {
		font-size: 1.6rem;
		margin: 0 0 20px;
	}

	.methodPointArea {
		margin: 80px auto 0;
	}

	.methodPointH2 {
		font-size: 1.8rem;
	}

	.methodPointH2 .point {
		font-size: 1.3rem;
	}

	.methodPoint1Img {
		position: relative;
		display: flex;
		flex-direction: column-reverse;
	}

	.methodPoint1ImgText {
		position: relative;
		top: auto;
		right: auto;
		margin: 10px auto;
	}

	.methodPoint1Title {
		font-size: 2rem;
	}

	.methodPoint1Title .orange {
		font-size: 2.6rem;
	}

	.methodPoint1P {
		margin: 10px 0 0 0;
		text-align: center;
	}

	.methodPoint1P .right {
		text-align: center;
	}

	.methodPoint1ListArea {
		margin: 10px 0 0;
		padding: 80px 15px 50px;
	}

	.methodPhaseH3 {
		font-size: 1.4rem;
		line-height: 1.4;
		margin-bottom: 20px;
	}

	.methodPhaseH3 .phaseNumber {
		margin-right: 0;
	}

	.methodPhase04 .methodPhaseH3 .blue {
		font-size: 1.6rem;
		margin-left: 0;
	}

	.methodPhase01 .bubble {
		top: -60%;
		left: 13%;
	}

	.methodPhase03 .bubble {
		top: -35%;
		left: 13%;
	}

	.methodPhaseP {
		margin: -15px 0 0;
	}

	.methodPhaseSummary {
		font-size: 2rem;
	}

	.methodPoint2Img {
		position: relative;
		display: flex;
		flex-direction: column-reverse;
	}

	.methodPoint2ImgText {
		position: relative;
		top: auto;
		left: auto;
		margin: 10px auto;
		font-size: 2rem;
	}

	.methodPoint2ImgText .big {
		font-size: 2.2rem;
	}

	.methodPoint2ImgText .green {
		font-size: 2.5rem;
	}

	.methodPoint2ListArea {
		margin: 10px auto 0;
		padding: 50px 0;
	}

	.methodPoint3Img {
		position: relative;
		display: flex;
		flex-direction: column-reverse;
	}

	.methodPoint3ImgText {
		position: relative;
		top: auto;
		right: auto;
		margin: 10px auto;
	}

	.methodPoint3Title {
		font-size: 2rem;
	}

	.methodPoint3Title .blue {
		font-size: 2.4rem;
	}

	.methodPoint3ImgP {
		margin: 10px 0 0 0;
	}

	.methodPoint3AppArea {
		margin: 10px auto 0;
		padding: 50px 15px;
	}

	.methodAppImg {
		width: 100%;
		margin: 0 auto;
	}

	.methodPoint6AppH3 {
		margin: 20px auto;
		font-size: 1.8rem;
	}

	.methodPoint6AppH3 .big {
		font-size: 2.2rem;
	}

	.methodPoint6AppH3 .big .pink {
		text-align: left;
	}

	.methodDownArea {
		margin: 0 auto;
		width: 100%;
	}

	.methodPoint3Area .growthMessageTrialLink {
		width: 95%;
	}

	.methodStoryH2 {
		font-size: 1.6rem;
	}

	.methodStoryH2::before {
		left: -30px;
	}

	.methodStoryH2::after {
		right: -28px;
	}

	.methodStoryBox {
		padding: 50px 20px;
	}

	.methodStoryTextBox {
		font-size: 1.2rem;
	}

	.methodStoryArea .growthMessageTrialLink {
		width: 95%;
	}
}

/* price */
.priceSelectBox {
	width: 100%;
	max-width: 980px;
	margin: 0 auto 20px;
	/* padding: 50px 0; */
	padding: 0 0 50px;
	background: url(../images/price/bg01.webp) top center no-repeat;
	background-size: contain;
}

.priceSelectH1, .topPriceSelectH2 {
	text-align: center;
	color: #0c3264;
	font-size: 2.6rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	margin: 50px 0 30px 0;
	font-family: "Mochiy Pop P One", sans-serif;
}

.priceSelectH1 .pink, .topPriceSelectH2 .pink {
	color: #ff5c96;
	font-size: 3.5rem;
	margin: 0 5px;
}

.priceSelectLead, .priceSelectMenuTitle {
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.6;
}

.priceSelectMenuTitle {
	margin: 30px auto 20px;
}

.priceSelectMenuArea {
	display: flex;
	justify-content: center;
	gap: 1rem;
}

.priceSelectMonthBox, .priceSelectYearBox {
	background: #FFFFFF;
	border: 1px solid #000000;
	border-radius: 15px;
	padding: 30px;
	position: relative;
}

.priceSelectPlanTitle {
	font-size: 1.6rem;
	color: #2a82f8;
	font-weight: bold;
	text-decoration: underline;
	text-align: center;
}

.priceSelectPrice {
	color: #0c3264;
	font-size: 2.4rem;
	font-weight: bold;
	margin: 7px auto 0;
}

.priceSelectPrice .unit {
	font-weight: normal;
	font-size: 1.4rem;
}

.priceSelectPrice .unit .small {
	font-size: 1rem;
	margin-left: -7px;
}

.priceSelectYearBox .bubble {
	top: -45%;
	right: -16%;
	font-size: 1.1rem;
	line-height: 1.3;
	border-radius: 50%;
	color: #FFFFFF;
	border: 2px solid #0c3264;
	background: #0c3264;
	padding: 15px 25px 10px;
}

.priceMain .bubble::before {
	border-color: #0c3264 transparent transparent;
	left: 41%;
}

.priceMain .bubble::after {
	border-color: #0c3264 transparent transparent;
	left: 41%;
}

.priceMain .bubble .right {
	display: block;
	text-align: right;
}

.priceMain .bubble .yellow {
	color: #f7f02f;
	font-size: 1.3rem;
}

.priceRibbon {
	display: inline-block;
	position: absolute;
	top: -10px;
	left: 8px;
	margin: 0;
	padding: 10px 0;
	z-index: 2;
	width: 60px;
	text-align: center;
	font-size: 17px;
	color: #FFFFFF;
	background: #FF7B0A;
}

.priceRibbon:after {
	content: '';
	position: absolute;
	left: 0;
	top: 100%;
	height: 0;
	width: 0;
	border-left: 30px solid #FF7B0A;
	border-right: 30px solid #FF7B0A;
	border-bottom: 10px solid transparent;
}

.priceSelectCard {
	color: #0c3264;
	text-align: center;
	background: #FFFFFF;
	border: 1px solid #000000;
	width: 90%;
	max-width: 600px;
	margin: 20px auto 0;
	padding: 15px 0;
	font-size: 1.4rem;
}

.priceSelectCard .small {
	font-size: 1rem;
}

.priceSelectMenuArea+.priceSelectCard {
	margin-top: 50px;
}

.priceSelectBannerArea {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
	text-align: center;
}

.priceSelectBannerArea img {
	width: 100%;
	height: auto;
	max-width: 600px;
}

.priceSelectBannerArea img.priceBanner02 {
	margin: 30px 0;
}

.priceServiceArea {
	margin: 100px auto;
	width: 100%;
	max-width: 980px;
}

.priceServiceH2, .priceComparisonH2, .priceFaqH2 {
	text-align: center;
	color: #0c3264;
	font-size: 2rem;
}

.priceServiceList {
	display: flex;
	gap: 1rem;
	justify-content: center;
	flex-wrap: wrap;
	margin: 30px auto 30px;
}

.priceServiceBox {
	width: 32%;
	color: #0c3264;
	margin-bottom: 20px;
}

.priceServiceBox img {
	width: 100%;
	height: auto;
}

.priceServiceH3 {
	text-align: center;
	font-size: 1.4rem;
	text-decoration: underline;
	line-height: 2;
}

.priceServiceP {
	font-size: 1rem;
	margin: 0 15px;
}

.priceServiceP .pink {
	color: #ff5c96;
	font-weight: bold;
}

.priceServiceInquiryP {
	text-align: center;
	font-size: 1.2rem;
	margin: -50px 0 -30px;
}

.priceWcourseArea {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.priceWcourseBox {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	background: url(../images/price/bg02.webp) top center no-repeat;
	background-size: cover;
	padding: 50px 0;
}

.priceWcourseBox img {
	width: 100%;
	height: auto;
}

.priceWcourseH2 {
	text-align: center;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-size: 2.2rem;
	font-family: "Mochiy Pop P One", sans-serif;
}

.priceWcourseH2 .small {
	font-size: 1.8rem;
	display: block;
	margin: 0 0 20px 0;
}

.priceWcourseH2 img {
	max-width: 220px;
}

.priceWcourseH2 .pink {
	color: #ff5c96;
	font-size: 3rem;
}

.priceWcourseH3 {
	text-align: center;
	color: #ff5c96;
	margin: 30px auto;
	font-size: 1.6rem;
	text-decoration: underline;
}

.priceWcourseList {
	margin: 0 auto 30px;
	width: 90%;
	max-width: 600px;
	padding: 10px 0 10px 100px;
	color: #0c3264;
}

.priceWcourseList.list01 {
	background: url(../images/price/list01.webp) left no-repeat;
	background-size: contain;
}

.priceWcourseList.list02 {
	background: url(../images/price/list02.webp) left no-repeat;
	background-size: contain;
}

.priceWcourseList.list03 {
	background: url(../images/price/list03.webp) left no-repeat;
	background-size: contain;
}

.priceWcourseH4 {
	font-size: 1.8rem;
	margin: 0 0 8px 0;
}

.priceWcourseP {
	font-size: 1rem;
}

.priceWcourseBanner {
	text-align: center;
}

.priceWcourseBanner img {
	max-width: 600px;
}

.priceWcourseBanner img:hover {
	opacity: 0.8;
}

.priceWcourseDiscountBox {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	padding: 50px 0 120px;
	background: url(../images/price/bg03.webp) top center no-repeat;
	background-size: cover;
}

.priceWcourseDiscountLogo img {
	width: 100%;
	height: auto;
	max-width: 200px;
	vertical-align: middle;
	background: #FFFFFF;
	padding: 8px 10px;
	border-radius: 29px;
	margin: 0 10px;
}

.priceWcourseDiscountLogo {
	text-align: center;
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-size: 1.6rem;
	font-weight: bold;
}

.priceWcourseDiscountTitle {
	color: #0c3264;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-size: 3rem;
	font-weight: bold;
	text-align: center;
	margin: -5px auto 0;
}

.priceWcourseDiscountTitle .pink {
	color: #ff5c96;
}

.priceWcourseDiscountTarget {
	text-align: center;
	font-size: 1.4rem;
	text-decoration: underline;
	margin: -5px auto 30px;
}

.priceWcourseDiscountBox .priceSelectYearBox .bubble {
	top: -38%;
	right: -28%;
}

.priceWcourseDiscountP {
	text-align: center;
	font-size: 1rem;
}

.priceWcourseDiscountAttention {
	text-align: center;
	margin: 15px auto 0;
	font-size: 1rem;
}

.priceComparisonUl {
	width: 90%;
	max-width: 980px;
	margin: 50px auto 0;
}

.priceComparisonLi {
	font-size: 1.3rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	margin: 0 0 30px 0;
}

.priceComparisonP {
	font-weight: bold;
	padding: 10px 0 10px 20px;
	background: #ffdfee;
	width: 100%;
}

.priceComparisonP .small {
	font-weight: normal;
	font-size: 1rem;
}

.priceComparisonDl {
	width: 32%;
	text-align: center;
	margin: 15px 0;
	background: #f2f2f2;
	border-radius: 5px;
}

.priceComparisonDt {
	height: 60px;
	line-height: 60px;
	background: #FFFFFF;
	border: 4px solid #f2f2f2;
	border-bottom: none;
	border-radius: 5px 5px 0 0;
}

.priceComparisonDt .small {
	font-size: 1rem;
}

.priceComparisonDt img {
	width: 100%;
	height: auto;
	max-width: 250px;
}

.priceComparisonDd {
	font-size: 1.6rem;
	padding: 20px 0;
	border: 4px solid #f2f2f2;
	border-top: none;
	border-radius: 0 0 5px 5px;
}

.priceComparisonDd .small {
	font-size: 1rem;
	display: block;
}

.priceComparisonDd.lightpink {
	background: #ffdfee;
	border: 4px solid #ffdfee;
	border-top: none;
}

.priceComparisonDd.darkpink {
	background: #ffa3d0;
	border: 4px solid #ffa3d0;
	border-top: none;
}


.priceFaqArea {
	margin: 80px auto;
}

.priceFaqBox {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
}

.priceFaqH3 {
	font-size: 1.6rem;
	margin: 40px auto 15px;
	text-decoration: underline;
}

.priceFaqText {
	position: relative;
	padding-left: 1.8rem;
}

.priceFaqText::before {
	content: "A.";
	font-size: 1.6rem;
	position: absolute;
	left: 0;
}

.priceFaqP {
	font-size: 1.2rem;
	line-height: 1.6;
	margin: 0 0 20px 0;
}

.priceFaqLink {
	color: #000000;
	font-size: 1.2rem;
	display: block;
	width: fit-content;
	margin: 0 0 30px auto;
	border-bottom: 1px solid #000000;
}

.priceFaqLink::after {
	content: "▼";
	display: inline-block;
	transform: rotate(-90deg);
}

.priceFaqAttention {
	text-align: center;
	margin: -90px auto 0;
}

.priceFaqArea .priceServiceInquiryP {
	margin: -50px 0 -30px;
}

@media screen and (max-width:767px) {
	.priceSelectBox {
		background: url(../images/price/bg01_sp.webp) top center no-repeat;
		background-size: cover;
	}

	.priceSelectH1 {
		font-size: 2rem;
		margin: 0 0 20px;
		line-height: 1.1;
	}

	.priceSelectLead,
	.priceSelectMenuTitle {
		font-size: 1.25rem;
	}

	.priceSelectMenuTitle {
		margin: 30px auto 10px;
	}

	.priceSelectMenuArea {
		flex-wrap: wrap;
	}

	.priceSelectYearBox {
		margin: 50px auto 0;
	}

	.priceServiceH2, .priceComparisonH2, .priceFaqH2 {
    font-size: 1.6rem;
	}

	.priceServiceList {
		margin: 30px auto 0;
	}

	.priceServiceBox {
		width: 90%;
	}

	.priceWcourseBox {
		background: url(../images/price/bg02_sp.webp) top center no-repeat;
		background-size: cover;
	}

	.priceWcourseH2 .small {
		font-size: 1.6rem;
	}

	.priceWcourseH2 {
		font-size: 1.8rem;
	}

	.priceWcourseH2 .pink {
		font-size: 2.5rem;
	}

	.priceWcourseH3 {
		font-size: 1.4rem;
	}

	.priceWcourseList {
		padding: 0 0 0 70px;
		width: 93%;
	}

	.priceWcourseList.list01, .priceWcourseList.list02, .priceWcourseList.list03 {
		background: none;
		padding: 0;
	}

	.priceWcourseList.list01 .priceWcourseH4 {
		background: url(../images/price/list01.webp) top left no-repeat;
		background-size: 50px;
	}

	.priceWcourseList.list02 .priceWcourseH4 {
		background: url(../images/price/list02.webp) top left no-repeat;
		background-size: 50px;
	}

	.priceWcourseList.list03 .priceWcourseH4 {
		background: url(../images/price/list03.webp) top left no-repeat;
		background-size: 50px;
	}

	.priceWcourseH4 {
		font-size: 1.5rem;
		width: 100%;
		padding-left: 60px;
		box-sizing: border-box;
		height: 70px;
	}

	.list03	.priceWcourseH4 {
		line-height: 70px;
	}

	.priceWcourseBox img {
		width: 95%;
	}


	.priceWcourseDiscountLogo img {
		display: block;
		margin: 0 auto;
	}

	.priceWcourseDiscountBox {
		background: url(../images/price/bg03_sp.webp) top center no-repeat;
		background-size: cover;
	}

	.priceComparisonDl {
		width: 100%;
		display: flex;
		margin: 0;
		align-items: stretch;
	}

	.priceComparisonDt {
		height: auto;
		line-height: normal;
		font-size: 1.1rem;
		width: 45%;
		border-bottom: 4px solid #f2f2f2;
		border-right: none;
		padding: 0 10px;
		position: relative;
	}

	.priceComparisonP+.priceComparisonDl .priceComparisonDt,
	.priceComparisonP+.priceComparisonDl .priceComparisonDd {
		border-top: none;
		border-bottom: none;
	}

	.priceComparisonLi .priceComparisonDl:last-of-type .priceComparisonDt,
	.priceComparisonLi .priceComparisonDl:last-of-type .priceComparisonDd {
		border-top: none;
	}

	.priceComparisonDt p {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 90%;
	}

	.priceComparisonDt .small {
		display: block;
		font-size: 0.9rem;
	}

	.priceComparisonDd {
		width: 55%;
		position: relative;
		font-size: 1.3rem;
	}
}

/* top */
.topViewArea {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.topViewImgArea {
	margin: 0 auto;
	width: 100%;
	max-width: 980px;
	position: relative;
}

.topViewH1 {
	position: absolute;
	top: 68%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 3.2rem;
	text-align: right;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	line-height: 1.3;
	font-family: 'Mochiy Pop P One', sans-serif;
}

.topViewH1 .pink {
	background: #ff5c96;
	color: #FFFFFF;
	border-radius: 15px;
	font-size: 2rem;
	padding: 7px 13px 10px;
	display: block;
	width: fit-content;
	position: absolute;
	transform: rotate(-10deg);
	top: -63px;
	left: -10px;
	-webkit-text-stroke: 0;
	text-stroke: 0;
	paint-order: normal;
}

.topViewH1 .big {
	display: block;
	font-size: 5.1rem;
}

.topViewH1 .topViewLogoImg {
	text-align: center;
	display: block;
	margin: 30% auto 0;
}

.topViewH1 .topViewLogoImg img {
	max-width: 300px;
}

.topViewAchievement {
	width: 100%;
	max-width: 980px;
	margin: 10px auto 20px;
	text-align: center;
}

.topViewAchievementImg img {
	max-width: 600px;
}

.topMovieArea {
	margin: 0 auto 120px;
	text-align: center;
	background: url(../images/top/bg01_wide.webp) center no-repeat;
	background-size: cover;
	padding: 50px 0;
}

.topMethodArea .methodTopBox {
	background: url(../images/top/bg02.webp) bottom no-repeat;
	background-size: cover;
	padding: 120px 0 80px;
	height: auto;
}

.topMethodImgArea {
	display: flex;
	justify-content: center;
	text-align: center;
	width: 90%;
	margin: 0 auto;
}

.topMethodImgArea img {
	width: 100%;
	height: auto;
}

.topMethodArea .faqLinkBtn {
	margin-bottom: 50px;
}

.topGrowthArea {
	width: 100%;
	max-width: 980px;
	margin: 80px auto;
}

.topGrowthTitle {
	color: #0c3264;
	text-align: center;
	background: url(../images/top/bg02.webp) top center no-repeat;
	background-size: cover;
	padding: 110px 0 40px;
}

.topGrowthH2 {
	font-size: 2.2rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	font-family: "Mochiy Pop P One", sans-serif;
}

.topGrowthH2 .big {
	display: block;
	font-size: 3rem;
	margin: 0 auto 15px;
}

.topGrowthH2 .small {
	display: block;
	font-size: 1.8rem;
}

.topGrowthH2 .pink {
	color: #ff5c96;
}

.topGrowthExample {
	background: #b7b4a6;
	height: auto;
}

.magna-partyTopStudySlider {
	width: 100%;
	max-width: 710px;
	/* max-height: 400px;
	height: auto; */
	margin: 0 auto;
}



.magna-partyTopStudySlider .slick-arrow {
	background: rgba(25, 25, 25, 0);
	bottom: 0;
	height: 134px;
	margin: auto;
	position: absolute;
	top: 0;
	transition: opacity 0.5s ease 0s;
	width: 32px;
	top: 100%;
	z-index: 1;
	height: 100%;
}

.magna-partyTopStudySlider .slick-arrow.slick-prev {
	left: -15%;
}

.magna-partyTopStudySlider .slick-arrow.slick-next {
	right: -15%;
}

.magna-partyTopStudySlider .slick-prev:before,
.magna-partyTopStudySlider .slick-next:before {
	content: "";
	top: 50%;
	width: 50px;
	height: 70px;
	position: absolute;
	transform: translateY(-50%);
}

.magna-partyTopStudySlider .slick-prev:before {
	background: url(../images/top/arrow_left.webp) center no-repeat;
	background-position: 0 0;
	left: 0;
	margin-left: -4px;
}

.magna-partyTopStudySlider .slick-next:before {
	background: url(../images/top/arrow_right.webp) center no-repeat;
	background-position: 100% 0;
	margin-right: -4px;
	right: 0;
}

.magna-partyTopStudySlider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width:536px) {
	.magna-partyTopStudySlider .slick-arrow.slick-prev {
		left: 0;
		top: 50%;
	}

	.magna-partyTopStudySlider .slick-arrow.slick-next {
		right: 0;
		top: 50%;
	}

	.magna-partyTopStudySlider .slick-arrow {
		background: rgba(25, 25, 25, 0.3);
		height: 100%;
		margin: 0;
	}
}

.topGrowthMessageArea {
	width: 100%;
	max-width: 980px;
	margin: -3px auto 0;
	padding: 50px 0;
	background: url(../images/top/bg03.webp) top center no-repeat;
	background-size: cover;
}


.topGrowthMessageH3 {
	color: #0c3264;
	font-size: 2.6rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	text-align: center;
	font-family: "Mochiy Pop P One", sans-serif;
}

.topGrowthMessageStudentArea {
	background: #FFFFFF;
	display: flex;
	width: 90%;
	max-width: 820px;
	margin: 20px auto 80px;
	padding: 20px 15px;
	text-align: center;
}

.topGrowthMessageStudentImg img {
	width: 100%;
	height: auto;
}

.topGrowthMessageStudentText {
	color: #0c3264;
	font-size: 1.1rem;
}

.topGrowthMessageStudentText .age {
	font-weight: bold;
	text-decoration: underline;
	font-size: 1.05rem;
}

.topGrowthMessageStudentP .blue {
	color: #2a82f8;
}

.topGrowthMessageParentsH2 {
	color: #0c3264;
	font-size: 2.6rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
	text-align: center;
	position: relative;
	width: fit-content;
	margin: 0 auto;
	font-family: "Mochiy Pop P One", sans-serif;
}

.topGrowthMessageParentsH2::before,.topGrowthMessageParentsH2::after {
	content: "";
	width: 10px;
	height: 60px;
	background: #0c3264;
	display: block;
	position: absolute;
	border: 3px solid #FFFFFF;
	border-radius: 5px;
}


.topGrowthMessageParentsH2::before {
	transform: rotate(-25deg);
	left: -25px;
	top: 0;
}

.topGrowthMessageParentsH2::after {
	transform: rotate(25deg);
	right: -25px;
	top: 0;
}

.topGrowthMessageParentsBox {
	width: 90%;
	max-width: 700px;
	margin: 30px auto 0;
	background: #FFFFFF;
	padding: 20px 25px;
	font-size: 1.2rem;
	line-height: 1.6;
}

.topGrowthMessageParentsRight {
	text-align: right;
}

.topGrowthMessageParentsP .orange {
	color: #ff790b;
}

.topGrowthMessageParentsP .green {
	color: #8eb921;
}

.topGrowthMessageParentsRight {
	text-align: right;
}

.topGrowthMessageArea .faqLinkBtn {
	margin-bottom: 30px;
}

.topPriceArea {
	margin: 200px auto;
}

.topPriceArea .priceSelectBox {
	background: url(../images/top/bg04.webp) center no-repeat;
	background-size: cover;
	padding: 80px 0 50px;
}

.topPriceArea .topPriceSelectH2 {
	margin: 80px 0 0;
	font-size: 3rem;
}

.topPriceArea .topPriceSelectH2 .pink {
	font-size: 4rem;
}

.topPriceArea .priceSelectLead {
	margin-bottom: 50px;
}

.topPriceLead {
	color: #0c3264;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	text-decoration: underline;
	margin: 0px auto 15px;
	font-family: "Mochiy Pop P One", sans-serif;
}

.topPriceArea .bubble {
	top: -45%;
	right: -16%;
	font-size: 1.1rem;
	line-height: 1.3;
	border-radius: 50%;
	color: #FFFFFF;
	border: 2px solid #0c3264;
	background: #0c3264;
	padding: 15px 25px 10px;
}

.topPriceArea .bubble .right {
	display: block;
	text-align: right;
}

.topPriceArea .bubble .yellow {
	color: #f7f02f;
	font-size: 1.3rem;
}

.topPriceArea .bubble::before {
	border-color: #0c3264 transparent transparent;
	left: 41%;
}

.topPriceArea .bubble::after {
	border-color: #0c3264 transparent transparent;
	left: 41%;
}

.topNewsH2,
.topColumnH2 {
	color: #0c3264;
	text-decoration: underline;
	text-align: center;
	font-size: 2rem;
	margin: 0 auto 30px;
	font-family: "Mochiy Pop P One", sans-serif;
}

.topNewsInner,
.topColumnInner {
	width: 90%;
	max-width: 980px;
	margin: 0 auto 80px;
}

.topNewsBox {
	max-width: 650px;
	margin: 0 auto;
}

.topNewsContent {
	font-size: 1.3rem;
	margin: 0 auto 5px;
}

.topNewsContent a {
	color: #222222;
}

.topNewsDate {
	margin: 0 auto 30px;
}

.topColumnBox {
	display: flex;
	gap: 20px;
	max-width: 700px;
	margin: 0 auto 20px;
}

.topColumnThumbnail {
	min-width: 200px;
}

.topColumnThumbnail img {
	width: 100%;
	height: auto;
	max-width: 200px;
}

.topColumnContentTitle {
	font-size: 1.3rem;
	margin: 10px auto;
}

.topColumnContentTitle a {
	color: #222222;
}

.topColumnInner .moreColumnLink {
	text-align: right;
	font-size: 1.2rem;
	color: #0c3264;
	border-bottom: 1px solid #0c3264;
	margin: 0 0 0 auto;
	display: block;
	width: fit-content;
}

.topColumnInner .moreColumnLink::after {
	content: "▼";
	transform: rotate(-90deg);
	display: inline-block;
}

.topPartnerArea {
	padding: 50px 0;
	background: url(../images/top/bg01.webp) center no-repeat;
	background-size: cover;
	width: 100%;
}

.topPartnerArea .topPartnerH2 {
	text-align: center;
	color: #0c3264;
	font-size: 2rem;
	text-decoration: underline;
	font-family: "Mochiy Pop P One", sans-serif;
}

.topPartnerBox {
	background: #FFFFFF;
	width: 90%;
	margin: 20px auto 50px;
	max-width: 800px;
	padding: 50px;
}

.topPartnerBoxInner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
}

.topPartnerImg img {
	width: 100%;
	height: auto;
}

.topPartnerBoxInner.topPartnerBoxInner02 {
	gap: 0;
}

.topPartnerBoxInner.topPartnerBoxInner03 {
	margin: 50px auto;
}

.topPartnerBoxInner.topPartnerBoxInner03 .topPartnerImg img {
	max-width: 400px;
}

.topPartnerBoxInner.topPartnerBoxInner04 {
	flex-wrap: wrap;
	gap: 15px 0;
	justify-content: space-between;
	width: 90%;
	max-width: 700px;
	margin: 0 auto;
}

.topPartnerBoxInner.topPartnerBoxInner04 .topPartnerImg {
	width: 18%;
}

.topPartnerBoxInner.topPartnerBoxInner04 .topPartnerImg img {
	max-width: 120px;
}

@media screen and (max-width:767px) {
	.topViewH1 {
		font-size: 1.8rem;
		width: 90%;
		margin: 0;
		top: 66%;
		left: 46%;
	}

	.topViewH1 .pink {
		top: -28px;
		left: 25px;
		font-size: 1.1rem;
		transform: rotate(-15deg);
	}

	.topViewH1 .big {
		font-size: 2.8rem;
	}

	.topViewH1 .topViewLogoImg {
		margin: 15px -41px 0 0;
	}

	.topViewH1 .topViewLogoImg img {
		max-width: 200px;
	}

	.topViewAchievement {
		width: 90%;
	}

	.topViewArea .trialBtnArea {
		padding: 80px 0 30px;
		margin: 0 auto 50px;
	}

	.topMovieBox iframe {
		width: 100%;
	}

	.topMethodArea .methodTopBox {
		background: url(../images/top/bg02_sp.webp) center no-repeat;
		background-size: cover;
	}

	.topMethodArea .methodTopH2 {
		font-size: 1.6rem;
	}

	.topMethodImgArea {
		width: 100%;
	}

	.topGrowthH2 .big {
		font-size: 2.6rem;
	}

	.topGrowthH2 {
		font-size: 1.7rem;
	}

	.topGrowthH2 .small {
		font-size: 1.5rem;
	}

	.topGrowthMessageH3 {
		font-size: 2.1rem;
	}

	.topGrowthMessageStudentArea {
		flex-wrap: wrap;
		width: 93%;
	}

	.topGrowthMessageStudentBox {
		width: 50%;
		margin: 0 auto 10px;
	}

	.topGrowthMessageStudentText {
		font-size: 0.95rem;
	}

	.topPriceArea {
		margin: 80px auto;
	}

	.topPriceArea .priceSelectBox {
		background: url(../images/top/bg04_sp.webp) center no-repeat;
		background-size: cover;
		padding: 80px 0 50px;
	}

	.topPriceArea .topPriceSelectH2 {
		font-size: 2.3rem;
	}

	.topColumnBox {
		flex-wrap: wrap;
		gap: 0;
	}

	.topColumnThumbnail {
		width: 100%;
	}

	.topColumnThumbnail img {
		max-width: fit-content;
	}

	.topPartnerArea .topPartnerH2 {
		font-size: 1.8rem;
	}

	.topPartnerBox {
		padding: 30px 20px;
	}

	.topPartnerBoxInner {
		flex-wrap: wrap;
	}

	.topPartnerBoxInner.topPartnerBoxInner04 .topPartnerImg {
		width: 50%;
	}
}

/* webmagtan */
.webmagtanHeaderTop {
	background-color: #ff5c95;
	height: 95px;
	position: relative;
}

.webmagtanHeaderTop::before {
	content: "";
	background: url(../images/webmagtan/header_bg.webp);
	background-size: auto;
	background-repeat: repeat;
	background-position: center center;
	opacity: 0.07;
	position: absolute;
	width: 100%;
	height: 95px;
	top: 0;
	left: 0;
}

.webmagtanHeaderH1 {
	position: absolute;
	text-align: center;
	top: 30px;
	left: 50%;
	transform: translateX(-50%);
	color: #FFFFFF;
	font-size: 1.4rem;
}

.webmagtanHeaderH1 img {
	display: block;
	width: 100%;
	max-width: 380px;
	height: auto;
}

.webmagtanLevelH2 {
	text-align: center;
	margin: 130px auto 20px;
}

.webmagtanLevelH2 img {
	width: 100%;
	height: auto;
	max-width: 550px;
}

.webmagtanLevelImg {
	text-align: center;
}

.webmagtanLevelImg img {
	width: 100%;
	height: auto;
	max-width: 700px;
}

.webmagtanLevelLead {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 40px auto 30px;
	line-height: 2.2;
	text-decoration: underline;
}

.webmagtanLevelLead a {
	color: #2a2a2a;
}

.webmagtanLevelBtn {
	display: block;
	background: #ff5c95;
	width: 400px;
	margin: 0 auto 30px;
	text-align: center;
	color: #FFFFFF;
	height: 90px;
	line-height: 60px;
	font-size: 2.8rem;
	font-weight: bold;
	padding: 10px;
	border: 5px solid #fece00;
	border-radius: 5px;
	transition: .3s;
}

.webmagtanLevelBtn:hover {
	background: #4743c5;
}

.webmagtanLevelExplanation {
	width: fit-content;
	margin: 0 auto 30px;
	font-size: 1.1rem;
	line-height: 1.6;
}

.webmagtanLevelExplanationTitle {
	font-weight: bold;
}

.webmagtanLevelOl {
	margin: 0;
}

.webmagtanLevelAttentionArea {
	font-size: 1.1rem;
	width: 90%;
	max-width: 800px;
	margin: 0 auto 30px;
	line-height: 1.6;
}

.webmagtanLevelAttentionArea .red {
	color: #D62F1F;
}

.webmagtanLevelAttentionP {
	margin: 0 auto 20px;
}

.webmagtanWordArea {
	text-align: center;
	background: #ffc508;
	position: relative;
}

.webmagtanWordArea::before {
	content: "";
	background: url(../images/webmagtan/bgImg.webp);
	background-size: 14%;
	background-repeat: repeat;
	background-position: center center;
	opacity: 0.07;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.webmagtanWordH2 {
	z-index: 10;
	position: relative;
}

.webmagtanWordArea img {
	width: 100%;
	height: auto;
	max-width: 800px;
}

.webmagtanAppArea {
	background: #73b53e;
	position: relative;
	padding: 10px 0 50px;
}

.webmagtanAppArea::before {
	content: "";
	background: url(../images/webmagtan/bgImg02.webp);
	background-size: 15%;
	background-repeat: repeat;
	background-position: center center;
	opacity: 0.9;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.webmagtanAppBox {
	display: flex;
	position: relative;
	z-index: 10;
	flex-direction: row-reverse;
	margin: 0 auto;
	gap: 30px;
	justify-content: center;
	align-items: center;
}

.webmagtanAppImg img {
	width: 100%;
	height: auto;
	max-width: 350px;
}

.webmagtanAppH2 img {
	width: 100%;
	height: auto;
	max-width: 600px;
}

.appTypeBox {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin: 30px auto 0;
}

.appTypeBox img {
	width: 100%;
	height: auto;
	max-width: 250px;
}

.webmagtanFeaturesArea {
	background: #ffc508;
	position: relative;
}

.webmagtanFeaturesArea::before {
	content: "";
	background: url(../images/webmagtan/bgImg.webp);
	background-size: 19%;
	background-repeat: repeat;
	background-position: center center;
	opacity: 0.07;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.webmagtanFeaturesInner {
	position: relative;
	z-index: 10;
	padding: 280px 0 80px;
}

.webmagtanFeaturesTitle {
	display: flex;
	margin: 0 auto 0;
	align-items: center;
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}

.webmagtanFeaturesTitle img {
	width: 100%;
	height: auto;
	max-width: 270px;
}

.webmagtanFeaturesInner .webmagtanFeaturesH2 img {
	max-width: 560px;
}

.webmagtanFeaturesBox {
	margin: 0 auto;
	position: relative;
	background: #FFFFFF;
	padding: 50px;
	width: 90%;
	max-width: 980px;
	border-radius: 15px;
	box-shadow: 2px 4px 4px 2px rgba(113, 113, 113, 0.7);
}

.webmagtanFeaturesH3 {
	font-size: 2rem;
	max-width: 800px;
	margin: 0 auto 10px;
}

.webmagtanFeaturesH3 .number {
	font-size: 3rem;
	color: #ff7b0b;
	margin-right: 10px;
}

.webmagtanFeaturesH3 .orange {
	color: #ff440f;
	font-size: 2.4rem;
}

.webmagtanFeaturesImg {
	text-align: center;
	margin-bottom: 30px;
}

.webmagtanFeaturesImg img {
	width: 100%;
	height: auto;
	max-width: 800px;
}

.webmagtanAnimeArea {
	background: #7aa6df;
	position: relative;
}

.webmagtanAnimeArea::before {
	content: "";
	background: url(../images/webmagtan/bgImg.webp);
	background-size: 19%;
	background-repeat: repeat;
	background-position: center center;
	opacity: 0.07;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.webmagtanAnimeInner {
	position: relative;
	z-index: 10;
	padding: 50px 0 80px;
}

.webmagtanAnimeTitle {
	display: flex;
	align-items: center;
	justify-content: center;
}

.webmagtanAnimeTitle img {
	width: 100%;
	height: auto;
	max-width: 250px;
}

.webmagtanAnimeTitle .webmagtanAnimeH2 img {
	max-width: 600px;
}

.webmagtanAnimeBox {
	position: relative;
	margin: -20px auto 0;
	background: #FFFFFF;
	padding: 50px 80px 60px;
	width: 90%;
	max-width: 980px;
	border-radius: 15px;
	box-shadow: 2px 4px 4px 2px rgba(113, 113, 113, 0.7);
}

.webmagtanAnimeFrame {
	width: 800px;
	height: 450px;
}

.webmagtanAnimeFrame iframe {
	width: 100%;
	height: 100%;
}

.webmagtanAnimeText {
	font-size: 1.1rem;
	margin: 50px auto 0;
	line-height: 1.8;
	text-align: center;
}

.webmagtanRecommendArea {
	background: #ffc508;
	position: relative;
}

.webmagtanRecommendArea::before {
	content: "";
	background: url(../images/webmagtan/bgImg.webp);
	background-size: 19%;
	background-repeat: repeat;
	background-position: center center;
	opacity: 0.07;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.webmagtanRecommendInner {
	position: relative;
	z-index: 10;
	padding: 360px 0 80px;
}

.webmagtanRecommendTitle {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}

.webmagtanRecommendTitle img {
	width: 100%;
	height: auto;
	max-width: 350px;
}

.webmagtanRecommendP {
	margin: 16% 0 0 -4%;
}

.webmagtanRecommendTitle .webmagtanRecommendP img {
	max-width: 600px;
}

.webmagtanRecommendBox {
	position: relative;
	margin: -20px auto 0;
	background: #FFFFFF;
	padding: 50px 80px 60px;
	width: 90%;
	max-width: 980px;
	border-radius: 15px;
	box-shadow: 2px 4px 4px 2px rgba(113, 113, 113, 0.7);
}

.webmagtanRecommendUl {
	list-style-type: disc;
	font-size: 1.2rem;
	line-height: 2;
	width: fit-content;
	margin: 0 auto;
}

.webmagtanFooter {
	padding: 50px 0 0;
}

.webmagtanFooterInner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50px;
}

.webmagtanFooterLogoArea img {
	width: 100%;
	height: auto;
	max-width: 470px;
}

.webmagtanFooterInfoDl {
	display: flex;
	align-items: center;
	margin: 0 auto 5px;
}

.webmagtanFooterInfoDt {
	background: #ffc409;
	color: #FFFFFF;
	font-size: 1.1rem;
	padding: 5px 10px;
	font-weight: bold;
	text-align: center;
	width: 100px;
	border-radius: 20px;
	text-shadow: 1px 1px 1px #141414;
}

.webmagtanFooterInfoDd {
	font-size: 1.1rem;
	font-weight: bold;
	margin: 0 0 0 10px;
}

.webmagtanFooterLink {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin: 50px auto;
}

.webmagtanFooterLink img {
	width: 100%;
	height: auto;
	max-width: 220px;
}

.webmagtanCopyrightArea {
	padding: 15px 0;
	text-align: center;
	font-size: 1.1rem;
	color: #FFFFFF;
	background: #7aa6df;
	position: relative;
}

.webmagtanCopyrightArea::before {
	content: "";
	background: url(../images/webmagtan/bgImg.webp);
	background-size: 19%;
	background-repeat: repeat;
	background-position: bottom center;
	opacity: 0.07;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}

.webmagtanCopyright {
	position: relative;
	z-index: 10;
}

@media screen and (max-width:767px) {
	.webmagtanHeaderH1 {
		width: 100%;
	}

	.webmagtanLevelLead {
		font-size: 1.4rem;
	}

	.webmagtanLevelBtn {
		width: 350px;
	}

	.webmagtanAppBox {
		flex-wrap: wrap;
		width: 90%;
		flex-direction: column-reverse;
	}

	.appTypeBox {
		flex-wrap: wrap;
		gap: 0;
		row-gap: 20px;
	}

	.webmagtanFeaturesTitle {
		flex-wrap: wrap;
		flex-direction: column-reverse;
		position: relative;
	}

	.webmagtanFeaturesInner {
		padding: 80px 0;
	}

	.webmagtanFeaturesH2 {
		text-align: center;
	}

	.webmagtanFeaturesInner .webmagtanFeaturesH2 img {
		width: 90%;
	}

	.webmagtanFeaturesBox {
		margin: -80px auto 0;
		padding: 30px;
	}

	.webmagtanFeaturesH3 {
		font-size: 1.8rem;
	}

	.webmagtanFeaturesH3 .orange {
		font-size: 2rem;
	}

	.webmagtanAnimeTitle {
		flex-direction: column-reverse;
	}

	.webmagtanAnimeBox {
		padding: 50px 10px 60px;
	}

	.webmagtanAnimeFrame {
		width: 100%;
		max-width: 350px;
		max-height: 197px;
		margin: 0 auto;
	}

	.webmagtanAnimeText {
		margin: 50px 15px 0;
		text-align: left;
	}

	.webmagtanRecommendInner {
		padding: 50px 0 80px;
	}

	.webmagtanRecommendTitle {
		flex-wrap: wrap;
		flex-direction: column-reverse;
		position: relative;
		text-align: center;
	}

	.webmagtanRecommendTitle .webmagtanRecommendP img {
		width: 90%;
	}

	.webmagtanRecommendBox {
		margin: -50px auto 0;
		padding: 40px 50px;
	}

	.webmagtanFooterInner {
		flex-wrap: wrap;
	}

	.webmagtanFooterLogoArea img {
		width: 350px;
	}

	.webmagtanFooterLink {
		flex-wrap: wrap;
		gap: 0;
		row-gap: 20px;
	}
}

/* thanks */
.thanksHeader {
	margin: 80px auto 10px;
}

.thanksHeaderH1 {
	text-align: center;
	font-size: 3rem;
	margin: 0 auto 30px;
}

.thanksHeaderImg {
	text-align: center;
}

.thanksHeaderImg img {
	width: 100%;
	height: auto;
	max-width: 600px;
}

.thanksMain {
	width: 90%;
	max-width: 700px;
	margin: 0 auto;
	border: 1px solid #ddd;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .5);
	border-radius: 3px;
	padding: 30px 50px;
	text-align: center;
	box-sizing: border-box;
}

.thanksMainH2 {
	font-size: 1.4rem;
	margin: 0 auto 30px;
}

.thanksMainH2::before, .thanksMainH2::after {
	content: "～";
}

.thanksMainAttention {
	color: #D62F1F;
	font-size: 1.2rem;
	font-weight: bold;
	margin: 0 auto 20px;
}

.thanksMainP {
	font-size: 1.1rem;
	font-weight: bold;
	margin: 0 auto 30px;
	line-height: 1.6;
}

.thanksMainP .red {
	color: #D62F1F;
}

.thanksMainP .nomal {
	font-weight: normal;
}

.thanksYellowBox {
	text-align: left;
	color: #D62F1F;
	width: fit-content;
	margin: 0 auto 30px;
	font-weight: bold;
	line-height: 1.6;
	font-size: 0.95rem;
	background: #fff86b;
	padding: 10px 15px;
	border-radius: 15px;
}

.thanksMail {
	font-size: 1.1rem;
	margin: 0 auto 10px;
}

.thanksMail a {
	color: #222222;
	text-decoration: underline;
}

.thanksTell {
	font-size: 1.1rem;
}

.thanksTell .small {
	font-size: 0.95rem;
}

.thanksRight {
	font-size: 1.1rem;
	text-align: right;
	margin: 30px auto 0;
}

footer.thanksFooter {
	padding: 50px 0;
}

footer.thanksFooter a {
	display: block;
	width: fit-content;
	text-align: center;
	margin: 0 auto;
	background: #C6E2F7;
	padding: 10px 50px;
	font-size: 1.1rem;
	color: #222222;
	border-radius: 30px;
	transition: .3s;
}

footer.thanksFooter a:hover {
	background: #3F7652;
	color: #FFFFFF;
}

@media screen and (max-width:767px) {
	.thanksMain {
		padding: 30px 15px;
	}

	.thanksMail {
		margin: 0 auto 15px;
	}
}

/* LP */
.magna-partyLPmain img {
	width: 100%;
	height: auto;
}

.trialBtnArea.lpGrowth {
	margin-top: 50px;
}

.magna-partyLPmain .topPriceArea .priceSelectBox {
	/* padding: 100px 0; */
	background-position: bottom;
	margin: 0 auto 30px;
	padding: 0 0 100px;
	background-position: top center;
}

.magna-partyLPmain .topPriceArea .priceSelectBox .campaignBannerBox {
	margin-bottom: 30px;
}

.magna-partyLPmain .topPriceArea .topPriceSelectH2 {
	margin: 0;
}

.magna-partyLPmain .topPriceArea {
	margin-bottom: 100px;
}

.magna-partyLPmain .topPartnerBoxInner.topPartnerBoxInner02 {
	gap: 0;
	margin-bottom: 30px;
}


.magna-partyLPmain .bubble .yellow {
	color: #f7f02f;
	font-size: 1.3rem;
}

.magna-partyLPmain .bubble .right {
	display: block;
	text-align: right;
}

.magna-partyLPmain .bubble::before {
	border-color: #0c3264 transparent transparent;
	left: 41%;
}

.magna-partyLPmain .bubble::after {
	border-color: #0c3264 transparent transparent;
	left: 41%;
}

.lpFooter .copyrightArea {
	color: #FFFFFF;
	padding: 60px 0 0 0;
}

.lpFooter .copyrightArea a {
	color: #FFFFFF;
}




@media screen and (max-width:767px) {
	.pc_768 {
			display: none;
		}

	.sp_767 {
		display: block;
	}

	.headerLogo {
		padding: 0 10px;
	}

	.headerArea {
		padding: 10px 0;
	}

	.spMenuBtn {
		background-color: #ff5c95;
		border-radius: 8px;
		transition: all .5s;
		display: block;
		width: 66px;
		height: 66px;
		text-align: center;
		line-height: 66px;
		font-size: 14px;
		color: #FFFFFF;
		font-weight: bold;
		letter-spacing: .1rem;
		margin: 0 10px 0 auto;
	}

	.closeBtn {
		transition: all .4s;
		z-index: -1;
		opacity: 0;
	}

	.closeBtn.active {
		opacity: 1;
		display: block;
		position: absolute;
		width: 66px;
		height: 66px;
		border-radius: 5px;
		color: #000000;
		z-index: 15;
		border: 2px solid #000000;
		top: 20px;
		right: 20px;
	}

	.closeBtn span {
		display: inline-block;
		background-color: #000000;
		position: absolute;
		height: 2px;
	}

	.closeBtn.active span:nth-of-type(1) {
		top: 23px;
		left: 12px;
		transform: translateY(6px) rotate(-45deg);
		width: 60%;
	}

	.closeBtn.active span:nth-of-type(2) {
		top: 35px;
		left: 12px;
		transform: translateY(-6px) rotate(45deg);
		width: 60%;
	}

	.mainMenuUl {
		top: 0;
		right: -1px;
		background-color: rgba(255, 255, 255, 0.9);
		height: 100vh;
		z-index: 10;
		padding-top: 100px;
		font-size: 20px;
		opacity: 0;
		visibility: hidden;
		position: fixed;
		transition: 0.3s;
		width: 80%;
		display: block;
	}

	.mainMenuUl.active {
		opacity: 1;
		visibility: visible;
	}

	.mainMenuLi {
		width: 100%;
		text-align: right;
		padding: 15px 20px 15px 0;
	}

	.footerNav {
		flex-wrap: wrap;
	}

	.footerMenuLeft, .footerMenuRight {
		width: 80%;
	}

	.footerMenuUl.top {
		margin: 30px 0;
	}

	.footerAnotherLinkUl {
		flex-wrap: wrap;
	}

	.footerAnotherLinkLi {
		max-width: calc(50% - 10px);
	}
}

/* campaign */
.campaignArea {
	padding: 50px 0 0;
	text-align: center;
}

.campaignBannerBox {
	text-align: center;
}

.campaignBannerBox img {
	width: 100%;
	max-width: 758px;
	height: auto;
}


.priceSelectBox .campaignArea {
	padding: 0;
}

.priceCampaignArea .campaignArea {
	padding: 0;
}

.priceCampaignH2 {
	text-align: center;
	color: #363636;
	font-size: 1.8rem;
}

.priceCampaignH2::before,
.priceCampaignH2::after {
	content: "▼";
}

.priceCampaignArea {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.priceCampaignContentArea {
	background:url(../images/price/bg04.webp) top center no-repeat;
	background-size: cover;
	padding: 30px 0 20px;
	margin: 0 auto 80px;
}

.priceCampaignFlex {
	display: flex;
	justify-content: center;
	margin: 0 auto 30px;
	flex-wrap: wrap;
}

.priceCampaignTitleArea {
	width: 200px;
	padding: 0 20px;
}

.priceCampaignTitle {
	font-weight: bold;
	font-size: 1.2rem;
}

img.priceCampaignTitleImg {
	width: 100%;
	max-width: 150px;
}

.priceCampaignContentBox {
	width: calc(100% - 250px);
	padding: 0 20px;
}

.priceCampaignContent {
	margin: 0 auto 25px;
	padding: 20px 30px;
}

.priceCampaignContent01 {
	background: url(../images/price/campaignBg01.webp) top 8px right -10px no-repeat;
	background-size: contain;
	background-color: #ffffff;
}

.priceCampaignContent02 {
	background: url(../images/price/campaignBg02.webp) top right no-repeat;
	background-size: contain;
	background-color: #ffffff;
}

.priceCampaignContent03 {
	background: url(../images/price/campaignBg03.webp) top 10px right -10px no-repeat;
	background-size: contain;
	background-color: #ffffff;
}

.priceCampaignContent04 {
	background: url(../images/price/campaignBg04.webp) top 10px right -20px no-repeat;
	background-size: contain;
	background-color: #ffffff;
}

.priceCampaignContent05 {
	background: url(../images/price/campaignBg05.webp) top 15px right -15px no-repeat;
	background-size: contain;
	background-color: #ffffff;
}

.priceCampaignContent06 {
	background: url(../images/price/campaignBg06.webp) top 15px right -15px no-repeat;
	background-size: contain;
	background-color: #ffffff;
}

.priceCampaignRibbon {
	background-color: #da0e0d;
	color: #FFFFFF;
	padding: 0 30px 0 10px;
	font-size: 1rem;
	width: fit-content;
	height: 46px;
	line-height: 46px;
	position: relative;
	margin: -20px 0 0 -35px;
}

.priceCampaignRibbon::after {
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	z-index: 1;
	top: 0;
	right: 0;
	border-width: 23px 15px 23px 0;
	border-color: transparent #FFFFFF transparent transparent;
	border-style: solid;
}

.priceCampaignRibbon.blueRibbon {
	background-color: #07306a;
}

.priceCampaignContentFlex {
	margin: 5px 0 0 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.priceCampaignContentTitle {
	font-weight: bold;
	font-size: 1.8rem;
	color: #ee3e12;
	text-decoration: underline;
	width: 45%;
}

.priceCampaignContentTitle.priceCampaignContentTitleBlue {
	color: #3453be;
}

.priceCampaignContentText {
	width: 70%;
	font-size: 1.3rem;
	-webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke;
}

.priceCampaignContent01 .priceCampaignContentText p {
	text-align: center;
	width: fit-content;
}

.priceCampaignContentText .bold {
	font-weight: bold;
	font-size: 1.4rem;
}

.priceCampaignContentText .red {
	color: #ee3e12;
	font-weight: bold;
	font-size: 1.4rem;
}


.priceCampaignArea .trialBtnArea {
	margin: 0 auto 30px;
}

@media screen and (max-width:767px) {
	.campaignArea {
		padding: 0;
	}

	.priceCampaignTitleArea, .priceCampaignContentBox {
		width: 100%;
	}

	.priceCampaignContentFlex {
		flex-wrap: wrap;
	}

	.priceCampaignTitleArea {
		text-align: center;
	}

	.priceCampaignTitle {
		text-align: center;
		margin: 0 auto 15px;
	}

	img.priceCampaignTitleImg {
		max-width: 284px;
	}

	.priceCampaignRibbon {
		margin: -20px 0 0 -28px;
	}

	.priceCampaignContent {
		padding: 20px;
	}

	.priceCampaignContentTitle {
		width: 100%;
	}

	.priceCampaignContentText {
		width: 100%;
		margin: 15px 0 0 0;
	}

	.priceCampaignContent01 {
		background-size: 200px;
	}

	.priceCampaignContent02 {
		background-size: 200px;
		background-position: bottom right;
	}

	.priceCampaignContent03 {
		background-size: 150px;
		background-position: bottom right;
	}

	.priceCampaignContent04 {
		background-size: 210px;
		background-position: bottom -10px right -36px;
	}

	.priceCampaignContent05 {
		background-size: 200px;
		background-position: bottom 11px right -15px;
	}

	.priceCampaignContent06 {
		background-size: 180px;
		background-position: bottom 5px right -10px;
	}
}

/* news column */
.newsTopBox {
	width: 100%;
	max-width: 980px;
	/* margin: 0 auto; */
	text-align: center;
	/* padding: 100px 0; */
	/* background: url(../images/news/newsHeader.webp) top center no-repeat;
	background-size: cover; */
	background: linear-gradient(90deg, #2ee7ab 0% 20%, #ffe41e 20% 80%, #219afe 80% 100%);
	margin: 30px auto 0;
	padding: 50px 0;
	border-radius: 10px;
	position: relative;
}

.newsTopBox::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	background: url(../images/common/archive_header.webp) 0 0 no-repeat;
	top: 15%;
	left: 0;
	background-size: contain;
}

.newsTopH1 {
	/* color: #0c3264; */
	color: #000000;
	font-size: 2.5rem;
	/* margin: 0 auto 30px; */
	margin: 0 auto;
	position: relative;
	z-index: 2;
	/* -webkit-text-stroke: 5px #FFFFFF;
	text-stroke: 5px #FFFFFF;
	paint-order: stroke; */
}

.newsCategoryArea {
	margin: 50px auto;
}

.newsBox {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	column-gap: 20px;
	width: 90%;
	max-width: 980px;
	margin: 0 auto 30px;
}

figure.newsThumbnail {
	margin: 0;
	width: 300px;
}

.newsThumbnail img {
	width: 100%;
	height: auto;
	max-width: 300px;
}

.newsAuthorBox {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.newsAuthorImg img {
	width: 32px;
	height: 32px;
}

.newsAuthorNameBox {
	margin: 0 0 0 10px;
	color: #222222;
	display: flex;
	column-gap: 10px;
}

.newsCategory {
	background: #0fc788;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 1rem;
	padding: 7px 10px 5px;
	text-align: center;
	width: 65px;
	border-radius: 7px;
	margin: 10px 0;
}

.columnCategory {
	background: #ff7d6e;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 1rem;
	padding: 7px 10px 5px;
	text-align: center;
	width: 80px;
	border-radius: 7px;
	margin: 10px 0;
}

.newsTextBox a {
	color: #222222;
}

.newsTextBox a:hover {
	color: #ffe41e;
}

.newsArticleH2 {
	margin: 0 0 5px 5px;
	font-size: 1.3rem;
}

.newsArticleText {
	font-size: 1.05rem;
	margin: 0 0 0 5px;
}

.newsMain .pagenation {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin: 80px auto 50px;
	font-size: 1.2rem;
	color: #222222;
	column-gap: 10px;

}

.newsMain .pagenation .page-numbers {
	margin: 0;
}

.newsMain .pagenation a {
	color: #222222;
	text-decoration: none;
}

.newsMain .pagenation a:hover {
	color: #FFFFFF;
}

a.prev.page-numbers,
a.next.page-numbers {
	margin: 0;
	padding: 0 10px;
}

.newsCategory.columnCategory {
	width: 80px;
}

@media screen and (max-width:767px) {
	.newsTopBox {
		background-size: contain;
		padding: 20px 0;
	}

	.newsBox {
		flex-wrap: wrap;
		margin: 0 auto 30px;
	}

	.newsThumbnailBox {
		width: 100%;
	}

	figure.newsThumbnail {
		width: 100%;
		text-align: center;
	}

	.newsThumbnail img {
		max-width: max-content;
	}

	.newsTextBox {
		position: relative;
	}

	.newsAuthorBox {
		margin: 10px 0 0 0;
	}

	.newsCategory {
		position: absolute;
		top: 10px;
		right: 0;
		margin: 0;
	}

	.newsArticleH2 {
		margin: 10px 0 5px 0;
	}
}

/* single */
#content.column_content {
	padding: 150px 0 0;
}

.single_header_nav .global_nav_item a {
	color: #000000;
}

.single_main {
	/* padding: 100px 0; */
}

.single_main .single_container {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.single_main .single_data {
	display: flex;
	align-items: center;
	column-gap: 10px;
}

.single_main .single_data .author_img {
	border-radius: 50%;
	width: 45px;
	height: 45px;
}

.single_main .single_data .avatar {
	width: 32px;
	height: 32px;
}

.single_main .author_name {
	font-size: 1rem;
}

.single_main .single_date {
	font-size: 0.8rem;
}

.single_main .singleTitleH1 {
	font-size: 1.8rem;
	margin: 5px 0 50px;
	border-bottom: 5px solid #fde420;
	padding: 10px 10px 0;
	position: relative;
}

.single_main .singleTitleH1::before {
	content: "";
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 20%;
	height: 5px;
	background: #2ee7ad;
}

.single_main .single_content {
	font-size: 1.15rem;
	padding: 0 10px;
	line-height: 1.95;
}

.single_main .single_content .singleThumbnail {
	text-align: center;
}

.single_main .single_content .has-border.-border01 {
	border: 5px solid #fde420;
	margin: 10px 0 15px;
	border-radius: 10px;
	padding-left: 2.5em;
}

.single_main .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
	color: #333;
	background: none;
	padding: 0;
	padding-left: 10px;
}

.single_main .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
	content: "";
	display: none;
}

.single_main .post_content h2 {
	font-size: 1.5rem;
	border-left: 5px solid #fde420;
	padding-left: 10px;
	margin: 4em 0 2em;
	background: none;
}

.single_main .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
	padding: 0;
	padding-left: 10px;
}

.single_main .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
	content: "";
	display: none;
}

.single_main h3 {
	margin: 3em 0 2em;
	border-bottom: 3px solid #2ee7ad;
	padding-left: 10px;
	font-size: 1.3rem;
}

.single_main .post_content h4:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
	padding: 0;
	border: none;
	border-left: 3px solid #fde420;
	padding-left: 10px;
}

.single_main h4 {
	margin: 10px 0 15px 10px;
	font-size: 1.2rem;
	border-left: 3px solid #fde420;
	padding-left: 10px;
}

.single_main h5 {
	margin: 10px 0 15px 10px;
	border-bottom: 1px solid #2ee7ad;
	padding-left: 10px;
}

.single_main p {
	margin-bottom: 2em;
}

.single_main ul {
	margin: 2em 0 2em 10px;
	padding-left: 20px;
	list-style-type: disc;
}

.single_main ol {
	margin: 2em 0 2em 10px;
	padding-left: 20px;
	list-style-type: decimal;
}

.single_main li {
	line-height: 2;
}

.single_main .single_content table {
	margin: 1.5em 0;
}

/* .single_main .single_content tr:first-child th {
	text-align: left;
	background-color: #0fc788;
	color: #FFFFFF;
} */

.single_main .post_content thead td,
.single_main .post_content thead th {
	color: #333333;
}

.single_main .single_content tr:not(first-child) th {
	background-color: #f8f8f8;
	text-align: left;
}

.single_main .is-style-big_icon_point {
	margin-bottom: 2.5em;
}

.single_content .swell-block-button {
	margin-top: 50px;
}

.single_category {
	text-align: right;
	margin: 20px 0 0 0;
	font-weight: bold;
	font-size: 1.2rem;
}

.single_category a {
	text-decoration: underline;
	color: #0451fd;
}

.single_main .swell-block-postLink {
	margin-bottom: 3em;
}

.column_footer .footerNav {
	display: flex;
	justify-content: flex-end;
	gap: 25px;
	width: auto;
	max-width: none;
}

.column_footer .footerNav a {
	font-weight: bold;
	letter-spacing: 0.1em;
	color: #000000;
}

#sidebar .widget_block {
	background: #FFF;
	box-shadow: 0 0 7px 0 rgba(194, 194, 194, 1);
	-webkit-box-shadow: 0px 0px 7px 0px rgba(194, 194, 194, 1);
	-moz-box-shadow: 0px 0px 7px 0px rgba(194, 194, 194, 1);
	box-sizing: border-box;
}

.widget-title {
	background: none repeat scroll 0 0 #333;
	border-left: 3px solid #ffc800;
	margin-bottom: 20px;
}

.widget-title h3 {
	padding: 10px;
	margin: 0 0 25px;
	color: #fff;
	font-size: 20px;
}

.textwidget {
	padding: 0 20px 20px;
}

@media screen and (max-width:767px) {
	.single_main {
		width: 94%;
		margin: 0 auto;
	}
}
