@import"https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap";
@media only screen and (max-width: 750px) {
	.readmore {
		position: relative
	}
	.readmore__content {
		position: relative;
		height: auto;
		max-height: 135px;
		overflow: hidden;
		transition: max-height 1s
	}
	.readmore__content:not(.open) {
		max-height: 96px !important
	}
	.readmore__content::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		display: block;
		width: 100%;
		height: 100%;
		transition: 1s;
		background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 25%, #fff 100%)
	}
	.readmore__content.open {
		margin-bottom: 2em
	}
	.readmore__content.open::after {
		z-index: -1;
		opacity: 0
	}
	.readmore__content.open + .readmore__btn {
		bottom: -2em
	}
	.readmore__btn {
		position: absolute;
		bottom: 38px;
		left: 50%;
		transform: translateX(-50%);
		z-index: 1;
		display: block !important;
		text-align: center;
		border: 0;
		background: none;
		color: #ff4d01;
		font-size: 15px;
		font-weight: 700;
		text-decoration: underline !important;
		cursor: pointer;
		transition: bottom 1s
	}
}
@media only screen and (min-width: 751px) {
	.readmore-pc .readmore {
		position: relative
	}
	.readmore-pc .readmore__content {
		position: relative;
		height: auto;
		max-height: 135px;
		overflow: hidden;
		transition: max-height 1s
	}
	.readmore-pc .readmore__content:not(.open) {
		max-height: 96px !important
	}
	.readmore-pc .readmore__content::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		display: block;
		width: 100%;
		height: 100%;
		transition: 1s;
		background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 25%, #fff 100%)
	}
	.readmore-pc .readmore__content.open {
		margin-bottom: 2em
	}
	.readmore-pc .readmore__content.open::after {
		z-index: -1;
		opacity: 0
	}
	.readmore-pc .readmore__content.open + .readmore__btn {
		bottom: -2em
	}
	.readmore-pc .readmore__btn {
		position: absolute;
		bottom: 38px;
		left: 50%;
		transform: translateX(-50%);
		z-index: 1;
		display: block !important;
		text-align: center;
		border: 0;
		background: none;
		color: #ff4d01;
		font-size: 15px;
		font-weight: 700;
		text-decoration: underline !important;
		cursor: pointer;
		transition: bottom 1s
	}
}
.swiper-images {
	overflow: hidden
}
.swiper-images img {
	width: 100%
}
@media only screen and (min-width: 751px) {
	.swiper-wrapper {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px
	}
	.swiper-slide {
		grid-column: span 1/span 1
	}
}
.main.write {
	position: relative
}
.main.write.orange {
	background-color: rgba(255, 135, 0, .8)
}
.main.write::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/common/parts-bg_kv-l_write.png) no-repeat;
	background-size: 100%;
	z-index: -1
}
@media only screen and (max-width: 750px) {
	.main.write::before {
		background-image: url(../images/common/parts-bg_kv-l_write_sp@2x.png)
	}
}
.main.write .pageheader .breadcrumb__item--current, .main.write .pageheader .breadcrumb__link {
	color: #fff
}
.main.write .pageheader .container {
	max-width: 1120px;
	margin-right: auto;
	margin-left: auto
}
@media only screen and (max-width: 750px) {
	.main.write .pageheader .container {
		margin-right: 20px;
		margin-left: 20px
	}
}
.main.write .pageheader__kv-img {
	position: absolute;
	top: 8px;
	right: 0
}
.main.write .pageheader__title {
	color: #fff;
	margin: 22px 0 32px;
	text-align: left
}
@media only screen and (max-width: 750px) {
	.main.write .pageheader__title {
		margin: 25px 0 calc(25px + .8em)
	}
}
.main.write .pageheader__subtitle {
	color: #fff;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 16px
}
.main.write .pageheader__text {
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6
}
@media only screen and (max-width: 750px) {
	.main.write .pageheader__text {
		margin-bottom: 24px
	}
}
.main.write .pageheader__text p {
	margin-bottom: 8px
}
.main.write .pageheader__detail {
	z-index: 2
}
.pagecontents {
	position: relative;
	z-index: 1
}
.kobetsu_content .text_orange2 {
	color: #ff8700
}
.kobetsu_content .section__title {
	padding-top: 28px;
	position: relative;
	margin-bottom: 12px
}
.kobetsu_content .section__title::before {
	content: "";
	background: url(../images/course/kobetsu/index/line_dot.svg);
	width: 36px;
	height: 4px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto
}
.kobetsu_content .section__lead {
	margin-bottom: 32px;
	text-align: center
}
.kobetsu_content .section__lead-text {
	display: inline;
	font-size: 18px;
	font-weight: 700;
	line-height: 2;
	letter-spacing: 0;
	border-bottom: 2px dotted #000
}
.kobetsu .lead .section__title {
	color: #ff8700;
	margin-bottom: 12px
}
@media only screen and (max-width: 750px) {
	.kobetsu .lead .section__title {
		letter-spacing: .01em
	}
}
.kobetsu .lead .section__subtitle {
	font-size: 18px;
	color: #000;
	letter-spacing: 0;
	display: inline;
	border-bottom: 2px dotted #000;
	padding-top: 0
}
.kobetsu .lead .section__subtitle::before {
	content: none
}
.kobetsu .lead .internal-link {
	gap: 0 32px
}
.kobetsu .lead .internal-link li {
	border-bottom: 1px solid #dadada
}
.kobetsu .lead .internal-link li a {
	display: block;
	padding: 12px 24px 12px 0;
	background: url(../images/common/icon_arrow-bottom.svg) no-repeat right center;
	font-size: 20px;
	font-weight: 700
}
.kobetsu .style .section__box-border {
	padding: 16px
}
.kobetsu .style .section__box-border p {
	font-size: 15px
}
.kobetsu .style .section__box-border p:not(:last-child) {
	margin-bottom: 8px
}
.kobetsu .style .section__box-border p.comment {
	font-size: 12px
}
.kobetsu .style .section__title-bold-big {
	display: flex;
	align-items: baseline;
	gap: 8px
}
.kobetsu .style .section__title-bold-big .num {
	min-width: 36px;
	padding: 4px;
	border-radius: 8px;
	background-color: #ff8700;
	color: #fff;
	text-align: center
}
.kobetsu .cycle .section {
	margin-bottom: 82px;
	padding: 48px 64px;
	background-color: rgba(255, 135, 0, .0666666667);
	border-radius: 16px
}
@media only screen and (max-width: 750px) {
	.kobetsu .cycle .section {
		padding-right: 20px;
		padding-left: 20px
	}
}
.kobetsu .cycle .section .flex_pc {
	flex-direction: row-reverse
}
.kobetsu .cycle .section__text {
	width: 51.5625%;
	font-size: 15px
}
@media only screen and (max-width: 750px) {
	.kobetsu .cycle .section__text {
		width: auto;
		margin-top: 40px
	}
}
.kobetsu .cycle .section__title-bold-big .action span {
	display: inline-block;
	min-width: 5em;
	padding: 2.5px 15px;
	border-radius: 9999px;
	background-color: #ff8700;
	color: #fff;
	font-size: 14px;
	text-align: center
}
.kobetsu .cycle .section .box {
	padding-top: 113px;
	background: url(../images/course/kobetsu/index/parts-triangles_bottom_w.svg) no-repeat 50% 30px
}
.kobetsu .cycle .section .box_inner {
	padding: 24px;
	border-radius: 12px;
	background-color: #fff;
	font-size: 18px;
	font-weight: 500
}
.kobetsu .support .section .boxes {
	gap: 12px;
	position: relative
}
.kobetsu .support .section .boxes::before {
	content: "";
	position: absolute;
	top: -110px;
	left: 48px;
	width: 50px;
	height: 87px;
	background: url(../images/course/kobetsu/index/parts_talk.png);
	background-size: cover
}
@media only screen and (max-width: 750px) {
	.kobetsu .support .section .boxes::before {
		top: -50px;
		left: auto;
		right: 2px
	}
}
.kobetsu .support .section .box_orange {
	padding: 30px 18px 38px;
	border: 2px solid #ff8700;
	border-radius: 8px
}
.kobetsu .support .section .box_orange p {
	font-size: 15px
}
.kobetsu .support .section .box_orange p:not(:last-child) {
	margin-bottom: 12px
}
.kobetsu .support .section__title-bold-big {
	color: #ff8700;
	text-align: center
}
.kobetsu .instruction .section__box-border {
	border-color: rgba(255, 123, 1, .2);
	margin-bottom: 0;
	position: relative
}
.kobetsu .instruction .section__box-border::before {
	content: "";
	position: absolute;
	right: -8px;
	bottom: -8px;
	width: 35px;
	height: 35px;
	background: url(../images/course/kobetsu/index/btn_arrow-right.png);
	background-size: cover
}
.kobetsu .instruction .section__box-border .icon {
	width: 48px
}
@media only screen and (max-width: 750px) {
	.kobetsu .instruction .section__box-border .icon {
		width: 40px
	}
}
.kobetsu .cmn-learning-plan {
	margin-bottom: 0
}