@charset "UTF-8";
:root {
	/* サイト全体の基本フォント（英字は Futura） */
	--tcd-font-type1: "futura-pt", Arial, "Hiragino Sans", "Yu Gothic Medium", "Meiryo", sans-serif;
	--tcd-font-type2: "futura-pt", "Times New Roman", Times, "Yu Mincho", "游明朝", "游明朝体", "Hiragino Mincho Pro", serif;
	--tcd-font-type3: "futura-pt", Palatino, "Yu Kyokasho", "游教科書体", "UD デジタル 教科書体 N", "游明朝", "游明朝体", "Hiragino Mincho Pro", "Meiryo", serif;
	--tcd-font-type-logo: "futura-pt", "Noto Sans JP", sans-serif;
}

/* marico DESIGN CSS Document */
/* 共通部分 */
body {
	position: relative;
	z-index: 0;
	overflow: hidden;
	counter-reset: number 0 counter-reset1 counter-reset2;
	letter-spacing: 0.05rem;
	color: #873352;
	background: #fff;
	font-size: 14px;
	font-size: clamp(14px, 0.8vw, 20px);
}
a, .post-content a {
	color: #873352;
}
.font-1, .headline-font-type {
	font-family: "futura-pt", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-weight: 400;
}
p, .post-content p {
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 2;
	color: #222;
}
.post-content ul {
	list-style: disc;
	font-size: 0.9rem;
	font-weight: 400;
}
.breadcrumb-wrapper {
	height: 35px;
	background: none;
}
.breadcrumb.inner {
	display: block;
	width: fit-content !important;
	max-width: 1150px;
	height: 35px;
	padding: 0 !important;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 35px;
}
.signage {
	height: 250px;
	background: none;
}
.signage-title, .signage-title-sub {
	width: 86%;
	max-width: 1150px;
	margin: 0 auto;
	text-align: center;
	color: #873352 !important;
	text-shadow: none;
}
.signage-title {
	font-size: 4rem !important;
	font-weight: 500;
	/*font-family: "Caveat", cursive;*/
	/*letter-spacing: .2rem;*/
}
.signage-title-sub {
	margin-top: 12px;
	font-size: 0.9rem !important;
	font-weight: 400;
	line-height: 1;
}
@media only screen and (max-width: 768px) {
	.signage {
		height: 180px;
	}
	.signage-title {
		font-size: 2.5rem !important;
	}
	.signage-title-sub {
		font-size: 0.8rem !important;
	}
}
/* 共通部分 END */
/* ナビ */
.home .header::before {
	position: absolute;
	z-index: 2;
	bottom: 50px;
	left: 0;
	width: 100%;
	content: "SCROLL";
	text-align: center;
	/*font-family: "Caveat", cursive;*/
	letter-spacing: 0.2rem;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
}
.home .header::after {
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 40px;
	content: "";
	background: #fff;
}
.header-bar {
	z-index: 50;
	height: 10px;
	background: #fff !important;
}
.logo-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 160px;
	height: 100%;
	padding: 0 25px 0 22px;
	background: #fff;
}


