@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url("http://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.css");
/********************************************************
 
               ここからコピー↓↓↓

********************************************************/
div#mfp_hidden {
	overflow: hidden;
	width: 1px;
	height: 1px;
	padding: 0px;
	margin: 0px;
}
div#mfp_hidden input {
	margin: 10px;
}
/********************************************************
 
                        入力項目

********************************************************/
input,
select {
	width: 190px;
	padding: 7px 5px;
	margin: 0 20px 0 0;
	color: #484848;
	border-radius: 2px;
	border: 1px solid #acacac;
	box-shadow: inset 1px 4px 7px -8px rgba(0,0,0,0.2);
}
textarea {
	width: 100%;
	padding: 10px;
	border-radius: 2px;
	border: 1px solid #acacac;
	min-height: 150px;
}
/********************************************************
 
                    基本レイアウト

********************************************************/
.contactArea {
	width: 100%;
	margin: 0 auto;
}
form#mailformpro {
	width: 100%;
}
form#mailformpro dl {
	width: 100%;
	padding: 30px 0;
	border-top: 1px solid #ccc;
	display: flex;
	display: -webkit-flex;
	-webkit-align-items: flex-start;
	align-items: flex-start;
    justify-content: flex-start;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
form#mailformpro dl dd {
	position: relative;
}
form#mailformpro dl dd ul {
	width: 100%;
	display: flex;
	display: -webkit-flex;
    padding: 0;
}
form#mailformpro dl dd ul li {
	list-style: none;
}
/************** 背景色 **************/
form#mailformpro dl:nth-child(even) {
}
form#mailformpro dl dt {
	width: 100px;
	position:relative;
	padding: 0 0 0 65px;
}
/************** 必須 **************/
form#mailformpro dl dt span {
	padding: 5px 10px;
	border-radius: 3px;
	background: #c65b5b;
	color: #fff;
	font-size: 11px;
	display: inline-block;
	line-height: 1;
	position: absolute;
	top:2px;
	left:10px;
}
/********************************************************
 
                　　 送信ボタン

********************************************************/
div.mfp_buttons {
	margin: 30px 0 0 0;
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
}
div.mfp_buttons > button {
	width: 250px;
	padding: 15px 30px;
	margin: 0 30px 0 0;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size: 15px;
	background: #484848;
	border-radius: 3px;
	border: none;
	color: #fff;
	cursor: pointer;
	outline: none;
	appearance: none;
}
div.mfp_buttons > button:hover {
	background: #646464;
}
/********************************************************
 
    　　選択項目（チェックボックス・ラジオボタン）

********************************************************/

