@charset "utf-8";
/* CSS Document */


/* -----------------------------------------------------------
	リセットCSS
------------------------------------------------------------*/
/*html5doctor.com Reset Stylesheet v1.4.1 2010-03-01 Author: Richard Clark - http://richclarkdesign.com*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1;}article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block;}nav ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline;background:transparent;}ins{background-color:#ff9;color:#000;text-decoration:none;}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}del{text-decoration: line-through;}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help;}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}


/* -----------------------------------------------------------
	common
------------------------------------------------------------*/
body {
color: #000;
font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka, sans-serif;
line-height: 160%;
-webkit-text-size-adjust: 100%;
}

html {
overflow-y: scroll;
}

p,li,dt,dd,th,td {
-webkit-box-sizing:border-box;
box-sizing: border-box;
}

li {
list-style: none;
}

table {
width: 100%;
border-collapse: collapse;
}

.clear {
clear: both;
}

a {
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

a:hover {
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

a:hover img {
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

h1,h2,h3 {
text-align: center;
}

em {
font-style: normal;
}

.hidden {
display: none;
}

.pc {
display: block;
}

.sp {
display: none;
}

.br-pc {
display: block;
}

.cf:after {
content: "."; 
display: block;
height: 0; 
clear: both; 
visibility: hidden;
font-size:0.1em;
line-height:0;
}



/* -----------------------------------------------------------
	共通
------------------------------------------------------------*/
header {
background: url(../img/header_bg.jpg) repeat-x;
cursor: default;
position: fixed;
width: 100%;
height: 100px;
margin: 0 auto;
-moz-box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
-webkit-box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
}

header .inner {
width: 1000px;
margin: 0 auto;
}

header h1 {
float: left;
width: 360px;
height: 50px;
padding: 25px 0 0 0;
}

header .h_nav li {
float: left;
margin: 25px 0 0 0;
}

header .h_nav li.h_btn img {
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;
border-radius: 6px; 
-moz-box-shadow: 1px 1px 3px rgba(0,0,0,0.5);
-webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.5);
box-shadow: 1px 1px 3px rgba(0,0,0,0.5);
}

a[href="tel:0800-800-5541"]{
cursor: default;
pointer-events: none;
}

#footer {
width: 100%;
background: #000;
margin: 60px auto 0;
padding: 12px 0;
color: #fff;
font-size: 14px;
text-align: center;
}

#footer02 {
position: fixed;
bottom: 0;
width: 100%;
background: #000;
margin: 60px auto 0;
padding: 12px 0;
color: #fff;
font-size: 14px;
text-align: center;
}

section.top_cont {
background: url(../img/main_bg.jpg);
background-position: 50% 100px;
width: 100%;
height: 770px;
padding: 100px 0 0 0;
}

section.top_cont .inner {
width: 1040px;
height: auto;
margin: 0 auto;
}

section.cont {
width: 100%;
margin: 50px auto 0;
padding: 0;
}

section.cont .inner {
width: 1000px;
margin: 0 auto;
padding: 0;
}

section.cont .inner02 {
width: 900px;
margin: 0 auto;
padding: 0;
}

section.cont .inner02 p {
line-height: 2;
}

section.ths_cont {
width: 100%;
height: auto;
padding: 160px 0 120px 0;
text-align: center;
}
section.ths_cont .error_messe{
padding-top: 20px;
color: #e60012;
}


section.ths_cont .inner {
width: 700px;
margin: 0 auto;
padding: 0;
}

.pink_bg  {
width: 100%;
background: rgba(230,0,18,0.5);
margin: 0 auto 30px;
padding: 0;
color: #fff;
font-size: 36px;
font-weight: normal;
}

.red_bg  {
width: 100%;
background: #dc0816;
margin: 0 auto 30px;
padding: 20px 0;
color: #fff;
font-size: 36px;
font-weight: normal;
}

.c_box {
float: left;
width: 500px;
}

.step {
display: block;
font-size: 0;
}

.step li {
display: inline-block;
width: 30%;
text-align: center;
vertical-align: middle;
}

.step li.arr {
width: 5%;
}

.step li img {
width: 90%;
height: auto;
border: 6px solid #e60012;
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;
border-radius: 6px; 
margin: 0 auto;
}

.step li.arr img {
width: 20px;
height: 27px;
border: 0px solid #e60012;
-moz-border-radius: 0px; 
-webkit-border-radius: 0px;
border-radius: 0px; 
margin: 0 auto;
}

.sol_bg {
background: url(../img/sol_bg.jpg) center top;
width: 100%;
height: 360px;
}

.contact_bg {
background: url(../img/contact_bg.gif) center top;
width: 1000px;
height: 340px;
margin: 15px auto 0;
}

