/* =====================================
■COMMON
===================================== */
a:hover img {
	opacity: 0.8;
}
img {
	width: auto;
	max-width: 100%;
	vertical-align: bottom;
	margin: 0;
	padding: 0;
}
p {
	margin-bottom: 20px;
}
p:last-child {
	margin-bottom: 0;
}
table {
	width: 100%;
}
.half {
	display: inline-block;
}
strong {
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.auto_height {
		height: auto !important;
	}
}

/* -------------------------------------
CONTENT
------------------------------------- */
#content {
	padding: 0;
	min-height: 600px;
}
.error404 #content {
	padding-top: 130px;
}

@media screen and (max-width: 767px) {
	.error404 #content {
		padding-top: 80px;
	}
}


/* =====================================
■TOP
===================================== */
.frame {
	position: relative;
	display: block;
}
.triggerTit span {
	display: inline-block;
}

.fadeInUp {
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
	}
	30% {
		opacity: 0;
		-webkit-transform: translate3d(0, 25px, 0);
		transform: translate3d(0, 25px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}
@keyframes fadeInUp {
	from {
		opacity: 0;
	}
	30% {
		opacity: 0;
		-webkit-transform: translate3d(0, 25px, 0);
		transform: translate3d(0, 25px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

@media screen and (min-width: 768px) {
	section.elementor-element {
		transition: all .8s;
		-webkit-transform: translate(0, 50px);
		transform: translate(0, 50px);
		opacity: 0;
	}
}
.tablet section.elementor-element {
	transition: all .8s;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	opacity: 1;
}
.is-scrolled .desktop section.elementor-element.scrollin {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	opacity: 1;
}

.fadeIn {
	-webkit-animation-name: fadeIn;
	-ms-animation-name: fadeIn;
	animation-name: fadeIn;
	animation-delay: 1s;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1.8s;
	-ms-animation-duration: 1.8s;
	animation-duration: 1.8s;
}
@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

/*--------------------------------------
Mainimage
--------------------------------------*/
.home #mainimage {
	position: relative;
	display: none;
}

/*--------------------------------------
GENOVA SOLUTION SERVICE
--------------------------------------*/
.service_section {
	padding: 93px 0;
}
.service_area {
	display: table;
	width: 100%;
}
.service_area h2 {
	display: table-cell;
	vertical-align: middle;
	font-size: 50px;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 1.44;
	color: #DA0048;
	width: 320px;
}
.service_area .txt {
	display: table-cell;
	vertical-align: middle;
	width: auto;
	padding-left: 10.6%;
	font-size: 18px;
	font-weight: bold;
	line-height: 3.06;
	letter-spacing: 0.2em;
}
.service_section .btn_list {
	display: none;
}
.serviceBnr #marketing {
	background: url(/wp-content/uploads/top_bg01.jpg) no-repeat center;
	background-size: cover;
}
.serviceBnr #media {
	background: url(/wp-content/uploads/top_bg02.jpg) no-repeat center;
	background-size: cover;
}
.serviceBnr #smarthealth {
	background: url(/wp-content/uploads/top_bg03.jpg) no-repeat center;
	background-size: cover;
}
.serviceBnr > section .container {
	display: table;
}
.serviceBnr > section .txtWrap {
	display: table-cell;
	padding-right: 10%;
	color: #fff;
	vertical-align: middle;
}
.serviceBnr > section .txtWrap .inner {
	padding: 96px 0 79px;
}
.serviceBnr > section .txtWrap .tit {
	margin-bottom: 26px;
}
.serviceBnr > section .txtWrap .tit h3 {
	font-family: "interstate", sans-serif;
	font-size: 26px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
}
.serviceBnr > section .txtWrap .tit sub {
	display: block;
	font-size: 10px;
	font-weight: bold;
	letter-spacing: 0.2em;
	line-height: 1.2;
	margin-top: 17px;
}
.serviceBnr > section .txtWrap .txt {
	margin-bottom: 33px;
	letter-spacing: 0.15em;
}
.serviceBnr > section .txtWrap .total li {
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	line-height: 1.2;
	margin-right: 30px;
	margin-bottom: 27px;
}
.serviceBnr > section .txtWrap .total li:nth-child(2n) {
	margin-right: 0;
}
.serviceBnr > section .txtWrap .total li sup {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	line-height: 1.2;
	margin-bottom: 16px;
}
.serviceBnr > section .txtWrap .total li .num {
	font-family: "interstate", sans-serif;
	font-size: 50px;
	letter-spacing: 0.05em;
	line-height: 1;
	font-weight: 500;
	vertical-align: baseline;
	margin-right: 7px;
}
.serviceBnr > section .picWrap {
	display: table-cell;
	width: 306px;
	vertical-align: bottom;
}
.serviceBnr #marketing .picWrap {
	vertical-align: middle;
}
.serviceBnr > section .picWrap .inner {
	position: relative;
}
.serviceBnr > section .picWrap .inner .pink_btn {
	position: absolute;
	width: 202px;
	bottom: 66px;
	left: 50%;
	margin-left: -94px;
}
.serviceBnr #marketing .picWrap .inner .pink_btn {
	bottom: 137px;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.service_area p {
		letter-spacing: 0.1em;
		font-size: 15px;
	}
}

@media screen and (max-width: 767px) {
	.service_section {
		padding: 30px 0 45px;
	}
	.service_area {
		display: block;
		margin-bottom: 15px;
	}
	.service_area h2 {
		display: block;
		font-size: 30px;
		width: 100%;
		margin-bottom: 20px;
		box-sizing: border-box;
	}
	.service_area .txt {
		display: block;
		padding-left: 6px;
		font-size: 16px;
		line-height: 1.7;
	}
	.service_area p .half {
		display: inline;
	}
	.service_section .btn_list {
		display: block;
	}
	.service_section .btn_list li {
		margin-top: 10px;
	}
	.serviceBnr #marketing {
		background: url(/wp-content/uploads/top_bg01_sp.jpg) no-repeat center;
		background-size: cover;
	}
	.serviceBnr #media {
		background: url(/wp-content/uploads/top_bg02_sp.jpg) no-repeat center;
		background-size: cover;
	}
	.serviceBnr #smarthealth {
		background: url(/wp-content/uploads/top_bg03_sp.jpg) no-repeat center;
		background-size: cover;
	}
	.serviceBnr > section .container {
		display: block;
	}
	.serviceBnr > section .txtWrap {
		display: table;
		width: 100%;
		height: 100%;
		padding-right: 0;
	}
	.serviceBnr > section .txtWrap .inner {
		display: table-cell;
		padding: 45px 0;
		height: 100%;
		vertical-align: middle;
		box-sizing: border-box;
	}
	.serviceBnr > section .txtWrap .txt {
		font-size: 14px;
		line-height: 1.4;
	}
	.serviceBnr > section .txtWrap .total {
		margin-bottom: 15px;
	}
	.serviceBnr > section .txtWrap .total li {
		margin-bottom: 24px;
	}
	.serviceBnr > section .picWrap {
		display: none !important;
		width: 280px;
		margin: 0 auto;
	}
	.serviceBnr #marketing .picWrap .inner .pink_btn {
		bottom: 122px;
	}
}

@media screen and (max-width: 480px) {
	.serviceBnr > section .txtWrap .total li sup {
		font-size: 16px;
	}
	.serviceBnr > section .txtWrap .tit h3 {
		font-size: 22px;
	}
}

/*--------------------------------------
COMPANY
--------------------------------------*/
.title_section {
	padding: 71px 0 90px;
}
.title_section h2 {
	font-family: "interstate", sans-serif;
	font-size: 50px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.6;
	color: #DA0048;
}
.title_section sub {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.4;
	color: #000000;
	margin-top: 5px;
}
.companyBnr {
	border-right: 1px solid #E8E8E8;
	border-top: 1px solid #E8E8E8;
}
.companyBnr li {
	float: left;
	width: 33.333%;
	box-sizing: border-box;
	border-left: 1px solid #E8E8E8;
	border-bottom: 1px solid #E8E8E8;
}
.companyBnr li a {
	display: table;
	width: 100%;
	padding: 16.8% 11% 14.9%;
	box-sizing: border-box;
}
.companyBnr li a > span {
	display: table-cell;
	width: 100%;
	vertical-align: middle;
	font-family: "interstate", sans-serif;
	font-size: 32px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.2;
	color: #000;
}
.companyBnr li a > span > span {
	display: block;
}
.companyBnr li a > span sub {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	line-height: 1.2;
	color: #A7A7A7;
	margin-top: 18px;
}
.companyBnr li a:hover {
	background: #DA0048;
}
.companyBnr li a:hover > span,
.companyBnr li a:hover > span sub {
	color: #fff;
}

@media screen and (max-width: 767px) {
	.title_section {
		padding: 30px 0;
	}
	.title_section h2 {
		font-size: 40px;
	}
	.companyBnr li {
		width: 50%;
	}
	.companyBnr li a {
		padding: 14% 11% 14%;
	}
	.companyBnr li a > span {
		font-size: 22px;
	}
	.companyBnr li a > span sub {
		font-size: 12px;
		margin-top: 15px;
	}
}

@media screen and (max-width: 480px) {
	.companyBnr li a {
		padding: 14% 8% 14%;
	}
	.companyBnr li a > span {
		font-size: 18px;
	}
	.companyBnr li a > span sub {
		font-size: 10px;
		margin-top: 10px;
	}
}

/*--------------------------------------
NEWS
--------------------------------------*/
.news_section  {
	background: #F5F5F5;
	padding: 83px 0 113px;
}
.news_section.elementor-section.elementor-section-boxed > .elementor-container {
	padding: 0 30px;
}
.h2Wrap {
	padding-bottom: 25px;
	border-bottom: 2px solid #000000;
	position: relative;
}
.h2Wrap h2 {
	font-family: "interstate", sans-serif;
	font-size: 40px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.6;
	color: #DA0048;
}
.h2Wrap sub {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.4;
	color: #000000;
	margin-top: 8px;
}
#newsList dl {
	border-bottom: 1px solid #D2D2D2;
	padding: 17px 0 16px;
}
#newsList dl dt {
	font-size: 10px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.05em;
	color: #DA0048;
	margin-bottom: 4px;
}
#newsList dl dt .newsLabel {
	display: inline-block;
	width: 37px;
	height: 13px;
	line-height: 13px;
	background: #DA0048;
	color: #fff;
	font-size: 9px;
	letter-spacing: 0;
	padding: 0;
	text-indent: 0;
	text-align: center;
	box-sizing: border-box;
	margin: -2px 0 0 10px;
	vertical-align: middle;
	font-weight: bold;
	border-radius: 50px;
}
#newsList dl dd {
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.4;
}
#newsList dl dd a {
	color: #000000;
}
#newsList dl dd a:hover {
	color: #DA0048;
}
.important_box {
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.64;
	color: #746D67;
}
.important_box .title {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.6;
	color: #000000;
	padding-left: 30px;
	position: relative;
	margin-bottom: 12px;
}
.important_box .title:before {
	content: "";
	width: 19px;
	height: 19px;
	background: url(/wp-content/uploads/ico_important.png) no-repeat left top;
	background-size: 19px 19px;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -11px;
}

@media screen and (max-width: 767px) {
	.news_section {
		padding: 30px 0 40px;
	}
	.news_section.elementor-section.elementor-section-boxed > .elementor-container {
		padding: 0 20px;
	}
	.h2Wrap h2 {
		line-height: 1.2;
	}
	#newsList dl {
		padding: 12px 0;
	}
}

