@charset 'UTF-8';



.hide-sp {
	display: none !important;
}

.hide-pc {
	display: block !important;
}

.mainKeyvisual {
	padding-block: 0 40px;
}

.mainKeyvisual .keyvisualInner {
	display: block;
	width: auto;
}

.mainKeyvisual .keyvisualInner .keyvisualImg {
	width: auto;
	padding-bottom: 0;
}

.mainKeyvisual .keyvisualInner .keyvisualImg:after {
	bottom: 0;
}

.mainKeyvisual .keyvisualInner .keyvisualImg .imgPagination {
	top: 50%;
	bottom: auto;
	right: 15px;
	left: auto;
	transform: translateY(-50%);
	-ms-flex-direction: column;
	flex-direction: column;
}

.mainKeyvisual .keyvisualInner .keyvisualImg .imgPagination .swiper-pagination-bullet {
	width: 18px;
	height: 18px;
	margin: 2.5px 0;
}

.mainKeyvisual .keyvisualInner .keyvisualImg .imgPagination .swiper-pagination-bullet:before {
	width: 4px;
	height: 4px;
}

.mainKeyvisual .keyvisualInner .keyvisualImg .imgPagination .swiper-pagination-bullet .bulletCircle,
.mainKeyvisual .keyvisualInner .keyvisualImg .imgPagination .swiper-pagination-bullet .bulletCircleAnim {
	width: 18px;
	height: 18px;
}

.mainKeyvisual .keyvisualInner .keyvisualInfo {
	width: auto;
	margin: -25px 0 0 35px;
	padding: 25px;
}

.mainKeyvisual .keyvisualInner .keyvisualInfo:before {
	box-shadow: 0 0 10px 0 rgba(69, 73, 77, 0.1);
}

.mainKeyvisual .keyvisualInner .keyvisualInfo .infoList .listItem .itemInner .itemTtl {
	font-size: 14px;
}

.mainKeyvisual .keyvisualInner .keyvisualInfo .infoList .listItem .itemInner .itemCopy {
	font-size: 21px;
	margin-top: 15px;
}

.mainKeyvisual .keyvisualInner .keyvisualInfo .infoList .listItem .itemInner .itemCopy sup {
	translate: 0 -1px;
}

.mainKeyvisual .keyvisualInner .keyvisualInfo .infoList .listItem .itemInner .itemBanner {
	margin-top: 20px;
}

.mainKeyvisual .keyvisualInner .keyvisualInfo .infoList .listItem .itemInner .itemAsterisk {
	margin-top: 10px;
	font-size: 10px;
}

