﻿@CHARSET "UTF-8";
/*----------------------------------------------------------------------------------------------------------------------
 common style
----------------------------------------------------------------------------------------------------------------------*/

/*---------------------------------------------------
 初期設定
---------------------------------------------------*/
* {
	margin: 0;
	padding: 0;
	outline: 0;
	text-decoration: none;
}

*, :after, :before {
	background-repeat: no-repeat;
	box-sizing: inherit;
}

html {
	-ms-overflow-y: scroll;
	overflow-y: scroll;
	height: 100%;
}

body {
	height: 100%;
	background: rgb(255, 255, 255);
	color: #333333;
	font-family: "Noto Sans Japanese";
	/* font-size: 87.5%; */
	font-weight: 300;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: grayscale;
	-ms-font-smoothing: grayscale;
	margin: 0px;
	padding: 0px;
	word-break: break-all;
	word-wrap: break-word;
}

div {
	margin: 0px;
	padding: 0px;
}

p {
	margin: 0px;
	padding: 0px;
	-ms-word-break: break-all;
	-ms-word-wrap: break-word;
	word-break: break-all;
	word-wrap: break-word;
	line-height: 1.5;
}

h1 {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	font-weight: bold;
}

h2 {
	margin: 0px;
	padding: 0px;
	word-break: break-all;
	font-size: 100%;
	font-weight: bold;
}

h3 {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	font-weight: normal;
}

table {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	/* border: currentColor; */
	border-image: none;
	font-size: inherit;
	/* border-collapse: collapse; */
	border-spacing: 0;
}

caption {
	text-align: left;
}

th {
	margin: 0px;
	padding: 0px;
	text-align: left;
	font-size: 100%;
}

td {
	margin: 0px;
	padding: 0px;
	text-align: left;
	font-size: 100%;
}

* html h1 {
	height: 1%;
}

* html h2 {
	height: 1%;
}

img {
	border: currentColor;
	border-image: none;
}

a img {
	color: rgb(0, 0, 0);
}

dt {
	line-height: 1.5;
}


/*---------------------------------------------------
 clearfix
---------------------------------------------------*/
.cf:before,
.cf:after {
	content: " ";
	display: table;
}

.cf:after {
	clear: both;
}

.cf {
	/* *zoom: 1; */
	text-align: center;
}


/*---------------------------------------------------
 wrapper
---------------------------------------------------*/
#wrapper {
	position: relative;
	width: 100%;
	max-width: 100%;
	height: auto !important;
	min-height: 100%;
	margin: 0px auto;
	/* padding: 0px 0px 20px; */
}

/*---------------------------------------------------
 header
---------------------------------------------------*/
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 614px;
	z-index: 300;
	background-color: #fff;
}

#headerBox {
	width: 100%;
	height: 0px;
}

#serviceTitleBox {
	width: 100%;
	border-bottom: 1px solid #d6d6d6;
}

.serviceTitle {
	width: 767px;
	color: #e60012;
	font-size: 30px;
	vertical-align: middle;
	margin: 10px auto;
}

/*--- header logo style ---*/
#logoImgBox {
	background-color: rgb(255, 255, 255);
	height: 0px;
}

#logoTextBox {
	background-color: rgb(200, 100, 95);
	height: 0px;
}

#logoMainText {
	font-size: 14px;
	color: rgb(255, 255, 255);
	font-weight: bold;
}

#logoSubCode {
	font-size: 8px;
	color: rgb(255, 255, 255);
}

#logoTextArea {
	margin-left: 10px;
}
/*--- end header logo style ---*/

/*---------------------------------------------------
 footer
---------------------------------------------------*/
footer {
	width: 100%;
	height: 60px;
	position: absolute;
	left: 0;
	bottom: 0;
	margin-top: 0px;
	border-top: 2px solid #cccccc;
}

#footer {
	width: 100%;
	height: 60px;
	position: absolute;
	left: 0;
	bottom: 0;
	margin-top: 0px;
	border-top: 2px solid #cccccc;
}

#footerContetnts {
	width: 760px;
	display: block;
	margin: 10px auto 0 auto;
}

.footerText {
	text-align: center;
	margin: 0 auto;
	font-size: 10px;
	color: rgb(0, 0, 0);
	line-height: 1.5em;
	padding: 3px 0;
}

#pageTop {
	position: fixed;
	z-index: 999;
	display: none;
	bottom: 60px;
	right: 10px;
	width: 50px;
	height: 50px;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 5px;
	box-shadow: 0px 7px 10px 0px rgba(0, 0, 0, 0.4);
	transition: all 0.2s ease;
	cursor: pointer;
}