.company_sec .txt_box {
    width: 48%;
    float: left;
    max-width: 400px;
}
.company_sec .img_box {
    width: 48%;
    float: right;
        margin-top: 10px;
}
.company_sec .txt_box .txt {
    margin-top: 20px;
}
.company_sec .txt_box .txt {
    margin-top: 20px;
    color: #333333;
    font-size: 15px;
    margin-bottom: 35px;
}
.company_sec .btn a {
    background: #da0048;
    color: #fff;
}
.company_sec .btn a:before {
    background: #da0048;
}
.company_sec .btn a:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.company_sec .btn a:hover {
    background: #fff;
    color: #da0048;
}
.company_sec .btn a:hover:after {
    border-top: 2px solid #da0048;
    border-right: 2px solid #da0048;
}
@media screen and (max-width: 767px) {
.company_sec .txt_box {
    width: 100%;
    float: none;
    max-width: 400px;
        margin: 0 auto;
}
.company_sec .img_box {
    width: 100%;
    float: none;
    margin-top: 35px;
}

}
/* =====================================
■UNDER
===================================== */
/*--------------------------------------
Mainimage
--------------------------------------*/
.under_mainimage {
	position: relative;
	padding-top: 206px;
}
.under_mainimage .inner {
	position: absolute;
	left: 0;
	bottom: -24px;
	z-index: 2;
}
.under_mainimage .inner h2 {
	display: inline-block;
	font-family: "interstate", sans-serif;
	font-size: 40px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.2;
	color: #fff;
	padding: 9px 20px 8px;
	text-transform: uppercase;
	position: relative;
	overflow: hidden;
}
.under_mainimage .inner p {
	line-height: 1;
	margin-top: 13px;
}
.under_mainimage .inner p .sub {
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.2;
	color: #fff;
	padding: 16px 20px;
	position: relative;
	overflow: hidden;
}
.under_mainimage .inner .txt,
.under_mainimage .inner .txt02 {
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	-webkit-transition-property: text;
	transition-property: text;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.under_mainimage .inner .txtbg,
.under_mainimage .inner .txtbg02 {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #DA0048;
	display: block;
	z-index: -1;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	-webkit-transition-property: color;
	transition-property: color;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.bgToRight {
	-webkit-animation-name: bgToRight;
	-ms-animation-name: bgToRight;
	animation-name: bgToRight;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1.2s;
	-ms-animation-duration: 1.2s;
	animation-duration: 1.2s;
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
}
@keyframes bgToRight {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
@-webkit-keyframes bgToRight {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
.bgToRight02 {
	-webkit-animation-name: bgToRight02;
	-ms-animation-name: bgToRight02;
	animation-name: bgToRight02;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1.2s;
	-ms-animation-duration: 1.2s;
	animation-duration: 1.2s;
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-animation-delay: 1.3s;
	animation-delay: 1.3s;
}
@keyframes bgToRight02 {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
@-webkit-keyframes bgToRight02 {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
.txtToRight {
	-webkit-animation-name: txtToRight;
	-ms-animation-name: txtToRight;
	animation-name: txtToRight;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 0.5s;
	-ms-animation-duration: 0.5s;
	animation-duration: 0.5s;
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-animation-delay: 1.15s;
	animation-delay: 1.15s;
}
@keyframes txtToRight {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
@-webkit-keyframes txtToRight {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
.txtToRight02 {
	-webkit-animation-name: txtToRight02;
	-ms-animation-name: txtToRight02;
	animation-name: txtToRight02;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1.2s;
	-ms-animation-duration: 1.2s;
	animation-duration: 1.2s;
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-animation-delay: 1.4s;
	animation-delay: 1.4s;
}
@keyframes txtToRight02 {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}
@-webkit-keyframes txtToRight02 {
	from {
		opacity: 0;
		-webkit-transform: scaleX(0);
		transform: scaleX(0);
	}
	to {
		opacity: 1;
		-webkit-transform: scaleX(1);
		transform: scaleX(1);
	}
}

@media screen and (max-width: 767px) {
	.under_mainimage {
		padding-top: 155px;
	}
}

@media screen and (max-width: 480px) {
	.under_mainimage .inner h2 {
		font-size: 30px;
		letter-spacing: 0.1em;
	}
	.under_mainimage .inner p .sub {
		font-size: 16px;
	}
}

/* -------------------------------------
代表挨拶
------------------------------------- */
.message_section {
	padding: 83px 0 90px;
}
.message_section .titWrap {
	float: left;
	width: 415px;
}
.message_section .titWrap h3 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 2.23;
	margin-bottom: 23px;
}
.message_section .titWrap .nameTitle {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.55;
	letter-spacing: 0.15em;
	margin-bottom: 11px;
}
.message_section .titWrap .name {
	font-size: 27px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.15em;
}
.message_section .txtWrap {
	padding-left: 415px;
	margin-top: 9px;
}
.message_section .txtWrap strong {
	font-size: 18px;
}
.message_section .txtWrap p {
	margin-bottom: 27px;
	letter-spacing: 0.15em;
}
.message_section .txtWrap p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.message_section .titWrap {
		width: 350px;
	}
	.message_section .titWrap h3 {
		font-size: 32px;
	}
	.message_section .txtWrap {
		padding-left: 350px;
	}
}

@media screen and (max-width: 767px) {
	.message_section {
		padding: 50px 0;
	}
	.message_section .titWrap {
		float: none;
		width: 100%;
	}
	.message_section .titWrap h3 {
		font-size: 30px;
	}
	.message_section .txtWrap {
		padding-left: 0;
		margin-top: 40px;
	}
}

/* -------------------------------------
企業理念
------------------------------------- */
.ideaTit {
	margin-bottom: 21px;
}
.ideaTit sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 20px;
}
.ideaTit h3 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 2.23;
}
.ideaTxt {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 2.78;
}
.vision_section {
	padding: 125px 0 87px;
}
.mission_section {
	background: #FEF8FA;
	padding: 100px 0;
}
.mission_section .picWrap {
	float: right;
	width: 49.5%;
}
.mission_section .txtWrap {
	overflow: hidden;
}

@media screen and (max-width: 1060px) {
	.ideaTit h3 {
		font-size: 30px;
		letter-spacing: 0.05em;
	}
}

@media screen and (max-width: 767px) {
	.vision_section {
		padding: 80px 0 50px;
	}
	.mission_section {
		padding: 50px 0;
	}
	.mission_section .picWrap {
		float: none;
		width: 100%;
		max-width: 400px;
		margin: 50px auto 0;
	}
}

@media screen and (max-width: 480px) {
	.ideaTit h3 {
		font-size: 26px;
	}
}


/* -------------------------------------
COMPANY
------------------------------------- */
.company_table th {
	width: 150px;
}
.company_list li {
	float: left;
	width: 32.7%;
	margin-left: 0.95%;
}
.company_list li:first-child {
	margin: 0;
}

@media screen and (max-width: 767px) {
	.company_table th {
		width: 130px;
	}
	.company_list {
		max-width: 344px;
		margin: 0 auto;
	}
	.company_list li {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-top: 10px;
	}
}

@media screen and (max-width: 480px) {
	.company_table th {
		width: 100px;
	}
}

/* -------------------------------------
HISTORY
------------------------------------- */
.history_table th,
.history_table td {
	padding: 18px 0;
}
.history_table th {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.15em;
	text-align: right;
	width: 170px;
	padding-right: 30px;
	vertical-align: top;
	border-right: 1px solid #E2E2E2;
	position: relative;
}
.history_table th:before {
	content: "";
	width: 13px;
	height: 13px;
	background: #DA0048;
	position: absolute;
	right: -7px;
	top: 26px;
	border-radius: 50%;
}
.history_table td {
	padding-left: 40px;
	vertical-align: middle;
	letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
	.history_table th {
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0.05em;
		width: 110px;
		padding-right: 20px;
	}
	.history_table th:before {
		top: 24px;
	}
	.history_table td {
		padding-left: 25px;
		letter-spacing: 0.05em;
		font-size: 12px;
	}
}

/* -------------------------------------
ACCESS
------------------------------------- */
.accessTit {
	margin-bottom: 23px;
}
.accessTit sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 26px;
}
.accessTit h3 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0;
	line-height: 1.6;
}

@media screen and (max-width: 1060px) {
	.accessTit h3 {
		font-size: 30px;
	}
}


/* -------------------------------------
SERVICE
------------------------------------- */
.serviceWrap {
	margin-bottom: 35px;
}
.serviceWrap .txtBox {
	float: left;
	width: 58%;
}
.serviceWrap .txtBox sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 23px;
}
.serviceWrap .txtBox h3 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.8;
}
.serviceWrap .picBox {
	float: right;
	width: 34%;
	margin-top: 57px;
}
.btn_list li {
	float: left;
	width: 23.5%;
	margin-left: 2%;
}
.btn_list li:first-child {
	margin: 0;
}
.btn_list li a {
	max-width: 100%;
}

.regulation_section {
	padding: 90px 0;
}
.regulation_section .titBox {
	border-bottom: 2px solid #DA0048;
	padding-bottom: 25px;
}
.regulation_section .titBox sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 23px;
}
.regulation_section .titBox h3 {
	font-size: 28px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 2.22;
}
.regulation_list dl {
	display: table;
	width: 100%;
	border-bottom: 2px solid #E2E2E2;
	padding: 50px 0 42px;
	box-sizing: border-box;
}
.regulation_list dl dt {
	display: table-cell;
	width: 26%;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0.15em;
	vertical-align: middle;
}
.regulation_list dl dd {
	display: table-cell;
	vertical-align: middle;
}
.regulation_list dl dd li {
	float: left;
	width: 44%;
	margin: 5px 0 5px 6%;
}
.regulation_list dl dd li a {
	display: table;
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.15em;
	text-align: center;
	background: #fff;
	color: #DA0048;
	padding: 15px 20px;
	box-sizing: border-box;
	position: relative;
	border-radius: 50px;
	border: 2px solid #DA0048;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	overflow: hidden;
	z-index: 1;
}
.regulation_list dl dd li a:before {
	display: block;
	content: "";
	opacity: 1;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	background: #fff;
	will-change: transform;
}
.regulation_list dl dd li a:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	right: 15px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.regulation_list dl dd li a:hover {
	background: #DA0048;
	color: #fff;
	-webkit-transition: background-color 0s;
	transition: background-color 0s;
}
.regulation_list dl dd li a:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.regulation_list dl dd li a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	right: 15px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.regulation_list dl dd li a > span {
	display: table-cell;
	vertical-align: middle;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.serviceWrap .txtBox h3 {
		font-size: 32px;
	}
	.btn_list li a {
		font-size: 13px;
		letter-spacing: 0.05em;
	}
	.regulation_list dl dt {
		font-size: 20px;
		letter-spacing: 0.1em;
	}
}

@media screen and (max-width: 767px) {
	.serviceWrap .txtBox {
		float: none;
		width: 100%;
	}
	.serviceWrap .txtBox h3 {
		font-size: 30px;
	}
	.serviceWrap .picBox {
		float: none;
		width: 100%;
		max-width: 680px;
		margin: 30px auto 0;
	}
	.btn_list li {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-top: 18px;
	}
	.regulation_section {
		padding: 80px 0;
	}
	.regulation_section .titBox h3 {
		font-size: 24px;
		line-height: 1.5;
	}
	.regulation_list dl {
		display: block;
		padding: 35px 0 40px;
	}
	.regulation_list dl dt {
		display: block;
		width: 100%;
	}
	.regulation_list dl dd {
		display: block;
	}
	.regulation_list dl dd li {
		float: none;
		width: 100%;
		margin: 10px 0 0;
	}
}

@media screen and (max-width: 480px) {
	.serviceWrap .txtBox h3 {
		font-size: 24px;
		letter-spacing: 0.05em;
	}
}

/* -------------------------------------
個人情報保護方針
------------------------------------- */
.privacy_section {
	background: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	padding: 101px 60px 80px;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 2.14;
}
.privacy_section .titWrap {
	margin-bottom: 25px;
}
.privacy_section .titWrap sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 10px;
}
.privacy_section .titWrap h2 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.8;
}
.privacy_section p {
	margin-bottom: 30px;
}
.privacy_section p:last-child {
	margin-bottom: 0;
}
.privacy_section .circle_list > li:before {
	background: #0D367A;
	top: 10px;
}

@media screen and (max-width: 767px) {
	.privacy_section {
		padding: 50px 20px;
	}
	.privacy_section .titWrap h2 {
		font-size: 28px;
	}
}


