@charset "utf-8";

.price-reason,
.price-performance,
.price-option{
	background-color: #F7F9FB;
}
.price-reason .wp-block-columns{
	margin-top: 4rem;
}
.price-reason .wp-block-column{
	background-color: #fff;
	border-radius: 1rem;
	padding: 2rem;
}
.price-reason .wp-block-column h4{
	font-size: 1.4rem;
}
.price-reason .wp-block-column h4 + p{
	font-size: .9rem;
	margin-top: 1rem;
}
.price-reason .price-reason-balloon{
	color: #fff;
	padding: .25rem;
	text-align: center;
	font-size: 1.2rem;
	font-weight: normal;
	background-color: #0057FF;
	border-radius: 2rem;
	font-family: 'Red Hat Display', 'Noto Sans JP', sans-serif;
	position: relative;
}
.price-reason .price-reason-balloon:after{
	content: '';
	display: block;
	width: .8rem;
	height: .6rem;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: #0057FF;
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -.4rem;
}

.price-performance table{
	background-color: #fff;
	font-size: .9rem;
}
.price-performance th,
.price-performance td{
	border: 0;
}
.price-performance thead th{
	font-size: .8rem;
	border-left: 1px solid #DADADA;
	padding: 1rem 0;
}
.price-performance tbody tr{
	border-top: 1px solid #DADADA;
}
.price-performance tbody th{
	font-size: .9rem;
	font-weight: normal;
	padding: 1rem .5rem;
	text-align: center;
}
.price-performance tbody td{
	padding: 1rem;
	border-left: 1px solid #DADADA;
}
.price-performance tbody th + td{
	padding-left: 1.5rem;
}
.price-performance tbody tr:nth-child(odd) td{
	background-color: #F4F4F4;
}