.sectionTitle {
	font-size: 18px;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.contentInner {
	width: auto;
	padding-inline: 14px;
}

.mainTopicks {
	padding-block: 50px;
}

.mainIntroduction {
	border: none;
	padding-block: 50px;
	border-top: 4px solid #151a4e;
	background: #fff;
}

.mainIntroduction .sectionTitle {
	padding-inline: 14px;
}

.mainIntroduction .searchProducts li a {
	border-radius: 0;
	border: none;
	background: #edf0f7;
}

.mainRanking {
	padding-block: 50px;
	border-bottom: none;
	background: #edf0f7;
}

.mainRanking .containerRanking .fontMincho {
	text-align-last: left;
	padding-inline: 14px;
}

.mainConcept {
	border-top: 4px solid #151a4e;
	padding-bottom: 50px;
}

.mainConcept .conceptTop {
	background: url('../../../stc_images/img/home/bgConcept_sp.jpg') no-repeat top center/cover;
}

.mainConcept .conceptTop .TopInner {
	display: block;
}

.mainConcept .conceptTop .TopInner .topLeft .conceptTitle {
	font-size: 13px;
}

.mainConcept .conceptTop .TopInner .topLeft .conceptCopy {
	font-size: 21px;
	margin-top: 15px;
}

.mainConcept .conceptTop .TopInner .topLeft .conceptTxt {
	margin-top: 15px;
	padding-left: 14px;
}

.mainConcept .conceptTop .TopInner .topRight .conceptLink {
	margin-top: 20px;
	font-size: 14px;
	width: 220px;
	padding-left: 60px;
	margin-left: calc(90px / 2);
}

.mainConcept .conceptTop .TopInner .topRight .conceptLink:after {
	width: 90px;
}

.mainConcept .conceptMenu {
	padding-inline: 14px;
}

.mainConcept .conceptMenu .menuInner {
	padding: 26px 16px;
}

.mainConcept .conceptMenu .menuInner .menuTop {
	gap: 10px;
	-ms-flex-direction: column;
	flex-direction: column;
}

.mainConcept .conceptMenu .menuInner .menuTop .topLinks {
	aspect-ratio: 638/360;
	padding-inline: 20px 14px;
	padding-block: 14px;
}

.mainConcept .conceptMenu .menuInner .menuTop .topLinks .linksText {
	font-size: 20px;
}

.mainConcept .conceptMenu .menuInner .menuTop .topLinks .linksIcon {
	width: 30px;
}

.mainConcept .conceptMenu .menuInner .menuTop .topLinks .linksIcon:after {
	width: 6px;
}

.mainConcept .conceptMenu .menuInner .menuBottom {
	-ms-flex-direction: column;
	flex-direction: column;
}

.mainConcept .conceptMenu .menuInner .menuBottom a img {
	width: 100%;
}

.mainConcept .conceptMenu .menuInner .menuBottom a span {
	margin-top: 8px;
}

.mainCol2 {
	margin-top: 50px;
	padding-block: 50px 0;
	border-top: 4px solid #151a4e;
}

.mainCol2 .col2Inner {
	display: block;
}

.mainCol2 .col2Inner > * + * {
	margin-top: 50px;
	padding-top: 50px;
	position: relative;
}

.mainCol2 .col2Inner > * + *:before {
	content: '';
	border-top: 4px solid #151a4e;
	width: calc(100% + 14px * 2);
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50% 0;
}

.mainCol2 .mainProject .projectContent .contentList {
	padding: 20px 14px;
}

.mainCol2 .mainProject .projectContent .contentList .listItem {
	gap: 16px;
}

.mainCol2 .mainProject .projectContent .contentList .listItem .itemTitle {
	gap: 6px;
}

.mainCol2 .mainProject .projectContent .contentList .listItem .itemTitle .titleText {
	font-size: 14px;
	max-width: 140px;
}

.mainCol2 .mainProject .projectContent .contentList .listItem .itemTitle .titleIcon {
	width: 14px;
}

.mainColumn {
	padding-block: 50px 0;
	border-top: 4px solid #151a4e;
	background: #fff;
}

.mainColumn .columnInner .columnContent {
	-ms-grid-columns: (1fr)[1];
	grid-template-columns: repeat(1, 1fr);
	background: none;
	padding: 0;
	border-top: solid 1px #aaa;
	gap: 0;
	border-radius: 0;
}

.mainColumn .columnInner .columnContent li {
	border-bottom: solid 1px #aaa;
	padding-block: 10px;
}

.mainColumn .columnInner .columnContent li img {
	width: 78px;
	margin-bottom: 0;
}

.mainColumn .columnInner .columnContent li .descWrap .descIntroduction {
	font-size: 13px;
}

.mainColumn .columnInner .columnContent li .descWrap .descCategory {
	display: inline-block;
	font-size: 11px;
	color: #14194d;
	margin-top: 6px;
}

.mainColumn .columnInner .columnContent li .category {
	display: none;
}

.mainNews {
	margin-top: 50px;
	padding-top: 30px;
	border-top: 4px solid #151a4e;
}

.mainNews .newsInner.contentInner .sectionTitle {
	text-align: center;
	display: block;
}

.mainNews .newsInner.contentInner .containerNews {
	margin-top: 20px;
	padding-top: 0;
	border: none;
}

