 *::before, *::after {
	box-sizing: border-box;
}
body {
	max-width: 100%;
	color: #333;
	font-family: "Yu Gothic", YuGothic, -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", Meiryo, Roboto, "Lato", sans-serif
}
.clearfix::after, #footer-nav #footer-nav-bottom::after, #footer-nav #information-security #information-security-images::after, #footer-corporate-info::after, body#feature-page section#feature-detail .feature-box .left-box::after, body#function-page section#function #function-group-box-wrapper .function-group-box::after, body#function-page #external .external-box::after, body#case-page section#case #pickup::after {
	content: "";
	display: table;
	clear: both
}
a {
	text-decoration: none
}
a, img {
	border: none;
	outline: none
}
ul {
	margin: 0;
	padding: 0
}
li {
	list-style: none
}
p {
	margin: 0
}
h1, h2 {
	margin: 0
}
::placeholder {
	color: #999
}
::-webkit-input-placeholder {
	color: #999
}
:-ms-input-placeholder {
	color: #999
}
::-ms-input-placeholder {
	color: #999
}
input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0
}
input[type=number] {
	-moz-appearance: textfield
}
input[type=radio], input[type=checkbox] {
	display: none
}
.form-group {
	display: inline-block;
	width: 100%;
	max-width: 100%
}
.form-group .input-text-wrapper {
	display: inline-block;
	position: relative;
	max-width: 100%
}
@media screen and (max-width: 750px) {
	.form-group .input-text-wrapper {
		display: block
	}
}
.form-group.has-error input[type=text], .form-group.has-error input[type=number] {
	border: 2px solid #f2594b
}
.form-group.has-error:not(.no-error-icon) .input-text-wrapper:after {
	content: "";
	width: 16px;
	height: 16px;
	/*background-image:url("/images/icons/icon-input-error.png");*/
	background-size: 16px 16px;
	position: absolute;
	top: 0;
	right: 8px;
	bottom: 0;
	margin: auto;
	z-index: 9997
}
.form-group .errors {
	color: #f2594b;
	font-size: 14px;
	font-weight: bold;
	margin-top: 8px;
	margin-left: 262px
}
@media screen and (max-width: 750px) {
	.form-group .errors {
		margin-left: 8px
	}
}
@media screen and (max-width: 750px) {
	.form-group {
		width: 100%;
		white-space: normal
	}
}
input[type=text], input[type=number] {
	border: none;
	background-color: #f0f0f0;
	width: 480px;
	max-width: 100%;
	padding: 8px 16px;
	border-radius: 8px;
	font-size: 14px
}
textarea {
	resize: none;
	border: none;
	background-color: #f0f0f0;
	width: 480px;
	max-width: 100%;
	padding: 8px 16px;
	border-radius: 8px;
	font-size: 14px
}
.radio-group {
	display: inline-block;
	vertical-align: top;
	width: 487px;
	max-width: 100%;
	padding-left: 16px
}
@media screen and (max-width: 750px) {
	.radio-group {
		padding-left: 0;
		display: block
	}
}
.radio, .checkbox {
	position: relative;
	cursor: pointer;
	font-size: 14px;
	font-weight: 700;
	display: block;
	margin: 4px 0 12px 32px;
	-moz-user-select: none;
	-ms-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none
}
@media screen and (max-width: 750px) {
	.radio, .checkbox {
		font-size: 12px
	}
}
.radio:after, .checkbox:after {
	content: '';
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: -32px;
	display: block;
	margin-top: -12px;
	width: 24px;
	height: 24px;
	background-color: #d3d8d8;
	border-radius: 6px
}
input[type=radio]:checked+.radio:after {
	background-color: #000
}
input[type=checkbox]:checked+.checkbox:after {
	background-color: #000
}
.radio:before {
	position: absolute;
	top: 50%;
	left: -26px;
	display: block;
	margin-top: -11px;
	width: 11px;
	height: 15px;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 9997
}
input[type=radio]:checked+.radio:before {
	opacity: 1
}
.checkbox:before {
	position: absolute;
	top: 50%;
	left: -26px;
	display: block;
	margin-top: -11px;
	width: 11px;
	height: 15px;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 9997
}
input[type=checkbox]:checked+.checkbox:before {
	opacity: 1
}
hr {
	border-top: none;
	border-bottom: 1px solid #d2d8d8
}
hr.light, section#inquiry #inquiry-form .confirm-value-hr {
	border-color: #f0f0f0
}
main {
	position: relative;
	padding-top: 72px
}
@media screen and (max-width: 1080px) and (min-width: 749px) {
	main {
		padding-top: 40px
	}
}
main section {
	text-align: center;
	padding: 48px 0
}
main section img {
	display: block;
	margin: 0 auto
}
main section .section-title {
	display: inline-block;
	font-family: "M PLUS Rounded 1c";
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #096;
	padding-bottom: 8px;
	position: relative;
	border-bottom: 2px solid #096;
	margin-top: 32px;
	margin-bottom: 48px
}
@media screen and (max-width: 750px) {
	main section .section-title {
		font-size: 24px;
		margin-top: 16px;
		margin-bottom: 48px
	}
}
main section .section-title:after {
	content: ".";
	line-height: 0;
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 30%;
	border-bottom: 2px solid #ffcc66
}
main section .container {
	background-color: #fff;
	max-width: 1080px;
	margin: 0 auto;
	padding: 56px 0px;
	text-align: left;
	border-radius: 16px
}
@media screen and (max-width: 750px) {
	main section .container {
		margin: 0 8px
	}
}
@media screen and (max-width: 380px) {
	main section .container {
		margin: 0
	}
}
main section .container .container-top-text {
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 48px;
	line-height: 30px;
	text-align: center
}
@media screen and (max-width: 750px) {
	main section .container .container-top-text {
		font-size: 15px;
		font-weight: bold;
		line-height: 22px;
		margin-bottom: 24px;
		margin-left: 8px;
		text-align: left
	}
}
main section .container .container-top-text .bold {
	font-weight: bold;
	font-size: 18px
}
@media screen and (max-width: 750px) {
	main section .container .container-top-text .bold {
		font-size: 14px
	}
}
main #sticky-side {
	opacity: 0;
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 9998
}
@media screen and (max-width: 750px) {
	main #sticky-side {
		right: 8px
	}
}
main #sticky-side .btn-circle {
	background-color: #096;
	width: 48px;
	height: 48px;
	border-radius: 48px;
	margin-bottom: 16px;
	text-align: center;
	cursor: default
}
main #sticky-side .btn-circle:hover {
	opacity: 0.7
}
main #sticky-side.show .btn-circle {
	cursor: pointer
}
main #sticky-side #action-inquiry img {
	padding-top: 15px;
	width: 27px
}
main #sticky-side #action-scroll-top img {
	padding-top: 15px;
	width: 18px
}
[class^="btn-"], [class*=" btn-"], [id^="btn-"] {
	cursor: pointer;
	-moz-user-select: none;
	-ms-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none
}
.btn-border, .case-cards .case-card .btn-to-case-detail, body#top-page section#functions #btn-to-function-list {
	display: inline-block;
	position: relative;
	background-image: url(/images/btn-border-inactive.svg);
	background-size: cover;
	background-repeat: no-repeat;
	width: 321px;
	height: 59px;
	border-radius: 8px
}
.btn-border:hover, .case-cards .case-card .btn-to-case-detail:hover, body#top-page section#functions #btn-to-function-list:hover {
	background-color: #096;
	transition: background-color 0.1s linear
}
.btn-border:hover span, .case-cards .case-card .btn-to-case-detail:hover span, body#top-page section#functions #btn-to-function-list:hover span {
	color: #fff
}
.btn-border span, .case-cards .case-card .btn-to-case-detail span, body#top-page section#functions #btn-to-function-list span {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	height: 24px;
	color: #096;
	font-family: "M PLUS Rounded 1c";
	font-size: 24px;
	letter-spacing: 0.1em
}
@font-face {
	font-family: 'icon';
	src: url("fonts/icon.eot?ojzhpi");
	src: url("fonts/icon.eot?ojzhpi#iefix") format("embedded-opentype"), url("fonts/icon.ttf?ojzhpi") format("truetype"), url("fonts/icon.woff?ojzhpi") format("woff"), url("icon.svg?ojzhpi#icomoon") format("svg");
	font-weight: normal;
	font-style: normal
}
[class^="icon-"], [class*=" icon-"] {
	font-family: 'icon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}
.icon-apply:before {
	content: "\e900";
	color: #fff
}
.case-cards {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 1080px;
	margin: 0 auto
}
@media screen and (max-width: 750px) {
	.case-cards {
		width: 100%
	}
}
.case-cards .case-card {
	width: 312px;
	height: 356px;
	background-color: #fff;
	margin: 0 16px 32px;
	padding: 16px
}
.case-cards .case-card.dummy {
	visibility: hidden !important;
	height: 0 !important;
	margin-bottom: 0 !important;
	padding: 0 !important
}
@media screen and (max-width: 750px) {
	.case-cards .case-card {
		margin: 0 auto 32px
	}
}
.case-cards .case-card img {
	max-width: 100%;
	margin-bottom: 16px
}
.case-cards .case-card .case-text {
	text-align: left;
	padding: 8px
}
.case-cards .case-card .case-name {
	font-family: "M PLUS Rounded 1c";
	font-size: 18px;
	line-height: 24px;
	margin-bottom: 16px
}
.case-cards .case-card .case-desc {
	font-size: 14px;
	line-height: 24px;
	margin-bottom: 16px
}
.case-cards .case-card .btn-to-case-detail {
	float: right;
	background-image: url(/images/btn-border-inactive-sm.svg);
	background-size: 111px 32px;
	width: 111px;
	height: 32px;
	margin: 8px;
	border-radius: 4px;
	text-align: center
}
.case-cards .case-card .btn-to-case-detail span {
	height: 14px;
	font-size: 14px
}
.case-cards .case-card .btn-to-case-detail:hover:after {
	content: "";
	background-image: url(/images/icons/icon-btn-arrow-right-sm.svg);
	background-size: cover;
	width: 17px;
	height: 7px;
	display: inline-block;
	position: absolute;
	top: 12px;
	right: 9px
}
.subsection, body#faq-page section#faq #customer-management, body#faq-page section#faq #billing-and-payment, body#faq-page section#faq #application-form, body#faq-page section#faq #application-and-price {
	margin-top: 48px
}
@media screen and (max-width: 750px) {
	.subsection, body#faq-page section#faq #customer-management, body#faq-page section#faq #billing-and-payment, body#faq-page section#faq #application-form, body#faq-page section#faq #application-and-price {
		width: 335px;
		max-width: 100%;
		margin: 32px auto 0
	}
}
.subsection .title, body#faq-page section#faq #customer-management .title, body#faq-page section#faq #billing-and-payment .title, body#faq-page section#faq #application-form .title, body#faq-page section#faq #application-and-price .title {
	font-family: "M PLUS Rounded 1c";
	font-size: 28px;
	font-weight: 700;
	color: #096;
	border-bottom: 2px solid #096;
	padding-bottom: 8px;
	position: relative
}
.subsection .title:after, body#faq-page section#faq #customer-management .title:after, body#faq-page section#faq #billing-and-payment .title:after, body#faq-page section#faq #application-form .title:after, body#faq-page section#faq #application-and-price .title:after {
	content: "";
	line-height: 0;
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 10%;
	border-bottom: 2px solid #ffcc66
}
@media screen and (max-width: 750px) {
	.subsection .title, body#faq-page section#faq #customer-management .title, body#faq-page section#faq #billing-and-payment .title, body#faq-page section#faq #application-form .title, body#faq-page section#faq #application-and-price .title {
		font-size: 20px
	}
}
#top-nav {
	position: fixed;
	z-index: 9999;
	background: #fff;
    width: 100%;
	font-size: 0;
	padding: 16px 40px 15px;
	border-bottom: 1px solid #096;
	box-sizing: border-box;
}
@media screen and (max-width: 1080px) and (min-width: 749px) {
	#top-nav {
		border-bottom: 1px solid #096 !important
	}
}
@media screen and (max-width: 1079px) {
	#top-nav {
		padding: 0px;
		border-bottom: none
	}
}
@media screen and (max-width: 1079px) {
	#top-nav h1 {
		margin-top: 7px
	}
}
#top-nav .logo {
	width: 160.09px
}

@media screen and (max-width: 1079px) {
	#top-nav .logo {
		width: 100px;
		margin-left: 24px
	}
}
#top-nav ul {
	display: inline-block;
	margin-right: 20px
}
#top-nav li {
	display: inline-block;
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	font-weight: normal;
	letter-spacing: 0.1em;
	margin: 0 16px;
	cursor: pointer
}
#top-nav li:hover {
	opacity: 1;
}
#top-nav a {
	color: #333;
}
#top-nav #top-nav-right ul li a {
	position: relative;
	display: inline-block;
}
#top-nav #top-nav-right ul li a::after {
	content: "";
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #096;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: left center;
	transform-origin: left center;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
}
#top-nav #top-nav-right ul li:hover a {
	color: #096;
}
#top-nav #top-nav-right ul li:hover a::after {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
#top-nav #top-btns {
	display: inline-block
}
@media screen and (max-width: 1080px) and (min-width: 749px) {
	#top-nav #top-btns {
		top: 0 !important;
		right: 40px !important;
		left: auto !important;
		width: auto !important;
		background-color: transparent !important
	}
}
@media screen and (max-width: 1079px) {
	#top-nav #top-btns {
		position: fixed;
		top: 40px;
		left: 0;
		width: 100%;
		background-color: #096
	}
}
#top-nav #top-btns #btn-inquiry {
	display: inline-block;
	width: 184px;
	height: 40px;
	line-height: 40px;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: 0.1em;
	color: #fff;
	background-color: #096;
	border-radius: 8px;
	margin-left: 8px;
	margin-right: 24px;
	padding-left: 16px
}
#top-nav #top-btns #btn-inquiry:hover {
	background-color: #4cb794
}
#top-nav #top-btns #btn-inquiry img {
	width: 30px;
	vertical-align: middle;
	padding-right: 8px
}
@media screen and (max-width: 1079px) {
	#top-nav #top-btns #btn-inquiry {
		padding-left: 32px
	}
	#top-nav #top-btns #btn-inquiry .text-for-btn {
		margin-left: 16px
	}
	#top-nav #top-btns #btn-inquiry img {
		width: 27px;
		vertical-align: middle;
		padding-right: 8px
	}
}
#top-nav #top-btns #btn-apply {
	display: inline-block;
	width: 184px;
	height: 40px;
	line-height: 38px;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: 0.1em;
	color: #096;
	border: 2px solid #096;
	border-radius: 8px;
	padding-left: 14px;
	background-color: #fff
}
#top-nav #top-btns #btn-apply:hover {
	background-color: #096;
	color: #fff
}
#top-nav #top-btns #btn-apply:hover .icon-apply:before {
	color: #fff
}
#top-nav #top-btns #btn-apply .icon-apply:before {
	font-size: 18px;
	vertical-align: middle;
	padding-right: 8px;
	color: #096
}
@media screen and (max-width: 1079px) {
	#top-nav #top-btns #btn-apply {
		padding-left: 16px
	}
	#top-nav #top-btns #btn-apply .text-for-btn {
		margin-left: 16px
	}
}
#top-nav #top-btns #btn-inquiry, #top-nav #top-btns #btn-apply {
	font-family: "M PLUS Rounded 1c"
}
@media screen and (max-width: 1080px) and (min-width: 749px) {
	#top-nav #top-btns #btn-inquiry, #top-nav #top-btns #btn-apply {
		width: 184px !important;
		height: 40px !important;
		line-height: 39px !important
	}
	#top-nav #top-btns #btn-inquiry .text-for-btn, #top-nav #top-btns #btn-apply .text-for-btn {
		margin-left: 8px
	}
}
@media screen and (max-width: 1079px) {
	#top-nav #top-btns #btn-inquiry, #top-nav #top-btns #btn-apply {
		width: 50%;
		margin: 0;
		border-radius: 0;
		border-width: 1px;
		height: 32px;
		vertical-align: middle;
		line-height: 31px
	}
	#top-nav #top-btns #btn-inquiry .text-for-btn, #top-nav #top-btns #btn-apply .text-for-btn {
		font-size: 14px;
		vertical-align: middle
	}
}
@media screen and (max-width: 359px) {
	#top-nav #top-btns #btn-inquiry, #top-nav #top-btns #btn-apply {
		padding-left: 8px
	}
	#top-nav #top-btns #btn-inquiry .text-for-btn, #top-nav #top-btns #btn-apply .text-for-btn {
		margin-left: 8px
	}
}
#top-nav #top-nav-left {
	float: left
}
#top-nav #top-nav-right {
	float: right;
	vertical-align: middle;
	display: inline-block;
	height: 40px
}
@media screen and (max-width: 1079px) {
	#top-nav #top-nav-right ul {
		display: none
	}
}
#top-nav #sp-menu {
	display: none;
	float: right;
	cursor: pointer;
	width: 40px;
	height: 40px;
	background-image: url(/images/hamburger.png);
	background-size: 40px 40px;
}
@media screen and (max-width: 1079px) {
	#top-nav #sp-menu {
		display: block
	}
}
#top-nav #sp-menu.opened {
	background-image: url(/images/close-hamburger.png)
}
footer {
	text-align: center
}
#footer-nav {
	padding: 56px 0 32px;
	background-color: #ffffea
}
#footer-nav #footer-nav-bottom {
	width: 1063px;
	margin: 0 auto
}
@media screen and (max-width: 1079px) {
	#footer-nav #footer-nav-bottom {
		width: auto;
		margin: 0 auto
	}
}
@media screen and (max-width: 1079px) {
	#footer-nav {
		padding: 24px 8px 16px;
		width: auto
	}
}
#footer-nav #footer-menu-wrapper {
	text-align: left;
	width: 1063px;
	margin: 0 auto 32px
}
@media screen and (max-width: 1079px) {
	#footer-nav #footer-menu-wrapper {
		width: auto;
		max-width: 355px;
		margin: 0 auto 16px
	}
}
#footer-nav #footer-menu-wrapper ul {
	margin: 0 auto
}
@media screen and (max-width: 1079px) {
	#footer-nav #footer-menu-wrapper ul {
		-js-display: flex;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: center;
		align-items: center;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap
	}
}
#footer-nav #footer-menu-wrapper .delimiter {
	display: inline-block
}
#footer-nav #footer-menu-wrapper .delimiter:before {
	content: "|";
	font-size: 14px;
	font-family: "M PLUS Rounded 1c";
	color: #d2d8d8
}
@media screen and (max-width: 1079px) {
	#footer-nav #footer-menu-wrapper .delimiter:nth-of-type(3) {
		display: none
	}
}
#footer-nav #footer-menu-wrapper a {
	color: #333;
	display: inline-block;
	margin: 0 27px;
	height: 36px
}
#footer-nav #footer-menu-wrapper a:first-child {
	margin-left: 0
}
@media screen and (max-width: 1079px) {
	#footer-nav #footer-menu-wrapper a {
		width: 90px;
		margin: 0
	}
}
#footer-nav #footer-menu-wrapper a li {
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	letter-spacing: 0.1em;
	color: #333;
	text-align: center;
	margin-bottom: 0;
	padding-bottom: 0;
	cursor: pointer;
	line-height: 38px
}

