/*--------------------------------------------------*/
/* 基本 */
/*--------------------------------------------------*/

body {
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
}

a,
a:hover {
	color: #000000;
	text-decoration: none;
}

a:focus,
button:focus {
	outline: 0;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
}

strong {
	font-weight: bold;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
}

dl,
dt,
dd {
	margin: 0;
	font-weight: normal;
}

.container {
	max-width: 1160px;
	padding-left: 40px;
	padding-right: 40px;
}

.en {
	font-family: 'Roboto', sans-serif;
}

.en.con {
	font-family: 'Roboto Condensed', sans-serif;
}

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

.clearfix {
	zoom: 1;
}

@media (min-width: 768px) {
	/*
	a,
	.btn,
	button {
		transition: 0.3s;
	}
	a:hover,
	.btn:hover,
	button:hover {
		opacity: 0.5;
	}
	*/
}

@media (max-width: 767px) {
	body {
		font-size: 14px;
	}

	.container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.row {
		margin-left: -10px;
		margin-right: -10px;
	}

	.row>* {
		padding-left: 10px;
		padding-right: 10px;
	}
}

.blue {
	color: #007CC5;
}

.white {
	color: #ffffff;
}

/*--------------------------------------------------*/
/* ボタン */
/*--------------------------------------------------*/
.btn-wrap {}

.btn-wrap .btn {
	position: relative;
	display: inline-block;
	font-size: 22px;
	line-height: 1;
	letter-spacing: 0.12em;
	border-radius: 0;
	border: 0;
	color: #ffffff;
	padding: 1.2em 1.4em;
	text-align: center;
	font-weight: bold;
	min-width: 270px;
	opacity: 1;
	overflow: hidden;
}

.btn-wrap .btn::before,
.btn-wrap .btn::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: -3.25em;
	transform-origin: 100% 1em;
	transform: skewX(53deg);
	z-index: 0;
}

.btn-wrap .btn::before {
	background-color: #4d4d4d;
}

.btn-wrap .btn::after {
	right: 100%;
	transform: skewX(53deg) translateX(-3.25em);
	background-color: #ffffff;
	opacity: 0.8;
	transition: 0.3s;
}

.btn-wrap .btn span {
	position: relative;
	display: inline-block;
	z-index: 1;
	padding-right: 1.5em;
}

.btn-wrap .btn span::after {
	content: "\f105";
	position: absolute;
	font-size: 1.75em;
	font-family: FontAwesome;
	font-weight: 400;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

@media(max-width:767px) {
	.btn-wrap .btn {
		font-size: 14px;
	}

	.btn-wrap .btn span::after {
		right: 0;
	}
}

/* hover */
@media(min-width:768px) {
	.btn-wrap .btn:hover {
		color: #4d4d4d;
	}

	.btn-wrap .btn.green:hover {
		color: #008cb1;
	}

	.btn-wrap .btn.blue:hover {
		color: #214e9c;
	}

	.btn-wrap .btn:hover::after {
		right: 0;
		transform: skewX(53deg) translateX(0%);
	}
}

/* バリエーション green */
.btn-wrap .btn.btn-green::before {
	background-color: #008cb1;
}

@media(min-width:768px) {
	.btn-wrap .btn.btn-green:hover {
		color: #008cb1;
	}
}

/* バリエーション blue */
.btn-wrap .btn.btn-blue::before {
	background-color: #214e9c;
}

@media(min-width:768px) {
	.btn-wrap .btn.btn-blue:hover {
		color: #214e9c;
	}
}

/* バリエーション btn-download */
.btn-wrap .btn.btn-download span {
	padding-left: 55px;
}

.btn-wrap .btn.btn-download span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 35px;
	height: 35px;
	background-image: url("../img/common/btn-download-ico.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	transition: 0.3s;
}

@media(min-width:768px) {
	.btn-wrap .btn.btn-download:hover span::before {
		filter: invert(1);
	}
}

/*矢印*/

.cp_arrow {
	display: inline-block;
	height: 50px;
	width: 50px;
}

.cp_arrow .arrow_icon {
	position: relative;
	top: -1px;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
	vertical-align: middle;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
}

.cp_arrow.cp_arrow-white .arrow_icon {
	background-image: url('../img/common/arrow-white.png');
}

.cp_arrow.cp_arrow-blue .arrow_icon {
	background-image: url('../img/common/arrow-blue.png');
}

.cp_arrow .arrow_icon_circle {
	-webkit-transition: stroke-dashoffset 0.3s ease;
	transition: stroke-dashoffset 0.3s ease;
	stroke-dasharray: 155;
	stroke-dashoffset: 155;
}

@media(min-width:768px) {

	a:hover .cp_arrow .arrow_icon,
	.cp_arrow:hover .arrow_icon {
		-webkit-transform: translateX(5px);
		transform: translateX(5px);
	}

	a:hover .cp_arrow .arrow_icon_circle,
	.cp_arrow:hover .arrow_icon_circle {
		stroke-dashoffset: 0;
	}
}



/*--------------------------------------------------*/
/* .site */
/*--------------------------------------------------*/

.site {
	max-width: 1920px;
	margin: 0 auto;
}

/*--------------------------------------------------*/
/* header */
/*--------------------------------------------------*/

.header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	padding: 15px 0;
	z-index: 10;
	background-color: rgba(255, 255, 255, 0.7);
}

