@charset "UTF-8";

/* --------------------------------------------------
 Base
-------------------------------------------------- */
body,ol,ul,dl,li,dt,dd,table,th,td,input,textarea,select,h1,h2,h3,h4,h5,h6,input,textarea,submit,reset{
color:#222;
font-weight:normal;
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
-webkit-text-size-adjust:none;
}

body{
background-color:#fff;
min-width:320px;
font-size:85%;
line-height:1.5;
text-align:center;
word-wrap:break-word;
}

input,
textarea,
select{
color:#222;
}

ol{
margin:0 0 0 2em;
}

ol > li{
list-style:decimal outside;
margin:0 0 5px;
}

a:link,
a:visited{
color:#222;
text-decoration:underline;
}

a:hover,
a:active{
color:#222;
text-decoration:none;
}

em{
font-style:normal;
font-weight:bold;
color:#d30;
}

strong{
font-style:normal;
font-weight:bold;
}


/* --------------------------------------------------
 Wrapper
-------------------------------------------------- */
#wrapper{
max-width:640px;
min-width:320px;
margin:0 auto;
}


/* --------------------------------------------------
 Header
-------------------------------------------------- */
header{
position:fixed;
width:100%;
max-width:640px;
background:#071e32;
z-index:10;
}

/* ロゴ --------------- */
header .logo{
display:block;
float:left;
width:40%;
padding:5% 2% 0;
}

/* アイコン --------------- */
header .tel{
display:block;
float:right;
width:43%;
padding:2%;
}


/* --------------------------------------------------
 Contents
-------------------------------------------------- */
#contents{
clear:both;
position:relative;
padding-top:16.5%;
text-align:left;
}


/* --------------------------------------------------
 Box
-------------------------------------------------- */
.blcComm{
margin:0 5% 5%;
}


/* --------------------------------------------------
 Other Classes
-------------------------------------------------- */
/* クリアーフィックス --------------- */
.clearFix:after{
content: "";
clear: both;
display: block;
}

/* クリアー --------------- */
.clear{
clear:both;
}

/* 非表示 --------------- */
.hidden{
position:absolute;
text-indent:-9999px;
overflow:hidden;
}


/* --------------------------------------------------
 catchBlc
-------------------------------------------------- */
#catchBlc{
padding-bottom:5%;
background:#051523;
box-shadow:rgba(0,0,0,0.2) 0 2px 5px;
}

#catchBlc section h1{
margin-top:5%;
padding:1%;
background:#004181;
border-top-left-radius:4px;
border-top-right-radius:4px;
text-align:center;
font-size:107%;
font-weight:bold;
color:#fff;
}

#catchBlc section dl{
padding:2% 5%;
background:#fff;
border-bottom-left-radius:4px;
border-bottom-right-radius:4px;
}

#catchBlc section dt{
float:left;
font-weight:bold;
}

#catchBlc section dd{
padding:0 0 2% 4.5em;
}



/* --------------------------------------------------
 endorseBlc
-------------------------------------------------- */
#endorseBlc{
margin-top:5%;
}

#endorseBlc .frm{
margin:0 5%;
padding:5% 0;
background:url(../img/endorse_frm_top.png), url(../img/endorse_frm_btm.png);
background-repeat:no-repeat, no-repeat;
background-position:center top, center bottom;
background-size:100%, 100%;
}

#endorseBlc .inner{
padding:0 5%;
background:url(../img/endorse_frm_bg.png) repeat-y;
background-size:100%;
text-align:center;
}

#endorseBlc .frm img{
display:block;
width:90%;
margin:0 auto 3%;
border:#fff solid 5px;
box-shadow:rgba(0,0,0,0.2) 1px 2px 5px;
}

#endorseBlc .catch{
margin:3% 5%;
}

#endorseBlc .txt{
margin:0 5% 5%;
padding:5%;
background:#def0ff;
border-radius:8px;
}


/* --------------------------------------------------
 contactBlc
-------------------------------------------------- */
.contactBlc p{
display:block;
position:relative;
padding-top:58.6206%;
background:url(../img/contact_base.png) no-repeat;
background-size:100%;
}

.contactBlc img{
display:block;
position:absolute;
left:50%;
bottom:6%;
margin-left:-45%;
}


