@charset "UTF-8";

/*----------------------全体にかかる要素----------------------*/
* {
	box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
	margin: 0;
	padding: 0;
	user-select: none;
}

html{
	max-width: 480px;
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body{
	background: none;
}

.img{
	width: 100%;
}

.pc{
	display: none;
}

.sp{
	display: block;
}

.btn {
	width: 100%;
	max-width: 90%;
	object-fit: scale-down;
	display: block;
	margin: 0 auto;
}
@media only screen and ( min-width: 768px ) {
	.btn {
		margin: 50px auto 0 auto;
	}
}

.btn:hover {
	transform: translateY(4px);
	box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
}

@media only screen and ( max-width: 768px ) {
	.btn {
		max-width: 90vw;
	}
}

/*----------------------sp fv----------------------*/
.fv {
	background: linear-gradient(135deg, #3E3F43 0%, #45464A 15%, #18191B 50%, #060606 75%, #000000 100%);
	padding-bottom: 50px;
}

.fv .btn {
	margin: 0 auto;
}

.fv__logo,
.fv__text1,
.fv__text2,
.fv__graph{
	padding-left: 5%;
}

.fv__logo{
	width: 27%;
	padding-top: 3%;
}

.fv__text1{
	font-size: 5.33333vw;
	font-weight: 900;
	margin-top: 9%;
	text-shadow: 3px 3px 5px rgba(255, 255, 255, 0.94), -3px 3px 5px rgba(255, 255, 255, 0.94), 3px -3px 5px rgba(255, 255, 255, 0.94), -3px -3px 5px rgba(255, 255, 255, 0.94), 3px 0px 5px rgba(255, 255, 255, 0.94), 0px 3px 5px rgba(255, 255, 255, 0.94), -3px 0px 5px rgba(255, 255, 255, 0.94), 0px -3px 5px rgba(255, 255, 255, 0.94);
}

.fv__text2 {
	margin-top: 1%;
	font-size: 9.6vw;
	font-weight: 900;
	text-shadow: 3px 3px 5px rgba(255, 255, 255, 0.94), -3px 3px 5px rgba(255, 255, 255, 0.94), 3px -3px 5px rgba(255, 255, 255, 0.94), -3px -3px 5px rgba(255, 255, 255, 0.94), 3px 0px 5px rgba(255, 255, 255, 0.94), 0px 3px 5px rgba(255, 255, 255, 0.94), -3px 0px 5px rgba(255, 255, 255, 0.94), 0px -3px 5px rgba(255, 255, 255, 0.94);
	line-height: 12vw;
}

.fv__text2 span{
	font-size: 9.6vw;
	vertical-align: baseline;
}

.fv__text2 span span{
	font-size: 12.8vw;
}

.fv__text3{
	font-size: 10px;
	font-weight: normal;
	margin-top: 2%;
	line-height: 1;
	padding-bottom: 3%;
}

.fv__icons{
	display: flex;
	justify-content: space-between;
	gap: 0 5px;
	width: 100%;
	margin: 12% auto 0 auto;
	padding: 0 10px 0 0;
}

.fv__inner {
  position: relative;
}

.fv .fv__inner ul img {
	width: 100%;
	height: auto;
}

.fv__graph {
	width: 50%;
	margin-top: 3%;
}

.fv .sub-text {
	text-align: center;
	font-size: 10px;
	padding: 10px 0;
}

.fv_alliance {
  font-size: 1.2rem;
  font-weight: bold;
  position: absolute;
  top: 30px;
  right: 0;
	background-color: #bf9002;
	border-radius: 25px;
	/* border: solid 2px white; */
	padding: 5px 20px;
}

@media only screen and ( max-width: 768px ) {
	.fv_alliance {
  font-size: 1.2rem;
  font-weight: bold;
  position: absolute;
  top: 10px;
  right: 15px;
	margin: 0;
	padding: 5px 10px;
	}
}

.fv_alliance__link {
	color: white;
	text-decoration: none;
}

.fv_alliance__link:hover {
	text-decoration: none;
	opacity: 0.5;
	transition: 0.2s;
}

/*----------------------sp logo----------------------*/

.logo{
	display: flex;
	overflow: hidden;
	width: 100%;
	background: #FFFFFF; /* 画像の背後の背景色 */
}

.logo__inner--img{
	max-height: 50px;
}

.logo__inner1,
.logo__inner2 {
	display: inline-flex;
	flex: none;
	animation: logo__inner 30s 2s linear infinite; /* スライド速度と開始遅延時間 */
}

.logo:hover div{
	animation-play-state: paused!important; /* ホバー時にスライダー停止 */
}

.logo__inner1 div,
.logo__inner2 div {
	flex: none;
	padding: 10px; /* 画像の間の間隔 */
}

@keyframes logo__inner { /* logo__inner1とlogo__inner2を移動させる */
	0% {
	transform: translateX(0);
	}
	100% {
	transform: translateX(-100%);
	}
}

/*----------------------sp case----------------------*/

.case {
	padding: 50px 0;
}

@media screen and (min-width: 768px) {
	.case {
		padding: 70px 0 130px 0;
	}
}

.case__title {
	color: #333;
	text-align: center;
	width: fit-content;
	margin: 0 auto;
}

.case__title1 {
	font-size: 5vw;
	font-weight: 900;
	position: relative;
}

.case__title1::before {
	position: absolute;
	content: "";
	border-left: 3px solid #333;
	width: 2px;
	height: 38px;
	bottom: 3px;
	left: -20px;
	transform: rotate(-40deg);
}

@media only screen and ( max-width: 896px ) {
	.case__title1::before {
		border-left: 1.5px solid #333;
		left: -10px;
		width: 1.5px;
		height: 25px;
	}
}

.case__title1::after {
	position: absolute;
	content: "";
	border-left: 3px solid #333;
	width: 2px;
	height: 38px;
	bottom: 3px;
	right: -20px;
	transform: rotate(40deg);
}

@media only screen and ( max-width: 896px ) {
	.case__title1::after {
		border-left: 1.5px solid #333;
		right: -10px;
		width: 1.5px;
		height: 25px;
	}
}

.case__title2 {
	font-size: 4vw;
	text-align: center;
}

.case__inner{
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px 0;
	margin: 20px;
}

.sp-slider_02 {
	width: 80%;
	height: fit-content;
	margin: 20px auto;
	display: grid;
	gap: 0 10px;
}

ul {
	padding: 0;
}

.img-bottom{
	margin: 15px 0 0 0;
}

.prev.slick-arrow {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -7%;
	margin: auto;
	width: 4%;
	height: fit-content;
}
.next.slick-arrow {
	position: absolute;
	top: 0;
	right: -7%;
	bottom: 0;
	margin: auto;
	width: 4%;
	height: fit-content;
}

/*----------------------sp reason----------------------*/

.reason {
	padding: 50px 20px;
	background-color: #f3f3f3;
}

.reason__title{
	font-size: 6vw;
	font-weight: 900;
	text-align: center;
	position: relative;
}

.reason__title::before{
	position: absolute;
	content: "";
	border-top: solid 2px black;
	width: 3.5em;
	height: auto;
	right: 0;
	bottom: -10px;
	left: 0;
	margin: auto;
}

@media only screen and ( max-width: 768px ) {
	.reason__item--img-box01 {
		margin: 45px auto 0;
		width: 50%;
	}

	.reason__item--img-box02,
	.reason__item--img-box03 {
		margin: 55px auto 0;
	}

	.reason03__images {
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		margin-top: 40px;
		margin-bottom: 0;
	}

	.reason03__image {
		width: 139px;
	}

	.reason03__image:first-child {
		margin-right: 12px;

	}

	.reason03__image:last-child {
		text-align: center;
		margin: 12px auto 0;
	}

	.reason__item--text {
		font-size: 12px;
		line-height: 1.9;
	}

	.reason__item--text01 {
		max-width: 550px;
		margin: 35px auto 0;
		padding: 0 9%;
		text-align: justify;
	}

	.reason__item--text02 {
		max-width: 280px;
		margin: 45px auto 0;
		padding: 0 4%;
	}

	.reason__item--text03 {
		width: 290px;
		margin: 44px auto 0;
		padding: 0 3%;
	}

	.reason__item--headline{
		font-size: 4vw;
		font-weight: bold;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 50%;
		transform: translateX( -50% );
		margin: auto;
		height: fit-content;
		text-align: center;
		width: 20em;
	}

	.reason__item:nth-child(3) .reason__item--headline {
		left: 58%;
	}
}

@media screen and (min-width: 768px) {
	.reason__title::before{
		border-top: solid 4px black;
	}
}

.reason__item{
	margin: 50px 0 0 0;
}

.reason__item--inner{
	position: relative;
}

.reason03__2col {
	display: flex;
	align-items: center;
	margin: 15px auto 0;
}

.reason03__img-col {
	margin-right: 20px;
}

.reason__text {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.4;
}

.reason__image--text {
	text-align: center;
	font-size: 0.8vw;
}

.reason__item--img-box01 {
	text-align: center;
}

/*----------------------sp voice----------------------*/

.voice {
	padding: 50px 20px;
}

.voice__title{
	font-size: 6vw;
	font-weight: 900;
	text-align: center;
	position: relative;
}

.voice__title::before{
	position: absolute;
	content: "";
	border-top: solid 2px black;
	width: 3.5em;
	height: auto;
	right: 0;
	bottom: -10px;
	left: 0;
	margin: auto;
}

@media screen and (min-width: 768px) {
	.voice__title::before {
		border-top: solid 4px black;
	}
}

.voice__inner{
	margin: 50px 0 0 0;
	display: grid;
	gap: 15px 0;
}

/*----------------------sp step----------------------*/


.step__title{
	background-color: #333;
	display: grid;
	place-items: center;
	padding: 20px 0;
}

.step__title--pic{
	max-height: 50px;
	object-fit: scale-down;
}

.step{
	padding: 50px 20px;
	display: grid;
	gap: 50px 0;
}

.step__item{
	padding: 3px;
	background: linear-gradient(157.94deg, #C7A26A 5.11%, #F3CC91 39.57%, #A4824F 91.03%);
	position: relative;
}

.step__title--img{
	position: absolute;
	top: -25px;
	right: 0;
	left: 0;
	margin: auto;
	width: 50px;
}

.step__box{
	width: 100%;
	background-color: white;
	display: grid;
	justify-items: center;
	gap: 20px 0;
	text-align: center;
	padding: 40px 0 30px 0;
}

.step__item--title{
	font-weight: bold;
	font-size: 2rem;
}

.step__item--img{
	height: 60px;
	object-fit: scale-down;
}

.step__cv {
	margin: 40px 0 60px;
}

@media only screen and ( max-width: 768px ) {
	.step {
		padding-bottom: 0;
	}
	.step__cv {
		margin: 3em 0 1em;
	}
}

/*----------------------sp form----------------------*/





/*----------------------ここからPC----------------------*/



/*----------------------ここからPC----------------------*/

@media screen and (min-width: 768px){

	
	/*----------------------全体にかかる要素----------------------*/
	.pc{
		display: block;
	}
	
	.sp{
		display: none;
	}
	
	html{
		max-width: none;
	}
	
}



/*----------------------カメラから引用----------------------*/
/*----------------------sp form----------------------*/

.form__title{
	font-weight: bold;
	font-size: 6vw;
	text-align: center;
	border-top: solid 4px black;
	border-bottom: solid 1px black;
	padding: 5px 0;
	position: relative;
}

.form__title::before{
	position: absolute;
	content: "必須";
	background-color: #f56f00;
	color: white;
	border-radius: 15px;
	font-size: 4vw;
	padding: 0 7px;
	top: 0;
	right: 20px;
	bottom: 0;
	margin: auto;
	height: fit-content;
}

.form__content{
	background-color: #f0f6da;
	padding: 20px;
	position: relative;
	font-size: 4vw;
}

.form__radio-wrapper{
	display: flex;
}

.form__radio-wrapper2{
	justify-content: flex-start;
	gap: 0 30px;
}

.form__radio{
	display: flex;
	gap: 0 10px;
	cursor: pointer;
}

.form__file-wrapper{
	display: grid;
	gap: 20px 0;
}

.form__name{
	display: grid;
	gap: 20px 0;
}

select,
#input-name,
#input-kana,
#input-tel,
#input-mail{
	border: 4px #1abc9c solid;
	border-radius: 5px;
	padding: 10px;
	width: 100%;
	appearance: none;
}


.form__radio-wrapper span {
	position: relative;
	display: grid;
	place-items: center;
	width: fit-content;
}

.form__radio-wrapper span::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 3.5vw;
	height: 3.5vw;
	background: #fff;
	border: 4px solid #1abc9c;
	border-radius: 50%;
	content: ""
}

.form__radio-wrapper span::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 2vw;
	height: 2vw;
	background: #1abc9c;
	border-radius: 50%;
	opacity: 0;
	content: ""
}


.form__radio-wrapper input {
	display: none
}

.form__radio-wrapper input:checked+span::after {
	opacity: 1
}

.form__radio-wrapper input.yet+span::before,
.input-accessory input.yet+span::before {
	animation: 1s linear infinite border-flash;
}

.form__angle{
	position: absolute;
	top: 0;
	right: 35px;
	bottom: 0;
	margin: auto;
	width: 5vw;
	object-fit: scale-down;
	pointer-events: none;
}

.text-bold{
	font-weight: bold;
}

.caution-text{
	display: flex;
	align-items: flex-start;
	gap: 0 5px;
	color: #0c744c;
	font-weight: bold;
	font-size: 1.6rem;
	margin: 10px 0 0 0;
}

@media screen and (max-width: 767px) {
	.caution-text {
		font-size: 1.4rem;
	}
}


.caution-text__img{
	width: 20px;
	object-fit: scale-down;
	position: relative;
	top: 4px;
}

.form-input__row {
	display: flex;
	align-items: center;
}

.form-input__row > .append-text {
	margin-left: 0.5em;
}

/*----------------------sp footer----------------------*/

.footer {
	background-color: #031731;
	padding: 20px 0 0 0;
}

.footer__logo {
	width: 50%;
	object-fit: scale-down;
	display: block;
	margin: 0 auto 15px auto;
}

.footer__link {
	display: inline-block;
	font-size: 10px;
	margin: 0 10px;
	color: white;
}


.footer__copy-right{
	color: white;
	text-align: center;
	font-size: 10px;
	margin: 10px 0;
}

/*----------------------ここからPC----------------------*/

