@charset "utf-8";

@import url("./reset.css");

/* -------------------------- General Settings --------------------------- */
html{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	height: 100%;
}

body{
    width: 100%;
    height: 100%;
    text-align: center;
	font-size:62.5%;
}

h1,h2,h3,h4,h5,h6,p,blockquote,li,dt,dd,select,th,td{
	font-size:180%;
}

li li{
	font-size:100%;
}

a{
	color:#339;
}

a:hover{
	color:#99f;
}

table{
	border-collapse:collapse;
}

input[type=checkbox]{
	height:27px;
	width:27px;
	border:none;
	vertical-align:middle;
	display:inline-block;
	margin-right:3px;
	position:relative;
	-webkit-appearance:none;
	-moz-appearance:none;
	-o-appearance:none;
	appearance:none;
}
input[type=checkbox]:before{
	content:"";
	display:block;
	width:27px;
	height:27px;
	box-sizing:border-box;
	border:2px solid #339;
	background:#fff;
	position:absolute;
	left:-2px;
	top:-2px;
}

input[type=checkbox]:checked:before{
	border:2px solid #000;
	background:#339 url(../../common/images/check.png) center no-repeat;
}
input[type="checkbox"].disabled:before{
	border-color:#999;
	background:#ccc;
}

input[type=checkbox]::-ms-check{
	position:relative;
	overflow:none;
	border:2px solid #339;
	background:#fff;
}
input[type=checkbox]:checked::-ms-check{
	border:2px solid #000;
	background:#339 url(../../common/images/check.png) center no-repeat;
	color:rgba(0,0,0,0);
}
input[type="checkbox"].disabled::-ms-check{
	border-color:#999;
	background:#ccc;
}

select{
	-moz-appearance:none;
	-webkit-appearance:none;
	appearance:none;
	border-radius:12px;
	border:2px solid #339;
	padding:6px 48px 6px 8px;
	line-height:30px;
	background:#fff url(../images/select_pulldown.png) right no-repeat;
}

main article > section.simulation div#simulation_table dl.rider dt select:disabled{
	background: darkgray url(../images/select_pulldown.png) right no-repeat;
}

select::-ms-expand{
    display:none;
}

p.note{
	font-size:140%;
}

main article a.otherlink{
	text-decoration:underline;
	color:#03f;
}

main article a.otherlink:hover{
	text-decoration:none;
}


main article section.form > div.title{
	text-align:center;
}

main article section.form table + div.title{
	background:#f0f0f0;
}

main article div.title h2{
	font-size:300%;
	font-weight:normal;
	padding:20px 0 10px;
	margin:0;
}

main article div.title p{
	font-size:160%;
	color:#333;
	margin-bottom:30px;
}

main article div.title p span{
	font-size:87.5%;
}


main article div.button,
main article section.button{
	padding:54px 0;
	display:-webkit-flex;
	display:flex;
	-webkit-justify-content:center;
	justify-content:center;
}

main article div.button a.button,
main article section.button a.button{
	display:-webkit-flex;
	display:flex;
	-webkit-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	justify-content:center;
	width:273px;
	height:116px;
	font-size:240%;
	font-weight:bold;
	vertical-align:middle;
	margin:0 42px;
	text-align:center;
}

main article div.button.tri a.button,
main article section.button.tri a.button{
	margin:0 15px;
}

main article div.button a.button span,
main article section.button a.button span{
}

main article div.button a.button.cancel,
main article section.button a.button.cancel{
	background:url(../images/btn_cancel.png) top no-repeat;
}

main article div.button a.button.cancel:hover,
main article section.button a.button.cancel:hover{
	background:url(../images/btn_cancel.png) bottom no-repeat;
	color:#99f;
}

main article div.button a.button.back,
main article section.button a.button.back{
	background:url(../images/btn_back.png) top no-repeat;
}