input[type='radio'],
input[type='checkbox'] {
	display: none;
}
label {
	width: 100%;
	position: relative;
}
label:before,
label:after {
	-webkit-transition: All .2s ease-in-out;
	transition: All .2s ease-in-out;
}
.check ul,
.radio ul {
	width: 100%;
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.check div {
	width: 100%;
	padding: 0 0 0 25px;
}
.check ul li,
.radio ul li {
	width: 50%;
	padding: 0 0 0 25px;
	display: flex;
	display: -webkit-flex;
}
.check ul li:nth-of-type(n+3),
.radio ul li:nth-of-type(n+3) {
	margin: 15px 0 0 0;
}
/************** 選択用エラーメッセージ **************/
.check .mfp_err,
.radio .mfp_err {
	margin: 10px 0 0 -25px;
}
/********************************************************
 
               　 チェックボックス

********************************************************/


/************** 選択前チェックボックス **************/
.check label:before {
	content: "";
	width: 15px;
	height: 15px;
	position: absolute;
	top: 2px;
	left: -25px;
	border-radius: 3px;
	border: 3px solid #dddddd;
}
.check label:after {
	content: "\f00c";
	position: absolute;
	font-family: FontAwesome;
	font-size: 17px;
	color: #bc5d5d;
	top: 2px;
	left: -23px;
	-webkit-transform: scale(0);
	transform: scale(0);
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	-webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
/************** 選択後チェックボックス **************/
.check .mfp_checked:after {
	-webkit-transform: scale(1);
	transform: scale(1);
}
/********************************************************
 
               　　ラジオボタン

********************************************************/
.radio label:before {
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	top: 2px;
	left: -25px;
	border-radius: 50%;
	border: 3px solid #dddddd;
}
.radio label:after {
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	border-radius: 50%;
	background: #b94646;
	top: 8px;
	left: -19px;
	-webkit-transform: scale(0);
	transform: scale(0);
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	-webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
/************** 選択後ラジオボタン **************/
.radio .mfp_checked:after {
	-webkit-transform: scale(1);
	transform: scale(1);
}
/********************************************************
 
                   お問い合わせの種類

********************************************************/
.type ul li {
	margin: 0 15px 0 0;
}
.type label {
	min-width:190px;
	padding:10px 20px;
	background:#bcbcbc;
	border-radius: 50px;
	display:block;
	color:#fff;
	text-align:center;
}
/************** 選択後ラジオボタン **************/
.type .mfp_checked {
	background:#5d5d5d;
}
/********************************************************
 
                 　　都道府県

********************************************************/


form#mailformpro dl dd ol {
	width: 100%;
	list-style: none;
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
form#mailformpro dl dd ol.c-type {
    padding: 0;
}
form#mailformpro dl dd ol.c-type select {
    width: 280px;
}
form#mailformpro dl dd ol li {
	width: 100%;
	margin: 0 0 15px 0;
}
form#mailformpro dl dd ol li:last-child {
	margin: 0;
}
form#mailformpro dl dd ol li span {
	display: inline-block;
	margin: 0 10px 0 0;
}
/********************************************************
 
               　　確認用テーブル

********************************************************/
table#mfp_confirm_table {
	width: 100%;
	border-spacing: 0px;
	border-collapse: collapse;
}
table#mfp_confirm_table tr.mfp_colored {
	background-color: #F6F7F9;
}
table#mfp_confirm_table tr th,
table#mfp_confirm_table tr td {
	text-align: left;
	border-top: solid 1px #CCC;
	padding: 25px 10px 25px 30px;
}
table#mfp_confirm_table tr th {
	white-space: nowrap;
	width: 200px;
}
table#mfp_confirm_table tr td {
	line-height: 1.5em;
	word-break: break-all;
}
div#mfp_phase_confirm {
	clear: both;
}
/************** 入力内容をご確認下さい **************/
div#mfp_phase_confirm h4 {
	font-size: 20px;
	padding: 10px 0px;
	text-align: center;
}
div#mfp_phase_confirm div#mfp_phase_confirm_inner {
}
div#mfp_overlay {
	position: absolute;
	display: none;
	z-index: 10001;
}
div#mfp_overlay_inner {
	background-color: #FFF;
	padding: 15px;
	margin: 0px auto;
	border-radius: 5px;
	box-shadow: 0px 0px 10px #000;
	width: 640px;
	max-width: 90%;
}
div#mfp_overlay_background {
	background-color: #000;
	position: absolute;
	display: none;
	z-index: 10000;
}
div#mfp_loading_screen {
	z-index: 20000;
	opacity: 0.8;
	display: none;
	background-color: #000;
	position: absolute;
}
div#mfp_loading {
	z-index: 20001;
	position: absolute;
	display: none;
	width: 40px;
	height: 40px;
	background-image: url(_images/mfp_loading.gif);
}
/********************************************************
 
                エラーメッセージ

********************************************************/
div.mfp_err {
	display: none;
	margin: 5px 0px 0px 0px;
	padding: 7px 0px 5px 20px;
	color: #cb4d4d;
	font-size: 13px;
	position: relative;
}
div.mfp_err:before {
	content: "\f057";
	position: absolute;
	font-family: FontAwesome;
	font-size: 16px;
	top: 6px;
	left: 0px;
}
.mfp_parent_error {
	border: solid 2px #F00;
}
.problem {
	border: 2px solid #cb4d4d;
}
div#mfp_error {
	background-color: #FEE;
	border: solid 1px #F00;
	padding: 10px;
	display: none;
}
div#mfp_error p {
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	text-align: center;
}
div#mfp_error p strong {
	font-size: 18px;
	color: #F00;
}
div#mfp_warning {
	background-color: #FEE;
	border: solid 1px #F00;
	padding: 10px;
	display: none;
	border-radius: 5px;
}
div#mfp_warning p {
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	text-align: center;
}
div#mfp_warning p strong {
	font-size: 18px;
	color: #F00;
}
/********************************************************
 
                サンクスページ

********************************************************/
div.mfp_thanks {
	width:100%;
	padding: 30px 100px 50px 100px;
	border:4px solid #ccc;
	background:#f7f7f7;
    box-sizing: border-box;
}
div.mfp_thanks p {
	line-height: 1.7em;
    float: none !important;
    width: 100% !important;
}
div.mfp_thanks ul.mfp_caution {
	margin: 0px;
	padding: 0px;
}
div.mfp_thanks ul.mfp_caution li {
	display: block;
	color: #C00;
	margin: 0px;
	padding: 5px 0px;
}
div#mfp_thanks {
	text-align: center;
	font-size: 18px;
	padding: 20px 0px;
}
div#mfp_thanks strong {
	color: #C00;
	font-size: 24px;
}
div#mfp_price {
	color: #C00;
	font-size: 36px;
	padding: 10px;
	font-weight: bolder;
}
div#mfp_price span {
	color: #666;
	font-size: 12px;
	font-weight: normal;
}
button.mfp_next,
button.mfp_prev {
	font-size: 18px;
	margin: 10px;
	padding: 5px 10px;
}
button.mfp_next {
	float: right;
}
button.mfp_prev {
	float: left;
}
button.mfp_next,
button.mfp_prev {
	font-size: 14px;
}
/********************************************************
 
                 郵便番号選択エリア

********************************************************/
div.prefcodeWrapper {
	position: relative;
}
div.prefcodeResult {
	position: absolute;
	top: 0px;
	left: 0px;
	padding: 5px;
	border: solid 1px #CCC;
	background-color: #FFF;
	box-shadow: 0px 0px 5px #CCC;
	display: none;
	z-index: 10;
}
div.prefcodeResult div {
	cursor: pointer;
}
div.prefcodeResult div:hover {
	background-color: #C9EBFB;
}
div.prefcodeResult div.prefcodeNext {
	background-color: #EEE;
	text-align: center;
}
/********************************************************
 
                 　　　段階入力

********************************************************/
ul#mfp_phase_stat {
	padding: 10px;
	text-align: center;
}
ul#mfp_phase_stat li {
	display: inline-block;
	padding: 8px 15px;
	border-radius: 5px;
	margin: 0px 5px;
	list-style: none;
	font-size: 14px;
}
ul#mfp_phase_stat li.mfp_phase_arrow {
	box-shadow: none;
	color: #999;
	padding: 8px 0px;
}
ul#mfp_phase_stat li.mfp_active_phase {
	box-shadow: 0px 1px 6px #000;
	background-image: url(_images/mfp_header.png);
	background-size: 100% 100%;
	background-color: #0068B7;
	border: solid 2px #0068B7;
	font-weight: bolder;
	color: #FFF;
	text-shadow: 0px 1px 3px #000;
}
ul#mfp_phase_stat li.mfp_inactive_phase {
	background-image: url(_images/mfp_header.png);
	background-size: 100% 100%;
	background-color: #EEE;
	border: solid 2px #EEE;
	color: #999;
	box-shadow: 0px 1px 6px #CCC;
}
/********************************************************
 
                  ショッピングカート

********************************************************/
div#mfp_shopping_cart {
	border: solid 1px #CCC;
	margin: 0px;
	padding: 0px;
}
div#mfp_shopping_cart p {
	margin: 0px;
	text-align: center;
	padding: 20px 10px;
	font-size: 12px;
	background-color: #FEE;
}
table.mfp_shoppingcart {
	border-spacing: 0px;
	border-collapse: collapse;
	width: 100%;
}
table.mfp_shoppingcart thead tr td {
	background-color: #EEE;
	border-bottom: solid 1px #CCC;
	text-align: center;
	font-size: 12px;
	padding: 5px;
}
table.mfp_shoppingcart tbody tr th,
table.mfp_shoppingcart tbody tr td {
	font-size: 12px;
	padding: 5px;
	border-bottom: solid 1px #CCC;
}
table.mfp_shoppingcart tbody tr td select {
	display: block;
	margin: 0px auto;
	text-align: center;
}
table.mfp_shoppingcart tbody tr td select option {
	text-align: center;
}
table.mfp_shoppingcart tbody tr th span {
	display: block;
	font-weight: normal;
	font-size: 10px;
	color: #666;
	padding: 3px 0px;
}
table.mfp_shoppingcart tfoot tr td {
	padding: 5px;
	font-size: 16px;
	font-weight: bolder;
	color: #900;
}
td.msc_price {
	font-size: 12px;
	text-align: right;
}
/********************************************************
 
               添付ファイル機能

********************************************************/
div.mfp_attached_thumbnails {
	display: none;
	padding: 5px;
	margin: 5px auto;
	border: solid 1px #CCC;
	border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;
	background: #EEE;
}
div.mfp_attached_thumbnails ul {
	margin: 0px;
	padding: 0px;
}
form#mailformpro dl dd div.mfp_attached_thumbnails ul li {
	display: inline-block;
	vertical-align: top;
	padding: 0px;
	border: solid 4px #FFF;
	margin: 5px;
	box-shadow: 0px 2px 5px #999;
}
form#mailformpro dl dd div.mfp_attached_thumbnails ul li a {
	display: block;
	max-height: 100px;
	overflow: hidden;
}
div.mfp_attached_thumbnails ul li a img {
	display: block;
	max-width: 80px;
}
button.mfp_attached_reset {
	font-size: 14px;
}
/********************************************************
 
                  　　記録機能

********************************************************/
button#mfp_recorder_record,
button#mfp_recorder_clear,
button#mfp_recorder_restore {
	border-radius: 5px;
	padding: 5px 10px 5px 2em;
	border: solid 1px #CCC;
	background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -webkit-gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -moz-linear-gradient(top, #EEE, #CCC);
	background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
	text-shadow: 0px 2px 0px #FFF;
	font-size: 16px;
	cursor: pointer;
	outline: none;
	display: inline-block;
	margin: 5px auto;
}
button#mfp_recorder_record {
	background: url(_images/mfp_record_disabled.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
button#mfp_recorder_clear {
	background: url(_images/mfp_record_pxove.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
button#mfp_recorder_restore {
	background: url(_images/mfp_record_restore.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
button.enabled#mfp_recorder_record,
button.enabled#mfp_recorder_clear,
button.enabled#mfp_recorder_restore {
	background: url(_images/mfp_record_enabled.png) no-repeat 5px center #EEE;
	background-size: 24px 24px;
}
div#mfp_recorder_wrap {
	border: solid 1px #CCC;
	padding: 10px;
	text-align: center;
	margin: 5px auto;
}
/********************************************************
 
                  　予約管理機能

********************************************************/
input#mfp_reserve_item,
input#mfp_reserve_date {
	display: none;
}
div#mfp_reserve_wrapper {
	position: relative;
	overflow: hidden;
	border: solid 1px #CCC;
}
div#mfp_reserve_inner {
	position: relative;
	padding: 0px 0px 0px 100px;
	overflow: auto;
}
div#mfp_reserve_wrapper table {
	border-spacing: 0px;
	border-collapse: collapse;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_label {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100px;
	background-color: #FEE;
	z-index: 100;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value {
	padding: 0px 0px 0px 0px;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning {
	cursor: pointer;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active:hover,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning:hover {
	background-color: #E8EEF9;
}
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_current {
	background-color: #0068B7;
	color: #FFF;
}
td.mfp_reserve_disabled {
	background-color: #CCC;
}
td.mfp_reserve_warning {
	background-color: #FFC;
}
div#mfp_reserve_wrapper table tr td,
div#mfp_reserve_wrapper table tr th {
	border: solid 1px #CCC;
	padding: 0px 5px;
	font-size: 12px;
	text-align: center;
	font-family: Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	font-weight: normal;
	height: 20px;
	text-align: left;
}
td.mfp_reserve_week_0 {
	color: #F00;
	background-color: #FEE;
}
td.mfp_reserve_week_6 {
	color: #00F;
	background-color: #EEF;
}
/********************************************************
 
                 リクエスト機能

********************************************************/
td.request_image {
	width: 100px;
}
td.request_image img {
	max-width: 100px;
}
/********************************************************
 
                その他  

********************************************************/
div.prefLoading {
	padding: 60px 100px;
	background: url(_images/mfp_zip_loading.gif) no-repeat center center;
}
.hidefield {
	height: 0px;
	overflow: hidden;
}
.showfield {
	height: auto;
	overflow: visible;
}
div#mfp_OperationCheck {
}
div#mfp_OperationCheck div#mfp_OperationCheck_inner {
	display: none;
}
div#mfp_OperationCheck strong {
	background: #090;
	display: block;
	color: #222;
	text-align: center;
	border-radius: 3px;
}
div#mfp_OperationCheck * {
	padding: 0px;
	margin: 0px;
	font-size: 12px;
}
div#mfp_OperationCheck p {
	padding: 0px 5px;
	margin: 0px;
	font-size: 12px;
}
div#mfp_OperationCheck p a {
	color: #0C0;
	text-decoration: none;
}
div#mfp_OperationCheck p a:hover,
div#mfp_OperationCheck p button:hover {
	text-decoration: underline;
}
div#mfp_OperationCheck p button {
	border: none;
	background: none;
	color: #0C0;
	cursor: pointer;
}
div#mfp_OperationCheck div#mfp_OperationCheck_inner ul {
}
div#mfp_OperationCheck ul li,
div#mfp_OperationCheck ul li label,
div#mfp_OperationCheck ul li label input {
	line-height: 12px;
	font-size: 12px;
	list-style: none;
	vertical-align: middle;
}
div#mfp_OperationCheck ul li {
	padding: 5px 10px;
}
div#mfp_OperationCheck ul li label {
	text-decoration: underline;
}
span.mfp_tips {
	background-image: url(_images/mfp_header.png);
	background-size: 100% 100%;
	background-color: #FCC;
	display: block;
	border-radius: 5px;
	padding: 10px;
	margin: 2px;
	box-shadow: 0px 2px 10px #999;
}
span.mfp_tips strong {
	color: #800040;
}
span.mfp_tips span {
	display: block;
	padding: 10px;
	color: #008080;
}
span.mfp_tips em {
	font-style: normal;
	color: #090;
	font-weight: bold;
}
/********************************************************
 
                  OKコマンド

********************************************************/
div.mfp_ok {
	border-radius: 5px;
	background-color: #090;
	border: solid 1px #090;
	display: inline-block;
	line-height: 1.5em;
	padding: 0px 5px;
	margin: 0px 2px;
	color: #FFF;
	font-size: 10px;
	background-image: url(_images/mfp_header.png);
	background-size: 100% 100%;
	display: none;
}