.header.gray-header {
	background-color: rgba(239, 239, 239, 0.7);
}

.header .container {
	max-width: 1360px;
}

.header .header-contents {
	z-index: 0;
}

.header .header-contents .site-name h1,
.header .header-contents .site-name p {
	font-size: 200%;
	font-weight: bold;
	line-height: 1;
	margin: 0;
}

@media (min-width: 1200px) {
	.header .header-contents {
		display: flex;
		align-items: center;
		width: 100%;
	}

	.header .header-contents .site-name {
		width: 200px;
	}

	.header .header-contents .nav {
		flex: 1;
	}
}

@media(max-width:767px) {
	.header {
		padding: 9px 0;
	}

	.header .header-contents .site-name h1 img,
	.header .header-contents .site-name p img {
		width: 64px;
		margin-bottom: 5px;
	}
}


/*--------------------------------------------------*/
/*スマホヘッダー*/
/*--------------------------------------------------*/

@media (max-width: 991px) {

	.header .gnav,
	.header .col-right .sub-nav {
		display: none;
	}
}


/*--------------------------------------------------*/
/* ハンバーガー */
/*--------------------------------------------------*/

.header .close-filter {
	content: "";
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #000000;
	opacity: 0;
	visibility: hidden;
	z-index: 1;
}

.header-contents {
	position: relative;
}

#hamburger {
	position: absolute;
	right: 60px;
	top: 6px;
	visibility: visible;
	opacity: 1;
	display: block;
	padding: 0;
	background-color: transparent;
	border-radius: 0;
	border: 0;
	width: 60px;
	height: 60px;
	transition: 0.3s;
	z-index: 3;
}

#hamburger .navbar-toggler-icon {
	position: relative;
	display: block;
	width: 60px;
	height: 40px;
	border-radius: 0;
	margin-bottom: 5px;
}

#hamburger .navbar-toggler-icon::before,
#hamburger .navbar-toggler-icon::after {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%) rotate(0deg);
	content: "";
	display: block;
	width: 48px;
	height: 5px;
	border-radius: 0;
	background-color: #000000;
	transform-origin: center;
	transition: 0.3s;
}

#hamburger .navbar-toggler-icon::before {
	top: calc(50% - 8px);
}

#hamburger .navbar-toggler-icon::after {
	top: calc(50% + 8px);
}

#hamburger .text {
	display: block;
	text-align: center;
	line-height: 1;
	font-size: 15px;
	color: #000000;
}

#hamburger .text-close {
	display: none;
}

/*オープン*/
body.nav-open {
	overflow: hidden;
	position: fixed;
	width: 100%;
	height: 100%;
}

body.nav-open .header .close-filter {
	opacity: 0.3;
	visibility: visible;
}

body.nav-open #hamburger {
	position: fixed;
	visibility: visible;
	opacity: 1;
}

body.nav-open #hamburger .navbar-toggler-icon {}

#hamburger .navbar-toggler-icon::before,
#hamburger .navbar-toggler-icon::after {}

body.nav-open #hamburger .navbar-toggler-icon::before {
	top: 50%;
	transform: translate(-50%, 0) rotate(35deg);
}

body.nav-open #hamburger .navbar-toggler-icon::after {
	top: 50%;
	transform: translate(-50%, 0) rotate(-35deg);
}

body.nav-open #hamburger .text-menu {
	display: none;
}

body.nav-open #hamburger .text-close {
	display: block;
}