#footer-nav #information-security #security_part {
	width: 100%;
	max-width: 1150px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	padding: 0 1% 50px 1%;
	box-sizing: border-box;
}

#footer-nav #information-security #security_part #sec_cont {
	margin: 0 auto;
	padding: 8px;
	box-sizing: border-box;
}

#footer-nav #information-security #security_part #sec_cont ul {
	list-style: none;
	padding: 0;
	text-align: left;
	color: #444;
}

#footer-nav #information-security #security_part #sec_cont ul li {
	font-size: 0.9em;
	position: relative;
	padding-left: 8px;
    display: block;
 }
 #footer-nav #information-security #security_part #sec_cont ul li:before {
	content: "•";
	position: absolute;
	left: 0;
	color: #444;
	font-size: 1.5em;
	line-height: 0.8;
}
#footer-nav #information-security #security_part #sec_cont .sec_items {
	display: flex;
	width: 100%;
  }

#footer-nav #information-security #security_part #sec_cont .sec_items .sec_item {
	display: flex;
	gap: 16px;
  }

#footer-nav #information-security #security_part #sec_cont .sec_items .sec_item img {
	margin-top: 8px;
	width: auto;
	height: 92px;
	margin-right: 24px;
  }

@media screen and (max-width: 736px) {
#footer-nav #information-security #security_part #sec_cont {
    width: 100%;
    padding: 0 1%;
  }

  #footer-nav #information-security #security_part #sec_cont .sec_items .sec_item img {
    height: 62px;
    position: static;
    margin-top: 16px;
    margin-right: 16px !important;
  }
}

@media screen and (max-width: 1079px) {
	#footer-nav #footer-menu-wrapper a li {
		font-size: 14px
	}
}
#footer-nav #footer-menu-wrapper a:hover li {
	border-color: #096;
	color: #096 !important
}
#footer-nav #footer-menu-wrapper .dummy {
	visibility: hidden;
	height: 0
}
#footer-nav #footer-menu-wrapper .dummy li {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important
}
#footer-nav #information-security {
	vertical-align: top;
	display: inline-block;
	width: 600px;
	font-size: 14px;
    font-weight: 700;
	padding: 16px 12px;
	margin-right: 24px;
	text-align: left;
	line-height: 20px;
	float: right;
	letter-spacing: 0.05em
}
@media screen and (max-width: 1079px) {
	#footer-nav #information-security {
		display: block;
		margin: 0 auto;
		width: auto;
		max-width: 355px;
		float: none
	}
	#footer-nav #information-security p {
		font-size: 14px
	}
}
#footer-nav #information-security p {
	margin-bottom: 8px;
	font-weight: bold
}

#footer-nav #information-security #detail {
	font-size: 12px;
    margin-bottom: 8px;
    font-weight: normal;
}

@media screen and (max-width: 1079px) {
	#footer-nav #information-security p {
		text-align: left
	}
}
#footer-nav #information-security li {
	display: inline-block;
	font-size: 14px
}
@media screen and (max-width: 1079px) {
	#footer-nav #information-security li {
		display: block;
		font-size: 12px
	}
}
#footer-nav #information-security #information-security-images {
	text-align: center
}
#footer-nav #information-security #information-security-images img {
	vertical-align: middle;
	margin-bottom: 16px
}
#footer-nav #information-security #information-security-images img#icms {
	margin-right: 24px;
	margin-left: 24px;
}
@media screen and (max-width: 1079px) {
	#footer-nav #information-security #information-security-images img#icms {
		margin: 0px 24px;
		width: 80px;
		float: left
	}
}
#footer-nav #information-security #information-security-images img#pmark {
	width: 72px;
	margin-top: 5px;
	margin-left: 24px;
}
@media screen and (max-width: 1079px) {
	#footer-nav #information-security #information-security-images img#pmark {
		float: right;
		margin-left: 24px;
		margin-right: 32px;
	}
}

#footer-nav #information-security a.accessdata {
    color:#333333;
    text-decoration-line: underline;
    transition: all 0.5s ease;
}

#footer-nav #information-security a.accessdata:hover {
    opacity: 0.5;
}

#footer-corporate-info {
	display: inline-block;
    max-width: 401px;
	vertical-align: top;
	letter-spacing: 0.05em;
	text-align: left;
	float: left
}
@media screen and (max-width: 1079px) {
	#footer-corporate-info {
		margin: 0 auto;
		display: block;
		padding: 8px 12px 0;
		float: none;
		max-width: 363px
	}
}
#footer-corporate-info .logo {
	width: 180px
}

#footer-corporate-info .banner {
	width: 300px;
	margin-top: 16px;
}

@media screen and (max-width: 1079px) {
	#footer-corporate-info .logo {
		display: inline-block;
		width: 124px;
		margin-right: 8px
	}
}
#footer-corporate-info #logo-subtext {
	font-size: 12px;
	font-weight: 500;
	margin-top: 8px;
	line-height: 20px
}
@media screen and (max-width: 1079px) {
	#footer-corporate-info #logo-subtext {
		display: inline-block;
		max-width: 185px;
		font-size: 10px;
		letter-spacing: 0;
		line-height: 14px
	}
}
#footer-corporate-info #corporate-name {
	font-size: 14px;
	font-weight: 700;
	margin: 40px 0 8px
}
@media screen and (max-width: 1079px) {
	#footer-corporate-info #corporate-name {
		font-weight: bold;
		text-align: left;
		margin: 16px 0 8px
	}
}
#footer-corporate-info #corporate-address {
	font-size: 12px;
	margin-bottom: 16px;
	line-height: 20px
}
@media screen and (max-width: 1079px) {
	#footer-corporate-info #corporate-address {
		font-size: 10px;
		font-weight: 500;
		line-height: 1.2;
		margin-bottom: 8px
	}
}
#footer-corporate-info #corporate-tel, #footer-corporate-info #corporate-fax {
	font-size: 16px;
	font-weight: bold
}
@media all and (-ms-high-contrast: none) {
	#footer-corporate-info #corporate-tel, #footer-corporate-info #corporate-fax {
		font-weight: normal
	}
}
#footer-corporate-info #corporate-tel a, #footer-corporate-info #corporate-fax a {
	color: #333 !important;
	text-decoration: none !important
}
@media screen and (max-width: 1079px) {
	#footer-corporate-info #corporate-tel, #footer-corporate-info #corporate-fax {
		font-size: 14px;
		letter-spacing: 0
	}
}
#footer-corporate-info #corporate-tel {
	float: left
}
#footer-corporate-info #corporate-fax {
	float: right
}
#copyright {
	background-color: #096;
	font-size: 14px;
	letter-spacing: 0.1em;
	color: #fff;
	text-align: center;
	padding: 8px 0
}
@media screen and (max-width: 1079px) {
	body.sp-menu-opened #footer-nav {
		z-index: 9999;
		position: fixed;
		top: 41px;
		left: 0;
		right: 0;
		height: 100%;
		padding-top: 40px;
		margin: auto;
		background-color: #fff !important
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper {
		max-width: 275px;
		margin: 0 auto
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper ul {
		display: block !important
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .delimiter {
		display: none
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper a {
		display: block;
		width: auto;
		height: auto
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper a:hover li {
		border-color: #096
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper li {
		font-weight: normal !important;
		border-bottom: 1px solid #ccc;
		padding: 0;
		margin: 0;
		padding-bottom: 16px;
		margin-bottom: 16px;
		line-height: 1
	}
	body.sp-menu-opened #footer-nav #footer-corporate-info {
		margin: auto;
		text-align: center;
		max-width: 277px !important;
		padding: 40px 0 0 !important
	}
	body.sp-menu-opened #footer-nav #footer-corporate-info .logo, body.sp-menu-opened #footer-nav #footer-corporate-info #logo-subtext, body.sp-menu-opened #footer-nav #footer-corporate-info #corporate-address {
		display: none !important
	}
	body.sp-menu-opened #footer-nav #footer-corporate-info #corporate-name {
		margin-top: 0;
		font-weight: 500;
		letter-spacing: 0.025px
	}
	body.sp-menu-opened #footer-nav #information-security {
		display: none !important
	}
}
@media screen and (max-width: 750px) {
	body.sp-menu-opened #footer-nav {
		top: 72px
	}
}

/* ========================================
   フッター カラムナビ
======================================== */
#footer-nav #footer-menu-wrapper .footer-nav-cols {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 0;
}
#footer-nav #footer-menu-wrapper .footer-nav-col {
	padding: 0 30px;
	border-right: 1px solid #d2d8d8;
	text-align: center;
}
#footer-nav #footer-menu-wrapper .footer-nav-col:last-child {
	border-right: none;
}
#footer-nav #footer-menu-wrapper .footer-nav-col .footer-col-link {
	display: block;
	margin: 0;
	text-align: center;
	height: auto;
}
.footer-col-with-toggle {
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
}
.footer-col-link {
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	letter-spacing: 0.1em;
	color: #333;
	display: inline-block;
	line-height: 38px;
	white-space: nowrap;
	position: relative;
}
.footer-col-link::after {
	content: "";
	position: absolute;
	bottom: 4px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #096;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: left center;
	transform-origin: left center;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
}
.footer-col-link:hover,
#footer-nav #footer-menu-wrapper a.footer-col-link:hover {
	color: #096;
}
.footer-col-link:hover::after {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}

/* フッター サブリンク（デフォルト非表示・トランジション） */
.footer-sub-links {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	-webkit-transition: max-height 0.25s ease, opacity 0.2s ease;
	transition: max-height 0.25s ease, opacity 0.2s ease;
}
.footer-nav-col.is-open .footer-sub-links {
	max-height: 200px;
	opacity: 1;
}
.footer-sub-links li a {
	font-family: "M PLUS Rounded 1c";
	font-size: 13px;
	color: #666;
	display: block;
	padding: 3px 0 6px 8px;
	white-space: nowrap;
	line-height: 1.4;
}
.footer-sub-links li a::before {
	content: "└ ";
	color: #bbb;
	font-size: 11px;
}
.footer-sub-links li a:hover {
	color: #096;
}

/* フッター トグルボタン */
.footer-sub-toggle {
	background: none;
	border: none;
	cursor: pointer;
	padding: 2px 2px 2px 4px;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
	vertical-align: middle;
}
.footer-chevron {
	display: inline-block;
	width: 7px;
	height: 7px;
	border-right: 1.5px solid #666;
	border-bottom: 1.5px solid #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	margin-top: -3px;
}
.footer-nav-col.is-open .footer-chevron {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	margin-top: 3px;
}
@media screen and (max-width: 1079px) {
	#footer-nav #footer-menu-wrapper .footer-nav-col {
		padding: 0 12px;
	}
	.footer-col-link {
		font-size: 14px;
	}
}
@media screen and (max-width: 750px) {
	#footer-nav #footer-menu-wrapper .footer-nav-cols {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#footer-nav #footer-menu-wrapper .footer-nav-col {
		width: 50%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 4px 12px !important;
		border: none !important;
	}
	#footer-nav #footer-menu-wrapper .footer-nav-col:first-child {
		padding-left: 12px;
	}
	#footer-nav #footer-menu-wrapper .footer-col-link {
		line-height: 1.6;
	}
}

/* SP メニューオーバーレイ（新構造対応） */
@media screen and (max-width: 1079px) {
	body.sp-menu-opened #footer-nav #footer-menu-wrapper {
		max-width: 275px;
		margin: 0 auto;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-nav-cols {
		display: block !important;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-nav-col {
		border-right: none !important;
		border-bottom: 1px solid #ccc !important;
		padding: 14px 0 !important;
		margin-bottom: 0;
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
		-webkit-transition: border-bottom-color 0.3s ease;
		transition: border-bottom-color 0.3s ease;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-nav-col:hover {
		border-bottom-color: #096 !important;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-nav-col:last-child {
		border-bottom: 1px solid #ccc !important;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-nav-col:last-child:hover {
		border-bottom-color: #096 !important;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-col-link {
		font-size: 14px;
		line-height: 1.4;
		height: auto;
		text-align: center;
		font-weight: normal;
		margin: 0;
		color: #333;
		-webkit-transition: color 0.3s ease;
		transition: color 0.3s ease;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-nav-col:hover .footer-col-link {
		color: #096;
	}
	body.sp-menu-opened #footer-nav #footer-menu-wrapper .footer-col-link::after {
		display: none;
	}
}

body#top-page section#main-slider {
	position: relative;
	background-color: rgba(0, 153, 102, 0.7);
	padding: 0;
	background: url("../images/fv_bg_pc.jpg") 0 0;
	z-index: 1;
}


body#top-page section#main-slider .swiper-container {
	max-width: 1920px
}
body#top-page section#main-slider .swiper-container.loading img {
	display: none
}
body#top-page section#main-slider .swiper-container:hover .swiper-button-prev, body#top-page section#main-slider .swiper-container:hover .swiper-button-next {
	display: block;
	opacity: 0.7
}
@media screen and (max-width: 1080px) {
	body#top-page section#main-slider .swiper-container:hover .swiper-button-prev, body#top-page section#main-slider .swiper-container:hover .swiper-button-next {
		display: none
	}
}
body#top-page section#main-slider .swiper-slide {
	padding: 16px 48px;
	margin: 0 auto
}
@media screen and (max-width: 750px) {
	body#top-page section#main-slider .swiper-slide {
		padding: 0
	}
}
body#top-page .swiper-button-prev, body#top-page .swiper-button-next {
	background-image: url(/images/icons/icon-swiper-button.png);
	width: 40px;
	height: 40px;
	background-size: 40px 40px;
	display: none
}
body#top-page .swiper-button-next {
	transform: scaleX(-1)
}
@media screen and (min-width: 1080px) {
	body#top-page .swiper-slide-prev, body#top-page .swiper-slide-next {
		opacity: 0.4
	}
}
body#top-page .swiper-slide-active {
	border: 4px solid #096;
	background-color: #fff
}
body#top-page section#service-overview {
	background-color: #f9fff5
}
body#top-page section#service-overview img {
	width: 856px;
	max-width: 100%;
	padding: 0 24px
}

body#top-page section#service-overview img {
	width: 856px;
	max-width: 100%;
	padding: 0 24px
}

body#top-page section#service-overview .swiper-pagination-bullets, body#top-page section#service-overview .swiper-pagination-custom, body#top-page section#service-overview .swiper-pagination-fraction {
	position: static;
	margin-top: -32px;
	margin-bottom: 13px
}
body#top-page section#service-overview .swiper-pagination-bullets .swiper-pagination-bullet, body#top-page section#service-overview .swiper-pagination-custom .swiper-pagination-bullet, body#top-page section#service-overview .swiper-pagination-fraction .swiper-pagination-bullet {
	background-color: #096;
	opacity: 0.3;
	width: 16px;
	height: 16px;
	margin: 0 16px;
	outline: none
}
body#top-page section#service-overview .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active, body#top-page section#service-overview .swiper-pagination-custom .swiper-pagination-bullet.swiper-pagination-bullet-active, body#top-page section#service-overview .swiper-pagination-fraction .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity: 1
}
body#top-page section#functions {
	background-color: #ffffea
}
body#top-page section#functions #function-items {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 1080px;
	margin: 0 auto 56px
}
@media screen and (max-width: 750px) {
	body#top-page section#functions #function-items {
		width: 100%
	}
}
body#top-page section#functions .function {
	width: 304px;
	margin: 24px;
	height: 236px
}
@media screen and (max-width: 750px) {
	body#top-page section#functions .function {
		width: 100%;
		max-width: 315px;
		margin: 0 auto 16px;
		text-align: left;
		height: auto;
	}
}
@media screen and (max-width: 750px) {
	body#top-page section#functions .function .function-header {
		white-space: nowrap;
		margin-bottom: 0px;
	}
}
body#top-page section#functions .function .function-icon {
	width: 112px;
	margin: 8px auto
}
@media screen and (max-width: 750px) {
	body#top-page section#functions .function .function-icon {
		width: 60px;
		display: inline-block;
		vertical-align: middle;
		margin: 0 16px 16px 0
	}
}
body#top-page section#functions .function .function-name {
	color: #096;
	font-size: 20px;
	font-weight: bold;
	font-family: "M PLUS Rounded 1c";
	margin: 8px 0
}
@media screen and (max-width: 750px) {
	body#top-page section#functions .function .function-name {
		display: inline-block;
		vertical-align: top;
		width: 228px;
		white-space: normal;
		text-align: left
	}
	body#top-page section#functions .function .function-desc {
	font-size: 15px;
	line-height: 28px;
    margin-bottom: 24px;
	text-align: left
    }
}
body#top-page section#functions .function .function-desc {
	font-size: 16px;
	line-height: 28px;
	text-align: left
}
body#top-page section#functions #btn-to-function-list:hover:after {
	content: "";
	background-image: url(/images/icons/icon-btn-arrow-right.svg);
	background-size: cover;
	width: 26px;
	height: 10px;
	display: inline-block;
	position: absolute;
	top: 21px;
	right: 39px
}
body#top-page section#industry-types {
	background: #ffffea;
}
@media screen and (max-width: 750px) {
	body#top-page section#industry-types {
		padding-bottom: 0
	}
}
body#top-page section#industry-types #industry-items {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 1080px;
	padding-bottom: 32px;
	margin: 0 auto

}
@media screen and (max-width: 750px) {
	body#top-page section#industry-types #industry-items {
		width: 100%
	}
}
body#top-page section#industry-types .industry {
	float: left;
	width: 242px;
	margin: 0 12px 16px 12px;
	min-height: 168px;
}
body#top-page section#industry-types .industry .trim-img {
	overflow: hidden;
	width: 232px;
	height: 112px;
	position: relative;
	border-radius: 8px;
	margin-bottom: 12px
}
@media screen and (max-width: 750px) {
	body#top-page section#industry-types .industry .trim-img {
		width: 148px;
		height: 72px;
		margin-bottom: 8px
	}
}
body#top-page section#industry-types .industry .trim-img img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: auto
}
body#top-page section#industry-types .industry.dummy {
	visibility: hidden;
	height: 0;
	min-height: 0;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0
}
@media screen and (max-width: 750px) {
	body#top-page section#industry-types .industry {
		margin: 12px 6px 0px 12px;
		width: 156px;
		min-height: 134px
	}
}
body#top-page section#industry-types .industry .industry-name {
	font-family: "M PLUS Rounded 1c";
	font-size: 19px;
	font-weight: bold;
	text-align: left;
	line-height: 22px;
	color:#009966;
}

