@charset "UTF-8";

/** -- siryo_fv -- **/
.siryo_fv {
	position: relative;
	height: 720px;
	width: 100%;
	z-index: 2;
}
.siryo_fv picture {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: -1;
}
.siryo_fv picture img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}

.siryo_fv .sec_inner {
	align-items: center;
	display: flex;
	height: 100%;
}
.siryo_fv .inner {
	margin: 0 auto;
	width: 1280px;
}
.siryo_fv h1 {
	font-size: 52px;
	line-height: 1.3;
}
.siryo_fv h2 {
	font-size: 22px;
	margin-top: 25px;
}

@media screen and (max-width: 1200px) {
	.siryo_fv {
		height: 56vw;
	}

	.siryo_fv .inner {
        margin: 0;
        width: auto;
	}
	.siryo_fv h1 {
		font-size: 4.2vw;
	}
	.siryo_fv h2 {
        font-size: 1.8vw;
        margin-top: 2vw;
	}
}
@media screen and (max-width: 640px) {
	.siryo_fv {
		height: calc(100vh - 16vw);
	}
	
	.siryo_fv .sec_inner {
		display: block;
	}
	
	.siryo_fv .inner {
		padding-top: 28vw;
	}
	.siryo_fv h1 {
		font-size: 7.2vw;
	}
	.siryo_fv h2 {
        font-size: 3.8vw;
        margin-top: 6vw;
	}
}


/** -- results -- **/
@keyframes infinity-scroll-left {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}
.results {
	margin: 20px 0;
}
.results .inner {
	display: flex;
	overflow: hidden;
	margin: 0 auto;
	max-width: 1440px;
}
.results .inner ul {
	animation: infinity-scroll-left 110s infinite linear 1s both;
	align-items: center;
	display: flex;
	padding: 0;
}
.results .inner li {
	margin: 0 20px;
	width: 160px;
}
.results .inner li picture {
	width: 100%;
}

@media screen and (max-width: 1200px) {
	.results {
		margin: 2vw 0;
	}
	.results .inner ul {
		animation: infinity-scroll-left 100s infinite linear 1s both;
	}
	.results .inner li {
        margin: 0 1vw;
        width: 13vw;
	}
}
@media screen and (max-width: 640px) {
	.results {
		margin: 4vw 0;
	}
	.results .inner ul {
		animation: infinity-scroll-left 100s infinite linear 1s both;
	}
	.results .inner li {
        margin: 0 3vw;
        width: 30vw;
	}
}


/** -- trouble -- **/
.trouble {
	padding-top: 100px;
}

/** list **/
.trouble .list {
	margin: 0 -15px 30px;
}
.trouble .list .box {
    background: #F1F1F1;
    border-radius: 6px;
	margin: 0 15px;
    padding: 25px;
	width: calc(33.3333% - 30px);
}
.trouble .list .box h3 {
    color: #4299E1;
	font-size: 28px;
	margin-bottom: 20px;
	text-align: center;
}
.trouble .list .box li {
	background: url(../img/siryo/icon-check-01.svg) no-repeat 0 0 / 23px;
	padding-left: 30px;
}
.trouble .list .box li + li {
	margin-top: 20px;
}

/** assignment **/
.assignment {
	align-items: center;
}
.assignment .image {
	width: 520px;
}
.assignment .text {
	margin-left: 60px;
	width: calc(100% - 520px - 60px);
}
.assignment .text h3 {
	font-size: 28px;
	margin-bottom: 30px;
}
.assignment .text p {
	color: #4299E1;
	font-size: 28px;
	font-weight: 700;
}

