/*サイト全体の基準となるCSSを記述*/

html {
	font-size: 16px;
}

body {
	width: 100%;
	height: auto;
	font-family: 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: 1.4;
	margin: 0;
	padding: 0;
	color: #333;
	overflow-x: hidden;
	overflow-wrap: break-word;
	box-sizing: border-box;
	letter-spacing: 0.1rem;
	/* スクロールバー非表示（IE / Firefox） */
	-ms-overflow-style: none; /* IE, Edge */
	scrollbar-width: none;    /* Firefox */
}

/* Chrome, Safari 対応 */
.menu_content_inner::-webkit-scrollbar {
	display: none;
}

.menu_content::-webkit-scrollbar {
	display: none;
}

.wrapper {
	overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	color: #666;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.3rem;
	margin-bottom: 0.5rem;
	line-height: 1.2;
}

img {
	max-width: 100%;
	height: auto;
}

small {
	font-size: 0.7rem;
}

dt {
	margin: 15px 0;
	font-size: 1rem;
}

iframe.wp-embedded-content {
	width: 100%;
	margin: 50px 0 30px;
	box-sizing: border-box;
}

hr {
	margin: 1.5rem 0;
	border-top: 0.5px solid #333;
}

table {
	font-size: 1rem;
	margin: 1rem auto;
	width: 100%;
}

th {
	padding: 0.8rem;
	font-size: 0.8rem;
	vertical-align: middle;
	width: 50%;
	text-align: center;
}

td {
	padding: 0.5rem;
	font-size: 0.8rem;
	vertical-align: middle;
	width: 50%;
	text-align: center;
}

@media screen and (max-width: 768px) {
	th {
		padding: 0.5rem;
	}

	table span {
		display: inline-block;
	}

	td {
		padding: 0.5rem;
	}}

.heading {
	text-align: center;
	font-size: 2rem;
	line-height: 1;
	font-weight: bold;
	margin: 2rem 0;
	letter-spacing: normal;
	color: #666;
}

p {
	margin: 1rem 0 1.5rem;
}

.linkbtn {
	color: #fff;
	font-size: min(4vw,1.5rem);
	box-sizing: border-box;
	font-weight: bold;
	text-align: center;
	letter-spacing: .05rem;
	border-radius: 30px;
	background: #ccc;
	padding: 15px 30px;
	margin: 0 0.5rem;
	border: none;
	position: relative;
	overflow: hidden;
}

@media screen and (max-width: 1024px) {
	.linkbtn {
		margin: 1rem 0;
	}}

.linkbtn::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	transform: skewX(-25deg);
}

.linkbtn:hover::before {
	animation: shine 0.7s;
}

@keyframes shine {
	100% {
		left: 125%;
	}}

.nl {
	display: inline-block;
}

*, *::before, *::after {
  box-sizing: border-box;
}

/* ボディ */
body {
	background: #fee1f5;
}

/* セクション・コンテンツ */
.contents_container {
	padding: 5%;
}

/* ヘッダー */

header {
    position: absolute;
    width: 100%;
    margin: 0 auto;
    z-index: 1;
}

.header_container {
    max-width: 1920px;
    height: 100%;
    position: relative;
    margin: 0 auto;
}

.site_title_wrap {
	width: 90%;
	max-width: 480px;
	padding: 0.5rem 0 0 15px;
}

@media screen and (max-width: 1024px) {
	.site_title_wrap {
		margin: 0 auto;
		padding: 0.5rem 0 0 0;
	}}

.sns_wrap {
	position: absolute;
	font-size: 2.2rem;
	line-height: 0;
	top: 0;
	bottom: 0;
	right: 80px;
	display: flex;
	height: auto;
	width: 65px;
	justify-content: center;
	align-items: center;
	z-index: 100;
}

@media screen and (max-width: 1024px) {
	.sns_wrap {
		display: none;
	}}

.sns {
	margin: 0 0.25rem;
	padding: 0 0.25rem;
}

/* ファーストビュー */

.firstview {
    width: 100%;
    max-width: 1920px;
    height: calc(var(--vh, 1vh) * 100);
    overflow: hidden;
    position: relative;
    margin: 0 auto;
}