main article div.button a.button.back:hover,
main article section.button a.button.back:hover{
	background-position:bottom;
	color:#99f;
}

main article div.button a.button.apply,
main article section.button a.button.apply{
	background:url(../images/btn_apply.png) top no-repeat;
}

main article div.button a.button.apply:hover,
main article section.button a.button.apply:hover{
	background-position:left;
	color:#99f;
}

main article div.button a.button.apply.disabled,
main article section.button a.button.apply.disabled{
	background-position:bottom;
	color:#999;
	color:#fff;
}

main article div.button a.button.confirm,
main article section.button a.button.confirm{
	background:url(../images/btn_confirm.png) top no-repeat;
	color:#fff;
}

main article div.button a.button.confirm:hover,
main article section.button a.button.confirm:hover{
	background-position:left;
}

main article div.button a.button.confirm.disabled,
main article section.button a.button.confirm.disabled{
	background-position:bottom;
	cursor:default;
	}

	main article div.button a.button.deside,
	main article section.button a.button.deside{
		background:url(../images/btn_deside.png) top no-repeat;
		color:#fff;
	}

	main article div.button a.button.deside:hover,
	main article section.button a.button.deside:hover{
		background-position:left;
	}

main article div.button a.button.deside.disabled,
main article section.button a.button.deside.disabled{
	background-position:bottom;
	cursor:default;
}

main article div.button a.button.offer,
main article section.button a.button.offer{
	font-size:180%;
	background:url(../images/btn_offer.png) top no-repeat;
	color:#fff;
}

main article div.button a.button.offer:hover,
main article section.button a.button.offer:hover{
	background-position:left;
	color:#ff0;
}

main article div.button a.button.offer.disabled,
main article section.button a.button.offer.disabled{
	background-position:bottom;
	color:#fff;
	cursor:default;
}

main article div.button a.button.offer strong,
main article section.button a.button.offer strong{
	font-size:233%;
}

/* ========= Header Block ========== */

header{
	width:925px;
	padding: 5px 0 0;
	margin:0 auto;
	display:inline-flex;
	justify-content:space-between;
}

header h1#logo{
	font-size:100%;
}

header h1#logo a{
	display:block;
	width:298px;
	height:83px;
	background:url(../images/logo.png) no-repeat;
	text-indent:-9999px;
}

header address.tel{
	font-size:140%;
	margin-top: 20px;
}

header address.tel a{
	display:block;
	background:url(../images/telephone.png) no-repeat;
	width:217px;
	height:25px;
	margin-left: auto;
}

header div.conditions{
	text-align:right;
}

header div.conditions div.birthday{
	background:#fff;
	border:1px solid #dfdfdf;
	padding:12px 18px;
	color:#333;
	line-height:1.05;
}

header div.conditions div.birthday h3{
	display:inline-block;
	font-size:160%;
	font-weight:normal;
	padding-right:12px;
	margin-right:12px;
	border-right:1px solid #dfdfdf;
}

header div.conditions div.birthday p{
	font-size:160%;
	display:inline-block;
}

header div.conditions p.change_conditions{
	font-size:140%;
	margin-top:12px;
}

header div.conditions p.change_conditions a{
	text-decoration:underline;
	color:#03f;
}



/* ========= Footer Block ========== */

footer{
	background:#f0f0f0;
	padding-top:36px;
}

footer ul{
	padding:25px 0;
	text-align:center;
}

footer ul li{
	display:inline-block;
	padding-left:0.5em;
	font-size:140%;
}
footer ul li:after{
	content:"|";
	color:#339;
	padding-left:0.5em;
}

footer ul li:last-child{
	border-right:none;
}
footer ul li:last-child:after{
	padding-left:0;
	content:"";
}

footer small{
	display:block;
	background:#339;
	color:#fff;
	text-align:center;
	padding:30px 0;
	font-size:120%;
	width:100%;
}



/* ========== Contents Block ========== */

main{
	background:#f0f0f0;
	color:#339;
	display:block;
}

