@charset "UTF-8";
/* リセットCSS */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset,
legend, input, textarea, p, blockquote, th, td {
margin: 0;
padding: 0;
}

table {
border-collapse: collapse;
border-spacing: 0
}

fieldset, img {
border: 0
}

address, caption, cite, code, dfn, em, strong, th, var {
font-style: normal;
font-weight: normal
}

ol, ul {
list-style: none
}

caption, th {
text-align: left
}

h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal
}

q:before, q:after {
content: ''
}

abbr, acronym {
border: 0;
font-variant: normal
}

sup {
vertical-align: text-top
}

sub {
vertical-align: text-bottom
}

input, textarea, select {
font-family: inherit;
font-size: inherit;
font-weight: inherit;
* font-size: 100%;
 -webkit-appearance: none;
 border-radius: 0;
}

* {
box-sizing: border-box;
}



html,body{
height: 100%;
}
body{
font-size: 62.5%;
line-height: 1.8;
font-family: 'Roboto', sans-serif;
color:#4F4F4F;
position: relative;

-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
/* フォントレンダリング設定: 1x解像度ではsubpixel、2x以上の解像度ではgrayscale */
-webkit-font-smoothing: subpixel-antialiased;
-moz-osx-font-smoothing: unset;
}
@media only screen and 
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
.hoge {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
}
a{
text-decoration: none;
color:#4F4F4F;
}
a:hover{
text-decoration: underline;
}
img{
width: 100%;
height: auto;
}
a img{
transition: all 0.3s;
}
a:hover img{
opacity: 0.8;
}
#gmenu-box{
position:absolute;
width: 100%;
background:rgba(0,0,0,0.5);
z-index: 10;
bottom: 0;
padding: 1.5em 0 0.8em;
font-size:1.6em;
}
#gmenu{
overflow: hidden;
margin: 0 auto;
display: table;
table-layout: fixed;
}
#gmenu li{
display: table-cell;
padding: 0 3em;
line-height: 1;
}
#gmenu li a{
color:#FFF;
transition: border 0.3s;
border-bottom: 2px solid transparent;
padding-bottom: 7px;
display: block;
}
#gmenu li a:hover,#gmenu li a.on{
border-bottom: 2px solid #F9E132;
text-decoration: none;
}
@media(max-width:768px){
#gmenu{
table-layout:auto;
}
#gmenu li{
display: table-cell;
padding: 0 1em;
}
}
@media(max-width:414px){
#gmenu-box{
padding: 1em 0 0.3em;
font-size:110%;
}
}

/*トップページ*/
#mainphoto{
position: relative;
width: 100%;
margin: 0 auto;
}
#mainphoto h1{
display: none;
position: absolute;
top: 45%;
left: 50%;
transform: translate(-45%, -50%);
z-index: 1000;
line-height: 0;
}
#mainphoto.top h1{
max-width: 380px;
}
#mainphoto.second h1{
max-width: 300px;
}
@media(max-width:768px){
#mainphoto h1{
max-width: auto;
width:40%;
}
}
#slider{
display: none;
z-index: -1;
line-height: 0;
}

#text-box{
max-width: 1000px;
margin: 10em auto;
}
#text-box.top{
height: 400px;
}
@media(max-width:414px){
#text-box.top{
height: 300px;
margin: 5em auto;
width: 90%;
}
}
#text-box.top p.text-img01{
max-width: 545px;
margin: 0 auto 3em;
display: none;
}
#text-box.top p.text-img02{
max-width:545px;
margin: 0 auto;
display: none;
}

/*ABOUT-US*/
#text-box.second{
margin-top: 5em;
font-size:1.4em;
}
@media(max-width:768px){
#text-box.second{
width: 90%;
}
}
#text-box.second h2{
font-size:2.8em;
text-align: center;
margin-bottom: 2em;
line-height: 1.8;
}
#text-box.second h2 span{
font-size:46.6%;
display: block;
}
#about-box{
margin-bottom: 5em;
overflow: hidden;
}
#about-box .photo-box{
float: left;
width:45%;
}
#about-box .table-box{
float:right;
width: 50%;
}
.table-box dl{
border-bottom:1px solid #CCC;
padding-bottom: 1em;
margin-bottom: 1em;
display: table;
table-layout: fixed;
width: 100%;
}
.table-box dt,.table-box dd{
display: table-cell;
vertical-align: top;
}
.table-box dt{
width: 25%;
font-weight: bold;
}

footer{
position: relative;
bottom:0;
max-width: 1000px;
margin: 0 auto;
}
footer img.logo{
max-width: 120px;
display: block;
margin: 0 auto -3em;
}
footer p.copy{
background: #EAEAEA;
border-bottom: 5px solid #F9E132;
padding: 4.5em 0 1.5em;
text-align: center;
font-size:1.2em;
}

