@charset "UTF-8";

	element{}

	@media (min-width: 1030px) {

		}

	@media (max-width: 1029px) {

		}

	html {

		font-family: "Kosugi Maru", "Noto Sans JP";

		}

	body {

		position: relative;

		display: block;

		width: 100%;

		max-width: 100vw;

		top: 0;

		padding: 0;

		margin: 0;

		text-align: center;

		}

	body .hover_btn {

		text-align: right;

		}

	@media (min-width: 1030px) {

		body {

			}

		img {

			width: 65vw;

			max-width: 950px;

			}

		.pc_img {}

		.sp_img {

			display: none;

			}

		.hover_btn {

			height: 40px;

			width: 80px;

			}

		}

	@media (max-width: 1029px) {

		body {

			padding-top: 110px;

			}

		img {

			width: 80vw;

			}

		.pc_img {

			display: none;

			}

		.sp_img {

			width: 88vw;

			}

		.hover_btn {

			height: 30px;

			width: 60px;

			}

		}

	body a{

		line-height: 1.8;

		}

	.hover_btn {

		position: sticky;

		bottom: 10px;

		}


/* header */

	header {

		position: relative;

		width: 100%;

		padding: 0;

		margin: 0;

		background-color: #FFCCDD;

		}

	#menu-toggle {

		display: none;

		}

	.title {

		text-decoration: none;

		color: #452510;

		}

	.nav_a {

		text-decoration: none;

		color: #452510;

		transition: color 0.3s;

		line-height: 1;

		}

	.nav_a:hover {

		color: #FF6611;

		}

	.nav_banner {

		display: none;

		width: 100%;

		background-color: #FFCCDD;

		border-bottom: solid 1px #957560;

		}

	.nav_banner_mini {

		width: 100%;

		background-color: #FFCCDD;

		border-bottom: solid 1px #957560;

		}

	.nav_banner a {

		color: #452510;

		}

	.nav_banner a:hover {

		color: #FF6611;

		}

	.nav_banner_mini a {

		color: #452510;

		}

	.nav_banner_mini a:hover {

		color: #FF6611;

		}

	@media (min-width: 1030px) {

		header {

			top: 0px;

			height: 110px;

			}

		.title {

			font-size: 40px;

			padding: 30px;

			margin: 25px;

			line-height: 3;

			}

		.inv_nav nav {

			position: sticky;

			height: 80px;

			top: 0px;

			width: 100%;

			background-color: #FFCCDD;

			z-index: 1000;

			border-bottom: solid 1px #957560;

			}

		ul {

			padding-top: 10px;

			padding-left: 0px;

			padding-right: 0px;

			padding-bottom: 0px;

			}

		.li_big {

			display: inline-block;

			height: 40px;

			width: 160px;

			padding: 0px;

			padding-top: 20px;

			margin: 20;

			border-left: solid 1px #452510;

			border-right: solid 1px #452510;

			background: rgba(255, 215, 230, 2);

			text-align: center;

			}

		.nav_a {

			padding: 20px;

			font-size: 18px;

			}

		.nav_mini ul li .nav_a {

			display: none;

			}

		.inv_nav .nav_banner {

			position: sticky;

			display: block;

			height: 30px;

			top: 81px;

			margin: 0;

			padding: 0;

			z-index: 1000;

			}

		.nav_banner_mini {

			display: none;

			}

		.inv_nav {

			position: absolute;

			height: 100%;

			width: 100%;

			}

		.blank_area {

			position: reletive;

			top: 0;

			height: 0;

			width: 0;

			padding: 0;

			margin-top: 0;

			margin-bottom: 155px;

			}

		.fill_color_top {

			position: absolute;

			top: 90px;

			width: 100%;

			height: 50px;

			background-color: #FFCCDD;

			}

		}

	@media (max-width: 1029px) {

		header {

			position: fixed;

			top: -16px;

			height: 75px;

			z-index:1001;

			}

		.title {

			font-size: 24px;

			line-height: 3.8;

			}

		.menu-btn {

			position: fixed;

			top: 15px;

			right: 30px;

			z-index: 1002;

			width: 30px;

			height: 30px;

			cursor: pointer;

			}

		.menu-btn span, .menu-btn span::before, .menu-btn span::after {

			content: '';

			position: absolute;

			width: 30px;

			height: 3px;

			background: #452510;

			transition: 0.3s;

			}

		.menu-btn span {

			top: 50%;

			right: 0px;

			transform: translateY(-50%);

			}

		.menu-btn span::before {

			top: -10px;

			right: 0px;

			}

		.menu-btn span::after {

			top: 10px;

			right: 0px;

			}

		.nav_mini {

			position: fixed;

			top: 0;

			left: 0;

			width: 100%;

			height: 100%;

			background: rgba(255, 222, 220, 0.9);

			color: #FFFFFF;

			display: flex;

			justify-content: center;

			align-items: center;

			transform: translateX(100%);

			transition: 0.4s ease;

			z-index: 1000;

			}

		.nav_mini ul {

			list-style: none;

			padding: 0;

			text-align: center;

			}

		.nav_mini li {

			margin: 20px 0;

			}

		.nav_a {

			font-size: 24px;

			}

		#menu-toggle:checked ~ .nav_mini {

			transform: translateX(0);

			}

		#menu-toggle:checked + .menu-btn span {

			background: transparent;

			}

		#menu-toggle:checked + .menu-btn span::before {

			top: 0;

			transform: rotate(45deg);

			}

		#menu-toggle:checked + .menu-btn span::after {

			top: 0;

			transform: rotate(-45deg);

			}

		.h_container {

			position: fixed;

			height: 75px;

			width: 100%;

			padding: 0;

			margin: 0;

			border-bottom: solid 1px #957560;

			}

		.nav_banner_mini {

			position: relative;

			height: 30px;

			top: 71px;

			margin: 0;

			padding: 0;

			border-top: solid 1px #957560;

			}

		.inv_nav {

			display: none;

			}

		.fill_color_top {

			display: none;

			}

		}




