@charset "UTF-8";

body,html{
min-width:1280px;
}

#logo { width:463px; float:left; padding:0 10px; }
#logo img { margin:0 auto; display:block; }

#navi-image { float:right; width : 657px; text-align:right; }

#spnav { display:none; }
#nav { font-family:Noto Serif JP; }

#nav ul li:first-child { margin-left:25px; }
#nav ul li { float:left; margin-right:40px; margin-top:20px; }
#nav ul li.contact { float:right; background-color:#FF0; padding:20px; margin:0; text-align:center; font-size:120%; }
#nav ul li.contact span { font-size:75%; display:block; }

#nav a { position: relative; display: inline-block; text-decoration: none; color:#000; }
#nav a::after { position: absolute; bottom: 0px; left: 0; content: ''; width: 100%; height: 1px; background: #000; transform: scale(0, 1); transform-origin: right top; transition: transform .3s; }
#nav a:hover::after { transform-origin: left top; transform: scale(1, 1); }

#main-image { width:100%; height:499px; background:url(../img/main-image.jpg) 0 0 no-repeat; background-size:contain; }/* 表示画像の高さ ÷ 表示画像の幅 × 100 */

.google-map {
    position: relative;
    width: 100%;    /* 左右に余白が必要なら値を変更してもOK */
    height: 0;
    padding-bottom: 56.25%;    /* padding-topでもOK */
    overflow: hidden;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;    /* 必要であれば!importantを付けてください */
    height: 100%;    /* 必要であれば!importantを付けてください */
}

.company-name { font-size:140%; font-weight:bold; }

#information ul { width:100%; }
#information ul li { float:left; width:25%; padding:1%; text-align:center; }
#information ul li img { width:100%; display:block; }

section#other { padding:80px 0 0 0; }

.cat01-link { float:left; width:25%; font-size:85%; line-height:240%; }
.cat02-link { float:left; width:30%; font-size:85%; line-height:240%; }
.cat01-link a { display:block; }
.banner-link { float:right; text-align:right; }
.banner-link a:first-child { margin-left:0px; }
.banner-link a { margin-left:20px; }


a { color:#f6ab00; text-decoration:underline; }
a:hover { color:#f6ab00; text-decoration:none; }

/* ベースレイアウト定義 */
	
section { padding:20px 0 20px 0; overflow:hidden; }

.container { padding:0 40px 0 40px; width:1200px; margin:0 auto; }

#footer { background-color:#000; color:#fff; padding:40px 0 40px 0; margin-top:10px; overflow:hidden; font-size:85%; }
#footer span { display:block; }

.cat01-link a {
  position: relative;
  display: inline-block;
  text-decoration: none; color:#000;
}

.cat01-link a::after {
  position: absolute;
  bottom: 5px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #000;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
.cat01-link a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}


.cat02-link a {
  position: relative;
  display: inline-block;
  text-decoration: none; color:#000;
}

.cat02-link a::after {
  position: absolute;
  bottom: 5px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #000;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
.cat02-link a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}


.link a {
  position: relative;
  display: inline-block;
  text-decoration: none; color:#f6ab00;
}

.link a::after {
  position: absolute;
  bottom: 0px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #f6ab00;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}
.link a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}



/* タイトル定義 */

#information .title { width:100%; height:90px; font-family:Noto Serif JP; text-align:center; margin:0 auto; font-size:170%; padding-top:20px; font-weight:bold; margin-bottom:40px; background:url(../img/title-background.jpg) center; }

#kanko .title { width:100%; height:90px; font-family:Noto Serif JP; text-align:center; margin:0 auto; font-size:170%; padding-top:20px; font-weight:bold; margin-bottom:40px; background:url(../img/title2-background.jpg) center; }

#access .title { width:100%; height:90px; font-family:Noto Serif JP; text-align:center; margin:0 auto; font-size:170%; padding-top:20px; font-weight:bold; margin-bottom:20px; }
.title span { display:block; font-size:50%; font-weight:normal; }

#kanko-background { width:100%; height:237px; font-family:Noto Serif JP; text-align:center; margin:0 auto; font-size:170%; padding-top:20px; font-weight:bold; margin-bottom:40px; background:url(../img/kanko-background.jpg) center; }

#kanko img { float:left; }
#kanko b { display:block; font-family:Noto Serif JP; font-size:140%; margin:60px auto 20px; color:#6b9e35; }
#kanko span { color:#ff0000; }
#kanko table { width:100%; }
#kanko table td { padding:17px; border:1px solid #b9b9b9; vertical-align:middle; }

#about-background { width:100%; height:237px; font-family:Noto Serif JP; text-align:center; margin:0 auto; font-size:170%; padding-top:20px; font-weight:bold; margin-bottom:40px; background:url(../img/about-background.jpg) center; }
#about .title { width:100%; height:90px; font-family:Noto Serif JP; text-align:center; margin:0 auto; font-size:170%; padding-top:20px; font-weight:bold; margin-bottom:20px; }
#about img { float:right; margin-left:40px; }
#about b { display:block; font-family:Noto Serif JP; font-size:140%; margin:20px auto 10px; color:#6b9e35; }

#facebook { float:left; width:340px; }

#instafeed { float:right; width:780px; text-align:right; padding-left:60px; }
#instafeed .insta-box { width:120px; height:120px; float:left; margin:10px; }
#instafeed img { object-fit: cover; width:100%; height:100%; }