main section.title{
	background:#339;
	color:#fff;
	padding:6px 0;
}

main section.title h1{
	font-size:160%;
	width:925px;
	margin:0 auto;
	display:inline-block;
	text-align:left;
}

/* ========== Contents ========== */

main article{
	width:925px;
	margin:0 auto;
	padding-bottom:1px;
}

main article header{
	display:flex;
	padding:36px 0 30px;
}

main article header > p.lead{
	text-align:center;
	font-size:210%;
	width:100%;
}

main section h3{
	font-size:240%;
	font-weight:bold;
	margin:1.5em 0 0.25em;
}

main section p + p{
	margin-top:1em;
}

main section div.pdf_download{
	background:#e1e1f0;
	padding:30px;
	margin:24px 0 12px;
}

main article .plan{
	position:relative;
	padding-left:80px;
	font-weight:normal;
	font-size:100%;
	line-height:1.05;
}

main article .plan span.icon{
	position:absolute;
	left:0;
	top:0;
	display:block;
	width:68px;
	height:68px;
	font-size:140%;
}

main article .plan span.icon em{
	font-size:200%;
	font-weight:bold;
	display:inline-block;
	padding:8px 0 6px;
}

main article .plan b{
	font-size:210%;
	font-weight:normal;
}

main article .plan b strong{
	font-size:190%;
	display:block;
	font-weight:normal;
	text-align:left;
	margin-bottom:6px;
}



main article .plan.plan1 span.icon{
	background:#c19c4c;
	color:#fff;
	text-align:center;
}

main article .plan.plan2 span.icon{
	background:#7c80b5;
	color:#fff;
	text-align:center;
}

main article > section{
	background:#fff;
}

main article > section:first-child{
	margin-top:30px;
}

main article > section + section{
	border-top:1px solid #ddd;
}


main article > section.saved_data{
	padding:30px;
}

main article table.saved_data{
	width:100%;
}

main article table.saved_data caption{
	font-size:100%;
	line-height:1.05;
	padding-bottom:30px;
	border-bottom:1px solid #339;
}

main article table.saved_data caption h2{
	font-size:300%;
	font-weight:normal;
}

main article table.saved_data tr th,
main article table.saved_data tr td{
	border-bottom:1px solid #ddd;
	padding:6px 0;
	text-align:left;
}

main article table.saved_data tr td.plan{
	padding:18px 0;
}

main article table.saved_data tr th{
	width:5em;
}

main article table.saved_data tr td.total{
	border-bottom:none;
	width:245px;
	text-align:right;
	vertical-align:bottom;
	font-size:240%;
}

main article table.saved_data tr td.sateitotal{
	border-bottom:none;
	width:285px;
	text-align:right;
	vertical-align:center;
	font-size:240%;
}

main article table.saved_data tr td.total strong{
	font-size:125%;
}

main article table.saved_data tr th.primary em{
	background:#ff6833;
	color:#fff;
	display:block;
	width:4.5em;
	padding:6px 0;
	text-align:center;
}

main article table.saved_data tr th.rider em{
	background:#50a7fe;
	color:#fff;
	display:block;
	width:4.5em;
	padding:6px 0;
	text-align:center;
}

main article section.saved_data nav.procedure{
	border-top:1px solid #ddd;
	width:100%;
	padding:30px;
	margin:5em 0 0 -30px;
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	justify-content:space-between;
}

main article section.saved_data nav.procedure div.button{
	background:#eeeefb;
	border:1px solid #dfdffa;
	border-radius:4px;
	padding:20px;
	width:233px;
	-webkit-box-pack:start;
	justify-content:start;
	-webkit-box-orient:vertical;
	flex-direction:column;
}

main article section.saved_data nav.procedure div.button a.button{
	margin:0;
	width:233px;
	height:96px;
	background:url(../../common/images/btn_apply2.png) top no-repeat;
	text-decoration:none;
}

