@charset "utf-8";
/* CSS Document */

/* 基本設定 */
* {
	margin: 0px;
	padding: 0px;
}
html {
overflow-x: hidden;
}
body {
	font-family: dnp-shuei-mgothic-std, "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Verdana, Arial, Meiryo, "MS P Gothic", "MS Pゴシック", sans-serif;
	color: #604C3F;
	background-color: #FFF;
	font-size: 15px;
	line-height: 100%;
	animation: Fuwa 2s forwards;
}
@keyframes Fuwa {
	0% {opacity: 0}
	100% {opacity: 1}
}
img {
	border: none;
	-webkit-backface-visibility: hidden;
	width:auto;
	height: auto;
}
ul {
	list-style-type:none;
}
li img { 
  vertical-align:bottom; 
}
p {
	font-size: 18px;
	line-height: 1.7em;
	margin-bottom: 0.5em;
}
a {
	color: #ED8599;;
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:hover {
	color: #FBC600;;
	text-decoration: underline;
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}
.clear {
	clear: both
}
.center {
	text-align: center;
}
.bold {
	font-weight: bold;
}
.pc {
	display: block;
}
.sp {
	display: none;
}

#copy {
	font-size: 16px;
	line-height: 1em;
	color: #FFF;
	text-align: center;
	padding-top: 125px;
	padding-bottom:15px;
	background-image: url(../img/copy_bk.png);
	background-repeat: no-repeat;
	background-position: center top;
	width:100%;
	margin-top:-50px;
	z-index: 1;
	position: relative;
}
.gototop {
	position: fixed;
	right: 30px;
	bottom: 30px!important;
	z-index: 40!important;
}
.gototop img {
	vertical-align: bottom;
}
.sp_navi {
	display:none!important;
}

/* ドロワーメニュー設定 */
#drawer_menu {
	margin:0px auto;
	width: 750px;
}
#drawer_menu-checkbox {
  display: none;
}
#drawer_menu-icon {
	display: block;
	background-image: url(../img/menu.png);
	background-repeat: no-repeat;
	height: 100px;
	width: 100px;
	background-size:100%;
	position: fixed;
	z-index: 11;
	top: 0px;
	margin-left:650px;
}
#drawer_menu-close {
	display: none;
	opacity: 0;
	animation: Fuwa 1s forwards;
	padding:0px auto;
	width: 750px;
	height:100vh;
	top: 100px;
	z-index: 5;
	overflow-y: auto;
	position: fixed;
}
#drawer_menu-checkbox:checked ~ #drawer_menu-icon {
	background-image: url(../img/close.png);
}
#drawer_menu-checkbox:checked ~ #drawer_menu-close {
  display: block;
      opacity: 1;
}
#drawer_menu-close .main {
	background-color: #e8f7d7;
	color: #7A572C;;
	padding:30px 20px;
	padding-bottom:140px;
}
#drawer_menu-close ul {
	padding:0px 50px;
	margin-bottom:30px;
}
#drawer_menu-close li {
	font-size: 18px;
	line-height: 1em;
	background-image: url(../img/menu_icon.png);
	background-repeat: no-repeat;
	background-position: right 9px;
	background-size:8px;
}
#drawer_menu-close li a {
	width:100%;
	padding:1em 0px;
	display:block;
	color: #7A572C;;
	text-decoration: none;
}
#drawer_menu-close li a:hover {
	color: #7A572C;;
	text-decoration: none;
}
#drawer_menu-close .type {
	padding:0.5em 0px;
}
#drawer_menu-close .type:after {
	content: "";
}
#drawer_menu-close .type dt {
	font-size: 18px;
	line-height: 1em;
	display: block;
}
#drawer_menu-close .type dd {
	font-size: 18px;
	line-height: 1em;
	margin-left:0.5em;
	margin-top:1em;
	float:left;
}
#drawer_menu-close .type dd:nth-child(2),
#drawer_menu-close .type dd:nth-child(5) {
	padding-left:0.5em;
}
#drawer_menu-close .type dd a {
	padding:0px;
	color: #7A572C;;
	text-decoration: none;
}
#drawer_menu-close .type dd a:hover {
	color: #7A572C;;
	text-decoration: none;
}
#drawer_menu-close .type dd a:after {
	content: "／";
	margin-left:0.5em;
}
#drawer_menu-close .type dd:nth-child(4) a:after,
#drawer_menu-close .type dd:nth-child(7) a:after {
	content: "";
}
#drawer_menu-close .contact h5 {
	font-size: 21px;
	line-height: 1em;
	text-align:center;
	margin-bottom:1.5em;
	color: #7A572C;;
}
#drawer_menu-close .contact h5:before {
	position: absolute;
	font-size: 23px;
	line-height: 1em;
	content: "／";
	margin-left:-1.5em;
	transform: scaleX(-1);
}
#drawer_menu-close .contact h5:after {
	position: absolute;
	font-size: 23px;
	line-height: 1em;
	content: "／";
	margin-left:0.5em;
}
#drawer_menu-close .contact dt {
	float:left;
	width:49%;
}
#drawer_menu-close .contact dd {
	float:right;
	width:49%;
}
#drawer_menu-close .contact img {
	width:100%;
	border-radius: 7px;
}