@media screen and (max-width: 1200px) {
	.trouble {
		padding-top: 8vw;
	}

	/** list **/
	.trouble .list {
		margin: 0 -1vw 3vw;
	}
	.trouble .list .box {
		border-radius: .5vw;
		margin: 0 1vw;
		padding: 2vw;
		width: calc(33.3333% - 2vw);
	}
	.trouble .list .box h3 {
        font-size: 2.2vw;
        margin-bottom: 1.5vw;
	}
	.trouble .list .box li {
        background-size: 2vw;
        padding-left: 2.4vw;
	}
	.trouble .list .box li + li {
		margin-top: 1.5vw;
	}

	/** assignment **/
	.assignment .image {
		width: 42vw;
	}
	.assignment .text {
		margin-left: 5vw;
		width: calc(100% - 42vw - 5vw);
	}
	.assignment .text h3 {
		font-size: 2.4vw;
		margin-bottom: 2.5vw;
	}
	.assignment .text p {
		font-size: 2.4vw;
	}
}
@media screen and (max-width: 640px) {
	.trouble {
		padding-top: 12vw;
	}

	/** list **/
	.trouble .list {
		margin: 0 0 5vw;
	}
	.trouble .list .box {
		border-radius: 2vw;
		margin: 0 0 4vw;
		padding: 6vw 4vw;
		width: 100%;
	}
	.trouble .list .box h3 {
        font-size: 4.6vw;
        margin-bottom: 3vw;
	}
	.trouble .list .box li {
        background-size: 5vw;
        padding-left: 7vw;
	}
	.trouble .list .box li + li {
		margin-top: 3vw;
	}

	/** assignment **/
	.assignment .image {
        margin-bottom: 4vw;
        width: 100%;
	}
	.assignment .text {
        margin-left: 0;
        width: 100%;
	}
	.assignment .text h3 {
        font-size: 4.6vw;
        margin-bottom: 5vw;
	}
	.assignment .text p {
        font-size: 4.6vw;
	}
}


/** -- intrust -- **/
.intrust {
    background-color: #0275dc;
	margin-top: 100px;
	padding: 120px 0 80px;
	position: relative;
}
.intrust .arrow {
	position: absolute;
	left: 50%;
	top: -60px;
	transform: translateX(-50%);
}

.intrust h2 {
	color: white;
	font-size: 32px;
	text-align: center;
}
.intrust .logo {
	margin: 40px auto;
	width: 320px;
}
.intrust .dot {
	margin: 40px auto;
	width: 5px;
}

@media screen and (max-width: 1200px) {
	.intrust {
		margin-top: 8vw;
        padding: 10vw 0 7vw;
	}
	.intrust .arrow {
        top: -5vw;
        width: 7.4vw;
	}

	.intrust h2 {
		font-size: 2.6vw;
	}
	.intrust .logo {
        margin: 3vw auto;
        width: 26vw;
	}
	.intrust .dot {
        margin: 3vw auto;
        width: .4vw;
	}
}
@media screen and (max-width: 640px) {
	.intrust {
        margin-top: 20vw;
        padding: 20vw 0 12vw;
	}
	.intrust .arrow {
        top: -11vw;
        width: 16vw;
	}

	.intrust h2 {
        font-size: 4.6vw;
	}
	.intrust .logo {
        margin: 8vw auto;
        width: 76vw;
	}
	.intrust .dot {
        margin: 8vw auto;
        width: 1.4vw;
	}
}


/** -- lineup -- **/
.lineup {
	background-color: #f1f1f1;
	padding: 100px 0;
	position: relative;
	z-index: 1;
}
.lineup .bg {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: -1;
}

/** list **/
.lineup .list {
	margin: 0 -15px;
}
.lineup .list .box {
	margin: 0 15px 60px;
	width: calc(50% - 30px);
}

/** contact_btn **/
.lineup .contact_btn {
	margin: 40px auto 0;
}

@media screen and (max-width: 1200px) {
	.lineup {
		padding: 8vw 0;
	}
	
	.lineup .bg {
		left: 50%;
		transform: translateX(-50%);
		width: 124%;
	}

	/** list **/
	.lineup .list {
		margin: 0 -1vw;
	}
	.lineup .list .box {
		margin: 0 1vw 4vw;
		width: calc(50% - 2vw);
	}

	/** contact_btn **/
	.lineup .contact_btn {
		margin: 3vw auto 0;
	}
}
@media screen and (max-width: 640px) {
	.lineup {
		padding: 16vw 0 24vw;
	}
	
	.lineup .bg {
		left: 50%;
		transform: translateX(-50%);
		width: 124%;
	}

	/** list **/
	.lineup .list {
		margin: 0;
	}
	.lineup .list .box {
		margin: 0 0 6vw;
		width: 100%;
	}

	/** contact_btn **/
	.lineup .contact_btn {
		margin: 8vw auto 0;
	}
}