body#top-page section#industry-types .industry .industry-name span {
	font-weight: normal;
}

@media screen and (max-width: 750px) {
	body#top-page section#industry-types .industry .industry-name {
		line-height: 20px;
		font-size: 18px;
		margin-bottom: 14px
	}
}
body#top-page section#cases {
	background-color: #f9fff5
}
@media screen and (max-width: 750px) {
	body#top-page section#cases {
		padding-bottom: 0
	}
}
body#top-page section#cases .case-card {
	height: auto
}
body[id^="inquiry-page"] #footer-nav {
	background-color: #f9fff5
}
body#inquiry-page-thanks .section-header {
	background-image: url("/images/inquiry-back-right.png") !important;
	background-position: top 48px right 40px !important
}
@media screen and (max-width: 750px) {
	body#inquiry-page-thanks .section-header {
		background-position: top 72px right 8px !important
	}
}
section#inquiry {
	background-color: #ffffea;
	padding: 0 8px 0
}
section#inquiry .section-header {
	max-width: 1080px;
	height: 200px;
	margin: 0 auto;
	padding-top: 80px;
	background-image: url("/images/inquiry-back-left.png");
	background-repeat: no-repeat;
	background-size: 281px;
	background-position: 40px 48px
}
@media screen and (max-width: 1092px) {
	section#inquiry .section-header {
		max-width: 784px
	}
}
@media screen and (max-width: 750px) {
	section#inquiry .section-header {
		height: 136px;
		padding-top: 32px;
		background-size: 140px;
		background-position: 16px 72px
	}
}
section#inquiry #inquiry-form {
	background-color: #fff;
	max-width: 1080px;
	margin: 0 auto;
	padding: 56px 176px;
	text-align: left;
	border-radius: 40px
}
@media screen and (max-width: 1092px) {
	section#inquiry #inquiry-form {
		padding: 56px 34px;
		max-width: 784px
	}
	section#inquiry #inquiry-form input[type=text], section#inquiry #inquiry-form input[type=number], section#inquiry #inquiry-form textarea, section#inquiry #inquiry-form .radio-group, section#inquiry #inquiry-form #personal-info, section#inquiry #inquiry-form .input-text-wrapper {
		width: 422px;
		max-width: 422px
	}
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form {
		padding: 24px
	}
	section#inquiry #inquiry-form input[type=text], section#inquiry #inquiry-form input[type=number], section#inquiry #inquiry-form textarea, section#inquiry #inquiry-form .radio-group, section#inquiry #inquiry-form #personal-info, section#inquiry #inquiry-form .input-text-wrapper {
		max-width: 100%
	}
}
section#inquiry #inquiry-form #error-box {
	display: none;
	margin: 40px 0;
	padding: 24px;
	max-width: 716px;
	background-color: rgba(242, 89, 75, 0.05);
	border: 1px solid #f2594b;
	color: #f2594b;
	font-weight: bold
}
section#inquiry #inquiry-form #error-box p {
	font-size: 18px;
	margin-bottom: 28px
}
section#inquiry #inquiry-form #error-box li {
	list-style: disc;
	font-size: 16px;
	margin-left: 22px
}
section#inquiry #inquiry-form label {
	line-height: 1.5
}
section#inquiry #inquiry-form label.main-label {
	width: 224px;
	vertical-align: top;
	margin-bottom: 8px;
	font-size: 16px;
	font-weight: 700;
	display: inline-block
}
section#inquiry #inquiry-form label.main-label.required-label:after {
	content: "必須";
	display: inline-block;
	background-color: #096;
	width: 48px;
	height: 24px;
	border-radius: 6px;
	font-size: 14px;
	color: #fff;
	text-align: center;
	line-height: 24px;
	float: right;
	vertical-align: middle
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form label.main-label.required-label:after {
		margin-left: 16px;
		margin-top: 2px;
		width: 32px;
		height: 16px;
		font-size: 10px;
		line-height: 16px
	}
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form label.main-label {
		width: auto;
		font-size: 14px
	}
}
section#inquiry #inquiry-form .confirm-value {
	margin-left: 48px;
	font-size: 14px;
	font-weight: normal;
	display: inline-block;
	vertical-align: middle;
	max-width: 451px;
	overflow-wrap: break-word;
	word-break: break-all
}
@media screen and (max-width: 1095px) {
	section#inquiry #inquiry-form .confirm-value {
		max-width: 420px
	}
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form .confirm-value {
		display: block;
		margin-left: 8px
	}
}
section#inquiry #inquiry-form .confirm-value-hr {
	display: none
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form .confirm-value-hr {
		display: block
	}
}
section#inquiry #inquiry-form input[type=text], section#inquiry #inquiry-form input[type=number], section#inquiry #inquiry-form textarea {
	margin-left: 16px
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form input[type=text], section#inquiry #inquiry-form input[type=number], section#inquiry #inquiry-form textarea {
		margin-left: 0
	}
}
section#inquiry #inquiry-form #instruction {
	font-size: 16px;
	letter-spacing: 0.05em;
	margin-bottom: 48px;
	line-height: 27px
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #instruction {
		font-size: 12px;
		margin-bottom: 24px;
		margin-left: 8px
	}
}
section#inquiry #inquiry-form #steps {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	font-size: 0
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #steps {
		text-align: center;
		-webkit-justify-content: center;
		justify-content: center
	}
}
section#inquiry #inquiry-form #steps .step {
	position: relative;
	background-color: #096;
	opacity: 0.3;
	border-radius: 8px;
	width: 208px;
	height: 52px;
	line-height: 52px;
	color: #fff;
	text-align: center;
	margin-bottom: 40px
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #steps .step {
		width: 315px;
		margin: 0 0 16px !important
	}
}
section#inquiry #inquiry-form #steps .step.active {
	opacity: 1
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #steps .step:not(.active) {
		display: none
	}
}
section#inquiry #inquiry-form #steps .step img {
	position: absolute;
	width: 32px;
	top: 0;
	bottom: 0;
	left: 16px;
	margin: auto;
	vertical-align: middle;
	line-height: 0
}
section#inquiry #inquiry-form #steps .step .step-text {
	margin-top: -8px;
	display: inline-block;
	vertical-align: middle;
	line-height: 19px
}
section#inquiry #inquiry-form #steps .step .step-text .step-no {
	font-family: "M PLUS Rounded 1c";
	font-size: 12px
}
section#inquiry #inquiry-form #steps .step .step-text .step-name {
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	font-weight: 700
}
section#inquiry #inquiry-form #steps .step:nth-child(2) .step-text {
	margin-left: 16px
}
section#inquiry #inquiry-form #personal-info {
	display: inline-block
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #personal-info {
		display: block
	}
}
section#inquiry #inquiry-form #personal-info #personal-info-text {
	display: inline-block;
	border: 1px solid #d2d8d8;
	border-radius: 8px;
	width: 480px;
	max-width: 100%;
	height: 160px;
	overflow-y: scroll;
	font-weight: bold;
	margin-left: 16px;
	margin-bottom: 16px;
	padding: 8px 16px
}
section#inquiry #inquiry-form #personal-info #personal-info-text p {
	margin: 8px 0;
	font-size: 12px
}
section#inquiry #inquiry-form #personal-info #personal-info-text p:first-child {
	font-size: 14px
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #personal-info #personal-info-text {
		width: auto;
		margin-left: 0;
		padding: 8px 8px
	}
	section#inquiry #inquiry-form #personal-info #personal-info-text p {
		font-size: 10px
	}
	section#inquiry #inquiry-form #personal-info #personal-info-text p:first-child {
		font-size: 12px
	}
}
section#inquiry #inquiry-form #personal-info label[for=agree-personal-info] {
	margin-left: 48px
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #personal-info label[for=agree-personal-info] {
		margin-left: 32px
	}
}
section#inquiry #inquiry-form #inquiry-btns {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #inquiry-btns {
		-webkit-flex-flow: row wrap-reverse;
		flex-flow: row wrap-reverse
	}
}
section#inquiry #inquiry-form #inquiry-btns #btn-fix {
	background-image: url(/images/btn-fix.png);
	background-size: cover;
	color: #096
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #inquiry-btns #btn-fix {
		background-image: url(/images/btn-fix-sm.png)
	}
}
section#inquiry #inquiry-form #inquiry-btns #btn-confirm, section#inquiry #inquiry-form #inquiry-btns #btn-send {
	background-image: url(/images/btn-send.png);
	background-size: cover;
	color: #fff
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #inquiry-btns #btn-confirm, section#inquiry #inquiry-form #inquiry-btns #btn-send {
		background-image: url(/images/btn-send-sm.png)
	}
}
section#inquiry #inquiry-form #inquiry-btns #btn-confirm, section#inquiry #inquiry-form #inquiry-btns #btn-send, section#inquiry #inquiry-form #inquiry-btns #btn-fix {
	width: 320px;
	height: 72px;
	line-height: 72px;
	font-family: "M PLUS Rounded 1c";
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-align: center;
	margin: 40px auto 0
}
section#inquiry #inquiry-form #inquiry-btns #btn-confirm:hover, section#inquiry #inquiry-form #inquiry-btns #btn-send:hover, section#inquiry #inquiry-form #inquiry-btns #btn-fix:hover {
	opacity: 0.7
}
@media screen and (max-width: 750px) {
	section#inquiry #inquiry-form #inquiry-btns #btn-confirm, section#inquiry #inquiry-form #inquiry-btns #btn-send, section#inquiry #inquiry-form #inquiry-btns #btn-fix {
		width: 295px;
		margin-top: 24px
	}
}
@media screen and (max-width: 320px) {
	section#inquiry #inquiry-form #inquiry-btns #btn-confirm, section#inquiry #inquiry-form #inquiry-btns #btn-send, section#inquiry #inquiry-form #inquiry-btns #btn-fix {
		background-size: 256px 72px;
		font-size: 22px
	}
}
section#inquiry #thanks {
	margin: 96px 0;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-align: center
}
section#inquiry #thanks #thanks-for-inquiry, section#inquiry #thanks #contact-email-below {
	margin-bottom: 32px
}
@media screen and (max-width: 750px) {
	section#inquiry #thanks {
		margin: 32px 0;
		font-size: 12px;
		font-weight: normal;
		letter-spacing: 0.05em;
		text-align: left
	}
}
body#inquiry-page-confirm #inquiry .main-label {
	margin-bottom: 0
}
body#inquiry-page-confirm #inquiry .form-group {
	white-space: nowrap
}
body#inquiry-page-confirm #inquiry .form-group .confirm-value {
	white-space: normal;
	overflow-wrap: break-word;
	word-break: break-all
}
body#feature-page #footer-nav {
	background-color: #f9fff5
}
body#feature-page section#feature-detail {
	background-color: #ffffea;
	padding: 0
}
body#feature-page section#feature-detail .section-header {
	max-width: 1080px;
	height: 200px;
	margin: 0 auto;
	padding-top: 80px;
	background-image: url("/images/feature-back-left.png");
	background-repeat: no-repeat;
	background-size: 162px;
	background-position: 40px 62px
}
@media screen and (max-width: 750px) {
	body#feature-page section#feature-detail .section-header {
		background-size: 90px;
		padding-top: 32px;
		height: 136px;
		background-position: 40px 60px
	}
}
body#feature-page section#feature-detail .section-header .section-title {
	width: 212px
}
@media screen and (max-width: 750px) {
	body#feature-page section#feature-detail .section-header .section-title {
		width: 160px
	}
}
body#feature-page section#feature-detail .logo {
	width: 137px;
	display: inline-block;
	vertical-align: middle
}
body#feature-page section#feature-detail #five-automation {
	font-family: "M PLUS Rounded 1c";
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 0.05em;
	vertical-align: middle;
	text-align: center;
	margin-bottom: 48px
}
body#feature-page section#feature-detail #five-automation img {
	margin-top: -10px
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail #five-automation img {
		width: 100px
	}
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail #five-automation {
		width: 335px;
		max-width: 100%;
		font-size: 18px;
		font-weight: bold;
		margin: 0 auto 32px
	}
}
body#feature-page section#feature-detail .feature-box {
	position: relative;
	width: 980px;
	margin: 0 auto 40px;
	font-size: 0
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box {
		width: 335px;
		max-width: 100%;
		margin-bottom: 16px
	}
}
body#feature-page section#feature-detail .feature-box .left-box {
	width: 156px;
	height: 142px;
	border: 2px solid #096;
	border-radius: 8px;
	padding-top: 10px;
	position: relative;
	display: inline-block;
	vertical-align: middle
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .left-box {
		display: block;
		margin: 0 auto;
		width: 335px;
		max-width: 100%;
		height: 56px;
		padding: 8px 16px 0
	}
}
body#feature-page section#feature-detail .feature-box .left-box:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: -5px;
	margin: auto;
	width: 8px;
	height: 8px;
	border-radius: 8px;
	background-color: #096
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .left-box:before {
		left: 0;
		right: 0;
		top: auto;
		bottom: -5px;
		margin: auto
	}
}
body#feature-page section#feature-detail .feature-box .left-box img {
	width: 72px
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .left-box img {
		width: 40px;
		float: right
	}
}
body#feature-page section#feature-detail .feature-box .left-box .merit {
	width: 107px;
	margin: 0 auto;
	text-align: center;
	font-family: "M PLUS Rounded 1c";
	font-size: 24px;
	color: #009966;
	font-weight: 700;
	letter-spacing: 0.1em;
	vertical-align: middle
}
body#feature-page section#feature-detail .feature-box .left-box .merit .no {
	font-family: "M PLUS Rounded 1c";
	font-size: 32px;
	color: #009966;
	font-weight: 700;
	vertical-align: middle
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .left-box .merit {
		float: left;
		margin: 0
	}
}
body#feature-page section#feature-detail .feature-box .edge {
	display: inline-block;
	width: 29px;
	height: 2px;
	background-color: #096;
	vertical-align: middle
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .edge {
		display: block;
		margin: 0 auto;
		width: 2px;
		height: 16px
	}
}
body#feature-page section#feature-detail .feature-box .right-box {
	display: inline-block;
	width: 794px;
	max-width: 100%;
	height: 142px;
	border: 2px solid #096;
	border-radius: 8px;
	padding: 16px 32px;
	position: relative;
	vertical-align: middle;
	position: relative
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .right-box {
		display: block;
		margin: 0 auto;
		padding: 16px 12px 48px 12px;
		width: 335px;
		height: auto
	}
}
body#feature-page section#feature-detail .feature-box .right-box:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -5px;
	margin: auto;
	width: 8px;
	height: 8px;
	border-radius: 8px;
	background-color: #096
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .right-box:before {
		top: -5px;
		bottom: auto;
		left: 0;
		right: 0
	}
}
body#feature-page section#feature-detail .feature-box .right-box .title {
	font-family: "M PLUS Rounded 1c";
	font-size: 30px;
	font-weight: 700;
	color: #096;
	margin-bottom: 16px
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .right-box .title {
		font-size: 18px;
		text-align: center;
		margin-bottom: 8px
	}
}
body#feature-page section#feature-detail .feature-box .right-box .labels {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	width: 480px;
	height: 32px;
	position: absolute;
	top: 16px;
	right: 24px
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .right-box .labels {
		width: auto;
		-webkit-justify-content: center;
		justify-content: center;
		top: auto;
		right: 0;
		left: 0;
		bottom: 12px;
		margin: 0 8px
	}
}
body#feature-page section#feature-detail .feature-box .right-box .labels .label {
	background-color: #ffcc66;
	border-radius: 8px;
	min-width: 140px;
	height: 32px;
	font-size: 16px;
	font-weight: bold;
	line-height: 32px;
	text-align: center;
	margin-left: 12px;
	padding: 0 10px 0
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .right-box .labels .label {
		min-width: 100px;
		min-width: auto;
		font-size: 10px;
		margin-left: 8px
	}
	body#feature-page section#feature-detail .feature-box .right-box .labels .label:first-child {
		margin-left: 0
	}
}
body#feature-page section#feature-detail .feature-box .right-box .description {
	font-size: 16px;
	line-height: 27px
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail .feature-box .right-box .description {
		font-size: 12px;
		line-height: 20px
	}
}
body#feature-page section#feature-detail #feature-bottom {
	text-align: right;
	width: 980px;
	margin: 0 auto
}
body#feature-page section#feature-detail #feature-bottom img {
	width: 400px;
	display: inline-block
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail #feature-bottom img {
		width: 188px
	}
}
@media screen and (max-width: 980px) {
	body#feature-page section#feature-detail #feature-bottom {
		width: 335px;
		max-width: 100%
	}
}
body#function-page #footer-nav {
	background-color: #f9fff5
}
body#function-page section#function {
	background-color: #ffffea;
	padding: 0
}
body#function-page section#function .section-header {
	max-width: 1080px;
	height: 200px;
	margin: 0 auto;
	padding-top: 80px;
	background-image: url("/images/function-back-right.png");
	background-repeat: no-repeat;
	background-size: 281px;
	background-position: right 32px top 48px
}
@media screen and (max-width: 750px) {
	body#function-page section#function .section-header {
		height: 136px;
		padding-top: 32px;
		background-size: 140px;
		background-position: right 16px top 56px
	}
}
body#function-page section#function .section-header .section-title {
	width: 212px
}
@media screen and (max-width: 750px) {
	body#function-page section#function .section-header .section-title {
		width: 160px
	}
}
body#function-page section#function .container {
	padding: 56px 24px 24px
}
@media screen and (max-width: 750px) {
	body#function-page section#function .container {
		padding: 24px 8px
	}
}
body#function-page section#function .container-top-text {
	margin-bottom: 48px
}
@media screen and (max-width: 750px) {
	body#function-page section#function .container-top-text {
		width: 335px;
		max-width: 100%;
		margin: 0 auto 24px
	}
}
body#function-page section#function #function-group-box-wrapper {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper {
		display: block
	}
}
body#function-page section#function #function-group-box-wrapper .function-group-box {
	border: 2px solid #b2e0c3;
	border-radius: 8px;
	width: 239px;
	height: 900px;
	padding: 24px 16px;
	margin: 8px
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper .function-group-box {
		width: 335px;
		max-width: 100%;
		height: auto;
		margin: 0 auto 16px;
		padding: 16px
	}
}
body#function-page section#function #function-group-box-wrapper .function-group-box.dummy {
	visibility: hidden;
	height: 0;
	padding: 0;
	margin-top: 0;
	margin-bottom: 0
}
body#function-page section#function #function-group-box-wrapper .function-group-box .function-group-name {
	font-family: "M PLUS Rounded 1c";
	font-weight: 700;
	font-size: 20px;
	color: #096;
	text-align: center
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper .function-group-box .function-group-name {
		margin-bottom: 16px;
		text-align: left
	}
}
body#function-page section#function #function-group-box-wrapper .function-group-box .function-group-icon-wrapper {
	width: 207px;
	height: 161px;
	position: relative;
	margin: 0 auto
}
body#function-page section#function #function-group-box-wrapper .function-group-box .function-group-icon-wrapper img {
	width: 60px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper .function-group-box .function-group-icon-wrapper img {
		position: static
	}
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper .function-group-box .function-group-icon-wrapper {
		float: left;
		width: auto;
		height: auto
	}
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper .function-group-box .functions {
		float: left;
		max-width: 216px;
		margin-left: 16px
	}
}
body#function-page section#function #function-group-box-wrapper .function-group-box .functions .function {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 24px;
	background-image: url(/images/icons/icon-check.png);
	background-repeat: no-repeat;
	background-size: 16px;
	background-position: 0 3px;
	padding-left: 24px
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-group-box-wrapper .function-group-box .functions .function {
		margin-bottom: 16px;
		font-weight: normal;
		font-size: 14px;
		background-size: 11px;
		padding-left: 19px;
		background-position: 0 4px
	}
}
body#function-page section#function #function-development {
	font-size: 20px;
	font-weight: bold;
	color: #096;
	border: 2px solid #096;
	border-radius: 8px;
	text-align: center;
	padding: 16px;
	margin-top: 16px
}
@media screen and (max-width: 750px) {
	body#function-page section#function #function-development {
		width: 335px;
		max-width: 100%;
		margin: 8px auto 0;
        text-align: left;
		font-size: 16px;
		padding: 8px;
		line-height: 24px
	}
	body#function-page section#function #function-development .block-sp {
		display: block
	}
}
body#function-page #external {
	margin-top: 48px
}
@media screen and (max-width: 750px) {
	body#function-page #external {
		width: 335px;
		max-width: 100%;
		margin: 32px auto 0
	}
}
body#function-page #external .title {
	font-family: "M PLUS Rounded 1c";
	font-size: 28px;
	font-weight: 700;
	color: #096;
	border-bottom: 2px solid #096;
	padding-bottom: 8px;
	position: relative
}
body#function-page #external .title:after {
	content: "";
	line-height: 0;
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 10%;
	border-bottom: 2px solid #ffcc66
}
@media screen and (max-width: 750px) {
	body#function-page #external .title {
		font-size: 20px
	}
}
body#function-page #external .external-box {
	margin: 32px 0;
	max-width: 920px
}
@media screen and (max-width: 750px) {
	body#function-page #external .external-box {
		width: 315px;
		max-width: 100%;
		margin: 0 auto
	}
}
body#function-page #external .external-box img {
	float: left;
	width: 240px;
	height: 160px;
	display: inline-block;
	margin-right: 32px
}
@media screen and (max-width: 750px) {
	body#function-page #external .external-box img {
		width: 304px;
		max-width: 100%;
		height: 213px;
		margin: 16px 0
	}
}
body#function-page #external .external-box .external-name {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 24px
}
@media screen and (max-width: 750px) {
	body#function-page #external .external-box .external-name {
		font-size: 16px
	}
}
body#function-page #external .external-box .description {
	font-size: 16px;
	line-height: 1.6em;
	white-space: normal;
	overflow-wrap: break-word;
	word-break: break-all
}
@media screen and (max-width: 750px) {
	body#function-page #external .external-box .description {
		font-size: 14px;
		margin-bottom: 16px
	}
}
@media screen and (max-width: 750px) {
	body#function-page #external hr {
		max-width: 315px
	}
}
body#price-page #footer-nav {
	background-color: #f9fff5
}
body#price-page section#price {
	background-color: #ffffea;
	padding: 0
}