.firstview:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-color: rgba(0, 0, 0, 0.3);
	background-image: radial-gradient(rgba(0, 0, 0, 0.1) 1px, transparent 1px);
	background-size: 5px 5px;
	z-index: -2;
	pointer-events: none;
	transform: translate3d(0, 0, 0);
}

.firstview_container {
    max-width: 1920px;
    height: 100%;
    position: relative;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fv {
  width: 95%;
  max-width: 1024px;
  height: auto;
  background: url(../images/fv_pc.png?20250701) center center / contain no-repeat;
  padding-top: 56.25%;
  margin-bottom: 3%;
  animation: kenBurns 1.5s ease-in forwards , dokidoki 2.5s ease-in-out 1.5s infinite;
  transform-origin: center center;
}

@keyframes kenBurns {
  0% {
    transform: scale(0.7) rotate(10deg);
	
    opacity: 0;
  }
  60% {
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(-3deg);
  }
}

@keyframes dokidoki {
  0% {
    transform: scale(1) rotate(-3deg);
  }
  60% {
    transform: scale(1) rotate(-3deg);
  }
  70% {
    transform: scale(0.95) rotate(-3deg);
  }
  85% {
    transform: scale(1.05) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(-3deg);
	opacity: 1;
  }
}

@media screen and (min-width: 531px) and (max-width: 1024px) {
  .fv {
	width: 80%;
	max-width: 830px;
    background: url(../images/fv_sp.png?20250701) center center / contain no-repeat;
    padding-top: 118.52%;
  }
}

@media screen and (max-width: 530px) {
  .fv {
	width: 90%;
    background: url(../images/fv_sp.png?20250701) center center / contain no-repeat;
    padding-top: 118.52%;
  }
}

.fv_txt {
    position: absolute;
    text-align: center;
    font-family: 'Gilda Display', serif;
    font-size: min(3.7vw, 0.9rem);
    font-weight: bold;
    color: #fff;
    bottom: 3%;
	animation: floatY 3s ease-in-out infinite;
}


@keyframes floatY {
  0%   { transform: translateY(0); }
  50%  { transform: translateY(-10px); }
  100% { transform: translateY(0); }
}

.video_wrapper {
	width: 100%;
	max-width: 1920px;
	height: 100%;
	position: fixed;
	top: 0;
	overflow: hidden;
	z-index: -3;
	transform:translate3d(0,0,0);
}

#header-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}

/* ラッパー */

.wrapper {
	max-width: 1920px;
	overflow: hidden;
	margin: 0 auto;
}

/* キャンペーン */

.campaign {
    width: 100%;
    padding: 5%;
    background: #fff;
    position: relative;
}

.cp_banner {
    width: 100%;
    background: url(../images/campaign_pc.png?20250701) center center / contain no-repeat;
    padding-top: 56.25%;
}

@media screen and (max-width: 767px) {
.cp_banner {
    background: url(../images/campaign_sp.png?20250701) center center / contain no-repeat;
    padding-top: 155.56%;
}}

/* プロフィール */

.staff {
	position: relative;
	background-image: url(../images/staff.png?20250701);
	background-size: auto 580px;
	background-position: calc(50% + 140px) bottom;
	background-repeat: no-repeat;
	height: 640px;
}

@media screen and (min-width: 768px) and (max-width: 1024px){
.staff {
	background-size: auto 580px;
	background-position: calc(50% + 40px) bottom;
	height: auto;
	margin-top: 0;
}}

@media screen and (max-width: 767px) {
.staff {
	background-size: auto 280px;
	background-position: calc(50% + 40px) bottom;
	height: auto;
	margin-top: 0;
}}

.staff:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: #fd6f84;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.staff:after {
    content: "ACORDE";
    width: 150%;
    height: auto;
    position: absolute;
    color: rgba(255, 255, 255, 0.3);
    text-align: center;
    line-height: 1;
    font-size: min(23vw, 16rem);
    font-weight: bold;
    left: -25%;
    bottom: 15%;
    z-index: -1;
    transform: rotate(350deg);
}