/* -------------------------------------
WORKS
------------------------------------- */
#caseList #content {
	padding: 150px 0 86px;
}
#caseList .case_list > li {
	padding-bottom: 50px;
	margin-bottom: 50px;
	border-bottom: 1px solid #E2E2E2;
}
#caseList .case_list > li:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}
#caseList .case_list > li .picWrap {
	float: left;
	width: 30%;
	overflow: hidden;
	position: relative;
}
#caseList .case_list > li .picWrap a {
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 68%;
}
#caseList .case_list > li .picWrap a span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(1);
	transition: ease-in-out .2s;
}
#caseList .case_list li .picWrap a:hover span {
	transform: scale(1.1);
}
#caseList .case_list > li .detailWrap {
	float: right;
	width: 67%;
}
#caseList .case_list > li .category {
	margin-bottom: 12px;
}
#caseList .case_list > li .category li {
	display: inline-block;
	margin-right: 10px;
	margin-bottom: 10px;
}
#caseList .case_list > li .category span {
	display: block;
	min-width: 61px;
	height: 27px;
	font-size: 11px;
	font-weight: bold;
	line-height: 27px;
	letter-spacing: 0.2em;
	padding: 0 20px;
	color: #fff;
	box-sizing: border-box;
	text-transform: uppercase;
	background: #DA0048;
	border-radius: 50px;
}
#caseList .case_list > li .detailWrap .excerpt {
	font-size: 17px;
	line-height: 1.77;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}
#caseList .case_list > li .detailWrap .excerpt h3 {
	font-weight: bold;
}

.search_section {
	display: none;
	background: #F5F5F5;
	padding: 96px 0 100px;
}
.search_section dl + dl {
	margin-top: 36px;
}
.search_section dl dt {
	font-family: "interstate", sans-serif;
	font-size: 40px;
	font-weight: 500;
	color: #DA0048;
	letter-spacing: 0.15em;
	line-height: 1;
	margin-bottom: 27px;
}
.search_section dl dt span {
	display: block;
	font-size: 18px;
	font-weight: bold;
	color: #000000;
	letter-spacing: 0.1em;
	line-height: 1.2;
	margin-top: 13px;
}

.search_section dl .pc_line li {
	display: inline-block;
	margin-right: 12px;
	margin-bottom: 10px;
}
.search_section dl .pc_line li a {
	display: block;
	min-width: 182px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.2em;
	text-align: center;
	background: #fff;
	color: #DA0048;
	padding: 15px 25px;
	box-sizing: border-box;
	position: relative;
	border-radius: 50px;
	border: 2px solid #DA0048;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	overflow: hidden;
	z-index: 1;
}
.search_section dl.area .pc_line li a {
	min-width: 142px;
}
.search_section dl .pc_line li a:before {
	display: block;
	content: "";
	opacity: 1;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	background: #fff;
	will-change: transform;
}
.search_section dl .pc_line li a:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.search_section dl .pc_line li a:hover {
	background: #DA0048;
	color: #fff;
	-webkit-transition: background-color 0s;
	transition: background-color 0s;
}
.search_section dl .pc_line li a:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.search_section dl .pc_line li a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	right: 15px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

@media screen and (max-width: 767px) {
	#caseList #content {
		padding: 80px 0;
	}
	#caseList .case_list > li .picWrap {
		float: none;
		width: 100%;
	}
	#caseList .case_list > li .detailWrap {
		float: none;
		width: 100%;
		margin-top: 30px;
	}
	.search_section dl .pc_line {
		display: none;
	}
	.search_section dl .select {
		width: 100%;
		height: 100%;
		cursor: pointer;
		border-radius: 32px 32px 0 0;
		position: relative;
	}
	.search_section dl .select > li {
		position: relative;
	}
	.select_expand {
		width: 0;
		height: 60px;
		position: absolute;
		top: 0;
		right: 0;
	}
	.select_expand:after {
		content: '';
		position: absolute;
		top: 50%;
		right: 30px;
		-webkit-transform: translate(-50%, -50%) rotate(45deg) scaleY(1);
		transform: translate(-50%, -50%) rotate(45deg) scaleY(1);
		color: #3e3e3e;
		pointer-events: none;
		z-index: 2;
		transition: all 250ms cubic-bezier(.4,.25,.3,1);
		opacity: .6;
		display: block;
		width: 10px;
		height: 10px;
		border-right: 4px solid #000000;
		border-bottom: 4px solid #000000;
		margin-top: -2px;
		box-sizing: border-box;
	}
	.select_expand:hover:after {
		opacity: 1;
	}
	.select_expand:checked:after {
		-webkit-transform: translate(-50%, -50%) rotate(90deg) scaleX(-1) scaleY(1.75);
		transform: translate(-50%, -50%) rotate(135deg) scaleX(-1) scaleY(1);
		margin-top: 3px;
	}
	.select_expandLabel {
		display: block;
		width: 100%;
		height: 60px;
		position: absolute;
		top: 0;
		left: 0;
		cursor: pointer;
		z-index: 2;
		border-radius: 32px;
	}
	.select_close {
		display: none;
	}
	.select_closeLabel {
		width: 100%;
		height: 60px;
		position: absolute;
		top: 0;
		left: 0;
		display: none;
		z-index: 1;
	}
	.select_items {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		border: 2px solid #DA0048;
		border-radius: 32px;
		padding-top: 60px;
		box-sizing: border-box;
		background: #fff;
	}
	.select_options {
		border-radius: 32px;
		padding: 0 30px;
		background: #fff;
		position: relative;
		z-index: 2;
		margin-top: 1px;
	}
	.select_option {
		position: relative;
	}
	.select_input {
		display: none;
	}
	.select_label {
		transition: all 250ms cubic-bezier(.4,.25,.3,1);
		display: block;
		height: 0;
		font-size: 20px;
		line-height: 64px;
		overflow: hidden;
		color: #000;
		background: #fff;
		cursor: pointer;
		letter-spacing: 0.1em;
		box-sizing: border-box;
		width: 100%;
		position: relative;
		z-index: 1;
	}
	.select_label a {
		display: block;
		width: 100%;
		height: 100%;
		position: relative;
	}
	.select_label a:after {
		content: '';
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translate(-50%, -50%) rotate(45deg) scaleY(1.35);
		transform: translate(-50%, -50%) rotate(45deg) scaleY(1.35);
		margin-top: -1px;
		opacity: 0;
		color: #3e3e3e;
		pointer-events: none;
		z-index: 2;
		transition: all 250ms cubic-bezier(.4,.25,.3,1);
		display: block;
		width: 10px;
		height: 10px;
		border-right: 4px solid #DA0048;
		border-bottom: 3px solid #DA0048;
		box-sizing: border-box;
	}
	.select_label a:hover:after {
		opacity: 1;
	}
	.select_label-placeholder {
		height: 64px;
		vertical-align: middle;
		position: absolute;
		top: 0;
		left: 0;
		opacity: .6;
		background-color: transparent;
		z-index: 1;
		padding: 0 30px;
	}
	.select_label-placeholder:after {
		display: none;
	}
	.select_expand:checked + .select_closeLabel {
		display: block;
		border-bottom: 1px solid #DBD9D5;
	}
	.select_expand:checked + .select_closeLabel + .select_options .select_label {
		height: 60px;
		border-bottom: 1px solid #DBD9D5;
	}
	.select_expand:checked + .select_closeLabel + .select_options + .select_expandLabel {
		display: none;
	}
	.select_input:checked + .select_label {
		height: 60px;
		margin-top: -60px;
	}
}

#worksMain {
	position: relative;
}
#worksMain .pic {
	position: relative;
}
/* #worksMain .pic:before {
content: "";
width: 100%;
height: 100%;
background: #000;
background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, rgba(0, 0, 0, 1)), color-stop(0.10, rgba(0, 0, 0, 0)));
background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 100%);
background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 100%);
background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 100%);
background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 100%);
background: -linear-gradient(top, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='rgba(0, 0, 0, 0)', endColorstr='rgba(0, 0, 0, 1)',GradientType=0 );
position: absolute;
top: 0;
left: 0;
opacity: 0.6;
} */
#worksMain img {
	width: 100% !important;
}
#worksMain .inner {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
	top: 0;
}
#worksMain .inner .container {
	display: table;
	height: 100%;
}
#worksMain .inner .txt {
	display: table-cell;
	vertical-align: middle;
	padding: 30px 0 80px;
}
#worksMain .inner .txt .mark {
	position: relative;
	margin-bottom: 20px;
	max-width: 535px;
}
#worksMain .inner .txt .mark:after {
	content: "";
	width: 0;
	height: 2px;
	background: #DA0048;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -1px;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: 0 50%;
	transform-origin: 0 50%;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transition-duration: .3s;
	transition-duration: .3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.is-scrolled section.elementor-element #worksMain .inner .txt .mark:after {
	width: 75%;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
#worksMain .inner .txt .mark sup {
	display: block;
	max-width: 150px;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.2em;
	color: #DA0048;
	line-height: 1;
	position: relative;
	z-index: 1;
	transition: all 1.5s;
}
#worksMain .inner .txt .mark.smart sup {
	max-width: 230px;
}
.is-scrolled section.elementor-element #worksMain .inner .txt .mark.smart:after {
	width: 56%;
}
#worksMain .inner .txt .mark.media sup {
	max-width: 90px;
}
.is-scrolled section.elementor-element #worksMain .inner .txt .mark.media:after {
	width: 83%;
}
#worksMain .inner .txt .mark sup span {
	display: inline-block;
}
#worksMain .inner .txt h2 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.81;
	color: #FFFFFF;
	margin-bottom: 15px;
}
#worksMain .inner .txt p {
	font-size: 18px;
	letter-spacing: 0.15em;
	line-height: 1.95;
	color: #FFFFFF;
	max-width: 535px;
}
.interview_section {
	margin-top: -5.8%;
	z-index: 1;
}
.interview_section .inner {
	background: #FEF8FA;
	padding: 46px 54px 43px;
	box-sizing: border-box;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.interview_section .infoWrap {
	float: left;
	width: 42%;
	margin-top: 4px;
}
.interview_section .infoWrap h3 {
	font-family: "interstate", sans-serif;
	font-size: 40px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.2;
	color: #DA0048;
	margin-bottom: 2px;
}
.interview_section .infoWrap p {
	font-size: 18px;
	line-height: 2.2;
	margin-bottom: 9px;
}
.interview_section .infoWrap dl dt {
	float: left;
	width: 54px;
}
.interview_section .infoWrap dl dd {
	padding-left: 74px;
	margin-bottom: 20px;
}
.interview_section .infoWrap dl dd:last-child {
	margin-bottom: 0;
}
.interview_section .infoWrap dl dd span {
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 4px;
}
.interview_section .txtWrap {
	float: right;
	width: 52.5%;
}
.w_730.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 780px !important;
}
.qa_h3 h3 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.81 !important;
}

