@charset "utf-8";

@font-face {
	font-family: 'Century Gothic';
	font-weight: 400;
	src: url(../font/centurygothic.ttf) format("truetype");
	src: url(../font/centurygothic_bold.ttf) format("truetype");
	unicode-range: U+0000-00FF;
}

.pc_only{
	display: none;
}
.sp_only{
	display: block;
}

@media screen and (min-width: 768px){
    .pc_only{
		display: block;
	}
	.sp_only{
		display: none;
	}
}

body {
	font-family: "Century Gothic", "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	color: #333;
}

table {
	border-collapse: collapse;
}

th,
td {
	border: 1px solid #333;
	padding: 12px 16px;
	font-weight: 400;
}

th {
	vertical-align: baseline;
}

img {
	width: 100%;
}

/* ---------- ヘッダー ---------- */

.header {
	position: relative;
	padding: 5% 10%;
	background-image: url(../img/bg_1.png);
	background-size: contain;
}

.header_flex {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.header_inst {
	width: 1.35rem;
	height: auto;
}

.logo {
	position: absolute;
	left: 5px;
	top: 5px;
	/* transform: translate(-50%, -50%); */
	width: 20%;
	z-index: 1;
}

@media screen and (min-width: 768px) {
	.header {
		/* padding: 2%; */
		padding: 6%;
	}
	.header_flex {
		position: fixed;
		right: 0;
		top: 0;
		z-index: 99;
		background: #fff;
		padding: 0 1%;
	}
	.header_table {
		margin: 0 30px 0 0;
	}

	.header_table th,
	.header_table td {
		border: 0;
		padding: 5px;
		font-size: 0.7rem;
	}

	.flex_phone {
		display: flex;
		text-align: center;
		align-items: center;
		justify-content: center;
		margin: 0 30px 0 0;
	}

	.flex_phone img {
		width: auto;
		height: 1rem;
		margin: 0 0.5em 0 0;
	}

	.flex_phone p {
		font-size: 1rem;
	}

	.header_inst {
		width: 1rem;
		height: auto;
	}

	.logo {
		width: 20%;
	}
	.reserve_btn{
		background: #fbebc7;
		border-radius: 50px;
		margin: 2.5% 30px 2.5% 0;
		padding: 2.5% 0;
	}
	body .reserve_btn p{
		font-size: 1.8rem;
	}
}

@media screen and (min-width: 1440px) {
	.header_table th,
	.header_table td {
		font-size: 1rem;
	}

	.flex_phone img {
		height: 2rem;
	}

	.flex_phone p {
		font-size: 2rem;
	}

	.header_inst {
		width: 2rem;
		height: auto;
	}
}

@media screen and (min-width: 1920px) {
	.logo {
		width: 22%;
	}
}

/* ---------- fv ---------- */

.fv {
	/* background-color: #ff7f7f; */
	background-image: url(../img/bg_1.png);
	background-size: contain;
}

.fv_right {
	position: relative;
}

.fv_title {
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
	text-shadow: 0px 4px 4px #00000078;
}

.fv_title p {
	font-weight: 400;
	font-size: 0.5em;
}

@media screen and (min-width: 768px) {
	.fv {
		display: flex;
	}

	.fv_left {
		position: relative;
		width: 20%;
		margin: 0;
		padding: 17% 2% 0;
	}

	.fv_left_flex_1 {
		display: flex;
		flex-direction: column;
	}

	.fv_left_flex_1 p {
		font-size: 0.7rem;
	}

	.fv_left_flex_2 {
		display: flex;
		align-items: center;
		justify-content: space-evenly;
		margin: 20px 0 0 0;
	}

	.fv_left_flex_2 img {
		width: 20px;
		height: auto;
	}

	.fv_left_img {
		position: absolute;
		bottom: 0;
		right: 0;
		display: block;
		width: 50%;
		margin: 0 0 0 auto;
	}

	.fv_right {
		position: relative;
		width: 80%;
	}

	.fv_title {
		position: absolute;
		top: 38%;
		left: -9%;
		transform: translate(0%, -50%);
		width: auto;
		font-size: 1.8rem;
		font-weight: 700;
		color: #fff;
		text-align: right;
		text-shadow: 0px 4px 4px #00000078;
	}

	.fv_title p {
		font-weight: 400;
		font-size: 0.5em;
	}

	.fv_title .slash {
		display: inline;
	}
}

@media screen and (min-width: 1024px) {
	.fv_left {
		padding: 20% 2% 0;
	}

	.fv_title {
		top: 41%;
		font-size: 2.3rem;
	}
}

@media screen and (min-width: 1440px) {
	.fv_title {
		font-size: 3.2rem;
	}

	.fv_left {
		padding: 22% 4% 0;
	}

	.fv_left_flex_1 p {
		font-size: 1rem;
	}
}

@media screen and (min-width: 1920px) {
	.fv_title {
		font-size: 4rem;
		top: 48%;
	}

	.fv_left_flex_1 p {
		font-size: 1.3rem;
	}

	.fv_left_flex_2 img {
		width: 25px;
	}
}

/* ---------- メニュー ---------- */

.menu {
	position: relative;
	padding: 0 0 5% 0;
	/* background-color: #ff7fff; */
	background-image: url(../img/bg_1.png);
	background-size: contain;
	overflow: hidden;
}

.menu_top {
	position: relative;
	height: 280px;
	z-index: 1;
}

.menu_top_1 {
	position: absolute;
	top: -20px;
	left: 0;
	width: 40%;
}

.menu_top_2 {
	position: absolute;
	top: 30px;
	right: 20px;
	width: 40%;
}

.menu_title {
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
}

.menu_bottom {
	position: relative;
	width: 90%;
	margin: 10% auto 0;
	z-index: 1;
}

.menu_text {
	font-size: 0.8rem;
	font-weight: 500;
	margin: 1rem 0 0 0;
}

.menu_flex {
	display: flex;
	flex-direction: column;
}

.menu_flex_child {
	margin: 5% 0 0 0;
	font-weight: 500;
}

.menu_flex_child img,
.menu_flex_child p {
	text-align: center;
}

.menu_flex_child img {
	aspect-ratio: 3 / 2.5;
	object-fit: cover;
}

.menu_flex_child p {
	margin: 5% 0 0 0;
}

.menu_more {
	margin: 30px 0;
}

.menu_more_inner {
	margin: 5%;
	font-weight: 500;
}

.menu_more_inner_child {
	margin: 5% 0 0 0;
}

.menu_more_inner_child:first-child {
	margin: 0;
}

.menu_more_inner_child ul {
	list-style: disc;
}

.menu_more_inner_child li {
	margin: 0 0 0 1em;
	/* padding: 0 0 0 1em; */
}

.menu_more_inner_child li::marker {
	font-size: 1em;
}

.menu_more_flex {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.menu_triangle {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent #fff transparent;
	border-width: 0px 0px 1080px 1920px;
	opacity: 0.5;
}

@media screen and (min-width: 425px) {
	.menu_title {
		margin: 15% 0 0 0;
	}
}

@media screen and (min-width: 768px) {
	.menu {
		padding: 0 0 5% 0;
	}

	.menu_top {
		height: auto;
	}

	.menu_top_1 {
		top: 0;
		left: 0;
		width: 22%;
	}

	.menu_top_2 {
		width: 10%;
		left: 19%;
	}

	.menu_bottom {
		padding: 5% 0 0 0;
		margin: 5% auto 0;
	}

	.menu_title {
		width: 69%;
		margin: 0 0 0 auto;
		font-size: 1.2rem;
		text-align: left;
	}

	.menu_text {
		width: 69%;
		margin: 3% 0 0 auto;
		font-size: 0.6rem;
		text-align: left;
	}

	.menu_flex {
		flex-direction: row;
		gap: calc((100% - 90%) / 2);
		width: 69%;
		margin: 5% 0 0 auto;
	}

	.menu_flex_child {
		width: 30%;
		margin: 0;
	}

	.menu_flex_child p {
		font-size: 0.6rem;
		margin: 5% 0 0 0;
	}

	.menu_more {
		width: 60%;
		margin: 5% 7.5% 0 auto;
	}

	.menu_more_inner {
		font-size: 0.6rem;
	}

	.menu_triangle {
		border-width: 0px 0px 480px 1920px;
		opacity: 0.5;
	}
}

@media screen and (min-width: 1024px) {
	.menu_title {
		font-size: 1.5rem;
	}

	.menu_text {
		font-size: 0.7rem;
	}

	.menu_flex_child p {
		font-size: 0.7rem;
	}

	.menu_more_inner {
		font-size: 0.7rem;
	}
}

@media screen and (min-width: 1440px) {
	.menu_title {
		font-size: 1.8rem;
	}

	.menu_text {
		font-size: 1rem;
	}

	.menu_flex_child p {
		font-size: 1rem;
	}

	.menu_more_inner {
		font-size: 1rem;
	}
}

@media screen and (min-width: 1920px) {
	.menu_title {
		font-size: 2.8rem;
	}

	.menu_text {
		font-size: 1.4rem;
	}

	.menu_flex_child p {
		font-size: 1.4rem;
	}

	.menu_more_inner {
		font-size: 1.4rem;
	}
}

/* ---------- アート ---------- */

.art {
	position: relative;
	padding: 0 0 10% 0;
	/* background-color: #7f7fff; */
	background-image: url(../img/bg_1.png);
	background-size: contain;
	overflow: hidden;
}

.art_top {
	height: 500px;
	margin: 0 0 10% 0;
}

.art_top_img_1 {
	position: absolute;
	top: 40px;
	right: 53%;
	width: 40%;
}

.art_top_img_2 {
	position: absolute;
	top: 0;
	right: 0;
	width: 45%;
}

.art_title {
	position: absolute;
	top: 200px;
	left: 30px;
	font-size: 2rem;
	font-weight: 700;
}

.art_table {
	position: absolute;
	top: 340px;
	left: 35px;
	width: 40%;
}

.art_table th,
.art_table td {
	font-size: 0.8rem;
	font-weight: 500;
	padding: 5px;
	border: 0;
}

.art_table_2 {
	width: 90%;
	margin: 30px auto 0;
	border: 1px solid #333;
}

.art_table_2 tr {
	padding: 0 2.5%;
}

.art_table_2 th,
.art_table_2 td {
	padding: 1% 5%;
	border: 0;
}

.art_table_2 th {
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
}

.art_table_2 td {
	font-size: 0.8rem;
	font-weight: 500;
}

.art_text {
	width: 90%;
	margin: 0 auto;
	font-weight: 500;
}

.art_flex {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 80%;
	margin: 0 auto;
	z-index: 1;
}

.art_flex_child {
	margin: 20px 0 0 0;
}

.art_flex_child img,
.art_flex_child p {
	text-align: center;
}

.art_flex_child img {
	aspect-ratio: 1/1;
	object-fit: contain;
}

.inst_arrow {
	position: relative;
	display: block;
	width: 60%;
	margin: 10% auto 0;
	z-index: 1;
}

.art_triangle {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
	border-width: 1440px 0px 0px 1920px;
	opacity: 0.5;
}

@media screen and (min-width: 425px) {
	.art_top_img_2 {
		width: 40%;
	}
}

@media screen and (min-width: 768px) {
	.art {
		padding: 0 0 5% 0;
	}

	.art_title {
		position: static;
		font-size: 1.2rem;
		font-weight: 700;
		padding: 5% 0 0 8%;
	}

	.art_title .slash {
		display: inline;
	}

	.art_top {
		position: relative;
		height: auto;
		z-index: 1;
		margin: 0 0 3% 0;
	}

	.art_top_img_1 {
		top: 5%;
		right: 27%;
		width: 20%;
		padding: 3% 0 0 0;
	}

	.art_top_img_2 {
		width: 25%;
	}

	.art_table {
		top: 29%;
		left: 51%;
		width: auto;
	}

	.art_table th,
	.art_table td {
		font-size: 0.6rem;
	}

	.art_table_2 {
		position: static;
		width: 40%;
		margin: 3% 0 0 7%;
	}

	/* .art_table_2 .space *:first-child {
		padding-left: 10%;
	} */

	/* .art_table_2 .space *:last-child {
		padding-right: 10%;
	} */

	.art_table_2 th {
		font-size: 0.8rem;
	}

	.art_table_2 td {
		font-size: 0.6rem;
		font-weight: 500;
	}

	.art_text {
		position: static;
		width: 40%;
		font-size: 0.6rem;
		margin: 3% 0 0 7%;
	}

	.art_flex {
		position: relative;
		flex-direction: row;
		width: 65%;
		margin: 5% 0 0 7%;
	}

	.art_flex_child {
		margin: 0;
	}

	.art_flex_child img {
		aspect-ratio: 1 / 1;
		object-fit: cover;
	}

	.art_flex_child:not(:first-child) {
		margin: 0 0 0 4%;
	}

	.inst_arrow {
		position: relative;
		width: 15%;
		margin: 5% 0 0 57%;
		padding: 0;
	}

	.art_triangle {
		border-width: 750px 0px 0px 1920px;
	}

	.art_border {
		position: absolute;
		bottom: 20%;
		left: 0;
		width: 100%;
		height: 8%;
		background-color: #fff;
	}
}

@media screen and (min-width: 1024px) {
	.art_title {
		font-size: 1.5rem;
		padding: 5% 0 0 9%;
	}

	.art_text {
		font-size: 0.7rem;
		margin: 5% 0 0 7%;
	}

	.art_table_2 {
		margin: 5% 0 0 7%;
	}

	.art_table_2 th {
		font-size: 1rem;
	}

	.art_table_2 td {
		font-size: 0.7rem;
	}

	.art_table th,
	.art_table td {
		font-size: 0.7rem;
	}
}

@media screen and (min-width: 1440px) {
	.art_title {
		font-size: 1.8rem;
		padding: 5% 0 0 12%;
	}

	.art_text {
		font-size: 1rem;
	}

	.art_table {
		top: 32%;
	}

	.art_table th,
	.art_table td {
		font-size: 1rem;
	}

	.art_table_2 {
		margin: 5% 0 0 7%;
	}

	.art_table_2 th {
		font-size: 1.3rem;
	}

	.art_table_2 td {
		font-size: 1rem;
	}

	.art_flex {
		margin: 6% 0 0 7%;
	}
}

@media screen and (min-width: 1920px) {
	.art_top_img_1 {
		width: 17%;
	}

	.art_title {
		font-size: 2.8rem;
		padding: 5% 0 0 9%;
	}

	.art_text {
		font-size: 1.4rem;
		margin: 5% 0 0 7%;
	}

	.art_table {
		left: 54%;
	}

	.art_table_2 {
		margin: 5% 0 0 7%;
	}

	.art_table_2 th {
		font-size: 1.8rem;
	}

	.art_table_2 td {
		font-size: 1.4rem;
	}

	.art_table th,
	.art_table td {
		font-size: 1.4rem;
	}
}

/* ---------- ペット ---------- */

.pet {
	position: relative;
	padding: 0 0 20% 0;
	/* background-color: #7fffff; */
	background-image: url(../img/bg_1.png);
	background-size: contain;
	overflow: hidden;
}

.pet_top {
	height: 340px;
}

.pet_top_img_1 {
	position: absolute;
	top: 0;
	left: 0;
	width: 35%;
}

.pet_top_img_2 {
	position: absolute;
	top: 10px;
	left: 30%;
	width: 35%;
}

.pet_title {
	position: absolute;
	top: 200px;
	left: 38%;
	font-size: 2rem;
	font-weight: 700;
}

.pet_text {
	width: 90%;
	margin: 30px auto 0;
	font-weight: 500;
}

.pet_flex {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 90%;
	margin: 0 auto;
	z-index: 1;
}

.pet_flex_child {
	margin: 20px 0 0 0;
}

.pet_flex_child img,
.pet_flex_child p {
	text-align: center;
}

.pet_flex_child img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
}

.pet_triangle {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent #fff transparent;
	border-width: 0px 0px 1080px 1920px;
	opacity: 0.5;
}

.pet_border {
	position: absolute;
	bottom: 8%;
	left: 0;
	width: 100%;
	height: 8%;
	background-color: #fff;
}

@media screen and (min-width: 425px) {
	.pet_text {
    margin: 15% auto 0;
	}
}

@media screen and (min-width: 768px) {
	.pet {
		padding: 0 0 10% 0;
	}

	.pet_top {
		position: relative;
		height: auto;
		z-index: 1;
	}

	.pet_top_img_1 {
		width: 20%;
	}

	.pet_top_img_2 {
		top: 3%;
		left: 19%;
		width: 11%;
		padding: 2% 0 0 0;
	}

	.pet_title {
		position: static;
		margin: 0 0 0 37%;
		padding: 3% 0 0 0;
		font-size: 1.2rem;
	}

	.pet_text {
		position: static;
		width: 50%;
		margin: 4% 0 0 37%;
		font-size: 0.6rem;
	}

	.pet_flex {
		position: relative;
		flex-direction: row;
		width: 70%;
		margin: 5% 0 0 25%;
	}

	.pet_flex_child {
		margin: 0;
	}

	.pet_flex_child img {
		aspect-ratio: auto;
	}

	.pet_flex_child:not(:first-child) {
		margin: 0 0 0 4%;
	}

	.pet_triangle {
		border-width: 0px 0px 400px 1920px;
	}
}

@media screen and (min-width: 1024px) {
	.pet_title {
		font-size: 1.5rem;
	}

	.pet_text {
		font-size: 0.7rem;
	}
}

@media screen and (min-width: 1440px) {
	.pet_title {
		font-size: 1.8rem;
	}

	.pet_text {
		font-size: 1rem;
	}
}

@media screen and (min-width: 1920px) {
	.pet_title {
		font-size: 2.8rem;
	}

	.pet_text {
		font-size: 1.4rem;
	}
}

/* ---------- 店舗情報 ---------- */

.info {
	position: relative;
	padding: 80px 0 150px;
	/* background-color: #7fff7f; */
	background-image: url(../img/bg_1.png);
	background-size: contain;
	overflow: hidden;
}

.info_top_img {
	position: absolute;
	top: 10px;
	left: -15px;
	width: 20%;
}

.info_title {
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	margin: 10px 0 0 0;
}

.info_table_sp {
	position: relative;
	z-index: 1;
}

.info_table_pc {
	position: relative;
	z-index: 1;
}

.info_table {
	width: 90%;
	margin: 100px auto 0;
}

.info_table th,
.info_table td {
	font-size: 0.8rem;
	font-weight: 500;
	border: none;
	border-bottom: 1px solid #333;
}

.info_center_img {
	display: block;
	width: 80%;
	margin: 50px auto 0;
}

.info_bottom_img {
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 20%;
}

.info_triangle {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
	border-width: 1280px 0px 0px 1920px;
	opacity: 0.5;
}

@media screen and (min-width: 425px) {
	.info_table {
		display: table;
		margin: 25% auto 0;
	}
}

@media screen and (min-width: 768px) {
	.info {
		padding: 10% 0 5%;
		margin: 0;
	}

	.info_title {
		font-size: 1.2rem;
		text-align: left;
		margin: 0 0 3% 10%;
	}

	.info_table {
		position: static;
		width: 45%;
		margin: 0 0 0 12%;
	}

	.info_table th,
	.info_table td {
		font-size: 0.6rem;
		padding: 0.75em 0 0.75em 0.75em;
	}

	.info_table .border_b_0 {
		border-bottom: none;
	}

	.info_center_img {
		position: absolute;
		top: 10%;
		right: 10%;
		width: 20%;
		margin: 0;
	}

	.info_flex {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 80%;
		margin: 0 auto;
	}

	.info_flex .info_table {
		margin: 0;
		width: 55%;
	}

	.info_flex .info_center_img {
		position: static;
		width: 35%;
		margin: 0 0 0 5%;
	}

	.info_top_img {
		top: 0%;
		left: 0%;
		width: 10%;
	}

	.info_bottom_img {
		bottom: 0%;
		right: 0%;
		width: 10%;
	}

	.info_triangle {
		border-width: 550px 0px 0px 1920px;
	}

	.info_border {
		position: absolute;
		bottom: 44%;
		left: 0;
		width: 100%;
		height: 5%;
		background-color: #fff;
	}
}

@media screen and (min-width: 1024px) {
	.info {
		padding: 3% 0;
	}

	.info_title {
		font-size: 1.5rem;
		margin: 0 0 3% 18%;
	}

	.info_flex .info_table {
		width: 45%;
	}

	.info_flex .info_center_img {
		width: 25%;
	}

	.info_top_img {
		left: 5%;
		width: 7%;
	}

	.info_bottom_img {
		right: 5%;
		width: 7%;
	}

	.info_triangle {
		border-width: 380px 0px 0px 1920px;
	}

	.info_border {
		bottom: 46%;
	}
}

@media screen and (min-width: 1440px) {
	.info_title {
		font-size: 1.8rem;
	}

	.info_flex .info_table {
		width: 48%;
	}

	.info_table th,
	.info_table td {
		font-size: 1rem;
	}

	.info_flex .info_center_img {
		width: 28%;
	}

	.info_triangle {
		border-width: 420px 0px 0px 1920px;
	}

	.info_border {
		bottom: 47%;
	}
}

@media screen and (min-width: 1920px) {
	.info_title {
		font-size: 2.8rem;
		margin: 0 0 3% 22%;
	}

	.info_flex .info_table {
		width: 40%;
	}

	.info_flex .info_center_img {
		width: 22%;
	}

	.info_triangle {
		border-width: 360px 0px 0px 1920px;
	}

	.info_border {
		bottom: 46%;
	}
}

/* ---------- マップ & コンタクト ---------- */

.map {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 100%;
	margin: 0 0 10% 0;
}

.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 768px) {
	.map {
		padding-top: 35%;
		margin: 0;
	}
}

