@charset "EUC-JP";
/*!
###　基本のスタイル　###

スマホの回転拡大に対応させつつ作るために
高さ：rem
幅：%
で作成している部分がありますます。
root 100% = 16px換算;
1rem      = 16px;
1.5rem    = 24px;
0.5rem    = 8px;
0.0625rem = 1px
*/


* {
	box-sizing: border-box;
}
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;

	font-size: 1em;
}

body,
table,
input, textarea, select, option {
	font-family: HiraKakuProN-W3;
	font-size: 1em;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

img{width:100%;}
.subBt{
	width:80%;
    margin:0 auto;
}
input[type="checkbox"] {
	vertical-align:middle;
	-webkit-appearance: none;
	position: relative;
	margin-right: 5px;
	border-radius: 8px;
	border: 2px solid #4c4c4c;
	-webkit-box-sizing: border-box;
	width: 28px;
	height: 28px;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#fdfdfd),
		to(#d1d1d1)
	);
}

/* チェック時は背景色を変更 */
input[type="checkbox"]:checked {
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#353535),
		to(#8f8f8f)
	);
}

/* チェックの印を:before疑似要素と:after疑似要素を使って作成 */
input[type="checkbox"]:checked:before {
	position: absolute;
	left: 1px;
	top: 17px;
	display: block;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
	content: "";
	width: 10px;
	height: 4px;
	background: #FFFFFF;
	-webkit-transform: rotate(45deg);
	-webkit-transform-origin: right center;
}

input[type="checkbox"]:checked:after {
	display: block;
	position: absolute;
	left: 9px;
	top: 17px;
	content: "";
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
	width: 19px;
	height: 4px;
	background: #FFFFFF;
	-webkit-transform: rotate(-53deg);
	-webkit-transform-origin: left center;
}

input[type="radio"] {
	-webkit-appearance: none;
	position: relative;
	margin-right: 5px;
	border-radius: 14px;
	border: 2px solid #4c4c4c;
	-webkit-box-sizing: border-box;
	width: 28px;
	height: 28px;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#fdfdfd),
		to(#d1d1d1)
	);
	vertical-align: middle;
}

/* チェック時は背景色を変更 */
input[type="radio"]:checked {
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#353535),
		to(#8f8f8f)
	);
}

/* チェックの印を:before疑似要素を使って作成 */
input[type="radio"]:checked:before {
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	margin: -5px 0 0 -5px;
	-webkit-box-shadow: 0 2px 1px rgba(0, 0, 0, 1);
	content: "";
	border-radius: 5px;
	width: 10px;
	height: 10px;
	background: -webkit-gradient(
		linear,
		left top,
		left bottom,
		from(#fdfdfd),
		to(#d1d1d1)
	);
}

input[type="radio"]:disabled + span{
    color: #aaaaaa;
}

header img{
	width:30%;
	margin:1rem;
}
header.personal img{
	width:50%;
	margin:0.5rem 0.5rem 0;
}
img.must{
	width:8%;
	vertical-align:middle;
	margin:0 3px;
}
h1{
	background: -moz-linear-gradient(top, #1057b2 0%, #0e4d9e 50%, #0b438b 97%, #0a3c7d 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1057b2), color-stop(50%,#0e4d9e), color-stop(97%,#0b438b), color-stop(100%,#0a3c7d)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #1057b2 0%,#0e4d9e 50%,#0b438b 97%,#0a3c7d 100%); /* Chrome10+,Safari5.1+ */
	padding:1rem;
	color:#fff;
	border-bottom:1px solid #b3b3b3;
	font-size:120%;
}
h2{
	color:#263594;
	font-size:130%;
	padding:0.5rem;
	font-weight:bold;
	border-bottom:1px solid #bbb;
}
h3{
	border-top:1px solid #fff;
	padding:0.5rem;
	background:#dddddd;
	border-bottom:1px solid #bbb;
}
h4{
	padding:0.5rem;
	border-bottom:1px solid #bbb;
	font-weight:normal;
}
div.introArea div.intro{
/*
	width:60%;
	float:left;
*/
}
div.introArea img{
	width:35%;
	float:right;
}
span.must{
	border-radius:2px;
	background:#cc0000;
	color:#fff;
	padding:0.25rem;
	font-size:80%;
	margin:0 3px;
}
h2 span.must{
	font-size:65%;
}
.formIntro{
	border:1px solid #bbb;
	border-left:none;
	border-right:none;
	padding:0.5rem;
}

.serviceChoice .choiceService{
	padding:0.5rem;
	border-bottom:1px solid #bbb;
}
.serviceChoice .choiceService ul{
	padding-left:15px;
	margin-left:15px;
	font-weight:bold;
}
.changeService{
	background: -moz-linear-gradient(top,  #ffffff 0%, #e8e8e8 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#e8e8e8)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#e8e8e8 100%); /* Chrome10+,Safari5.1+ */
	border-bottom:1px solid #bbb;
	color:#263594;
	font-size:130%;
	padding:0.5rem;
	font-weight:bold;
}
.serviceChoice a{
	text-decoration:none;
	color:#263594;
}
/*
.changeService.open a{
	background:url("../images/sp/icon_plus.png") no-repeat 5px center;
	padding-left:30px;
	display:block;
}
.changeService.open.close a{
	background:url("../images/sp/icon_minus.png") no-repeat 5px center;
	padding-left:30px;
	display:block;
}
*/
.changeService.open:before{
	content:"商品・サービスの追加や変更";
	background:url("../images/sp/icon_plus.png") no-repeat 5px center;
	padding-left:30px;
	display:block;
}
.changeService.close:before{
	content:"閉じる";
	background:url("../images/sp/icon_minus.png") no-repeat 5px center;
	padding-left:30px;
	display:block;
}
.serviceList div{
	border-bottom:1px solid #bbb;
}
.serviceList ul{
	margin-left:10px;
	list-style:none;
}
.serviceList ul li{
	font-size:110%;
	font-weight:bold;
	padding:10px 0;
	text-indent:-2em;
	padding-left:2em;
}
.serviceList ul li span{
	color:#999;
}
.serviceList h3 span.open{
	background:url("../images/sp/arrow_up.png") no-repeat 5px center;
	padding-left:30px;
	display:block;
}
.serviceList h3 span.close{
	background:url("../images/sp/arrow_down.png") no-repeat 5px center;
	padding-left:30px;
	display:block;
}

.serviceList2{
	display:none;
}

/*項目横の指示*/
.instruction{
	margin-left:5px;
	color:#666;
}
/*入力エラー*/
input.err {
	background: #ffdddc;
}

select.err,
.err input {
	background: #ffdddc;
}

.select_validate{
	padding:5px;
	display:inline-block;
}

.select_validate.err{
	background: #ffdddc;
}

.agreement_radio{
	width:100%;
	font-size:140%;
	display:block;
	padding:10px 0;
}

.err.agreement_radio{
	background: #ffdddc;
}


.agreement_radio label{
	font-weight:bold;
}

#selected_service{
	padding:10px 0;
}
#contact_type.err, #selected_service.err{
	background: #ffdddc;
}

.inputForm dl{
	padding:0 10px 10px 10px ;
}
.inputForm dt,
.inputForm dd{
	float:left;
}
.inputForm dt{
	font-size:120%;
	font-weight:bold;
	margin-right:10px;
}
.inputForm .block{
	padding:10px;
	border-bottom:1px solid #bbb;
}
.inputForm span.unselected{
	background:#ffdddd;
	padding:10px;
}
/*
.inputForm .checkList label{
	float:left;
}
.inputForm .clearFloat{
	clear:both;
}
*/

/*セレクトの定義*/
.inputForm select{
	padding:4px 0;
}

.nameExample{
	font-weight:bold;
	display:inline-block;
	width:35px;
}

/*exValidation用のWrap*/
.wrap_name{
	position:relative;
	width:50%;
	float:left;
	margin-bottom:10px;
}
.wrap_number{
	position:relative;
	width:92px;
	float:left;
}

.wrap_radio,
.wrap_common{
	position:relative;
	width:100%;
}

.separate_hyphen{
	float:left;
	margin-left:2px;
	margin-right:2px;
	padding:3px 0;
}

.wrap_common .formError,
.wrap_name .formError,
.wrap_number .formError{
	position:absolute;
	/*bottom:30px;*/
	bottom:39px;
}

.wrap_radio .formError{
	position:absolute;
	top:-17px;
}

#err_chk_name_family, #err_chk_name_first, 
#err_chk_kana_family, #err_chk_kana_first{
	left:40px;
}

.privacyCheck{
	margin:10px auto;
	text-align:center;
	/*border:1px solid #bbb;*/
}

a.privacyLink{
	background:url("../images/sp/icon_arrow.png") no-repeat;
	padding-left:30px;
	text-decoration:underline;
	color:#263594;
	font-size:135%;
	font-weight:bold;
}

.btArea{
	margin:15px auto;
	text-align:center;
}
.btArea p{
	text-align:left;
	margin:0 10px;
}
.sealArea{
	border-top:1px solid #bbb;
	background:#eee;
	padding:10px;
}
.toPC{
	border-radius: 3px;          /* CSS3草案 */
	-webkit-border-radius: 3px; /* Safari,Google Chrome用 */
	-moz-border-radius: 3px;    /* Firefox用 */
	border:1px solid #bbb;
	text-align:center;
	margin:10px;
	display: none;
}
.toPC a{
	font-weight:bold;
	display:block;
	padding:10px;
	text-decoration:none;
	color:#000;
}
div.privacyBox{
	background:#fff;
}
div.privacyBox .ttl{
	border-bottom:1px solid #ccc;
	padding:5px;
}
div.privacyBox .ttl .f-r{
	width:10%;
}
div.hideBox{
	padding:10px;
	height:400px;
	overflow:auto;
	font-size:90%;
	-webkit-overflow-scrolling:touch;
}

#container .fixed .formErrorContent{
	background-position:4px 7px;
	padding-left:15px;
}

/*確認画面*/
.conf{
	border-bottom:1px solid #bbb;
}

/*完了*/
.snsArea{
	display:flex;
    justify-content:center;
    align-items:center;
    gap:17%;
    padding:0 16px 15px 16px;
    box-sizing:border-box;
    transform: translateX(8%);
}
.snsArea a{
    display:flex;
    justify-content:center;
    align-items:center;
}
.snsArea img{
	width:50px;
    height:50px;
    display:block;
    object-fit:contain;
}
.privacycheck2{
	background:url("../images/icon_arrow2.png") no-repeat 0 5px;
	margin-left: 25px;
	padding-left:30px;
	text-decoration:none;
	color:#263594;
	font-size:120%;
	font-weight:bold;
	display:block;
}

/*============　個人情報の取扱いについて　============*/
div.ui-widget-overlay {
	background: rgb(51,51,51);
	opacity: .7;
}
div.ui-widget.ui-widget-content {
	letter-spacing: 0.04em;
	border-radius: 0;
	border: none;
	padding: 10px;
}
div.ui-draggable .ui-dialog-titlebar {
	color: #fff;
	font-size: 125%;
	background: #1c4fa1;
	border-radius: 0;
	border: none;
	padding: .4em .5em;
}
div.ui-dialog .ui-dialog-title {
	font-size: .8em;
	font-weight: bold;
	letter-spacing: 0.06em;
	text-align: left;
}
div.ui-dialog .ui-dialog-content {
	font-size: .9em;
	text-align: left;
	padding: .8em 0;
}
div.ui-dialog .ui-dialog-buttonpane {
	text-align: center;
	border: none;
	padding: 0;
	margin-top: 0;
}
div.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
	display: inline-block;
	float: none;
	width: 100%;
}
div.ui-dialog .ui-dialog-buttonpane button {
	width: 80%;
	line-height: 1.5;
	margin: 0;
	font-size: 1em;
	font-weight: bold;
	background: rgb(253,253,253);
	background: -moz-linear-gradient(top, rgba(253,253,253,1) 0%, rgba(239,239,239,1) 50%, rgba(239,239,239,1) 51%, rgba(224,224,224,1) 100%);
	background: -webkit-linear-gradient(top, rgba(253,253,253,1) 0%,rgba(239,239,239,1) 50%,rgba(239,239,239,1) 51%,rgba(224,224,224,1) 100%);
	background: linear-gradient(to bottom, rgba(253,253,253,1) 0%,rgba(239,239,239,1) 50%,rgba(239,239,239,1) 51%,rgba(224,224,224,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fdfdfd', endColorstr='#e0e0e0',GradientType=0 );
}
div.ui-dialog .ui-dialog-buttonpane button:focus {
	outline: none;
}
div.ui-dialog .ui-dialog-buttonpane button:active {
	color: #000;
}
div.ui-dialog .ui-dialog-titlebar-close {
	background: none;
	border-radius: 0;
	right: .4em;
}
div.ui-dialog .ui-dialog-titlebar-close.ui-button .ui-icon,
div.ui-dialog-titlebar-close.ui-button:active .ui-icon {
	background-image: url(images/ui-icons_ffffff_256x240.png);
}

/* デートピッカー */
div img.ui-datepicker-trigger {
    vertical-align:bottom;
}
div#ui-datepicker-div{
    font-size:120%;
}


div input#contact_date,
div input#contact_date_year{
    vertical-align:bottom;
    height:30px;
    width:60px;
    padding: 1px;
    /*border-width: 2px;*/
    /*border-style: inset;*/
    width:120px;
}

div select#contact_date_month,
div select#contact_date_day{
    height:30px;
}

.displayNone{
    display:none;
}