.website_section {
	border-top: 2px solid #E2E2E2;
	padding: 96px 0 47px;
}
.website_section .picWrap {
	float: left;
	width: 48%;
	margin-right: 38px;
	text-align: center;
}
.website_section .txtWrap {
	overflow: hidden;
}
.website_section .txtWrap .tit {
	margin-bottom: 7px;
}
.website_section .txtWrap .tit sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 10px;
}
.website_section .txtWrap .tit h3 {
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.8;
}
.website_section .txtWrap .sitename {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.8;
	margin-bottom: 10px;
}
.website_section .txtWrap .txt {
	font-size: 14px;
	line-height: 1.65;
	letter-spacing: 0.05em;
	color: #746D67;
	margin-bottom: 16px;
}
.website_section .txtWrap .txt span {
	font-weight: bold;
	display: inline-block;
}
ul.technology_list li {
	background: #A7A7A7;
	color: #fff;
	display: inline-block;
	padding: 9px 15px 8px;
	font-size: 12px;
	line-height: 1;
	border-radius: 50px;
	letter-spacing: 0.05em;
	margin: 4px 4px 4px 0;
}
.website_info {
	border: 1px solid #DBD9D5;
	padding: 5%;
	display: table;
	width: 100%;
	box-sizing: border-box;
}
.website_info .logo {
	display: table-cell;
	width: 52.5%;
	vertical-align: middle;
}
.website_info .txt {
	display: table-cell;
	width: 47.5%;
	padding-left: 4.5%;
	vertical-align: middle;
	box-sizing: border-box;
}
.website_info .txt dl dt {
	float: left;
	width: 68px;
}
.website_info .txt dl dd {
	padding-left: 68px;
}
.appstore_list {
	max-width: 490px;
	margin: 0 auto;
	line-height: 0;
	display: table;
	width: 100%;
}
.appstore_list li {
	width: 50%;
	display: table-cell;
	vertical-align: middle;
}
.appstore_list li:first-child a {
	width: 100% !important;
	height: 66px !important;
	background-position: center !important;
	background-size: 90% auto !important;
}
.appstore_list li img {
	width: 100% !important;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.is-scrolled section.elementor-element #worksMain .inner .txt .mark:after {
		width: 72%;
	}
	#worksMain .inner .txt h2 {
		font-size: 30px;
		line-height: 1.6;
	}
	#worksMain .inner .txt p {
		font-size: 16px;
	}
	.interview_section .infoWrap h3 {
		font-size: 34px;
	}
	.website_section .txtWrap .tit h3 {
		font-size: 30px;
	}
}

@media screen and (max-width: 767px) {
	/* 	#worksMain .pic:before {
	opacity: 0.9;
} */
	#worksMain .inner .txt {
		vertical-align: bottom;
		padding: 30px 0 200px;
	}
	#worksMain .inner .txt .mark {
		max-width: 330px;
	}
	.is-scrolled section.elementor-element #worksMain .inner .txt .mark:after {
		width: 58%;
	}
	.is-scrolled section.elementor-element #worksMain .inner .txt .mark.smart:after {
		width: 28%;
	}
	.is-scrolled section.elementor-element #worksMain .inner .txt .mark.media:after {
		width: 72%;
	}
	#worksMain .inner .txt .mark sup {
		letter-spacing: 0.1em;
	}
	#worksMain .inner .txt h2 {
		font-size: 24px;
		letter-spacing: 0;
		line-height: 1.36;
		margin-bottom: 15px;
		max-width: 330px;
	}
	#worksMain .inner .txt p {
		font-size: 16px;
		letter-spacing: 0.05em;
		line-height: 1.57;
		color: #FFFFFF;
		max-width: 330px;
	}
	#worksMain .inner .txt p br {
		display: none;
	}
	.interview_section {
		margin-top: -170px;
	}
	.interview_section .inner {
		padding: 40px 20px;
	}
	.interview_section .infoWrap {
		float: none;
		width: 100%;
		margin-top: 0;
	}
	.interview_section .infoWrap p {
		margin-bottom: 30px;
	}
	.interview_section .infoWrap dl dt {
		float: none;
		width: 125px;
		margin: 0 auto 30px;
		text-align: center;
	}
	.interview_section .infoWrap dl dd {
		padding-left: 0;
		margin-bottom: 30px;
	}
	.interview_section .txtWrap {
		float: none;
		width: 100%;
		margin-top: 30px;
	}
	.qa_h3 h3 {
		font-size: 24px;
	}
	.qa_h3 h3 br {
		display: none;
	}
	.website_section {
		padding: 50px 0;
	}
	.website_section .picWrap {
		float: none;
		width: 100%;
		margin: 0 auto 30px;
	}
	.website_section .txtWrap .tit h3 {
		font-size: 24px;
	}
	.website_info {
		padding: 25px 20px;
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.website_info .logo {
		display: block;
		width: 100%;
		max-width: 470px;
		margin: 0 auto 20px;
	}
	.website_info .txt {
		display: block;
		width: 100%;
		padding-left: 0;
		box-sizing: border-box;
		max-width: 470px;
		margin: 0 auto;
	}
	.website_info .txt dl dd a {
		word-break: break-all;
	}
}

@media screen and (max-width: 480px) {
	#worksMain .inner .txt h2 {
		font-size: 20px;
	}
	.interview_section .infoWrap h3 {
		font-size: 34px;
	}
	.interview_section .infoWrap dl dd span {
		font-size: 16px;
	}
	.appstore_list li:first-child a {
		height: 54px !important;
	}
}


/* -------------------------------------
Bread
------------------------------------- */
#bread_area {
	padding: 16px 0 19px;
}
#bread {
	max-width: 1060px;
	margin: 0 auto;
	padding: 0 30px;
	box-sizing: border-box;
	width: 100%;
	line-height: 1.2;
}
#bread li {
	font-size: 10px;
	color: #000000;
	letter-spacing: 0.05em;
	display: inline;
	position: relative;
}
#bread li+li {
	padding-left: 20px;
}
#bread li+li:before {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	left: 5px;
	top: 5px;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#bread li a {
	color: #000;
	text-decoration: none;
	vertical-align: baseline;
}
#bread li a:hover {
	color: #DA0048;
	text-decoration: none;
}
#bread li:first-child a:hover {
	opacity: 0.8;
}
#bread li:first-child a img {
	width: 11px;
	vertical-align: text-top;
	    margin-top: 2px;
}

@media screen and (max-width: 767px) {
	#bread {
		padding: 0 20px;
	}
}

/*--------------------------------------
elementor
--------------------------------------*/
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 1060px !important;
	padding: 0 30px;
}
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
	padding: 0 !important;
}
.elementor img {
	width: auto !important;
}
.elementor-image-box-wrapper {
	display: block !important;
}
.elementor-widget-image-box .elementor-image-box-content {
	text-align: left !important;
}
.elementor-image-box-title {
	font-size: 18px;
	margin-bottom: 20px;
	line-height: 1.4;
	color: #fff;
	overflow: hidden;
	background: #3dc2b7;
	padding: 10px 20px;
}
.elementor-image-box-img {
	width: 30% !important;
	float: right;
	display: block !important;
	margin: 0 0 10px 20px !important;
	text-align: center;
	text-align: right;
}
.img_l .elementor-image-box-img {
	float: left;
	margin: 0 20px 10px 0 !important;
}
.auto_width .elementor-image-box-img {
	width: auto !important;
}
.elementor-widget-image .elementor-image > a,
.elementor-widget-image .elementor-image figure > a {
	display: inline-block !important;
}
.elementor-widget-image .elementor-image > a:hover img,
.elementor-widget-image .elementor-image figure > a:hover img {
	opacity: 0.8 !important;
}

@media screen and (max-width: 767px) {
	.elementor-section.elementor-section-boxed > .elementor-container {
		padding: 0 20px;
	}

	.elementor-image-box-img,
	.img_l .elementor-image-box-img {
		width: 100% !important;
		float: none;
		margin: 0 auto 20px !important;
		text-align: center;
	}
}


/*--------------------------------------
TITLE
--------------------------------------*/
.under_title_h3 {
	background: #E5F8F7;
	padding: 20px 36px;
	position: relative;
}
.under_title_h3:after {
	content: "";
	width: 0;
	height: 0;
	border-bottom: 65px solid #89D9D2;
	border-left: 65px solid transparent;
	position: absolute;
	right: 0;
	bottom: 0;
}
.under_title_h3 h3 {
	font-family: "UD新ゴ L", "UD Shin Go Light";
	font-size: 28px;
	color: #373431;
	letter-spacing: 0.15em;
	line-height: 1.4 !important;
	position: relative;
}
.under_title_h4 h4 {
	font-family: "UD新ゴ L", "UD Shin Go Light";
	font-size: 23px;
	letter-spacing: 0.15em;
	line-height: 1.6 !important;
	position: relative;
	padding-left: 20px !important;
	color: #373431;
}
.under_title_h4 h4:before {
	display: block;
	content: "";
	width: 6px;
	height: 50%;
	background: #44C6BA;
	position: absolute;
	left: 0;
	top: 0;
}
.under_title_h4 h4:after {
	display: block;
	content: "";
	width: 6px;
	height: 50%;
	background: #F9BC78;
	position: absolute;
	left: 0;
	bottom: 0;
}
.under_title_h5 h5 {
	font-family: "UD新ゴ L", "UD Shin Go Light";
	font-size: 23px;
	letter-spacing: 0.15em;
	line-height: 1.6 !important;
	position: relative;
	padding-left: 35px !important;
	color: #373431;
}
.under_title_h5 h5:before {
	display: block;
	content: "";
	width: 14px;
	height: 14px;
	background: #44C6BA;
	position: absolute;
	left: 5px;
	top: 12px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
	.under_title_h3 {
		padding: 16px 20px;
	}
	.under_title_h3:after {
		border-bottom: 30px solid #89D9D2;
		border-left: 30px solid transparent;
	}
	.under_title_h3 h3 {
		font-size: 25px;
	}
	.under_title_h4 h4 {
		font-size: 22px;
	}
	.under_title_h5 h5 {
		font-size: 22px;
	}
}


/* -------------------------------------
margin_base
------------------------------------- */
.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }
.mb100 { margin-bottom: 100px !important; }


/*--------------------------------------
BUTTON
--------------------------------------*/
.btn a {
	display: block;
	width: 100%;
	max-width: 182px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.2em;
	text-align: center;
	background: #fff;
	color: #DA0048;
	padding: 15px 25px;
	box-sizing: border-box;
	position: relative;
	border-radius: 50px;
	border: 2px solid #DA0048;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	overflow: hidden;
	z-index: 1;
}
.btn a:before {
	display: block;
	content: "";
	opacity: 1;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	background: #fff;
	will-change: transform;
}
.btn a:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.btn a:hover {
	background: #DA0048;
	color: #fff;
	-webkit-transition: background-color 0s;
	transition: background-color 0s;
}
.btn a:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.btn a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	right: 15px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.white_btn a {
	display: block;
	width: 100%;
	max-width: 182px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.2em;
	text-align: center;
	background: #fff;
	color: #000000;
	padding: 17px 25px;
	box-sizing: border-box;
	position: relative;
	border-radius: 50px;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	overflow: hidden;
	z-index: 1;
}
.white_btn a:before {
	display: block;
	content: "";
	opacity: 1;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	background: #fff;
	will-change: transform;
}
.white_btn a:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.white_btn a:hover {
	background: #DA0048;
	color: #fff;
	-webkit-transition: background-color 0s;
	transition: background-color 0s;
}
.white_btn a:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.white_btn a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	right: 15px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.pink_btn a {
	display: block;
	width: 100%;
	max-width: 182px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.2em;
	text-align: center;
	background: #DA0048;
	color: #fff;
	padding: 17px 25px;
	box-sizing: border-box;
	position: relative;
	border-radius: 50px;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	overflow: hidden;
	z-index: 1;
}
.pink_btn a:before {
	display: block;
	content: "";
	opacity: 1;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	background: #DA0048;
	will-change: transform;
}
.pink_btn a:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.pink_btn a:hover {
	background: #fff;
	color: #DA0048;
	-webkit-transition: background-color 0s;
	transition: background-color 0s;
}
.pink_btn a:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.pink_btn a:hover:after {
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	right: 15px;
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}


/* -------------------------------------
地図
------------------------------------- */
.map {
	position: relative;
	width: 100%;
	padding-top: 298px;
}
.map iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
	border: none;
}