@media screen and (min-width: 768px){

	.btn {
		max-width: 600px;
	}

	/*----------------------pc fv----------------------*/

	.fv__inner{
		max-width: 1000px;
		margin: 0 auto;
		background: none;
		position: relative;
	}

	.fv__logo,
	.fv__text1,
	.fv__text2,
	.fv__graph,
	.fv__icons,
	.fv__text3{
		display: none;
	}



	/*----------------------pc logo----------------------*/
	.logo__inner--img{
		max-height: 70px;
	}

	/*----------------------pc case----------------------*/

	.case__title1 {
		font-size: 4rem;
	}

	.case__title2 {
		font-size: 2.5rem;
		font-weight: bold;
	}

	.case__inner{
		display: grid;
		grid-template-columns: 1fr 1fr;
		justify-items: center;
		gap: 20px;
		margin: 50px auto 0 auto;
		max-width: 1000px;
	}    

	@media screen and (min-width: 768px) {
		.reason {
			padding: 130px 0 100px 0;
		}
	}

	.reason__inner{
		max-width: 1000px;
		margin: 0 auto;
	}

	.reason__title{
		font-size: 4rem;
	}

	.reason__item--img-box {
		display: block;
		margin: 0 auto;
	}

	.reason__item{
		margin: 100px 0 0 0;
		display: grid;
		gap: 20px 0;
	}

	.reason__item--headline{
		font-size: 3.6rem;
		font-weight: bold;
		position: absolute;
		top: 0;
		bottom: 15px;
		left: 25%;
		margin: auto;
		height: fit-content;
	}

	.reason__item--img {
		margin: 90px auto 0 auto;
	}

	.reason__item--img1 {
		max-width: 400px;
		object-fit: scale-down;
	}

	.reason__item--text {
		font-size: 2.2rem;
		font-weight: 500;
		line-height: 1.9;
		letter-spacing: 0;
		margin: 0 auto;
	}

	.reason__item--text01 {
		font-size: 2.2rem;
		font-weight: 500;
		line-height: 1.9;
		letter-spacing: 0;
		width: 31em;
		margin: 0 auto;
	}

	.reason__item--text02 {
		margin: 100px auto 0;
	}

	.reason__body {
		max-width: 800px;
		width: 100%;
		margin: 0 auto;
	}

	.reason03__2col {
		display: flex;
		align-items: center;
		width: 800px;
		margin: 80px auto 0;
	}

	.reason03__img-col {
		margin-right: 20px;
	}

	.reason__text {
		font-size: 22px;
		font-weight: 500;
		line-height: 1.9;
		letter-spacing: 0;
	}

	.reason03__images {
		margin: 65px auto 0;
		padding: 0;
		display: flex;
		justify-content: space-between;
	}

	.reason__image--text {
		text-align: center;
		font-size: 0.8vw;
	}

	/*----------------------pc voice----------------------*/

	.voice__title{
		font-size: 4rem;
	}

	.voice__inner{
		max-width: 1000px;
		margin: 0 auto;
		display: grid;
		gap: 15px 0;
	}

	.voice__img{
		width: 100%;
	}

	.voice {
		padding: 90px 0;
	}
	.voice .box {
		width: 992px;
		margin: 75px auto 0;
		padding: 4px;
		background: linear-gradient(165.2deg, #C7A26A 5.11%, #F3CC91 39.57%, #A4824F 91.03%);
	}

	.voice .box > div {
		padding: 29px 19px 32px;
		background: #fff;
	}

	.voice .box .header {
		display: flex;
		justify-content: space-between;
	}

	.voice .box .text {
		width: calc(100% - 140px);
	}

	.voice .box .text h3 {
		margin: 0 0 15px;
		font-size: 27px;
		color: #333;
		line-height: 1.5;
		font-weight: bold;
	}

	.voice .box .text p {
		font-size: 18px;
		color: #333;
		line-height: 2;
	}

	.voice .box .text strong {
		font-weight: bold;
	}

	.voice .box .text .image {
		display: flex;
		align-items: flex-start;
	}
	.voice .box .text .image img{
		width: 190px;
		margin-right: 20px;
	}

	.voice .box .user {
		width: 120px;
	}

	.voice .box .item {
		position: relative;
		margin: 48px 0 0;
		padding: 17px 61px;
		background: #F0F0F0;
	}

	.voice .box .item h4 {
		margin-bottom: 14px;
		font-size: 18px;
		font-weight: bold;
	}

	.voice .box .item h4 span {
		font-weight: normal;
	}

	.voice .box .item .sum {
		position: absolute;
		top: -25px;
		right: 21px;
	}

	/*----------------------pc step----------------------*/

	.step__title {
		padding: 30px 0;
	}

	.step__title--pic{
		max-height: 100px;
		object-fit: scale-down;
	}

	.step__inner{
		max-width: 1000px;
		margin: 0 auto;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 0 20px;
	}

	.step__item--img{
		height: auto;
		object-fit: scale-down;
	}

	/*----------------------pc footer----------------------*/

	.footer {
		background-color: #031731;
		padding: 30px 0!important;
	}

	.footer__logo {
		max-width: 200px;
	}

	.footer__link {
		display: inline-block;
		font-size: 1vw;
		margin: 0 10px;
		color: white;
	}

	.footer__copy-right{
		color: white;
		text-align: center;
		font-size: 10px;
		margin: 10px 0;
	}

}

.case__cv,
.reason__cv {
	margin-top: 100px;
}

.cv__title-wrap {
	text-align: center;
}

.cv__title {
	position: relative;
	font-size: 27px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	display: inline-block;
	padding: 0 50px;
}

.cv__title::before,
.cv__title::after {
	content: "";
	position: absolute;
	display: block;
	width: 0.5px;
	height: 50px;
	background-color: #333;
	bottom: 0;
}

.cv__title::before {
	left: 0;
	transform: rotate(140deg);
}

.cv__title::after {
	right: 0;
	transform: rotate(-140deg);
}

@media only screen and ( max-width: 768px ) {
	.reason__cv {
		margin-top: 3em;
	}
	.cv__title {
		padding: 0 1em;
		font-size: 13.5px;
		margin-top: 0;
	}

	.cv__title::before,
	.cv__title::after {
		height: 25px;
		border: solid 0.5px black;
	}

	.cv__title::before {
		left: -1em;
	}

	.cv__title::after {
		right: -1em;
	}
}


/*----------------------ここまでPC----------------------*/

.inview--typing span {
	opacity: 0
}

.inview--typing span.is-active {
	opacity: 1
}

.inview--fadein {
	transform: translateY(30px);
	opacity: 0;
	transition: 0.7s ease-in-out
}

.inview--fadein.is-active {
	transform: translateY(0);
	opacity: 1
}

.inview--connect_fadein>* {
	opacity: 0;
	transition: 0.7s ease-in-out
}

.inview--connect_fadein>*.is-active {
	opacity: 1
}

@font-face {
	font-weight: normal;
	font-family: raty;
	font-style: normal;
	src: url(./fonts/raty.eot);
	src: url(./fonts/raty.eot?#iefix) format(embedded-opentype);
	src: url(./fonts/raty.svg#raty) format(svg);
	src: url(./fonts/raty.ttf) format(truetype);
	src: url(./fonts/raty.woff) format(woff)
}

.cancel-on-png,
.cancel-off-png,
.star-on-png,
.star-off-png,
.star-half-png {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight: normal;
	font-size: 2em;
	font-family: raty;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	speak: none;
	text-transform: none
}

.cancel-on-png::before {
	content: "\e600"
}

.cancel-off-png::before {
	content: "\e601"
}

.star-on-png::before {
	content: "\f005"
}

.star-off-png::before {
	content: "\f006"
}

.star-half-png::before {
	content: "\f123"
}

.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent
}

.slick-list {
	position: relative;
	display: block;
	margin: 0;
	padding: 0;
	overflow: hidden
}

.slick-list:focus {
	outline: none
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0)
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-right: auto;
	margin-left: auto
}

.slick-track::before,
.slick-track::after {
	display: table;
	content: ""
}

.slick-track::after {
	clear: both
}

.slick-loading .slick-track {
	visibility: hidden
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px
}

[dir="rtl"] .slick-slide {
	float: right
}

.slick-slide img {
	display: block
}

.slick-slide.slick-loading img {
	display: none
}

.slick-slide.dragging img {
	pointer-events: none
}

.slick-initialized .slick-slide {
	display: block
}

.slick-loading .slick-slide {
	visibility: hidden
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent
}

.slick-arrow.slick-hidden {
	display: none
}

.slick-prev,
.slick-next {
	position: absolute;
	top: 50%;
	display: block;
	width: 20px;
	height: 20px;
	padding: 0;
	color: transparent;
	font-size: 0;
	line-height: 0;
	background: transparent;
	border: none;
	outline: none;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	cursor: pointer
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
	color: transparent;
	background: transparent;
	outline: none
}

.slick-prev:hover::before,
.slick-prev:focus::before,
.slick-next:hover::before,
.slick-next:focus::before {
	opacity: 1
}

.slick-prev.slick-disabled::before,
.slick-next.slick-disabled::before {
	opacity: .25
}

.slick-prev::before,
.slick-next::before {
	color: #fff;
	font-size: 20px;
	font-family: "slick";
	line-height: 1;
	opacity: .75;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

.slick-prev {
	left: -25px
}

[dir="rtl"] .slick-prev {
	right: -25px;
	left: auto
}

.slick-prev::before {
	content: "←"
}

[dir="rtl"] .slick-prev::before {
	content: "→"
}

.slick-next {
	right: -25px
}

[dir="rtl"] .slick-next {
	right: auto;
	left: -25px
}

.slick-next::before {
	content: "→"
}

[dir="rtl"] .slick-next::before {
	content: "←"
}

.slick-dotted.slick-slider {
	margin-bottom: 30px
}

.slick-dots {
	position: absolute;
	bottom: -25px;
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	list-style: none
}

.slick-dots li {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer
}

.slick-dots li button {
	display: block;
	width: 20px;
	height: 20px;
	padding: 5px;
	color: transparent;
	font-size: 0;
	line-height: 0;
	background: transparent;
	border: 0;
	outline: none;
	cursor: pointer
}

.slick-dots li button:hover,
.slick-dots li button:focus {
	outline: none
}

.slick-dots li button:hover::before,
.slick-dots li button:focus::before {
	opacity: 1
}

.slick-dots li button::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	color: #000;
	font-size: 6px;
	font-family: "slick";
	line-height: 2;
	text-align: center;
	opacity: .25;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "•"
}

.slick-dots li.slick-active button::before {
	color: #000;
	opacity: .75
}

.slider__img {
	margin: 0 0 15px 0;
}

@keyframes border-flash {
	0% {
		border-color: #f00
	}

	50% {
		border-color: #f00
	}

	51% {
		border-color: #1abc9c;
	}

	100% {
		border-color: #1abc9c;
	}
}

@font-face {
	font-weight: 400;
	font-family: "Noto Sans Japanese";
	font-style: normal;
	src: url("../../assets/font/NotoSansCJKjp-Regular.woff2") format("woff2"), url("../../assets/font/NotoSansCJKjp-Regular.woff") format("woff"), url("../../assets/font/NotoSansCJKjp-Regular.ttf") format("truetype"), url("../../assets/font/NotoSansCJKjp-Regular.eot") format("embedded-opentype");
	font-display: swap
}

@font-face {
	font-weight: 700;
	font-family: "Noto Sans Japanese";
	font-style: normal;
	src: url("../../assets/font/NotoSansCJKjp-Bold.woff2") format("woff2"), url("../../assets/font/NotoSansCJKjp-Bold.woff") format("woff"), url("../../assets/font/NotoSansCJKjp-Bold.ttf") format("truetype"), url("../../assets/font/NotoSansCJKjp-Bold.eot") format("embedded-opentype");
	font-display: swap
}

@font-face {
	font-weight: 400;
	font-family: Futura;
	font-style: normal;
	src: url("../../assets/font/Futura.woff2") format("woff2"), url("../../assets/font/Futura.woff") format("woff"), url("../../assets/font/Futura.ttf") format("truetype"), url("../../assets/font/Futura.eot") format("embedded-opentype");
	font-display: swap
}

* {
	box-sizing: border-box;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased
}

*::before,
*::after {
	box-sizing: border-box
}

html {
	font-size: 62.5%
}

body {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	color: #000;
	font-size: 1.6rem;
	font-family: "Noto Sans Japanese";
	line-height: 1.625;
	word-break: break-word;
	overflow-wrap: break-word;
}

body.home,
body.page-template-form {
	background: #ffde35
}

body.page-template-company-list,
body.page-template-company-detail {
	background: #fafafa
}

body.page-template-store {
	font-family: "メイリオ", Meiryo, sans-serif;
	background: #fff
}

body.is-modal-open {
	height: 100vh;
	overflow-y: hidden
}

@media screen and (max-width: 896px) {
	body {
		font-size: 3.7vw
	}
}

@media (-ms-high-contrast: none),
(-ms-high-contrast: active) {
	body {
		font-family: "メイリオ", Meiryo, sans-serif
	}
}

img {
	max-width: 100%;
	height: auto;
	font-size: 0;
	line-height: 0;
	vertical-align: bottom;
	border: none;
	transition: opacity .2s
}

a {
	color: #000;
	text-decoration: none;
	transition: .2s opacity
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0
}

figure {
	margin: 0
}

iframe {
	display: block;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto
}

button {
	padding: 0;
	font-size: inherit;
	font-family: inherit;
	background: none;
	border: none;
	outline: none
}

.wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh
}

.text-typing span {
	opacity: 0
}

.box-fadeIn {
	transform: translateY(30px);
	opacity: 0;
	transition: 0.7s ease-in-out
}

.connect-fadeIn>* {
	opacity: 0;
	transition: 0.7s ease-in-out
}

.composite_animation>* {
	opacity: 0
}

.composite_animation__connect {
	opacity: 0
}

.composite_animation__connect.active {
	opacity: 1;
	animation: flash 1s linear 1
}

@keyframes flash {
	0% {
		transform: scale(1);
		opacity: 0
	}

	50% {
		transform: scale(1.3)
	}

	100% {
		transform: scale(1);
		opacity: 1
	}
}

.overlap {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 100;
	margin: auto;
	background: url("../img/loading.gif") center no-repeat, #33485e;
	opacity: 0.7
}



input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"] {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 100%;
	height: 70px;
	padding: 0 45px 0 10px;
	color: inherit;
	font-size: 2.4rem;
	font-family: inherit;
	line-height: inherit;
	background: url("../img/icon_valid.svg") no-repeat right 0.4em center/0 #fff;
	background-color: #fff;
	border: 3px #4abfd7 solid;
	border-radius: 5px;
	appearance: none
}

.form-input-wrap textarea {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 100%;
	height: 5em;
	padding: 0 45px 0 10px;
	color: inherit;
	font-size: 2.4rem;
	font-family: inherit;
	line-height: inherit;
	background: url("../img/icon_valid.svg") no-repeat right 0.4em center/0 #fff;
	background-color: #fff;
	border: 3px #1abc9c solid;
	border-radius: 5px;
	appearance: none
}

@media screen and (max-width: 896px) {
	.form-input-wrap textarea {
		font-size: 2rem;
	}
}

#row_model .form-input-wrap {
	display: flex;
	gap: 0 50px;
}

@media screen and (max-width: 896px) {
	#row_model .form-input-wrap {
		display: flex;
		flex-flow: column;
	}
}

.file-wrap {
	padding: 0 15px 0 0;
}

#zip_cd,
#address,
#user_name,
#user_kana,
#tel,
#mail_address {
	border: 3px #1abc9c solid;
	border-radius: 5px;
}

#zip_cd {
	width: 300px;
}

@media screen and (max-width: 896px) {
	#zip_cd {
		padding: 0 0 0 25px;
	}
}


@media screen and (max-width: 896px) {

	input[type="text"],
	input[type="tel"],
	input[type="number"],
	input[type="email"],
	#other_item,
	#other_model {
		height: 13vw;
		padding: 0 8vw 0 2vw;
		font-size: 4.2vw;
		background-position: right 1.2vw center;
		border-width: 3px;
		border-radius: 5px
	}
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
#other_item:focus,
#other_model:focus{
	border-color: #1abc9c;
	outline: none
}

input[type="text"].form-valid,
input[type="tel"].form-valid,
input[type="number"].form-valid,
input[type="email"].form-valid,
#other_item.form-valid,
#other_model.form-valid {
	background-size: 30px auto;
	border-color: #1abc9c
}

@media screen and (max-width: 896px) {

	input[type="text"].form-valid,
	input[type="tel"].form-valid,
	input[type="number"].form-valid,
	input[type="email"].form-valid{
		background-size: 6vw auto;
	}
}

input[type="text"].form-invalid,
input[type="tel"].form-invalid,
input[type="number"].form-invalid,
input[type="email"].form-invalid{
	border-color: #e74c3c
}

input[type="text"][disabled],
input[type="tel"][disabled],
input[type="number"][disabled],
input[type="email"][disabled],
input[type="checkbox"][disabled]+span::before{
	background: #eee;
	border-color: #aaa
}

input[type="text"].yet,
input[type="tel"].yet,
input[type="number"].yet,
input[type="email"].yet,
input[type="checkbox"].yet,
.file-wrap .select-file.yet,
#other_item.yet,
#other_model.yet{
	animation: 1s linear infinite border-flash;
}

select {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 100%;
	height: 70px;
	padding: 0 45px 0 10px;
	color: inherit;
	font-size: 2rem;
	font-family: inherit;
	line-height: inherit;
	background-color: #fff;
	background-image: url("../img/select_bg.png"), url("../img/icon_valid.svg");
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 24px auto, 0;
	border: 4px #1abc9c solid;
	border-radius: 10px;
	appearance: none;
}

#other_item {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 100%;
	height: 70px;
	padding: 0 45px 0 10px;
	color: inherit;
	font-size: 2rem;
	font-family: inherit;
	line-height: inherit;
	background-color: #fff;
	background-image: none;
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 0, 0;
	border: 4px #1abc9c solid;
	border-radius: 10px;
	appearance: none;
}

#model,#weight {
	display: flex;
	align-items: center;
	width: 200px;
	max-width: 200px;
	height: 70px;
	padding: 0 45px 0 10px;
	color: inherit;
	font-size: 2rem;
	font-family: inherit;
	line-height: inherit;
	background-color: #fff;
	background-image: url("../img/icon_valid.svg");
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 0;
	border: 4px #1abc9c solid;
	border-radius: 10px;
	appearance: none
}

#model[disabled] {
	background: #ccc;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

@media screen and (max-width: 896px) {
	#model,#weight {
		width: 60%;
		max-width: 60%;
		height: 13vw;
		border: 3px #1abc9c solid;
		border-radius: 5px;
		font-size: 1.6rem;
		background-position: right 1.2vw center;
    	background-size: 0;
	}
}

@media screen and (max-width: 896px) {
	select,
	#other_item {
		height: 13vw;
		padding: 0 8vw 0 2vw;
		font-size: 1.6rem;
		background-position: right 2vw center, right 1.2vw center;
		background-size: 5vw auto, 0;
		border: 3px #1abc9c solid;
		border-width: 3px;
		border-radius: 5px
	}

	#other_item.form-valid {
		height: 13vw;
		padding: 0 8vw 0 2vw;
		font-size: 1.6rem;
		background-color: #fff;
		background-image: url("../img/icon_valid.svg");
		background-repeat: no-repeat;
		background-position: right 1.2vw center;
		background-size: 6vw auto;
		border: 3px #1abc9c solid;
		border-width: 3px;
		border-radius: 5px
	}
}

#model.form-valid,
#weight.form-valid {
	background-size: 30px auto;
	border-color: #1abc9c;
}

@media screen and (max-width: 896px) {
	#model.form-valid,
	#weight.form-valid {
		height: 13vw;
		padding: 0 8vw 0 2vw;
		font-size: 1.6rem;
		background-position: right 1.2vw center;
		background-size: 6vw auto;
		border: 3px #1abc9c solid;
		border-width: 3px;
		border-radius: 5px
	}
}

select::-ms-expand {
	display: none
}

select:focus {
	outline: none
}

select.form-valid {
	background-size: 0, 30px auto;
	border-color: #1abc9c;
}

@media screen and (max-width: 896px) {
	select.form-valid {
		background-size: 0, 6vw auto;
	}
}

select.form-invalid {
	border-color: #e74c3c
}

select[disabled],
input[disabled] {
	background-color: #eee;
	border-color: #aaa;
	opacity: 1
}

.form-checkbox input.yet+span::before,
select.yet {
	animation: 1s linear infinite border-flash;
}

textarea {
	width: 100%;
	max-width: 100%;
	padding: 10px 45px 10px 10px;
	color: inherit;
	font-size: 2rem;
	font-family: inherit;
	line-height: inherit;
	background: url("../img/icon_valid.svg") no-repeat right 0.4em center/0 #fff;
	border: 4px #1abc9c solid;
	border-radius: 10px;
	appearance: none
}

@media screen and (max-width: 896px) {
	textarea {
		height: 13vw;
		padding: 0 8vw 0 2vw;
		font-size: 4.2vw;
		background-position: right 2vw center, right 1.2vw center;
		background-size: 5vw auto, 0;
		border-width: 3px;
		border-radius: 5px
	}
}

textarea::-ms-expand {
	display: none
}

/* textarea:focus {
	border-color: #f56f00;
	outline: none
} */

textarea.form-valid {
	background-size: 30px auto;
	border-color: #1abc9c
}

@media screen and (max-width: 896px) {
	textarea.form-valid {
		background-size: 6vw auto;
	}
}

textarea.form-invalid {
	border-color: #e74c3c
}

textarea[disabled] {
	background-color: #eee;
	border-color: #aaa;
	opacity: 1
}

.form-radio {
	display: block;
	margin: 0 0 0.7em;
	font-weight: bold;
	cursor: pointer
}

.form-radio:last-child {
	margin-bottom: 0
}

.form-radio span {
	position: relative;
	display: block;
	padding-left: 2em
}

.form-radio span::before {
	position: absolute;
	top: -0.1em;
	left: 0;
	width: 1.7em;
	height: 1.7em;
	background: #fff;
	border: 6px solid #1abc9c;
	border-radius: 50%;
	content: ""
}

.form-radio span::after {
	position: absolute;
	top: 0.4em;
	left: 0.5em;
	width: 0.7em;
	height: 0.7em;
	background: #1abc9c;
	border-radius: 50%;
	opacity: 0;
	content: ""
}

.form-radio span small {
	font-weight: normal;
	font-size: inherit
}

@media screen and (max-width: 896px) {
	.form-radio span small {
		display: block;
		line-height: 1.2
	}
}

.form-radio input {
	display: none
}

.form-radio input:checked+span::after {
	opacity: 1
}

.form-radio input.yet+span::before {
	animation: 1s linear infinite border-flash;
}

.form-checkbox {
	display: block;
	margin: 0 0 0.7em;
	font-weight: bold;
	cursor: pointer
}

.form-checkbox span {
	position: relative;
	display: block;
	padding-left: 2em
}

.form-checkbox span::before {
	position: absolute;
	top: 0.1em;
	left: 0;
	width: 1.5em;
	height: 1.5em;
	background: #fff;
	border: 4px solid #1abc9c;
	border-radius: 4px;
	content: ""
}

.form-checkbox[disabled] span::before {
	border: 4px solid #ccc;
}

.form-checkbox span::after {
	position: absolute;
	top: 0.4em;
	left: 0.5em;
	width: 0.5em;
	height: 0.7em;
	border-right: 4px #1abc9c solid;
	border-bottom: 4px #1abc9c solid;
	transform: rotate(45deg);
	opacity: 0;
	content: ""
}

.form-checkbox[disabled] span::after{
	border: 4px solid #ccc;
}

.form-checkbox span small {
	font-weight: normal;
	font-size: inherit
}

.form-checkbox input {
	display: none
}

.form-checkbox input:checked+span::after {
	opacity: 1
}

.form-input-wrap {
	position: relative
}

.form-group {
	font-size: 2.2rem
}

@media screen and (max-width: 896px) {
	.form-group {
		font-size: 4.5vw
	}
}

.form-group1 {
	display: flex;
	gap: 0 2em;
}

@media screen and (max-width: 896px) {
	.form-group1 {
		display: flex;
		gap: 0 2em;
	}
}

.form-group2 {
	display: flex;
	gap: 0 2em;
}

@media screen and (max-width: 896px) {
	.form-group2 {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
}

.form-group3 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

@media screen and (max-width: 896px) {
	.form-group3 {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
}



.form-error {
	position: absolute;
	bottom: calc(100% + 6px);
	margin: 0;
	padding: 0 0.5em;
	color: #fff;
	font-size: 0.9em;
	line-height: 1.2;
	white-space: nowrap;
	background: #e74c3c;
	border: 2px #c0392b solid;
	border-radius: 4px;
	opacity: 0.85
}

@media screen and (max-width: 896px) {
	.form-error {
		font-size: 0.8em
	}
}

.form-error::before {
	position: absolute;
	top: 100%;
	left: 15px;
	width: 0;
	height: 0;
	border-color: #c0392b transparent transparent transparent;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	content: ""
}

.form-error::after {
	position: absolute;
	top: 100%;
	left: 18px;
	width: 0;
	height: 0;
	border-color: #e74c3c transparent transparent transparent;
	border-style: solid;
	border-width: 7px 7px 0 7px;
	content: ""
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	word-wrap: normal !important;
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%)
}

.container {
	position: relative;
	max-width: 1030px;
	margin: 0 auto;
	padding: 0 15px
}

@media screen and (max-width: 896px) {
	.container {
		padding: 0 5vw
	}
}

.container--wide {
	max-width: 1090px
}

@media screen and (max-width: 896px) {
	.is-pc {
		display: none !important
	}
}

@media screen and (min-width: 897px) {
	.is-sp {
		display: none !important
	}
}

.container::after,
.container-front::after,
.clearfix::after {
	display: table;
	clear: both;
	content: ""
}

.header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100px
}

@media screen and (max-width: 896px) {
	.header__inner {
		justify-content: center;
		height: 21vw
	}
}

