/******************************************
	Theme Name:institute kinshicho theme
****************************************/

/****************************************
common parts
*****************************************/
/*slideup*/
.anima-slideup{
	opacity: 0;
	transform: translateY(60px);
	transition: 1.5s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.in.anima-slideup,
.in .anima-slideup{
	opacity: 1;
	transform: translateY(0);
}
/*slideup end*/
/*slideleft*/
.anima-slideleft{
	opacity: 0;
	transform: translatex(-40px);
	transition: 1s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.in.anima-slideleft,
.in .anima-slideleft{
	opacity: 1;
	transform: translatex(0);
}
/*slideup end*/
/*slideright*/
.anima-slideright{
	opacity: 0;
	transform: translatex(40px);
	transition: 1s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.in.anima-slideright,
.in .anima-slideright{
	opacity: 1;
	transform: translatex(0);
}
/*slideup end*/
/*opacity*/
.anima-op{
	opacity: 0;
	transition: 2s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.in.anima-op,
.in .anima-op{
	opacity: 1;
}
/*delay*/
.delay01{transition-delay: .1s;}
.delay02{transition-delay: .2s;}
.delay03{transition-delay: .3s;}
.delay04{transition-delay: .4s;}
.delay05{transition-delay: .5s;}
.delay06{transition-delay: .6s;}
.delay07{transition-delay: .7s;}
.delay08{transition-delay: .8s;}
.delay09{transition-delay: .9s;}
.delay010{transition-delay: 1s;}
.delay011{transition-delay: 1.1s;}
.delay012{transition-delay: 1.2s;}
.delay013{transition-delay: 1.3s;}
.delay014{transition-delay: 1.4s;}
.delay015{transition-delay: 1.5s;}
.delay016{transition-delay: 1.6s;}
.delay017{transition-delay: 1.7s;}
.delay018{transition-delay: 1.8s;}
.delay019{transition-delay: 1.9s;}
.delay020{transition-delay: 2s;}
/*delay 414以上*/
@media screen and (min-width:414px){
	.delay010_414up{transition-delay: 1s;}
	.delay011_414up{transition-delay: 1.1s;}
	.delay012_414up{transition-delay: 1.2s;}
	.delay013_414up{transition-delay: 1.3s;}
	.delay014_414up{transition-delay: 1.4s;}
	.delay015_414up{transition-delay: 1.5s;}
	.delay016_414up{transition-delay: 1.6s;}
	.delay017_414up{transition-delay: 1.7s;}
	.delay018_414up{transition-delay: 1.8s;}
	.delay019_414up{transition-delay: 1.9s;}
	.delay020_414up{transition-delay: 2s;}
}

/*breadcrumbs*/
.breadcrumbs{
	color: #999;
	font-weight: bold;
	padding: 1em;
}
.breadcrumbs a{
	color: #01a0c6;
}
@media screen and (max-width:768px){
	.breadcrumbs{
	}
}
/*btn*/
.btn{
	background:#1E2800;
	border-radius:99em;
	box-shadow: 0px 3px 2px 0px rgba(0,0,0,0.3);
	color:#fff;
	display:inline-block;
	font-size:14px;
	font-weight:bold;
	line-height:50px;
	position:relative;
	text-align:center;
	width:240px;
	max-width:100%;
}
.btn.top_btn{
	background:linear-gradient(0deg, #501414 0%, #ff0000 100%);
}
.btn_w320{
	width:320px;
}
.btn_fz16{
	font-size:16px;
}
.btn_h60{
	line-height:60px;
}
.btn:after{
	content:"\f054";
	display:block;
	font-family:"Font Awesome 5 Free";
	font-size:80%;
	position:absolute;
	right:15px;
	top:50%;
	transform:translatey(-50%);
}
/*sns_link*/
.sns_link_item:nth-child(n+2){
	margin-left:20px;
}
.sns_link_item img{
	display:block;
}
/****************************************
ユーザー入力エリア
*****************************************/
.entry-content{
	border-bottom:2px solid #C8C8C8;
	padding-bottom:40px;
}
.entry-content *{
	margin-bottom:20px;
}
.entry-content *:last-child{
	margin-bottom:0;
}
.entry-content a{
	color:#0082CC;
	text-decoration:underline;
}
.entry-content a:hover{
	text-decoration: none;
}
.entry-content address{
	background: #f1f1f1;
	padding: 20px;
}
.entry-content blockquote{
	background: #f1f1f1;
	font-style: italic;
	padding: 20px;
}
.entry-content blockquote p:last-child{
	margin-bottom: 0;
}
.entry-content code{
	background: #f1f1f1;
	font-style: italic;
}
.entry-content em{
	background: #ecf0f4;
	font-style: italic;
}
.entry-content pre{
	background: #f1f1f1;
	font-size: 14px;
	line-height: 1.4;
	overflow:scroll;
	padding: 1em;
}

/*ul ol*/
.entry-content ul,
.entry-content ol{
	margin-left:1em;
}
.entry-content ul:last-child,
.entry-content ol:last-child{
	margin-bottom:0;
}
/*ul*/
.entry-content ul li{
	list-style:disc;
}
.entry-content ul li:last-child{
	margin-bottom:0;
}
/*ol*/
.entry-content ol li{
	list-style:decimal;
}
.entry-content ol li:last-child{
	margin-bottom:0;
}
.entry-content ul ol li{
	list-style:decimal;
}
.entry-content ol ul li{
	list-style:disc;
}
.entry-content li{
	margin:0 0 10px 10px;
}
.entry-content li ul,
.entry-content li ol{
	margin-top: 10px;
}

.entry-content dt{
	font-weight: bold;
}
.entry-content dd{
	margin-bottom: 20px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6{
	line-height: 1.2;
	margin-bottom:1em;
}
.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child,
.entry-content h4:first-child,
.entry-content h5:first-child,
.entry-content h6:first-child{
	margin-top:0;
}
.entry-content h1{
	font-size: 30px;
	margin-top: 2em;
}
.entry-content h2{
	font-size: 30px;
	margin-top: 2em;
}
.entry-content h3{
	font-size: 24px;
	margin-top: 2em;
}
.entry-content h4{
	font-size: 24px;
	margin-top: 2em;
}
.entry-content h5{
	margin-top: 2em;
}
.entry-content h6{
	margin-top: 2em;
}
/*table*/
.entry-content table{
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	width: 100%;
}
.entry-content th,
.entry-content td{
	border-bottom: 1px solid #ccc;	
	border-right: 1px solid #ccc;
	padding: 10px;
	vertical-align: top;
}
.entry-content th{
	background: #f1f1f1;
	font-weight: 700;
	text-align: left;
}
/*inline*/
.entry-content img{
	height: auto;
	max-width: 100%;
}
.entry-content a img{
	transition: .5s;
}
.entry-content a:hover img{
	box-shadow:0px 0px 20px 4px #ddd;
}
.entry-content iframe{
	max-width: 100%;
}
.aligncenter{
	text-align: center;
}
.alignleft{
	float: left;
	margin-right: 20px;
}
.alignright{
	float: right;
	margin-left: 20px;
}
.wp-caption{
	max-width: 100%;
}
.wp-caption-text{
	color: #666;
	font-size: 12px;
	font-style: italic;
}
/****************************************
body
*****************************************/
body.no_scroll{
	height:100vh;
	overflow:hidden;
}
/****************************************
fixed_aside
*****************************************/
.fixed_aside{
	align-items:center;
	display:flex;
	height:100vh;
	justify-content:center;
	position:fixed;
	text-align:center;
	top:0;
	width:calc((100vw - 464px) / 2);
}
@media screen and (max-width:768px){
	.fixed_aside{
		display:none;
	}
}
.fixed_aside_inner{
	width:80%;
	max-width:300px;
}
.fixed_logo{
	background:url(images/common/fixed_logo_bg.jpg) center bottom / cover;
	left:0;
}
.fixed_logo img{
	max-width:180px;
}
.fixed_contact{
	background:url(images/common/fixed_contact_bg.jpg) center bottom / cover;
	right:0;
}
/****************************************
wrap
*****************************************/
body{
	background:#ccc;
}
.wrap{
	background:#fff;
	margin:0 auto;
	position:relative;
}
@media screen and (min-width:769px){
	.wrap{
		max-width:464px;
	}
}
/****************************************
header
*****************************************/
.header{
	background:#fff;
	padding:15px 0;
	position:sticky;
	top:0;
	transition:.5s;
	width:100%;
	z-index:90;
}
@media screen and (min-width:769px){
	.header{
		max-width:464px;
	}
}
.header.on{
	background:#141A16;
}
.header.hide{
	top:-80px;
}
.header_logo{
	display:block;
}
.header_logo path,
.header_logo text,
.header_logo text tspan {
	transition:.25s;
}
.on .header_logo text,
.on .header_logo text tspan {
	fill:#fff;
}
.on .header_logo text tspan.red {
	fill: #c82814;
}
/*icon-humburger*/
.menu_wrap{
	border-left:1px solid #141A16;
	padding-left:20px;
}
.icon-hamburger {
	cursor: pointer;
	height: 36px;
	margin: 0 auto;
	position: relative;
	xright: 20px;
	transition: .3s;
	xtop: 20px;
	width: 36px;
}
.icon-hamburger .bar {
	display: inline-block;
	width: 36px;
	height: 2px;
	background-color: #000;
	position: absolute;
	left: 0;
	transition: .25s;
}
#bar01 {
	top: 0;
}
#bar02 {
	top: 8px;
	width:26px;
}
#bar03 {
	top: 16px;
	width:16px;
}
.active .bar{
	background:#fff;
}
.active #bar01 {
	top: 5px;
	transform: rotate(45deg);
}
.active #bar02 {width: 0;}
.active #bar03 {
	top: 5px;
	transform: rotate(135deg);
	width:100%;
}
.hamburger_text{
	font-family:HelveticaNeue-Medium;
	font-size:14px;
	position:absolute;
	top:16px;
	transition: .25s;
}
.active .hamburger_text{
	color:#fff;
}
/****************************************
gnav
*****************************************/
.gnav{
	background:#141A16;
	border-top:2px solid #707070;
	display:none;
	/*height:js;*/
	overflow-y:scroll;
	position:fixed;
	top:0;
	width:100%;
	z-index:98;
	
}
@media screen and (min-width:769px){
	.gnav{
		max-width:464px;
	}
}
/*gnav_header*/
/*
.gnav_header{
	border-bottom:2px solid #50555A;
	padding:15px 0;
}
.gnav_header_logo{
	display:block;
	height:48px;
}
.gnav_close{
	display:block;
	height:48px;
}
*/
/*gnav_menu*/
.gnav_menu li{
	width:100%;
}
.gnav_menu a{
	border-bottom:1px solid #50555A;
	display:block;
	padding:20px 18px;
	position:relative;
}
.gnav_menu .en,
.gnav_menu .jp{
	display:block;
	font-weight:bold;
	line-height:1;
}
.gnav_menu .en{
	color:#c82814;
	font-size:32px;
	font-family:HelveticaNeue-CondensedBold;
}
@media screen and (max-width:768px){
	.gnav_menu .en{
		font-size:24px;
	}
}
.gnav_menu .jp{
	color:#50555A;
	font-size:12px;
	margin-top:4px;
}
@media screen and (max-width:768px){
	.gnav_menu .jp{
		font-size:10px;
	}
}
.gnav_menu_arrow{
	height:10px;
	position:absolute;
	right:18px;
	top:50%;
	transform:translatey(-50%);
}
.gnav_menu .gnav_menu_access a,
.gnav_menu .gnav_menu_privacy a{
	border:none;
	margin-top:20px;
	padding:0 18px;
}
.gnav_menu .gnav_menu_access a{
	border-right:1px solid #50555A;
}
.gnav_menu .gnav_menu_access .en,
.gnav_menu .gnav_menu_privacy .en{
	font-size:28px;
}
@media screen and (max-width:768px){
	.gnav_menu .gnav_menu_access .en,
	.gnav_menu .gnav_menu_privacy .en{
		font-size:20px;
	}
}
.gnav_menu .gnav_menu_access{
	width:41%;
}
.gnav_menu .gnav_menu_privacy{
	width:59%;
}
.gnav_btn img{
	display:block;
}
.gnav_copyright{
	background:#000;
	color:#fff;
	font-size:12px;
	margin-top:20px;
	padding:20px 0;
}
/****************************************
cta
*****************************************/
.cta{
	background:#F0F0F0;
	padding:60px 0 52px;
	position:relative;
	z-index:2;
}
.cta_text{
	font-size:18px;
	font-weight:bold;
	margin-top:30px;
}
.cta_btns a,
.cta_btns img{
	display:block;
}
.cta_btns a:nth-child(2){
	margin-top:18px;
}
/****************************************
footer
*****************************************/
.footer{
	background:#141A16;
	color:#fff;
	padding-top:45px;
	position:relative;
	z-index:2;
}
/*footer_top_logo*/
.footer_top_logo_img{
	display:block;
	height:48px;
}
@media screen and (max-width:768px){
	.footer_top_logo_img{
		height:42px;
	}
}
@media screen and (max-width:375px){
	.footer_top_logo_img{
		height:38px;
	}
}
/*footer_top_add*/
.footer_top_add{
	display:block;
	font-size:14px;
	position:relative;
}
@media screen and (max-width:768px){
	.footer_top_add{
		font-size:11px;
	}
}
.footer_top_add a{
	position:absolute;
	right:0;
	top:0;
}
/*copyright*/
.footer_copyright{
	background:#000;
	color:#fff;
	font-size:11px;
	margin-top:25px;
	padding:24px 0;
}
/****************************************
fixed_btn
*****************************************/
.fixed_btn{
	display:none;
}
@media screen and (min-width:769px){
	.fixed_btn{
		max-width:464px;
	}
}
@media screen and (max-width:768px){
	.fixed_btn{
		background:rgba(20,26,22,0.9);
		bottom:0;
		display:block;
		opacity:0;
		padding:10px 0 5px;
		position:fixed;
		transition:.5s;
		visibility:hidden;
		width:100%;
		z-index:90;
	}
	.fixed_btn.on{
		opacity:1;
		visibility:visible;
	}
	.fixed_btn img{
		display:block;
		margin:0 auto;
		max-width:420px;
	}
}

/****************************************
op
*****************************************/
.op{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00b4b4+0,00c800+100 */
	/* background: #00b4b4; Old browsers */
	background: #b40000; /* Old browsers */
	/* background: -moz-linear-gradient(-45deg,  #00b4b4 0%, #00c800 100%); FF3.6-15 */
	background: -moz-linear-gradient(-45deg,  #b40000 0%,#ff0c00 100%); /* FF3.6-15 */
	/* background: -webkit-linear-gradient(-45deg,  #00b4b4 0%,#00c800 100%); Chrome10-25,Safari5.1-6 */
	background: -webkit-linear-gradient(-45deg,  #b40000 0%,#ff0c00 100%); /* Chrome10-25,Safari5.1-6 */
	/* background: linear-gradient(135deg,  #00b4b4 0%,#00c800 100%); W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	background: linear-gradient(135deg,  #b40000 0%,#ff0c00 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00b4b4', endColorstr='#00c800',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	
	position:fixed;
	width:100%;
	z-index:99;
}
@media screen and (min-width:769px){
	.op{
		max-width:464px;
	}
}
.op.hide{
	display:none;
}
.op_logo{
	left:50%;
	opacity:0;
	position:absolute;
	top:50%;
	transition:1s .5s;
	transform:translate(-50%,-50%);
	width:38.8%;
}
.on .op_logo{
	opacity:1;
}
.kv_top,main{
	opacity:0;
}
/****************************************
front-page
*****************************************/
/*common*/
.top_sec{
	padding:80px 0;
	position:relative;
}
.top_sec .inner_384,
.top_sec .inner_420{
	position:relative;
	z-index:2;
}
.top_sec .bg_top{
	position:absolute;
	top:0;
}
.top_sec .bg_bottom{
	position:absolute;
	bottom:0;
}
/*kv*/
.fv_top{
	position:relative;
	overflow: hidden;
}
.fv_top_bg{
	display:block;
	width:100%;
}
.fv_top_img{
	position:absolute;
}
.fv_top_img.img01{
	top: 3%;
  right: -3.23%;
  width: 96.4%;
  z-index: 3;
}
.fv_top_img.img02{
	width: 92.6%;
	top: 10%;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 2;
}
.fv_top_img.img03{
	top: 23.9%;
	left: 0;
	right: 0;
	width: 86.2%;
	margin: auto;
	z-index: 2;
}
.fv_top_img.img04{
	position: relative;
	display: block;
	z-index: 1;
}
.fv_top_img.img05{
	top: -13.4%;
	left: 0;
	width: 35%;
	z-index: 2;
}
.fv_top_img.img06{
	bottom: 0;
	z-index:3;
}

.link01 {
	position: absolute;
	top: 41.3%;
	left: 0;
	right: 0;
	width: 86.2%;
	margin: auto;
	z-index: 2;
}

.btn_wrap {
	position: relative;
	border-radius: 3.2em;
	box-shadow: 0 2px 8px 0 #000;
	overflow: hidden;
}

.btn_wrap::before {
	position: absolute;
	content: '';
	display: block;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.85) 45%, rgba(255, 255, 255, 0) 100%);
	transform: skewX(-45deg);
	animation: btn_animation 2.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) infinite;
	z-index: 2;
}

@keyframes btn_animation {
	0% {
		left: -100%;
		}
		25% {
		left: 100%;
		}
		100% {
		left: 100%;
	}
}

.fv_top_text {
	position:absolute;
	width:100%;
}

.fv_top_text p {
	font-size: 1em;
	text-align: center;
	color: #ffffff;
	}

.fv_top_text p span {
	background: linear-gradient(transparent 50%, #d54172 50%);
	font-weight: bold;
	}

.text01 {
	top: 53.1%;
}

.text01 p {
	font-size: clamp(1.125em, 6.3vw, 1.75em);
	font-weight: 700;
	line-height: 1.42;
}

.text01 .img06 {
	display: block;
	width: 96.2%;
	margin-top: clamp(0.8em, 5.3vw, 1.5em);
	margin-inline: auto
}

.text02 {
	top: 68.4%;
}

.text02 p {
	font-size: clamp(0.8em, 4vw, 1.125em);
	font-weight: 700;
	margin-top: clamp(3em, 15.2vw, 3.89em);
}

.text02 .img07 {
	display: block;
	width: 84.4%;
	margin-inline: auto;
}

.text02 .img08 {
	display: block;
	width: 84.4%;
	margin: 1.25em auto 0;
}

/*essence*/
.top_sec_essence {
	background-color: #1a1414;
	padding-block: 80px;
}
.essence_title {
	width: 78.77%;
	margin-inline: auto;
}
.essence_medal {
	display: block;
	width: 80.18%;
	margin-inline: auto;
}
.essence_intro_text {
	font-size: clamp(0.9em, 4.4vw, 1.25em);
	font-weight: bold;
	line-height: 1.4;
	color: #fff;
	text-align: center;
}
.essence_catch {
	display: block;
	width: 96.7%;
	margin-inline: auto;
}
.essence_box {
	width: 100%;
}
.essence_box_img {
	width: 100%;
}
.essence_box_text {
	font-size: clamp(0.8em, 3.9vw, 1.125em);
	font-weight: bold;
	color: #fff;
	line-height: 1.55;
}

/*promo*/
.promo_box1{
	position:relative;
}
.promo_box1 .bg{
	display:block;
}
.promo_box1_imgs{
	bottom:0;
	left:4.75%;
	position:absolute;
	width:90%;
}
.promo_box1_img1{
	width:72%;
}
.promo_box1_img2{
	width:91%;
}
.promo_box2{
	background:url(images/top/promo_box2_bg.jpg) no-repeat top center /cover;
	color:#fff;
	padding:45px 0 90px;
}
.promo_box2 li{
	font-size:20px;
	font-weight:bold;
	line-height:1.3;
	padding-left:60px;
	position:relative;
}
@media screen and (max-width:768px){
	.promo_box2 li{
		font-size:4.31vw;
	}
}
.promo_box2 li:nth-child(n+2){
	margin-top:30px;
}
.promo_box2 li:after{
	background:url(images/top/promo_box2_listicon.png) no-repeat center center /contain;
	content:"";
	display:block;
	height:48px;
	position:absolute;
	left:0;
	top:50%;
	transform:translatey(-50%);
	width:48px;
}
/*point*/
.top_sec_point{
	background:#F0F0F0;
	padding:116px 0 68px;
}
.top_sec_point .inner_420{
	background:#fff;
	padding:40px 20px;
}
.point_subtitle{
	width:43.3%;
}
.point_title{
	width:100%;
}
.point_read{
	font-size:20px;
	font-weight:bold;
}
@media screen and (max-width:768px){
	.point_read{
		font-size:4.31vw;
	}
}
.point_item{
	position:relative;
}
.point_item_label{
	height:40px;
	left:10px;
	position:absolute;
	top:0;
	transform:translatey(-50%);
}
.point_item_label.even{
	left:auto;
	right:10px;
}
.point_item_title{
	font-size:20px;
	line-height:1.3;
}
.top_sec_point_bg{
	position:absolute;
	top:0;
}
/*campeigh*/
.top_bg_gradi{
	background:url(images/top/bg_course.jpg) no-repeat top center;
	background-size:100%;
	/* padding-top:60px; */
}
.campeign_text{
	color:#fff;
	font-size:18px;
	font-weight:bold;
}
.campeign_list{
	border:4px solid #C8AA46;
	border-radius:10px;
	color:#fff;
	padding:36px;
}
.campeign_list_item:nth-child(n+2){
	margin-top:20px;
}
.campeign_list_item_img{
	width:29%;
}
.campeign_list_item_img img{
	display:block;
}
.campeign_list_item_cnt{
	font-weight:bold;
	line-height:1;
	width:61%;
}
.campeign_list .text1{
	font-size:24px;
	width:100%;
}
@media screen and (max-width:768px){
	.campeign_list .text1{
		font-size:18px;
	}
}
.campeign_list .text2{
	font-size:40px;
	width:100%;
}
.campeign_list .text2 span{
	font-size:32px;
}
/*price*/
.top_sec_price{
	padding:60px 0;
}

.top_sec_price .page_title{
	color:#fff;
}
.price_wrap{
	background:#fff;
	padding:40px 18px;
	position:relative;
}
.price_wrap_wrap{
	position:relative;
	z-index:2;
}
.price_text{
	font-size:18px;
	font-weight:bold;
	text-align:center;
}
.top_sec_price .price_item_cnt .border{
	padding-bottom:10px;
}
.top_sec_price .price_item_cnt .border:nth-child(2) {
    border-bottom: none;
    padding-bottom: 0;
}
.price_bg{
	left:0;
	position:absolute;
	top:0;
	width:100%;
}

/*plans*/
.plans_list {
	display: grid;
	gap: 20px 0;
}

.plans_item {
	background-color: #f0f0f0;
	border-radius: 10px;
	padding: 24px 20px;
}

.plans_item_price .lesson {
	font-size: 20px;
	font-weight: 700;
}
@media screen and (max-width:768px){
	.plans_item_price .lesson {
		font-size: clamp(14px, 3.7vw, 20px);
	}
}

.plans_item_price strong {
	font-size: 32px;
	font-weight: 700;
}
@media screen and (max-width:768px){
	.plans_item_price strong {
		font-size: clamp(26px, 6.5vw, 32px);
	}
}

.plans_item_price .tax {
	font-size: 16px;
	font-weight: 700;
}
@media screen and (max-width:768px){
	.plans_item_price .tax {
		font-size: clamp(10px, 2.6vw, 16px);
	}
}

.plans_item_times {
	width: 100%;
	font-size: 20px;
	font-weight: 700;
	border-top: 2px solid #fff;
	margin-top: 10px;
	padding-top: 10px;
}

@media screen and (max-width:768px){
	.plans_item_times {
		font-size: clamp(14px, 3.7vw, 20px);
	}
}

.plans_text {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.75;
	color: #c82814;
}
/* @media screen and (max-width:768px){
	.plans_text {
		font-size: clamp(12px, 3.2vw, 16px);
	}
} */

/*hikaku*/
.top_sec_hikaku{
	background-image: url(images/top/bg_campeign.jpg);
	background-size: cover;
	padding-block: 80px;
}
.price_sec_hikaku {
	background-image: none;
}
.hikaku_title {
	width: 88%;
	margin-inline: auto;
}
.hikaku_title2 img{
	height:24px;
}
@media screen and (max-width:768px){
	.hikaku_title2 img{
		height:20px;
	}
}
@media screen and (min-width:769px){
	.hikaku_card{
		height:190px;
	}
}
@media screen and (max-width:768px){
	.hikaku_card{
		width:100%;
	}
}
.hikaku_table_wrap{
	overflow-x:scroll;
}
.hikaku_table{
	line-height:1.2;
	text-align:center;
	width:760px;
}
.hikaku_table_th{
	font-size:18px;
	font-weight:bold;
}
.hikaku_table_col{
	padding:14px 4px;
}
.hikaku_table_col:nth-child(n+2){
	margin-left:5px;
}
.hikaku_table_col:first-child{
	width:100px;
}
.hikaku_table_col:nth-child(2){
	width:240px;
}
.hikaku_table_col.kinshicho{
	background: #c82814;
	border-radius:8px 8px 0 0;
	color:#fff;
	position:relative;
}
.th_bg{
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:auto;
}

.hikaku_table_col.tasha{
	background:#c8c8c8;
	border-radius:8px 8px 0 0;
	color:#fff;
}
.hikaku_table_col:nth-child(3),
.hikaku_table_col:nth-child(4){
	width:200px;
}
.hikaku_table_col.gray{
	background:#646464;
	border-radius:8px 0 0 8px;
	color:#fff;
	font-size:13px;
	font-weight:bold;
	letter-spacing:-1px;
}
.hikaku_table_col.kinshicho_td.td{
	background:#f4c2c2;
}
.hikaku_table_col.td{
	position: relative;
	background:#f0f0f0;
}
.hikaku_table_col .text1{
	font-size:28px;
	font-family: HelveticaNeue-Bold;
}
.hikaku_table_col .text2{
	font-size:20px;
}
.hikaku_table_col .text3{
	font-size:24px;
	font-family: HelveticaNeue-Bold;
}
.hikaku_table_col p {
	width: 128px;
}
.hikaku_table_col p.kinsicho {
	width: 144px;
}
.hikaku_table_col .hikaku_icon{
	display: block;
	height: auto;
	aspect-ratio: 1 / 1;
}
.hikaku_table_col .hikaku_icon.icon_correct_circle,
.hikaku_table_col .hikaku_icon.icon_circle {
	width: 28px;
}
.hikaku_table_col .hikaku_icon.icon_batu{
	width: 20px;
}
.hikaku_table_col .hikaku_icon.icon_triangle{
	width: 25px;
	aspect-ratio: 25 / 22;
}
.hikaku_campeign {
	display: block;
	width: 95.2%;
	margin-inline: auto;
}
.top_sec_hikaku .link01 {
	position: relative;
	display: block;
	top: unset;
  left: unset;
  right: unset;
	width: 95.2%;
	margin: 60px auto 0;
}
.hikaku_text01 {
	display: block;
	width: 64.3%;
	margin-inline: auto;
}
.hikaku_text02 {
	display: block;
	width: 78.6%;
	margin-inline: auto;
}
.hikaku_text03 {
	display: block;
	width: 72.8%;
	margin-inline: auto;
}
.hikaku_text04 {
	display: block;
	width: 95.2%;
	margin-inline: auto;
}
.hikaku_text05 {
	display: block;
	width: 85.7%;
	margin-inline: auto;
}
.bg_hikaku{
	position:absolute;
	top:-300px;
}
/*before after*/
.top_sec_ba{
	background-color: #1a1414;
	padding-top:60px;
}
.ba_items_wrap{
	background:#646464;
	position:relative;
}
.ba_items_wrap:after{
	background:#1a1414;
	content:"";
	display:block;
	height:20px;
	position:absolute;
	top:0;
	width:100%;
}
.ba_items{
	position:relative;
	z-index:2;
}
.ba_item{
	padding:0 20px 30px;
}
.ba_item_text{
	border-bottom:2px solid #50555A;
	font-size:20px;
	font-weight:bold;
	line-height:1;
	color: #fff;
	padding-bottom:10px;
}
.ba_item_text span{
	display:inline-block;
	font-family: Helvetica-bold;
	font-size:36px;
	transform:translatey(5px);
}
.ba_items_arrow{
	position:absolute;
	top:35%;
	width:100%;
	z-index:3;
}
.ba_arrow_prev,
.ba_arrow_next{
	cursor:pointer;
}
.ba_arrow_img{
	height:48px;
}
.slick-dots {
	bottom:-50px
}
.slick-dots li button {
	background:#F0F0F0;
	border:4px solid #F0F0F0;
	border-radius:50%;
}
.slick-dots li.slick-active button{
	background:#c82814;
}
.slick-dots li button:before {
	content:none;
}
/*faq*/
.top_sec_faq{
	background-color: #1a1414;
}
/*staff*/
.top_sec_staff{
	background-color: #1a1414;
	padding-top:30px;
}
.top_sec_staff_item{
	display:block;
}
/*info*/
.top_sec_info{
	background-color: #1a1414;
	padding:60px 0 100px;
}
/****************************************
下層ページ共通
*****************************************/
/*kv*/
.kv_page{
	overflow:hidden;
	position:relative;
}
.kv_page img{
	display:block;
}
.kv_page_titles{
	color:#c82814;
	left:8.65%;
	line-height:1;
	position:absolute;
	top:50%;
	transform:translatey(-50%);
}
.kv_page_title{
	font-family:HelveticaNeue-CondensedBold;
	font-size:40px;
	opacity:0;
	transform:translatex(40px);
	transition:.5s .3s;
}
@media screen and (max-width:768px){
	.kv_page_title{
		font-size:8.621vw;
	}
}
.kv_page_title.on{
	opacity:1;
	transform:translatex(0);
}
.kv_page_subtitle{
	font-size:12px;
	font-weight:bold;
	margin-top:5px;
	opacity:0;
	transform:translatex(40px);
	transition:.5s .4s;
}
.kv_page_subtitle.on{
	opacity:1;
	transform:translatex(0);
}
/*main*/
.page_bg{
	padding:60px 0 100px;
}
.page_title{
	opacity:0;
	transform:translatey(40px);
	transition:.5s 1s;
}
.page_title.on{
	opacity:1;
	transform:translatey(0);
}
.page_title:after{
	background:#c82814;
	content:"";
	display:block;
	height:2px;
	margin-top:15px;
	width:100px;
}
.page_title.text-center:after{
	margin:15px auto 0;
}
.page_title img{
	height:27px;
}
@media screen and (max-width:768px){
	.page_title img{
		height:22px;
	}
}
.page_title.line2 img{
	height:62px;
}
@media screen and (max-width:768px){
	.page_title.line2 img{
		height:52px;
	}
}
.page_title.line3 img{
	height:107px;
}
@media screen and (max-width:768px){
	.page_title.line3 img{
		height:95px;
	}
}
.page_title.line6 img{
	height:228px;
}
@media screen and (max-width:768px){
	.page_title.line6 img{
		height:200px;
	}
}
.page_subtitle{
	color:#C8C8C8;
	font-family:HelveticaNeue-CondensedBold;
	font-size:18px;
	font-weight:bold;
}
.page_read{
	font-size:18px;
	font-weight:bold;
	line-height:1.8;
	letter-spacing: -0.0001em;
	color: #141A16;
	opacity:0;
	transform:translatey(40px);
	transition:.5s 1.1s;
}
.page_read.white{
	color: #fff;
}
.page_read.on{
	opacity:1;
	transform:translatey(0);
}
/*bg*/
.page_bg{
	position:relative;
}
.page_bg > .inner_384{
	position:relative;
	z-index:2;
}
.page_bg > .inner_394{
	position:relative;
	z-index:2;
}
.page_bg .bg_top,
.page_bg .bg_bottom{
	position:absolute;
	z-index:1;
}
.page_bg .bg_top{
	top:0;
}
.page_bg .bg_bottom{
	bottom:0;
}
/****************************************
about
*****************************************/
.main_about{
	position:relative;
}
.main_about_bg{
	position:absolute;
	top:0;
	z-index:1;
}
.main_about .page_bg{
	padding:60px 0 40px;
	position:relative;
	z-index:2;
}
.main_about .point_wrap{
	background:#fff;
	padding: 60px 20px 40px;
}
.about_points{
	background:#FAF5F0;
	margin-top:-60px;
	padding-top:130px;
	position:relative;
	z-index:1;
}
.title_points:after {
    background: #c82814;
    content: "";
    display: block;
    height: 2px;
    margin-top: 15px;
    width: 100px;
}
.title_points img{
	width:100%;
}
.about_points_item{
	xbackground:#F5FAEB;
	padding-top:40px;
	position:relative;
	z-index:2;
}
.about_points_item.item01 .inner_384,
.about_points_item.item04,
.about_points_item.item04 .inner_384,
.about_points_item.item05 .inner_384,
.about_points_item.item06,
.about_points_item.item06 .inner_384,
.access .inner_384{
	position:relative;
	z-index:2;
}
.about_points_item_img{
	display:block;
}

.about_points_item_title{
	border-left:8px solid #c82814;
	font-size:20px;
	line-height:1.4;
	margin-top:30px;
	padding:2px 20px;
}
.about_points_item_text{
	border-bottom:2px solid #C8C8C8;
	padding-bottom:40px;
	letter-spacing:0px;
}
.about_points_item:last-child .about_points_item_text{
	border:none;
}
.about_points_item_text strong{
	color:#c82814;
}
.about_points_item_text .list_box{
	background:#fff;
	font-weight:bold;
	padding:20px;
}
.about_points_item_text .list_box li{
	padding-left:20px;
	position:relative;
}
.about_points_item_text .list_box li:before{
	background:#c82814;
	border-radius:99em;
	content:"";
	height:6px;
	left:0;
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	width:6px;
}
.insta_link{
	display:block;
	height:60px;
}
.access{
	padding:60px 0 80px;
	position:relative;
	z-index:2
}
.about_bg{
	position:absolute;
}
.about_bg.bg01{
	top:0;
}
/* .about_bg.bg02{
	top:35%;
} */
.about_bg.bg02{
	top:0;
}
/****************************************
price
*****************************************/
.page_bg_price{
	background:url(images/price/main_bg.jpg) top center / cover;
	padding-bottom:40px;
}
.price_item_title{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00b4b4+0,00c800+100 */
	background: #00b4b4; /* Old browsers */
	background: -moz-linear-gradient(left,  #00b4b4 0%, #00c800 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #00b4b4 0%,#00c800 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #00b4b4 0%,#00c800 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00b4b4', endColorstr='#00c800',GradientType=1 ); /* IE6-9 */

	color:#fff;
	font-size:18px;
	padding:5px 20px;
	position:relative;
}
.price_item_title .icon{
	height:100px;
	position:absolute;
	right:10px;
	top:0;
	transform:translatey(-40%);
}
@media screen and (max-width:768px){
	.price_item_title .icon{
		height:80px;
	}
}
.price_item_title.title2 .icon{
	height:57px;
	transform:translatey(-7px);
}
@media screen and (max-width:768px){
	.price_item_title.title2 .icon{
		height:38px;
		top:50%;
		transform:translatey(-50%);
	}
}
.price_item_cnt{
	background:#F5FAEB;
	padding:20px;
	letter-spacing:0px;
}
.price_item_cnt .border{
	border-bottom:2px solid #fff;
	padding-bottom:20px;
}
.price_item_cnt span{
	display:inline-block;
	font-family:HelveticaNeue-bold;
	font-size:28px;
	margin: 0 5px 0 15px;
}
.page-id-15 .top_sec_hikaku {
	border:none;
}
/****************************************
staff
*****************************************/
.page_bg_staff{
	background:url(images/staff/main_bg.jpg) center center / cover;
	padding-bottom:40px;
}
/*staff_point*/
.staff_point{
	background:#F0F0F0;
	padding:60px 0;
}
.staff_point_title{
	height:30px;
}
.staff_point_item{
	box-shadow: 0px 1px 9px -6px rgba(0,0,0,1);
}
.staff_point_item_img{
	position:relative;
}
.staff_point_item_img img{
	display:block;
}
.staff_point_item_img_title{
	position:absolute;
	top:50%;
	transform:translatey(-45%);
}
.staff_point_item_img_title img{
	width:100%;
}
.staff_point_item_img_num{
	left:15px;
	position:absolute;
	top:0;
	transform:translatey(-50%);
	width:13.333%;
}
.staff_point_item_text{
	background:#fff;
	padding:30px;
}
.staff_point_arrow{
	display:block;
	height:30px;
	margin:0 auto;
}
/*staffs_item*/
.staffs_item{
	border-top:4px solid #c82814;
	position:relative;
}
.staffs_item:last-child{
	border-bottom:4px solid #c82814;
}
.staffs_item_img{
	display:block;
}
.staffs_item_cnt{
	bottom:30px;
	left: 8.65%;
	position:absolute;
}
@media screen and (max-width:414px){
	.staffs_item_cnt{
		bottom:30px;
		top:auto;
	}
}
.staffs_item_position{
	color:#c82814;
	font-size:18px;
	font-weight:bold;
	line-height:1;
}
.staffs_item_name_en{
	color:#c82814;
	font-size:12px;
	font-style:italic;
	line-height:1;
}
.staffs_item_name_jp{
	color:#c82814;
	font-size:28px;
	font-weight:bold;
	line-height:1;
	margin-top:10px;
}
.staffs_item_text{
	color:#fff;
	font-size:14px;
	line-height:1.7;
	width:300px;
}
@media screen and (max-width:414px){
	.staffs_item_text{
		font-size:12.4px;
		letter-spacing:1.2px;
	}
}
.staffs_item_text.text2{
	width:290px;
}
/****************************************
informations 一覧
*****************************************/
.page_bg_info{
	padding-bottom:100px;
}
/*informaiton_pulldown*/
.informaiton_pulldown{
	background:#c82814;
	border-left:10px solid #141A16;
	cursor:pointer;
	display:block;
	font-weight:bold;
	line-height:1;
	padding:20px;
	position:relative;
}
.informaiton_pulldown:after{
	cursor:pointer;
	content:"\f078";
	display:block;
	font-family:"Font Awesome 5 Free";
	font-size:150%;
	position:absolute;
	right:20px;
	top:50%;
	transform:translatey(-50%);
}
.informaiton_pulldown.on:after{
	content:"\f077";
}
.informaiton_pulldown_list{
	background:#fff;
	display:none;
}
.informaiton_pulldown_list a{
	border:1px solid #c82814;
	font-weight:bold;
	padding:20px 30px;
	display:block;
	position:relative;
}
.informaiton_pulldown_list a:after{
	content:"\f061";
	display:block;
	font-family:"Font Awesome 5 Free";
	font-size:80%;
	position:absolute;
	right:20px;
	top:50%;
	transform:translatey(-50%);
}
/**/
.informations_item{
	border-bottom:2px solid #C8C8C8;
	padding-bottom:30px;
}
.informations_item:nth-child(n+2){
	margin-top:30px;
}
.informations_item_img{
	width:26%;
}
.informations_item_img img{
	display:block;
	height:auto;
	width:100%;
}
.informations_item_cnt{
	width:70%;
}
.informations_item_cnt_time{
	color:#646464;
	font-family:HelveticaNeue-Medium;
	margin-right:10px;
}
.informations_item_cnt_cat{
	background:#ddd;
	border-radius:8px;
	color:#141A16;
	display:inline-block;
	font-size:12px;
	font-weight:bold;
	line-height:1;
	padding:5px 20px;
	text-align:center;
}
.informations_item_cnt_cat:nth-child(n+2){
	display:none;
}
.informations_item_cnt_title{
	font-size:20px;
	line-height:1.4;
	margin-top:15px;
	word-break:break-word;
}
.informations_item_cnt_title.white{
	color: #fff;
}

/*.wp-pagenavi*/
.wp_pagenavi_wrap{
	display:flex;
	justify-content:center;
}
.wp-pagenavi{
	display:flex;
	justify-content:center;
	margin-top:50px;
	position:relative;
}
.wp-pagenavi .first,
.wp-pagenavi .last,
.wp-pagenavi .extend,
.wp-pagenavi .pages{
	display:none;
}
.wp-pagenavi a,
.wp-pagenavi span{
	background:#fff;
	border:2px solid #141A16;
	border-radius:4px;
	color:#141A16;
	font-family:HelveticaNeue-Medium;
	font-size:20px;
	line-height:50px;
	margin:0 5px;
	text-align:center;
	width:50px;
}
@media screen and (max-width:414px){
	.wp-pagenavi a,
	.wp-pagenavi span{
		line-height:40px;
		width:40px;
	}
}
.wp-pagenavi .current{
	border:2px solid #C8C8C8;
	color:#C8C8C8;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink{
	position:absolute;
}
.wp-pagenavi .previouspostslink{
	left:-75px;
}
@media screen and (max-width:414px){
	.wp-pagenavi .previouspostslink{
		xleft:-80px;
	}
}
.wp-pagenavi .nextpostslink{
	right:-75px;
}
@media screen and (max-width:414px){
	.wp-pagenavi .nextpostslink{
		xright:-80px;
	}
}
.wp-pagenavi .previouspostslink img,
.wp-pagenavi .nextpostslink img{
	height:12px;
}
/****************************************
informations 個別
*****************************************/
.post_link_item{
	width:28.6%;
}
.post_link_item a{
	background:#fff;
	border:2px solid #141A16;
	display:block;
	font-size:14px;
	font-weight:bold;
	padding:10px 0;
	text-align:center;
}
.post_link_item.prev a:before{
	content:"\f053";
	display:inline-block;
	font-family:"Font Awesome 5 Free";
	margin-right:5px;
}
.post_link_item.next a:after{
	content:"\f054";
	display:inline-block;
	font-family:"Font Awesome 5 Free";
	margin-left:5px;
}
/****************************************
faq
*****************************************/
.faqs_item{
	background:#fff;
	border:2px solid #c82814;
	padding:30px;
}
.faqs_item_q{
	color:#c82814;
	cursor:pointer;
	font-weight:bold;
	line-height:1.4;
	padding-right:40px;
	position:relative;
}
.faqs_item_q:after{
	content:"\f078";
	display:block;
	font-family:"Font Awesome 5 Free";
	font-size:130%;
	position:absolute;
	right:-10px;
	top:50%;
	transform:translatey(-50%);
}
.faqs_item_q.on:after{
	content:"\f077";
}
.faqs_item_a{
	display:none;
	font-weight:bold;
	margin-top:20px;
}
.faq_bottom_text{
	border-top:2px solid #C8C8C8;
	letter-spacing:0;
	margin-top:30px;
	padding-top:30px;
}
/****************************************
contact
*****************************************/
.page_bg_contact{
	background:url(images/contact/main_bg.jpg) no-repeat top center;
	background-size:100%;
}
.contact_box{
	background:#FAF5F0;
	padding:40px 0;
}
/*form*/
.contact_form_title{
	font-size:18px;
	font-weight:bold;
	line-height:1;
}
.contact_form_item{
	margin-top:20px;
}
.contact_form_item_status{
	background:#ddd;
	border:1px solid #C8C8C8;
	border-bottom:none;
	font-weight:bold;
	line-height:1;
	padding:10px 20px;
}
.contact_form_item_status.hissu{
	background:#FF0000;
	color:#fff;
}
.wpcf7-form-control-wrap{
	xdisplay:block;
}
.contact_form_item input[type="text"],
.contact_form_item input[type="tel"],
.contact_form_item input[type="email"],
.contact_form_item textarea{
	border:1px solid #C8C8C8;
	border-radius:0;
	display:block;
	font-size:18px;
	font-weight:bold;
	margin-top:-1px;
	padding:20px;
	width:100%;
}
.contact_form_item input[type="text"]::placeholder,
.contact_form_item input[type="tel"]::placeholder,
.contact_form_item input[type="email"]::placeholder,
.contact_form_item textarea::placeholder{
	color:#C8C8C8;
}
.contact_form_item textarea{
	height:200px;
}
/*同意*/
.contact_form_item a{
	text-decoration:underline;
}
.contact_form_item.doi{
	font-size:18px;
	font-weight:bold;
}
.contact_form_item.doi .hissu{
	color:#F04673;
}
input[type="submit"]{
	background:url(images/contact/contact_form_btn.png) no-repeat center center / contain;
	border:none;
	height:60px;
	text-indent:-9999px;
	width:280px;
}
.wpcf7-spinner{
	position:absolute!important;
}
/*thanks*/
.title_thanks{
	background:#F0F0F0;
	padding:36px 0;
	text-align:center;
}
.title_thanks img{
	display:block;
	height:27px;
	margin:0 auto;
}
.thanks_read{
	font-size:18px;
	font-weight:bold;
	line-height:1.8;
}
.thanks_btn_tel{
	height:80px;
}
.thanks_btn_top{
	padding-bottom:60px;
}
.thanks_btn_top img{
	height:60px;
}
/****************************************
privacy
*****************************************/
.page_bg_privacy{
	background:url(images/privacy-policy/main_bg.jpg) no-repeat top center;
	background-size:100%;
}
.privacy_title{
	border-bottom:2px solid #c82814;
	color:#c82814;
	font-size:20px;
	line-height:1;
	padding-bottom:18px;
}
.privacy_title:not(:first-child){
	margin-top:40px;
}
.privacy_subtitle{
	font-size:18px;
	line-height:1;
	margin-top:30px;
}
.privacy_text{
	letter-spacing:-0.1px;
	margin-top:20px;
}
.privacy_text a{
	color:#0082CC;
	text-decoration:underline;
}
/****************************************
404
*****************************************/
.notfound_title{
	background:#F0F0F0;
	font-size:24px;
	padding:30px 0;
	text-align:center;
}