@charset "utf-8";
.feature_section {
		position: relative;
		margin-bottom: 80px;
		overflow: hidden
}
@media(max-width: 767px) {
		.feature_section {
				margin-bottom: 60px
		}
}
.feature_hdr {
		max-width: 1920px;
		margin: 0 auto 120px;
}
.feature_wrap {
		max-width: 960px;
		margin: 0 auto 180px;
		position: relative;
}
.feature_wrap .feature_photo-1 {
		position: absolute;
		right: 0;
		top: 0;
		width: 490px;
}
.feature_photo-1 img, .feature_photo-2 img {
		width: 100%;
		height: auto
}
.feature_wrap p {
		font-size: 20px;
		font-weight: 400;
		line-height: 2.2;
		margin: 0 0 40px;
		letter-spacing: 0.06em
}
.feature_wrap p.extra {
		margin-bottom: 0;
}
.feature_wrap p.large {
		font-size: 30px;
}
.largeFlex p {
		font-size: 30px;
		line-height: 2.2;
		margin: 0 !important
}
.largeFlex {
		display: flex;
		align-items: center;
		margin: 0 0 100px;
}
.largeFlex img {
		width: 131px;
		height: auto;
		margin-left: 2px;
		margin-right: 4px;
}
@media(min-width: 768px) {
		.feature_hdr_txt_sp {
				display: none
		}
}
@media(max-width: 767px) {
		.feature_hdr {
				margin-bottom: 30px;
		}
		.feature_hdr_txt_sp {
				margin-bottom: 30px;
		}
		.feature_wrap {
				margin: 0 auto 50px;
				padding-left: 0;
		}
		.feature_wrap_in {
				display: flex;
				justify-content: center;
		}
		.feature_wrap .feature_photo-1 {
				position: static;
				width: 70vw;
		}
		.feature_wrap p {
				font-size: 15px;
				line-height: 1.9;
				margin: 0 0 1.75em;
		}
		.feature_wrap p.large {
				font-size: 16px;
				line-height: 2.2;
		}
		.largeFlex {
				margin: 0 0 2em;
		}
		.largeFlex p {
				margin-bottom: 0 !important;
		}
		.largeFlex img {
				width: 80px;
				height: auto;
		}
		.feature_wrap_hd {
				font-size: 18px;
				font-weight: 600;
				margin: 0 0 40px;
		}
}
.underL {
		display: inline-block;
		position: relative;
}
.underL::after {
		content: '';
		display: block;
		position: absolute;
		bottom: 6px;
		left: 0;
		width: 100%;
		height: 2px;
		background: #c8a542;
}
@media(max-width: 767px) {
		.underL::after {
				bottom: 2px;
		}
		.underL.extra::after {
				bottom: 4px;
		}
}
.feature_bottom_wrap {
		max-width: 1030px;
		margin: 0 auto;
		padding: 0 30px;
		position: relative;
}
@media(max-width: 767px) {
		.feature_bottom_wrap {
				padding: 0 20px;
		}
}
.feature_bottom_wrap .feature_photo-2 {
		position: absolute;
		top: -120px;
		right: -125px;
		width: 530px;
}
.feature_bottom {
		background: #f7f2e3;
		min-height: 400px;
		margin: 0 0 30px;
}
.feature_bottom_inner {
		padding: 80px;
}
.feature_bottom_hd {
		font-size: 32px;
		font-weight: 600;
		line-height: 1.4;
		height: 150px
}
.macOS .feature_bottom_hd {
		font-weight: 500;
}
.point-1_flex {
		margin: 0 0 80px;
		width: 470px;
		position: relative;
}
.point_gr_item_hd {
		position: relative;
}
.point_gr_item_hd .point_gr_item_mark {
		position: absolute;
		width: 102px;
		right: -50px;
		top: -15px;
}
.point_gr_item_hd .point_gr_item_mark.rakuraku {
		right: -10px;
}
.point_gr_item_hd .point_gr_item_mark.smartLink {
		right: -30px;
}
.point-1_flex .point-1_flex_figure {
		position: absolute;
		bottom: -10px;
		left: 220px;
		width: 300px;
}
.point-1_flex {
		width: auto;
}
.point-1_flex_figure img {
		width: 100%;
		height: auto;
}
.point-1_flex_figure div {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
}
.point-1_flex_figure .line {
		height: 5px;
		width: 170px;
		left: 85px;
		top: 83px;
		transform: rotate(-16.7deg);
}
.line_in {
		position: static !important;
		width: 170px;
		height: 6px;
		background: #cdaf4d;
		transform-origin: left center;
		border-radius: 60px;
}
.point_hd {
		width: 90px;
		margin: 0 0 17px
}
.point-1_flex_caption {
		padding-top: 30px;
}
.point-1_sb_upper {
		font-size: 17px;
		font-weight: 700;
		line-height: 1.6;
		margin: 0
}
.point-1_sb {
		font-size: 26px;
		font-weight: 700;
		line-height: 1.4
}
.point-2_sb {
		font-size: 20px;
		font-weight: 600;
		line-height: 1.4;
		margin: 0 0 15px;
}
@media(min-width: 768px) {
		.point-2_sb.extra {
				margin: 0;
				min-height: 95px;
		}
}
.macOS .point-1_sb_upper, .macOS .point-1_sb, .macOS .point-2_sb {
		font-weight: 500;
}
.new_flex {
		display: flex;
		margin: 0 0 10px
}
.new_flex .notes {
		margin-top: 0 !important;
		padding-top: 0 !important;
}
.icon_new {
		width: 82px;
		margin-right: 3px;
}
@media(max-width: 767px) {
		.icon_new {
				width: 60px;
		}
}
.point_gr_flex {
		display: flex;
		justify-content: space-between;
		max-width: 840px;
}
.point_gr_item {
		width: 218px;
}
.checkmovie_flex {
		display: flex;
		align-items: center;
}
.checkmovie_flex_left {
		width: 360px;
		margin-right: 60px;
}
.checkmovie_flex_left iframe {
		width: 100%;
		height: auto;
		aspect-ratio: 10 / 17.8;
}
.checkmovie_flex_right {
		flex: 1
}
.checkmovie_hd {
		font-family: "Roboto Flex", sans-serif;
		font-size: 18px;
		color: #c8a542;
		margin: 0 0 20px;
}
.checkmovie_hd span {
		display: inline-block;
		padding-bottom: 2px;
		border-bottom: 1px solid #c8a542;
}
.checkmovie_catch {
		font-family: "Roboto Flex", "Noto Sans JP", sans-serif;
		font-size: 28px;
		line-height: 1.6;
		font-weight: 600;
}
@media(max-width: 960px) {
		.feature_wrap {
				padding-left: 30px;
		}
		.feature_wrap p {
				margin: 0 0 30px;
		}
		.feature_wrap .feature_photo-1 {
				width: 40%;
		}
		.feature_bottom_wrap .feature_photo-2 {
				width: 60%;
		}
		.feature_bottom_inner {
				padding: 25px;
		}
		.point_gr_item {
				width: calc(calc(100% - 30px) / 3);
		}
		.point-1_flex .point-1_flex_figure {
				position: static;
				position: relative;
				left: inherit;
				width: 400px;
				margin: 30px auto 0;
		}
		.point_gr_item_hd .point_gr_item_mark {
				width: 80px;
				right: 10px;
				top: -20px;
		}
		.point_gr_item_hd .point_gr_item_mark.rakuraku {
				right: 10px;
		}
		.point_gr_item_hd .point_gr_item_mark.smartLink {
				right: 10px;
		}
}
@media(max-width: 900px) {
		.checkmovie_flex_left {
				width: 55%;
				margin-right: 30px;
		}
		.checkmovie_catch {
				font-size: 22px;
		}
}
@media(max-width: 767px) {
		.checkmovie_flex {
				display: flex;
				flex-direction: column-reverse;
				align-items: flex-start;
				padding: 15px
		}
		.checkmovie_flex_left {
				width: auto;
				margin-right: 0;
		}
		.checkmovie_flex_right {
				margin: 0 0 20px;
		}
		.checkmovie_catch {
				font-size: 18px;
		}
}
/* ============== */
@media(max-width: 767px) {
		.feature_photo-2_sp {
				display: flex;
				justify-content: flex-end;
				position: relative;
				right: -25px;
				margin-bottom: -30vw;
		}
		.feature_bottom_wrap .feature_photo-2 {
				width: 86vw;
				position: static;
		}
		.feature_bottom_inner {
				padding: 30vw 30px 15px;
				padding-top: calc(30vw + 30px);
		}
		.feature_bottom_hd {
				font-size: 26px;
				margin: 0 0 30px;
				height: auto
		}
		.point_hd {
				width: 70px;
				margin: 0 0 10px;
		}
		.point_gr_flex {
				display: block;
		}
		.point_gr_item {
				width: auto;
				margin: 0 0 30px;
		}
		.point-1_sb_flex {
				display: flex;
		}
		.point-1_sb_flex .point_hd {
				margin-right: 10px;
		}
		.point-1_sb {
				font-size: 24px;
		}
		.point-1_flex .point-1_flex_figure {
				position: static;
				top: inherit;
				left: inherit;
				right: inherit;
				position: relative;
				width: 100%;
				margin-top: 30px;
		}
		.point_gr_item_hd .point_gr_item_mark {
				width: 85px;
				right: -10px;
				top: 10px;
		}
		.point_gr_item_hd .point_gr_item_mark.rakuraku {
				right: 0px;
		}
		.point_gr_item_hd .point_gr_item_mark.smartLink {
				right: 0px;
		}
		.feature_wrap .feature_photo-1 {
				width: 68vw;
				position: relative;
				left: -30px;
		}
}
@media(max-width: 390px) {
		.point-2_sb {
				font-size: 18px;
		}
		.point_gr_item_hd .point_gr_item_mark {
				top: 5px;
		}
}