/* table like theme */

.aform .aform-content dl{
        margin: -1px 0 0;
        padding: 0;
        display: flex;
        width: 100%;
}

.aform .aform-content dl dt{
        display: flex;
        width: 270px;
        padding: 10px;
        background: #eee;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        border-right: 1px solid #ccc;
        border-left: 1px solid #ccc;
        align-items: center;
        font-weight: bold;
}

.aform .aform-content dl.aform-required dt{
        border-right: 3px solid #c00;
}

.aform .aform-content dl dd{
        margin-bottom: 0;
        padding: 10px 10px 10px;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        border-right: 1px solid #ccc;
        width: calc(100% - 70px);
        margin-left: 0;
}

@media all and (min-width: 1024px) {
.aform .aform-content dl dt span.aform-required{
        font-size: 70%;
        padding: 0px 1.5px;
                margin-left: 0px;
                margin-top: 5px;
        border-radius: 3px;
}}

@media all and (max-width: 1023px) {
.aform .aform-content dl dt span.aform-required{
        font-size: 70%;
        padding: 0px 2px;
                margin-left: 0px;
                margin-top: 4px;
        border-radius: 3px;
}}

@media all and (max-width: 768px) {
.aform .aform-content dl dt span.aform-required{
        font-size: 70%;
        padding: 0.5px 2px;
                margin-left: 0px;
                margin-top: 5px;
        border-radius: 3px;
}}

.aform .aform-content ul,
.aform .aform-content li,
.aform .aform-content div,
.aform .aform-content dl p{
        list-style:none;
        margin:0;
}

div.aform-header{
  display: none;
}

sssssssssssssssssssssssss/*
body {
	color: #333;
	padding: 0 30px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 76%;
}
*/

.panel {
	clear: both;
	display: none;
	border: 3px solid #CCC;
	padding: 1em;
}
.panel.active-tab-body {
	display: block;
}
#tabs {
	list-style: none;
}

#tabs li {
	float: left;
}

#tabs a {
	float: left;
	padding: 5px 8px;
	margin-left: 6px;
	background-color: #F2F2F2;
	text-decoration: none;
	color: #999999;
}

#tabs a.active-tab {
	background-color: #CCC;
	border-top: 3px solid #999;
	padding-top: 3px;
	color: #000;
}
input.disabled {
	border: 1px solid #F2F2F2;
	background-color: #F2F2F2;
}

input.aform-required, textarea.aform-required {
	/* border: 1px solid #00A8E6; */
}
input.validation-failed, textarea.validation-failed {
	border: 1px solid #D92B00;
	color : #D92B00;
}
input.validation-passed, textarea.validation-passed {
	border: 1px solid #00CC00;
	color : #000;
}

.validation-advice {
	margin: 5px 0;
	padding: 5px;
	color : #FF0000;
	font-weight: bold;
}

.custom-advice {
	margin: 5px 0;
	padding: 5px;
	background-color: #C8AA00;
	color : #FFF;
	font-weight: bold;
}

fieldset {
	padding: 1em;
	margin-bottom: 0.5em;
}

label {
/*	font-weight: bold;*/
}
.form-row {
	clear: both;
	padding: 0.5em;
}

.field-label {

}

.field-widget {

}

.aform-header{
	font-size: 130%;
	font-weight: bold;
	margin: 1em 0 1em;
	padding: 3px 0;
	border-bottom: 1px solid #ccc;
}
/*
.aform-hdln{
	font-size: 120%;
	font-weight: bold;
	margin: 2em 0 0.5em;
	padding: 3px 0;
	border-bottom: 1px dotted #ccc;
}
*/

/*
.aform-content ul,
.aform-content li,
.aform-content div,
.aform-content dl p{
	list-style:none;
	margin:0;
}
*/

div.aform-content dl{
/*	margin-bottom: 1em; */
	padding-bottom: 1em;
}
/*
div.aform-content dl dt{
	font-weight: bold;
	margin-bottom: 0.5em;
}
*/
div.aform-content input.aform-checkbox,
div.aform-content input.aform-radio{
	margin-right: 5px;
	vertical-align:middle;
}

div.aform-content input.aform-field-option-text{
	margin-left: 5px;
	vertical-align:middle;
}

div.aform-content .aform-name-ul li,
div.aform-content .aform-kana-ul li{
        flex: none;
}
div.aform-content input.aform-name,
div.aform-content input.aform-kana{
	margin-right: 5px;
}