.header-bar-inner {
	z-index: 100;
	width: 100%;
	max-width: unset;
}
.global-nav > ul > li > a, .global-nav .sub-menu a, .global-nav a:hover, .global-nav .current-menu-item > a {
	color: #873352;
}
.global-nav {
	padding-right: 8px;
	padding-left: 12px;
	background: #fff;
}
.global-nav > ul > li > a {
	position: relative;
	z-index: 0;
	padding: 0 16px;
	transition: all 0.8s;
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	/* font-family: "Caveat", cursive; */
	line-height: 85px;
}
.global-nav > ul > li > a::before, .global-nav .current-menu-item > a::before {
	position: absolute;
	z-index: -1;
	top: 28px;
	left: 17px;
	width: 0;
	height: 1px;
	content: "";
	transition: all 0.5s;
	background: #873352;
}
.global-nav > ul > li > a:hover::before, .global-nav .current-menu-item > a::before {
	width: calc(100% - 30px);
}
.global-nav > ul > li > a::after {
	position: relative;
	bottom: 25px;
	display: block;
	text-align: center;
	letter-spacing: 0.05rem;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 10px;
	font-weight: 500;
	line-height: 1;
}
.global-nav > ul > li.global-menu-home > a::after {
	content: "ホーム";
}
.global-nav > ul > li.global-menu-price > a::after {
	content: "デザイン制作";
}
.global-nav > ul > li.global-menu-guide > a::after {
	content: "広報サポート";
}
.global-nav > ul > li.global-menu-greeting > a::after {
	content: "私たちについて";
}
.global-nav > ul > li.global-menu-information > a::after {
	content: "最新情報";
}
.global-nav > ul > li.global-menu-partner > a::after {
	content: "パートナー";
}
.global-nav > ul > li.global-menu-contact > a::after {
	content: "お問い合わせ";
}
.global-nav .sub-menu a {
	background: #fff !important;
	font-size: 12px;
}
.global-nav .sub-menu a::before {
	content: none;
}
.global-nav .sub-menu a:hover {
	color: #873352 !important;
	background: #fff !important;
}
.global-nav .sub-menu a:hover::before {
	content: none;
}
@media only screen and (max-width: 1200px) {
	.logo-image {
		top: 7px;
		left: -8px;
		width: 120px;
		height: auto;
		padding: 8px;
		background: none;
	}
	.header-bar {
		height: 55px;
		border-color: #fff;
		background: #fff !important;
		box-shadow: none;
	}
	.global-nav {
		padding-right: 0;
		padding-left: 0;
		background: none;
	}
	.global-nav-button {
		height: 55px;
		border-left: 0;
		background: #fff;
	}
	.global-nav-button:before {
		color: #873352;
	}
	.global-nav-button:hover:before {
		color: #873352;
	}
	.global-nav a {
		color: #873352 !important;
		background: #fff;
	}
	.global-nav > ul > li > a {
		padding: 0 25px;
		text-align: left;
		font-size: 15px;
		line-height: 52px;
	}
	.global-nav > ul > li > a::after {
		position: absolute;
		bottom: 18px;
		display: inline-block;
		margin-left: 15px;
	}
	.global-nav .sub-menu a {
		padding: 0 25px;
		color: #873352 !important;
		background: #fff !important;
		line-height: 53px;
	}
	.global-nav a:hover, .global-nav .sub-menu a:hover {
		color: #873352 !important;
		background: #fff !important;
	}
	.global-nav > ul > li > a:before {
		content: none !important;
	}
	.global-nav .menu-item-has-children > a span::before {
		color: #873352;
	}
}
@media only screen and (max-width: 970px) {
	.home .header::before, .home .header::after {
		content: none;
	}
}
/* ナビ END */
/* YouTube コントロールバー非表示 */
.mb_YTPBar {
	display: none !important;
}
/* YouTube コントロールバー非表示 */
/* トップ・フッター */
.header-bar-fixed ~ .top-slider-wrapper {
	margin-top: 0;
}
.top-slider-wrapper {
	width: calc(100% - 20px);
	margin: 0 auto;
	background: #fff;
}
.top-slider-wrapper::before {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	opacity: 0.15;
	background: #000;
}
.top-slider-content {
	width: 100% !important;
	height: 100% !important;
	border-radius: 0;
}
.top-slider-content-inner, .top-slider-content-inner:hover {
	background: none;
}
.top-slider-content-inner {
	display: -webkit-flex;
	display:         flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	width: 100% !important;
	height: 100% !important;
	margin: 0 auto;
}
.top-slider-content-inner p {
	display: none;
}
.top-slider-content-inner:after {
	content: none;
}
.front-slider-box {
	width: 96%;
	margin: 0 auto;
}
.front-copy-img {
	display: block;
	width: 30%;
	max-width: 280px;
	margin: auto;
}
h2.front-main-title {
	/*letter-spacing: .2rem;*/
	text-align: center;
	font-size: 2.8rem;
	/*font-family: "Caveat", cursive;*/
	font-weight: 700;
	line-height: 1;
}
h2.front-main-title span {
	display: block;
	margin-top: 15px;
	letter-spacing: 0.1rem;
	color: #873352;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 0.8rem;
	font-weight: 400;
	line-height: 1;
}
.front_original01::after, .front_topics::before {
	position: absolute;
	left: 50%;
	display: block;
	width: 40%;
	max-width: 800px;
	height: 1px;
	content: "";
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	background:#873352;
}
.front_original01::after {
	bottom: 0;
}
.front_topics::before {
	top: 0;
}
.front_original01 {
	position: relative;
	margin-bottom: 7em;
	padding: 7em 0;
}
.front-original01-inner {
	align-items: center;
	width: 86%;
	max-width: 1000px;
	margin: 0 auto;
}
.front-original01__title {
	box-sizing: border-box;
	width: 30%;
}
.front-original01__text {
	box-sizing: border-box;
	width: 70%;
	padding-left: 7vw;
	color: #222 !important;
}
.front-original01__title h2 {
	font-size: 1.8rem;
}
.front-original01__title h3 {
	margin-top: 20px;
	text-align: center;
	letter-spacing: 0.1rem;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2;
}
.front-original01__text p {
	margin-bottom: 20px;
}
.front-original01__text p:last-child {
	margin-bottom: 0;
}
.content02 {
	padding-bottom: 8em;
	background: none;
}
.content02-inner {
	width: 86%;
	max-width: 1250px;
	padding: 0;
	margin-bottom: 80px;
}
.content02 h2, .front_original03 h2 {
	margin-bottom: 70px;
}
.content02-item {
	position: relative;
	z-index: 0;
	width: calc(33.3333% - 33.5px);
	margin-left: 50px;
	padding-bottom: 0;
	color: #873352;
}
.content02-img {
	position: relative;
	z-index: 0;
	overflow: hidden;
	width: 100%;
	height: auto;
	transition: all 0.8s;
}
.content02-img::before {
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40px;
	content: "";
	background: #873352;
}
.content02-img-inner {
	position: absolute;
	z-index: 1;
	bottom: 5px;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -7%);
	        transform: translate(-50%, -7%);
	text-align: center;
}
p.content02-img_title {
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	/*font-family: "Caveat", cursive;*/
	line-height: 1;
}
p.content02-img_title span {
	margin-left: 15px;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 1.4rem;
	font-weight: 600;
}
.content02-img .mask {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.6s ease;
	        transition: all 0.6s ease;
	opacity: 0;
	background: #eee5db99;
}
.content02-img:hover .mask {
	opacity: 0.5;
}
h3.content02-title {
	color: #873352;
}
h3.content02-title {
	margin-top: 1.5rem;
	margin-bottom: 0.8rem;
	text-align: left;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
}
.content02-text {
	font-size: 0.85rem;
	line-height: 2;
	color: #222;
}
a.content02-but {
	position: relative;
	z-index: 0;
	display: block;
	box-sizing: border-box;
	width: 100%;
	max-width: 360px;
	height: 50px;
	margin: 1.5rem 0 0;
	padding-left: 22px;
	/*letter-spacing: .1rem;*/
	text-align: left;
	font-size: 1.1rem;
	font-weight: 700;
	/*font-family: 'Caveat', cursive;*/
	font-style: normal;
	line-height: 46px;
}
a.content02-but::before {
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 55px;
	height: 55px;
	content: "";
	transition: all 0.5s ease 0s;
	opacity: 0.45;
	border: 1px solid #873352;
	border-radius: 100px;
}
a.content02-but::after {
	position: absolute;
	right: 7px;
	content: "MORE";
	transition: 1.5s;
	font-size: 0.7rem;
}
a.content02-but:hover {
	color: #873352;
	background: none;
}
a.content02-but:hover::before {
	left: calc(100% - 55px);
	opacity: 1;
	border-color: #873352;
	background: #873352;
}
a.content02-but:hover::after {
	color: #fff;
}
.front_original02 {
	position: relative;
	z-index: 0;
	padding: 10em 0 22em;
	color: #fff;
	background: #000;
}
.front_original02::before {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	opacity: 0.4;
	background-image: url("/wp-content/themes/story_tcd041/img/front-original02_img.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.front-original02-inner {
	width: 86%;
	max-width: 1200px;
	margin: 0 auto;
}
.front-original02__text h2 {
	margin-bottom: 30px;
	letter-spacing: 0.15rem;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	color: fff;
}
.front-original02__text p {
	margin-bottom: 25px;
}
.front-original02__text p:last-child {
	margin-bottom: 0;
}
.front_original03 {
	padding: 7em 0;
}
.front-original03-inner {
	width: 86%;
	max-width: 1200px;
	margin: 0 auto;
}
.third-box {
	align-items: center;
}
.front-third-text {
	box-sizing: border-box;
	width: 40%;
}
.third-box:nth-of-type(odd) .front-third-text {
	padding-left: 3vw;
}
.third-box:nth-of-type(even) .front-third-text {
	margin-left: -100%;
	padding-right: 3vw;
}
.front-third-text::before {
	display: block;
	margin-bottom: 15px;
	content: "POINT.0"counter(number) "";
	counter-increment: number 1;
	letter-spacing: 0.1rem;
	background: #873352;
	-webkit-background-clip: text;
	font-size: 1.2rem;
	/*font-family: "Caveat", cursive;*/
	font-weight: 700;

	-webkit-text-fill-color: transparent;
}
.front-third-img {
	box-sizing: border-box;
	width: 60%;
}
.third-box:nth-of-type(even) .front-third-img {
	margin-left: 40%;
}
h3.third_title {
	margin-bottom: 15px;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.5;
}
.front_topics {
	position: relative;
	padding: 7em 0;
}
.front-topics-inner {
	width: 86%;
	max-width: 950px;
	margin: 0 auto;
}
h2.front-topics-title {
	margin-bottom: 50px;
}
h2.front_topics_title span {
	display: block;
	letter-spacing: 0.1rem;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 0.9rem;
	font-weight: 400;
}
h2.headline-primary {
	display: none;
}
.footer-gallery-title, .align1 {
	display: none;
}
.footer_insta_sec {
	padding: 5em 0;
	background: #f0e9e5;
}
.footer_insta_inner {
	align-items: center;
	width: 86%;
	max-width: 900px;
	margin: auto;
}
.footer_insta_text {
	box-sizing: border-box;
	width: 60%;
	padding-right: 5vw;
}
.footer_insta_link {
	box-sizing: border-box;
	width: 40%;
}
.footer_insta_text h2 {
	margin-bottom: 1.2rem;
	letter-spacing: 0.08rem;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.5;
}
.footer_insta_text p {
	margin-bottom: 0.8rem;
	line-height: 1.8;
}
.footer_insta_text p:last-child {
	margin-bottom: 0;
}
a.insta_but {
	position: relative;
	z-index: 0;
	display: block;
	box-sizing: border-box;
	width: 100%;
	max-width: 330px;
	margin: 0 auto;
	padding: 18px 10px;
	transition: all 0.8s;
	text-align: center;
	letter-spacing: 0.1rem;
	border: 1px solid;
	border-radius: 2px;
	font-size: 0.75rem;
}
a.insta_but::before {
	display: block;
	margin-bottom: 0.6rem;
	content: "\ea92";
	font-family: design_plus;
	font-size: 18px;
	font-weight: 400;
}
a.insta_but::after {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	transition: all 0.8s;
	opacity: 0;
	border-radius: 2px;
	background: linear-gradient(-25deg, #ffd75f, #ff0357);
}
a.insta_but:hover {
	color: #fff;
	border-color: #c9c9c9;
	border-radius: 100px;
}
a.insta_but:hover::after {
	opacity: 1;
	border-radius: 100px;
}
.footer {
	margin: 0;
}
.footer_contact_sec {
	padding: 6em 0 4em;
}
.footer_contact_inner {
	width: 86%;
	max-width: 1150px;
	margin: 0 auto;
}
.footer_contact_bg {
	box-sizing: border-box;
	width: 50%;
}
.footer_menu_bg {
	box-sizing: border-box;
	width: 50%;
	padding-left: 16vw;
}
h2.footer-logo-name {
	margin-bottom: 14px;
	/*font-family: "Caveat", cursive;*/
	letter-spacing: 0.05rem;
	font-size: 1.5rem;
	font-weight: 400;
}
dl.address_body {
	width: 100%;
	max-width: 430px;
	margin-bottom: 10px;
	font-size: 0.8rem;
	font-weight: 400;
	line-height: 1.7;
}
dl.address_body:last-of-type {
	margin-bottom: 0;
}
dt.address_title {
	/* width: 100%; */
}
dd.address_text {
	box-sizing: border-box;
	margin-top: 5px;
	padding-left: 1.5vw;
}
ul.sns__links {
	width: 100%;
	max-width: 300px;
	margin-top: 20px;
}
li.sns__links-item {
	box-sizing: border-box;
	width: calc(33.3333% - 7px);
	margin-right: 10px;
}
ul.sns__links li:last-child {
	margin-right: 0;
}
a.footer_sns {
	display: block;
	text-align: center;
}
a.footer_sns::before {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin: auto;
	content: "";
	transition: all 0.5s;
	color: #fff;
	border-radius: 100%;
	font-family: design_plus;
	font-size: 14px;
}
a.footer_mail_but::before {
	content: "\f0e0";
	background: #873352;
}
a.footer_line_but::before {
	content: "\e909";
	background: #00b900;
}
a.footer_insta_but::before {
	content: "\ea92";
	background-image: linear-gradient(45deg, #ffd75f, #ff0357);
}
a.footer_sns:hover {
	background: none;
}
a.footer_mail_but:hover {
	color: #873352;
}
a.footer_line_but:hover {
	color: #00b900;
}
a.footer_insta_but:hover {
	color: #ff0357;
}
a.footer_sns:hover::before {
	opacity: 0.8;
}
a.footer_sns span {
	display: block;
	margin-top: 8px;
	text-align: center;
	font-size: 12px;
	/*font-family: "Caveat", cursive;*/
}
ul.footer-content-list-outer {
	box-sizing: border-box;
	width: 50%;
	padding-right: 1.5vw;
}
ul.footer-content-list-outer:last-of-type {
	margin-bottom: 0;
	padding-right: 0;
}
ul.footer-content-list-outer li {
	position: relative;
	margin-bottom: 10px;
	font-size: 0.8rem;
	line-height: 1.5;
}
ul.footer-content-list-outer li:last-of-type {
	margin-bottom: 0;
}
a.footer_but {
	position: relative;
	transition: all 1s ease 0s;
}
a.footer_but::before {
	position: absolute;
	z-index: 1;
	bottom: -5px;
	left: 0;
	width: 0;
	height: 1px;
	content: "";
	transition: all 0.5s;
	background: #873352;
}
a.footer_but:hover::before {
	width: 100%;
}
.footer-content {
	display: none;
}
.footer-bar01, .footer-bar01-inner, .copyright {
	background: none;
}
.footer-bar01-inner {
	width: 86%;
	max-width: 1150px;
	margin: 0 auto;
}
.copyright {
	text-align: left;
	color: #873352;
	font-size: 10px;
}
.pagetop {
	right: 10px;
	transition: all 0.5s ease 0s;
}
.pagetop a {
	position: relative;
	width: auto;
	height: 105px;
	/*font-family: "Caveat", cursive;*/
	letter-spacing: 0.2rem;
	color: #873352;
	background: none;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;

	writing-mode: vertical-rl;
}
.pagetop a::before {
	position: absolute;
	z-index: -1;
	top: auto;
	right: 10px;
	bottom: 120px;
	left: auto;
	display: block;
	width: 1px;
	height: 50px;
	content: "";
	transition: all 0.5s ease 0s;
	background: #873352;
}
.pagetop a::after {
	position: absolute;
	z-index: -1;
	right: 10px;
	bottom: -15px;
	display: block;
	width: 1px;
	height: 20px;
	content: "";
	background: #873352;
}
.pagetop a:hover {
	background: none;
}
.pagetop a:hover::before {
	height: 100px;
}
@media only screen and (max-width: 1200px) {
	.header-youtube, .header-video, .top-slider {
		height: calc(80vh - 55px);
	}
	.header-bar-fixed ~ .top-slider-wrapper {
		margin-top: 55px;
	}
	.third-box {
		margin-bottom: 30px;
	}
	.third-box:last-of-type {
		margin-bottom: 0;
	}
	.front-third-img, .front-third-text {
		width: 100%;
	}
	.front-third-img {
		margin-bottom: 30px;
	}
	.third-box:nth-of-type(odd) .front-third-text {
		padding-left: 0;
	}
	.third-box:nth-of-type(even) .front-third-img, .third-box:nth-of-type(even) .front-third-text {
		margin-left: 0;
	}
	.third-box:nth-of-type(even) .front-third-text {
		padding-right: 0;
	}
}
@media only screen and (max-width: 970px) {
	.header-youtube, .header-video, .top-slider {
		height: calc(60vh - 55px);
	}
	.front-original01__title, .front-original01__text {
		width: 100%;
	}
	.front-original01__text {
		padding-top: 20px;
		padding-left: 0;
	}
	.front-original01__title h3 br {
		display: contents;
	}
	.content02 {
		padding-bottom: 5em;
	}
	.content02-item {
		width: 100%;
		margin-bottom: 2.5rem !important;
		margin-left: 0;
	}
	.content02-item:nth-of-type(2), .content02-item:nth-of-type(3) {
		margin-top: 0;
	}
	.content02-item:last-of-type {
		margin-bottom: 0 !important;
	}
	.front_original02 {
		padding: 5em 0;
	}
	.footer_menu_bg {
		padding-left: 8vw;
	}
	.dp-footer-bar {
		border-top: 1px solid #873352 !important;
		background: #873352 !important;
		font-size: 10px;
	}
	.dp-footer-bar-item + .dp-footer-bar-item {
		border-left: 1px solid #fff !important;
	}
	.dp-footer-bar a {
		color: #fff;
	}
	.dp-footer-bar-icon:before {
		font-weight: 400;
	}
	.icon-file-text:before {
		content: "\ea92";
	}
}
@media only screen and (max-width: 768px) {
	h2.front-main-title {
		font-size: 2rem;
	}
	h2.front-main-title span {
		font-size: 0.7rem;
	}
	.front_original01 {
		margin-bottom: 3em;
		padding: 3em 0;
	}
	.front-original01__title h2 {
		margin-bottom: 15px;
		text-align: left;
		font-size: 1.3rem;
	}
	.front-original01__title h3 {
		margin-top: 10px;
		text-align: left;
		letter-spacing: 0.1rem;
		font-size: 1.5rem;
		line-height: 1.5;
	}
	.front-original01__text p {
		margin-bottom: 10px;
	}
	.content02 {
		padding-bottom: 3em;
	}
	.content02 h2, .front_original03 h2, h2.front-topics-title {
		margin-bottom: 30px;
	}
	.front_original02, .front_original03, .front_topics {
		padding: 3em 0;
	}
	.front-original02__text h2 {
		margin-bottom: 20px;
		font-size: 1.3rem;
		line-height: 1.5;
	}
	.front-original02__text p {
		margin-bottom: 15px;
	}
	.footer_contact_sec {
		padding: 3em 0 1.5em;
	}
	.footer_contact_bg, .footer_menu_bg {
		width: 100%;
	}
	.footer_menu_bg {
		max-width: 350px;
		margin-top: 2.5rem;
		padding-left: 0;
	}
	.social-nav {
		display: none;
	}
}
@media only screen and (max-height: 400px) {
	.top-slider {
		height: 100vh;
	}
}
/* トップ・フッター END */
/* 固定ページ */
.page .post-header {
	margin: 0;
}
.content_inner {
	position: relative;
	z-index: 0;
	box-sizing: border-box;
	width: 86%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 100px 0;
}
.post-content h2 {
	margin-bottom: 20px;
	padding-top: 0;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.8;
}
.post-content h2::after {
	display: block;
	width: 1px;
	height: 30px;
	margin: 15px auto 0;
	content: "";
	background: #873352;
}
.post-content h3 {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 12px;
	padding: 0 0 0 30px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.5;
}
.post-content h3::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 20px;
	height: 2px;
	content: "";
	background: #873352;
}
.post-content h4 {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 1rem;
	padding: 0 0 0 30px;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.5;
}
.post-content h4::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 20px;
	height: 1px;
	content: "";
	background: #a9a9a9;
}
.post-content .s_table {
	width: 100%;
}
.post-content table {
	margin: 0;
}
.post-content th, .post-content td {
	box-sizing: border-box;
	padding: 24px 2px 21px;
	vertical-align: middle;
	border: 0;
	border-bottom: 1px solid #dadee8;
	background: none;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.8;
}
.post-content th {
	width: 20%;
	text-align: left;
	border-right: none;
	color:#222;
}
.post-content td {
	border-left: none;
}
@media only screen and (max-width: 1200px) {
	.content_inner {
		padding: 80px 0;
	}
}
@media only screen and (max-width: 970px) {
	.post-content th, .post-content td {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		margin-top: -1px;
		padding: 14px 2px 10px;
		line-height: 1.5;
	}
	.post-content th {
		padding-bottom: 0;
		border-bottom: none;
	}
	.post-content td {
		border-top: none;
	}
}
@media only screen and (max-width: 768px) {
	.content_inner {
		padding: 50px 0;
	}
	.post-content h2 {
		line-height: 1.5;
	}
}
/* 固定ページ END */
/* お知らせ */
.archive.category .main, .post-template-default .main, .blog .main {
	padding-bottom: 100px;
}
.archive-header {
	margin: 90px 0 40px;
}
.post-header {
	text-align: left;
}
h1.archive-title, h1.post-title {
	color: #873352;
	font-weight: 700;
	line-height: 1.8;
}
.article03 {
	box-sizing: border-box;
	border: 1px solid #873352;
	background: #fff;
}
.article03, .article03-thumbnail {
	transition: all 0.5s ease 0s;
}
.article03:hover {
	border-radius: 20px;
}
.article03 a:hover .article03-thumbnail {
	border-radius: 19px 19px 0 0;
}
.article03-content {
	padding: 12px 15px;
}
.article03-title {
	color: #873352;
	font-size: 0.85rem;
	font-weight: 400;
	line-height: 1.5;
}
.article03-category-item:hover, .article03 a:hover .article03-title {
	text-decoration: none;
}
.post-title {
	color: #873352;
}
.nav-links01 {
	border-top: 1px solid #dadee8;
	border-bottom: 1px solid #dadee8;
}
.nav-links01-previous + .nav-links01-next {
	border-left: 1px solid #dadee8;
}
.nav-links01-previous a, .nav-links01-next a {
	font-size: 13px;
	font-weight: 400;
}
.article01-thumbnail {
	box-sizing: border-box;
	border: 1px solid #dadee8;
	border-radius: 10px;
}
.article01-title a {
	color: #873352;
	font-size: 0.9rem;
	font-weight: 400;
}
.nav-links01-previous a::before, .nav-links01-next a::after {
	font-size: 13px;
}
.post-meta-box {
	box-sizing: border-box;
	background: #f4f5f7;
}
.post-meta-box-item::before {
	color: #873352;
}
.headline-bar {
	padding: 18px 15px;
	text-align: left;
	color: #873352;
	background: #f4f5f7;
	font-size: 16px;
	font-weight: 700;
}
@media only screen and (max-width: 1200px) {
	.archive.category .main, .post-template-default .main {
		padding-bottom: 80px;
	}
	.article03-title {
		margin: 0;
		font-size: 0.85rem;
	}
}
@media only screen and (max-width: 970px) {
	.post-meta-box-item {
		margin-left: 15px;
		padding: 8px 0 8px 20px;
	}
}
@media only screen and (max-width: 768px) {
	.archive.category .main, .post-template-default .main {
		padding-bottom: 30px;
	}
	.archive-header {
		margin: 50px 0 30px;
	}
	h2.archive-title {
		font-size: 25px !important;
	}
	h1.post-title {
		font-size: 1.2rem !important;
	}
	.nav-links01-previous a::before, .nav-links01-next a::after {
		color: #873352;
	}
	.article04-title {
		font-size: 15px;
	}
	.nav-links01 {
		border: 1px solid #dadee8;
	}
	.headline-bar {
		line-height: 5px;
	}
}
@media only screen and (max-width: 500px) {
	.post-title, .post-meta {
		text-align: left;
	}
	.article03-title {
		margin-top: 0;
		font-size: 10px;
	}
}
/* お知らせ END */
/* コンテンツ 共通 */
.flex-inner {
	display: -webkit-flex;
	display:         flex;
	flex-wrap: wrap;
}
p.caution {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 5px;
	padding-left: 20px;
	line-height: 1.8;
}
p.caution:last-of-type {
	margin-bottom: 0;
}
p.caution::before {
	position: absolute;
	left: 0;
	content: "※";
	color: #f35d63;
}
span.caution {
	position: relative;
	display: inline-block;
	box-sizing: border-box;
	padding-left: 17px;
	line-height: 1.8;
}
span.caution::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※";
	color: #f35d63;
}
ul.list {
	margin: 0;
	list-style: none;
}
ul.list li {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 12px;
	padding-left: 15px;
	line-height: 1.5;
}
ul.list li:last-child {
	margin-bottom: 0;
}
ul.list li::before {
	position: absolute;
	top: 7px;
	left: 0;
	width: 7px;
	height: 7px;
	content: "";
	background: #873352;
}
ul.list.caution_list li::before {
	top: 0;
	content: "※";
	color: #f35d63;
	background: none;
}
a.content-but {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 100%;
	max-width: 330px;
	padding: 18px 18px 16px;
	transition: all 0.8s;
	text-align: left;
	letter-spacing: 0.05rem;
	border: 1px solid;
	font-weight: 700;
	line-height: 1.5;
}
a.content-but:hover {
	color: #fff;
	border-color: #873352;
	border-radius: 100px;
	background: #873352;
}
a.content-but::after {
	position: absolute;
	right: 20px;
	content: "\ea3c";
	transition: all 0.8s;
	font-family: "design_plus";
	font-size: 12px;
	font-weight: 400;
	line-height: 1.8;
}
/* コンテンツ 共通 END */
/* 料金・プラン */
.service_sec .content_inner {
	max-width: 1000px;
}
.service_box {
	margin-bottom: 70px;
}
.service_box p {
	margin-bottom: 20px;
}
.service_box:last-of-type, .service_box p:last-of-type {
	margin-bottom: 0;
}
p.service-copy-text {
	width: fit-content;
	margin: 0 auto 25px;
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.5;
	color: #873352;
}
ul.service-list {
	margin-bottom: 15px;
}
ul.service-list li {
	font-weight: 700;
}
table.price_tbl {
	margin-bottom: 15px;
	border: 1px solid #dadee8;
	border-bottom: 0;
}
table.price_tbl th, table.price_tbl td {
	padding: 22px 25px 20px;
	vertical-align: middle;
	line-height: 1.8;
}
table.price_tbl th {
	width: 75%;
	color: #222;
}
table.price_tbl td {
	padding-left: 0;
	text-align: end;
}
span.price-caution {
	font-size: 0.8rem;
}
span.off {
	display: inline-block;
	box-sizing: border-box;
	margin-top: 4px;
	padding: 1px 10px;
	color: #fff;
	border-radius: 15px;
	background: #873352;
	font-size: 0.8rem;
}
ul.tool-list {
	margin-bottom: 15px;
}
ul.tool-list li {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 50%;
	margin: 0;
	padding: 14px 10px;
	border: 2px solid #fff;
	background: #f4f5f7;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.6;
}
ul.tool-list li:last-of-type {
	width: 100%;
}
ul.tool-list li::before {
	content: none;
}
.support-flex {
	margin-bottom: 25px;
}
.support_box {
	position: relative;
	box-sizing: border-box;
	width: 33.3333%;
	padding: 20px 25px;
	border: 3px solid #fff;
	background: #f4f5f7;
}
.support_box::before {
	display: block;
	margin-bottom: 13px;
	content: "STEP.0"counter(number) "";
	counter-increment: number 1;
	/*font-family: "Caveat", cursive;*/
	text-align: center;
	color: #873352;
	font-size: 1.4rem;
	font-weight: 700;
}
.support_box h3 {
	margin-bottom: 10px;
	padding: 0;
	font-size: 1rem;
}
.support_box h3::before {
	content: none;
}
@media only screen and (max-width: 970px) {
	table.price_tbl th, table.price_tbl td {
		padding: 13px 15px 10px;
	}
	table.price_tbl th {
		padding-bottom: 0;
	}
	.support_box {
		width: 100%;
	}
	.support_box h3 {
		text-align: center;
	}
}
@media only screen and (max-width: 768px) {
	.service_box {
		margin-bottom: 30px;
	}
	.service_box p {
		margin-bottom: 10px;
	}
	p.service-copy-text {
		margin-bottom: 12px;
	}
	.support-flex {
		margin-bottom: 15px;
	}
	.support_box {
		padding: 15px 20px;
	}
}
@media only screen and (max-width: 500px) {
	ul.tool-list li {
		width: 100%;
	}
}
/* 料金・プラン END */
/* 流れ */
.flow_sec .content_inner {
	max-width: 900px;
}
.flow_sec:nth-of-type(2) .content_inner {
	padding-top: 0;
}
.flow {
	position: relative;
	box-sizing: border-box;
	padding-top: 23px;
	padding-bottom: 40px;
	padding-left: 75px;
}
.flow:last-of-type {
	padding-bottom: 0;
}
.flow::before {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 40px;
	height: 70px;
	content: counter(number)"";
	counter-increment: number 1;
	text-align: left;
	/*font-family: "Caveat", cursive;*/
	color: #873352;
	border-top: 1px solid #873352;
	border-bottom: 1px solid #873352;
	background: #fff;
	font-size: 3rem;
	font-weight: 700;
	line-height: 68px;
}
.flow::after {
	position: absolute;
	z-index: -2;
	top: 0;
	left: 20px;
	width: 1px;
	height: 100%;
	content: "";
	background: #873352;
}
.flow:last-of-type::after {
	display: none;
}
.flow h2 {
	margin-bottom: 30px;
	text-align: left;
	color: #873352;
	font-size: 1.25rem;
	line-height: 1.5;
}
.flow h2::after {
	content: none;
}
.flow p {
	margin-bottom: 1em;
}
.flow p:last-child {
	margin-bottom: 0;
}
span.flow-caution {
	margin-top: 10px;
}
a.flow-con-but {
	margin-top: 15px;
}
.cancel_box {
	box-sizing: border-box;
	padding: 25px 30px;
	background: #f4f5f7;
}
.cancel_box h2 {
	margin-bottom: 15px;
	text-align: left;
	line-height: 1.5;
}
.cancel_box h2::after {
	content: none;
}
.cancel_box p {
	margin-bottom: 15px;
}
.cancel_box p:last-child {
	margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
	.flow {
		padding-bottom: 20px;
		padding-left: 60px;
	}
	.cancel_box {
		padding: 20px 25px;
	}
}
/* 流れ END */
/* よくある質問*/
.faq_sec .content_inner {
	max-width: 1000px;
}
a.faq-con-but {
	margin-top: 15px;
}
.faq {
	box-sizing: border-box;
	margin-bottom: 50px;
	padding-bottom: 50px;
	border-bottom: 1px #dadee8 solid;
}
.faq:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}
.faq h2 {
	margin-bottom: 15px;
	text-align: left;
	font-size: 1.3rem;
}
.faq h2::before {
	display: block;
	margin-bottom: 12px;
	content: "Q"counter(number) "";
	counter-increment: number 1;
	/*font-family: "Caveat", cursive;*/
	letter-spacing: 0.15rem;
	color: #873352;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1;
}
.faq h2::after {
	content: none;
}
.faq p {
	position: relative;
	margin-bottom: 1rem;
	margin-left: 50px;
	padding-left: 25px;
}
.faq p:last-child {
	margin-bottom: 0;
}
p.answer::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "A,";
	color: #873352;
	font-size: 1.4rem;
	/*font-family: "Caveat", cursive;*/
	font-weight: 500;
	line-height: 1.2;
}
@media only screen and (max-width: 768px) {
	.faq {
		margin-bottom: 25px;
		padding-bottom: 25px;
	}
	.faq p {
		margin-left: 15px;
	}
}
/* よくある質問 END */
/* ガイドライン */
.guide_box {
	margin-bottom: 50px;
}
.guide_box h2 {
	text-align: left;
	color: #873352;
	line-height: 1.5;
}
.guide_box h2::after {
	content: none;
}
.guide_box p {
	margin-bottom: 20px;
}
ol.guide_list {
	margin-left: 0;
}
ol.guide_list li {
	margin-bottom: 25px;
	font-size: 0.95rem;
	line-height: 2;
	color: #222;
}
ol.guide_list li::marker {
	content: none;
}
.guide_box:last-of-type, .guide_box p:last-child, ol.guide_list li:last-of-type {
	margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
	.guide_box {
		margin-bottom: 25px;
	}
	.guide_box h2 {
		margin-bottom: 10px;
	}
	.guide_box p {
		margin-bottom: 12px;
	}
	ol.guide_list li {
		margin-bottom: 15px;
		font-size: 0.9rem;
	}
}
/* ガイドライン END */
/* ご挨拶 */
.greeting_box {
	text-align: center;
}
.greeting_box p {
	margin-bottom: 15px;
}
.greeting_box p:last-of-type {
	margin-bottom: 0;
}
.greeting_box img {
	width: 80%;
	max-width: 330px;
	margin: 0 auto;
}
@media only screen and (max-width: 578px) {
	.greeting_box {
		text-align: left;
	}
}
/* ご挨拶 END */
/* 運営概要 */
.information_sec .content_inner {
	max-width: 800px;
}
table.info_tbl th {
	width: 30%;
}
span.info-caution {
	font-size: 0.85rem;
}
/* 運営概要 END */
/* お問い合わせ */
.mail_sec .content_inner {
	max-width: 900px;
	padding-top: 0;
}
a.con_line_but {
	position: relative;
	display: block;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	max-width: 400px;
	margin: auto;
	padding: 25px;
	transition: all 0.5s;
	text-align: center;
	letter-spacing: 0.05rem;
	color: #873352;
	border: 1px solid;
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1;
}
a.con_line_but::after {
	position: absolute;
	right: 22px;
	content: "\e909";
	transition: all 0.5s;
	font-family: "design_plus";
	font-size: 20px;
	font-weight: 400;
}
a.con_line_but:hover {
	border-radius: 100px;
}
a.con_line_but:hover {
	color: #fff;
	border-color: #00b900;
	background: #00b900;
}
p.con_line_text {
	width: fit-content;
	margin: auto;
	font-size: 1rem;
	line-height: 1.8;
}
.mail_info_box {
	margin-bottom: 20px;
}
.mail_info_box p {
	margin-bottom: 15px;
}
.mail_info_box p:last-of-type {
	margin-bottom: 0;
}
/* お問い合わせ END */
/* お問い合わせフォーム */
span.required {
	display: inline-block;
	margin-left: 8px;
	padding: 2px 4px;
	letter-spacing: 0;
	color: #fff;
	border-radius: 2px;
	background: #f35d63;
	font-size: 0.7rem;
	line-height: 1.5;
}
.wpcf7 {
	margin-bottom: 0 !important;
	border: none;
	background: none;
}
.wpcf7 input, .wpcf7 textarea {
	box-sizing: border-box;
	padding: 25px 18px;
	border: 0;
	background: #efefef;
}
.wpcf7 form {
	margin: 0;
}
.wpcf7 form p {
	margin-bottom: 25px;
	font-size: 17px;
	font-weight: 700;
	line-height: 2;
}
.wpcf7 form p:last-of-type {
	margin-bottom: 0;
}
.wpcf7-list-item {
	margin-top: 15px;
	margin-left: 0;
	font-weight: 400;
	line-height: 0.5;
}
span.wpcf7-list-item.first {
	margin-top: 8px;
}
.wpcf7 select, .wpcf7 .wpcf7-list-item-label {
	font-size: 16px;
}
.wpcf7 input.wpcf7-submit {
	width: 100%;
	max-width: 400px;
	height: 75px;
	margin-top: 70px;
	margin-left: auto;
	padding: 10px;
	transition: all 0.8s ease 0s;
	letter-spacing: 0.1rem;
	color: #873352;
	border: 1px solid !important;
	border-radius: 3px;
	background: none;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
}
.wpcf7 input.wpcf7-submit:hover {
	color: #fff;
	border-color: #873352 !important;
	border-radius: 100px;
	background: #873352;
}
.wpcf7 input:focus, .wpcf7 textarea:focus {
	box-shadow: none !important;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
	padding: 15px 20px;
	border: none;
	background: #ffd8df;
	line-height: 1.8;
}
@media only screen and (max-width: 768px) {
	.wpcf7 input.wpcf7-submit {
		margin-top: 20px;
	}
}
/* お問い合わせフォーム END */
/* ブログ記事の画像 */
.single .post-content img {
	width: auto;
}
/* ブログ記事の画像 END */
/* デザイン実績 */
ul.work-cat__menu {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
	margin-left: 0;

	gap: 5px 25px;
}
ul.work-cat__menu li {
	list-style-type: none;
}
ul.work-cat__menu li a {
	position: relative;
	color: #873352;
}
ul.work-cat__menu li a:hover {
	color: #ab8894;
}
ul.work-cat__menu li a::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	width: 100%;
	height: 1px;
	content: "";
	transition: transform 0.3s;
	transform: scale(0, 1);
	transform-origin: left top;
	background-color: #ab8894;
}
ul.work-cat__menu li a:hover::after {
	transform: scale(1, 1);
}
.work-cat__block {
	margin-bottom: 120px;
}
.work-cat__block:last-of-type {
	margin-bottom: 0;
}
.works_flex {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 0 0 6em 0;

	gap: 40px;
}
.work-cat__block .works_flex:nth-child(odd) {
	flex-direction: row-reverse;
}
.works_box1 {
	width: calc(55% - 20px);
}
.works_box2 {
	width: calc(45% - 20px);
}
.works_section {
	width: 100%;
	margin: 0 auto;
	padding: 3em 0 0 0;
}
.works_section p.works_title {
	margin-bottom: 0;
	color: #873352;
	font-size: 16px;
	font-weight: 600;
}
.works_section p.works_text.title {
	border-bottom: 1px dashed #d1d1d1;
	color: #873352;
}
@media only screen and (max-width: 450px) {
	.work-cat__block {
		margin-bottom: 60px;
	}
	.works_flex {
		margin: 0 0 3em 0;

		gap: 20px;
	}
	.works_box1 {
		width: 100%;
	}
	.works_box2 {
		width: 100%;
	}
}
/* デザイン実績 END */
/* PR実績 */
.post-content h3.pr-works--h3::before {
	content: none;
}