@media (max-width:767px) {
	#hamburger {
		top: 15px;
		right: 20px;
		width: 40px;
		height: 28px;
	}

	#hamburger .navbar-toggler-icon {
		width: 25px;
		height: 11px;
		margin: 0 auto;
	}

	#hamburger .navbar-toggler-icon::before,
	#hamburger .navbar-toggler-icon::after {
		width: 25px;
		height: 2px;
	}

	#hamburger .navbar-toggler-icon::after {
		top: calc(50% + 1px);
	}

	body.nav-open #hamburger .navbar-toggler-icon::before,
	body.nav-open #hamburger .navbar-toggler-icon::after {
		top: calc(50% - 5px);
	}

	#hamburger .text {
		font-size: 8px;
	}
}

.drawer-menu {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: 430px;
	max-width: 100%;
	transform: translateX(100%);
	transition: 0.3s;
	background-color: #ffffff;
	padding: 72px 0 0;
	overflow: auto;
	z-index: 2;
}

.drawer-menu ul {
	border-top: solid 1px #d2d2d2;
	list-style: none;
	padding: 5px 0 0;
	margin: 0;
}

.drawer-menu ul>li {
	display: block;
	border-bottom: solid 1px #d2d2d2;
}

.drawer-menu ul>li>a {
	position: relative;
	display: block;
	width: 100%;
	padding: 21px 28px;
	color: #000000;
	font-size: 14px;
	text-decoration: none;
}

/*サービス見出し*/
.drawer-menu ul>li.drawer-title {
	padding: 0;
}

.drawer-menu ul>li.drawer-title dl {
	display: inline-block;
	padding: 30px 28px 15px;
	position: relative;
	text-align: center;
}

.drawer-menu ul>li.drawer-title dl .en {
	font-size: 30px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.05em;
	margin: 0;
}

.drawer-menu ul>li.drawer-title dl dd {
	padding: 0;
}

.drawer-menu ul>li.drawer-title dl dd .ja {
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
	margin: 5px 0 0 0;
}

.drawer-menu dl {
	display: flex;
	width: 100%;
}

.drawer-menu dl dt {
	flex-grow: 0;
	flex-shrink: 0;
}

.drawer-menu dl dt img {
	width: 71px;
}

.drawer-menu .facebook dl dt {
	padding: 6px;
}

.drawer-menu .facebook dl dt img {
	width: 59px;
}

.drawer-menu .twitter dl dt {
	padding: 6px;
}

.drawer-menu .twitter dl dt img {
	width: 59px;
}

.drawer-menu dl dd {
	padding-left: 23px;
	flex-shrink: 1;
	flex-grow: 1;
}

.drawer-menu dl dd .title {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 0.25em;
}

.drawer-menu dl dd .title::before {
	content: "";
	display: inline-block;
	width: 0.56em;
	height: 1px;
	background-color: #000000;
	margin: 0 0.22em 0.35em;
}

.drawer-menu dl dd .overview {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 0;
}

.drawer-menu ul>li.drawer-service {}

.drawer-menu ul>li.drawer-service p {
	position: relative;
	display: block;
	width: 100%;
	padding: 5px 28px 5px 50px;
	color: #000000;
	text-decoration: none;
	margin: 0;
	font-size: 19px;
	line-height: 1;
	font-weight: bold;
	background-color: #eff0f0;
}

.drawer-menu ul>li.service-category {}

.drawer-menu ul>li.service-category a {
	padding-left: 50px;
}

.drawer-menu ul>li.remote-support {}

.drawer-menu ul>li.remote-support dl {
	align-items: center;
}

.drawer-menu .to-home {
	padding: 21px 28px 150px;
	background-image: url("../img/common/drawer-img-bg.png");
	background-position: top 20px right 30px;
	background-size: 309px;
	background-repeat: no-repeat;
}

.drawer-menu .to-home a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	padding: 20px;
}

.drawer-menu .to-home img {
	margin: 0 0.25em 0.75em 0;
}

.drawer-menu .to-home p {
	margin: 0 0.5em 0 0;
	font-weight: bold;
}

.drawer-menu .to-home .cp_arrow {
	display: inline-block;
	transform: rotate(-90deg);
	transform-origin: center;
}

body.nav-open .drawer-menu {
	transform: translateX(0%);
}