div.aform-content ul.aform-payment li{
	margin-bottom: 0.8em;
}
div.aform-content ul.aform-payment .aform-payment-description{
	margin-left: 22px;
	margin-top: 3px;
}
div.aform-content ul.aform-payment .aform-payment-description table th{
	font-weight:normal;
	padding: 2px 5px 2px 0;
	vertical-align: top;
	text-align:left;
}
div.aform-content ul.aform-payment .aform-payment-description table td{
	padding: 2px 5px 2px 0;
}


div.aform-content span.aform-required{
	color:#D3223A;
	font-weight: normal;
}
div.aform-content .aform-input-example{
	margin-bottom: 0.0em;
}
/*
スタイルの指定は、各テンプレートのスタイルシートで行う
div.aform-content .aform-note{
	margin-bottom: 1em;
	padding: 5px 8px;
	background:#f3f3f3;
}
*/
div.aform-content .aform-twice-note{
	display: block;
}
div.aform-content input.require-twice{
	margin-top: 3px;
}

dl.aform-error-list dt{
	font-size:120%;
	padding-left:16px;
	background: url(images/icons/warning_y.gif) 0 50% no-repeat;
}
dl.aform-error-list dd{
	margin-left:16px;
	display:list-item;
}

div.aform-content .submit{
	text-align:center;
}
div.aform-content .submit input{
	margin:0 6px;
	padding:2px 8px;
	font-size: 110%;
}

div.aform-content p.powerdby{
	text-align: right;
	font-size: 70%;
	margin: 1em 0;
}
div.aform-content p.powerdby a{

	color: #fff;
	padding:0 5px;
	background:#BAD7E4;
	text-decoration:none;
}
div.aform-content p.powerdby a:hover{
	background:#75AECA;
}

div.aform-content .aform-demo{
	text-align: center;
	margin: 2em 0;
	padding: 5px 10px;
	border: 1px solid #EE7BA0;
	background: #FDECF1;
}
div.aform-content .aform-demo a{
	color: #903;
	font-weight:bold;
	margin: 0 5px;
}

/*----------------------------------*/

#aform_result{
	color: #c00;
	font-weight: bold;
	font-size: 110%;
	margin: 15px auto;
	padding: 10px 15px;
}
#aform_result a{
	margin: 0 1em;
}

/*----------------------------------*/

div.aform-content dl{
	/* border-bottom:1px dotted #eee; */
}

.aform{
	color: #353439;
}


/*-----------------------------------*/
.contactInner{
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 10px;
}

#aform-confirm-form dt .aform-required{
	display: none;
}

.contactInner a:hover{
	text-decoration: none;
}

.contactInner a:focus{
	text-decoration: none;
}

.contactInner .textBox{
	font-feature-settings : "palt";
	font-size: 0.8em;
}

.contactInner dl + .textBox{
	margin-top: 10px;
}

.contactInner div.aform-content dl a{
	color: #353439;
}

.contactInner div.aform-content dl a img{
	margin-left: 5px
}

.contactInner textarea{
	font-feature-settings : "palt";
	padding: 5px 10px;
}

.contactInner .privacy{
	border-top: dotted 1px #b9b9b9;
    padding: 20px 20px 10px;
}

.contactInner .privacy .inner{
	width: 80%;
	margin: 0 auto;
    padding: 20px;
    height: 230px;
    border: solid 1px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    background: #f7f7f7;
	border: solid 1px #b9b9b9;
	font-size: 0.8em;
}

.contactInner .privacy .inner::-webkit-scrollbar{
	width: 5px;
}
.contactInner .privacy .inner::-webkit-scrollbar-thumb{
	background: #ccc;
	border-radius: 10px;
}

.contactInner .privacy .inner p{
    line-height: 175%;
	color: #555;
}

.contactInner .privacy .inner ul{
	margin: 18px 0px 8px 18px;
	margin-top: 0;
	margin-bottom: 0;
	padding: 20px 0 0;
}

.contactInner .privacy .inner{
	color: #555;
}

.contactInner .privacy .inner a{
	transition: 0.5s;
	color: #555;
	text-decoration: none;
}

.contactInner .privacy .inner a:hover{
	color: #e20226;
}

.contactInner .privacy .inner ul li{
	list-style-type: none;
	line-height: 150%;
    margin-bottom: 10px;
    text-indent: -24px;
    padding-left: 24px;
}

