@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Source+Code+Pro&display=swap');
/*
Theme Name: モノリス2021
Author: smb
*/
html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	margin: 0;
	font-family: 'Noto Sans JP', sans-serif;
	background: #fff;
}
h1, h2, h3, h4, h5, h6, p, li, dt, dd, th, td {
	color: #000;
	word-break: break-all;
	line-height: 1.8;
}
h1, h1 a {
	font-size: 28px;
}
h2, h2 a {
	font-size: 26px;
}
h3, h3 a {
	font-size: 22px;
}
.template h3, .template h3 a {
	font-size: 26px;
}
h4, h4 a {
	font-size: 16px;
}
h5, h5 a {
	font-size: 13px;
}
h6, h6 a {
	font-size: 13px;
}
p, li, dt, dd, th, td {
	font-size: 16px;
	word-break: break-all;
}
a {
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
a:hover {}
img {
	vertical-align: top;
}
.clearfix:after {
	content: '';
	display: block;
	clear: both;
}
.clearfix { *zoom: 1; }

.center-block {
	margin-left: auto;
	margin-right: auto
}
.inline-block {
	display: inline-block;
}
.txt-center {
	text-align: center;
}
.txt-left {
	text-align: left;
}
.txt-right {
	text-align: right;
}
.mincho {
	 font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
}
.code {
	font-family: 'Source Code Pro', monospace;
}

.link {
	text-align: center;
	padding: 40px 0 0
}
.link a {
	border: 1px solid rgba(21,32,36,0.7);
	padding: 5px 30px;
	color: #fff;
	background-color: rgba(21,32,36,0.7);
	text-decoration: none;
}
.link a:hover {
	background-color: rgba(255,255,255,0.7);
	color: rgba(21,32,36,1);
	border: 1px solid rgba(21,32,36,0.7);
}
.link a.disabled{
	pointer-events: none;
	background: #aaa;
	border: none;
	color: #999;
	cursor: not-allowed;
}
.fas { margin-right: 0.3em; }

.spOnly,
.pc-none {
	display: block;
}
br.spOnly,
br.pc-none { line-height: 0; }
.pcOnly,
.sp-none {
	display: none;
}
.bold,
strong {
	font-weight: 700;
}
.white h2,
.white p,
.white a,
.white small {
	color: #fff;
}

.mgt0 { margin-top: 0 !important; }
.mgb0 { margin-bottom: 0 !important; }
.pdt0 { padding-top: 0 !important; }
.pdb0 { padding-bottom: 0 !important; }

.v-top {
	vertical-align: top;
}
.v-middle {
	vertical-align: middle;
}
.v-bottom {
	vertical-align: bottom;
}
.mgt-big {
	margin-top: 6.25vw;
}
.mgt-middle {
	margin-top: 4.6875vw;
}
.mgt-small {
	margin-top: 3.125vw;
}
.mgb-big {
	margin-bottom: 6.25vw;
}
.mgb-middle {
	margin-bottom: 4.6875vw;
}
.mgb-small {
	margin-bottom: 3.125vw;
}
.font-h3 {
	font-size: 4vw !important;
}
.text-inner.post>p b,.text-inner.post>p strong,
.text-inner.post>ul b,.text-inner.post>ul strong,
.text-inner.post>ol b,.text-inner.post>ol strong,
.text-inner.post>blockquote b,.text-inner.post>blockquote strong,
.text-inner.post>a b,.text-inner.post>a strong{
	background: #F7BB9E;
	color: #222222;
	font-weight: normal !important;
}

.movie-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 20px;
}
.movie-wrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
@media screen and (min-width: 768px) {
	.pcOnly,
	.sp-none {
		display: block;
	}
	.spOnly,
	.pc-none {
		display: none;
	}
	h1, h1 a {
		font-size: 32px;
	}
	h2, h2 a {
		font-size: 30px;
	}
	h3, h3 a {
		font-size: 24px;
	}
	.template h3, .template h3 a {
		font-size: 30px;
	}
	h4, h4 a {
		font-size: 20px;
	}
	h5, h5 a {
		font-size: 18px;
	}
	h6, h6 a {
		font-size: 18px;
	}
	p, a, li, dt, dd, th, td {
		font-size: 16px;
	}
	.mgt-big {
		margin-top: 60px;
	}
	.mgt-middle {
		margin-top: 40px;
	}
	.mgt-small {
		margin-top: 20px;
	}
	.mgb-big {
		margin-bottom: 60px;
	}
	.mgb-middle {
		margin-bottom: 40px;
	}
	.mgb-small {
		margin-bottom: 20px;
	}
	.font-h3 {
		font-size: 26px !important;
	}
	.txt-center-pc {
		text-align: center;
	}
}

.fa-folder:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f07b";
}
.border-none {
	border: none !important;
}

/*------------------------
 * btn
 */
.btn-more {
	margin: 0 auto;
	width: 51.3334vw;
	height: 10.6667vw;
}
.btn-more a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: #BA6594;
	border-radius: 1.3334vw;
	font-size: 3.4667vw;
	line-height: 1;
	color: #fff !important;
}
.btn-more a:hover {
	background: #1D0A19;
	text-decoration: none;
}
@media screen and (min-width: 768px) {
	.btn-more {
		width: 218px;
		height: 45px;
	}
	.btn-more a {
		border-radius: 10px;
		font-size: 14px;
	}
}

/*------------------------
 * container
 */
.container {
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
}
@media screen and (min-width: 1240px) {
	.container {
		margin: 0 20px;
	}
}

/*------------------------
 * header
 */