@media(max-width:767px) {
	.drawer-menu .to-home a {
		padding-left: 0;
		padding-right: 0;
	}

	.drawer-menu .to-home img {
		flex-basis: 130px;
		max-width: 130px;
	}

	.drawer-menu .to-home p {
		font-size: 12px;
	}
}

/*--------------------------------------------------*/
/* トップへ戻るボタン */
/*--------------------------------------------------*/

.to-top {
	visibility: hidden;
	padding: 0;
	position: fixed;
	bottom: 20px;
	right: 20px;
	transition: 0.3s;
	transform: translateY(20px);
	filter: blur(10px);
	opacity: 0;
	z-index: 100;
}

.to-top.visible {
	visibility: visible;
	transform: translateY(0px);
	filter: blur(0);
	opacity: 1;
}

.to-top a i {
	background-color: rgba(0, 0, 0, 0.7);
	color: #ffffff;
	width: 45px;
	line-height: 45px;
	border-radius: 50%;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

/*--------------------------------------------------*/
/* 共通フッター */
/*--------------------------------------------------*/

.footer {
	font-size: 14px;
	padding: 100px 0 50px;
	color: #ffffff;
	background-image: url("../img/common/footer-bg.jpg");
	background-position: top;
}

@media(max-width:767px) {
	.footer {
		padding: 50px 0 50px;
	}
}

.footer .footer-contents {}

.footer .footer-contents ul {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.footer .footer-contents>.row {
	margin: 0;
	padding: 0;
}

.footer .footer-contents>.row>* {
	margin: 0;
	padding: 0;
}

.footer .footer-contents .flex-wrap {
	display: flex;
	justify-content: center;
}

@media(min-width:992px) {
	.footer .footer-contents .col-nav .flex-wrap {
		justify-content: flex-end;
		width: 100%;
	}
}

@media(max-width:991px) {
	.footer .footer-contents ul {
		justify-content: center;
	}
}

@media(max-width:767px) {
	.footer .footer-contents .flex-wrap {
		flex-direction: column;
		align-items: center;
	}
}

.footer .footer-contents .site-name {}

.footer .footer-contents .site-name .logo {}

.footer .footer-contents .site-name .logo a {}

.footer .footer-contents .site-name .logo a img {}

/* nav-sns */
.footer .footer-contents .nav-sns {
	flex-grow: 1;
	border-top: solid 1px #ffffff;
	padding: 25px 0 25px 20px;
}

.footer .footer-contents .nav-sns ul {
	margin: 0 -11px;
	height: 100%;
	align-items: center;
}

.footer .footer-contents .nav-sns ul li {
	flex: 0 0 auto;
	padding: 0 11px;
}

.footer .footer-contents .nav-sns ul li a {
	display: block;
	text-align: center;
}

.footer .footer-contents .site-addr {
	border-top: solid 1px #ffffff;
	padding: 20px 0;
}

.footer .footer-contents .site-addr p {
	margin: 0;
}

.footer .footer-contents .site-addr p a {
	color: #ffffff;
}

.footer .footer-contents .site-addr p.addr {
	margin-bottom: 0.5em;
}

.footer .footer-contents .site-addr p .num {
	font-size: 18px;
}

/* nav-gnav */
.footer .footer-contents .nav-gnav {
	padding: 15px 0 25px 20px;
}

.footer .footer-contents .nav-gnav ul li {
	padding: 3px 13px;
	border-left: solid 1px #ffffff;
}

.footer .footer-contents .nav-gnav ul li:last-child {
	padding-right: 0;
}

.footer .footer-contents .nav-gnav ul li a {
	display: block;
	text-align: center;
	font-weight: bold;
	color: #ffffff;
	cursor: pointer;
}

.footer .footer-contents .nav-gnav ul li a:hover {
	text-decoration: underline;
}

/* nav-btn */
.footer .footer-contents .nav-btn {
	border-top: solid 1px #ffffff;
	padding: 25px 0 25px 20px;
}

.footer .footer-contents .nav-btn ul {
	margin: 0 -6px;
}

.footer .footer-contents .nav-btn ul li {
	padding: 0 6px;
}

.footer .footer-contents .nav-btn ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: bold;
	width: 160px;
	height: 50px;
	border-radius: 25px;
	padding: 10px;
	color: #ffffff;
	box-shadow: 0 0 5px rgba(24, 119, 242, 0.5);
}

.footer .footer-contents .nav-btn ul li a.officemate {
	background-color: #0c2766;
}

.footer .footer-contents .nav-btn ul li a.contact {
	background-color: #333333;
}

@media(max-width:1199px) {
	.footer .footer-contents .nav-gnav {
		padding-top: 10px;
		padding-left: 14px;
	}

	.footer .footer-contents .nav-gnav ul li {
		padding-left: 10px;
		padding-right: 10px;
	}
}

@media(max-width:991px) {
	.footer .footer-contents .site-addr {
		text-align: center;
	}

	.footer .footer-contents .flex-wrap {}

	.footer .footer-contents .nav-sns {
		padding: 25px 10px;
	}

	.footer .footer-contents .nav-sns ul {
		margin: 0 -8px;
		justify-content: flex-end;
	}

	.footer .footer-contents .nav-sns ul li {
		padding: 0 8px;
	}

	.footer .footer-contents .nav-gnav {
		padding-left: 0;
	}

	.footer .footer-contents .nav-gnav ul li {
		padding-left: 5px;
		padding-right: 5px;
	}

	.footer .footer-contents .nav-gnav ul li:first-child {
		padding-left: 0;
		border-left: 0;
	}

	.footer .footer-contents .nav-btn {
		flex-grow: 1;
		padding: 25px 10px;
	}

	.footer .footer-contents .nav-btn ul {
		justify-content: flex-start;
	}
}

@media(max-width:767px) {
	.footer .footer-contents .nav-sns {
		padding-top: 5px;
		border-top: none;
	}

	.footer .footer-contents .nav-sns ul li {
		padding: 0 12px;
	}

	.footer .footer-contents .nav-sns ul li a img {
		width: 45px;
		height: 45px;
	}

	.footer .footer-contents .nav-gnav {
		border-top: solid 1px #ffffff;
		width: 100%;
		padding: 25px 0;
	}

	.footer .footer-contents .nav-gnav ul {
		display: block;
	}

	.footer .footer-contents .nav-gnav ul li {
		border-left: 0;
		padding: 0;
	}

	.footer .footer-contents .nav-gnav ul li a {
		display: inline-block;
		padding: 5px 0;
		text-align: left;
	}

	.footer .footer-contents .site-addr {
		border-top: none;
		padding: 40px 0 30px;
		text-align: left;
	}

	.footer .footer-contents .site-addr p .num {
		font-size: 14px;
	}

	.footer .footer-contents .nav-btn {
		width: 100%;
	}

	.footer .footer-contents .nav-btn ul {
		display: block;
	}

	.footer .footer-contents .nav-btn ul li {}

	.footer .footer-contents .nav-btn ul li a {
		margin: 0 auto 15px;
		width: 220px;
	}
}

.footer .copyright {
	margin-top: 72px;
	font-size: 14px;
}

.footer .copyright .en {
	text-align: center;
	margin: 0;
	letter-spacing: 0.12em;
	font-weight: 500;
}

@media(max-width:767px) {
	.footer .copyright {
		margin-top: 40px;
	}

	.footer .copyright .en {
		font-size: 12px;
	}
}

/*--------------------------------------------------*/
/* contact-form */
/* contact */
/*--------------------------------------------------*/

section.contact-form {
	position: relative;
	background: linear-gradient(to top, rgba(147, 189, 218, 1) 0px, rgba(147, 189, 218, 0) 417px);
}

section.contact-form .layer {
	background-image: url("../img/top/bg-triangle1.png");
	background-position: calc(50% + 560px) 85%;
	background-repeat: no-repeat;
	padding: 0 0 345px;
}

section.contact-form .contact-mv {
	position: absolute;
	top: -130px;
	left: 0;
	width: 100%;
	height: 370px;
	background-image: url("../img/common/contact-form-mv.jpg");
	background-position: center center;
	background-repeat: no-repeat;
}

section.contact-form .contact {
	position: relative;
	padding: 120px 0 125px;
}

section.contact-form .contact .container {
	max-width: 933px
}

section.contact-form .contact .container .contact-card {
	max-width: 478px;
	padding: 90px 65px 50px;
	background-color: #ffffff;
	box-shadow: 12px 9px 8px rgba(33, 24, 21, 0.3);
}

section.contact-form .contact .container .contact-card dl.contact-title {}

section.contact-form .contact .container .contact-card dl.contact-title dt.en {
	font-size: 45px;
	font-weight: 500;
	color: #007cc5;
	line-height: 1;
	margin-bottom: 0.25em;
}

section.contact-form .contact .container .contact-card dl.contact-title dd {}

section.contact-form .contact .container .contact-card dl.contact-title dd .ja {
	font-size: 18px;
	font-weight: 500;
	color: #007cc5;
	line-height: 1;
	margin-bottom: 1.75em;
}

section.contact-form .contact .container .contact-card .btn-wrap {
	margin-bottom: 1em;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn {
	font-size: 18px;
	letter-spacing: 0;
	color: #00000a;
	width: 100%;
	padding: 1.75em 1em;
	border: solid 1px #287bb5;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn::before {
	background-color: #ffffff;
	transform: none;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn::after {
	transform: translateX(-3.25em);
}

section.contact-form .contact .container .contact-card .btn-wrap .btn span {
	padding-left: 65px;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	transition: 0.3s;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-tell {
	color: #ffffff;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-tell::before {
	background-color: #287bb5;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-tell::after {
	background-color: #ffffff;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-tell span::before {
	background-image: url("../img/common/btn-tell-ico.png");
}

@media(min-width:767px) {
	section.contact-form .contact .container .contact-card .btn-wrap .btn:hover::after {
		transform: translateX(0%);
		opacity: 1;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn-tell:hover {
		color: #287bb5;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn-tell:hover span::before {
		background-image: url("../img/common/btn-tell-ico-hov.png");
	}
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate {
	margin-top: 20px;
	color: #287bb5;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate::before {
	background-color: #ffffff;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate::after {
	background-color: #287bb5;
}

section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate span::before {
	background-image: url("../img/common/btn-office-mate-ico.png");
}

@media(min-width:767px) {
	section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate:hover {
		color: #ffffff;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate:hover span::before {
		background-image: url("../img/common/btn-office-mate-ico-hov.png");
	}
}

@media(max-width:767px) {
	section.contact-form {
		background-color: #ECF4F6;
	}

	section.contact-form .contact-mv {
		top: 0;
		height: auto;
		padding-top: 36%;
		background-size: cover;
	}

	section.contact-form .contact {
		padding-top: 24%;
	}

	section.contact-form .contact .container .contact-card {
		max-width: 100%;
		padding: 45px 20px 30px;
		box-shadow: 5px 5px 2px rgb(33 24 21 / 16%);
	}

	section.contact-form .contact .container .contact-card dl.contact-title dt.en {
		font-size: 32px;
	}

	section.contact-form .contact .container .contact-card dl.contact-title dd .ja {
		font-size: 14px;
	}

	section.contact-form .contact .container .contact-card dl.contact-title dd {
		font-size: 14px;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn {
		font-size: 14px;
		padding: 1.5em 0;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn span {
		display: block;
		text-align: left;
		padding-left: 70px;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn span::before {
		left: 20px;
		width: 33px;
		height: 33px;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn span::after {
		right: 20px;
	}

	section.contact-form .contact .container .contact-card .btn-wrap .btn-office-mate {
		margin-top: 10px;
	}
}

section.contact-form .contact .container .contact-card .fax-num {
	margin-bottom: 1.5em;
}

section.contact-form .contact .container .contact-card .fax-num dl {}

section.contact-form .contact .container .contact-card .fax-num dt {
	display: inline-block;
	font-size: 17px;
	line-height: 1;
	color: #ffffff;
	background-color: #287bb5;
	padding: 5px 10px;
	margin-right: 0.25em;
	letter-spacing: 0.04em;
	border-radius: 6px;
	vertical-align: middle;
}

section.contact-form .contact .container .contact-card .fax-num dd {
	display: inline-block;
	font-size: 22px;
	line-height: 1;
	color: #287bb5;
	vertical-align: middle;
}

@media(max-width:767px) {
	section.contact-form .contact .container .contact-card .fax-num dt {
		font-size: 16px;
		font-weight: 700;
	}

	section.contact-form .contact .container .contact-card .fax-num dd {
		font-size: 20px;
		font-weight: 700;
	}
}

section.contact-form .contact .container .contact-card .addr {}

section.contact-form .contact .container .contact-card .addr p {
	font-size: 18px;
	color: #287bb5;
	margin-right: -1em;
}

@media(max-width:767px) {
	section.contact-form .contact .container .contact-card .addr p {
		font-size: 14px;
		margin-bottom: 0;
	}
}