@charset "utf-8";

@media all {
/* 
 * Reset
 * ==================================================================================================== */
	html,
	body,
	div,
	span,
	applet,
	object,
	iframe,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	blockquote,
	pre,
	a,
	abbr,
	acronym,
	address,
	big,
	cite,
	code,
	del,
	dfn,
	em,
	img,
	ins,
	input,
	kbd,
	q,
	s,
	samp,
	small,
	strike,
	strong,
	sub,
	sup,
	tt,
	var,
	b,
	u,
	i,
	center,
	dl,
	dt,
	dd,
	ol,
	ul,
	li,
	fieldset,
	form,
	label,
	legend,
	table,
	caption,
	tbody,
	tfoot,
	thead,
	tr,
	th,
	td,
	article,
	aside,
	canvas,
	details,
	embed,
	figure,
	figcaption,
	footer,
	header,
	hgroup,
	menu,
	nav,
	output,
	ruby,
	section,
	summary,
	time,
	mark,
	audio,
	video,
	:before,
	:after {
		margin: 0;
		padding: 0;
		border: 0;
		font-style: normal;
		vertical-align: bottom;
		background-repeat: no-repeat;
		box-sizing: border-box;
		backface-visibility: hidden;
	}
	
	article,
	aside,
	details,
	figcaption,
	figure,
	footer,
	header,
	hgroup,
	main,
	menu,
	nav,
	section {
		display: block;
	}
	
	html {
		font-size: 62.5%;
		overflow-y: scroll;
		overflow-x: hidden;
		background: #202329;
	}
	
	.g-body {
		color: #333;
		font-size: 1.6rem;
		font-family: 'Roboto', 'Noto Sans JP';
		font-weight: 400;
		font-feature-settings: 'pwid';
		-webkit-font-smoothing: subpixel-antialiased;
		-moz-osx-font-smoothing: unset;
		-webkit-text-size-adjust: 100%;
		line-height: 1;
		letter-spacing: 0;
		width: 100%;
		min-width: 1160px;
		margin: 0;
		padding: 0;
		background: #202329;
		cursor: default;
	}
	
	input,
	textarea,
	button,
	select,
	option,
	textarea {
		font-family: 'Noto Sans JP';
		margin: 0;
		padding: 0;
		outline: none;
		border-radius: 0;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		cursor: pointer;
	}

	ol,
	ul {
		list-style: none;
	}
	
	table {
		border-collapse: separate;
		border-spacing: 0;
	}
	
	a,
	a:before,
	a:after,
	a:visited,
	a img,
	input[type='image'],
	input[type='submit'] {
		color: #000;
		text-decoration: none;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	a:hover,
	a:hover img,
	input[type='image']:hover,
	a:visited:hover {
		color: #294197;
		text-decoration: underline;
	}
	
	a:focus {
		outline: none;
	}
	
	.js-Link__invalid,
	.js-Link__invalid:hover {
		color: #1e1e1e !important;
		opacity: 1 !important;
		cursor: default;
	}
	
	img {
		width: 100%;
		height: auto;
	}
	
	button {
		margin:0;
		padding:0;
		border:0;
		background:transparent;
	}
	
	sup {
		font-size: 1.1rem;
		line-height: 1;
		letter-spacing: .1em;
		vertical-align: text-top;
	}
	
	sub {
		font-size: 1.1rem;
		line-height: 1;
		letter-spacing: .1em;
		vertical-align: 0;
	}
	
	
	strong,
	em,
	b {
		font-weight: 400;
	}
	
	hr {
		height: 0;
		margin: 0;
		padding: 0;
		border-top: 0;
		border-bottom: 1px solid #ddd;
	}
	
	::selection {
		color: #fff;
		background: #294197;
	}
	
	::-webkit-scrollbar {
		width: 8px;
		background: #f5f6f9;
	}
	
	::-webkit-scrollbar-thumb {
		background-color: #999;
	}
	
	.js-scrollClass,
	.js-scrollClass:before,
	.js-scrollClass:after {
		transition: .6s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-scrollClass {
		opacity: 0;
		transform: translate(0,30px);
	}
	
	.u-scrollClass.is-stateScroll {
		opacity: 1;
		transform: translate(0,0);
	}
	
	
/* 
 * Utility
 * ==================================================================================================== */
	.u-contents {
		margin: 60px 0 0;
	}
	
	.g-wrapper--primaryPage .u-contents {
		margin: 40px 0 0;
	}
	
	.u-inner {
		max-width: 1160px;
		margin: 0 auto;
	}
	
	.u-inner--sub {
		padding-right: 105px;
		padding-left: 105px;
	}
	
	.u-show__mobile {
		display: none !important;
	}
	
	.u-hide__mobile {
		display: block !important;
	}
	
	.u-show__tablet {
		display: none !important;
	}
	
	.u-hide__tablet {
		display: block !important;
	}
	
	.u-cover {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		visibility: hidden;
		opacity: 0;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-transition {
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-font__serif {
		font-family: 'Times New Roman', 'Noto Serif JP' !important;
	}
	
	.u-font__light {
		font-weight: 300 !important;
	}
	
	.u-font__normal {
		font-weight: 400 !important;
	}
	
	.u-font__middle {
		font-weight: 500 !important;
	}
	
	.u-font__bold {
		font-weight: 700 !important;
	}
	
	.u-lineheight__none {
		line-height: 1;
	}
	
	.u-align__right {
		text-align: right !important;
	}
	
	.u-align__center {
		text-align: center !important;
	}
	
	.u-align__left {
		text-align: left !important;
	}
	
	.u-float__right {
		float: right !important;
	}
	
	.u-float__left {
		float: left !important;
	}
	
	.u-display__block {
		display: block;
	}
	
	.u-display__inline-block {
		display: inline-block;
	}
	
	.u-display__none {
		display: none;
	}
	
	.u-color__white {
		color: #fff !important;
	}
	
	.u-color__black {
		color: #000 !important;
	}
	
	.u-color__blue {
		color: #294197 !important;
	}
	
	.u-color__red {
		color: #e11b40 !important;
	}
	
	.u-color__orange {
		color: #e1521b !important;
	}
	
	.u-image {
		margin-bottom: 1em;
	}
	
	.u-text {
		line-height: 2;
	}
	
	.u-text__indent {
		text-indent: 1em;
	}
	
	.u-textdeco__underline {
		text-decoration: underline;
	}
	
	.u-textdeco__none {
		text-decoration: none !important;
	}
	
	.u-Note {
		font-size: 1.2rem;
	}
	
	.u-Note > * {
		line-height: 1.35;
		margin: 0 0 .35em;
	}
	
	.u-Note .u-Note__indent {
		text-indent: -1.25em;
		padding-left: 1.25em;
	}
	
	.u-list {
		margin: 40px 0 0;
	}
	
	.u-list__item {
		line-height: 1.5;
		margin: .5em 0 0;
		padding: 0 0 0 1em;
		position: relative;
	}
	
	.u-list__item:after {
		content: '';
		width: .25em;
		height: .25em;
		display: block;
		border-radius: 50%;
		background: #333;
		position: absolute;
		top: .55em;
		left: .15em;
	}
	
	.u-button a {
		text-align: center;
		min-width: 330px;
		min-height: 60px;
		display: inline-block;
		border: 1px solid #b0bec5;
		position: relative;
	}
	
	.u-button a:hover {
		color: #fff;
		background: #294197;
		border-color: #294197;
		text-decoration: none;
	}
	
	.u-button__name {
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	.u-icon {
		position: relative;
	}
	
	.u-icon:after {
		content: '';
		line-height: 2;
		margin: -.25em .25em 0;
		display: inline-block;
		background-size: 100% 100%;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-icon__arrow-basic:after {
		content: '';
		width: 16px;
		height: 14px;
		background: url("/_assets/img/common/arrow-blue.svg") no-repeat center / 100% 100%;
	}
	
	.u-icon__pdf:after {
		width: 18px;
		height: 18px;
		background-image: url("/_assets/img/common/icon-pdf.svg");
	}
	
	.u-icon__window:after {
		width: 13px;
		height: 13px;
		background-image: url("/_assets/img/common/icon-window-basic.svg");
	}
	
	.u-icon__window--white:after {
		background-image: url("/_assets/img/common/icon-window-white.svg");
	}
	
	.u-basicButton a {
		padding: .35em 2em;
		background: #fff;
	}
	
	.u-title__page {
		color: #000;
		font-size: 3.6rem;
		font-weight: 400;
		line-height: 1.35;
		letter-spacing: .075em;
	}
	
	.u-title__page small {
		font-size: 1.8rem;
		font-weight: 500;
		line-height: 1.75;
		letter-spacing: -.025em;
		margin: 1.5em 0 0;
		display: block;
	}
	
	.u-title__page small a {
		color: #294197;
		text-decoration: underline;
		padding: 0 .5em 0 .25em;
		display: inline-block;
	}
	
	.u-title__page small a:hover {
		text-decoration: none;
	}
	
	.u-title__page small a:after {
		content: '';
		vertical-align: 0;
		width: .75em;
		height: .75em;
		margin: 0 0 0 .25em;
		display: inline-block;
		background: url("/_assets/img/common/arrow-blue.svg") no-repeat center / 100% 100%;
		transform: rotate(90deg);
	}
	
	.u-title__hi {
		color: #000;
		font-size: 2.4rem;
		font-weight: 400;
		line-height: 1.35;
		margin: 0 0 15px;
		padding: 0 0 .5em;
		border-bottom: 1px solid #ddd;
	}
	
	.u-title__mid {
	}
	
	.u-title__low {
	}
	
	.u-position__center {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	.u-position__absolute {
		position: absolute;
	}
	
	.u-position__fixed {
		position: fixed;
	}
	
	.u-position__relative {
		position: relative;
	}
	
	.u-flex {
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-flex__center {
		justify-content: center;
	}
	
	.u-flex__right {
		justify-content: flex-end;
	}
	
	.u-flex__middle {
		align-items: center;
	}
	
	.u-flex__bottom {
		align-items: flex-end;
	}
	
	.u-flex__reverse {
		flex-direction: row-reverse;
	}
	
	.u-flex__between {
		justify-content: space-between;
	}
	
	.u-flex__column--2 > * {
		width: calc(100% / 2);
	}
	
	.u-flex__column--3 > * {
		width: calc(100% / 3);
	}
	
	.u-flex__column--4 > * {
		width: calc(100% / 4);
	}
	
	.u-flex__column--5 > * {
		width: calc(100% / 5);
	}
	
	.u-flex__column--6 > * {
		width: calc(100% / 6);
	}
	
	.u-flex__column--7 > * {
		width: calc(100% / 7);
	}
	
	.u-mgt__125 { margin-top: 120px !important; }
	.u-mgt__120 { margin-top: 120px !important; }
	.u-mgt__115 { margin-top: 110px !important; }
	.u-mgt__110 { margin-top: 110px !important; }
	.u-mgt__105 { margin-top: 100px !important; }
	.u-mgt__100 { margin-top: 100px !important; }
	.u-mgt__95 { margin-top: 90px !important; }
	.u-mgt__90 { margin-top: 90px !important; }
	.u-mgt__85 { margin-top: 80px !important; }
	.u-mgt__80 { margin-top: 80px !important; }
	.u-mgt__75 { margin-top: 70px !important; }
	.u-mgt__70 { margin-top: 70px !important; }
	.u-mgt__65 { margin-top: 60px !important; }
	.u-mgt__60 { margin-top: 60px !important; }
	.u-mgt__55 { margin-top: 50px !important; }
	.u-mgt__50 { margin-top: 50px !important; }
	.u-mgt__45 { margin-top: 40px !important; }
	.u-mgt__40 { margin-top: 40px !important; }
	.u-mgt__35 { margin-top: 30px !important; }
	.u-mgt__30 { margin-top: 30px !important; }
	.u-mgt__25 { margin-top: 20px !important; }
	.u-mgt__20 { margin-top: 20px !important; }
	.u-mgt__15 { margin-top: 10px !important; }
	.u-mgt__10 { margin-top: 10px !important; }
	
	.u-pdt__large {
		padding-top: 50px !important;
	}
	
	.u-pdt__middle {
		padding-top: 25px !important;
	}
	
	.u-pdt__small {
		padding-top: 10px !important;
	}
	
/* Template Table */
	.u-table-corner table {
		width: 100%;
		border-bottom: 1px solid #ddd;
	}
	
	.u-table-corner th {
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.75;
		text-align: left;
		vertical-align: middle;
		padding: 1.25em .5em 1em 1.25em;
		border-top: 1px solid #ddd;
		background: #f5f6f9;
		position: relative;
	}
	
	.u-table-corner td {
		font-size: 1.4rem;
		line-height: 1.75;
		vertical-align: middle;
		padding: 1.25em .5em 1em 1.25em;
		border-top: 1px solid #ddd;
	}
	
	.u-table-corner td.left {
		text-align: left;
	}
	
	.u-table-corner td.right {
		text-align: right;
	}
	
	.u-newsList__item {
		line-height: 1.75;
		padding: 1em 0;
		border-bottom: 1px dotted #c1c7c7;
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-newsList__item:first-child {
		border-top: 1px dotted #c1c7c7;
	}
	
	.u-newsList__time {
		width: 8.5em;
	}
	
	.u-newsList__category {
		width: 8.5em;
		display: none;
	}
	
	.u-newsList__category--name {
		color: #fff;
		font-size: 1.3rem;
		text-align: center;
		margin: .15em 0 0;
		background: #294197;
		display: block;
	}
	
	.u-newsList__text {
		width: calc(100% - 8.5em);
		padding: 0 0 0 1em;
	}
	
	.u-newsList .u-icon:after {
		transform: translate(0,-.5em);
	}
	
	.u-thumbnailMenu__items {
		margin: 0 -3px;
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-thumbnailMenu__items--row3 > * {
		width: calc(100% / 3);
	}
	
	.u-thumbnailMenu__item {
		text-align: center;
		margin: 40px 0 0;
		padding: 0 3px;
	}
	
	.u-thumbnailMenu__item a {
		color: #000;
		display: block;
		background: #fff;
	}
	
	.u-thumbnailMenu__item a:hover {
		color: #fff;
		background: #294197;
	}
	
	.u-thumbnailMenu__item a:hover img {
		opacity: .7;
	}
	
	.u-thumbnailMenu__title {
		min-height: 80px;
		display: block;
		position: relative;
	}
	
	.u-thumbnailMenu__name {
		line-height: 1.35;
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	.c-solutionList .u-thumbnailMenu__name,
	.solution-page .u-thumbnailMenu__name {
		text-align: left;
		padding-right: 1.25em;
		padding-left: 1.25em;
	}
	
	.u-productRelate {
		padding: 0 70px 50px;
		background: #f5f6f9;
	}
	
	.u-productRelate__title {
		color: #000;
		font-size: 2.2rem;
		font-weight: 400;
		text-align: center;
		padding: 40px 0 0;
	}
	
	.u-productRelate__items {
		padding: 20px 0 0;
	}
	
	.u-productRelate__item {
		margin: 10px 0 0;
	}
	
	.u-productRelate__item a {
		line-height: 1.35;
		text-align: center;
		text-decoration: none;
		background: #fff;
		padding: 1em 3em;
		display: block;
	}
	
	.u-productRelate__item a:hover {
		color: #fff;
		background: #294197;
	}
	
	.u-buttonList__items {
		margin-top: -10px;
		margin-right: -6px !important;
		margin-left: -6px !important;
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-buttonList--row3 .u-buttonList__item {
		width: calc(100% / 3);
	}
	
	.u-buttonList--row4 .u-buttonList__item {
		width: calc(100% / 4);
	}
	
	.u-buttonList__item {
		margin-top: 12px;
		padding-left: 6px !important;
		padding-right: 6px !important;
	}
	
	.u-buttonList__item:after {
		display: none !important;
	}
	
	.u-buttonList__item a {
		min-height: 60px;
		display: block;
		background: #fff;
		border: 1px solid #b0bec5;
		position: relative;
	}
	
	.g-wrapper--primaryPage .u-buttonList__item a {
		min-height: 60px;
		border: 0;
	}
	
	.u-buttonList__item a:hover {
		color: #fff !important;
		background: #294197;
		border-color: #294197;
	}
	
	.u-buttonList__item em {
		line-height: 1.35;
		text-align: center;
		width: 100%;
		display: block;
		position: absolute;
		top: calc(50% - .15em);
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	.u-buttonList__item {
		
		&.-thumb {
			
			& a {
				display: flex;
			}
			
			& img {
				width: 80px;
				height: 80px;
				object-fit: cover;
				
				@media screen and (max-width: 767px) {
					width: 40px;
				}
			}
			
			& em {
				padding-right: 40px;
				padding-left: 80px;
				
				@media screen and (max-width: 767px) {
					padding-right: 0;
					padding-left: 55px;
				}
			}
		}
	}
	
	.u-productData {
		margin: 10px 0 0;
	}
	
	.u-productData__title {
		color: #294197;
		font-size: 1.8rem;
		font-weight: 500;
		height: calc(1em + 10px);
		padding: 0 0 10px 1em;
		border-bottom: 1px solid #ddd;
		position: relative;
		cursor: pointer;
	}
	
	.u-productData th {
		font-size: 1.7rem;
		border-right: 1px solid #ddd;
	}
	
	.u-productData__head th {
		background: #eaecf0;
		border-top: 0;
	}
	
	.u-productData__head th:last-child {
		border-right: 0;
	}
	
	.u-productData td {
		font-size: 1.7rem;
	}
	
	.u-productData td a {
		color: #294197;
		font-weight: 700;
		text-decoration: underline;
		white-space: nowrap;
		margin-right: 1.5em;
		display: inline-block;
	}
	
	.u-productData td a:hover {
		text-decoration: none;
	}
	
	.u-productData td a:visited,
	.u-productData td a:active {
		color: #94a0cb;
	}
	
	.u-productData td p {
		margin-top: 0;
	}
	
	.u-productData__title--button {
		width: 25px;
		height: 25px;
		border: 1px solid #294197;
		background: #294197;
		position: absolute;
		bottom: 8px;
		right: 10px;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-productData__title--button:before,
	.u-productData__title--button:after {
		content: '';
		width: 12px;
		height: 1px;
		background: #fff;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-productData__title--button:after {
		transform: translate(-50%,-50%) rotate(90deg);
	}
	
	.u-productData__title.is-active .u-productData__title--button:after {
		transform: translate(-50%,-50%) rotate(0deg);
	}
	
	.no-touch .u-productData__title:hover .u-productData__title--button {
		background: #fff;
		border-color: #294197;
	}
	
	.no-touch .u-productData__title:hover .u-productData__title--button:before,
	.no-touch .u-productData__title:hover .u-productData__title--button:after {
		background: #294197;
	}
	
	.u-productData__inner {
		display: none;
	}
	
	.u-tab__panel {
		display: none;
	}
	
	.u-tab__panel.is-active {
		display: block;
	}
	
	
	
	/*
	 * Layout
	 * ==================================================================================================== */
	.g-wrapper {
		padding: 0 0 80px;
		background: #fff;
	}
	
	.g-wrapper--primaryPage {
		background: #f5f6f9;
		position: relative;
	}
	
	.g-wrapper--primaryPage:after {
		content: '';
		width: 100%;
		height: 220px;
		display: block;
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
	}
	
	.g-container {
		position: relative;
	}
	
	.g-main {
		padding: 0 0 60px;
		position: relative;
	}
	
	/*
	 * Breadcrumb
	 * ------------------------------------------------------------------------------------------------ */
	.g-breadcrumb {
		margin: 80px 0 0;
		padding: 15px 25px 0;
		position: relative;
		z-index: 10;
	}
	
	.g-breadcrumb__item {
		font-size: 1.2rem;
		font-weight: 300;
		line-height: 1;
		letter-spacing: .1em;
		padding: 0 1em;
		border-left: 1px solid rgba(0,0,0,.35);
	}
	
	.g-breadcrumb__item:last-child a {
		color: #999;
	}
	
	.g-breadcrumb__item br {
		display: none;
	}
	
	
	/*
	 * Category menu
	 * ------------------------------------------------------------------------------------------------ */
	.g-categoryMenu {
		width: 100%;
		padding: 0 0 25px;
		background: #cbcfd5;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	
/*
 * Header
 * ==================================================================================================== */
	.g-header {
		width: 100%;
		height: 80px;
		border-bottom: 1px solid rgba(0,0,0,.15);
		background: #fff;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 150;
	}
	
	.g-header__logo {
		width: 290px;
		position: absolute;
		top: 50%;
		left: 25px;
		transform: translate(0,-50%);
	}
	
	.g-header__logo a {
		position: relative;
	}
	
	.g-header__logo a:after {
		content: '製品情報サイト';
		color: #294197;
		font-size: 1.4rem;
		font-weight: 500;
		letter-spacing: .05em;
		margin-right: -20px;
		position: absolute;
		bottom: 0;
		right: 0;
		transform: translate(100%,0);
	}
	
/*
	.g-header__logo .is-homeLogo {
		display: none;
	}
*/
	
/*
 * Footer
 * ==================================================================================================== */
	.g-footer {
		color: #fff;
		padding: 0 0 25px;
	}
	
	.g-footer a,
	.g-footer a:hover {
		color: #fff;
	}
	
	.g-footer__title {
		font-size: 1.4rem;
		letter-spacing: .1em;
		margin: 15px 0 0;
		padding: 0 0 .75em 0;
		border-bottom: 1px solid rgba(255,255,255,.25);
	}
	
	.g-footer__items {
		margin: 20px 0 0;
		display: flex;
		flex-wrap: wrap;
		position: relative;
	}
	
	.g-footer__item {
	}
	
	.g-footer__item--strength {
		width: 210px;
	}
	
	.g-footer__item--material {
		width: 260px;
	}
	
	.g-footer__item--food {
		width: 260px;
	}
	
	.g-footer__item--solution {
		width: 260px;
	}
	
	.g-footer__item--contact {
		width: 240px;
		margin-left: auto;
	}
	
	.g-footer .g-footer__item .u-icon:after {
		margin-left: .5em;
		background-image: url("/_assets/img/common/icon-window-basic.svg");
		transform: translate(0,-.45em);
	}
	
	.g-footer .g-menuTitle__name {
		font-size: 1.4rem;
		font-weight: 500;
		display: block;
	}
	
	.g-footer .g-menu__items {
		margin: 1em 0 0;
	}
	
	.g-footer .g-menu__item {
		font-size: 1.2rem;
		margin: .25em 0 0;
	}
	
	.g-footer .g-menu__item a {
		padding: 0 0 0 .75em;
		display: inline-block;
		position: relative;
	}
	
	.g-footer .g-menu__item a:before {
		content: '';
		width: .35em;
		height: 1px;
		background: #fff;
		display: block;
		position: absolute;
		top: .75em;
		left: 0;
	}
	
	.g-footer .g-menu__name {
		font-size: 1.3rem;
		line-height: 1.75;
	}
	
	.g-footer__contactButton a {
		color: #fff;
		font-size: 1.4rem;
		font-weight: 500;
		text-align: center;
		letter-spacing: .05em;
		padding: 30px 0;
		background: #294197;
		display: block;
	}
	
	.g-footer__contactButton a:hover {
		text-decoration: none;
		background: #94a0cb;
	}
	
	.g-footer__corporateButton {
		margin-top: 10px;
	}
	
	.g-footer__corporateButton a {
		color: #294197;
		font-size: 1.4rem;
		font-weight: 500;
		text-align: center;
		letter-spacing: .05em;
		padding: 30px 0;
		background: #fff;
		display: block;
		position: relative;
	}
	
	.g-footer__corporateButton a:after {
		content: '';
		width: 13px;
		height: 13px;
		line-height: 2;
		margin: -.25em .25em 0;
		display: inline-block;
		background-size: 100% 100%;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
		margin-left: .5em;
		position: absolute;
		top: 50%;
		right: 10px;
		background-image: url(/_assets/img/common/icon-window-basic.svg);
		transform: translate(0,-.45em);
	}
	
	.g-footer__corporateButton a:hover {
		color: #fff;
		text-decoration: none;
		background: #294197;
	}
	
	.g-footer__corporateButton a:hover:after {
		background-image: url(/_assets/img/common/icon-window-white.svg);
	}
	
	.g-footer .g-menuInner + .g-menuTitle,
	.g-footer .g-menuInner + .g-menuInner__list {
		margin: 40px 0 0;
	}
	
	.g-footer a.js-link__invalid,
	.g-footer a.js-link__invalid:hover {
		text-decoration: none;
		cursor: default;
	}
	
	.g-footer a.js-link__invalid:before {
		display: none;
	}
	
	.g-footerGlobal {
		margin: 25px 0 0;
	}
	
	.g-footerGlobal__items {
		letter-spacing: .05em;
		display: flex;
	}
	
	.g-footerGlobal__item {
		font-size: 1.2rem;
		padding: 0 20px;
		border-right: 1px solid rgba(255,255,255,.5);
	}
	
	.g-footerGlobal__item:first-child {
		border-left: 1px solid rgba(255,255,255,.5);
	}
	
	.g-footer__logo {
		text-align: center;
		margin: 20px 0 0;
		border-top: 1px solid rgba(255,255,255,.25);
	}
	
	.g-footer__logo a {
		width: 220px;
		margin: 25px auto 0;
		display: block;
	}
	
	.g-footer__logo--logo {
		display: block;
	}
	
	.g-footer__logo b {
		font-size: 1.4rem;
		font-weight: 500;
		letter-spacing: .1em;
		margin: 15px 0 0;
		display: block;
	}
	
	.g-footer__corporate {
		font-size: 1.4rem;
		font-weight: 500;
		text-align: center;
		margin: 30px 0 0;
	}
	
	.g-footer__corporate .u-icon:after {
		margin-left: 1em;
		transform: translate(0,-.15em);
	}
	
	.g-footer__copyright {
		color: #fff;
		font-size: 1.2rem;
		letter-spacing: .05em;
		text-align: center;
		margin: 10px 0 0;
		display: block;
		opacity: .3;
	}
	
	.g-footerGlobalItems {
		margin: -1.25em 540px 0 0;
		position: absolute;
		top: 0;
		right: 0;
		transform: translate(100%,0);
	}
	
	.g-footerGlobalItem {
		line-height: 1.25;
		margin: 1em 0 0;
	}
	
	.g-footerGlobalItem a {
		font-size: 1.4rem;
		font-weight: 500;
	}
	
	.g-pagetop {
		right: 40px;
		z-index: 90;
		opacity: 0;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.g-pagetop.is-active {
		opacity: 1;
	}
	
	.g-pagetop a {
		width: 60px;
		height: 60px;
		background: #202329;
		display: block;
		position: relative;
	}
	
	.g-pagetop__arrowImage {
		width: 14px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	
	
	
	
/*
 * Menu
 * ==================================================================================================== */
	.g-headerSearch {
		min-width: 170px;
		position: absolute;
		top: 14px;
		right: 170px;
	}
	
	.g-headerSearch__inner {
		width: 170px;
		position: relative;
	}
	
	.mt-site-search-form__query {
		font-size: 1.3rem;
		letter-spacing: -.05em;
		width: 100%;
		height: 24px;
		padding: 3px 24px 3px 3px;
		background: #f5f6f9;
	}
	
	.g-headerSearch__input:focus {
		box-shadow: 0 0 10px 0 rgba(41,65,151,.5);
	}
	
	.mt-site-search-form__button {
		color: transparent;
		font-size: 0;
		line-height: 0;
		width: 24px;
		height: 24px;
		background: url("/_assets/img/common/icon-search__black.svg") no-repeat center / 14px auto;
		position: absolute;
		top: 0;
		right: 0;
		opacity: .25;
		z-index: 10;
	}
	
	.mt-site-search-form__button:hover {
		opacity: .75;
	}
	
	.g-menuBanner__item a {
		color: #294197;
		min-height: 80px;
		border: 2px solid #294197;
		background: #fff;
		display: block;
		position: relative;
	}
	
	.g-menuBanner__item .u-icon__arrow-basic:after {
		margin: 0;
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translate(0,-50%);
	}
	
	.g-menuBanner__item a:hover {
		color: #fff;
		background: #294197;
	}
	
	.g-menuBanner__item .u-icon__arrow-basic:hover:after {
		background-image: url("/_assets/img/common/arrow-white.svg");
	}
	
	.g-menuBanner__name {
		font-weight: 700;
		text-align: center;
		letter-spacing: .1em;
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	
	
	.g-navi {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 200;
	}
	
	.g-naviMenu {
		position: absolute;
		top: calc((80px - 1em) - 15px);
		right: 155px;
	}
	
	.g-naviMenu__items {
		display: flex;
		align-items: center;
	}
	
	.g-naviMenu__item {
		padding: 0 15px 15px;
		cursor: pointer;
		position: relative;
		overflow: hidden;
	}
	
	.g-naviMenu__item:after {
		content: '';
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 7px 7px 7px;
		border-color: transparent transparent #294197 transparent;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%,100%);
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.g-naviMenu__item:first-child {
		padding-left: 40px;
	}
	
	.g-naviMenu__item:first-child:after {
		left: calc(50% + 10px);
	}
	
	.g-naviMenu__item.is-active:after {
		transform: translate(-50%,0);
	}
	
	.g-naviMenu__name {
		font-size: 1.4rem;
		letter-spacing: .075em;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.g-naviMenu__item a {
		white-space: nowrap;
		position: relative;
	}
	
	.g-naviMenu__item a:before {
		content: '';
		width: 100%;
		height: 5px;
		display: block;
		background: #294197;
		position: absolute;
		bottom: -15px;
		left: 0;
		transform: translate(0,100%);
		z-index: 10;
	}
	
	.g-naviMenu__item a.u-icon:after {
		transform: translate(0,-.15em);
	}
	
	.g-naviMenu__item a:hover {
		color: #294197;
		text-decoration: none;
		opacity: 1;
	}
	
	.g-naviMenu__item.is-active a {
		color: #294197;
	}
	
	.g-naviMenu__item.is-focus__active.is-active a:before {
		transform: translate(0,100%);
	}
	
	.g-naviMenu__item:hover .g-naviMenu__name {
		color: #294197;
	}
	
	.g-naviMenu__item a.is-focus__active {
		color: #294197;
	}
	
	.g-naviMenu__item a.is-focus__active:before {
		transform: translate(0,-1px);
	}
	
	
	
	.g-naviMenu__item a.is-focus__active .g-naviMenu__name {
		font-weight: 500;
	}
	
	.g-naviPulldown {
		width: 100%;
		position: fixed;
		top: 80px;
		left: 0;
		z-index: 120;
	}
	
	.g-naviPulldown .g-naviPulldown__inner {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		visibility: hidden;
		opacity: 0;
		transform: translate(0,-1px);
		transition: .2s 0s cubic-bezier(.75, 0, .35, 1);
		filter: brightness(200%) contrast(200%);
		pointer-events: none;
	}
	
	.g-naviPulldown .g-naviPulldown__inner.is-active {
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transition: .4s 0s cubic-bezier(.75, 0, .35, 1);
		filter: brightness(100%) contrast(100%);
	}
	
	.g-naviPulldown__inner-child {
		max-width: 1160px;
		margin: 0 auto;
		padding: 22px 0 25px;
		display: flex;
		align-items: center;
	}
	
	.g-naviPulldown .g-menuTitle {
		text-align: right;
		width: 280px;
		padding-top: .5em;
	}
	
	.g-naviPulldown .g-menuTitle__name a {
		color: #fff;
		font-size: 1.8rem;
		letter-spacing: .1em;
	}
	
	.g-naviPulldown .g-menuTitle__name a:after {
		content: attr(data-en)'';
		color: #294197;
		font-size: 1.6rem;
		font-weight: 300;
		margin: .75em 0 0 .1em;
		display: block;
	}
	
	.g-naviPulldown .g-menuInner {
		width: calc(100% - 280px);
		padding-right: 120px;
	}
	
	.g-naviPulldown .g-menuInner__list {
		display: flex;
	}
	
	.g-naviPulldown .g-menu__items {
		margin: -15px 0 0;
		display: flex;
		flex-wrap: wrap;
	}
	
	.g-naviPulldown .g-menu__item {
		margin: 15px 0 0 40px;
	}
	
	.g-naviPulldown .g-menu__item a {
		color: #fff;
	}
	
	.g-naviPulldown .g-menu__item a.js-link__invalid:hover {
		color: #000;
		text-decoration: none;
		cursor: default;
	}
	
	.g-naviPulldown .g-menu__name {
		font-size: 1.3rem;
		line-height: 1.35;
		letter-spacing: .1em;
		white-space: nowrap;
	}
	
	.g-naviPulldown .g-menu__item br {
		display: none;
	}
	
	.g-naviPulldown .g-menu__item .g-menu__items {
		width: 100%;
		max-height: calc((1.35em + 15px) * 2);
		margin-top: 0;
		transform: translate(1em,0);
	}
	
	.g-naviPulldown .g-menu__item .g-menu__item {
		margin-top: 15px;
	}
	
	.g-naviPulldown .g-menuBanner__items {
		width: 340px;
	}
	
	.g-naviPulldown .g-menuBanner__item {
		margin: 25px 0 0;
	}
	
	.is-gnavi-active .u-cover {
		visibility: visible;
		opacity: 1;
		z-index: 100;
	}
	
	.g-naviBase {
		width: 100%;
		height: 100vh;
		padding: 0;
		background: #294197;
		position: fixed;
		top: calc(-100vh + 80px);
		left: 0;
		z-index: 110;
		transform-origin: bottom center;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
		will-change: auto;
	}
	
	.g-naviCover {
		width: 100%;
		height: 100%;
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100;
		visibility: hidden;
	}
	
	.g-naviContact {
		position: absolute;
		top: 0;
		right: 0;
	}
	
	.g-naviContact a {
		color: #fff;
		width: 140px;
		height: 80px;
		display: block;
		background: #294197;
	}
	
	.g-naviContact a:hover {
		background: #94a0cb;
	}
	
	.g-naviContact__name {
		font-size: 1.5rem;
		font-weight: 500;
		text-align: center;
		letter-spacing: .1em;
		width: 100%;
		display: block;
		position: absolute;
		top: calc(50% - .25em);
		left: 0;
		transform: translate(0,-50%);
	}
	
	
/*
 * Sidemenu
 * ==================================================================================================== */
	.g-side {
		width: 250px;
		position: absolute;
		top: calc((70px + 1.2rem) + 15px);
		right: calc((50% - 250px) - 330px);
		background: #fff;
	}
	
	.sidemenu-page .g-main {
		width: 1160px;
		margin-right: auto;
		margin-left: auto;
		padding-right: 310px;
	}
	
	
	.g-side .g-menuTitle__name a {
		color: #fff;
		font-size: 1.8rem;
		font-weight: 500;
		letter-spacing: .1em;
		padding: 24px 0 24px 20px;
		display: block;
		background: #294197;
	}
	
	.g-side .g-menuTitle__name a:hover {
		text-decoration: none;
		opacity: .9;
	}
	
/*
	.g-side .g-menuTitle__name a:not(:first-child) {
		color: #294197;
		background: #f5f6f9;
		border-right: 1px solid #ddd;
		border-left: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}
*/
	
	.g-side .g-menu__items {
		border-right: 1px solid #ddd;
		border-left: 1px solid #ddd;
	}
	
	.g-side .g-menu__item {
		border-bottom: 1px solid #ddd;
	}
	
	.g-side .g-menu__item a {
		padding: 15px 0 15px 20px;
		display: block;
	}
	
	.g-side .g-menu__item a:hover {
		text-decoration: none;
		background: #f5f6f9;
	}
	
	.g-side .g-menu__name {
		font-size: 1.4rem;
		line-height: 1.25;
		letter-spacing: .1em;
	}
	
	.g-side .g-menu__item a.is-focus__active {
		color: #294197;
		font-weight: 700;
		background: #f5f6f9;
	}
	
	.g-side .g-menu__item a.is-focus__active .g-menu__name {
		font-weight: 700;
	}
	
	.g-side .g-menuBanner__items {
		margin: 40px 0 0;
	}
	
	.g-pickupBanner__items {
		margin: 20px 0 0;
	}
	
	.g-pickupBanner__item {
		margin: 10px 0 0;
	}
	
	.g-pickupBanner__item a {
		color: #fff;
		display: block;
		position: relative;
	}
	
	.g-pickupBanner__item a:hover {
		color: #fff;
	}
	
	.g-pickupBanner__title {
		text-shadow: 0 0 3px rgba(0,0,0,.5);
		padding-right: 10px;
		position: absolute;
		top: 15px;
		left: 15px;
		z-index: 10;
	}
	
	.g-pickupBanner__title small {
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.25;
		display: block;
	}
	
	.g-pickupBanner__title em {
		font-size: 2rem;
		line-height: 1.35;
		margin: .25em 0 0;
		display: block;
	}
	
	.g-pickupBanner__image {
		background-size: cover;
		background-position: center;
		padding: 46.275% 0 0;
		position: relative;
		overflow: hidden;
	}
	
	.g-pickupBanner__image:after {
		content: '';
		width: 100%;
		height: 100%;
		display: block;
		background: rgba(0,0,0,.35);
		position: absolute;
		top: 0;
		left: 0;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.g-pickupBanner__image img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	.g-pickupBanner__item a:hover .g-pickupBanner__image:after {
		background: rgba(0,0,0,.1);
	}
	
	
	
	
	
/*
 * Keyvisual
 * ==================================================================================================== */
	.c-kv {
		margin: 60px 0 30px;
		position: relative;
		z-index: 10;
	}
	
	.g-wrapper--primaryPage .c-kv {
		margin-top: 30px;
	}
	
	.g-wrapper--primaryPage .c-kv:after {
		content: '';
		width: 100%;
		height: 200px;
	}
	
	.g-wrapper--primaryPage .c-kv .u-inner {
		position: relative;
	}
	
	.g-wrapper--primaryPage .c-kv figure {
		padding: 220px 0 0;
		position: relative;
		overflow: hidden;
	}
	
	.g-wrapper--primaryPage .c-kv figure img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	.g-wrapper--primaryPage .c-kv .u-title__page {
		color: #fff;
		font-size: 2.2rem;
		text-align: center;
		margin: 5% 0 0;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
		z-index: 10;
	}
	
	.g-wrapper--primaryPage .c-kv .u-title__page:before {
		content: attr(data-en);
		font-size: 5rem;
		font-weight: 300;
		letter-spacing: .1em;
		margin: 0 0 10px;
		display: block;
	}
	
	.g-wrapper--primaryPage .c-kv .u-title__page sup {
		font-size: 2.4rem;
	}
	
	.material-page .g-wrapper--primaryPage .c-kv .u-title__page {
		color: #000;
	}
	
	.c-kv__read {
		font-size: 1.8rem;
		text-align: center;
		margin: 40px 0 0;
	}
	
	.c-kv__read sup {
		font-size: 2rem;
	}
	
	.c-solutionMenu {
		margin: 40px 0 0;
		padding: 15px 80px 40px;
		background: #fff;
	}
	
	.c-solutionMenu__title {
		font-size: 2rem;
		padding-top: 1em;
	}
	
	.c-solutionMenu__items {
		margin: 0 -35px;
		display: flex;
		flex-wrap: wrap;
	}
	
	.c-solutionMenu__item {
		margin: 30px 0 0;
		padding: 0 35px;
	}
	
	.c-solutionMenu__item a:after {
		margin-left: .5em;
		transform: translate(0,-.15em) rotate(90deg);
	}
	
	.c-solutionList .u-title__hi {
		font-size: 2rem;
		font-weight: 400;
		margin-top: 55px;
		position: relative;
	}
	
	.c-solutionList .u-title__hi i {
		font-size: 1.4rem;
		vertical-align: 0;
		margin: 0 0 0 1em;
		display: inline-block;
		opacity: .75;
	}
	
	.u-thumbnailMenu__items {
		margin-top: -45px;
		margin-left: -5px;
		margin-right: -5px;
	}
	
	.c-solutionList .u-thumbnailMenu__item {
		padding-right: 5px;
		padding-left: 5px;
	}
	
/*
	.u-tabContents--solution {
		padding-top: 40px;
	}
*/
	
	.u-tabContents--solution .c-solutionMenu {
		margin-top: 0;
	}
	
	
	
	
	.searchresult-page .c-kv {
		display: none;
	}
	
	.searchresult-page .g-wrapper--primaryPage:after {
		display: none;
	}
	
	.searchresult-page .mt-site-search-result-item__excerpt {
		margin-top: 1em;
	}
	
	
	
	
	
	
	
	
}/* END Media all */


/*20240321*/
.l-buttonList_catetop {

	& .u-buttonList__item {

		& a {
			color: #333;
			font-size: 1.6rem;
			min-height: 80px;
		}
	}
}

.u-taglists {
	margin: 10px 0 0;
	position: relative;
	z-index: 10;
	
	& li {
		margin: 0 1px 1px 0;
		display: inline-block;
	}

	& button {
		color: #294197;
		font-size: 1.4rem;
		line-height: 1;
		white-space: nowrap;
		padding: .25em .5em .5em;
		background: #fff;
		display: inline-block;
		border: 1px solid #294197;
		cursor: pointer;
		
		@media screen and (max-width: 767px) {
			font-size: 1.1rem;
		}

		&:hover {
		}
		
		&:before {
			content: '#';
			margin: 0 .25em 0 0;
			display: inline-block;
		}
	}
}

.l-category_lists {
	padding: 30px 0 120px;
	background: #f5f6f9;
	
	& .items {
		display: flex;
		flex-wrap: wrap;
		
		@media screen and (max-width: 767px) {
			margin-right: -6px;
			margin-left: -6px;
		}
	}
	
	& .item {
		width: calc(100% / 4);
		padding: 6px;
		
		@media screen and (max-width: 767px) {
			width: calc(100% / 2);
		}
	}
	
	& .categorys {
		padding: 20px 0 0;
		display: flex;
		flex-wrap: wrap;
		position: relative;
		z-index: 10;
		
		& li {
			margin: 0 3px 3px 0;
		}
		
		& button {
			color: #294197;
			font-size: 1.3rem;
			line-height: 1;
			white-space: nowrap;
			display: block;
			padding: .35em .75em .5em;
			background: #fff;
			border: 1px solid #294197;
			
			&:hover {
				color: #fff;
				background: #294197;
				border: 1px solid #fff;
			}
			
			&:before {
				content: '#';
			}
		}
	}
	
	& a {
		height: 100%;
		padding: 0 20px 20px;
		background: #fff;
		display: block;
		
		@media screen and (max-width: 767px) {
			padding: 0 10px 10px;
		}
		
		&:hover {
			color: #fff;
			text-decoration: none;
			background: #294197;
			
			& img {
				opacity: .8;
			}
		}
	}
	
	& figure {
		margin: 0 -20px;
		padding: 54.7% 0 0;
		overflow: hidden;
		transform: translateZ(0);
		
		@media screen and (max-width: 767px) {
			margin: 0 -10px;
		}
		
		& img {
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%,-50%);
		}
		
		& + * {
			margin-top: 15px;
			display: block;
		}
	}
	
	& time {
		font-size: 1.2rem;
		text-align: right;
	}
	
	& h3 {
		line-height: 1.35;
		margin: 15px 0 0;
		
		@media screen and (max-width: 767px) {
			font-size: 1.6rem;
			margin: 10px 0 0;
		}
	}
}

.g-side {
	
	& .g-menu__items {
		border-right: 0;
		border-left: 0;
	}
	
	& .g-menu__item {
		position: relative;

		& .opener {
			width: 22px;
			height: 22px;
			margin: 12px 10px 0 0;
			display: block;
			background: #294197;
			position: absolute;
			top: 0;
			right: 0;
			z-index: 10;
			transition: .3s cubic-bezier(.75, 0, .35, 1);

			&:before,
			&:after {
				content: '';
				width: 10px;
				height: 2px;
				background: #fff;
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%,-50%);
				transition: .3s cubic-bezier(.75, 0, .35, 1);
			}

			&:after {
				transform: translate(-50%,-50%) rotate(90deg);
			}
		}

		& > span {
			color: #294197;
			background: #f5f6f9;
			border-left: 1px solid #ddd;
			border-right: 1px solid #ddd;
			padding: 15px 0 15px 20px;
			display: block;
			cursor: pointer;
			transition: .3s cubic-bezier(.75, 0, .35, 1);
			
			& b {
				font-weight: 700;
			}
			
			&:hover,
			&.active {
				color: #fff;
				background: #294197;
				border-left: 1px solid #294197;
				border-right: 1px solid #294197;
				
				& .opener {
					background: #fff;
					
					&:before,
					&:after {
						background: #294197;
					}
				}
			}
			
			&.active {
				
				& .opener {
					
					&:after {
						transform: translate(-50%,-50%) rotate(180deg);
					}
				}
			}

		}

		& .child {
			display: none;
			background: #f5f6f9;

			& ul {}

			& li {
				border-top: 1px solid #ddd;
			}

			& a {
				font-size: 1.3rem;
				line-height: 1.5;
				padding: 5px 10px 5px 20px !important;
				display: block;

				&:hover {
					color: #fff;
					background: #294197;
				}

				@media screen and (max-width: 767px) {
					min-height: 0 !important;

					& br {
						display: none;
					}
				}
			}

			&.active {
				display: block;
			}
		}
	}

	@media screen and (max-width: 767px) {
		& .g-menu__name {
			position: relative !important;
			left: auto !important;
		}
	}
}/*.g-side*/

.c-solution_menu {
	margin-top: 70px !important;
	
	& .u-inner {
		padding: 50px 0 0;
		border-top: 1px solid #D6D6D6;
		
		@media screen and (max-width: 767px) {
			margin-right: 20px;
			margin-left: 20px;
		}
	}
	
	& ul {
		margin: -6px;
		display: flex;
		
		@media screen and (max-width: 767px) {
			margin: 0;
			display: block;
		}
	}
	
	& li {
		padding: 6px;
		flex: 1;
	}
	
	& a {
		min-height: 80px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background: #fff;
		
		&:hover {
			color: #fff;
			text-decoration: none;
			background: #294197;
		}
	}
}

.solution_entry_list-page {
	
	& .g-wrapper {
		padding-bottom: 0;
	}
	
	& .g-main {
		padding-bottom: 60px;
		background: #f5f6f9;
	}
	
	& .l-category_lists {
		padding-bottom: 60px;
	}
	
	& .u-buttonList__item a {
		border: 0;
	}
	
	& .l-category_lists {
		
		& a {
			position: relative;
		}
		
		& figure {
			padding-top: 70%;
			
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}
		
		& .data {
			letter-spacing: .5em;
			width: 100%;
			margin: 0 -20px;
			position: absolute;
			transform: translate(0,-100%);
			
			@media screen and (max-width: 767px) {
				margin-right: -10px;
				margin-left: -10px;
			}
			
			& > div {
				margin: -1px 0 0;
				display: flex;
				flex-wrap: wrap;
				align-items: center;
			}
			
			& p {
				color: #fff;
				font-size: 1.4rem;
				font-weight: 500;
				line-height: 1.25;
				letter-spacing: 0;
				text-align: center;
				white-space: nowrap;
				min-width: 64px;
				min-height: 26px;
				margin: 1px 1px 0 0;
				padding: 0 1em;
				display: flex;
				align-items: center;
				justify-content: center;
				background: #294197;
				position: relative;
			}
			
			& time {
				color: #fff;
				font-size: 1.2rem;
				font-weight: 500;
				letter-spacing: 0;
				white-space: nowrap;
				display: block;
				padding: 10px;
				background: rgba(0,0,0,.2);
			}
		}
		
		& h3 {
			font-size: 1.6rem;
			font-weight: 400;
			
			@media screen and (max-width: 767px) {
				
				& br {
					display: none;
				}
			}
		}
	}
}

.solution-page {
	
	& .g-side .g-menu__item .child li a {
		padding: 10px 10px 10px calc(20px + 1em) !important;
	}
	
	& .g-side .g-menu__item a {
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
		
		&:hover {
			color: #fff;
			background: #294197;
			border-left: 1px solid #294197;
			border-right: 1px solid #294197;
			opacity: 1;
		}
	}
	
	& .g-side .g-menu__item .child li.category_name {

		& a {
			color: #294197;
			font-weight: 700;
			padding-left: 20px !important;
			
			&:hover {
				color: #fff;
			}
		}
	}
}


/*
 * Slick Plugin - Reset
 * ==================================================================================================== */
.slick-dots {
	position: absolute;
	bottom: 0;
	z-index: 10;
}