/* --------------------------------------------------
 descriptionBlc
-------------------------------------------------- */
#descriptionBlc{
padding:3% 0 8%;
background-color:#061e32;
background-image:url(../img/description_bg2.jpg), url(../img/description_bg.jpg);
background-repeat:no-repeat, no-repeat;
background-position:center bottom, center top;
background-size:100%, 100%;
box-shadow:rgba(0,0,0,0.2) 0 3px 7px;
text-align:center;
}

#descriptionBlc .catch{
font-weight:bold;
color:#fff;
}

#descriptionBlc .catch span{
padding:0 2px;
border-radius:5px;
background:#0c213c;
}

#descriptionBlc .img{
margin:-3% 2% 5%;
padding-top:5%;
border-top:#fff solid 1px;
}

#descriptionBlc .img li{
float:left;
width:33%;
}

#descriptionBlc .img img{
display:block;
width:90%;
margin:0 auto;
border:#fff solid 3px;
}

#descriptionBlc .txt li{
padding:3% 0 50px;
color:#fff;
background:url(../img/description_arrow.png) no-repeat center bottom;
font-size:90%;
}

#descriptionBlc .txt li:last-child{
padding-bottom:0;
background:none;
}

#descriptionBlc .txt li p{
padding:3% 5% 0;
}


/* --------------------------------------------------
 presentBlc
-------------------------------------------------- */
#presentBlc{
margin-top:7%;
}

#presentBlc h1{
margin-bottom:1%;
}

#presentBlc ul{
margin:-3% 5% 0;
padding:6% 5% 5%;
background:url(../img/present_bg.jpg), url(../img/present_frm_btm.png), url(../img/present_frm_bg.png);
background-repeat:no-repeat, no-repeat, repeat-y;
background-position:left top, left bottom, left top;
background-size:100%, 100%, 100%;
}

#presentBlc li:nth-child(1){
width:48%;
float:left;
}

#presentBlc li:nth-child(2){
width:48%;
float:right;
}

#presentBlc li > img{
display:block;
width:90%;
border:#fff solid 5px;
box-shadow:rgba(0,0,0,0.2) 2px 2px 5px;
}

#presentBlc li dt{
margin:5% 0 2%;
font-size:107%;
font-weight:bold;
line-height:1.4;
color:#6db616;
}

#presentBlc li dd{
font-size:90%;
}


/* --------------------------------------------------
 movieBlc
-------------------------------------------------- */
#movieBlc{
margin-top:7%;
}

#movieBlc h1{
margin:0 5%;
}

#movieBlc .movie{
margin-top:-4%;
padding:8% 10% 12%;
background:#e4e4e4;
}

#movieBlc .movie > div{
position:relative;
padding-bottom:56.287%;
height:0;
overflow:hidden;
}

#movieBlc .movie video{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}

#movieBlc .movie p{
margin-top:3%;
}

aside{
margin:-10% 5% 0;
}


/* --------------------------------------------------
 meritBlc
-------------------------------------------------- */
#meritBlc{
margin-top:5%;
padding-bottom:5%;
background:#f3f3f3;
}

#meritBlc h1{
margin-bottom:3%;
}

/* --------------------------------------------------
 pointBlc
-------------------------------------------------- */
#pointBlc{
background:url(../img/point_bg.jpg) no-repeat center 12%;
background-size:100%;
}

#pointBlc .catch{
margin:5% 5% 0;
}

#pointBlc ul{
margin-bottom:5%;
}

#pointBlc .img{
width:30%;
margin:-3% auto 0;
}

#pointBlc .txt{
margin:-5% 5% 0;
padding:7%;
background-image:url(../img/frm.png), url(../img/frm.png), url(../img/frm_bg.png);
background-repeat:no-repeat, no-repeat, repeat-y;
background-position:left top, left bottom, left top;
background-size:100%, 100%, 100%;
box-shadow:rgba(0,0,0,0.2) 0 10px 8px -4px;
}

#pointBlc .txt h1{
margin-bottom:3%;
font-size:107%;
line-height:1.4;
font-weight:bold;
color:#061e33;
}


/* --------------------------------------------------
 greetingBlc
-------------------------------------------------- */
#greetingBlc .blcComm{
margin-left:0;
margin-right:0;
padding:5%;
box-shadow:rgba(0,0,0,0.2) 0 10px 8px -4px;
}


/* --------------------------------------------------
 introBlc
-------------------------------------------------- */
#introBlc h1{
width:95%;
margin-left:1%;
}