.header .header-logo {
	margin: 0;
	font-size: 0
}

@media screen and (min-width: 1025px) {
	.header .header-logo__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.header .header-logo__link:hover {
		opacity: .7
	}

	.header .header-logo__link:hover img {
		opacity: 1
	}
}

.header .header-logo img {
	width: 320px
}

@media screen and (max-width: 896px) {
	.header .header-logo img {
		width: 62vw
	}
}

.header .header__ttl {
	font-size: 1.8rem
}

.header .header__enter img {
	max-width: 200px;
	width: 100%
}

.header .header-btn {
	display: flex;
	align-items: center;
	padding: 0.5em 1em;
	color: #333;
	font-weight: bold;
	font-size: 1.6rem;
	background: #fff;
	border: 1px solid;
	border-radius: 3px
}

@media screen and (min-width: 1025px) {
	.header .header-btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.header .header-btn:hover {
		opacity: .7
	}

	.header .header-btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.header .header-btn {
		font-size: 3vw
	}
}

.header .header-btn img {
	width: 17px;
	margin-right: 10px
}

@media screen and (max-width: 896px) {
	.header .header-btn img {
		width: 3vw;
		margin-right: 1vw
	}
}

@media screen and (min-width: 897px) {
	.header .header-banner {
		display: none
	}
}

@media screen and (max-width: 896px) {
	.header .header-banner {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
		width: 100%;
		visibility: hidden;
		opacity: 0;
		transition: opacity 0.5s, visibility 0.5s
	}

	.header .header-banner.is-scroll {
		visibility: visible;
		opacity: 1
	}
}

.header .header-banner img {
	width: 100%
}

.header .header-nav {
	background: #ffde35
}

.header .header-nav.fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%
}

.header .header-nav__list {
	display: flex;
	align-items: streach;
	justify-content: center;
	margin: 0;
	padding: 6px 0;
	list-style: none
}

@media screen and (max-width: 896px) {
	.header .header-nav__list {
		margin: 0 -5vw;
		padding: 1vw 0
	}
}

.header .header-nav .menu-item {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 5px;
	font-size: 1.4rem;
	text-align: center;
	border-right: 1px solid #7d4503
}

@media screen and (max-width: 896px) {
	.header .header-nav .menu-item {
		padding: 0 1.2vw;
		font-size: 4vw
	}
}

.header .header-nav .menu-item:first-child {
	border-left: 1px solid #7d4503
}

@media screen and (max-width: 896px) {
	.header .header-nav .menu-item:first-child {
		border-left: none
	}
}

@media screen and (max-width: 896px) {
	.header .header-nav .menu-item:last-child {
		border-right: none
	}
}

.header .header-nav .menu-item a {
	flex: 1;
	padding: 8px 0;
	color: #7d4503;
	font-weight: bold;
	text-decoration: none;
	border-radius: 5px;
	transition: background 0.5s
}

@media screen and (min-width: 1025px) {
	.header .header-nav .menu-item a:hover {
		background: #fff
	}
}

.header .header-nav .menu-item.menu-2line a {
	line-height: 1
}

.header .header-nav .menu-item.conversion a {
	color: #fff;
	background-color: #ff8900
}

@media screen and (min-width: 1025px) {
	.header .header-nav .menu-item.conversion a:hover {
		color: #7d4503;
		background: #fff
	}
}

.header--has-nav {
	background: #fff
}

.header--has-nav .header__inner {
	height: 75px
}

@media screen and (max-width: 896px) {
	.header--has-nav .header__inner {
		justify-content: space-between;
		height: 15vw
	}
}

.header--has-nav .header-logo img {
	width: 220px
}

@media screen and (max-width: 896px) {
	.header--has-nav .header-logo img {
		width: 42vw
	}
}

.footer {
	margin-top: auto;
	padding: 25px 0 40px;
	text-align: center
}

@media screen and (max-width: 896px) {
	.footer {
		padding: 5vw 0 3vw
	}
}

.footer-logo {
	margin-bottom: 25px
}

@media screen and (max-width: 896px) {
	.footer-logo {
		margin-bottom: 5vw
	}
}

@media screen and (min-width: 1025px) {
	.footer-logo__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.footer-logo__link:hover {
		opacity: .7
	}

	.footer-logo__link:hover img {
		opacity: 1
	}
}

.footer-logo__link img {
	width: 320px
}

@media screen and (max-width: 896px) {
	.footer-logo__link img {
		width: 62vw
	}
}

.footer-nav {
	margin-bottom: 25px
}

@media screen and (max-width: 896px) {
	.footer-nav {
		margin: 0 -5vw 3vw
	}
}

.footer-nav__list {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 0;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.footer-nav__list {
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: 3vw;
		text-align: left;
		border-top: 1px solid #000
	}
}

.footer-nav__list .menu-item {
	margin: 0 1.5em 0.5em
}

@media screen and (max-width: 896px) {
	.footer-nav__list .menu-item {
		width: 50%;
		margin: 0;
		list-style: none;
		background: #fff;
		border-bottom: 1px solid #000
	}

	.footer-nav__list .menu-item:nth-child(odd) {
		border-right: 1px solid #000
	}
}

@media screen and (max-width: 896px) {
	.footer-nav__list .menu-item a {
		position: relative;
		display: flex;
		align-items: center;
		height: 100%;
		padding: 1em 25px 1em 1em
	}

	.footer-nav__list .menu-item a::after {
		position: absolute;
		top: 50%;
		right: 15px;
		width: 10px;
		height: 10px;
		margin-top: -5px;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		transform: rotate(45deg);
		content: ""
	}
}

.footer-nav__list a:hover {
	text-decoration: underline
}

.footer-credit {
	margin: 0;
	font-size: 1.2rem
}

@media screen and (max-width: 896px) {
	.footer-credit {
		font-size: 2.6vw
	}
}

.sidebar {
	width: 250px;
	margin-left: 30px
}

@media screen and (max-width: 896px) {
	.sidebar {
		width: 100%;
		margin: 10vw 0 0
	}

	body.page-template-company-list .sidebar {
		margin: 0 0 10vw
	}
}

.sidebar-inner {
	position: -webkit-sticky;
	position: sticky;
	top: 65px;
	z-index: 1;
	margin-bottom: 0;
	padding: 15px;
	background: #fff;
	border-radius: 3px;
	box-shadow: 0 0 3px #ccc
}

.sidebar-widget:not(:last-child) {
	margin-bottom: 30px
}

@media screen and (max-width: 896px) {
	.sidebar-widget:not(:last-child) {
		margin-bottom: 10vw
	}
}

.sidebar-widget__ttl {
	margin: 0 0 1em;
	padding: 0.5em;
	font-size: 1.6rem;
	color: #7d4503;
	background: #ffde35
}

.sidebar-widget>img {
	width: 100%
}

.sidebar-widget .textwidget>*:first-child {
	margin-top: 0 !important
}

.sidebar-widget .textwidget>*:last-child {
	margin-bottom: 0 !important
}

.sidebar-widget .textwidget p {
	margin: 0 0 1em
}