/* content */

	@media (min-width: 1030px) {

		.title_container {

			height: 400px;

			font-size: 2.4em;

			}

		.page_title {

			top: 195px;

			}

		.lead_column_caption {

			width: 81vw;

			margin-left: 10vw;

			}

		.info_column_caption {

			width: 81vw;

			margin-left: 10vw;

			}

		.column_caption {

			width: 81vw;

			margin-left: 10vw;

			}

		.column_p {}

		table {

			max-width: 950px;

			}

		}

	@media (max-width: 1029px) {

		.title_container {

			height: 50vw;

			}

		.page_title {

			top: 24vw;

			font-size: 2em;

			}

		.lead_column_caption {

			width: 87vw;

			margin-left: 5vw;

			}

		.info_column_caption {

			width: 87vw;

			margin-left: 5vw;

			}

		.column_caption {

			width: 87vw;

			margin-left: 5vw;

			}

		.column_p {}

		table {

			font-size: 0.8em;

			}

		}

	.title_container {

		position: inline-block;

		background-image: url("../img/background_image_test.png");

		background-position: center;

		background-size: cover;

		margin-top: 30px;

		margin-bottom: 30px;

		}

	.title_container_cover {

		width: 100%;

		height: 100%;

		background-image: url("../img/background_pattern.png");

		background-size: auto;

		background-repeat: repeat repeat;

		}

	.page_title {

		position: relative;

		color: #F7B3CC;

		}

	.lead_column_caption {

		background-color: rgba(255, 204, 221, 1);

		border-left: solid 10px #652510;

		}

	.info_column_caption {

		background-color: rgba(255, 253, 253, 1);

		border-left: solid 5px #C0F7DF;

		}

	.column_caption {

		background-color: rgba(255, 204, 221, 1);

		border-left: solid 10px #654530;

		}

	.column_p {

		width: 100%;

		text-align: left;

		line-height: 2.2;

		font-size: 23px;

		color: #452510;

		}

	caption {

		margin-top: 20px;

		margin-bottom: 20px;

		}

	table {

		position: relative;

		border-collapse: collapse; /* 枠を重ねずに統一 */

		width: 100%;

		margin: auto;

		}

	th, td {

		border: 1px solid #333;

		padding: 8px;

		}

	thead {

		background-color: #eee;

		}

	thead th, td {

		text-align: center;

		}

	.price th, .price td {

		border-top: 2px dashed rgba(0, 0, 0, 0.6);

		}

	.info_a {

		color: #452510;

		}

	.info_a:hover {

		color: #FF6611;

		}

/* container */

	@media (min-width: 1030px){

		.main_container{

			width: 70vw;

			left: 15vw;

			}

		.info {

			}

		.a_sitemap {

			width: 100%;

			height: 627px;

			}

		}

	@media (max-width: 1029px){

		.main_container{

			width: 84vw;

			left: 8vw;

			}

		.info {

			}

		.sitemap {

			display: none;

			}

		.a_sitemap {

			width: 99%;

			height: 627px;

			}

		}

	.main_container{

		position: relative;

		text-align: left;

		font-size: 17px;

		}

	.info {

		height: 300px;

		width: 100%;

		}

	.sitemap {

		position: relative;

		z-index: 1100;

		}

/*  */

/* footer */

	@media (min-width: 1030px) {

		footer {

			}

		.fill_color_bottom {

			position: absolute;

			bottom: -90px;

			width: 100%;

			height: 40px;

			background-color: #FFCCDD;

			padding-top: 0;

			padding-bottom: 60px;

			margin: 0;

			}

		}

	@media (max-width: 1029px) {

		footer {

			}

		.fill_color_bottom {

			display: none;

			}

		}

	footer{

		bottom: 0;

		height: 160px;

		width: 100%;

		background-color: #FFCCDD;

		padding: 0;

		margin: 0;

		}

	footer a {

		line-height: 0.6;

		}