main article section.saved_data nav.procedure div.button a.button:hover{
	background-position:bottom;
}

main article section.saved_data nav.procedure div.button p{
	text-align:left;
	font-size:160%;
	margin-top:1em;
	margin-bottom:0;
	line-height:1.5;
}




main article table.form.input_complete{
}

main article table.form.input_complete caption{
	padding:30px 30px 0;
	border-top:1px solid #ddd;
	font-size:240%;
	text-align:left;
	font-weight:bold;
}

main article table.form.input_complete th,
main article table.form.input_complete td{
	border:none;
	padding:10px 0 0 30px;
}

main article table.form.input_complete tr:last-child th,
main article table.form.input_complete tr:last-child td{
	padding-bottom:20px;
}

main article table.form.input_complete td span.decision{
	padding-bottom:0;
}

main article section.input_plan{
	padding:0 30px;
	border:none;
}

main article table.input_plan{
	border-top:1px solid #ddd;
	width:100%;
}

main article table.input_plan tr th,
main article table.input_plan tr td{
	border-bottom:1px solid #ddd;
	padding:6px 0;
	text-align:left;
}

main article table.input_plan tr td.plan{
	padding:18px 0;
}

main article table.input_plan tr th{
	width:5em;
}

main article table.input_plan tr td.price{
	text-align:right;
}

main article table.input_plan tr td.total{
	border-bottom:none;
	text-align:right;
	vertical-align:bottom;
	font-size:240%;
}

main article table.input_plan tr td.total strong{
	font-size:125%;
}

main article table.input_plan tr th.primary em{
	background:#ff6833;
	color:#fff;
	display:block;
	width:4.5em;
	padding:6px 0;
	text-align:center;
}

main article table.input_plan tr th.rider em{
	background:#50a7fe;
	color:#fff;
	display:block;
	width:4.5em;
	padding:6px 0;
	text-align:center;
}




main article > section.form{
	padding:0;
	border:none;
}

main article table.form{
	width:100%;
}

main article table.form caption{
	position:relative;
}

main article table.form.form_with_notice caption{
	width:100%;
	background:#f0f0f0;
	color:#c00;
	font-size:180%;
	padding-bottom:12px;
}

main article table.form tr:first-child th,
main article table.form tr:first-child td{
	border-top:1px solid #ddd;
}

main article table.form caption + tbody tr:first-child th,
main article table.form caption + tbody tr:first-child td,
main article table.form caption + tbody + tbody tr:first-child th,
main article table.form caption + tbody + tbody tr:first-child td{
	border-top:none;
}

main article table.form th,
main article table.form td{
	padding:10px 15px;
	border-bottom:1px solid #ddd;
	text-align:left;
	position:relative;
}

main article table.form th{
	border-right:1px solid #ddd;
	width:180px;
	vertical-align:top;
	position:relative;
}

main article table.form td{
	font-size:100%;
	padding-bottom:6px;
}

main article table.form td.error{
	background:#fdd;
}

main article table.form td strong.message{
	font-size:140%;
	color:#c00;
	display:block;
	position:relative;
	top:-1em;
}
main article table.form tr.address td strong.message{
	top:0;
}

main article table.form tr.address td strong.message{
	font-size:88%;
	line-height:1.5;
}

main article table.form th span.required{
	font-size:78%;
	color:#fff;
	background:#c00;
	position:absolute;
	right:0;
	top:0;
	font-weight:normal;
	padding:0 0.25em;
	line-height:1.5;
}

main article table.form tr.address th span.required{
	font-size:140%;
}

main article table.form td input[type="text"],
main article table.form td input[type="password"],
main article table.form td textarea{
	border:2px solid #339;
	border-radius:6px;
	padding:0.5em 0.75em;
	width:400px;
	margin:0 0 16px 0;
}

main article table.form td input[type="text"].short{
	width:160px;
}

