@charset "utf-8";
/*
Theme Name: 天神南矯正診療歯科4
Theme URI: https://tenjinminami-dental.jp/
Version: 4.0
*/

/* common
---------------------------------------------------------------------------*/
body {
	background-color: #FFFAF4;
	color: #333333;
	font-size: 14px;
	font-family: 'FOT-筑紫明朝 Pr6N M', '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

body.noscroll { overflow-y: scroll; position: fixed; width: 100%; }

::-moz-selection { background: #CCCCCC; color: #333333; }
::selection { background: #CCCCCC; color: #333333; }

p { font-size: 14px; line-height: 1.8; letter-spacing: 0.1em; margin-bottom: 10px; }
p:last-of-type { margin-bottom: 0 !important; }
address,i { font-style: normal; }
img { max-width: none; }

.clearfix:after { content: ''; display: block; clear:both; }

body#pc .pc_view { display: block !important; }
body#pc .sp_view { display: none !important; }
body#sp .sp_view { display: block !important; }
body#sp .pc_view { display: none !important; }

.opening { display: none; }
body.top .opening { display: block; }

/* #loading
------------------------------------*/
#loading {
	display: none;
	opacity: 0;
	position: fixed;
	top: 50%;
	left: 50%;
	border: 1px solid #CD3335;
	border-top-color: transparent;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 115px;
	z-index: 99999;
	animation: spin 0.5s infinite linear;
}

@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* txt
-----------------------------------*/
.font-m {
	font-family: 'FOT-筑紫A丸ゴシック Std M', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}

.font-d,
.top-news .footer-news a,
.btn-link span,
.sec-lead h2,
.num-line,
.price-list h4,
.price-list dt,
.price-list-s dt,
.job-btn,
.modal-common h3,
.modal-common h4,
.modal-common dt,
.fc-prev-button:before,
.fc-next-button:before,
.fc-widget-header th:after {
	font-family: 'FOT-筑紫A丸ゴシック Std D', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}

.font-b,
.fc-day-grid-event > .fc-content {
	font-family: 'FOT-筑紫A丸ゴシック Std B', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}

.font-min {
	font-family: 'FOT-筑紫明朝 Pr6N M', '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

.font-min-d {
	font-family: 'FOT-筑紫明朝 Pr6N D', '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

.font-mix {
	font-family: ACaslonPro-Regular, 'FOT-筑紫明朝 Pr6N M', '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

.font-serif,
.footer-news a time,
.price-list dt span strong,
.price-list dd,
.price-list-s dd,
.fc-toolbar h2,
.fc-widget-header th,
.fc-ltr .fc-basic-view .fc-day-number {
	font-family: ACaslonPro-Regular, serif;
}

.red,
section h2,
section h3,
section h4,
section dt,
.top-news .footer-news a,
.btn-link a,
.title-page strong,
.title-sub,
.sec-lead h2,
.news-list h3,
.news-category li a,
.sec-table h3,
.news-table th { color: #CD3335; }

.green,
.title-page em,
.num-line,
.price-list dt span strong,
.price-list dd,
.price-list-s dd,
.modal-common dd h4 { color: #526B53; }


/* link
------------------------------------*/
a { color: #333333; text-decoration: none; transition: .15s ease-out; -webkit-transform: translateZ(0); }
#wrap:not(.tablet) a:hover { text-decoration: none; opacity: 0.5; }

/* .btn
------------------------------------*/
.btn-link a {
	font-family: 'FOT-筑紫A丸ゴシック Std M', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	display: inline-block;
	background: url(img/share/ico-arrow-btn.svg) no-repeat right 1px top 4px;
	padding: 5px 30px 5px 0;
	font-size: 17px;
	letter-spacing: 0.1em;
}

.btn-link span {
	border-bottom: 1px solid #D02B2F;
}

.btn-set {
	text-align: center;
}

.btn-set .btn-link {
	display: inline-block;
	margin: 0 18px;
}


/* header
---------------------------------------------------------------------------*/
header {
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	width: 250px;
	height: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	z-index: 900;
}

header::-webkit-scrollbar { width: 1px; }
header::-webkit-scrollbar-track { border-radius: 0; background: #FFFFFF; }
header::-webkit-scrollbar-thumb { border-radius: 0; background: #F3CFBE; }

.header-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	min-height: 800px;
}

header .logo {
	position: absolute;
	top: 6%;
	left: 50%;
	transform: translateX(-50%);
}

/* .gnav
------------------------------------*/
.gnav {
	position: absolute;
	top: 39%;
	left: 0;
	width: 100%;
}

.gnav li a {
	display: inline-block;
	padding: 14px 20px;
}

.gnav li strong {
	display: block;
	margin-bottom: 11px;
}

/* .sns
------------------------------------*/
.sns {
	position: absolute;
	bottom: 7.5%;
	left: 0;
	width: 100%;
}

.sns li {
	display: inline-block;
}

.sns li a {
	display: inline-block;
	padding: 4px;
}

/* media query
-----------------------------------*/
@media (max-height: 960px) {
	header .logo {
		top: 5%;
	}
	header .logo img {
		width: 164px;
		height: auto;
	}
	.gnav li a {
		padding-top: 13px;
		padding-bottom: 13px;
	}
	.gnav li strong img {
		width: auto;
		height: 15px;
	}
	.sns {
		bottom: 6%;
	}
	.sns img {
		width: 32px;
		height: auto;
	}
}
@media (max-height: 880px) {
	header .logo {
		top: 4.5%;
	}
	header .logo img {
		width: 150px;
		height: auto;
	}
	.gnav li a {
		padding-top: 11px;
		padding-bottom: 11px;
	}
	.gnav li strong img {
		height: 14px;
	}
	.sns {
		bottom: 5%;
	}
	.sns img {
		width: 30px;
	}
}
@media (max-height: 880px) {
	header {
		overflow-y: scroll;
		box-sizing: border-box;
	}
}


/* footer
---------------------------------------------------------------------------*/
footer {
	position: relative;
	width: 946px;
	margin: 0 auto;
	padding: 265px 0 50px;
}

.copyright {
	position: absolute;
	top: 215px;
	left: 0;
	font-size: 11px;
	letter-spacing: 0.1em;
}

footer .inner {
	position: relative;
	display: inline-block;
}

footer .inner:nth-of-type(2) {
	margin-left: 30px;
}

.footer-inner address {
	display: inline-block;
	position: relative;
	margin-bottom: 16px;
	font-size: 17px;
	letter-spacing: 0.07em;
}

.footer-inner address em {
	display: block;
	margin-bottom: 10px;
	font-size: 14px;
	letter-spacing: 0.04em;
}

.footer-inner address span {
	font-size: 18px;
}

.footer-inner address i {
	position: absolute;
	top: -2px;
	right: 0;
	font-size: 12px;
	letter-spacing: 0.15em;
}

.footer-inner .tel {
	margin-bottom: 10px;
	font-size: 28px;
	letter-spacing: 0.03em;
}

.footer-inner .tel i {
	display: inline-block;
	margin-right: 10px;
	transform: translateY(-7px);
}

.footer-inner .tel + p {
	font-size: 12px;
	letter-spacing: 0.13em;
}

.footer-news,
footer .time {
	position: relative;
	padding-left: 32px;
}

.footer-news i,
footer .time i {
	position: absolute;
	top: 0;
	left: 0;
}

.footer-news {
	position: absolute;
	top: -75px;
	left: 0;
	width: 260px;
}

.footer-news h2 {
	margin-bottom: 14px;
	font-size: 16px;
	letter-spacing: 0.1em;
}

.footer-news a {
	display: inline-block;
	border-bottom: 1px solid rgba(0,0,0,0.4);
	padding: 2px 0 0;
	font-size: 14px;
	letter-spacing: 0.1em;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.footer-news a time {
	padding-right: 10px;
	letter-spacing: 0.08em;
}

footer .time {
	padding-top: 1px;
	transform: translateY(-2px);
}

footer .time time {
	display: block;
	margin: 0 0 10px 1px;
	font-size: 20px;
	letter-spacing: 0.03em;
}

footer .time time span {
	display: inline-block;
	padding-left: 2px;
	font-size: 13px;
	transform: translateY(-1px);
}

footer .time p {
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.1em;
}

/* .modal-risk
------------------------------------*/
.btn-modal-risk {
	position: absolute;
  top: -120px;
	left: 0;
	color: #CD3335;
	font-size: 14px;
	letter-spacing: 0.1em;
	text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.1em;
	transition: .15s ease-out;
}

.btn-modal-risk:hover {
	opacity: 0.7;
}

/* .modal-common
------------------------------------*/
.modal-common {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	box-sizing: border-box;
	background-color: #FFFFFF;
	width: 47%;
	max-width: 800px;
	height: 100vh;
	padding: 8px;
	z-index: 101;
}

.modal-common.active {
	z-index: 100;
}

.modal-common .inner {
	position: relative;
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 110px 9% 0;
}

.modal-common .inner::-webkit-scrollbar { width: 2px; }
.modal-common .inner::-webkit-scrollbar-track { border-radius: 2px; background: #FFFFFF; }
.modal-common .inner::-webkit-scrollbar-thumb { background: #CD3335; }

.modal-common .inner-s:not(:first-child) { margin-top: 140px; }
.modal-common .inner-s:last-of-type { padding-bottom: 90px; }

.modal-common h3 {
	margin-bottom: 35px;
	color: #CD3335;
	font-size: 24px;
	text-align: center;
	letter-spacing: 0.12em;
}

.modal-common .inner > h4,
.modal-common .inner-s > h4 {
	margin: 55px 15px 20px;
	color: #CD3335;
	font-size: 18px;
	letter-spacing: 0.08em;
}

.modal-common .inner > p,
.modal-common .inner-s > p {
	padding: 0 15px;
	font-size: 15px;
	line-height: 1.95;
	text-align: justify;
}

.modal-common .inner p strong {
	color: #CD3335;
}

.modal-common dl {
	margin-top: 60px;
}

.modal-common .dl-wide {
	margin-right: 10px;
	margin-left: 10px;
}

.modal-common dl:not(:last-child) {
	padding-bottom: 90px;
}

.modal-common dl > div {
	display: -webkit-box;
	display: flex;
	border-top: 1px solid rgba(224,224,224,0.5);
	margin-bottom: 19px;
	padding-top: 17px;
}

.modal-common .dl-wide > div {
	display: block;
	margin-bottom: 24px;
	padding: 22px 5px 0;
}

.modal-common dl > div:last-of-type {
	margin-bottom: 0;
}

.modal-common dt {
	width: 100px;
	min-width: 100px;
	padding: 5px 20px 0 0;
	color: #CD3335;
	font-size: 15px;
	letter-spacing: 0.12em;
}

.modal-common .dl-wide dt {
	width: auto;
	margin-bottom: 15px;
	padding: 0;
	font-size: 16px;
}

.modal-common dd {
	width: 100%;
}

.modal-common dd h4:first-child {
	margin-top: 5px;
}

.modal-common dd h4 {
	margin: 30px 0 12px;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.modal-common dd h4.border {
	border-top: 1px solid rgba(224,224,224,0.5);
	margin-top: 22px;
	padding-top: 24px;
}

.modal-common .dl-wide dd p {
	font-size: 15px;
	line-height: 1.9;
	text-align: justify;
}

.modal-common .list-dot li:before {
	background-color: #526B53;
}

.modal-common .inner-s > .list-dot {
	margin: 45px 15px 0 17px;
	text-align: justify;
}

.modal-common .inner-s > .list-dot li {
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 1.85;
	letter-spacing: 0.08em;
}

/* .btn-modal-close
------------------------------------*/
.btn-modal-close {
	position: fixed;
	bottom: -10px;
	left: 20px;
	z-index: 101;
	cursor: pointer;
	transform-origin: center bottom;
	display: none;
	opacity: 0;
}

.btn-modal-close div {
	transition: .15s ease-out;
}

.btn-modal-close div:hover {
	opacity: 0.9;
}

.btn-modal-close span {
	display: block;
	position: absolute;
	top: 30px;
	left: 44px;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.btn-modal-close span i {
	display: inline-block;
	margin-right: 6px;
	transform: translateY(4px);
}

.btn-modal-close .illust {
	width: 178px;
	height: auto;
}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	display: block;
	overflow: hidden;
	background: url(img/share/illust-footer@2x.png) no-repeat right bottom / 341px auto;
	box-sizing: border-box;
	width: 100%;
	min-width: 1300px;
	min-height: 100vh;
	margin: 0 auto;
	padding: 0 0 0 250px;
	text-align: left;
	opacity: 0;
}

/* media query
-----------------------------------*/
@media (max-width: 1439px) {
	#mainContents {
		background-size: 22% auto;
	}
	footer .inner:nth-of-type(2) {
		margin-left: 20px;
	}
}

#contents {
	opacity: 0;
	min-height: calc(100vh - 775px);
}

.sec-bc {
	background-color: #FBEFE2;
}

.btn-ac {
	transition: .15s ease-out;
	cursor: pointer;
}

.btn-ac:hover {
	opacity: 0.7;
}

/*
.btn-ac .arrow {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background: url(img/share/ico-arrow.svg) no-repeat;
	width: 5px;
	height: 8px;
	transform: rotate(90deg);
	transition: .3s ease-out;
}

.btn-ac.active .arrow {
	transform: rotate(270deg);
}
*/

.ico-plus {
	display: block;
	position: absolute;
	top: 13px;
	right: -9px;
	width: 17px;
	height: 17px;
	transition: .3s ease-out;
}

.ico-plus:before,
.ico-plus:after {
	display: block;
	content: '';
	position: absolute;
	background-color: #FFFFFF;
}

.ico-plus:before {
	top: 8px;
	left: 0;
	width: 100%;
	height: 1px;
}

.ico-plus:after {
	top: 0;
	left: 8px;
	width: 1px;
	height: 100%;
}

.btn-ac.active .ico-plus {
	transform: rotate(225deg);
}

.ac-area {
	display: none;
}

/* .img-main
------------------------------------*/
.img-main {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	padding-bottom: 59.6%;
}

/* .img-center
------------------------------------*/
.img-center {
	position: relative;
	width: 776px;
	margin: 0 auto;
}

/* .title-page
------------------------------------*/
.title-page {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 100px;
	padding: 75px 40px 0;
	text-align: center;
	line-height: 1.4;
}

.title-illust {
	margin-bottom: 80px;
	padding-top: 125px;
}

.title-page:before {
	display: block;
	content: '';
	position: absolute;
	top: -30%;
	left: 0;
	background: url(img/share/bg-title@2x.png) no-repeat center top;
	background-size: 100% 100%;
	width: 100%;
	height: calc(30% + 1px);
}

/*
.title-page:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #F3E8DA;
	width: 940px;
	height: 1px;
}
*/

.title-page .illust {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}

.title-page .illust .inner {
	opacity: 0;
}

.title-page .illust img {
	width: 100%;
	max-width: none;
	height: auto;
}

.title-page .illust .inner > img {
	opacity: 0;
}

.title-page .illust .mask {
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.title-page .illust .mask img {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	filter: grayscale(100%);
}

.illust img {
	-webkit-backface-visibility: hidden;
}

.title-illust h1 {
	opacity: 0;
}

.title-page em {
	display: block;
	margin-bottom: 14px;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.title-page em span:last-of-type i {
	display: none;
}

.title-page strong {
	font-size: 29px;
	letter-spacing: 0.06em;
}

/* .title-illust.about
------------------------------------*/
.title-illust.about {
	margin-bottom: 48px;
}

.title-page.about:before {
	display: none;
}

.title-page.about .illust {
	top: -75px;
	width: 345px;
	margin-left: -4px;
}

/* .title-sub
------------------------------------*/
.title-sub span {
	position: relative;
	display: inline-block;
	padding-bottom: 5px;
	font-size: 18px;
	letter-spacing: 0.1em;
}

.title-sub span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #CD3335;
	width: calc(100% - 2px);
	height: 1px;
}

/* .num-line
------------------------------------*/
.num-line {
	position: relative;
	display: inline-block;
	font-size: 25px;
	line-height: 1;
}

.num-line:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -11px;
	left: -9px;
/* 	background: url(img/share/num-line-red.svg) no-repeat; */
	background: url(img/share/num-line-green.svg) no-repeat;
	width: 42px;
	height: 7px;
}

/*
.num-line.green:after {
	background-image: url(img/share/num-line-green.svg);
}
*/

/* .list-dot
------------------------------------*/
.list-dot li {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 4px;
	padding-left: 18px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.list-dot li:last-of-type {
	margin-bottom: 0;
}

.list-dot li:before {
	display: block;
	content: '';
	position: absolute;
	top: 10px;
	left: 3px;
	background-color: #DD2825;
	border-radius: 50%;
	width: 5px;
	height: 5px;
}

/* .sec-lead
------------------------------------*/
.sec-lead {
	margin-bottom: 75px;
	text-align: center;
}

.title-page + .sec-lead {
	margin-top: -20px;
}

.sec-lead h2 {
	margin-bottom: 35px;
	font-size: 28px;
	line-height: 1.6;
	letter-spacing: 0.06em;
	transform: translateX(8px);
}

.sec-lead p {
	margin-bottom: 8px;
	font-size: 16px;
	line-height: 1.9;
	letter-spacing: 0.12em;
}

/* .sec-center
------------------------------------*/
.sec-center {
	width: 776px;
	margin: 0 auto 120px;
}

.sec-center figure {
	margin-bottom: 40px;
}

.sec-center h2 {
	margin: 0 0 22px -2px;
	font-size: 20px;
	letter-spacing: 0.1em;
}

.sec-center p {
	font-size: 16px;
	text-align: justify;
	line-height: 1.9;
}


/* .news-list
---------------------------------------------------------------------------*/
.news-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 990px;
	margin: 0 auto;
}

/* media query
-----------------------------------*/
@media (max-width: 1400px) {
	.news-list {
		width: 88%;
	}
}

.news-list article {
	position: relative;
	width: 29%;
	margin: 6.5% 6.5% 0 0;
	text-align: center;
}

.news-list article:nth-of-type(1),
.news-list article:nth-of-type(2),
.news-list article:nth-of-type(3) {
	margin-top: 0;
}

.news-list article:nth-of-type(3n) {
	margin-right: 0;
}

.news-list article a {
	display: block;
}

.news-list figure {
	position: relative;
	overflow: hidden;
	width: 90%;
	padding-bottom: calc(90% * 0.625);
	margin: 0 auto 22px;
}

.news-list figure img {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	height: auto;
}

/*
.news-list time {
	position: absolute;
	top: 0;
	right: -12px;
	font-size: 12px;
	letter-spacing: 0.06em;
	white-space: nowrap;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
*/

.news-list time {
	position: absolute;
	top: 0;
	right: -24px;
	width: 12px;
	height: 12px;
	font-size: 12px;
	letter-spacing: 0.06em;
	white-space: nowrap;
	transform-origin: left top;
	transform: rotate(90deg);
}

.news-list .category {
	margin-bottom: 8px;
	font-size: 12px;
	letter-spacing: 0.06em;
	text-transform: capitalize;
}

.news-list .category span:last-of-type i {
	display: none;
}

.news-list h3 {
	margin-bottom: 12px;
	line-height: 1.4;
	letter-spacing: 0.08em;
}

.news-list p {
	text-align: justify;
	letter-spacing: 0.06em;
}

/* .wp-pagenavi
---------------------------------------------------------------------------*/
.wp-pagenavi {
	overflow: hidden;
	margin-top: 90px;
	font-size: 15px;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi .extend {
	margin: 0 3px;
	padding: 8px;
}

.wp-pagenavi .current {
	position: relative;
	display: inline-block;
	margin: 0 16px;
	padding: 8px 0 8px;
	color: #FFFFFF;
}

.wp-pagenavi .current:after {
	display: block;
	content: '';
	position: absolute;
	top: 2px;
	left: 50%;
	background-color: #CD3335;
	border-radius: 50%;
	width: 28px;
	height: 28px;
	margin-left: -14px;
	z-index: -1;
}

.wp-pagenavi a.first,
.wp-pagenavi a.last,
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	letter-spacing: 0.15em;
}


/* service
---------------------------------------------------------------------------*/

/* .sec-news
------------------------------------*/
.sec-news {
	width: 976px;
	margin: 0 auto;
}

.sec-news h2 {
	display: inline-block;
	margin: 0 0 50px calc(29% * 0.1 / 2 - 2px);
	font-size: 19px;
	letter-spacing: 0.12em;
}

.sec-news .btn-link {
	float: right;
	margin-right: calc(29% * 0.1 / 2 - 2px);
}

/* .service-nav
------------------------------------*/
.service-nav {
	background: url(img/share/bg-service-nav.jpg) no-repeat center center;
	background-size: cover;
	width: 976px;
	height: 316px;
	margin: 150px auto 0;
}

.service-nav ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: 100%;
}

.service-nav li {
	position: relative;
	width: calc(20% - 3px);
	margin-right: 3px;
}

.service-nav li:nth-of-type(1),
.service-nav li:nth-of-type(3) {
	width: calc(20% - 2px);
}

.service-nav li:last-of-type {
	float: right;
	width: calc(20% - 2px);
	margin-right: 0;
}

.service-nav li:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: -3px;
	background-color: #FFFAF4;
	width: 3px;
	height: 100%;
}

.service-nav li:last-of-type:before {
	display: none;
}

.service-nav .bg {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(185,146,115,0.75);
	mix-blend-mode: multiply;
	width: 100%;
	height: 100%;
	z-index: 0;
	transition: .15s ease-out;
}

.service-nav a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	color: #FFFFFF;
	z-index: 2;
}

.service-nav a:hover {
	opacity: 1 !important;
	background: rgba(205,51,53,0.9);
}

.service-nav a i {
	position: absolute;
	top: 20px;
	left: 20px;
	font-size: 17px;
	letter-spacing: 0.1em;
	z-index: 1;
}

.service-nav a strong {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	white-space: nowrap;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
	font-size: 22px;
	letter-spacing: 0.2em;
	z-index: 1;
}

/* .pay-list
------------------------------------*/
.pay-list > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 38px;
}

.pay-list > div:last-of-type {
	margin-bottom: 0 !important;
}

.pay-list dt {
	width: 150px;
	min-width: 150px;
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: 0.12em;
}

.pay-list dd {
	width: 100%;
}

.pay-list dd p {
	font-size: 15px;
}

.pay-list .list {
	box-sizing: border-box;
	background-color: #FBEFE2;
	border-radius: 5px;
	width: 100%;
	margin-top: 15px;
	padding: 14px 20px 10px;
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.04em;
	font-family: 'Adobe Garamond Pro', 'Garamond Premier Pro', 'EB Garamond', serif;
}

/* .detail-pay
------------------------------------*/
.detail-pay .pay-list {
	padding: 40px 8px 20px;
}

.detail-pay .pay-list > div {
	margin-bottom: 28px;
}

.detail-pay .pay-list dd p {
	font-size: 14px;
}

.detail-pay .pay-list .list {
	font-size: 14px;
}


/* .sec-service-price
---------------------------------------------------------------------------*/
.sec-service-price {
	box-sizing: border-box;
	background-color: #FFFFFF;
	border-radius: 21px;
	width: 846px;
	margin: 0 auto;
	padding: 60px 40px 55px;
}

.sec-service-price h2 {
	margin: 0 0 0 10px;
}

.sec-service-price > p:last-child {
	margin-top: 16px;
}

.sec-service-price > p:last-child,
.sec-service-price > p .btn {
	font-size: 13px;
	line-height: 1.9;
	letter-spacing: 0.15em;
}

.sec-service-price > p .btn {
	color: #CD3335;
	text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.1em;
	transition: .15s ease-out;
	cursor: pointer;
}

.sec-service-price > p .btn:hover {
	opacity: 0.7;
}

.sec-service-price .sub {
	float: right;
	margin-right: 12px;
	font-size: 14px;
	letter-spacing: 0.15em;
}

/* .price-list
------------------------------------*/
.price-wrap {
	margin: 25px 0 35px -4px;
}

.price-wrap .inner {
	position: relative;
	border-top: 1px solid #F3E8DA;
	display: flex;
}

/*
.price-wrap .inner:first-of-type {
	border-top: none;
}
*/

.price-wrap h3,
.price-wrap h4,
.price-list dt {
	font-size: 16px;
	letter-spacing: 0.06em;
}

.price-wrap h3 {
	width: 180px;
	min-width: 180px;
	padding: 13px 0 16px 15px;
	line-height: 1.5;
}

.price-wrap h3.pt {
	padding-top: 20px;
}

.price-wrap h3 a {
	color: #CD3335;
	text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.1em;
}

.price-wrap h3 span {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	letter-spacing: 0.06em;
}

.price-wrap h3 span.let {
	letter-spacing: 0.02em;
}

.price-wrap .price-list {
	width: 100%;
	margin: 0
}

.price-wrap .price-list > div,
.price-wrap .price-list > dl {
	padding-left: 15px;
}

.price-wrap .price-list h4 + dl {
	padding-bottom: 20px;
}

.price-wrap .inner:not(:last-of-type) .price-list > div:last-of-type,
.price-wrap .inner:not(:last-of-type) .price-list > dl:last-of-type {
	border-bottom: none;
}

.price-wrap .price-list > div.box {
	background-color: #FBEFE2;
  border-radius: 5px;
	margin: 15px 0 37px;
	padding: 20px 23px 20px 27px;
	text-align: justify;
}

.price-list {
	box-sizing: border-box;
	margin: 30px 0 36px;
}

.price-list h4 {
	padding: 20px 0 2px 15px;
	text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3em;
}

.price-list h4:first-of-type {
padding-top: 24px;
}

.price-list > div,
.price-list > dl,
.price-list > dl > div {
	box-sizing: border-box;
	border-bottom: 1px solid #F3E8DA;
	width: 100%;
	padding: 13px 14px 15px 10px;
	line-height: 1.5;
}

.price-list > div,
.price-list > dl > div {
	display: -webkit-box;
	display: flex;
}

.price-list > dl > div {
	border-top: 1px solid #F3E8DA;
	border-bottom: none;
	padding: 13px 0 15px 17px;
}

.price-list > dl > div:first-of-type {
	border-top: none;
}

.price-list > div:has(+.box) {
	border-bottom: none;
}

.price-list dt {
	width: 100%;
}

.price-list dt a {
	color: #CD3335;
	text-decoration: underline;
}

.price-list dt span {
	padding-left: 5px;
	font-size: 13.5px;
	letter-spacing: 0.04em;
	/* color: #526B53; */
}

.price-list dt span.ml {
	padding-left: 1px;
}

.price-list dt span.ml,
.price-list dt span.mt {
	color: #526B53;
}

.price-list dt br + span {
	padding-left: 0;
}

.price-list dt span strong {
	padding-left: 2px;
	font-size: 15px;
	letter-spacing: 0.08em;
}

body#pc .price-list dt .pc_view {
	display: inline !important;
}

.price-list dd {
	min-width: 100px;
	font-size: 15px;
	text-align: right;
	letter-spacing: 0.1em;
	transform: translateY(4px);
}

.price-list dd i {
	display: inline-block;
	margin-right: -13px;
	font-size: 12px;
}

.price-list dd span.mr {
	margin-right: -5px;
}

/* .btn-detail
------------------------------------*/
.btn-detail {
	position: relative;
	box-sizing: border-box;
	background-color: #CD3335;
	width: 100%;
	padding: 18px 0 20px 28px;
	color: #FFFFFF;
	font-size: 18px;
	letter-spacing: 0.1em;
}

.btn-detail .dot {
	position: absolute;
	top: 4px;
	width: 2px;
	height: calc(100% - 8px);
}

.btn-detail .dot:nth-of-type(1) { left: 4px; }
.btn-detail .dot:nth-of-type(2) { right: 4px; }

.btn-detail .dot:before,
.btn-detail .dot:after {
	display: block;
	content: '';
	position: absolute;
	left: 0;
	background-color: rgba(255,255,255,0.9);
	width: 2px;
	height: 2px;
}

.btn-detail .dot:before { top: 0; }
.btn-detail .dot:after { bottom: 0; }

.btn-detail .ico-plus {
	position: absolute;
	top: 19px;
	right: 24px;
}


/* post
---------------------------------------------------------------------------*/

/* .post-main
------------------------------------*/
.post-main {
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.post-main p {
	margin-bottom: 18px;
	font-size: 15px;
	line-height: 2.1;
	letter-spacing: 0.1em;
	word-break: break-all;
	text-align: justify;
}

.post-main p:last-child { margin-bottom: 0; }
.post-main a { text-decoration: underline; }
.post-main strong { font-weight: bold; }
.post-main em { font-style: italic; }
.post-main del { text-decoration: line-through; }

.post-main img {
	display: block;
	max-width: calc(100% + 40px);
	height: auto;
	margin: 0 -20px;
	padding: 20px 0;
}

.post-main > img,
.post-main > p:first-child img {
	padding-top: 0;
}

.post-main .wp-caption {
	max-width: 100%;
	margin-bottom: 25px;
}

.post-main .wp-caption-text {
	margin-top: -5px;
}

.post-main ul,
.post-main ol {
	margin: 30px 0;
}

.post-main ul li {
	list-style: disc;
	margin: 0 0 6px 25px;
}

.post-main ol li {
	list-style: decimal;
	margin: 0 0 6px 25px;
}

.post-main ul li:last-of-type,
.post-main ol li:last-of-type,
.post-main blockquote:last-child {
	margin-bottom: 0;
}

.post-main blockquote {
	background: #FBEFE2;
	margin: 35px 0;
	padding: 22px 32px 24px;
}

.post-main blockquote p {
	font-size: 14px;
	line-height: 2;
}

/* .post-table-wrap
------------------------------------*/
.post-table-wrap {
	margin-top: 80px;
}

.post-table-wrap h3 {
	margin-bottom: 30px;
	font-size: 18px;
	letter-spacing: 0.1em;
}

.post-table {
	box-sizing: border-box;
	border-top: 1px solid #F3E8DA;
	width: calc(100% + 10px);
	margin: 0 -5px 40px;
	font-size: 15px;
	line-height: 1.6;
}

.post-table tr {
	border-bottom: 1px solid #F3E8DA;
}

.post-table th {
	position: relative;
	box-sizing: border-box;
	width: 15%;
	padding: 13px 15px 12px 5px;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.2em;
}

.post-table td {
	box-sizing: border-box;
	width: 85%;
	padding: 12px 5px 14px 0;
	letter-spacing: 0.1em;
}

/* .post-link
------------------------------------*/
.post-link {
	overflow: hidden;
	margin-top: 40px;
}

.post-link li {
	float: left;
	margin: 0 25px 20px 0;
}


/* .question-list
---------------------------------------------------------------------------*/
.question-list {
	box-sizing: border-box;
	width: 776px;
	margin: 0 auto 140px;
}

.question-list .post {
	margin-bottom: 100px;
}

.question-list .post:last-of-type {
	margin-bottom: 0;
}

.question-list h2 {
	margin: 0 0 30px;
}

.question-list dl {
	border-bottom: 1px solid #F3CFBE;
}

.question-list dt {
	position: relative;
	border-top: 1px solid #F3CFBE;
	padding: 14px 10px 14px 65px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.question-list dl div:first-of-type dt:first-of-type {
	border-top: none;
}

.question-list dt span {
	display: block;
	position: absolute;
	top: 13px;
	left: 22px;
	font-size: 16px;
}

.job-btn .ico-plus,
.question-list .ico-plus {
	top: 20px;
	right: 20px;
	width: 13px;
	height: 13px;
}

.job-btn .ico-plus:before,
.question-list .ico-plus:before { top: 6px; }
.job-btn .ico-plus:after,
.question-list .ico-plus:after { left: 6px; }

.job-btn .ico-plus:before,
.job-btn .ico-plus:after,
.question-list .ico-plus:before,
.question-list .ico-plus:after {
	background-color: #CD3335;
}

.question-list dd {
	display: none;
}

.question-list dd .inner {
	padding: 5px 80px 40px 65px;
}

.question-list .post-main p {
	margin-bottom: 15px;
	font-size: 14px;
	line-height: 1.9;
	text-align: justify;
}

.question-list .post-main img {
	max-width: 100%;
	margin: 0;
	padding: 15px 0;
}

.question-list .post-link {
	margin-top: 20px;
}

.question-list .post-link li {
	margin: 0 20px 10px 0;
}

.question-list .post-link li a {
	font-size: 15px;
}


/* .tips
---------------------------------------------------------------------------*/
.tips-btn {
	position: relative;
	z-index: 1;
}

.tips-icon {
	position: absolute;
	bottom: 10px;
	right: 9px;
	transform-origin: center bottom;
}

.tips-icon img {
	width: 24px;
	height: auto;
}

.tips-wrap {
	position: absolute;
	top: -120px;
	left: 100px;
	width: 290px;
	padding: 20px 0 0;
	text-align: left;
	z-index: 2;
	visibility: hidden;
	opacity: 0;
	transition: .2s cubic-bezier(0.215, 0.61, 0.355, 1);
	white-space: normal;
}

.tips-btn:hover .tips-wrap {
	padding-top: 0;
	visibility: visible;
	transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1) .1s;
	opacity: 1;
}

.tips-inner {
	position: relative;
	background-color: #FFFFFF;
	border-radius: 6px;
	padding: 16px 18px 16px;
	box-shadow: 0 2px 4px 0 #F9E4DC;
}

.tips-inner:before {
	display: block;
	content: '';
	position: absolute;
	bottom: -21px;
	left: 35px;
	background: url(img/share/tips@2x.png) no-repeat;
	background-size: 100% auto;
	width: 29px;
	height: 21px;
}

.tips-inner h5 {
	margin-bottom: 10px;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.tips-inner p {
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 1.65 !important;
	letter-spacing: 0.04em !important;
}

/* media query
-----------------------------------*/
@media (max-width: 1360px) {
	.tips-wrap {
		left: 70px;
	}
}


/* .sec-lead-about
---------------------------------------------------------------------------*/
.sec-lead-about h2 {
	margin-bottom: 25px;
	letter-spacing: 0.1em;
}

.sec-lead-about h1,
.sec-lead-about .h1 {
	margin-bottom: 32px;
	font-size: 30px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.sec-lead-about p {
	margin-bottom: 15px;
	font-size: 15px;
	line-height: 2.2;
	letter-spacing: 0.17em;
}


/* .sec-service
---------------------------------------------------------------------------*/
.sec-service {
	position: relative;
	width: 796px;
	margin: 0 auto 200px;
	text-align: center;
}

.sec-service:after {
	display: block;
	content: '';
	position: absolute;
	top: 105px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #FBEFE2;
	border-radius: 50%;
	width: 850px;
	height: 850px;
	z-index: -1;
}

.sec-service h1 {
	display: inline-block;
	box-sizing: border-box;
	background: #FFFFFF;
	border: 1px solid #D02B2F;
	border-radius: 20px;
	margin-bottom: 65px;
	padding: 8px 17px 9px 19px;
	font-size: 23px;
	letter-spacing: 0.06em;
}

.sec-service ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	justify-content: center;
	margin: 0 -25px;
}

.sec-service li {
	opacity: 0;
}

.sec-service li:nth-of-type(1),
.sec-service li:nth-of-type(2) {
	margin: 0 35px 85px;
}

.sec-service li:nth-of-type(3),
.sec-service li:nth-of-type(4),
.sec-service li:nth-of-type(5) {
	width: calc(100% / 3);
	margin: 0;
}


.sec-service li a {
	position: relative;
	display: block;
	padding-top: 250px;
/* 	white-space: nowrap; */
}

.sec-service li:nth-of-type(1) a,
.sec-service li:nth-of-type(2) a {
	padding-top: 220px;
}

.sec-service li i {
	position: absolute;
	top: 10px;
	left: 0;
	transform: scale(0.8);
}

.sec-service li:nth-of-type(3) i { top: 5px; left: 10px; }
.sec-service li:nth-of-type(4) i { top: 5px; left: 15px; }
.sec-service li:nth-of-type(5) i { top: 5px; left: -10px; }

.sec-service li .illust {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.sec-service li:nth-of-type(1) .illust { top: 0; margin-left: -8px; }
.sec-service li:nth-of-type(2) .illust { top: 56px; }
.sec-service li:nth-of-type(3) .illust { top: 0; }
.sec-service li:nth-of-type(4) .illust { top: 0; }
.sec-service li:nth-of-type(5) .illust { top: 10px; }

.sec-service li:nth-of-type(1) .illust img { width: 169px; height: auto; }
.sec-service li:nth-of-type(2) .illust img { width: 223px; height: auto; }
.sec-service li:nth-of-type(3) .illust img { width: 114px; height: auto; }
.sec-service li:nth-of-type(4) .illust img { width: 153px; height: auto; }
.sec-service li:nth-of-type(5) .illust img { width: 115px; height: auto; }

.sec-service h2,
.sec-service p {
	opacity: 0;
}

.sec-service h2 {
	margin-bottom: 15px;
}

.sec-service h2 em {
	display: block;
	margin-bottom: 12px;
	font-size: 14px;
	letter-spacing: 0.1em;
}

.sec-service h2 em span:last-of-type i {
	display: none;
}

.sec-service h2 strong {
	font-size: 18px;
	letter-spacing: 0.1em;
}

.sec-service p {
	letter-spacing: 0.12em;
}


/* .sec-address
---------------------------------------------------------------------------*/
.sec-address {
	width: 776px;
	margin: 0 auto 120px;
}

.sec-address .img {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 60px;
}

.sec-address .img figure {
	width: 382px;
}

.sec-address .map {
	width: 382px;
	height: 518px;
}

.sec-address .txt {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.sec-address .info {
	position: relative;
	padding-left: 140px;
}

.sec-address .info .sns {
	position: absolute;
	top: -26px;
	bottom: inherit;
	right: 0;
	left: inherit;
	width: auto;
}

.sec-address .info .sns li:last-of-type {
	display: none;
}

.sec-address .info .sns a {
	padding: 2px;
}

.sec-address .info .sns img {
	width: 27px;
	height: auto;
}

.sec-address .info .logo {
	position: absolute;
	top: -10px;
	left: -13px;
}

.sec-address .info address {
	display: block;
	margin-top: 20px;
	font-size: 15px;
	line-height: 1.55;
	letter-spacing: 0.08em;
}

.sec-address .info address .tel {
	display: block;
	margin-top: 8px;
	letter-spacing: 0.06em;
}

/* .schedule
------------------------------------*/
.schedule {
	width: 386px;
	padding-top: 10px;
	white-space: nowrap;
}

.schedule table {
	width: 100%;
}

.schedule tr {
	border-bottom: 1px solid rgba(244,207,189,0.5);
}

.schedule th {
	padding: 0 0 13px;
	font-size: 14px;
	text-align: center;
	vertical-align: middle;
}

.schedule th:first-of-type {
	font-size: 14px;
	letter-spacing: 0.18em;
}

.schedule td {
	padding: 12px 10px;
	font-size: 14px;
	text-align: center;
	vertical-align: middle;
}

.schedule td:first-of-type {
	padding-right: 15px;
	text-align: right;
	letter-spacing: 0.12em;
}

.schedule th:last-of-type,
.schedule td:last-of-type {
	padding-right: 15px;
	padding-left: 4px;
}

.schedule td:not(:first-of-type) {
	/*color: #EEBAA6;*/
	font-size: 11px;
}

.schedule td span {
	font-size: 15px;
}

.schedule p {
	margin: 18px 0 0 12px;
	font-size: 13px;
}


/* .sec-doctor
---------------------------------------------------------------------------*/
.sec-doctor {
	width: 880px;
	margin: 0 auto 140px;
}

.doctor {
	display: -webkit-box;
	display: flex;
	margin-bottom: 110px;
	opacity: 0;
}

.doctor .img {
	width: 398px;
	min-width: 398px;
}

.doctor .img .inner {
	position: relative;
}

.doctor .img .inner .mask,
.doctor .img .img2 .mask {
	position: absolute;
	top: 0;
	right: 0;
	background-color: #FFFAF4;
	width: 100%;
	height: calc(100% + 1px);
	z-index: 2;
}

.doctor .img .inner h2 {
	position: absolute;
	bottom: 36px;
	left: -34px;
}

.doctor .img .img2 {
	position: relative;
	margin-top: 40px;
}

.doctor .txt {
	box-sizing: border-box;
	width: 482px;
	padding: 0 0 0 64px;
}

.doctor h3 {
	margin: 0 0 20px -2px;
	font-size: 26px;
	line-height: 1.5;
	letter-spacing: 0.06em;
	transform: translateY(-2px);
}

.doctor p {
	line-height: 2.1;
	letter-spacing: 0.06em;
	text-align: justify;
}

/* .name
------------------------------------*/
.name {
	display: inline-block;
	color: #FFFFFF;
	white-space: nowrap;
}

.name em {
	display: inline-block;
	position: relative;
	overflow: hidden;
	background-color: #DD2825;
	margin-bottom: 6px;
}

.name em .name-inner {
	background-color: #DD2825;
	padding: 2px 5px 5px 7px;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.name strong {
	display: block;
	position: relative;
	overflow: hidden;
}

.name strong .name-inner {
	background-color: #DD2825;
	padding: 2px 2px 5px 7px;
	font-size: 21px;
	letter-spacing: 0.2em;
}

.name .mask-txt {
	position: absolute;
	top: 0;
	right: 0;
	background-color: #DD2825;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.name strong i {
	padding: 0 2px;
}

.name strong span {
	display: inline-block;
	padding-right: 6px;
	font-size: 11px;
	letter-spacing: 0.2em;
	transform: translateY(-1px);
}


/* .sec-address
---------------------------------------------------------------------------*/
.sec-address {
	margin-bottom: 120px;
}


/* .sec-calendar
---------------------------------------------------------------------------*/
.sec-calendar {
	width: 776px;
	margin: 0 auto;
}


/* .mnav
---------------------------------------------------------------------------*/
.contents {
	transition: .2s ease-out;
}

.contents.off {
	opacity: 0 !important;
}

.contents.off * {
	pointer-events: none !important;
}

.tablet #gnav-service a {
	pointer-events: none;
}

.tablet #gnav-service.on a {
	pointer-events: auto;
}

.mnav {
	position: absolute;
	bottom: 0;
	left: 250px;
	box-sizing: border-box;
	width: calc(100vw - 250px);
	min-width: calc(1300px - 250px);
	z-index: 999;
	display: none;
	opacity: 0;
}

.mnav .sec-service {
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 60px 60px 75px;
}

.mnav .sec-service:after {
	top: 200px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50%;
	width: 200%;
	height: 400px;
}

.mnav .sec-service h1 {
	margin-bottom: 80px;
	padding-top: 7px;
	padding-bottom: 10px;
	font-size: 20px;
}

.mnav .sec-service ul {
	display: -webkit-box;
	display: flex;
}

.mnav .sec-service li {
	box-sizing: border-box;
	width: 20%;
	margin: 0;
	padding: 0 1.8%;
}

.mnav .sec-service li a {
	padding-top: 165px;
}

.mnav .sec-service li i {
	top: -25px !important;
	transform-origin: left top;
	transform: scale(0.6);
}

.mnav .sec-service li:nth-of-type(1) i { left: 10px; }
.mnav .sec-service li:nth-of-type(2) i { left: 0; }
.mnav .sec-service li:nth-of-type(3) i { left: 10px; }
.mnav .sec-service li:nth-of-type(4) i { left: 10px; }
.mnav .sec-service li:nth-of-type(5) i { left: 10px; }

.mnav .sec-service li:nth-of-type(1) .illust { top: 5px; margin-left: -4px; }
.mnav .sec-service li:nth-of-type(2) .illust { top: 40px; }
.mnav .sec-service li:nth-of-type(3) .illust { top: -10px; }
.mnav .sec-service li:nth-of-type(4) .illust { top: -5px; }
.mnav .sec-service li:nth-of-type(5) .illust { top: 10px; }

.mnav .sec-service li:nth-of-type(1) .illust img { width: 119px; }
.mnav .sec-service li:nth-of-type(2) .illust img { width: 154px; }
.mnav .sec-service li:nth-of-type(3) .illust img { width: 76px; }
.mnav .sec-service li:nth-of-type(4) .illust img { width: 98px; }
.mnav .sec-service li:nth-of-type(5) .illust img { width: 72px; }

.mnav .sec-service h2,
.mnav .sec-service p {
	opacity: 1;
}

.mnav .sec-service h2 {
	margin-bottom: 12px;
}

.mnav .sec-service h2 em {
	margin-bottom: 4px;
	font-size: 10px;
	letter-spacing: 0.06em;
}

.mnav .sec-service h2 strong {
	font-size: 15px;
}

.mnav .sec-service p {
	font-size: 12px;
	letter-spacing: 0.06em;
	text-align: justify;
	white-space: normal;
}

.mnav .sec-service p br {
	display: none;
}


/* .sec-flow
---------------------------------------------------------------------------*/
.sec-flow .start {
	box-sizing: border-box;
	background-color: #CD3335;
	border-radius: 3px;
	margin: 32px -30px;
	padding: 14px 0 16px;
	color: #FFFFFF;
	font-size: 19px;
	text-align: center;
	letter-spacing: 0.2em;
}

.sec-flow dl > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 16px;
}

.sec-flow dl > div:last-of-type {
	margin-bottom: 0;
}

.sec-flow dt {
	position: relative;
	box-sizing: border-box;
	width: 190px;
	min-width: 190px;
	padding-left: 65px;
}

.sec-flow dt i {
	position: absolute;
	top: 12px;
	left: 6px;
}

.sec-flow dt h3 {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: center;
	align-items: center;
	box-sizing: border-box;
	background-color: #FFFAF4;
	border: 1px solid #DE172B;
	border-radius: 10px;
	width: 98px;
	height: 68px;
	font-size: 16px;
	text-align: center;
	line-height: 1.4;
	letter-spacing: 0.1em;
}

.sec-flow dt h3 strong {
	width: 100%;
	padding-bottom: 2px;
}

.sec-flow dt h3 span {
	width: 100%;
	margin-top: -24px;
	font-size: 11px;
}

.sec-flow dd {
	align-self: center;
}

.sec-flow dd p {
	margin-bottom: 2px;
	font-size: 15px;
	white-space: nowrap;
}

.sec-flow dd .attention {
	font-size: 13px;
}

.sec-flow .btn-set {
	margin: 50px 0 0;
	text-align: left;
}

.sec-flow .btn-set .btn-link {
	margin: 0 20px 0 0;
}