﻿@charset "utf-8";

/* 汎用 */
a:hover img { opacity: 0.8; filter: alpha(opacity=80); -moz-opacity: 0.8; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 30px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 30px; }
.mb60 { margin-bottom: 30px; }
.mb70 { margin-bottom: 70px; }
.mb100 { margin-bottom: 100px; }
.mr40 { margin-right: 40px; }
.tal { text-align: left; }
.tac { text-align: center; }
.tar { text-align: right; }
.st { font-weight: bold; }
.fl { float: left; }
.fr { float: right; }
.fs16 { font-size: 16px; }
.fs18 { font-size: 18px; }
.flex { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; }
.flex_no_justify { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.f_min { font-family: "Yu Mincho Medium", "Yu Mincho Medium", "Yu Mincho", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; }
.f_times { font-family: TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif; }
.f_arial { font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; }

/*============================
#index
============================*/
#index #header { width: 100%; }
#index #header img { width: 100%; }
#index .container { background: #eaeade; }
#index .inner { padding: 5vw 2vw 5vw; }
#index .inner img { width: 100%; }
#index .inner .contact01 { background: url(../images/img03.jpg) no-repeat center center / cover; height: 54vw; padding: 0 4vw; }
#index .inner .contact01 p.tel { text-align: center; padding-top: 12vw; }
#index .inner .contact01 p.tel a { display: block; }
#index .inner .contact01 p.tel a img { width: 95%; }
#index .inner .contact01 p { font-size: 4vw; text-align: center; padding: 0.2vw; line-height: 5.5vw; }
#index .inner .contact01 p a { display: block; }
#index .inner .sec01 { padding: 0 2vw; }
#index .inner .sec02 { padding: 0 2vw; }
#index .inner .sec02 p.wide { width: 110%; margin-left: -8%; margin-top: 5vw; }
#index .inner .sec03 { padding: 0 2vw; }
#index .inner .sec03 p { font-size: 4vw; color: #5f5045; }
#index .inner .sec03 .voice_sec { padding: 7vw 0 0; position: relative; }
#index .inner .sec03 .voice_sec p.voice_text01 { width: 46vw; position: absolute; top: 21vw; right: 4vw; }
#index .inner .sec03 .voice_sec p.voice_text01 span { font-size: 4vw; text-align: right; display: block; }
#index .inner .sec03 .voice_sec p.voice_text02 { width: 46vw; position: absolute; top: 66vw; right: 4vw; }
#index .inner .sec03 .voice_sec p.voice_text02 span { font-size: 4vw; text-align: right; display: block; }
#index .inner .sec03 .voice_sec p.voice_cation { font-size: 2.7vw; text-align: right; position: absolute; bottom: 2vw; right: 3vw; color: #7f7f7f; }
#index .inner .contact02 { background: url(../images/img09.png) no-repeat center / cover; height: 110vw; padding: 0 4vw; position: relative; background-size: contain; }
#index .inner .contact02 p.tel { padding-top: 64vw; text-align: center; }
#index .inner .contact02 p.tel a img { width: 95%; }
#index .inner .contact02 p.time { font-size: 4vw; text-align: center; line-height: 5vw; padding: 0.4vw 0 0.8vw; color: #5f5045; width: 87vw; }
#index .inner .contact02 p.time span.st { font-size: 4vw; }
#index .inner .contact02 p a { display: block; }
#index .inner .sec04 p:nth-child(2), #index .inner .sec04 p:nth-child(3) { padding: 0 2vw; }
#index .inner .sec05 { position: relative; }
#index .inner .sec05 p.reason { width: 99%; }
#index .inner .sec05 p.type1 { font-size: 3.4vw; color: #fff; line-height: 5.5vw; letter-spacing: 0.3vw; }
#index .inner .sec05 p.type1.reason_text01 { padding: 0 4vw; position: absolute; top: 128vw; left: 0; width: 81vw; right: 0; margin: 0 auto; }
#index .inner .sec05 p.type1.reason_text02 { position: absolute; top: 246vw; right: 0; left: 0; margin: 0 auto; width: 81vw; }
#index .inner .sec05 p.type1.reason_text03 { position: absolute; top: 360vw; right: 0; left: 0; margin: 0 auto; width: 81vw; }
#index .inner .sec05 p:nth-child(5) { padding: 0 2.5vw; }
#index .inner .sec05 p.type2 { font-size: 3.5vw; color: #5f5045; padding: 0 2.5vw; margin: 2vw 0 7vw; line-height: 6vw; }
#index .inner .sec07 { padding: 0 2vw; }
#index .inner .sec07 p:first-child { width: 110%; margin: 0 0 6vw -5.5%; }
#index .inner .sec08 { padding: 0 2vw; position: relative; margin-bottom: 13vw; }
#index .inner .sec08 p { font-size: 4vw; color: #5f5045; text-align: center; }
#index .inner .sec08 p.flow_position { position: absolute; right: 0; left: 0; width: 87vw; margin: 0 auto; }
#index .inner .sec08 p.flow_text01 { top: 118vw; }
#index .inner .sec08 p.flow_text02 { top: 238vw; }
#index .inner .sec08 p.flow_text03 { top: 355vw; }
#index .inner .sec08 p.flow_text04 { top: 475vw; }
#index .inner .sec08 p.flow_text05 { top: 588vw; }
#index .inner .sec08 p.flow_text06 { top: 693vw; }
#index .inner .contact02 p.free { position: absolute; top: -4vw; left: 2vw; width: 62%; }
#index #footer { position: fixed; bottom: 0; background: #fef7e7; border-top: 7px solid #eda528; width: 100%; padding-top: 2vw; }
#index #footer p { text-align: center; }
#index #footer .ft_contact img { width: 70%; }
#index #footer p img { }
#index #footer .ft_box1 { float: left; padding: 1vw 0 2vw 6vw; }
#index #footer .ft_box1 p { width: 62vw; }
#index #footer .ft_box1 p a { display: block; }
#index #footer .ft_box1 p a img { width: 100%; }
#index #footer .ft_box1 .ft_text { font-size: 3.4vw; color: #505f45; }
#index #footer .ft_box1 .ft_text span.st { font-size: 3.5vw; color: #505f45; }
#index #footer .btn { padding: 2vw 5vw 0 0; float: right; width: 25vw; }
#index #footer .btn a { display: block; }
#index #footer p.btn a img { width: 80%; }

/*============================
#form
============================*/
#form { background: url(../images/bg.jpg); padding: 0 4vw; }
#form header#header02 h1 { padding: 5vw 0 4vw; }
#form main { color: #5f5045; }
#form main h2 { font-size: 4.5vw; color: #fff; padding: 1.5vw 0.3vw; background: url(../images/ttl.jpg); }
#form main h2:before { content: "|"; padding-right: 2vw; font-weight: bold; font-size: 5vw; }
#form main .sec01 ul { padding: 2vw 0px 5vw; }
#form main .sec01 ul li { padding: 1vw 0px; font-size: 4vw; position: relative; padding-left: 5vw; }
#form main .sec01 ul li:before { content: "■"; position: absolute; left: 0; }
#form main .sec01 ul li span { color: #de1826; font-weight: bold; font-size: 4vw; }
#form main .sec02 h2 { margin-bottom: 5vw; }
#form main .sec02 dl { line-height: 8vw; }
#form main .sec02 dl dt { color: #8bbb3a; font-size: 4vw; font-weight: bold; }
#form main .sec02 dl dt:before { content: "■"; padding-right: 2vw; color: #8bbb3a; }
#form main .sec02 dl dd { margin-left: 5vw; font-size: 4vw; }
#form main .sec02 dl dd span { color: #de1826; font-size: 4vw; margin-right: 1vw; }
#form main .sec02 table { margin: 4vw 0 7vw; border: 1px solid #ef85a8; }
#form main .sec02 table tbody .tr01 th { padding: 2vw; font-size: 4vw; background: #ef85a8; text-align: center; color: #fff; border-right: 1px solid #ffb9d0; }
#form main .sec02 table tbody .tr01 .last { border-right: none; }
#form main .sec02 table tbody .tr02 th, #form main .sec02 table tbody .tr03 th { width: 20vw; padding: 3vw 2vw 3vw 3vw; font-size: 4vw; text-align: center; background: #ffd1e0; letter-spacing: 3vw; font-weight: bold; }
#form main .sec02 table tbody .tr03 { border-top: 1px solid #ffb9d0; }
#form main .sec02 table tbody tr td { background: #fff; text-align: center; border-right: 1px solid #ffb9d0; }
#form main .sec02 table tbody tr td span { font-weight: bold; color: #de1826; }
#form main .sec03 p { padding: 3vw 0 6vw; font-size: 3.5vw; line-height: 6vw; }
#form main .sec03 form dl dt:before { content: "■"; padding-right: 2vw; }
#form main .sec03 form dl dt { margin-bottom: 1vw; font-size: 4vw; font-weight: bold; }
#form main .sec03 form dl dt span { display: inline-block; color: #de1826; padding: 0 1vw 1.5vw; }
#form main .sec03 form dl dd { margin-bottom: 3vw; }
#form main .sec03 form dl dd input { width: 91%; height: 8vw; border: none; padding: 1vw 4vw; }
#form main .sec03 form .dl03 { margin-bottom: 6vw; }
#form main .sec03 form .dl03 dd input { width: 4vw; height: 4vw; }
#form main .sec03 form .dl03 dd .input01 { margin: 0 1vw 0 0; }
#form main .sec03 form .dl03 dd .input02 { margin: 0 1vw 0 8vw; }
#form main .sec03 form dl dd textarea { width: 100%; height: 28vw; padding: 1vw 4vw; box-sizing: border-box; resize: none; border: none; }
#form main .sec03 form dl dd ul li { display: flex; }
#form main .sec03 form dl dd ul li span { display: block; padding: 3vw 2vw 0 0; font-size: 4vw; width: 21vw; }
#form main .sec03 form dl dd ul li select { width: 36.5%; height: 10vw; margin: 0 0 3vw 3vw; }
#form main .sec03 form .btn_section ul { margin-bottom: 7vw; }
#form main .sec03 form .btn_section ul li { margin-bottom: 4vw; }
#form main .sec03 form .btn_section ul li input[type=image] { width: 100%; height: auto; }
#form main .sec03 form .btn_section ul li p.form_btn { color: #fff; text-align: center; font-size: 5vw; font-weight: bold;    /*padding: 5vw 0 4vw;*/ width: 78vw; margin: 0 auto;    /*border-radius: 12vw;*/ }

/*
#form main .sec03 form .btn_section ul li p.form_btn.pink {
    background: #ef85a8;
}

#form main .sec03 form .btn_section ul li p.form_btn.green {
    background: #8bbb3a;
}
*/
#form main .sec03 form .error { clear: both; display: block; color: #de1826; margin-bottom: 1em; }
#form footer#footer02 { background: #7a6a56; width: 110%; margin-left: -5%; text-align: center; padding: 5vw 0 3vw; }
#form footer#footer02 small { color: #fff; font-size: 3.5vw; font-weight: bold; }
.address { background: #ebebdf; text-align: center; padding-bottom: 37vw; margin: 0 auto; }
.address h1 { font-size: 20px; width: 90%; border-top: 4px solid #7b6a56; text-align: center; margin: 0 auto; padding-top: 20px; }
.address p { font-size: 16px; }