main article table.form td input[type="text"].s_short{
	width:5em;
}

main article table.form td input[type="text"].ss_short{
	width:3em;
}

main article table.form td input[type="text"].vs_short{
	width:2em;
}

main article table.form td em.cat{
	line-height:1.5;
	vertical-align:middle;
	position:relative;
	padding-bottom:0.45em;
}

main article table.form td input[type="text"] + em.cat{
	margin-left:1em;
	top:0;
}

main article table.form td input[type="text"]::placeholder,
main article table.form td input[type="password"]::placeholder{
	color:#ccc;
}

main article table.form td input[type="text"]:focus,
main article table.form td input[type="password"]:focus,
main article table.form td textarea:focus{
	box-shadow:0px 0px 0px 4px rgba(141, 187, 249, 1);
}

main article table.form td label.pwdview{
	font-size:100%;
	margin:0;
}

main article table.form td textarea{
	width:100%;
	min-height:10em;
	box-sizing:border-box;
}

main article table.form td em{
	display:inline-block;
	font-size:160%;
	line-height:2.4;
	margin-right:0.5em;
}

main article table.form td span{
	font-size:140%;
	margin:-0.75em 0 12px;
	display:inline-block;
}

main article table.form td span.decision{
	font-size:180%;
	margin:0;
	padding-bottom:12px;
}

main article table.form a.change{
	position:absolute;
	font-size:140%;
	color:#fff;
	text-align:center;
	line-height:43px;
	right:30px;
	top:20px;
	display:block;
	width:87px;
	height:43px;
	background:url(../../common/images/btn_form_change.png) top no-repeat;
}

main article table.form caption a.change{
	font-weight:normal;
	font-size:59%;
}

main article table.form td.decision a.change{
	font-size:78%;
}

main article table.form tr.address a.change{
	font-size:87.5%;
}

main article table.form a.change:hover{
	background-position:left;
}

main article table.form a.change.disabled{
	background-position:bottom;
	color:#ccc;
}

main article table.form td input[type="date"],
main article table.form td input[type="month"]{
	border:2px solid #339;
	border-radius:6px;
	padding:0.75em;
	margin:0 0 12px 0;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}



main article table.form tr.address th{
	font-size:160%;
	font-weight:normal;
	text-align:right;
	border-bottom:none;
}

main article table.form tr.address th strong{
	font-size:180%;
	text-align:left;
	float:left;
}

main article table.form tr.address th,
main article table.form tr.address td{
	font-size:160%;
	border-bottom:none;
	line-height:3.5em;
	vertical-align:top;
	padding:10px 15px;
}

main article table.form tr.address td span.decision{
	font-size:100%;
	padding:0;
}

main article table.form tr.address + tr th,
main article table.form tr.address + tr td{
	border-top:1px solid #ccc;
}

main article table.form tr.address td dl{
	padding-left:220px;
	margin-left:-220px;
	margin-top:-0.25em;
}
main article table.form tr.address td dl dt{
	margin-left:-190px;
	width:140px;
	text-align:right;
}
main article table.form tr.address td dl dt,
main article table.form tr.address td dl dd{
	font-size:100%;
}
main article table.form tr.address td dl dd{
	margin-top:-3.5em;
}

main article table.form td input{
	font-size:160%;
}

main article table.form select{
	border:2px solid #339;
	border-radius:6px;
	padding:0.25em 0.75em;
	width:400px;
	font-size:160%;
	box-sizing:content-box;
	background:#fff;
	background:url(../images/address_select_item.png) right no-repeat,-moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(222,222,222,1) 100%);
	background:url(../images/address_select_item.png) right no-repeat,-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(222,222,222,1)));
	background:url(../images/address_select_item.png) right no-repeat,-webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(222,222,222,1) 100%);
	background:url(../images/address_select_item.png) right no-repeat,-o-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(222,222,222,1) 100%);
	background:url(../images/address_select_item.png) right no-repeat,-ms-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(222,222,222,1) 100%);
	background-size:40px 40px;
	margin-bottom:8px;
}