.move_box {
    position: relative;
    bottom: 0;
    overflow: hidden;
    width: 100%;
    height: 0;
    transform-origin: 50% 100%;
    padding-top: 44.5%;
    box-sizing: border-box;
}
.move_box video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: none;
    transform: scale(1.4);
    transform-origin: 50% 100%;
}
.move_box video source {
    min-width: 100%;
    min-height: 100%;
    height: auto;
    width: auto;
}
.catch_txt {
    position: absolute;
    z-index: 200;
    width: 100%;
    margin: 0 auto;
    height: 100%;
    top: 0;
    left: 0;
}
.catch_txt .catch_txt_table {
    display: table;
    width: 100%;
    margin: 0 auto;
    height: 100%;
}
.catch_txt_table .catch_txt_cell {
    vertical-align: middle;
    display: table-cell;
    text-align: center;
}
.catch_txt_table .catch_txt_cell .txt {
    display: inline-block;
    background: #e6156826;
    padding: 50px 50px;
    font-size: 60px;
    letter-spacing: 0.2em;
    color: #fff;
	    font-family: "interstate",sans-serif;
	font-weight:700;
}
@media screen and (max-width:1365px) {
.catch_txt_table .catch_txt_cell .txt {
    font-size: 35px;
    padding: 40px 50px;
}

}
@media screen and (max-width: 767px) {
.catch_txt_table .catch_txt_cell .txt {
    font-size: 34px;
    padding: 40px;
    line-height: 1.8;
}
.move_box video {
    transform: scale(1.3);
    transform-origin: 50% 57%;
}	
.move_box {
    transform-origin: 50% 100%;
    padding-top: 137%;
}	
}

@media screen and (max-width:374px) {
.catch_txt_table .catch_txt_cell .txt {
    font-size: 32px;
    }
}
/* -------------------------------------
診療時間表
------------------------------------- */
table.timetable {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin-bottom: 22px;
}
.timetable th,
.timetable td {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	text-align: center;
	vertical-align: middle;
	line-height: 1;
	letter-spacing: 0;
	padding: 11px 0 12px;
	font-size: 15px;
	color: #373431;
}
.timetable thead th {
	font-weight: normal;
	border-bottom: 1px solid #EFEAE4;
	padding: 0 0 29px;
	vertical-align: bottom;
}
.timetable thead th:first-child {
	width: 33%;
	text-align: left;
	letter-spacing: 0.15em;
	font-size: 18px;
	font-weight: bold;
	color: #74CBE2;
}
.timetable thead th:last-child {
	width: 15%;
}
.timetable tbody th {
	word-break: keep-all;
	white-space: nowrap;
	text-align: left;
	letter-spacing: 0.2em;
}
.timetable tbody tr:first-child th,
.timetable tbody tr:first-child td {
	padding-top: 27px;
}
.timetable tbody tr:last-child th,
.timetable tbody tr:last-child td {
	border-bottom: 1px solid #EFEAE4;
	padding-bottom: 32px;
}
.timetable tbody td span {
	display: block;
	line-height: 1;
}
.comments {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 0.1em;
	margin-bottom: 24px;
	color: #373431;
}
.comments p {
	margin-bottom: 9px;
}
.comments p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.timetable thead th:first-child {
		width: 38%;
	}
	.timetable tbody th {
		letter-spacing: 0.1em;
	}
}

@media screen and (max-width: 480px) {
	.timetable th,
	.timetable td {
		font-size: 12px;
		letter-spacing: 0;
	}
	.timetable thead th:first-child {
		font-size: 14px;
	}
	.timetable tbody th {
		letter-spacing: 0.05em;
	}
}

/* -------------------------------------
番号リスト
------------------------------------- */
.num_list {
	counter-reset: li;
}
.num_list > li {
	margin-bottom: 15px;
	padding-left: 35px;
	position: relative;
}
.num_list > li:last-child {
	margin-bottom: 0;
}
.num_list > li:before {
	background: #6fba2c;
	color: #fff;
	content: counter(li, decimal);
	counter-increment: li;
	display: block;
	font-size: 16px;
	width: 24px;
	height: 24px;
	left: 0;
	line-height: 26px;
	position: absolute;
	text-align: center;
	top: 4px;
	letter-spacing: 0;
}

/*--------------------------------------
2列テーブル
--------------------------------------*/
.column2_table th,
.column2_table td {
	border-bottom: 1px solid #E2E2E2;
	letter-spacing: 0.1em;
	vertical-align: middle;
}
.column2_table th {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.4;
	padding: 26px 0 25px;
	box-sizing: border-box;
}
.column2_table td {
	line-height: 2;
	padding: 26px 0 25px 40px;
	box-sizing: border-box;
}

@media screen and (max-width: 767px) {
	.column2_table th {
		font-size: 18px;
	}
}

@media screen and (max-width: 480px) {
	.column2_table th {
		font-size: 14px;
		letter-spacing: 0.05em;
	}
	.column2_table td {
		padding: 26px 0 25px 15px;
		font-size: 12px;
		letter-spacing: 0.05em;
	}
}


/*--------------------------------------
* colorテーブル
--------------------------------------*/
.style_table th,
.style_table td {
	line-height: 1.8;
	padding: 11px 10px 9px;
	border: 1px solid #BFBEBD;
	word-break: break-all;
	text-align: center;
}
.style_table thead th {
	background: #89D9D2;
	color: #fff;
}
.style_table tbody th {
	background: #E5F8F7;
	width: 30%;
}
.style_table tbody td {
	background: #fff;
}

@media screen and (max-width: 767px) {
	.style_table th,
	.style_table td {
		font-size: 14px;
		letter-spacing: 0;
	}
}


/*--------------------------------------
リスト
--------------------------------------*/
.circle_list > li {
	position: relative;
	padding: 0 0 0 15px;
}
.circle_list > li:before {
	content: "";
	position: absolute;
	background: #DA0048;
	top: 9px;
	left: 0;
	height: 10px;
	width: 10px;
	border-radius: 50%;
}

.check_list > li {
	position: relative;
	padding: 2px 0 2px 30px;
}
.check_list > li:before {
	content: "";
	display: block;
	border: 2px solid #6fba2c;
	height: 19px;
	width: 19px;
	position: absolute;
	left: 0;
	top: 8px;
	box-sizing: border-box;
}
.check_list > li:after {
	content: "";
	display: block;
	width: 5px;
	height: 11px;
	border: solid #6fba2c;
	border-width: 0 2px 2px 0;
	position: absolute;
	left: 7px;
	top: 11px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	box-sizing: border-box;
}

.arrow_list > li {
	position: relative;
	padding: 0 0 0 30px;
	letter-spacing: 0.1em;
	margin: 5px 0;
}
.arrow_list > li:before {
	content: "";
	height: 10px;
	width: 10px;
	border-top: 2px solid #44C6BA;
	border-right: 2px solid #44C6BA;
	position: absolute;
	top: 10px;
	left: 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	box-sizing: border-box;
}

.free_list > li {
	position: relative;
	padding: 0 0 0 30px;
	letter-spacing: 0.1em;
	margin: 5px 0;
}
.free_list > li:before {
	content: "";
	position: absolute;
	background: #F9BC78;
	top: 9px;
	left: 0;
	height: 11px;
	width: 11px;
	border-radius: 50%;
}
.free_list > li > span {
	color: #F9BC78;
}

.column2_list li {
	display: inline-block;
	width: 48.5%;
	box-sizing: border-box;
	padding-right: 10px;
	vertical-align: top;
}
.column3_list li {
	display: inline-block;
	width: 31.5%;
	box-sizing: border-box;
	padding-right: 10px;
	vertical-align: top;
}
.column_list li {
	display: inline-block;
	width: auto;
	box-sizing: border-box;
	padding-right: 30px;
	vertical-align: top;
}

@media screen and (max-width: 767px) {
	.column2_list li,
	.column3_list li,
	.column_list li {
		display: block;
		width: 100%;
		padding-right: 0;
	}
}

/*--------------------------------------
文章・画像
--------------------------------------*/
.context_area .img_box img {
	float: right;
	width: 36% !important;
	margin: 9px 0 10px 50px;
	display: block;
}
.context_area.img_l .img_box img {
	float: left;
	margin: 9px 50px 10px 0;
}
.context_area .auto_img img {
	width: auto !important;
	display: block;
}
.text_box {
	overflow: hidden;
}

@media screen and (max-width: 767px) {
	.context_area .img_box img {
		float: none !important;
		width: auto !important;
		margin: 0 auto 30px !important;
	}
	.context_area .auto_img img {
		width: auto !important;
	}
	.context_area.img_l .text_area {
		float: none;
		width: 100%;
	}
}

/*--------------------------------------
フォントcolor
--------------------------------------*/
.txt_color {
	color: #74CBE2;
}
.txt_link {
	color: #000000 !important;
	vertical-align: top;
}
.txt_link:hover {
	text-decoration: underline !important;
}
.catch_title {
	font-size: 22px;
	color: #FFAEA2;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: center;
}


/*--------------------------------------
* 流れ
--------------------------------------*/
.flowList > li {
	background: #F1F1F1;
	position: relative;
	margin-bottom: 56px;
	padding: 40px;
}
.flowList > li:last-child {
	margin-bottom: 0;
}
.flowList > li:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-right: 18px solid transparent;
	border-left: 18px solid transparent;
	border-top: 17px solid #44C6BA;
	position: absolute;
	left: 50%;
	bottom: -36px;
	margin-left: -18px;
	box-sizing: border-box;
}
.flowList > li:last-child:after {
	display: none;
}
.flowList .flow_title {
	font-family: "UD新ゴ L", "UD Shin Go Light";
	font-size: 25px;
	line-height: 1.4;
	position: relative;
	margin-bottom: 20px;
	padding-left: 50px;
	padding-bottom: 9px;
	color: #373431;
	border-bottom: 1px solid #44C6BA;
	overflow: hidden;
}
.flowList .flow_title span {
	display: block;
	width: 30px;
	height: 30px;
	background: #44C6BA;
	font-size: 23px;
	line-height: 30px;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	margin-top: -21px;
	border-radius: 3px;
	position: absolute;
	left: 0;
	top: 50%;
}


/*--------------------------------------
ボックス
--------------------------------------*/
.bg_box {
	background: #fff;
	padding: 40px 50px 50px;
	border-bottom: 2px solid #DA0048;
}
.border_box {
	border: 2px solid #F9BC78;
	padding: 40px;
}
.box_title {
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.4;
	color: #F9BC78;
	margin-bottom: 15px;	
	padding-left: 20px;
	overflow: hidden;
	position: relative;
}
.box_title:before {
	content: "";
	width: 12px;
	height: 12px;
	background: #F9BC78;
	position: absolute;
	left: 0;
	top: 6px;
	border-radius: 50%;
}
.box_list > li {
	margin-top: 43px;
	border-bottom: 2px solid #E2E2E2;
	padding-bottom: 50px;
}
.box_list > li:first-child {
	margin: 0;
}
.box_list > li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

@media screen and (max-width: 767px) {
	.bg_box,
	.bg_box02,
	.border_box {
		padding: 40px 20px 45px;
	}
}

/*--------------------------------------
style_box
--------------------------------------*/
.style_box {
	background: #fff;
	border-radius: 30px;
	box-shadow: 3px 3px 11px rgba(0, 0, 0, 0.16);
}
.style_box .pic img {
	width: 100% !important;
	border-radius: 30px 30px 0 0;
}
.style_box .style_title {
	text-align: center;
	font-size: 24px;
	line-height: 1.4;
	padding: 20px 20px 24px;
	margin: 0 !important;
	border-bottom: 4px solid #c9ecab;
}
.style_box .inner {
	padding: 40px 50px 50px;
}
.style_box h3 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.6;
	margin-bottom: 21px;
}
.style_box h4 {
	font-size: 25px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.6;
	margin-bottom: 20px;
}
.style_box .inner .title {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.15em;
	margin-bottom: 13px !important;
	position: relative;
}
.style_box .inner .title > span {
	display: inline-block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	font-weight: normal;
	line-height: 1.2;
	letter-spacing: 0.15em;
	vertical-align: middle;
	color: #DA0048;
	margin-left: 5px;
}

@media screen and (max-width:767px) {
	.style_box .inner {
		padding: 40px 20px 45px;
	}
	.style_box h3 {
		font-size: 30px;
	}
	.style_box h4 {
		font-size: 22px;
	}
	.style_box .inner .title > span {
		display: block;
		margin: 5px 0 0;
	}
}

@media screen and (max-width: 480px) {
	.style_box .inner .title {
		font-size: 24px;
		letter-spacing: 0.1em;
	}
	.style_box h3 {
		font-size: 24px;
		letter-spacing: 0.1em;
	}
}