.contactInner .privacy .inner .end{
	margin-top: 0;
    margin-bottom: 0;
}

.contactInner .stepList{
	position: relative;
    list-style: none;
    margin: 0 0 15px;
    padding: 0;
    text-align: center;
    width: 100%;
    overflow: hidden;
    *zoom: 1;
}

.contactInner  .stepList li{
	width: 33.333%;
	position: relative;
    float: left;
    display: inline-block;
    line-height: 30px;
    font-size: 0.8em;
    padding: 0 40px 0 20px;
    background-color: #eee;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.contactInner  .stepList li:before{
    bottom: 0;
    -moz-transform: skew(-30deg);
    -ms-transform: skew(-30deg);
    -webkit-transform: skew(-30deg);
	transform: skew(-30deg);
	position: absolute;
    left: -15px;
    display: block;
    content: '';
    background-color: #eee;
    border-left: 4px solid #FFF;
    width: 20px;
    height: 15px;
}

.contactInner .stepList li:after{
	top: 0;
	-moz-transform: skew(30deg);
    -ms-transform: skew(30deg);
    -webkit-transform: skew(30deg);
    transform: skew(30deg);
	position: absolute;
    left: -15px;
    display: block;
    content: '';
    background-color: #eee;
    border-left: 4px solid #FFF;
    width: 20px;
    height: 20px;
}

.contactInner  .stepList li.current:before{
	color: #FFF;
    background-color: #606060;
}

.contactInner  .stepList li.current:after{
	color: #FFF;
    background-color: #606060;
}