.contact_bg_lp2 {
background: url(../img/contact_bg_lp2.gif) center top;
width: 1000px;
height: 340px;
margin: 15px auto 0;
}

.contact_bg_lp3 {
background: url(../img/contact_bg_lp3.gif) center top;
width: 1000px;
height: 340px;
margin: 15px auto 0;
}


.contact_btn {
padding: 192px 0 0 30px;
}

.case01 {
background: rgba(230,0,18,0.1);
margin: 0 auto 20px;
padding: 25px 25px 20px;
font-size: 18px;
-moz-border-radius: 10px; 
-webkit-border-radius: 10px; 
border-radius: 10px; 
}

.case02 {
background: rgba(230,0,18,0.2);
margin: 0 auto 20px;
padding: 25px 25px 20px;
font-size: 18px;
-moz-border-radius: 10px; 
-webkit-border-radius: 10px; 
border-radius: 10px; 
}

.case01 .name, .case02 .name {
font-size: 21px;
border-bottom: 1px solid #000;
margin: 0 0 10px 0;
padding: 0 0 8px 0;
}

.photo_box {
float: left;
width: 180px;
margin: 0 20px 0 0;
}

.txt_box {
float: left;
width: 750px;
margin: 0;
}

.ques {
background: url(../img/ques.gif) no-repeat;
background-size: 40px 40px;
background-position: 0% 0%;
padding: 0 0 0 50px;
}

p.ques  {
font-size: 20px;
font-weight: bold;
padding: 15px 0 15px 45px;
}

.ans {
background: url(../img/ans.gif) no-repeat;
background-size: 40px 40px;
background-position: 0% 0%;
padding: 0 0 0 50px;
}

p.ans  {
font-size: 16px;
margin: 0 0 15px 0;
padding: 15px 0 15px 45px;
border-bottom: 1px dotted #ccc;
}

h4.co_tit {
width: 100%;
background: #f2f2f2;
color: #000;
font-size: 20px;
text-align: center;
line-height: 1;
padding: 12px 0;
}

.tbl01 {
font-size: 16px;
font-weight: normal;
border-bottom: 1px dotted #ccc;
margin-top: 10px;
}

.tbl01 td {
text-align: left;
padding: 15px 8px;
border-bottom: 1px dotted #ccc;
}

.tbl01 td:nth-of-type(1) {
width: 20%;
}

#formwrap {
padding: 0;
}

#form {
background: #fff;
padding: 30px 0px 30px;
}

.formTable {
border-top: 1px dotted #ccc;
margin-top: 10px;
margin-bottom: 30px;
}

.ths_cont .formTable {
margin-top: 20px;
margin-bottom: 30px;
}

.formTable th,
.formTable td {
font-size: 16px;
font-weight: normal;
text-align: left;
border-bottom: 1px dotted #ccc;
}

.formTable th.bg,
.formTable td.bg {
background: #e7f8ff;
}

.formTable th {
vertical-align: middle;
min-width: 180px;
padding: 15px 10px 15px 10px;
}

.ths_cont .formTable th {
vertical-align: middle;
width: 90px;
padding: 15px 10px 15px 10px;
background: #f2f2f2;
}

.formTable td {
vertical-align: middle;
padding: 15px 10px 15px 20px;
background: #fff;
}

.formTable td span {
font-size: 14px;
display: inline-block;
margin-left: 10px;
}

.formTable td span.caution {
color: #e8192d;
font-weight: bold;
font-size: 18px;
}

.hissu {
color: #fff;
font-size: 10px;
text-align: center;
letter-spacing: 3px;
padding: 2px 4px 0 6px;
margin-right: 10px;
background: #e8192d;
}

input,
textarea,
select {
font-size: 16px;
font-family: inherit;
padding: 10px 15px;
border: 1px solid #ccc;
}

select {
padding: 10px;
margin-right: 10px;
}

input[type="radio"] {
margin-right: 10px;
border: none;
}

input[type="text"] {
width: 75%;
-webkit-box-sizing:border-box;
box-sizing: border-box;
}


input[type="email"] {
    width: 75%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    
   }
   
   
   input[type="tel"] {
    width: 75%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    }

select,
input[type="radio"],
input[type="checkbox"] {
cursor: pointer;
}