body#price-page section#priceKpay {
    background-color: #ffffea;
    padding: 0;
}

body#price-page section#price .section-header {
	max-width: 1080px;
	height: 200px;
	margin: 0 auto;
	padding-top: 80px;
	background-image: url("/images/price-back-right.png");
	background-repeat: no-repeat;
	background-size: 282px;
	background-position: right 40px top 62px
}
@media screen and (max-width: 750px) {
	body#price-page section#price .section-header {
		background-size: 90px;
		padding-top: 32px;
		height: 136px;
		background-size: 198px;
		background-position: right 40px top 60px
	}
	body#price-page section#price .section-header .section-title {
		width: 212px
	}
}
@media screen and (max-width: 750px) and (max-width: 750px) {
	body#price-page section#price .section-header .section-title {
		width: 160px
	}
}
body#price-page section#price .container {
	padding-left: 8px;
	padding-right: 8px
}
@media screen and (max-width: 750px) {
	body#price-page section#price .container-top-text {
		width: 315px;
		margin: 0 auto 24px
	}
}
body#price-page section#price #campaign-box {
	border: 3px solid #096;
	/* border-radius: 8px; */
	width: 824px;
	max-width: 100%;
	margin: 0 auto;
	padding-top: 24px;
	font-size: 0;
	text-align: center
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box {
		width: 335px;
		max-width: 100%
	}
}
body#price-page section#price #campaign-box #campaign-title {
	width: 530px;
	font-family: "M PLUS Rounded 1c";
	font-size: 30px;
	font-weight: 700;
	color: #096;
	margin: 0 auto 24px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box #campaign-title {
		font-size: 18px;
		width: auto;
		margin-bottom: 16px
	}
}
body#price-page section#price #campaign-box #campaign-bar {
	padding: 0 10px
}
body#price-page section#price #campaign-box #campaign-period-label {
	display: inline-block;
	width: 30%;
	height: 40px;
	background-color: #096;
	border-radius: 8px 0 0 8px;
	color: #fff;
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 40px;
	text-align: center;
	vertical-align: middle;
	margin-bottom: 32px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box #campaign-period-label {
		border-radius: 8px;
		width: 150px;
		height: 30px;
		line-height: 30px;
		font-family: inherit;
		margin-bottom: 8px
	}
}
body#price-page section#price #campaign-box #campaign-period-date {
	display: inline-block;
	width: 70%;
	height: 40px;
	border: 2px solid #096;
	border-radius: 0 8px 8px 0;
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: 700;
	color: #096;
	line-height: 40px;
	text-align: center;
	vertical-align: middle;
	margin-bottom: 32px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box #campaign-period-date {
		border: none;
		font-size: 22px;
		width: auto;
		margin-bottom: 8px
	}
}
body#price-page section#price #campaign-box .campaign-price-row {
	height: 72px;
	padding-left: 48px;
	font-weight: bold;
	border-top: 1px solid #096
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box .campaign-price-row {
		padding-left: 24px
	}
}
body#price-page section#price #campaign-box .campaign-price-row .label {
	width: 50%;
	display: inline-block;
	font-size: 20px;
	text-align: left;
	vertical-align: middle;
	height: 72px;
	line-height: 72px;
	color: #333
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box .campaign-price-row .label {
		width: 60%
	}
}
body#price-page section#price #campaign-box .campaign-price-row .price {
	width: 50%;
	display: inline-block;
	vertical-align: middle;
	height: 72px;
	line-height: 72px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #campaign-box .campaign-price-row .price {
		width: 40%
	}
}
body#price-page section#price #campaign-box .campaign-price-row .price .zero {
	display: inline-block;
	font-size: 40px;
	color: #096;
	vertical-align: middle;
	margin-right: 4px
}
body#price-page section#price #campaign-box .campaign-price-row .price .unit {
	display: inline-block;
	font-size: 20px;
	color: #096;
	vertical-align: middle
}
body#price-page section#price #limited {
	width: 824px;
	max-width: 100%;
	font-size: 18px;
	font-weight: bold;
	color: #096;
	letter-spacing: 0.025;
	line-height: 32px;
	margin: 8px auto 48px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #limited {
		width: 335px;
		max-width: 100%;
		font-size: 14px;
		letter-spacing: 0.025;
		line-height: 24px
	}
}
@media screen and (max-width: 750px) and (max-width: 750px) {
	body#price-page section#price #limited {
		margin-bottom: 24px
	}
}
body#price-page section#price #limited #zero-per {
	font-size: 24px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #limited #zero-per {
		font-size: 18px
	}
}
body#price-page section#price #note {
	width: 824px;
	margin: 0 auto
}
@media screen and (max-width: 750px) {
	body#price-page section#price #note {
		width: 335px;
		max-width: 100%
	}
}
body#price-page section#price #note p {
	line-height: 32px;
	font-size: 16px;
	margin-left: 16px
}
body#price-page section#price #note p:before {
	content: "※";
	margin-left: -16px
}
@media screen and (max-width: 750px) {
	body#price-page section#price #note p:before {
		margin-left: -12px
	}
}
@media screen and (max-width: 750px) {
	body#price-page section#price #note p {
		font-size: 12px;
		line-height: 20px
	}
}
body#case-page #footer-nav {
	background-color: #f9fff5
}
body#case-page section#case {
	background-color: #ffffea;
	padding: 0
}
body#case-page section#case .container {
	padding-left: 40px;
	padding-right: 40px
}
@media screen and (max-width: 750px) {
	body#case-page section#case .container {
		padding: 24px 0
	}
}
body#case-page section#case .container .container-top-text {
	padding: 0 24px
}
body#case-page section#case .section-header {
	max-width: 1080px;
	height: 200px;
	margin: 0 auto;
	padding-top: 80px;
	background-image: url("/images/case-back-left.png");
	background-repeat: no-repeat;
	background-size: 350px;
	background-position: 24px 62px
}
@media screen and (max-width: 750px) {
	body#case-page section#case .section-header {
		background-size: 160px;
		padding-top: 32px;
		height: 136px;
		background-position: 0 35px
	}
}
body#case-page section#case .section-header .section-title {
	width: 212px
}
@media screen and (max-width: 750px) {
	body#case-page section#case .section-header .section-title {
		width: 160px
	}
}
body#case-page section#case #pickup {
	width: 980px;
	height: 388px;
	margin: 0 auto;
	border: 4px solid #096;
	position: relative
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup {
		max-width: 100%;
		height: auto
	}
}
body#case-page section#case #pickup img {
	width: 580px;
	margin: 0;
	float: left;
	margin-right: 24px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup img {
		max-width: 100%;
		float: none
	}
}
body#case-page section#case #pickup #pickup-label {
	width: 94px;
	height: 30px;
	background-color: #096;
	border-radius: 8px;
	position: absolute;
	top: 16px;
	left: 16px;
	color: #fff;
	line-height: 30px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	display: inline-block
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup #pickup-label {
		width: 75px;
		height: 24px;
		font-size: 14px;
		line-height: 24px
	}
}
body#case-page section#case #pickup #type-label {
	font-size: 12px;
	font-weight: bold;
	color: #096;
	border: 1px solid #096;
	border-radius: 8px;
	text-align: center;
	height: 24px;
	line-height: 24px;
	padding: 0 8px;
	display: inline-block
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup #type-label {
		font-size: 10px;
		height: 20px;
		line-height: 20px
	}
}
body#case-page section#case #pickup #pickup-right {
	padding: 24px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup #pickup-right {
		padding: 16px
	}
}
body#case-page section#case #pickup #pickup-right .pickup-name {
	font-size: 20px;
	font-weight: bold;
	line-height: 24px;
	margin-top: 16px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup #pickup-right .pickup-name {
		font-size: 16px;
		margin-top: 8px
	}
}
body#case-page section#case #pickup #pickup-right .pickup-desc {
	font-size: 15px;
	line-height: 24px;
	margin-top: 8px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #pickup #pickup-right .pickup-desc {
		font-size: 12px;
		line-height: 18px
	}
}
body#case-page section#case #case-list {
	margin-top: 48px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #case-list {
		width: 335px;
		max-width: 100%;
		margin: 32px auto 0;
		padding: 0 8px
	}
}
body#case-page section#case #case-list .title {
	font-family: "M PLUS Rounded 1c";
	font-size: 28px;
	font-weight: 700;
	color: #096;
	border-bottom: 2px solid #096;
	padding-bottom: 8px;
	position: relative
}
body#case-page section#case #case-list .title:after {
	content: "";
	line-height: 0;
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 10%;
	border-bottom: 2px solid #ffcc66
}
@media screen and (max-width: 750px) {
	body#case-page section#case #case-list .title {
		font-size: 20px
	}
}
body#case-page section#case #case-list .case-cards {
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	margin-top: 24px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #case-list .case-cards {
		padding: 0 8px
	}
}
body#case-page section#case #case-list .case-cards .case-card {
	height: 356px;
	border: 1px solid #ccc;
	padding: 0;
	position: relative;
	margin: 0;
	margin-right: 20px;
	margin-bottom: 16px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #case-list .case-cards .case-card {
		height: auto;
		margin-right: 0
	}
}
body#case-page section#case #case-list .case-cards .case-card .new-label {
	width: 48px;
	height: 20px;
	background-color: #096;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	line-height: 22px;
	text-align: center;
	border-radius: 4px;
	position: absolute;
	top: 8px;
	left: 8px
}
body#case-page section#case #case-list .case-cards .case-card .case-text {
	padding: 0 24px 0
}
body#case-page section#case #case-list .case-cards .case-card .case-text .case-name {
	margin-bottom: 8px;
	font-family: inherit;
	font-weight: bold
}
@media screen and (max-width: 750px) {
	body#case-page section#case #case-list .case-cards .case-card .case-text .case-name {
		font-size: 18px
	}
}
body#case-page section#case #case-list .case-cards .case-card .case-text .case-desc {
	margin-bottom: 0;
	line-height: 20px
}
@media screen and (max-width: 750px) {
	body#case-page section#case #case-list .case-cards .case-card .case-text .case-desc {
		font-size: 14px
	}
}
body#case-page section#case #case-list .case-cards .btn-to-case-detail {
	margin: 24px 32px 24px
}
body#faq-page #footer-nav {
	background-color: #f9fff5
}
body#faq-page section#faq {
	background-color: #ffffea;
	padding: 0
}
body#faq-page section#faq .container {
	padding-left: 40px;
	padding-right: 40px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .container {
		padding: 24px 0
	}
}
body#faq-page section#faq .container .container-top-text {
	margin-bottom: 48px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .container .container-top-text {
		margin-bottom: 24px
	}
}
body#faq-page section#faq .section-header {
	max-width: 1080px;
	height: 200px;
	margin: 0 auto;
	padding-top: 80px;
	background-image: url("/images/faq-back-left.png");
	background-repeat: no-repeat;
	background-size: 168px;
	background-position: 40px 62px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .section-header {
		background-size: 106px;
		padding-top: 32px;
		height: 136px;
		background-position: 16px 35px
	}
}
body#faq-page section#faq .section-header .section-title {
	width: 212px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .section-header .section-title {
		width: 160px
	}
}
body#faq-page section#faq #jump-faq-btns {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq #jump-faq-btns {
		margin: 0 16px
	}
}
body#faq-page section#faq .btn-jump-faq {
	border: 1px solid #096;
	border-radius: 8px;
	width: 239px;
	height: 40px;
	line-height: 40px;
	font-size: 14px;
	color: #096;
	font-weight: bold;
	text-align: center;
	margin-right: 10px;
	margin-bottom: 8px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .btn-jump-faq {
		width: 100%
	}
}
body#faq-page section#faq .btn-jump-faq.dummy {
	visibility: hidden;
	height: 0;
	margin-bottom: 0
}
body#faq-page section#faq .btn-jump-faq img {
	margin-right: 8px;
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: middle
}
body#faq-page section#faq .question {
	width: 100%;
	min-height: 46px;
	font-size: 14px;
	font-weight: bold;
	border-top: 1px solid #ebebeb;
	border-bottom: 1px solid #ebebeb;
	background-image: url(/images/icons/icon-plus.png);
	background-repeat: no-repeat;
	background-position: 8px 14px;
	background-size: 16px;
	padding-left: 32px;
	cursor: pointer;
	padding-top: 15px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .question {
		line-height: 20px;
		padding-top: 13px
	}
}
body#faq-page section#faq .question:nth-child(odd) {
	background-color: #fafafa
}
body#faq-page section#faq .question.opened {
	background-image: url(/images/icons/icon-minus.png)
}
body#faq-page section#faq .question .answer {
	display: none;
	border-top: 1px dashed #ccc;
	font-size: 14px
	line-height: 24px;
	font-weight: normal;
	padding: 16px 0;
	margin-top: 16px
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq .question .answer {
		margin-top: 8px
	}
}
@media screen and (max-width: 750px) {
	body#faq-page section#faq #customer-management, body#faq-page section#faq #billing-and-payment, body#faq-page section#faq #application-form, body#faq-page section#faq #application-and-price {
		width: auto;
		padding: 16px;
		margin-top: 0
	}
}