.staff_contents {
	height: auto;
    width: 100%;
    max-width: 830px;
	margin: 0 auto;
	display: table;
	position: relative;
}

.half_box {
	width: 50%;
	height: auto;
	float: left;
	display: inline-block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

@media screen and (max-width: 736px) {
.half_box {
	width: 100%;
}}

.profile {
	width: 100%;
	height: auto;
	color: #fff;
	font-weight: bold;
	float: right;
	display: block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	max-width: 767px;
	padding-right: 20px;
	padding-left: 20px;
	margin-top: 80px;
}

@media screen and (max-width: 736px){
.profile {
	padding-right: 20px;
	padding-left: 20px;
	margin-top: 20px;
}}

.name {
	font-family: 'Gilda Display', serif;
	font-size: min(9vw,2rem);
    margin: 0.5rem 0;
}

.profile_disc {
	font-weight: normal;
	width: 50%;
	font-size: 0.7rem;
	padding-bottom: 50px;
}

/* エリア */

.area {
	background: #fff;
}

.area_container {
	max-width: 1280px;
	width: 90%;
	margin: 0 auto;
	padding: 3% 0 1%;
	display: flex;
	align-items: center;
	color: #000;
}

@media screen and (max-width:540px) {
.area_container {
	display: initial;
}}

.area_map {
	width: 55%;
	margin-right: 5%;
}

@media screen and (max-width:540px) {
.area_map {
	width: 90%;
	margin: 0 auto;
	padding: 2rem 0 1rem;
	margin: 0 auto;
}}

.area_disc {
	width: 40%;
}

@media screen and (max-width:540px) {
.area_disc {
	width: 90%;
	text-align: center;
	margin: 0 auto;
}}

.area_clinic {
    border-bottom: 1.5px dashed;
    text-align: center;
    padding: 0 0 0.3rem;
    margin: 0.2rem auto;
    width: 80%;
    display: table;
    font-size: min(5vw, 1.2rem);
    font-weight: bold;
}

@media screen and (max-width:540px) {
.area_clinic {
	margin: 0.5rem auto;
}}

.sub {
	font-weight: normal;
	font-size: min(4vw,1rem);
}

/* ローマピンク */
/* なぜ？ */

.romapink {
    max-width: 1920px;
    padding: 5%;
    overflow: hidden;
    position: relative;
    margin: 0 auto;
}

.romapink:after {
	content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
	background-color: rgb(255, 255, 255, 0.8);
    background-image: radial-gradient(rgba(255, 0, 0, 0.1) 2px, transparent 2px);
    background-size: 4px 4px;
    z-index: -2;
    pointer-events: none;
    transform: translate3d(0, 0, 0);
}

.romapink_container {
	max-width: 820px;
	font-size: min(4.3vw, 1.3rem);
    font-weight: bold;
    color: #222;
    display: table;
    margin: 0 auto;
    position: relative;
	padding-bottom: 1rem;
}

.point3 {
    font-family: 'Gilda Display', serif;
    font-size: min(7vw, 2rem);
    font-weight: bold;	
    color: #000;
    text-align: center;
    border-bottom: 3px solid;
    padding-left: 3rem;
    position: relative;
    display: table;
    margin: 5% auto;
}

.point3_1:before {
    content: "01";
    position: absolute;
    left: 0;
    font-size: min(7vw, 1.5rem);
    padding: 0.3rem;
    line-height: 1;
    font-family: 'Noto Serif JP';
    color: #fff;
    bottom: 5%;
    background: #000;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}

.point3_2:before {
    content: "02";
    position: absolute;
    left: 0;
    font-size: min(7vw, 1.5rem);
    padding: 0.3rem;
    line-height: 1;
    font-family: 'Noto Serif JP';
    color: #fff;
    bottom: 5%;
    background: #000;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}

.point3_3:before {
    content: "03";
    position: absolute;
    left: 0;
    font-size: min(7vw, 1.5rem);
    padding: 0.3rem;
    line-height: 1;
    font-family: 'Noto Serif JP';
    color: #fff;
    bottom: 5%;
    background: #000;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}

.efficacy {
    background: rgba(255, 255, 255, 0.6);
    padding: 1% 5% 5%;
    font-weight: normal;
    border-radius: 10px;
    margin-bottom: 1rem;
}

/* お悩み */

.trouble {
    max-width: 1920px;
    padding: 10% 0 12%;
    background: #fd6f84;
    position: relative;
}

.trouble:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/trouble.jpg?20250701) center center / cover no-repeat;
    opacity: 0.2;
}

.trouble_container {
	max-width: 720px;
	font-size: min(4.3vw, 1.3rem);
    font-weight: bold;
    margin: 0 auto;
	padding-top: 1rem;
    position: relative;
    color: #fff;
}

.trouble_heading {
    font-family: 'Gilda Display', serif;
    font-size: min(10vw, 4.8rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
	margin: 0 0 1rem;
}

.trouble_heading img {
    width: 70%;
    max-width: 380px;
}

.trouble_disc {
    font-family: 'Gilda Display', serif;
    font-size: min(5vw, 2rem);
	text-align: center;
    font-weight: bold;
    display: table;
    margin: 0 auto;
}

.trouble_disc p {
    margin: 0.5rem 0 0;
}

.trouble_disc p::first-letter {
    font-size: min(9vw, 4rem);
	color: #333;
}

/* ビフォーアフター */

.before_after {
    width: 100%;
    padding: 5%;
    background: #fff;
    position: relative;
}

.before_after:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-image: radial-gradient(rgba(255, 190, 190, 0.2) 3px, transparent 0);
    background-size: 20px 20px;
    z-index: 0;
    animation: d_scl 30s linear infinite;
}

@keyframes d_scl {
	0% { background-position: 0% 0%; }
	100% { background-position: 100% 200%; }
}

.before_after_container {
    width: 100%;
    max-width: 1024px;
    font-size: min(4.3vw, 1.3rem);
    text-align: center;
    margin: 0 auto;
    padding-top: 2rem;
    position: relative;
    z-index: 1;
}

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

@media screen and (max-width:540px) {
.ba_img_container {
    display: block;
}}

.before_after_heading {
    font-size: min(10vw, 4.8rem);
    font-weight: bold;
    text-align: center;
}

.before_after_disc {
    font-size: min(5vw, 2rem);
    text-align: center;
    font-weight: bold;
    display: table;
    margin: 0 auto 2rem;
}

.ba_img {
    width: 33%;
    margin: 2%;
}

@media screen and (max-width:540px) {
.ba_img {
    width: 90%;
    margin: 0 auto 1rem ;
}}

.ba_img img {
    border-radius: 15px;
}

.ba_img_heading {
    font-size: min(9vw, 1.5rem);
    font-weight: bold;
    color: #ffa8d8;
    transform: rotate(-5deg);
    margin-bottom: 1rem;
}

.ba_sub {
    font-size: min(6vw, 1.8rem);
    font-weight: bold;
    color: #888;
}

.swiper-slide.swiper-slide-prev , .swiper-slide.swiper-slide-next {
    opacity: 0.35;
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(180, 180, 180, 0.5) !important;
}

/* 流れ */

.flow {
    width: 100%;
    padding: 5%;
    background: #ffd6dc;
    position: relative;
}

.flow:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/damask.png?20250701) center center / 300px repeat;
    opacity: 0.35;
}

