@charset "UTF-8";
/* CSS Document */

/*----------------------------------------------------

  #font

----------------------------------------------------*/

html {
	font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
}
body {
	font-size: 1.6rem;/* 18px */
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #383838;
	line-height: 1.5;
	letter-spacing: 0.03em;
	background-color:#fff; 
}
@media (max-width: 768px) {
	body {font-size: 1.6rem;}
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, body {font-feature-settings: "pkna";}
}



/*----------------------------------------------------

  #reset

----------------------------------------------------*/

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
fieldset, img {
	border: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
caption, th {
	text-align: left;
}
a {
	text-decoration: none;
	color: #fff;
}


/*----------------------------------------------------

  #tag

----------------------------------------------------*/
img {width: 100%;
	vertical-align: bottom;
}
@media (max-width: 768px) {
	img {
		max-width: 100%;
		height: auto;
	}
}
strong {
	font-weight: bold;
}
th,td {
	vertical-align: top;
}

/*----------------------------------------------------

  #box-sizing

----------------------------------------------------*/
section,div{box-sizing: border-box;}

/*----------------------------------------------------

  #clear

----------------------------------------------------*/
.clear {
	clear: both;
}
.clearfix,div,ul,dl,ol {
	zoom: 1;
}
.clearfix:after, div:after, ul:after, dl:after, ol:after {
	content: "";
	display: block;
	clear: both;
}


/*----------------------------------------------------

  #改行指定

----------------------------------------------------*/
@media screen and (min-width: 769px){ 
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 768px){ 
  .br-pc { display:none; }
  .br-sp { display:block; }
}


/*----------------------------------------------------

  #inner_width

----------------------------------------------------*/
.inner-width{width: 90%;max-width: 1200px;margin: 0 auto;position: relative;}
.flex{display: flex;justify-content: space-between;flex-wrap: wrap;}
.gfont{font-family:'Crimson Text','Noto Serif JP', serif; }
@media (max-width: 768px) {
	.order1{order:1;}
	.order2{order:2;}
}
/*----------------------------------------------------

  #ヘッダー

----------------------------------------------------*/

header {position: absolute;z-index: 900;left: 0;}
.inner {}
@media (max-width: 768px) {
	header {height: 54px;;position: absolute;top:0;left:0;width:100%;background:#fff; }
	.inner {width: 100%;z-index: 999;}
}


/* ----- 下層ページ ----- */
.header_under{width: 100%;height:68px;box-sizing: border-box;overflow: hidden;background:#fff;}
.header_under .inner {position:absolute;right:0;}
#under_page_headerspace{height: 68px;}

@media (max-width: 768px) {
	.header_under{width: 100%;height:54px;overflow: visible;}
	#under_page_headerspace{height: 54px;}
}


/*----------------------------------------------------

  #グローバルナビ

----------------------------------------------------*/

nav {}
nav ul {display:flex;}
nav ul li{padding-top:22px;box-sizing: border-box;}
nav ul li a{color:#1d1d1d;font-size: 1.4rem;box-sizing: border-box;padding:26px 20px;}
nav ul li a:hover{}


@media (max-width: 768px) {
	nav {
		margin-left: 0;
		height: 100vh;
		position: absolute;
		/* 開いてないときは画面外に配置 */
		top: -100vh;
		left: 0;
		background: #fff;
		width: 100%;
		text-align: center;
		padding: 0 0 0;
        transition: .5s ease-in-out;
		z-index: 600;
	}
	nav ul {display: block;right: 0;bottom: 0;top: 0;}
	nav ul li{padding-top:0px;text-align: left;border-bottom: 1px solid #ccc;margin: 0 10px; }
	nav ul li a {width: 100%;display: block;color: #000;font-size: 1.6rem;padding: 10px 0 10px 10px;background: #fff;}
	nav ul li:last-child > a{background-color: #fff;}

	nav ul li a:hover{color:#1e1e1e;background-color: #fff;transition: 0.3s;font-weight: bold;}
	nav ul li:last-child > a:hover{background-color: #fff;color: #1e1e1e;}
	nav ul li:first-child{padding-top: 50px;}

}

@media (max-width: 768px) {
	#mobile_head {
		position: absolute;
		width: 100%;
		height: 54px;
		background: #fff;
		z-index:1000;
		top:0;
	}

/*
@media (max-width: 768px) {
	#mobile_head {
		position: fixed;
		width: 100%;
		height: 54px;
		background: #fff;
		z-index:1000;
	}
*/
}


/* ----- トグルボタン ----- */

#nav-toggle {
  display: none;
  position: absolute;
  left: 5px;
  top: 8px;
  width: 34px;
  height: 34px;
  cursor: pointer;
  z-index: 9999;
  border:1px solid #333;
  border-radius: 3px; 
  padding:0 6px; 
}
@media (max-width: 768px) {
	#nav-toggle {display: block;}
}

#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 20px;
    border-radius: 0;
    background: #333;
    left: 0;
    transition: .3s ease-in-out;
}
#nav-toggle span:nth-child(1) {top: 8px;}
#nav-toggle span:nth-child(2) {top: 15px;}
#nav-toggle span:nth-child(3) {top: 22px;}

@media (max-width: 1030px) {
  /* #nav-toggle 切り替えアニメーション */
  .open #nav-toggle span:nth-child(1) {top: 15px;transform: rotate(315deg);}
  .open #nav-toggle span:nth-child(2) {width: 0;left: 50%;}
  .open #nav-toggle span:nth-child(3) {top: 15px;transform: rotate(-315deg);}
  /* #global-nav スライドアニメーション */
  .open nav {
    /* #global-nav top + #mobile-head height */
    -moz-transform: translateY(100vh);
    -webkit-transform: translateY(100vh);
    transform: translateY(100vh);
  }
}

.fixed{position: fixed;}

a.btn{display:block;width: 200px; text-align: center;color:#6e4801;background: #fff;border-radius: 50px;border:1px solid #6e4801;padding: 10px 0;margin-top: 20px; }
a.btn:hover{background: #6e4801;color:#fff;transition: .2s;}

#contents a.btn{margin:10px auto; }

@media(max-width: 768px){
	a.btn{font-size: 14px;display:block;width: 200px; text-align: center;color:#6e4801;background: #fff;border-radius: 50px;border:1px solid #6e4801;padding: 10px 0; }
}