/* ---------- */

.contact {
	padding: 0 0 10%;
	/* background-color: #ffff7f; */
	background-image: url(../img/bg_1.png);
	background-size: contain;
}

.contact_title {
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	margin: 10px 0 0 0;
}

.contact_title_sub {
	font-size: 0.5em;
}

.contact_table {
	width: 90%;
	margin: 30px auto 0;
}

.contact_table th,
.contact_table td {
	padding: 0.5em 0 0.5em 0.5em;
	font-size: 0.8rem;
	font-weight: 500;
	border: 0;
}

.contact_table th {
	width: 20%;
}

.contact_table td:nth-of-type(1) {
	width: 15%;
}

.contact_table td:nth-of-type(2) {
	width: 65%;
}

.contact_text {
	width: 55%;
	margin: 30px auto 0;
	font-size: 0.8rem;
	font-weight: 500;
}

.contact_flex_tel {
	display: flex;
	text-align: center;
	align-items: center;
	justify-content: center;
	margin: 30px 0 0 0;
}

.contact_flex_tel_child_1 {
	width: auto;
	height: 1.5rem;
	margin: 0 0.5rem 0 0;
}

.contact_flex_tel_child_2 {
	font-size: 1.75rem;
}

.contact_flex_child_2 {
	font-weight: 500;
}