.flow_container {
	max-width: 1024px;
	font-size: min(4.3vw, 1.3rem);
    font-weight: bold;
    margin: 0 auto;
	padding-top: 1rem;
    position: relative;
}

.flow_heading {
    font-family: 'Gilda Display', serif;
    font-size: min(10vw, 3rem);
    font-weight: bold;
    color: #333;
    text-align: center;
    margin: 1rem 0 2rem;
}

.flow_flex {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.flow_lip,.flow_body {
    width: 50%;
    padding: 2%;
}

@media screen and (max-width: 540px) {
.flow_flex {
    display: block;
}

.flow_lip,.flow_body {
    width: 100%;
    padding: 0;
}}

.flow_item {
    font-size: min(7vw, 2rem);
    font-weight: bold;
    text-align: center;
    background: #ff7f92;
    color: #fff;
    margin-bottom: 1rem;
}

.step_container {
}

.flow_step {
    font-size: min(4vw, 1.2rem);
    text-align: center;
    background: #fff;
    padding: 0.5rem;
}

.flow_disc {
    background: #fff;
    padding: 3%;
}

@media screen and (max-width: 540px) {
.flow_disc {
 font-size: 0.8rem;
}}
 
.fds {
    font-size: min(2.7vw, 0.8rem);
}

.triangle {
 width: 0;
 height: 0;
 border-left: 15px solid transparent;
 border-right: 15px solid transparent;
 border-top: 20px solid #333;
 margin: 1rem auto;
}

/* REASON */

.reason {
    width: 100%;
    padding: 5%;
    background: #fd6f84;
    position: relative;
}

.reason:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/romapink2.png?20250701) center center / cover no-repeat;
    opacity: 0.3;
}