/*--------------------------------------
before after
--------------------------------------*/
.before_after {
	position: relative;
}
.before_after:before {
	display: block;
	content: "";
	border-left: 14px solid #6fba2c;
	border-bottom: 20px solid transparent;
	border-top: 20px solid transparent;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -20px;
	margin-left: -7px;
}
.before_after li {
	float: left;
	width: 46%;
	position: relative;
	text-align: center;
	margin-left: 8%;
}
.before_after li:first-child {
	margin: 0;
}

@media screen and (max-width: 767px) {
	.before_after:before {
		border-left: 20px solid transparent;
		border-top: 14px solid #6fba2c;
		border-right: 20px solid transparent;
		border-bottom: none;
		margin-top: -6px;
		margin-left: -20px;
	}
	.before_after li {
		float: none;
		width: 100%;
		margin-top: 50px;
		margin-left: 0;
	}
}

/*--------------------------------------
* anchorlinks
--------------------------------------*/
.anchorlinks_section {
	background: #F5F5F5;
	padding: 54px 0 56px;
}
.anchorlinks li {
	float: left;
	width: 18.2%;
	margin-left: 2.25%;
}
.anchorlinks li:first-child {
	margin: 0;
}
.anchorlinks li a {
	display: block;
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.2em;
	text-align: center;
	background: #fff;
	color: #000000;
	padding: 17px 25px 16px;
	box-sizing: border-box;
	position: relative;
	border-radius: 50px;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	overflow: hidden;
	z-index: 1;
}
.anchorlinks li a:before {
	display: block;
	content: "";
	opacity: 1;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	background: #fff;
	will-change: transform;
}
.anchorlinks li a:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	right: 20px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
}
.anchorlinks li a:hover {
	background: #DA0048;
	color: #fff;
	-webkit-transition: background-color 0s;
	transition: background-color 0s;
}
.anchorlinks li a:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.anchorlinks li a:hover:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.anchorlinks li a {
		font-size: 11px;
		letter-spacing: 0;
		padding: 17px 20px 16px;
	}
	.anchorlinks li a:after {
		right: 15px;
	}
}

@media screen and (max-width: 767px) {
	.anchorlinks_section {
		padding: 50px 0;
	}
	.anchorlinks li {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-top: 10px;
	}
}


/*--------------------------------------
* qa
--------------------------------------*/
.qa_list dt,
.qa_list dd {
	margin-bottom: 20px;
	display: table;
	width: 100%;
}
.qa_list .num {
	display: table-cell;
	padding-right: 20px;
	vertical-align: top;
}
.qa_list dt .num span {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 30px;
	font-weight: 500;
	width: 54px;
	height: 54px;
	line-height: 54px;
	background: #DA0048;
	border-radius: 50%;
	text-align: center;
	color: #fff;
	letter-spacing: 0;
	margin-top: 4px;
}
.qa_list dd .num span {
	display: block;
	font-size: 30px;
	width: 54px;
	height: 54px;
	line-height: 54px;
	background: #fff;
	border-radius: 50%;
	text-align: center;
	color: #373431;
	letter-spacing: 0;
	margin-top: 4px;
}
.qa_list .txt {
	display: table-cell;
	width: 100%;
	vertical-align: middle;
}
.qa_list dt .txt {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.95;
}
.txt_blue {
	color: #54C3F1;
}
.txt_red {
	color: #DA0048;
}

/* =====================================
■ブログ
===================================== */
/*--------------------------------------
POSTS
--------------------------------------*/
#blogList,
#blogDetail {
	background: #F5F5F5;
	min-height: 850px;
}
#blogList {
	padding: 185px 0 110px;
}
#blogDetail {
	padding: 100px 0 143px;
}
#posts {
	float: left;
	width: 66.4%;
}

/*　blogList　*/
.posts_list li {
	float: left;
	width: 49%;
	margin-left: 2%;
	margin-top: 2%;
	position: relative;
	background: #fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.posts_list li .post-image {
	position: relative;
	overflow: hidden;
}
.posts_list li .post-image a {
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 63%;
}
.posts_list li .post-image a span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(1);
	transition: ease-in-out .2s;
}
.posts_list li .post-image a:hover span {
	transform: scale(1.1);
}
.posts_list li .post-image span.noimage {
	line-height: 0;
	text-indent: 100%;
	overflow: hidden;
}
.posts_list li .inner {
	padding: 35px 30px 37px;
}
.post .category,
.posts_list .category {
	margin-bottom: 15px;
}
.post .category a,
.posts_list .category a {
	display: inline-block;
	min-width: 91px;
	height: 27px;
	font-size: 11px;
	font-weight: bold;
	line-height: 27px;
	letter-spacing: 0.2em;
	padding: 0 20px;
	color: #fff;
	box-sizing: border-box;
	text-transform: uppercase;
	background: #DA0048;
	border-radius: 50px;
}
.post .category a:hover,
.posts_list .category a:hover {
	opacity: 0.7;
}
.posts_list h3 {
	font-size: 17px;
	font-weight: bold;
	line-height: 1.76;
	letter-spacing: 0.1em;
	margin-bottom: 29px;
}
.posts_list h3 a:hover {
	color: #DA0048;
}
.posts_list .date {
	color: #0D367A;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

/*　blogDetail　*/
#blogDetail .post {
	background: #FFFFFF;
	color: #000;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 2.14;
	padding: 67px 48px 44px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
#blogDetail .post-header {
	margin-bottom: 11px;
}
#blogDetail .post-header .date {
	font-family: "メイリオ", "Meiryo";
	font-size: 14px;
	letter-spacing: 0;
	line-height: 1;
	color: #707070;
	margin-bottom: 17px;
}
#blogDetail .post-header h2 {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: 0.1em;
	color: #000;
}
#blogDetail .post-header .post-meta {
	margin-bottom: 45px;
}
#blogDetail .post-header .post-meta li.date {
	margin-top: 22px;
}

.post-content {
	overflow: hidden;
	line-height: 2.3;
	letter-spacing: 0;
}
#blogDetail .post-content img {
	width: auto;
	height: auto;
	max-width: 100%;
	box-sizing: border-box;
}

.bloginfo_box {
	display: table;
	width: 100%;
	margin-top: 67px;
}
.bloginfo_box .blog_name {
	display: table-cell;
	width: 38%;
	vertical-align: middle;
}
.bloginfo_box .blog_name a {
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.2em;
	color: #DA0048;
	position: relative;
	padding-left: 20px;
}
.bloginfo_box .blog_name a:before {
	display: block;
	font-size: 9px;
	color: #DA0048;
	position: absolute;
	left: 4px;
	top: 50%;
	margin-top: -5px;
}
.bloginfo_box .blog_name a:hover {
	text-decoration: underline;
}
.bloginfo_box .share_btn {
	display: table-cell;
	width: 62%;
	text-align: right;
	vertical-align: middle;
}
.bloginfo_box .share_btn li {
	display: inline-block;
	margin: 0 6px;
	vertical-align: middle;
}
.bloginfo_box .share_btn li a {
	display: block;
	overflow: hidden;
	width: 31px;
	height: 31px;
	border-radius: 50%;
	font-size: 0;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	background: #DA0048;
}
.bloginfo_box .share_btn li a:hover {
	background: #FB548B;
}
.bloginfo_box .share_btn li a:before {
	color: #fff;
}
.bloginfo_box .share_btn .icon-facebook:before {
	font-size: 16px;
	margin-top: 8px;
}
.bloginfo_box .share_btn .icon-twitter:before {
	font-size: 12px;
	margin-top: 10px;
}
.bloginfo_box .share_btn li span {
	color: #DA0048;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.2em;
	margin-right: 15px;
}

@media screen and (min-width: 768px) {
	.posts_list li:nth-child(2n+1) {
		margin-left: 0;
		clear: both;
	}
	.posts_list li:nth-child(-n+2) {
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) {
	#blogList,
	#blogDetail {
		padding: 80px 0;
	}
	#posts {
		float: none;
		width: 100%;
	}
	#blogDetail .post {
		padding: 45px 20px;
	}
	#blogDetail .post-header {
		margin-bottom: 20px;
	}
	#blogDetail .post-header h2 {
		font-size: 24px;
	}
	#blogDetail .post-header li.category,
	#blogDetail .post-header .post-meta li.date {
		float: none;
	}
	.bloginfo_box .blog_name {
		width: 54%;
	}
	.bloginfo_box .share_btn {
		width: 46%;
	}
	.bloginfo_box .share_btn li:first-child {
		display: none;
	}
}

@media screen and (min-width: 481px) {
	.posts_list li:nth-child(2n+1) {
		margin-left: 0;
		clear: both;
	}
	.posts_list li:nth-child(-n+2) {
		margin-top: 0;
	}
}

@media screen and (max-width: 480px) {
	.posts_list li {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-top: 20px;
	}
	.posts_list li:first-child {
		margin: 0;
	}
}

/* navigation */
.navigation {
	overflow: hidden;
	margin-top: 43px;
}
.navigation:after {
	content: "";
	display: table;
	clear: both;
}
.navigation .prev {
	float: left;
	width: 182px;
}
.navigation .next {
	float: right;
	width: 182px;
}
.navigation a {
	display: block;
	width: 100%;
	font-size: 14px;
	background: #fff;
	color: #DA0048;
	letter-spacing: 0.2em;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	font-weight: bold;
	border: 2px solid #DA0048;
	border-radius: 50px;
	padding: 14px 20px 13px;
	line-height: 1.4;
}
.navigation a:hover {
	background: #DA0048;
	color: #fff;
}
.navigation a span {
	display: block;
	position: relative;
}
.navigation .prev a span {
	padding-left: 15px;
}
.navigation .next a span {
	padding-right: 15px;
}
.navigation .prev a span:before {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-left: 2px solid #DA0048;
	border-bottom: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	left: 4px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
}
.navigation .next a span:after {
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #DA0048;
	border-right: 2px solid #DA0048;
	box-sizing: border-box;
	position: absolute;
	right: 4px;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
}
.navigation .prev a:hover span:before {
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
.navigation .next a:hover span:after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.navigation ul {
	display: flex;
	max-width: 200px;
	margin: 0 auto;
}
.navigation li {
	display: flex;
	margin: 0 1px 0 2px;
	width: 30px;
}

/* pagination */
.pagination {
	overflow: hidden;
	position: relative;
	padding-top: 57px;
}
.pagination ul {
	text-align: center;
	line-height: 1;
}
.pagination ul li {
	display: inline-block;
	font-weight: bold;
	vertical-align: middle;
	margin: 0 10px;
}
.pagination ul li:first-child {
	margin-left: 0;
}
.pagination ul li:last-child {
	margin-right: 0;
}
.pagination ul li a,
.pagination ul li span.dots {
	display: block;
	width: 100%;
	font-size: 14px;
	line-height: 1.6;
	color: #DA0048;
	letter-spacing: 0;
	font-weight: bold;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	border-bottom: 2px solid transparent;
	padding: 2px 3px 0;
}
.pagination ul li a:hover {
	border-bottom: 2px solid #DA0048;
}
.pagination ul li span.current {
	display: block;
	width: 100%;
	font-size: 14px;
	line-height: 1.6;
	color: #DA0048;
	letter-spacing: 0;
	font-weight: bold;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	border-bottom: 2px solid #da0048;
	padding: 2px 3px 0;
}
.pagination ul li .prev,
.pagination ul li .next {
	background: #da0048;
	border-radius: 50%;
	width: 39px;
	height: 39px;
	line-height: 39px;
	border-bottom: none !important;
	margin: 0;
	padding: 0;
}
.pagination ul li .prev:hover,
.pagination ul li .next:hover {
	opacity: 0.7;
}
.pagination ul li .prev:before {
	display: block;
	content: "";
	width: 7px;
	height: 7px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-left: -2px;
	margin-top: -3px;
}
.pagination ul li .next:before {
	display: block;
	content: "";
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	box-sizing: border-box;
	position: absolute;
	right: 50%;
	top: 50%;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-right: -2px;
	margin-top: -3px;
}

@media screen and (max-width: 767px) {
	.pagination ul li {
		margin: 0 3px;
	}
	.pagination ul li a,
	.pagination ul li span.dots {
		padding: 2px 2px 0;
	}
	.pagination ul li .prev,
	.pagination ul li .next {
		width: 25px;
		height: 25px;
		line-height: 25px;
	}
}
@media screen and (max-width: 480px) {
	.navigation .prev,
	.navigation .next {
		width: 135px;
	}
	.navigation a {
		font-size: 13px;
		letter-spacing: 0.05em;
		padding: 14px 10px 13px;
	}

}

/*--------------------------------------
BLOGSIDE
--------------------------------------*/
.blogside {
	float: right;
	width: 28%;
}
.blogside h2.widgettitle {
	display: none;
}
.blogside h2 {
	font-family: "interstate", sans-serif;
	font-size: 30px;
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1;
	padding-bottom: 19px;
	color: #000000;
	border-bottom: 3px solid #A7A7A7;
}
.blogside .searchBox {
	margin-bottom: 44px;
}
.blogside .searchBox label {
	display: none;
}
.blogside .searchBox #searchform {
	position: relative;
}
.blogside .searchBox #s {
	background: #DBD9D5;
	border: none;
	height: 63px;
	width: 100%;
	padding: 0 60px 0 32px;
	box-sizing: border-box;
	color: #746D67;
	font-size: 15px;
	border-radius: 50px;
	letter-spacing: 0.1em;
}
.blogside .searchBox .icon-search:before {
	position: absolute;
	right: 34px;
	top: 50%;
	margin-top: -10px;
	color: #707070;
	font-size: 20px;
	font-weight: normal;
}
.blogside .searchBox #searchsubmit {
	background: none;
	border: none;
	position: absolute;
	right: 34px;
	width: 25px;
	height: 25px;
	top: 50%;
	margin-top: -8px;
	font-size: 0;
	cursor: pointer;
}

