@charset "UTF-8";
/* CSS Document */
*,
*::before
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html {
  font-size: 62.5%; /* 16px * 62.5% = 10px */
  width: 100%;
  box-sizing: border-box;
}
body {
  width: 100%;
  color: #333; /* RGB */
  font-family: "游明朝体", YuMincho, "Yu Mincho";
  font-size: 1.4em;
  line-height: 2;
}
img {
  width: 100%;
  vertical-align: bottom;
  
}
ol,ul{
  list-style: none;
}
section h2 {
  font-size: 2.4rem;
}
.wrapper {
  width: 100%;
  overflow: hidden;
}
.inner {
  max-width: 1040px;
  width: 85%;
  margin-left: auto;
  margin-right: auto;
  /*background-color: bisque;*/
}

/*contact*/
.section_CONTACT {
  background-color: #fff;
}
.section_CONTACT h2 {
  font-size: 2.4rem;
  width: 40%;
  margin: 115px 0 0 100px;
  color: #545458;
}
.section_CONTACT h2.fade-in {
animation-name: fadeInAnime;/*1で解説*/
animation-fill-mode:forwards;/*2で解説*/
animation-duration:3s;/*3で解説*/
animation-iteration-count:1;/*4で解説*/
animation-timing-function:ease;/*5で解説*/
animation-direction:normal;/*7で解説*/
}

/*1で解説*/
@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}
.section_CONTACT_read {
  text-align: center;
  font-size: 1.3rem;
  margin: 40px 0 47px;
}
.section_CONTACT_read.fade-in {
animation-name: fadeInAnime;/*1で解説*/
animation-fill-mode:forwards;/*2で解説*/
animation-duration:3s;/*3で解説*/
animation-iteration-count:1;/*4で解説*/
animation-timing-function:ease;/*5で解説*/
animation-direction:normal;/*7で解説*/
}

/*1で解説*/
@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}
.CONTACT_button {
  font-size: 1.1rem;
  text-align: center;
  height: 35px;
  border: 1px solid #d8d8d6;
  margin: 40px auto 115px;
  box-shadow: 1px 1px 4px #d8d8d6;
}
.CONTACT_button.fade-in {
animation-name: fadeInAnime;/*1で解説*/
animation-fill-mode:forwards;/*2で解説*/
animation-duration:3s;/*3で解説*/
animation-iteration-count:1;/*4で解説*/
animation-timing-function:ease;/*5で解説*/
animation-direction:normal;/*7で解説*/
}

/*1で解説*/
@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}
.CONTACT_button a {
  color: #545458;
  text-decoration: none;
}
.CONTACT_button a.fade-in {
animation-name: fadeInAnime;/*1で解説*/
animation-fill-mode:forwards;/*2で解説*/
animation-duration:3s;/*3で解説*/
animation-iteration-count:1;/*4で解説*/
animation-timing-function:ease;/*5で解説*/
animation-direction:normal;/*7で解説*/
}

/*1で解説*/
@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}
.CONTACT_button p {
  line-height: 35px;
}

/*CONTACT-pc*/
@media (min-width: 480px) {
  .section_CONTACT h2 {
    margin: 123px auto 0;
    text-align: center;
  }
  .section_CONTACT_read {
    font-size: 1.6rem;
  }
.CONTACT_button {
  text-align: center;
  width: 640px;
  height: 50px;
  border: 1px solid #d8d8d6;
  margin: 40px auto 115px;
}
.CONTACT_button p {
  font-size: 1.4rem;
  color: #545458;
  text-decoration: none;
  line-height: 50px;
}
  /*ゆっくり透明に*/
  .CONTACT_button p {
  transition: .3s;
  }

/*ホバー時に透明度50%*/
  .CONTACT_button p:hover {
  opacity: 0.5;
  }

}
/*footer-sp*/
.footer {
  background-color: #aebac3;
  height: 436px;
  padding-bottom: 20px;
}
.footer .inner{
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
}
.footer__h1_nav{

}
.footer-sns_links{
  display: flex;
}
.footer-sns_links li{
  margin-left: 20px;
}
.footer h1 {
  font-size: 1.8rem;
  color: #fff;
}
.footer__site-map{
  margin-top: 2px;
}
.footer__site-map a {
  text-decoration: none;
  font-size: 1.6rem;
  color: #fff;
  display: inline-block;
  margin-top: 10px;
}

