﻿@charset "utf-8";

/*----------------------------------------------------------------

layout Set

----------------------------------------------------------------*/

/* Header
----------------------------------------------- */

#header{
position: relative;
background: #222;
padding: 12px 0 0;
}
#header .inner{
width: 100%;
margin: 0 auto;
padding: 0;
overflow: hidden;
}
#header .logo{
text-align: center;
height: 40px;
}
#header .tel {
text-align: center;
color: #ffe30a;
font-family: 'Oswald',impact,sans-serif;
font-size: 2em;
letter-spacing: 2px;
}
#header .tel span {
background: url(../images/common/icon_phone.png) no-repeat left center;
padding: 0 0 0 40px;
background-size: 33px;
}
#header .tel a {
color: #ffe30a;
text-decoration: none;
}
#header .tel a {
color: #ffe30a
}

#global-nav {
position: relative;
margin: 0;
height: auto;
overflow: hidden;
z-index: 1000;
background: #fff;
}
#menu {
display: block;
height: auto;
width: 980px;
margin: 10px auto 0;
padding: 0;
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-transition: all 0.35s ease;
transition: all 0.35s ease;
}
#menu li {
list-style: outside none none;
float: left;
margin: 0 0 23px 30px;
font-weight: bold;
}
#menu li a {
padding: 20px 20px 5px;
border-top: none;
border-right: none;
background: none;
color: #222;
position: relative;
text-decoration: none;
display: inline-block;
margin: auto;
}
#menu .red_color a{
color: #FF0004;
}
#menu .red_color a:hover{
color: #FF0004;
}
#menu li a:before {
position: absolute;
content: '';
-webkit-transition: all 0.35s ease;
transition: all 0.35s ease;
opacity: 0;
top: 25%;
bottom: 15%;
left: 0;
right: 0;
border-bottom: 2px solid #333;
}
#menu li a:hover,
#menu li.current a {
color: #222;
}
#menu li.current a {
border-bottom: 2px solid #ccc;
}
#menu li a:hover:before,
#menu li .current a:before {
opacity: 1;
top: 0;
bottom: 0;
}
#menu {
display: none;
}
@media screen and (min-width : 768px) {
#header{
padding: 20px 0 1px;
}
#header .inner{
max-width: 94%;
width: 980px;
margin-bottom: 20px;
}
#header .logo{
float: left;
max-width: 60%;
height: auto;
margin: 0;
}
#header .tel {
float: right;
text-align: right;
font-size: 2.5em;
}
#header .tel span {
padding: 0 0 0 50px;
background-size: 44px;
}
#menu {
display: block;
}
.slicknav_menu {
display: none;
}
}

/* END Header
----------------------------------------------- */

/* ヘッドライン */
#headline {
width: 100%;
padding: 0;
margin: 0 auto 0;
text-align : center;
position: relative;
background: url(../images/common/bg_dots.png) repeat left top, url(../images/main_bg_as_sp.jpg) no-repeat center top;
background-size: auto, cover ;
}
#headline #headcopy {
width: 90%;
margin: 0 auto 0;
padding: 2em 0;
text-align : center;
}
#headline #headcopy h2 {
font-size: 2em;
padding: 1.75em 0 0;
line-height: 1.3;
margin: 0 0 0.75em;
color: #fff;
text-shadow: 0px 10px 0px rgba(51, 51, 51, 0.5)
}
#headline #headcopy h2 span {
display: inline-block;
margin-bottom: 0.3em;
}
#headline #headcopy p {
text-align : center;
font-size: 1.3em;
line-height: 1.5;
color: #fff;
font-weight: bold;
text-shadow: 0px 10px 0px rgba(51, 51, 51, 0.5)
}
#headline #headcopy p span {
display: inline-block;
}

/* コンテンツ枠 */
#contents {
width : 100%;
margin : 0 auto;
}
#contents .inner{
width : 100%;
margin: 0 auto;
}

/* メインコンテンツ */
#main {
width : 100%;
}
section{
width : 92%;
margin : 0 auto 1em;
}

/* PageTOP */
#pagetop{
position: fixed;
bottom: 10px;
right: 10px;
width: 45px;
z-index: 1000;
}
#pagetop a:hover img{
opacity: 0.7;
}

/* フッター */
footer {
background: url(../images/common/img_footerhead.png) no-repeat center top;
background-size: 98%;
padding : 10% 0 0;
margin: 3em 0 0;
color: #fff;
line-height: 1.5;
overflow: hidden;
text-align: center;
}
footer .inner {
background: #222;
width: 92%;
padding: 0.5em 4%;
margin: 0 auto;
}
footer a {color: #fff; text-decoration: none;}
footer a:visited { color: #fff; }
footer a:hover { color: #fff; text-decoration: underline;}

#footernav {
margin: 30px auto 0;
}
#footernav li {
margin-bottom: 1.5em;
}
#footernav li::before {
font-family: "fontawesome";
content: '\f105' ;
margin-right: 0.5em;
color: #ffe30a;
}
footer .copy {
text-align: center;
margin: 2em 0 1em;
}


/*----------------------------------------------------------------

Media Queries

----------------------------------------------------------------*/
/* 768px～ メディアクエリ開始 */
@media screen and (min-width : 768px) {

/* メインコンテンツ */
#contents {
width: 100%;
margin-top: 0 ;
}
#main {
margin: 0 auto;
}
section{
width: 100%;
margin : 0 auto 3em;
}

/* ヘッダー（見出し・画像）枠 */
#headline {
width: 100%;
height: 480px;
padding: 0;
margin: 0 auto 0;
text-align : center;
position: relative;
background: url(../images/common/bg_dots.png) repeat left top, url(../images/main_bg_as.jpg) no-repeat center top;
background-size: auto, cover;
}
#headline #headcopy {
width: 100%;
margin: 0 auto;
padding: 0;
text-align : center;
}
#headline #headcopy h2 {
font-size: 3.5em;
letter-spacing: 2px;
padding: 150px 0 0;
line-height: 1.5;
margin: 0 0 0.5em;
}
#headline #headcopy h2 span {
margin-bottom: 0;
}
#headline #headcopy p {
font-size: 2.25em;
}

/* PageTOP */
#pagetop{
position: fixed;
bottom: 30px;
right: 30px;
width: 60px;
}

/* フッター */
footer {
background-size: 98%;
padding : 84px 0 0;
margin: 5em 0 0;
}
footer .inner {
width: 94%;
margin: 0 auto;
}

#footernav {
text-align: center;
margin-top: 5em;
}
#footernav li {
display: inline-block;
margin: 0 20px 1em;
}
#footernav li::before {
font-family: 'FontAwesome' ;
content: '\f105' ;
margin-right: 0.5em;
}
#footernav li::after {
content: none;
}
footer .copy {
clear: both;
padding: 2em 0 0;
}


}
/* 1024px～ メディアクエリ開始 */
@media screen and (min-width : 1024px) {

/* メインコンテンツ */
#contents {
width: 100%;
}
#contents .inner{
width: 980px;
margin: 0 auto;
}
#contents .inner1080{
max-width: 100%;
width: 1080px;
margin: 0 auto;
}
#main {
margin: 0 auto;
}
section{
width: 100%;
margin: 0 auto 3em;
background: #fff;
font-size : 1em;
}
section p{
}

footer {
background-size: 980px;
}

} /* 1024px～ メディアクエリ終了 */