main article table.form select.auto{
	width:auto;
	padding-right:40px;
}

main article table.form tr.address td select{
	font-size:100%;
	margin:0;
}

main article table.form td select.short{
	width:5em;
}

main article table.form td select.short + em{
	margin:0 1em 0 0.25em;
}

main article table.form tr.address td input{
	margin-bottom:0;
	font-size:100%;
}

main article table.form tr.address td input.zip{
	width:7.5em;
}

main article table.form tr.address td a.zipsearch{
	display:inline-block;
	width:195px;
	height:43px;
	line-height:43px;
	background:url(../../common/images/btn_zipsearch.png) top no-repeat;
	text-align:center;
	font-weight:bold;
}

main article table.form tr.address td a.zipsearch:hover{
	color:#99f;
	background-position:bottom;
}

main article table.form tr.address td em.note{
	font-size:100%;
}

main article table.form td label{
	font-size:160%;
}

main article table.form label{
	font-size:88.75%;
	margin-bottom:1em;
	display:inline-block;
}

main article table.form input[type="radio"]{
	width:23px;
	height:23px;
	vertical-align:middle;
	margin-right:0.5em;
	position:relative;
	z-index:1;
}

main article table.form input[type="radio"]:before{
	position:absolute;
	display:block;
	content:"";
	width:19px;
	height:19px;
	border:2px solid #339;
	background:#fff;
	border-radius:12px;
	left:0;
	top:0;
	z-index:2;
}

main article table.form input[type="radio"]:checked:after{
	position:absolute;
	display:block;
	content:"";
	width:13px;
	height:13px;
	background:#339;
	border-radius:7px;
	left:5px;
	top:5px;
	z-index:3;
}

main article table.form input[type="radio"]::-ms-check{
	width:19px;
	height:19px;
	border:2px solid #339;
	background:#fff;
	border-radius:12px;
	color:#339;
}

main article table.form td ul.card_brands{
	/* margin-top:1em; */
}

main article table.form td ul.card_brands li{
	display:inline-block;
	padding:0 1em 1em 0;
}



main article table.form th span.recommended{
	background:#f60;
	position:relative;
	top:30px;
	left:30px;
	padding:10px;
	color:#fff;
	border-radius:5px;
}

main article table.form td em.recommended{
	color:#f60;
	font-size:180%;
	line-height:1.5;
	font-weight:bold;
}

main article table.form td em.recommended_note{
	font-size:140%;
	clear:both;
	padding:5px 0 15px;
	line-height:1.5;
}

main article table.form td span.subnote{
	margin-left:6em;
	position:relative;
	top:-0.25em;
}


main article table.form td p.tips{
	text-align:right;
}

main article table.form td p.tips span.tips-icon{
	display:inline-block;
	margin:0 0 0 0.25em;
	width:1em;
	height:1em;
	border:1px solid #339;
	border-radius:1em;
	line-height:1.25em;
	font-size:100%;
}

main article table.form td p.tips a:hover span.tips-icon{
	border:1px solid #99f;
}

main article > section.tips{
	padding:20px;
	border:none;
	text-align:left;
}

main article > section.tips h2{
	margin:1.5em 0 0.5em;
}

main article > section.tips table.tips th,
main article > section.tips table.tips td{
	padding:5px 10px;
	border:1px solid #339;
	text-align:left;
	position:relative;
}

main article > section.tips table.tips th{
	background:#efefff;
}

main article > section.tips table.tips th:first-child{
	width:30%;
}

main article > section.tips table.tips th:nth-child(2){
	width:30%;
}

main article > section.tips p.notes{
	font-size:140%;
	text-indent:-1em;
	padding-left:1em;
	margin:0.5em 0;
}