.media-list {
	margin-left: 0;
}
.media-list li {
	margin-bottom: 30px;
	list-style-type: none;
}
.media-list .date-time {
	position: relative;
}
.media-list .date-time::after {
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 0;
	width: 100%;
	content: "";
	border-bottom: 1px solid #d7cdd2;
}
.media-list .date-time span {
	display: inline;
	padding-right: 1.5em;
	background-color: #fff;
}
.media-list--info {
}
.media-list--info p {
	margin-bottom: 0;
	line-height: 1.7;
}
.media-list--info figure {
	max-width: 280px;
	margin: 20px 0;
}
@media only screen and (max-width: 450px) {
	.media-list--info figure {
		max-width: inherit;
	}
}
.media-list--info p:nth-child(1) {
	font-weight: 600;
}
.media-list--info p:nth-child(2) {
}
.media-list--info p a {
	text-decoration: underline;
	color: #751847;
}
.media-list--info p a:hover {
	color: #b39aa7;
}
/* PR実績 END */

.no-card .plain-link {
	cursor: pointer;
	transition: opacity 0.15s, color 0.15s;
	text-decoration: underline;
	color: #873352;

	text-underline-offset: 3px;
}
.no-card .plain-link:hover, .no-card .plain-link:focus {
	opacity: 0.9;
	color: #873352;
}