.footer small {
  color: #fff;
    font-size: 1.1rem;
    display: block;
    text-align: center;
    padding-top: 130px;
}
/*footer-pc*/
@media (min-width: 480px) {
  .footer {
    height: 309px;
  }
  .footer .inner{
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
}
  .footer__h1_nav{
  display: flex;
}
  .footer-sns_links{
    display: flex;
  }
  .footer-sns_links li{
  margin-top: 10px;
  margin-left: 20px;
}
  .footer__site-map{
  margin-top: 2px;
}
  .footer h1 {
    font-size: 1.8rem;
  color: #fff;
  margin-right: 20px;
  }
  .footer__site-map a {
  text-decoration: none;
  font-size: 1.6rem;
  color: #fff;
  margin-top: 0;
  }
  /*ゆっくり透明に*/
  .footer__site-map a {
  transition: .3s;
  }

/*ホバー時に透明度50%*/
  .footer__site-map a:hover {
  opacity: 0.5;
  }
  .footer small{
    display: block;
    text-align: center;
    padding-top: 90px;
}
  }

/* header（デモの参考値） */
.demobox-header{
background: #ddd;
height: 64px;
padding: 1em;
}
/* headerのサイト名（デモの参考値） */
.demobox-sitename{
font-weight: 700;
font-size: 18px;
}
/* 全体調整CSS */
.hamburger-demo-menubox *{
	font-size: 16px;
}
.hamburger-demo-menubox li{
	font-size: 14px;
}
/* hamburgerここから */
	/* inputを非表示 */
.input-hidden{
	display: none;
}
	/* label */
.hamburger-demo-switch{
	cursor: pointer;
	position: absolute;
	right: 3%;
	top: 0; /* ハンバーガーアイコンの位置（上から） */
	z-index: 9999;
	width: 4em; /* アイコン（クリック可能領域）の幅 */
	height: 4em; /* アイコン（クリック可能領域の）高さ */
}
/* メニュー展開時にハンバーガーアイコンを固定 */
#hamburger-demo1:checked ~ .hamburger-demo-switch{
	position: fixed;
}
/* ハンバーガーアイコン */
.hamburger-switch-line1, .hamburger-switch-line1:before, .hamburger-switch-line1:after{
	width: 16px;
	height: 2px;
	background: #fff; /* ハンバーガーアイコンの色 */
	position: absolute;
	top: 50%;
	left: 50%;
	transition: .3s;
	content: "";
}
.hamburger-switch-line1{
		transform: translate(-50%, -50%);
}
.hamburger-switch-line1:before{
	transform: translate(-50%, -300%);
}
.hamburger-switch-line1:after{
	transform: translate(-50%, 200%);
}
/* ハンバーガーアイコン･アニメーション */
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1{
	width: 0;
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:before{
	transform: rotate(45deg) translate(-40%, 325%);
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1:after{
	transform: rotate(-45deg) translate(-40%, -325%);
}
/* メニューエリア */
.hamburger-demo-menuwrap{
	position: fixed;
	height: 100%;
	background: #aebac3; /* メニューエリアの背景色 */
	padding: 5em 3% 2em;
	z-index: 9998;
	transition: .3s;
	overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
	top: 0;
	left: 100%;
	width: 70%;
}
/* メニューリスト */
.hamburger-demo-menulist{
	margin-right: 3%;
	padding-left: 5% !important; /* !important不要な場合もあり */
	list-style: none;
}
.hamburger-demo-menulist li a{
	text-decoration: none;
	color: #fff; /* メニューリストの文字色 */
	display: block;
	padding: .5em 0;
  border-bottom: solid 0.5px;
}
/* メニューエリア･アニメーション */
	/* 右から */
#hamburger-demo1:checked ~ .hamburger-demo-menuwrap{
	left: 30%;
}
	/* コンテンツカバー */
#hamburger-demo1:checked ~ .hamburger-demo-cover{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(3,3,3,.6);
	display: block;
}
/* PCではハンバーガーメニューを表示しない */
@media (min-width: 992px){
	.hamburger-demo-menubox{
		display: none;
	}
}

/* ページトップボタン */
#page-top {
  bottom: 0;
  position: fixed;
  right: 0;
}
#page-top a {
  background-color: #aebac3;
    font-size: 1.0rem;
    color: #fff;
    text-decoration: none;
    padding: 10px 20px;
    writing-mode: vertical-rl;
}