#pageTop:after {
	content: '';
	display: block;
	-webkit-transform: rotate(-45deg) translateY(-50%);
	-ms-transform: rotate(-45deg) translateY(-50%);
	transform: rotate(-45deg) translateY(-50%);
	top: 25px;
	right: 5px;
	border-top: 2px solid;
	border-right: 2px solid;
	position: absolute;
	-webkit-transform-origin: 50% 80%;
	-ms-transform-origin: 50% 80%;
	transform-origin: 50% 80%;
	width: 18px;
	height: 18px;
	border-color: #cccccc;
}


/*---------------------------------------------------
 content
---------------------------------------------------*/
#content {
	width: 95%;
	max-width: 640px;
	min-width: 590px;
	margin: 0 auto;
	padding-top: 0px;
	padding-bottom: 82px;
	font-size: 13px;
}

.contentsHorizon {
	width: 100%;
	border-top: 1px solid #cccccc;
}

/*---  contents text style ---*/
.titleText {
	font-size: 26px;
	color: #e60012;
	font-weight: 300;
	line-height: 1;
	position: relative;
	display: block;
}

.subTitleText {
	font-size: 16px;
	color: #eeeeee;
	font-weight: 300;
	line-height: ;
	position: relative;
	display: block;
}

.subTitleText:before {
	content: '';
	height: ;
	width: ;
	position: relative;
	left: 0;
	top: 0;
	margin-right: ;
	display: inline-block;
	border-left: 5px solid #e60012;
}

.contentText {
	font-size: 13px;
	color: #333333;
	font-weight: 300;
	line-height: ;
}

.contentTextStrong {
	font-size: 13px;
	color: #dddddd;
	font-weight: 300;
	line-height: ;
}

.cautionText {
	font-size: 10px;
	color: #666666;
	font-weight: 300;
	line-height: ;
	text-indent: -1em;
}

.cautionTextStrong {
	font-size: 14px;
	color: #e60012;
	font-weight: 300;
	line-height: ;
}

.strongText {
	font-weight: 700;
	font-size: 16px;
}

.color333 {
	color: #333333;
}

.color666 {
	color: #666666;
}

.color999 {
	color: #999999;
}

.colorCCC {
	color: #cccccc;
}

.colorFFF {
	color: #ffffff;
}


/*--- end contents text style ---*/


/*--- contents list style ---*/
.contentList.styleRed li:before {
	color: #e60012;
}

.contentList > li:before {
	content: '●';
	display: inline;
	fontsize: 12px;
	margin-right: 9px;
}
/*--- end contents list style ---*/


/*--- contents table style ---*/
.contentsTable {
	width: ;
	height: ;
}

.table_width25 {
	width: 25% !important;
}

.table_width75 {
	width: 75% !important;
}

.contentsTable thead th {
	background-color: #eeeeee;
	border: 1px solid #dddddd;
	vertical-align: top;
	word-break: break-all;
	white-space: normal;
	font-size: 15px;
}

.contentsTable tbody th {
	background-color: #eeeeee;
	border: 1px solid #dddddd;
	vertical-align: top;
	word-break: break-all;
	white-space: normal;
	font-size: 12px;
}

.contentsTable tbody td {
	background-color: #ffffff;
	border: 1px solid #dddddd;
	vertical-align: top;
	word-break: break-all;
	white-space: normal;
	font-size: 12px;
}
/*--- end contents table style ---*/


/*--- contents contentsArea style ---*/
.contentsBox {
	width: ;
	height: ;
	border: 2px solid #ccc;
	overflow: hidden;
	margin: 0 0 0 0;
}
.contentsBox.cautionBox {
	border-color: #ffeeee;
}
.contentsArea {
	width: ;
	height: ;
	border-radius: 10px;
	border: 1px solid #cccccc;
	overflow: hidden;
	margin: 0 0 0 0;
}
/*--- end contents contentsArea style ---*/


/*--- contents caution box style ---*/
.cautinBox {
	border-color: #ffeeee;
}

.contentsArea.cautionBox.titleArea {
	background: #ffeeee;
	border-bottom: 1px solid #ffeeee;
}

.contentsArea.cautionBox.titleArea:before {
	content: '';
	display: inline-block;
	background: url('./img/caution_300.png') center center no-repeat;
	width: ;
	height: ;
	background-size: 100% 100%;
	vertical-align: top;
	position: relative;
	margin-right: ;
	top: 0px;
}
/*--- end contents caution box style ---*/


/*--- contents button style ---*/

.subShadowBtnStyle {
	widht: ;
	height: ;
	font-size: ;
	background-color: ;
	text-shadow: ;
	box-shadow: ;
	border: 1px solid #ccc;
	transition: all 0.2s ease;
}

.subShadowBtnStyle:hover {
	box-shadow: ;
}