.no-card .plain-link::after {
	content: " ↗";
	font-size: 0.9em;
}

/* 251127 英語だけ Futura に統一 */
html :lang(en), html .eng {
	font-family: "futura-pt", sans-serif !important;
}

.newmenu_title {
	color: #873352 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
}

.newmenu_text {
	margin-bottom: 20px;
	color: #873352;
	font-size: 16px;
	line-height: 1.7;
}

.newmenu_price {
	text-align: right;
	color: #873352;
	font-size: 24px !important;
	font-weight: 700 !important;
}

p.newmenu_text {
	margin-bottom: 0 !important;
}

.newmenu_price {
	margin-bottom: 8px;
}

.flow.no-number::before, .flow.no-number::after {
	width: 0 !important;
	height: 0 !important;
	content: none !important;
	border: none !important;
	background: none !important;
}

.flow:nth-last-of-type(2)::after {
	width: 0 !important;
	height: 0 !important;
	content: none !important;
	background: none !important;
}

.instagram-section {
	margin-bottom: 140px;
}

.instagram-section .instagram-title {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 12px;
	padding: 0 0 0 30px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
}

.instagram-section .instagram-title::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 20px;
	height: 2px;
	content: "";
	transform: translateY(-50%);
	background: #873352;
}

/* 1204お客様の声 */
.voice-section {
  max-width: 1000px;
  margin: 0 auto 80px;
  padding: 40px 16px;
}