/* 基本テンプレート設定 */

#wrapper {
	position:relative; /*gototopの親要素に指定*/
	width: 750px;
	margin: 0px auto;
}
#header {
	width: 750px;
	height:100px;
	position: fixed;
	z-index: 1;
	top: 0px;
	background-image: url(../img/header_bk.png);
}
#header h1 img {
	width:auto;
}

#footer {
	background-image: url(../img/footer_bk.webp);
	background-repeat: no-repeat;
	background-position: center top;
	padding-top:70px;
	padding-bottom:70px;
}
#footer h3 {
	text-align:center;
	padding-bottom:20px;
}
#footer h3 img {
	width:auto;
}
#footer .line {
	text-align:center;
	padding-bottom:40px;
}
#footer .line img {
	width:640px;
	border-radius: 10px;
}
#footer .address {
	background-image: url(../img/footer_add_bk.png);
	margin: 0px auto;
	width: 620px;/* 640px */
	padding:15px;
	padding-bottom:40px;
	border-radius: 10px;
}
#footer .address .tel {
	width:547px;
	margin:0px auto;
	padding-bottom:40px;
}
#footer .address .tel img {
	width:auto;
}
#footer .address .table {
	text-align:center;
	padding-bottom:10px;
}
#footer .address .table img {
	width:auto;
}
#footer p {
	font-size: 21px;
	line-height: 1.4em;
	margin:0px;
	padding:0px 1em;
}
#footer p span {
	color: #FBC600;
}
#footer .gmap {
	border: 2px solid #7EC5A4;
	margin-top:1.5em;
}
#footer .gmap iframe {
	width:100%;
	height:400px;
}
#footer .point {
	width:554px;
	margin:0px auto;
}
#footer .point li {
	margin-top:40px;
	width:154px;
	float:left;
}
#footer .point li img {
	border-radius: 40px;
	width:auto;
}
#footer .point li:nth-child(3n-1) {
	margin-left:46px;
	margin-right:46px;
}
#footer .point li:nth-child(3n+1) {
	clear:both;
}

/* 各ページ共通設定 */

#contents {
}
#contents #title {
	width:100%;
	height:550px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-image: url(../img/title_bk.webp);
	background-repeat: no-repeat;
	background-position: center top;
}
#contents #title h1 {
	font-size: 42px;
	line-height: 1em;
	letter-spacing: 0.1em;
	text-shadow:8px 8px 8px #FFF,
	-8px -8px 8px #FFF,
	-8px 8px 8px #FFF,
	8px -8px 8px #FFF,
	0px 8px 8px #FFF,
	0px -8px 8px #FFF,
	-8px 0px 8px #FFF,
	8px 0px 8px #FFF;
	color:#604C3F;
	padding-bottom:20px;
}
#contents .sub_title {
	font-size: 25px;
	line-height: 1em;
	color: #FFF;
	text-align: center;
	background-image: url(../img/sub_title_bk.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size:100%;
	text-shadow:1px 1px 1px #000;
	width: 690px;
	height: 55px;/* 66px */
	padding-top:13px;
	margin: 0px auto;
	margin-bottom:20px;
}
#contents .page_title {
	text-align:center;
	padding-bottom:30px;
}
#contents .page_title img {
	height:156px;
}
#contents .section {
	padding:0px 30px;
}
#contents .contents {
	background-image: url(../img/contents_bk.webp);
	background-repeat: repeat-y;
	background-position: center top;
}
#contents .page_lower  {
	background-image: url(../img/page_lower_bk.webp);
	background-position: center top;
}
#contents .page_lower_top {}
#contents .page_lower_top img {
	width:auto;
}
#contents .title_wave {
	font-size: 24px;
	line-height: 1.3em;
	width:530px;
	height:59px;/* 87px */
	padding-top:28px;
	margin-top: 2em;
	margin-bottom: 1em;
	color: #71af43;
	background-image: url(../img/title_wave.png);
	background-repeat: no-repeat;
	background-position: center top;
	text-align: center;
	letter-spacing: 0.1em;
	margin:0px auto;
	margin-bottom:1.5em;
}
#contents .title_kei {
	font-size: 21px;
	line-height: 1em;
	margin-top: 2em;
	margin-bottom: 1em;
	padding-left:0.6em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #875b30;
	border-bottom-color: #875b30;
}
#contents .komidashi {
	font-size: 21px;
	line-height: 1.3em;
	margin-top:1em;
	margin-bottom: 0.5em;
	color: #71AF43;
}
