/*---------------------------------
	newsPickup start
---------------------------------*/
.newsPickup{
	width: 100%;
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
}

.newsPickupItem{
	margin-bottom: 1.5em;
}

.newsPickupItem_link,
.newsPickupItem_link:hover{
	color: inherit;
}

.newsPickupItem_link:hover{
	text-decoration: underline;
}

.newsPickupItem_inner{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.newsPickupItem_date{
	flex-grow: 0;
	flex-shrink: 0;
	width: 6em;
	padding: 0.25em 1em 0.25em 0;
	margin: 0;
}

.newsPickupItem_category{
	flex-grow: 0;
	flex-shrink: 0;
	width: 8em;
	padding: 0.25em 1em;
	border-left: 1px solid #000;
	margin: 0;
}

.newsPickupItem_title{
	flex-grow: 1;
	flex-shrink: 1;
	padding: 0.25em 1em;
	border-left: 1px solid #000;
	margin: 0;
}

.newsPickupItem_description{
	flex-grow: 1;
	flex-shrink: 1;
	padding: 0.25em 0 0.25em 1em;
	border-left: 1px solid #000;
	margin: 0;
}

@media(max-width: 1024px){
	.newsPickupItem_inner{
		flex-wrap: wrap;
	}
	.newsPickupItem_title{
		flex-grow: 1;
		flex-shrink: 1;
		width: auto;
		margin-bottom: 1em;
		padding: 0.25em 0 0.25em 1em;
	}
	.newsPickupItem_description{
		width: 100%;
		padding: 0.25em 0;
		border: none;
	}
}

@media(max-width: 600px){
	.newsPickupItem_category{
		flex-grow: 1;
		flex-shrink: 1;
		width: auto;
	}
	.newsPickupItem_title{
		width: 100%;
		margin: 0.5em 0;
		padding: 0.25em 0;
		border: none;
	}
}

/*---------------------------------
	newsPickup end
---------------------------------*/

/*---------------------------------
	serviceOtherItems start
---------------------------------*/
.serviceOtherItems{
	display: flex;
	align-items: stretch;
	flex-wrap: nowrap;
	padding: 1.5em;
	background-color: rgba(31,78,121,0.1);
}

@media(max-width: 1024px){
	.serviceOtherItems{
		flex-direction: column;
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
}

.serviceOtherItems_container{
	flex-grow: 0;
	flex-shrink: 0;
	width: calc(100% / 4);
	padding: 0.5em;
}

@media(min-width: 1025px){
	.serviceOtherItems_container{
		border-right: 1px solid rgba(0,0,0,0.25);
	}
	
	.serviceOtherItems_container:first-of-type{
		border-left: 1px solid rgba(0,0,0,0.25);
	}
}

@media(max-width: 1024px){
	.serviceOtherItems_container{
		width: 100%;
		padding: 1em 0.5em;
		border-bottom: 1px solid rgba(0,0,0,0.25);
	}
	
	.serviceOtherItems_container:last-of-type{
		border-bottom: none;
	}
}

.serviceOtherItems_list{
	margin: 0;
	padding: 0;
}

.serviceOtherItems_listItem{
	position: relative;
	list-style: none;
	padding-left: 1em;
}

.serviceOtherItems_listItem:before{
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}

/*---------------------------------
	serviceOtherItems start
---------------------------------*/

/*---------------------------------
	serviceAzbilBannar start
---------------------------------*/
.serviceAzbilBannar{
	display: flex;
	justify-content: center;
}

.serviceAzbilBannar_link{
	transition: opacity 0.25s;
}

.serviceAzbilBannar_link:hover{
	opacity: 0.5;
}

.serviceAzbilBannar_image{
	display: block;
	width: auto;
	max-width: 100%;
}

/*---------------------------------
	serviceAzbilBannar end
---------------------------------*/

/*---------------------------------
	flowList start
---------------------------------*/
.flowListItem{
	position: relative;
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.flowListItem:not(:last-of-type){
	margin-bottom: 3rem;
}

@media(max-width: 600px){
	.flowListItem{
		flex-direction: column;
	}
	
	.flowListItem:not(:last-of-type):after{
		content: "down";
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		font-size: 125%;
		line-height: 3rem;
		color: #CCC;
		font-family: 'LigatureSymbols' !important;
		-webkit-text-rendering: optimizeLegibility;
		-moz-text-rendering: optimizeLegibility;
		-ms-text-rendering: optimizeLegibility;
		-o-text-rendering: optimizeLegibility;
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
		-moz-font-smoothing: antialiased;
		-ms-font-smoothing: antialiased;
		-o-font-smoothing: antialiased;
		font-smoothing: antialiased;
		-webkit-font-feature-settings: "liga" 1, "dlig" 1;
		-moz-font-feature-settings: "liga=1, dlig=1";
		-ms-font-feature-settings: "liga" 1, "dlig" 1;
		-o-font-feature-settings: "liga" 1, "dlig" 1;
		font-feature-settings: "liga" 1, "dlig" 1;
	}
}

.flowListItem_head{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 110%;
	margin: 0;
	padding: 1em;
}

.flowListItem_head--1{
	background-color: rgba(31,78,121,0.25);
}

.flowListItem_head--2{
	background-color: rgba(31,78,121,0.35);
}

.flowListItem_head--3{
	background-color: rgba(31,78,121,0.45);
}

.flowListItem_head--4{
	background-color: rgba(31,78,121,0.55);
}

.flowListItem_head--5{
	color: #FFF;
	background-color: rgba(31,78,121,0.65);
}

.flowListItem_head--6{
	color: #FFF;
	background-color: rgba(31,78,121,0.75);
}

@media(min-width: 601px){
	.flowListItem_head{
		width: 30%;
	}
	
	.flowListItem:not(:last-of-type) .flowListItem_head:after{
		content: "down";
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		font-size: 125%;
		line-height: 3rem;
		color: #CCC;
		font-family: 'LigatureSymbols' !important;
		-webkit-text-rendering: optimizeLegibility;
		-moz-text-rendering: optimizeLegibility;
		-ms-text-rendering: optimizeLegibility;
		-o-text-rendering: optimizeLegibility;
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
		-moz-font-smoothing: antialiased;
		-ms-font-smoothing: antialiased;
		-o-font-smoothing: antialiased;
		font-smoothing: antialiased;
		-webkit-font-feature-settings: "liga" 1, "dlig" 1;
		-moz-font-feature-settings: "liga=1, dlig=1";
		-ms-font-feature-settings: "liga" 1, "dlig" 1;
		-o-font-feature-settings: "liga" 1, "dlig" 1;
		font-feature-settings: "liga" 1, "dlig" 1;
	}
}

@media(max-width: 600px){
	.flowListItem_head{
		width: 100%;
	}
}

@media(min-width: 601px){
	.flowListItem_detail{
		padding: 1em 1em 1em 3em;
	}
}

@media(max-width: 600px){
	.flowListItem_detail{
		padding: 1em;
		background-color: rgba(31,78,121,0.05);
	}
}
.flowListItem_texts p{
	margin: 0 0 0.5em;
}

/*---------------------------------
	flowList end
---------------------------------*/

/*---------------------------------
	reworkMerit start
---------------------------------*/
.reworkMerit{
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: nowrap;
}

@media(max-width: 1024px){
	.reworkMerit{
		flex-direction: column;
	}
}

.reworkMerit_arrow{
	align-self: center;
}

.reworkMerit_arrow:before{
	content: "right";
	font-size: 300%;
	color: #1F4E79;
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
}

@media(max-width: 1024px){
	.reworkMerit_arrow:before{
		content: "down";
	}
}

.reworkMerit_item{
	width: calc((100% - 6em) / 2);
	padding: 3em 2em 3em;
}

@media(max-width: 1024px){
	.reworkMerit_item{
		width: 100%;
	}
}

.reworkMerit_item--before{
	background-color: rgba(31,78,121,0.1);
}

.reworkMerit_item--after{
	color: #FFF;
	background-color: rgba(31,78,121,0.7);
}

.reworkMerit_title{
	font-size: 125%;
	text-align: center;
	margin-bottom: 2em;
}

.reworkMerit_list{
	list-style: none;
	padding: 0;
	margin: 0 0 3em
}

.reworkMerit_list li{
	position: relative;
	padding-left: 2em;
	margin-bottom: 1.5em;
}

.reworkMerit_list li:before{
	content: "checkbox";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 200%;
	line-height: 100%;
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
}

.reworkMerit_item--before .reworkMerit_list li:before{
	color: #888;
}

.reworkMerit_item--after .reworkMerit_list li:before{
	color: #FF9E42;
}

.reworkMerit_notice{
	font-size: 95%;
}

.reworkMerit_noticeTitle{
	position: relative;
	margin: 0 0 0.25em;
	padding-left: 1em;
}

.reworkMerit_noticeTitle:before{
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.reworkMerit_noticeText{
	margin: 0 0 0.25em;
	padding-left: 1em;
}

/*---------------------------------
	reworkMerit end
---------------------------------*/

/*---------------------------------
	reworkMeritTextsPSE start
---------------------------------*/
.reworkMeritTextsPSE{
	display: inline-block;
	width: 2em;
	margin: 0 0.25em;
}

/*---------------------------------
	reworkMeritTextsPSE end
---------------------------------*/

/*---------------------------------
	manufacturersList start
---------------------------------*/
.manufacturersList{
	list-style: none;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}

@media(max-width: 600px){
	.manufacturersList{
		flex-direction: column;
	}
}

.manufacturersList li{
	position: relative;
	padding: 0.75em 1em 0.75em 2.5em;
	border-bottom: 1px solid #000;
}

@media(min-width: 601px){
	.manufacturersList li{
		width: calc(100% / 2 - 2em - 1px);
		margin: 0 1em 1em;
	}
}

@media(max-width: 600px){
	.manufacturersList li{
		width: 100%;
		margin: 0 0 1em;
	}
}

.manufacturersList li:before{
	content: "check";
	position: absolute;
	top: 0.125em;
	left: 0.25em;
	font-size: 200%;
	line-height: 100%;
	color: #1F4E79;
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
}

.manufacturersList_products{
	display: block;
	margin: 0.75em 0 0;
	font-size: 75%;
}

/*---------------------------------
	manufacturersList end
---------------------------------*/

/*---------------------------------
	sidePhotoLayout--corporateMessage start
---------------------------------*/
.sidePhotoLayout--corporateMessage{
	align-items: center;
}

@media(min-width: 1025px){
	.sidePhotoLayout--corporateMessage .sidePhotoLayout_content{
		margin-top: -1em;
	}
}

/*---------------------------------
	sidePhotoLayout--corporateMessage end
---------------------------------*/

/*---------------------------------
	companyOverviewTable start
---------------------------------*/
.companyOverviewTable{
	width: 100%;
}

.companyOverviewTable tr{
	border-bottom: 1px solid #CCC;
}

.companyOverviewTable th,
.companyOverviewTable td{
	padding: 1.5em 1em;
	font-weight: var(--fontWeightBold);
}

@media(min-width: 601px){
	.companyOverviewTable th{
		width: 25%;
	}
}

@media(max-width: 600px){
	.companyOverviewTable tr{
		display: block;
		padding: 0.5em 0;
	}
	
	.companyOverviewTable th,
	.companyOverviewTable td{
		display: block;
		width: 100%;
		padding: 0.25em 0.5em;
	}
}

/*---------------------------------
	companyOverviewTable end
---------------------------------*/

/*---------------------------------
	companyPhilosophyCatch start
---------------------------------*/
.companyPhilosophyCatch{
	padding: 0.5em 1em;
	font-size: 125%;
	text-align: center;
	background-color: rgba(31,78,121,0.1);
}

.companyPhilosophyCatch_text{
	margin: 0.5em 0;
}

/*---------------------------------
	companyPhilosophyCatch end
---------------------------------*/

/*---------------------------------
	sectionImageBand--companyPhilosophy start
---------------------------------*/
@media(min-width: 1025px){
	.sectionImageBand--companyPhilosophy{
		height: 30vw;
	}
}

/*---------------------------------
	sectionImageBand--companyPhilosophy end
---------------------------------*/

/*---------------------------------
	greetingMessage start
---------------------------------*/

.greetingMessage{
	display: flex;
	flex-direction: column;
	gap: 3em;
	width: 100%;
	margin: 0;
	padding-left: 30%;
	color: var(--mainTextColor);
}

.greetingTexts{
	margin: 0;
}

.greetingTexts > p:last-child{
	margin-bottom: 0;
}

.greetingName{
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: flex-start;
	gap: 0.75em;
	margin: 0;
}

.greetingNameText{
	margin: 0;
	text-align: right;
}

.greetingName--strong{
	font-size: 125%;
	font-weight: var(--fontWeightBold);
}

/*---------------------------------
	greetingMessage end
---------------------------------*/

/*---------------------------------
	companyHistory start
---------------------------------*/
.companyHistoryItem{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
	margin-bottom: 3em;
}

.companyHistoryItem_month{
	text-align: right;
}

@media(min-width: 601px){
	.companyHistoryItem_year{
		flex-grow: 0;
		flex-shrink: 0;
		width: 9em;
		margin-right: 1em;
		padding: 0.25em 0;
	}
	
	.companyHistoryItem_month{
		flex-grow: 0;
		flex-shrink: 0;
		width: 3em;
		margin-right: 1.5em;
		padding: 0.25em 0;
	}
	
	.companyHistoryItem_detail{
		flex-grow: 1;
		flex-shrink: 1;
		padding: 0.25em 0 1em 1.5em;
		border-left: 1px solid #FFF;
	}
}

@media(max-width: 600px){
	.companyHistoryItem{
		flex-wrap: wrap;
		margin: 0;
		padding: 1.5em 0.5em;
		border-bottom: 1px solid #FFF;
	}
	
	.companyHistoryItem_year{
		flex-grow: 0;
		flex-shrink: 0;
		margin: 0 1.5em 0.5em 0;
	}
	
	.companyHistoryItem_month{
		flex-grow: 0;
		flex-shrink: 0;
		margin: 0 0 0.5em;
	}
	
	.companyHistoryItem_detail{
		flex-grow: 0;
		flex-shrink: 0;
		width: 100%;
	}
}

/*---------------------------------
	companyHistory end
---------------------------------*/

/*---------------------------------
	companyOfficeTable start
---------------------------------*/
.companyOfficeTable{
	width: 100%;
}

.companyOfficeTable tr{
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}

.companyOfficeTable th,
.companyOfficeTable td{
	font-weight: var(--fontWeightBold);
}

@media(min-width: 601px){
	.companyOfficeTable_title{
		width: 20%;
		font-size: 125%;
		padding: 0.5em 1em;
	}
	
	.companyOfficeTable_info{
		width: 40%;
		padding: 1em 1em;
	}
	
	.companyOfficeTable_map{
		width: 40%;
		padding: 1em 1em;
	}
}

@media(max-width: 600px){
	.companyOfficeTable tr{
		display: block;
		padding: 1em 0.5em;
	}
	
	.companyOfficeTable th,
	.companyOfficeTable td{
		display: block;
		width: 100%;
	}
	
	.companyOfficeTable_title{
		font-size: 125%;
		margin-bottom: 0.5em
	}
	
	.companyOfficeTable_info{
		margin-bottom: 0.5em;
	}
	
	.companyOfficeTable_map{
	}
}

.companyOfficeTable_gmapWrapper{
	position: relative;
	width: 100%;
	padding-top: calc(100% / 4 * 3);
}

.companyOfficeTable_gmapWrapper iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*---------------------------------
	companyOfficeTable end
---------------------------------*/

/*---------------------------------
	recaptchaV2Wrapper start
---------------------------------*/
.recaptchaV2Wrapper > div{
	display: flex;
	justify-content: center;
}

/*---------------------------------
	recaptchaV2Wrapper end
---------------------------------*/

/*---------------------------------
	bannerBlocks start
---------------------------------*/

.bannerBlocks{
	--cols: 3;
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: flex-start;
	gap: 1.5em 0;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

@media(max-width: 600px){
	.bannerBlocks{
		--cols: 1;
		width: 80%;
		flex-direction: column;
	}
}

.bannerBlocksLink,
.bannerBlocksLink:hover{
	display: block;
	width: calc(100% / var(--cols));
	margin: 0;
	color: inherit;
	text-decoration: none;
}

.bannerBlocksLayout{
	display: block;
	width: 100%;
	position: relative;
}

.bannerBlocksImage{
	display: block;
	width: 100%;
	position: relative;
	z-index: 1;
}

.bannerBlocksImage:before{
	content: "";
	display: block;
	padding-top: 57.7%;
}

@media(max-width: 600px){
	.bannerBlocksImage:before{
		padding-top: 41.4%;
	}
}

.bannerBlocksImage:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0,0,0,0.2);
	opacity: 0;
	z-index: 2;
	transition: opacity 0.5s;
}

.bannerBlocksLink:hover .bannerBlocksImage:after{
	opacity: 1;
}

.bannerBlocksImage img{
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	z-index: 1;
}

.bannerBlocksText{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 0 0.5em;
	margin: 0;
	padding: 0.25em 1.5em;
	background-color: rgba(0,0,0,0.6);
	color: #FFF;
	position: absolute;
	bottom: 1em;
	left: 0;
	z-index: 2;
}

.bannerBlocksText p{
	display: block;
	margin: 0;
	color: inherit;
}

.bannerBlocksText:after{
	content: "right";
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
}

/*---------------------------------
	bannerBlocks end
---------------------------------*/

/*---------------------------------
	serviceLinks start
---------------------------------*/

.serviceLinks{
	--cols: 4;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	gap: 1.5em 0;
	width: 100%;
	margin: 0;
	padding: 0;
}

@media(max-width: 1024px){
	.serviceLinks{
		--cols: 2;
	}
}

.serviceLinksItem,
.serviceLinksItem:hover{
	display: block;
	width: calc(100% / var(--cols));
	margin: 0;
	color: inherit;
	text-decoration: none;
}

.serviceLinksInner{
	display: block;
	width: 100%;
	padding: 1.5em 0 0;
	position: relative;
}

.serviceLinksImage{
	display: block;
	width: 100%;
	height: 30vh;
	position: relative;
	overflow: hidden;
	background-color: #FFF;
	z-index: 1;
}

@media(max-width: 1024px){
	.serviceLinksImage{
		height: 20vh;
	}
}

.serviceLinksImage img{
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	z-index: 1;
	transition: transform 0.5s, opacity 0.5s;
}

.serviceLinksItem:hover .serviceLinksImage img{
	transform: scale(1.05);
	opacity: 0.8;
}

.serviceLinksText{
	position: absolute;
	top: 0;
	left: 1.25em;
	z-index: 2;
	padding: 1em 2em;
	background-color: rgba(162,215,221,0.8);
}

@media(max-width: 600px){
	.serviceLinksText{
		left: 1em;
		padding: 0.5em 2em;
	}
}

.serviceLinksText p{
	margin: 0;
	color: var(--mainTextColor);
	font-weight: var(--fontWeightBold);
	font-size: 125%;
}

@media(max-width: 600px){
	.serviceLinksText p{
		font-size: 112.5%;
	}
}

/*---------------------------------
	serviceLinks end
---------------------------------*/

/*---------------------------------
	bannerButtons start
---------------------------------*/

.bannerButtons{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	gap: 1em 1.5em;
	margin: 0 auto;
	padding: 0;
}

.bannerButtons > *{
	display: block;
	width: calc((100% - (1.5em * 2)) / 3);
	overflow: hidden;
	min-width: 0;
}

@media(max-width: 960px){
	.bannerButtons > *{
		width: calc((100% - 1.5em) / 2);
	}
}

@media(max-width: 540px){
	.bannerButtons > *{
		width: 100%;
	}
}

/*---------------------------------
	bannerButtons end
---------------------------------*/

/*---------------------------------
	columnTable start
---------------------------------*/

.columnTable{
	--cols: 2;
	--gapX: 3em;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.75em var(--gapX);
	width: 100%;
}

.columnTableItem{
	width: calc((100% - (var(--gapX) * (var(--cols) - 1))) / var(--cols));
	table-layout: auto;
	border: hidden;
}

.columnTableItem th{
	vertical-align: top;
	width: auto;
	padding: 0 1em 0 0;
	white-space: nowrap;
	border: hidden;
	color: var(--mainTextColor);
	font-weight: var(--fontWeightBold);
}

.columnTableItem td{
	vertical-align: top;
	padding: 0;
	border: hidden;
	color: var(--mainTextColor);
}

.columnTableItem tr:not(:first-of-type) th,
.columnTableItem tr:not(:first-of-type) td{
	padding-top: 0.75em;
}

@media(max-width: 600px){
	.columnTable{
		flex-direction: column;
		gap: 1em;
	}
	.columnTableItem{
		width: 100%;
		table-layout: fixed;
	}
	.columnTableItem th,
	.columnTableItem tr:not(:first-of-type) th{
		width: 100%;
		display: block;
		padding: 0;
		padding-bottom: 0.25em;
	}
	.columnTableItem tr:not(:first-of-type) th{
		padding-top: 1em;
	}

	.columnTableItem td,
	.columnTableItem tr:not(:first-of-type) td{
		width: 100%;
		display: block;
		padding: 0 0 0 0.5em;
	}

}

/*---------------------------------
	columnTable end
---------------------------------*/

/*---------------------------------
	textTable start
---------------------------------*/

.textTable,
.textTable tbody{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.5em;
	width: 100%;
	border: hidden;
	margin: 0;
}

.textTable tr{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 1em 1.5em;
	width: 100%;
	margin: 0;
	padding: 0;
}

.textTable th{
	vertical-align: top;
	width: auto;
	padding: 0;
	white-space: nowrap;
	border: hidden;
	color: var(--mainTextColor);
	font-weight: var(--fontWeightBold);
	flex-grow: 0;
	flex-shrink: 0;
}

.textTable td{
	vertical-align: top;
	padding: 0;
	border: hidden;
	color: var(--mainTextColor);
	flex-grow: 1;
	flex-shrink: 1;
}

/*---------------------------------
	textTable end
---------------------------------*/

/*---------------------------------
	donateText start
---------------------------------*/

.donateText{
	--color: var(--mainTextColor);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 1em;
	width: max-content;
	max-width: 100%;
	margin: 0 auto;
}

.donateTextIntro{
	margin: 0;
	color: var(--color);
}

.donateTextInner{
	color: var(--color);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 0.5em;
	margin: 0;
	padding: 1em 2em 1.25em;
	color: var(--color);
	border: 1px solid var(--color);
	background-color: rgba(0,0,0,0.2);
}

.donateTextTitle{
	display: block;
	margin: 0;
	color: inherit;
	font-size: 112.5%;
	font-weight: var(--fontWeightBold);
}

.donateTextList{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
	padding: 0;
	list-style: none;
}

/*---------------------------------
	donateText end
---------------------------------*/

/*---------------------------------
	purchaseFormBar start
---------------------------------*/

.purchaseFormBar{
	width: 100%;
	margin: 0 0 3em;
	background-color: #EFEFEF;
}

.purchaseFormBarContent{
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: flex-start;
	gap: 0;
	width: 90%;
	max-width: 1050px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.purchaseFormBarItem{
	display: flex;
	flex-wrap: nowrap;
	align-items: baseline;
	justify-content: center;
	gap: 0 0.5em;
	width: calc(100% / 3);
	font-size: 125%;
	padding: 0 1em;
	position: relative;
	overflow: hidden;
}

@media(max-width: 600px){
	.purchaseFormBarItem{
		font-size: 100%;
	}
}

.purchaseFormBarItem:after{
	content: "";
	display: block;
	width: 1em;
	height: 100%;
	position: absolute;
	top: 50%;
	right: 0;
	background-image: url("../../images/common/arrow.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: right center;
	transform: translateY(-50%) scaleY(110%);
}

.purchaseFormBarItem.prev:after{
	background-image: url("../../images/common/arrowPrev.svg");
}

.purchaseFormBarItem:last-child:after{
	background-image: url("../../images/common/arrowFinish.svg");
}

.purchaseFormBarItem > *{
	margin: 0;
	padding: 0.75em 0;
}

.purchaseFormBarItem.active{
	background-color: #BFBFBF;
}

.purchaseFormBarItem:before{
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	font-size: 112.5%;
	line-height: 1;
}

.purchaseFormBarItem--input:before{
	content: "pen";
}

.purchaseFormBarItem--conf:before{
	content: "file";
}

.purchaseFormBarItem--finish:before{
	content: "check";
}

/*---------------------------------
	purchaseFormBar end
---------------------------------*/

/*---------------------------------
	translateMessage start
---------------------------------*/

body:not(.translated) .translateShow{
	display: none;
}

body.translated form{
	cursor: default;
	pointer-events: none;
	position: relative;
	filter: grayscale(1);
	user-select:none;
	-webkit-user-select:none;
	-ms-user-select: none;
	-moz-user-select:none;
	-khtml-user-select:none;
	-webkit-user-drag:none;
	-khtml-user-drag:none;
}

body.translated form *{
	cursor: default;
	pointer-events: none;
	-webkit-user-select:none;
	-ms-user-select: none;
	-moz-user-select:none;
	-khtml-user-select:none;
	-webkit-user-drag:none;
	-khtml-user-drag:none;
}

body.translated form:before{
	content: "";
	position: absolute;
	top: -1.5em;
	right: -1.5em;
	bottom: -1.5em;
	left: -1.5em;
	background-color: rgba(76,76,76,0.3);
}

/*---------------------------------
	translateMessage end
---------------------------------*/

/*---------------------------------
	telfax start
---------------------------------*/
.telfax{
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1em 1.5em;
	width: 100%;
}

.telfax_item{
	margin: 0;
}

.telfax_no{
	font-size: 200%;
	margin: 0;
	white-space: nowrap;
}

/*---------------------------------
	telfax end
---------------------------------*/