.subBtnStyle {
	width: ;
	height: ;
	font-size: ;
	background-color: ;
	color: ;
	border: 1px solid #ccc;
	transition: all 0.2s ease;
}

.subBtnStyle:hover {
	background-color: ;
	color: ;
	border: 1px solid #eee;
}
/*--- end contents btn style ---*/

/*--- contents preference table ---*/

#preferenceTable {
	width: 100%;
	margin: 0;
	padding: 0;
	border-collapse: collapse;
}

#preferenceTable tr {
	text-align: left;
	vertical-align: top;
}

#preferenceTable th {
	padding: 5px;
	border: solid 1px #000000;
	text-align: center;
	background-color: #f0f0f0;
}

#preferenceTable td {
	padding: 5px;
	border: solid 1px #000000;
}

#preferenceTable td.TableDate {
	width: 100%;
	padding-right: 10px;
	text-align: right;
	border: none;
}

.preference_colorBox {
	border: solid 1px #000000;
}

#useCautionBox, #testCautionBox {
	border: 1px solid #ffeeee;
	border-radius: 10px;
	width: 100%;
	margin: 30px auto;
	color: #666;
}

#useCautionBox h2, #testCautionBox h2 {
	font-weight: bold;
	background: #ffeeee;
	border-bottom: 1px solid #ffeeee;
	border-radius: 10px 10px 0 0;
	font-size: 20px;
	padding: 15px 0;
	line-height: 1.8;
	text-align: center;
	vertical-align: middle;
	font-weight: 700;
	color: #333;
	width: 100%;
}

.useCautionMessage, .useCautionText {
	padding: 20px;
}

.useCautionText {
	color: #e60012;
}

.useCautionText:before {
	content: '※';
	color: #e60012;
	font-size: 14px;
}

#useCautionBox h2:before, #testCautionBox h2:before, .cautionPageTitle h2:before {
	content: '';
	display: inline-block;
	background: url(./../img/WARNING_300.png) center center no-repeat;
	width: 34px;
	height: 32px;
	background-size: 100% 100%;
	vertical-align: top;
	position: relative;
	margin-right: 10px;
	top: 3px;
}

#testCautionBox ul {
	margin: 10px 30px;
}

.cautionText1, .cautionText3 {
	margin-bottom: 30px;
}

.testCautionList {
	list-style-type: none;
}

.testCautionmarker:before {
		content: '●';
		color: #e60012;
		font-size: 13px;
}

.cautionIcon {
	width: 40px;
	height: 40px;
}
/*--- end contents preference table ---*/


.headMod01 {
	background: rgb(255, 255, 255);
	padding-bottom: 5px;
	font-size: 114%;
	-ms-zoom: 1;
	width: 100%;
}
.headMod01 .headMod01V01 {
	background: rgb(255, 255, 255);
	padding: 1px;
	border: 1px solid rgb(189, 90, 84);
	border-image: none;
	-ms-zoom: 1;
}
.headMod01 .headMod01V02 {
	background: rgb(200, 100, 95);
	repeat-y: 0px 1px rgb(189, 90, 84);
	padding: 2px 13px;
	-ms-zoom: 1;
}
.headMod01 .headMod01V02 h1{
	max-width: 640px;
	height: 38px;
	line-height: 38px;
	margin: 0 auto;
	color: rgb(255, 255, 255);
}
.headMod01 .headMod01V02 h1 p{
	float: left;
	overflow: hidden;
	max-width: 420px;
	height: 38px;
	line-height: 38px;
	margin: 0 auto;
	color: rgb(255, 255, 255);
}

.headMod01 .inner {
	background: rgb(255,255,255) no-repeat 0px bottom;
	padding: 10px 0px 5px 15px;
	max-width: 640px;
	margin: 0 auto;
}

.contentTitleMess {
	background: rgb(255,255,255) no-repeat 0px bottom;
	padding: 15px 0px 20px;
	margin: 0 auto;
	font-size: 16px;
}

.headMod01 .inner p{
	font-size: 14px;
}

.section01 {
	margin-right: 10px;
	margin-left: 10px;
}
.section01 .indexMargin01 {
	padding: 14px 9px;
}

.indexBox01 {
	width: 100%;
	border: 1px solid #808080;
	background-color: #eeeeee;
	border-collapse: collapse;
}

.indexBox01 .indexBox01M01 {
	width: 95%;
	margin: 0 auto;
	padding: 14px 9px;
}

.indexBox01 .indexBox01M02 {
	padding: 3px 3px;
}

.indexBox01 .indexBox01V01 {
	background: rgb(235, 200, 190);
	repeat-y 0px;
	padding: 10px 9px;
	-ms-zoom: 1;
	border-radius: 10px;
}

