#breadcrumb {
		display: none;
}

section[id] {
		max-width: 1286px;
		margin-right: auto;
		margin-left: auto;
		position: relative;
		z-index: 1;
}

section[id] .section_label {
		writing-mode: vertical-rl;
		text-transform: uppercase;
		color: #00B2A9;
		font-family: 'Pathway Gothic One', sans-serif;
		-webkit-text-stroke-width: 0.25px;
		font-weight: 400;
		font-size: 1.25rem;
		letter-spacing: 0;
		line-height: 1;
		word-break: keep-all;
		position: absolute;
		z-index: 1;
		top: -30px;
		left: 0;
		padding-top: 5rem;
}

@media (max-width: 1128px) {
		section[id] .section_label {
				writing-mode: horizontal-tb;
				padding-top: 0;
				padding-left: 1.25rem;
				top: 16px;
		}
}

@media (max-width: 768px) {
		section[id] .section_label {
				top: 0;
		}
}

section[id] .section_label::before {
		content: "";
		display: block;
		width: 1px;
		height: 60px;
		background-color: #00B2A9;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, 0);
}

@media (max-width: 1128px) {
		section[id] .section_label::before {
				width: 15px;
				height: 1px;
				top: 50%;
				left: 0;
				transform: translate(0, -50%);
		}
}

.section_title_front {
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.6;
		letter-spacing: 0;
		margin-bottom: 2.5rem;
}

@media (max-width: 768px) {
		.section_title_front {
				font-size: 1.75rem;
		}
}

@media (max-width: 480px) {
		.section_title_front {
				font-size: 1.5rem;
		}
}

#mainvisual {
		max-width: 100%;
		padding-top: 0;
		margin-bottom: 5rem;
		overflow: hidden;
}

@media (max-width: 768px) {
		#mainvisual {
				margin-bottom: 4.25rem;
		}
}

@media (max-width: 480px) {
		#mainvisual {
				margin-bottom: 3.25rem;
		}
}

#mainvisual .mainvisual_slider_wrapper {
		position: relative;
		z-index: 0;
}

#mainvisual .mainvisual_slider {
		max-width: 100%;
		max-height: 590px;
		height: 100%;
		display: flex;
		align-items: center;
		overflow: hidden;
		margin: 0 auto;
		position: relative;
		touch-action: auto;
}

#mainvisual .mainvisual_slider a {
		display: block;
		transition: all .3s;
}

#mainvisual .mainvisual_slider a:hover {
		opacity: .8;
}

#mainvisual .mainvisual_control {
		max-width: 1286px;
		padding: 0;
		margin: 0 auto;
		display: flex;
		align-items: center;
}

@media (max-width: 768px) {
		#mainvisual .mainvisual_control {
				height: 50px;
				padding: 0 20px;
		}
}

@media (max-width: 480px) {
		#mainvisual .mainvisual_control {
				justify-content: center;
		}
}

#mainvisual .slick-list {
		padding: 0 !important;
}

#mainvisual .slick-slide > div {
		font-size: 0;
}

#mainvisual .slick_arrow {
		position: relative;
		display: block;
		width: 50px;
		height: 50px;
		background-color: #ffffff;
		z-index: 1;
}

@media (max-width: 768px) {
		#mainvisual .slick_arrow {
				display: none;
		}
}

#mainvisual .slick_arrow.slick_prev {
		order: 1;
}

#mainvisual .slick_arrow.slick_next {
		order: 3;
}

#mainvisual .slick_arrow.slick_prev:before, #mainvisual .slick_arrow.slick_next:before {
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		position: absolute;
		top: 50%;
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		transform: translate(-50%, -50%) rotate(45deg);
		transition: border, .2s;
}

@media (max-width: 480px) {
		#mainvisual .slick_arrow.slick_prev:before, #mainvisual .slick_arrow.slick_next:before {
				width: 6px;
				height: 6px;
		}
}

#mainvisual .slick_arrow.slick_prev:before {
		border-bottom: solid 2px #333333;
		border-left: solid 2px #333333;
		left: calc(50% + 1px);
}

#mainvisual .slick_arrow.slick_next:before {
		border-top: solid 2px #333333;
		border-right: solid 2px #333333;
		left: calc(50% - 1px);
}