#introBlc > div{
margin-top:-15%;
padding:5%;
background:url(../img/intro_bg.jpg);
}

/* お客様の声 --------------- */
#introBlc .voice li{
position:relative;
margin-bottom:3%;
padding:3% 0;
background-image:url(../img/frm.png), url(../img/frm.png), url(../img/frm_bg.png);
background-repeat:no-repeat, no-repeat, repeat-y;
background-position:left top, left bottom, left top;
background-size:100%, 100%, 100%;
box-shadow:rgba(0,0,0,0.2) 0 10px 8px -4px;
}

#introBlc .voice li > img{
display:block;
margin:0 auto 3%;
border:#fff solid 5px;
box-shadow:rgba(0,0,0,0.2) 0 2px 5px;
}

#introBlc .voice p{
padding:0 5%;
}

#introBlc .voice .name{
text-align:right;
}

/* ガイナ工事事例 --------------- */
#introBlc .case h1{
width:107.6388%;
margin-left:-3.7%;
}

#introBlc .case ul{
margin:-5% auto 3%;
padding:5%;
background:url(../img/case_bg.gif);
box-shadow:rgba(0,0,0,0.2) 0 0 7px;
}

#introBlc .case li{
text-align:center;
}

#introBlc .case li:first-child:after{
content:url(../img/case_arrow.png);
}

#introBlc .case li img:nth-child(1){
display:block;
margin:0 auto;
}

#introBlc .case li img:nth-child(2),
#introBlc .case li img:nth-child(3){
display:block;
width:68%;
margin:2% auto;
border:#fff solid 5px;
box-shadow:rgba(0,0,0,0.2) 0 2px 5px;
}

#introBlc .case .before{
width:25%;
max-width:96px;
}

#introBlc .case .after{
width:25%;
max-width:79px;
}

/* レポート --------------- */
#introBlc .report{
margin-bottom:3%;
padding:5%;
background-image:url(../img/frm.png), url(../img/frm.png), url(../img/frm_bg.png);
background-repeat:no-repeat, no-repeat, repeat-y;
background-position:left top, left bottom, left top;
background-size:100%, 100%, 100%;
box-shadow:rgba(0,0,0,0.2) 0 10px 8px -4px;
}

#introBlc .report h1{
float:right;
width:60%;
margin-bottom:3%;
padding-left:3%;
border-left:#061e33 solid 5px;
font-size:107%;
line-height:1.4;
font-weight:bold;
color:#061e33;
line-height:1;
}

#introBlc .report ul{
float:right;
width:65%;
}

#introBlc .report li{
border-bottom:#a5a5a5 dotted 1px;
}

#introBlc .report li a{
position:relative;
display:block;
min-height:26px;
padding-top:10px;
background:url(../../img/report_pdf_icon.png) no-repeat right 4px;
text-decoration:none;
}

#introBlc .report > img{
width:40%;
max-width:186px;
margin:-5% 0 0 -8%;
}

/* 推薦 --------------- */
#introBlc .recommend{
padding:1% 5% 5%;
background-image:url(../img/frm.png), url(../img/frm.png), url(../img/frm_bg.png);
background-repeat:no-repeat, no-repeat, repeat-y;
background-position:left top, left bottom, left top;
background-size:100%, 100%, 100%;
box-shadow:rgba(0,0,0,0.2) 0 10px 8px -4px;
}

#introBlc .recommend > img{
display:block;
width:60%;
max-width:240px;
margin:0 auto;
}

#introBlc .recommend h1{
width:100%;
margin:3% 0 0;
}

#introBlc .recommend .name{
margin:2% 0;
color:#061e33;
}


/* --------------------------------------------------
 discountBlc
-------------------------------------------------- */
#discountBlc{
padding:5% 0;
background:url(../img/discount_bg.jpg) no-repeat center top;
background-size:100%;
text-align:center;
}

#discountBlc > img{
margin-top:3%;
}

#discountBlc h1{
width:85%;
margin:0 auto;
}

#discountBlc h1+img{
width:30%;
max-width:179px;
}


/* --------------------------------------------------
 formBlc
-------------------------------------------------- */
#formBlc{
margin:0 5% 5%;
padding:3% 5% 5%;
border:#0f3667 solid 5px;
border-radius:8px;
background:url(../img/form_bg.jpg) no-repeat center top #061d35;
background-size:100%;
text-align:center;
}

#formBlc h1{
width:110%;
margin:-1% 0 3% -5%;
}