.sidebar-widget>ul {
	padding: 0
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal {
	margin-left: 0
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal .cat-post-item {
	margin: 0;
	padding: 0.3em 0
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal .cat-post-item>div {
	margin: 0
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal .cat-post-item:not(:last-child) {
	border-bottom: 1px dashed #ccc
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal .category-post__row {
	display: flex
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal .category-post__row .cat-post-thumbnail {
	flex: 1
}

.sidebar-widget>ul#category-posts-2-internal.category-posts-internal .category-post__row .cat-post-title {
	flex: 2;
	font-size: 1.3rem
}

.sidebar-widget>ul li {
	font-size: 1.4rem
}

.sidebar-search {
	margin-bottom: 30px
}

.sidebar-search__result {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px
}

.sidebar-search__result-ttl {
	margin: 0;
	font-size: 2rem
}

.sidebar-search__result-ttl span {
	margin-right: 0.2em;
	color: #ffde35;
	font-weight: bold;
	font-size: 1.3em
}

.sidebar-search__result-all {
	margin: 0;
	padding: 0.1em 1em;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 1.4;
	text-align: center;
	border: 1px solid #ffde35;
	border-radius: 8px
}

.sidebar-search__result-all span {
	font-size: 1.2em
}

.sidebar-search__form {
	padding: 30px 15px 15px
}

@media screen and (max-width: 896px) {
	.sidebar-search__form {
		display: none
	}
}

.sidebar-search__inner {
	border: 1px solid #ccc;
	border-radius: 4px
}

.sidebar-search__ttl {
	margin: 0;
	padding: 0.2em 0;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	background: #ffde35
}

@media screen and (min-width: 897px) {
	.sidebar-search__ttl {
		pointer-events: none
	}
}

.sidebar-search__btn {
	display: block;
	width: 100%;
	margin-bottom: 10px;
	padding: 0.3em 0;
	color: #616774;
	font-weight: bold;
	font-size: 1.4rem;
	text-align: center;
	text-decoration: none;
	background: #fafafa;
	border: 1px solid #ccc;
	border-radius: 3px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1)
}

@media screen and (min-width: 1025px) {
	.sidebar-search__btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.sidebar-search__btn:hover {
		opacity: .7
	}

	.sidebar-search__btn:hover img {
		opacity: 1
	}
}

.sidebar-search__pref-btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 10px;
	padding: 0.3em 1.5em 0.3em 1em;
	color: #616774;
	font-weight: bold;
	font-size: 1.4rem;
	text-align: center;
	text-decoration: none;
	background: #fafafa;
	border: 1px solid #ccc;
	border-radius: 3px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1)
}

@media screen and (min-width: 1025px) {
	.sidebar-search__pref-btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.sidebar-search__pref-btn:hover {
		opacity: .7
	}

	.sidebar-search__pref-btn:hover img {
		opacity: 1
	}
}

.sidebar-search__pref-btn::after {
	position: absolute;
	top: 0.7em;
	right: 0.5em;
	width: 0.6em;
	height: 0.6em;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	transform: rotate(45deg);
	content: ""
}

.sidebar-search__pref-btn.is-open::after {
	top: 1em;
	transform: rotate(-135deg)
}

.sidebar-search__pref-btn span {
	font-weight: normal;
	font-size: 0.8em
}

.sidebar-search__subttl {
	margin: 1em 0 0.5em;
	font-size: 1.4rem
}

.sidebar-search__city {
	display: none
}

.sidebar-search__city-list,
.sidebar-search__category,
.sidebar-search__amount {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	font-size: 1.3rem;
	list-style: none
}

.sidebar-search__city-item,
.sidebar-search__category-item,
.sidebar-search__amount-item {
	min-width: 50%;
	margin-bottom: 0.5em;
	cursor: pointer
}

.sidebar-search__category-item {
	width: 100%
}

.sidebar-search__amount-item {
	width: 100%
}

.sidebar-search__city-link,
.sidebar-search__category-link,
.sidebar-search__amount-link {
	color: #0089fc;
	font-weight: bold;
	font-size: 1.3rem
}

@media screen and (min-width: 1025px) {

	.sidebar-search__city-link,
	.sidebar-search__category-link,
	.sidebar-search__amount-link {
		cursor: pointer;
		transition: .2s opacity
	}

	.sidebar-search__city-link:hover,
	.sidebar-search__category-link:hover,
	.sidebar-search__amount-link:hover {
		opacity: .7
	}

	.sidebar-search__city-link:hover img,
	.sidebar-search__category-link:hover img,
	.sidebar-search__amount-link:hover img {
		opacity: 1
	}
}

.sidebar-search__submit {
	display: block;
	width: 80%;
	margin: 20px auto 0;
	padding: 0.3em 0;
	color: #616774;
	font-size: 1.4rem;
	background: transparent;
	border: 1px solid #616774;
	border-radius: 100px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
	appearance: none
}

@media screen and (min-width: 1025px) {
	.sidebar-search__submit {
		cursor: pointer;
		transition: .2s opacity
	}

	.sidebar-search__submit:hover {
		opacity: .7
	}

	.sidebar-search__submit:hover img {
		opacity: 1
	}
}

.sidebar-banner {
	display: block;
	margin-top: 30px
}

@media screen and (min-width: 1025px) {
	.sidebar-banner {
		cursor: pointer;
		transition: .2s opacity
	}

	.sidebar-banner:hover {
		opacity: .7
	}

	.sidebar-banner:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.sidebar-banner {
		display: none
	}
}

.sidebar-thumb-item {
	list-style: none
}

.sidebar-thumb-item:not(:last-child) {
	border-bottom: 1px dashed #ccc
}

.sidebar-thumb-item__link {
	display: flex;
	padding: 10px 0
}

@media screen and (min-width: 1025px) {
	.sidebar-thumb-item__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.sidebar-thumb-item__link:hover {
		opacity: .7
	}

	.sidebar-thumb-item__link:hover img {
		opacity: 1
	}
}

.sidebar-thumb-item__img {
	width: 30%
}

.sidebar-thumb-item__text {
	position: relative;
	width: 68%;
	margin-left: 2%;
	font-size: 1.4rem
}

.sidebar-thumb-item__views {
	position: absolute;
	right: 0;
	bottom: 0;
	color: #666;
	font-size: 1.2rem
}

.contents {
	padding-bottom: 60px
}

.contents.fixed {
	padding-top: 50px
}

@media screen and (max-width: 896px) {
	.contents {
		padding-bottom: 10vw
	}
}

.main {
	flex: 1;
	margin: 0 auto
}

body.single .main {
	padding: 20px 40px;
	background: #fff;
	border: 1px solid #ffde35;
	border-radius: 20px
}

@media screen and (max-width: 896px) {
	body.single .main {
		padding: 5vw
	}
}

body.page-template-company-detail .main {
	max-width: 1000px
}

.contents-inner {
	display: flex
}

@media screen and (max-width: 896px) {
	.contents-inner {
		flex-flow: column
	}

	body.page-template-company-list .contents-inner {
		flex-flow: column-reverse
	}
}

.breadcrumb {
	margin: 0 auto;
	padding: 1.5em 0;
	color: #616774;
	font-size: 1.2rem
}

body.page-template-company-detail .breadcrumb {
	max-width: 1000px
}

@media screen and (max-width: 896px) {
	.breadcrumb {
		font-size: 3.5vw
	}
}

.breadcrumb a {
	color: inherit;
	font-weight: bold;
	text-decoration: underline
}

@media screen and (min-width: 1025px) {
	.breadcrumb a {
		cursor: pointer;
		transition: .2s opacity
	}

	.breadcrumb a:hover {
		opacity: .7
	}

	.breadcrumb a:hover img {
		opacity: 1
	}
}

.page-ttl {
	margin: 0 0 2em;
	padding-top: 2em;
	font-size: 2.6rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.page-ttl {
		font-size: 6vw
	}
}

.popup {
	position: fixed;
	right: 3vw;
	bottom: 3vh;
	z-index: 9;
	display: none;
	max-width: 320px
}

@media screen and (max-width: 896px) {
	.popup {
		position: fixed;
		z-index: 10;
		right: 0;
		bottom: 0;
		display: none;
		max-width: 100%
	}
}

.popup__close {
	position: absolute;
	top: -20px;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	cursor: pointer
}

.nav-links {
	display: flex;
	justify-content: center;
	margin: 1em 0;
	padding: 0;
	list-style: none
}

.nav-links .page-numbers {
	padding: 0.5em 1em;
	font-size: 1.6rem;
	background: #fff
}

.nav-links .page-numbers:not(:last-child) {
	margin-right: 1em
}

.nav-links .page-numbers.current {
	background: #ffde35
}

.nav-links .page-numbers:hover {
	background: #ffde35
}

@media screen and (max-width: 896px) {
	.nav-links .page-numbers {
		font-size: 3.2vw
	}
}
/*
.modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -99;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
	opacity: 0;
	transition: all 0.3s linear
}

.modal.is-active {
	z-index: 99;
	opacity: 1
}

.modal__cnt {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	max-width: 500px;
	transform: translate(-50%, -50%);
	overflow-y: scroll
}

@media screen and (max-width: 896px) {
	.modal__cnt {
		width: 90%
	}
}

.modal__title {
	margin: 0 0 0.5em;
	padding: 0 0 0.4em;
	color: #265d10;
	font-weight: bold;
	font-size: 2rem;
	border-bottom: 1px solid #265d10
}

@media screen and (max-width: 896px) {
	.modal__title {
		font-size: 4.8vw
	}
}

.modal__close {
	position: absolute;
	top: -15px;
	right: 0;
	padding: 0.5em;
	color: #fff;
	line-height: 1;
	background: #ccc;
	border-radius: 100px;
	cursor: pointer
}

.modal__pic {
	cursor: pointer
}

.modal__row {
	display: flex
}

.modal-add {
	padding: 30px;
	background: #fff;
	border-radius: 10px
}

.modal-add__sentence {
	display: flex;
	align-items: flex-start;
	justify-content: space-between
}

.modal-add__talker {
	width: 15%
}

@media screen and (max-width: 896px) {
	.modal-add__talker {
		width: 20%
	}
}

.modal-add__talker-txt {
	position: relative;
	width: 80%;
	padding: 0.5em 1em;
	font-size: 1.5rem;
	background: #eee;
	border-radius: 10px
}

.modal-add__talker-txt::after {
	position: absolute;
	top: 15px;
	left: -10px;
	border-top: 10px solid #eee;
	border-right: 10px solid #eee;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
	transform: skew(30deg);
	content: ""
}

@media screen and (max-width: 896px) {
	.modal-add__talker-txt {
		width: 72%;
		margin-top: 0;
		font-size: 3.733vw
	}
}

.modal-add__txt {
	margin: 0 0 0.5em;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.modal-add__txt {
		font-size: 3.733vw
	}
}

.modal-add__ankert {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #ccc
}

.modal-add__label {
	display: block;
	width: 50%;
	padding: 0.5em 0;
	font-size: 1.4rem;
	border-bottom: 1px solid #ccc
}

.modal-add__label:nth-child(even) {
	border-right: 1px solid #ccc
}

.modal-add__label:last-child {
	border-bottom: 0
}

@media screen and (max-width: 896px) {
	.modal-add__label {
		width: 100%;
		padding: 0.3em 0;
		font-size: 3.733vw
	}

	.modal-add__label:nth-child(even) {
		border-right: 0
	}

	.modal-add__label:nth-last-child(2) {
		border-bottom: 1px solid #ccc
	}
}

.modal-add__error {
	display: none;
	margin-bottom: 5px;
	color: #c0392b;
	font-weight: bold;
	font-size: 1.2rem
}

.modal-add__btn-add {
	width: 50%;
	margin-top: 1em;
	padding: 0.5em 0;
	color: #265d10;
	border: 1px solid #265d10;
	border-radius: 100px;
	cursor: pointer
}

@media screen and (min-width: 1025px) {
	.modal-add__btn-add {
		cursor: pointer;
		transition: .2s opacity
	}

	.modal-add__btn-add:hover {
		opacity: .7
	}

	.modal-add__btn-add:hover img {
		opacity: 1
	}
}

.modal-add__btn-stop {
	width: 49%;
	margin-top: 1em;
	margin-left: 1%;
	padding: 0.5em 0;
	color: #ddd;
	border: 1px solid #ccc;
	border-radius: 100px;
	cursor: pointer
}

@media screen and (min-width: 1025px) {
	.modal-add__btn-stop {
		cursor: pointer;
		transition: .2s opacity
	}

	.modal-add__btn-stop:hover {
		opacity: .7
	}

	.modal-add__btn-stop:hover img {
		opacity: 1
	}
}

.modal-add__att {
	font-size: 85%;
	color: #c0392b
}

.modal-ankert {
	padding: 30px;
	background: #fff;
	border-radius: 10px;
	display: none
}

.modal-ankert__sentence {
	display: flex;
	align-items: flex-start;
	justify-content: space-between
}

.modal-ankert__talker {
	width: 15%
}

@media screen and (max-width: 896px) {
	.modal-ankert__talker {
		width: 20%
	}
}

.modal-ankert__talker-txt {
	position: relative;
	width: 80%;
	padding: 0.5em 1em;
	font-size: 1.5rem;
	background: #eee;
	border-radius: 10px
}

.modal-ankert__talker-txt::after {
	position: absolute;
	top: 15px;
	left: -10px;
	border-top: 10px solid #eee;
	border-right: 10px solid #eee;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
	transform: skew(30deg);
	content: ""
}

@media screen and (max-width: 896px) {
	.modal-ankert__talker-txt {
		width: 72%;
		margin-top: 0;
		font-size: 3.733vw
	}
}

.modal-ankert__txt {
	margin: 0 0 0.5em;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.modal-ankert__txt {
		font-size: 3.733vw
	}
}

.modal-ankert__ankert {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #ccc
}

.modal-ankert__label {
	display: block;
	width: 50%;
	padding: 0.5em 0;
	font-size: 1.4rem;
	border-bottom: 1px solid #ccc
}

.modal-ankert__label:nth-child(even) {
	border-right: 1px solid #ccc
}

.modal-ankert__label:last-child {
	border-bottom: 0
}

@media screen and (max-width: 896px) {
	.modal-ankert__label {
		width: 100%;
		padding: 0.3em 0;
		font-size: 3.733vw
	}

	.modal-ankert__label:nth-child(even) {
		border-right: 0
	}

	.modal-ankert__label:nth-last-child(2) {
		border-bottom: 1px solid #ccc
	}
}

.modal-ankert__board {
	margin: 0;
	line-height: 30px;
	height: 30px;
	font-size: 1.3rem
}

@media screen and (max-width: 896px) {
	.modal-ankert__board {
		font-size: 3.2vw
	}
}

.modal-ankert__submit {
	width: 100%;
	padding: 0.5em 0;
	color: #265d10;
	border: 1px solid #265d10;
	border-radius: 100px;
	cursor: pointer
}

@media screen and (min-width: 1025px) {
	.modal-ankert__submit {
		cursor: pointer;
		transition: .2s opacity
	}

	.modal-ankert__submit:hover {
		opacity: .7
	}

	.modal-ankert__submit:hover img {
		opacity: 1
	}
}

.modal-ankert__error {
	display: none;
	margin-bottom: 5px;
	color: #c0392b;
	font-weight: bold;
	font-size: 1.2rem
}*/

.entry-content>:first-child {
	margin-top: 0 !important
}

.entry-content>:last-child {
	margin-bottom: 0 !important
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	margin-top: 2em;
	margin-bottom: 1em;
	line-height: 1.4
}

.entry-content h1 {
	font-size: 3rem
}

@media screen and (max-width: 896px) {
	.entry-content h1 {
		font-size: 5.4vw
	}
}

.entry-content h2 {
	font-size: 2.5rem
}

.entry-content h2:not(.is-style-none) {
	padding: 0.6em 0;
	border-top: 2px solid #ffde35;
	border-bottom: 2px solid #ffde35
}

@media screen and (max-width: 896px) {
	.entry-content h2 {
		font-size: 4.8vw
	}
}

.entry-content h3 {
	font-size: 2.4rem
}

.entry-content h3:not(.is-style-none) {
	padding: 0.1em 0 0.1em 0.5em;
	border-left: 0.3em solid #ffde35
}

@media screen and (max-width: 896px) {
	.entry-content h3 {
		font-size: 4.3vw
	}
}

.entry-content h4 {
	font-size: 2rem
}

.entry-content h4:not(.is-style-none) {
	padding-bottom: 0.5em;
	border-bottom: 1px solid #616774
}

@media screen and (max-width: 896px) {
	.entry-content h4 {
		font-size: 4.3vw
	}
}

.entry-content h5,
.entry-content h6 {
	font-size: 1.6rem
}

@media screen and (max-width: 896px) {

	.entry-content h5,
	.entry-content h6 {
		font-size: 3.7vw
	}
}

.entry-content p {
	margin: 0 0 1em
}

.entry-content a {
	color: #4abfd7;
	text-decoration: underline
}

@media screen and (min-width: 1025px) {
	.entry-content a:hover {
		text-decoration: none
	}
}

.entry-content ul,
.entry-content ul ul {
	list-style: disc outside
}

.entry-content ol,
.entry-content ol ol {
	list-style: decimal outside
}

.entry-content ul,
.entry-content ol {
	margin: 0 0 2em;
	padding-left: 1.5em
}

.entry-content ul li:not(:last-child),
.entry-content ol li:not(:last-child) {
	margin-bottom: 0.3em
}

.entry-content ul li ul,
.entry-content ul li ol,
.entry-content ol li ul,
.entry-content ol li ol {
	margin-left: 0
}

.entry-content .has-sm-font-size {
	font-size: 0.8125em
}

.entry-content .has-md-font-size {
	font-size: 1.25em
}

.entry-content .has-lg-font-size {
	font-size: 1.5em
}

.entry-content .has-theme-color {
	color: #ffde35 !important
}

.entry-content .has-link-color {
	color: #4abfd7 !important
}

.entry-content .has-orange-color {
	color: #f56f00 !important
}

.entry-content .has-white-color {
	color: #fff !important
}

.entry-content .has-black-color {
	color: #000 !important
}

.entry-content .has-theme-background-color {
	background-color: #ffde35 !important
}

.entry-content .has-link-background-color {
	background-color: #4abfd7 !important
}

.entry-content .has-orange-background-color {
	background-color: #f56f00 !important
}

.entry-content .has-white-background-color {
	background-color: #fff !important
}

.entry-content .has-black-background-color {
	background-color: #000 !important
}

.wp-block-buttons {
	margin-bottom: 2em
}

.wp-block-buttons .wp-block-button__link {
	position: relative;
	padding: 0.6em 2.5em 0.6em 1em;
	color: #fff;
	font-weight: bold;
	font-size: 2.4rem;
	text-decoration: none;
	background: url("../img/btn_arrow.svg") no-repeat right 1em center/1em #f56f00;
	border: 2px solid;
	box-shadow: 0 4px #000
}

.wp-block-buttons .wp-block-button__link:hover {
	top: 2px;
	box-shadow: 0 2px #000
}

@media screen and (max-width: 896px) {
	.wp-block-buttons .wp-block-button__link {
		font-size: 5.2vw;
		border-width: 2px
	}
}

.wp-block-group {
	margin-bottom: 32px
}

.wp-block-group>.wp-block-group__inner-container>* {
	color: #000
}

.wp-block-group>.wp-block-group__inner-container>*:first-child {
	margin-top: 0
}

.wp-block-group>.wp-block-group__inner-container>*:last-child {
	margin-bottom: 0
}

.wp-block-group.has-background {
	padding: 2em
}

@media screen and (max-width: 896px) {
	.wp-block-group.has-background {
		padding: 1.5em
	}
}

.wp-block-group.is-style-slim {
	max-width: 600px;
	margin-right: auto;
	margin-left: auto
}

.wp-block-spacer {
	margin-bottom: 0 !important
}

.wp-block-table {
	margin-bottom: 2em
}

.wp-block-table th,
.wp-block-table td {
	padding: 0.5em;
	border: 1px solid #000
}

.wp-block-table th {
	background: #f8efbf
}

.cv-form {
	padding: 70px 0 130px;
	background: #0c744c;
}

@media screen and (max-width: 896px) {
	.cv-form {
		padding: 10vw 0 10vw
	}
}

.cv-form__ttl {
	margin: 0 0 1.9em;
	font-size: 4.2rem;
	font-weight: bold;
	text-align: center;
	color: white;
}

@media screen and (max-width: 896px) {
	.cv-form__ttl {
		font-size: 5vw;
	}
}

.cv-form__ttl span {
	position: relative;
	display: inline-block;
	margin-bottom: 0.3em;
	padding: 0 0.8em;
	font-size: 1.1em
}

.cv-form__ttl span::before,
.cv-form__ttl span::after {
	position: absolute;
	top: 50%;
	width: 0.15em;
	height: 1em;
	background: white;
	border-radius: 10px;
	content: ""
}

.cv-form__ttl span::before {
	left: 0;
	transform: translateY(-50%) rotate(-30deg)
}

.cv-form__ttl span::after {
	right: 0;
	transform: translateY(-50%) rotate(30deg)
}

.cv-form__ttl em {
	display: inline-block;
	width: 4.5em;
	margin-right: 0.3em;
	color: #fff;
	font-size: 1.15em;
	font-style: normal;
	line-height: 1.5;
	background: #f56f00;
}

.cv-form__cnt {
	margin: 0 0 65px;
	background: #f0f6da;
	border-top: 4px solid #000;
	border-bottom: 4px solid #000
}

@media screen and (max-width: 896px) {
	.cv-form__cnt {
		margin: 0 -5vw 10vw
	}
}

.cv-form__row {
	display: flex;
	width: 100%;
	overflow: visible!important;
}

@media screen and (max-width: 896px) {
	.cv-form__row {
		display: block
	}

	.cv-form__row#row_remarks {
		margin: 0 -5vw;
		width: auto;
	}
}

.cv-form__row:not(:last-child) {
	border-bottom: 1px solid #000
}

@media screen and (max-width: 896px) {
	.cv-form__row:not(:last-child) {
		border-bottom-width: 4px
	}
}

.cv-form__row-ttl {
	position: relative;
	width: 320px;
	padding: 25px 90px 25px 30px;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.3;
	background: #fff;
	border-right: 1px solid #000
}

@media screen and (max-width: 896px) {
	.cv-form__row-ttl {
		display: block;
		width: 100%;
		padding: 0.4em 0;
		font-size: 4.8vw;
		text-align: center;
		border-right: none;
		border-bottom: 1px solid #000
	}
}

.cv-form__row-ttl .required,
.cv-form__row-ttl .any {
	position: absolute;
	top: 25px;
	right: 25px;
	padding: 0 0.4em;
	color: #fff;
	font-weight: normal;
	font-size: 0.9em;
	line-height: 1.4;
	border-radius: 100px
}

@media screen and (max-width: 896px) {

	.cv-form__row-ttl .required,
	.cv-form__row-ttl .any {
		position: absolute;
		top: 50%;
		right: 4vw;
		transform: translateY(-50%)
	}
}

.cv-form__row-ttl .required {
	background: #f56f00
}

.cv-form__row-ttl .any {
	background: #666
}

.cv-form__row-cnt {
	position: relative;
	background: #f0f6da;
	flex: 1;
	align-self: center;
	margin: 0;
	padding: 25px 40px 25px 30px
}

.cv-form__name-row {
	display: flex;
	align-items: center;
	margin-bottom: 1em;
}

.cv-form-username__ttl {
	width: 5em;
}

.cv-form__name-row:last-child {
	margin-bottom: 0;
}

.cv-form__name-row .form-input-wrap {
	width: calc( 100% - 5em );
}

@media screen and (max-width: 896px) {
	.cv-form__row-cnt {
		display: block;
		padding: 4vw
	}
}

@media screen and (max-width: 896px) {
	.lense_disabled{
		display: none;
	}
}

.lense_disabled{
	display: none;
}

@media screen and (max-width: 896px) {
	.other_item_disabled{
		display: none!important;
	}
}

.other_item_disabled{
	display: none!important;
}

@media screen and (max-width: 896px) {
	.other_item_disabled{
		display: none!important;
	}
}

.other_item_disabled{
	display: none!important;
}

.cv-form__caption {
	margin: 0 0 1em;
	font-size: 2.2rem
}

@media screen and (max-width: 896px) {
	.cv-form__caption {
		font-size: 4.4vw
	}
}

.cv-form__caption--has-icon-lock,
.cv-form__caption--has-icon-hand {
	margin: 1em 0 0;
	padding-left: 1.5em;
	font-size: 2rem
}

@media screen and (max-width: 896px) {

	.cv-form__caption--has-icon-lock,
	.cv-form__caption--has-icon-hand {
		font-size: 4.2vw
	}
}

.cv-form__caption--has-icon-lock {
	background: url("../img/top/form_icon_lock.svg") no-repeat left top 0.1em/1em
}

.cv-form__caption--has-icon-hand {
	background: url("../img/top/form_icon_hand.svg") no-repeat left top 0.2em/1.3em
}

.row_item_checkbox_wrapper{
	margin: 1em 0 0 0;
	display: flex;
	align-items: center;
	gap: 0 0.4em;
	font-weight: bold;
}

.row_model_checkbox_wrapper{
	margin: 0;
}

@media screen and (max-width: 896px) {
	.row_item_checkbox_wrapper{
		margin: 10px 0 0 0;
		display: flex;
		align-items: center;
		gap: 0 15px;
		font-weight: bold;
	}
}

.row_item_checkbox {
	font-size: 18px;
	display: block;
	height: fit-content;
}

@media screen and (max-width: 896px) {
	.row_item_checkbox {
		font-size: 18px;
		display: block;
		height: fit-content;
	}   
}

.row_item_checkbox:hover{
	cursor: pointer;
}

@media screen and (max-width: 896px) {
	.row_item_checkbox:hover{
		cursor: pointer;
	}
}

.row_item_checkbox input {
	display: none;
}

@media screen and (max-width: 896px) {
	.row_item_checkbox input {
		display: none;
	}
}

.row_item_checkbox .dummy_checkbox {
  width: 25px;
  height: 25px;
  border: 3px solid #1abc9c;
  border-radius: 15%;
  background-color: white;
  display: inline-flex;
  vertical-align: text-top;
  position: relative;
}

@media screen and (max-width: 896px) {
	.row_item_checkbox .dummy_checkbox {
	  width: 25px;
	  height: 25px;
	  border: 3px solid #1abc9c;
	  border-radius: 15%;
	  background-color: white;
	  display: inline-flex;
	  vertical-align: text-top;
	  position: relative;
	}
}

.row_item_checkbox input:checked+.dummy_checkbox:after {
  content: '';
  width: 80%;
  height: 50%;
  border-left: 4px solid #1abc9c;
  border-bottom: 4px solid #1abc9c;
  transform: rotate(-45deg);
  position: absolute;
  top: 3px;
  left: 2px;
}

@media screen and (max-width: 896px) {
	.row_item_checkbox input:checked+.dummy_checkbox:after {
	  content: '';
	  width: 80%;
	  height: 50%;
	  border-left: 4px solid #1abc9c;
	  border-bottom: 4px solid #1abc9c;
	  transform: rotate(-45deg);
	  position: absolute;
	  top: 3px;
	  left: 2px;
	}
}
	
.cv-form-cat .form-radio {
	display: inline-block;
	width: 9.5em
}

.cv-form-cat .form-radio:nth-last-child(2) {
	margin-bottom: 0
}

.cv-form-amount-other {
	position: relative;
	margin-top: 20px
}

.cv-form-amount-other input {
	font-size: 2rem
}

.cv-form-visit {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between
}

.cv-form-visit:last-child {
	margin-top: 20px
}

.cv-form-visit__ttl {
	width: 115px;
	font-weight: bold;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.cv-form-visit__ttl {
		width: 100%;
		font-size: 4.8vw
	}
}

.cv-form-visit__day {
	position: relative;
	width: 240px
}

@media screen and (max-width: 896px) {
	.cv-form-visit__day {
		width: 48%
	}
}

.cv-form-visit__time {
	position: relative;
	width: calc(100% - 370px);
	margin-left: auto
}

.cv-form-visit__time select {
	font-size: 1.8rem
}

@media screen and (max-width: 896px) {
	.cv-form-visit__time select {
		font-size: 3.2vw
	}
}

@media screen and (max-width: 896px) {
	.cv-form-visit__time {
		width: 48%
	}
}

.cv-form-visit .form-checkbox {
	margin: 15px 0 14px 115px;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.cv-form-visit .form-checkbox {
		margin: 1em 0;
		font-size: 4.5vw
	}
}

.cv-form-address {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between
}

.cv-form-address:not(:first-child) {
	margin-top: 20px
}

.cv-form-address__ttl {
	width: 150px;
	font-weight: bold;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.cv-form-address__ttl {
		width: 100%;
		font-size: 4.8vw
	}
}

.cv-form-address__mark {
	width: 30px;
	font-weight: bold;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.cv-form-address__mark {
		position: relative;
		z-index: 1;
		width: 8vw;
		margin: 0;
		font-size: 4.8vw;
		text-align: center
	}
}

.cv-form-address__zip {
	position: relative;
	margin-right: auto;
}

@media screen and (max-width: 1024px) {
	.cv-form-address__zip {
		width: calc(100% - 150px);
		margin-right: 0
	}
}

@media screen and (max-width: 896px) {
	.cv-form-address__zip {
		width: 48%;
		margin: 0 auto 0 -8vw
	}

	.cv-form-address__zip input {
		padding-left: 6vw
	}
}

.cv-form-address__address-list {
	position: absolute;
	top: 100%;
	z-index: 1;
	display: none;
	min-width: 100%;
	margin: 3px 0 0;
	padding: 0;
	white-space: nowrap;
	list-style: none;
	background: #fff;
	border: 1px solid #4abfd7
}

.cv-form-address__address-list li {
	padding: 0.5em;
	cursor: pointer
}

.cv-form-address__address-list li:not(:last-child) {
	border-bottom: 1px solid #4abfd7
}

.cv-form-address__address-list li:hover {
	background: #e4f5f9
}

.cv-form-address__label {
	display: none;
	width: 100%;
	margin: 20px 0 0 30px;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.cv-form-address__label {
		margin: 1em 0 0 0;
		font-size: 4.5vw
	}
}

.cv-form-address__find,
.cv-form-address__back {
	font-size: 1.8rem;
	text-decoration: underline
}

@media screen and (max-width: 896px) {

	.cv-form-address__find,
	.cv-form-address__back {
		font-size: 3.6vw
	}
}

@media screen and (max-width: 1024px) {
	.cv-form-address__find {
		margin: 1em 0 0 150px
	}
}

@media screen and (max-width: 896px) {
	.cv-form-address__find {
		margin: 0
	}
}

.cv-form-address__back {
	display: none;
	margin: 1.15em 3em 0 auto
}

@media screen and (max-width: 1024px) {
	.cv-form-address__back {
		margin: 4.9em auto 1em 150px
	}
}

@media screen and (max-width: 896px) {
	.cv-form-address__back {
		margin: 2.95em 3em 0 auto
	}
}

.cv-form-address__cnt {
	position: relative;
	flex: 1
}

@media screen and (max-width: 896px) {
	.cv-form-address__cnt {
		flex: auto
	}
}

.cv-form-username {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-top: 20px
}

.cv-form-username__ttl {
	width: 5em;
	font-weight: bold;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.cv-form-username__ttl {
		font-size: 4.8vw
	}
}

.cv-form-username__sei {
	position: relative;
	flex: 1;
	margin-right: 10px
}

@media screen and (max-width: 896px) {
	.cv-form-username__sei {
		flex: none;
		width: 48%;
		margin: 0
	}
}

.cv-form-username__mei {
	position: relative;
	flex: 1;
	margin-left: 10px
}

@media screen and (max-width: 896px) {
	.cv-form-username__mei {
		flex: none;
		width: 48%;
		margin: 0
	}
}

.cv-form-username__company {
	position: relative;
	flex: 1
}

.cv-form-test {
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 1;
	width: calc(100% - 20px);
	max-width: 500px;
	overflow: hidden;
	background: #fff;
	border: 2px solid #c0392b;
	border-radius: 10px
}

.cv-form-test__ttl {
	margin: 0;
	padding: 0.3em;
	color: #fff;
	font-size: 1.8rem;
	text-align: center;
	background: #c0392b
}

.cv-form-test__body {
	padding: 1em
}

.cv-form-test__company {
	margin: 0 0 0.5em;
	line-height: 1.3;
	text-align: center
}

.cv-form-test__company em {
	font-weight: bold;
	font-size: 1.2em;
	font-style: normal
}

.cv-form-test__list {
	margin: 0
}

.cv-form-test__list-ttl {
	margin: 0 0 0.5em;
	color: #c0392b;
	font-weight: bold;
	text-align: center;
	border-bottom: 2px solid #c0392b
}

.cv-form-test__list-item {
	display: list-item;
	margin: 0 0 0 1.5em;
	list-style: disc outside
}

.cv-form-articles {
	padding-bottom: 85px;
	background: #e4f5f9
}

@media screen and (max-width: 896px) {
	.cv-form-articles {
		padding-bottom: 12vw
	}
}

.cv-form-articles__ttl {
	position: relative;
	top: -2em;
	margin: 0 0 1.3em;
	padding: 0.8em 0.5em;
	font-size: 2.3rem;
	text-align: center;
	background: #fff;
	border: 4px solid
}

@media screen and (max-width: 896px) {
	.cv-form-articles__ttl {
		margin-bottom: 0;
		font-size: 3.4vw
	}
}

.cv-form-articles__ttl::after {
	position: absolute;
	top: calc(100% + 4px);
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -20px;
	border-color: #000 transparent transparent transparent;
	border-style: solid;
	border-width: 20px 20px 0 20px;
	content: ""
}

.cv-form-articles__list {
	margin: 0
}

@media screen and (max-width: 896px) {
	.cv-form-articles__list {
		margin: 0 -5vw
	}
}

.cv-form-articles__list:not(:last-child) {
	margin-bottom: 20px
}

@media screen and (max-width: 896px) {
	.cv-form-articles__list:not(:last-child) {
		margin-bottom: 0
	}
}

.cv-form-articles__cat {
	width: 100%;
	color: #fff;
	font-weight: bold;
	font-size: 2.4rem;
	background: #4abfd7
}

@media screen and (max-width: 896px) {
	.cv-form-articles__cat {
		position: relative;
		font-size: 3.6vw;
		border-bottom: 1px solid #fff
	}

	.cv-form-articles__cat::after {
		position: absolute;
		top: 50%;
		right: 5vw;
		width: 8vw;
		height: 8vw;
		margin-top: -4vw;
		background: #fff;
		border-radius: 50%;
		content: ""
	}
}

.cv-form-articles__cat-toggle {
	position: relative;
	z-index: 1;
	display: block;
	padding: 0 0.5em;
	color: #fff;
	pointer-events: none
}

@media screen and (max-width: 896px) {
	.cv-form-articles__cat-toggle {
		padding: 1em 1em;
		pointer-events: all
	}

	.cv-form-articles__cat-toggle::before {
		position: absolute;
		top: 50%;
		right: 7vw;
		width: 4vw;
		height: 0.5vw;
		margin-top: -0.25vw;
		background: #4abfd7;
		content: ""
	}

	.cv-form-articles__cat-toggle::after {
		position: absolute;
		top: 50%;
		right: 8.75vw;
		width: 0.5vw;
		height: 4vw;
		margin-top: -2vw;
		background: #4abfd7;
		content: ""
	}

	.cv-form-articles__cat-toggle.is-open::after {
		opacity: 0
	}
}

.cv-form-articles__items {
	display: flex;
	flex-wrap: wrap
}

@media screen and (max-width: 896px) {
	.cv-form-articles__items {
		display: none
	}
}

.cv-form-articles__item {
	display: flex;
	align-items: center;
	width: 33.3%;
	margin: 0;
	padding: 8px 0;
	background: #fff;
	border-bottom: 1px solid #4abfd7
}

@media screen and (max-width: 896px) {
	.cv-form-articles__item {
		width: 100%;
		padding: 0.6em 5vw
	}
}

.cv-form-articles__item:not(:nth-of-type(3n)) {
	border-right: 1px solid #4abfd7
}

.cv-form-articles__item-icon {
	width: 85px;
	text-align: center
}

@media screen and (max-width: 896px) {
	.cv-form-articles__item-icon {
		width: 15vw;
		margin-right: 2vw
	}
}

.cv-form-articles__item-ttl {
	flex: 1;
	font-size: 1.4rem;
	line-height: 1.3
}

@media screen and (max-width: 896px) {
	.cv-form-articles__item-ttl {
		padding-right: 2vw;
		font-size: 3vw
	}
}

.cv-form-articles__item-num {
	display: flex;
	align-items: center;
	width: 125px;
	padding-right: 10px
}

@media screen and (max-width: 896px) {
	.cv-form-articles__item-num {
		width: 34vw;
		padding-right: 0
	}
}

.cv-form-articles__item-num input {
	flex: 1;
	min-width: 0;
	height: 30px;
	margin: 0 7px;
	padding: 0;
	text-align: center;
	border: 1px solid #4c4c4c;
	border-radius: 4px;
	appearance: none
}

@media screen and (max-width: 896px) {
	.cv-form-articles__item-num input {
		height: 9vw;
		margin: 0 1.5vw;
		border-width: 2px
	}
}

.cv-form-articles__item-btn {
	position: relative;
	top: -1px;
	width: 30px;
	height: 30px;
	font-size: 0;
	background: #dbf2f7;
	border: 1px solid #4abfd7;
	border-radius: 4px;
	box-shadow: 0 3px #4abfd7;
	cursor: pointer
}

@media screen and (max-width: 896px) {
	.cv-form-articles__item-btn {
		width: 8vw;
		height: 8vw;
		border-width: 2px
	}
}

.cv-form-articles__item-btn:active {
	top: 2px;
	box-shadow: 0 1px #4abfd7
}

.cv-form-articles__item-btn::before {
	position: absolute;
	top: 43%;
	left: 25%;
	width: 50%;
	height: 14%;
	background: #4abfd7;
	content: ""
}

.cv-form-articles__item-btn--plus::after {
	position: absolute;
	top: 25%;
	left: 43%;
	width: 14%;
	height: 50%;
	background: #4abfd7;
	content: ""
}

.cv-form-articles__box {
	margin-top: 10vw
}

.cv-form-articles__btn {
	margin-top: 65px
}

@media screen and (max-width: 896px) {
	.cv-form-articles__btn {
		margin-top: 8vw
	}
}

@media screen and (max-width: 896px) {
	.cv-form-articles__memo {
		margin: 0 -5vw
	}
}

.cv-form-articles__memo-ttl {
	width: 100%;
	color: #fff;
	font-weight: bold;
	font-size: 2.4rem;
	background: #4abfd7
}

@media screen and (max-width: 896px) {
	.cv-form-articles__memo-ttl {
		position: relative;
		font-size: 3.6vw;
		border-bottom: 1px solid #fff
	}
}

.cv-form-articles__memo-body {
	padding: 0.5em;
	background: #fff
}

.cv-form-articles__memo-body textarea {
	vertical-align: middle
}

.category-posts__list {
	padding: 0;
	list-style: none
}

.category-posts__item {
	padding: 0.3em 0
}

.category-posts__item:not(:last-child) {
	border-bottom: 1px dashed #ccc
}

.category-posts__link {
	display: flex;
	align-items: center
}

@media screen and (min-width: 1025px) {
	.category-posts__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.category-posts__link:hover {
		opacity: .7
	}

	.category-posts__link:hover img {
		opacity: 1
	}
}

.category-posts__link figure {
	flex: 1;
	margin: 0 5px 0 0
}

.category-posts__link figure img {
	display: block
}

.category-posts__art-ttl {
	flex: 2;
	margin: 0;
	font-size: 1.3rem
}

.company-info__ttl {
	margin-bottom: 1em;
	padding-top: 3.5em;
	font-size: 2.2rem;
	line-height: 1.4;
	text-align: center;
	background: url("../img/companies/icon_building.svg") no-repeat top/1.5em
}

@media screen and (max-width: 896px) {
	.company-info__ttl {
		font-size: 5.2vw
	}
}

.company-info__list {
	margin: 0
}

.company-info__row {
	display: flex;
	border-bottom: 1px solid #ccc
}

.company-info__row:not(:last-child) {
	margin-bottom: 1em
}

.company-info__subttl {
	width: 10em;
	padding: 0 0 1em 1em;
	font-weight: bold
}

@media screen and (max-width: 896px) {
	.company-info__subttl {
		width: 6em;
		padding-right: 1em;
		padding-left: 0.5em
	}
}

.company-info__cnt {
	flex: 1;
	margin: 0;
	padding-bottom: 1em
}

.company-info__map {
	display: block;
	width: 100%;
	height: 450px;
	margin-top: 1em;
	border: none
}

@media screen and (max-width: 896px) {
	.company-info__map {
		height: 90vw
	}
}

.company-info__cat {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	margin-bottom: -0.5em;
	padding: 0;
	font-size: 1.3rem;
	list-style: none
}

.company-info__cat-item {
	margin: 0 0.5em 0.5em 0;
	padding: 0.1em 0.5em;
	color: #7d4503;
	border: 1px solid #7d4503;
	border-radius: 5px
}

.company-info__area {
	margin: 0
}

.company-info__area-row {
	display: flex
}

@media screen and (max-width: 896px) {
	.company-info__area-row {
		display: block
	}
}

.company-info__area-row:not(:last-child) {
	margin-bottom: 16px
}

@media screen and (max-width: 896px) {
	.company-info__area-row:not(:last-child) {
		margin-bottom: 2vw
	}
}

.company-info__area-ttl {
	width: 5em
}

.company-info__area-cnt {
	flex: 1;
	margin: 0;
	padding-top: 0.3em
}

@media screen and (max-width: 896px) {
	.company-info__area-cnt {
		padding-top: 0.5em;
		padding-left: 1em
	}
}

.company-info__area-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	line-height: 1;
	list-style: none
}