.contact_inst {
	display: block;
	width: 1.5rem;
	margin: 30px auto 0;
}

@media screen and (min-width: 768px) {
	.contact {
		padding: 5% 0 0 0;
	}

	.contact_flex_1 {
		display: flex;
	}

	.contact_flex_1_child_1,
	.contact_flex_1_child_2 {
		width: 50%;
	}

	.contact_flex_2 {
		display: flex;
		align-items: center;
		width: 90%;
		margin: 5% auto 0;
	}

	.contact_flex_2_child_1,
	.contact_flex_2_child_2 {
		width: 50%;
	}

	.contact_flex_tel {
		margin: 0;
	}

	.contact_flex_tel_child_1 {
		height: 1rem;
	}

	.contact_title {
		font-size: 1.2rem;
		margin: 3% auto 0;
	}

	.contact_table {
		width: 5% auto 0;
	}

	.contact_table th,
	.contact_table td {
		font-size: 0.6rem;
	}

	.contact_text {
		font-size: 0.6rem;
		margin: 0;
	}

	.contact_inst {
		width: 1rem;
		margin: 5% auto 0;
	}
}

@media screen and (min-width: 1024px) {
	.contact_title {
		font-size: 1.5rem;
	}

	.contact_table th,
	.contact_table td {
		font-size: 0.7rem;
	}

	.contact_text {
		font-size: 0.7rem;
	}
}

@media screen and (min-width: 1440px) {
	.contact_title {
		font-size: 1.8rem;
	}

	.contact_table th,
	.contact_table td {
		font-size: 1rem;
	}

	.contact_text {
		font-size: 1rem;
	}

	.contact_flex_tel_child_1 {
		height: 1.5rem;
	}

	.contact_flex_child_2 {
		font-size: 1.5rem;
	}

	.contact_inst {
		width: 1.5rem;
	}
}

@media screen and (min-width: 1920px) {
	.contact_title {
		font-size: 2.8rem;
	}

	.contact_table th,
	.contact_table td {
		font-size: 1.4rem;
	}

	.contact_text {
		font-size: 1.4rem;
	}

	.contact_flex_tel_child_1 {
		height: 2rem;
	}

	.contact_flex_child_2 {
		font-size: 2rem;
	}

	.contact_inst {
		width: 2rem;
	}
}

/* ---------- フッター ---------- */

.footer {
	padding: 5% 0;
	background-color: #FBEECB;
}

.copyright {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	font-weight: 500;
}

@media screen and (min-width: 768px) {
	.footer {
		padding: 3% 0;
	}
}
