@charset "utf-8";
/* CSS Document */
/* common style */

/* Noto Serif */
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP|Sawarabi+Mincho&display=swap');

/* M PLUS Rounded 1c */
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c&family=Noto+Serif+JP:wght@200..900&display=swap');

/* Kosugi Maru */
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&family=M+PLUS+Rounded+1c&family=Noto+Serif+JP:wght@200..900&display=swap');

* {
	border: 0px solid #1100ff;
}

/* reCHAPTCHA マーク消去 */
.grecaptcha-badge { visibility: hidden; }

/* 禁則文字対策 */
span.nowrap {
	display: inline-block;
}
/* 基本タグフォーマット */
a:link, a:visited, a:hover, a:active {
	text-decoration: none;
	color: inherit;
}
h1, h2, h3, h4 {
	color: inherit;
	text-align: center;
	margin: 0 auto;
}
h1 {
	padding: 40px 0;
}
h2 {/*section見出しに加工*/
	padding: 40px 0;
	letter-spacing: 0.5em;
	background: url(../img/bgh2.png) no-repeat;
	background-size: 50%;
	background-position: center;
	background-color:rgba(255,255,255,0.8);
	background-blend-mode:lighten;
	& small {
		font-size: 0.6em;
	}
}
h3 {
	padding: 20px 0;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
/* hr 的なライン */
p.line {
	border: 1px solid rgb(116, 44, 11);
	border-width: 1px 0 0 0;
	border-image: linear-gradient(to right,#f8e9e5,#965021) 1;
	width: 50%;
	margin: 40px auto;
}

html {
	font-family: 'Noto Serif JP','メイリオ', serif;
	color:rgb(77, 45, 9);
	/*font-family: "M PLUS Rounded 1c", sans-serif;*/
	/*font-family: "Kosugi Maru", sans-serif;*/
}

body {
	background: url(../img/background1.jpg) #DFC5A2;
	background-size: 50%;
	background-color: rgb(232, 192, 141);
	padding: 0px;

}

/* 最大表示サイズ */
header,main,footer {
	margin: 0 auto;
}
main {
	max-width: 1800px;
}

section {
	margin: 0px auto;
	padding: 0px;
}
dl,dt,dd {
	margin: 0;
	padding: 0;
}
/* 新規固定ページ追加用 */

div.page_post_cont {
	width: 100%;
	min-height: 500px;
}
/* WordPress固定ページ編集での左右、中央寄せ */
.aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.alignright{
	float: right;
	margin-left: 1.5em;
}
.alignleft{
	float: left;
	margin-right: 1.5em;
}

/*----------波状背景SVG----------------------------*/
.custom-shape-divider-top-1723091774 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.custom-shape-divider-top-1723091774 svg {
    position: relative;
    display: block;
    width: calc(200% + 1.3px);
    height: 500px;
    transform: rotateY(180deg);
}

.custom-shape-divider-top-1723091774 .shape-fill {
    fill: #FFFFFF;
}
/*--------------------------------------*/
/* エフェクト */
.fadein {
	animation: fadeIn 3.0s;
	animation-fill-mode: forwards;
}
   
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
/*--------------------------------------*/
/* carousel 画像カルーセル設定 */
div.carousel {
	& .wpcp-carousel-wrapper {
		width: 90%;
		margin: 0 auto;
		padding: 10px 0 10px 0;
		background:rgba(255, 255, 255, 0.5);
	}
	& .wpcp-single-item {
		border-radius: 12px;
		background-color: rgba(255, 255, 255, 0.5);
		& img {
			border-radius: 12px 12px 0 0;
			height: 380px;
			object-fit: cover;
		}
	}
	& .wpcp-all-captions {
		text-align: center;
	}
}
/*--------------------------------------*/
/* モバイルフッターメニュー */
& div.movfooter {
	position: fixed;
	bottom: 0;
	z-index: 30;
	border: 0 solid #000;
	border-width: 1px 0 0 0;
	width: 100%;
	height: 120px;
	background:linear-gradient(rgba(72, 77, 146, 0.8),rgba(0, 2, 27, 0.8));
	color:rgb(255, 255, 255);
	backdrop-filter: blur(15px);
	& .box {
		display: flex;
		align-items: flex-start;
		justify-content: stretch;
		padding: 20px 0 0 0;
		& .btn1 {
			height: 100px;
			width: 25%;
			& a {
				display: block;
				width: 100%;
				height: 100%;
				text-align: center;
				font-size: 0.8em;
				& img {
					display: block;
					margin: 0 auto;
					padding: 5px;
					width: 64px;
					height: 64px;
					border: 1px solid rgba(255, 255, 255, 0.5);
					border-radius: 10px;
				}
			}
		}
	}
}


/*--------------------------------------*/
/* header */
& header {
	color:rgb(15, 15, 15);
	background-color:rgba(255, 255, 255, 0.85);
	border-style: solid;
	border-width: 0 0 1px 0;
	border-color:rgb(82, 82, 82);
	padding: 0;
	display: flex;
	align-items: flex-start;
	justify-content: stretch;
	position: sticky;
	position: -webkit-sticky;
	top: 0;
	z-index: 20;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(15px);

	& h1 {
		width: 20%;
		min-width: 180px;
		margin: 0;
		padding: 6px 0;
		font-size: 1em;
		& a {
			display: flex;
			justify-content: center;
			align-items: flex-start;
			width: 100%;
			height: 100%;
			& img {
				width: 40px;
				height: 40px;
			}
			& small {
				display: block;
				font-size: 0.8em;
			}
			& p {
				margin: 0;
				font-size: 1.2em;
				padding: 4px 0 0 2px;
			}
		}
	}
	& ul {
		width: 60%;
		display: flex;
		justify-content: flex-end;
		align-items: stretch;
		& li {
			width: 6em;
			padding: 0;
			& a {
				display: block;
				text-align: center;
				padding: 10px 0 10px 0;
			}
			& a:hover {
				border: 0px solid rgb(36, 36, 36);
				border-bottom-width: 1px; 
			}

		}
	}
	& p.tel {
		width: 20%;
		text-align: center;
		font-size: 0.8em;
		margin:0;
		padding-top: 5px;
		text-align: center;
	}
}
/*--------------------------------------*/
/* footer */
& footer {
	background:rgb(0, 0, 0);
	color:rgb(255, 255, 255);
	padding-bottom: 10px;

	& small {
		display: block;
		margin: 0 auto;
		text-align: center;
		width: 100%;
	}
	& .sns {
		background:rgb(56, 56, 56);
		padding: 8px 20px;
		text-align: center;
		& a img {
			width: 28px;
			height: 28px;
			margin-right: 10px;
		}
		& span {
			display: inline-block;
			padding: 0 20px;
		}
	}
	& div.footer_tel {
		display: flex;
		align-items: flex-start;
		justify-content: stretch;
		background-color:rgb(34, 34, 34);
		text-align: center;
		padding: 10px 0;
		& .left {
			margin: 0 40px 0 auto;
			& p {
				display: inline-block;
				padding: 20px 10px;
			}
		}
		& .right {
			margin: 0 30px 0 40px;
			& p {
				font-size: 1.6em;
				margin: 0 auto;
				& small {
					font-size: 0.5em;
				}
			}
		}
		& img {
			display: block;
			width: 200px;
			max-width: 200px;
			height: 130px;
			object-fit: contain;
			margin: 0 50px 0 20px;
			border-radius: 8px;
		}
	}
	& nav {
		width: 25%;
		& img {
			display: block;
			width: 90%;
			max-width: 200px;
			margin: 0 auto;
			border-radius: 8px;
		}
	}
}
/*--------------------------------------*/
/* main */
/* ページごとにクラスで分ける */
main.top {
	& .slider_main {
		background-color: rgb(255, 255, 255);
	}
	& .welcome {
		display: flex;
		align-items: flex-start;
		justify-content: stretch;
		padding: 40px 0;
		& article {
			margin: 0 auto;
			writing-mode: vertical-rl;
			font-size: 1.2em;
			text-shadow: 0 0 10px #ffe29b;
			line-height: 3em;
			& p {
				margin: 0 auto;
				line-height: 3em;
			}
		}
	}
	& .osirase {
		background:rgba(255, 255, 255, 0.5);
		width: 90%;
		padding: 20px;
		margin: 10px auto;
		& ul {
			width: 90%;
			max-height: 300px;
			overflow: auto;
			padding: 10px;
			margin: 0 auto;
			& li {
				border-bottom: 1px dotted rgb(105, 54, 5);
				& dl {
					display: flex;
					align-items: flex-start;
					justify-content: stretch;
					& dt {
						min-width: 150px;
						max-width: 200px;
						padding: 4px;
						& span {
							font-family: 'メイリオ';
							font-size: 0.8em;
							font-weight: bold;
							text-align: center;
							background: rgb(128, 71, 6);
							color: white;
							display: block;
							padding: 2px 10px;
							border-radius: 12px;
							margin: 5px auto;
						}
					}
					& dd {
						width: 100%;
						padding: 4px 10px;
						& h4 {
							text-align: left;
							font-size: 1.4em;
							border-left: 2px solid rgb(172, 155, 103);
							padding-left: 10px;
						}
						& p {
							margin: 8px 0;
						}
						& a {
							color: red;
							text-decoration: underline;
						}
					}
				}
			}
		}
	}
	& .top_gaiyou {
		background:rgba(255, 255, 255, 0.5);
		width: 90%;
		padding: 0px;
		margin: 10px auto;
		& .box {
			background-color: #000000;

			display: flex;
			& .left, & .right {
				width: 50%;
			}
			& .left {
				background-image: url(../img/head_sougi.jpg);
				background-position: center;
				background-size: cover;
				& .grad {
					width: 100%;
					height: 100%;
					background: linear-gradient(to right,rgba(0,0,0,0),rgba(0,0,0,0),rgba(0,0,0,1));

				}
			}
			& .right {
				color: #ffffff;
				padding: 10px;
				& a {
					display: block;
					padding: 5px;
					width: 50%;
					margin: 0 auto;
					text-align: center;
					border: 0px solid red;
					border-radius: 16px;
					background-color: rgb(0, 22, 148);
					color: white;
				}
		}
		}
	}
	& .toukou {
		background:rgba(255, 255, 255, 0.5);
		width: 90%;
		padding: 20px;
		margin: 10px auto;
	}
	& .gyouzi {
		color:rgb(19, 19, 19);
		& .box {
			background-color:rgba(255, 255, 255, 0.8);
			color:rgb(19, 19, 19);
			width: 100%;
			margin: 0 auto;
			padding: 40px 0;
			& table {
				margin: 10px auto;
				max-width: 500px;
				width: 100%;
				& th, & td {
					padding: 5px 10px;
					text-align: left;
					vertical-align: top;
				}
			}
			& .event {
				display: none;
				background-color: rgb(255, 237, 251);
				padding: 10px;
				& article {
					width: 80%;
					max-width: 500px;
					margin: 0 auto;
				}
			}
		}
	}
	& .keidai {
		background:rgba(255, 255, 255, 0.5);
		padding: 20px;
		margin: 10px auto;
		& .screenshot {
			margin: 0 auto;
			border: 1px solid #ffffff;
			border-radius: 12px;
			width: 90%;
			height: 300px;
			background: url(../img/hondou.jpg);
			background-position: center;
			background-size: cover;
		}
		& .box {
			display: flex;
			align-content: flex-start;
			flex-wrap: wrap;
			justify-content: left;
			width: 90%;
			margin: 0 auto;
			padding: 20px 0;
			& .cont_box {
				margin: 10px;
				padding: 5px;
				width: 280px;
				background-color: rgb(255, 255, 255);
				border-radius: 8px;
				& h3 {
					font-size: 0.8em;
					padding: 2px;
				}
				& img {
					width: 100%;
					height:400px;
					object-fit: cover;
					border-radius: 8px 8px 0px 0px;
				}
				& p {
					margin: 0;
					font-size: 0.8em;
					padding: 5px;
				}
			}
		}
	}
	& .bochi {
		background:rgba(255, 255, 255, 0.5);
		padding: 20px;
		margin: 10px auto;
		& .box {
			width: 90%;
			margin: 60px 0;
			display: flex;
			background-image: url(../img/bgline.png);
			background-color:rgba(255, 255, 255, 0.5);
			background-blend-mode:lighten;
			& .left {
				width: 60%;
				& img {
					width: 100%;
					height:500px;
					object-fit: cover;
				}
			}
			& .right {
				width: 40%;
				display: flex;
				flex-direction: column;
				& h3 {
					writing-mode: vertical-rl;
					text-align: left;
					font-size: 1.5em;
					margin: 0 auto;	
				}
				& article {
					padding: 20px;
					& a {
						display: block;
						padding: 5px;
						width: 50%;
						margin: 0 auto;
						text-align: center;
						border: 0px solid red;
						border-radius: 16px;
						background-color: rgb(0, 22, 148);
						color: white;

					}
				}
			}
		}
	}
	& .sougi_banner {
		background:rgb(255, 255, 255);
		padding: 80px 0;
		margin: 0 auto;
		color:rgb(255, 255, 255);
		& .box {
			display: flex;
			& .left, & .right {
				width: 50%;
				margin: 0 auto;
				text-align: center;
				border-radius: 10px;
				& a {
					display: block;
					width: 80%;
					max-width: 600px;
					margin: 0 auto;
					padding: 20px;
					border-radius: 8px;
					background-color: rgba(0, 0, 0, 0.473);
					text-shadow: #000000 0 0 5px;
					& p {
						margin: 0 auto;
						font-size: 1.6em;
						border-style: solid;
						border-width: 0 0 1px 0;
						border-color: #ffffff;
					}
					& p, & small {
						background-color: rgba(0, 0, 0, 0.5);
					}
				}
			}
			& .left {
				& a {
					background-image: url(../img/head_sougi.jpg);
					background-position: center;
					background-size: cover;
				}
			}
			& .right {
				& a {
					background-image: url(../img/head_access.jpg);
					background-position: center;
					background-size: cover;
				}
			}
		}
	}
	& .jusyoku {
		& .box {
			display: flex;
			width: 75%;
			max-width: 1000px;
			background: rgba(0, 0, 0, 0.9);
			color: white;
			margin: 40px auto;
			padding: 20px;
			border-radius: 12px;
			& .left {
				width: 40%;
				& img {
					bottom: 0;
					border-radius: 100%;
					display: block;
					margin: 0 auto;
					width: 100%;
					height: 100%;
					max-width: 200px;
					max-height: 200px;
					object-fit: cover;
				}
			}
			& .right {
				width: 60%;
				& h4 {
					font-size: 1.2em;
				}
				& P {
					line-height: 1.2em;
					margin: 10px;
				}
			}
		}
	}
}
main {/*子ページのヘッダー用*/
	margin: 0 auto;
	& section.header {
		background-color: rgba(0, 0, 0, 0.5);
		color:rgb(255, 255, 255);
		position: relative;
		& h1 {
			position:absolute;
			z-index: 10;
			top: 20px;
			right: 15%;
			width: 200px;
			height: 300px;
			padding: 20px;
			background: linear-gradient(#00000000,#00000094 15%,#00000094 90%, #00000000);
			text-align: center;
			text-shadow: 1px 1px 8px #000,	0 0 20px #3b2615;
			& p {
				writing-mode: vertical-rl;
				display: inline-block;
				text-align: left;
				line-height: 1em;
				font-style: oblique -10deg;
				& span {
					display: inline-block;
					text-indent: 2.5em;
				}
			}
		}
		& ul {
			display: flex;
			justify-content: center;
			padding: 10px;
			background-color: rgba(0, 0, 0, 0.5);
			& li {
				display: block;
				width: 20%;
				text-align: center;
			}
		}
		& .top_img {
			background: url(../img/head_sougi.jpg);
			background-position: center;
			background-size: cover;
			width: 100%;
			height: 500px;
			position: relative;
			& .grad {
				width: 100%;
				height: 20%;
				position: absolute;
				bottom: 0;
				background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));
			}
		}
	}

}
main.sougi {
	& .header .top_img {
		background: url(../img/head_sougi.jpg);
		background-position: center;
		background-size: cover;

	}
	& section.hondou {
		& article {
			width: 90%;
			padding: 50px 20px;
			margin: 0 auto;
			text-align: center;
			line-height: 2em;
			white-space: 0.5em;
			& .jusyoku {
				display: flex;
				width: 300px;
				margin: 0 auto;
				& p {
					display: inline-block;
					writing-mode: vertical-rl;
					margin: 0;
					padding: 0;
					text-align: right;
				}
				& img {
					display: block;
					width: 200px;
					height: 200px;
					margin-right: 20px;
					border-radius: 100%;
				}
		
			}
		}
	}
	& section.sisetu {
		& .box {
			display: flex;
			width: 80%;
			max-width: 1000px;
			margin: 10px auto;
			& div.left, article {
				display: block;
				padding: 10px;
			}
			& article {
				width: 60%;
			}
			& .left {
				width: 40%;
				& img {
					object-fit: cover;
					width: 100%;
				}
			}
		}
	}
}
main.gaiyou {
	& .header .top_img {
		background: url(../img/head_gaiyou.jpg);
		background-position: center;
		background-size: cover;
	}
	& .gaiyou2 {
		& .box {
			margin: 20px auto;
			width: 90%;
			max-width: 1000px;
			padding: 20px;
			display: flex;
			background: linear-gradient(rgb(245, 241, 223),rgb(219, 211, 180),rgb(245, 241, 223),rgb(219, 211, 180));
			& .left, .right {
				width: 50%;
			}
			& .left {
				& table {width: 100%;}
				th, td {
				padding: 6px;
				}
			}
			& .right img {
				display: block;
				margin: 0 auto;
				width: 100%;
				height: 100%;
				max-height: 280px;
				object-fit: contain;
			}
		}
	}
	& .yuisyo {
		& article.text1, .text2 {
			background-color:rgba(236, 236, 236, 0.582);
			color:rgb(19, 19, 19);
			width: 100%;
			margin: 0 auto;
			padding: 20px;
			& p {
				width: 90%;
				margin: 0 auto;
				padding: 0.4em;
			}
		}
		& .box_rand {
			display: flex;
			padding: 20px;
			max-width: 930px;
			margin: 0 auto;
			& img.left {
				display: block;
				width: 40%;
				padding: 20px;
				object-fit: cover;
			}
			& .right {
				width: 60%;
				padding: 40px;
			}

		}
		& article.text2 {
			background-color: rgb(255, 255, 255);
		}
		& .photo {
			display: flex;
			height: 300px;
			& .left, & .right, & .center {
				object-fit: cover;
			}
			& .left {
				width: 30%;
			}
			& .center {
				width: 40%;
			}
			& .right {
				width: 30%;
			}
		}
	}
	& .enkaku {
		color:rgb(19, 19, 19);
		& .box {
			background-color:rgba(255, 255, 255, 0.8);
			color:rgb(19, 19, 19);
			width: 100%;
			margin: 30px auto;
			margin-bottom: 150px;
			padding: 20px;
			& dl {
				width: 70%;
				margin: 0 auto;
				& dd {padding: 0 0 10px 2em;}
			}
		}
	}
}
main.bochi {
	& .header .top_img {
		background: url(../img/head_bochi.jpg);
		background-position: center 70%;
		background-size: cover;
	}
	& .jumoku {
		& article p {
			text-align: center;
			padding: 40px 0;
		}
		& .box {
			margin: 20px auto;
			width: 100%;
			max-width: 900px;
			background-image: url(../img/background3.jpg);
			& ul {
				list-style-type: disc;
				list-style-position: inside;
				padding: 10px;
				width: 90%;
				margin: 0 auto;
				& li {
					padding: 10px;
				}
			}
			& .up, & .down {
				display: flex;
				& .left, .right {
					width: 50%;
				}
				& h4 {
					padding: 20px 0;
					font-size: 1.2em;
					text-align: left;
					text-indent: 2em;
				}
				& img {
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
		}
	}
	& .eidaikuyou {
		width: 100%;
		& article p {
			text-align: center;
			padding: 40px 0;
		}
		& .box {
			display: flex;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
			& .left {
				width: 40%;
			}
			& .right {
				width: 60%;
				& table {
					width: 80%;
					margin: 20px auto;
					padding: 10px;
					background-color: rgb(237, 233, 241);
					& th, td {
						padding: 10px;
						text-align: center;
					}
				}
				& p {
					padding: 0 20px;
					font-size: 0.8em;
				}
				& ul {
					list-style-type:circle;
					list-style-position:outside;
					padding: 20px 10px 20px 10%;
					& li {
						padding-top: 10px;
					}
				}
			}
		}
	}
	& .pet_banner {
		& .box {
			width: 50%;
			margin: 50px auto;
			border: 1 solid #000;
			border-radius: 12px;
			background-color: #000;
			& a {
				display: block;
				width: 100%;
				height: 100%;
				padding: 20px;
				text-align: center;
				color: #fff;
			}
		}
	}
}
main.pet {
	& .header .top_img {
		background: url(../img/head_pet.jpg);
		background-position: center;
		background-size: cover;
	}
	& .kuyoutou {
		& h3 {
			padding: 20px auto;
		}
		& h4 {
			text-align: left;
			text-indent: 3em;
			font-size: 1.2em;
			padding: 20px;
			& span {
				color: rgb(212, 0, 0);
				font-size: 0.8em;
			}
		}
		& h5 {
			font-size: 1.1em;
			text-align: center;
		}
		& article {
			width: 90%;
			margin: 20px auto;
			text-align: center;
		}
		& .kuyou {
			padding: 20px 0;
			& .box {
				display: flex;
				& .left, .center, .right {
					width: 32%;
					padding: 20px;
					margin: 0 auto;
					background-color: #fff;
					border-radius: 10px;
				}
				& .center {
					& table {
						margin: 0 auto;
						& td {
							padding: 5px 10px;
						}
					}
				}
			}
		}
	}
	& .goriyou {
		& .box {
			display: flex;
			align-items: center;
			width: 90%;
			margin: 20px auto;
			background-color: #ffffff;
			border-radius: 12px;
			padding: 20px;
			& h5 {
				margin: 0;
				text-align: left;
			}
			& small {
				display: block;
				text-align: center;
			}
			& .left {
				width: 40%;
			}
			& .center {
				width: 20%;
				& p {
					text-align: center;
					font-size: 1.4em;
				}
			}
			& .right {
				width: 40%;
				& p {
					font-size: 1.4em;
					margin: 0;
					text-align: center;
				}
			}
		}
	}
	& .kasou {
		& .box {
			width: 80%;
			margin: 20px auto;
			background-color: #ffffff;
			border-radius: 12px;
			padding: 20px;
			& table {
				width: 90%;
				margin: 0 auto;
				text-align: right;
				& th, & td {
					padding: 10px;
				}
				& thead {
					text-align: center;
				}
			}
		}
		& p {
			padding-left: 50%;
		}
	}
	& .maisou {
		& .box {
			width: 80%;
			margin: 20px auto;
			background-color: #ffffff;
			border-radius: 12px;
			padding: 20px;
			& p {
				font-size: 1.2em;
			}
			& small {
				display: block;
				text-indent: 2em;
			}
		}
	}
	& .taisetu {
		& h4 {
			text-align: center;
		}
		& .box {
			width: 80%;
			margin: 20px auto;
			background-color: #e0c799;
			border-radius: 12px;
			padding: 20px;
			& ul {
				list-style-type:decimal;
				list-style-position: inside;
				& li {
					padding: 10px;
				}
			}
		}
	}
	& .freed {
		padding: 20px;
		margin: 60px auto;
		background-color: #fdf5b2;
		& h5 {
			text-align: center;
			margin: 0;
			padding: 10px;
		}
		& p {
			margin: 0;
			text-align: center;
		}
		& small {
			text-align: center;
			display: block;
		}
	}
}
main.access {
	& .header .top_img {
		background: url(../img/head_access.jpg);
		background-position: center;
		background-size: cover;
	}
	& .map {
		& .box {
			width: 80%;
			margin: 40px auto;
			display: flex;
			& .left {
				width: 50%;
				padding: 20px;
				background-color: #ffffff;
				border-radius: 12px;
				& dl {
					margin: 0 auto;
					width: 80%;
					& dt {
						font-size: 1.4em;
						padding: 10px 0;
					}
					& dd {
						text-indent: 3em;
					}
				}
			}
			& .right {
				width: 50%;
				& img {
					display: block;
					margin: 0 auto;
					height: 200px;
					width: 80%;
					object-fit: cover;
				}
			}
		}
	}
	& .koutuu {
		& p.line-v {
			border: 1px dotted #000000;
			border-width: 0 0 0 2px;
			height: 1em;
			margin-left: 1em;
		}
		& .box {
			display: flex;
			width: 90%;
			margin: 20px auto;
			background-color: #ffffff;
			border-radius: 12px;
			padding: 20px;
			& .left {
				width: 50%;
				border: 0 solid #bebebe;
				border-width: 0 1px 0 0;
				& .box2 {
					margin: 0 auto;
					width: 90%;
					border: 0 solid #998d88;
					border-width: 1px 0 0 0 ;
					& span {
						display: inline-block;
						background-color: #0a0094;
						color:rgb(255, 255, 255);
						padding: 3px 5px;
						border-radius: 10px;
						margin-right: 1em;
					}
				}
			}
			& .right {
				width: 50%;
				& ul {
					list-style: circle;
					list-style-position: inside;
					width: 90%;
					margin: 0 auto;
				}
				& img {
					display: block;
					width: 100%;
					height: 200px;
					object-fit: cover;
					padding: 20px;
				}
			}
		}
	}
	& .otoiawase {
		& .box {
			width: 90%;
			margin: 40px auto;
			padding: 20px;
			background-color: #ffffff;
			border-radius: 12px;
			& p {
				text-align: center;
				margin: 0;
			}
			& h3 {
				font-size: 2em;
				line-height: 0.6em;
				& small {
					font-size: 0.5em;
					display: inline-block;
					padding-right: 1em;
				}
			}
		}
	}
}
main.menu {
	height: 100%;
	& .menu_header {
		background-color: white;
		& h1 {
			margin: 0 auto;
			padding: 0;
			width: 85%;
			font-size: 1em;
			display: flex;
			& img {
				width: 40px;
				height: 40px;
			}
			& p {
				margin: 0 auto;
				font-size: 1.5em;
			}
		}
	}
	& .menu_body {
		& .box, .box2, .box3, .box4 {
			font-size: 1.2em;
			border-radius: 12px;
			background-color: rgba(255, 255, 255, 0.8);
			padding: 5px 10px;
			margin: 10px auto;
			width: 95%;
		}
		& .box {
			& ul {
				list-style: circle;
				padding-left: 2em;
				& li {
					padding: 5px 0;
					& a {
						display: inline-block;
						width: 100%;
					}
				}
			}
		}
		& .box2, .box3 {
			& p {
				padding: 0 0 0 20px;
				margin: 5px auto;
				& small {
					display: block;
					padding-left: 3em;
				}
			}
		}
		& .box3 {
			background-color: rgb(0, 14, 77);
			color: white;
			text-align: center;
			width: 70%;
			& p {
				padding: 0;
				& a {
					display: block;
					width: 100%;
					height: 100%;
				}
			}
		}
		& .box4 {
			margin-bottom: 150px;

		}
	}
}
/*--------------------------------------*/


/* WordPress Contact Form 7 */

div.wpcf7 {
	width: 90%;
	margin: 40px auto;
	
	& > form table {
	width: 100%;
	border: 6px solid #bfbaa5;
	
		& > tbody {
			
			& > tr td, tr th {
				border: 1px solid #bfbaa5;
				color: #222222;
				padding: 8px;
			}
			& > tr th {
				background: #fdf3ea;
				width: 20%;
				min-width: 120px;
				font-weight: bold;
			}
			& > tr td {
				width: 80%;
				min-width: 120px;
			}
		}
	}
}

.wpcf7-radio .wpcf7-list-item {
	margin-top:5px;
	display: block;
}



/*--------------------------------------*/
@media screen and (max-width:769px) {
/*********** スマホ用小サイズのcssを記述 *************/

/* 非表示 */
& header,
& footer {
	display: none;
}

/* サイズ調整 */
& main.top {
	padding: 0;
	& .welcome article p {
		line-height: 2em;
	}
	& .top_gaiyou {
		& .box .right a {width: 100%;}
	}
	& .toukou {
		width: 98%;
	}
	& .top_gaiyou { 
		width: 100%;
		padding:0;
		& .box .left {
			width: 35%;
		}
		& .box .right {
			width: 65%;
		}
	}
	& .carousel .wpcp-carousel-wrapper {
		width: 100%;
	}
	& .bochi {
		padding: 20px 0;
		& .box {
			width: 100%;
			& .left, .right {
				width: 50%;
			}
			& .right {
				& h3 {
					font-size: 1.2em;
				}
				& article {
					padding: 5px;
					& a {
						width: 100%;
					}
				}
			}
		}
	}
	& .sougi_banner {
		 & .box {
			& .left, & .right {
				& a {
					padding: 20px 0px;
					& p {
						font-size: 1.1em;
					}
				}
			}
		}
	}
	& .jusyoku {
		& .box {
			width: 100%;
		}
	}
	& .jusyoku {
		margin-bottom: 150px;
	}
}
& main {/*子ページヘッダー*/
	& section.header {
		& .top_img {
			height: 400px;
		}
		& h1 {
			right: 0%;
		}
	}
}
& main.top {
	& .osirase {
		width: 100%;
		padding: 0;
		& ul {
			width: 95%;
			max-height: 400px;
			& li dl {
				display: block;
			}
		}
	}
}
& main.gaiyou {
	& .gaiyou2 {
		& .box {
			display: block;
			width: 100%;
			& .left, & .right {
				width: 100%;
			}
		}
	}
	& .yuisyo {
		& article.text1 {
			padding: 0;
		}
		& .box_rand {
			padding: 0;
			& .right {
				padding: 10px;
			}
		}
	}
	& .enkaku {
		& .box {
			padding: 10px 0;
			& dl {
				width: 90%;
			}
		}
	}
	& .gyouzi {
		& .box {
			& table {
				& th {
					padding: 5px 2px;
				}
				& td {
					padding-right: 0;
				}
			}
			& .event {
				margin-bottom: 100px;
			}
		}
	}
}
& main.sougi {
	& section.sisetu {
		margin-bottom: 150px;
		& .box {
			width: 100%;
			& div.left {
				padding: 0;
			}
			& article {
				padding: 0 5px;
				& h3 {
					padding: 0;
					font-size: 1em;
				}
				& p {
					margin: 5px 0;
				}

			}
		}
	}
}
& main.bochi {
	& h2 {
		letter-spacing: 0;
	}
	& .jumoku {
		& .box {
			& ul {
				padding: 0;
				width: 100%;
				font-size: 0.9em;
				& li {
					padding: 5px;
				}
			}
		}
	}
	& .eidaikuyou {
		& .box {
			display: block;
			& .left, & .right {
				width: 100%;
			}
			& .right {
				& table {
					margin: 10px auto;
					width: 90%;
					padding: 0;
				}
			}
		}
	}
	& .pet_banner {
		& .box {
			margin-bottom: 200px;
			width: 60%;
		}
	}
}
& main.pet {
	& .kuyoutou {
		& h4 {
			text-indent: 0;
			text-align: center;
		}
		& .kuyou {
			& .box {
				display: block;
				& .left, .center, .right {
					width: 90%;
					margin: 10px auto;
					padding: 10px;
					& h5 {
						margin: 10px auto;
					}
				}
			}
		}
		& .kasou {
			& .box {
				width: 95%;
				padding: 0;
				& table {
					width: 100%;
					& th, td {
						padding: 10px 5px;
						min-width: 5em;
						font-size: 0.9em;
					}
				}
			}
			& p {
				padding-left: 5px;
			}
		}
		& .maisou {
			& .box {
				width: 95%;
				padding: 5px;
				& p {
					font-size: 1em;
				}
			}
		}
		& .taisetu {
			& .box {
				padding: 5px;
				width: 95%;
			}
		}
		& .freed {
			margin-bottom: 150px;
		}
	}
}
& main.access {
	& .map {
		& .box {
			display: block;
			width: 90%;
			& .left, & .right {
				width: 100%;
				padding: 5px;
			}
		}
	}
	& .koutuu {
		& .box {
			display: block;
			width: 95%;
			padding: 5px;
			& .left, & .right {
				width: 100%;
				border-width: 0;
			}
		}
	}
	& .otoiawase {
		& .box {
			margin-bottom: 150px;
			width: 95%;
			padding: 5px;
			& h3 {
				font-size: 1.5em;
			}
		}
	}
}
}/*スマホend*/

@media only screen and (min-width:640px) and (max-width:1000px) {
/*タブレット用中サイズのcssを記述*/

/* 非表示 */
& header > p,
& div.movfooter
{
	display: none;
}
& header {
	& ul {width: 80%;}
}
}/*タブend*/
  
@media screen and (min-width:1000px) {
/*pc用大サイズのcssを記述*/

/* 非表示 */
& div.movfooter {
	display: none;
}

}/*PCend*/