.company-info__area-item {
	margin-bottom: 0.3em
}

.company-info__area-item:not(:last-child) {
	margin-right: 0.3em;
	padding-right: 0.3em;
	border-right: 1px solid #ccc
}

.companies {
	padding-bottom: 200px
}

@media screen and (max-width: 896px) {
	.companies {
		padding-bottom: 20vw
	}
}

.companies__ttl {
	margin: 0 0 1em;
	padding-bottom: 10px;
	font-size: 1.9rem;
	border-bottom: 1px solid #000
}

@media screen and (max-width: 896px) {
	.companies__ttl {
		font-size: 4.4vw
	}
}

.companies__txt-count {
	margin: 0 0 1em;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.companies__txt-count {
		font-size: 3.6vw
	}
}

.companies__result {
	display: flex;
	align-items: center;
	margin-bottom: 24px
}

@media screen and (max-width: 896px) {
	.companies__result {
		justify-content: space-between
	}
}

.companies__result-ttl {
	margin: 0;
	font-size: 2rem
}

@media screen and (max-width: 896px) {
	.companies__result-ttl {
		font-size: 4vw
	}
}

.companies__result-ttl span {
	margin-left: 0.5em;
	color: #ffde35;
	font-weight: bold;
	font-size: 1.3em
}

.companies__result-nav {
	margin: 0.5em 0 0 1em
}

.companies__result-nav span {
	color: #ffde35
}

.companies-box {
	position: relative;
	padding: 15px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2)
}

@media screen and (max-width: 896px) {
	.companies-box {
		padding: 0;
		box-shadow: 0 2px 5px #ccc
	}
}

.companies-box+.companies-box {
	margin-top: 24px
}

@media screen and (max-width: 896px) {
	.companies-box+.companies-box {
		margin-top: 5vw
	}
}

.companies-box__badge {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 100px
}

@media screen and (max-width: 896px) {
	.companies-box__badge {
		top: -3vw;
		right: -3vw;
		width: 20vw
	}
}

.companies-box__inner {
	padding: 32px 28px;
	background-color: #fff;
	border-top: 1px solid #ccc
}

@media screen and (max-width: 896px) {
	.companies-box__inner {
		padding: 5vw
	}
}

.companies-box__row {
	display: flex;
	align-items: flex-start;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px
}

@media screen and (max-width: 896px) {
	.companies-box__row {
		display: block
	}
}

.companies-box__review-row {
	display: flex;
	align-items: center;
	justify-content: space-between
}

.companies-box__rate-name {
	font-weight: bold
}

.companies-box__amount {
	margin-bottom: 24px
}

.companies-box__amount-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	margin-bottom: -0.5em;
	padding: 0;
	font-size: 1.3rem;
	list-style: none
}

.companies-box__amount-item {
	margin: 0 0.5em 0.5em 0;
	padding: 0.1em 0.5em;
	color: #7d4503;
	border: 1px solid #7d4503;
	border-radius: 5px
}

.companies-box__fig {
	width: 220px;
	height: 150px
}

@media screen and (max-width: 896px) {
	.companies-box__fig {
		width: 100%;
		height: auto;
		text-align: center
	}
}

.companies-box__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	font-family: "object-fit: contain;"
}

@media screen and (max-width: 896px) {
	.companies-box__img {
		max-width: 70%;
		max-height: 30vw;
		margin-bottom: 5vw
	}
}

.companies-box__cnt {
	width: calc(100% - 240px);
	min-height: 150px;
	margin-left: auto
}

@media screen and (max-width: 896px) {
	.companies-box__cnt {
		width: 100%;
		min-height: 0;
		margin-bottom: 1em;
		margin-left: 0
	}
}

.companies-box__ttl {
	margin: 0 0 0.5em;
	font-weight: bold;
	font-size: 2.6rem
}

@media screen and (max-width: 896px) {
	.companies-box__ttl {
		margin-bottom: 0
	}
}

.companies-box__ttl a {
	display: inline-block;
	padding: 0 0.5em;
	color: #0089fc
}

@media screen and (min-width: 1025px) {
	.companies-box__ttl a {
		cursor: pointer;
		transition: .2s opacity
	}

	.companies-box__ttl a:hover {
		opacity: .7
	}

	.companies-box__ttl a:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.companies-box__ttl a {
		display: block;
		padding: 0.7em 1em;
		color: #0089fc;
		font-size: 5vw;
		line-height: 1.4
	}
}

.companies-box__excerpt {
	margin: 0;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.companies-box__excerpt {
		font-size: 3.4vw
	}
}

.companies-box__more {
	display: block;
	margin: 0 auto;
	padding: 0.5em 5em;
	color: #fff;
	font-weight: bold;
	border-radius: 100px;
	background: #ffd500;
	cursor: pointer
}

.companies-box__detail {
	display: none;
	padding-top: 24px
}

.companies-box__detail.is-open {
	display: block
}

.companies-box__txt {
	display: none;
	margin: 0;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.companies-box__txt {
		font-size: 3.4vw
	}
}

.companies-box__btns {
	display: flex;
	justify-content: center;
	margin-top: 30px
}

@media screen and (max-width: 896px) {
	.companies-box__btns {
		flex-flow: column;
		align-items: center;
		margin-top: 5vw
	}
}

.companies-box__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	margin: 0 8px;
	padding: 0 1.5em;
	color: #fff;
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center;
	background: #d1d1d1;
	border-radius: 100px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1)
}

@media screen and (min-width: 1025px) {
	.companies-box__btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.companies-box__btn:hover {
		opacity: .7
	}

	.companies-box__btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.companies-box__btn {
		height: 13vw;
		margin: 0;
		font-size: 5vw
	}
}

.companies-box__btn--detail {
	background: #195ca5
}

@media screen and (max-width: 896px) {
	.companies-box__btn--detail {
		margin-bottom: 5vw
	}
}

.companies-box__btn--cv {
	background: #f56f00
}

.companies-cv {
	display: block;
	margin: 24px 0;
	padding: 15px 5px;
	text-align: center;
	background: url("../img/logo.svg") no-repeat left 15px top 15px/120px #ffde35
}

@media screen and (min-width: 1025px) {
	.companies-cv {
		cursor: pointer;
		transition: .2s opacity
	}

	.companies-cv:hover {
		opacity: .7
	}

	.companies-cv:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.companies-cv {
		margin: 5vw 0;
		padding: 12vw 3vw 5vw;
		background-position: left 3vw top 3vw;
		background-size: 35vw
	}
}

.companies-cv__ttl {
	margin: 0 0 0.2em;
	color: #fff;
	font-weight: bold;
	font-size: 2.6rem
}

@media screen and (max-width: 896px) {
	.companies-cv__ttl {
		font-size: 5.4vw
	}
}

.companies-cv__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 400px;
	height: 50px;
	margin: 0 auto;
	color: #fff;
	font-weight: bold;
	font-size: 2.4rem;
	font-family: inherit;
	text-decoration: none;
	background: url("../img/btn_arrow.svg") no-repeat right 0.5em center/1em 1em #f56f00;
	border: 2px solid #fff;
	border-radius: 100px;
	box-shadow: 0 2px #000;
	cursor: pointer
}

@media screen and (max-width: 896px) {
	.companies-cv__btn {
		height: 15vw;
		font-size: 5.4vw
	}
}

.companies-cv__btn span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.6em;
	height: 1.6em;
	color: #000;
	font-size: 0.9em;
	background: #ffde35;
	border-radius: 50%
}

.companies-cv__btn span+span {
	margin: 0 0.5em 0 -0.2em
}

.companies-pager {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 24px
}

@media screen and (max-width: 896px) {
	.companies-pager {
		margin-top: 5vw
	}
}

.companies-pager .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	margin: 0 5px 10px;
	font-size: 1.2rem;
	background: #fff;
	border-radius: 6px
}

@media screen and (max-width: 896px) {
	.companies-pager .page-numbers {
		width: 9vw;
		height: 9vw;
		margin: 0 1vw 2vw;
		font-size: 3.4vw
	}
}

.companies-pager .page-numbers.current {
	background: #fdefa5
}

.companies-modal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -99;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
	opacity: 0;
	transition: all 0.3s linear
}

.companies-modal.is-active {
	z-index: 99;
	opacity: 1
}

.companies-modal__cnt {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	max-width: 750px;
	padding: 30px;
	background: #fff;
	transform: translate(-50%, -50%)
}

@media screen and (max-width: 896px) {
	.companies-modal__cnt {
		width: 90%;
		padding: 5vw 0
	}
}

.companies-modal__close {
	position: absolute;
	top: -18px;
	right: -18px;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	color: #fff;
	background: #ccc;
	border-radius: 50%;
	cursor: pointer
}

@media screen and (max-width: 896px) {
	.companies-modal__close {
		top: -4vw;
		right: -4vw;
		width: 8vw;
		height: 8vw
	}
}

.companies-modal__ttl {
	margin: 0;
	padding-left: 1.5em;
	font-size: 3.8rem;
	background: url("../img/area_map_ttl.svg") no-repeat left/auto 100%
}

@media screen and (max-width: 896px) {
	.companies-modal__ttl {
		margin-bottom: 0.5em;
		font-size: 6vw
	}
}

.companies-modal__ttl span {
	color: #f56f00
}

@media screen and (max-width: 896px) {
	.companies-modal__img {
		display: none
	}
}

.companies-modal__inner {
	position: relative;
	text-align: center
}

@media screen and (max-width: 896px) {
	.companies-modal__inner {
		height: 60vh;
		margin-bottom: 5vw;
		overflow-y: scroll
	}
}

.companies-modal__group {
	position: absolute;
	width: 150px
}

@media screen and (max-width: 896px) {
	.companies-modal__group {
		position: static;
		width: 100%
	}
}

.companies-modal__group--hokkaido {
	top: 20px;
	right: 280px
}

.companies-modal__group--tohoku {
	top: 150px;
	right: 0
}

.companies-modal__group--kanto {
	top: 300px;
	right: 0
}

.companies-modal__group--tokai {
	right: 0;
	bottom: 10px
}

.companies-modal__group--kinki {
	right: 180px;
	bottom: 10px
}

.companies-modal__group--shikoku {
	right: 360px;
	bottom: 10px
}

.companies-modal__group--koshinetsu {
	top: 120px;
	left: 260px
}

.companies-modal__group--chugoku {
	top: 60px;
	left: 75px
}

.companies-modal__group--kyushu {
	top: 220px;
	left: 0
}

.companies-modal__group-ttl {
	margin: 0;
	color: #fff;
	font-size: 2rem;
	text-align: center;
	background: #f56f00
}

@media screen and (max-width: 896px) {
	.companies-modal__group-ttl {
		padding: 0.2em;
		font-size: 4vw
	}
}

.companies-modal__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
	padding: 5px;
	text-align: left;
	list-style: none;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc
}

@media screen and (max-width: 896px) {
	.companies-modal__list {
		flex-wrap: wrap;
		padding: 2vw;
		border: none
	}
}

.companies-modal__item {
	width: calc(50% - 5px)
}

@media screen and (max-width: 896px) {
	.companies-modal__item {
		width: 33.3%
	}
}

.companies-modal__link {
	color: #0089fc;
	font-weight: bold;
	font-size: 1.3rem
}

@media screen and (min-width: 1025px) {
	.companies-modal__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.companies-modal__link:hover {
		opacity: .7
	}

	.companies-modal__link:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.companies-modal__link {
		font-size: 4vw
	}
}

.companies-modal__submit {
	display: block;
	width: 300px;
	margin: 20px auto 0;
	padding: 0.6em 0;
	background: transparent;
	border: 1px solid;
	border-radius: 100px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
	appearance: none
}