main article > section.tips ol.notice li{
	font-size:140%;
	text-indent:-1.5em;
	padding-left:1.5em;
	margin-top:1em;
}

main article > section.tips strong{
	color:#c00;
	font-weight:normal;
}





main article div.privacypolicy{
	background:#f0f0f0;
	margin:30px 30px 0;
	height:150px;
	padding:20px;
	overflow-y:scroll;
	text-align:left;
}

main article div.privacypolicy h3{
	font-size:160%;
	margin: 1.5em 0 0.5em;
}

main article div.privacypolicy p{
	font-size:160%;
}

main article div.privacypolicy ul{
	margin:0.75em 0 0;
}

main article div.privacypolicy ul li{
	font-size:160%;
	list-style:disc inside;

}


main article div.agree{
	padding:30px;
}

main article div.agree p{
	font-size:160%;
	text-align:left;
}

main article div.agree label{
	margin-right:30px;
	height:27px;
	display:inline-block;
	padding-right:12px;
}

main article div.agree.error label,
main article div.agree label.error{
	background:#fdd;
}

main p.error.message{
	color:#c00;
}

main article div.agree p.error.message{
	color:#c00;
	font-size:160%;
	margin-top:1em;
}
main article div.agree p.error.message + p.error.message{
	margin-top:0;
}





body.action main{
	padding-bottom:210px;
}
body.action.offer main{
	padding-bottom:130px;
}
body.action.offer.wreq main{
	padding-bottom:150px;
}
body.action main.nobutton{
	padding-bottom:100px;
}

body.action footer{
	background:#e5e5ff;
	position:fixed;
	bottom:0;
	width:100%;
	padding:10px 0;
	z-index:10;
}
body.action footer ul{
	padding:0;
	margin: 0 0 10px;
}
body.action.offer footer ul{
	display:none;
}
body.action footer small{
	background:none;
	color:#339;
	padding:0;
	padding-bottom:5px;
	display:inline;
	padding-right:1.5em;
	padding-bottom: 0;
}
body.action footer small:last-child{
	padding:0;
}

body.action main article section.simulation div.button,
body.action main article section.button,
body.action main article div.button{
	position:fixed;
	z-index:10;
	bottom:8em;
	width:100%;
	left:0;
	border:none;
	background:#d8d8f0;
	padding:10px 0;
	-webkit-box-pack:center;
	justify-content:center;
}
body.action main article section.simulation div.button.wreq{
	flex-wrap:wrap;
}

body.action main article section.simulation div.button.wreq div.items,
body.action main article div.button.wreq div.items{
	width:301px;
	padding:0 4px;
}

body.action main article section.simulation div.button.wreq div.items p,
body.action main article div.button.wreq div.items p{
	text-align:left;
}

body.action.offer main article section.simulation div.button,
body.action.offer main article section.button,
body.action.offer main article div.button{
	bottom:3.5em;
}

body.action main article section.simulation div.button{
	bottom:4.5em;
}

body.action main article section.simulation div.button a.button,
body.action main article section.button a.button,
body.action main article div.button a.button{
	width:456px;
	height:56px;
	margin:0;
	font-size:210%;
}

body.action main article section.button.tri a.button,
body.action main article div.button.tri a.button,
body.action main article section.simulation div.button a.button{
	width:301px;
	margin:0 5px;
}

body.action main article div.button a.button.back,
body.action main article section.button a.button.back{
	background:url(../../common/images/btn_back_fixed.png);
	margin-right:12px;
}

body.action main article div.button a.button.deside,
body.action main article section.button a.button.deside{
	background:url(../../common/images/btn_deside_fixed.png);
}

body.action main article div.button a.button.apply,
body.action main article section.button a.button.apply{
	background:url(../../common/images/btn_apply_fixed.png);
}

body.action main article div.button a.button.cancel,
body.action main article section.button a.button.cancel{
	background:url(../../common/images/btn_cancel_fixed.png);
	margin-right:12px;
}