.reason_heading {
    font-family: 'Gilda Display', serif;
    font-size: min(15vw, 5rem);
    font-weight: bold;
    color: #fff;
    text-align: center;
    margin: 3rem 0 2rem;
    line-height: 0.5;
}

.reason_wrap {
	max-width: 720px;
    margin: 0 auto;
	padding-top: 1rem;
    position: relative;
	color: #fff;
    font-weight: bold;
}

.reason_container {
 display: flex;
 justify-content: center;
 align-items: center;
 font-family: 'Gilda Display', serif;
 text-align: center;
}

@media screen and (max-width: 540px) {
.reason_container {
 display: initial;
}}

.reason_label {
 text-align: center;
 background: url(../images/reason.png?20250701) center center / contain no-repeat;
 color: #fff;
 font-size: min(6vw,1.3rem);
 font-weight: bold;
 padding: 3%;
 transform: rotate(346deg);
}

@media screen and (max-width: 540px) {
.reason_label {
 padding: 6%;
}}


.reason_list {
 font-size: min(7vw,2rem);
 color: #fff;
 padding-left: 1rem;
 display: table;
 border-bottom: 10px solid #ffa4a4;
}

@media screen and (max-width: 540px) {
.reason_list {
 padding-left: 0;
 display: block;
 margin-top: 0.5rem;
}}

.reason_disc {
    display: table;
    margin: 2rem auto;
}

/* アクセス */

.access {
    width: 100%;
    background: #fee1f5;
    position: relative;
}

.access_container {
    width: 100%;
    display: flex;
    justify-content: center;
}

.access_img {
    width: 30%;
}

.access_detail {
    width: 70%;
    background: #f77f8a;
}

.access_acorde {
	font-size: min(5vw, 3rem);
    padding: 5%;
    color: #fff;
    font-weight: bold;
}

.access_disc {
    font-family: 'Gilda Display', serif;
    font-size: min(5vw, 1.4rem);
    font-weight: bold;
    color: #fff;
    padding: 0 3% 5%;
    display: table;
    margin: 0 auto;
}

.access_map {
	height: 200px;
    font-size: 0;
	overflow: hidden;
}

.access_map iframe {
    transform: scale(0.5);
    transform-origin: top left;
    width: 200%;
    height: 400px;
    border: none;
}

/* メニューリスト */

.menu_list {
    width: 100%;
    padding: 5%;
    background: #ffd6dc;
    position: relative;
}

.menu_list:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/damask.png?20250701) center center / 300px repeat;
    opacity: 0.35;
}

.ml_container {
    width: 100%;
    max-width: 830px;
    margin: 0 auto;
    background: #fff;
    padding: 3%;
    position: relative;
    text-align: center;
    border-radius: 10px;
}

.ml_heading {
    font-family: 'Gilda Display', serif;
    font-size: min(8vw, 3rem);
    font-weight: bold;
    color: #f77f8a;
    text-align: center;
    margin: 1rem 0;
}

.ml_container th {
    font-size: min(5vw, 1.6rem);
}


.ml_container td {
    font-size: min(6vw, 1.6rem);
	font-weight: bold;
}

.ml_container th,.ml_container td {
	border-bottom: 2px solid #000;
}

