@charset "utf-8";
.wrap960 {
		max-width: 960px;
		margin: 0 auto;
}
.wrap1140 {
		max-width: 1140px;
		margin: 0 auto;
}
.wrap1260 {
		max-width: 1260px;
		margin: 0 auto;
}
.simlex_title {
		margin: 0 0 60px;
		position: relative;
		padding-top: 35px;
}
.simlex_title p {
		font-weight: 700;
		line-height: 1.6;
		margin: 0 0 8px !important
}
@media(max-width: 1200px) {
		.simlex_title p {
				font-size: 13px;
		}
}
.simlex_title_hd {
		font-size: 36px;
		font-weight: 700;
		position: relative;
		z-index: 5
}
.simlex_title::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 110px;
		height: 8px;
		background: #C0153E;
}
@media(max-width: 767px) {
		.simlex_title {
				padding-top: 20px;
		}
		.simlex_sidebar .simlex_title {
				margin-bottom: 30px;
		}
		.simlex_func_section .simlex_title {
				margin-bottom: 30px;
		}
		.simlex_title::before {
				width: 100px;
				height: 4px;
		}
		.simlex_title_hd {
				font-size: 24px;
		}
		.simlex_title_hd::before {
				width: 70px;
				height: 4px;
		}
}
/* ========= */
.simlex_contact_section {
		padding: 80px 40px;
		background: #F7F8FA;
}
.simlex_contact_section.bgWht {
		background: #fff;
}
.simlex_contact_section.second {
		margin: 60px 0 120px
}
@media(max-width: 767px) {
		.simlex_contact_section {
				padding: 60px 20px;
				margin: 60px 0 80px;
				position: relative;
				z-index: 5
		}
}
.simlex_contact_inner {
		max-width: 720px;
		margin: 0 auto;
}
.simlex_contact_hd {
		font-size: 40px;
		font-weight: 700;
		margin: 0 0 80px;
		text-align: center;
		line-height: 1.6;
}
.simlex_contact_hd span {
		display: inline-block;
		position: relative;
}
.simlex_contact_hd span::after {
		content: '';
		display: block;
		position: absolute;
		bottom: -25px;
		left: calc(50% - 100px);
		width: 200px;
		height: 8px;
		background: #c0153e;
}
.simlex_contact_flex {
		display: flex;
		justify-content: space-between;
}
.simlex_kvBtn_gr {
		display: flex;
		justify-content: space-between;
		max-width: 40vw;
		margin-top: 30px;
}
@media(max-width: 840px) {}
@media(min-width: 1681px) {
		.simlex_kvBtn_gr {
				max-width: 600px;
		}
}
.simlex_contact_item {
		width: 340px;
}
.simlex_kvBtn_gr .simlex_contact_item {
		width: calc(50% - 10px);
}
.simlex_contact_item_hd {
		display: flex;
		justify-content: center;
		align-items: flex-end;
		height: 2.8em;
		margin-bottom: 20px;
}
.simlex_contact_item p {
		text-align: center;
		line-height: 1.6;
		font-size: 17px;
		font-weight: 700;
}
.simlex_contact_cmn_hd {
		text-align: center;
		line-height: 1.6;
		font-weight: 700;
		font-size: 18px;
		margin: 0 0 40px
}
.simlex_contact_item.request p {
		color: #FF7F00;
}
.simlex_contact_item.contact p {
		color: #C0153E;
}
.simlex_contact_item.request a + p, .simlex_contact_item.contact p {
		font-size: 16px;
		color: #1d1d1d;
		padding-top: 15px;
		line-height: 1.6;
}
.simlex_contact_item a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100px;
		border-radius: 60px;
		color: #fff;
		text-decoration: none;
		font-size: 20px;
		font-weight: 700;
		transition: background 0.3s;
		position: relative;
}
.simlex_kvBtn_gr .simlex_contact_item a {
		height: 90px
}
@media(max-width: 1680px) {
		.kv .simlex_kvBtn_gr .simlex_contact_item a {
				height: 6.2vw;
		}
}
.simlex_contact_item a::before, .simlex_contact_item a::after {
		content: '';
		display: block;
		position: absolute;
}
.simlex_contact_item a::before {
		background-repeat: no-repeat;
		background-position: center center;
		width: 35px;
		height: 35px;
		background-size: 100%;
		left: 40px;
		top: calc(50% - 17px)
}
.simlex_kvBtn_gr .simlex_contact_item a::before {
		left: 30px
}
.simlex_contact_item a::after {
		width: 16px;
		height: 16px;
		right: 40px;
		top: calc(50% - 9.5px);
		border-top: 2px solid #FFF;
		border-right: 2px solid #fff;
		transform: rotate(45deg);
}
.simlex_kvBtn_gr .simlex_contact_item a::after {
		right: 30px
}
.simlex_contact_item a.icon_request::before {
		background-image: url("../images/simlex/simlex_btn_icon_file_wht.png")
}
.simlex_contact_item a.icon_contact::before {
		background-image: url("../images/simlex/simlex_btn_icon_contact_wht.png")
}
@media (hover: hover) {
		.simlex_contact_item a:hover.icon_request::before {
				background-image: url("../images/simlex/simlex_btn_icon_file_org.png")
		}
		.simlex_contact_item a:hover.icon_contact::before {
				background-image: url("../images/simlex/simlex_btn_icon_contact_red.png")
		}
		.simlex_contact_item a.requestBtn:hover::after {
				border-top: 2px solid #FF7F00;
				border-right: 2px solid #FF7F00;
		}
		.simlex_contact_item a.contactBtn:hover::after {
				border-top: 2px solid #C0153E;
				border-right: 2px solid #C0153E;
		}
}
@media(max-width: 1300px) {
		.simlex_kvBtn_gr .simlex_contact_item a {
				height: 70px;
				font-size: 17px;
		}
		.simlex_kvBtn_gr .simlex_contact_item a::before {
				left: 20px;
		}
		.simlex_kvBtn_gr .simlex_contact_item a::after {
				right: 24px;
				top: calc(50% - 5.4px);
		}
}
@media(max-width: 1200px) {
		.simlex_contact_hd {
				font-size: 32px;
				margin: 0 0 60px
		}
		.simlex_contact_hd span::after {
				bottom: -20px;
				left: calc(50% - 80px);
				width: 160px;
				height: 6px;
		}
		.simlex_contact_item a {
				height: 80px;
		}
		.simlex_contact_item a::before {
				width: 26px;
				height: 26px;
				left: 30px;
				top: calc(50% - 13px)
		}
		.simlex_contact_item a::after {
				width: 12px;
				height: 12px;
				right: 29px;
				top: calc(50% - 8.4px);
		}
}
@media(max-width: 1100px) {
		.simlex_kvBtn_gr {
				max-width: 44vw;
		}
		.simlex_kvBtn_gr .simlex_contact_item {
				width: calc(50% - 5px);
		}
		.simlex_kvBtn_gr .simlex_contact_item a, .kv .simlex_kvBtn_gr .simlex_contact_item a {
				height: 60px;
				font-size: 15px;
		}
		.simlex_kvBtn_gr .simlex_contact_item a::before {
				width: 18px;
				height: 18px;
				left: 19px;
				top: calc(50% - 8px);
		}
		.simlex_kvBtn_gr .simlex_contact_item a::after {
				width: 8px;
				height: 8px;
				right: 16px;
				top: calc(50% - 4.1px);
		}
}
@media(max-width: 960px) {
		.simlex_contact_item a {
				height: 70px;
		}
}
@media(max-width: 767px) {
		.simlex_contact_hd {
				font-size: 22px;
				margin: 0 0 50px;
		}
		.simlex_contact_hd span::after {
				bottom: -15px;
				left: calc(50% - 50px);
				width: 100px;
				height: 4px;
		}
		.simlex_contact_flex {
				display: block
		}
		.simlex_contact_item {
				width: 100%;
				margin: 0 auto 25px;
				max-width: 320px;
		}
		.simlex_contact_flex .simlex_contact_item:last-child {
				margin-bottom: 0;
		}
		.simlex_contact_item_hd {
				display: block;
				height: auto;
				margin: 0 0 10px
		}
		.simlex_contact_item p {
				font-size: 16px;
				font-weight: 600;
		}
		.simlex_contact_item a {
				height: 60px;
				font-size: 17px;
		}
		.simlex_contact_item a::after {
				width: 8px;
				height: 8px;
				right: 20px;
				top: calc(50% - 6px);
		}
}
@media(max-width: 767px) {
		.simlex_kvBtn_gr {
				max-width: inherit;
				width: 100%;
		}
		.simlex_kvBtn_gr .simlex_contact_item a, .kv .simlex_kvBtn_gr .simlex_contact_item a {
				height: 50px;
				font-size: 15px;
		}
}
/* =============== */
.simlex_func_wrap::before, .simlex_title.introduction::after, .simlex_title.case::after, .simlex_flowitem_gr::after {
		text-align: right;
		font-feature-settings: "palt";
		letter-spacing: -1px;
		font-family: "Inter", sans-serif;
		font-optical-sizing: auto;
		font-weight: 800;
		font-style: normal;
		line-height: 1;
		pointer-events: none
}
.simlex_func_wrap::before, .simlex_title.introduction::after {
		font-size: 120px;
}
.simlex_func_wrap::before {
		display: block;
		position: absolute;
		top: -98px;
		right: 0;
		width: 100%;
		color: #F7F8FA;
}
.simlex_func_wrap.feature::before {
		content: 'Feature';
}
.simlex_func_wrap.function::before {
		content: 'Function';
}
.simlex_title.introduction, .simlex_title.case {
		position: relative;
}
.simlex_title.introduction::after, .simlex_title.case::after {
		position: absolute;
		top: 0;
		right: 0;
		color: #F7F8FA;
		font-size: 100px;
		width: 100%;
		text-align: right;
}
.simlex_title.introduction::after {
		content: 'Introduction';
}
.simlex_title.case::after {
		content: 'Case';
}
.simlex_flowitem_gr {
		position: relative;
}
.simlex_flowitem_gr::after {
		content: 'Flow';
		color: #fff;
		font-size: 100px;
		position: absolute;
		text-align: right;
		width: 100%;
		right: 0;
		top: -85px;
}
@media(max-width: 1200px) {
		.simlex_func_wrap::before, .simlex_title.introduction::after {
				font-size: 96px;
		}
		.simlex_func_wrap::before {
				top: -80px;
		}
		.simlex_title.introduction::after, .simlex_title.case::after {
				font-size: 80px;
		}
		.simlex_flowitem_gr::after {
				font-size: 80px;
				top: -65px;
		}
}
@media(max-width: 767px) {
		.simlex_func_wrap::before, .simlex_title.introduction::after {
				font-size: 64px;
		}
		.simlex_func_wrap::before {
				top: -55px;
				right: -20px
		}
		.simlex_title.introduction::after, .simlex_title.case::after {
				font-size: 64px;
		}
		.simlex_flowitem_gr::after {
				font-size: 64px;
				top: -55px;
				right: -25px;
		}
}
/* ======== ENTRY ======== */
.entry_grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 70px 30px;
}
.entry_grid.entryAll {
		margin-bottom: 90px;
}
.entry_item {
		width: 300px;
		background: #F7F8FA;
}
.entry_item_thumb {
		overflow: hidden
}
.entry_item_thumb img {
		width: 100%;
		height: auto;
		object-fit: cover;
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
@media (hover: hover) {
		.entry_item a:hover .entry_item_thumb img {
				transform: scale(1.05)
		}
		.entry_item a:hover .entry_item_caption {
				color: #C0153E;
		}
		.entry_item a:hover .entry_item_date.fBlk {
				color: #C0153E;
		}
}
.entry_item_date {
		color: #C0153E;
		margin: 0 0 10px;
}
.entry_item_date.fBlk {
		color: #1d1d1d;
}
.entry_item_caption {
		padding: 20px 20px 40px;
}
.entry_item_caption h3 {
		font-size: 15px;
		color: #C0153E;
		margin: 0 0 10px;
		font-weight: 500;
		line-height: 1.6;
}
.entry_more_wrap {
		padding-top: 35px;
		display: flex;
		justify-content: center;
}
.entry_more_btn {
		width: 200px;
		font-size: 18px;
		font-weight: 700;
}
.entry_more_btn a {
		background: #c0153e;
		border-radius: 60px;
		height: 60px;
		border: 1px solid #c0153e;
		display: flex;
		justify-content: center;
		align-items: center;
		color: #fff;
		transition: background 0.4s;
}
.entry_more_btn a span {
		display: inline-block;
		transform: translateY(-1px)
}
@media (hover: hover) {
		.entry_more_btn a:hover {
				background: #fff;
				color: #c0153e;
		}
}
@media(max-width: 1200px) {
		.entry_item {
				width: 100%;
		}
		.entry_item_caption {
				padding: 15px 15px 30px;
		}
}
@media(max-width: 767px) {
		.entry_grid {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				gap: 0 0;
		}
		.entry_item {
				width: calc(50% - 5px);
				margin: 0 0 30px;
		}
		.entry_item_caption {
				padding: 15px;
		}
		.entry_item_date {
				font-size: 13px;
				margin: 0 0 5px;
		}
		.entry_item_title {
				font-size: 13px;
		}
		.entry_more_wrap {
				padding-top: 25px;
		}
		.entry_more_btn {
				width: 220px;
				font-size: 16px;
		}
}
/* ======== utility ======== */
@media(min-width: 768px) {
		br.spbr {
				display: none;
		}
}
@media(max-width: 767px) {
		br.pcbr {
				display: none;
		}
}
.anchor {
		margin-top: -120px;
		padding-top: 120px;
		position: relative;
		z-index: 0;
		pointer-events: none
}
.anchor.extra {
		margin-top: -140px;
		padding-top: 100px;
}
@media(max-width: 767px) {
		.anchor,.anchor.extra {
				margin-top: -70px;
				padding-top: 70px;
		}
}
.mb00 {
		margin-bottom: 0px !important;
}
.mb05 {
		margin-bottom: 5px !important;
}
.mb10 {
		margin-bottom: 10px !important;
}
.mb15 {
		margin-bottom: 15px !important;
}
.mb20 {
		margin-bottom: 20px !important;
}