button[type="submit"],
button[type="reset"],
input[type="button"] {
cursor: pointer;
-webkit-appearance: none;
border-radius: 0;
border: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

button[type="submit"] {
display: block;
background: #009944;
width: 60%;
margin: 10px auto 20px;
padding: 15px 0;
color: #fff;
font-size: 20px;
text-align: center;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}

button[type="reset"] {
display: block;
background: #009944;
width: 60%;
margin: 10px auto 20px;
padding: 15px 0;
color: #fff;
font-size: 20px;
text-align: center;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}

.ths_cont button[type="submit"] {
display: inline-block;
background: #009944;
width: 45%;
margin: 10px auto 20px;
padding: 12px 0;
color: #fff;
font-size: 20px;
text-align: center;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}

.ths_cont input[type="button"] {
display: inline-block;
background: #888;
width: 45%;
margin: 10px auto 20px;
padding: 12px 0;
color: #fff;
font-size: 20px;
text-align: center;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}

button[type="submit"]:hover,
ibutton[type="reset"]:hover,
button[type="button"]:hover {
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

textarea {
width: 70%;
}

.mt40 {
margin-top: 40px;
}

.mb10 {
margin-bottom: 10px;
}

.mb40 {
margin-bottom: 40px;
}

.pdt40 {
padding-top: 40px;
}

img.float_l {
float: left;
}

.t_center {
text-align: center;
}

img.img_center {
display: block;
margin: 0 auto;
}

img.m_img {
max-width: 100%;
width: auto;
height: auto;
margin: 0 auto;
vertical-align: bottom;
}

.scroll > a {
 display: block; 
 padding-top: 120px; 
 margin-top: -120px;
}



@media screen and (max-width: 767px) {

/* -----------------------------------------------------------
	共通
------------------------------------------------------------*/
#wrap {
overflow: hidden;
}

.pc {
display: none;
}

.sp {
display: block;
}

header {
background: url(../img/header_bg.jpg) repeat-x;
cursor: default;
position: fixed;
width: 100%;
height: 100px;
margin: 0 auto;
-moz-box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
-webkit-box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
}

header .inner {
width: 100%;
margin: 0 auto;
}

header h1 {
float: none;
width: 100%;
height: auto;
padding: 3px 0 0 0;
}

header h1 img {
display: block;
width: 84%;
height: auto;
margin: 0 auto;
}

header .h_nav li {
float: left;
margin: 5px 0 0 0;
}

header .h_nav li:nth-of-type(1) {
width: 60%;
}

header .h_nav li:nth-of-type(2) {
width: 40%;
}

header .h_nav li:nth-of-type(1) img {
display: block;
width: 100%;
height: auto;
margin: 0 auto;
}

header .h_nav li.h_btn img {
display: block;
width: 90%;
height: auto;
margin: 8px 0 0 0;
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;
border-radius: 6px; 
-moz-box-shadow: 1px 1px 3px rgba(0,0,0,0.5);
-webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.5);
box-shadow: 1px 1px 3px rgba(0,0,0,0.5);
}

a[href="tel:0800-800-5541"]{
cursor: pointer;
pointer-events: auto;
}

#footer {
width: 100%;
background: #000;
margin: 40px auto 0;
padding: 12px 0;
color: #fff;
font-size: 12px;
text-align: center;
}

section.top_cont02 {
width: 100%;
padding: 100px 0 0 0;
}

section.top_cont02 .inner {
width: 100%;
height: auto;
margin: 0 auto;
}

section.cont {
width: 100%;
margin: 0 auto 20px;
padding: 0;
}

section.cont .inner {
width: 94%;
margin: 0 3%;
padding: 0;
}

section.cont .inner02 {
width: 100%;
margin: 0 auto;
padding: 0;
}

section.cont .inner02 p {
padding: 0 3%;
}

section.ths_cont {
width: 100%;
height: auto;
padding: 120px 0 80px 0;
}

section.ths_cont .inner {
width: 100%;
margin: 0 auto;
padding: 0;
}

section.ths_cont p {
padding: 0 5%;
}

.pink_bg  {
width: 100%;
background: rgba(230,0,18,0.5);
margin: 0 auto 15px;
padding: 0;
color: #fff;
font-size: 36px;
font-weight: normal;
}

.red_bg  {
width: 100%;
background: #dc0816;
margin: 0 auto 15px;
padding: 16px 0;
color: #fff;
font-size: 24px;
font-weight: normal;
}

.c_box {
float: none;
width: 100%;
}

.step {
display: block;
font-size: 0;
}

.step li {
display: inline-block;
width: 100%;
text-align: center;
vertical-align: middle;
}

.step li.arr {
width: 100%;
padding: 10px 0;
}

.step li img {
width: 90%;
height: auto;
border: 6px solid #e60012;
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;
border-radius: 6px; 
margin: 0 auto;
}

.step li.arr img {
width: 27px;
height: 20px;
border: 0px solid #e60012;
-moz-border-radius: 0px; 
-webkit-border-radius: 0px;
border-radius: 0px; 
margin: 0 auto;
}