/** -- reason -- **/
.reason {
	padding: 100px 0;
}
.reason h3 {
	font-size: 46px;
	margin-bottom: 40px;
}

/** block **/
.reason .block + .block {
	margin-top: 100px;
}
.reason .box {
	background-color: #F1F1F1;
    border-radius: 6px;
	padding: 30px;
}
.reason .box picture {
	border-bottom: solid 1px #cccccc;
	padding-bottom: 30px;
}
.reason .box .attention {
	background: url(../img/siryo/icon-exmark-01.svg) no-repeat 0 50% / 58px;
	display: table;
	font-size: 18px;
	font-weight: 700;
	margin: 0 auto;
	margin-top: 40px;
	padding-left: 65px;
}

/** contact_btn **/
.reason .contact_btn {
	margin: 100px auto 0;
}

@media screen and (max-width: 1200px) {
	.reason {
		padding: 8vw 0;
	}
	.reason h3 {
        font-size: 3.8vw;
        margin-bottom: 3vw;
	}

	/** block **/
	.reason .block + .block {
		margin-top: 8vw;
	}
	.reason .box {
		border-radius: .5vw;
		padding: 2.5vw;
	}
	.reason .box picture {
		padding-bottom: 2.5vw;
	}
	.reason .box .attention {
        background-size: 4.8vw;
        font-size: 1.5vw;
        margin-top: 3vw;
        padding-left: 5vw;
	}

	/** contact_btn **/
	.reason .contact_btn {
		margin: 7vw auto 0;
	}
}
@media screen and (max-width: 640px) {
	.reason {
		padding: 16vw 0;
	}
	.reason h3 {
        font-size: 5.6vw;
        margin-bottom: 4vw;
	}

	/** block **/
	.reason .block + .block {
		margin-top: 12vw;
	}
	.reason .box {
		border-radius: 0;
		margin: 0 -6vw;
		padding: 8vw 4vw;
	}
	.reason .box picture {
		padding-bottom: 5vw;
	}
	.reason .box .attention {
		background-size: 10vw;
        font-size: 3.6vw;
        margin-top: 6vw;
        padding-left: 12vw;
	}

	/** contact_btn **/
	.reason .contact_btn {
		margin: 12vw auto 0;
	}
}


/** -- case -- **/
.case {
	background-color: #f1f1f1;
	padding: 100px 0;
	position: relative;
	z-index: 1;
}
.case .bg {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: -1;
}

/** block **/
.case .block {
	background-color: white;
    border-radius: 6px;
	padding: 60px 90px;
}
.case .block + .block {
	margin-top: 60px;
}

.case .block .client {
	align-items: center;
	margin-bottom: 60px;
}
.case .block .client picture {
	width: 480px;
}
.case .block .client .text {
	margin-left: 50px;
	width: calc(100% - 480px - 50px);
}
.case .block .client h3 {
	margin-bottom: 10px;
}
.case .block .client h3 a {
    color: #005AA5;
	font-size: 28px;
	text-decoration: underline;
}
.case .block .client p {
	font-size: 18px;
	font-weight: 700;
}