body.action main article section.simulation div.button.wreq div.items a.button.cancel,
body.action main article div.button.wreq div.items a.button.cancel{
	background-size:301px 112px;
	background-position:top;
}

body.action main article div.button a.button.confirm,
body.action main article section.button a.button.confirm{
	background:url(../../common/images/btn_confirm_fixed.png);
}

body.action main article div.button a.button.offer,
body.action main article section.button a.button.offer,
body.action main article section.simulation div.button a.button.offer{
	font-size:150%;
	background:url(../../common/images/btn_offer_fixed.png);
	padding-bottom:0.24em;
	box-sizing:border-box;
}

body.action main article div.button a.button.offer strong,
body.action main article section.button a.button.offer strong,
body.action main article section.simulation div.button a.button.offer strong{
	font-size:160%;
	position:relative;
	bottom:-0.1em;
}

body.action main article section.simulation div.button a.button.apply{
	background:url(../../common/images/btn_apply_fixed.png);
}


body.action main article div.button a.button.back:hover,
body.action main article section.button a.button.back:hover,
body.action main article div.button a.button.cancel:hover,
body.action main article section.button a.button.cancel:hover,
body.action main article section.simulation div.button.wreq div.items a.button.cancel:hover{
	background-position:bottom;
}

body.action main article div.button a.button:hover,
body.action main article section.button a.button:hover,
body.action main article section.simulation div.button a.button:hover{
	background-position:left;
}

body.action main article div.button a.button.disabled,
body.action main article section.button a.button.disabled,
body.action main article section.simulation div.button a.button.disabled{
	background-position:bottom;
}

body.action main article section.simulation > p.notice{
	display:block;
	position:fixed;
	padding:0.75em 0 0;
	width:100%;
	font-size:140%;
	bottom:10.25em;
	left:0;
	text-align:center;
	background:#d8d8f0;
	z-index:11;
}


/* 20221226 改修用追加 */

main article section.download{
	position:absolute;
	right:0;
	top:18px;
	display:flex;
	flex-direction:column;
}

main article section.download a.pdf_download{
	display:inline-block;
	text-align:center;
	width:300px;
	height:30px;
	background:url(../../common/images/btn_pdf2.png) top no-repeat;
	background-size:cover;
	margin-bottom:10px;
}

main article section.download a.pdf_download:hover{
	background-position:bottom;
}

main article section.download a.pdf_download span{
	box-sizing:border-box;
	width:100%;
	padding-left:20px;
	background:url(../../common/images/icon_pdf_small.png) 10px center no-repeat;
	background-size:20px 20px;
	font-size:120%;
	font-weight:bold;
	line-height:30px;
	display:inline-block;
}

div.panel-button {
	display: inline-block;
	border: 2px solid #339;
/*	padding: 0 40px 0 10px; */
	padding: 0.25em 0.75em;
	color: #000;
/*	background: url(../../common/images/address_select_item.png) right no-repeat; */
	background: url(../../common/images/address_select_item.png) right no-repeat,-webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(222,222,222,1) 100%);
	overflow: hidden;
	text-wrap: nowrap;
	vertical-align: inherit;
	background-size: 40px;
	margin-right: 0.5em;
	cursor: default;
	border-radius: 6px;
}

div.panel-area {
	display: none;
	position: absolute;
	background-color: #fff;
	z-index: 99;
	border:1px #339 solid;
}

div.panel-area > div.panel-head {
	background-color:#eeeefb;
	text-align:center;
	border-bottom:1px #339 solid;
	font-weight: bold;
}

div.panel-area > ul {
	display: flex;
	flex-flow: row wrap;
}

div.panel-area > ul > ul:not(:last-child) {
	border-right: 1px #339 solid;
}

div.panel-area > ul > ul > li {
	font-size: 15px;
	padding-left: 8px;
}

div.panel-area > ul > ul > li:hover {
	background-color:#5b9bd5;
}