@media screen and (min-width:750px){
 select {margin-left:16px;}
}

section#inquiry #inquiry-form .form-group select {
    border: none;
    background-color: #f0f0f0;
    width: 480px;
    max-width: 100%;
    padding:8px 16px;
    border-radius:8px;
    font-size: 14px;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    overflow: hidden;
}

.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	background: #ffffff;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}
section#inquiry #inquiry-form .form-group.has-error select{
	border:2px solid #f2594b;
}


body#top-page section#feature5 img {
    width: 856px;
    max-width: 100%;
    padding: 0 16px;
    margin-bottom: 56px;
}

body#top-page section#flow img {
    width: 920px;
    max-width: 100%;
    padding: 0 24px;
    margin-bottom: 56px;
}

.btn-border, .case-cards .case-card .btn-to-case-detail, body#top-page section#feature5 #btn-to-function-list {
    display: inline-block;
    position: relative;
    background-image: url(/images/btn-border-inactive.svg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 321px;
    height: 59px;
    border-radius: 8px;
    margin-top:56px;
}

.btn-border:hover span, .case-cards .case-card .btn-to-case-detail:hover span, body#top-page section#feature5 #btn-to-function-list:hover span {
    color: #fff;
}

.btn-border span, .case-cards .case-card .btn-to-case-detail span, body#top-page section#feature5 #btn-to-function-list span {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    height: 24px;
    color: #096;
    font-family: "M PLUS Rounded 1c";
    letter-spacing: 0.1em;
}

.btn-border:hover span, .case-cards .case-card .btn-to-case-detail:hover span, body#top-page section#feature5  #btn-to-function-list:hover {
   background-color: #096;
   transition: background-color 0.1s linear
}


@media screen and (max-width:750px){
 .long {letter-spacing: normal;}

 body#top-page section#feature5 .btn-flat-border {
     font-size: 20px;
 }
 body#top-page section#functions .btn-flat-border{
  font-size: 20px;
 }
}



body#top-page section#feature5 .btn-flat-border {
  display: inline-block;
  padding: 0.5em 1.2em;
  text-decoration: none;
  color: #096;
  border: solid 2px #096;
  border-radius: 12px;
  transition: .4s;
  font-family: "M PLUS Rounded 1c";
   font-weight:500;
    font-size: 28px;
   letter-spacing: 0.1em;
	margin-bottom: 32px;
}

body#top-page section#feature5 .btn-flat-border:hover {
  background: #096;
  color: white;
}

body#top-page section#functions .btn-flat-border {
  display: inline-block;
  padding: 0.5em 1.2em;
  text-decoration: none;
  color: #096;
  border: solid 2px #096;
  border-radius: 12px;
  transition: .4s;
  font-family: "M PLUS Rounded 1c";
   font-weight:500;
    font-size: 28px;
   letter-spacing: 0.1em;
	margin-bottom: 32px;
}

body#top-page section#functions .btn-flat-border:hover {
  background: #096;
  color: white;
}



#top-nav #top-btns #btn-apply {
    transition: .4s;
}

#top-nav #top-btns #btn-inquiry {
    transition: .4s;
}

#footer-nav {
    transition: .4s;
}




* {
  box-sizing: border-box;
}

/* ----------SLIDER SAMPLE 1---------- */
.swiper-sider1-container {
  width: 100%;
  height: 500px;
  background: #fff;
}

.slider1-img01 {
  background-image: url(/images/main-slider/pc/kp_main01_defalut.png);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
}

.slider1-img02 {
  background-image: url(/images/main-slider/pc/kp_main02.png);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
}

.slider1-img03 {
  background-image: url(/images/main-slider/pc/kp_main03.png);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
}

.slider1-h2 {
  font-size: 64px;
  color: #fff;
  letter-spacing: 0.3em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
}

/* ----------SLIDER SAMPLE 2---------- */
.swiper-slider2-container {
  position: relative;
  max-width: 1000px;
  width: 100%;
  height: 600px;
  margin: 0 auto;
  margin-top: 50px;
  margin-bottom: 200px;
}

.swiper-slider2-container img {
  width: 100%;
}

.swiper-slider2-button-prev {
  left: -50px;
}

.swiper-slider2-button-next {
  right: -50px;
  transform: scale(-1, 1);
}

.slider2-pagenation-wrapper {
  position: relative;
  padding-top: 20px;
  margin-left: 30px;
}

.slider2-h2 {
  font-size: 64px;
  letter-spacing: 0.3em;
  text-align: center;
  display: block;
}

@media (max-width: 900px) {
  .swiper-slider2-container {
    width: 90%;
    margin: 0 auto;
  }
}

/* ----------SLIDER SAMPLE 3---------- */
.slider3-h2 {
  font-size: 64px;
  letter-spacing: 0.3em;
  text-align: center;
  display: block;
  margin-bottom: 80px;
}

.swiper-slider3-container {
  position: relative;
  max-width: 1000px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  overflow: hidden;
}

.slider3 {
  width: 850px;
  position: relative;
}

.slider3-card {
  width: 250px;
  border-radius: 20px;
  box-shadow: -2px -2px 8px rgba(0, 0, 0, 0.1), 3px 10px 10px rgba(0, 0, 0, 0.1);
  padding: 25px;
  margin-top: 25px;
  margin-bottom: 25px;
}

.slider3-card .number {
  font-size: 86px;
  text-align: center;
  margin-bottom: 15px;
}

.slider3-card .text {
  font-size: 16px;
  line-height: 1.5;
}

@media (max-width: 900px) {
  .swiper-slider3-container {
    width: 90%;
    margin: 0 auto;
    text-align: center;
  }
  .slider3 {
    width: 100%;
  }
  .slider3-card {
    width: 60%;
    margin: 0 auto;
    margin-top: 25px;
    margin-bottom: 25px;
  }
}

body#top-page section#main-slider #main {
  width: 100%;
  height: 600px;
  position: relative;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

body#top-page section#main-slider #main #main-con {
  width: 100%;
  max-width: 1150px;
  height: 600px;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-img {
    width: 600px;
    height: 600px;
    position: absolute;
    top: 0;
    left: 620px;
}

body#top-page section#main-slider #main #main-con #main-img img{
    width: 100%;
}

body#top-page section#main-slider #main #main-con h2 {
  width: 600px;
  height: 560px;
  position: absolute;
  top:96px;
  left:30px;
}

body#top-page section#main-slider #main #main-con h2 img {
  width:100%;
}

body#top-page section#main-slider #main #main-con #main-bt {
  font-family: "M PLUS Rounded 1c";
  margin: 0 auto;
  position: absolute;
  bottom:80px;
    left: 96px
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFV {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 1.4rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc {
  font-size: 2.4rem;
  position: relative;
  padding: 2.4rem 6rem 1.5rem 6rem;
  color: #ffee00;
  background: #009966;
  -webkit-box-shadow: 0 6px 0 #2c9d60;
  box-shadow: 0 6px 0 #096c58;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover {
   -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #ffee00;
  background: #30a967;
  -webkit-box-shadow: 0 2px 0 #2c9d60;
  box-shadow: 0 2px 0 #2c9d60;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover:before {
	left: 2rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc span {
  font-size: 1.6rem;
  position: absolute;
  top: -24px;
  left: calc(15% - 50px);
  display: block;
  width: 240px;
  letter-spacing: 0.1em;
  padding: 0.4rem 0;
  color: #32b16c;
  border: 3px solid #009966;
  border-radius: 0.8rem;
  background: #ffee00;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

@media screen and (max-width:480px) {
  body#top-page section#main-slider #main {
    height: 95vh;
    background: url("../images/fv_bg_sp.png") 0 0;
    background-position: center center;
    background-size: cover;
    overflow: hidden;
  }
  body#top-page section#main-slider #main #main-con {
	  width: 100%;
	  height: 100%;
	  max-width: 1150px;
	  position: relative;
  }

	body#top-page section#main-slider #main #main-con #main-img {
    width: 100%;
    height: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
}

body#top-page section#main-slider #main #main-con #main-img img{
    width: 100%;
    position: absolute;
    bottom: 120px;
    left: 50%;
    transform: translate(-50%, 0);
}

body#top-page section#main-slider #main #main-con h2 {
  width: 100%;
  height: auto;
  position: absolute;
  top:40px;
  padding: 0 2%;
  z-index: 1;
  left: 0;
}

body#top-page section#main-slider #main #main-con h2 img {
  width:100%;
  padding: 0 2%;
}

body#top-page section#main-slider #main #main-con #main-bt {
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: 100px;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

body#top-page section#main-slider #main #main-con #main-bt a.btnFV {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.05em;
  color: #212529;
  border-radius: 0.8rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc {
  font-size: 1.8rem;
  position: relative;
  padding: 1.6rem 1.6rem 1.2rem 1.6rem;
  color: #ffee00;
  background: #009966;
  -webkit-box-shadow: 0 6px 0 #2c9d60;
  box-shadow: 0 6px 0 #096c58;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover {
   -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #ffee00;
  background: #30a967;
  -webkit-box-shadow: 0 2px 0 #2c9d60;
  box-shadow: 0 2px 0 #2c9d60;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover:before {
	left: 2rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc span {
  font-size: 1rem;
  position: absolute;
  top: -24px;
  left: calc(20% - 50px);
  display: block;
  width: 160px;
  letter-spacing: 0.1em;
  padding: 0.4rem 0;
  color: #32b16c;
  border: 3px solid #009966;
  border-radius: 0.8rem;
  background: #ffee00;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
}

@media screen and (min-width:481px) and ( max-width:896px) {
body#top-page section#main-slider #main {
  width: 100%;
  height: 500px;
  position: relative;
  background: url("../images/fv_bg_pc.png") 0 0;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
}

body#top-page section#main-slider #main #main-con {
  width: 100%;
  max-width: 1150px;
  height: 500px;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-img {
    width: 600px;
    height: 600px;
    position: absolute;
    top: 50px;
    left: 320px;
}

body#top-page section#main-slider #main #main-con #main-img img{
    width:60%;
    margin-left:24px;
}

body#top-page section#main-slider #main #main-con h2 {
  width: 600px;
  height: 560px;
  position: absolute;
  top:80px;
  left:-30px;
  z-index: 1;
}

body#top-page section#main-slider #main #main-con h2 img {
  width:80%;
}

body#top-page section#main-slider #main #main-con #main-bt {
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: 80px;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

body#top-page section#main-slider #main #main-con #main-bt a.btnFV {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.05em;
  color: #212529;
  border-radius: 0.8rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc {
  font-size: 2rem;
  position: relative;
  padding: 1.6rem 1.6rem 1.2rem 1.6rem;
  color: #ffee00;
  background: #009966;
  -webkit-box-shadow: 0 6px 0 #2c9d60;
  box-shadow: 0 6px 0 #096c58;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover {
   -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #ffee00;
  background: #30a967;
  -webkit-box-shadow: 0 2px 0 #2c9d60;
  box-shadow: 0 2px 0 #2c9d60;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover:before {
	left: 2rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc span {
  font-size: 1rem;
  position: absolute;
  top: -24px;
  left: calc(20% - 50px);
  display: block;
  width: 160px;
  letter-spacing: 0.1em;
  padding: 0.4rem 0;
  color: #32b16c;
  border: 3px solid #009966;
  border-radius: 0.8rem;
  background: #ffee00;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
}


@media screen and (min-width:481px) and ( max-width:896px) {
body#top-page section#main-slider #main {
  width: 100%;
  height: 500px;
  position: relative;
  background: url("../images/fv_bg_pc.png") 0 0;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
}

body#top-page section#main-slider #main #main-con {
  width: 100%;
  max-width: 1150px;
  height: 500px;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-img {
    width: 600px;
    height: 600px;
    position: absolute;
    top: 50px;
    left: 440px;
}

body#top-page section#main-slider #main #main-con h2 {
  width: 600px;
  height: 560px;
  position: absolute;
  top:80px;
  left:-30px;
  z-index: 1;
}

body#top-page section#main-slider #main #main-con h2 img {
  width:80%;
}

body#top-page section#main-slider #main #main-con #main-bt {
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: 80px;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

body#top-page section#main-slider #main #main-con #main-bt a.btnFV {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.05em;
  color: #212529;
  border-radius: 0.8rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc {
  font-size: 2rem;
  position: relative;
  padding: 1.6rem 1.6rem 1.2rem 1.6rem;
  color: #ffee00;
  background: #009966;
  -webkit-box-shadow: 0 6px 0 #2c9d60;
  box-shadow: 0 6px 0 #096c58;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover {
   -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #ffee00;
  background: #30a967;
  -webkit-box-shadow: 0 2px 0 #2c9d60;
  box-shadow: 0 2px 0 #2c9d60;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover:before {
	left: 2rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc span {
  font-size: 1rem;
  position: absolute;
  top: -24px;
  left: calc(20% - 50px);
  display: block;
  width: 160px;
  letter-spacing: 0.1em;
  padding: 0.4rem 0;
  color: #32b16c;
  border: 3px solid #009966;
  border-radius: 0.8rem;
  background: #ffee00;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
}



@media screen and (min-width:897px) and ( max-width:1024px) {
body#top-page section#main-slider #main {
  width: 100%;
  height: 500px;
  position: relative;
  background: url("../images/fv_bg_pc.png") 0 0;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
}

body#top-page section#main-slider #main #main-con {
  width: 100%;
  max-width: 1150px;
  height: 500px;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-img {
    width: 800px;
    height: 800px;
    position: absolute;
    top: 30px;
    left: 360px;
}

body#top-page section#main-slider #main #main-con #main-img img{
    width:50%;
}

body#top-page section#main-slider #main #main-con h2 {
  width: 600px;
  height: 560px;
  position: absolute;
  top:80px;
  left:48px;
  z-index: 1;
}

body#top-page section#main-slider #main #main-con h2 img {
  width:80%;
}

body#top-page section#main-slider #main #main-con #main-bt {
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: 80px;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

body#top-page section#main-slider #main #main-con #main-bt a.btnFV {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.2;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.05em;
  color: #212529;
  border-radius: 0.8rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc {
  font-size: 2rem;
  position: relative;
  padding: 1.6rem 1.6rem 1.2rem 1.6rem;
  color: #ffee00;
  background: #009966;
  -webkit-box-shadow: 0 6px 0 #2c9d60;
  box-shadow: 0 6px 0 #096c58;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover {
   -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #ffee00;
  background: #30a967;
  -webkit-box-shadow: 0 2px 0 #2c9d60;
  box-shadow: 0 2px 0 #2c9d60;
  position: relative;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc:hover:before {
	left: 2rem;
}

body#top-page section#main-slider #main #main-con #main-bt a.btnFVc span {
  font-size: 1rem;
  position: absolute;
  top: -24px;
  left: calc(20% - 50px);
  display: block;
  width: 160px;
  letter-spacing: 0.1em;
  padding: 0.4rem 0;
  color: #32b16c;
  border: 3px solid #009966;
  border-radius: 0.8rem;
  background: #ffee00;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
}

body#top-page section#industry-types .industry .industry-name .btntransform{
    /*丸の基点とするためrelativeを指定*/
	position: relative;
    /*ボタンの形状*/
    display: inline-block;
	margin:0 auto;
	padding:0 auto;
	line-height: 20px;
    color: #009966;
    text-decoration: none;
    outline: none;
	z-index: 0;
}

/* 丸が動く */
body#top-page section#industry-types .industry .industry-name .btntransform::before{
	content:'';
    /*絶対配置で丸の位置を決める*/
	position:absolute;
	left:0;
	bottom:-10px;
	z-index: -1;
    /*丸の形状*/
	width:40px;
	height:40px;
	background:#FFCC00;
	border-radius:25px;
    /*アニメーションの指定*/
    transition:.3s ease-out;
	line-height: 20px;
}

/*hoverした際の形状*/
body#top-page section#industry-types .industry .industry-name .btntransform:hover::before{
	width:230px;
	margin:0 auto;
	z-index: -1;
}

/* 矢印の形状 */
body#top-page section#industry-types .industry .industry-name .btntransform::after{
	position: absolute;
    content: '';
    top: 0.5em;
    right: -15px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #009966;
    border-right: 1px solid #009966;
    transform: rotate(45deg);
	z-index: -1;
}

body#top-page section#industry-types .industry .industry-name a.btnline {
  transition: color .3s;
}

body#top-page section#industry-types .industry .industry-name a.btnline:hover {
    /*丸の基点とするためrelativeを指定*/
	color: #77CA50;
}

body#top-page section#industry-types .industry .industry-name .btnline{
	/*線の基点とするためrelativeを指定*/
	position:relative;
	/*リンクの形状*/
	color:#009966;
    padding: 0px 0px 5px 0px;
	display:inline-block;
    text-decoration: none;
    outline: none;
}

/*線の設定*/
body#top-page section#industry-types .industry .industry-name .btnline::before,
body#top-page section#industry-types .industry .industry-name .btnline::after{
	content:'';
    /*絶対配置で線の位置を決める*/
	position:absolute;
	z-index:1;
	bottom:0;
	left:0;
     /*線の形状*/
	background:#009966;
	width:100%;
	height:2px;
    /*アニメーションの指定*/
	transition:all 0.3s ease-in-out;
}

 /*hover時に伸びる線の形状*/
