@charset "utf-8";



/* @ test 221013 */
.g-contents > :not(.not-stack) + *{
	margin-top: 30px !important;
}
.g-contents > .side-idx{
	line-height: 1.5;
	font-size: 1rem;
	margin: auto !important;
}
/* @ test 221013 */



/* absorb @ normalize */
body{
	line-height: inherit;
	font-family: inherit;
	color: inherit;
}
footer{
	border-top: inherit;
}
@media (min-width: 641px){
	body{
		font-size: inherit !important;
		/* min-width: auto; */
	}
	footer nav,
	footer nav ul li,
	footer nav ul li:last-child{
		float: inherit;
		margin: 0;
	}
	footer nav ul::before,
	footer nav ul::after{
		content: none;
	}
}
@media (max-width: 640px){
	body{
		font-size: 71.42%;
	}
}

/* and more ... */



/* absorb @ base */

/* todo @ only pc */
/*
header{
	background: inherit;
	position: inherit;
}
footer{
	background: inherit;
	border-top: inherit;
}
footer nav{
	float: inherit;
	width: inherit;
	font-size: inherit;
}
footer nav ul:before, footer nav ul:after{
	content: inherit;
	display: inherit;
}
footer nav ul li{
	float: inherit;
	margin: inherit;
}
footer nav ul li:last-child{
	margin: inherit;
}
footer nav ul li a{
	color: inherit;
	text-decoration: inherit;
}
 */


/* 一世代前：再定義 */
@media (min-width: 641px){
	.g-contents{
		font-size: 62.5%;
		/* margin-top: 0 !important; */
	}
	/* .g-contents:not(.g-contents--plain-fontsize){
		font-size: 62.5%;
	} */
}
@media (max-width: 640px){
	.g-contents--plain-fontsize{
		font-size: 1rem;
	}
}



/* 二世代前：再定義 */
@media (min-width: 641px){
	#wrap{
		font-size: 12px;
	}
}




/* ++++++++++++++++++
 @ 旧コンテンツの仕様変更
++++++++++++++++++ */

/* @ social media account */
@media (min-width: 641px){
	.social-policy-account{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 0 30px;
	}
}

/* @ support > download > catalog  */
@media (min-width: 641px){
	.support .download_detail ul{
		display: flex;
		flex-wrap: wrap;
	}
	:not(:lang('ja')) .support .download_detail ul li strong {
		min-height: 73px;
	}
	.support .download_detail figure{
		position: relative;
		z-index: 0;
		width: fit-content;
		margin-inline: auto;
	}
	.support .download_detail figure > span{
		position: absolute !important;
		inset: .5em auto auto .5em !important;
	}
	.support .download_detail figure > span + br{
		display: none;
	}
	.support .download_detail ul li img.thumbs{
		margin-top: 0;
		height: 189px;
		border: 1px solid black;
		margin-bottom: 4px;
		box-shadow: 3px 3px 5px -1px #666666;
	}
}
@media (max-width: 640px){
	.support .download_detail ul li{
		padding-inline: 8vw;
	}
	.support .download_detail ul li article{
		width: 74%;
	}
	.support .download_detail ul li img.thumbs {
		width: 95%;
		border: 1px solid black;
		margin-bottom: 3px;
		box-shadow: 1px 1px 3px -1px #666666;
	}
}

/* @ support > end.html */
@media (min-width: 769px){
	.support .discontinued_detail a {
		line-height: 1.5;
		padding: 1em;
	}
}

/* @ support > sidemenu */
.support .support_pagelist{
	display: none;
}

/* @ registry > form */
.registry.form :is(input, select) + *{
	margin-top: .5em;
}
@media (max-width: 640px){
	.registry.form :is(input, textarea){
		font-size: 16px;
	}
	.registry.form tr{
		display: grid;
		padding-block: 1em;
	}
	.registry.form th{
		display: flex;
		align-items: flex-start;
	}
	.registry.form th em{
		padding: 0 .5em;
	}
	.registry.form * + fieldset{
		margin-top: 1em;
	}
}

/* @ contact form */
/* /contact/english/catalog.html */
@media (max-width: 640px){
	.contactus form fieldset{
		margin-inline: 20px;
	}
	.contactus form fieldset .c-input1{
		margin-left: 0;
	}
	.contactus form label{
		white-space: normal;
	}
	.Item{
		padding-left: 0 !important;
	}
}

/* @ login form */
.login_form .login_faq dt a{
	padding-right: 3.75rem;
}