@charset "UTF-8";
/*----------------------------------------------------------------
1. Common
----------------------------------------------------------------*/
html{
	font-size:14px;
}
body{
	font-family:"メイリオ", Meiryo,  "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: 'M PLUS 1p', sans-serif;
	margin:0;
	padding:0;
	background-color:white;
}
body #fader{
	position: fixed;
	display: block;
	height: 100%;
	width: 100%;
	visibility: hidden;
	opacity: 0;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
body.sending #fader{
	visibility: visible;
	opacity: 1;
	background-color: rgba(0,0,0,0.7);
	z-index: 1000;
}

.container{
	max-width:1080px;
	margin:0 auto;
}
.dropshadow{
	box-shadow:rgba(0, 0, 0, 0.3) 1px 1px 5px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.3) 1px 1px 5px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.3) 1px 1px 5px 0px;
}
a{
	color:#333;
}
a:hover{
	color:#67a200;
}
.active a{
	color:#333;
}
a img{
	border:0;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
a:hover img{ border:0; opacity:0.8; }


.hidden{
	display:none;
}

input:focus, select:focus, textarea:focus{
	outline: none;
}

/*----------------------------------------------------------------
2. Header
----------------------------------------------------------------*/
#outsideName{
	display: none;
}
body.outside #outsideName{
	display: inline-block;
}

body.outside header#global{
	background-color: #244031;
}
header#global{
	background-color:#333;
	margin-bottom:20px;
}
header#global .logo{
	padding:0.75rem 0;
	color:white;
}
header#global .logo h1{
	font-family: 'Bebas Neue', cursive;
	display:block;
	margin:0;
	padding:0;
	display: flex;
	line-height: 2.5rem;
	gap: 20px;
	font-size:2.5rem;
	font-weight:normal;
	align-items: center;
}

header#global .logo h1 #outsideName{
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic Pro', Osaka, メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 1.2rem;
	border: 1px solid white;
	line-height: 100%;
    padding: 2px 5px;
    align-self: center;

}

header#global .logo h1 a{
	color:white;
	text-decoration:none;
	display:block;
}
header#global .logo p{
	display:block;
	margin:0;
}

/*----------------------------------------------------------------
3. Left Side
----------------------------------------------------------------*/

/*----------------------------------------------------------------
4. Right Side
----------------------------------------------------------------*/

/*----------------------------------------------------------------
5. Aside
----------------------------------------------------------------*/
aside{
	font-size:12px;
	margin-bottom:20px;	
}

/* Pankuzu */
aside nav.pankuzu{
	display:block;
	max-width:1080px;
	margin:0 auto;
}
aside nav.pankuzu ul{
	margin:0;
	padding:0;
	border-radius:0;
	display:block;
	padding:0px 5px;
	overflow:hidden;
	background-color:white;
}
aside nav.pankuzu ul li{
	display:block;
	float:left;
	padding:5px 25px 5px 15px;
	font-size:12px;
	background-image:url(../images/arrow-blue-right.png);
	background-repeat:no-repeat;
	background-size:7px;
	background-position:center right;
}
aside nav.pankuzu ul li:last-child{
	background-image:none;
	padding-right:10px;
}
aside nav.pankuzu ul li a{
	text-decoration:none;
	display:ablock;
}