body#top-page section#industry-types .industry .industry-name .btnline::after{
	width:0;
	background:#F6C567;
}

 /*hover時に100%に伸びる*/
body#top-page section#industry-types .industry .industry-name .btnline:hover::after {
	width:100%;
}


body#top-page section#industry-types .industry .trim-img .figure {
  background: #009966;
}
body#top-page section#industry-types .industry .trim-img .figure img {
  opacity: 1;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}
body#top-page section#industry-types .industry .trim-img .figure:hover img {
  opacity: .5;
}

a.btnline {
  transition: color .3s;
}

a.btnline:hover {
    /*丸の基点とするためrelativeを指定*/
	color: #77CA50;
}

 .btnline{
	/*線の基点とするためrelativeを指定*/
	position:relative;
	/*リンクの形状*/
	color:#009966;
    padding: 0px 0px 5px 0px;
	display:inline-block;
    text-decoration: none;
    outline: none;
}

/*線の設定*/
.btnline::before,
 .btnline::after{
	content:'';
    /*絶対配置で線の位置を決める*/
	position:absolute;
	z-index:1;
	bottom:0;
	left:0;
     /*線の形状*/
	background:#009966;
	width:100%;
	height:2px;
    /*アニメーションの指定*/
	transition:all 0.3s ease-in-out;
}

 /*hover時に伸びる線の形状*/
.btnline::after{
	width:0;
	background:#F6C567;
}

 /*hover時に100%に伸びる*/
 .btnline:hover::after {
	width:100%;
}

body#top-page section#movie {
	background-color:#009966;
}

@media screen and (max-width: 750px) {
	body#top-page section#movie {
		padding-bottom: 0
	}
}
body#top-page section#movie .cloum {
	height: auto
}


 @media screen and (max-width: 750px) {
	.clips {
		width: 100%
	}
}

 .clips{
	 -js-display: flex;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1080px;
    margin: 0 auto;
 }

 body#top-page section#movie .clips {
    height: auto;
}
 .clips .cloum{
	width:520px;
    height: auto;
    text-align: center;
 }
.clips .cloum .clips-button img{
  	float: left;
	width:60px;
    height: auto;
    background-color: #fff;
 }
.clips .cloum .clips-text {
 	width:240px;
 	margin-top: 10px;
 	margin-left: 30px;
}

.clips .cloum .clips-text .clips-title {
 	color: #ffffff;
 	font-family: "M PLUS Rounded 1c";
 	font-size: 24px;
}

.clips .cloum img {
    width: 460px;
    margin-bottom: 16px;
}



#section_movie{
  overflow: hidden;
  margin-bottom: 0px;
  position: relative;
}

@media screen and (max-width: 736px) {
  #section_movie {
  /*  margin-bottom: 100px; */
  }
}

#section_movie {
  width: 100%;
  background: #009966;
  padding: 50px 2%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

#section_movie #movie_cont {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1080px;
}

#section_movie #movie_cont #movie_left {
  width: 40%;
  padding-right: 2%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

#section_movie #movie_cont #movie_left #mov_icon {
  width: 15%;
  padding-right: 3%;
  box-sizing: border-box;
}

#section_movie #movie_cont #movie_left #mov_icon img {
  width: 100%;
	margin: 2%;
}

#section_movie #movie_cont #movie_left h2 {
  width: 80%;
  display: inline-block;
   font-size: 1.8rem;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1.4;
  position: relative;
	color: #ffffff;
	  text-align: left;
}

#section_movie #movie_cont #movie_left h2 a {
	color: #ffffff;
}

#section_movie #movie_cont #movie_left h2 span {
  display: block;
  font-size: 1.2rem;
	font-family: "M PLUS Rounded 1c", sans-serif;
	color: #ffffff;
}

@media screen and (max-width: 1200px) {
  #section_movie #movie_cont #movie_left h2 {
    font-size: 2.6vw;
  }
}

#section_movie #movie_cont #movie_right {
  width: 50%;
  padding-top: 28.125%;
  position: relative;
}

#section_movie #movie_cont #movie_right iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.15);
}

#section_movie #movie_cont #movie_right #movie_img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.15);
}

#section_movie #movie_cont #movie_right #movie_img img {
  display: block;
  width: 100%;
}

@media screen and (max-width: 480px) {
	#section_movie {
    margin-bottom: 0px;
}
}
@media screen and (max-width: 1024px) {
	#section_movie #movie_cont #movie_left #mov_icon {
    width:16%;
	  margin-right: 2%;
    padding-right: 2%;
    box-sizing: border-box;
  }
	#section_movie #movie_cont #movie_left h2 {
    width: 80%;
   font-size: 1.6rem;

  }
  #section_movie #movie_cont #movie_left h2 span {
    display: block;
    font-size: 1.2rem;
  }

  #section_movie #movie_cont #movie_left{
	  padding-right: 0;
  }
}

@media screen and (max-width: 768px) {
  #section_movie {
    width: 100%;
    padding: 50px 4%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  #section_movie #movie_cont #movie_left {
    width: 100%;
    padding-right: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: stretch;
  }
  #section_movie #movie_cont #movie_left #mov_icon {
    width:16%;
	  margin-right: 2%;
    padding-right: 2%;
    box-sizing: border-box;
  }
  #section_movie #movie_cont #movie_left #mov_icon img {
    display: block;
    margin-top: 12%;
    width: 95%;
  }
  #section_movie #movie_cont #movie_left h2 {
    width: 80%;
    font-size: 6vw;
    margin-bottom: 10%;
  }
  #section_movie #movie_cont #movie_left h2 span {
    display: block;
    font-size: 1.4rem;
  }
  #section_movie #movie_cont #movie_right {
    width: 90%;
    padding-top: 50%;
  }
  #section_movie #movie_cont #movie_right #movie_img {
    width: 100%;
    height: 100%;
    text-align: center;
  }
  #section_movie #movie_cont #movie_right #movie_img img {
    width: 100%;
    display: block;
  }
}

.remodal iframe {
  width: 100%;
  height: 100%;
  max-width: 1200px;
  max-height: 675px;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  border-radius: 20px;
  box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.15);
}

   #section_movie {
	   background-image: url(/images/movie_background.png);     /* 背景画像指定 */
	   background-repeat: no-repeat;
	   background-size: cover;
   }

 #section_news {
	  background-color:  #ffffea;
	  margin: 0 auto;
	 padding: 24px 10px;
	 -webkit-box-align: center;
    -ms-flex-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
 }
 #section_news #wp_news_cont {
    max-width: 1150px;
    margin: 0 auto;
	 padding: 10px 32px;
	background-color: #fff;
    border-radius: 1.2rem;
	 display: flex;
    align-items: center;
    flex-wrap: wrap;
}

#section_news #wp_news_cont dl {
	display: flex;
    align-items: center;
    flex-wrap: wrap;
	margin: 0 auto;
	padding-left: 16px;
}


#section_news #wp_news_cont dt {
	font-weight: bold;
	margin-right:16px;
	padding: 8px 16px;
	font-size: 14px;
	letter-spacing: .07em;
	border-radius: 8px;
	background-color: #f77567;
	color: #fff;
}

#section_news #wp_news_cont dd {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .05em;
	text-align: left;
    margin-left: 12px;
}
#section_news #wp_news_cont dd a {
   color: #2c9d60;
	font-weight: 700;
	 overflow: hidden;
	  position: relative;
  display: inline-block;
	text-decoration: none;
  transition: 0.5s;
	margin-right: 48px;
}

#section_news #wp_news_cont dd a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
	height: 1px;
	line-height: 32px;
	background-color: #2c9d60;
  transform: translate(-100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}

#section_news #wp_news_cont dd a:hover::after {
transform: translate(0, 0);
}



#section_news #wp_news_cont .item {
    max-width: calc(100% - 68px);
    margin-top: 0;
	padding: 8px 0 8px;
    padding-right: 16px;
    padding-left: 14px;
    border: none;
}

#section_news #wp_news_cont ul {
	 width: 100%;
     margin:0 auto;
}

#section_news #wp_news_cont li {
  width: 100%;
  max-width: 980px;
  padding: 0 2%;
  margin-bottom: 16px;
  letter-spacing: 0.01em;
	color: #333;
	text-align: left;

}

#section_news #wp_news_cont li span {

  color: #808080;
  letter-spacing: 0.1em;
	margin-right: 16px;
	width: 60px;
}



#section_news #wp_news_cont .news_bx h3 {
  font-size: 1.6rem;
  margin: 5px 0 5px 0;
}

#section_news #wp_news_cont .news_bx p {
  font-size: 1.4rem;
  color: #333;
  line-height: 1.6;
  text-align: left;
  margin: 0 0 5px 0;
}

@media screen and (max-width: 736px) {
  #section_news h2 {
    font-size: 2.6rem;
  }
  #section_news #wp_news_cont .news_bx {
    width: 90%;
  }
  #section_news #wp_news_cont .news_bx h3 {
    font-size: 1.4rem;
  }
  #section_news #wp_news_cont .news_bx p {
    font-size: 1.2rem;
  }
}

 #section_news #wp_news_cont p {
	  margin-left: 24px;
 }

#section_news #wp_news_cont p a.btntransform{
    /*丸の基点とするためrelativeを指定*/
	position: relative;
    /*ボタンの形状*/
    display: inline-block;
	padding:0 0 0 16px;
	line-height: 24px;
    color: #333;
    text-decoration: none;
    outline: none;
	z-index: 0;
	text-align: right;
	margin-right: 16px;
	font-size: 14px;
}

/* 丸が動く */
#section_news #wp_news_cont p a.btntransform::before{
	content:'';
    /*絶対配置で丸の位置を決める*/
	position:absolute;
	left:0;
	z-index: -1;
    /*丸の形状*/
	width:24px;
	height:24px;
	background:#fcdd5e;
	border-radius:25px;
    /*アニメーションの指定*/
    transition:.3s ease-out;
}

/*hoverした際の形状*/
#section_news #wp_news_cont p a.btntransform:hover::before{
	width:130px;
}

/* 矢印の形状 */
#section_news #wp_news_cont p a.btntransform::after{
	position: absolute;
    content: '';
    top: 0.7em;
    right: -15px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(45deg);
}


body#function-page #external .external-box .link {
	float:right;
}

body#function-page #external p a.btntransform02{
    /*丸の基点とするためrelativeを指定*/
	position: relative;
    /*ボタンの形状*/
    display: inline-block;
	padding:0 0 0 16px;
	line-height: 24px;
    color: #333;
    text-decoration: none;
    outline: none;
	z-index: 0;
	text-align: right;
	margin-right: 16px;
	font-size: 14px;
}

/* 丸が動く */
body#function-page #external p a.btntransform02::before{
	content:'';
    /*絶対配置で丸の位置を決める*/
	position:absolute;
	left:0;
	z-index: -1;
    /*丸の形状*/
	width:24px;
	height:24px;
	background:#fcdd5e;
	border-radius:25px;
    /*アニメーションの指定*/
    transition:.3s ease-out;
}

/*hoverした際の形状*/
body#function-page #external p a.btntransform02:hover::before{
	width:130px;
}

/* 矢印の形状 */
body#function-page #external p a.btntransform02::after{
	position: absolute;
    content: '';
    top: 0.7em;
    right: -15px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(45deg);
}

@media screen and (max-width:599px){
	#section_news #wp_news_cont {
	 padding: 10px 10px;
		font-size: 0.9em;
    }

	#section_news #wp_news_cont dl {
	 padding-left: 10px;
    }

	#section_news #wp_news_cont dd:last-child {
	display: flex;
    align-items: center;
    flex-wrap: wrap;
	margin-top: 16px;
	padding: 0px;
}

	 #section_news #wp_news_cont p {
		 margin-left: auto;
	 }
	#section_news #wp_news_cont p a.btntransform{
    /*丸の基点とするためrelativeを指定*/
	margin-top: 16px;
	font-size: 0.9em;
	}
}

 @media screen and (max-width:1024px){
	#section_news #wp_news_cont {
	 padding: 10px 10px;
		font-size: 0.9em;
    }

	#section_news #wp_news_cont dl {
	 padding-left: 10px;
    }


	 #section_news #wp_news_cont p {
		 margin-left: auto;
	 }
	#section_news #wp_news_cont p a.btntransform{
    /*丸の基点とするためrelativeを指定*/
	}
}


 #section_info {
     background-color: #ffffea;
     margin: 0 auto;
     padding: 16px 4px;
     -webkit-box-align: center;
     -ms-flex-align: center;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     align-items: center;
 }

#section_info #wp_info_con {
    max-width: 1150px;
    margin: 0 auto;
    padding: 4px 10px;
	background-color: #fff;
    border-radius: 1.2rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

#section_info #wp_info_con .news_container {
    max-width:780px;
	margin: 8px auto;
    padding: 0px 24px;
}

#section_info #wp_info_con .news_list {
	border-top: 1px dashed #f9fff5;
    text-align: left !important;
	margin: 0 auto;
}

#section_info #wp_info_con .news_list li {
	padding: 10px 8px;
	border-bottom: 1px dashed #f9fff5;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
    align-items: center;
}

#section_info #wp_info_con .news_list li a {
    color: #2c9d60;
	font-weight: 700;
    overflow: hidden;
}

#section_info #wp_info_con a.c-txt {
    color: #2c9d60;
    font-weight: bold;
    /* letter-spacing: 0.06em; */

}
#section_info #wp_info_con  a.c-txt.line {
    padding-bottom: 5px;
    position: relative;
}

#section_info #wp_info_con  a.c-txt.line:after {
    content: "";
    width: 16px;
    height: 16px;
    display: inline-block;
    background-image: url(/images/icon_link.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px 16px;
    margin-left: 8px;
    vertical-align: text-bottom;
}

#section_info #wp_info_con a.c-txt.line::before {
   background: #2c9d60;
   content: '';
   width: 100%;
   height: 2px;
   position: absolute;
   left: 0;
   bottom: 0;
   margin: auto;
   transform-origin: right top;
   transform: scale(0, 1);
   transition: transform .4s;
}

#section_info #wp_info_con a.c-txt.line:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
}

#section_info #wp_info_con .date {
	font-size: 16px;
	margin-right: 10px;
}

#section_info #wp_info_con .category {
	display: inline-block;
	color: #fff;
	width: 100px;
	font-size: 0.85em;
	text-align: center;
	margin-right: 10px;
	padding: 4px 8px;
	background-color: #f77567;
    letter-spacing: .07em;
    border-radius: 0.4em;
    font-weight: bold;
}

@media screen and (max-width: 1024px) {
    #section_info #wp_info_con .news_container {
        width:780px;
		padding: 0 8px;
        margin: 0 auto;
	}
}

@media screen and (max-width: 769px) {
    #section_info #wp_info_con .news_container {
        width:460px;
		padding: 0 8px;
        margin: 0 auto;
	}
}

@media screen and (max-width: 599px) {
    #section_info #wp_info_con{
        margin: 0 auto;
        width:100%;
      }
     #section_info #wp_info_con .news_container {
		padding: 0 8px;
         margin: 0 auto;
         width: 100%;
	}
	#section_info #wp_info_con .news_text a {
		display: block;
		margin-top: 10px;
		text-overflow: ellipsis;
		overflow: hidden;
        font-size: 0.9em;
	}
    #section_info #wp_info_con .date {
        font-size: 0.9em;
    }

    #section_info #wp_info_con .news_list li {
	padding: 8px 0px;
    }
	#section_info #wp_info_con .news_list li a {
		margin-right: 8px !important;
	}
}

.button_line001 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 200px;
    padding: 10px 25px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 600;
}
.button_line001 a:before {
    position: absolute;
    bottom: 0px;
    left: 50%;
    content: '';
    width: 100%;
    height: 2px;
    background: rgba(0,0,0,.1);
    transform: translateX(-50%);
}
.button_line001 a:after {
    position: absolute;
    bottom: 0px;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: #000;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
}
.button_line001 a:hover {
    opacity: 0.7;
}
.button_line001 a:hover:after {
    transform: scale(1, 1);
}

#function .functions .link_undrline {
    text-decoration: underline;
    text-decoration-color: #009966;
    text-underline-offset: 2px;
}