body { padding-top: 29.3334vw; }
header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 100;
	background: #fff;
	margin: 0 auto;
	width: 100vw;
}
header .container {
	margin: 0;
	padding: 2.6667vw 0 0;
	max-width: 100%;
	height: 29.3334vw;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
header.fixed .container {
	padding: 2.6667vw 0 0;
	height: 29.3334vw;
}
header .header-title {
	position: absolute;
	left: 4vw;
	top: 13.3334vw;
	width: 33.3334vw;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
header.fixed .header-title {
	top: 13.3334vw;
	width: 33.3334vw;
}
header .title img { width: 100%; }
header .header-title h1,
header .header-title a { font-size: 22px; }
header .header-contact {
	margin-bottom: 18.6667vw;
	width: 100%;
}
header .header-contact p {
	display: none;
}
header .header-contact ul {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	width: 85.3334vw;
}
header .header-contact ul li {
	width: 40vw;
	height: 7.7334vw;
}
header .header-contact ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: #BA6594;
	border-radius: 2vw;
	font-size: 3.3334vw;
	line-height: 1;
	color: #fff;
}
header .header-contact ul li a:hover {
	background: #1D0A19;
	text-decoration: none;
}
header .lawmagazine {
	display: none;
}
@media screen and (min-width: 768px) {
	body { padding-top: 166px; }
	header { width: 100%; }
	header .container {
		margin: 0 auto;
		padding: 55px 0 0;
		max-width: 1200px;
		height: 166px;
	}
	header.fixed .container {
		padding: 35px 0 0;
		height: 126px;
	}
	header .header-title {
		left: 20px;
		top: 32px;
		width: 175px;
	}
	header.fixed .header-title {
		top: 12px;
		width: 150px;
	}
	header .header-title h1,
	header .header-title a { font-size: 22px; }
	header .header-contact {
		margin: 0 20px 0 auto;
		width: 560px;
	}
	header .header-contact p {
		float: left;
		display: flex;
		line-height: 1;
	}
	header .header-contact p > span:nth-child(1) {
		margin-right: 10px;
		font-size: 18px;
		letter-spacing: -0.02em;
	}
	header .header-contact p > span:nth-child(2) {
		margin-top: -0.05em;
		font-size: 21px;
		line-height: 1;
	}
	header .header-contact p > span:nth-child(2) .hours {
		display: block;
		margin-top: 0.2em;
		font-size: 12px;
	}
	header .header-contact p > span:nth-child(2) .hours small {
		font-size: 10px;
	}
	header .header-contact ul {
		display: block;
		transform: translate(0,-15px);
		float: right;
		width: 120px;
	}
	header .header-contact ul li {
		margin-bottom: 5px;
		width: 120px;
		height: 30px;
	}
	header .header-contact ul li a {
		border-radius: 10px;
		font-size: 14px;
	}
	header .lawmagazine {
		display: block;
		position: absolute;
		right: 20px;
		bottom: 18px;
		z-index: 2;
		line-height: 1;
	}
	header .lawmagazine a {
		font-size: 14px;
		font-weight: bold;
		color: #000;
	}
	header .lawmagazine span {
		display: inline-block;
		margin-left: 1em;
		width: 240px;
		height: 12px;
		background: url("./img/monolithlawmagazine.svg") no-repeat center center;
		background-size: contain;
		text-indent: -9999px;
		vertical-align: -1px;
	}
	header .lawmagazine a:hover {
		text-decoration: none;
	}
	header .lawmagazine a:hover span {
		background-image: url("./img/monolithlawmagazine_on.svg");
	}
}
@media screen and (min-width: 860px) {
	header .header-contact {
		width: 610px;
	}
	header .header-contact p > span:nth-child(1) {
		font-size: 22px;
	}
	header .header-contact p > span:nth-child(2) {
		font-size: 26px;
	}
}
@media screen and (min-width: 1000px) {
	header .header-contact {
		width: 780px;
	}
	header .header-contact p > span:nth-child(1) {
		font-size: 24px;
	}
	header .header-contact p > span:nth-child(2) {
		font-size: 28px;
	}
	header .header-contact ul {
		display: flex;
		transform: translate(0,0);
		width: 250px;
	}
	header .header-contact ul li {
		margin-bottom: 0;
	}
}
@media screen and (min-width: 1240px) {
	header .header-title {
		left: 0;
	}
	header .header-contact {
		margin: 0 0 0 auto;
	}
	header .lawmagazine {
		right: 0;
	}
}


/*------------------------
 * メニュー
 */
.g-nav {
	overflow: hidden;
	height: calc(100vh - 29.3334vw);
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
	pointer-events: none;
}
.g-nav::-webkit-scrollbar {
	display:none;
}
.header.close .g-nav {
	pointer-events: auto;
}
.g-nav a {
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	opacity: 1;
	font-size: 3.7334vw;
}
.g-nav a:hover {
	text-decoration: none;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.standard-menu {
	display: block;
	margin-left: 100vw;
	width: 100vw;
}
.header.close .standard-menu {
	margin-left: 0;
}
.standard-menu > .sub-ul {
	padding: 0 5.3334vw;
}
.standard-menu > .sub-ul > li { position: relative; }
.standard-menu > .sub-ul > li > a {
	display: block;
	padding: 0.4em 0 0.5em;
	border-bottom: #F29B7E 1px solid;
	font-size: 3.7334vw;
}
.standard-menu > .sub-ul > li + li {
	margin-top: -1px;
}
.standard-menu > .sub-ul > li + li > a {
	border-top: #F29B7E 1px solid;
}
.standard-menu > .sub-ul > li > a + span {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	width: 9.3334vw;
	height: 9.3334vw;
	cursor: pointer;
}
.standard-menu > .sub-ul > li > a + span:before,
.standard-menu > .sub-ul > li > a + span:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	display: block;
	width: 5.0667vw;
	height: 0;
	border-top: #271839 1px solid;
}
.standard-menu > .sub-ul > li > a + span:after {
	transform: translate(-50%,-50%) rotate(90deg);
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.standard-menu > .sub-ul > li > a + span.close:after {
	transform: translate(-50%,-50%) rotate(0deg);
	opacity: 0;
}
.standard-menu > .sub-ul .sub-menu-wrap {
	display: none;
}
.standard-menu > .sub-ul .sub-menu-wrap > .sub-menu {
	padding-left: 1em;
}
.standard-menu > .sub-ul .sub-menu-wrap > .sub-menu a {
	display: block;
	padding: 0.5em 0;
}
.standard-menu > .sub-ul .sub-menu-wrap > .sub-menu a:hover {
	opacity: 0.4;
}
.standard-menu > .sub-ul .sub-menu-wrap > .sub-menu li > a + ul {
	margin-left: 1em;
}
.lawmagazine-sp,
.header-contact-sp {
	margin-left: 100%;
}
.header.close .lawmagazine-sp,
.header.close .header-contact-sp {
	margin-left: 0;
}
.g-nav .lawmagazine-sp {
	margin-bottom: 4.8vw;
	padding: 0 5.3334vw;
	font-size: 3.7334vw;
}
.g-nav .lawmagazine-sp a {
	display: block;
	margin-top: -1px;
	padding: 0.5em 0;
	border-top: #F29B7E 1px solid;
	border-bottom: #F29B7E 1px solid;
}
.g-nav .lawmagazine-sp span {
	display: inline-block;
	margin-left: 5em;
	width: 53.3334vw;
	height: 2.6667vw;
	background: url("./img/monolithlawmagazine.svg") no-repeat center center;
	background-size: contain;
	text-indent: -9999px;
	vertical-align: -2.1334vw;
}
.g-nav .lawmagazine-sp a:hover span {
	background-image: url("./img/monolithlawmagazine_on.svg");
}
.g-nav .header-contact-sp {
	margin-bottom: 10vw;
	padding: 0 5.3334vw;
}
.g-nav .header-contact-sp .title {
	display: block;
	font-size: 3.7334vw;
	font-weight: bold;
	line-height: 1;
	color: #602D6B;
}
.g-nav .header-contact-sp .tel {
	display: block;
	font-size: 6.6667vw;
}
.g-nav .header-contact-sp .hours {
	display: block;
	font-size: 3.4667vw;
}
.menu-btn {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 999;
	width: 18.6667vw;
	height: 18.6667vw;
	cursor: pointer;
}
.menu-btn span {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 9.0667vw;
	height: 0.4vw;
	background: #1D0A19;
	border-radius: 0.2vw;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.menu-btn span:nth-child(1) { margin-top: -2.6667vw; }
.menu-btn span:nth-child(3) { margin-top: 2.6667vw; }
.header.close .menu-btn span:nth-child(2) {
	opacity: 0;
}
.header.close .menu-btn span:nth-child(1) {
	margin-top: 0;
	transform: translate(-50%,-50%) rotate(45deg);
}
.header.close .menu-btn span:nth-child(3) {
	margin-top: 0;
	transform: translate(-50%,-50%) rotate(-45deg);
}
.overlay {
	display: none;
	position: fixed;
	top: 0;
	height: 100%;
	width: 100%;
	background: #fff;
	overflow: auto;
	z-index: 99;
}
@media screen and (min-width: 768px) {
	.g-nav {
		overflow: visible;
		height: auto;
		pointer-events: auto;
	}
	.menu-btn,
	.g-nav .overlay {
		display: none;
	}
	.g-nav {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
	}
	.g-nav .standard-menu {
		display: block;
		margin-left: 20px;
		width: 100%;
	}
	.g-nav .standard-menu > .sub-ul {
		position: relative;
		display: flex;
		margin-left: 0;
		padding: 0;
	}
	.g-nav .standard-menu > .sub-ul > li {
		position: static;
		height: 32px;
		font-size: 18px;
	}
	.standard-menu > .sub-ul > li > a {
		display: block;
		padding: 0;
		border-bottom: 0;
	}
	.standard-menu > .sub-ul > li + li {
		margin-top: 0;
	}
	.standard-menu > .sub-ul > li + li > a {
		border-top: 0;
	}
	.standard-menu > .sub-ul > li > a + span {
		display: none;
	}
	.g-nav .standard-menu .sub-ul > li > span,
	.g-nav .standard-menu .sub-ul > li > a {
		font-size: 14px;
		font-weight: bold;
		color: #1D0A19;
		line-height: 1;
	}
	.g-nav .standard-menu .sub-ul > li > a { position: relative; }
	.g-nav .standard-menu .sub-ul > li > a:after {
		content: '';
		position: absolute;
		left: 50%;
		bottom: -5px;
		transform: translate(-50%,0);
		display: block;
		width: 0%;
		height: 3px;
		background: #1D0A19;
		border-radius: 2px;
		transition: all .3s ease;
	}
	.g-nav .standard-menu .sub-ul > li:hover > a:after {
		width: 106%;
	}
	.g-nav .standard-menu .sub-ul > li > a + .sub-menu { display: none; }
	.g-nav .standard-menu .sub-ul .sub-menu-wrap {
		display: block;
		position: absolute;
		width: 100%;
		top: 32px;
		left: 50%;
		transform: translate(-50%,0);
		padding: 10px 0 20px;
		min-height: 210px;
		box-sizing: border-box;
		transition: .3s;
		opacity: 0;
		pointer-events: none;
	}
	.g-nav .standard-menu .sub-ul .sub-menu-wrap:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
		width: 110vw;
		height: 100%;
		background: #1D0A19;
		transition: .3s;
		opacity: 0;
	}
	.g-nav .standard-menu .sub-ul li.menu-item-has-children:hover .sub-menu-wrap {
		display: block;
		opacity: 1;
		transition: .3s;
		pointer-events: auto;
	}
	.g-nav .standard-menu .sub-ul li.menu-item-has-children:hover .sub-menu-wrap:before {
		opacity: 1;
	}
/*
	.g-nav .standard-menu .sub-ul li:nth-child(4) .sub-menu-wrap,
	.g-nav .standard-menu .sub-ul li:nth-child(4) .sub-menu-wrap:before {
		pointer-events: auto;
		opacity: 1;
	}
*/
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu {
		position: relative;
		z-index: 2;
		padding-left: 0;
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu.has-children {
		display: flex;
		max-width: 95%;
	}
	.g-nav .standard-menu > .sub-ul > li:nth-child(5) .sub-menu-wrap > .sub-menu:first-child {
		margin-left: 18.8em;
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu.has-children > li {
		min-width: 23%;
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu.has-children > li + li {
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu li > a {
		display: inline-block;
		padding: 0;
		font-size: 14px;
		line-height: 1.75;
		color: #fff;
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu li > a + ul {
		margin-left: 1.5em;
	}
	.menu-item-has-children > a {
		position: relative;
	}
	.standard-menu ul.sub-ul > ul {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
	}
	.standard-menu ul.sub-ul > li {
		color: #fff;
	}
	.standard-menu ul.sub-ul > li {
		margin: 0 0.5em 0 0;
	}
	.standard-menu ul.sub-ul > li a {
		display: block;
		line-height: 1.5;
	}
	.standard-menu ul.sub-ul > li.button a {
		margin: 0;
	}
	.standard-menu ul > li > span {
		padding: 2em 0;
		cursor: default;
	}
	.standard-menu ul > li > a > span {
		display: block;
		font-size: 11px;
	}
	.g-nav .lawmagazine-sp,
	.g-nav .header-contact-sp {
		display: none;
	}
}
@media screen and (min-width: 840px) {
	.standard-menu ul.sub-ul > li {
		margin-right: 1em;
	}
	.g-nav .standard-menu .sub-ul > li > a {
		font-size: 16px;
	}
	.g-nav .standard-menu > .sub-ul > li:nth-child(5) .sub-menu-wrap > .sub-menu:first-child {
		margin-left: 23.5em;
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu li > a + ul {
		margin-left: 1.5em;
	}
}
@media screen and (min-width: 910px) {
	.standard-menu ul.sub-ul > li {
		margin-right: 2em;
	}
	.g-nav .standard-menu > .sub-ul .sub-menu-wrap > .sub-menu li > a {
		font-size: 16px;
	}
	.g-nav .standard-menu > .sub-ul > li:nth-child(5) .sub-menu-wrap > .sub-menu:first-child {
		margin-left: 27.5em;
	}
}
@media screen and (min-width: 1240px) {
	.g-nav .standard-menu {
		margin-left: 0;
	}
	.g-nav .standard-menu {
		margin-left: 0;
	}
	.g-nav .standard-menu > .sub-ul > li:nth-child(5) .sub-menu-wrap > .sub-menu:first-child {
		margin-left: 27.5em;
	}
}

/*------------------------
 * グローバルメニュー ボタン
 */
.button a {
	border-radius: 50px;
	padding: 5px 10px !important;
	display: block;
	width: auto;
	color: #fff;
	border: 2px solid #2FA8E1;
	background: #2FA8E1;
	max-width: 200px;
	margin: 0 auto;
}
.button.seikyuu a{
	border: 2px solid #39cb98;
	background: #39cb98;
}

.overlay .wrap .button a {
	color: #fff;
}
.button a:hover {
	background: #fff;
	color: #2FA8E1;
	text-decoration: none;
	opacity: 1;
}
.button.seikyuu a:hover{
	color:#39cb98;
}
.overlay .wrap .button a:hover {
	color: #2FA8E1;
}
.overlay .wrap .button.seikyuu a:hover {
	color: #39cb98;
}

/*------------------------
 * フロント
 */
.home-body .section-area {
  margin: 20px 0;
}
.slider-container, .slider-nav-container {
  display: none;
  position: relative;
}
.slider-container.initialized, .slider-nav-container.initialized {
  display: block;
}
.slider {
  overflow: hidden;
}
.slider-nav {
  margin: 0 26px;
}
.slider-arrow {
  position: absolute;
  top: 50%;
  height: 36px;
  margin-top: -18px;
  color: #aaa;
  line-height: 36px;
  font-size: 28px;
  cursor: pointer;
  z-index: 10;
}
.slider-prev {
  left: 0;
}
.slider-next {
  right: 0;
}
.slick-slide {
  outline: 0;
}
.slider .slick-slide > img, .slider-nav .slick-slide > img {
  display: block;
  width: 100%;
  height: auto;
}
.slider-main {
	position: relative;
}
.slider-main > .slider-image {
	background-position: center center;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
	height: 520px;
	width: 100%;
}
.slider-main > .slider-image:before {
	content: '';
	background: rgba(0,0,0,.4);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}
.slider-main .catch-inner {
	display: block;
	position: absolute;
	line-height: 1.5;
	width: 100%;
	text-align: center;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	margin: auto;
}
.slick-prev, .slick-next {
	border-radius: 50%;
	width: 40px;
	height: 40px;
	top: 90%;
}
.slick-prev {
	left: 2%;
}
.slick-next {
	right: 2%;
}
.slick-prev::before, .slick-next:before {
	color: #000;
}
.slick-prev::before {
	content: '←';
}
.slick-next::before {
	content: '→';
}
.slick-prev::before, .slick-next::before {
	font-family: 'slick';
	font-size: 40px;
	line-height: 1;
	opacity: .75;
	color: white;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	z-index: 80;
}
.slider-main p.catchcopy,
.slider-main h2.company-name,
.slider-main a.slider-link {
	color: #fff;
}
.slider-main p.catchcopy {
	font-size: 20px;
}
.slider-main h2.company-name {
	font-size: 34px;
	font-weight: 600;
}
.slider-main .slider-link-area {
	margin: 20px 0 0;
}
@media screen and (min-width: 480px) {
}
@media screen and (min-width: 768px) {
	.slider-main > .slider-image {
		height: 400px;
	}
	.slick-prev, .slick-next {
		top: 50%;
	}

	.slider-main p.catchcopy {
		font-size: 28px;
	}
	.slider-main h2.company-name {
		font-size: 44px;
	}
}
@media screen and (min-width: 991px) {
}

/*------------------------
 * section 共通
 */
.blue-section {
	background: #2FA8E1;
}
.gray-section {
	background: #efefef;
}
.white-section {
	background: #fff;
}
.red-section {
	background: #E17C80;
}
.purple-section {
	background: #602D6B;
}
.purple2-section {
	background: #E5DBE7;
}
.orange-section {
	background: #F7BB9E;
}
.template .orange-section p a {
	color: #602d6b;
}
.orange2-section {
	background: #FEF4EF;
}
.mgt-section { margin-top: 18.6667vw; }
.mgt-section100 { margin-top: 13.3334vw; }
.mgt-section80 { margin-top: 10.6667vw; }
.mgb-section { margin-bottom: 18.6667vw; }
.mgb-section100 { margin-bottom: 13.3334vw; }
.mgb-section80 { margin-bottom: 10.6667vw; }
.border-bottom-section {
	border-bottom: #150914 1px solid;
}
.section-inner {
  padding: 13.3334vw 0;
	max-width: 89.3334vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.section-inner-half {
	padding: 6.6667vw 0;
	max-width: 89.3334vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.section-inner-tophalf {
	padding: 6.6667vw 0 13.3334vw;
	max-width: 89.3334vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.section-inner-bottomhalf {
	padding: 13.3334vw 2% 6.6667vw;
	max-width: 89.3334vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.section-inner-black {
	margin: 0 auto;
	padding: 8.6667vw 4vw;
	max-width: 89.3334vw;
	background: #1D0A19;
	border-radius: 1.3334vw;
	box-sizing: border-box;
}
.section-inner-black .section-inner {
  padding: 8vw 0;
}

.max-width768 {
	max-width: 768px;
}
.max-width680,
.max-width710,
.max-width780,
.max-width860,
.max-width800,
.max-width980,
.max-width1000,
.max-width1050,
.max-width1100 {
	margin-left: auto;
	margin-right: auto;
	max-width: none;
	box-sizing: border-box;
}
.width550-sp {
	margin: 0 auto;
	width: 73.3334vw;
}
.width575-sp {
	margin: 0 auto;
	width: 76.6667vw;
}

.purple-section h2,
.purple-section h3,
.purple-section h4,
.purple-section h5,
.purple-section p,
.purple-section a,
.purple-section li,
.purple-section dd,
.purple-section dt,
.blue-section h2,
.blue-section h3,
.blue-section h4,
.blue-section h5,
.blue-section p,
.blue-section a,
.blue-section li,
.blue-section dd,
.blue-section dt,
.red-section h2,
.red-section h3,
.red-section h4,
.red-section h5,
.red-section p,
.red-section a,
.red-section li,
.red-section dd,
.red-section dt {
	color: #fff;
}
.section-inner-black h3,
.section-inner-black h4,
.section-inner-black h5,
.section-inner-black p,
.section-inner-black a,
.section-inner-black li,
.section-inner-black dd,
.section-inner-black dt {
	color: #fff;
}

@media screen and (min-width: 768px) {
	.mgt-section { margin-top: 140px; }
	.mgt-section100 { margin-top: 100px; }
	.mgt-section80 { margin-top: 80px; }
	.mgb-section { margin-bottom: 140px; }
	.mgb-section100 { margin-bottom: 100px; }
	.mgb-section80 { margin-bottom: 80px; }
	.section-inner {
		padding: 80px 20px;
		max-width: 1200px;
	}
	.section-inner-half {
		padding: 40px 20px;
		max-width: 1200px;
	}
	.section-inner-tophalf {
		padding: 40px 20px 80px;
		max-width: 1200px;
	}
	.section-inner-bottomhalf {
		padding: 80px 20px 40px;
		max-width: 1200px;
	}
	.section-inner-black {
		padding: 60px 6.25%;
		max-width: 1200px;
		border-radius: 8px;
	}
	.section-inner-black .section-inner {
		padding: 30px 20px;
	}
	.max-width680 {
		max-width: 680px;
	}
	.max-width710 {
		max-width: 710px;
	}
	.max-width780 {
		max-width: 780px;
	}
	.max-width800 {
		max-width: 800px;
	}
	.max-width860 {
		max-width: 860px;
	}
	.max-width980 {
		max-width: 980px;
	}
	.max-width1000 {
		max-width: 1000px;
	}
	.max-width1050 {
		max-width: 1050px;
	}
	.max-width1100 {
		max-width: 1100px;
	}
}

/*------------------------
 * front-top
 */
.front-top {
	margin-bottom: 8vw;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url("./img/top/kv_bg.jpg");
	background-size: auto 100%;
}
.front-top .section-inner {
	position: relative;
	padding: 8vw 0 0 0;
	min-height: 77.3334vw;
	box-sizing: border-box;
}
.front-top .top-logo {
	display: none;
}
.front-top p {
	opacity: 0;
	transform: translate(0,20%);
	margin: 0 auto;
	width: 89.3334vw;
	font-size: 3.7334vw;
	line-height: 1.65;
	color: #fff;
}
.front-top p strong {
	font-size: 7.7334vw;
	font-weight: bold;
}
.front-top p.text3 {
	margin-top: 0.5em;
	font-size: 5.0667vw;
}
.front-top.delighter .text1 {
  transition: all .5s cubic-bezier(.21,1.05,.8,.98) 1s;
}
.front-top.delighter .text2 {
  transition: all .5s cubic-bezier(.21,1.05,.8,.98) 1.2s;
}
.front-top.delighter .text3 {
  transition: all .5s cubic-bezier(.21,1.05,.8,.98) 1.4s;
}
.front-top.delighter.started .text1,
.front-top.delighter.started .text2,
.front-top.delighter.started .text3 {
	opacity: 1;
	transform: translate(0,0);
}
@media screen and (min-width: 768px) {
	.front-top {
		margin-bottom: 60px;
	}
	.front-top .section-inner {
		padding: 145px 20px 0;
		min-height: 530px;
	}
	.front-top .top-logo {
		display: block;
		position: absolute;
		left: 45px;
		top: 155px;
		width: 40%;
		height: 17.9167vw;
	}
	.front-top .top-logo .base {
		width: 0;
		height: 100%;
		background: url("./img/top/top_logo_base.svg") no-repeat;
		background-size: auto 100%;
	  transition: all 0.5s linear .1s;
	}
	.front-top .top-logo img {
		position: absolute;
		left: 0;
		top: 40.9303%;
	}
	.front-top .top-logo img:nth-child(n+2) {
		opacity: 0;
		transform: scale(0,1);
	}
	.front-top .top-logo img.top-logo-1 {
		left: 0;
		width: 8.125%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 0.6s;
	}
	.front-top .top-logo img.top-logo-2 {
		left: 8.0748%;
		width: 6.25%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 0.7s;
	}
	.front-top .top-logo img.top-logo-3 {
		left: 14.1544%;
		width: 6.8751%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 0.8s;
	}
	.front-top .top-logo img.top-logo-4 {
		left: 20.7882%;
		width: 6.25%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 0.9s;
	}
	.front-top .top-logo img.top-logo-5 {
		left: 26.7909%;
		width: 5.4167%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 1.0s;
	}
	.front-top .top-logo img.top-logo-6 {
		left: 32.4357%;
		width: 3.3334%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 1.1s;
	}
	.front-top .top-logo img.top-logo-7 {
		left: 36.2384%;
		width: 5.8334%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 1.2s;
	}
	.front-top .top-logo img.top-logo-8 {
		left: 42.5217%;
		width: 6.8751%;
	  transition: all .2s cubic-bezier(.21,1.05,.8,.98) 1.3s;
	}
	.front-top p {
		margin-left: 50.8334%;
		width: auto;
		font-size: 17px;
	}
	.front-top p strong {
		font-size: 40px;
	}
	.front-top p.text3 {
		font-size: 22px;
	}
	.front-top p .sp-none { display: none; }
	.front-top.delighter.started .top-logo .base {
		width: 100%;
	}
	.front-top.delighter.started .top-logo img.top-logo-1,
	.front-top.delighter.started .top-logo img.top-logo-2,
	.front-top.delighter.started .top-logo img.top-logo-3,
	.front-top.delighter.started .top-logo img.top-logo-4,
	.front-top.delighter.started .top-logo img.top-logo-5,
	.front-top.delighter.started .top-logo img.top-logo-6,
	.front-top.delighter.started .top-logo img.top-logo-7,
	.front-top.delighter.started .top-logo img.top-logo-8 {
		opacity: 1;
		transform: scale(1,1);
	}
	.front-top.delighter .text1 {
	  transition: all .5s cubic-bezier(.21,1.05,.8,.98) 1.5s;
	}
	.front-top.delighter .text2 {
	  transition: all .5s cubic-bezier(.21,1.05,.8,.98) 1.5s;
	}
	.front-top.delighter .text3 {
	  transition: all .5s cubic-bezier(.21,1.05,.8,.98) 1.5s;
	}
}
@media screen and (min-width: 1010px) {
	.front-top p .sp-none { display: block; }
	.front-top p {
		font-size: 17px;
	}
	.front-top p strong {
		font-size: 46px;
	}
	.front-top p.text3 {
		font-size: 25px;
	}
}
@media screen and (min-width: 1200px) {
	.front-top {
		background-size: 100% auto;
	}
}
@media screen and (min-width: 1240px) {
	.front-top .top-logo {
		width: 480px;
		height: 215px;
	}
}

/*------------------------
 * front about
 */
.front-about {
	margin-bottom: 10.6667vw;
}
.front-about .section-inner {
	padding: 0;
}
.front-about .en {
	margin-bottom: 0.5em;
	font-size: 3.4667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
}
.front-about h2 {
	margin-bottom: 0.5em;
	font-size: 4.4vw;
}
.front-about p {
	font-size: 3.6vw;
}
.front-about p + p {
	margin-top: 1.5em;
}
.front-about .pic {
	border-radius: 1.0667vw;
	margin-top: 0.5em;
	overflow: hidden;
	height: 100%;
}
.front-about .pic img {
	object-fit: cover;
	object-position: center;
	height: 100%;
	width: 100%;
}
@media screen and (min-width: 768px) {
	.front-about {
		margin-bottom: 100px;
	}
	.front-about .section-inner {
		display: flex;
		justify-content: space-between;
		padding: 0 20px;
	}
	.front-about .en {
		font-size: 18px;
	}
	.front-about h2 {
		font-size: 31px;
		line-height: 1.4;
	}
	.front-about p {
		font-size: 17px;
	}
	.front-about p + p {
		margin-top: 3em;
	}
	.front-about p .sp-none {
		display: none;
	}
	.front-about .section-inner div.text {
		width: 65%;
	}
	.front-about .section-inner div.pic {
		margin-top: 40px;
		width: 33%;
	}
	.front-about .pic {
		margin-top: 0;
		width: 100%;
		border-radius: 6px;
	}
	.front-about .pic img {
		margin: 0 -27%;
		width: 154.1177%;
	}
}
@media screen and (min-width: 1040px) {
	.front-about p .sp-none {
		display: block;
	}
	.front-about .section-inner div.text {
		width: 670px;
	}
	.front-about .section-inner div.pic {
		width: 330px;
	}
}
@media screen and (min-width: 1240px) {
	.front-numbers .section-inner {
		padding: 0;
	}
}

/*------------------------
 * front numbers
 */
.front-numbers {
	margin-bottom: 6.6667vw;
}
.front-numbers .section-inner {
	padding: 0;
}
.front-numbers .en {
	margin-bottom: 0.5em;
	font-size: 3.4667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
}
.front-numbers h2 {
	margin-bottom: 1em;
	font-size: 4.4vw;
	line-height: 1.3;
}
.front-numbers .box-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.front-numbers .box-wrap > div {
	margin-bottom: 4vw;
	padding: 3.3334vw 0 2.6667vw;
	width: 47.7612%;
	background: #602D6B;
	border-radius: 1.3334vw;
	box-sizing: border-box;
}
.front-numbers .box-wrap > div h3 {
	font-size: 3.3334vw;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.front-numbers .box-wrap > div .code {
	font-size: 17.3334vw;
	color: #F7BB9E;
	line-height: 1;
	letter-spacing: -0.08em;
	text-align: center;
}
.front-numbers .box-wrap > div .text {
	display: none;
}
@media screen and (min-width: 768px) {
	.front-numbers {
		margin-bottom: 40px;
	}
	.front-numbers .section-inner {
		padding: 0 20px;
	}
	.front-numbers .en {
		font-size: 18px;
	}
	.front-numbers h2 {
		font-size: 31px;
	}
	.front-numbers .box-wrap {
		justify-content: start;
	}
	.front-numbers .box-wrap > div {
		margin-left: 2.75%;
		margin-bottom: 60px;
		padding: 26px 4.5834% 32px;
		width: 31.5%;
		border-radius: 10px;
	}
	.front-numbers .box-wrap > div:nth-child(3n+1) {
		margin-left: 0;
	}
	.front-numbers .box-wrap > div h3 {
		font-size: 20px;
	}
	.front-numbers .box-wrap > div .code {
		margin: 0 0 0.1em -20%;
		width: 140%;
		font-size: 100px;
	}
	.front-numbers .box-wrap > div .text {
		display: block;
		color: #fff;
	}
}
@media screen and (min-width: 910px) {
	.front-numbers .box-wrap > div .code {
		font-size: 130px;
	}
}
@media screen and (min-width: 1240px) {
	.front-numbers .section-inner {
		padding: 0;
	}
}

/*------------------------
 * front service
 */
.front-service {
	margin-bottom: 8vw;
}
.front-service .section-inner {
	padding: 0;
}
.front-service .en {
	margin-bottom: 0.5em;
	font-size: 3.4667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
}
.front-service h2 {
	margin-bottom: 0.5em;
	font-size: 4.4vw;
	line-height: 1.3;
}
.front-service .front-service-field {
	position: relative;
	margin-bottom: 7.3334vw;
	padding: 6.6667vw 0 10vw;
	background: #E3C1D4;
}
.front-service .front-service-field:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%,100%);
	display: block;
	border-top: #E3C1D4 6.6667vw solid;
	border-right: transparent 7.1642vw solid;
	border-left: transparent 7.1642vw solid;
}
.front-service .front-service-field h3 {
	margin-bottom: 1.5em;
	font-size: 5.0667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
	text-align: center;
}
.front-service .front-service-field .box-wrap > div {
	padding: 4vw 0;
	width: 89.3334vw;
	background: #1D0A19;
	border-radius: 1.3334vw;
	box-sizing: border-box;
}
.front-service .front-service-field .box-wrap > div + div {
	margin-top: 2.6667vw;
}
.front-service .front-service-field .box-wrap > div h4 {
	margin-bottom: 1em;
	font-size: 4vw;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.front-service .front-service-field .box-wrap > div .icon {
	margin: 0 auto 2.6667vw;
	width: 14.6667vw;
}
.front-service .front-service-field .box-wrap > div .icon img {
	width: 100%;
}
.front-service .front-service-field .box-wrap > div p {
	margin: 0 auto 0.5em;
	width: 83.5821%;
	font-size: 3.6vw;
	color: #fff;
}
.front-service .front-service-field .box-wrap > div .btn-more a:hover {
	background-color: #602D6B;
}
.front-service .front-service-example .section-inner {
	padding: 0;
}
.front-service .front-service-example .section-inner > p {
	font-size: 5.0667vw;
	color: #602D6B;
	line-height: 1;
	text-align: center;
}
.front-service .front-service-example ul {
	margin: 0 auto;
}
.front-service .front-service-example ul li {
	float: left;
	margin-bottom: 4vw;
	width: 50%;
}
.front-service .front-service-example ul li.btn:nth-child(odd) {
	padding-top: 5vw;
	width: 100%;
}
.front-service .front-service-example ul li.btn:nth-child(even) {
	margin-top: 10.6667vw;
}
.front-service .front-service-example ul li .icon {
	margin: 0 auto 1.3334vw;
	width: 64.1792%;
}
.front-service .front-service-example ul li .icon img {
	width: 100%;
}
.front-service .front-service-example ul li p {
	font-size: 3.4667vw;
	line-height: 1.6;
	color: #602D6B;
	text-align: center;
}
@media screen and (min-width: 768px) {
	.front-service {
		margin-bottom: 100px;
	}
	.front-service .section-inner {
		padding: 0;
	}
	.front-service .en,
	.front-service h2 {
		margin-left: 20px;
		margin-right: 20px;
	}
	.front-service .en {
		font-size: 18px;
	}
	.front-service h2 {
		font-size: 31px;
	}
	.front-service .front-service-field {
		margin-bottom: 66px;
		padding: 40px 20px 40px;
	}
	.front-service .front-service-field:after {
		border-top: #E3C1D4 50px solid;
		border-right: transparent 48px solid;
		border-left: transparent 48px solid;
	}
	.front-service .front-service-field h3 {
		margin-bottom: 80px;
		font-size: 28px;
	}
	.front-service .front-service-field .box-wrap {
		display: flex;
		justify-content: space-between;
	}
	.front-service .front-service-field .box-wrap > div {
		position: relative;
		padding: 25px 0 59px;
		width: 21.6667%;
		border-radius: 10px;
	}
	.front-service .front-service-field .box-wrap > div + div {
		margin-top: 0;
	}
	.front-service .front-service-field .box-wrap > div h4 {
		margin-bottom: 1.5em;
		font-size: 18px;
	}
	.front-service .front-service-field .box-wrap > div .icon {
		margin: 0 auto 30px;
		width: 42.3077%;
	}
	.front-service .front-service-field .box-wrap > div p {
		margin-bottom: 1em;
		width: 80.7693%;
		font-size: 16px;
	}
	.front-service .front-service-field .box-wrap > div .btn-more {
		position: absolute;
		left: 50%;
		bottom: 25px;
		transform: translate(-50%,0);
		max-width: 90%;
	}
	.front-service .front-service-example {
		margin-bottom: 66px;
	}
	.front-service .front-service-example .section-inner > p {
		margin-bottom: 1em;
		font-size: 28px;
	}
	.front-service .front-service-example ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin: 0 auto 26px;
	}
	.front-service .front-service-example ul li {
		float: none;
		width: 20%;
	}
	.front-service .front-service-example ul li.btn {
		width: 100%;
	}
	.front-service .front-service-example ul li.btn:nth-child(odd) {
		padding-top: 0;
	}
	.front-service .front-service-example ul li.btn:nth-child(even) {
		margin-top: 0;
	}
	.front-service .front-service-example ul li .icon {
		margin: 0 auto 10px;
		width: 68.75%;
	}
	.front-service .front-service-example ul li p {
		font-size: 18px;
		color: #602D6B;
		text-align: center;
	}
}
@media screen and (min-width: 1240px) {
	.front-service .en,
	.front-service h2 {
		margin-left: 0;
		margin-right: 0;
	}
	.front-service .front-service-field {
		padding: 60px 0 40px;
	}
}

/*------------------------
 * front client
 */
.front-client {
	margin-bottom: 12vw;
}
.template .front-client { margin-top: 8vw; }
.front-client .section-inner {
	padding: 0;
	max-width: 100%;
}
.front-client h2 {
	font-size: 5.0667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
	text-align: center;
}
.front-client ul {
	display: flex;
	flex-wrap: wrap;
}
.front-client ul li,
.template .front-client ul li {
	position: relative;
	padding: 0;
	width: 33.3333%;
}
.front-client ul li:before,
.front-client ul li:after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	z-index: 2;
}
.front-client ul li:before {
	width: 4.5334vw;
	height: 0;
	border-top: #602D6B 1px solid;
	transform: translate(50%,50%);
}
.front-client ul li:after {
	width: 0;
	height: 4.5334vw;
	border-left: #602D6B 1px solid;
	transform: translate(50%,50%);
}
.front-client ul li:nth-child(3n+3):before,
.front-client ul li:nth-child(3n+3):after,
.front-client ul li:nth-child(n+13):before,
.front-client ul li:nth-child(n+13):after {
	display: none;
}
.front-client ul li img { width: 100%; }
.heading-area.clients + .front-client { margin-bottom: 0; }
.heading-area.clients + .front-client h2,
.heading-area.clients + .front-client .btn-more { display: none; }
.clients-list p { margin-bottom: 3em; }
@media screen and (min-width: 768px) {
	.front-client {
		margin-bottom: 170px;
	}
	.front-client .section-inner {
		max-width: 1200px;
	}
	.template .front-client { margin-top: 120px; }
	.front-client h2 {
		font-size: 28px;
	}
	.front-client ul li,
	.template .front-client ul li {
		width: 20%;
	}
	.front-client ul li:before {
		width: 34px;
		border-top: #602D6B 2px solid;
	}
	.front-client ul li:after {
		height: 34px;
		border-left: #602D6B 2px solid;
	}
	.front-client ul li:nth-child(3n+3):before,
	.front-client ul li:nth-child(3n+3):after,
	.front-client ul li:nth-child(n+13):before,
	.front-client ul li:nth-child(n+13):after {
		display: block;
	}
	.front-client ul li:nth-child(5n+5):before,
	.front-client ul li:nth-child(5n+5):after,
	.front-client ul li:nth-child(n+11):before,
	.front-client ul li:nth-child(n+11):after {
		display: none;
	}
	.front-client ul li img { width: 100%; }
	.clients-list h3 { max-width: 600px; }
	.clients-list p { margin-bottom: 4.5em; }
}

/*------------------------
 * front news
 */
.front-news {
	margin-bottom: 12vw;
}
.front-news .section-inner {
	padding: 0;
}
.front-news h2 {
	margin-bottom: 0.8em;
	font-size: 5.0667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
	text-align: center;
}
.front-news ul { margin-bottom: 2em; }
.front-news ul li { position: relative; }
.front-news ul li + li {
	margin-top: 2vw;
}
.front-news ul li .date {
	display: block;
	margin-bottom: 0.5em;
	font-size: 3.7334vw;
	font-weight: bold;
	line-height: 1;
}
.front-news ul li .category {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	width: 8em;
	padding: 0.3em 0.5em 0.4em;
	box-sizing: border-box;
	border-radius: 2.1334vw;
	font-size: 2.6667vw;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.news-category-0 { background-color: #602D6B; }
.news-category-1 { background-color: #F29B7E;}
.news-category-2 { background-color: #BA6594;}
.news-category-3 { background-color: #58508f;}
.news-category-4 { background-color: #c24964;}
.news-category-5 { background-color: #cb7147;}
.news-category-6 { background-color: #12679e;}
.news-category-7 { background-color: #1C2A53;}
.news-category-8 { background-color: #C61E57;}
.news-category-9 { background-color: #964F90;}

.front-news ul li .subject {
	display: block;
	font-size: 3.4667vw;
	line-height: 1.55;
	text-align: justify;
}
@media screen and (min-width: 768px) {
	.front-news {
		margin-bottom: 80px;
	}
	.front-news .section-inner {
		padding: 0 20px;
	}
	.front-news h2 {
		margin-bottom: 80px;
		font-size: 28px;
	}
	.front-news ul {
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
	}
	.front-news ul li {
		position: relative;
		margin: 0 0 60px 2.5%;
		width: 31.6667%;
	}
	.front-news ul li + li { margin-top: 0; }
	.front-news ul li:nth-child(3n+1) {
		margin-left: 0;
	}
	.front-news ul li .date {
		display: block;
		margin-bottom: 0.8em;
		font-size: 20px;
	}
	.front-news ul li .category {
		border-radius: 8px;
		font-size: 10px;
	}
	.front-news ul li .subject {
		font-size: 18px;
	}
}
@media screen and (min-width: 1240px) {
	.front-news .section-inner {
		padding: 0;
	}
}

/*------------------------
 * .news-list
 */
.news-list {
	margin-bottom: 10.6666;
}
.news-list ul li {
	position: relative;
	padding: 4vw;
	border: #602d6b 1px solid;
	border-radius: 1.6vw;
}
.news-list ul li a {
	color: #000 !important;
}
.news-list ul li + li {
	margin-top: 5.3334vw;
}
.news-list ul li .date {
	display: block;
	margin-bottom: 0.5em;
	font-size: 3.7334vw;
	font-weight: bold;
	line-height: 1;
	color: #602d6b;
}
.news-list ul li .category {
	position: absolute;
	right: 4vw;
	top: 3.3334vw;
	display: block;
	width: 8em;
	padding: 0.3em 0.5em 0.4em;
	box-sizing: border-box;
	border-radius: 2.1334vw;
	font-size: 2.6667vw;
	color: #fff;
	line-height: 1;
	text-align: center;
}
.news-list ul li .subject {
	display: block;
	font-size: 3.4667vw;
	line-height: 1.55;
	text-align: justify;
	color: #000;
}
@media screen and (min-width: 768px) {
	.news-list {
		margin-bottom: 80px;
	}
	.news-list ul {
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
	}
	.news-list ul li {
		position: relative;
		margin: 0 0 40px 3.4483%;
		padding: 15px;
		width: 31.0345%;
		border-radius: 6px;
		box-sizing: border-box
	}
	.news-list ul li + li { margin-top: 0; }
	.news-list ul li:nth-child(3n+1) {
		margin-left: 0;
	}
	.news-list ul li .date {
		display: block;
		margin-bottom: 0.8em;
		font-size: 20px;
	}
	.news-list ul li .category {
		right: 15px;
		top: 15px;
		border-radius: 8px;
		font-size: 10px;
	}
	.news-list ul li .subject {
		font-size: 18px;
	}
}
@media screen and (min-width: 1240px) {
	.news-list .section-inner {
		padding: 0;
	}
}

/*------------------------
 * front banner
 */
.front-banner {
	margin-bottom: 12vw;
}
.front-banner .section-inner {
	padding: 0;
	max-width: 100%;
}
.front-banner .banner-slider {
	overflow: visible;
	margin: 0 auto;
	width: 100%;
}
.front-banner .slick-slide {
	padding: 0 2.6667vw;
	width: 48vw;
}
.front-banner .slick-slide img {
	margin: 0 auto;
	width: 100%;
}
.front-banner .slick-dots {
	bottom: auto;
}
.front-banner .slick-dots li {
	margin: 0 0.6667vw;
	width: 2.6667vw;
	height: 2.6667vw;
}
.front-banner .slick-dots li button {
	padding: 0;
	background-color: #BA6594;
	width: 2.6667vw;
	height: 2.6667vw;
	border-radius: 10px;
}
.front-banner .slick-dots li.slick-active button {
	background-color: #1D0A19;
}
.front-banner .slick-dots li button::before {
	content: '';
}
@media screen and (min-width: 768px) {
	.front-banner {
		margin-bottom: 90px;
	}
	.front-banner .section-inner {
		padding: 0;
	}
	.front-banner .banner-slider {
		overflow: visible;
		margin: 0 auto;
		width: 82.5%;
	}
	.front-banner .slick-slide {
		width: 300px;
	}
	.front-banner .slick-prev,
	.front-banner .slick-next {
		margin-top: 0;
		width: 50px;
		height: 100px;
		border-radius: 0;
		transform: translate(0,-50%);
		opacity: 1;
	}
	.front-banner .slick-prev:hover,
	.front-banner .slick-next:hover {
		opacity: 0.5;
	}

	.front-banner .slick-prev {
		left: -9%;
	}
	.front-banner .slick-next {
		right: -9%;
	}
	.front-banner .slick-prev:before,
	.front-banner .slick-next:before {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: cover;
		opacity: 1;
	}
	.front-banner .slick-prev:before {
		background-image: url("./img/btn_prev.svg");
	}
	.front-banner .slick-next:before {
		background-image: url("./img/btn_next.svg");
	}
}

/*------------------------
 * front lawyer
 */
.front-lawyer h2 {
	text-align: center;
}
.lawyers {
	font-size: 0;
}
.lawyers .lawyer {
	display: inline-block;
	background: #EFEFEF;
	width: 45%;
	vertical-align: top;
	margin: 0 2% 40px;
}
.lawyers .lawyer img {
	width: 100%;
	height: auto;
}
.lawyers .lawyer .figcaption-inner {
	text-align: center;
	padding: 20px 0;
}
.lawyers .lawyer h3 {
	color: #333;
}
.lawyers .lawyer p {
	color: #333;
}
.lawyers figure {
	position: relative;
	overflow: hidden;
}
.lawyers figure a {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	position: absolute;
	z-index: 1;
}
.lawyer .img-wrap {
	overflow: hidden;
	width: 100%;
	height: 100%;
}
.lawyer .img-wrap img {
	display: block;
	transition-duration: 0.3s;
}
.lawyer figure:hover .img-wrap img {
	transform: scale(1.1);
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.lawyer figure:hover img {
	opacity: 0.4;
}
.lawyer figure:hover h3 {
	background-color: rgba(255,255,255,0);
}
.lawyer figure:hover figcaption {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

@media screen and (min-width: 480px) {
	.lawyers .lawyer {
		vertical-align: top;
		margin: 0 2% 40px;
	}
}
@media screen and (min-width: 768px) {
	.lawyers .lawyer {
		width: 29%;
	}
	.lawyers_list_04.lawyers .lawyer {
		width: 21%;
	}
}
@media screen and (min-width: 991px) {
	.lawyers {
		margin: 0 auto;
		max-width: 890px;
	}
	.lawyers .lawyer {
		width: 100%;
		max-width: 260px;
	}
	.lawyers_list_04.lawyers .lawyer {
		width: 100%;
		max-width: 186px;
	}
}

/*------------------------
 * front book
 */
.front-book h2 {
	text-align: center;
}
.front-book .section-inner { padding: 0; }
.books {
	margin: 0 auto;
	width: 89.3334vw;
}
.books .book {
	margin: 0 0 13.3334vw;
	width: 100%;
	background: #fff;
}
.books .book img {
	width: 100%;
	height: auto;
}
.books figure {
	position: relative;
	overflow: hidden;
}
.books figure a {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	position: absolute;
	z-index: 1;
}
.book .img-wrap {
	margin-bottom: 2.9334vw;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 1.3334vw;
}
.book .img-wrap img {
	display: block;
	transition-duration: 0.3s;
}
.book figure:hover .img-wrap img {
	transform: scale(1.1);
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.book figure:hover img {
	opacity: .4;
}
.books .book .figcaption-inner {
	padding: 4.6667vw;
	background: #F7BB9E;
	border-radius: 1.3334vw;
}
.books .book p { color: #222222; }
@media screen and (min-width: 768px) {
	.books {
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
		width: auto;
		max-width: 1200px;
	}
	.books .book {
		position: relative;
		margin-bottom: 100px;
		margin-right: 3.75%;
		width: 30.8334%;
	}
	.books .book:before {
		content: '';
		position: absolute;
		left: 0;
		bottom: 0;
		display: block;
		width: 100%;
		height: 30%;
		background: #F7BB9E;
		border-radius: 6px;
	}
	.books .book:nth-child(3n) { margin-right: 0; }
	.book .img-wrap {
		margin-bottom: 5px;
		border-radius: 6px;
	}
	.books .book .figcaption-inner {
		padding: 20px 20px 30px;
		border-radius: 6px;
	}
}

/*------------------------
 * front google map
 */
.google-maps {
	position: relative;
	height: 107.3334vw;
	overflow: hidden;
}
.google-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
@media screen and (min-width: 768px) {
	.google-maps {
		height: 525px;
	}
}

/*------------------------
 * 固定ページ
 */
.temp-image {
	width: 100%;
	position: relative;
	overflow: hidden;
	z-index: 0;
	background-position: center center;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
	height: 200px;
}
.temp-image:before {
	z-index: 0;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color:rgba(0,0,0,0.25);
}
.temp-inner {
	display: block;
	position: absolute;
	line-height: 1.5;
	width: 100%;
	text-align: center;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	margin: auto;
}
.temp-inner h2 {
	color: #fff;
	font-size: 28px;
	font-weight: 600;
}
.template h3 {
	margin-bottom: 4.8vw;
	padding: 0.7em 0.76em 0.8em;
	background: #1D0A19;
	border-radius: 0 0 2.1334vw 0;
	font-size: 4.4vw;
	font-weight: bold;
	color: #FFF;
	line-height: 1.2;
}
.template h3 span { font-size: 76%; }
.template p + h3 { margin-top: 0.5em; }
.template .article h3,
.related-companies .related-company h3 {
	border: none;
	padding: 0;
}
.template .section-inner-black h3 {
	padding: 0;
	text-align: center;
}

.template h3.ttl-enjp {
	margin-bottom: 5.3334vw;
	padding: 0;
	background: transparent;
	text-align: center;
}
.template h3.ttl-enjp .en {
	display: block;
	margin-bottom: 0.5em;
	font-size: 2.4vw;
	color: #602D6B;
}
.template h3.ttl-enjp .ja {
	display: block;
	font-size: 4.4vw;
	color: #1D0A19;
}

.template h3.ttl-2line {
	margin-bottom: 5.3334vw;
	padding: 0;
	background: transparent;
	text-align: center;
}
.template h3.ttl-2line .line1 {
	display: block;
	margin-bottom: 0.5em;
	font-size: 3.4667vw;
	color: #602D6B;
}
.template h3.ttl-2line .line2 {
	display: block;
	font-size: 6.9334vw;
	color: #1D0A19;
}


.template h3.ttl-white {
	margin-bottom: 10.6667vw;
	padding: 0;
	background: transparent;
	font-size: 5.6001vw;
	color: #1D0A19;
	text-align: center;
}


.template h4 {
	font-size: 3.6vw;
	font-weight: bold;
}
.template h4.border-left {
	position: relative;
	margin-bottom: 4vw;
	padding-left: 3.4667vw;
	font-size: 4.4vw;
	font-weight: bold;
}
.template h4.border-left:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 0;
	height: 85%;
	transform: translate(0,-46%);
	display: block;
	border-left: #1D0A19 2px solid;
}
.template .purple-section h4.border-left:before {
	border-left-color: #fff;
}
.template h4.border-left-orange {
	position: relative;
	margin-bottom: 6.6667vw;
	padding-left: 4vw;
	font-size: 4.1334vw;
	font-weight: bold;
}
.template h4.border-left-orange:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 0;
	height: 70%;
	transform: translate(0,-46%);
	display: block;
	border-left: #f29b7e 1.3334vw solid;
}

.template p {
	font-size: 3.6vw;
	line-height: 1.8;
}
.template p a {
	color: #BA6594;
}
.template .purple-section p a {
	color: #f7bb9e;
}
.template p.big-title {
	font-size: 22px;
	font-weight: 600;
}
.template ul.layout-column4 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
	width: 89.3334vw;
}
.template ul.layout-column4 li {
	margin-bottom: 6vw;
	padding: 0;
	width: 40.6667vw;
}
.template ul.layout-column4 li a {
	color: #000000;
}
.template ul.layout-column4 li h4 {
	margin-bottom: 0.5em;
	font-size: 3.6vw;
	line-height: 1;
	text-align: center;
}
.template ul.layout-column4 li h4.height2line {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0;
	height: 4em;
	line-height: 1.4;
}
.template ul.layout-column4 li div {
	margin-bottom: 3.3334vw;
	overflow: hidden;
	border-radius: 1.0667vw;
}
.template ul.layout-column4 li p {
	margin-top: 3.3334vw;
	line-height: 1.6;
}

.template ul.layout-column3 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
	width: 89.3334vw;
}
.template ul.layout-column3 li {
	margin-bottom: 6vw;
	padding: 0;
	width: 100%;
}
.template ul.layout-column3 li a {
	color: #000000;
}
.template ul.layout-column3 li h4 {
	margin-left: 46.6667vw;
	margin-bottom: 0.5em;
}
.template ul.layout-column3 li h4,
.template ul.layout-column3 li h4 a {
	font-size: 3.6vw;
	line-height: 1;
	text-align: left;
}
.template ul.layout-column3 li div {
	float: left;
	margin-bottom: 0;
	overflow: hidden;
	border-radius: 1.0667vw;
	width: 40.6667vw;
}
.template ul.layout-column3 li p {
	margin-top: 3.3334vw;
	margin-left: 46.6667vw;
	line-height: 1.4;
}
.template ul.layout-column3.width100 li + li {
	margin-top: 2vw;
}
.template ul.layout-column3.width100 li div {
	float: none;
	margin-bottom: 0;
	overflow: hidden;
	border-radius: 1.0667vw;
	width: 100%;
}
.template ul.layout-column3.width100 li p {
	margin-top: 3.3334vw;
	margin-left: 0;
	line-height: 1.4;
}

.template .layout-datalist {
	margin-left: auto;
	margin-right: auto;
	width: 89.3334vw;
}
.template .layout-datalist li {
	margin-bottom: 8vw;
	padding: 0;
	width: auto;
	text-align: center;
}
.template .layout-datalist li h4 {
	display: inline-block;
	margin-bottom: 1em;
	padding: 0 1em;
	border-left: #F29B7E 0.4vw solid;
	border-right: #F29B7E 0.4vw solid;
	font-size: 4.1334vw;
	line-height: 1;
}
.template .layout-datalist li h5 {
	margin-bottom: 1em;
	font-size: 3.6vw;
	font-weight: bold;
	line-height: 1;
	text-align: left;
}
.template .layout-datalist li p {
	font-size: 3.6vw;
	text-align: left;
}

.template ol.practices-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
	width: 89.3334vw;
}
.template ol.practices-list li {
	margin-bottom: 6vw;
	padding: 0;
	width: 40.6667vw;
}
.template ol.practices-list li h4 {
	position: relative;
	margin-bottom: -2.6667vw;
}
.template ol.practices-list li p {
	margin-top: 3.3334vw;
	line-height: 1.6;
}


.template img {
	width: 100%;
	height: auto;
}
.template .contact-content img {
	width: auto;
	height: auto;
}

.border-top-black {
	margin-top: 1.5em;
	padding-top: 1.5em;
	border-top: #250b22 1px solid;
}
.border-bottom-black {
	margin-bottom: 1.5em;
	padding-bottom: 1.5em;
	border-bottom: #250b22 1px solid;
}
.border-top-orange {
	margin-top: 1.5em;
	padding-top: 1.5em;
	border-top: #F7BB9E 1px solid;
}
.border-bottom-orange {
	margin-bottom: 1.5em;
	padding-bottom: 1.5em;
	border-bottom: #F7BB9E 1px solid;
}
.border-top-purple {
	margin-top: 1.5em;
	padding-top: 1.5em;
	border-top: #602d6b 1px solid;
}
.border-bottom-purple {
	margin-bottom: 1.5em;
	padding-bottom: 1.5em;
	border-bottom: #602d6b 1px solid;
}

.both-border {
	text-align: center;
}
.both-border div {
	position: relative;
	display: inline-block;
	margin: 20px 0;
}
.both-border p,
.red-section p {
	font-size: 16px;
}
.red-section.normal p {
	font-size: 13px;
}
.both-border div:before,
.both-border div:after {
  content: '';
  position: absolute;
  display: inline-block;
  width: 180px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  border-radius: 2px;
}
.both-border.white div:before,
.both-border.white div:after {
  background-color: #fff;
}
.both-border.black div:before,
.both-border.black div:after {
  background-color: #333;
}
.both-border div:before {
  top: -30px;
}
.both-border div:after {
  bottom: -30px;
}
.img-width250 img {
	max-width: 250px;
	width: 100%;
	height: auto;
}
.img-width300 img {
	max-width: 300px;
	width: 100%;
	height: auto;
}
.img-width350 img {
	max-width: 350px;
	width: 100%;
	height: auto;
}
.img-width400 img {
	max-width: 400px;
	width: 100%;
	height: auto;
}
.img-width800 img {
	max-width: 800px;
	width: 100%;
	height: auto;
}
p.note {
	font-size: 12px;
}
table {
	width: 100%;
	border: none;
	text-align: center;
	margin: 4vw 0 8vw;
}
table thead {
	font-weight: 600;
}
table thead tr {
	background: #fbd6c8 !important;
}
table th,
table td {
	font-size: 3.6vw;
	line-height: 1.4;
}
table thead th,
table thead td {
	padding: 1.3334vw 0;
	vertical-align: middle;
}
table thead th:first-child,
table thead td:first-child {
	vertical-align: middle;
}
table tbody tr td {
	padding: 2.6667vw;
	vertical-align: middle;
}
table tbody tr td:first-child {
	background: #fdeee9;
}
table tr {
	border: 1px solid #602D6B !important;
}

/*タイムチャージ型契約について*/
table.type01 tr { border: none !important; }
table.type01 thead th,
table.type01 thead td {
	background: #BA6594;
	color: #FFF;
	width: 16%;
}
table.type01 thead th:first-child,
table.type01 thead td:first-child {
	background: #602D6B;
	width: 50%;
}
table.type01 tbody tr td {
	background: #f1e0ea;
	border-bottom: #AF96B5 1px solid;
}
table.type01 tbody tr:last-child td {
	border-bottom: 0;
}
table.type01 tbody tr td:first-child {
	background: #dfd5e1;
}

/*他社等との比較 オレンジ背景用*/
table.type02 tr { border: none !important; }
table.type02 th,
table.type02 td { background-color: #FFF; }
table.type02 thead tr th {
	border-bottom: #1a1a1a 1px solid;
}
table.type02 thead tr th:nth-child(2) {
	background: #602D6B;
	color: #FFF;
}
table.type02 thead tr th:nth-child(3),
table.type02 thead tr th:nth-child(4) {
	background: #f29b7e;
	color: #FFF;
}
table.type02 tbody tr td {
	border-bottom: #1a1a1a 1px solid;
}
table.type02 tbody tr td:first-child {
	background: #fff;
}
table.type02 tbody tr:last-child td {
	border-bottom: 0;
}
table.type02 tbody tr td:nth-child(2) {
	background: #f1e0ea;
}

/*SEO (IT技術) 	仮処分 (法的手続)*/
table.type03 tr { border: none !important; }
table.type03 thead tr th {
	background: #f7bb9e;
}
table.type03 tbody tr td {
	background: #fdf1ec;
	border-bottom: #1a1a1a 1px solid;
}
table.type03 tbody tr:last-child td {
	border-bottom: 0;
}
table.type03 tbody tr td:nth-child(1) {
	background: #f7bb9e;
	font-weight: bold;
}
table.type03 tbody tr:nth-child(2) td:nth-child(3),
table.type03 tbody tr:nth-child(3) td:nth-child(3) {
	background: #f29b7e;
	color: #fff;
}

/*他社等との比較 紫背景用*/
table.type04 tr { border: none !important; }
table.type04 thead tr th {
	background: #fff;
	border-bottom: #1a1a1a 1px solid;
}
table.type04 thead tr th:nth-child(2) {
	background-color: #BA6594;
	color: #fff;
}
table.type04 thead tr th:nth-child(3),
table.type04 thead tr th:nth-child(4) {
	background-color: #F29B7E;
	color: #fff;
}
table.type04 tbody tr td {
	background-color: #FFF;
	border-bottom: #1a1a1a 1px solid;
}
table.type04 tbody tr:last-child td {
	border-bottom: 0;
}
table.type04 tbody tr td:nth-child(1) {
	font-weight: bold;
}
table.type04 tbody tr td:nth-child(2) {
	background-color: #F1E0EA;
}

/*採用情報*/
table.type05 tr { border: none !important; }
table.type05 tbody tr td {
	padding: 1.5em;
	background-color: #FFF;
	box-sizing: border-box;
	border: #bbb5ba 1px solid;
	text-align: left;
}
table.type05 tbody tr td:nth-child(1) {
	width: 25%;
	background-color: #e8e8e8;
	font-weight: bold;
	text-align: center;
}

/*裁判外交渉 裁判所手続*/
table.type06 tr { border: none !important; }
table.type06 thead tr th {
	padding: 1em 0.2em;
	border-bottom: #1a1a1a 1px solid;
	color: #fff;
}
table.type06 thead tr th:nth-child(1) {
	width: 20%;
	background-color: #F7BB9E;
}
table.type06 thead tr th:nth-child(2) {
	width: 40%;
	background-color: #F29B7E;
}
table.type06 thead tr th:nth-child(3) {
	width: 40%;
	background-color: #BA6594;
}
table.type06 tbody tr td {
	padding: 1em 0.2em;
	background-color: #FFF;
	border-bottom: #1a1a1a 1px solid;
	box-sizing: border-box;
	text-align: center;
}
table.type06 tbody tr:last-child td {
	border-bottom: none;
}
table.type06 tbody tr td:nth-child(1) {
	background-color: #F7BB9E;
	font-weight: bold;
}
table.type06 tbody tr td:nth-child(3) {
	background-color: #F1E0EA;
}

/*他社等との比較 白背景用*/
table.type07 tr { border: none !important; }
table.type07 thead tr th {
	padding: 1em 0.2em;
	width: 25%;
	border-bottom: #1a1a1a 1px solid;
	color: #fff;
}
table.type07 thead tr th:nth-child(1) {
	background-color: #fdf1ec;
	color: #1a1a1a;
}
table.type07 thead tr th:nth-child(2) {
	background-color: #BA6594;
}
table.type07 thead tr th:nth-child(3),
table.type07 thead tr th:nth-child(4) {
	background-color: #F29B7E;
}
table.type07 tbody tr td {
	padding: 1em 0.2em;
	background-color: #FDF1EC;
	border-bottom: #1a1a1a 1px solid;
	box-sizing: border-box;
	text-align: center;
}
table.type07 tbody tr:last-child td {
	border-bottom: none;
}
table.type07 tbody tr td:nth-child(1) {
	font-weight: bold;
}
table.type07 tbody tr td:nth-child(2) {
	background-color: #F1E0EA;
}


table th.back-blue,
table td.back-blue {
	background: #2fa8e1;
	color: #fff;
}

.template .white-section a {
	color: #BA6594;
}

.flex + .flex,
.flex + h4,
.flex + p { margin-top: 13.3334vw; }

.width30,
.width49 {
	margin: 0 0 40px;
	text-align: center;
}
.flex img {
	max-width: 720px;
}
.width25,
.width41 { margin-bottom: 6.6667vw; }
.width25 + .width68,
.width47 + .width47,
.width58 + .width39,
.width51 + .width41 {
	margin-top: 6.6667vw;
	margin-bottom: 0;
}
.width25 img,
.width41 img {
	border-radius: 1.3334vw;
}
.width80 {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.template .tagline {}
.template .tagline p.txt-l {
	margin-top: 6.6667vw;
	margin-bottom: 6.6667vw;
}
.template .tagline .logo {
	margin: 10.6667vw auto 0;
	width: 50.4vw;
}

.template .heading-area {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 13.3334vw;
	padding: 8vw 0;
	box-sizing: border-box;
	background: #1D0A19;
	min-height: 24vw;
	text-align: center;
}
.template .heading-area h2 {
	position: relative;
	display: inline-block;
	margin-left: 1.3334vw;
	padding-left: 16vw;
	font-size: 6.1334vw;
	font-weight: bold;
	line-height: 1;
	color: #FFF;
	text-align: left;
}
.template .heading-area h2.icon-none { padding-left: 0; }
.template .heading-area h2:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 12.5334vw;
	height: 12.5334vw;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.template .heading-area h2.icon-about:before { background-image: url("./img/icon/icon_about.svg"); }
.template .heading-area h2.icon-message:before { background-image: url("./img/icon/icon_message.svg"); }
.template .heading-area h2.icon-clients:before { background-image: url("./img/icon/icon_clients.svg"); }
.template .heading-area h2.icon-interview-clients:before { background-image: url("./img/icon/icon_interview-clients.svg"); }
.template .heading-area h2.icon-publishing:before { background-image: url("./img/icon/icon_publishing.svg"); }
.template .heading-area h2.icon-access:before { background-image: url("./img/icon/icon_access.svg"); }
.template .heading-area h2.icon-lawyers:before { background-image: url("./img/icon/icon_lawyers.svg"); }
.template .heading-area h2.icon-practices:before { background-image: url("./img/icon/icon_practices.svg"); }
.template .heading-area h2.icon-practices-corporate:before { background-image: url("./img/icon/icon_practices-corporate.svg"); }
.template .heading-area h2.icon-contractcreation:before { background-image: url("./img/icon/icon_contractcreation.svg"); }
.template .heading-area h2.icon-stockrelatedlaw:before { background-image: url("./img/icon/icon_stockrelatedlaw.svg"); }
.template .heading-area h2.icon-practices-itlaw:before { background-image: url("./img/icon/icon_practices-itlaw.svg"); }
.template .heading-area h2.icon-systemdevelopment:before { background-image: url("./img/icon/icon_systemdevelopment.svg"); }
.template .heading-area h2.icon-termsofservice:before { background-image: url("./img/icon/icon_termsofservice.svg"); }
.template .heading-area h2.icon-operationofofmedia:before { background-image: url("./img/icon/icon_operationofofmedia.svg"); }
.template .heading-area h2.icon-dispute:before { background-image: url("./img/icon/icon_dispute.svg"); }
.template .heading-area h2.icon-practices-reputation:before { background-image: url("./img/icon/icon_practices-reputation.svg"); }
.template .heading-area h2.icon-digitaltattoo:before { background-image: url("./img/icon/icon_digitaltattoo.svg"); }
.template .heading-area h2.icon-identificationofslander:before { background-image: url("./img/icon/icon_identificationofslander.svg"); }
.template .heading-area h2.icon-listedcompanies:before { background-image: url("./img/icon/icon_listedcompanies.svg"); }
.template .heading-area h2.icon-reputation-perpetrator:before { background-image: url("./img/icon/icon_reputation-perpetrator.svg"); }
.template .heading-area h2.icon-listingadspollution:before { background-image: url("./img/icon/icon_listingadspollution.svg"); }
.template .heading-area h2.icon-practices-youtuberlaw:before { background-image: url("./img/icon/icon_practices-youtuberlaw.svg"); }
.template .heading-area h2.icon-snsmalaw:before { background-image: url("./img/icon/icon_snsmalaw.svg"); }
.template .heading-area h2.icon-recruit:before { background-image: url("./img/icon/icon_recruit.svg"); }
.template .heading-area h2.icon-news:before { background-image: url("./img/icon/icon_news.svg"); }
.template .heading-area h2.icon-contact:before { background-image: url("./img/icon/icon_contact.svg"); }
.template .heading-area h2.icon-request:before { background-image: url("./img/icon/icon_request.svg"); }

.template .heading-area p {
	margin: 2em 6.6667vw 0;
	font-size: 3.7334vw;
	line-height: 1.6;
	color: #FFF;
	text-align: left;
}
.template .second-nav {
	margin: 0 auto;
	text-align: center;
}
.template .second-nav p {
	margin-top: 3em;
	margin-bottom: 1.6vw;
	font-size: 5.0667vw;
	font-weight: bold;
	color: #602D6B;
	line-height: 1;
	text-align: center;
}
.template .second-nav nav {
	padding: 2.6667vw 0;
	background: #DDB0C9;
}
.template .second-nav nav ul { margin: 0 auto; }
.template .second-nav nav li {
	display: inline-block;
	margin: 1.2vw 1.6vw;
	padding: 0;
	width: auto;
}
.template .second-nav nav li a {
	display: block;
	padding: 0.80em 0.5em 0.90em 0.5em;
	background: #FFF;
	border-radius: 1.2vw;
	font-size: 2.8001vw;
	text-align: center;
	letter-spacing: -0.01em;
	line-height: 1;
}
.template .second-nav nav li a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.template .second-nav2 {
	margin: 0 auto;
	text-align: center;
}
.template .second-nav2 p {
	margin-top: 1.5em;
	margin-bottom: 4vw;
	font-size: 6.2667vw;
	font-weight: bold;
	color: #1D0A19;
	line-height: 1;
	text-align: center;
}
.template .second-nav2 p span {
	font-size: 3.2vw;
	font-weight: normal;
}
.template .second-nav2 nav {
	margin: 0 auto;
	padding: 4vw 4vw 1.3334vw;
	width: 89.3334vw;
	border: #1D0A19 1px solid;
	box-sizing: border-box;
}
.template .second-nav2 nav ul {
	margin: 0 auto;
	font-size: 0;
	line-height: 1;
}
.template .second-nav2 nav li {
	display: inline-block;
	margin-bottom: 2.6667vw;
	padding: 0;
	width: auto;
	border-left: #1D0A19 1px solid;
	border-right: #1D0A19 1px solid;
}
.template .second-nav2 nav li + li { margin-left: -1px; }
.template .second-nav2 nav li,
.template .second-nav2 nav li a {
	font-size: 3.2vw;
	line-height: 1;
	letter-spacing: -0.01em;
}
.template .second-nav2 nav li a {
	display: inline-block;
	padding: 0 1em;
	text-align: center;
	color: #BA6594;
}
.template .second-nav2 nav li a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.template .btn-area-wrap {
	padding-left: 12px;
	border-left: #1D0A19 2px solid;
}
.template .purple-section .btn-area-wrap {
	border-left-color: #FFF;
}
.template .btn-area-wrap p {
	margin-bottom: 1em;
	font-size: 12px;
	line-height: 1;
}
.template .btn-area {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
}
.template .btn-area .btn {
	width: 68.5334vw;
	height: 14.4vw;
}
.template .btn-area .btn + .btn { margin-top: 4vw; }
.template .btn-area .btn a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-left: 9.7334vw;
	width: 100%;
	height: 100%;
	background: #BA6594;
	box-sizing: border-box;
	border-radius: 2.4vw;
	font-size: 3.7334vw;
	line-height: 1.4;
	color: #FFF;
	text-align: center;
}
.template .btn-area .btn a:hover {
	background: #1D0A19;
	text-decoration: none;
}
.template .btn-area .btn a:before {
	content: '';
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 9.7334vw;
	height: 9.7334vw;
	background-repeat: no-repeat;
	background-size: contain;
}
.template .btn-area .btn.icon-about a:before { background-image: url("./img/icon/btn_icon_about.svg"); }
.template .btn-area .btn.icon-access a:before { background-image: url("./img/icon/btn_icon_access.svg"); }
.template .btn-area .btn.icon-clients a:before { background-image: url("./img/icon/btn_icon_clients.svg"); }
.template .btn-area .btn.icon-contact a:before { background-image: url("./img/icon/btn_icon_contact.svg"); }
.template .btn-area .btn.icon-contractcreation a:before { background-image: url("./img/icon/btn_icon_contractcreation.svg"); }
.template .btn-area .btn.icon-digitaltattoo a:before { background-image: url("./img/icon/btn_icon_digitaltattoo.svg"); }
.template .btn-area .btn.icon-dispute a:before { background-image: url("./img/icon/btn_icon_dispute.svg"); }
.template .btn-area .btn.icon-fee a:before { background-image: url("./img/icon/btn_icon_fee.svg"); }
.template .btn-area .btn.icon-identificationofslander a:before { background-image: url("./img/icon/btn_icon_identificationofslander.svg"); }
.template .btn-area .btn.icon-interview-clients a:before { background-image: url("./img/icon/btn_icon_interview-clients.svg"); }
.template .btn-area .btn.icon-lawyers a:before { background-image: url("./img/icon/btn_icon_lawyers.svg"); }
.template .btn-area .btn.icon-listedcompanies a:before { background-image: url("./img/icon/btn_icon_listedcompanies.svg"); }
.template .btn-area .btn.icon-listingadspollution a:before { background-image: url("./img/icon/btn_icon_listingadspollution.svg"); }
.template .btn-area .btn.icon-message a:before { background-image: url("./img/icon/btn_icon_message.svg"); }
.template .btn-area .btn.icon-news a:before { background-image: url("./img/icon/btn_icon_news.svg"); }
.template .btn-area .btn.icon-operationofofmedia a:before { background-image: url("./img/icon/btn_icon_operationofofmedia.svg"); }
.template .btn-area .btn.icon-practices a:before { background-image: url("./img/icon/btn_icon_practices.svg"); }
.template .btn-area .btn.icon-practices-corporate a:before { background-image: url("./img/icon/btn_icon_practices-corporate.svg"); }
.template .btn-area .btn.icon-practices-itlaw a:before { background-image: url("./img/icon/btn_icon_practices-itlaw.svg"); }
.template .btn-area .btn.icon-practices-reputation a:before { background-image: url("./img/icon/btn_icon_practices-reputation.svg"); }
.template .btn-area .btn.icon-practices-youtuberlaw a:before { background-image: url("./img/icon/btn_icon_practices-youtuberlaw.svg"); }
.template .btn-area .btn.icon-publishing a:before { background-image: url("./img/icon/btn_icon_publishing.svg"); }
.template .btn-area .btn.icon-recruit a:before { background-image: url("./img/icon/btn_icon_recruit.svg"); }
.template .btn-area .btn.icon-reputation-perpetrator a:before { background-image: url("./img/icon/btn_icon_reputation-perpetrator.svg"); }
.template .btn-area .btn.icon-request a:before { background-image: url("./img/icon/btn_icon_request.svg"); }
.template .btn-area .btn.icon-snsmalaw a:before { background-image: url("./img/icon/btn_icon_snsmalaw.svg"); }
.template .btn-area .btn.icon-specialpage a:before { background-image: url("./img/icon/btn_icon_specialpage.svg"); }
.template .btn-area .btn.icon-stockrelatedlaw a:before { background-image: url("./img/icon/btn_icon_stockrelatedlaw.svg"); }
.template .btn-area .btn.icon-systemdevelopment a:before { background-image: url("./img/icon/btn_icon_systemdevelopment.svg"); }
.template .btn-area .btn.icon-termsofservice a:before { background-image: url("./img/icon/btn_icon_termsofservice.svg"); }
.template .btn-area .btn.icon-monolithlawmagazine a {
	background-position: center center;
	background-image: url("./img/icon/btn_icon_monolithlawmagazine.svg");
	background-repeat: no-repeat;
	background-size: 84.2106% auto;
	text-indent: -9999px;
}
.template .btn-area .btn.icon-monolithlawmagazine2 a {
	padding-top: 1.2em;
	padding-left: 0;
	background-position: center 25%;
	background-image: url("./img/icon/btn_icon_monolithlawmagazine.svg");
	background-repeat: no-repeat;
	background-size: 84.2106% auto;
}

.template .btn-area .btn.icon-external a {
	padding-left: 0;
}
.template .btn-area .btn.icon-external a span:after {
	content: '';
	display: inline-block;
	margin-left: 12px;
	width: 15px;
	height: 15px;
	background-image: url("./img/icon/btn_icon_external.svg");
	background-repeat: no-repeat;
	background-size: contain;
}
.template .frame {
	padding: 0.5em;
	border: #1D0A19 1px solid;
}
.template .frame2 {
	padding: 0.5em;
	border: #1D0A19 2px solid;
}
.template .frame2-white {
	padding: 0.5em;
	border: #ffffff 2px solid;
}
.template .frame-border-top {
	margin-top: 10.6667vw;
	padding-top: 10.6667vw;
	border-top: #1D0A19 2px solid;
}
.template .purple-section .frame-border-top {
	border-color: #FFF;
}

.template .frame-corner {
	position: relative;
	padding: 1em;
	text-align: justify;
}
.template .frame-corner:before,
.template .frame-corner:after,
.template .frame-corner-inner:before,
.template .frame-corner-inner:after {
	content: '';
	position: absolute;
	display: block;
	width: 9.3334vw;
	height: 9.3334vw;
	border: #1D0A19 1px solid;
}
.template .frame-corner:before { left: 0; top: 0; border-right: none; border-bottom: none; }
.template .frame-corner:after { right: 0; top: 0; border-left: none; border-bottom: none; }
.template .frame-corner-inner:before { left: 0; bottom: 0; border-right: none; border-top: none; }
.template .frame-corner-inner:after { right: 0; bottom: 0; border-left: none; border-top: none; }

.template .purple-base {
	padding: 6.6667vw 4vw;
	background-color: #602D6B;
}
.template .purple-base p {
	color: #FFF;
}

.template .white-base {
	padding: 0 4vw 4vw;
	background-color: #FFF;
	border-radius: 1.3334vw;
}
.template .white-base ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.template .white-base li {
	margin-bottom: 0;
	width: 45%;
}
.template .white-base li h4 {
	margin-top: 0 !important;
}
.template .white-base li h4,
.template .white-base li p {
	font-size: 3.6vw;
}

.template .text-and-btn {}
.template .text-and-btn p {
	margin-bottom: 4vw;
	font-size: 3.6vw;
	color: #222222;
	text-align: center;
}

@media screen and (min-width: 768px) {
	table {
		margin: 20px 0 60px;
	}
	table thead th,
	table thead td {
		padding: 5px 0;
	}
	table tbody tr td {
		padding: 10px;
	}
	table th,
	table td {
		font-size: 18px;
	}

	table.type05 tbody tr td:nth-child(1) {
		width: 18%;
	}

	table.type06 thead tr th {
		padding: 1em;
	}
	table.type06 tbody tr td {
		padding: 1em;
	}

	.template h3.ttl-enjp {
		margin-bottom: 35px;
	}
	.template h3.ttl-enjp .en {
		font-size: 18px;
	}
	.template h3.ttl-enjp .ja {
		font-size: 36px;
	}

	.template h3.ttl-2line {
		margin-bottom: 35px;
	}
	.template h3.ttl-2line .line1 {
		font-size: 20px;
	}
	.template h3.ttl-2line .line2 {
		font-size: 36px;
	}

	.template h3.ttl-white {
		margin-bottom: 80px;
		font-size: 33px;
	}

	.template h4 {
		font-size: 16px;
	}

	.template .purple-base {
		padding: 45px 30px;
	}

	.template .white-base ul {
		display: flex;
		justify-content: space-between;
	}
	.template .white-base ul li {
		width: 20.7%;
		padding: 0;
	}

	.template ul.layout-column4 { width: auto; }
	.template ul.layout-column4 li {
		margin-bottom: 0;
		width: 21.1207%;
	}
	.template ul.layout-column4 li h4 {
		margin-bottom: 1em;
		font-size: 20px;
	}
	.template ul.layout-column4 li div {
		margin-bottom: 20px;
		border-radius: 6px;
	}
	.template ul.layout-column4 li p { margin-top: 16px; }

	.template ul.layout-column3 {
		max-width: 855px;
	}
	.template ul.layout-column3 li {
		margin-bottom: 0;
		width: 28.655%;
	}
	.template ul.layout-column3 li h4 {
		margin-bottom: 1em;
		margin-left: 0;
	}
	.template ul.layout-column3 li h4,
	.template ul.layout-column3 li h4 a {
		font-size: 20px;
		text-align: center;
	}
	.template ul.layout-column3 li div {
		float: none;
		margin-bottom: 20px;
		border-radius: 6px;
		width: 100%;
	}
	.template ul.layout-column3 li p {
		margin-top: 16px;
		margin-left: 0;
		line-height: 1.6;
	}

	.template ul.layout-column3.width100 {
		max-width: 100%;
	}
	.template ul.layout-column3.width100 li {
		margin-bottom: 0;
		width: 29.8276%;
	}
	.template ul.layout-column3.width100 li + li {
		margin-top: 0;
	}
	.template ul.layout-column3.width100 li div {
		margin-bottom: 16px;
		border-radius: 6px;
	}
	.template ul.layout-column3.width100 li p {
		margin-top: 16px;
		line-height: 1.6;
	}

	.template .layout-datalist {
		width: auto;
	}
	.template .layout-datalist li {
		display: flex;
		justify-content: space-between;
		margin-bottom: 35px;
	}
	.template .layout-datalist li h4 {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-right: 30px;
		margin-bottom: 0;
		padding: 0;
		min-width: 28.8794%;
		border-left: none;
		border-right-width: 3px;
		font-size: 26px;
		line-height: 1.2;
	}
	.template .layout-datalist.valign-top li h4 {
		align-items: start;
	}
	.template .layout-datalist.valign-top li h4 span {
		display: inline-block;
		margin-right: 25px;
		width: 100%;
		padding: 0.8em 0;
		border-top: #140713 1px solid;
		border-bottom: #140713 1px solid;
		text-align: center;
	}
	.template .layout-datalist li h5 {
		font-size: 20px;
	}
	.template .layout-datalist li p {
		font-size: 16px;
		line-height: 2;
	}

	.template ol.practices-list {
		width: auto;
		max-width: 1100px;
	}
	.template ol.practices-list li {
		margin-bottom: 0;
		width: 20.9091%;
	}
	.template ol.practices-list li h4 { margin-bottom: -18px; }
	.template ol.practices-list li p { margin-top: 16px; }

	.temp-image {
		height: 200px;
	}
	.temp-inner h2 {
		font-size: 36px;
	}
	.both-border p,
	.red-section p {
		font-size: 22px
	}
	.red-section.normal p {
		font-size: 16px
	}
	p.note {
		font-size: 14px;
	}
	.flex {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;
	}
	.flex.reverse {
		flex-direction: row-reverse;
	}
	.flex + .flex,
	.flex + h4,
	.flex + p { margin-top: 80px; }

	.width25 {
		width: 25.8621%;
		margin: 0;
		text-align: left;
	}
	.width41 {
		width: 41.3794%;
		margin: 0;
		text-align: left;
	}
	.width39 {
		width: 39.0477%;
		margin: 0;
		text-align: left;
	}
	.width47 {
		width: 47.4138%;
		margin: 0;
		text-align: left;
	}
	.width58 {
		width: 57.1429%;
		margin: 0;
		text-align: left;
	}
	.width25 + .width68,
	.width47 + .width47,
	.width58 + .width39,
	.width51 + .width41 { margin-top: 0; }
	.width25 img,
	.width41 img {
		border-radius: 8px;
	}
	.width51 {
		width: 51.7242%;
		margin: 0;
		text-align: left;
	}
	.width68 {
		width: 68.9656%;
		margin: 0;
		text-align: left;
	}
	.width80 {
		width: 80%;
	}
	.template h3 {
		margin-bottom: 36px;
		padding: 0.7em 0.76em 0.8em;
		border-radius: 0 0 8px 0;
		font-size: 26px;
		text-align: left;
	}

	.template .blue-section h3.under {
		text-align: center;
		border-left: none;
		border-bottom: 3px solid #fff;
	}
	.template .white-section h3 {
		border-bottom: none;
	}
	.template .article h3,
	.related-companies .related-company h3 {
		border: none;
		padding: 0;
	}

	.template h4.border-left {
		margin-bottom: 30px;
		padding-left: 20px;
		font-size: 24px;
	}
	.template h4.border-left-orange {
		margin-bottom: 25px;
		padding-left: 20px;
		font-size: 21px;
	}
	.template h4.border-left-orange:before {
		border-left-width: 10px;
	}


	.template p {
		font-size: 16px;
		line-height: 2;
	}
	.template p.big-title {
		font-size: 26px;
	}

	.template .tagline {
		display: flex;
		justify-content: space-between;
	}
	.template .tagline p.txt-l {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.template .tagline .logo {
		margin: 0;
		padding-top: 95px;
		width: 362px;
	}

	.template .heading-area {
		margin-bottom: 120px;
		padding: 90px 0;
		min-height: 300px;
	}
	.template .heading-area h2 {
		margin-left: -10px;
		padding-left: 120px;
		font-size: 46px;
	}
	.template .heading-area h2:before {
		width: 94px;
		height: 94px;
	}
	.template .heading-area p {
		font-size: 16px;
		text-align: center;
	}
	.template .second-nav {
		margin-bottom: 20px;
	}
	.template .second-nav p {
		margin-bottom: 20px;
		font-size: 28px;
	}
	.template .second-nav nav {
		padding: 25px;
	}
	.template .second-nav nav ul {
		max-width: 1000px;
	}
	.template .second-nav nav li {
		margin: 10px;
	}
	.template .second-nav nav li a {
		padding: 0.85em 0.85em 0.95em 0.85em;
		border-radius: 6px;
		font-size: 14px;
	}

	.template .second-nav2 {
		padding-left: 20px;
		padding-right: 20px;
		max-width: 1200px;
		box-sizing: border-box
	}
	.template .second-nav2 p {
		margin-top: 1.5em;
		margin-bottom: 20px;
		font-size: 36px;
	}
	.template .second-nav2 p span {
		font-size: 16px;
	}
	.template .second-nav2 nav {
		padding: 30px 30px 10px;
		width: 100%;
	}
	.template .second-nav2 nav li {
		margin-bottom: 20px;
	}
	.template .second-nav2 nav li,
	.template .second-nav2 nav li a {
		font-size: 16px;
	}

	.template .btn-area {
		max-width: 600px;
	}
	.template .btn-area.align-left {
		margin-left: 0;
		margin-right: auto;
		justify-content: start;
	}
	.template .btn-area .btn {
		width: 47.5%;
		height: 60px;
	}
	.template .btn-area .btn + .btn {
		margin-top: 0;
	}
	.template .btn-area .btn:nth-child(even) {
		margin-left: 5%;
	}
	.template .btn-area .btn:nth-child(n+3) {
		margin-top: 20px;
	}
	.template .btn-area .btn a {
		padding-left: 40px;
		border-radius: 10px;
		font-size: 16px;
	}
	.template .btn-area .btn a:before {
		left: 15px;
		width: 40px;
		height: 40px;
	}

	.template .frame {
		padding: 1.5em;
	}
	.template .frame2 {
		padding: 1.5em;
	}
	.template .frame2-white {
		padding: 1.5em;
	}
	.template .frame-border-top {
		margin-top: 80px;
		padding-top: 80px;
	}

	.template .frame-corner {
		padding: 2em 4.5em;
	}
	.template .frame-corner:before,
	.template .frame-corner:after,
	.template .frame-corner-inner:before,
	.template .frame-corner-inner:after {
		width: 100px;
		height: 100px;
	}



	.template .white-base {
		padding: 0 30px 30px;
		border-radius: 8px;
	}
	.template .white-base li {
		margin-bottom: 0;
		width: 21%;
	}
	.template .white-base li h4 { font-size: 18px; }
	.template .white-base li p {
		font-size: 16px;
	}

	.template .text-and-btn {}
	.template .text-and-btn p {
		margin-bottom: 1em;
		font-size: 29px;
	}
}
@media screen and (min-width: 991px) {
	.width30 {
		width: 40%;
		margin: 0;
	}
	.width70 {
		width: 59%;
	}
	.width50 {
		width: 50%;
		margin: 0;
		text-align: left;
	}
	.width49 {
		width: 49%;
		margin: 0;
		text-align: left;
	}
	.width70 .inline-inner,
	.width50 .inline-inner {
	   padding: 0 20px;
	}
	.flex.reverse .width70 .inline-inner,
	.flex.reverse .width50 .inline-inner {
	   padding: 0 20px 0 0;
	}
}
/*------------------------
 * temp practice
 */
.practice-section .section-inner {
	padding: 40px 1.6667%;
}
.template .planWrap {
	margin: 0 auto;
	max-width: 1000px;
}
.template .planWrap h3 {
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	padding: 0;
	width: 33.3334vw;
	height: 33.3334vw;
	border: #1D0A19 1px solid;
	border-radius: 0;
	font-size: 3.3334vw;
	line-height: 1;
	color: #1D0A19;
}
.template ul.plan {
	margin: 0;
}
.template ul.plan li {
	padding-left: 4.6667vw;
	border-left: #1D0A19 3px solid;
	display: block;
	width: 100%;
	box-sizing: border-box;
}
.template ul.plan li + li { margin-top: 8vw; }
.template .plan h4 {
	display: inline-block;
	margin-bottom: 0.5em;
	padding: 0.3em 0.6em 0.4em;
	background: #1D0A19;
	font-size: 3.3334vw;
	letter-spacing: 0.16em;
	line-height: 1;
	color: #F7BB9E;
	text-align: center;
}
.white-plan { background: #fff; }
.template .plan p,
.template .plan span {
	color: #1D0A19;
}
.template .plan p {
	font-size: 3.6vw;
	line-height: 1.6;
}
.template .plan p + p.txt-s { margin-top: 1em; }
.plan-price {
	margin-bottom: 0.5em;
	font-size: 3.3334vw;
	font-weight: bold;
	line-height: 1;
}
.plan-price span {}
.price-value {
	padding-right: 1em;
}
.price-figure {
	font-size: 500%;
}
.price-term {
	font-size: 155%;
}
.price-tax {}
.price-note {
	padding-left: 0.5em;
	font-size: 77%;
	font-weight: normal;
}
.plan-border {
	border-top: 1px solid #fff;
	padding: 10px 0 0;
	margin: 10px 0 0;
}

.white-plan .plan-border {
	border-top: 1px solid #ccc;
}

.template .fee {
	position: relative;
	margin: 10.6667vw auto 0;
}
.template .fee .fee-inner {
	padding: 5.3334vw 0 10.6667vw;
}
.template .fee h3 {
	margin-bottom: 1.4em;
	padding: 0;
	background: transparent;
	border-radius: 0;
	font-size: 4.4vw;
	line-height: 1.4;
	color: #1D0A19;
	text-align: center;
}
.template .fee p {
	margin: 0 auto;
	width: 86%;
}
.template .fee .btn-area {
	margin-top: 5.3334vw;
}
.template .fee:before,
.template .fee:after,
.template .fee .fee-inner:before,
.template .fee .fee-inner:after {
	content: '';
	position: absolute;
	display: block;
	width: 13.3334vw;
	height: 13.3334vw;
	border: #1D0A19 1px solid;
}
.template .fee:before { left: 0; top: 0; border-right: 0; border-bottom: 0;  }
.template .fee:after { right: 0; top: 0; border-left: 0; border-bottom: 0;  }
.template .fee .fee-inner:before { left: 0; bottom: 0; border-right: 0; border-top: 0;  }
.template .fee .fee-inner:after { right: 0; bottom: 0; border-left: 0; border-top: 0;  }


@media screen and (min-width: 768px) {
	.template ul.plan li {
	}
	.template .planWrap h3 {
		float: left;
		width: 200px;
		height: 200px;
		font-size: 20px;
	}
	.template ul.plan { margin-left: 255px; }
	.template ul.plan li {
		padding-left: 25px;
	}
	.template ul.plan li + li { margin-top: 45px; }
	.template .plan h4 {
		font-size: 18px;
	}
	.template .plan p {
		font-size: 16px;
	}
	.plan-price {
		font-size: 18px;
	}

	.template .fee {
		margin: 60px auto 0;
		max-width: 1000px;
	}
	.template .fee .fee-inner {
		padding: 35px 0 40px;
	}
	.template .fee h3 {
		font-size: 24px;
		line-height: 1;
	}
	.template .fee .btn-area {
		margin-top: 30px;
	}
	.template .fee:before,
	.template .fee:after,
	.template .fee .fee-inner:before,
	.template .fee .fee-inner:after {
		width: 100px;
		height: 100px;
	}
}


/*------------------------
 * temp lawyer
 */
.temp-lawyers figure {
	font-size: 0;
}
.temp-lawyers .img-wrap {
	position: relative;
	display: block;
	width: 100%;
}
.temp-lawyers .img-wrap img {
	border-radius: 1.3334vw;
}
.temp-lawyers figcaption {
	display: inline-block;
	width: 100%;
}
.temp-lawyers .figcaption-inner {
	padding: 20px 0 0;
}
.temp-lawyers .lawyer-single {
	margin: 0 0 50px;
}
@media screen and (min-width: 768px) {
	.temp-lawyers .img-wrap {
		position: relative;
		display: inline-block;
		width: 32.2581%;
		vertical-align: top;
	}
	.temp-lawyers .img-wrap img {
		border-radius: 8px;
	}
	.temp-lawyers figcaption {
		display: inline-block;
		width: 64.5162%;
		vertical-align: top;
	}
	.temp-lawyers .figcaption-inner {
		padding: 0 0 0 40px;
	}
}
@media screen and (min-width: 991px) {
	.temp-lawyer .section-inner {
		max-width: 990px;
	}
	.temp-lawyers .lawyer-single {
		margin: 0 0 100px;
	}
}
/*------------------------
 * temp book
 */
.section-inner.temp-book {
	max-width: 1200px;
}
.template .temp-book h3 {
	margin-bottom: 0;
	padding: 0;
	background: transparent;
	border: none;
	font-size: 5.6001vw;
	color: #1D0A19;
	line-height: 1.42;
}
.template .temp-book .book { background: transparent; }
@media screen and (min-width: 768px) {
	.template .temp-book h3 {
		font-size: 27px;
	}
}

/*------------------------
 * temp digitaltattoo
 */
.template .digitaltattoo h4.brackets {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
  font-weight: 600;
  margin: 0 0 20px;
}
.template .digitaltattoo h4.brackets:before,
.template .digitaltattoo h4.brackets:after {
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.template .digitaltattoo h4.brackets:before {
  border-left: solid 1px #2FA8E1;
  border-top: solid 1px #2FA8E1;
  border-bottom: solid 1px #2FA8E1;
  left: 0;
}
.template .digitaltattoo h4.brackets:after {
  content: '';
  border-top: solid 1px #2FA8E1;
  border-right: solid 1px #2FA8E1;
  border-bottom: solid 1px #2FA8E1;
  right: 0;
}
/*------------------------
 * temp client
 */
.template .client img {
	max-width: 680px;
}
/*------------------------
 * temp site
 */
.temp-site h2 {
	text-align: center;
}
.sites {
	font-size: 0;
}
.sites .site {
	display: inline-block;
	width: 100%;
	background: #fff;
	margin: 0 0 40px;
}
.sites .site img {
	width: 100%;
	height: auto;
}
.sites .site .figcaption-inner {
	padding: 40px;
}
.sites .site h3 {
	font-size: 14px;
}
.sites .site p {
	color: #333;
}
@media screen and (min-width: 480px) {
}
@media screen and (min-width: 768px) {
	.sites .site {
		width: 46%;
		margin: 0 4%;
		vertical-align: top;
		margin: 0 2% 40px;
	}
	.sites .site h3 {
		font-size: 16px;
	}
}
@media screen and (min-width: 991px) {
	.sites .site {
		width: 29%;
	}
}
/*------------------------
 * front article
 */
.front-article h2 {
	text-align: center;
}
.articles {
	font-size: 0;
}
.temp-article h4 {
	margin-bottom: 1.5em;
	font-size: 3.4667vw;
	font-weight: bold;
	color: #150914;
	line-height: 1;
	text-align: center;
}
.temp-article .articles {
	text-align: center;
}
.article {
	width: 100%;
	display: inline-block;
	margin: 0 0 20px;
	vertical-align: top;
}
.article figure {
	position: relative;
	overflow: hidden;
	background: #efefef;
}
.article figure * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all 0.35s ease;
	transition: all 0.35s ease;
}
.article figure figcaption {
	word-break: break-all;
	padding: 10px 0 0;
	text-align: left;
	display: inline-block;
	width: 48%;
	vertical-align: top;
}
.archive-body .article figure figcaption {
	display: inline-block;
	width: 100%;
}
.article figure figcaption .figcaption-inner {
	padding: 5px 10px;
}
.temp-article .article figure figcaption .figcaption-inner {
	padding: 5px 10px 15px;
}
.article figure .cat-area span {
	background: #2FA8E1;
	color: #fff;
	font-size: 12px;
	padding: 2px 10px;
}
.article figure .sup {
	padding: 10px 0 0;
	margin: 5px 0;
	border-top: 1px solid #fff;
	overflow: hidden;
}
.article figure .cat-area {
	float: left;
}
.article figure .date-area {
	float: right;
	padding: 4px 0 0;
}
.article figure .date-area p {
	font-size: 3.6vw;
}
.article figure .cat-area p,
.article figure .cat-area ul,
.article figure .cat-area li {
	display: inline-block;
}
.article figure .cat-area li {
	padding: 2px 8px;
	margin: 0 4px;
	border: 1px solid #684D48;
	border-radius: 10px;
	font-size: 12px;
}
.article figure img {
	width: 100%;
	height: auto;
}
.article .img-wrap {
	overflow: hidden;
	height: 100%;
	display: inline-block;
}
.type_practice_column .article .img-wrap {
	flex-shrink: 0;
	width: 50%;
}
.archive-body .article .img-wrap {
	display: inline-block;
	width: 100%;
}
.article .img-wrap img {
	display: block;
	transition-duration: 0.3s;
}
.article figure:hover .img-wrap img {
	transform: scale(1.1);
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.article figure h3 {
	margin: 0;
	width: 100%;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 1.25px;
	text-align: left;
}
.single-body .article figure h3 {
	font-size: 14px;
}
.article figure a {
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	position: absolute;
	z-index: 1;
}
.article figure:hover img,
.article figure.hover img {
	opacity: 0.4;
}
.article figure:hover h3,
.article figure.hover h3 {
	background-color: rgba(255,255,255,0);
	text-decoration: underline;
}
.article figure:hover p,
.article figure.hover p {
	text-decoration: underline;
}
.article figure:hover figcaption,
.article figure.hover figcaption {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.temp-article .articles { margin-bottom: 0 !important; }
.temp-article .article { background: #FFF !important; }
.temp-article .article figure {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	width: 70.6667vw;
	background: #FFF;
}
.temp-article .article figure .img-wrap {
	border-radius: 1.0667vw;
	overflow: hidden;
}
.temp-article .article figure h3 {
	padding: 0;
	font-size: 3.6vw;
	background: #FFF;
	color: #000;
	text-align: left;
	font-weight: normal;
}
.temp-article .article figure figcaption {
	padding-top: 0;
}
.temp-article .article figure figcaption .figcaption-inner {
	padding: 0 0 0 10px;
}
@media screen and (min-width: 768px) {
	.temp-article h4 {
		font-size: 22px;
	}
	.article {
		width: 30.2%;
		display: inline-block;
		margin: 0 10px;
	}
	.article figure figcaption {
		padding: 10px 0 0;
		width: 100%;
	}
	.article figure h3 {
		font-size: 16px;
	}
	.article figure .cat-area p {
		font-size: 16px;
	}
	.article figure .date-area {
		padding: 4px 0 0;
	}
	.article figure .date-area p {
		font-size: 14px;
	}
	.temp-article .articles { margin-bottom: 30px !important; }
	.temp-article .article figure {
		margin: 0 auto;
		width: 100%;
	}
	.temp-article .article figure .img-wrap {
		border-radius: 6px;
	}
	.temp-article .article figure h3 {
		font-size: 14px;
		line-height: 1.6;
		background: #FFF;
		color: #000;
		text-align: left;
		font-weight: normal;
	}
	.temp-article .article figure figcaption {
		padding-top: 0;
	}
	.temp-article .article figure figcaption .figcaption-inner {
		padding: 0 10px 5px;
	}
}


/*------------------------
 * link 共通
 */
a.link {
	font-size: 16px;
	border-radius: 50px;
	padding: 10px 40px;
	display: block;
	max-width: 220px;
	margin: 0 auto 20px;
}
a.white-link {
	border: 2px solid #fff;
	color: #fff;
}
a.white-link:hover {
	background: #fff;
	color: #2FA8E1;
	text-decoration: none;
}
a.blue-link {
	border: 2px solid #2FA8E1;
	background: #2FA8E1;
	color: #fff;
}
/*.template .white-section a.blue-link {
	color: #2FA8E1;
}
*/
a.blue-link:hover {
	background: #fff;
	color: #2FA8E1;
	text-decoration: none;
}
/*.template .white-section a.blue-link:hover {
	color: #2FA8E1;
}
*/a.simple-link {
	position: relative;
	border-bottom: 2px solid #2FA8E1;
}
a.link.simple-link {
	font-size: 16px;
	padding: 5px 40px 5px 0;
	display: block;
	max-width: 120px;
	margin: 0 0 30px auto;
	border-radius: 0;
}
a.simple-link:after {
	display: block;
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	height: 0;
	border-top: 8px solid #2FA8E1;
	border-left: 8px solid transparent;
	-webkit-transform: rotate(180deg);
			transform: rotate(180deg);
}
a.link.simple-link:hover {
	text-decoration: none;
	opacity: .6;
}
@media screen and (min-width: 480px) {
}
@media screen and (min-width: 768px) {
	a.link.both {
		margin: 0 2% 0 0;
		display: initial;
		width: auto;
	}
	a.link {
		margin: 0;
		display: initial;
		width: auto;
	}
}
/*------------------------
 * contact-area
 */
.contact-area {
	background:#eee;
	margin: 50px 0;
	padding: 10px 0;
}
.contact-content {
	padding: 0 0 4vw;
	background:#fdf3ee;
}
.contact-content dl {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: 90%;
	margin: 0 auto;
	padding: 1.8667vw;
	border-bottom: 1px solid #ccc;
}
.contact-content dt {
	padding: 1.8667vw;
	width: 100%;
	display: flex;
	align-items: center;
	font-size: 3.8667vw;
}
.contact-content dd {
	position: relative;
	width: 100%;
	padding: 1.8667vw;
}
.mwform-radio-field-text {
	font-size: 3.8667vw;
}
.submit-button {
	margin: 10.1334vw 0 0;
	text-align: center;
}
.contact-content input[type="text"],
.contact-content input[type="email"],
.contact-content input[type="tel"],
.contact-content textarea,
.contact-content select {
	-webkit-appearance: none;
	padding: 10px;
	border: 1px solid #999999;
	border-radius:4px;
	width: 90%;
	font-size: 16px;
}
.contact-content p input[type="text"] {
	width: auto;
}
.contact-content select {
	background:#fff url(./img/ico_arrow2.png) no-repeat center right 10px;
	background-size: 8px;
}
.contact-content p {
	position:relative;
	text-align:center;
	margin: 40px 0 0;
}
.contact-content .submitArea {
	position: relative;
	min-height:100px;
	margin: 30px auto;
	text-align:center;
}
input[type="submit"] {
  display: inline-block;
  background: #ba6594;
  border: none;
  color: #fff;
  font-size: 3.8667vw;
  border-radius: 2.4vw;
  margin: 0 auto 20px;
  padding: 16px 40px;
  display: block;
  width: 68.6667vw;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
input[type="submit"]:hover {
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  background: #1D0A19;
  text-decoration: none;
}
.screen-reader-response ul,
.wpcf7-response-output.wpcf7-validation-errors {
	display: none;
}
.screen-reader-response {
	text-align: center;
	color: #f00;
	font-size: 20px;
}
.wpcf7-not-valid-tip {
	color: #f00;
}

.contact-content dt span {
	padding: 0 8px;
	font-size: 2.6667vw;
}
.contact-content span.required {
	color: #f00;
	border: 1px solid #ff0000;
	margin: 0 0 0 10px;
	border-radius: 4px;
}
.contact-content span.option {
	color: rgba(0,116,190,1);
	border: 2px solid rgba(0,116,190,1);
}
input[name="tel"],
input[name="zip"] {
	max-width: 150px;
}
input[name="age"],
input[name="income"],
input[name="budget"] {
	max-width: 50px;
}
.contact-map {
	margin-top: 2.6667vw;
}
@media screen and (min-width: 768px) {
	.contact-content {
		padding: 0 0 40px;
	}
	.submit-button {
		margin: 40px 0 0;
	}
	.contact-content dl {
		padding: 10px;
	}
	.contact-content dt {
		justify-content: space-between;
		padding: 10px;
		width: 30%;
		font-size: 18px;
	}
	.contact-content dt span {
		font-size: 16px;
	}
	.contact-content dd {
		padding: 10px;
		width: 60%;
	}
	.contact-content span.required {
		margin: 0;
	}
	.mwform-radio-field-text {
		font-size: 18px;
	}

	input[type="submit"] {
	  font-size: 16px;
	  border-radius: 10px;
	  margin: 0 auto 20px;
	  padding: 16px 40px;
	  width: 285px;
	}
	.contact-map {
		margin: -20px 0 0 100px;
	}
}

/*------------------------
 * thanks
 */
.thanks h2 {
	text-align: center;
	background: #8E5D3B;
	padding: 10px 0;
	color: #fff;
	font-weight: 600;
}
.thanks a {
	text-decoration: underline;
	color: blue;
}
.thanks .totop {
	text-align: center;
	margin: 40px 0 0;
}
.thanks .totop a {
	border: 1px solid #8E5D3B;
	text-decoration: none;
	color: #fff;
	background: #8E5D3B;
	padding: 10px 20px;
}
.thanks .totop a:hover {
	border: 1px solid #8E5D3B;
	color: #8E5D3B;
	background: #fff;
	padding: 10px 20px;
}

/*------------------------
 * footer
 */
footer {
	background-color: #1D0A19;
}
footer .footer-inner {
	padding: 7.3334vw 0 2.6667vw;
	max-width: 100vw;
	margin: 0 auto;
	color: #fff;
}
footer .footer-inner .footer-box-wrap {
	display: block;
	margin: 0 auto;
}
footer .footer-inner .footer-box-wrap > div {
	float: left;
	margin-bottom: 4.6667vw;
	margin-left: 3.3334vw;
	width: 48vw;
}
footer .footer-inner .footer-box-wrap > div:last-child {
	float: none;
	margin-left: auto;
	margin-bottom: 33.3334vw;
	width: 48.4vw;
}
footer .footer-inner h2 {
	margin: 0 0 0.5em;
	font-size: 3.7334vw;
	line-height: 1;
	color: #F29B7E;
}
footer .footer-inner p,
footer .footer-inner p a {
	font-size: 3.2vw;
	line-height: 1.6;
}
footer .footer-inner p.telnumber a {
	display: block;
	font-size: 6.1334vw;
	line-height: 1;
	letter-spacing: -0.02em;
}
footer .footer-inner p.telnumber span {
	font-size: 3.2vw;
}
footer .footer-inner .btn {
	margin-top: 2.1334vw;
	width: 45.0667vw;
	height: 9.3334vw;
}
footer .footer-inner .btn + .btn { margin-top: 3.2vw; }
footer .footer-inner p.telnumber + .btn { margin-top: 1.3vw; }
footer .footer-inner .btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 0.1em;
	width: 100%;
	height: 100%;
	background: #BA6594;
	box-sizing: border-box;
	border-radius: 1.3334vw;
	font-size: 3.8667vw;
	line-height: 1;
	color: #fff;
}
footer .footer-inner .btn a:hover {
	background: #602D6B;
	text-decoration: none;
}
footer .copyright {
	clear: both;
	font-size: 3.2vw;
	text-align: center;
}
footer .footer-inner small {
	font-size: 2.6667vw;
	color: #fff;
}
@media screen and (min-width: 768px) {
	footer .footer-inner {
		padding: 40px 20px 80px;
		max-width: 1200px;
	}
	footer .footer-inner .footer-box-wrap {
		display: flex;
		justify-content: space-between;
		margin: 0 auto 250px;
	}
	footer .footer-inner .footer-box-wrap > div {
		float: none;
		margin: 0;
		width: 30%;
	}
	footer .footer-inner .footer-box-wrap > div:last-child {
		margin: 0;
		width: 23%;
	}
	footer .footer-inner h2 {
		margin: 0 0 0.8em;
		font-size: 24px;
	}
	footer .footer-inner p,
	footer .footer-inner p a {
		font-size: 22px;
	}
	footer .footer-inner p.telnumber a {
		font-size: 45px;
	}
	footer .footer-inner p.telnumber span {
		font-size: 17px;
	}
	footer .footer-inner .btn {
		margin-top: 20px;
		width: 164px;
		height: 34px;
	}
	footer .footer-inner .btn + .btn { margin-top: 18px; }
	footer .footer-inner .btn a {
		border-radius: 10px;
		font-size: 14px;
	}
	footer .copyright {
		font-size: 13px;
	}
	footer .footer-inner small {
		font-size: 12px;
	}
}
@media screen and (min-width: 1200px) {
	footer .footer-inner {
		padding: 40px 0 80px;
	}
}

/*------------------------
 * footer fixed
 */
.fixed-footer {
	background: #fff;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 98;
	border-top: 2px solid #2FA8E1;
	padding-bottom: 3px;
}
.fixed-footer .inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 0 13px;
	text-align: center;
}
.fixed-footer .inner p,
.fixed-footer .inner a {
	color: #fff;
	font-size: 24px;
	font-weight: 600;
}
.fixed-footer span.left {
	padding: 0 0 0 5px;
}
.fixed-footer .note {
  position: relative;
  display: inline-block;
  margin: 0 10px 0 15px;
  padding: 0px 5px;
  color: #555;
  background: #FFF;
  border: 3px solid #E17C80;
  box-sizing: border-box;
}
.fixed-footer .note:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #FFF;
  z-index: 2;
}
.fixed-footer .note:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -23px;
  margin-top: -10px;
  border: 10px solid transparent;
  border-right: 10px solid #E17C80;
  z-index: 1;
}
.fixed-footer .note span {
  margin: 0;
  padding: 0;
}
.fixed-footer a.link {
	padding: 8px 12px;
	font-size: 11px;
	display: initial;
	border-radius: 10px;
	letter-spacing: 0;
}
.fixed-footer a.link:hover {
	color: #2FA8E1;
	text-decoration: none;
}
.fixed-footer .sp-none {
	display: none;
}
.fixed-footer .pc-none {
	display: initial;
}
.fixed-footer a.white-link.telphone {
	background: #FF8354;
	border: 2px solid #FF8354;
}
.fixed-footer a.white-link.mail {
	background: #2FA8E1;
	border: 2px solid #2FA8E1;
	color: #fff;
}
.fixed-footer a.white-link.mail.seikyuu{
	background: #38ca99;
	border: 2px solid #38ca99;
}
.fixed-footer a.white-link.telphone:hover {
	background: #fff;
	border: 2px solid #ffaf38;
	color: #ffaf38;
}
.fixed-footer a.white-link.mail:hover {
	background: #fff;
	border: 2px solid #2FA8E1;
	color: #2FA8E1;
}
.fixed-footer .telphone {
	margin: 0 2px;
}
.fixed-footer .mail {
	margin: 0 2px;
}
.fixed-footer .right-margin {
	margin: 0 2% 0 0;
}
.fixed-footer .to-side {
	font-size: 0;
}
.fixed-footer .tel-side,
.fixed-footer .contact-side {
	display: inline-block;
	width: 32%;
}
/*.fixed-footer .contact-side {
	width: 46%;
}*/
.fixed-footer .tel-side a {
	background: #E17C80;
	border-radius: 10px;
}
.fixed-footer .tel-side a.link {
	margin: 0;
}
.fixed-footer .tel-left {
	display: inline-block;
	width: 20px;
	 position: relative;
	top: 6px;
	left: 0;
	display: none;
}
.fixed-footer .tel-right {
	display: inline-block;
	width: auto;
	vertical-align: middle;
	  position: relative;
	top: 2px;
}
.fixed-footer p.note-sp {
	font-size: 9px;
	line-height: 0;
	letter-spacing: 0;
}
.fixed-footer p.number {
	font-size: 12px;
	line-height: 0;
	padding: 15px 0 10px;
	letter-spacing: 0;
}
.fixed-footer .to-side a.link {
	padding: 12px 0;
	 display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
}
.fixed-footer .tel-side a.link:hover {
	background: #fff;
	border: 2px solid #E17C80;
	color: #E17C80;
}
.fixed-footer .tel-side a.link:hover p {
	color: #FF8354;
}

@media screen and (min-width: 480px) {
	.fixed-footer a.link {
		font-size: 15px;
	}
	.fixed-footer p.number {
		font-size: 16px;
		display: block;
		margin-top: 7px;
	}
	.fixed-footer .note-sp {
		font-size: 11px;
	}
}
@media screen and (min-width: 768px) {
	.fixed-footer .inner {
		padding: 5px 0;
	}
	.fixed-footer .inner p,
	.fixed-footer .inner a {
		font-size: 15px;
	}
	.fixed-footer .inner p {
		color: #555;
	}
	.fixed-footer a.link {
	}
	.fixed-footer .tel-side, .fixed-footer .contact-side {
		display: initial;
		width: auto;
	}
	.ok {
		padding: 0 10px 0 0;
		font-weight: 500;
	}
	.fixed-footer .tel-side a.white-link {
		border: 2px solid #E17C80;
	}
	.fixed-footer .note:before {
/*      content: ""; */
	  position: absolute;
	  top: 60%;
	  left: -16px;
	  margin-top: -11px;
	  border: 8px solid transparent;
	  border-right: 8px solid #fff;
	}
	.fixed-footer .sp-none {
		display: initial;
	}
	.fixed-footer .pc-none {
		display: none !important;
	}
	.fixed-footer .right-margin {
		margin: 0;
	}
	.fixed-footer a.white-link.mail {
		background: #2FA8E1;
		border: 2px solid #2FA8E1;
		color: #fff;
	}
	.fixed-footer a.white-link.mail.seikyuu{
		background: #38ca99;
		border: 2px solid #38ca99;
		color: #fff;
	}
	.fixed-footer a.white-link.mail:hover {
		background: #fff;
		border: 2px solid #2FA8E1;
		color: #2FA8E1;
	}
	.fixed-footer a.white-link.mail.seikyuu:hover {
		border: 2px solid #38ca99;
		color: #38ca99;
	}
}
@media screen and (min-width: 991px) {
	.fixed-footer .note {
	  margin: 0 15px 0 10px;
	}
	.fixed-footer .inner p,
	.fixed-footer .inner a {
		font-size: 24px;
	}
	.fixed-footer a.link {
		font-size: 18px;
	}
	.fixed-footer .note {
	  font-size: 16px;
	}
}
@media screen and (min-width:1060px) {
.fixed-footer a.link {
	padding: 8px 32px;
}

}


/*---------
 * archive
 */
.archive-body main,
.single-body main {
	background: #fff;
}
.archive-body .heading-area {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 8vw;
	background: #1D0A19;
}
.archive-body .heading-area-inner {
	padding: 13.3334vw 0 12vw;
	text-align: center;
}
.archive-body .heading-area h2 {
	position: relative;
	display: block;
	margin: 0 auto;
	width: 88.8vw;
	line-height: 0.5;
}
.archive-body .heading-area p {
	margin-top: 1em;
	font-size: 3.7334vw;
	font-weight: bold;
	line-height: 1;
	color: #FFF;
}
.archive-body .contents-area,
.single-body .contents-area {
	width: 100%;
	margin: 0 0 30px;
}
.cat-blocks {
	margin: 0 auto;
	padding-top: 8vw;
	font-size: 0;
	width: 100%;
}
.cat-block.blockchain {
	display: none !important;
}
.cat-block {
	position: relative;
}
.cat-block a:hover {
	text-decoration: none;
	opacity: .8;
}
.cat-block + .cat-block {
	margin-top: 1.3334vw;
}
.cat-blocks .catimg-inner h2 {
	font-size: 5.8667vw;
	font-weight: 600;
	color: #602D6B;
	line-height: 1;
}
.cat-blocks > .cat-block:nth-child(even) .catimg-inner h2 {
	color: #fff;
}
.cat-blocks .category-image {
	width: 100%;
	height: 30.1334vw;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.cat-blocks .category-image.non-image {
	margin: 0 auto;
	max-width: 1200px;
}
.archive-body #mainSection .cat-blocks .category-image .catimg-inner {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc( 100% - 8.8vw );
	height: calc( 100% - 8.8vw );
	background: rgba(255,255,255,0.8);
}
.archive-body #mainSection .cat-blocks .cat-block:nth-child(even) .category-image .catimg-inner {
	background: rgba(116,64,126,0.8);
}

.category-archive-title {
	margin: 0 auto;
	padding-top: 8vw;
	height: 20.8vw;
	overflow: hidden;
}
.category-archive-title .category-image {
	width: 100%;
	height: 20.8vw;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	border-radius: 1.0667vw 1.0667vw 0 0;
}
.category-archive-title .category-image .catimg-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.contents-area .category-image {
	margin-left: -5.3334vw;
	margin-bottom: 10.6667vw;
	width: 100vw;
	height: 19.3334vw;
	background-position: center center;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
	border-radius: 1.0667vw 1.0667vw 0 0;
}
.contents-area .catimg-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 0.1em;
	width: 100%;
	height: 100%;
}
.category-archive-title .catimg-inner h2,
.contents-area .catimg-inner h2,
.category-archive-title .catimg-inner p,
.contents-area .catimg-inner p {
	font-size: 5.6001vw;
	font-weight: bold;
	line-height: 1;
	color: #FFF;
	text-shadow: 0 0 10px rgba(116, 64, 126, 1), 0 0 10px rgba(116, 64, 126, 1), 0 0 10px rgba(116, 64, 126, 1), 0 0 10px rgba(116, 64, 126, 1);
}

.archive-body .both-area,
.single-body .both-area {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto 13.3334vw;
	padding-top: 13.3334vw;
	max-width: 89.3334vw;
}
.single-body .both-area { padding-top: 8vw; }
.archive-body .article {
	width: 100%;
	margin: 0 0 6.6667vw;
	border-bottom: 1px solid #eee;
}
.archive-body .article figure {
	margin: 0 0 1.6em;
	background: #FFF;
}
.archive-body .article figure .img-wrap {
	aspect-ratio: 1.75 / 1;
	border-radius: 2vw;
	overflow: hidden;
}
.archive-body .article figure figcaption {
	padding: 0;
	background: transparent;
}
.archive-body .article figure figcaption .figcaption-inner {
	padding: 0 0 6.6667vw;
}
.archive-body figure .date-area {
	float: none;
	padding: 4vw 0;
	font-size: 3.7334vw;
	line-height: 1;
	text-align: left;
}
.archive-body figure h3 {
	margin-bottom: 0.5em;
	font-size: 6.1334vw;
	font-weight: normal;
	line-height: 1.4;
}
.archive-body figure p {
	font-size: 4vw;
	line-height: 1.8;
}
.archive-body figure .cat-areas {
	display: none;
}
@media screen and (min-width: 768px) {
	.archive-body .heading-area {
		margin-bottom: 70px;
	}
	.archive-body .heading-area-inner {
		padding: 115px 0 90px;
	}
	.archive-body .heading-area h2 {
		width: 559px;
	}
	.archive-body .heading-area p {
		font-size: 20px;
	}

	.archive-body .category-image {
		height: 250px;
	}
	.cat-blocks {
		display: flex;
		justify-content: space-between;
		margin-bottom: 60px;
		padding-top: 70px;
		max-width: 1200px;
	}
	.cat-block {
		width: 32.9167%;
		min-height: 250px;
	}
	.cat-block + .cat-block {
		margin-top: 0;
	}
	.archive-body #mainSection .cat-blocks .category-image .catimg-inner {
		width: calc( 100% - 36px );
		height: calc( 100% - 36px );
	}
	.archive-body .catimg-inner h2 {
		font-size: 24px;
	}

	.category-archive-title {
		margin-bottom: 60px;
		padding-top: 70px;
		max-width: 1200px;
		height: 250px;
	}
	.category-archive-title .category-image {
		height: 250px;
		border-radius: 13px 13px 0 0;
	}

	.contents-area > .category-image {
		margin-left: 0;
		margin-bottom: 50px;
		width: 100%;
		height: 150px;
	}
	.contents-area .category-image {
		border-radius: 8px 8px 0 0;
	}

	.category-archive-title .catimg-inner h2,
	.contents-area .catimg-inner h2,
	.category-archive-title .catimg-inner p,
	.contents-area .catimg-inner p {
		font-size: 33px;
	}
	.category-corporate,
	.category-youtuber-vtuber,
	.category-reputation {}

	.archive-body .both-area,
	.single-body .both-area {
		margin-bottom: 40px;
		padding-top: 60px;
		max-width: 1200px;
	}
	.single-body .single-main { padding-top: 60px; }
	.archive-body .contents-area,
	.single-body .contents-area {
		margin-bottom: 0;
		width: 64.5834%;
	}
	.archive-body .contents-area .articles,
	.single-body .contents-area .articles {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.archive-body .article {
		display: block;
		margin-bottom: 60px;
		width: 45.1613%;
	}
	.archive-body .article figure .img-wrap {
		border-radius: 8px;
	}
	.archive-body .article figure figcaption .figcaption-inner {
		padding-bottom: 15px;
	}
	.archive-body figure .date-area {
		padding: 18px 0;
		font-size: 14px;
	}
	.archive-body figure h3 {
		font-size: 24px;
	}
	.archive-body figure p {
		font-size: 16px;
	}
}

/*---------
 * single
 */
.single-body .single-content {
	background: #fff;
	margin: 0;
	padding: 0;
}
.single-body .article-header {
	padding: 0 0 10px;
}
.single-body .article-header h1 {
	font-size: 6.1334vw;
	line-height: 1.46;
}
.single-body .detail-area {
	padding: 4vw 0 0;
	font-size: 0;
}
.single-body .detail-area p {
	display: inline-block;
	color: #666;
	font-size: 3.7334vw;
	line-height: 1.4;
	text-transform: uppercase;
}
.single-body .detail-area p + p:before {
	content: '　／　';
}
.single-body .detail-area a {
	color: #666;
	font-size: 12px;
	line-height: 1.6;
	text-transform: uppercase;
}
.single-body figure.header-content {
	overflow: hidden;
	border-radius: 2vw;
}
.single-body figure.header-content img {
	width: 100%;
	height: auto;
}
.single-body .text-area {
	padding: 3.3334vw 0 0;
}
.single-body .text-area a {
	color: #BA6594;
}
.single-body .text-area h4 {
	margin-top: 2em;
	margin-bottom: 1em;
	padding: 0.2em 0.8em 0.3em;
	background: #BA6594;
	font-size: 4.2667vw;
	line-height: 1.4;
	color: #fff;
}
.single-body .text-area p,
.single-body .text-area li {
	font-size: 4vw;
}

.single-autor {
	margin: 12vw 0;
}
.single-autor p {
	font-size: 2.6667vw;
	line-height: 1;
}
.single-autor a {
	display: inline-block;
	margin-left: 0.5em;
	margin-bottom: 0.5em;
	padding: 0.5em 1em 0.6em;
	background: #BA6594;
	border-radius: 1.2vw;
	color: #fff!important;
}
.single-autor a:hover {
	background: #1D0A19;
	text-decoration: none;
}

.author-box {
	display: flex;
	margin: 5.3334vw auto;
	padding: 4vw;
	width: 89.3334vw;
	box-sizing: border-box;
	border: #906798 1px solid;
}
.author-box .author-thumbnail {
	flex-shrink: 0;
	width: 23.3334vw;
}
.author-box .author-thumbnail img {
	width: 100%;
	height: auto;
}
.author-box .author-content {
	padding-left: 4vw;
	width: auto;
}
.author-box .author-name {
	margin-bottom: 0;
	font-size: 3.2vw;
	font-weight: bold;
	line-height: 1.6;
}
.author-box .author-name a {
	color: #BA6594;
}
.author-box .author-description {
	font-size: 3.2vw;
	line-height: 1.6;
}

.related {
	margin: 13.3334vw 0 0;
}
.related h3 {
	margin: 0 0 2.6667vw;
	font-size: 4vw;
	line-height: 1;
}
.related .rpwe-ul {
	display: flex;
	flex-wrap: wrap;
}
.related .article {
	margin: 0 0 13.3334vw 4vw;
	width: 42.6667vw;
	box-sizing: border-box;
	border: #906798 1px solid;
}
.related .rpwe-ul .article:nth-child(2n+1) { margin-left: 0; }
.related .rpwe-ul .article:nth-child(9) { display: none; }
.related .article figure {
	background: #FFF;
}
.related .article figure .img-wrap {
	aspect-ratio: 1 / 0.666;
	display: block;
	overflow: hidden;
}
.related .article figure figcaption {
	padding: 0;
	width: auto;
}
.related .article figure figcaption .figcaption-inner {
	padding: 2.6667vw 2.6667vw 4vw;
}
.related .article figure figcaption h3 {
	font-size: 3.2vw;
	font-weight: 600;
	line-height: 1.6;
}
.related .article figure figcaption .sup {
    padding: 0;
    margin: 0;
    border-top: none;
}
.related .article figure .cat-area {
	float: none;
	margin-top: 2.6667vw;
}
.related .article figure .cat-area p {
	font-size: 2.6667vw;
}
.related .article figure .cat-area span {
	display: inline-block;
	padding: 0.6em 0.6em 0.7em;
	background: #BA6594;
	border-radius: 1.0667vw;
	font-size: 2.6667vw;
	line-height: 1;
	color: #fff;
}

.linkcard {
	margin: 20px 0 !important;
}
@media screen and (min-width: 768px) {
	.single-body .article-header {
		padding: 0 0 10px;
	}
	.single-body .article-header h1 {
		font-size: 39px;
	}
	.single-body .detail-area {
		padding-top: 30px;
	}
	.single-body .detail-area p {
		font-size: 14px;
	}
	.single-body .detail-area p + p:before {
		content: '　／　';
	}
	.single-body .detail-area a {
		font-size: 12px;
	}
	.single-body figure.header-content {
		border-radius: 0;
	}
	.single-body .text-area {
		padding-top: 50px;
	}
	.single-body .text-area h4 {
		font-size: 18px;
	}
	.single-body .text-area p,
	.single-body .text-area li {
		font-size: 16px;
	}

	.single-contact .section-inner {
		padding: 20px 2%;
	}
	.single-contact .contact-content p {
		margin: 0;
		font-weight: 600;
	}
	.single-autor {
		margin: 90px 0;
	}
	.single-autor p {
		font-size: 14px;
	}
	.single-autor a {
		border-radius: 6px;
	}
	.author-box {
		margin: 40px auto;
		padding: 30px;
		width: auto;
	}
	.author-box .author-thumbnail {
		width: 175px;
	}
	.author-box .author-content {
		padding-left: 30px;
	}
	.author-box .author-name,
	.author-box .author-description {
		font-size: 16px;
		line-height: 2;
	}

	.related {
		margin-top: 120px;
	}
	.related h3 {
		margin-bottom: 16px;
		font-size: 24px;
	}
	.related .article {
		margin: 0 0 40px 3.4839%;
		width: 30.9678%;
	}
	.related .rpwe-ul .article:nth-child(2n+1) { margin-left: 3.4839%; }
	.related .rpwe-ul .article:nth-child(3n+1) { margin-left: 0; }
	.related .rpwe-ul .article:nth-child(9) { display: block; }
	.related .article figure figcaption .figcaption-inner {
		padding: 16px;
	}
	.related .article figure figcaption h3 {
		font-size: 14px;
	}
	.related .article figure .cat-area {
		margin-top: 16px;
	}
	.related .article figure .cat-area p {
		font-size: 12px;
	}
	.related .article figure .cat-area span {
		border-radius: 5px;
		font-size: 12px;
	}
}


/*------------------------
 * single additional
 */
.text-inner h2 {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	padding: 0.7em 0.76em 0.8em;
	background: #1D0A19;
	border-radius: 0 0 2.1334vw 0;
	font-size: 4.4vw;
	font-weight: bold;
	color: #FFF;
	line-height: 1.2;
}
.text-inner figure + h2 {
	margin-top: 3em;
}
.text-inner h3 {
  position: relative;
  top: 0;
  display: inline-block;
  margin: 1.5em 0;
  padding: 0.5em 1.3em 0.6em;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 1.4;
}
.text-inner h3:before,
.text-inner h3:after {
  content:'';
  display: block;
  position: absolute;
  width: 6.6667vw;
  height: 6.6667vw;
}
.text-inner h3:before {
  left: 0;
  top: 0;
  border-left: solid 0.5334vw #BA6594;
  border-top: solid 0.5334vw #BA6594;
}
.text-inner h3:after {
  right: 0;
  bottom: 0;
  border-right: solid 0.5334vw #BA6594;
  border-bottom: solid 0.5334vw #BA6594;
}
.text-inner h4 {
	font-size: 4.2667vw;
	font-weight: 600;
}
img.alignright {
	display: block;
	margin: 0 0 0 auto;
}
img.alignleft {
	display: block;
	margin: 0 auto 0 0;
}
img.aligncenter {
	display: block;
	margin: 0 auto;
}
.txt-xxl {
	font-size: 5.0667vw !important;
	line-height: 1.5 !important;
}
.txt-xl {
	font-size: 4.5334vw !important;
	line-height: 1.5 !important;
}
.txt-l {
	font-size: 4vw !important;
	line-height: 1.5 !important;
}
.txt-m {
	font-size: 3.6vw !important;
}
.txt-s {
	font-size: 3.2vw !important;
	line-height: 1.5 !important;
}
.txt-xs {
	font-size: 2.6667vw !important;
}
.txt-xxs {
	font-size: 2.4vw !important;
}
.txt-blue {
	color: blue;
}
.txt-red {
	color: red;
}
.txt-pink { color: #BA6594 !important; }
.txt-pink2 { color: #D8A3C0 !important; }
.txt-purple { color: #352249 !important; }
.txt-purple2 { color: #ba6594 !important; }

.text-inner p,
.text-inner cite,
.text-inner li,
.text-inner a,
.text-inner dt,
.text-inner dd {
	color: #222222;
}
.text-inner p {
	margin-bottom: 1.5em;
	font-size: 4vw;
	line-height: 2;
}
.text-inner li,
.content li {
	font-size: 10pt;
	padding: 5px 0;
	font-weight: 500;
}
.text-inner ul,
.content ul {
	margin: 0 20px 14px;
}
ul.square {
	list-style-type: square;
}
.text-inner ul li:before,
.text-inner ol li:before,
.content ul li:before,
.content ol li:before {
	content: '';
	display: none;
}
.text-inner ol,
.content ol {
	list-style-type: decimal;
	margin: 0 0 14px 40px;
}
ol.decimal {
	padding-left: 1.5em;
}
ol.decimal li {
	font-size: 3.6vw;
	list-style-type: decimal;
}
ol.decimal li::marker {
	font-size: 125%;
	font-weight: bold;
	color: #b96594;
}


ul.checkmark li {
	position: relative;
}
ul.checkmark li:after {
	display: block;
	content: '';
	position: absolute;
	top: 10px;
	left: -1em;
	width: 8px;
	height: 3px;
	border-left: 2px solid #BE0074;
	border-bottom: 2px solid #BE0074;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
blockquote {
	position: relative;
	padding: 13.3334vw 4.6667vw 6.6667vw;
	color: #906798;
	margin: 8vw 0;
	border: 1px solid #906798;
}
blockquote:before{
	content: '';
	display: block;
	position: absolute;
	left: 4.6667vw;
	top: 4vw;
	vertical-align: middle;
	width: 6.9334vw;
	height: 5.8667vw;
	background: url( ./img/icon/icon_doublequote.svg) no-repeat;
	background-size: contain;
	z-index: 2;
}
blockquote p,
blockquote cite {
	font-size: 3.6vw;
	line-height: 2;
}
blockquote > :last-child { margin-bottom: 0; }

.single-main .text-inner .button a {
	color: #fff;
}
.single-main .text-inner ul,
.other-body .content ul {
	list-style-type: disc;
}
.txt-center {
	text-align: center;
}
.txt-right {
	text-align: right;
}
.txt-left {
	text-align: left;
}
.pdt-big {
	padding-top: 40px;
}
.pdt-middle {
	padding-top: 20px;
}
.pdt-small {
	padding-top: 10px;
}
.pdb-big {
	padding-bottom: 40px;
}
.pdb-middle {
	padding-bottom: 20px;
}
.pdb-small {
	padding-bottom: 10px;
}
strong {
	font-weight: 600;
}
em {
	font-style: italic;
}
.text-inner img,
.content img {
	max-width: 100px;
	width: 100%;
	height: auto;
}
.single-main .text-inner img,
.other-body .content img {
	max-width: 100%;
	width: auto;
	height: auto;
}
sup {
	vertical-align: super;
	font-size: smaller;
}
.word-break {
	word-break: break-all;
}
.gray-back {
	background: #efefef;
}
.gray-back .txt-inner {
	padding: 0 20px;
}
.cat-description {
	margin: 20px 0 0;
}
@media screen and (min-width: 768px) {
	.text-inner h2 {
		border-radius: 0 0 8px 0;
		font-size: 26px;
		text-align: left;
	}
	.text-inner h3 {
	  font-size: 26px;
	}
	.text-inner h3:before,
	.text-inner h3:after {
	  width: 35px;
	  height: 35px;
	}
	.text-inner h3:before {
	  border-left: solid 3px #BA6594;
	  border-top: solid 3px #BA6594;
	}
	.text-inner h3:after {
	  border-right: solid 3px #BA6594;
	  border-bottom: solid 3px #BA6594;
	}
	.text-inner h4 {
		font-size: 16px;
	}

	.pdt-big {
		padding-top: 60px;
	}
	.pdt-middle {
		padding-top: 40px;
	}
	.pdt-small {
		padding-top: 20px;
	}
	.pdb-big {
		padding-bottom: 60px;
	}
	.pdb-middle {
		padding-bottom: 40px;
	}
	.pdb-small {
		padding-bottom: 20px;
	}
	blockquote {
		padding: 85px 35px 60px;
		margin: 40px 0;
	}
	blockquote:before{
		left: 38px;
		top: 32px;
		width: 44px;
		height: 37px;
	}
	blockquote p,
	blockquote cite {
		font-size: 16px;
	}


	.text-inner li,
	.content li {
		font-size: 12pt;
	}
	.gray-back .txt-inner {
		padding: 0 40px;
	}
	.txt-xxl {
		font-size: 34px !important;
	}
	.txt-xl {
		font-size: 29px !important;
	}
	.txt-l {
		font-size: 24px !important;
	}
	.txt-m {
		font-size: 16px !important;
	}
	.txt-s {
		font-size: 14px !important;
	}
	.txt-xs {
		font-size: 12px !important;
	}
	.txt-xxs {
		font-size: 10px !important;
	}

	.text-inner p {
		font-size: 16px;
	}

	ol.decimal li {
		font-size: 16px;
	}

}

/*---------
 * sidebar
 */
/*
.search-2
.tag_cloud-2
.recent-posts-widget-with-thumbnails-2
.wpp-2
.archives-2
*/
.sidebar {
	width: 100%;
}
.side-category {
	font-size: .94em;
}
.side-category.search-2 {
	background-color: #ddb0c9;
	padding: 6.6667vw 6.6667vw 0;
	font-size: .94em;
}
.side-category.tag_cloud-2 {
	background-color: #ddb0c9;
	margin-bottom: 13.3334vw;
	padding: 6.6667vw 3.3334vw 6.6667vw 6.6667vw;
}
.sidebar .widgettitle {
	position: relative;
	margin-bottom: .8em;
	font-size: 1.1em;
	font-weight: 300;
	text-transform: capitalize;
}
.tagcloud { font-size: 0; }
.tagcloud a {
	color: #222222;
	background-color: #fff;
	border-radius: 1.6vw;
	padding: 2.4vw 2.6667vw 3.2vw;
	display: inline-block;
	margin: 0 2.6667vw 2.6667vw 0;
	font-size: 3.4667vw !important;
}
.tagcloud a:hover {
	text-decoration: none;
	background-color: #1D0A19;
	color: #fff;
}
.recent-posts-widget-with-thumbnails-2,
.wpp-2,
.archives-2 { margin-top: 13.3334vw; }

.recent-posts-widget-with-thumbnails-2 h2.widgettitle,
.wpp-2 h2.widgettitle,
.archives-2 h2.widgettitle {
	margin-bottom: 8vw;
	border-bottom: #000 1px solid;
}
.sidebar ul li { margin-top: 8vw; }
.sidebar .archives-2 li { margin-top: 5.3334vw; }
.sidebar ul li a {
	padding: 0;
	display: block;
	font-size: 4.5334vw;
	line-height: 1.5;
	color: #BA6594;
}
.sidebar #rpwwt-recent-posts-widget-with-thumbnails-2 img,
.sidebar .wpp-2 img {
	float: left;
	margin: .3em .75em .75em 0;
	width: 30.6667vw;
	height: 30.6667vw;
}
.sidebar #rpwwt-recent-posts-widget-with-thumbnails-2 ul li,
.sidebar .wpp-2 ul li {
	margin: 8vw 0 0 0;
	padding: 0;
}
.wpp-list li {
	overflow: hidden;
	float: none;
	clear: both;
	padding: 10px 0;
}
.sidebar .wpp-list li a {
	display: inline;
}
@media screen and (min-width: 768px) {
	.sidebar {
		display: inline-block;
		width: 26.25%;
		vertical-align: top;
		padding: 0;
	}
	.side-category.search-2 {
		padding: 20px 20px 0;
	}
	.side-category.tag_cloud-2 {
		margin-bottom: 24px;
		padding: 20px 10px 20px 20px;
	}
	.tagcloud a {
		border-radius: 5px;
		padding: 8px 10px 11px;
		margin: 0 10px 10px 0;
		font-size: 11px !important;
	}
	.recent-posts-widget-with-thumbnails-2,
	.wpp-2,
	.archives-2 { margin-top: 60px; }

	.recent-posts-widget-with-thumbnails-2 h2.widgettitle,
	.wpp-2 h2.widgettitle,
	.archives-2 h2.widgettitle {
		margin-bottom: 30px;
	}
	.sidebar ul li { margin-top: 30px; }
	.sidebar .archives-2 li { margin-top: 15px; }
	.sidebar ul li a {
		font-size: 16px;
	}
	.sidebar #rpwwt-recent-posts-widget-with-thumbnails-2 img,
	.sidebar .wpp-2 img {
		width: 105px;
		height: 105px;
	}
	.sidebar #rpwwt-recent-posts-widget-with-thumbnails-2 ul li,
	.sidebar .wpp-2 ul li {
		margin: 30px 0 0 0;
	}
	.wpp-list li {
		padding: 10px 0;
	}
}

/*-----
 * search
 */
 .archive-body .search-main .search-inner h2 {
	color: #333;
	height: auto;
}
.archive-body .search-main .search-inner {
	margin: 0 auto;
	padding: 60px 40px;
	max-width: 1200px;
}
.archive-body .search-area {
	border-top: 1px solid #333;
	padding: 20px;
	background: #ddb0c9;
}
/*-----
 * tag
 */
.archive-body .tag.search-main .both-area {
	margin: 0 auto;
}


/*-----
 * search form
 */
.side-category.block-2 {
	background-color: #ddb0c9;
	padding: 6.6667vw 6.6667vw 0;
}
.wp-block-search__button {
	background-color: #BA6594;
	border: #BA6594 1px solid;
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	margin-left: 0;
	width: 60px;
	word-break: keep-all;
}
.wp-block-search__input {
	border: #BA6594 1px solid;
}
.search-form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row nowrap;
	flex-flow: row nowrap;
	height: 35px;
}
.search-form .input{
	width: 100%;
}
.search-form .search-inner {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	width: 100%;
	padding: 6px;
	border-right-style: none;
	border-radius: 2px 0 0 2px;
	font-size: .96em;
	line-height: normal;
}
.search-form .search-submit {
	width: 60px;
	position: relative;
	background-color: #444;
	border-radius: 0 2px 2px 0;
}
.search-form input[type="text"] {
	border: #BA6594 1px solid;
}
.search-form button[type="button"],
.search-form button[type="submit"],
.search-form input[type="button"],
.search-form input[type="submit"] {
	display: inline-block;
	position: relative;
	max-width: 100%;
	padding: 5px 7px;
	border: #BA6594 1px solid;
	outline: 0;
	border-radius: 2px;
	background-color: #BA6594;
	color: #fff;
	font-weight: 600;
	-webkit-transition: all .2s;
	transition: all .2s;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.search-form .icon {
	display: none;
	top: calc(50% - 6px);
	left: calc(50% - 8px);
}
.icon.search {
	display: none;
	color: #444;
	position: absolute;
	width: 12px;
	height: 12px;
	margin-top: -1px;
	margin-left: -1px;
	border: 1px solid #fff;
	border-radius: 100%;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.icon.search:before {
	display: none;
	content: "";
	position: absolute;
	top: 12px;
	left: 5px;
	height: 6px;
	width: 1px;
	background-color: #fff;
}
.screen-reader-text {
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.2em;
}
@media screen and (min-width: 768px) {
	.side-category.block-2 {
		padding: 20px 20px 0;
	}
}
@media screen and (max-width: 767px) {
	.wp-block-search__button {
		font-size: 3.6vw;
		width: 14vw;
	}
}

/*-----
 * .nav-links
 */
.nav-links {
	width: 100%;
}
.pagination {
	display: block;
	margin: 0 auto 10px;
	text-align: center;
}
.pagination,
ul.page-numbers {
	position: relative;
	width: 100%;
}
ul.page-numbers {
	display: flex;
	justify-content: center;
	margin: 0 auto;
	border-bottom: none;
	font-weight: normal;
	text-decoration: none;
}
ul.page-numbers li:not(.action-bar-wrapper) {
	display: inline-block;
	position: relative;
	margin-left: -1px;
}
ul.page-numbers li > :not(.action-bar) {
	display: block;
	transition: all .4s;
	width: 8.8vw;
	height: 8.8vw;
	border: #602D6B 1px solid;
	box-sizing: border-box;
	font-size: 2.6667vw;
	line-height: 8vw;
	text-align: center;
}
ul.page-numbers li > .prev,
ul.page-numbers li > .next,
ul.page-numbers li > .dots {
	border: none;
	background: transparent;
}
ul.page-numbers li > .dots {
	color: #602D6B;
}
ul.page-numbers span.page-numbers.current {}
ul.page-numbers li > span:not(.dots),
ul.page-numbers a.page-numbers:hover {
	background-color: #602D6B;
	color: #fff;
	text-decoration: none;
}
@media screen and (min-width: 768px) {
	.pagination {
		margin-bottom: 10px;
	}
	ul.page-numbers li > :not(.action-bar) {
		width: 50px;
		height: 50px;
		font-size: 16px;
		line-height: 45px;
	}
}


/*------------------------
 * social
 */
.sns-buttons {
	margin: 5.3334vw 0;
}
.sns-buttons .content-box-heading {
	display: inline-block;
	font-size: 3.2vw;
	line-height: 5.3334vw;
}
.article-social {
	display: inline-block;
	font-size: 0;
	vertical-align: middle;
}
.article-social a {
	margin-right: 3.7334vw;
	font-size: 0;
	line-height: 5.3334vw;
	text-decoration: none;
	letter-spacing: 0;
}
.icomoon {
	color: #a8a8a8;
	font-size: 5.3334vw;
	display: inline-block;
	vertical-align: middle;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.icon-twitter:hover,
.icon-twitter:active,
.icon-twitter:focus { color: #1ab0f3; }
.icon-hatebu:hover,
.icon-hatebu:active,
.icon-hatebu:focus { color: #00b2e3; }
.icon-line:hover,
.icon-line:active,
.icon-line:focus { color: #00bf00; }
.icon-facebook:hover,
.icon-facebook:active,
.icon-facebook:focus { color: #1876ef; }
.icon-pocket:hover,
.icon-pocket:active,
.icon-pocket:focus { color: #ec3f55; }
.icon-feedly:hover,
.icon-feedly:active,
.icon-feedly:focus { color: #7ccc68; }

@media screen and (min-width: 768px) {
	.sns-buttons {
		margin: 40px 0;
	}
	.sns-buttons .content-box-heading {
		font-size: 18px;
		line-height: 30px;
	}
	.article-social a {
		margin-right: 20px;
		line-height: 30px;
	}
	.icomoon {
		font-size: 30px;
	}
	.social-link a {
		padding: 14px 70px;
	}
}

/*------------------------
 * .post-nav
 */
.post-nav ul {
	display: block;
	margin: 13.3334vw auto;
	width: 52vw;
	height: 6.9334vw;
	font-size: 0;
}
.post-nav .next,
.post-nav .prev {
	display: block;
	width: 20.2667vw;
	height: 100%;
}
.post-nav .prev { float: left; }
.post-nav .next { float: right; }
.post-nav .prev a,
.post-nav .next a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 0.1em;
	width: 100%;
	height: 100%;
	background: #dccfdf;
	box-sizing: border-ox;
	border-radius: 1.6vw;
}
.post-nav .prev a { padding-left: 1em; }
.post-nav .next a { padding-right: 1em; }
.post-nav .next a:hover,
.post-nav .prev a:hover {
	text-decoration: none;
	opacity: .6;
}
.post-nav .post-thumbnail {
	display: none;
}
.post-nav .chevron-left, .post-nav .chevron-right {
	position: absolute;
	top: calc(50% - 0.8vw);
	width: 1.3334vw;
	height: 1.3334vw;
	background: transparent;
	transform: rotate(45deg);
	transition: all .4s;
}
.post-nav .chevron-left {
	left: 1.8667vw;
	border-left: 1px solid #602D6B;
	border-bottom: 1px solid #602D6B;
}
.post-nav .chevron-right {
	right: 1.8667vw;
	border-right: 1px solid #602D6B;
	border-top: 1px solid #602D6B;
}
.post-nav .nav-title {
	font-size: 2.6667vw;
	line-height: 1;
	color: #602D6B;
}
.post-nav .post-title { display: none; }
@media screen and (min-width: 768px) {
	.post-nav ul {
		margin: 100px auto;
		width: 270px;
		height: 36px;
	}
	.post-nav .next,
	.post-nav .prev {
		width: 105px;
	}
	.post-nav .prev a,
	.post-nav .next a {
		border-radius: 8px;
	}
	.post-nav .chevron-left, .post-nav .chevron-right {
		top: calc(50% - 6px);
		width: 10px;
		height: 10px;
	}
	.post-nav .chevron-left {
		left: 14px;
	}
	.post-nav .chevron-right {
		right: 14px;
	}
	.post-nav .nav-title {
		font-size: 14px;
	}
}


/*****
 * スクロールトップ
 */
#toTop {
	margin: 14.6667vw auto;
	width: 51.3334vw;
	height: 10.6667vw;
}
#toTop a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 0.1em;
	width: 100%;
	height: 100%;
	background: #BA6594;
	border-radius: 1.3334vw;
	box-sizing: border-box;
	font-size: 3.4667vw;
	line-height: 1;
	color: #fff !important;
}
#toTop a:hover {
	background: #1D0A19;
	text-decoration: none;
}
@media screen and (min-width: 768px) {
	#toTop {
		margin: 120px auto;
		width: 218px;
		height: 45px;
	}
	#toTop a {
		border-radius: 10px;
		font-size: 14px;
	}
}


/****
 * 目次
 */
.single-body #ez-toc-container {
	background: #fff;
	border: 1px solid #906798;
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	display: table;
	margin-top: 2em;
	margin-bottom: 2em;
	padding: 4vw;
	position: relative;
	width: 100%;
	box-sizing: border-box;
}
.single-body #ez-toc-container .ez-toc-title-container {
	margin-bottom: 0.5em;
}
.single-body #ez-toc-container .ez-toc-title {
	font-size: 4vw;
	line-height: 1;
	color: #424242;
}
.single-body #ez-toc-container ul ul,
.single-body .ez-toc div.ez-toc-widget-container ul ul {
	margin-left: 1.8em;
}
.single-body #ez-toc-container .ez-toc-list li a {
	font-size: 3.4667vw;
	font-weight: bold;
	line-height: 2;
	color: #BA6594;
}
.ez-toc-list a:hover {
	text-decoration: underline;
}
@media screen and (min-width: 768px) {
	.single-body #ez-toc-container {
		margin-top: 4em;
		margin-bottom: 4em;
		padding: 30px;
	}
	.single-body #ez-toc-container .ez-toc-title-container {
		margin-bottom: 1em;
	}
	.single-body #ez-toc-container .ez-toc-title {
		font-size: 24px;
	}
	.single-body #ez-toc-container .ez-toc-list li a {
		font-size: 18px;
	}
}

.hatenablogcard{
  clear:both;
  width:100%;
  height:155px;
  margin:10px 0;
  max-width:680px;
}


/****
 * plus
 */

/* 余白関連・共通パーツ */
.mb30sp{
	margin-bottom:30px;
}
blockquote.wp-block-quote a{
	color: #BA6594;
}
@media screen and (min-width: 480px) {
.mb30sp{
	margin-bottom:0;
}
}
@media screen and (max-width: 767px) {
.fixed-footer .tel-side a{
	 padding:11.4px 0!important;
	 position: relative;
	top: -1px;
}
}
.rpwwt-widget ul li:not(:last-child){
	margin: 0 0 1rem !important;
}

 /* 個別ページ */
.single-inner .wp-block-image figcaption a {
	color: #61bfea;
	font-size: 14px;
	text-decoration: underline;
}
.lkc-title-text { color: #BA6594 !important; }
.lkc-internal-wrap,.lkc-external-wrap {
	border:solid 1px #996699!important;
}

.articles.type_practice_column{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	box-sizing: border-box;
	margin-bottom: 20px;
}

.type_youtube_column{
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
	flex-wrap: wrap;
}

a.youtube_box {
	width: 32%;
	transition: all, .3s;
	background-color: #fff;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	color:#000;
}

@media screen and (max-width: 768px) {
	a.youtube_box {
		width: 100%;
		margin: 10px 0;
	}
}

.youtube_box:hover {
	text-decoration: none;
	opacity: .5;
}

.youtube_ph {
	display: block;
	line-height: 0;
}

.youtube_ph img {
	width: 100%;
	height: auto;
}

.youtube_title {
	display: block;
	padding: 11px 25px;
}

.articles.type_practice_column .article{
	background: #efefef;
}
.books.type_books_column{
	display: flex;
	flex-wrap: wrap;
}
.articles.type_article_column{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.articles.type_article_column .article{
	background:#efefef;
}
.practices.type_practice_column{
	display: flex;
	flex-wrap: wrap;
}
.practices.type_practice_column .practice{
	background: #fff;
}

.sites.type_site_column{
	display: flex;
	flex-wrap: wrap;
}

.wp-block-embed__wrapper .lkc-this-wrap{
	border:solid 1px #30a8e1;
	background-color: #fff;
}

#menu-item-15540 {
	padding-top: 0;
}

.pc-none.to-side {
	display: flex;
	justify-content: space-between;
	margin-left: 5px;
	margin-right: 5px;
}

.reputation_ph {
	position: relative;
	line-height: 0;
}

.reputation_ph_first, .reputation_ph_second {
	position: absolute;
	height: 14%;
	bottom: 7.5%;
	transition: all, .3s;
	background: transparent;
	border-radius: 500px;
}

.reputation_ph_first:hover, .reputation_ph_second:hover {
	background-color: rgba(255, 255, 255, 0.8);
}

.reputation_ph_first {
	left: 3%;
	width: 50%;
}

.reputation_ph_second {
	right: 3%;
	width: 41%;
}

.youtube_section {
	margin-top: 40px;
}

.youtube_section .blue-section {
	background-color: transparent;
}

.youtube_section .blue-section h2 {
	color: #2FA8E1;
	display: none;
}

.youtube_section .blue-section a.white-link {
	background-color: #2FA8E1;
	border-color:  #2FA8E1;
}

.youtube_section .blue-section a.white-link:hover {
	background-color: #fff;
}

.youtube_section .section-inner {
	padding-top: 0;
}


/* add  */
.title_bold{
	font-weight: bold;
}

.wp-block-embed iframe {
	width: 100%;
}
.wp-block-embed.wp-has-aspect-ratio iframe {
	height: 430px;
}
@media screen and (max-width: 1200px) {
	.wp-block-embed.wp-has-aspect-ratio iframe {
		height: 36vw;
	}
}
@media screen and (max-width: 767px) {
	.wp-block-embed.wp-has-aspect-ratio iframe {
		height: 50vw;
	}
}