@import"https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap";
.kakomon .section__intro-min {
	font-size: 15px
}
.kakomon .lead__intro-title {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5
}
.kakomon .lead__intro p {
	font-size: 15px;
	margin-bottom: 12px
}
.kakomon .lead .target {
	padding: 10px 22px;
	border: 2px solid #ff7b01;
	border-radius: 8px;
	font-size: 15px
}
.kakomon .lead .target dt {
	font-size: 18px
}
.kakomon .lead .features {
	position: relative;
	border-radius: 8px;
	background: #f5f5f5;
	padding: 24px
}
.kakomon .lead .features::before {
	content: "";
	position: absolute;
	top: -38px;
	right: 7px;
	width: 70px;
	height: 92px;
	background: url(../images/course/kobetsu/kakomon/illust_look-boys.png);
	background-size: cover
}
@media only screen and (max-width: 750px) {
	.kakomon .lead .features::before {
		top: -22px;
		right: 16px
	}
}
.kakomon .lead .features-title {
	margin-bottom: 16px;
	font-size: 14px;
	font-weight: 700
}
.kakomon .lead .features-balloon {
	border-radius: 4px;
	background: #ff7b01;
	color: #fff;
	padding: 4px 8px;
	position: relative;
	font-size: 16px
}
.kakomon .lead .features-balloon::before {
	content: "";
	position: absolute;
	left: -6px;
	top: calc(50% - 6px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 8px 6px 0;
	border-color: rgba(0, 0, 0, 0) #ff7b01 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}
.kakomon .lead .features-list-item {
	gap: 12px;
	padding: 16px 12px;
	background-color: #fff;
	border-radius: 4px
}
.kakomon .lead .features-list-item .num {
	min-width: 27px;
	padding: 1px;
	border-radius: 4px;
	background-color: #f5f5f5;
	font-size: 18px;
	font-weight: 700;
	text-align: center
}
.kakomon .lead .features-list-item .text {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.5
}
.kakomon .lead .features-list-item .text strong {
	display: block;
	font-size: 18px
}
.kakomon .instructional .step {
	gap: 39px;
	padding-bottom: 56px;
	position: relative
}
@media only screen and (max-width: 750px) {
	.kakomon .instructional .step {
		padding-bottom: 0
	}
}
.kakomon .instructional .step__section {
	padding: 20px 24px 32px;
	border-radius: 8px;
	background-color: #fff;
	position: relative
}
.kakomon .instructional .step__section .section__title-bold {
	text-align: right;
	line-height: 1.8;
	margin-bottom: 12px
}
.kakomon .instructional .step__section .section__title-bold .time {
	margin-left: 8px;
	color: #777;
	font-size: 13px;
	font-weight: 400
}
.kakomon .instructional .step__section .section__title-bold .time span {
	font-size: 15px;
	font-weight: 700
}
.kakomon .instructional .step__section-num {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 0;
	top: 0;
	margin: auto;
	background: #ff7b01;
	border-radius: 8px 0px;
	padding: 13px 7.5px 14px;
	color: #fff;
	font-size: 8px;
	line-height: 1
}
.kakomon .instructional .step__section-num span {
	display: block;
	color: #ff7b01;
	text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 1px 0 0 #fff, -1px 0 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff;
	font-size: 22px;
	font-style: normal;
	font-weight: 900;
	letter-spacing: 1.8px
}
.kakomon .instructional .step__section:not(:first-child)::before {
	content: "";
	position: absolute;
	border-style: solid
}
@media only screen and (min-width: 751px) {
	.kakomon .instructional .step__section:not(:first-child)::before {
		top: calc(50% - 9px);
		left: -24px;
		border-width: 9px 0 9px 11px;
		border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #ff7b01
	}
}
@media only screen and (max-width: 750px) {
	.kakomon .instructional .step__section:not(:first-child)::before {
		top: -24px;
		left: calc(50% - 9px);
		border-width: 11px 9px 0;
		border-color: #ff7b01 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
	}
}
.kakomon .instructional .step__section img {
	width: 100%
}
.kakomon .instructional .step__section-body {
	margin-top: 12px;
	font-size: 13px;
	letter-spacing: .04em;
	line-height: 1.6
}
.kakomon .instructional .step__section-body h5 {
	font-size: 15px;
	line-height: 1.8;
	margin-bottom: 4px
}
.kakomon .instructional .step_wrap {
	padding: 32px 32px 24px;
	border-radius: 12px;
	background-color: rgba(242, 236, 228, .4)
}
@media only screen and (max-width: 750px) {
	.kakomon .instructional .step_wrap {
		padding-right: 15px;
		padding-left: 15px
	}
}
@media only screen and (min-width: 751px) {
	.kakomon .instructional .step::before {
		content: "";
		position: absolute;
		bottom: 0;
		left: 12%;
		width: 16px;
		height: 48px;
		background: url(../images/course/kobetsu/kakomon/img_arrow-top.svg);
		background-size: cover
	}
	.kakomon .instructional .step::after {
		content: "";
		position: absolute;
		bottom: 0;
		right: calc(12% + 7px);
		width: 2px;
		height: 48px;
		background: #ff7b01
	}
}
.kakomon .instructional .step_repeat {
	padding-top: 8px;
	font-size: 15px;
	text-align: center;
	position: relative
}
.kakomon .instructional .step_repeat strong {
	font-size: 22px
}
@media only screen and (min-width: 751px) {
	.kakomon .instructional .step_repeat::before {
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: calc(76% - 14px);
		height: 2px;
		background: #ff7b01
	}
}
@media only screen and (max-width: 750px) {
	.kakomon .point {
		margin: 0 20px
	}
}
.kakomon .point .section {
	padding: 40px 32px;
	border-radius: 12px;
	background-color: #ffeeb0
}
@media only screen and (max-width: 750px) {
	.kakomon .point .section {
		padding-right: 15px;
		padding-left: 15px
	}
}
.kakomon .point .section__title-bold {
	margin-bottom: 12px
}
.kakomon .point_title {
	font-size: 28px;
	font-size: clamp(24px, 9.7142857143px + 1.9047619048vw, 28px);
	line-height: 1.25
}
.kakomon .point_title strong {
	font-size: 32px
}
.kakomon .point-balloon {
	display: inline-block;
	border-radius: 4px;
	background-color: #fff;
	padding: 6px 4px;
	position: relative
}
.kakomon .point-balloon::before {
	content: "";
	position: absolute;
	right: -6px;
	top: calc(50% - 6px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 8px;
	border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff
}
.kakomon .point_section {
	display: flex;
	flex-direction: column
}
.kakomon .point_section-content {
	flex: 1;
	margin-top: 12px;
	padding: 18px 18px 22px;
	border: 2px solid #ff7b01;
	border-radius: 8px;
	background-color: #fff;
	font-size: 13px;
	letter-spacing: .04em;
	position: relative
}
.kakomon .point_section-content::before {
	content: "";
	position: absolute;
	top: -55px;
	right: 12px;
	width: 36px;
	height: 70px;
	background-image: url(../images/course/kobetsu/kakomon/illust_look-boy.png);
	background-size: cover
}
.kakomon .point_section:first-child .point_section-content::before {
	background-image: url(../images/course/kobetsu/kakomon/illust_look-girl.png)
}
.kakomon .point .more-link {
	padding: 16px 19px;
	border-radius: 4px;
	background-color: #fff;
	font-size: 13px
}
.kakomon .point .more-link .tab__links {
	margin-bottom: 0;
	flex: 1
}
.kakomon .point .more-link .tab__links .tag__target {
	font-size: 12px
}
.kakomon .voice__list .grid {
	gap: 12px
}
.kakomon .voice__list-title {
	padding-left: 34px;
	background: url(../images/course/kobetsu/kakomon/icon_bubble-minus.png) no-repeat 0 -3px/30px
}
.kakomon .voice__list-item {
	padding: 12px 12px 12px 49px;
	border-radius: 4px;
	background: #fcfaea url(../images/course/kobetsu/kakomon/icon-idea.svg) no-repeat 12px 50%;
	display: grid;
	place-items: center flex-start;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 1.4
}
.kakomon .voice .accordion-menu dt:after {
	right: 0
}
@media only screen and (min-width: 751px) {
	.kakomon .schedule_list {
		width: fit-content
	}
	.kakomon .schedule_list ul {
		columns: 2;
		column-gap: 24px
	}
}
.kakomon .schedule_list li {
	margin-bottom: 16px;
	padding-right: 24px;
	padding-bottom: 12px;
	border-bottom: 1px solid #dadada
}
.kakomon .schedule_month {
	width: 2em;
	font-size: 18px
}
.kakomon .schedule_month span {
	font-size: 15px
}
.kakomon .schedule_day {
	font-size: 20px
}
.kakomon .schedule_day span {
	font-size: 14px;
	margin-left: 3px
}
@media only screen and (min-width: 751px) {
	.kakomon .schedule .timetable table caption {
		font-size: 20px;
		font-weight: 400
	}
}
.kakomon .schedule .timetable p, .kakomon .schedule .timetable ul {
	font-size: 15px
}
.kakomon .schedule .timetable .list_dot-orange li:before {
	top: .7em;
	bottom: auto
}
.kakomon .classroom-list {
	padding-top: 15px;
	border-top: 1px solid #dadada
}
@media only screen and (min-width: 751px) {
	.kakomon .classroom-list__list {
		grid-auto-flow: column
	}
	.kakomon .classroom-list__list.tokyo {
		grid-template-rows: repeat(4, minmax(0, 1fr))
	}
	.kakomon .classroom-list__list.kanagawa {
		grid-template-rows: repeat(2, minmax(0, 1fr))
	}
	.kakomon .classroom-list__list.saitama {
		grid-template-rows: repeat(2, minmax(0, 1fr))
	}
}
.kakomon .flow__item {
	font-size: 15px
}
.kakomon .application .section__intro-min, .kakomon .inquiry .section__intro-min {
	margin-bottom: 12px
}
.kakomon .application .btn, .kakomon .inquiry .btn {
	padding-top: 20px;
	padding-bottom: 20px;
	box-shadow: none
}
.kakomon .application .btn--text-big + span, .kakomon .inquiry .btn--text-big + span {
	margin-top: 3px
}
.kakomon .application .comment, .kakomon .inquiry .comment {
	margin-top: 12px;
	margin-left: 1.5em;
	text-indent: -1.5em
}