#mainvisual .slick_dots {
		display: flex;
		margin: 0 20px;
		height: 8px;
		background-color: #ffffff;
		z-index: 1;
		order: 2;
}

#mainvisual .slick_dots > li {
		position: relative;
		margin: 0 0.5rem 0 0;
		display: block;
		width: 8px;
		height: 8px;
		background-color: #92A2A8;
		top: 50%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		transition: background-color, .2s height, .2s;
}

@media (max-width: 768px) {
		#mainvisual .slick_dots > li {
				width: 5px;
				height: 5px;
				margin-right: 1rem;
		}
}

#mainvisual .slick_dots > li:last-child {
		margin-right: 0;
}

#mainvisual .slick_dots > li button {
		display: block;
		width: 100%;
		height: 100%;
		opacity: 0;
}

#mainvisual .slick_dots > li.slick-active {
		background-color: #00B2A9;
		width: 24px;
}

@media (max-width: 768px) {
		#mainvisual .slick_dots > li.slick-active {
				width: 30px;
		}
}

#about {
		display: flex;
		align-items: flex-start;
		margin: 0 auto 9rem;
}

@media (max-width: 768px) {
		#about {
				flex-wrap: wrap;
				margin-bottom: 5rem;
		}
}

@media (max-width: 1128px) {
		#about .section_label {
				top: 0;
				transform: translate(0, -50%);
		}
}

#about .about_text {
		width: 50%;
		padding: 6.25rem 6.25rem 0 0;
		margin-right: 1.5rem;
		position: relative;
		z-index: 0;
}

@media (max-width: 768px) {
		#about .about_text {
				width: 100%;
				padding: 3.75rem 1.25rem;
				margin-right: 0;
		}
}

#about .about_text::before {
		content: "";
		display: block;
		background-color: #F4FAFB;
		height: calc(100% - 30px);
		width: 100vw;
		position: absolute;
		z-index: -1;
		bottom: 30px;
		right: 0;
}

@media (max-width: 768px) {
		#about .about_text::before {
				height: 100%;
				bottom: 0;
		}
}

#about .about_text_inner {
		position: relative;
		max-width: calc(1286px/2);
		width: 100%;
		padding-left: 20px;
		margin-left: auto;
}

@media (max-width: 768px) {
		#about .about_text_inner {
				max-width: 100%;
				padding-left: 0;
		}
}

#about .about_text_container {
		max-width: calc((1128px)/2);
		max-width: 444px;
		width: 100%;
		margin-left: auto;
}

@media (max-width: 768px) {
		#about .about_text_container {
				max-width: 100%;
		}
}

#about .about_text_introduction {
		font-size: 0.875rem;
		line-height: 1.8;
		margin-bottom: 6.25rem;
}

@media (max-width: 768px) {
		#about .about_text_introduction {
				margin-bottom: 3.75rem;
		}
}

@media (max-width: 480px) {
		#about .about_text_introduction {
				margin-bottom: 2.5rem;
		}
}

#about .about_text .btn {
		margin-left: auto;
}

@media (max-width: 768px) {
		#about .about_text .btn {
				margin: 0 auto;
		}
}

#about .about_image {
		width: 50%;
		position: relative;
		z-index: 0;
		display: flex;
		justify-content: flex-end;
}

@media (max-width: 768px) {
		#about .about_image {
				width: 100%;
				padding: 0 20px;
		}
}

#about .about_image_item:nth-child(1) {
		width: 280px;
		position: absolute;
		z-index: 0;
		top: -30px;
		left: 0;
}

@media (max-width: 960px) {
		#about .about_image_item:nth-child(1) {
				left: -100px;
		}
}

@media (max-width: 768px) {
		#about .about_image_item:nth-child(1) {
				width: 42%;
				left: 20px;
		}
}

#about .about_image_item:nth-child(2) {
		width: 420px;
		padding-top: 14rem;
}

@media (max-width: 768px) {
		#about .about_image_item:nth-child(2) {
				width: 65%;
				padding-top: 21vw;
		}
}

@media (max-width: 480px) {
		#about .about_image_item:nth-child(2) {
				padding-top: 28vw;
		}
}