.case .block .overview {
	padding: 0 120px;
	position: relative;
}
.case .block .overview::before,
.case .block .overview::after {
	color: #DDDDDD;
	content: '\f10d';
	display: block;
	font-family: 'Font Awesome 6 Free';
	font-size: 60px;
	font-weight: 900;
	line-height: 1.0;
	position: absolute;
}
.case .block .overview::before {
	left: 0;
	top: 0;
}
.case .block .overview::after {
	transform: rotate(180deg);
	bottom: 70px;
	right: 0;
}
.case .block .overview h4 {
	font-size: 28px;
	margin-bottom: 30px;
}
.case .block .overview .detail {
	background-color: #f1f1f1;
	border-radius: 50px;
	display: table;
	margin: 40px auto 0;
	padding: 10px 30px;
	padding-right: 40px;
	position: relative;
}
.case .block .overview .detail::before {
	content: '\f061';
	display: block;
	font-family: 'Font Awesome 6 Free';
	font-size: 18px;
	font-weight: 900;
	line-height: 1.0;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

/** contact_btn **/
.case .contact_btn {
	margin: 100px auto 0;
}

@media screen and (max-width: 1200px) {
	.case {
		padding: 8vw 0;
	}
	
	.case .bg {
		left: 50%;
		transform: translateX(-50%);
		width: 125%;
	}

	/** block **/
	.case .block {
		border-radius: .5vw;
		padding: 5vw 7vw;
	}
	.case .block + .block {
		margin-top: 5vw;
	}

	.case .block .client {
		margin-bottom: 5vw;
	}
	.case .block .client picture {
		width: 40vw;
	}
	.case .block .client .text {
		margin-left: 4vw;
		width: calc(100% - 40vw - 4vw);
	}
	.case .block .client h3 {
		margin-bottom: 1vw;
	}
	.case .block .client h3 a {
		font-size: 2.4vw;
	}
	.case .block .client p {
		font-size: 1.5vw;
	}

	.case .block .overview {
		padding: 0 10vw;
	}
	.case .block .overview::before,
	.case .block .overview::after {
		font-size: 5vw;
	}
	.case .block .overview::after {
		bottom: 6vw;
	}
	.case .block .overview h4 {
		font-size: 2.4vw;
		margin-bottom: 2.5vw;
	}
	.case .block .overview .detail {
        border-radius: 5vw;
        margin: 3vw auto 0;
        padding: 1vw 3vw;
        padding-right: 4vw;
	}
	.case .block .overview .detail::before {
        font-size: 1.5vw;
        right: 2vw;
	}

	/** contact_btn **/
	.case .contact_btn {
		margin: 8vw auto 0;
	}
}
@media screen and (max-width: 640px) {
	.case {
		padding: 16vw 0 24vw;
	}
	
	.case .bg {
		left: 50%;
		transform: translateX(-50%);
		width: 125%;
	}

	/** block **/
	.case .block {
		border-radius: 2vw;
		padding: 8vw 4vw;
	}
	.case .block + .block {
		margin-top: 10vw;
	}

	.case .block .client {
		margin-bottom: 8vw;
	}
	.case .block .client picture {
		width: 100%;
	}
	.case .block .client .text {
		margin-left: 0;
		margin-top: 6vw;
		width: 100%;
	}
	.case .block .client h3 {
		margin-bottom: 3vw;
	}
	.case .block .client h3 a {
		font-size: 5.6vw;
	}
	.case .block .client p {
		font-size: 3.8vw;
	}

	.case .block .overview {
		padding: 0 8vw;
	}
	.case .block .overview::before,
	.case .block .overview::after {
		font-size: 6vw;
	}
	.case .block .overview::after {
		bottom: 16vw;
	}
	.case .block .overview h4 {
        font-size: 4.2vw;
        margin-bottom: 5vw;
	}
	.case .block .overview .detail {
        border-radius: 10vw;
        margin: 8vw auto 0;
        padding: 2vw 6vw;
        padding-right: 10vw;
	}
	.case .block .overview .detail::before {
        font-size: 3.4vw;
        right: 6vw;
	}

	/** contact_btn **/
	.case .contact_btn {
		margin: 12vw auto 0;
	}
}


/** -- flow -- **/
.flow {
	padding: 100px 0;
}

/** list **/
.flow .list .box {
    background: #F1F1F1;
    border-radius: 0px 6px 6px 0px;
	position: relative;
}
.flow .list .box + .box {
	margin-top: 50px;
}
.flow .list .box::after {
	border: solid 40px transparent;
	border-bottom: none;
	border-top: solid 30px #005AA5;
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	bottom: -40px;
	transform: translateX(-50%);
}
.flow .list .box:last-child::after {
	display: none;
}
.flow .list .box .no {
	align-items: center;
    background: #4299E1;
    border-radius: 6px 0px 0px 6px;
	color: white;
	display: flex;
	font-family: "Roboto Condensed", sans-serif;
	font-optical-sizing: auto;
	font-size: 24px;
	font-style: italic;
	font-weight: 700;
	padding: 0 20px;
}
.flow .list .box .no span {
	font-size: 56px;
	margin-left: 5px;
}
.flow .list .box .text {
	padding: 30px 40px;
}
.flow .list .box .text h3 {
	font-size: 24px;
	margin-bottom: 15px;
}
.flow .list .box .text p {
	font-size: 18px;
}

@media screen and (max-width: 1200px) {
	.flow {
		padding: 8vw 0;
	}

	/** list **/
	.flow .list .box {
		border-radius: 0px .5vw .5vw 0px;
	}
	.flow .list .box + .box {
		margin-top: 4vw;
	}
	.flow .list .box::after {
        border: solid 3.4vw transparent;
        border-bottom: none;
        border-top: solid 2.5vw #005AA5;
        bottom: -3.4vw;
	}
	.flow .list .box .no {
		border-radius: .5vw 0px 0px .5vw;
		font-size: 2.1vw;
		padding: 0 2vw;
	}
	.flow .list .box .no span {
        font-size: 4.6vw;
        margin-left: .5vw;
	}
	.flow .list .box .text {
        padding: 2vw 3vw;
	}
	.flow .list .box .text h3 {
        font-size: 2vw;
        margin-bottom: 1vw;
	}
	.flow .list .box .text p {
		font-size: 1.5vw;
	}
}
@media screen and (max-width: 640px) {
	.flow {
		padding: 16vw 0;
	}

	/** list **/
	.flow .list .box {
		border-radius: 0px 2vw 2vw 0px;
		flex-wrap: nowrap;
	}
	.flow .list .box + .box {
		margin-top: 8vw;
	}
	.flow .list .box::after {
        border: solid 6vw transparent;
        border-bottom: none;
        border-top: solid 4.5vw #005AA5;
        bottom: -6.5vw;
	}
	.flow .list .box .no {
        border-radius: 2vw 0px 0px 2vw;
        font-size: 3.4vw;
	}
	.flow .list .box .no span {
        font-size: 7.2vw;
        margin-left: 1vw;
	}
	.flow .list .box .text {
        padding: 6vw 4vw;
	}
	.flow .list .box .text h3 {
        font-size: 4vw;
        margin-bottom: 2vw;
	}
	.flow .list .box .text p {
		font-size: 3.4vw;
	}
}


/** -- support_price -- **/
.support_price {
	margin-bottom: 100px;
}

/** inner **/
.support_price .inner {
	justify-content: space-between;
}

.support_price .box {
    background: #FFFFFF;
    box-shadow: 0px 4px 24px 0px rgba(0, 63, 118, 0.3199999928474426);
	padding: 30px;
	position: relative;
}
.support_price .box h3 {
	border-bottom: dashed 3px #F1F1F1;
	color: #005aa5;
	font-size: 24px;
	padding-bottom: 20px;
	text-align: center;
}
.support_price .box .text {
	font-weight: 500;
	padding-top: 20px;
}

.support_price .basic {
    padding-right: 50px;
}
.support_price .basic .cost {
	font-size: 24px;
	line-height: 1.4;
}
.support_price .basic .cost span {
	position: relative;
}
.support_price .basic .cost span::after {
	background-color: #4299E1;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	height: 2px;
	width: 100%;
}
.support_price .basic .cost span span {
    font-family: "Roboto Condensed", sans-serif;
	font-size: 38px;
}
.support_price .basic .cost span span::after {
	display: none;
}
.support_price .basic .sale {
	font-size: 28px;
	line-height: 1.4;
	margin-top: 30px;
}
.support_price .basic .sale span {
	font-size: 54px;
    font-family: "Roboto Condensed", sans-serif;
}
.support_price .basic .balloon {
	background-color: #CBDDED;
	border-radius: 50%;
	filter: drop-shadow(0 0 3px rgba(0, 63, 118, 0.3199999928474426));
	font-size: 20px;
    line-height: 1.4;
    padding-top: 30px;
	position: absolute;
    right: -15px;
	top: 165px;
	text-align: center;
	height: 120px;
	width: 120px;
}
.support_price .basic .balloon::before {
	background-color: #CBDDED;
	clip-path: polygon(20% 0, 100% 30%, 0 100%);
    content: '';
    display: block;
    position: absolute;
    bottom: -10px;
    left: 30px;
    height: 20px;
    width: 20px;
}

.support_price .basic::after {
	background-color: #DDDDDD;
	clip-path: polygon(55% 0, 45% 0, 45% 45%, 0 45%, 0 55%, 45% 55%, 45% 100%, 55% 100%, 55% 55%, 100% 55%, 100% 45%, 55% 45%);
	content: '';
	display: block;
    position: absolute;
    right: -55px;
    top: 50%;
    transform: translateY(-50%);
	height: 40px;
	width: 40px;
}

.support_price .plus h4 {
	font-size: 24px;
	margin-bottom: 20px;
	text-align: center;
}
.support_price .plus .prd_cost {
	justify-content: space-between;
}
.support_price .plus .inbox .name {
	background: url(../img/siryo/icon-check-01.svg) no-repeat 0 50% / 23px;
	font-size: 28px;
	padding-left: 28px;
}
.support_price .plus .inbox .cost {
	font-size: 28px;
	line-height: 1.4;
}
.support_price .plus .inbox .cost span {
	font-size: 54px;
    font-family: "Roboto Condensed", sans-serif;
}
.support_price .plus .inbox .option {
	font-size: 18px;
	font-weight: 700;
}
.support_price .plus .other {
	margin-top: 20px;
}

.support_price .attention {
	margin-top: 30px;
}

@media screen and (max-width: 1200px) {
	.support_price {
		margin-bottom: 8vw;
	}

	/** inner **/
	.support_price .box {
		box-shadow: 0px 4px 24px 0px rgba(0, 63, 118, 0.3199999928474426);
		padding: 30px;
	}
	.support_price .box h3 {
		font-size: 2vw;
		padding-bottom: 1.6vw;
	}
	.support_price .box .text {
		padding-top: 1.6vw;
	}

	.support_price .basic {
		padding-right: 4vw;
	}
	.support_price .basic .cost {
		font-size: 2vw;
	}
	.support_price .basic .cost span::after {
		height: 2px;
	}
	.support_price .basic .cost span span {
		font-size: 3.2vw;
	}
	.support_price .basic .sale {
		font-size: 2.4vw;
		margin-top: 4.2vw;
	}
	.support_price .basic .sale span {
		font-size: 4.5vw;
	}
	.support_price .basic .balloon {
        font-size: 1.6vw;
        padding-top: 2vw;
        right: -0.5vw;
        top: 16vw;
        height: 9vw;
        width: 9vw;
	}
	.support_price .basic .balloon::before {
        bottom: -.8vw;
        left: 2.6vw;
        height: 1.6vw;
        width: 1.6vw;
	}

	.support_price .basic::after {
		right: -4.6vw;
        height: 3.5vw;
        width: 3.5vw;
	}

	.support_price .plus h4 {
		font-size: 2vw;
		margin-bottom: 1.6vw;
	}
	.support_price .plus .inbox .name {
        background-size: 2vw;
        font-size: 2.4vw;
        padding-left: 2.4vw;
	}
	.support_price .plus .inbox .cost {
		font-size: 2.4vw;
	}
	.support_price .plus .inbox .cost span {
		font-size: 4.5vw;
	}
	.support_price .plus .inbox .option {
		font-size: 1.5vw;
	}
	.support_price .plus .other {
		margin-top: 1.6vw;
	}

	.support_price .attention {
		margin-top: 2.6vw;
	}
}
@media screen and (max-width: 640px) {
	.support_price {
		margin-bottom: 16vw;
	}

	/** inner **/
	.support_price .box {
		padding: 8vw;
		width: 100%;
	}
	.support_price .box h3 {
		font-size: 4.6vw;
		padding-bottom: 5vw;
	}
	.support_price .box .text {
		padding-top: 5vw;
	}

	.support_price .basic {
		margin-bottom: 16vw;
		padding-right: 4vw;
	}
	.support_price .basic .cost {
		font-size: 4.6vw;
	}
	.support_price .basic .cost span::after {
		height: 2px;
	}
	.support_price .basic .cost span span {
		font-size: 9vw;
	}
	.support_price .basic .sale {
        font-size: 7.4vw;
        margin-top: 8vw;
	}
	.support_price .basic .sale span {
		font-size: 14vw;
	}
	.support_price .basic .balloon {
        font-size: 4.2vw;
        padding-top: 8vw;
        right: 7vw;
        top: 38vw;
        height: 28vw;
        width: 28vw;
	}
	.support_price .basic .balloon::before {
        bottom: -3vw;
        left: 7vw;
        height: 5vw;
        width: 5vw;
	}

	.support_price .basic::after {
        bottom: -13vw;
        left: 50%;
        right: auto;
        top: auto;
        transform: translateX(-50%);
        height: 10vw;
        width: 10vw;
	}

	.support_price .plus h4 {
		font-size: 4.6vw;
		margin-bottom: 6vw;
	}
	.support_price .plus .inbox {
		margin: 0 auto;
	}
	.support_price .plus .inbox + .inbox {
		margin-top: 6vw;
	}
	.support_price .plus .inbox .name {
        background-size: 7vw;
        font-size: 7.4vw;
        padding-left: 8vw;
	}
	.support_price .plus .inbox .cost {
		font-size: 7.4vw;
		line-height: 1.2;
	}
	.support_price .plus .inbox .cost span {
		font-size: 14vw;
	}
	.support_price .plus .inbox .option {
		font-size: 4vw;
	}
	.support_price .plus .other {
		margin-top: 6vw;
	}

	.support_price .attention {
		margin-top: 8vw;
	}
}


/** -- contact -- **/
.contact {
	background-color: #f1f1f1;
	padding: 100px 0;
}

/** title **/
.contact .hbspt-form {
	margin: 0 auto 30px;
	width: 750px;
}

.contact h2 {
	font-size: 32px;
	margin-bottom: 30px;
	text-align: center;
}

.contact .attention {
	font-size: 14px;
	text-align: center;
}
.contact .attention a {
    color: #0000EE;
	text-decoration: underline;
}

/** wpforms **/
.contact .wpforms-container {
	margin: 0 auto;
	width: 700px;
}
.contact .wpforms-container .wpforms-submit {
    background: #FF7A59 !important;
    border-color: #FF7A59 !important;
	display: block;
	margin: 0 auto;
}

@media screen and (max-width: 1200px) {
	.contact {
		padding: 8vw 0;
	}

	/** title **/
	.contact .title {
		margin: 0 auto 2vw;
		width: 64vw;
	}

	.contact h2 {
		font-size: 2.6vw;
		margin-bottom: 3vw;
	}

	.contact .attention {
		font-size: 1.2vw;
	}

	/** wpforms **/
	.contact .hbspt-form {
		margin: 0 auto;
		width: 54vw;
	}
}
@media screen and (max-width: 640px) {
	.contact {
		padding: 16vw 0;
	}

	/** title **/
	.contact .title {
		margin: 0 auto 4vw;
		width: 88vw;
	}

	.contact h2 {
        font-size: 5.6vw;
        margin-bottom: 5vw;
	}

	.contact .attention {
		font-size: 3.4vw
	}

	/** wpforms **/
	.contact .hbspt-form {
		width: auto;
	}
}