@charset "utf-8";

.sp{
display: block;
}
.pc{
display: none;
}
#wrap{
width: 100%;
}
main#wrapInner{
width: 100%;
}
section.section{
width: 90%;
margin: 0 auto;
}
section.section2{
width: 100%;
padding: 10% 0;
background: #42d2ce;
}
section.section3{
width: 80%;
margin: 0 auto;
padding: 7.5% 5% 0;
background: #fff;
}

/* heading
-------------------------------------*/
h2.h2{
width: 100%;
margin-bottom: 20px;
color: #2e6cac;
text-align: center;
}
h2.h2 span{
font-size: 75%;
}
h2.h2-A{
margin: 30px 0 20px;
text-align: center;
}
h3.h3{
margin-bottom: 20px;
}
h3.h3-A{
margin-bottom: 20px;
text-align: center;
}
h4.h4{
margin: 24px 0 20px;
}
h5.h5{
margin-bottom: 3px;
vertical-align: middle;
background: linear-gradient(transparent 50%, #e7d5f3 40%);
}

/* header
-------------------------------------*/
header{
width: 100%;
padding: 20px 0;
background: #fff;
z-index: 9999;
position: fixed;
top:0;
}
header > div.clearfix{
padding: 0 10px;
}
header h1{
width: 40%;
float: left;
}
header h1 a:hover,
header div div a:hover{
opacity: 0.7;
}
header div div{
float: right;
width: 50%;
}

/* info
-------------------------------------*/
section.info{
line-height: 1.5;
}
section.section article section.info{
margin-top: 40px;
}
section.section article section.info h3.h3{
margin-bottom: 40px;
padding: 0.75em 0;
color: #222;
text-align: center;
background: #e7d5f3;
border-radius: 10px;
}
section.section article section.info h3.h3:after{
color: #fff;
font-size: 75%;
vertical-align: middle;
text-shadow: 1px 1px 30px #8539d2;
text-transform: uppercase;
display: block;
}
section.section article section.info:first-of-type h3.h3:after{
content: "Request materials";
}
section.section article section.info:last-of-type h3.h3:after{
content: "Tel mail consultation";
}
section.section article section.info div figure{
float: left;
width: 40%;
margin-right: 1em;
}

/* sosyoku
-------------------------------------*/
p.line{
margin: 40px 0;
}

/* footer
-------------------------------------*/
footer{
margin-bottom: 11%;
font-size: 75%;
z-index: 9998;
}
footer p.line{
position: absolute;
top: -55px;
}

/* pagetop
-------------------------------------*/
footer p#copyright{
margin-top: 0;
}
p#pagetop a{
width: 40px;
padding: 1em 0;
background: #e5006e;
border-radius: 5px 0 0 5px;
color: #fff;
text-decoration: none;
line-height: 2.5;
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
position: fixed;
right: 0;
bottom: 12%;
z-index: 9000;
}
p#fixed.sp{
width: 100%;
position: fixed;
bottom:0;
z-index: 9999;
}