.indexBox01 .inner {
	background: rgb(255,255,255) no-repeat 0px bottom;
	padding: 0px 15px 15px;
	width: 95%;
	margin: 0 auto;
}

.indexBox01 .indexBox01Ttl01 {
	border-bottom: 1px solid #808080;
	padding: 5px;
}

.cautionMess {
	width: 100%;
	max-width: 767px;
	margin: 10px auto;
	color: rgb(255, 0, 0);
}

.contentsSentence {
	width: 100%;
	/* margin: 10px 0; */
	margin: 22px 0;
	color: #000000;
	font-size: 16px;
	font-weight: 700;
}

#infoDataTable {
	border: 2px solid rgb(204, 204, 204);
	margin: 20px 0 20px 15px;
	vertical-align: middle;
}

#infoDateTd1 {
	padding: 5px 0px 0px 5px;
	font-size: 14px;
	font-weight: bold;
	vertical-align: middle;
	text-align: left;
}

#infoDateTd2 {
	padding: 0px 0px 5px 5px;
	font-size: 14px;
	font-weight: bold;
	vertical-align: middle;
	text-align: left;
}

#infoDateTd3 {
	padding: 0px 0px 5px 5px;
	font-size: 14px;
	font-weight: bold;
	vertical-align: middle;
	text-align: left;
}

#infoNumber {
	color: rgb(255, 0, 0);
	font-size: 32px;
	font-weight: bold;
	vertical-align: middle;
	text-align: right;
	padding: 12px;
}

#infoSubEx {
	font-size: 12px;
	vertical-align: middle;
	text-align: right;
	padding: 6px;
}

.flowImgBox {
	margin: 0 auto 20px auto;
}

#flowBtnArea {
	width: 500px;
	margin: 10px auto 0 auto;
	text-align: right;
}

#flowImg {
	display: block;
	width: 500px;
	margin: 0 auto;
}

.subMessageUl {
	list-style-type: none;
	list-style-position: inside;
}

.innerText {
	font-size: 12px;
	color: rgb(0, 0, 0);
}

input[type="text"] {
	padding: 5px;
	outline: none;
	border: 1px solid #ccc;
	height: 40px;
	font-family: inhret;
	box-sizing: border-box;
}

input[type="tel"] {
	padding: 5px;
	outline: none;
	border: 1px solid #ccc;
	height: 40px;
	font-family: inhret;
	box-sizing: border-box;
}

select {
	height: 32px;
}

#shopInfoTable {
	width: 100%;
	margin: 0 auto;
	height: 100px;
	border-bottom: 1px solid #cccccc;
	box-sizing: border-box;
}

#shopInfoTable p {
	padding-bottom: 15px;
}

.dotted {
	border-bottom: 1px dotted rgb(34, 34, 34);
}

.btnArea {
	/* max-width: 640px; */
	width: 80%;
	height: auto;
	margin: 50px auto 10px auto;
	text-align: center;
}

.redMess {
	color: rgb(255, 0, 0);
}

.subTextContents {
	font-size: 12px;
	margin: 8px 0;
}

#shopInfoDataBlock {
	width: 520px;
	margin: 0px auto;
	overflow: hidden;
}

#infoBox {
	width: 767px;
	height: 70px;
	padding: 10px;
	margin: 10px auto;
	overflow: hidden;
	border-bottom: 1px solid #cccccc;
}

#shopInfoLeft {
	float: left;
}

#shopInfoRight {
	height: 25px;
	margin-top: 10px;
	float: right;
	overflow: hidden;
}

.shopLeftBlock {
	width: 220px;
	height: 95px;
	overflow: hidden;
	clear: both;
	padding: 15px 0px 0px 30px;
}

#shopTelNum {
	width: 150px;
	height: 48px;
	line-height: 48px;
	font-size: 34px;
	font-weight: bold;
	overflow: hidden;
}

#shopRightSub {
	width: 200px;
	height: 25px;
	line-height: 28px;
	text-align: center;
	font-size: 14px;
	overflow: hidden;
	background-color: #dfdfdf;
	border-radius: 50px;
	display: block;
}

.tableDate {
	padding: 15px 0px;
}

/*
#pageTop {
	position: fixed;
	z-index: 999;
	bottom: 20px;
	right: 10px;
	width: 36px;
	height: 36px;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 5px;
	box-shadow: 0px 7px 10px 0px rgba(0, 0, 0, 0.4);
	transition: 0.2s all ease;
	cursor: pointer;
}

#pageTop:after {
	content: '';
	display: block;
	transform: rotate(-45deg) translateY(-50%);
	top: 18px;
	right: 1px;
	border-top: 2px solid;
	border-right: 2px solid;
	position: absolute;
	transform-origin: 50% 80%;
	width: 14px;
	height: 14px;
	border-color: #ccc;
}
*/