.blogside .categoryBox {
	margin-bottom: 62px;
}
.blogside .categoryBox h2 {
	margin-bottom: 21px;
}
.blogside .categoryBox ul li {
	display: inline-block;
	margin-right: 9px;
}
.blogside .categoryBox ul li a {
	display: block;
	min-width: 91px;
	height: 27px;
	font-size: 11px;
	font-weight: bold;
	line-height: 27px;
	letter-spacing: 0.2em;
	padding: 0 20px;
	color: #fff;
	box-sizing: border-box;
	text-transform: uppercase;
	background: #DA0048;
	border-radius: 50px;
}
.blogside .categoryBox ul li a:hover {
	background: #fff;
	color: #DA0048;
}

.recentBox {
	margin-bottom: 50px;
}
.blogside .recentBox h2 {
	margin-bottom: 31px;
}
.recentBox li {
	margin-bottom: 10px;
}
.recentBox li:last-child {
	margin-bottom: 0;
}
.recentBox li a {
	display: table;
	width: 100%;
}
.recentBox li a:hover {
	opacity: 0.7;
}
.recentBox li .thumbnailWrap {
	display: table-cell;
	width: 90px;
	height: 90px;
	position: relative;
	overflow: hidden;
	vertical-align: middle;
}
.recentBox li .thumbnailWrap > span {
	display: block;
	width: 90px;
	height: 90px;
	line-height: 1;
	overflow: hidden;
}
.recentBox li .thumbnailWrap span span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transform: scale(1);
}
.recentBox li a:hover .thumbnailWrap span span {
	transform: scale(1.1);
}
.recentBox li .detailWrap {
	display: table-cell;
	vertical-align: middle;
	background: #fff;
	padding: 6px 15px 8px;
	height: 90px;
	box-sizing: border-box;
}
.recentBox li .detailWrap .category {
	font-size: 10px;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 6px;
	color: #DA0048;
}
.recentBox li .detailWrap h3 {
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0;
	line-height: 1.5;
	color: #000000;
	height: 38px;
	overflow: hidden;
}
.recentBox li .detailWrap .date {
	font-size: 10px;
	letter-spacing: 0;
	line-height: 1;
	color: #A7A7A7;
	margin-top: 2px;
}

.blogside .tagBox {
	margin-bottom: 40px;
}
.blogside .tagBox h2 {
	margin-bottom: 12px;
}
.blogside .tagBox .tagcloud a {
	display: inline-block;
	padding: 7px 10px;
	color: #373431;
	font-size: 14px !important;
	line-height: 1;
	border: 1px solid #72706E;
	border-radius: 3px;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	margin-bottom: 9px;
	letter-spacing: 0;
}
.blogside .tagBox .tagcloud a:hover {
	color: #fff;
	background: #72706E;
}

.archiveBox {
	font-size: 14px;
	line-height: 1.4;
	letter-spacing: 0;
}
.blogside .archiveBox h2 {
	margin-bottom: 18px;
}
.archiveBox > ul > li {
	padding-bottom: 16px;
	border-bottom: 1px solid #A7A7A7;
	margin-bottom: 18px;
}
.archiveBox > ul > li:last-child {
	margin: 0;
}
.archiveBox ul li p {
	position: relative;
	margin: 0;
	padding-right: 22px;
	cursor: pointer;
	font-size: 18px;
	color: #707070;
}
.archiveBox ul li p:visited {
	color: #DA0048;
}
.archiveBox ul li p:hover {
	color: #DA0048;
}
.archiveBox ul li p.acv_open {
	color: #DA0048;
}
.archiveBox ul li p:before {
	display: block;
	content: '';
	position: absolute;
	top: 9px;
	right: 4px;
	width: 6px;
	height: 6px;
	border-right: 2px solid #DA0048;
	border-bottom: 2px solid #DA0048;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
}
.archiveBox ul li p.acv_open:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.archiveBox ul li a {
	color: #707070;
}
.archiveBox ul li a:link {
	/*color: #FFAEA2;*/
}
.archiveBox ul li a:visited {
	color: #686868;
}
.archiveBox ul li a:hover {
	color: #DA0048;
}
.archiveBox ul li a:active {
	color: #DA0048;
}
.archiveBox ul li ul {
	margin-left: 13px;
}
.archiveBox ul li li {
	margin-top: 13px;
}
.archiveBox ul li ul.hide {
	display: none;
}

@media screen and (max-width: 1000px) and (min-width: 768px) {
	.blogside h2 {
		font-size: 25px;
		letter-spacing: 0.1em;
	}
}

@media screen and (max-width: 767px) {
	.blogside {
		float: none;
		width: 100%;
		border-top: 1px solid #5D5555;
		padding: 50px 0 0;
		box-sizing: border-box;
		margin-top: 50px;
	}
}


/* =====================================
■新着情報
===================================== */
.category #newsList,
.single #newsDetail {
	background: #fff;
	padding: 60px 0 80px;
	min-height: 600px;
}

/*--------------------------------------
詳細記事
--------------------------------------*/
#newsDetail h3 {
	font-size: 24px;
	color: #574f4f;
	letter-spacing: 0.18em;
	line-height: 1.4;
	position: relative;
	padding-left: 30px !important;
	margin-bottom: 20px;
}
#newsDetail h3:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-bottom: 14px solid #6f87a3;
	border-left: 14px solid transparent;
	position: absolute;
	left: 2px;
	top: 10px;
}
#newsDetail h3:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 14px solid #96a8bf;
	border-right: 14px solid transparent;
	position: absolute;
	left: 2px;
	top: 10px;
}


/* =====================================
■サイトマップ
===================================== */
#content.sitemap {
	background: #F5F5F5;
	padding: 100px 0;
}
.sitemap .inner {
	background: #fff;
	padding: 60px 60px 100px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.sitemap .inner .tit {
	margin-bottom: 21px;
}
.sitemap .inner .tit sup {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 17px;
}
.sitemap .inner .tit h2 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.4;
}
#sitemap_list {
	margin: 0 auto !important;
}
#sitemap_list li,
.sitemap_list li {
	border-bottom: 1px solid #DFDFDF;
	line-height: 1.4 !important;
	position: relative;
	margin: 0 !important;
	padding:  20px 0 !important;
}
#sitemap_list li a,
.sitemap_list li a {
	font-size: 17px;
	letter-spacing: 0;
	display: block;
	position: relative;
	box-sizing: border-box;
	background: none !important;
	color: #000;
}
#sitemap_list li a:hover,
.sitemap_list li a:hover {
	color: #DA0048;
}

@media screen and (max-width: 767px) {
	#content.sitemap {
		padding: 50px 0;
	}
	.sitemap .inner {
		padding: 50px 20px;
	}
	.sitemap .inner .tit h2 {
		font-size: 30px;
	}
}

/* =====================================
■お問い合わせ
===================================== */
.wpcf7-form {
	background: #F5F5F5;
	padding: 100px 30px 130px;
}
.wrap_contact {
	max-width: 1000px;
	margin: 0 auto;
	background: #FFFFFF;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.contactTel {
	padding: 101px 60px 103px;
}
.inquiryForm_message .contactTel {
	border-bottom: 1px solid #DBD9D5;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
}
.contactTel .contit {
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.4;
	color: #000000;
	text-align: center;
	margin-bottom: 35px;
}
.contactTel .contel {
	max-width: 548px;
	display: block;
	margin: 0 auto;
}
.inquiryFormTable .contactTel {
	display: none;
}
.inquiryFormTable.confirm_table .contactTel {
	display: block;
	position: relative;
}
.inquiryFormTable.confirm_table .contactTel:before {
	content: "";
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	border-top: 1px solid #DBD9D5;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
}
.catchWrap {
	padding: 101px 60px 45px;
}
.wpcf7c-elm-step2 .catchWrap {
	padding: 101px 60px 95px;
	border-bottom: 1px solid #DBD9D5;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
}
.catchWrap .tit {
	margin-bottom: 30px;
}
.wpcf7c-elm-step2 .catchWrap .tit {
	margin-bottom: 18px;
}
.catchWrap .tit span {
	display: block;
	font-family: "interstate", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1;
	color: #DA0048;
	margin-bottom: 5px;
}
.catchWrap .tit h2 {
	font-size: 36px;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 2.23;
}
.inquiryForm_message p {
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 2.14;
	margin-bottom: 30px;
}
.inquiryForm_message p:last-child {
	margin-bottom: 0;
}
.wpcf7c-elm-step3 .catchWrap {
	padding: 101px 60px 95px;
}
.wpcf7c-elm-step3 .catchWrap .tit {
	margin-bottom: 19px;
}
.wpcf7c-elm-step3 p {
	margin-bottom: 46px !important;
}
.wpcf7c-elm-step3 .btn a {
	max-width: 240px;
}

.inquiryFormTable .inner {
	padding: 30px 60px 100px;
}
.inquiryFormTable dl {
	display: table;
	width: 100%;
	margin-bottom: 22px;
}
.inquiryFormTable dt,
.inquiryFormTable dd {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}
.inquiryFormTable dt {
	position: relative;
	width: 47%;
	padding-top: 14px;
	letter-spacing: 0;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 17px;
}
.inquiryFormTable dd {
	box-sizing: border-box;
	position: relative;
}
.inquiryFormTable .comment {
	display: block;
	color: #746D67;
	font-size: 14px;
	line-height: 1.36;
	margin: 21px auto;
	letter-spacing: 0.05em;
}
.inquiryFormTable .required {
	color: #DA0048;
}
.inquiryFormTable .optional {
	color: #63696A;
}