.sol_bg {
background: url(../img/sol_bg.jpg) center top;
width: 100%;
height: 360px;
}

.contact_bg02 {
background: url(../img/contact_bg_sp.gif) no-repeat;
background-position: 50% 0;
background-size:100% 100%;
width: 100%;
height: auto;
margin: 15px auto 0;
padding: 0 0 2% 0;
}

.contact_bg02 .tel02 {
margin: 35% 0 0 0;
}

.contact_btn {
padding: 182px 0 0 30px;
}

.case01 {
background: rgba(230,0,18,0.1);
margin: 0 auto 15px;
padding: 20px 12px 10px;
font-size: 16px;
-moz-border-radius: 10px; 
-webkit-border-radius: 10px; 
border-radius: 10px; 
}

.case02 {
background: rgba(230,0,18,0.2);
margin: 0 auto 15px;
padding: 20px 12px 10px;
font-size: 16px;
-moz-border-radius: 10px; 
-webkit-border-radius: 10px; 
border-radius: 10px; 
}

.case01 .name, .case02 .name {
font-size: 20px;
border-bottom: 1px solid #000;
margin: 0 0 10px 0;
padding: 0 0 8px 0;
}

.photo_box {
float: none;
width: 94%;
margin: 0 3% 5%;
}

.txt_box {
float: none;
width: 94%;
margin: 0 3%;
}

.ques {
background: url(../img/ques.gif) no-repeat;
background-size: 36px 36px;
background-position: 0% 0%;
padding: 0 0 0 42px;
}

p.ques  {
font-size: 18px;
font-weight: bold;
padding: 15px 0 15px 42px;
}

.ans {
background: url(../img/ans.gif) no-repeat;
background-size: 36px 36px;
background-position: 0% 0%;
padding: 0 0 0 42px;
}

p.ans  {
font-size: 16px;
margin: 0 0 15px 0;
padding: 15px 0 15px 42px;
border-bottom: 1px dotted #ccc;
}

.tbl01 {
font-size: 16px;
font-weight: normal;
border-top: 1px dotted #ccc;
border-bottom: 0px dotted #ccc;
margin-top: 10px;
}

.tbl01 td {
display: block;
width: 100%;
text-align: left;
padding: 8px 8px;
border-bottom: 1px dotted #ccc;
}

.tbl01 td:nth-of-type(1) {
width: 100%;
font-weight: bold;
}

#formwrap {
padding: 0;
}

#form {
background: #fff;
padding: 30px 0 40px;
}

.formTable {
margin-bottom: 20px;
border-top: 1px dotted #ccc;
}

.formTable th,
.formTable td {
display: block;
width: 100%;
padding: 10px 15px !important;
border-bottom: 1px dotted #ccc !important;
}

.formTable th {
font-size: 16px;
font-weight: normal;
vertical-align: middle;
}

.ths_cont .formTable th {
width: 100%;
background: #f2f2f2;
}

.formTable td {
font-size: 14px;
}

.formTable td span {
font-size: 12px;
margin: 0 0 10px 0;
}

.formTable td span.caution {
font-size: 12px;
margin-top: 5px;
}

.hissu {
padding-bottom: 2px;
font-weight: normal;
}

input,
textarea,
select {
font-size: 16px;
font-family: inherit;
padding: 10px 15px;
border: 1px solid #ddd;
}

select {
padding: 10px;
margin-right: 10px;
}

input[type="radio"] {
margin-right: 10px;
border: none;
}

input[type="text"] {
width: 100%;
-webkit-box-sizing:border-box;
box-sizing: border-box;
}

textarea {
width: 85%;
}

select,
input[type="radio"],
input[type="checkbox"] {
cursor: pointer;
}

input[type="submit"],
input[type="reset"],
input[type="button"] {
cursor: pointer;
-webkit-appearance: none;
border-radius: 0;
border: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

input[type="submit"] {
display: block;
background: #009944;
width: 80%;
margin: 10px auto 20px;
padding: 15px 0;
color: #fff;
font-size: 20px;
text-align: center;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}

img.m_img {
line-height: 0;
max-width: 100%;
width: auto;
height: auto;
margin: 0 auto;
vertical-align: bottom;
}

img.m_img02 {
line-height: 0;
max-width: 100%;
width: auto;
height: auto;
margin: 0 auto;
vertical-align: bottom;
}

.pdt40 {
padding-top: 20px;
}

.scroll > a {
 display: block; 
 padding-top: 105px; 
 margin-top: -105px;
}

}

/* スマホ縦 */
@media screen and (max-width: 479px) {


}



