@charset "UTF-8";
/*************************
/ Contact
*************************/
/*reset*/
.entry.contact dl dt ,
.entry.contact dl dd {
	float: none;
	max-width: inherit;
	border: none;
}
fieldset {
	border: none;
	margin: 0;
	padding: 0;
}
legend {
	display: none;
}
footer .footerMenu {
    padding: 0;
}
/*base*/
.entry.contact a {
	text-decoration: underline;
}
.entry h3.likeH4 {
	margin-top: 0;
	margin-bottom: 5px;
	padding: 3px 10px 5px 12px;
	border-bottom: 1px dotted #ccc;
	clear: both;
	background: url(../../common/img/h4left.png) no-repeat left 7px;
	font-size: 18px;
}
.entry .area {
	margin-bottom: 40px;
}
.mb0 {
	margin-bottom: 0!important;
}

.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}

/*step*/
.entry section ul.step{
	margin-bottom: 22px;
}
.entry section ul.step:after{
	content: "";
	display: table;
	clear: both;
}
.entry section ul.step li {
	float: left;
	width: 31%;
	margin: 0;
	padding: 14px 0;
	background: #e5ebee;
	text-align: center;
}
.entry section ul.step li:first-child, 
.entry section ul.step li:nth-child(2) {
	padding-right: 3.5%;
	background: url(../img/step_bg.png) no-repeat right center #e5ebee;
}
.entry section ul.step li.on {
	background: #0075C2;
	color: #fff;
}
.entry section ul.step li.on:first-child, 
.entry section ul.step li.on:nth-child(2) {
	background: url(../img/step_bg.png) no-repeat right center #0075C2;
}

/*error*/
.entry.contact #error {
	background: #e00000;
	border: solid 1px #e00000;
	font-weight: bold;
}
.entry.contact #error dt {
	padding: 10px 12px;
	color: #fff;
}
.entry.contact #error dd {
	margin: 0;
	background: #faf0f4;
	color: #e00000;
}
.entry.contact #error dd ul li {
	margin-bottom: 3px;
	background: url(../../common/img/list_icon_red.png) no-repeat 3px 7px;
}

/*contactAttention*/
#contactAttention {
	border: none;
}
#contactAttention dt {
	clear: both;
	margin-top: 0;
	margin-bottom: 10px;
	padding: 3px 10px 5px 12px;
	border-bottom: 1px dotted #ccc;
	background: url(../../common/img/h3left.png) no-repeat left 5px;
	font-size: 20px;
	font-weight: bold;
}
#contactAttention dd {
	padding: 0;
}
.entry.contact #contactAttention dd ul li {
	background: url(../../common/img/list_icon_blue.png) no-repeat 3px 7px;
}

/*checkList*/
.contact .checkList:after {
	content: "";
	display: table;
	clear: both;
}
.contact .checkList li {
	float: left;
	padding: 0 15px 0 0;
	background: none;
}
.contact .checkList li label {
	padding-left: 3px;
}

/*required*/
.required {
	vertical-align: middle;
	padding: 1px 5px;
	background: #ea0000;
	color: #fff;
	font-weight: bold;
	font-size: 0.82em;
	white-space: nowrap;
}

/*form*/
.contact fieldset ul {
	margin-bottom: 1.5em;
}

textarea {
	width: 96%;
	width: calc(100% - 10px);
	max-width: 708px;
	padding: 5px;
}

input ,select {
	padding: 6px 2px;
	border: solid 1px #aaa;
}

input[type="button"] {
	padding: 6px 19px 6px 8px;
	background: #0075c2 url(../img/icon_contactBtn.png) no-repeat right center;
	border-color: #0075c2;
	color: #fff;
	text-decoration: underline;
}
input[type="button"].addressBtn {
	margin-left: 10px;
}
button.submitBtn {
	padding: 10px 44px 10px 33px;
	background: #0075c2 url(../img/icon_contactBtn.png) no-repeat right center;
	border: solid 1px #0075c2;
	color: #fff;
	text-decoration: underline;
	font-size: 1.19em;
	font-weight: bold;
}