@media screen and (min-width: 1025px) {
	.companies-modal__submit {
		cursor: pointer;
		transition: .2s opacity
	}

	.companies-modal__submit:hover {
		opacity: .7
	}

	.companies-modal__submit:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.companies-modal__submit {
		width: 90%;
		margin-top: 0
	}
}

.company {
	padding-bottom: 100px
}

@media screen and (max-width: 896px) {
	.company {
		padding-bottom: 20vw
	}
}

.company__ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 50px 15px;
	background: #fdefa5
}

@media screen and (max-width: 896px) {
	.company__ttl {
		padding: 5vw
	}
}

.company__ttl-img {
	width: 160px;
	margin-right: 20px
}

@media screen and (max-width: 896px) {
	.company__ttl-img {
		width: 35%;
		margin-right: 5vw
	}
}

.company__ttl-txt {
	flex: 1;
	max-width: 600px;
	font-size: 3.2rem;
	line-height: 1.4
}

@media screen and (max-width: 896px) {
	.company__ttl-txt {
		font-size: 6vw
	}
}

.company__tabs {
	display: flex;
	margin: 0 0 10px;
	padding: 0;
	list-style: none
}

@media screen and (max-width: 896px) {
	.company__tabs {
		margin-bottom: 2vw
	}
}

.company__tab {
	flex: 1
}

.company__tab:not(:last-child) {
	margin-right: 20px
}

@media screen and (max-width: 896px) {
	.company__tab:not(:last-child) {
		margin-right: 3vw
	}
}

.company__tab-btn {
	position: relative;
	display: block;
	width: 100%;
	padding: 1em 0;
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center;
	background: #ffde35;
	border-top: 1px solid #ffde35;
	border-right: 1px solid #ffde35;
	border-left: 1px solid #ffde35;
	border-radius: 10px;
	box-shadow: 0 0 5px #ccc
}

@media screen and (min-width: 1025px) {
	.company__tab-btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.company__tab-btn:hover {
		opacity: .7
	}

	.company__tab-btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.company__tab-btn {
		font-size: 4vw
	}
}

.company__tab-btn[aria-selected="true"],
.company__tab-btn--disabled {
	pointer-events: none
}

.company__tab-btn[aria-selected="true"] {
	color: #ffde35;
	background-color: #fff;
	border-radius: 10px 10px 0 0;
	box-shadow: none
}

.company__tab-btn[aria-selected="true"]::after {
	position: absolute;
	right: -1px;
	bottom: -13px;
	left: -1px;
	height: 13px;
	background: #fff;
	border-right: 1px solid #ffde35;
	border-left: 1px solid #ffde35;
	content: ""
}

@media screen and (max-width: 896px) {
	.company__tab-btn[aria-selected="true"]::after {
		bottom: calc(-2vw - 3px);
		height: calc(2vw + 3px)
	}
}

.company__tab-btn--disabled {
	color: #fff;
	background: #ccc;
	border-color: #ccc
}

.company__tab-panel {
	display: none;
	padding: 40px;
	background: #fff;
	border: 1px solid #ffde35
}

@media screen and (max-width: 896px) {
	.company__tab-panel {
		padding: 10vw 5vw
	}
}

.company__tab-panel.is-active {
	display: block
}

.company__txt {
	margin: 0 0 2em
}

.company__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 430px;
	height: 72px;
	margin: 0 auto 60px;
	color: #fff;
	font-weight: bold;
	font-size: 2.5rem;
	background: #f56f00;
	border-radius: 100px;
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3)
}

@media screen and (min-width: 1025px) {
	.company__btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.company__btn:hover {
		opacity: .7
	}

	.company__btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.company__btn {
		height: 13vw;
		margin-bottom: 10vw;
		font-size: 5vw
	}
}

.company-review__cont {
	padding: 2em 0
}

.company-review__ttl {
	margin-bottom: 1em;
	padding-top: 2.5em;
	font-size: 2.2rem;
	line-height: 1.4;
	text-align: center;
	background: url("../img/companies/comments-solid.svg") no-repeat top/1.5em
}

@media screen and (max-width: 896px) {
	.company-review__ttl {
		font-size: 5.2vw
	}
}

.company-review__row {
	display: flex;
	align-items: center
}

@media screen and (max-width: 896px) {
	.company-review__row {
		display: block
	}

	.company-review__row>.company-review__row {
		display: flex
	}
}

.company-review__row>* {
	flex: 1;
	margin-top: 0
}

@media screen and (max-width: 896px) {
	.company-review__row>* {
		width: 100%
	}
}

.company-review__row-half {
	width: 50%
}

@media screen and (max-width: 896px) {
	.company-review__row-half {
		display: flex;
		width: 100%
	}
}

.company-review__row-border-bottom {
	margin-bottom: 1em;
	border-bottom: 2px solid #ccc
}

@media screen and (max-width: 896px) {
	.company-review__row-border-bottom {
		display: flex;
		width: 100%
	}
}

.company-review__row-border-bottom>* {
	margin-bottom: 0
}

.company-review__review-ttl {
	margin-top: 0;
	padding: 0.7em 0 0.7em 0.5em;
	font-size: 2.4rem;
	background: #fff7ce
}

@media screen and (max-width: 896px) {
	.company-review__review-ttl {
		margin-right: -5vw;
		margin-left: -5vw;
		font-size: 5.2vw
	}
}

.company-review__estimate_price {
	font-weight: bold;
	font-size: 2rem
}

@media screen and (max-width: 896px) {
	.company-review__estimate_price {
		font-size: 4.7333vw
	}
}

.company-review__estimate_price em {
	font-style: normal
}

.company-review__name {
	font-weight: bold
}

@media screen and (max-width: 896px) {
	.company-review__name {
		font-size: 4.2vw
	}
}

.company-review__body {
	margin-top: 1em
}

.company-review__total-rank {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.company-review__total-rank {
		font-size: 5.2vw
	}
}

.company-review__rank-number {
	margin-left: 0.5em
}

.entries__ttl {
	margin: 0;
	font-size: 3rem
}

@media screen and (max-width: 896px) {
	.entries__ttl {
		font-size: 6.4vw
	}
}

.entries-post {
	padding: 2em 0
}

.entries-post:not(:last-child) {
	border-bottom: 1px dashed #ccc
}

.entries-post__ttl {
	margin: 0 0 1em;
	font-size: 2.4rem
}

@media screen and (max-width: 896px) {
	.entries-post__ttl {
		margin: 1em 0;
		font-size: 5.3vw
	}
}

.entries-post__link {
	display: flex;
	flex-wrap: wrap
}

@media screen and (min-width: 1025px) {
	.entries-post__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.entries-post__link:hover {
		opacity: .7
	}

	.entries-post__link:hover img {
		opacity: 1
	}
}

.entries-post__thumb {
	position: relative;
	width: 49%;
	margin-right: 2%
}

@media screen and (max-width: 896px) {
	.entries-post__thumb {
		width: 100%;
		margin-right: 0
	}
}

.entries-post__thumb::before {
	display: block;
	padding-top: 66%;
	content: ""
}

.entries-post__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: "object-fit: contain;"
}

.entries-post__box {
	position: relative;
	flex: 1
}

.entries-post__meta {
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0;
	font-size: 1.6rem
}

@media screen and (max-width: 896px) {
	.entries-post__meta {
		position: static;
		font-size: 3.2vw
	}
}

.entry__meta {
	margin: 0 0 1em;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.entry__meta {
		font-size: 3.5vw
	}
}

@media screen and (max-width: 896px) {
	.entry__meta-date {
		display: block
	}
}

.entry__meta-date:not(:first-child) {
	margin-left: 2em
}

@media screen and (max-width: 896px) {
	.entry__meta-date:not(:first-child) {
		margin: 0
	}
}

.entry__ttl {
	margin: 0 0 1em;
	font-size: 3rem;
	line-height: 1.3
}

@media screen and (max-width: 896px) {
	.entry__ttl {
		font-size: 5.4vw
	}
}

.entry__thumb {
	width: 100%;
	margin-bottom: 2em
}

.notfound {
	padding: 5em 0;
	text-align: center
}

.notfound__txt {
	margin-bottom: 5em
}

.store-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100px
}

@media screen and (max-width: 896px) {
	.store-header__inner {
		height: 18.667vw
	}
}

.store-header__logo {
	width: 50%;
	max-width: 252px
}

@media screen and (max-width: 896px) {
	.store-header__logo {
		margin: 0
	}
}

.store-header__logo img {
	vertical-align: middle
}

.store-header__btn {
	padding: 0.3em 1.5em;
	color: #fff;
	font-weight: bold;
	font-size: 1.7rem;
	background: #3f404f;
	border-radius: 100px
}

@media screen and (min-width: 1025px) {
	.store-header__btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.store-header__btn:hover {
		opacity: .7
	}

	.store-header__btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.store-header__btn {
		font-size: 3.733vw
	}
}

.store-mv {
	margin-top: -100px;
	padding-top: 100px;
	background: url("../img/store/bg_mv_pc.png") no-repeat center top/auto, linear-gradient(#fbec03, #fc7d05)
}

.store-mv__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 10px;
	padding-bottom: 50px
}

@media screen and (max-width: 896px) {
	.store-mv__inner {
		display: block;
		padding-top: 0;
		padding-bottom: 10vw
	}
}

@media screen and (max-width: 1024px) {
	.store-mv__img {
		width: 55%
	}
}

.store-mv__img img {
	width: 100%
}

.store-form {
	width: calc(100% - 660px);
	margin-left: 5%;
	padding: 30px;
	background: #fff;
	border-radius: 15px;
	box-shadow: 0 0 10px #999
}

@media screen and (max-width: 1024px) {
	.store-form {
		flex: 1
	}
}

@media screen and (max-width: 896px) {
	.store-form {
		width: 100%;
		margin-top: 5vw;
		margin-left: 0
	}
}

.store-form__ttl {
	margin: 0;
	font-size: 2rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-form__ttl {
		font-size: 5.333vw
	}
}

.store-form__check {
	display: block;
	margin-top: 1em
}

@media screen and (min-width: 1025px) {
	.store-form__check {
		cursor: pointer;
		transition: .2s opacity
	}

	.store-form__check:hover {
		opacity: .7
	}

	.store-form__check:hover img {
		opacity: 1
	}
}

.store-form__check a {
	color: #3187e8;
	text-decoration: underline
}

.store-form__input-name {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.store-form__input-name {
		font-size: 3.733vw
	}
}

.store-form__require {
	margin-left: 1em;
	padding: 0.1em 0.4em 0;
	color: #fff;
	font-weight: bold;
	background: #e9402a
}

.store-form__option {
	margin-left: 1em;
	padding: 0.1em 0.4em;
	color: #fff;
	font-weight: bold;
	background: #a9a9a9
}

.store-form input[type="text"],
.store-form input[type="tel"],
.store-form input[type="number"],
.store-form input[type="email"]{
	height: 35px;
	padding: 0 0.7em;
	font-weight: bold;
	font-size: 1.4rem;
	background: #e5eaf2;
	border: none;
	border-radius: 5px
}

@media screen and (max-width: 896px) {

	.store-form input[type="text"],
	.store-form input[type="tel"],
	.store-form input[type="number"],
	.store-form input[type="email"]{
		height: 7.4vw;
		font-size: 3.733vw
	}
}

.store-form__btn {
	display: block;
	width: 100%;
	margin-top: 1.2em;
	padding: 0.5em 0;
	color: #fff;
	font-weight: bold;
	font-size: 1.7rem;
	text-align: center;
	background: linear-gradient(to right, #fe6e0e, #f09e00);
	border-radius: 100px
}

@media screen and (min-width: 1025px) {
	.store-form__btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.store-form__btn:hover {
		opacity: .7
	}

	.store-form__btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.store-form__btn {
		font-size: 4.533vw
	}
}

.store-form__error {
	margin: 0.5em 0;
	padding: 0 0.5em;
	color: #c0392b;
	font-size: 1.4rem;
	background-color: #f0cdcd
}

.store-no1 {
	padding-top: 70px;
	background: url("../img/store/bg_no1.png") no-repeat center
}

@media screen and (max-width: 896px) {
	.store-no1 {
		padding-top: 10vw;
		padding-bottom: 10vw
	}
}

.store-no1__ttl {
	font-weight: bold;
	font-size: 3rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-no1__ttl {
		margin-top: 0;
		font-size: 5.333vw
	}
}

.store-no1__logos {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0;
	list-style: none
}

.store-no1__logo {
	display: flex;
	align-items: center;
	width: 15%;
	height: 120px;
	margin-bottom: 15px;
	padding: 15px;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 0 10px #ccc
}

@media screen and (max-width: 896px) {
	.store-no1__logo {
		width: 48%;
		height: 25vw
	}
}

.store-no1__logo img {
	width: 100%
}

.store-free {
	padding-bottom: 70px
}

.store-free__row {
	display: flex;
	justify-content: space-between
}

@media screen and (max-width: 896px) {
	.store-free__row {
		display: block
	}
}

.store-free__box {
	max-width: 510px
}

@media screen and (max-width: 896px) {
	.store-free__box {
		max-width: none
	}
}

.store-free__ttl {
	margin: 0.5em 0;
	font-weight: bold;
	font-size: 3.2rem
}

@media screen and (max-width: 896px) {
	.store-free__ttl {
		margin: 0.5em 0;
		font-size: 5.333vw
	}
}

.store-free__ttl em {
	font-size: 150%;
	font-style: normal
}

.store-free__txt {
	margin: 1em 0
}

.store-free__img {
	margin-right: 5%
}

@media screen and (max-width: 896px) {
	.store-free__img {
		margin-right: 0;
		text-align: center
	}
}

.store-free__attention {
	margin: 1em 0;
	color: #aaa;
	font-size: 1.2rem
}

@media screen and (max-width: 896px) {
	.store-free__attention {
		font-size: 3.2vw
	}
}

.store-free__point-img {
	display: block;
	margin-top: 2em
}

@media screen and (max-width: 896px) {
	.store-free__point-img {
		width: 100%
	}
}

.store-cv {
	padding: 45px 0;
	background: linear-gradient(to right, #fe6e0e, #f09e00)
}

@media screen and (max-width: 896px) {
	.store-cv {
		padding: 10vw 0
	}
}

.store-cv__inner {
	display: flex;
	align-items: center;
	justify-content: space-between
}

@media screen and (max-width: 896px) {
	.store-cv__inner {
		display: block
	}
}

.store-cv__box {
	width: 60%
}

@media screen and (max-width: 896px) {
	.store-cv__box {
		width: 100%
	}
}

.store-cv__img {
	width: 35%
}

@media screen and (max-width: 896px) {
	.store-cv__img {
		width: 100%;
		text-align: center
	}
}

.store-cv__ttl {
	margin-top: 0;
	color: #fff;
	font-size: 2.8rem
}

@media screen and (max-width: 896px) {
	.store-cv__ttl {
		font-size: 6.4vw
	}
}

.store-cv__txt {
	margin: 1em 0;
	color: #fff;
	font-size: 1.8rem
}

@media screen and (max-width: 896px) {
	.store-cv__txt {
		font-size: 4.267vw
	}
}

.store-cv__submit {
	display: inline-block;
	text-align: center
}

.store-cv__submit-btn {
	display: inline-block;
	padding: 0.5em 3em;
	color: #fff;
	font-weight: bold;
	font-size: 2.2rem;
	background: linear-gradient(to left, #6e70f3, #9385f5, #56b1f3);
	border-radius: 100px
}

@media screen and (min-width: 1025px) {
	.store-cv__submit-btn {
		cursor: pointer;
		transition: .2s opacity
	}

	.store-cv__submit-btn:hover {
		opacity: .7
	}

	.store-cv__submit-btn:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.store-cv__submit-btn {
		font-size: 5.867vw
	}
}

.store-cv__link {
	display: block;
	margin-top: 1em;
	color: #fff;
	font-weight: bold;
	text-decoration: underline
}

.store-cv__link:hover {
	text-decoration: none
}

@media screen and (max-width: 896px) {
	.store-cv__link {
		margin-bottom: 1em;
		font-size: 4.267vw
	}
}

.store-about {
	padding: 70px 0;
	background: url("../img/store/bg_no1.png") no-repeat center 100px
}

@media screen and (max-width: 896px) {
	.store-about {
		padding: 10vw 0
	}
}

.store-about__ttl {
	margin-top: 0;
	font-size: 3.2rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-about__ttl {
		font-size: 5.867vw
	}
}

.store-about__subttl {
	margin: 1em 0;
	font-weight: bold;
	font-size: 2.6rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-about__subttl {
		font-size: 3.733vw
	}
}

.store-about__subttl em {
	color: #fd710d;
	font-style: normal
}

.store-about__movie {
	position: relative;
	width: 100%;
	margin-bottom: 30px;
	padding-top: 56.25%
}

.store-about__movie iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important
}

.store-about__img {
	box-shadow: 0 0 10px #ccc
}

.store-about__txt {
	font-weight: bold;
	text-align: center
}

.store-point {
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px
}

.store-point:nth-child(even) {
	flex-flow: row-reverse
}

@media screen and (max-width: 896px) {
	.store-point {
		display: block
	}
}

.store-point__box {
	width: 55%
}

@media screen and (max-width: 896px) {
	.store-point__box {
		width: 100%
	}
}

.store-point__img {
	width: 40%
}

@media screen and (max-width: 896px) {
	.store-point__img {
		width: 100%;
		text-align: center
	}
}

.store-point__ttl {
	margin: 1em 0;
	font-size: 3rem
}

@media screen and (max-width: 896px) {
	.store-point__ttl {
		font-size: 5.867vw
	}
}

.store-point__txt {
	margin: 1em 0
}

.store-point__name {
	display: block;
	color: #fd710d;
	font-size: 3.4rem;
	font-family: Futura
}

@media screen and (max-width: 896px) {
	.store-point__name {
		font-size: 9.067vw
	}
}

.store-point__attention {
	color: #ccc;
	font-size: 1.2rem
}

.store-choice {
	padding-bottom: 70px;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-choice {
		padding-bottom: 10vw
	}
}

.store-choice__ttl {
	margin: 0.83em 0;
	font-size: 3rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-choice__ttl {
		font-size: 5.867vw
	}
}

.store-choice__txt {
	margin: 1em 0;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-choice__txt {
		text-align: left
	}
}

.store-choice img {
	margin-top: 30px
}

.store-step {
	padding: 70px 0 40px;
	background: #fd710d
}

@media screen and (max-width: 896px) {
	.store-step {
		padding: 10vw 0
	}
}

.store-step__ttl {
	margin: 0.83em 0;
	color: #fff;
	font-size: 3rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-step__ttl {
		margin-top: 0;
		font-size: 5.867vw
	}
}

.store-step__txt {
	margin: 1em 0;
	color: #fff;
	font-size: 1.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-step__txt {
		font-size: 4.2vw;
		text-align: left
	}
}

.store-step__flow {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
	padding-left: 0;
	list-style: none
}

@media screen and (max-width: 896px) {
	.store-step__flow {
		display: block;
		margin-top: 5vw
	}
}

.store-step__item {
	flex: 1
}

.store-step__item:not(:last-child) {
	margin-right: 2%
}

@media screen and (max-width: 896px) {
	.store-step__item {
		margin: 10vw auto 0
	}
}

.store-step__img-box {
	position: relative;
	height: 168px;
	text-align: center;
	background: #fff;
	border-radius: 10px
}

.store-step__icon {
	position: absolute;
	top: -23px;
	right: 0;
	left: 0;
	margin: 0 auto
}

.store-step__img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto
}

.store-step__flow-ttl {
	margin: 0.83em 0;
	color: #fff;
	font-weight: bold;
	font-size: 2rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-step__flow-ttl {
		font-size: 5.333vw
	}
}

.store-step__flow-txt {
	margin: 1em 0;
	color: #fff;
	font-size: 1.4rem
}

@media screen and (max-width: 896px) {
	.store-step__flow-txt {
		font-size: 3.733vw
	}
}

.store-support {
	padding: 50px 0
}

@media screen and (max-width: 896px) {
	.store-support {
		padding: 10vw 0
	}
}

.store-support__ttl {
	margin: 0.83em 0;
	font-size: 3rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-support__ttl {
		margin-top: 0;
		font-size: 5.867vw
	}
}

.store-support__row {
	display: flex;
	justify-content: space-between
}

@media screen and (max-width: 896px) {
	.store-support__row {
		display: block;
		font-size: 5.867vw
	}
}

.store-support__box {
	flex: 1;
	text-align: center
}

.store-support__box:not(:last-child) {
	margin-right: 2%
}

@media screen and (max-width: 896px) {
	.store-support__box {
		width: 100%;
		max-width: none
	}
}

.store-support__box img {
	border-radius: 15px;
	box-shadow: 0 0 10px #aaa
}

.store-support__txt {
	margin: 1em 0;
	font-weight: bold;
	font-size: 2rem
}

.store-epilogue {
	padding: 70px 0 40px;
	background: url("../img/store/bg_epilogue.jpg") no-repeat center/cover
}

@media screen and (max-width: 896px) {
	.store-epilogue {
		padding: 10vw 0
	}
}

.store-epilogue__ttl {
	margin: 0.83em 0;
	color: #fff;
	font-size: 3rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-epilogue__ttl {
		margin-top: 0;
		font-size: 5.867vw
	}
}

.store-epilogue__txt {
	margin: 1em 0 2em;
	color: #fff;
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.store-epilogue__txt {
		font-size: 3.73vw
	}
}

.thanks__ttl {
	margin-top: 50px;
	padding-top: 100px;
	color: #4abfd7;
	text-align: center;
	background: url("../img/thanks/thanks-title-icon.png") top center/auto 76px no-repeat
}

@media screen and (max-width: 896px) {
	.thanks__ttl {
		margin-top: 10vw;
		padding-top: 20vw;
		font-size: 5.3vw;
		background: url("../img/thanks/thanks-title-icon.png") top center/auto 15vw no-repeat
	}
}

.thanks__txt {
	text-align: center
}

.thanks__caution {
	width: 25em;
	margin: 3em auto;
	padding: 0.2em 0;
	font-size: 2rem;
	font-weight: bold;
	color: #c0392b;
	text-align: center;
	background: #fff;
	border: 4px solid #c0392b
}

@media screen and (max-width: 896px) {
	.thanks__caution {
		font-size: 3.6vw
	}
}

.thanks__icon {
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
	padding: 0.2em;
	line-height: 1;
	background: #c0392b;
	color: #fff;
	border-radius: 100px
}

.thanks-lead {
	display: flex;
	flex-flow: column;
	align-items: center;
	margin: 2em 0 3em;
	font-size: 2rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.thanks-lead {
		margin-bottom: 5vw;
		font-size: inherit
	}
}

.thanks-lead__txt {
	margin: 0
}

.thanks-lead__link {
	margin-top: 1em;
	color: #0d1bce;
	text-decoration: underline
}

.thanks-lead__attention {
	margin: 1em 0 0;
	padding: 0;
	color: #de0015;
	font-weight: bold;
	font-size: 3.2rem
}

@media screen and (max-width: 896px) {
	.thanks-lead__attention {
		margin: 5vw 0 0;
		font-size: 4.222vw
	}
}

.thanks-lead__attention em {
	font-style: normal
}

@media screen and (max-width: 896px) {
	.thanks-lead__attention em {
		display: block;
		font-size: 150%
	}
}

.thanks-market {
	position: relative
}

.thanks-market__ttl {
	width: 30em;
	margin: 0 auto 1em
}

@media screen and (max-width: 896px) {
	.thanks-market__ttl {
		width: 70%;
		margin: 0
	}
}

.thanks-market__ttl-txt {
	position: relative;
	margin-bottom: 0;
	padding: 5px;
	color: #fff;
	text-align: center;
	background: #000;
	border-radius: 100px
}

@media screen and (max-width: 896px) {
	.thanks-market__ttl-txt {
		font-size: 3.7333vw
	}
}

.thanks-market__ttl-txt::before {
	position: absolute;
	bottom: -20px;
	left: 50%;
	display: block;
	width: 0;
	height: 0;
	border-top: 10px solid #000;
	border-right: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
	transform: translateX(-50%);
	content: ""
}

.thanks-market__ttl-sub {
	display: block;
	color: #808080;
	text-align: right
}

@media screen and (max-width: 896px) {
	.thanks-market__ttl-sub {
		margin-top: 5%;
		font-size: 2.8vw;
		text-align: left
	}
}

.thanks-market__attention {
	position: absolute;
	top: -40px;
	right: -20px;
	width: 140px
}

@media screen and (max-width: 896px) {
	.thanks-market__attention {
		width: 20%;
		top: -25px;
		right: 5%
	}
}

.thanks-market__price-box {
	margin-bottom: 1em;
	font-family: Arial
}

.thanks-market__row {
	display: flex;
	align-items: stretch;
	font-size: 2rem
}

@media screen and (max-width: 896px) {
	.thanks-market__row {
		font-size: 2.8vw
	}
}

.thanks-market__row:first-child>:first-child>* {
	background: none
}

.thanks-market__row:first-child>:nth-child(2)>* {
	font-weight: bold;
	background: none
}

@media screen and (max-width: 896px) {
	.thanks-market__row:first-child>:nth-child(2)>* {
		padding-right: 0;
		padding-left: 0
	}
}

.thanks-market__row:first-child>:nth-child(3)>* {
	padding-left: 0;
	color: #fff;
	font-weight: bold;
	background: none
}

@media screen and (max-width: 896px) {
	.thanks-market__row:first-child>:nth-child(3)>* {
		padding-right: 0;
		padding-left: 0;
		text-align: center
	}
}

@media screen and (max-width: 896px) {
	.thanks-market__row:first-child>:nth-child(2) {
		padding-right: 0;
		padding-left: 0
	}
}

@media screen and (max-width: 896px) {
	.thanks-market__row:first-child>:nth-child(3) {
		padding-right: 0;
		padding-left: 0
	}
}

.thanks-market__row:last-child>:first-child,
.thanks-market__row:last-child>:nth-child(2),
.thanks-market__row:last-child>:nth-child(3) {
	padding-bottom: 20px
}

@media screen and (max-width: 896px) {

	.thanks-market__row:last-child>:first-child,
	.thanks-market__row:last-child>:nth-child(2),
	.thanks-market__row:last-child>:nth-child(3) {
		padding-bottom: 0.5em
	}
}

.thanks-market__row>:first-child {
	width: 55%;
	padding: 2px 5px 2px 0
}

@media screen and (max-width: 896px) {
	.thanks-market__row>:first-child {
		padding: 2px 0.2em 2px 0
	}
}

.thanks-market__row>:nth-child(2) {
	width: 20%;
	padding: 2px 5px
}

@media screen and (max-width: 896px) {
	.thanks-market__row>:nth-child(2) {
		padding: 2px 0.2em 2px 0
	}
}

.thanks-market__row>:nth-child(3) {
	width: 30%;
	padding: 2.5px 15px;
	background: #f56f00
}

@media screen and (max-width: 896px) {
	.thanks-market__row>:nth-child(3) {
		padding: 2px 0.5em
	}
}

.thanks-market__row.is-selected .thanks-market__item {
	background: #ffee9a
}

.thanks-market__row.is-selected .thanks-market__global {
	background: #ffee9a
}

.thanks-market__row.is-selected .thanks-market__merchant {
	color: #f56f00;
	background: #ffee9a
}

.thanks-market__item {
	font-weight: bold;
	padding: 0.25em 1em;
	background: #f0f0f0
}

@media screen and (max-width: 896px) {
	.thanks-market__item {
		padding: 0.25em
	}
}

.thanks-market__global {
	padding: 0.25em 1em;
	text-align: center;
	background: #dbf2f7
}

@media screen and (max-width: 896px) {
	.thanks-market__global {
		padding: 0.25em
	}
}

.thanks-market__merchant {
	padding: 0.25em 1em;
	font-weight: bold;
	text-align: center;
	background: #fff
}

@media screen and (max-width: 896px) {
	.thanks-market__merchant {
		padding: 0.25em
	}
}

.thanks-market__caution {
	margin: 0;
	color: #808080
}

@media screen and (max-width: 896px) {
	.thanks-market__caution {
		font-size: 3.2vw
	}
}

.thanks-campaign {
	display: block;
	margin-top: 50px
}

@media screen and (min-width: 1025px) {
	.thanks-campaign {
		cursor: pointer;
		transition: .2s opacity
	}

	.thanks-campaign:hover {
		opacity: .7
	}

	.thanks-campaign:hover img {
		opacity: 1
	}
}

.thanks-upsell {
	width: 100%;
	max-width: 900px;
	margin: 5em auto 0
}

@media screen and (max-width: 896px) {
	.thanks-upsell {
		margin-top: 15vw
	}
}

.thanks-upsell__ttl {
	font-size: 4.2rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.thanks-upsell__ttl {
		font-size: 7.333vw
	}
}

.thanks-upsell__ttl em {
	color: #c0392b;
	font-style: normal
}

.thanks-upsell__txt {
	font-size: 2.4rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.thanks-upsell__txt {
		font-size: 4.267vw
	}
}

.thanks-upsell__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
	padding: 0;
	list-style: none
}