.contactInner .stepList li:nth-of-type(1){
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.contactInner .stepList li:nth-of-type(3){
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.contactInner .stepList li:nth-of-type(1):before{
	display: none;
}

.contactInner .stepList li:nth-of-type(1):after{
	display: none;
}

.contactInner  .stepList li.current{
	color: #FFF;
    background-color: #606060;
}

.contactInner  .stepList li:after{
	position: absolute;
    left: -15px;
    display: block;
    content: '';
    background-color: #eee;
    border-left: 4px solid #FFF;
    width: 20px;
    height: 15px;
}

.contactInner select{
	-webkit-appearance: menulist;
}

.contactInner .aform-upload{
	line-height: 1;
}

.contactInner input[type="text"]{
	font-size: 16px;
	padding: 5px 10px;
	border-radius: 5px;
	outline: none;
	border: 1px solid #cbcbcb;
	max-width: 375px;
    box-sizing: border-box;
    width: fit-content;
}

.contactInner input[type="email"]{
        font-size: 16px;
        padding: 5px 10px;
        border-radius: 5px;
        outline: none;
        border: 1px solid #cbcbcb;
        max-width: 375px;
    box-sizing: border-box;
        width: fit-content;
}

.contactInner input[type="tel"]{
        font-size: 16px;
        padding: 5px 10px;
        border-radius: 5px;
        outline: none;
        border: 1px solid #cbcbcb;
        max-width: 375px;
    box-sizing: border-box;
        width: fit-content;
}

.contactInner input[type="url"]{
        font-size: 16px;
        padding: 5px 10px;
        border-radius: 5px;
        outline: none;
        border: 1px solid #cbcbcb;
        max-width: 375px;
    box-sizing: border-box;
        width: fit-content;
}

.contactInner input::-webkit-input-placeholder {
	color: #ccc;
}

.contactInner input:placeholder-shown {
	color: #ccc;
}

.contactInner input::-moz-placeholder {
	color: #ccc;
}

.contactInner input::-moz-placeholder{
	color: #ccc;
}

.contactInner input:-ms-input-placeholder {
	color: #ccc;
}

.contactInner input[type="checkbox"]{
    opacity: 0;
    position: absolute;
   appearance: none;
}
.contactInner input[type="checkbox"]:focus + label:before {
    box-shadow: 0 0 4px #004AA1;
}

.contactInner input[type="checkbox"] + label{
	padding-left: 25px;
	position:relative;
	margin-right: 20px;
	font-size: 16px;
	display: inline-block;
}

.contactInner input[type="checkbox"] + label:before{
	content: "";
	display: block;
	position: absolute;
	transform: translateY(5%);
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #999;
	border-radius: 4px;
}

.contactInner input[type="checkbox"]:checked + label:after{
	content: "";
	display: block;
	position: absolute;
	left: 6px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #666;
	border-right: 3px solid #666;
	top: 2px;
}

.contactInner .error img{
	display: none;
}

.contactInner input[type="radio"]{
    opacity: 0;
    position: absolute;
    appearance: none;
}
.contactInner input[type="radio"]:focus + label:before {
    box-shadow: 0 0 4px #004AA1;
}

.contactInner input[type="radio"] + label{
	padding-left: 25px;
	position:relative;
	margin-right: 20px;
	font-size: 16px;
	display: inline-block;
}

.contactInner input[type="radio"] + label:before{
	content: "";
	display: block;
	position: absolute;
	transform: translateY(5%);
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #999;
	border-radius: 50%;
}

.contactInner input[type="radio"]:checked + label:after{
	content: "";
	display: block;
	position: absolute;
	left: 3px;
	width: 14px;
	height: 14px;
	transform: rotate(40deg);
	background-color: #333;
	border-radius: 50%;
	top: 4px;
}

.contactInner textarea{
	font-size: 16px;
}

.contactInner input + p.aform-input-example{
	margin-top: 5px!important;
}

.contactInner dl dd{
	font-size: 14px;
}

.contactInner dl + p{
	margin-top: 5px;
}

.contactInner br + label{
	margin-top: 5px!important;
}

.contactInner label + input{
	margin-top: 5px!important;
}

.contactInner ul.aform-name-ul{
	display: flex;
	padding: 0;
}

.contactInner ul.aform-name-ul li + li{
	margin-left: 5px!important;
}

.contactInner ul.aform-kana-ul{
	display: flex;
	padding: 0;
}

.contactInner ul.aform-kana-ul li + li{
	margin-left: 5px!important;
}

.contactInner .-short{
	max-width: 195px;
}

.contactInner input:-ms-input-placeholder {
	color: #999;
}

.contactInner select{
	margin: 0;
	padding: 6px 10px;
	background: none transparent;
	vertical-align: middle;
	font-size: 16px;
    height: 25px;
	color: #323232;
	box-sizing: content-box;
	border: 1px solid #cbcbcb;
}

.contactInner .aform-prefecture{
        max-width: fit-content;
}

.contactInner .aform-select{
        max-width: fit-content;
}

.contactInner ul.aform-checkbox-ul{
	padding: 0;
}

.contactInner .aform-calendar + label{
	margin-left: 5px;
	vertical-align: middle;
}

.contactInner label + .aform-calendar{
	margin-left: 0px;
}

.contactInner .hasDatepicker + img{
	margin-left: 0px;
	vertical-align: middle;
}

.contactInner dl + .aform-note{
	margin-top: 20px!important;
}

.contactInner .aform-note + .aform-error{
	margin-top: 10px!important;
	display: inline-block;
	width: 100%;
}

.contactInner textarea{
	width: 100%;
	max-width: 515px;
	height: 165px;
	border: 1px solid #cbcbcb;
	resize: vertical;
}

.contactInner .aform-checkbox-ul{
	display: flex;
	flex-wrap: wrap;
}

.contactInner .aform-radio-ul{
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}

.contactInner div.aform-content input.aform-checkbox, div.aform-content input.aform-radio{
    vertical-align: inherit;
}

.contactInner .aform-content .submit{
	margin-top: 20px!important;
}

.contactInner .submitBtn{
	background-color: #df0522;
	background: linear-gradient(#df0522, #b10600);
	color: #fff;
	min-width: 180px;
	padding: 15px!important;
	border-radius: 5px;
	/* border: 1px solid #df0522; */
	font-size: 16px!important;
}

.contactInner .backBtn{
	background-color: #e6e6e6;
	background: linear-gradient(#fff, #e6e6e6);
	color: #333;
	min-width: 110px;
	padding: 15px!important;
	border-radius: 5px;
	/* border: 1px solid #df0522; */
	font-size: 16px!important;
}

.contactInner .submitBtn:hover, .backBtn:hover{
	opacity: 0.5;
	cursor: pointer;
}

.contactInner .aform + *{
	margin-top: 20px!important;
}

.contactInner .number{
	padding-left: 1.5em;
}

.contactInner .number li + li{
	margin-top: 10px;
}

.contactInner .note{
	color: #fb0d01;
	margin-top: 15px!important;
	margin-bottom: 10px!important;
}

.contactInner .txt{
	margin-bottom: 30px;
}

.contactInner{
	padding-bottom: 90px;
	padding-top: 20px;
}

.ui-datepicker .ui-datepicker-title select{
	color: #000!important;
    font-weight: normal!important;
}

@media all and (min-width: 769px) {
	.contactInner .aform-content{
		font-size: 0.9rem;
	}

	.contactInner  .aform-content dl dd{
		font-size: 90%;
	}

	.contactInner  .aform-content dl dd .aform-input-example{
		font-size: 0.8rem;
	}

	.contactInner input[type="text"]{
		font-size: 0.9rem;
	}

    .contactInner input[type="email"]{
        font-size: 0.9rem;
    }

    .contactInner input[type="tel"]{
        font-size: 0.9rem;
    }

    .contactInner input[type="url"]{
        font-size: 0.9rem;
    }

	.contactInner select{
		font-size: 0.9rem;
	}

	.contactInner input[type="checkbox"] + label{
		font-size: 0.9rem;
		padding-left: 20px;
	}

	.contactInner input[type="checkbox"] + label:before{
		transform: translateY(25%);
		width: 15px;
		height: 15px;
	}

	.contactInner input[type="checkbox"]:checked + label:after{
		left: 5px;
		width: 6px;
		height: 12px;
		top: 4px;
	}
	.contactInner input[type="radio"] + label{
		font-size: 0.9rem;
		padding-left: 20px;
	}

	.contactInner textarea{
		font-size: 0.9rem;
	}

	.contactInner input[type="radio"] + label:before{
		transform: translateY(22%);
		width: 15px;
		height: 15px;
	}

	.contactInner input[type="radio"]:checked + label:after{
		left: 3px;
		width: 9px;
		height: 9px;
		transform: rotate(40deg);
		top: 6px;
	}
}

@media all and (max-width: 768px) {
	.contactInner{
		padding: 0 10px 60px 10px;
	}

	.contactInner textarea{
		text-indent: -0.5em;
	}

	.contactInner .stepList li span{
		display: none;
	}

	.contactInner .aform dl{
		flex-wrap: wrap;
	}
	.contactInner .aform dl > dt{
		width: 100%!important;
		border-bottom: 0!important;
	}
	.contactInner .aform dl > dd{
		width: 100%!important;
        border-left: 1px solid #ccc;
	}

	.contactInner input[type="text"]{
		width: 100%;
	    padding: 7px 10px;
	}

    .contactInner input[type="email"]{
        width: 100%;
        padding: 7px 10px;
    }

    .contactInner input[type="tel"]{
        width: 100%;
        padding: 7px 10px;
    }

    .contactInner input[type="url"]{
        width: 100%;
        padding: 7px 10px;
    }

	.contactInner .aform-name-ul{
		flex-wrap: wrap;
	}

	.contactInner .aform-name-ul li{
		width: 100%;
	}

	.contactInner ul.aform-name-ul li + li{
		margin-left: 0!important;
		margin-top: 5px!important;
	}

	.contactInner .aform-name-ul li input{
		width: calc(100% - 2em - -12px)!important;
		margin: 0!important;
	}

	.contactInner .aform-kana-ul{
		flex-wrap: wrap;
	}

	.contactInner .aform-kana-ul li{
		width: 100%;
	}

	.contactInner ul.aform-kana-ul li + li{
		margin-left: 0!important;
		margin-top: 5px!important;
	}

	.contactInner .aform-kana-ul li input{
		width: calc(100% - 3em - -14px)!important;
		margin: 0!important;
	}

	.contactInner .submitBtn, .backBtn{
	    display: block;
	    margin-right: auto!important;
	    margin-left: auto!important;
	}

	.contactInner .backBtn + .submitBtn{
		margin-top: 15px!important;
	}

	.contactInner .privacy .inner{
		width: 100%;
	}

	.contactInner .aform-checkbox-ul li{
		width: 100%;
	}

	.contactInner .aform-radio-ul li{
		width: 100%;
	}
}

/* kccs add */
div.aform_stub_main table{
    margin: auto;
    text-align: left;
}

div.aform_stub_main table thead th{
	border-collapse: collapse;
	border: 1px solid #333;
    padding: 0.3em;
    background-color: khaki;
}

div.aform_stub_main table td{
	border-collapse: collapse;
	border: 1px solid #333;
    padding: 0.3em;
}

div.aform_stub_main table td:first-child{
    background-color: whitesmoke;
}

div.aform_stub_main p{
	text-align: center;
}
div.aform_stub_main form{
	text-align: center;
}