﻿@charset "UTF-8";
* { margin: 0 auto;padding: 0; font-size: clamp(15px, 1vw, 25px);}
body { color: #333;	font-family: "Kiwi Maru","游ゴシック", "メイリオ", "Meiryo UI", "ＭＳ Ｐゴシック", "MS P Gothic", "Hiragino Maru Gothic ProN W4", "ヒラギノ丸ゴ ProN W4", "Lucida Grande", Arial, Helvetica, Verdana, serif;-webkit-text-size-adjust: 100%;/*iphone文字サイズ自動変更防止*/ max-width: 100%;}
#container{background: #FEF9F5;min-height: 100%;}
.sp{display: none;}
.smooth{padding-top: 60px;margin-top:-60px;}

/* ヘッダー */
header {min-height: 55px; align-items: center; background: #fff;padding: 10px;}
header .logo {position: absolute; top:2px; left:10%; z-index: 120; }
header .logo img {max-height: 200px;}

/* イントロ帯 */
.intro {background: url("../../img/main_img.jpeg") no-repeat center top; background-size: 100% ;content: ""; width: 100%; z-index: 8; display: flex;justify-content: center; /*左右中央揃え*/align-items: center;line-height: 2;letter-spacing: 0.2em; min-height: 350px;}
.intro p { background:rgba(255,255,255,0.4); text-align: center;padding: 30px; }
.intro h1 { text-align: center;padding: 30px; text-shadow: #fff 3px 1px 1px;}

/*　パンくず　*/
.pankuzu {clear:both;margin:0px auto 0px; padding:8px 0px 6px; background:#f9e769; font-size:0.9em; }
.pankuzu p { max-width:1100px;}

/*　フッター　*/
footer { font-size: 0.8em;clear: both;text-align: center;background-color: #F7B57F; color:#333;padding: 40px 10px 20px;font-family:"游ゴシック",;}
footer a { text-decoration:underline; }
footer a:hover { text-decoration:none; color: #fff;}
footer ul { display:block;clear:both; margin-bottom: 20px;}
footer ul li { position:relative;list-style: none; margin:0px; padding-bottom:10px; }
.main a {padding: 5px 5px 15px;font-size: 1.2rem; text-decoration: none; }
.sub {padding-left: 10px; }
.footer_menu { display: flex;flex-wrap: wrap; padding-bottom: 15px;}
.footer_menu div {width: 30%; text-align: left; }
#copyright { clear: both;padding: 20px 0px 5px;}
#breadcrumb{ margin: 0px auto; max-width:1080px;clear:both; width: 90%; padding: 1rem 15px 0rem;box-sizing: border-box; }
/*要素*/
.breadcrumb {
  margin: 0;
  padding: 0;
  list-style: none;
}

.breadcrumb li {
  display: inline;/*横に並ぶように*/
  list-style: none;
}

.breadcrumb li:after {
  /* >を表示*/
  content: '>';
  padding: 0 0.2em;
  color: #333;
}

.breadcrumb li:last-child:after {
  content: '';
}

.breadcrumb li a {
  text-decoration: underline;
  color: #333;
}

.breadcrumb li:first-child a:before {
  /*家アイコン*/
  font-family: FontAwesome;
  content: '\f015';
  font-weight: normal;
  font-size: 1em;
  color: #333;
}

.breadcrumb li a:hover {
  text-decoration: none;
}
section{ margin: 50px auto; max-width:1080px;clear:both; width: 90%;background: #fff; padding: 2rem 15px;box-sizing: border-box;}
h1 { clear:both;font-size:1.7em;position: relative;}
h2 { position: relative; padding: 0.7rem; margin: 1rem 1rem 2rem; text-align: center; font-size: 1.6em;/*border-bottom: 6px solid #DAEFEB;*/}
h2:before { position: absolute; bottom: -6px; left: calc(50% - 30px); width: 60px; height: 5px; content: ''; border-radius: 3px; background: #F7B57F;}
section h2 { padding-top: 60px; margin-top:-60px;}
h3 { text-align: center;font-weight: normal; letter-spacing: 0.1em;color: #F4AB73; margin:50px auto 30px;}
h3 span{position: relative; padding: 0 150px;font-size: 1.5rem; }
h3 span:before, h3 span:after {content: ''; position: absolute;top: 50%; display: inline-block; width: 120px; height: 1px; background-color: #F7B57F;}
h3 span:before { left: 0;}
h3 span:after { right: 0;}
section div {text-align: center;}

.flex{display: flex;justify-content: center;flex-wrap: wrap;}
.flex_box{ width: 45%; margin: 10px;}
.flex_box ul li{ list-style: none; text-align: left; margin: 10px auto;}
.flex_box ul li:first-child{ margin: 0px auto;}

.title { text-align: center;padding: 3rem 0.3rem 1.5rem;font-size: 1.4em; font-weight: normal; letter-spacing: 0.1em;display: flex;justify-content: center; color: #F4AB73;}
.title:before, .title:after {content: '';width: 3px;height: 30px;background-color: #F7B57F;}
.title:before { margin-right: 20px;transform: rotate(-35deg);}
.title:after { margin-left: 20px;transform: rotate(35deg);}

/*---------------------------------▼index.html▼---------------------------------*/
/*お知らせ*/
#news dl{position: relative; z-index: 1; font-size:0.9em;margin: 20px 10px 50px; }
#news dt{ width: 11em;float: left;padding: 0.6em 0 0 1.4em; font-weight:bold; }
#news dd{ margin: 0.1em 0 0.4em 11.3em;padding-top: 0.6em;text-indent: -1.7rem; }
#news dd::before{ content: '';background-color: #F7B57F;height: 2px; width: calc(15px);display: inline-block; vertical-align:20%; margin-right: 0.5em;}
/* Livelyの事業 */
#jigyo ul { display: flex;flex-wrap: wrap;justify-content: space-between; padding-bottom: 10px;}
#jigyo li {width: 31%; text-align: center;min-height: 250px;margin: 10px 5px;padding: 0 0 10px 0;background: #FFF; border:#ccc 0.5px solid;letter-spacing: -0.1em; list-style: none; }
#jigyo li span { color: #999;padding: 0 3px; display: block;}
#jigyo li .caption { text-align: center;font-size: 1.4em; font-weight: normal; letter-spacing: 0.1em; color: #F4AB73; padding: 10px 5px;}
#jigyo a { text-decoration: none;}


/*---------------------------------▼about.html▼---------------------------------*/
.intro .about {background: url("../../img/h1_about.png") no-repeat center top ; background-size: 50% ;}
/*会社概要*/
#company dl{position: relative; z-index: 1; font-size:0.9em; text-align: left;display: inline-block; }
#company dt{ width: 12em;float: left;padding: 0.6em 0 0 1.4em; font-weight:bold; }
#company dd{ margin: 0.1em 0 0.4em 15.3em;padding-top: 0.6em; }
#company li{list-style: none;}
.button006 a {
  background: #eee;
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  max-width: 350px;
  padding: 10px 25px;
  color: #333;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  text-decoration:none;
}
.button006 a:before {
  content: '';
  position: absolute;
  top: calc(50% - 2px);
  right: -2em;
  transform: translateY(calc(-50% - 2px)) rotate(30deg);
  width: 12px;
  height: 2px;
  background-color: #F7B57F;
  transition: 0.3s;
}
.button006 a:after {
  content: '';
  position: absolute;
  top: 50%;
  right: -2em;
  transform: translateY(-50%);
  width: 60px;
  height: 2px;
  background-color: #F7B57F;
  transition: 0.3s;
}
.button006 a:hover:before, .button006 a:hover:after {
  right: -2.5em;
}
.button006 a:hover {
  background: #FCF1E8;
  color: #F7B57F;
}

/*---------------------------------▼business.html▼---------------------------------*/
.intro .business {background: url("../../img/h1_lively.png") no-repeat center top ; background-size: 85% ;}

/*テーブル*/
table{border-collapse:collapse; width: 98%; margin: 10px auto;}
th, td { text-align: left; min-width: 100px; padding: 5px;border-bottom: 1px solid #999;border-right: 1px solid #999; font-size:0.9rem;}
th {border-right: 1px solid #999;}
table tr:last-child td,table tr:last-child th{ border-bottom:none; }
th:last-child,td:last-child{border-right: none;}

.map {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
}

.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*---------------------------------▼recruit.html▼---------------------------------*/
.intro .rectra {background: url("../../img/h1_recruit.png") no-repeat center top ; background-size: 85% ;}
#recruit dl{position: relative; z-index: 1; font-size:0.9em; text-align: left;display: inline-block; }
#recruit dt{ width: 12em;float: left;padding: 0.6em 0 0 1.4em; font-weight:bold; }
#recruit dd{ margin: 0.1em 0 0.4em 15.3em;padding-top: 0.6em; }
#recruit li{list-style: none;}

/*---------------------------------▼contact.html▼---------------------------------*/
.intro .contact {background: url("../../img/h1_contact.png") no-repeat center top ; background-size: 95% ;}

/* solidボタン */
.button_solid003 a {
  font-size: 1.2em;;
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  max-width: 240px;
  padding: 10px 25px;
  color: #FFF;
  transition: 0.3s ease-in-out;
  font-weight: 600;
  background: #F4C097;
  filter: drop-shadow(0px 2px 4px #ccc);
  border-radius: 3px;
  border-radius: 50px;
  overflow: hidden;
  text-decoration:none;
}
.button_solid003 a:before{
content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
  background-image: linear-gradient( 
130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 55%);
  -webkit-transition: 0.5s;
  transition: 0.6s;
}
.button_solid003 a:hover:before {
  left: 100%;
}
.button_solid003 a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  transition: 0.2s ease-in-out;
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  transform: translateY(-50%);
}
/*---------------------------------▼共通▼---------------------------------*/

/* 回り込み解除 */  	
.clearfix:after{content: "";clear: both;display: block;}
/*　共通幅のボックス　*/
.box { max-width:1080px;clear:both; }
/* 配置 */
.left {text-align: left;}
.center {margin: 0 auto;text-align: center; vertical-align:middle;display: flex;align-items: center;}
.middle {vertical-align: middle;}
.bottom {vertical-align: bottom;}

/*　リンク　*/
a { color: #333;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: all  0.3s ease;}
a:visited { color: #333; }
a:link { color: #333; }
a:focus { color: #333; }
a:active { color: #333; }
a:hover { text-decoration:none; opacity: 0.7; }

/*　画像　*/
img { border: none;max-width:100%; }
img a { opacity: 1.0;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: all  0.3s ease; }
img a:hover { filter:alpha(opacity=50); opacity: 0.5; }

.mt60{margin-top: 60px;}
.mt30{margin-top: 30px;}
.mr5{margin-right:5px;}
.mr20{margin-right:20px;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb60{margin-bottom:60px;}
.pt3{padding-top:1px;}
.pt5{padding-top:5px;}
.pt10{padding-top:10px;}
.pr5{padding-right:5px;}
.pr10{padding-right:10px;}
.pr20{padding-right:20px;}
.pl10{padding-left:10px;}
.pl20{padding-left:20px;}
.pb5{padding-bottom:5px;}
.pb10{padding-bottom:10px;}
.fs80{ font-size:0.8em;}
.fs90{ font-size:0.9em;}
.fs95{ font-size:0.95em;}
.fs105{ font-size:1.05em;}
.fs110{ font-size:1.1em;}
.fs120{ font-size:1.2em;}
.fs130{ font-size:1.3em;}
.fs140{ font-size:1.4em;}
.lh2{ line-height: 2em;}
.max85 { max-width: 85%;}

.white {color:#FFF;}
.red {color:#FF0000;}
.blue {color: #7EADE0;}
.green {color: #4ACCB3;}
.wakakusa {color: #D7DD57;}
.lime {color: #C5F4A6;}
.pink {color:#E089BF;}
.black {color:#333;}
.gray {color:#ccc;}
.yellow {color: #F7B57F;}
.orange {color: #F4AB73;}

/* マーカー線・青 */
.marker_k { background: linear-gradient(transparent 65%, #ccc 65%);font-weight: bold; }
.marker_b { background: linear-gradient(transparent 65%, #c1e0ff 65%);font-weight: bold; }
.marker_r { background: linear-gradient(transparent 60%, #FFA0A0 60%);font-weight: bold; }
.marker_p { background: linear-gradient(transparent 60%, #F9CACC 60%);font-weight: bold; }
.marker_y { background: linear-gradient(transparent 65%, #fff799 65%);font-weight: bold; }
.marker_w { background: linear-gradient(transparent 65%, #fff 65%);font-weight: bold; }

/*================== PageTopへ戻るボタン ==================*/
/*リンクの形状*/
#page-top a{display: flex;justify-content:center;align-items:center;background:#F4C097;border-radius: 55px 55px 0 0;width: 80px;height: 45px;color: #fff;text-align: center;text-transform: uppercase; text-decoration: none;font-size:0.9rem;transition:all 0.3s;}
#page-top a:hover{background: #FBDDC5;}

/*リンクを右下に固定*/
#page-top {position: fixed;right: 10px;bottom:0px;z-index: 101; /*はじめは非表示*/opacity: 0;transform: translateY(100px);}

/*　上に上がる動き　*/
#page-top.UpMove{animation: UpAnime 0.5s forwards;}
@keyframes UpAnime{
  from {opacity: 0;transform: translateY(100px);}
  to {opacity: 1;transform: translateY(0);}
}

/*　下に下がる動き　*/
#page-top.DownMove{animation: DownAnime 0.5s forwards;}
@keyframes DownAnime{
  from {opacity: 1;transform: translateY(0);}
  to {opacity: 1;transform: translateY(100px);}
}


/*=============== グローバルナビゲーションニュー用ボタン ===============*/
.openbtn{position:fixed;z-index: 9999;/*ボタンを最前面に*/top:10px;right: 10px;cursor: pointer;width: 45px;height:45px;}
/*×に変化*/	
.openbtn span{display: inline-block;transition: all .4s;position: absolute;left: 14px;height: 3px;border-radius: 2px;background-color: #333;width: 45%;}
.openbtn span:nth-of-type(1) {top:15px;	}
.openbtn span:nth-of-type(2) {top:23px;}
.openbtn span:nth-of-type(3) {top:31px;}
.openbtn.active span:nth-of-type(1) {top: 18px;left: 18px;transform: translateY(6px) rotate(-45deg);width: 30%;}
.openbtn.active span:nth-of-type(2) {opacity: 0;}
.openbtn.active span:nth-of-type(3){ top: 30px;left: 18px;transform: translateY(-6px) rotate(45deg);width: 30%;}

/*=============== 右から現れるグローバルナビゲーション ===============*/
#g-nav{ position:fixed;z-index: 999;top:0;right: -120%;width:80%; height: 100vh;/*ナビの高さ*/background:rgba(248,181,127,0.95);transition: all 0.6s;max-width: 350px;}
#g-nav.panelactive{right: 0;}
#g-nav.panelactive #g-nav-list{position: fixed;z-index: 999; width: 100%;height: 100vh;/*表示する高さ*/overflow: auto;-webkit-overflow-scrolling: touch;}
#g-nav ul {z-index: 999; margin: 30px 30px;}
#g-nav li{list-style: none;text-align: left;}
#g-nav li a{color: #333;text-decoration: none;padding:10px;display: block;text-transform: uppercase;letter-spacing:0.1em; padding: 10px;}
#g-nav #copyright{ position: absolute;margin: 10px auto;bottom: 0; right:0; left:0;text-align: center; font-size: 0.8em; }
#g-nav li a:hover{ filter:alpha(opacity=100); opacity: 1; color:  #FFF; }
#g-nav li {margin-bottom: 10px;}
.underline { display: inline-block; padding-bottom: 4px; position: relative;}
.underline::after { background-color: #fff; bottom: 0; content: "";display: block; height: 3px; position: absolute; transition: 0.5s all; width: 0;}
#g-nav .underline:hover:after { width: 100%;}
#g-nav .to-right::after { left: 0;}
#g-nav .to-left::after { right: 0; }
#g-nav .center::after { left: 50%; transform: translateX(-50%);}
#g-nav p { margin: 0px 5px 0px 20px;}
#g-nav p a{  padding: 5px;}

/*=============== ボトムメニュー ===============*/
.bottom-menu {display: flex;position: fixed;bottom: 0;background: white;width: 100%;z-index: 100; margin: auto; padding-bottom: 10px; box-shadow: #F7B57F -0 -0.05em .5em ;}
.bottom-menu li {justify-content: space-between;width: 16%;padding: 5px;list-style: none;text-align: center; }
.bottom-menu a span {display: block;font-size: 0.7em;}
.bottom-menu a{text-decoration: none;}
/*========= ドロップダウンメニュー ===============*/

/*==ナビゲーション全体の設定*/
header nav{background:#fff;text-align: center;position:relative;z-index:100;}
/*ナビゲーションを横並びに*/
header nav ul{ /*2階層目の基点にするためrelativeを指定*/position: relative;list-style: none;display: flex;justify-content: center; margin-left: 26%;margin-right: 20px;}
/*2階層目以降は横並びにしない*/
header nav ul ul{display: block;margin: 15px 0;}
/*ナビゲーションのリンク設定*/
header nav ul li a{ /*矢印の基点にするためrelativeを指定*/position: relative;display: block;text-decoration: none;color: #999;padding:20px 40px;transition:all .3s;font-size: 1.1rem;}
header nav ul li li a{padding:10px;margin: 5px auto;}

/*==矢印の設定*/
/*2階層目を持つliの矢印の設定*/
header nav ul li.has-child > a::before{content:'';position: absolute;left:15px;top:27px;width:6px;height:6px;border-top: 2px solid #999;border-right:2px solid #999;transform: rotate(135deg);}
header nav ul li.has-child ul{ background: rgba(255,255,255,0.85); }
header nav ul li.has-child ul a{ color: #333;}
/*==2階層目以降の画像設定*/
header nav ul li.has-child img{max-width: 100%;height: auto;transition: all .5s;vertical-align: middle; padding: 10px 0 ;}
/*hoverしたら画像拡大*/
header nav ul li.has-child img:hover{transform: scale(1.2);}
header nav ul li.has-child dt{overflow: hidden;height: 12vh;margin:0 0 10px 0;}
header nav ul li.has-child ul li a:hover{background-color: #F7B57F;}


/*アコーディオンここから*/
.acd-check{
  display: none;
}
.acd-label{
  background: #eee;
  color: #333;
  display: block;
  margin-bottom: 1px;
  padding: 10px 12px 10px 10px;
  position: relative;
  max-width: 90%;
  margin: 20px auto 0px;
}
.acd-label:hover{opacity: 0.7;}
.acd-label:after{
  background: #F7B57F;
  color: #fff;
  box-sizing: border-box;
  content: '\f067';
  display: block;
  font-family: "Font Awesome 5 Free";
  padding: 13px 20px;
  position: absolute;
  right: 0;
  top: 0px;
}
.acd-content{
  border: 1px solid #eee;
  display: none;
  height: 0;
  opacity: 0;
  padding: 0px 10px;
  visibility: hidden;
  max-width: 90%;
}
.acd-check:checked + .acd-label:after{
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f068';
}
.acd-check:checked + .acd-label + .acd-content{
  height: auto;
  opacity: 1;
  padding: 10px;
  visibility: visible;
  display: block;
  animation: tooltipShow 0.3s linear 0s;
}
.acd-content p {
  padding: 20px ;
}
/*アコーディオンココまで*/

/*ふわっとツールチップ*/
@keyframes tooltipShow {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0px);
  }
}