@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Antique+Soft&family=Zen+Old+Mincho:wght@400;700&display=swap'); 
/*  style　[  共通 ]
=================================================================== */

	
body{
  background: #fff;
}

.flex-box{
  display: flex;
}

.relative-box {
  position: relative;
}

.wrapper {
  position: relative;
  overflow: hidden;
  /*max-width: 1440px;*/
  margin: 0 auto;
  background: #fff;
}
.table-box {
  display: table;
  margin: auto;
}

.mincho {
  font-family: 'Zen Old Mincho', sans-serif;
}
@media (min-width: 768px) { 
  .visible-xs {
  display: none;
} 
}

/*----------------------------------------------
   header
---------------------------------------------*/


  
header {
  position: fixed!important;
  left: 0;
  top: 0;
  z-index: 999;
  transition: 0.5s;
  width: 100%;
}

/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
header.scroll-nav {
  /* 余白を狭くする 
  padding: 10px 15px;*/
  /* 背景を白にする */
  background: rgba(255, 255, 255,0.8);
  /* コンテンツの背景が白でもナビゲーションだと分かりやすいように影をつける */
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
}

.header-box {
	justify-content: space-between;
	padding-bottom: 10px;
}


h1 img {
	height: 70px;
	margin: 30px 0 0 0;
}
/*.h1-catch {
  font-size: 12px;
  margin: 17px 0 0 0;
  display: block;
}*/
.header-right {
	width: 70%;
	text-align: right;
	padding-top:40px;
}






nav ul.nav-list {
	list-style: none;
	margin: 5px 0;
}
nav ul.nav-list li {
	display: inline-block;
	padding: 0 1em;
}
nav ul.nav-list li:last-child {
  padding: 0 0 0 1em;
}

nav ul.nav-list li a:hover {
	text-decoration: none;
  color: #000;
  
}



/*----------------------------------------------
   page-first-view
---------------------------------------------*/
.page-first-view {
	position: relative;
	width: 100%;
	height: 500px;
}

.page-first-view .background-wrap {
	width: 80%;
	height: 250px;
	position: absolute;
	right: 0;
	top: 130px;
  
}
/* background marker */
.page-first-view .u-fade-type-bg {
    background: linear-gradient(to left, #F2F1EA 50%, transparent 50% );
    background: linear-gradient(to left,  #F2F1EA 50% , transparent 50%);
    background-repeat: repeat-x;
    background-size: 200% 100%;
    transform: translateX(100%);
}

.page-first-view .u-fade-type-bg.is-active{
    transition: all 1.2s ease;
    background-position: 100% 100%;
    transform: translateX(0);
}
/* ページタイトル */
.page-first-view .catch-copy {
	position: absolute;
	left: 50px;
	top: 200px;
}
.page-first-view .catch-copy h2 {
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: 5px;
	margin-bottom: 15px;
}
.page-first-view .catch-copy p {
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 2px;
}


/*----------------------------------------------
   anchor-link
---------------------------------------------*/
.anchor-link {
  display: flex;
  list-style: none;
  margin: 0 auto 80px auto;
  border: #ccc 1px solid;
  padding: 20px 15px;
  width: 90%;
  justify-content: center;
}
.anchor-link li {
  margin: 0 5%;
}
/*----------------------------------------------
   main
---------------------------------------------*/


/*----------------------------------------------
   section
---------------------------------------------*/
section {
  margin-bottom: 50px;
}



/*----------------------------------------------
   見出し
---------------------------------------------*/

h2.underline {
  font-size: 2.5rem;
  position: relative;
  padding: 15px;
  text-align: center;
  margin-bottom: 2em;
}

h2.underline:before {
  position: absolute;
  bottom: -5px;
  left: calc(50% - 30px);
  width: 60px;
  height: 3px;
  content: '';
  border-radius: 3px;
  background: #A58852;
}





/*----------------------------------------------
   footer
---------------------------------------------*/

footer {
	padding: 3em 0 0 0;
	margin:  0;
	color: #000;
	position: relative;
}
.footer-box {
	display: flex;
  justify-content: center;
  flex-wrap: wrap;
	margin: 0 auto;
}

.footer-left,.footer-right {
  width: auto;
  margin: 0 5%;
}
.footer-left h2 img {
  height: 65px;
}
address {
  font-size: 0.9em;
  margin: 1em;
}



.contact-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 250px;
    margin: 0 auto;
    padding: .9em 3em .9em 2em;
    background-color: #A58852;
    color: #fff!important;
    font-size: 0.9em;
}
.contact-btn:hover {
  color: #fff!important;
  text-decoration: none;
}

.contact-btn::after {
    position: absolute;
    right: 2em;
    transform: translateY(-50%);
    transform-origin: left;
    width: 2em;
    height: .5em;
    background-color: #fff;
    clip-path: polygon(0 100%, 100% 100%, 70% 40%, 70% 90%, 0% 90%);
    content: '';
    transition: transform .3s;
}

.contact-btn:hover::after {
    transform: translateY(-50%) scaleX(1.4);
}

.footer-nav {
  list-style: none;
  display: table;
  margin: 1em auto;
}
.footer-nav li {
  font-size: 0.9em;
}
.bi-chevron-right {
  color: #A58852;
  font-size: 0.8em;
}
.copy {
	color: #666;
	margin: 0 0 0 0;
	padding: 5px 0 10px 0;
	line-height: 1;
	font-size: 0.8em;
  text-align: center;
}