.wpcf7-form-control-wrap {
	display: block;
}
.inquiryFormTable input,
.inquiryFormTable textarea,
.inquiryFormTable select {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 17px 25px 16px;
	border: 1px solid #DBD9D5;
	background: #fff;
	color: #000;
	border-radius: 10px;
}
.inquiryFormTable select {
	position: relative;
	background: #fff url(/wp-content/uploads/ico_down.png) no-repeat 96% center;
	background-size: 10px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.inquiryFormTable select::-ms-expand {
	display: none;
}
.inquiryFormTable input[type="checkbox"] {
	display: none;
	/*display: inline-block;*/
	width: 32px;
	height: 32px;
	border: 0;
	position: relative;
	margin-right: 0;
	visibility: hidden; 
	z-index: 999;
	-webkit-appearance: none;
	background: none;
	box-sizing: border-box;
}
.inquiryFormTable .wpcf7-list-item {
	width: 100%;
	display: block;
	margin: 0 0 13px;
	box-sizing: border-box;
}
.wpcf7-list-item-label {
	position: relative;
}
span.wpcf7-list-item-label:before,
span.wpcf7-list-item-label:after {
	display: none;
}
.inquiryFormTable input[type="checkbox"] + span label.icon-check:before {
	content: "\e902";
	font-size: 25px;
	color: #BFBEBD;
	margin-right: 5px;
	vertical-align: middle;
}
.inquiryFormTable input[type="checkbox"]:checked+ span label.icon-check:before {
	content: "\e903";
	color: #91de4d;
}
.failed .verified_table.inquiryFormTable input.wpcf7-validates-as-required,
.invalid .verified_table.inquiryFormTable input.wpcf7-validates-as-required {
	border: 1px solid #6fba2c;
	background: #fff;
	box-shadow: 0 0 5px rgba(111, 186, 44, 0.5);
}
.inquiryFormTable input.wpcf7-not-valid {
	border: 1px solid #D93636 !important;
	background: #FDD2D2 !important;
}

.inquiryFormTable .btBox {
	text-align: center;
	margin: 77px 0 0;
}
.inquiryFormTable .btBox input[type="submit"] {
	background: #fff url(/wp-content/uploads/ico_arrow02.png) no-repeat 92% center !important;
	background-size: 10px 10px !important;
	max-width: 245px;
	color: #DA0048;
	display: block;
	font-size: 14px;
	line-height: 1.2;
	letter-spacing: 0.2em;
	cursor: pointer;
	box-sizing: border-box;
	margin: 0 auto;
	border-radius: 50px;
	outline: 0px;
	-webkit-appearance: none;
	padding: 15px 25px;
	border: 2px solid #DA0048;
}
.inquiryFormTable .btBox input[type="submit"]:hover,
.inquiryFormTable .btBox input[type="button"]:hover {
	background-color: #DA0048 !important;
	color: #fff;
}
.inquiryFormTable .btBox input[type="submit"].disabled {
	background: #ccc url(/wp-content/uploads/ico_arrow02.png) no-repeat 92% center !important;
	background-size: 10px 10px !important;
	cursor: default;
	opacity: 1 !important;
	color: #DA0048 !important;
}
/*
.inquiryFormTable .btBox input[type="submit"].abled {
background-position: 96% center !important;
padding: 29px 40px 28px 40px;
}
.inquiryFormTable .wpcf7-back {
width: 37.5% !important;
color: #fff;
background: #72706E url(/wp-content/uploads/ico_arrow02.png) no-repeat 92% center !important;
background-size: 10px 10px !important;
border: none;
line-height: 1.2;
cursor: pointer;
box-sizing: border-box;
margin: 0 auto;
border-radius: 0 !important;
outline: 0px;
-webkit-appearance: none;
font-size: 26px;
letter-spacing: 0.1em;
padding: 29px 30px 28px;
float: left;
text-align: left;
}
.inquiryFormTable .wpcf7-submit {
width: 58.5% !important;
float: right;
text-align: left;
}*/


span.verify_icon {
	position: absolute;
	width: 25px;
	height: 25px;
	right: -42px;
	top: 13px;
	display: none;
}
.verified_table .wpcf7-validates-as-required:not(.wpcf7-not-valid)+.verify_icon {
	display: block;
}
.verified_table .wpcf7-validates-as-required:not(.wpcf7-not-valid)+.verify_icon:before {
	color: #6fba2c;
	font-size: 25px;
	vertical-align: top;
}

.inquiryFormTable .wpcf7-not-valid-tip {
	color: #DE5050;
	font-weight: normal;
	display: block;
	font-size: 12px;
}

.file_btn {
	display: block;
	overflow: hidden;
	position: relative;
	background: #807B7B;
	color: #fff;
	width: 123px;
	height: 30px;
	font-size: 14px;
	line-height: 30px;
	text-align: center;
	cursor: pointer;
	margin-top: 13px;
}
.file_btn .wpcf7-form-control-wrap {
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
	width: 100%;
	height: 30px;
}
div.wpcf7 input[type="file"] {
	padding: 0;
	border: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	height: 30px;
}

.failed .confirm_table input[type="text"],
.failed .confirm_table input[type="tel"],
.failed .confirm_table input[type="email"],
.failed .confirm_table textarea,
.failed .confirm_table select,
.failed .confirm_table input[type="checkbox"] {
	display: none;
}
.failed .confirm_table .required,
.failed .confirm_table .optional {
	display: none;
}
.failed .confirm_table .wpcf7-list-item-label {
	display: none;
}
.failed .confirm_table span.comment {
	display: none;
}
/*.failed .confirm_table .wpcf7-form-control-wrap.your-email_confirm {
display: none;
}*/
.result_txt {
	display: block;
	word-break: break-all;
	white-space: pre-wrap;
}
.failed .confirm_table .wpcf7-list-item {
	padding-left: 0;
}
.failed .confirm_table {
	padding-top: 90px;
}
.failed .confirm_table dt {
	padding-top: 0;
}
.failed .confirm_table dd {
	vertical-align: middle;
}
.wpcf7-mail-sent-ok,
div.wpcf7 .ajax-loader,
div.wpcf7-validation-errors {
	display: none !important;
}

@media screen and (max-width: 1060px) and (min-width: 768px) {
	.wpcf7c-elm-step3 .catchWrap .tit h2 {
		font-size: 32px;
	}
}

@media screen and (max-width: 767px) {
	.wpcf7-form {
		padding: 50px 20px;
	}
	.contactTel {
		padding: 40px;
	}
	.catchWrap,
	.wpcf7c-elm-step2 .catchWrap,
	.wpcf7c-elm-step3 .catchWrap {
		padding: 50px 20px;
	}
	.catchWrap .tit h2 {
		font-size: 26px;
	}
	.wpcf7c-elm-step3 .catchWrap .tit h2 {
		font-size: 24px;
		letter-spacing: 0.05em;
	}
	.inquiryFormTable .inner {
		padding: 0 20px 50px;
	}
	.failed .confirm_table {
		padding-top: 50px;
	}

	.inquiryFormTable dl {
		display: block;
	}
	.inquiryFormTable dt,
	.inquiryFormTable dd {
		display: block;
		padding: 0;
		width: 100%;
		box-sizing: border-box;
	}
	.inquiryFormTable .btBox {
		margin: 50px 0 0;
	}
	.inquiryFormTable .wpcf7-back {
		margin-bottom: 15px;
	}
	.file_btn {
		margin-top: 0;
	}
}
@media screen and (max-width: 480px) {
	.contactTel .contit {
		font-size: 22px;
	}
	.catchWrap .tit h2,
	.wpcf7c-elm-step3 .catchWrap .tit h2 {
		font-size: 20px;
		letter-spacing: 0;
	}
}


/* =====================================
■制作案例
===================================== */
.new_cate_box {
    margin-bottom: 35px;
}
.works_cate_list {
    text-align: center;
}
.works_cate_list li {
display: inline-block;
    padding: 0 10px;
    box-sizing: border-box;
}
.works_cate_list li>span{
display: block;
    position: relative;
    font-size: 20px;
    padding: 0 20px;
	    cursor: pointer;
}
.works_cate_list li>span:after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background-color: #da0048;
    transition: .3s;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.works_cate_list li>span:hover:after{
   width:100%;
}
.works_item {
    float: left;
    width: 31.3%;
    margin-right: 1%;
   margin-left: 1%;
	margin-bottom:2%;
	    position: relative;
	    overflow: hidden;
	    cursor: pointer;
}

.works_item .img_box {
    font-size: 0;
    letter-spacing: 0;
    line-height: 0;
    padding-top:65%;
    box-sizing: border-box;
}
.works_item .txt_box {
    position: absolute;
    left: 0;
    top: -100%;
    width: 100%;
    height: 100%;
    background: #0000008c;
    color: #fff;
    text-align: center;
    padding: 30px 20px 35px;
    box-sizing: border-box;
	    transition: .3s;
}
.works_item:hover .txt_box {
    top: 0;
}
.works_item .txt_box .txt_box_inner {
    width: 100%;
    height: 100%;
    overflow: hidden;
	    display: table;
}
.works_item .txt_box .tle {
font-size: 20px;
    margin-bottom: 0;
    line-height: 1.7;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
    font-weight: 700;
    letter-spacing: 0.12em;
}
.works_item .txt_box .txt {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    width: 100%;
    font-size: 15px;
}
.works_item .txt_box .txt_box_inner a {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: block;
}
.works_banner {
    margin-bottom: 65px;
}
.slick-slider {
    overflow: hidden;
}
.slick-arrow {
position: absolute;
    content: "";
    width: 60px;
    height: 60px;
    cursor: pointer;
    margin-top: -30px;
    background: rgba(50, 55, 60, 0.4);
    border-radius: 50%;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    
    top: 50%;
    z-index: 100;
    }
    .slick-arrow {
    right: -100px;
}
.slick-slider:hover .slick-arrow {
right: 20px;
}
.prev.slick-arrow {;
    right: auto;
    left: -100px;
}
.slick-slider:hover .prev.slick-arrow{
left: 20px;
}
.slick-arrow:before {
    content: "";
    display: block;
    width: 26px;
    height: 26px;
    border-top: 4px solid #fff;
    border-right: 4px solid #fff;
    box-sizing: border-box;
    position: absolute;
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 18px;
    right: 22px;
   
	   
}
.prev.slick-arrow:before {
    -moz-transform: rotate(225deg);
    -ms-transform: rotate(4225deg);
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
        right: 12px;
}
.slick-arrow:hover{
    opacity: 0.8;
}



ul.social-block li object {
    height: 28px;
}
ul.social-block li {
    display: inline-block;
}
.works_detail {
    color: #333;
}
.works_detail .info_box {
    float: left;
    width: 48%;
}
.works_detail .txt_box {
    width: 48%;
    float: right;
}
.works_detail .info_box>ul>li {
    margin-bottom: 8px;
}
.works_detail .tle {
    font-size: 26px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 10px;
	 color: #000;
}
.works_detail .tle:before {
    position: absolute;
    content: "";
    display: block;
    height: 1px;
    width: 60px;
    background: #000;
    left: 0;
    bottom: 0;
}
@media screen and (max-width:1023px) and (min-width: 960px) {
.works_item .img_box {
    padding-top: 75%;
}
	
}

@media screen and (max-width:959px) and (min-width:768px) {
.works_item .txt_box {
    padding: 25px 20px 20px;
}
.works_item .txt_box .tle {
    font-size: 20px;
    margin-bottom: 0;
}
	.works_item .txt_box .txt {
		    font-size: 14px;
}
.works_item .img_box {
    padding-top: 80%;
}
}
@media screen and (max-width:767px) {
	.works_item {
    float: none;
    width: 100%;
    margin: 0 auto 25px auto;
    max-width: 300px;
}
.works_item .img_box {
    padding-top: 70%;
}
.works_item .txt_box {
	padding: 32px 20px 30px;
	}
.works_cate_list li {
    display: block;
    margin-top: 10px;
}
	.works_banner {
    margin-bottom: 45px;
}

.works_detail .info_box {
    float: none;
    width: 100%;
    margin-bottom: 20px;
}
.works_detail .txt_box {
    width: 100%;
    float: none;
}
.works_detail .tle {
    font-size: 22px;
    margin-bottom: 25px;
    padding-bottom: 8px;
}
}
@media screen and (max-width:374px) {
.works_item .img_box {
    padding-top: 72%;
}	
.works_item .txt_box {
	padding: 30px 20px 30px;
	}	
}