/* よくあるご質問 */

.faq {
    width: 100%;
    padding: 5%;
    background: #fff;
    position: relative;
}

.faq_container {
	max-width: 720px;
	font-size: min(4.3vw, 1.3rem);
    font-weight: bold;
    margin: 0 auto;
	padding-top: 1rem;
    position: relative;
}

.faq_heading {
    font-family: 'Gilda Display', serif;
    font-size: min(8vw, 3rem);
    font-weight: bold;
    color: #333;
    text-align: center;
    margin: 1rem 0 2rem;
}

.q {
    position: relative;
    padding-left: 40px;
    margin-bottom: 2rem;
}

.q:before {
    position: absolute;
    font-family: 'Noto Serif JP', serif;
    content: "Q";
    background: #d2b4b4;
    color: white;
    font-weight: 900;
    font-size: 15px;
    border-radius: 50%;
    left: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.q:after {
    content: '';
    display: block;
    position: absolute;
    left: 20px;
    height: 0;
    width: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #d2b4b4;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.a {
    position: relative;
    padding-left: 40px;
    margin-bottom: 2rem;
    font-family: 'Gilda Display', serif;
}

.a:before {
    position: absolute;
    font-family: 'Noto Serif JP', serif;
    content: "A";
    background: #fd6f84;
    color: white;
    font-weight: 900;
    font-size: 15px;
    border-radius: 50%;
    left: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.a:after {
    content: '';
    display: block;
    position: absolute;
    left: 20px;
    height: 0;
    width: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #fd6f84;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}


/* コンタクト LINE Instagram */

.contact {
    width: 100%;
    text-align: center;
    padding: 2rem 0;
    z-index: 1;
    position: relative;
}

@media screen and (min-width: 1025px){
.contact_container {
	display: flex;
	justify-content: center;
	max-width: 100%;
}}

.contact_container {
    margin: 0 auto;
	width: 90%;
}

.line {
	background: #22d000;
}

.instagram {
	background: rgb(64,93,230);
	background: linear-gradient(45deg, rgba(64,93,230,1) 0%, rgba(88,81,219,1) 10%, rgba(131,58,180,1) 20%, rgba(193,53,132,1) 30%, rgba(225,48,108,1) 40%, rgba(253,29,29,1) 50%, rgba(245,96,64,1) 60%, rgba(247,119,55,1) 70%, rgba(252,175,69,1) 80%, rgba(255,220,128,1) 90%);
}

.tel {
	text-align: center;
	font-size: min(8vw,3rem);
	font-weight: bold;
	color: #000;
	margin-top: 2%;
}

.acorde_container {
    width: 90%;
    max-width: 680px;
    margin: 0 auto;
    padding: 0 0 2rem;
	position: relative;
    z-index: 1;
}

.business {
    background: #000;
}

/* フッター */

footer {
	color: #000;
	background: rgb(253,111,132,0.8);
	padding: 0 0 90px;
}

.map_container {
	max-width: 580px;
	margin: 0 auto;
}

.footer_logo_container {
    width: 100%;
    max-width: 530px;
    margin: 5% auto;
}

.footer_access {
	width: 45%;
	max-width: 420px;
    font-size: min(3vw, 1rem);
	padding: 0 1%;
}

.footer_access_container {
    display: flex;
	justify-content: center;
}

@media screen and (max-width: 767px){
.footer_access {
	width: 100%;
}

.footer_access_container {
		display: table;
        margin: 0 auto;
	}}

.copyright {
	font-size: 0.8rem;
	color: #000;
	padding: 0.5rem 0 0;
	text-align: center;
}

.copyright p {
	margin: 0;
}

#footer_floating {
	width: 100%;
	height: 70px;
	position: fixed;
	bottom: 0;
	left: 0;
	text-align: center;
	z-index: 100;
}

#footer_floating a {
	text-decoration: none;
	color: inherit;
	width: 100%;
}

.footer_floating {
	display: flex;
}

.footer_icon {
	height: 75px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	position: relative;
	font-weight: bold;
	color: #fff;
}

.footer_icon_disc {
	font-size: 0.7rem;
}