/*contactList*/
.entry.contact .contactList {
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px dotted #ccc;
}
.entry.contact .contactList.bt {
	border-top: 1px dotted #ccc;
}
.entry.contact .contactList dt {
	width: 37%;
	float: left;
	clear: none;
	margin: 0;
	padding: 0 1% 0 0;
	font-weight: bold;
}
.entry.contact .contactList dd {
	width: 62%;
	float: left;
	clear: none;
	margin: 0;
	padding: 0;
}
.entry.contact .contactList dd.second {
	margin-left: 36%;
}
.entry.contact .contactList dd .max {
	width: 98%;
	width: calc(100% - 6px);
}
.entry.contact .contactList dd select {
	max-width: calc(100% - 6px);
}
.entry.contact .contactList dd.half span {
	padding-right: 5%;
}
.entry.contact .contactList dd.half label {
	display: inline-block;
	width: 3em;
}
.entry.contact .contactList dd.half input {
	width: calc(44% - 3em - 10px);
}
.entry.contact .contactList dd p {
	margin-bottom: 10px;
}
.entry.contact .contactList dd p.isoEn > input {
	width: calc(100% - 4em - 6px);
}
.entry.contact .contactList dd p.isoEn .isoDate {
	display: block;
	margin-top: 10px;
	margin-left: 2em;
	padding: 0;
}
.entry.contact .contactList dd p.isoEn .isoDate > input {
	width: calc(100% - 8em - 2px);
}
.entry.contact .contactList dd p:last-child {
	margin-bottom: 0;
}
.entry.contact .contactList dd p.isoEn .isoNote {
	font-size: 0.875em;
}
.contact .supplement {
	display: block;
	padding-top: 6px;
	font-size: 0.875em;
}
.contact span.supplement.foreign {
	padding-bottom: 6px;
}
.contactList textarea {
	width: 95%;
	width: calc(100% - 12px);
}

/*contactNote*/
.entry section ul.contactNote li {
	margin-bottom: 2px;
	padding: 0;
	background: none;
	font-size: 0.9em;
}

/*submitArea*/
#submitArea {
	margin-bottom: 50px;
	text-align: center;
}

/*caution*/
.entry.contact #caution {
	border: solid 1px #ccc;
}
.entry.contact #caution dt {
	padding: 9px 12px 8px;
	border-top: solid 3px #6f9dbe;
	font-weight: bold;
	background: #eee;
	background: -moz-linear-gradient(#fff, #efefef);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#efefef', GradientType=0)";
	background: -webkit-gradient(linear, top, bottom, from(#fff), to(#efefef));
	background: linear-gradient(#fff, #efefef);
}
.entry.contact #caution dd {
	padding: 10px 10px;
}
.entry.contact #caution dd p {
	margin: 0;
}

/*modal*/
#modal {
	display: none;
	position: fixed;
	top: 0;
	border: solid 3px #6c8dad;
	background: #f1f1f1;
	z-index: 300;
	text-align: center;
}
.modalOverlay {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
	z-index: 200;
}
#postcode {
	margin: 0 47px 16px;
	padding: 3px 35px;
	border: solid 1px #aaa;
	background: #fff;
	text-align: left;
}
#postcodeArea p ,
#postcode dl {
	margin: 20px 0;
}
#postcode dl {
	clear: both;
}
#postcode dl dt{
	font-weight: bold;
}
#postcode dl dd{
	margin: 0;
}
#postcode option{
	width: 100%;
	white-space: normal;
}
#modalCloseBtn {
	position: absolute;
	margin: 0;
	cursor: pointer;
}
#modalCloseBtn img{
	line-height: 1;
}
#modal .errorMsg {
	/*display: none;*/
	margin: 0 47px 16px;
	padding: 21px 35px;
	border: solid 1px #e00000;
	background: #faf0f4;
	color: #e00000;
	font-weight: bold;
}
#modal #errorClose {
	padding: 6px 19px 6px 8px;
	background: #0075c2 url(../img/icon_contactBtn.png) no-repeat right center;
	border:solid 1px #0075c2;
	color: #fff;
	text-decoration: underline;
}


/*************************
/
/ responsive 981px以上
/
*************************/
@media screen and (min-width: 981px) {
/*reset*/
.globalNavi ul li:nth-child(2), .globalNavi ul li:nth-child(3), .globalNavi ul li:nth-child(4) {
	background: none;
}
.globalNavi ul li:nth-child(2) a:hover, .globalNavi ul li:nth-child(3) a:hover, .globalNavi ul li:nth-child(4) a:hover {
	background: #999;
}
.globalNavi ul li.current:nth-child(2) {
	background: #999;
}
/*base*/
.entry.contact dl dd {
	padding: 10px 20px;
}
#contentBody {
	border-right: solid #fff 2px;
}
#contents .container {
	background: #dde4ef;
}
}