.price-money .wp-block-column{
	padding: 1rem;
	color: #fff;
	border-radius: 1rem;
}
.price-money .wp-block-column:nth-child(1){
	background: #4987FF;
	background: -moz-linear-gradient(top left, #0057FF 0%, #4987FF 100%);
	background: -webkit-gradient(linear, left top, right bottom, from(#0057FF), to(#4987FF));
	background: -webkit-linear-gradient(top left, #0057FF 0%, #4987FF 100%);
	background: linear-gradient(to bottom right, #0057FF 0%, #4987FF 100%);
}
.price-money .wp-block-column:nth-child(2){
	background: #254E6B;
	background: -moz-linear-gradient(top left, #70818D 0%, #254E6B 100%);
	background: -webkit-gradient(linear, left top, right bottom, from(#70818D), to(#254E6B));
	background: -webkit-linear-gradient(top left, #70818D 0%, #254E6B 100%);
	background: linear-gradient(to bottom right, #70818D 0%, #254E6B 100%);
}
.price-money .wp-block-column h4{
	font-weight: normal;
	margin: .5rem 0 0 1rem;
}
.price-money .wp-block-column h4 + p{
	/*font-family: 'Red Hat Display', sans-serif;*/
	/*font-weight: 300;*/
	font-weight: bold;
	margin-right: .5rem;
	line-height: 1;
	padding-bottom: 1rem;
	text-align: center;
}
.price-money .price-item{
	border-radius: .5rem;
	background-color: rgba(255, 255, 255, 0.1);
}
.price-money .price-item .price-item-txt{
	flex: 1;
}
.price-money .price-item .price-item-txt h4{
	font-size: 1.2rem;
	margin-bottom: 1rem;
}
.price-money .price-item .price-item-txt p{
	font-size: .8rem;
}

.price-option table{
	font-size: .85rem;
	background-color: #fff;
}
.price-option th{
	padding: 1rem;
}
.price-option thead th small{
	font-size: .75rem;
	font-weight: normal;
}
.price-option tbody tr{
	border-bottom: 1px solid #DADADA;
}
.price-option tbody tr:nth-child(odd) th,
.price-option tbody tr:nth-child(odd) td{
	background-color: #F4F4F4;
}
.price-option thead th:not(:first-child),
.price-option tbody td{
	border-left: 1px solid #DADADA;
	font-size: .75rem;
	padding: 1.5rem 1rem;
}
.price-option tbody td b,
.price-option tbody td strong{
	font-size: .85rem;
}

@media screen and (min-width: 600px) {
	.page-header{
		background-image: url(/img/title_price.png);
	}

	.price-reason .price-reason-balloon{
		margin: -3rem 2rem 2rem;
	}

	.price-money .wp-block-column h4{
		font-size: 1.4rem;
	}
	.price-money .wp-block-column h4 + p{
		font-size: 2rem;
	}
	.price-money .price-item{
		margin-top: .75rem;
		padding: 1.5rem 1rem 1.5rem .5rem;
	}
	.price-money .price-item > .wp-block-group__inner-container{
		display: flex;
		align-items: center;
	}
	.price-money .price-item .wp-block-image{
		height: 100%;
		margin: 0 !important;
		width: 6rem;
		padding: 0 1rem;
		text-align: center;
	}
	.price-money .wp-block-columns{
		margin-top: 3rem;
	}
}
@media (min-width: 600px) and (max-width: 781px){
	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
		flex-basis: 0 !important;
		flex-grow: 1;
	}
	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:first-child) {
		margin-left: var(--wp--style--block-gap,2em);
	}
}
@media (max-width: 781px){
	.price-performance .wp-block-table,
	.price-option .wp-block-table{
		overflow-x: auto;
	}
	.price-performance .wp-block-table::-webkit-scrollbar,
	.price-option .wp-block-table::-webkit-scrollbar {
		width: 3px;
		height: 3px;
		border-radius: 3px;
	}
	.price-performance .wp-block-table::-webkit-scrollbar-track,
	.price-option .wp-block-table::-webkit-scrollbar-track {
		background-color: transparent;
	}
	.price-option .wp-block-table::-webkit-scrollbar-thumb,
	.price-performance .wp-block-table::-webkit-scrollbar-thumb {
		background-color: #DADADA;
	}
	.price-performance .wp-block-table table,
	.price-option .wp-block-table table{
		width: auto;
		min-width: 1000px;
	}
}
@media screen and (max-width: 599px) {
	.page-header{
		background-image: url(/img/title_price_sp.png);
	}

	.price-reason .price-reason-balloon{
		margin: -3rem 2rem 1rem;
	}
	.price-reason .wp-block-column:not(:last-child){
		margin-bottom: 2rem;
	}

	.price-money .wp-block-column h4{
		font-size: 1.2rem;
	}
	.price-money .wp-block-column h4 + p{
		font-size: 1.5rem;
	}
	.price-money .price-items{
		margin-top: 1rem;
	}
	.price-money .price-items > .wp-block-group__inner-container{
		display: flex;
		flex-wrap: wrap;
	}
	.price-money .price-item{
		width: calc(50% - .8rem);
		margin: .4rem;
		padding: 1.5rem 1rem;
	}
	.price-money .price-item h5{
		text-align: center;
	}
	.price-money .price-item .wp-block-image{
		height: 5rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.price-money .price-item .wp-block-image img{
		width: 40%;
	}
	.price-money .wp-block-column:not(:last-child){
		margin-bottom: 1rem;
	}
	.price-money .wp-block-columns{
		margin-top: 2rem;
	}

}

/* function */

.price-function{
	color: #fff;
	background: #224D7E;
	border-radius: 1.2rem;
	overflow: hidden;
}
.price-function-title{
	font-size: 1.4rem;
	font-family: 'Red Hat Display', sans-serif;
	font-weight: 400;
	margin-bottom: 1rem;
}
.price-function .wp-block-button__link{
	margin-top: 1rem;
	background-color: rgba(247, 249, 251, .25);
	color: #fff;
	border-radius: 3rem;
	position: relative;
}
.price-function .wp-block-button__link:after{
	content: '';
	display: block;
	width: 1rem;
	height: .5rem;
	background: url(/img/arrow_right_w.svg) no-repeat right center;
	background-size: 100% 100%;
	position: absolute;
	right: 1.5rem;
	top: 50%;
	transform: translateY(-50%);
}

@media screen and (min-width: 600px) {
	.price-function{
		margin: 2rem;
		position: relative;
	}
	.price-function .wp-block-group__inner-container{
		background: url(/img/contact_bg.png) no-repeat center center;
		background-size: cover;
		padding: 4rem 30vw 4rem 5rem;
	}
	.price-function .wp-block-buttons{
		position: absolute;
		right: 5rem;
		bottom: 3rem;
	} 
	.price-function .price-function-title + p{
		font-size: 2.4rem;
	}
	.price-function-title + p + p {
		font-size: .8rem;
	}
	.price-function .wp-block-button__link{
		display: block;
		padding: .75rem 3rem .75rem 2rem;
	}
}
@media screen and (max-width: 599px) {
	.price-function{
		margin: 1rem;
		text-align: center;
	}
	.price-function-title + p + p{
		text-align: left;
		font-size: .9rem;
	}
	.price-function .wp-block-group__inner-container{
		background: url(/img/contact_bg_sp.png) no-repeat center center;
		background-size: cover;
		padding: 3rem 2rem;
	}
	.price-function .contact-tel{
		padding: 1.5rem 0;
		margin: 1.5rem 0;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
	}
	.price-function-title + p{
		font-size: 2rem;
		line-height: 1.3;
		margin-bottom: 1rem;
	}
	.price-function .wp-block-buttons{
		justify-content: center;
		margin-top: 1rem;
	}
	.price-function .wp-block-button__link{
		display: block;
		padding: .75rem 4rem;
	}
}