.thanks-upsell__item {
	width: 47%;
	max-width: 240px;
	margin-bottom: 45px
}

@media screen and (max-width: 896px) {
	.thanks-upsell__item {
		max-width: none;
		margin-bottom: 5vw
	}
}

.thanks-upsell__link {
	position: relative;
	display: block;
	width: 100%;
	text-align: center;
	background: #fff;
	border: 2px solid #000;
	border-radius: 10px
}

@media screen and (min-width: 1025px) {
	.thanks-upsell__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.thanks-upsell__link:hover {
		opacity: .7
	}

	.thanks-upsell__link:hover img {
		opacity: 1
	}
}

.thanks-upsell__link::before {
	display: block;
	padding-top: 100%;
	content: ""
}

.thanks-upsell__cnt {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	transform: translate(-50%, -50%)
}

.thanks-upsell__pic {
	width: 60%
}

.thanks-upsell__name {
	display: block;
	margin-top: 1em;
	font-weight: bold;
	font-size: 2rem
}

@media screen and (max-width: 896px) {
	.thanks-upsell__name {
		margin-top: 0.5em;
		font-size: 5.333vw
	}
}

.thanks-company {
	position: relative;
	margin: 5em 0 0;
	padding: 90px 40px
}

.thanks-company.display-none {
	display: none
}

@media screen and (max-width: 896px) {
	.thanks-company {
		padding: 15vw 0
	}
}

.thanks-company::before,
.thanks-company::after {
	position: absolute;
	right: -10px;
	left: -10px;
	height: 80px;
	border-right: 10px #fff solid;
	border-left: 10px #fff solid;
	content: ""
}

@media screen and (max-width: 1024px) {

	.thanks-company::before,
	.thanks-company::after {
		right: 0;
		left: 0
	}
}

@media screen and (max-width: 896px) {

	.thanks-company::before,
	.thanks-company::after {
		height: 10vw;
		border-width: 5px
	}
}

.thanks-company::before {
	top: 0;
	border-top: 10px #fff solid;
	border-radius: 40px 40px 0 0
}

@media screen and (max-width: 896px) {
	.thanks-company::before {
		border-width: 5px;
		border-radius: 20px 20px 0 0
	}
}

.thanks-company::after {
	bottom: 0;
	border-bottom: 10px #fff solid;
	border-radius: 0 0 40px 40px
}

@media screen and (max-width: 896px) {
	.thanks-company::after {
		border-width: 5px;
		border-radius: 0 0 20px 20px
	}
}

.thanks-company__ttl {
	position: absolute;
	top: -1em;
	right: 0;
	left: 0;
	display: inline-block;
	width: 60%;
	margin: 0 auto;
	padding: 0.5em;
	font-size: 3.2rem;
	text-align: center;
	background: #ffde35
}

@media screen and (max-width: 896px) {
	.thanks-company__ttl {
		width: 80%;
		font-size: 4.333vw
	}
}

.thanks-company__item {
	padding: 0 35px 20px;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 8px #4abfd7
}

@media screen and (max-width: 896px) {
	.thanks-company__item {
		padding: 0 1.5em 1em;
		border-radius: 10px;
		box-shadow: 0 4px #4abfd7
	}
}

.thanks-company__item:not(:last-child) {
	margin-bottom: 40px
}

@media screen and (max-width: 896px) {
	.thanks-company__item:not(:last-child) {
		margin-bottom: 15vw
	}
}

.thanks-company__head {
	display: flex;
	align-items: center;
	padding: 0.3em 0 0.4em;
	font-size: 3.6rem;
	line-height: 1.2;
	background: linear-gradient(-50deg, transparent 35%, #000 45%, #000 55%, rgba(0, 0, 0, 0) 65%) repeat-x bottom;
	background-size: 6px 4px
}

@media screen and (max-width: 896px) {
	.thanks-company__head {
		flex-flow: column;
		padding-bottom: 0.6em;
		font-size: 5vw;
		background-size: 0.3em 0.2em
	}
}

.thanks-company__img {
	width: 160px;
	height: 85px;
	margin-right: 40px;
	padding: 5px;
	background: #fff;
	border: 5px solid #000;
	border-radius: 10px
}

@media screen and (max-width: 896px) {
	.thanks-company__img {
		width: 32vw;
		height: 15vw;
		margin: -9vw 0 2vw;
		padding: 1vw;
		border-width: 3px;
		border-radius: 5px
	}
}

.thanks-company__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	font-family: "object-fit: contain;"
}

.thanks-company__name {
	margin: 0;
	color: #4abfd7
}

.thanks-company__cnt {
	margin: 0;
	padding-top: 1em;
	font-size: 2rem
}

@media screen and (max-width: 896px) {
	.thanks-company__cnt {
		font-size: inherit
	}
}

.thanks-company__info {
	display: flex;
	justify-content: space-between
}

@media screen and (max-width: 896px) {
	.thanks-company__info {
		display: block
	}
}

.thanks-company__address {
	flex: 1;
	margin: 0
}

.thanks-company__tel {
	width: 14em;
	margin: 0;
	padding-left: 1em
}

@media screen and (max-width: 896px) {
	.thanks-company__tel {
		width: 100%;
		padding: 0
	}
}

.thanks-company__comment {
	margin-top: 1em
}

@font-face {
	font-weight: 400;
	font-family: "Ropa Sans";
	font-style: normal;
	src: url("../../assets/font/RopaSans-Regular.woff2") format("woff2"), url("../../assets/font/RopaSans-Regular.woff") format("woff"), url("../../assets/font/RopaSans-Regular.ttf") format("truetype"), url("../../assets/font/RopaSans-Regular.eot") format("embedded-opentype");
	font-display: swap
}

@keyframes topScaleUp {
	0% {
		transform: scale(1);
		opacity: 0
	}

	50% {
		transform: scale(1.3)
	}

	100% {
		transform: scale(1);
		opacity: 1
	}
}

.top-btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18em;
	height: 2.4em;
	margin: 0 auto 2em;
	/*color: #fff;*/
	font-weight: bold;
	font-size: 3.4rem;
	font-family: inherit;
	text-decoration: none;
	background: transparent;
	/*border: 4px solid #fff;
	border-radius: 100px;
	box-shadow: 0 4px #000;*/
	cursor: pointer
}

@media screen and (max-width: 896px) {
	.top-btn {
		width: 90vw;
		height: 3em;
		font-size: 5.2vw;
		padding: 0;
	}
}

.top-btn:hover {
	top: 2px;
	/*box-shadow: 0 2px #000*/
}

.top-btn span {
	display: inline-block;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.6em;
	height: 1.6em;
	color: #000;
	font-size: 0.9em;
	background: #ffde35;
	border-radius: 50%
}

.top-btn span+span {
	margin: 0 0.5em 0 -0.2em
}

.top-btn[disabled] {
	opacity: 0.5;
	pointer-events: none
}

.top-mv {
	margin-bottom: 40px
}

body.home .top-mv {
	margin-bottom: 0;
	padding: 40px 0;
	background: #4abfd7;
	border-bottom: 10px solid #ffde35
}

@media screen and (max-width: 896px) {
	body.home .top-mv {
		padding: 5vw 0
	}
}

.top-mv__pic {
	display: flex;
	align-items: center;
	justify-content: space-around;
	margin-bottom: 65px;
	padding: 40px;
	overflow: hidden;
	text-align: center;
	background: #4abfd7;
	border-radius: 40px
}

body.home .top-mv__pic {
	margin-bottom: 0;
	padding: 0;
	background: transparent;
	border-radius: 0
}

.top-mv__pic--text {
	width: 40%
}

.top-mv__pic--img {
	position: relative;
	width: 48%;
	transform: translateX(120%)
}

body.home .top-mv__pic--img {
	transform: translateX(105%)
}

body.home .top-mv__pic--img.is-active {
	transform: translateX(0)
}

.top-mv__pic--img.is-active {
	transform: translateX(0);
	animation: topMoveCar 1s linear 1
}

@media screen and (max-width: 896px) {
	.top-mv__pic {
		display: block;
		margin-bottom: 10vw;
		padding: 10vw;
		border-radius: 20px
	}

	body.home .top-mv__pic {
		padding: 5vw
	}

	.top-mv__pic--text {
		width: 100%;
		margin-bottom: 5vw
	}

	.top-mv__pic--img {
		width: 100%
	}
}

@keyframes topMoveCar {
	0% {
		top: 0;
		transform: translateX(120%)
	}

	5%,
	15%,
	25%,
	35%,
	45%,
	55%,
	65%,
	85%,
	95% {
		top: -2px
	}

	10%,
	20%,
	30%,
	40%,
	50%,
	60%,
	70%,
	90% {
		top: 0
	}

	75% {
		top: -10px
	}

	80% {
		top: 0
	}

	100% {
		top: 0;
		transform: translateX(0)
	}
}

.top-movie {
	padding: 50px 0 0;
	background: #fff
}

@media screen and (max-width: 896px) {
	.top-movie {
		padding: 10vw 0
	}
}

.top-movie__ttl {
	font-size: 3.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-movie__ttl {
		font-size: 5.867vw
	}
}

.top-movie__txt {
	margin: 1em 0;
	font-weight: bold;
	font-size: 2.6rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-movie__txt {
		font-size: 3.733vw
	}
}

.top-movie__txt em {
	color: #fd710d;
	font-style: normal
}

.top-movie__cover {
	position: relative;
	width: 1000px;
	margin: 0 auto;
	padding: 20px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 15px -3px #999
}

@media screen and (max-width: 896px) {
	.top-movie__cover {
		width: 100%;
		padding: 10px;
		box-shadow: 0 0 10px -3px #999
	}
}

.top-movie__cover iframe {
	width: 760px;
	height: 427px
}

@media screen and (max-width: 896px) {
	.top-movie__cover iframe {
		width: 100%;
		height: 50vw
	}
}

.top-banner {
	padding-bottom: 10vw
}

.top-area {
	padding: 60px 0 65px;
	background: #fff
}

@media screen and (max-width: 896px) {
	.top-area {
		padding: 10vw 0
	}
}

.top-area__ttl {
	margin: 0;
	padding-left: 1.5em;
	font-size: 3.8rem;
	background: url("../img/area_map_ttl.svg") no-repeat left/auto 100%
}

@media screen and (max-width: 896px) {
	.top-area__ttl {
		margin-bottom: 0.5em;
		padding-left: 3em;
		font-size: 6vw
	}
}

.top-area__ttl span {
	color: #f56f00
}

@media screen and (max-width: 896px) {
	.top-area__img {
		display: none
	}
}

.top-area__inner {
	position: relative;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-area__inner {
		margin: 0 -5vw;
		border-top: 1px solid #616774
	}
}

.top-area__group {
	position: absolute;
	width: 200px
}

@media screen and (max-width: 896px) {
	.top-area__group {
		position: static;
		width: 100%
	}
}

.top-area__group--hokkaido {
	top: 0;
	right: 380px;
	width: 100px
}

@media screen and (max-width: 896px) {
	.top-area__group--hokkaido {
		width: 100%
	}
}

.top-area__group--hokkaido .top-area__item {
	width: 100%
}

.top-area__group--tohoku {
	top: 0;
	right: 0
}

.top-area__group--kanto {
	top: 192px;
	right: 0
}

.top-area__group--tokai {
	right: 0;
	bottom: 0
}

.top-area__group--kinki {
	right: 220px;
	bottom: 0
}

.top-area__group--shikoku {
	right: 440px;
	bottom: 0
}