.voice-section-title {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: left;
  margin-bottom: 32px;
}

.voice-card {
  background-color: #f0f0f0;
  border-radius: 8px;
  padding: 24px 24px 28px;
  margin-bottom: 24px;
}

.voice-card-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.voice-label {
  font-size: 1.1rem;
  font-weight: 700;
}

.voice-stars {
  color: #873352;
  font-size: 0.95rem;
  letter-spacing: 0.1em;
}

.voice-card p {
  margin: 0;
  line-height: 1.9;
  font-size: 0.95rem;
  color: #333;
}

@media (max-width: 600px) {
  .voice-card {
    padding: 20px 16px 24px;
  }

  .voice-section-title {
    font-size: 1.5rem;
    text-align: center;
  }

  .voice-card-header {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

.post-content p.txt-area--bg-gray {
	margin: 50px 0;
	padding: 20px;
	background-color: #f0f0f0;
	font-weight: 600;
}

.pr-table-section {
  margin: 60px 0;
}

.pr-table-title {
  font-size: 1.4rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 16px;
  padding-bottom: 6px;
}

.pr-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 40px !important;
  font-size: 1rem;
  color: #222 !important;
}

.pr-table td {
  border: 1px solid #ddd;
  padding: 20px;
  vertical-align: middle;
  line-height: 1.7;
}

.pr-table td:first-child {
  width: 28%;
  font-weight: 600;
  color: #444;
}

.pr-con-but {
margin: 40px 0 20px;
}

.post-content li {
	color: #222;
}

.pr-table {
  border-top: none;
}

.content02-head {
  display: flex !important;
  align-items: center;
  justify-content: center !important;
  gap: 90px !important;
  margin-bottom: 40px;
}

.content02-but {
  flex-shrink: 0;
　margin-bottom: 70px !important;
}

.front-main-title {
  margin: 0;
  text-align: left;
}

@media (max-width: 768px) {
  .content02-head {
	display: flex !important;  
    flex-direction: column;
    gap: 0 !important;
    text-align: center;
  }

  .front-main-title {
    text-align: center;
  }

  .content02-but {
    order: 2;
	  margin-bottom: 20px;
  }
}

.front-original02__text p {
  color: #fff !important;
}
/*  */

@media (max-width: 1200px) {
	.global-nav-button::after {
		content: "メニュー";
		position: absolute;
		bottom: 4px;
		left: 0;
		right: 0;
		text-align: center;
		font-size: 10px;
		line-height: 1;
		color: #000;
		letter-spacing: .05em;
	}
	.global-nav-button:before {
		font-size: 22px;
	}
}

/* トップページ用：お問い合わせボタン */
a.top-con-but {
  margin: 70px auto 0;
}

/* インスタ埋め込み */
.front_insta {
  padding: 6em 0;
}
.front-insta-inner {
  width: 86%;
  max-width: 1150px;
  margin: auto;
}
.front_insta h2 {
  font-size: 2.5rem;
  font-weight: 800;
  letter-spacing: 2px;
  font-style: normal;
  text-align: center;
}
a.front_insta_but {
  background: none;
  display: block;
  font-size: 0.7rem;
  letter-spacing: .1em;
  padding: 0 2px 10px;
  width: 100%;
  max-width: 180px;
  font-weight: 800;
  position: relative;
  margin: 30px auto 20px;
  box-sizing: border-box;
  border-bottom: 1px solid;
  transition: 0.8s;
}
a.front_insta_but::before {
  width: 30px;
  height: 1px;
  position: absolute;
  content: '';
  left: 0;
  bottom: -1px;
  transition: 0.8s;
}
a.front_insta_but::after {
  content: '\ea92';
  position: absolute;
  font-family: 'design_plus';
  font-size: 15px;
  font-weight: 400;
  right: 2px;
  bottom: 8px;
}

a.front_insta_but:hover::before {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .front_insta {
    padding: 3em 0 2em;
  }
  .front_insta h2 {
    font-size: 2rem;
  }
}
/* インスタ埋め込み END */