/*************************
/
/ responsive 980px以下
/
*************************/
@media screen and (max-width: 980px) {
/*base*/
.contactSpmenu a {
	display: block;
	background-image: url(../img/icon_contactBtn.png)!important;
	background-repeat: no-repeat !important;
	background-position: 20px center !important;
	padding-left: 35px !important;
}
.entry.contact dl dd {
	padding: 10px 10px;
}
/*contactList*/
.isoDate {
	display: inline-block;
	padding-top: 5px;
	/*padding-left: 5px;*/
}
}

/*************************
/
/ responsive 531px以上
/
*************************/
@media screen and (min-width: 531px) {	
/*contactList*/
.entry.contact .contactList {
	display: flex;
	align-items: center;
}
/*modal*/
#modal {
	left: calc(50% - 280px);
	width: 524px;
	margin: 40px auto;
	padding: 15px 0 16px;
}
#postcode dl {
	display: flex;
	align-items: center;
}
#postcode dl dt{
	float: left;
	width: 95px;
}
#postcode select{
	width: 263px;
}
#modalCloseBtn {
	top: -26px;
	right: -26px;
}
}

/*************************
/
/ responsive 530px以下
/
*************************/
@media screen and (max-width: 530px) {	
/*base*/
.entry dl.area ,
.entry ul.area {
	margin-bottom: 33px;
}
.entry section ul.step li .pc {
	display: none;
}

/*step*/
.entry section ul.step li {
	width: 29%;
}
.entry section ul.step li:first-child, 
.entry section ul.step li:nth-child(2) {
	padding-right: 6.5%;
	background: url(../img/step_bg-sp.png) no-repeat right center #e5ebee;
}
.entry section ul.step li.on:first-child, 
.entry section ul.step li.on:nth-child(2) {
	background: url(../img/step_bg-sp.png) no-repeat right center #0075C2;
}
/*contactList*/
.entry.contact .contactList:after {
	content: "";
	display: table;
	clear: both;
}
.entry.contact .contactList dt {
	width: inherit;
	float: none;
	padding: 0;
}
.entry.contact .contactList dd {
	width: inherit;
	float: none;
	padding: 10px 0;
}
.entry.contact .contactList dd.second {
	margin-left: 0;
}
.entry.contact .contactList dd .max {
	width: 98%;
	width: calc(100% - 6px);
}
.entry.contact .contactList dd.half span {
	display: block;
	padding-right: 0;
}
.entry.contact .contactList dd.half span:first-child {
	margin-bottom: 10px;
}
.entry.contact .contactList dd.half input {
	width: calc(100% - 3em - 6px);
}
textarea#proposal {
	min-height: 9em;
}
textarea#naiyou {
	min-height: 14em;
}
.entry.contact .contactList dd select#country {
	width: calc(100% - 6px);
}
button.submitBtn {
	padding: 10px 34px 10px 23px;
}
/*modal*/
#modal {
	left: 0;
	width: calc(100% - 40px);
	margin: 40px 20px;
	padding: 15px 0 16px;
}
#postcode {
    margin: 0 17px 16px;
    padding: 3px 19px;
}
#postcode dl dt{
	margin-bottom: 5px;
}
#postcode select{
	width: 100%;
}
#modalCloseBtn {
	top: -20px;
	right: -20px;
}
#modalCloseBtn img{
	width: 46px;
	height: auto;
}
#modal .errorMsg {
    margin: 0 17px 16px;
    padding: 15px 19px;
}
}


/*************************
/ Confirm
*************************/
.confirm .contactList p .isoDate {
	padding-left: 2em;
}
.confirm #submitArea {
	margin: 45px 0 0;
}
.confirm #submitArea button.resetBtn {
	width: 250px;
	margin: 15px 25px 0;
	padding: 11px 0;
	background: #e5ebee url(../img/icon_contactBtn_02.png) no-repeat right center;
	border: none;
	color: #5b80a6;
	text-decoration: underline;
	font-size: 1.19em;
	font-weight: bold;
}
.confirm #submitArea button.submitBtn {
	width: 250px;
	margin: 15px 25px 0;
	padding: 11px 0;
	border: none;
}

/*************************
/
/ responsive 530px以下
/
*************************/
@media screen and (max-width: 530px) {	
.confirm #submitArea button.resetBtn {
	width: 100%;
	max-width: 250px;
	margin: 15px 0 0;
}
.confirm #submitArea button.submitBtn {
	width: 100%;
	max-width: 250px;
	margin: 15px 0 0;
}
}