#cautionImageBox {
	width: 300px;
	height: 300px;
	margin: 40px auto;
}

/****** 新規追加分 ***************************************************************************************************/
	* {
		margin: 0;
		padding: 0;
	}

	html,body {
		font-family: 'Noto Sans Japanese';
		font-style: normal;
		font-weight: 300;
		font-size: 18px;
	}

	button {
		font-family: 'Noto Sans Japanese';
		font-style: normal;
		font-weight: 300;
	}

	.sub {
		position: relative;
		width: 300px;
		height: 40px;
		border-radius: 20px;
		border: 1px solid #ccc;
		outline: none;
		background-color: #fff;
		color: #444;
		sursor: pointer;
		font-weight: 400;
		font-size: 1rem;
		line-height: 1;
		box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.7);
		box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
		transition: all 0.2s ease;
		cursor: pointer;
	}

	.sub img {
		position: absolute;
		top: 4px;
		right: 18px;
	}

	#btnToNext {
		display: block;
		width: 100%;
		height: 90px;
		margin: 10px auto 30px auto;
		background: #00cc66;
		color: #fff;
		text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.17);
		box-shadow: 0px 4px 2px 0px #009933;
		border-radius: 10px;
		border: none;
		outline: none;
		font-size: 19px;
		font-weight: 300;
		transition: all 0.2s ease;
		line-height: 90px;
		cursor: pointer;
	}

	#btnToNext:hover {
		/* box-shadow: 0px 6px 6px 0px #009933; */
	}

	#btnToNext.btnTextNextStyle {
		width: 240px;
		font-size: 17px;
		height: 60px;
		line-height: 60px;
		margin: 40px auto;
	}

	#btnToNext.nextBtnAct {
		float: right;
		width: 240px;
		font-size: 17px;
		height: 60px;
		line-height: 60px;
	}
	
	#btnToNext.nextBtnAct:hover {
		box-shadow: 0px 6px 6px 0px #009933;
	}
	
	#btnToNext.nextBtnNonAct {
		float: right;
		width: 240px;
		font-size: 17px;
		height: 60px;
		line-height: 60px;
		opacity: 0.3;
		cursor: default;
	}

	#btnToNext.nextBtnRsvAct {
		float: right;
		width: 360px;
		font-size: 17px;
		height: 60px;
		line-height: 60px;
	}

	#btnGoBack {
		width: 100%;
		height: 60px;
		margin: 10px auto 30px auto;
		background: #fff;
		color: #333;
		box-shadow: 0px 4px 2px 0px rgba(88, 88, 88, 0.8);
		border-radius: 10px;
		border: solid #ccc 1px;
		outline: none;
		font-size: 17px;
		font-weight: 300;
		transition: all 0.2s ease;
		line-height: 60px;
		cursor: pointer;
	}

	#btnGoBack:hover {
		box-shadow: 0px 6px 6px 0px rgba(88, 88, 88, 0.8);
	}

	#btnGoBack.backBtnAct {
		float: left;
		width: 240px;
		font-size: 17px;
		height: 60px;
		line-height: 60px;
	}

	.btnSubProcess {
		position: relative;
		display: block;
		width: 90%;
		margin: 30px auto;
		background: #fff;
		color: #333;
		height: 50px;
		border-radius: 25px;
		border: none;
		border: 1px solid #ccc;
		font-size: 20px;
		font-weight: 300;
		outline: none;
		box-shadow: 0px 4px 2px 0px rgba(88, 88, 88, 0.8);
		transition: all 0.2s ease;
	}

	.contentTitleMess .btnSubProcess {
		font-size: 14px;
		width: 40%;
		margin-left: 15px;
		display: inline-block;
	}

	.btnSubProcess:hover {
		box-shadow: 0px 6px 6px 0px rgba(88, 88, 88, 0.8);
	}

	.btnSubProcess img {
		position: absolute;
		top: 5px;
		right: 30px;
	}

	#but6 {
		width: 300px;
		height: 60px;
		background: #e60022;
		color: #fff;
		text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.17);
		box-shadow: 0px 4px 2px 0px;
		border: none;
		ounline: none;
		font-size: 17px;
		font-weight: 300;
	}

	#but7 {
		width: 300px;
		height: 60px;
		background: #ffffff;
		color: #000;
		text-shadow: ;
		box-shadow: ;
		border: none;
		outline: none;
		font-size: 18px;
		font-weight: 300;
	}

	.se {
		border-radius: 10px;
		border: 1px solid #ccc;
		background: #f8f8f8;
		font-size: 17px;
		width: 380px;
		height: 60px;
		outline: none;
		padding: 10px;
	}

	.sn {
		display: inline-block;
		border-radius: 10px;
		border: 1px solid #ccc;
		background: #f8f8f8;
		font-size: 17px;
		width: 200px;
		height: 40px;
		outline: none;
		cursor: pointer;
		line-height: 40px;
		text-align: center;
		transition: all 0.2s ease;
	}

	.sn:hover {
		opacity: 0.3;
	}

	.horizon {
		border: none;
		outline: none;
		border-bottom: 1px solid #ccc;
		width: 100%;
		margin: 30px 0;
	}

	button {
		margin: 0;
		padding: 0;
		cursor: pointer;
	}

	input[type=checkbox] {
		/* display: none; */
	}

	.cl {
		position: relative;
		padding: 10px 10px 10px 40px;
		font-size: 1rem;
		font-weight: 300;
		color: #aaa;
		cursor: pointer;
	}

	.cl:hover:after {
		#e60022
	}

	.cl:after, .cl:before{
		position: absolute;
		content: "";
		display: block;
		top: 50%;
	}

	.cl:after {
		left: 0px;
		margin-top: -16px;
		width: 30px;
		height: 30px;
		border: 2px solid #ccc;
		border-radius: 6px;
	}

	.cl:before {
		left: 10px;
		margin-top: -30px;
		width: 14px;
		height: 30px;
		border-right: 8px solid #e60022;
		border-bottom: 8px solid #e60022;
		transform: rotate(45deg);
		opacity: 0;
		z-index: 500;
		transition: 0.2s all ease;
	}

	input[type=checkbox]:checked + .cl:before {
		opacity: 1;
	}

	.checkBoxList {
		width: 80%;
		margin: 0 auto;
		list-style-type: none;
	}

	.checkBoxList li {
		margin: 14px 0;
	}

	/*
	#pageTop {
		position: fixed;
		z-index: 999;
		bottom: 20px;
		right: 30px;
		width: 50px;
		height: 50px;
		background: rgba(0, 0, 0, 0.7);
		border-radius: 5px;
		box-shadow: 0px 7px 10px 0px rgba(0, 0, 0, 0.4);
		transition: 0.2s all ease;
		cursor: pointer;
	}

	#pageTop:after {
		content: '';
		display: block;
		transform: rotate(-45deg) translateY(-50%);
		top: 25px;
		right: 1px;
		border-top: 2px solid;
		border-right: 2px solid;
		position: absolute;
		transform-origin: 50% 80%;
		width: 20px;
		height: 20px;
		border-color: #ccc;
	}
	*/
	
	#backWall {
		position: fixed;
		top: 0;
		left: 0;
		background: rgba(0,0,0,0.8);
		width: 100%;
		height: 100%;
		z-index: 1000;
		display: none;
		/* transition: 0.2s all ease;
		opacity: 0; */
	}

	#helpBox {
		position: fixed;
		box-sizing: border-box;
		width: 80%;
		/* height: 60%; */
		max-width: 80%;
		max-height: 60%;
		min-height: 30%;
		background-color: #fff;
		border: 4px solid #ccc;
		border-radius: 10px;
		z-index: 1010;
		display: none;
		font-size: 1.6rem;
		font-weight: 400;
		color: #444;
		/* transition: 0.2s all ease;
		opacity: 0; */
		padding: 50px;
	}

	#topBox {
		position: absolute;
		box-sizing: border-box;
		top: 0;
		left: 0;
		width: 100%;
		height: 1px;
		overflow: visible;
	}

	/*
	::-webkit-scrollbar {
		/* width: 0px; */
	}
	*/

	#bottomBox {
		box-sizing: border-box;
		width: 100%;
		height: 100%;
		overflow-y: auto;
	}

	#bottomBox p{
		box-sizing: border-box;
		width: 100%;
		height: 100%;
	}

	#close {
		position: absolute;
		width: 60px;
		height: 60px;
		top: -20px;
		right: -20px;
		border: 8px solid #ccc;
		border-radius: 38px;
		background-color: #fff;
		cursor: pointer;
	}

	#close:before {
		content: '';
		display: block;
		position: absolute;
		width: 40px;
		height: 40px;
		top: 35px;
		left: 40px;
		border-top: 8px solid #ccc;
		transform: rotate(-45deg) translateY(-45%);
	}

	#close:after {
		content: '';
		display: block;
		position: absolute;
		width: 40px;
		height: 40px;
		top: -24px;
		left: 40px;
		border-top: 8px solid #ccc;
		transform: rotate(-135deg) translateY(-45%);
	}

	.infoBox {
		width: 90%;
		max-width: 723px;
		background: #f8f8f8;
		border-radius: 10px;
		border: 1px solid #ccc;
		margin: 30px auto;
	}

	.infoBox h3{
		padding: 20px;
		font-weight: normal;
		font-size: 25px;
	}

	.infoInnerBox {
		padding: 20px;
		border-top: 1px solid #ccc;
	}

	.infoInnerBox p {
		margin: 0 0 20px 0;
	}

	.infoInnerBox ul {
		list-style-type: none;
		list-style-position: inside;
	}

	.telNumberBox {
		display: table;
	}

	.telNumberBox span {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		padding: 0 20px;
	}

	.telNumber {
		font-size: 2.6rem;
		font-weight: 700;
	}

	span.extraText {
		padding: 10px 10px;
		border-radius: 10px;
		background: #eee;
	}

	.stepBox {
		width: 90%;
		margin: 0 auto;
	}

	.serviceStep {
		border-radius: 10px;
		border: 1px solid #ccc;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: stretch;
		align-items: stretch;
		position: relative;
		margin-bottom: 60px;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.serviceStep:after {
		position: absolute;
		bottom: -33px;
		margin: auto;
		content: "";
		vertical-align: middle;
		left: 50%;
		width: 16px;
		height: 16px;
		border-top: 2px solid #e92131;
		border-right: 2px solid #e92131;
		transform: rotate(135deg);
	}

	.stepNumber {
		border-radius: 10px 0 0 10px;
		-ms-flex-preferred-size: 105px;
		flex-basis: 105px;
		background: #e60012;
		box-sizing: border-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.numberArea {
		color: #fff;
		font-size: 34px;
		font-weight: 300;
		text-align: center;
		line-height: 1.2;
		display: block;
	}

	.numberArea span {
		letter-spacing: 0.1rem;
		display: block;
		font-size: 20px;
		font-weight: 100;
	}

	.stepText {
		-ms-flex: 1;
		flex: 1;
		padding: 20px;
		display: -ms-flexbox;
		display: flex;
		width: 100%;
		-ms-flex-direction: column;
		flex-direction: column;
		color: #666;
	}

	.stepText h3 {
		margin: 0 0 20px 0;
		font-weight: bold;
		font-size: 20px;
		color: #e60012;
	}

	.stepText p {
		margin: 0 0 30px 0;
	}

	.stepText ul {
		margin: 0 0 30px 20px;
	}

	.redCircleList {
		list-style-type: none;
		list-style-position: inside;
	}

	.redCircleList li {
		text-indent: -13px;
		margin: 0 0 10px 0;
	}

	.redCircleList li:before {
		content: '●';
		color: #e60012;
		font-size: 13px;
	}

	.cautionText {
		list-style-type: none;
		list-style-position: inside;
	}

	.cautionText li{
		font-size: 13px;
		color: #666;
		text-indent: -13px;
	}

	.cautionText li:before {
		content: '※';
		color: #666;
		font-size: 13px;
	}

	.cautionList {
		list-style-type: none;
		list-style-position: inside;
	}

	.cautionList li {
		font-size: 14px;
		color: #666;
		text-indent: -14px;
	}

	.cautionList li:before {
		content: '※';
		color: #666;
		font-size: 14px;
	}

	.afterHide:after {
		content: none;
	}

	.beforeHide:before {
		content: none;
	}

	.cautionBox {
		border: 1px solid #ffeeee;
		border-radius: 10px;
		width: 100%;
		margin: 0 auto 30px auto;
		color: #666;
	}

	.cautionBox h3 {
		font-weight: bold;
		background: #ffeeee;
		border-bottom: 1px solid #ffeeee;
		border-radius: 10px 10px 0 0;
		font-size: 20px;
		padding: 15px 0;
		line-height: 1.8;
		text-align: center;
		font-weight: 700;
		color: #333;
	}

	.cautionInnerBox {
		padding: 20px;
	}
/*
	.cautionBox h3:before {
		content: '';
		display: inline-block;
		background: url(./../img/WARNING_300.png) center center no-repeat;
		width: 34px;
		height: 32px;
		background-size: 100% 100%;
		vertical-align: top;
		position: relative;
		margin-right: 10px;
		top: 3px;
	}
*/
	.contentsTitle {
		--borderColor: #e60012;
		width: 100%;
		font-size: 19px;
		color: #333;
		font-weight: 300;
		margin: 20px auto 20px auto;
	}

	.contentsTitle:before {
		content: '';
		display: inline-block;
		position: relative;
		width: 5px;
		height: 20px;
		top: 4px;
		margin-right: 15px;
		border-left: 5px solid var(--borderColor);
	}

	.pageTitle {
		position: relative;
		font-size: 28px;
		color: #e60012;
		border-bottom: 1px solid #ccc;
		font-weight: 400;
	}

	.pageTitle:after {
		content: '';
		position: absolute;
		display: block;
		width: 100px;
		height: 100%;
		top: 0px;
		border-bottom: 1px solid #e60012;
	}

	.pageTitleError {
		position: relative;
		font-size: 28px;
		color: #e60012;
		font-weight: 400;
	}

	#btnPDFMobile {
		position: absolute;
		right: 0;
		top: 10px;
		width: 150px;
		height: 40px;
	}

	#btnPDFNormal {
		position: absolute;
		right: 0;
		top: 10px;
		width: 200px;
		height: 40px;
	}

	.btnSubLink {
		border: none;
		outline: none;
		border-radius: 20px;
		border: 2px solid #ccc;
		background-color: #fff;
		cursor: pointer;
		font-weight: 300;
		transition: 0.2s all ease;
	}

	.btnSubLink:hover {
		background-color: #999;
		color: #fff;
	}

	.btnSubLink img {
		position: absolute;
		width: 30px;
		height: 30px;
		top: 4px;
		right: 10px;
	}

	.exText {
		width: 95%;
		margin: 0 auto;
		color: #666;
		margin-bottom: 30px;
	}

	#content {
		width: 95%;
		max-width: 767px;
		min-width: 767px;
		margin: 0 auto;
	}