#function .functions .link_undrline a {
    color: #009966;
     transition: color .3s;
}
#function .functions .link_undrline a:hover {
    color: #075646;
}

 /************************************
 ** CVボタン
 ************************************/
 .p-cv-btn-wrap *{
     margin:0 !important;
     padding:0 !important;
     box-sizing: border-box;
 }
 .p-cv-btn-wrap{
     background:#f7f7f7;
     padding:1.5em !important;
     margin: 0 0 2em !important;
     font-size:16px;
     line-height:1.8;
 }
 .p-cv-btn-wrap ul,.p-cv-btn-wrap a,.p-cv-note{
     max-width:350px;
     margin: auto !important;
     border:none;
 }
 .p-cv-btn-wrap ul li{
     font-weight:500;
     list-style:none;
     font-size:0.9em;
     position:relative;
     padding-left:1.5em !important;
 }
 .p-cv-btn-wrap ul li:before{
     font-family: "Font Awesome 5 Free";
     content: "\f00c" !important;
     font-weight:600;
     color:#1d89b5;
     position:absolute;
     left: 0 !important;
     top: 0 !important;
     width: 0 !important;
     height: 0 !important;
 }

 .p-cv-btn {
     margin: 0 auto;
     text-align: center;
 }
 .p-cv-btn a{
     color:#fff;
     text-decoration:none !important;
     background:#009966;
     border-bottom: solid 6px #096c58;
     padding: 0.5em 1em !important;
     border-radius: 12px;
     margin: 0.3em auto !important;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
      justify-content: center;
         text-align: center;
 }
 .p-cv-btn:hover{
     opacity:0.9;
 }
 .p-cv-btn a:active {
     -webkit-transform: translateY(4px);
     transform: translateY(4px);
     border-bottom: none;
 }
 .p-cv-btn .p-cv-em{
     font-size:1.1em;
     line-height: 1.3;
     text-align:center;
     font-weight:600;
     display:block;
     color:#009966;
     background:#ffee00;
     padding: 5px 16px !important;
     margin: 2px 24px 0px 0 !important;
     border-radius: 30px;
     min-width: 64px;
     max-width: 180px;
 }
 .p-cv-btn .p-cv-text{
     font-size:1.6em;
     font-weight: 600;
     color:#ffee00;
     letter-spacing: 1px;
     border-left: 1px solid #ffee00;
     line-height: 25px;
     margin: 0.4em auto 0.4em 0 !important;
     padding: 0 0.6em 0 1em !important;
 }
 .p-cv-btn i,.p-cv-btn svg{
     color:#ffee00;
     min-width:22px;
 }
 .p-cv-url-wrap{
     font-size: 0.8em !important;
     max-width: 350px;
     margin: 0 auto 0.5em !important;
     display: block;
 }
 .p-cv-url-wrap a{
     color: #1a0dab !important;
     text-decoration:underline !important;
 }
 .p-cv-btn-wrap .p-cv-note{
     font-size:0.9em;
     border: 1px solid #90c231;
     margin-top:0.5em !important;
     padding:0.5em 1em !important;
 }
 .sidebar .p-cv-btn-wrap{
     background:#fff;
     box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
 }
 /*320px以下*/
 @media screen and (max-width: 320px){
     .p-cv-btn-wrap{
         padding:1em !important;
     }
 }


 @media screen and (max-width: 480px) {
      .p-cv-btn .p-cv-em{
     font-size:0.9em;
     line-height: 1.3;
     text-align:center;
     font-weight:600;
     display:block;
     color:#009966;
     background:#ffee00;
     padding: 5px 16px !important;
     margin: 2px 16px 0px 0 !important;
     border-radius: 30px;
     min-width: 64px;
     max-width: 180px;
 }
 .p-cv-btn .p-cv-text{
     font-size:1.1em;
     font-weight: 600;
     color:#ffee00;
     letter-spacing: 1px;
     border-left: 1px solid #ffee00;
     line-height: 25px;
     margin: 0.4em auto 0.4em 0 !important;
     padding: 0 0.6em 0 1em !important;
 }
 }


#priceKpay .article_box #price_table {
    max-width: 824px;
    margin: 0 auto;
}

#priceKpay .section-title {
 margin-top: 56px;
}

#priceKpay .article_box #price_table table {
    width: 100%;
    table-layout: fixed;
	border-spacing: 0;
	border: 3px solid #009966;
	border-collapse: collapse;
}

#priceKpay .article_box #price_table table tr#company_name {
    color: #fff;
    font-size: 1.6em;
    font-weight: bold;
    text-align: center;
    background: #ffffea;
    height: 70px;
	border-right: 1px solid #ffffea;
    border-bottom: 1px solid #ffffea;
}

#priceKpay .article_box #price_table_cont #price_table table tr td {
  font-size: 1.2rem;
  color: #333333;
  line-height: 1.4;
  height: 65px;
  padding: 0 16px;
  box-sizing: border-box;
  text-align: center;
  font-weight: bold;
  border: 1px solid #009966;
}


#priceKpay .article_box #price_table_cont #price_table table tr td span {
  font-size: 0.8rem;
}

#priceKpay .article_box #price_table table tr td:first-child {
  text-align: left;
}

#priceKpay .article_box #price_table_cont #price_table table tr td.td_head {
  color: #009966;
  font-size: 1em;
  font-weight: bold;
  text-align: left;
}

@media (max-width: 1199px) {
  #priceKpay .article_box #price_table table tr:last-child td {
    text-align: left;
    padding: 20px 0 20px 40px;
  }
}

#priceKpay .article_box #price_table table tr:last-child td {
  text-align: left;
  padding: 20px 0 20px 70px;
  border: none;
}

#priceKpay .article_box #price_table table tr:last-child td:first-child {
  padding: 20px 0 20px 24px;
}


#priceKpay .article_box #price_table table tr:last-child td span {
  position: relative;
}

/*#priceKpay .article_box #price_table table tr:last-child td span::before {
  content: "";
  display: block;
  width: 15px;
  height: 11px;
  background-image: url(../img/check_g.svg);
  background-size: cover;
  position: absolute;
  top: 3px;
  left: -20px;
}*/

#priceKpay .article_box #price_table #kahiprice_td {
  padding: 0;
  position: relative;
}

#priceKpay .article_box #price_table #kp_price {
  width: calc(100% + 2px);
  height: calc(100% + 28px);
  border-radius: 10px;
  padding: 12px 0 0 0;
  background-color: #009966;
  position: absolute;
  top: -13px;
  left: -1px;
  box-shadow: 5px 5px 16px rgba(0, 0, 0, 0.1);
  opacity: 0;
  transform: scale(0.7);
}

#priceKpay .article_box #price_table #kp_price.active {
  opacity: 1;
  transform: scale(1);
  transition: 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.5);
}

#priceKpay .article_box #price_table #kp_price table {
  width: 100%;
  height: auto;
  border-collapse: collapse;
  table-layout: fixed;
  padding: 0;
}

#priceKpay .article_box #price_table #kp_price table tr {
  border-bottom: 1px solid #B4E3EF;
}

#priceKpay .article_box #price_table #kp_price table tr td {
  height: 65px;
  padding: 0 30px;
  border: 0;
  text-align: center;
  color: #fff;
}

#priceKpay .article_box #price_table #kp_price table tr td#kp_logo {
  height: 70px;
  text-align: center;
  line-height: 0;
  padding: 0px 16px;
}

#priceKpay .article_box #price_table #kp_price table tr td#kp_logo img {
  width: 100%;
  margin-top: -12px;
}

#priceKpay .article_box #price_table #kp_price table tr td.kp_value {
  color: #fff;
  font-size: 1rem;
  line-height: 1;
}

#priceKpay .article_box #price_table #kp_price table tr td.kp_value span {
  color: #ffffff;
  font-size: 1.6rem;
  padding-top: 5px;
}

#priceKpay .article_box #price_table #kp_price table tr:last-child {
  border-bottom: 0;
}

#priceKpay .article_box #price_table #kp_price table tr:last-child td {
  padding: 20px 0 20px 0px;
  box-sizing: border-box;
  text-align: center;
}

#priceKpay .article_box #price_table #kp_price table tr:last-child td span {
  position: relative;
}

#priceKpay .article_box #price_table #kp_price table tr:last-child td span::before {
  content: "";
  display: block;
  width: 15px;
  height: 11px;
  /*background-image: url(../img/check_y.svg);*/
  background-size: cover;
  position: absolute;
  top: 3px;
  left: -20px;
}

@media screen and (max-width: 991px) {
  #priceKpay .article_box #price_table table {
    width: 100%;
    border-spacing: 0;
    border: 2px solid #009966;
    table-layout: fixed;
}

#priceKpay .article_box #price_table table tr td:first-child {
  text-align: left;
}

#priceKpay .article_box {
    width: 100%;
    overflow-x: scroll;
    margin: 0 auto 0 auto;
    box-sizing: border-box;
    padding: 3% 5% 3% 2%;
    margin-bottom: 10%;
}

#priceKpay .article_box #price_table #kahiprice_td {
  padding: 0;
  position: relative;
}
#priceKpay .article_box #price_table #kp_price table tr td {
  height: 65px;
  padding: 0 16px;
  border: 0;
  text-align: center;
  color: #fff;
}

#priceKpay .article_box #price_table table tr td {
  padding: 0 16px;
}
#priceKpay .article_box #price_table table tr:last-child {
  padding: 20px 0 10px 10px;
}
#priceKpay .article_box {
  width: 100%;
  overflow-x: scroll;
  margin: 0 auto 0 auto;
  box-sizing: border-box;
  padding: 3% 5% 3% 2%;
  margin-bottom: 10%;
}
#priceKpay .article_box .price_notice {
  font-size: 1.2rem;
}
#priceKpay .article_box #price_table {
  width: 900px;
  padding: 0;
  border: 2px solid #009966;
  border-radius: 10px;
}
#priceKpay .article_box #price_table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
#priceKpay .article_box #price_table table tr#company_name {
  color: #fff;
  font-size: 1.6em;
  font-weight: bold;
  text-align: center;
  background: #ffffea !important;
  height: 70px;
}
#priceKpay .article_box #price_table table tr td {
  font-size: 1rem;
  color: #1e559b;
  line-height: 1.6;
  height: 65px;
  padding: 0 16px;
  box-sizing: border-box;
  text-align: center;
  border: 1px solid #009966;
}

#priceKpay .article_box #price_table table tr td:first-child {
  text-align: left;
}

#priceKpay .article_box #price_table table tr td.td_head {
  font-size: 0.8rem;
  font-weight: bold;
}
#priceKpay .article_box #price_table table tr:last-child td {
  padding: 0 16px;
  text-align: center;
}
#priceKpay .article_box #price_table table tr:last-child td:first-child {
  padding: 0 16px;
}
#priceKpay .article_box #price_table table tr:last-child td span {
  position: relative;
}
#priceKpay .article_box #price_table table tr:last-child td span::before {
  content: "";
  display: block;g
  width: 15px;
  height: 11px;
  /*background-image: url(../img/check_g.svg);*/
  background-size: cover;
  position: absolute;
  top: 3px;
  left: -20px;
}
#priceKpay .article_box #price_table #kahiprice_td {
  padding: 0;
  position: relative;
}
#priceKpay .article_box #price_table #kp_price {
  width: calc(100% + 2px);
  height: calc(100% + 24px);
  border-radius: 10px;
  padding: 12px 0 0 0;
  background-color: #009966;
  position: absolute;
  top: -13px;
  left: -1px;
  box-shadow: 5px 5px 16px rgba(0, 0, 0, 0.1);
}
#priceKpay .article_box #price_table #kp_price table {
  width: 100%;
  height: auto;
  border-collapse: collapse;
  table-layout: fixed;
  padding: 0;
}
#priceKpay .article_box #price_table #kp_price table tr {
  border-bottom: 1px solid #B4E3EF;
}
#priceKpay .article_box #price_table #kp_price table tr td {
  height: 65px;
  padding: 0 px;
  border: 0;
  text-align: center;
  color: #fff;
}
#priceKpay .article_box #price_table #kp_price table tr td#kp_logo {
  height: 70px;
  text-align: center;
  line-height: 0;
  padding: 0px auto;
}
#priceKpay .article_box #price_table #kp_price table tr td#kp_logo img {
  width: 100%;
  margin: 0px auto;
}
#priceKpay .article_box #price_table #kp_price table tr td.kp_value {
  color: #fff;
  font-size: 0.8rem;
  line-height: 1;
}
#priceKpay .article_box #price_table #kp_price table tr td.kp_value span {
  color: #ffffff;
  font-size: 1.6rem;
  padding-top: 5px;
}
#priceKpay .article_box #price_table #kp_price table tr:last-child {
  border-bottom: 0;
}
#priceKpay .article_box #price_table #kp_price table tr:last-child td {
  padding: 0 16px;
  box-sizing: border-box;
}
#priceKpay .article_box #price_table #kp_price table tr:last-child td span {
  position: relative;
}
/*#priceKpay .article_box #price_table #kp_price table tr:last-child td span::before {
  content: "";
  display: block;
  width: 15px;
  height: 11px;
  background-image: url(../img/check_y.svg);
  background-size: cover;
  position: absolute;
  top: 3px;
  left: -20px;
}
*/}


footer #footer-nav-bottom #information-security #security_part {
      background-color: #fff;
      border-radius: 16px;
      padding: 8px 10px;
      margin-bottom: 16px;
}

footer #footer-nav-bottom #information-security #security_part .security_cont2 .info {
    width: 100%;
    padding: 6px 12px;
}

footer #footer-nav-bottom #information-security #security_part .security_cont2 .info .text {
	font-size: 12px;
    font-weight: normal;
    color: #666666;
}

footer #footer-nav-bottom #information-security #security_part .security_cont2 .title span {
    font-size: 0.9em;
    font-weight: normal;
}

footer #footer-nav-bottom #information-security #security_part .security_cont2 .logo {
    width: 20%;
	margin: 8px;
}

footer #footer-nav-bottom #information-security #security_part .security_cont2 .logo img {
	width: 100%;
	margin: 8px;
}

footer #footer-nav-bottom #information-security #security_part .security_cont2 .logo .small {
	width: 50%;
	margin: 8px;
}

@media screen and (max-width: 750px) {
	footer #footer-nav-bottom #information-security #security_part .security_cont2 {
	max-width: 340px;
    margin: 0px auto;
    padding: 8px 8px;
    flex-direction: column;
	}

	footer #footer-nav-bottom #information-security #security_part .security_cont2 .info {
		width: 100%;
        padding: 0px !important;
	}

	footer #footer-nav-bottom #information-security #security_part .security_cont2 .logo {
		width: 40%;
		margin: 8px;
	}
}


body#top-page #secruity-items {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 1080px;
	margin: 0 auto 16px
}


body#top-page #secruity-items #security_part {
	background-color: #fff;
	border-radius: 16px;
	padding: 8px 10px;
	margin-bottom: 16px;
}

body#top-page #secruity-items #security_part .security_cont {
	 display: flex;
	 justify-content: space-between;
	 margin-bottom: 8px;
}

body#top-page #secruity-items #security_part .security_cont .info {
	 margin: 8px;
	 width: 80%;
}

body#top-page #secruity-items #security_part .security_cont .info2 {
	margin: 8px;
	width: 100%;
}

body#top-page #secruity-items #security_part .security_cont .info .text {
	 font-size: 16px;
	 font-weight: normal;
	 color: #666666;
	 text-align: left;
	 line-height: 1.8;
}

body#top-page #secruity-items #security_part .security_cont .info2 .text {
	font-size: 16px;
	font-weight: normal;
	color: #666666;
	text-align: left;
	line-height: 1.8;
}


body#top-page #secruity-items #security_part .security_cont .title {
	color: #096;
    font-size: 20px;
    font-weight: bold;
    font-family: "M PLUS Rounded 1c";
    margin: 8px 0;
	text-align: left;
	vertical-align: middle;
}

body#top-page #secruity-items #security_part .security_cont .title:before {
	content: "";
	margin-right: 8px;
	margin-top: -8px;
	content: url(../images/security_icon32.png);
	width: 32px;
	height: 32px;
	background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
	display: inline-block;
}



body#top-page #secruity-items #security_part .security_cont .title span {
	font-size: 14px;
	font-weight: normal;
}

body#top-page #secruity-items #security_part .security_cont .logo {
	width: 16%;
	margin-top: 24px;
}

body#top-page #secruity-items #security_part .security_cont .logo img {
	width: 100%;
	margin: 8px;
	text-align: right;
}

body#top-page #secruity-items #security_part .security_cont .logo .small {
	width: 50%;
	margin: 8px;
}

@media screen and (max-width: 750px) {
	body#top-page #secruity-items #security_part .security_cont {
		max-width: 340px;
		margin: 0px 0px 16px 0px;
		flex-direction: column;
	}

	body#top-page #secruity-items #security_part .security_cont .info {
		margin: 8px;
		width: 100%;
	}

	body#top-page #secruity-items #security_part .security_cont .info2 {
	margin: 8px;
	width: 100%;
	}

body#top-page #secruity-items #security_part .security_cont .info .text {
	margin-bottom: 0px;
	}

	body#top-page #secruity-items #security_part .security_cont .logo {
	width: 50%;
	margin-top: 0px;
	}

	body#top-page #secruity-items #security_part .security_cont .logo img {
	margin: auto 0;
	}

body#top-page #secruity-items #security_part .security_cont .logo .small {
	margin: auto 0;
	}
}


.hr1 {
	border-top: 1px dashed #009966;
	border-right: none;
    border-bottom: none;
    border-left: none;
	opacity: 0.3;
}

.w90 {
width: 80% !important;
}

/* ========================================
   ナビゲーション ドロップダウン（PC）
======================================== */
#top-nav li.has-dropdown {
	position: relative;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
}
#top-nav li.has-dropdown:hover {
	opacity: 1;
}
#top-nav li.has-dropdown > a:hover {
	opacity: 0.7;
}

/* シェブロンボタン */
.nav-dropdown-btn {
	background: none;
	border: none;
	padding: 2px 2px 2px 4px;
	cursor: pointer;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
	color: #333;
	line-height: 1;
	vertical-align: middle;
}
.nav-dropdown-btn:hover {
	opacity: 0.7;
}
.nav-chevron {
	display: inline-block;
	width: 7px;
	height: 7px;
	border-right: 1.5px solid #333;
	border-bottom: 1.5px solid #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	margin-top: -3px;
}
#top-nav li.has-dropdown.is-open .nav-chevron {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	margin-top: 3px;
}

/* #top-nav で優先度を上げて #top-nav ul { display:inline-block } を上書き */
#top-nav .nav-dropdown-menu {
	display: block;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	top: calc(100% + 6px);
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-6px);
	transform: translateX(-50%) translateY(-6px);
	background: #fff;
	border: 1px solid #cce8dc;
	border-radius: 4px;
	box-shadow: 0 4px 16px rgba(0, 100, 60, 0.12);
	min-width: 140px;
	margin: 0;
	padding: 0;
	z-index: 10000;
	-webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease, visibility 0s 0.2s;
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s 0.2s;
}
#top-nav li.has-dropdown.is-open > .nav-dropdown-menu {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: translateX(-50%) translateY(0);
	transform: translateX(-50%) translateY(0);
	-webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease, visibility 0s 0s;
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s 0s;
}
#top-nav .nav-dropdown-menu li {
	display: block !important;
	margin: 0 !important;
	border-bottom: 1px solid #e8f5ee;
}
#top-nav .nav-dropdown-menu li:last-child {
	border-bottom: none;
}
#top-nav .nav-dropdown-menu li a {
	display: block;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: normal;
	white-space: nowrap;
	color: #333 !important;
	letter-spacing: 0.05em;
}
#top-nav .nav-dropdown-menu li a:hover {
	background: #f0faf5;
	color: #096 !important;
	opacity: 1 !important;
}

