@charset "UTF-8";


/*フォントカラー*/
body { color:#000; }
a, a:link, button { outline-style:none; text-decoration:none; color:#000; transition: background-color 0.3s, color 0.3s; }

@media (hover: hover) {
  a:hover, button:hover { color:#b99d1d; text-decoration:underline; transition: all 0.3s; text-decoration:none; cursor:pointer; }
}

#no_script { position:relative; width:100%; background:#f00; color:#fff; text-align:center; padding:5px 10px; margin:0; font-size:14px; z-index:100; }

/* structure
====================================================================================================================================== */
html, body { width:100%; }
html { scroll-behavior: smooth; scroll-padding-top: 107px; height:100%; }
body { height:100%; overflow-y:scroll; overflow-x:hidden; min-width:1020px; }
#container { width:100%; font-size:1.125rem; line-height:2.1; overflow: hidden; }
.wrapper { margin:0 auto; width:1000px; overflow:hidden; }
.wrapper:after { content: ""; display: block;  clear: both; height: 0; visibility: hidden; }

#header { position:relative; }
#header .wrapper { width:1100px; }
#conts { width:100%; }
.in #conts { margin-bottom:3em; }
#conts .wrapper { overflow:visible; }
#conts .wrapper:after { content: ""; display: block;  clear: both; height: 0; visibility: hidden; }
#footer { clear:both; padding:55px 0; text-align:center; overflow:hidden; }


/* common
====================================================================================================================================== */
/*default heading*/
h1, h2, h3, h4, h5, h6 { font-weight:normal; margin:0 0 0.8em; line-height:1.5; }
h1 { font-size:1.8em; }
h2 { font-size:1.9em; margin-bottom:20px; color:#7b6737; letter-spacing:0.1em; }
h3 { font-size:1.34em; margin-bottom:20px; letter-spacing:0.1em; }
h4 { font-size:1.13em; margin-bottom:0.5em; }
h5 { position:relative; padding-left:1em; font-size:1.1em; }
h5:before { content:"●"; position:absolute; left:0; top:0.45em; font-size:0.7em; color:#ddc06e; }
h6 { font-weight:bold; }

/*hr*/
hr { height:1px; border-bottom:solid 1px #e6e6e6; background:none; margin:20px 0; overflow:hidden; }

/*段落*/
table p { margin-bottom:0; }

/*行間詰め*/
.line_height_min { line-height:1.7em; }

/*カラー*/
.gold, a.gold { color:#b99d1d; }

/*ゴシック*/
.flow dl p, .font_gothic, form input[type="text"], form textarea { font-family:"游ゴシック体", "Yu Gothic", YuGothic, sans-serif; }
.flow dl p { font-size:0.8em; }

/*container*/
.section_box { clear:both; padding:3em 0 0; margin-bottom:2em; }
.section_box:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }

/*索引*/
.list_box { border-bottom:dotted 1px #222; padding:0 0 20px; margin-bottom:20px; overflow:hidden; }
.list_box:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.list_box .icon_img { width:auto; line-height:1; }
.list_box .icon_img img { float:left; width:100px; height:auto; margin:0 10px 0 0; padding:0; }
.list_box .text_box { position:relative; margin:0; padding:0; overflow:hidden; }
.list_box .text_box h3 { margin:0; padding:0; border:none; font-size:1.1em; }
.list_box .text_box .icon_new { display:inline-block; background:#f08300; padding:0 8px; height:18px; line-height:18px; font-size:11px; font-weight:normal; margin:0.25em 10px 0 0; color:#fff; vertical-align:top; }
.list_box .text_box a { font-weight:bold; }
#conts .list_box p { padding:0; margin:0; overflow:hidden; }
#conts .list_box p img { display:inline; float:left; }
:root *> #conts .list_box p img { display:inline-block; float:none; }

/*image背景ボタンリスト*/
.bg_img_btn a { display:block; background:no-repeat; text-indent:100%; white-space:nowrap; overflow:hidden; }

/*image100%*/
.img_wide { width:100%; }

/*button design*/
a.btn, #myreset { position:relative; display:inline-block; min-width:240px; padding:15px 50px; text-align:center; line-height:1.4; border:solid 2px #ddc06e; vertical-align:middle; }
a.btn:before, #myreset:before { content:""; display:inline-block; background:url(../images/icon.png) no-repeat; width:9px; height:16px; margin-right:10px; vertical-align:middle; }
a.btn:hover, #myreset:hover { background-color:#ddc06e; color:#fff; }
/*戻る*/
a.btn.back, #myreset { min-width:0; padding:0; border:none; }
a.btn.back:hover, #myreset:hover { background:none; color:#ddc06e; }
a.btn.back:before, #myreset:before { background-image:url(../images/icon_back.png); margin-right:14px; }

/*table*/
table { width:100%; border:none; margin:0 0 25px; padding:0; font-size:1em; border-collapse:collapse; vertical-align:top; }
table th { width:auto; max-width:177px; padding:0 45px 0 5px; border:none; font-weight:normal; white-space:nowrap; }
table td { padding:0 0 5px; border:none; width:100%; }
table ul { font-size:0.9em; }

table.list_type th, table#confirm th { position:relative; padding-left:1em; word-break:break-all; }
table.list_type th:before, table#confirm th:before { content:"●"; position:absolute; left:0; top: calc(0.5lh - 0.5em); font-size:0.7em; color:#ddc06e; }
table.list_type th,
table.list_type td { vertical-align: top; }

table#confirm { border-bottom:solid 1px #e6e6e6; }
table#confirm th { min-width:220px; padding-right:20px; white-space:normal; line-height:1.7; }
table#confirm th, table#confirm td { padding-bottom:2em; }

/*カラーbox*/
.point_box { background:#f2f2f2; padding:20px 20px 10px; margin-bottom:1em; }


/* header
====================================================================================================================================== */
/*サイトタイトル*/
#header .header_menu { position:absolute; width:100%; padding:20px 0 25px; background:#fff; background:rgba(255,255,255,0.9); }
.in #header .header_menu { position:static; padding-bottom:1.8em; }
#header #site_title { display:inline; }
#header #site_title a, #header #site_title a:hover { display:inline-block; margin-top:10px; color:#b99d1d; font-size:1.2em; letter-spacing:0.12em; margin:0 0 15px; font-weight:bold; text-decoration:none; }


#header .header_nav { float:right; text-align:right; font-size:0; }
#header .header_nav li { display:inline-block; font-size:14px; }
#header .header_nav li a { display:inline-block; background:url(../images/icon_fb.png) no-repeat left center; padding:2px 0 2px 33px; margin-left:27px; }
#header .header_nav li.line a { background-image:url(../images/icon_line.png); }


/* globalnavi
====================================================================================================================================== */
#globalnavi { z-index:2; }
#globalnavi ul { clear:both; border-left:solid 1px #000; font-size:0.88em; }
#globalnavi ul:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
#globalnavi ul li { float:left; width:20%; text-align:center; line-height:1.3; }
#globalnavi ul li a { display:block; border-right:solid 1px #000; }

/* contents
====================================================================================================================================== */
.box_bg { background:url(../images/item_omoi.jpg) no-repeat; min-height:475px; margin:0 0 90px -50px; padding:40px 0 0 54%; overflow:hidden; }
.box_bg.right { background-position:right top; margin:0 -50px 100px 0; padding:40px 54% 0 0; }
.box_bg p { margin-bottom:45px; }
.box_bg .btn { margin-bottom:45px; }

/*それぞれの背景*/
.box_bg.loveantique { background-image:url(../images/item_loveantique.jpg); }
.bg_image_box.anshin { background:url(../images/bg_grade.gif) repeat-x left top; overflow:hidden; }
.bg_image_box.anshin .inner { background:url(../images/item_anshin.jpg) no-repeat center top; padding-top:110px; }
.bg_image_box .anshin_inner { min-height:540px; }

/*お問い合わせ*/
.contact_box { background:url(../images/bg_gold.jpg); padding:43px 0 30px; font-weight:bold; }
.contact_box .wrapper { width:1100px; }
.contact_box .column03 { width:100%; font-size:1.2em; overflow:visible; }
.contact_box .column03:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.contact_box .column03 .box { float:left; width:34%; height:70px; border-right:dotted 2px #fff; padding:15px 0; line-height:1.8; text-align:center; letter-spacing:0.1em; overflow:visible; }
.contact_box .column03 .box.line { width:32%; }

.contact_box .column03 .box.tel { font-size:0.93em; line-height:0.8; }
.contact_box .column03 .box.tel span { margin-bottom:-0.3em; }
.contact_box .column03 .box:first-child { border-left:dotted 2px #fff; }
.contact_box .icon_mail { display:inline-block; background:url(../images/icon_mail.png) no-repeat left center; padding:2px 0 2px 60px; }
.contact_box .qr { margin:-30px -5px 0 25px; vertical-align:top; }

/*査定の流れ*/
.flow { background:#f0e6c9; margin:140px 0 2px; overflow:visible; }
.flow:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.flow dl { position:relative; float:left; width:28%; height:175px; background:url(../images/next.png) no-repeat right bottom; text-align:center; padding-top:40px; padding-right:35px; line-height:1.5; }
.flow dl:before { content:""; position:absolute; left:50%; top:-130px; display:block; width:130px; height:161px; margin-left:-80px;/*半分65pxたす15px*/ background:url(../images/step01.jpg) no-repeat; }
.flow dl.step01 { margin-left:-5%; }
.flow dl.step02:before { background-image:url(../images/step02.jpg); }
.flow dl.step03:before { background-image:url(../images/step03.jpg); }
.flow dl.step04 { width:21%; background:none; padding-right:0; padding-left:20px; }
.flow dl.step04:before { background-image:url(../images/step04.jpg); margin-left:-55px; }
.flow dt, .flow dd { margin:0; padding:0; }
.flow dl h4 { margin-bottom:7px; }
.flow dl .step { display:block; color:#fff; font-size:11px; letter-spacing:0.7em; margin-bottom:5px; }
.flow dl p { font-size:0.8em; }

/*FAQ*/
.faq { background:url(../images/bg_asagao.jpg) center top; background-size:auto 100%; margin-bottom:0; padding:70px 0 40px; }
.faq .inner { background:url(../images/item_semi.png) no-repeat center 400px; }
.faq_list { position:relative; margin-left:40px; margin-bottom:50px; }
.faq_list:before { content:"Q"; position:absolute; left:-38px; color:#999; font-size:1.45em; line-height:1.5; }
.faq_list dt { font-size:1.12em; font-weight:bold; letter-spacing:0.1em; }
.faq_list dd { position:relative; margin-left:24px; }
.faq_list dd:before { content:"A."; position:absolute; left:-24px; }

/*店舗情報*/
.info { background:url(../images/item_info.jpg) no-repeat center top; min-height:497px; text-shadow:0 0 5px #fff; }

/*map*/
.map iframe { width:100%!important; background:#ccc; }


/* フォーム画面
====================================================================================================================================== */
.line_satei { padding-bottom:30px; }
.qr_box { overflow:hidden; padding-bottom:20px }
.line_satei .color_line { display:inline-block; background:url(../images/icon_line_g.png) no-repeat left center; padding:2px 5px 2px 32px; }
.line_satei .color_line { display:inline-block; background:url(../images/logo_line_icon.png) no-repeat left bottom; width:83px; height:21px; padding:0; margin-right:4px; margin-bottom:0.2em; text-indent:100%; white-space:nowrap; overflow:hidden; vertical-align:text-top; }
.line_satei .color_line { color:#00b300; }
.line_satei h4 { line-height:1.7; }

form input, form button { font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-size:14px; }
form button { font-size:18px; }
form input[type="text"], form textarea { background:#f0e6c9; padding:13px 18px; border:none; color:#4d4d4d; font-size:16px; font-weight:normal; border-radius:0; }
form input[type="text"] { width:100%; }
form textarea { width:100%; height:220px; line-height:1.6; }
form input[type="submit"] { transition: background-color 0.3s, color 0.3s; cursor:pointer; }
form input[type="submit"]:hover { transition: all 0.3s; text-decoration:none; }

/*ボタン*/
form input.submit_btn { float:right; position:relative; display:inline-block; background:#d7bb6d url(../images/icon.png) no-repeat 50px center; border:solid 2px #ddc06e; min-width:240px; padding:13px 20px 13px 40px; text-align:center; font-size:18px; line-height:1.4; vertical-align:middle; letter-spacing:0.2em; border-radius:0; }
form input.submit_btn:hover { background-color:#b99d1d; border-color:#b99d1d; color:#fff; }

/*画像ファイルアップ*/
form input.txt[type="text"] { max-width:340px; background:#fff; padding:7px; border:solid 2px #e6e6e6; font-size:14px; line-height:1; }
form button.btn { width:80px; font-size:14px; cursor:pointer; }
form .uploader { display:none; }

/*隠しボタン*/
form .file_up { display:inline-block; position:relative; width:80px; height:24px; overflow:hidden; line-height:1; vertical-align:middle; }
form .file_up button.btn { width:80px; height:24px; }
form .file_up input { display:block; opacity: 0; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0); position: absolute; right: 0; top: 0; margin: 0; font-size:0; width:100%; height:100%; cursor: pointer; }

/*confilm*/
.error { color:#f33; font-weight:normal; }
.error:before { content:"※"; }

/*調整*/
form dl { margin-bottom:25px }
form dt { position:relative; padding-left:1.4em; padding-top:0.4em; margin-bottom:0.4em; line-height:1.8; }
form dt:before { content:"●"; position:absolute; left:0; top:0.4em; color:#ddc06e; }
form .column02 { overflow:hidden; }
form .column02 dt { float:left; width:27%; margin-bottom:0; }
form .column02 dd { float:left; width:73%; }

form .form_file_group { margin-bottom:20px; overflow:hidden; }
form .file_list { margin-bottom:10px; overflow:hidden; }
form .form_tit { clear:both; letter-spacing:0.2em; padding-right:10px; }


/* footer
====================================================================================================================================== */
#footer .wrapper { text-align:center; letter-spacing:0.1em; }
#footer address { margin-bottom:3px; }

#footer small { font-size:0.78em; }


/* side_fixed_box
====================================================================================================================================== */
.top_page { display:block; position:fixed; right:0; bottom:70px; background:#fff url(../images/icon_pagetop.png) no-repeat center 20px; padding:52px 10px 20px; border:solid 2px #E6E6E6; color:#808080; font-size:12px; border-right:0; border-top-left-radius:10px; border-bottom-left-radius:10px; z-index:10; }
@media (hover: hover) {
  .top_page:hover { text-decoration:none; color:#808080; opacity:0.8; }
}