/*
	#content {
		width: 80%;
		max-width: 667px;
		min-width: 667px;
		margin: 0 auto;
	}
*/

	#typeCheckBox {
		margin:0px auto 20px auto;
	}
	
	.checkBtnBox input[type=checkbox] {
		width: 20px; 
		height: 20px; 
		vertical-align: middle;
    }
    
    .checkLabel {
    	margin:0px auto 0px 10px;
    }

	#headerContents {
		width: 95%;
		max-width: 767px;
		min-width: 767px;
		margin: 0 auto;
		padding-top: 230px;
	}

	#headerContents.cautionPageTitle {
		padding-top: 160px;
	}

	#footerContents {
		width: 95%;
		max-width: 767px;
		min-width: 767px;
		margin: 0 auto;
	}

	#footerContents p {
		font-size: 13px;
		color: #aaa;
		line-height: 60px;
	}

	h1 {
		width: 100%;
		height: 48px;
		border-bottom: 1px solid #d6d6d6;
		padding: 6px;
		box-sizing: content-box;
	}

	h1 img {
		width: 158px;
		height: 48px;
		cursor: pointer;
	}

	nav {
		border-bottom: 1px solid #d6d6d6;
		margin-bottom: 30px;
	}

	nav ul {
		height: 30px;
		margin: 20px auto 5px auto;
		padding: 0px 0px 0px 23px;
		/* width: 767px; */
		width: 95%;
		max-width: 767px;
		min-width: 767px;
		white-space: nowrap;
	}

	@media screen and (max-width: 767px) {
		nav ul {
			overflow: scroll;
			width: 100%;
			white-space: nowrap;
		}
	}

	nav ul li {
		font-size: 15px;
		color: #666;
		display: inline-block;
		vertical-align: top;
		position: relative;
		margin: 0 25px 0 0;
		line-height: 1;
		transition: 0.3s all ease-out;
	}

	nav ul li:after {
		content: '';
		width: 8px;
		height: 8px;
		border-top: 1px solid #999;
		border-right: 1px solid #999;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		right: -15px;
		bottom: 0;
		margin: auto;
		vertical-align: middle;
	}

	nav ul li:last-child:after {
		display: none;
	}

	nav ul a {
		color: inherit;
		text-decoration: none;
	}

	nav ul a:visited {
		color: inherit;
	}
	
	.navTextFlowN {
		color: #ccc;
	}

	.navTextFlowL {
		color: #999;
		cursor: pointer;
	}

	.navTextFlowL:hover {
		opacity: 0.5;
	}

	.navTextFlowS {
		color: #e60012;
	}

	.displayErrMess {
		font-size: 16px;
		margin-top: 15px;
		color: rgb(127, 127, 127);
	}

	.btnPageDown {
		display: block;
		width: 20%;
		margin: 30px auto;
		background-color: #fff;
		color: #333;
		height: 50px;
		border-radius: 10px;
		border: 1px solid #ccc;
		font-size: 20px;
		font-weight: 300;
		outline: none;
		box-shadow: 0px 4px 2px 0px rgba(88, 88, 88, 0.8);
		transition: all 0.2s ease;
	}

	.btnPageDown:hover {
		box-shadow: 0px 6px 6px 0px rgba(88, 88, 88, 0.8);
	}


	/* smart seal */
	#smartSealBox {
		position: absolute;
		bottom: 90px;
		left: 0;
		width: 100%;
	}
	
	#smartSealBox table {
		vertical-align: middle;
		text-align: center;
		width: 767px;
		margin: 10px auto;
	}

	#smartSealBox table tr td {
		color: #666;
		font-size: 12px;
	}