/* Processing */
aside.processing{
	opacity: 0;	
	visibility: hidden;
	position: fixed;
	width: 60px;
	height: 60px;
	background-color: rgba(255,255,255,0.5);
	border-radius: 50%;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	z-index: 100000;
}
aside.processing .mark{
	border-radius: 50%;
	width: 56%;
	height: 56%;
	left: 22%;
	top:22%;
	position: absolute;
	background-image: url(../images/icon-update.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	animation: sending-mail 2.5s linear infinite;
	animation-fill-mode:both;
	animation-delay:0s;
}
body.sending aside.processing{
	visibility: visible;
	opacity: 1;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
@keyframes sending-mail{
	0% { transform:rotate(0deg); }
	100% { transform:rotate(365deg); }
}


/* Error */
aside.notice{
	position:fixed;
	padding:0;
	background-color:white;
	box-sizing:border-box;
	overflow:hidden;
	bottom:0;
	font-size: 1.25rem;
	height: 100%;
	width:100%;
	margin:0;
	color:white;
	background-color:rgba(0,0,0,0.5);
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;	
	visibility: hidden;
	opacity:0;
	z-index: 1000;
}
aside.notice section{
	display:block;
	margin:5px;
}
aside.notice section.error{
	display:none;
	margin:0 auto;
	max-width:1080px;
	margin:0 auto;
	box-sizing:border-box;
	overflow:auto;
	position: absolute;
	padding: 1rem;
	font-family: -apple-system, BlinkMacSystemFont, 游ゴシック体, 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic Pro', Osaka, メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	border-radius: 5px;
	color: #333;
	background-color: rgba(255,255,255,0.9);
	box-shadow:0px 0px 2px rgba(10,10,10,0.2);
	box-sizing: border-box;
}
body.sending-error aside.notice{
	visibility: visible;
	opacity:1;
}
body.sending-error aside.notice section.error{
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);	
	display:block;
}
@keyframes fadeout {
0% { bottom:0; }
70% { bottom:0; }
100% {bottom:-100px; }
}

/* Hint */
aside.popup{
	position: absolute;
	display:block;
	font-size:0.85rem;
	background-color:#333;
	color:#eee;
	padding:0.5rem;
	border-radius:5px;
	width: 350px;
	position:absolute;
	box-shadow:0px 0px 2px rgba(0,0,0,0.5);
	visibility:hidden;
	opacity:0;
	z-index:100;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	cursor: pointer;
	z-index: 1000;
}
aside.popup.active{
	visibility: visible;
	opacity: 1;
}
aside.popup p{
	display: block;
	margin: 0;
	padding: 0;
	margin-right: 0.5rem;
}
aside.popup .close{
	background-color: white;
	border: 1px solid #333;
	border-radius: 50%;
	width: 26px;
	height: 26px;
	background-image: url(../images/icon-close.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 26px;
	position: absolute;
	right: -13px;
	top: -13px;
}
aside.popup .close:hover{
	background-color: #333;
	background-image: url(../images/icon-close-w.png);
}


/*----------------------------------------------------------------
6. Main Contents
----------------------------------------------------------------*/
main{
	margin: 0 20px;
	margin-bottom:20px;
}

/* Contents Header */
main header{
	overflow:hidden;
}
main header section.data{
	width:42%;
	float:left;
}
main header section.data div.row{
	overflow:hidden;
	position:relative;
	padding:1rem;
	padding-left:40%;
	background-color: #efefef;
	margin-bottom: 0.5rem;
	border-radius: 8px;
}
main header section.data div.row:last-child{
	border-bottom:0;
}
main header section.data div.row strong{
	position:absolute;
	top: 50%;
	left:0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	font-weight:normal;
	display:block;
	width:38%;
	text-align:right;
}
main header section.data div.row input{
	padding:0.5rem;
	border:0;
	background-color:#efefef;
	width:100%;
	border-radius:0;
	box-sizing: border-box;
	border: 0;
	border-left: 1px solid #aaa;
	font-size: 1rem;
}

main header section.data div.row input[name='item_number']{
	cursor: not-allowed;
	caret-color: #efefef;
}
main header section.data .helmetName{
	font-size: .5rem;
	text-align: right;
	margin: .2rem .2rem .6rem .2rem;
	line-height: 120%;
}

main header section.preview{
	width:55%;
	float:right;
	position:relative;
	margin-bottom: 40px;
}

main header section.preview:before{
	content: "ヘルメットプレビュー";
	width: 100%;
	display: block;
	position: absolute;
	bottom: -40px;
	right: 0;
	border-top: 1px solid #ddd;
	text-align: center;
    padding: 10px 0 0 0;
	font-weight: bold;
}
main header section.preview .result{
	display: none;
	position:absolute;
	top:5%;
	left:5%;
	overflow: auto;
	display: block;
	position: absolute;
	padding: 0.07rem 1rem;
	border-radius: 5px;
	background-color: white;
	font-family:'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
main header section.preview.done .result{
	display: block;
}
main header section.preview.none .result{
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	opacity: 0.8;
	background-color: #5a99d0;
	color:white;
	font-size:1.8rem;
}
main header section.preview.needfill .result{
	top: 10%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	opacity: 0.8;
	background-color: #eca14a;
	color:white;
	font-size:1.2rem;
}
main header section.preview.note .result{
	top:auto;
	bottom:0;
	left: auto;
	right:0;
	opacity: 0.8;
	border-radius:0;
	background-color:#f5ddd2;
	color:#c40018;
	font-size:0.8rem;
	margin:0;
	padding:0.2rem 0.5rem;
}

main header section.preview.unavailable .result{
	background-color: #5a99d0;
	color: white;
}


main header section.preview figure{
	margin:0;
	display:block;
	box-sizing:border-box;
	padding:0;
	min-height:400px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
main header section.preview .updatePreview{
	position: absolute;
	top: 10px;
	width: 100%;
	text-align: center;
	margin: 0 auto;
}
main header section.preview .updatePreview .mark{
	position: static;
	margin: 0 0 0 auto ;
	width: 40px;
	height: 40px;
	background-color:#009dff;
	background-repeat:no-repeat;
	background-image:url(../images/icon-check.png);
	background-position:center center;
	background-size:70%;
	border-radius:50%;
	box-sizing:border-box;
}


main header section.preview.modified .updatePreview .mark{
	background-image:url(../images/icon-update-gray.png);
	background-color: #efefef;
	border:1px solid #666;
	cursor:pointer;
}

main header section.preview.uploading .updatePreview{
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
main header section.preview.uploading .updatePreview .mark{
	margin: 0 auto;
	background-image:url(../images/icon-update-gray.png);
	background-color: white;
	border:2px solid #47d4ff;
	animation: attention 1s linear infinite;
	animation-fill-mode: forwards;
	animation-delay:0s;
	animation-fill-mode: both;
	cursor:pointer;
}

main header section.preview.ready .updatePreview .mark{
	background-image:url(../images/icon-update-orange.png);
	background-color: white;
	border:2px solid #ff6347;
	animation: attention 1s linear infinite;
	animation-fill-mode: forwards;
	animation-delay:0s;
	animation-fill-mode: both;
	cursor:pointer;
}
@keyframes attention{
	0% { transform:rotate(0deg); }
	10% { transform:rotate(50deg);}
	30% { transform:rotate(-50deg);}
	30% { transform:rotate(0deg);}
	100% { transform:rotate(0deg);}
}

main header section.preview.loading .updatePreview .mark{
	margin: 0 auto;
	border:0;
	background-image:url(../images/icon-update.png);
	background-color:#ff6347;
	animation: loading 2.5s linear infinite;
	animation-fill-mode:both;
	animation-delay:0s;
	cursor:pointer;
}
main header section.preview.loading .updatePreview{
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@keyframes loading{
	from { transform:rotate(0); }
	to { transform:rotate(365deg);}
}


main header section.preview:after{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color:#fff;
	animation-fill-mode: both;
	animation-delay:0s;
	z-index: 900;
}
main header section.preview.loading:after{
	opacity: 0;
	animation: fadeout 0.2s linear forwards;
}
main header section.preview.done:after{
	opacity: 1;
	animation: fadein 0.2s linear forwards;
}
@keyframes fadeout{
	0% { opacity:0; }
	100% { opacity:1;}
}
@keyframes fadein{
	0% { opacity:1; }
	100% { opacity:0;}
}



main section{
	display:block;
	margin:0 auto;
	box-sizing:border-box;
	padding:0;
	border-radius:0;
}

/* [CONTROL] Tab Control */
main section.tablist{
	padding:2rem 0;
	box-sizing:border-box;
}
main section.tablist nav{
	overflow:hidden;
}
main section.tablist nav .edit{
	display: none;
}
main section.tablist nav .open-customer{
	display: none;
}
main section.tablist ul{
	display: flex;
	justify-content: center;
	justify-content: flex-end;
	align-items: stretch;
	align-content: stretch;

	list-style-type:none;
	margin:0;
	padding:0;
}
main section.tablist ul li{
	flex-grow:1;
	display:block;
	position:relative;
}
main section.tablist ul li a{
	display:block;
	font-size:1.05rem;
	text-align:center;
	padding:1rem 0;
	cursor:pointer;
	border-radius:5px 5px 0 0;
	margin:4px;
	margin-bottom:0;
	box-sizing:border-box;
	border-bottom:0;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	background-color:white;
	color:#333;
}



main section.tablist ul li.active a{
	background-color:#eaedf1;
	color:#333;
	height: 100%;
}

main section.tablist ul li a:hover{
	border-bottom:0;
}
main section.tablist ul li a:before{
	content:"";
	display:block;
	width:90%;
	height:2px;
	background-color:#5bb7e6;
	position:absolute;
	left:5%;
	top:0;
	opacity:0;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
main section.tablist ul li a:hover:before{
	opacity:1;
}
main section.tablist ul li.writing:after{
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 15px;
	top:0;
	left: 15px;
	background-color:#ff6347;
	color:white;
	border-radius: 50%;
	animation: blink 0.8s linear infinite;
	animation-fill-mode: forwards;
	animation-delay:0s;
	animation-fill-mode: both;
	z-index: 100;
}
main section.tablist ul li.done:after{
	content: "";
	background-image:url(../images/icon-check.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 80%;
	background-color: #009dff;
	position: absolute;
	display: block;
	width: 15px;
	height: 15px;
	top:0;
	left: 15px;
	color:#009dff;
	border-radius: 50%;
	text-align: center;
	font-size: 1rem;
	font-weight: bolder;
}


@keyframes blink{
	0% { opacity:0; }
	70% { opacity:1;}
	71% { opacity:0;}
	100% { opacity:0;}
}

main section.tablist .tab-content{
	padding:2rem;
	background-color:#eaedf1;
	border-radius:5px;
}

main section.tablist .tab-content .close{
	display: none;
}
main section.tablist .tab-content article{
	display:none;
}
main section.tablist .tab-content article.active{
	display:block;
}

main section.tablist article .name-desc-img,
main section.tablist article .name-desc-img{
	display: none;
}
main section.tablist article#left-side .name-desc-img.sidename,
main section.tablist article#right-side .name-desc-img.sidename{
	display: block;
}
main section.tablist article#back .name-desc-img.backname{
	display: block;
}



/* [PARTS] FIELDSET */
main section.tablist fieldset{
	margin:0;
	position:relative;
	padding:1rem;
	padding-left:calc(30% + 1rem);
	text-align:right;
	border:0;
	margin-bottom:0.5rem;
	/* background:linear-gradient(90deg, transparent 0%, transparent 29%, #eaedf1 29%, #eaedf1 29.5%, transparent 29.1%, transparent 100%); */
	background-color:rgba(255,255,255,0.7);
	border-radius:0.5rem;
}
main section.tablist fieldset.exclusive{
	background-image:none;
	background-color:white;
	border-bottom:0;
	box-shadow:0px 0px 1px rgba(10,10,10,0.5);
	border-radius:7px;
	margin-bottom:1rem;
	padding-left: calc(70% + 1rem);
}
main section.tablist fieldset.exclusive strong{
	max-width: 70%;
}

main section.tablist fieldset strong{
	text-align:left;
	position:absolute;
	max-width:30%;
	font-weight:normal;
	top: 50%;
	left: 1rem;
	font-size:1.1rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
main section.tablist fieldset.wide{
	text-align:left;
	padding:1rem;
}
main section.tablist fieldset.wide strong{
	display:block;
	position:static;
	width:auto;
	top:auto;
	left:auto;
	transform: translateY(0);
	-webkit-transform: translateY(0);
	margin-bottom:1rem;
}
main section.tablist fieldset.required strong:after{
	content:"必須";
	background-color:#67a200;
	border-radius:3px;
	padding:0 0.5rem;
	color:white;
	font-size:0.8rem;
	margin-left:0.5rem;
}
main section.tablist fieldset.send_submit{
	background-color: transparent;
	padding-left: 0;
}
main section.tablist fieldset.send_submit .submit.field{
	text-align: center;
}
main section.tablist fieldset.send_submit .submit.field input{
	color: #009dff;
	text-align: center;
    padding: 1rem 2rem;
    font-size: 1.15rem;
    font-weight: bolder;
}


/* [PARTS] Hint */
main section.tablist fieldset.hint strong .mark{
	display:inline-block;
	width:1.25rem;
	height:1.25rem;
	border-radius:50%;
	background-color:#67a200;
	background-size:contain;
	background-repeat:no-repeat;
	background-position:center;
	color:white;
	cursor:pointer;
	text-align:center;
	margin-left:0.5rem;
}
main section.tablist fieldset.hint strong .mark:hover{
	background-color: #8acc18;
}
main section.tablist fieldset strong .quick-view{
	display:none;
}

main section.tablist fieldset.hint.question strong .mark{
	background-image:url(../images/icon-q.png);
}
main section.tablist fieldset.hint.warning strong .mark{
	background-image:url(../images/icon-exclam.png);
}


fieldset .text{
	text-align: left;
	margin-bottom: 0.5rem;
}
fieldset .mini-title{
	font-weight: bolder;
}

/* [PARTS] Seal Sample */
fieldset div.seal-samples{
	overflow: hidden;
	border: 1px solid #ddd;
	padding: 10px;
	margin: 10px 0;
	background-color: white;
	border-radius: 5px;
}
fieldset div.seal-samples figure{
	display: block;
	float: left;
	width: 24%;
	padding: 0;
	margin: 0;
	margin-right: 1.333333333333333%;
	margin-bottom: 5px;
	text-align: center;
}
fieldset div.seal-samples figure:nth-child(4n){
	margin-right: 0;
}
fieldset div.seal-samples figure:nth-child(4n+1){
	clear: both;
}
fieldset div.seal-samples figure img{
	display: block;
	width: 100%;
}
fieldset div.seal-samples figure u{
	display: inline-block;
	text-align-last: left;
	font-size: 0.8rem;
	background-color: #009dff;
	color: white;
	padding: 0 0.5rem;
	text-decoration: none;
	border-radius: 5px;
}


/* [PARTS] Name Seal Sample */
fieldset div.name-seal-samples{
	overflow: hidden;
	border: 1px solid #ddd;
	padding: 10px;
	margin: 10px 0;
	background-color: white;
	border-radius: 5px;
}
fieldset div.name-seal-samples figure{
	display: block;
	float: left;
	width: 19%;
	padding: 0;
	margin: 0;
	margin-right: 1.25%;
	margin-bottom: 5px;
	text-align: center;
}
fieldset div.name-seal-samples figure:nth-child(5n){
	margin-right: 0;
}
fieldset div.name-seal-samples figure:nth-child(5n+1){
	clear: both;
}
fieldset div.name-seal-samples figure img{
	display: block;
	width: 100%;
}
fieldset div.name-seal-samples figure u{
	display: inline-block;
	text-align-last: left;
	font-size: 0.8rem;
	background-color: #009dff;
	color: white;
	padding: 0 0.5rem;
	text-decoration: none;
	border-radius: 5px;
}



/* [PARTS] Color Sample */
fieldset div.color-samples{
	overflow: hidden;
	padding: 10px;
	margin: 10px 0;
	border: 0;
	border-top: 1px solid #ddd;
}
fieldset div.color-samples figure{
	display: block;
	float: left;
	width: 10.22222222222222%;
	padding: 0;
	margin: 0;
	margin-right: 1%;
	margin-bottom: 5px;
	text-align: center;
}
fieldset div.color-samples figure:nth-child(9n){
	margin-right: 0;
}
fieldset div.color-samples figure:nth-child(9n+1){
	clear: both;
}
fieldset div.color-samples figure img{
	display: block;
	width: 100%;
}
fieldset div.color-samples figure u{
	display: inline-block;
	text-align-last: left;
	font-size: 0.85rem;
	color: #009dff;
	padding: 0;
	text-decoration: none;
	border-radius: 5px;
}
fieldset .note{
	clear:both;
	display:block;
	text-align:left;
	float:none;
	font-size:0.8rem;
}

/* [PARTS] Description */
fieldset div.notice{
	background-color:#f5ddd2;
	color:#c40018;
	clear:both;
	margin-bottom:1rem;
	text-align:left;
	padding:0.25rem;
}


/* [PARTS] Description */
fieldset div.description{
	background-color:#fef7f1;
	padding: 0.5rem;
	border: 1px solid orange;
	margin-top:1rem;
	margin-bottom: 1rem;
	text-align:left;
	border-radius: 5px;
}
fieldset div.description p{
	margin:0;
	margin-bottom:1rem;
	padding:0;
	display:block;
}
fieldset div.description span.title{
	font-weight: bolder;
	display: block;
	margin-bottom: 0.5rem;
}
fieldset div.description figure{
	margin:0;
}
fieldset div.description figure .fit{
	width:100%;
	max-width:600px;
}

/* [PARTS] Toggle Switch */
fieldset div.toggle{
	display:inline-block;
	line-height:21px;
}
fieldset div.toggle label{
	width: 50px;
	height: 21px;
	background: #ccc;
	position: relative;
	display:block;
	float:left;
	border-radius: 46px;
	transition: 0.4s;
	box-sizing: border-box;
	margin-right:0.5rem;
	cursor: pointer;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
fieldset div.toggle u{
	text-decoration:none;
}
fieldset div.toggle label::after{
	content: '';
	position: absolute;
	width: 21px;
	height: 21px;
	border-radius: 100%;
	left: 0;
	top: 0;
	z-index: 2;
	background: #fff;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
	transition: 0.4s;
}
fieldset div.toggle input{
	display:none;
}
fieldset div.toggle input:checked + label{
	background-color: #4BD865;
}
fieldset div.toggle input:checked + label::after{
	left:30px;
}

/* [Soft Binded Items] */
fieldset .soft-binded{
	overflow:hidden;
}
fieldset .soft-binded figure{
	display:block;
	width:150px;
	float:left;
	margin:0;
	padding:0;
	margin-right:10px;
}
fieldset .soft-binded figure img{
	width:100%;
	max-width:600px;
}
fieldset .soft-binded ul{
	overflow:hidden;
	display:block !important;
	text-align:left;
	font-size:0.8rem;
}
fieldset .soft-binded ul li{
	display:block;
}
fieldset .soft-binded ul li:before{
	content:"※";
}

/* [PARTS] Checkbox */
fieldset div.checkbox{
	display:inline-block;
	line-height:21px;
	margin-left:1rem;
}
fieldset div.checkbox u{
	text-decoration:none;
}

/* [PARTS] Radio */
fieldset div.radiogroup{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
fieldset div.radio{
	display:inline-block;
	line-height:21px;
}
fieldset div.radio input{
	display:none;
}
fieldset div.radio label{
	background:white;
	border:1px solid #ccc;
	box-sizing:border-box;
	position: relative;
	display:block;
	float:left;
	border-radius: 5px;
	transition: 0.4s;
	box-sizing: border-box;
	padding:0.3rem 0.5rem;
	margin: 0;
	cursor: pointer;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
fieldset div.radio input:checked + label{
	background-color: #4BD865;
	border:1px solid  #4BD865;
}
fieldset div.radio input:checked + label::after{
	left:30px;
}

fieldset div.radio u{
	text-decoration:none;
}


/* [PARTS] Combobox */
fieldset div.combobox{
	display:inline-block;
	margin-left:1rem;
	display: flex;
	align-items: center;
	gap: 10px;
}
fieldset div.combobox u{
	display:block;
	text-decoration:none;
	text-align:left;
	word-break: keep-all;
	white-space: nowrap;
}

/* [PARTS] Textbox */
fieldset div.textbox{
	display:inline-block;
	margin-left:1rem;
	margin-bottom:1rem;
}
fieldset div.textbox u{
	text-decoration:none;
	display:block;
	text-align:left;
	margin-bottom:0.5rem;
}

/* [PARTS] Textarea */
fieldset div.textarea{
	display:inline-block;
	margin-left:1rem;
	margin-bottom:1rem;
}
fieldset div.textarea u{
	text-decoration:none;
	display:block;
	text-align:left;
	margin-bottom:0.5rem;
}


/* [GROUPING] conditionalGroup */
div.conditionalGroup{
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	visibility:hidden;
	opacity:0;
	max-height:0;
	height:auto;
	overflow:hidden;
}
div.conditionalGroup.open{
	opacity:1;
	visibility:visible;
	max-height:3000px;
}

/* [GROUPING] liquidGroup */

fieldset div.liquidGroup div.field{
	width:100%;
	margin-left:0;
	margin-right:0;
	margin-bottom:1rem;
}
fieldset div.liquidGroup div.field:last-child{
	margin-bottom: 0;
}
fieldset div.liquidGroup div.field input,
fieldset div.liquidGroup div.field select,
fieldset div.liquidGroup div.field textarea{
	width:100%;
	box-sizing:border-box;
}
fieldset div.liquidGroup div.field textarea{
	height: 8rem;
}

/* [GROUPING] captionGroup */
fieldset div.captionGroup{
	padding:0 2rem;
	border-left:4px solid transparent;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
fieldset.required div.captionGroup{
	border-left:4px solid tomato;
}
fieldset.required div.captionGroup:before{
	content: "未入力";
	color: red;
	position: absolute;
	left: 25%;
	font-size: 0.75rem;
	top: 0.5rem;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	background-color: white;
	border-radius: 5px;
	border: 1px solid;
	font-weight: bolder;
	padding: 0.02rem 0.25rem;
}
fieldset.required.done div.captionGroup{
	border-left:4px solid #009dff;
}
fieldset.required.done div.captionGroup:before{
	display:none;
}
fieldset div.captionGroup em{
	display:block;
	font-style:normal;
	text-align:left;
	margin-left:-1rem;
	margin-bottom:1rem;
	padding:0.5rem;
}


/* [GROUPING] gridGroup */
fieldset div.gridGroup{
	overflow:hidden;
	text-align:left;
	display: flex;
	gap: 20px;
	margin-bottom:0.5rem;
}
fieldset div.gridGroup div.field{
	float:left;
	display: flex;
	align-items: center;
	margin:0;
	gap: 10px;
	flex-wrap: wrap;
}
fieldset div.gridGroup div.field:last-child{
	margin-bottom: 0;
}
fieldset div.gridGroup div.field input,
fieldset div.gridGroup div.field select{
	width:100%;
	box-sizing:border-box;
}

/*fieldset div.gridGroup.ONE div.field{ width:100%; margin-right:0;}

fieldset div.gridGroup.TWO div.field{ width:49%; margin-right:2%;}
fieldset div.gridGroup.TWO div.field:nth-of-type(2n){ margin-right:0; }
fieldset div.gridGroup.TWO div.field:nth-of-type(2n+1){ clear:both; }

fieldset div.gridGroup.THREE div.field{ width:32%; margin-right:2%;}
fieldset div.gridGroup.THREE div.field:nth-of-type(3n){ margin-right:0; }
fieldset div.gridGroup.THREE div.field:nth-of-type(3n+1){ clear:both; }*/


/* [PARTS] File Upload */
fieldset div.imageatach{
	min-height: 240px;
	position:relative;
}
fieldset div.fileatach{
	position:relative;
}

fieldset div.imageatach input,
fieldset div.fileatach input{
	margin-bottom:0.5rem;
}
fieldset div.imageatach u,
fieldset div.fileatach u{
	display: block;
	text-decoration: none;
	text-align: left;
	margin-bottom: 0.5rem;
	word-break: keep-all;
	white-space: nowrap;
}
fieldset div.imageatach:nth-child(4n){
	margin-right:0;
}
fieldset div.imageatach span.preview{
	width:200px;
	height:200px;
	display:block;
	box-sizing:border-box;
	background-repeat:no-repeat;
	cursor: pointer;
	background-position:center center;
	background-size:contain;
	margin-bottom:0.5rem;
	background-color:#efefef;
	border:1px solid #dddddd;
	position: relative;
}
fieldset div.imageatach span.preview:hover{
	border:1px solid #6f99be !important;
}
fieldset div.imageatach input[type="file"] {
	display:none;
}
fieldset div.imageatach span.preview:after{
	content:"";
	background-image:url(../images/icon-cross.png);
	display:block;
	width:80px;
	height:80px;
	left:calc(50% - 40px);
	top:calc(50% - 40px);
	box-sizing:border-box;
	background-position:center;
	background-repeat:no-repeat;
	border-radius:50%;
	background-color:rgba(255,255,255,0.8);
	background-size:80%;
	position:absolute;
}
fieldset div.imageatach span.preview:hover:after{
	background-color:#6f99be;
	
}
fieldset .imageatach.loading span.preview{
	background-image:url(../images/loading.gif);
}
fieldset .imageatach span.preview.changed{
	border:1px solid #6f99be !important;
}
fieldset .imageatach span.preview{
	background-image:none;
}
fieldset .imageatach.atached span.preview{
	background-image:url('../images/icon-file.png');
}
fieldset .imageatach div.file-atached span.preview:after,
fieldset .imageatach div.image-atached span.preview:after,
fieldset .imageatach div.file-deleting span.preview:after{
	display:none;
}
fieldset .imageatach div.file-deleting span.preview:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.3);
	background-image:url(../images/icon-trash-white.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:40px;
}
fieldset div.imageatach.on .toolbar,
fieldset div.fileatach.on .toolbar{
	overflow:hidden;
	text-align:right;
}
fieldset .imageatach.on .toolbar span.close,
fieldset .fileatach.on .toolbar span.close{
	display:inline-block;
	border-radius:5px;
	color:white;
	padding:6px;
	box-sizing:border-box;
	cursor:pointer;
	background-image:url(../images/icon-trash.png);
	background-size:15px;
	background-position:center center;
	background-repeat:no-repeat;
	background-color:#efefef;
	border:1px solid #ddd;
	width:60px;
	height:60px;
}
fieldset div.imageatach.on .toolbar span.close:after,
fieldset div.fileatach.on .toolbar span.close:after{
	color:#333;
	font-size:11px;
	background-image:none;
}
fieldset .imageatach.on .toolbar span.close:hover,
fieldset .fileatach.on .toolbar span.close:hover{
	background-image:url(../images/icon-trash-on.png);
}
fieldset div.imageatach.on .toolbar span.close:hover:after,
fieldset div.fileatach.on .toolbar span.close:hover:after{
	color:#6f99be;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

fieldset .imageatach label.imageclear,
fieldset .fileatach label.imageclear{
	display:none;
	cursor:pointer;
}
fieldset .imageatach label.imageclear,
fieldset .fileatach label.imageclear{
	color:#666;
	display:none;
}
fieldset .imageatach label.imageclear:before{
	content:"登録済みの画像を消去";
}
fieldset .fileatach label.imageclear:before{
	content:"登録済みのファイルを消去";
}

fieldset .imageatach.atached label.imageclear,
fieldset .fileatach.atached label.imageclear{
	height:20px !important;
	box-sizing:border-box;
	text-align:center;
	background-color:#efefef;
	margin:0;
	border-radius: 5px;
	float: none;
	padding: 1px 6px;
	display:block;
}
fieldset .imageatach.atached.on label.imageclear,
fieldset .fileatach.atached.on label.imageclear{
	display:none;
}

fieldset .imageatach.file-deleting label.imageclear,
fieldset .fileatach.file-deleting label.imageclear{
	background-color:#6f99be;
	color:white;
	display:block;
}

fieldset .imageatach input.imageclear,
fieldset .fileatach input.imageclear{
	position:absolute;
	display:block;
	left:0;
	top:0;
	opacity:0;
}
fieldset .imageatach span.clear,
fieldset .fileatach span.clear{
	cursor:pointer;
	display:none;
	margin-left:5px;
	background-color:white;
	color:#6f99be;
	border-radius:5px;
	padding:0px 5px;
	box-sizing:border-box;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
/* Field */
.field b{
	display:block;
	padding:10px 5px;
	position:absolute;
	left:0;
	top:0;
	font-weight:normal;
	text-align:right;
	width:100px;
}
.field input,
.field textarea{
	border:1px solid #ddd;
	background-color:#efefef;
	border-radius:5px;
	padding:6px 5px;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.field .group{
	padding:5px;
	display:inline-block;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:1px solid #ddd;
	border-radius:5px;
}

.data .field select{
	border: 0;
	border-left:1px solid #aaa;
	outline: none;
	border-radius: 0;
}
.field select{
	width: 100%;
	border:1px solid #aaa;
	background-color:#efefef;
	padding:6px 5px;
	-ms-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border-radius: 5px;
}
.field label{
	display:inline-block;
	margin-right:15px;
}
.field .inputed{
	background-color:white;
}
.field .changed{
	border:1px solid #6f99be;
	color:#6f99be;
}
.field .fieldset.filled.found-empty input{
	border:1px solid orange;
	color:#6f99be;
}
.field .error{
	border:1px solid orange !important;
	color:#6f99be;
}
.field .must{
	border:1px solid tomato !important;
	color:#6f99be;
}


.field .long{
	width:80%;
}
.field .wide{
	width:90%;
}
.field .short{
	width:30%;
}
.field .amount{
	width:5ex;
	text-align:right;
	margin-right:5px;
}
.field .currency{
	width:8ex;
	text-align:right;
	margin-right:5px;
	margin-left:5px;
}
.field .currency.total{
	width:16ex;
}
.field .row strong input{
	width:100%;
}



/* Thanks */
.thanks main header{
	text-align: center;
	border: 1px solid #333;
	margin: 4rem auto;
	width: 60%;

}
.thanks main header h2{
	font-weight: normal;
	margin: 0;
	padding: 4rem 0 3rem;
	display: block;
	text-align: center;
	font-size: 2rem;
}
.thanks main header p{
	margin: 0 auto;
	display: block;
	text-align: center;
	width: 80%;
	margin-bottom: 3rem;
}
.thanks main header u.estimate_number{
	margin: 0 auto;
	text-align: center;
	display: inline-block;
	padding: 0.5rem 2rem;
	text-decoration: none;
	background-color: #efefef;
	margin-bottom: 3rem;
	font-size: 1.35rem;
	letter-spacing: 2px;

}



/*----------------------------------------------------------------
7. Footer
----------------------------------------------------------------*/
footer{
	display:block;
}
footer small{
	display:block;
	text-align:center;
	font-size:8px;
	padding:5px 0;
}





/*----------------------------------------------------------------
8. SMP
----------------------------------------------------------------*/
@media screen and (max-width: 736px) {

	html, body{
		width:100%;
		font-size: 0.8rem;
		position:relative;
		-webkit-overflow-scrolling: touch;
	}
	body #fader{
		position: fixed;
		display: block;
		height: 100%;
		width: 100%;
		visibility: hidden;
		opacity: 0;
		-ms-transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	body.open #fader{
		visibility: visible;
		opacity: 1;
		background-color: rgba(0,0,0,0.7);
		z-index: 1000;
	}
		
	/* HEADER */
	header#global{
		margin-bottom:0;
		min-width:0;
		width: 100%;
		overflow:visible;
		z-index:1;
	}
	header#global .logo h1{
		margin:0;
		letter-spacing:0;
		text-emphasis: center;
		font-size: 1.5rem;
		width:100%;
		line-height: 1rem;
	}
	header#global .logo h1 a{
		text-align: center;
		display: block;
	}
	header#global .logo p{
		text-align: center;
		display: none;
		width: 100%;
	}

	
	/* CONTENTS */
	main{
		margin: 0;
	}
	main header{
		margin: 0;
	}
	main header section.data{
		margin: 5px;
		float: none;
		width: auto;
		font-size: 0.9rem;
	}
	main header section.data .helmetName{
		text-align: left;
		margin: .2rem .2rem .6rem 0;
	}
	main header section.data .datalist{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	main header section.data div.row{
		background-color: transparent;
		padding: 0;
		margin-bottom: 2px;
		display: flex;
		flex-direction: column;
		width: 48%;
		justify-content: end;
		border-radius: 0;
		margin-bottom: .5rem;
	}

	main header section.data div.row strong{
		position: static;
		width: auto;
		text-align: left;
		top: auto;
		left: auto;
		transform: none;
		margin-bottom: 0;
	}
	main header section.data div.row:nth-child(1),
	main header section.data div.row:nth-child(3){
		order: -1;
	}
	main header section.data div.row:nth-child(2){
		width: 100%;
	}
	main header section.data div.row strong br{
			display: none;
	}
	main header section.data div.row input{
		font-size: 1rem;
		display: block;
		border: 0;
		line-height: 100%;
		padding: 1rem 0.5rem;
	}
	main header section.data div.row select{
		padding: 1rem 0.5rem;
		line-height: 100%;
	}
	main header section.preview{
		float: none;
		width: auto;
		margin: 0 10px;
		padding-bottom: 20px;
	}
	main header section.preview figure{
		min-height: auto;
		display: block;
		position: relative;
	}
	main header section.preview figure:before {
		content:"";
		display: block;
		padding-top: 75%; /* 高さを幅の75%に固定 */
	}
	main header section.preview figure .container{
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
	}
	main header section.preview.needfill .result{
		width: 90%;
		border-radius: 0;
		text-align: center;
		top: auto;
		bottom: 0;
		font-size: 1rem;
	}
	main header section.preview:before{
		bottom: 0;
		padding: 0;
		z-index: 10;
		border: 0;

	}
	#content {
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
	}

	main header section.preview.none .result{
		font-size: 1.2rem;
	}
	main header section.preview .updatePreview .mark{
		width: 30px;
		height: 30px;
	}
	main section.tablist{
		position: relative;
		margin: 0 10px;
		padding: 0;
		margin-top: 20px;
	}
	main section.tablist nav{
		position: static;
		bottom: 0;
		width: 100%;
		background-color: #009afa;
		overflow: visible;
	}
	main section.tablist nav ul{
		flex-wrap: wrap;
	}
	main section.tablist nav ul li{
		width: 16.66666666666667%;
		background-color: white;
		box-sizing: border-box;
		border-right: 0.5px solid #bbb;
	}
	main section.tablist nav ul li:nth-child(1){
		background-image: url(../images/icon-helmet-front.png);
		background-size: 60%;
		background-position: center 15%;
		background-repeat: no-repeat;
	}
	main section.tablist nav ul li:nth-child(2){
		background-image: url(../images/icon-helmet-left.png);
		background-size: 60%;
		background-position: center 15%;
		background-repeat: no-repeat;
	}
	main section.tablist nav ul li:nth-child(3){
		background-image: url(../images/icon-helmet-right.png);
		background-size: 60%;
		background-position: center 15%;
		background-repeat: no-repeat;
	}
	main section.tablist nav ul li:nth-child(4){
		background-image: url(../images/icon-helmet-back.png);
		background-size: 60%;
		background-position: center 15%;
		background-repeat: no-repeat;
	}
	main section.tablist nav ul li:nth-child(5){
		background-image: url(../images/icon-helmet-line.png);
		background-size: 60%;
		background-position: center 15%;
		background-repeat: no-repeat;
	}
	main section.tablist nav ul li:nth-child(6){
		background-image: url(../images/icon-helmet-seal.png);
		background-size: 60%;
		background-position: center 15%;
		background-repeat: no-repeat;
	}
	main section.tablist ul li.writing:after{
		top: -15px;
		left: 50%;
		width: 10px;
		height: 10px;
		transform:  translateX(-50%);
		-webkit-transform: translateX(-50%);

	}
	main section.tablist nav ul li:last-child{
		display: none;
	}
	main section.tablist nav ul li:last-child a{
		color: white;
		padding: 0.2rem;
		font-size: 1.1rem;
		margin: 1rem;
	}
	main section.tablist nav ul li:nth-child(6){
		border-right: 0;
	}
	main section.tablist nav ul li.active{
		background-color: #009dff;
		border-right: 0;
	}
	main section.tablist nav ul li a{
		margin: 0;
		background-color: transparent;
		font-weight: bolder;
		border-radius: 0;
		font-size: 0.9rem;
		padding-top: 40px;
		line-height: 100%;
		padding: 40px 0 5px;
	}
	main section.tablist nav ul li.active a{
		color: white;
	}
	main section.tablist ul li a:before{
		left: 0;
		right: 0;
		width: 100%;
		border: 0;
		height: 0;
		border: 1px solid white;
		display: none;
	}
	main section.tablist ul li.done:after{
		top: -10px;
		left: 50%;
		transform:  translateX(-50%);
		-webkit-transform: translateX(-50%);
	}
	main section.tablist nav ul li.active a{
		background-color: transparent;
	}
	main section.tablist nav .edit{
		display: block;
		background-color: white;
		border: 4px solid #009dff;
		overflow: hidden;
	}
	main section.tablist nav .edit .button{
		color: #009dff;
		display: block;
		margin: 1rem;
		padding: 0.2rem;
		font-size: 1.1rem;
		text-align: center;
		cursor: pointer;
		letter-spacing: 2px;
		font-weight: bolder;
	}
	main section.tablist nav .open-customer{
		display: none;
		background-color: white;
		overflow: hidden;
		text-align: center;
		cursor: pointer;
		visibility: hidden;
		opacity: 0;
		-ms-transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	main section.tablist nav .open-customer.active{
		display: block;
		visibility: visible;
		opacity: 1;
	}
	main section.tablist nav .open-customer .button{
		color: white;
		background-color: #dc143c;
		display: block;
		padding: 1rem 1.5rem;
		margin-top: 5px;
		font-size: 1.1rem;
		text-align: center;
		cursor: pointer;
		letter-spacing: 2px;
		font-weight: bolder;
		border: 4px solid #dc143c;
	}

	main section.tablist .tab-content{
		visibility: hidden;
		opacity: 0;
		height: 0;
		-ms-transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
		position: fixed;
		top: 10px;
		right: 10px;
		left: 10px;
		bottom: 10px;
		box-sizing: border-box;
		padding: 10px;
		z-index: 1000;
		box-shadow:0px 0px 5px rgba(10,10,10,0.5);
		background-color: white;
	}
	main section.tablist .tab-content.open{
		visibility: visible;
		height: auto;
		opacity: 1;
	}
	main section.tablist .tab-content  > .close{
		position: fixed;
		bottom: 30px;

		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		text-align: center;
		width: 85%;
		height: auto;
		padding: 10px;
		border-radius: 5px;
		box-sizing: border-box;
		background-color: #333;
		/*background-image: url(../images/icon-update.png);*/
		background-repeat: no-repeat;
		background-position: center;
		background-size: 80%;
		cursor: pointer;
		z-index: 1000;
		font-size: 1.1rem;
	}
	main section.tablist .tab-content  > .close:before{
		content: "適用して閉じる";
		color: white;
	}
	main section.tablist .tab-content.open > .close{
		display: block;
	}
	main section.tablist .tab-content .scroll-area{
		-webkit-overflow-scrolling: touch;
		display: block;
		overflow: auto;
		height: 100%;
		position: relative;
	}
	main section.tablist .tab-content article{
		margin-bottom: 40px;
	}
	main section.tablist fieldset strong {
		position: static;
		display: block;
		width: 100%;
		max-width: inherit;
		transform: translateY(0);
		-webkit-transform: translateY(0);
		margin:0;
		margin-bottom: 0.5rem;
		font-weight: bolder;
		background-color: #efefef;
		font-weight: bolder;
		box-sizing: border-box;
		border-radius: 5px;
		padding: 5px 0;
	}
	main section.tablist fieldset > strong{
		background-color: transparent;

	}
	main section.tablist fieldset{
		padding: 0;
		text-align: left;
		border-radius: 0;
		background-color: transparent;
		margin-bottom: 1rem;
		padding-bottom: 1.5rem;
		border-bottom: 2px solid #ddd;
	}
	
	main section.tablist fieldset:last-child{
		border-bottom: 0;
	}
	main section.tablist fieldset.exclusive{
		background-color: transparent;
		box-shadow: none;
		padding-left: 0;
	}
	main section.tablist fieldset.exclusive strong{
		max-width: none;
	}
	main section.tablist fieldset.required strong:after{
		font-size: 0.5rem;
		padding: 0 0.25rem;
	}

	aside.popup{
		width: auto;
	}
	aside.notice section.error{
		width: 80%;
		font-size: 1rem;
	}

	fieldset div.color-samples figure u{
		margin-top: 2px;
		padding: 0;
		background-color: transparent;
		color: #009dff;
	}
	fieldset div.name-seal-samples figure u{
		padding: 0 0.25rem;
		font-size: 0.7rem;
		margin-top: 2px;
	}
	fieldset div.seal-samples figure u{
		padding: 0 0.25rem;
		font-size: 0.7rem;
		margin-top: 2px;
	}
	

	fieldset .soft-binded figure{
		width:100px;
		float:none;
		margin:0 auto;
	}
	fieldset .soft-binded{
		margin:1rem 0;

	}


	fieldset div.liquidGroup div.field:last-child{
		margin-bottom: 0;
	}
	div.conditionalGroup{
		background-color: white;
		padding: 10px;
		border-radius: 10px;
	}
	div.conditionalGroup.open{
		box-sizing: border-box;
	}
	fieldset div.captionGroup{
		padding: 0 0 0 10px;
		border: 0;
	}
	fieldset div.captionGroup em{
		display: block;
		margin: 0;
		margin-bottom: 1rem;
		padding: 0;
		font-weight: bolder;
	}

	fieldset.required div.captionGroup:before{
		top:0;
		left:auto;
		right:0;
		transform:translateY(0);
		-webkit-transform:translateY(0);
	}

	fieldset.required.done div.captionGroup{
		background-color:transparent;
		border: 0;
	}
	fieldset div.gridGroup{
		flex-direction: column;
		gap: 0px;
	}
	fieldset div.gridGroup div.field{
		width: 100%;
		float: none;
		gap: 10px;
		margin:0;
	}
	fieldset div.gridGroup.THREE div.field{
		width: 100%;
	}

	fieldset div.radiogroup{
		overflow: hidden;
		gap: 5px;
	}
	fieldset div.radio{
		width: 100%;
		margin: 0;
		margin-right: 10px;
		margin-bottom: 10px;
		float: left;
	}
	fieldset div.radio:last-child{
		margin-bottom: 0;
	}
	fieldset div.radio label{
		margin-right: 0;
		width: 100%;
	}
	fieldset div.description figure img{
		display: block;
		width: 100%;
	}
	fieldset div.gridGroup div.field{
		margin-bottom: 5px;
	}
	fieldset div.gridGroup.THREE div.field{
		margin-bottom: 0.5rem;
	}

	fieldset div.imageatach u,
	fieldset div.fileatach u{
		white-space: normal;
	}

	fieldset div.imageatach{
		flex-direction: column;
		justify-content: start;
		text-align: left;
	}
	fieldset div.imageatach u{
		display: flex;
		align-self: start;

	}
	fieldset div.imageatach u br{
		display: none;
	}

	fieldset div.imageatach span.preview{
		width: 100%;
	}
	fieldset div.imageatach span.preview:after{
		width: 40px;
		height: 40px;
		left: calc(50% - 20px);
    	top: calc(50% - 20px);
	}

	fieldset div.liquidGroup div.field{
		flex-direction: column;
		align-items: start;
	}
	
	
	main section.tablist fieldset.send_submit .submit.field input{
		border:2px solid #009dff ;
		box-sizing: border-box;
	}

	
	/* FIELD */
	.field{
		padding:0;
	}
	.field b{
		display:block;
		position:static;
		width:20%;
		text-align:right;
		position:absolute;
		padding:5px 0;
	}
	.field input,
	.field textarea,
	.field select{
		box-sizing:border-box;
		-webkit-appearance:none;
	}
	.field input[type=text],
	.field textarea,
	.field select{
		width:100%;
	}
	.field input[type=radio]{
		-webkit-appearance:radio;
		border:inherit;
	}
	.field input[type=checkbox]{
		-webkit-appearance:checkbox;
		border:inherit;
	}
	.field select{
		padding:6px 5px;
		background-image:url(../images/arrow-black-down.png);
		background-repeat:no-repeat;
		background-position:96% center;
		background-size:8px;

	}

	.field .group{
		padding:3px;
	}
	.alert .field.control input.button-basic{
		padding:0 !important;
	}
	.field .wide{
		width:100%;
	}
	.field .currency{
		width:9ex !important;
	}
	.field .amount{
		/*width:6ex !important;*/
	}
	.field label{
		display: inline;
		margin-right:10px;
	}
	
	/* FOOTER */
	footer small{
		font-size:6px;
	}
	

	/* Thanks */
	.thanks main header{
		text-align: center;
		border: 1px solid #333;
		margin: 2rem auto;
		width: 90%;

	}
	.thanks main header h2{
		font-weight: normal;
		margin: 0;
		padding: 4rem 0 3rem;
		display: block;
		text-align: center;
		font-size: 2rem;
	}
	.thanks main header p{
		margin: 0 auto;
		display: block;
		text-align: center;
		width: 80%;
		margin-bottom: 3rem;
	}
	.thanks main header u.estimate_number{
		margin: 0 auto;
		text-align: center;
		display: inline-block;
		padding: 0.5rem 2rem;
		text-decoration: none;
		background-color: #efefef;
		margin-bottom: 3rem;
		font-size: 1.35rem;
		letter-spacing: 2px;

	}


}