/* SP メニュー サブナビ */
.sp-sub-nav-item {
	display: none;
}
@media screen and (max-width: 1079px) {
	body.sp-menu-opened .sp-sub-nav-item {
		display: block !important;
	}
	body.sp-menu-opened .sp-sub-nav-item li {
		padding-left: 16px !important;
		color: #666;
		font-size: 14px !important;
	}
}

/* ========================================
   機能詳細ページ 共通
======================================== */
.line-breadcrumb {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px 0 16px;
}
.line-back-to-list {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px 0 32px;
	text-align: left;
	font-size: 14px;
}
.line-back-to-list a {
	color: #096;
}
@media screen and (max-width: 1080px) {
	.line-breadcrumb,
	.line-back-to-list {
		padding-left: 16px;
		padding-right: 16px;
	}
}
.breadcrumb {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #666;
	margin-bottom: 32px;
}
.breadcrumb a {
	color: #096;
	text-decoration: none;
}
.breadcrumb a:hover {
	text-decoration: underline;
}
.breadcrumb-delimiter {
	color: #bbb;
}
@media screen and (max-width: 750px) {
	.breadcrumb {
		margin-bottom: 20px;
	}
}

/* ========================================
   LINE連携詳細ページ
======================================== */
#function-line-detail,
#function-reminder-detail {
	padding-left: 40px;
	padding-right: 40px;
	margin-bottom: 64px;
}

/* ヒーロー */
.line-hero {
	background: #fff;
	border: 2px solid #096;
	border-radius: 12px;
	padding: 40px 48px;
	margin-bottom: 56px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 40px;
}
.line-hero-left {
	-webkit-flex: 1;
	flex: 1;
}
.line-hero-right {
	-webkit-flex: 0 0 260px;
	flex: 0 0 260px;
}
.line-hero-img {
	width: 100%;
	display: block;
	border-radius: 8px;
}
.line-hero-title {
	font-family: "M PLUS Rounded 1c";
	font-size: 28px;
	font-weight: bold;
	color: #096;
	margin-bottom: 16px;
}
.line-hero-desc {
	font-size: 16px;
	line-height: 1.85;
	color: #555;
	margin-bottom: 28px;
}
.line-hero-btn {
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 8px;
	background: -webkit-linear-gradient(left, #FFB000, #FF6B8E);
	background: linear-gradient(to right, #FFB000, #FF6B8E);
	color: #fff;
	padding: 14px 40px;
	border-radius: 30px;
	font-family: "M PLUS Rounded 1c";
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
	letter-spacing: 0.1em;
}
.line-hero-btn img {
	width: 26px;
	display: block;
}
.line-hero-btn:hover {
	opacity: 0.85;
}

/* セクション共通タイトル */
.line-section-title {
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	color: #333;
	text-align: center;
	margin-bottom: 32px;
}

/* できること 3カード */
.line-3cards {
	display: -webkit-flex;
	display: flex;
	gap: 16px;
	margin-bottom: 56px;
	-webkit-align-items: stretch;
	align-items: stretch;
}
.line-card {
	-webkit-flex: 1;
	flex: 1;
	background: #fff;
	border: 1px solid #096;
	border-radius: 12px;
	overflow: hidden;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.line-card-header {
	background: #096;
	padding: 14px 16px;
	text-align: center;
}
.line-card-num {
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.05em;
}
.line-card-body {
	padding: 20px 18px;
	-webkit-flex: 1;
	flex: 1;
}
.line-card-title {
	font-family: "M PLUS Rounded 1c";
	font-size: 18px;
	font-weight: bold;
	color: #333;
	margin-bottom: 14px;
	line-height: 1.6;
}
.line-card-body img {
	width: 100%;
	max-height: 160px;
	object-fit: contain;
	margin-bottom: 14px;
}
.line-card-subtitle {
	font-size: 16px;
	font-weight: bold;
	color: #096;
	margin-bottom: 8px;
	line-height: 1.5;
}
.line-card-body p {
	font-size: 16px;
	line-height: 1.85;
	color: #555;
}

/* その他の機能 */
.line-other-section {
	margin-bottom: 56px;
}
.line-other-intro {
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	color: #111;
	text-align: center;
	margin-bottom: 28px;
}

/* 呼び出しキーワード */
.line-keyword-box {
	background: #f0faf5;
	border-radius: 8px;
	padding: 28px 32px;
	margin-bottom: 32px;
}
.line-keyword-inner {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 40px;
}
.line-keyword-text {
	-webkit-flex: 1;
	flex: 1;
}
.line-keyword-badge {
	display: inline-block;
	background: #096;
	color: #fff;
	font-family: "M PLUS Rounded 1c";
	font-size: 14px;
	font-weight: bold;
	padding: 6px 20px;
	border-radius: 20px;
	margin-bottom: 10px;
}
.line-keyword-title {
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	color: #111;
	margin-bottom: 20px;
}
.line-keyword-single {
	text-align: center;
	-webkit-flex: 0 0 440px;
	flex: 0 0 440px;
	line-height: 0;
}
.line-keyword-single img {
	width: 100%;
	display: block;
	vertical-align: bottom;
}
.line-keyword-phones {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	gap: 32px;
	margin-bottom: 20px;
}
.line-keyword-phone {
	text-align: center;
}
.line-keyword-phone p {
	font-size: 13px;
	font-weight: bold;
	color: #333;
	margin-bottom: 8px;
}
.line-keyword-phone img {
	width: 90px;
	max-width: 100%;
}
.line-keyword-vs {
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	color: #096;
}
.line-keyword-desc {
	font-size: 14px;
	line-height: 1.8;
	color: #333;
}

/* 4列グリッド */
.line-use-cases {
	display: -webkit-flex;
	display: flex;
	gap: 12px;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.line-use-case {
	-webkit-flex: 1;
	flex: 1;
	min-width: 140px;
	background: #096;
	border-radius: 8px;
	padding: 18px 14px;
	color: #fff;
	position: relative;
	overflow: hidden;
}
.line-use-case::after {
	content: attr(data-num);
	position: absolute;
	bottom: -20px;
	right: -8px;
	font-family: "M PLUS Rounded 1c";
	font-size: 80px;
	font-weight: bold;
	color: rgba(255,255,255,0.12);
	line-height: 1;
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
}
.line-use-case h4 {
	font-family: "M PLUS Rounded 1c";
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
	border-bottom: 1px solid rgba(255,255,255,0.4);
	padding-bottom: 8px;
}
.line-use-case p {
	font-size: 16px;
	line-height: 1.75;
}

/* FAQ アコーディオン */
.line-faq {
	margin-bottom: 56px;
}
.faq-accordion {
	border-top: 1px solid #cce8dc;
}
.faq-item {
	border-bottom: 1px solid #cce8dc;
}
.faq-question {
	width: 100%;
	background: none;
	border: none;
	cursor: pointer;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 12px;
	padding: 18px 16px;
	text-align: left;
}
.faq-question:hover {
	background: #f5faf7;
}
.faq-q-label {
	font-family: "M PLUS Rounded 1c";
	font-size: 18px;
	font-weight: bold;
	color: #096;
	min-width: 24px;
	line-height: 1;
}
.faq-q-text {
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	font-weight: bold;
	color: #333;
	-webkit-flex: 1;
	flex: 1;
	line-height: 1.6;
}
.faq-chevron {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 2px solid #096;
	border-bottom: 2px solid #096;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	margin-top: -4px;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}
.faq-item.is-open .faq-chevron {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	margin-top: 4px;
}
.faq-answer {
	display: -webkit-flex;
	display: flex;
	gap: 12px;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	padding: 0 16px;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	-webkit-transition: max-height 0.3s ease, opacity 0.25s ease, padding 0.3s ease;
	transition: max-height 0.3s ease, opacity 0.25s ease, padding 0.3s ease;
}
.faq-item.is-open .faq-answer {
	max-height: 400px;
	opacity: 1;
	padding: 4px 16px 20px;
}
.faq-a-label {
	font-family: "M PLUS Rounded 1c";
	font-size: 18px;
	font-weight: bold;
	color: #ffcc66;
	min-width: 24px;
	line-height: 1;
	padding-top: 2px;
}
.faq-answer p {
	font-size: 16px;
	line-height: 1.85;
	color: #555;
	-webkit-flex: 1;
	flex: 1;
}
@media screen and (max-width: 750px) {
	.faq-question {
		padding: 14px 12px;
		gap: 10px;
	}
	.faq-q-text {
		font-size: 14px;
	}
	.faq-answer p {
		font-size: 14px;
	}
}

/* 関連機能 */
.line-related {
	margin-bottom: 48px;
}
.related-box {
	position: relative;
	border: 2px solid #096;
	border-radius: 4px;
	padding: 28px 28px 20px;
	width: 100%;
	box-sizing: border-box;
	margin-top: 12px;
}
.related-box-title {
	position: absolute;
	top: -17px;
	left: 20px;
	background: #096;
	color: #fff;
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	font-weight: bold;
	padding: 7px 22px 7px 16px;
	border-radius: 20px;
	letter-spacing: 0.05em;
	white-space: nowrap;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 8px;
}
.related-box-list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.related-box-list li {
	font-size: 16px;
	color: #333;
	padding: 10px 0;
	border-bottom: 1px dashed #ccc;
	line-height: 1.5;
}
.related-box-list li:last-child {
	border-bottom: none;
}
.related-box-title-icon {
	width: 17px;
	height: 17px;
	display: block;
	-webkit-filter: brightness(0) saturate(100%) invert(83%) sepia(58%) saturate(400%) hue-rotate(5deg) brightness(103%);
	filter: brightness(0) saturate(100%) invert(83%) sepia(58%) saturate(400%) hue-rotate(5deg) brightness(103%);
}
.related-box-list li::before {
	content: "• ";
	color: #ffcc66;
}
.related-box-list li a {
	color: #096;
	text-decoration: none;
	position: relative;
	display: inline-block;
}
.related-box-list li a::after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #096;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: left center;
	transform-origin: left center;
	-webkit-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
}
.related-box-list li a:hover::after {
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
@media screen and (max-width: 750px) {
	.related-box {
		padding: 24px 16px 16px;
	}
	.related-box-list li {
		font-size: 14px;
	}
}

/* 底部CTA */
.line-bottom-cta {
	text-align: center;
	margin-bottom: 48px;
}
.line-cta-inquiry {
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 8px;
	background-color: #096;
	color: #fff;
	font-family: "M PLUS Rounded 1c";
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.1em;
	padding: 14px 40px;
	border-radius: 8px;
	text-decoration: none;
}
.line-cta-inquiry img {
	width: 26px;
	display: block;
}
.line-cta-inquiry:hover {
	background-color: #4cb794;
	opacity: 1;
}

/* 機能一覧に戻る */
.back-to-list {
	text-align: center;
	margin-top: 16px;
	margin-bottom: 32px;
	font-size: 14px;
}
.back-to-list a {
	color: #096;
}

/* ========================================
   自動催促詳細ページ
======================================== */

/* 詳細ページ共通 セクション見出し（faq.phpスタイル準拠） */
.func-detail-heading {
	font-family: "M PLUS Rounded 1c";
	font-size: 24px;
	font-weight: 700;
	color: #096;
	border-bottom: 2px solid #096;
	padding-bottom: 8px;
	margin-bottom: 32px;
	position: relative;
}
.func-detail-heading::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 10%;
	border-bottom: 2px solid #ffcc66;
}
@media screen and (max-width: 750px) {
	.func-detail-heading {
		margin-bottom: 24px;
	}
}

/* 3ステップ フロー */
.rm-flow {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 0;
	margin-bottom: 56px;
}
.rm-flow-item {
	-webkit-flex: 1;
	flex: 1;
	background: #fff;
	border: 1px solid #096;
	border-radius: 12px;
	overflow: hidden;
	text-align: center;
}
.rm-flow-num {
	background: #096;
	color: #fff;
	font-family: "M PLUS Rounded 1c";
	font-size: 20px;
	font-weight: bold;
	padding: 10px;
	letter-spacing: 0.08em;
}
.rm-flow-body {
	padding: 20px 16px;
}
.rm-flow-title {
	font-family: "M PLUS Rounded 1c";
	font-size: 17px;
	font-weight: bold;
	color: #333;
	line-height: 1.7;
	margin: 0;
}
.rm-flow-arrow {
	color: #096;
	font-size: 20px;
	padding: 0 12px;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

/* 詳細セクション */
.rm-detail {
	margin-bottom: 48px;
	padding: 36px 0;
	border-bottom: 1px dashed #cce8dc;
}
.rm-detail:last-of-type {
	border-bottom: none;
}
.rm-detail-inner {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 48px;
}
.rm-detail-reverse .rm-detail-inner {
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.rm-detail-content {
	-webkit-flex: 1;
	flex: 1;
}
.rm-detail-img {
	-webkit-flex: 0 0 340px;
	flex: 0 0 340px;
	background: #fff;
	border-radius: 8px;
}
.rm-detail-num {
	display: inline-block;
	background: #096;
	color: #fff;
	font-family: "M PLUS Rounded 1c";
	font-size: 13px;
	font-weight: bold;
	padding: 4px 14px;
	border-radius: 20px;
	margin-bottom: 16px;
	letter-spacing: 0.05em;
}
.rm-detail-text {
	font-size: 16px;
	line-height: 1.9;
	color: #444;
}
.rm-img-dummy {
	width: 100%;
	display: block;
	border-radius: 8px;
	background: #fff;
	min-height: 180px;
}

/* 支払い方法リスト */
.rm-payment-list {
	background: #f7faf9;
	border-radius: 8px;
	padding: 16px 20px;
	margin: 16px 0;
}
.rm-payment-item {
	display: -webkit-flex;
	display: flex;
	gap: 12px;
	font-size: 16px;
	color: #444;
	padding: 8px 0;
	border-bottom: 1px dotted #cce8dc;
	line-height: 1.6;
}
.rm-payment-item:last-child {
	border-bottom: none;
}
.rm-payment-label {
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
	font-weight: bold;
	color: #096;
	min-width: 80px;
}
.rm-payment-note {
	font-size: 14px;
	color: #888;
	margin-top: 8px;
}

/* 支払前後比較 */
.rm-compare {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 12px;
}
.rm-compare-item {
	-webkit-flex: 1;
	flex: 1;
	text-align: center;
}
.rm-img-sm {
	min-height: 120px;
}
.rm-compare-label {
	display: inline-block;
	background: #ccc;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 2px 12px;
	border-radius: 4px;
	margin-bottom: 8px;
	font-family: "M PLUS Rounded 1c";
}
.rm-compare-label-after {
	background: #096;
}
.rm-compare-arrow {
	font-size: 24px;
	color: #096;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

/* ハイライトボックス */
.rm-highlight-box {
	background: #f8fdfa;
	border-left: 4px solid #096;
	border-radius: 0 8px 8px 0;
	padding: 28px 32px;
	margin-bottom: 48px;
}
.rm-highlight-lead {
	font-size: 18px;
	font-weight: bold;
	color: #333;
	margin-bottom: 16px;
	line-height: 1.7;
}
.rm-highlight-list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.rm-highlight-list li {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	color: #444;
	padding: 6px 0;
	line-height: 1.7;
}
.rm-highlight-list li::before {
	content: "•";
	color: #ffcc66;
	font-size: 20px;
	line-height: 1;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

/* SP対応 */
@media screen and (max-width: 750px) {
	.rm-flow {
		-webkit-flex-direction: column;
		flex-direction: column;
		gap: 8px;
		margin-bottom: 40px;
	}
	.rm-flow-item {
		width: 100%;
	}
	.rm-flow-arrow {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		padding: 4px 0;
	}
	.rm-detail {
		padding: 28px 0;
		margin-bottom: 32px;
	}
	.rm-detail-inner {
		-webkit-flex-direction: column;
		flex-direction: column;
		gap: 24px;
	}
	.rm-detail-reverse .rm-detail-inner {
		-webkit-flex-direction: column-reverse;
		flex-direction: column-reverse;
		gap: 24px;
	}
	.rm-detail-img {
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
		width: 100%;
	}
	.rm-compare {
		gap: 8px;
	}
	.rm-highlight-box {
		padding: 20px 20px;
	}
}

/* SP レスポンシブ */
@media screen and (max-width: 750px) {
	#function-line-detail,
	#function-reminder-detail {
		padding-left: 8px;
		padding-right: 8px;
		margin-bottom: 40px;
	}
	.line-hero {
		padding: 28px 20px;
		margin-bottom: 40px;
		-webkit-flex-direction: column;
		flex-direction: column;
		gap: 24px;
	}
	.line-hero-right {
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
		width: 100%;
		max-width: 240px;
		margin: 0 auto;
	}
	.line-hero-title {
		font-size: 22px;
	}
	.line-hero-desc {
		font-size: 14px;
	}
	.line-card-subtitle,
	.line-card-body p,
	.rm-detail-text,
	.rm-payment-item,
	.rm-highlight-list li {
		font-size: 14px;
	}
	.line-3cards {
		-webkit-flex-direction: column;
		flex-direction: column;
		gap: 20px;
		margin-bottom: 40px;
	}
	.line-card-header {
		padding: 12px 16px;
	}
	.line-card-num {
		font-size: 17px;
	}
	.line-card-title {
		font-size: 16px;
	}
	.func-detail-heading {
		font-size: 20px;
	}
	.line-section-title {
		font-size: 17px;
	}
	.line-keyword-box {
		padding: 20px 16px;
	}
	.line-keyword-inner {
		-webkit-flex-direction: column;
		flex-direction: column;
		gap: 16px;
	}
	.line-keyword-single {
		-webkit-flex: none;
		flex: none;
		width: 100%;
	}
	.line-keyword-single img {
		max-width: 280px;
		margin: 0 auto;
	}
	.line-keyword-phones {
		gap: 16px;
	}
	.line-keyword-phone img {
		width: 70px;
	}
	.line-use-cases {
		gap: 10px;
	}
	.line-use-case {
		min-width: calc(50% - 5px);
		-webkit-flex: none;
		flex: none;
		width: calc(50% - 5px);
	}
	.line-cta-inquiry {
		font-size: 15px;
		padding: 16px 32px;
	}
}
