@charset "UTF-8";
/* ==========================================

  汎用

========================================== */

/*---------------- ▽カスタムプロパティ▽ ----------------*/
:root{
  --container-width: min(100%, 900px);
  --main-gap: 25px;
  --main-sp-col-gap: 20px;
  --humanIllust-shift-value: 20px;
}

.relative{
  position: relative;
}

.break{
  display: inline-block;
}

/* ==========================================

  全体

========================================== */

/*---------------- ▽style▽ ----------------*/
a{
  color: #000;
  text-decoration: none;
}

a:hover{
  cursor: pointer;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
}

picture, img{
  display: block;
  inline-size: 100%;
  max-inline-size: 100%;
  block-size: auto;
}

a[href^="tel"]{
  color: #0e5a55;
  text-decoration: underline;
}

/* ==========================================

  animation

========================================== */
/*---------------- ▽フェイドイン▽ ----------------*/
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 2s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}
/*---------------- ▽ページトップ▽ ----------------*/
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 5vw;
  bottom: 0;
  background: #00aa6e;
  z-index: 10;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
@media screen and (max-width: 600px){
  #page_top{
    position: fixed;
    right: 0;
  }
}
/* ==========================================

  header

========================================== */
header{
  inline-size: var(--container-width);
  margin-inline: auto;
  background-color: white;
}

.logo_wrap{
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	padding:10px 20px;
	box-sizing: border-box;
}
.logo_wrap img{
	width: 250px;
}
/* ==========================================

  footer

========================================== */
.footer_wrap{
	width: 760px;
	margin: 0 auto;
	text-align: left;
	word-break: keep-all;
}
.footer_wrap th{
	text-align: center;
	font-weight: bold;
	padding: 0.5em;
	color: #6A3906;
	font-size: 18px;
}
.footer_wrap td{
	font-weight: bold;
	padding: 0.5em;
	line-height: 1.5em;
	color: #6A3906;
	font-size: 16px;
}

@media screen and (max-width: 900px){
	.footer_wrap{
		width: 90vw;
  }
}