.top-area__group--koshinetsu {
	top: 40px;
	left: 280px
}

.top-area__group--chugoku {
	top: 40px;
	left: 20px
}

.top-area__group--kyushu {
	top: 242px;
	left: 20px
}

.top-area__group-ttl {
	margin: 0;
	color: #fff;
	font-size: 2rem;
	text-align: center;
	background: #f56f00
}

@media screen and (max-width: 896px) {
	.top-area__group-ttl {
		position: relative;
		padding: 0.8em;
		color: #f56f00;
		font-size: 5vw;
		text-align: left;
		background: #fff;
		border-bottom: 1px solid #616774
	}

	.top-area__group-ttl::after {
		position: absolute;
		top: 50%;
		right: 3vw;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 8vw;
		height: 8vw;
		margin-top: -4vw;
		color: #fff;
		font-size: 6vw;
		background: #ccc;
		border-radius: 50%;
		content: "+"
	}
}

.top-area__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	list-style: none
}

@media screen and (max-width: 896px) {
	.top-area__list.is-open .top-area__item {
		border-bottom: 1px solid #616774
	}

	.top-area__list.is-open .top-area__link {
		padding: 0.8em;
		line-height: 1.625;
		opacity: 1
	}
}

.top-area__item {
	width: calc(50% - 5px);
	margin-top: 5px
}

@media screen and (max-width: 896px) {
	.top-area__item {
		width: 100%;
		margin: 0
	}
}

.top-area__link {
	display: block;
	padding: 0.7rem;
	color: #f56f00;
	font-weight: bold;
	font-size: 1.7rem;
	text-align: center;
	background: #faf3f3;
	border: 1px solid #f56f00;
	border-radius: 5px
}

@media screen and (min-width: 1025px) {
	.top-area__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.top-area__link:hover {
		opacity: .7
	}

	.top-area__link:hover img {
		opacity: 1
	}
}

@media screen and (max-width: 896px) {
	.top-area__link {
		position: relative;
		padding: 0 0.8em;
		color: #000;
		font-size: 4vw;
		line-height: 0;
		text-align: left;
		background: #fff;
		border: none;
		border-left: 20px solid #f56f00;
		border-radius: 0;
		opacity: 0;
		transition: all 0.2s ease-out
	}

	.top-area__link::after {
		position: absolute;
		top: 50%;
		right: 5vw;
		display: block;
		width: 3vw;
		height: 3vw;
		margin-top: -1.5vw;
		border-right: 3px solid #616774;
		border-bottom: 3px solid #616774;
		transform: rotate(-45deg);
		content: ""
	}
}

.top-articles {
	padding-bottom: 75px;
	background: #fff
}

@media screen and (max-width: 896px) {
	.top-articles {
		padding-bottom: 30px
	}
}

.top-articles__ttl {
	position: relative;
	margin: 0 0 1.5em;
	padding-bottom: 0.5em;
	font-size: 3.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-articles__ttl {
		margin-bottom: 1.5em;
		font-size: 5.6vw
	}
}

.top-articles__ttl::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1.6em;
	height: 4px;
	margin-left: -0.8em;
	background: #000;
	content: ""
}

.top-articles__list {
	padding: 0
}

.top-articles__item {
	width: calc(25% - 20px);
	padding: 20px;
	overflow: hidden;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 5px #ccc
}

.top-articles__item:not(:last-child) {
	margin-right: 20px
}

@media screen and (max-width: 896px) {
	.top-articles__item {
		width: 48%
	}
}

.top-articles__item figure {
	margin: -20px -20px 0 -20px
}

.top-articles__link {
	display: block
}

@media screen and (min-width: 1025px) {
	.top-articles__link {
		cursor: pointer;
		transition: .2s opacity
	}

	.top-articles__link:hover {
		opacity: .7
	}

	.top-articles__link:hover img {
		opacity: 1
	}
}

.top-articles__link figure {
	height: 148px;
	overflow: hidden
}

.top-articles__link figure img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.top-articles__art-ttl {
	font-weight: bold;
	font-size: 1.6rem
}

.top-articles__art-txt {
	font-size: 1.2rem
}

.top-articles .slick-prev::before,
.top-articles .slick-next::before {
	display: block;
	width: 30px;
	height: 30px;
	padding: 0.5em;
	color: #fff;
	line-height: 0.3;
	text-align: center;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 50px
}

.top-articles .slick-prev {
	left: -5px;
	z-index: 2
}

.top-articles .slick-prev::before {
	content: "<"
}

.top-articles .slick-next {
	right: -5px;
	z-index: 2
}

.top-articles .slick-next::before {
	content: ">"
}

.top-articles .slick-list {
	padding: 1em
}

@media screen and (max-width: 896px) {
	.top-articles .slick-list {
		padding: 2em
	}
}

.top-reason {
	padding: 85px 0 90px
}

@media screen and (max-width: 896px) {
	.top-reason {
		padding: 10vw 0
	}
}

.top-reason__ttl {
	position: relative;
	margin: 0 0 1.6em;
	font-size: 3.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-reason__ttl {
		font-size: 5.6vw
	}
}

.top-reason__ttl::before,
.top-reason__ttl::after {
	position: absolute;
	top: 22px;
	width: calc(50% - 8.5em);
	height: 80px;
	border-width: 10px;
	border-top: 10px #fff solid;
	content: ""
}

@media screen and (max-width: 896px) {

	.top-reason__ttl::before,
	.top-reason__ttl::after {
		top: 0.6em;
		width: calc(50% - 7.5em);
		height: 10vw;
		border-width: 5px
	}
}

.top-reason__ttl::before {
	left: -20px;
	border-left: 10px #fff solid;
	border-top-left-radius: 40px
}

@media screen and (max-width: 1024px) {
	.top-reason__ttl::before {
		left: -2.5vw
	}
}

@media screen and (max-width: 896px) {
	.top-reason__ttl::before {
		border-width: 5px;
		border-top-left-radius: 20px
	}
}

.top-reason__ttl::after {
	right: -20px;
	border-right: 10px #fff solid;
	border-top-right-radius: 40px
}

@media screen and (max-width: 1024px) {
	.top-reason__ttl::after {
		right: -2.5vw
	}
}

@media screen and (max-width: 896px) {
	.top-reason__ttl::after {
		border-width: 5px;
		border-top-right-radius: 20px
	}
}

.top-reason__list {
	position: relative;
	margin: 0 auto 55px;
	padding: 0 30px 100px;
	list-style: none
}

@media screen and (max-width: 896px) {
	.top-reason__list {
		padding: 0 0 15vw
	}
}

.top-reason__list::after {
	position: absolute;
	right: -20px;
	bottom: 0;
	left: -20px;
	height: 80px;
	border-right: 10px #fff solid;
	border-bottom: 10px #fff solid;
	border-left: 10px #fff solid;
	border-radius: 0 0 40px 40px;
	content: ""
}

@media screen and (max-width: 1024px) {
	.top-reason__list::after {
		right: 0;
		left: 0
	}
}

@media screen and (max-width: 896px) {
	.top-reason__list::after {
		height: 10vw;
		border-width: 5px;
		border-radius: 0 0 20px 20px
	}
}

.top-reason__item {
	padding: 5px 30px 30px;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 8px #4abfd7
}

@media screen and (max-width: 896px) {
	.top-reason__item {
		padding: 0 1.3em 2em;
		border-radius: 10px;
		box-shadow: 0 4px #4abfd7
	}

	.top-reason__item:last-child .top-reason__img {
		width: 100%
	}
}

.top-reason__item:not(:last-child) {
	margin-bottom: 33px
}

@media screen and (max-width: 896px) {
	.top-reason__item:not(:last-child) {
		margin-bottom: 13vw
	}
}

.top-reason__subttl {
	display: flex;
	align-items: center;
	margin: 0;
	line-height: 1.2;
	background: linear-gradient(-50deg, transparent 35%, #000 45%, #000 55%, rgba(0, 0, 0, 0) 65%) repeat-x bottom;
	background-size: 6px 4px
}

@media screen and (max-width: 896px) {
	.top-reason__subttl {
		position: relative;
		top: -1.8em;
		flex-flow: column;
		margin-bottom: -1.3em;
		padding-bottom: 0.8em;
		background-size: 0.3em 0.2em
	}
}

.top-reason__subttl-num {
	display: flex;
	align-items: center
}

@media screen and (max-width: 896px) {
	.top-reason__subttl-num {
		margin-bottom: 1em
	}
}

.top-reason__subttl-num em {
	font-weight: normal;
	font-size: 8rem;
	font-family: "Ropa Sans", sans-serif;
	font-style: normal;
	line-height: 1
}

@media screen and (max-width: 896px) {
	.top-reason__subttl-num em {
		font-size: 15vw
	}
}

.top-reason__subttl-num img {
	width: 30px
}

@media screen and (max-width: 896px) {
	.top-reason__subttl-num img {
		width: 5.5vw
	}
}

.top-reason__subttl-inner {
	margin: 0 auto;
	padding-right: 3em;
	color: #4abfd7;
	font-size: 3.6rem
}

@media screen and (max-width: 896px) {
	.top-reason__subttl-inner {
		padding: 0;
		font-size: 5vw
	}
}

.top-reason__cnt {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 30px
}

@media screen and (max-width: 896px) {
	.top-reason__cnt {
		display: block;
		padding: 0
	}
}

.top-reason__txt {
	margin: 0;
	font-size: 2rem
}

@media screen and (max-width: 896px) {
	.top-reason__txt {
		font-size: 3.6vw
	}
}

.top-reason__img {
	width: 300px;
	margin-top: 20px
}

@media screen and (max-width: 896px) {
	.top-reason__img {
		display: block;
		width: 60vw;
		margin: 3vw auto 0;
		margin-top: 20px
	}
}

.top-voice {
	padding: 80px 0 120px;
	background: #fff
}

@media screen and (max-width: 896px) {
	.top-voice {
		padding: 10vw 0
	}
}

.top-voice__ttl {
	position: relative;
	margin: 0 0 115px;
	padding-bottom: 0.5em;
	font-size: 3.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-voice__ttl {
		margin-bottom: 5.5em;
		font-size: 5.6vw
	}
}

.top-voice__ttl::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1.6em;
	height: 4px;
	margin-left: -0.8em;
	background: #000;
	content: ""
}

.top-voice__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	list-style: none
}

@media screen and (max-width: 896px) {
	.top-voice__list {
		display: block
	}
}

.top-voice__item {
	position: relative;
	display: flex;
	flex-flow: column;
	width: calc(50% - 30px);
	min-height: 460px;
	padding: 75px 35px 30px;
	background: #ffde35;
	border-radius: 20px
}

@media screen and (max-width: 896px) {
	.top-voice__item {
		width: 100%;
		min-height: auto;
		padding: 3.5em 1.5em 2em;
		border-radius: 10px
	}
}

.top-voice__item:not(:last-child):not(:nth-last-child(2)) {
	margin-bottom: 140px
}

@media screen and (max-width: 896px) {
	.top-voice__item:not(:last-child):not(:nth-last-child(2)) {
		margin-bottom: 25vw
	}
}

@media screen and (max-width: 896px) {
	.top-voice__item:not(:last-child) {
		margin-bottom: 25vw
	}
}

.top-voice__icon {
	position: absolute;
	bottom: calc(100% - 50px);
	left: 50%;
	text-align: center;
	transform: translateX(-50%)
}

@media screen and (max-width: 896px) {
	.top-voice__icon {
		bottom: calc(100% - 9vw);
		width: 100%
	}
}

.top-voice__talking {
	font-weight: bold
}

.top-voice__talking span {
	opacity: 0
}

.top-voice__img {
	width: 100px
}

@media screen and (max-width: 896px) {
	.top-voice__img {
		width: 20%
	}
}

.top-voice__prof {
	margin: 0 0 0.7em;
	font-weight: bold;
	font-size: 1.25em;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-voice__prof {
		font-size: 4.3vw
	}
}

.top-voice__txt {
	margin: 0
}

@media screen and (max-width: 896px) {
	.top-voice__txt {
		margin-bottom: 2.5em
	}
}

.top-voice__company-list {
	display: flex;
	justify-content: space-between;
	margin: auto 0 15px
}

.top-voice__company-item {
	width: calc(33.3% - 10px);
	text-align: center;
	opacity: 0
}

@media screen and (max-width: 896px) {
	.top-voice__company-item {
		width: calc(33.3% - 2vw)
	}
}

.top-voice__company-item.is-active {
	opacity: 1
}

.top-voice__company-ttl {
	padding: 0;
	color: #fff;
	font-size: 1.5em;
	line-height: 1.3;
	text-align: center;
	background: #000;
	border-radius: 10px 10px 0 0
}

@media screen and (max-width: 896px) {
	.top-voice__company-ttl {
		font-size: 1.2em
	}
}

.top-voice__company-num {
	margin: 0;
	font-weight: bold;
	font-size: 1.2em;
	background: #fff;
	border-radius: 0 0 10px 10px;
	transition: 0.5s linear
}

@media screen and (max-width: 896px) {
	.top-voice__company-num {
		font-size: 1em
	}
}

.top-voice__company-num--active {
	position: relative;
	color: #fff;
	background: #f56f00
}

.top-voice__company-num--active::before {
	position: absolute;
	top: -68px;
	left: 50%;
	width: 35px;
	height: 30px;
	margin-left: -17.5px;
	background: url("../img/top/voice_icon.svg") no-repeat center/contain;
	content: ""
}

@media screen and (max-width: 896px) {
	.top-voice__company-num--active::before {
		top: -3.5em;
		width: 1.6em;
		height: 1.5em;
		margin-left: -0.8em
	}
}

.top-voice__company-num em {
	font-size: 1.6em;
	font-style: normal
}

.top-voice__difference {
	margin: 0;
	font-weight: bold;
	font-size: 4.6rem;
	line-height: 1;
	text-align: center;
	opacity: 0
}

.top-voice__difference.is-active {
	opacity: 1;
	animation: topScaleUp 1s linear 1
}

@media screen and (max-width: 896px) {
	.top-voice__difference {
		font-size: 8.5vw
	}
}

.top-voice__difference span {
	color: #f56f00;
	font-size: 0.7em
}

.top-voice__difference em {
	font-size: 2em;
	font-size: 1.8em;
	font-style: normal
}

.top-step {
	padding: 70px 0 90px;
	background: #4abfd7
}

@media screen and (max-width: 896px) {
	.top-step {
		padding: 10vw 0
	}
}

.top-step__ttl {
	position: relative;
	margin: 0 0 1.5em;
	padding-bottom: 0.5em;
	color: #fff;
	font-size: 3.8rem;
	text-align: center
}

@media screen and (max-width: 896px) {
	.top-step__ttl {
		font-size: 5.6vw
	}
}

.top-step__ttl::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1.6em;
	height: 4px;
	margin-left: -0.8em;
	background: #fff;
	content: ""
}

.top-step__list {
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	list-style: none
}

@media screen and (max-width: 896px) {
	.top-step__list {
		display: block
	}
}

.top-step__item {
	position: relative;
	width: calc(33.3% - 20px);
	padding: 20px 0 30px;
	text-align: center;
	background: #fff;
	border-radius: 25px
}

@media screen and (max-width: 896px) {
	.top-step__item {
		width: 100%;
		padding: 1.5em 2em;
		text-align: left;
		border-radius: 10px
	}

	.top-step__item:not(:last-child) {
		margin-bottom: 9vw
	}

	.top-step__item:not(:last-child)::after {
		position: absolute;
		top: calc(100% + 3vw);
		left: 50%;
		width: 0;
		height: 0;
		margin-left: -4vw;
		border-color: #000 transparent transparent transparent;
		border-style: solid;
		border-width: 4vw 4vw 0 4vw;
		content: ""
	}
}

.top-step__num {
	display: inline-block;
	margin: 0 0 15px;
	padding: 0 1em;
	color: #fff;
	font-size: 1.8rem;
	background: #f56f00;
	border-radius: 100px
}

@media screen and (max-width: 896px) {
	.top-step__num {
		font-size: 4.5vw
	}
}

.top-step__subttl {
	margin: 0 0 0.6em;
	font-size: 2.5rem;
	line-height: 1.3
}

@media screen and (max-width: 896px) {
	.top-step__subttl {
		font-size: 5vw
	}
}

.top-step__img {
	width: 65%;
	margin-bottom: 20px
}

@media screen and (max-width: 896px) {
	.top-step__img {
		position: absolute;
		top: 50%;
		right: 4vw;
		width: 30vw;
		margin: 0;
		transform: translateY(-50%)
	}
}

.top-step__txt {
	margin: 0;
	font-size: 1.8rem
}

@media screen and (max-width: 896px) {
	.top-step__txt {
		font-size: 3.4vw
	}
}

.file-wrap {
	margin-bottom: 5px;
	display: table;
	width: 100%;
}

.file-wrap .select-file {
	background: #fff;
	border: 2px solid #999;
	border-radius: 4px;
	height: 40px;
	line-height: 40px;
	padding-left: 10px;
	font-weight: normal;
	display: table-cell;
	width: 80%;
	overflow: hidden;
	max-width: 1px;
	white-space: nowrap;
	cursor: pointer;
}

.file-wrap .file-hidden {
	position: absolute;
	left: -5000px;
}

.file-wrap .clear-file {
	width: 20%;
	display: table-cell;
	white-space: nowrap;
	height: 35px;
	line-height: 35px;
	cursor: pointer;
}

.file-wrap .clear-file .btn {
	border-radius: 4px;
	padding: 0 10px;
	font-weight: normal;
	background-color: #b54d4d;
	color: #FFF;
	margin-top: 0;
	margin-left: 15px;
	text-align: center;
}


#modal_overlay{
  z-index:6;
  display:none;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:120%;
  background-color: rgba( 0,0,0, 0.75 ) ;
}
.modal{
  margin:0;
  position:fixed;
  display:none;
  z-index:7;
  font-family: Axis;
  width:400px;
  height:560px;
}
.modal .modal_title{
  color:#ffffff;
  font-size:150%;
  padding:5px;
  height:50px;
  line-height:50px;
  text-align:center;
  background-color:#888888;
  border-top-right-radius: 5px;
  -webkit-border-top-right-radius: 5px;
  -moz-border-radius-topright: 5px;
  border-top-left-radius: 5px;
  -webkit-border-top-left-radius: 5px;
  -moz-border-radius-topleft: 5px;
}
.modal .modal_title img{
  vertical-align: middle;
  padding-bottom: 6px;
}
.modal .modal_title span{
  margin-left:10px;
}
.modal .modal_content{
  margin:0 auto;
  background-color:#FFFFFF;
  border:2px #888888 solid;
  border-bottom-right-radius: 5px;
  -webkit-border-bottom-right-radius: 5px;
  -moz-border-radius-bottomright: 5px;
  border-bottom-left-radius: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-bottomleft: 5px;
  padding:10px;
}
.modal .modal_content .camera_photo{
  background-color: white;
  padding:10px;
  text-align: center;
}
.modal .modal_content .camera_photo img{
  width: auto;
  height: 280px;
  display: none;
}
.modal .modal_content .camera_hint{
  margin: 10px 0;
  text-align: center;
}
.modal .modal_content .camera_btn{
  text-align:center;
  background-color:#F16F2F;
  border-radius:5px;
  font-size:130%;
  padding:10px;
  position:relative;
  top:0;
  margin-bottom:10px;
  box-shadow: 0 5px 0 rgba(164,99,0,1);
}
.modal .modal_content .camera_btn:hover{
  cursor: pointer;
}
.modal .modal_content .camera_btn img{
  text-align: center;
  vertical-align: middle;
  width:50px;
  height:auto;
  margin: 0 auto;
}
.modal .modal_content .camera_btn a{
  display:block;
  width:100%;
  color:#ffffff;
  text-decoration: none;
}

.infomationRule {
  text-align: center;
  margin-top: 2em;
}

.infomationRule__txt {
  color: #fff;
}

.infomationRule__icn {
  width: 1.3em;
  vertical-align: sub;
  margin-right: 0.5em;
  color: #fff;
}

.infomationRule__list {
  margin-top: 1em;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  color: #fff;
}

.infomationRule__link {
  color: #fff;
}

.infomationRule__item {
  padding: 0 1em;
  border-right: 1px solid #fff;
}

.infomationRule__item:last-child {
  border-right: none;
}