#formBlc .txt img{
margin-bottom:4%;
}

#formBlc .att{
color:#fff;
font-size:90%;
}

#formBlc .att img{
margin-top:-5px;
padding-right:1%;
vertical-align:middle;
}

#formBlc table{
margin-top:3%;
}

#formBlc th{
display:block;
padding:3%;
border-top:#ccc solid 1px;
vertical-align:middle;
}

#formBlc .required{
background:url(../img/form_icon_required.png) no-repeat 95% center #ededed;
}

#formBlc .option{
background:url(../img/form_icon_option.png) no-repeat 95% center #ededed;
}

#formBlc td{
display:block;
padding:3%;
background:#fff;
border-top:#ccc solid 1px;
vertical-align:middle;
}

#formBlc td li{
float:left;
margin-right:2%;
}

#formBlc td p{
margin-top:1%;
color:#999;
}

/* テキストボックス */
#formBlc .name,
#formBlc .mail,
#formBlc .add,
#formBlc .message{
width:95%;
}

#formBlc .tel{
width:25%;
}

#formBlc .postcode{
width:40%;
}

#formBlc .rule{
margin:5% auto;
text-align:left;
color:#fff;
}

#formBlc .rule a{
color:#fff;
}

#formBlc #formSubmit{
text-align:center;
}

#formBlc #formSubmit input[type="image"]{
width:90%;
max-width:360px;
}


/* --------------------------------------------------
 companyBlc
-------------------------------------------------- */
#companyBlc h1{
width:26%;
max-width:169px;
margin:0 auto 5%;
}

#companyBlc table{
border:#ccc solid 1px;
border-top:none;
}

#companyBlc th{
display:block;
padding:3%;
background:#ededed;
border-top:#ccc solid 1px;
vertical-align:middle;
}

#companyBlc td{
display:block;
padding:3%;
border-top:#ccc solid 1px;
vertical-align:middle;
}


/* --------------------------------------------------
 anchorToPcInSp
-------------------------------------------------- */
#anchorToPcInSp{
display:block;
margin:5%;
padding:3%;
background:#fff;
border-radius:3px;
box-shadow:rgba(0, 0, 0, 0.3) 0 0 7px 0;
text-align:center;
text-decoration:none;
color:#6e6e6e;
}

#anchorToPcInSp img{
padding-right:3%;
}


/* --------------------------------------------------
 Footer
-------------------------------------------------- */
footer{
clear:both;
margin-top:5%;
padding-top:3%;
background:#000;
font-size:85%;
color:#fff;
}

#btmPageTop{
display:block;
text-align:center;
text-decoration:none;
color:#999;
}

#btmPageTop span{
display:block;
padding:5%;
background:#444;
}


/* --------------------------------------------------
 confirmBlc
-------------------------------------------------- */
#confirmBlc{
margin:5%;
}

#confirmBlc h1{
text-align:center;
font-size:140%;
font-weight:bold;
color:#061e33;
}

#confirmBlc .txt{
margin:3% 0;
text-align:center;
}

#confirmBlc table{
margin-top:3%;
border:#ccc solid 1px;
border-top:none;
}

#confirmBlc th{
display:block;
padding:3%;
border-top:#ccc solid 1px;
vertical-align:middle;
}

#confirmBlc .required{
background:url(../img/form_icon_required.png) no-repeat 95% center #ededed;
}

#confirmBlc .option{
background:url(../img/form_icon_option.png) no-repeat 95% center #ededed;
}

#confirmBlc td{
display:block;
padding:3%;
background:#fff;
border-top:#ccc solid 1px;
vertical-align:middle;
}

#confirmBlc #formSubmit{
margin:5% auto;
text-align:center;
}

#confirmBlc #formSubmit input[type="image"],
#confirmBlc #formSubmit img{
width:90%;
max-width:360px;
}

#confirmBlc .error{
padding:3%;
box-shadow:rgba(0, 0, 0, 0.3) 0 0 7px 0;
border-radius:3px;
text-align:left;
}

#confirmBlc .error li{
margin-left:20px;
list-style-type:disc;
}

#confirmBlc .tel{
padding:5%;
box-shadow:rgba(0, 0, 0, 0.3) 0 0 7px 0;
border-radius:3px;
text-align:center;
}

#confirmBlc .tel img{
width:67%;
max-width:362px;
}

#confirmBlc > ol{
margin-top:5%;
}
