@charset "UTF-8";


/** -- contact_btn -- **/
main .contact_btn {
	border-radius: 20px;
	color: white;
	display: block;
	font-size: 40px;
	letter-spacing: 3px;
	margin-top: -5px;
	overflow: hidden;
	padding: 0 20px 0 40px;
	position: relative;
	z-index: 1;
}
main .contact_btn::before,
main .contact_btn::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	transition: ease .3s;
	height: 100%;
	width: 100%;
}
main .contact_btn::before {
	background: linear-gradient(70deg, #FFC04A, #FCD793);
	opacity: 0;
	transform: translateX(100%);
	z-index: -1;
}
main .contact_btn:hover::before {
	opacity: 1;
	transform: translateX(0);
}
main .contact_btn::after {
	background: linear-gradient(70deg, #FF8F4A, #FFC04A);
	z-index: -2;
}
main .contact_btn:hover::after {
	transform: translateX(-100%);
}
main .contact_btn span {
	background: url("../img/site/icon-arrow-01.svg") no-repeat 100% 50% / 44px;
	display: block;
	padding: 8px 0;
	padding-right: 60px;
}

@media screen and (max-width: 1520px) {
	main .contact_btn {
		border-radius: 1.3vw;
		font-size: 2.4vw;
		letter-spacing: 3px;
		margin-top: -5px;
		padding: 0 1.3vw 0 2.7vw;
	}
	main .contact_btn span {
		background-size: 2.8vw;
		padding: .5vw 0;
		padding-right: 4vw;
	}
}

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

@media screen and (max-width: 640px) {
	main .contact_btn {
        border-radius: 3vw;
        font-size: 4.2vw;
        letter-spacing: .5vw;
        margin-top: 0;
        padding: 0 4vw 0 4vw;
	}
	main .contact_btn span {
        background-size: 6vw;
        padding: 2vw 0;
        padding-right: 6vw;
	}
}


/** -- fv -- **/
.fv .box {
	background-color: #005CD0;
	border-radius: 80px 0 0 80px;
	margin-left: -160px;
	margin-right: -244px;
	margin-top: 55px;
	padding: 150px 0 70px 160px;
	z-index: 0;
}
.fv .box .series {
	left: -80px;
	top: 50%;
	transform: translateY(-50%);
}

.fv .box .text {
	color: white;
}
.fv .box .text .catch {
	font-size: 70px;
	margin-bottom: 20px;
}
.fv .box .text h2 {
	font-size: 141px;
	letter-spacing: -20px;
	margin-left: -20px;
	padding-top: 110px;
}
.fv .box .text h2 img {
	left: -30px;
	top: 0;
	width: 430px;
}
.fv .box .text p.exp {
	font-size: 30px;
}
.fv .box .text .contact_btn {
	display: table;
	margin-top: 50px;
}

.fv .box .image {
	margin-top: -30px;
	width: calc(100% - 770px);
}

.fv .box .circle {
	background-color: white;
	border-radius: 50%;
	z-index: -1;
}
.fv .box .circle-01 {
	right: 520px;
	top: 315px;
	height: 285px;
	width: 285px;
}
.fv .box .circle-02 {
	right: -110px;
	top: -170px;
	height: 265px;
	width: 265px;
}
.fv .box .circle-03 {
	bottom: -30px;
	left: -200px;
	height: 170px;
	width: 170px;
}
.fv .box .ellipse {	
	background-color: white;
	border-radius: 300px;
	bottom: 175px;
	right: -230px;
	transform: rotate(-45deg);
	height: 440px;
	width: 840px;
	z-index: -1;
}

@media screen and (max-width: 1520px) {
	.fv .box {
		border-radius: 5.4vw 0 0 5.4vw;
		margin-left: -1vw;
		margin-right: -11vw;
		margin-top: 3.8vw;
		padding: 7vw 0 8vw 4.5vw;
	}
	.fv .box .series {
		left: -3vw;
		top: 40%;
	}

	.fv .box .text .catch {
		font-size: 4.2vw;
		margin-bottom: 1vw;
	}
	.fv .box .text h2 {
		font-size: 8.4vw;
		letter-spacing: -1.4vw;
		margin-left: -1.3vw;
		padding-top: 7vw;
	}
	.fv .box .text h2 img {
        left: -2vw;
        width: 25vw;
	}
	.fv .box .text p.exp {
		font-size: 1.9vw;
	}
	.fv .box .text .contact_btn {
		margin-top: 3.4vw;
	}

	.fv .box .image {
        margin-top: -2vw;
        width: calc(100% - 50vw);
	}

	.fv .box .circle-01 {
        right: 34.3vw;
        top: 20.6vw;
        height: 18vw;
        width: 18vw;
	}
	.fv .box .circle-02 {
        right: -7vw;
        top: -11vw;
        height: 17vw;
        width: 17vw;
	}
	.fv .box .circle-03 {
		bottom: -3vw;
        left: -7vw;
        height: 11vw;
        width: 11vw;
	}
	.fv .box .ellipse {
        border-radius: 20vw;
        bottom: 13vw;
        right: -15vw;
        height: 28vw;
        width: 55vw;
	}
}

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

@media screen and (max-width: 640px) {
	.fv {
		margin-top: 13vw;
	}
	.fv .box {
		border-radius: 6vw 0 0 6vw;
        margin-left: 4vw;
        margin-right: -4vw;
        margin-top: 3vw;
        padding: 12vw 0 12vw 6vw;
	}
	.fv .box .series {
        left: -6vw;
        top: 40%;
        width: 4vw;
	}

	.fv .box .text .catch {
        font-size: 4.8vw;
        margin-bottom: 6vw;
	}
	.fv .box .text h2 {
        font-size: 11vw;
        letter-spacing: -2vw;
        margin-bottom: 2vw;
        margin-left: -2vw;
        padding-top: 9vw;
	}
	.fv .box .text h2 img {
        left: -2vw;
        width: 30vw;
	}
	.fv .box .text p.exp {
		font-size: 3.6vw;
	}
	.fv .box .text .contact_btn {
		margin-top: 6vw;
	}
	.fv .box .text .contact_btn span {
        padding-right: 8vw;
	}

	.fv .box .image {
        margin-top: -2vw;
        margin-left: -35vw;
        margin-right: -9vw;
        width: 54vw;
	}

	.fv .box .circle-01 {
        right: 11vw;
        top: 16vw;
        height: 28vw;
        width: 28vw;
	}
	.fv .box .circle-02 {
        right: -10vw;
        top: -5vw;
        height: 18vw;
        width: 18vw;
	}
	.fv .box .circle-03 {
        bottom: -11vw;
        left: -14vw;
        height: 24vw;
        width: 24vw;
	}
	.fv .box .ellipse {
        border-radius: 20vw;
        bottom: 5vw;
        right: -20vw;
        height: 24vw;
        width: 50vw;
	}
}


/** -- strength -- **/
.strength {
	margin-top: 160px;
}
.strength h3 {
	font-size: 44px;
	margin-bottom: 30px;
}
.strength p.exp {
	font-size: 22px;
	font-weight: 700;
	line-height: 2.6;
}

/** circle **/
.strength .circle {
	background-color: #005CD0;
	border-radius: 50%;
	padding-top: 25px;
	text-align: center;
	right: 0;
	top: 95px;
	height: 498px;
	width: 498px;
}
.strength .circle img.stump {
	margin-bottom: 10px;
}
.strength .circle p {
	color: white;
	font-size: 44px;
	line-height: 1.4;
}
.strength .circle img.deco {
	left: -110px;
	top: -50px;
	width: 284px;
}

/** box **/
.strength .box {
	background-color: #E4E4E4;
	border-radius: 20px;
	margin-bottom: 60px;
	margin-top: 60px;
	height: 280px;
	z-index: 0;
}
.strength .box p {
	background-color: white;
	border-radius: 60px;
	color: #6A6254;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4;
	padding: 14px 40px;
	text-align: center;
}
.strength .box p.text-01 {
	left: 30px;
	top: 40px;
}
.strength .box p.text-02 {
	bottom: 30px;
	left: 270px;
}
.strength .box p.text-03 {
	right: 260px;
	top: 30px;
}
.strength .box p.text-04 {
	bottom: 20px;
	right: 70px;
}
.strength .box p.text-01::before,
.strength .box p.text-02::before,
.strength .box p.text-03::before {
	background-color: white;
	border-radius: 40px;
	content: '';
	display: block;
	position: absolute;
	height: 32px;
	width: 50px;
}
.strength .box p.text-01::before {
	bottom: -40px;
	left: 90px;
}
.strength .box p.text-02::before {
	right: -55px;
	top: 5px;
}
.strength .box p.text-03::before {
	bottom: -35px;
	right: 20px;
}

.strength .box .image-01 {
	bottom: -60px;
	left: 5px;
	width: 362px;
	z-index: -1;
}
.strength .box .image-02 {
	bottom: -28px;
	left: 670px;
	width: 140px;
}
.strength .box .image-03 {
	bottom: -40px;
	right: -85px;
	width: 402px;
}

@media screen and (max-width: 1520px) {
	.strength {
		margin-top: 10vw;
	}
	.strength h3 {
		font-size: 2.8vw;
		margin-bottom: 2vw;
	}
	.strength p.exp {
		font-size: 1.42vw;
	}

	/** circle **/
	.strength .circle {
		padding-top: 1.6vw;
		top: 7vw;
		height: 32vw;
		width: 32vw;
	}
	.strength .circle img.stump {
		margin-bottom: .8vw;
	}
	.strength .circle p {
		font-size: 2.8vw;
	}
	.strength .circle img.deco {
        left: -7vw;
        top: -3vw;
        width: 18vw;
	}

	/** box **/
	.strength .box {
		border-radius: 1.2vw;
		margin-bottom: 4vw;
		margin-top: 4vw;
		height: 18.6vw;
	}
	.strength .box p {
		border-radius: 60px;
		font-size: 1.52vw;
		padding: 1vw 2.6vw;
	}
	.strength .box p.text-01 {
        left: 2vw;
        top: 2.5vw;
	}
	.strength .box p.text-02 {
        bottom: 2vw;
        left: 18vw;
	}
	.strength .box p.text-03 {
        right: 17vw;
        top: 2vw;
	}
	.strength .box p.text-04 {
        bottom: 1.4vw;
        right: 5vw;
	}
	.strength .box p.text-01::before,
	.strength .box p.text-02::before,
	.strength .box p.text-03::before {
		border-radius: 3vw;
        height: 2vw;
        width: 3.2vw;
	}
	.strength .box p.text-01::before {
        bottom: -2.6vw;
        left: 6vw;
	}
	.strength .box p.text-02::before {
        right: -3.6vw;
        top: .3vw;
	}
	.strength .box p.text-03::before {
		bottom: -2.3vw;
        right: 1.4vw;
	}

	.strength .box .image-01 {
        bottom: -4vw;
        left: 0;
        width: 23vw;
	}
	.strength .box .image-02 {
        bottom: -1.8vw;
        left: 45vw;
        width: 9vw;
	}
	.strength .box .image-03 {
        bottom: -2.4vw;
        right: -5.4vw;
        width: 27vw;
	}
}

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

@media screen and (max-width: 640px) {
	.strength {
		margin-top: 28vw;
	}
	.strength h3 {
        font-size: 4.2vw;
        margin-bottom: 4vw;
	}
	.strength p.exp {
		font-size: 3.6vw;
        line-height: 2.0;
	}

	/** circle **/
	.strength .circle {
        padding-top: 1.6vw;
        right: 0;
        top: -20vw;
        height: 42vw;
        width: 42vw;
	}
	.strength .circle img.stump {
        margin-bottom: 1vw;
        width: 12vw;
	}
	.strength .circle p {
		font-size: 3.6vw;
	}
	.strength .circle img.deco {
        left: -14vw;
        top: -5vw;
        width: 32vw;
	}

	/** box **/
	.strength .box {
        border-radius: 3vw;
        margin-bottom: 4vw;
        margin-top: 8vw;
        height: 80vw;
	}
	.strength .box p {
        border-radius: 10vw;
        font-size: 3.4vw;
        padding: 2vw 4vw;
	}
	.strength .box p.text-01 {
        left: 4vw;
        top: 6vw;
	}
	.strength .box p.text-02 {
        bottom: 22vw;
        left: 7vw;
	}
	.strength .box p.text-03 {
        right: 4vw;
        top: 22vw;
	}
	.strength .box p.text-04 {
        bottom: 6vw;
        right: 6vw;
	}
	.strength .box p.text-01::before,
	.strength .box p.text-02::before,
	.strength .box p.text-03::before {
        border-radius: 5vw;
        height: 3vw;
        width: 5vw;
	}
	.strength .box p.text-01::before {
        bottom: -4vw;
        left: 6vw;
	}
	.strength .box p.text-02::before {
        bottom: -6vw;
        left: 15vw;
        right: auto;
        top: auto;
	}
	.strength .box p.text-03::before {
        bottom: -5vw;
        right: 20vw;
	}

	.strength .box .image-01 {
        bottom: 34vw;
        left: -6vw;
        width: 37vw;
	}
	.strength .box .image-02 {
        bottom: -2vw;
        left: 1vw;
        width: 18vw;
	}
	.strength .box .image-03 {
        bottom: 2vw;
        right: -10vw;
        width: 46vw;
	}
}


/** -- secret -- **/
.secret {
	margin-top: 160px;
}
.secret h2.title-01 img {
	margin-right: 5px;
}
.secret p.exp {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 60px;
}

/** list **/
.secret ul.list {
	margin: 0 45px 200px;
}
.secret ul.list::before {
	background-color: white;
	border-radius: 130px;
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: -46px;
	transform: rotate(-7deg) translateX(-50%);
	height: 255px;
	width: 1805px;
}
.secret ul.list li {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
	margin: 0 45px;
	overflow: hidden;
	padding-bottom: 125px;
	padding-top: 30px;
	text-align: center;
	width: calc(33.3333% - 90px);
}
.secret ul.list li span {
	font-size: 34px;
}
.secret ul.list li p {
	font-size: 63px;
}
.secret ul.list li img {
	transform: translateX(-50%);
}
.secret ul.list li:nth-child(1) img {
	bottom: -2px;
	left: calc(50% - 10px);
	width: 132px;
}
.secret ul.list li:nth-child(2) img {
	bottom: -35px;
	left: calc(50%);
	width: 95px;
}
.secret ul.list li:nth-child(3) img {
	bottom: 15px;
	left: calc(50% - 5px);
	width: 138px;
}

/** list_content **/
.secret .list_content .box {
	align-items: center;
}
.secret .list_content .box + .box {
	margin-top: 140px;
}
.secret .list_content .box:nth-child(1)::after,
.secret .list_content .box:nth-child(2)::after {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	height: 150px;
	width: 110vw;
}
.secret .list_content .box:nth-child(1)::after {
	background: url("../img/site/line-01.svg") no-repeat center / 100%;
	bottom: -150px;
}
.secret .list_content .box:nth-child(2)::after {
	background: url("../img/site/line-02.svg") no-repeat center / 100%;
	bottom: -130px;
}
.secret .list_content .box .ttl {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
	padding-top: 40px;
	text-align: center;
	height: 600px;
	width: 194px;
}
.secret .list_content .box .ttl span {
	display: block;
	font-size: 34px;
	margin-bottom: 10px;
}
.secret .list_content .box .ttl p {
	font-size: 63px;
	letter-spacing: 5px;
	margin: 0 auto;
	writing-mode: vertical-rl;
}
.secret .list_content .box .ttl img {
	transform: translateX(-50%);
	left: 50%;
}
.secret .list_content .box-01 .ttl img {
	bottom: 40px;
	width: 132px;
}
.secret .list_content .box-02 .ttl img {
	bottom: 30px;
	width: 95px;
}
.secret .list_content .box-03 .ttl img {
	bottom: 30px;
	width: 167px;
}

.secret .list_content .item {
	margin-left: 120px;
	width: calc(100% - 194px - 120px);
}
.secret .list_content .item h3 {
	color: #005CD0;
	font-size: 70px;
	letter-spacing: -2px;
	line-height: 1.3;
	margin-bottom: 50px;
}
.secret .list_content .item h4 {
	font-size: 34px;
	line-height: 1.4;
	margin-bottom: 30px;
}
.secret .list_content .item p.exp {
	font-size: 22px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.8;
	margin-bottom: 0;
	margin-right: 300px;
}
.secret .list_content .box-01 .image {
	bottom: 30px;
	right: 0;
	width: 332px;
}
.secret .list_content .box-02 .image {
	bottom: -10px;
	right: 20px;
	width: 247px;
}
.secret .list_content .box-03 .image {
	bottom: -50px;
	right: 0;
	width: 294px;
}

@media screen and (max-width: 1520px) {
	.secret {
		margin-top: 10vw;
	}
	.secret h2.title-01 img {
		margin-right: .3vw;
	}
	.secret p.exp {
		font-size: 1.42vw;
		margin-bottom: 4vw;
	}

	/** list **/
	.secret ul.list {
        margin: 0 4vw 18vw;
	}
	.secret ul.list::before {
        border-radius: 20vw;
        top: -4vw;
        height: 22vw;
        width: 102vw;
	}
	.secret ul.list li {
		border-radius: 2vw;
		margin: 0 3vw;
		padding-bottom: 8.3vw;
		padding-top: 2vw;
		width: calc(33.3333% - 6vw);
	}
	.secret ul.list li span {
		font-size: 2.2vw;
	}
	.secret ul.list li p {
		font-size: 4.2vw;
	}
	.secret ul.list li:nth-child(1) img {
		bottom: -.1vw;
		left: calc(50% - .6vw);
		width: 8.6vw;
	}
	.secret ul.list li:nth-child(2) img {
		bottom: -2.3vw;
		width: 6.3vw;
	}
	.secret ul.list li:nth-child(3) img {
        bottom: 1vw;
        left: calc(50% - .3vw);
        width: 9.1vw;
	}

	/** list_content **/
	.secret .list_content .box + .box {
		margin-top: 9vw;
	}
	.secret .list_content .box:nth-child(1)::after,
	.secret .list_content .box:nth-child(2)::after {
		height: 10vw;
		width: 110vw;
	}
	.secret .list_content .box:nth-child(1)::after {
		bottom: -10vw;
	}
	.secret .list_content .box:nth-child(2)::after {
		bottom: -8vw;
	}
	.secret .list_content .box .ttl {
		border-radius: 2.2vw;
		padding-top: 2.4vw;
		height: 38vw;
		width: 12.5vw;
	}
	.secret .list_content .box .ttl span {
		font-size: 2.2vw;
		margin-bottom: .6vw;
	}
	.secret .list_content .box .ttl p {
		font-size: 4.2vw;
		letter-spacing: .3vw;
	}
	.secret .list_content .box-01 .ttl img {
		bottom: 2.2vw;
		width: 8.6vw;
	}
	.secret .list_content .box-02 .ttl img {
		bottom: 1.6vw;
		width: 6vw;
	}
	.secret .list_content .box-03 .ttl img {
		bottom: 2vw;
		width: 11vw;
	}

	.secret .list_content .item {
        margin-left: 10vw;
        width: calc(100% - 13vw - 10vw);
	}
	.secret .list_content .item h3 {
		font-size: 4.6vw;
		letter-spacing: -.2vw;
		margin-bottom: 3.2vw;
	}
	.secret .list_content .item h4 {
		font-size: 2.2vw;
		margin-bottom: 2vw;
	}
	.secret .list_content .item p.exp {
		font-size: 1.42vw;
		margin-right: 20vw;
	}
	.secret .list_content .box-01 .image {
        bottom: 2.4vw;
        width: 22vw;
	}
	.secret .list_content .box-02 .image {
		bottom: -.6vw;
		right: 1.4vw;
		width: 16.3vw;
	}
	.secret .list_content .box-03 .image {
		bottom: -3.4vw;
		width: 19.4vw;
	}
}

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

@media screen and (max-width: 640px) {
	.secret {
		margin-top: 16vw;
	}
    .secret h2.title-01 img {
        margin-left: -2vw;
        margin-right: 1vw;
        width: 34vw;
	}
	.secret p.exp {
		font-size: 3.6vw;
		margin-bottom: 14vw;
	}

	/** list **/
	.secret ul.list {
		margin: 0 -2vw 14vw;
	}
	.secret ul.list::before {
        border-radius: 40vw;
        top: -8vw;
        height: 33vw;
        width: 105vw;
	}
	.secret ul.list li {
        border-radius: 3vw;
        margin: 0 2vw;
        padding-bottom: 10vw;
        padding-top: 4vw;
        width: calc(33.3333% - 4vw);
	}
	.secret ul.list li span {
		font-size: 4vw;
	}
	.secret ul.list li p {
		font-size: 5.4vw;
	}
	.secret ul.list li:nth-child(1) img {
        bottom: -.4vw;
        left: calc(50% - 1vw);
        width: 11vw;
	}
	.secret ul.list li:nth-child(2) img {
        bottom: -5vw;
        width: 9vw;
	}
	.secret ul.list li:nth-child(3) img {
        bottom: 0;
        left: calc(50% - 1vw);
        width: 14vw;
	}

	/** list_content **/
	.secret .list_content .box + .box {
		margin-top: 14vw;
	}
	.secret .list_content .box:nth-child(1)::after,
	.secret .list_content .box:nth-child(2)::after {
        height: 14vw;
        width: 130vw;
	}
	.secret .list_content .box:nth-child(1)::after {
		bottom: -12vw;
	}
	.secret .list_content .box:nth-child(2)::after {
		bottom: -12vw;
	}
	.secret .list_content .box .ttl {
        align-items: center;
        border-radius: 4vw;
        display: flex;
		margin-bottom: 8vw;
		overflow: hidden;
        padding: 3vw 8vw;
        height: auto;
        width: 100%;
	}
	.secret .list_content .box .ttl span {
		font-size: 6vw;
		margin-bottom: 0;
	}
	.secret .list_content .box .ttl p {
        font-size: 8.6vw;
        letter-spacing: .8vw;
        margin-left: 6vw;
        writing-mode: initial;
	}
	.secret .list_content .box .ttl img {
		transform: initial;
		left: auto;
	}
	.secret .list_content .box-01 .ttl img {
        bottom: 0;
        right: 12vw;
        width: 16vw;
	}
	.secret .list_content .box-02 .ttl img {
        bottom: -6vw;
        right: 13vw;
        width: 13vw;
	}
	.secret .list_content .box-03 .ttl img {
        bottom: 1vw;
        right: 8vw;
        width: 20vw;
	}

	.secret .list_content .item {
        margin-left: 0;
        width: 100%;
	}
	.secret .list_content .item h3 {
        font-size: 7.2vw;
        margin-bottom: 6vw;
	}
	.secret .list_content .item h4 {
		font-size: 4.6vw;
		margin-bottom: 4vw;
	}
	.secret .list_content .item p.exp {
        font-size: 3.6vw;
        margin-right: 0;
	}
	.secret .list_content .box .image {
		display: block;
		margin: 0 auto;
		margin-top: 4vw;
		position: relative;
		bottom: auto;
		right: auto;
	}
	.secret .list_content .box-01 .image {
        width: 64vw;
	}
	.secret .list_content .box-02 .image {
        width: 52vw;
	}
	.secret .list_content .box-03 .image {
		width: 54vw;
	}
}


/** -- success -- **/
.success {
	background-color: #E4E4E4;
	border-radius: 50px;
	margin: 0 100px;
	margin-top: 80px;
	padding: 140px 0;
}

/** comparison **/
.success .comparison {
	justify-content: space-between;
}
.success .comparison .sugosai,
.success .comparison .other {
	width: 535px;
}
.success .comparison h3 {
	display: table;
	font-size: 40px;
	line-height: 1.2;
	margin: 0 auto 40px;
}
.success .comparison .sugosai h3 {
	color: #005CD0;
	padding-left: 120px;
}
.success .comparison .sugosai h3 img {
	left: 0;
	top: -10px;
	width: 110px;
}
.success .comparison li {
	background-color: white;
	border-radius: 30px;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 30px;
	padding: 15px 0;
	padding-left: 80px;
}
.success .comparison .sugosai li:nth-child(2) {
	margin-bottom: 25px;
}
.success .comparison .sugosai li:nth-child(3) {
	margin-bottom: 25px;
}
.success .comparison .sugosai li:nth-child(4) {
	margin-bottom: 35px;
}
.success .comparison .other li:nth-child(2) {
	margin-bottom: 60px;
}
.success .comparison .other li:nth-child(3) {
	margin-bottom: 25px;
}
.success .comparison .other li:nth-child(4) {
	margin-bottom: 35px;
}
.success .comparison .other li:nth-child(5) {
	margin-bottom: 55px;
}
.success .comparison li::after {
	content: '';
	display: block;
	position: absolute;
}
.success .comparison .sugosai li::after {
	background: url("../img/site/balloon-horn-01.svg") no-repeat 0 0 / 100%;
	right: -10px;
	top: 2px;
	height: 21px;
	width: 25px;
}
.success .comparison .other li::after {
	background: url("../img/site/balloon-horn-02.svg") no-repeat 0 0 / 100%;
	left: -18px;
	top: 2px;
	height: 21px;
	width: 32px;
}
.success .comparison li img {
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
}
.success .comparison .stump::before {
	background: url("../img/site/stamp-01-blue.svg") no-repeat 0 0 / 100%;
	content: '';
	display: block;
	position: absolute;
	height: 60px;
	width: 155px;
}
.success .comparison .stump-01::before {
	left: -40px;
	top: -32px;
}
.success .comparison .stump-02::before {
	bottom: -17px;
	right: -44px;
}

.success .comparison .end {
	background-color: white;
	border-radius: 70px;
	margin: 0 auto;
	padding-top: 25px;
	height: 250px;
	width: 370px;
}
.success .comparison .end p {
	font-size: 29px;
	line-height: 1.3;
}
.success .comparison .sugosai .end p {
	color: #005CD0;
	margin-left: -50px;
}
.success .comparison .sugosai .end .deco-01 {
	left: -75px;
	top: -10px;
	width: 155px;
}
.success .comparison .sugosai .end .deco-02 {
	left: -85px;
	top: 60px;
	width: 125px;
}
.success .comparison .sugosai .end .deco-03 {
	bottom: -5px;
	left: 60px;
	width: 139px;
}
.success .comparison .sugosai .end .deco-04 {
	bottom: 5px;
	right: 80px;
	width: 88px;
}
.success .comparison .sugosai .end .deco-05 {
	right: 30px;
	top: 25px;
	width: 113px;
}
.success .comparison .other .end p {
	margin-left: 60px;
	text-align: left;
}
.success .comparison .other .end .deco-01 {
	left: -85px;
	top: -15px;
	width: 147px;
}
.success .comparison .other .end .deco-02 {
	bottom: 0;
	left: 80px;
	width: 67px;
}
.success .comparison .other .end .deco-03 {
	bottom: 5px;
	right: 40px;
	width: 120px;
}
.success .comparison .other .end .deco-04 {
	right: 30px;
	top: 25px;
	width: 124px;
}

.success .comparison .flow .list {
	margin-top: 130px;
}
.success .comparison .flow p {
	font-size: 30px;
	text-align: center;
}
.success .comparison .flow .dot {
	
}
.success .comparison .flow .dot span {
	background-color: #3E4E62;
	border: solid 1px white;
	border-radius: 50%;
	box-sizing: border-box;
	display: block;
	margin: 12px auto;
	height: 8px;
	width: 8px;
}
.success .comparison .flow .def {
	margin: 95px -60px 0;
}
.success .comparison .flow .def span {
	background: url("../img/site/balloon-02.svg") no-repeat center / 100%;
	display: table;
	font-size: 30px;
	margin: 0 auto;
	padding: 10px 40px 30px;
}

@media screen and (max-width: 1520px) {
	.success {
		border-radius: 0;
		margin: 0;
		margin-top: 5vw;
		padding: 9vw 0;
	}

	/** comparison **/
	.success .comparison .sugosai,
	.success .comparison .other {
		width: 35.4vw;
	}
	.success .comparison h3 {
		font-size: 2.6vw;
		margin: 0 auto 2.6vw;
	}
	.success .comparison .sugosai h3 {
		padding-left: 8vw;
	}
	.success .comparison .sugosai h3 img {
		top: -.6vw;
		width: 7.2vw;
	}
	.success .comparison li {
		border-radius: 2vw;
		font-size: 1.3vw;
		margin-bottom: 2vw;
		padding: 1vw 0;
		padding-left: 5.2vw;
	}
	.success .comparison .sugosai li:nth-child(2) {
		margin-bottom: 1.6vw;
	}
	.success .comparison .sugosai li:nth-child(3) {
		margin-bottom: 1.6vw;
	}
	.success .comparison .sugosai li:nth-child(4) {
		margin-bottom: 2.4vw;
	}
	.success .comparison .other li:nth-child(2) {
		margin-bottom: 4vw;
	}
	.success .comparison .other li:nth-child(3) {
		margin-bottom: 1.6vw;
	}
	.success .comparison .other li:nth-child(4) {
		margin-bottom: 2.4vw;
	}
	.success .comparison .other li:nth-child(5) {
		margin-bottom: 3.6vw;
	}
	.success .comparison .sugosai li::after {
        right: -.6vw;
        top: .1vw;
		height: 1.6vw;
		width: 1.8vw;
	}
	.success .comparison .other li::after {
        left: -1.2vw;
        top: .1vw;
		height: 1.6vw;
		width: 2.1vw;
	}
	.success .comparison li img {
		left: 1.4vw;
		width: 2.7vw;
	}
	.success .comparison .stump::before {
        height: 4vw;
        width: 10vw;
	}
	.success .comparison .stump-01::before {
        left: -3vw;
        top: -2vw;
	}
	.success .comparison .stump-02::before {
        bottom: -1vw;
        right: -2.8vw;
	}

	.success .comparison .end {
		border-radius: 4.6vw;
		padding-top: 1.6vw;
		height: 16.6vw;
		width: 24vw;
	}
	.success .comparison .end p {
		font-size: 1.9vw;
	}
	.success .comparison .sugosai .end p {
		margin-left: -3.2vw;
	}
	.success .comparison .sugosai .end .deco-01 {
        left: -5vw;
        top: -.6vw;
        width: 10vw;
	}
	.success .comparison .sugosai .end .deco-02 {
        left: -5.6vw;
        top: 4vw;
        width: 8.3vw;
	}
	.success .comparison .sugosai .end .deco-03 {
        bottom: -.3vw;
        left: 4vw;
        width: 9.2vw;
	}
	.success .comparison .sugosai .end .deco-04 {
        bottom: .3vw;
        right: 5vw;
        width: 5.8vw;
	}
	.success .comparison .sugosai .end .deco-05 {
        right: 2vw;
        top: 1.6vw;
        width: 7.4vw;
	}
	.success .comparison .other .end p {
		margin-left: 4vw;
	}
	.success .comparison .other .end .deco-01 {
        left: -5.6vw;
        top: -1vw;
        width: 9.7vw;
	}
	.success .comparison .other .end .deco-02 {
        left: 5.3vw;
        width: 4.4vw;
	}
	.success .comparison .other .end .deco-03 {
        bottom: .3vw;
        right: 3vw;
        width: 7.8vw;
	}
	.success .comparison .other .end .deco-04 {
        right: 2vw;
        top: 1.7vw;
        width: 8.2vw;
	}

	.success .comparison .flow .list {
		margin-top: 8.6vw;
	}
	.success .comparison .flow p {
		font-size: 2vw;
	}
	.success .comparison .flow .dot span {
        margin: .8vw auto;
        height: .5vw;
        width: .5vw;
	}
	.success .comparison .flow .def {
		margin: 6.2vw -4vw 0;
	}
	.success .comparison .flow .def span {
        font-size: 2vw;
        padding: .6vw 2.6vw 2vw;
	}
}

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

@media screen and (max-width: 640px) {
	.success {
		border-radius: 0;
		margin: 0;
		margin-top: 12vw;
		padding: 12vw 0;
	}

	/** comparison **/
	.success .comparison .sugosai,
	.success .comparison .other {
		width: 34vw;
	}
	.success .comparison .flow {
		margin: 0 -8vw;
		padding-top: 1vw;
	}
	.success .comparison h3 {
		font-size: 2.6vw;
		margin: 0 auto 2.6vw;
	}
	.success .comparison .sugosai h3 {
		padding-left: 8vw;
	}
	.success .comparison .sugosai h3 img {
		top: -.6vw;
		width: 7.2vw;
	}
	.success .comparison li {
        border-radius: 4vw;
        font-size: 3.2vw;
        margin-bottom: 2vw;
        padding: 2vw 2vw 3vw 3vw;
	}
	.success .comparison .sugosai li:nth-child(2) {
		margin-bottom: 4vw;
	}
	.success .comparison .sugosai li:nth-child(3) {
		margin-bottom: 6vw;
	}
	.success .comparison .sugosai li:nth-child(4) {
		margin-bottom: 7vw;
	}
	.success .comparison .other li:nth-child(1) {
		margin-bottom: 7vw;
	}
	.success .comparison .other li:nth-child(2) {
		margin-bottom: 9vw;
	}
	.success .comparison .other li:nth-child(3) {
		margin-bottom: 2vw;
	}
	.success .comparison .other li:nth-child(4) {
		margin-bottom: 6vw;
	}
	.success .comparison .other li:nth-child(5) {
		margin-bottom: 17.6vw;
	}
	.success .comparison .sugosai li::after {
		right: -2vw;
        top: 1vw;
        height: 3vw;
        width: 4vw;
	}
	.success .comparison .other li::after {
        left: -2vw;
        top: 1vw;
        height: 3vw;
        width: 4vw;
	}
	.success .comparison li img {
        display: block;
        margin: 0 auto;
        position: initial;
        left: auto;
        top: auto;
        transform: initial;
        width: 5vw;
	}
	.success .comparison .stump::before {
        height: 8vw;
        width: 18vw;
	}
	.success .comparison .stump-01::before {
        left: -4vw;
        top: 0;
	}
	.success .comparison .stump-02::before {
        bottom: -2vw;
        right: -4vw;
	}

    .success .comparison .end {
        border-radius: 6vw;
        padding-top: 4vw;
        height: 28vw;
        width: 100%;
	}
	.success .comparison .end p {
		font-size: 3.4vw;
	}
	.success .comparison .sugosai .end p {
		margin-left: -3.2vw;
	}
	.success .comparison .sugosai .end .deco-01 {
        left: -4vw;
        top: -2vw;
        width: 18vw;
	}
	.success .comparison .sugosai .end .deco-02 {
        left: -9vw;
        top: 5vw;
        width: 16vw;
	}
	.success .comparison .sugosai .end .deco-03 {
        bottom: -8vw;
        left: -1vw;
        width: 20vw;
	}
	.success .comparison .sugosai .end .deco-04 {
        bottom: -4vw;
        right: 1vw;
        width: 12vw;
	}
	.success .comparison .sugosai .end .deco-05 {
        right: -5vw;
        top: 1vw;
        width: 16vw;
	}
	.success .comparison .other .end p {
		margin-left: 4vw;
	}
	.success .comparison .other .end .deco-01 {
        left: -12vw;
        top: -6vw;
        width: 20vw;
	}
	.success .comparison .other .end .deco-02 {
        bottom: -1vw;
        left: -2vw;
        width: 8vw;
	}
	.success .comparison .other .end .deco-03 {
        bottom: -3vw;
        right: 6vw;
        width: 14vw;
	}
	.success .comparison .other .end .deco-04 {
        right: -3vw;
        top: 3vw;
        width: 16vw;
	}

	.success .comparison .flow .list {
		margin-top: 8.6vw;
	}
	.success .comparison .flow p {
		font-size: 3.4vw;
	}
	.success .comparison .flow .dot span {
		border-width: 3px;
		margin: 5.8vw auto;
		height: 3vw;
		width: 3vw;
	}
	.success .comparison .flow .def {
		margin: 64vw -8vw 0;
	}
	.success .comparison .flow .def p {
		font-size: 4.2vw;
	}
	.success .comparison .flow .def span {
		font-size: 4vw;
		padding: 1vw 4vw 3vw;
	}
}


/** -- forte -- **/
.forte {
	margin-top: 160px;
}

.forte .inner img {
	bottom: 0;
	left: 90px;
	width: 112px;
}
.forte .inner p {
	background-color: white;
	border-radius: 50px 0 0 50px;
	font-size: 22px;
	font-weight: 700;
	margin-left: 270px;
	margin-right: -300px;
	padding: 60px 100px;
}
.forte .inner p strong {
	color: #005CD0;
}

@media screen and (max-width: 1520px) {
	.forte {
		margin-top: 10vw;
	}

	.forte .inner img {
        left: 6vw;
        width: 7.4vw;
	}
	.forte .inner p {
        border-radius: 3.3vw 0 0 3.3vw;
        font-size: 1.42vw;
        margin-left: 18vw;
        margin-right: -300px;
        padding: 4vw 6vw;
	}
}

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

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

	.forte .inner img {
        left: -2vw;
        width: 20vw;
	}
	.forte .inner p {
        border-radius: 6vw 0 0 6vw;
        font-size: 3.6vw;
        margin-left: 14vw;
        margin-right: -4vw;
        padding: 10vw 8vw;
	}
}


/** -- introduction -- **/
.introduction {
	margin-top: 80px;
}
.introduction h2 {
	color: #005CD0;
	font-size: 70px;
	margin-bottom: 60px;
	text-align: center;
}

/** list **/
.introduction .list ul {
	margin: 0 -20px;
}
.introduction .list li {
	font-size: 14px;
	letter-spacing: 0;
	padding: 0 20px;
	width: 25%;
}
.introduction .list li .thumb {
	margin-bottom: 20px;
	width: 100%;
}
.introduction .list li .name {
	color: #005CD0;
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 10px;
}
.introduction .list li .st {
	color: #005CD0;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 10px;
}
.introduction .list li .week {
	margin-bottom: 10px;
}
.introduction .list li .rs {
	margin-bottom: 10px;
}

/** at **/
.introduction .at {
	display: table;
	font-size: 14px;
	margin-left: auto;
	margin-top: 40px;
}

@media screen and (max-width: 1520px) {
	.introduction {
		margin-top: 5vw;
	}
	.introduction h2 {
		font-size: 5.8vw;
		margin-bottom: 4vw;
	}

	/** list **/
	.introduction .list ul {
        margin: 0 1vw;
	}
	.introduction .list li {
		font-size: .92vw;
        padding: 0 1vw;
	}
	.introduction .list li .thumb {
		margin-bottom: 1.3vw;
	}
	.introduction .list li .name {
		font-size: 1.42vw;
		margin-bottom: .6vw;
	}
	.introduction .list li .st {
		font-size: 1.3vw;
		margin-bottom: .6vw;
	}
	.introduction .list li .week {
		margin-bottom: .6vw;
	}
	.introduction .list li .rs {
		margin-bottom: .6vw;
	}

	/** at **/
	.introduction .at {
        font-size: .92vw;
        margin-top: 3vw;
	}
}

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

@media screen and (max-width: 640px) {
	.introduction {
		margin-top: 12vw;
	}
	.introduction h2 {
		font-size: 8vw;
		margin-bottom: 6vw;
	}

	/** list **/
	.introduction .list ul {
        margin: 0 1vw;
	}
	.introduction .list li {
		font-size: 2.8vw;
        padding: 0 1vw;
	}
	.introduction .list li .thumb {
		margin-bottom: 3vw;
	}
	.introduction .list li .name {
		font-size: 3.2vw;
		margin-bottom: 2vw;
	}
	.introduction .list li .st {
		font-size: 3vw;
		margin-bottom: 2vw;
	}
	.introduction .list li .week {
		margin-bottom: 2vw;
	}
	.introduction .list li .rs {
		margin-bottom: 2vw;
	}

	/** at **/
	.introduction .at {
		font-size: 2.8vw;
        margin-top: 6vw;
	}
}


/** -- production_flow -- **/
.production_flow {
	margin-top: 80px;
}
.production_flow .inner {
	padding: 100px 0;
	z-index: 0;
}
.production_flow .inner::before {
	background-color: #E4E4E4;
	border-radius: 0 50px 50px 0;
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	width: calc(100% + 300px);
	z-index: -1;
}

/** list **/
.production_flow .list .line {
	background: url("../img/site/line-03.svg") no-repeat 0 0 / 100%;
	position: absolute;
	left: 80px;
	top: 178px;
	height: 100%;
	width: 10px;
}

.production_flow .list .step {
	display: table;
	margin-bottom: 45px;
	padding-left: 175px;
}
.production_flow .list .step:nth-of-type(2) {
	margin-bottom: 85px;
}
.production_flow .list .step:nth-of-type(5) {
	margin-bottom: 140px;
}

.production_flow .list .num {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
	padding-top: 40px;
	position: absolute;
	left: 30px;
	top: 0;
	text-align: center;
	height: 180px;
	width: 114px;
}
.production_flow .list .num span {
	font-size: 33px;
	line-height: 1.0;
}
.production_flow .list .num p {
	font-size: 70px;
	line-height: 1.0;
}

.production_flow .list .box {
	background-color: white;
	border-radius: 30px;
	padding: 30px 40px;
	width: 850px;
}
.production_flow .list .box .qc {
	position: absolute;
	right: 20px;
	top: 20px;
	width: 66px;
}
.production_flow .list .box h3 {
	color: #005CD0;
	font-size: 24px;
	margin-bottom: 17px;
	padding-left: 60px;
	position: relative;
}
.production_flow .list .box h3 img {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.production_flow .list .step:nth-of-type(1) .box h3 img {
	left: 10px;
	width: 29px;
}
.production_flow .list .step:nth-of-type(2) .box h3 img {
	left: 0;
	width: 43px;
}
.production_flow .list .step:nth-of-type(3) .box h3 img {
	left: 5px;
	width: 39px;
}
.production_flow .list .step:nth-of-type(4) .box h3 img {
	left: 5px;
	width: 40px;
}
.production_flow .list .step:nth-of-type(5) .box h3 img {
	left: 15px;
	width: 30px;
}

.production_flow .list .box p {
	font-size: 20px;
	font-weight: 700;
	margin-left: 50px;
}

.production_flow .list .step .wait {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
	font-size: 20px;
	padding: 10px 25px;
	bottom: -50px;
	right: -175px;
	z-index: -1;
}
.production_flow .list .step .wait::after {
	border: solid 5px #005CD0;
	border-left: none;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	height: 219px;
	width: 80px;
	z-index: -1;
}

.production_flow .list .step .order {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
	font-size: 20px;
	padding: 10px 25px;
	position: absolute;
	bottom: -70px;
	left: 50%;
	transform: translateX(-50%);
}
.production_flow .list .step .order::after {
	background-color: #005CD0;
	content: '';
	display: block;
	position: absolute;
	left: -375px;
	top: 22px;
	height: 5px;
	width: 380px;
}

.production_flow .list .public {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
	font-size: 20px;
	padding: 10px 100px;
	position: absolute;
	bottom: -100px;
	left: 50%;
	transform: translateX(-50%);
}
.production_flow .list .public::after {
	border-bottom: solid 5px #005CD0;
	border-left: solid 5px #005CD0;
	content: '';
	display: block;
	position: absolute;
	left: -280px;
	bottom: 25px;
	height: 70px;
	width: 300px;
}

.production_flow p.exp {
	font-size: 22px;
	font-weight: 700;
	text-align: center;
	width: calc(100% - 290px);
}

.production_flow .deco {
	bottom: -100px;
	right: 190px;
	width: 170px;
}

@media screen and (max-width: 1520px) {
	.production_flow {
		margin-top: 6vw;
	}
	.production_flow .inner {
		padding: 6.6vw 0;
	}
	.production_flow .inner::before {
        border-radius: 0 3.3vw .3vw 0;
        width: calc(100% + 10vw);
	}

	/** list **/
	.production_flow .list .line {
        left: 5.3vw;
        top: 11.8vw;
        width: .65vw;
	}

	.production_flow .list .step {
        margin-bottom: 2.8vw;
        padding-left: 11.6vw;
	}
	.production_flow .list .step:nth-of-type(2) {
		margin-bottom: 5.6vw;
	}
	.production_flow .list .step:nth-of-type(5) {
		margin-bottom: 9.2vw;
	}

	.production_flow .list .num {
        border-radius: 2vw;
        padding-top: 2.6vw;
        left: 2vw;
        height: 11.9vw;
        width: 7.5vw;
	}
	.production_flow .list .num span {
		font-size: 2.2vw;
	}
	.production_flow .list .num p {
		font-size: 4.6vw;
	}

	.production_flow .list .box {
        border-radius: 2vw;
        padding: 2vw 2.6vw;
        width: 56.2vw;
	}
	.production_flow .list .box .qc {
        right: 1.4vw;
        top: 1.4vw;
        width: 4.4vw;
	}
	.production_flow .list .box h3 {
        font-size: 1.6vw;
        margin-bottom: 1.1vw;
        padding-left: 4vw;
	}
	.production_flow .list .step:nth-of-type(1) .box h3 img {
		left: .7vw;
        width: 2vw;
	}
	.production_flow .list .step:nth-of-type(2) .box h3 img {
		width: 2.8vw;
	}
	.production_flow .list .step:nth-of-type(3) .box h3 img {
		left: .3vw;
        width: 2.6vw;
	}
	.production_flow .list .step:nth-of-type(4) .box h3 img {
		left: .3vw;
        width: 2.7vw;
	}
	.production_flow .list .step:nth-of-type(5) .box h3 img {
		left: 1vw;
        width: 2vw;
	}

	.production_flow .list .box p {
        font-size: 1.3vw;
        margin-left: 3.3vw;
	}

	.production_flow .list .step .wait {
        border-radius: 3vw;
        font-size: 1.3vw;
        padding: .6vw 1.6vw;
        bottom: -3.1vw;
        right: -11.5vw;
	}
	.production_flow .list .step .wait::after {
		border: solid 5px #005CD0;
		border-left: none;
        height: 14.3vw;
        width: 5.3vw;
	}

	.production_flow .list .step .order {
        border-radius: 3vw;
        font-size: 1.3vw;
        padding: .6vw 1.6vw;
        bottom: -4.5vw;
	}
	.production_flow .list .step .order::after {
        left: -25vw;
        top: 1.4vw;
        height: 5px;
        width: 25vw;
	}

	.production_flow .list .public {
        border-radius: 3vw;
        font-size: 1.3vw;
        padding: .6vw 6.6vw;
        bottom: -6.6vw;
        left: 35vw;
	}
	.production_flow .list .public::after {
		border-bottom: solid 5px #005CD0;
		border-left: solid 5px #005CD0;
        left: -19.6vw;
        bottom: 1.6vw;
        height: 5vw;
        width: 20vw;
	}

	.production_flow p.exp {
		font-size: 1.42vw;
        width: calc(100% - 19vw);
	}

	.production_flow .deco {
        bottom: -6.6vw;
        right: 12vw;
        width: 11vw;
	}
}

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

@media screen and (max-width: 640px) {
	.production_flow {
		margin-top: 12vw;
	}
	.production_flow .inner {
		padding: 12vw 0;
	}
	.production_flow .inner::before {
        border-radius: 0 6vw 6vw 0;
        width: calc(100% + 10vw);
	}

	/** list **/
	.production_flow .list .line {
        background-repeat: repeat-y;
        left: 4.4vw;
        top: 0;
        height: calc(100% - 20vw);
        width: 1.4vw;
	}

	.production_flow .list .step {
        margin-bottom: 12vw;
        padding-left: 12vw;
	}
	.production_flow .list .step:nth-of-type(2) {
		margin-bottom: 12vw;
	}
	.production_flow .list .step:nth-of-type(5) {
		margin-bottom: 18vw;
	}

	.production_flow .list .num {
        border-radius: 3vw;
        padding-top: 4vw;
        left: 0;
        height: 25vw;
        width: 10vw;
	}
	.production_flow .list .num span {
		font-size: 3.2vw;
	}
	.production_flow .list .num p {
		font-size: 6.8vw;
		margin-top: 1vw;
	}

	.production_flow .list .box {
        border-radius: 4vw;
        padding: 4vw 3vw;
        width: 72vw;
	}
	.production_flow .list .box .qc {
        right: 2vw;
        top: 2vw;
        width: 10vw;
	}
	.production_flow .list .box h3 {
        font-size: 3.8vw;
        margin-bottom: 3vw;
        padding-left: 8vw;
	}
	.production_flow .list .step:nth-of-type(1) .box h3 img {
        left: 0;
        width: 5vw;
	}
	.production_flow .list .step:nth-of-type(2) .box h3 img {
		width: 6vw;
	}
	.production_flow .list .step:nth-of-type(3) .box h3 img {
        left: 0;
        width: 6vw;
	}
	.production_flow .list .step:nth-of-type(4) .box h3 img {
        left: 0;
        width: 6.4vw;
	}
	.production_flow .list .step:nth-of-type(5) .box h3 img {
        left: 1vw;
        width: 5vw;
	}

	.production_flow .list .box p {
        font-size: 3.2vw;
        margin-left: 2vw;
	}

	.production_flow .list .step .wait {
        border-radius: 10vw;
        font-size: 3.2vw;
        padding: 1vw 6vw;
        bottom: -10vw;
        right: -10vw;
	}
	.production_flow .list .step .wait::after {
		border: solid 3px #005CD0;
		border-left: none;
        height: 49vw;
        width: 25vw;
	}

	.production_flow .list .step .order {
        border-radius: 10vw;
        font-size: 3.2vw;
        padding: 1vw 6vw;
        bottom: -10vw;
	}
	.production_flow .list .step .order::after {
        left: -26vw;
        top: 3vw;
        height: 3px;
        width: 27vw;
	}

	.production_flow .list .public {
        border-radius: 10vw;
        font-size: 3.2vw;
        padding: 1vw 6vw;
        bottom: -12vw;
        left: 45vw;
	}
	.production_flow .list .public::after {
		border-bottom: solid 3px #005CD0;
		border-left: solid 3px #005CD0;
        left: -26.4vw;
        bottom: 3vw;
        height: 22vw;
        width: 30vw;
	}

	.production_flow p.exp {
        font-size: 4vw;
        width: calc(100% - 2vw);
	}

	.production_flow .deco {
        bottom: -6.6vw;
        right: 12vw;
        width: 11vw;
	}
}


/** -- contact_link -- **/
.contact_link {
	margin-top: 100px;
}
.contact_link .inner {
	background-color: #005CD0;
	border-radius: 50px;
	color: white;
	padding: 30px 0 50px;
}
.contact_link h2 {
	font-size: 60px;
    margin-bottom: 10px;
	text-align: center;
}
.contact_link p {
	font-size: 24px;
    margin-bottom: 30px;
	text-align: center;
}
.contact_link .contact_btn {
	box-sizing: border-box;
	margin: 0 auto;
    padding-left: 80px;
	width: 555px;
}
.contact_link .deco-01 {
	bottom: 40px;
	left: 110px;
	width: 117px;
}
.contact_link .deco-02 {
    bottom: 80px;
    right: 130px;
    width: 150px;
}

@media screen and (max-width: 1520px) {
	.contact_link {
		margin-top: 6vw;
	}
	.contact_link .inner {
        border-radius: 3.3vw;
        padding: 2vw 0 3.3vw;
	}
	.contact_link h2 {
		font-size: 4vw;
		margin-bottom: .6vw;
	}
	.contact_link p {
		font-size: 1.52vw;
		margin-bottom: 2vw;
	}
	.contact_link .contact_btn {
        padding-left: 6vw;
        width: 38vw;
	}
	.contact_link .deco-01 {
        bottom: 2.6vw;
        left: 7.2vw;
        width: 7.6vw;
	}
	.contact_link .deco-02 {
        bottom: 5.3vw;
        right: 8.6vw;
        width: 9.8vw;
	}
}

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

@media screen and (max-width: 640px) {
	.contact_link {
		margin-top: 12vw;
	}
	.contact_link .inner {
        border-radius: 6vw;
        padding: 6vw 0 8vw;
	}
	.contact_link h2 {
		font-size: 10vw;
		margin-bottom: 2vw;
	}
	.contact_link p {
		font-size: 4.2vw;
        margin-bottom: 6vw;
	}
	.contact_link .contact_btn {
        padding-left: 6vw;
        width: 62vw;
	}
	.contact_link .deco-01 {
        bottom: 2vw;
        left: -1vw;
        width: 17vw;
	}
	.contact_link .deco-02 {
        bottom: 3vw;
        right: -3vw;
        width: 23vw;
	}
}


/** -- plan -- **/
.plan {
	margin-top: 100px;
}

.plan dt,
.plan dd {
	box-sizing: border-box;
	text-align: center;
	position: relative;
}
.plan dd {
	height: 95px;
}

/** list_item **/
.plan .list_item {
	margin-top: 90px;
	width: 250px;
}
.plan .list_item dd {
	font-size: 20px;
	font-weight: 700;
	padding-top: 30px;
}
.plan .list_item dd::after {
	border-bottom: solid 1px #C9C9C9;
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 600px;
}
.plan .list_item dd:last-child::after {
	display: none;
}

/** item **/
.plan .item {
	background-color: white;
	border-radius: 30px;
	overflow: hidden;
	width: 350px;
}
.plan .item + .item {
	margin-left: 10px;
}
.plan .item dt {
	color: white;
	font-size: 40px;
	padding: 13px 0;
}
.plan .item dt span {
	padding-left: 40px;
}
.plan .item dt img {
	position: absolute;
	left: 0;
	top: 0;
}
.plan .item dd {
	font-size: 18px;
	font-weight: 700;
	padding-top: 15px;
}
.plan .item dd:last-child {
	border: none !important;
	padding-top: 30px;
}
.plan .item dd span {
	font-size: 14px;
	font-weight: 400;
}
.plan .item dd .good {
	display: table;
	margin: 0 auto;
	padding-left: 50px;
}
.plan .item dd .good img {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.plan .item dd .dash {
	background-color: #3E4E62;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	height: 2px;
	width: 60px;
}

.plan .item.starter dt {
	background-color: #C9C9C9;
}
.plan .item.basic dt {
	background-color: #005CD0;
}
.plan .item.basic dd {
	border-bottom: solid 1px #005CD0;
}
.plan .item.premium dt {
	background: linear-gradient(70deg, #FF8F4A, #FFC04A);
}
.plan .item.premium dd {
	border-bottom: solid 1px #FFA74A;
}

@media screen and (max-width: 1520px) {
	.plan {
		margin-top: 7vw;
	}

	.plan dd {
		height: 6.3vw;
	}

	/** list_item **/
	.plan .list_item {
		margin-top: 6.3vw;
		width: 17vw;
	}
	.plan .list_item dd {
		font-size: 1.3vw;
		padding-top: 2vw;
	}
	.plan .list_item dd::after {
		width: 40.6vw;
	}

	/** item **/
	.plan .item {
        border-radius: 2vw;
        width: 23.6vw;
	}
	.plan .item + .item {
		margin-left: .8vw;
	}
	.plan .item dt {
		font-size: 2.8vw;
		padding: .9vw 0;
	}
	.plan .item dt img {
		width: 2.6vw;
	}
	.plan .item dt span {
		padding-left: 3vw;
	}
	.plan .item dd {
		font-size: 1.3vw;
		padding-top: 1vw;
	}
	.plan .item dd:last-child {
		padding-top: 2vw;
	}
	.plan .item dd span {
		font-size: .9vw;
	}
	.plan .item dd .good {
		padding-left: 3.6vw;
	}
	.plan .item dd .good img {
		width: 2.6vw;
	}
	.plan .item dd .dash {
		height: 2px;
		width: 4.2vw;
	}
}

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

@media screen and (max-width: 640px) {
	.plan {
		margin-top: 7vw;
	}
	
	.plan .table {
		overflow-x: scroll;
		padding-bottom: 4vw;
	}
	.plan .table .inner {
		width: 220vw;
	}

	.plan dd {
		height: 16.5vw;
	}

	/** list_item **/
	.plan .list_item {
		margin-top: 13vw;
		width: 36vw;
	}
	.plan .list_item dd {
		font-size: 3.2vw;
		padding-top: 5vw;
	}
	.plan .list_item dd::after {
		bottom: -1px;
        width: 96vw;
	}

	/** item **/
	.plan .item {
        border-radius: 4vw;
        width: 60vw;
	}
	.plan .item + .item {
		margin-left: 2vw;
	}
	.plan .item dt {
        font-size: 5.8vw;
		padding: 2vw 0;
	}
	.plan .item dt img {
		width: 6vw;
	}
	.plan .item dt span {
		padding-left: 8vw;
	}
	.plan .item dd {
		font-size: 3.2vw;
		padding-top: 3vw;
	}
	.plan .item dd:last-child {
		padding-top: 5vw;
	}
	.plan .item dd span {
		font-size: 2.3vw;
	}
	.plan .item dd .good {
		padding-left: 8vw;
	}
	.plan .item dd .good img {
		width: 6vw;
	}
	.plan .item dd .dash {
		height: 2px;
		width: 8vw;
	}
}


/** -- simulation -- **/
.simulation {
	margin-top: 60px;
}
.simulation .inner {
	background-color: #E4E4E4;
	border-radius: 60px;
	padding: 100px 0 80px;
}
.simulation h2 {
	color: #005CD0;
	display: table;
	font-size: 70px;
	margin: 0 auto 40px;
}
.simulation img {
	left: -40px;
	top: -30px;
	width: 96px;
}

.simulation .hbspt-form {
	margin: 0 auto;
	width: 800px;
}
.simulation .wpforms-hidden {
	display: none;
}
.simulation .wpforms-field-container {
	margin: 0 auto;
	width: 800px;
}

.simulation .wpforms-container .wpforms-field {
	margin-bottom: 40px;
	padding: 0;
}
.simulation #wpforms-10-field_3-container {
	margin-bottom: 20px;
}

.simulation .wpforms-field fieldset {
	border: none;
	padding: 0;
}
.simulation .wpforms-field ul {
	background-color: white !important;
	border-radius: 20px !important;
	padding: 30px 40px 20px !important;
}
.simulation .wpforms-field ul li {
	margin-bottom: 10px !important;
}
.simulation div.wpforms-container-full .wpforms-field-label {
	color: #005CD0;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: inherit;
	margin-bottom: 20px;
	padding-left: 115px;
	position: relative;
}
.simulation #wpforms-10-field_5-container .wpforms-field-label {
	font-size: 20px;
	padding-left: 0;
}
.simulation .wpforms-field-label::before {
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 100%;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	height: 49px;
	width: 106px;
}
.simulation #wpforms-10-field_1-container .wpforms-field-label::before {
	background-image: url('../img/site/step01.svg');
}
.simulation #wpforms-10-field_2-container .wpforms-field-label::before {
	background-image: url('../img/site/step02.svg');
}
.simulation #wpforms-10-field_3-container .wpforms-field-label::before {
	background-image: url('../img/site/step03.svg');
}
.simulation #wpforms-10-field_4-container .wpforms-field-label::before {
	background-image: url('../img/site/step04.svg');
}

.simulation .wpforms-field-label-inline {
	font-size: 18px !important;
	font-weight: 700 !important;
}

.simulation div.wpforms-container-full input[type=checkbox]:before,
.simulation div.wpforms-container-full input[type=radio]:before {
	border-radius: 0;
	left: 0;
	top: -2px;
	height: 20px;
	width: 20px;
}
.simulation div.wpforms-container-full input[type=radio]:before {
	border-radius: 50%;
}
.simulation div.wpforms-container-full input[type=checkbox]:checked:after {
	transform: translate(0, 1px) scale(.8) rotate(-45deg);
	left: 1px;
}
.simulation div.wpforms-container-full input[type=radio]:checked:after {
	transform: scale(0.8);
	-moz-transform: scale(0.8);
	left: 2px;
	top: 0;
}

.simulation div.wpforms-container-full button[type=submit] {
	background-color: #005CD0;
	border-radius: 10px;
	display: block;
	font-family: 'TsunagiGothic', sans-serif;
	font-size: 24px;
	margin: 60px auto 0;
	height: 75px;
	width: 500px;
}
.simulation div.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
	background-color: #005CD0;
}

.simulation #wpforms-10-field_6-container {
	padding-top: 80px;
	position: relative;
}
.simulation #wpforms-10-field_6-container::before {
	color: #005CD0;
	content: 'あなたの情報を教えてください';
	display: block;
	font-size: 30px;
	font-weight: 700;
	position: absolute;
	left: 115px;
	top: 0;
}
.simulation #wpforms-10-field_6-container::after {
	background: url('../img/site/step05.svg') no-repeat 0 0 / 100%;
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	height: 49px;
	width: 106px;
}
.simulation #wpforms-10-field_6-container .wpforms-field-label,
.simulation #wpforms-10-field_7-container .wpforms-field-label,
.simulation #wpforms-10-field_8-container .wpforms-field-label {
	float: left;
	font-size: 20px;
	padding-left: 0;
	width: 200px;
}

@media screen and (max-width: 1520px) {
	.simulation {
		margin-top: 5vw;
	}
	.simulation .inner {
		border-radius: 4vw;
		padding: 8vw 0 6vw;
	}
	.simulation h2 {
		font-size: 4.8vw;
		margin: 0 auto 3vw;
	}
	.simulation img {
        left: -2.8vw;
        top: -2.2vw;
        width: 6.8vw;
	}

	.simulation .hbspt-form {
		width: 57vw;
	}
	.simulation .wpforms-field-container {
		width: 57vw;
	}

	.simulation .wpforms-container .wpforms-field {
		margin-bottom: 3vw;
	}
	.simulation #wpforms-10-field_3-container {
		margin-bottom: 1.4vw;
	}

	.simulation .wpforms-field ul {
        border-radius: 1.4vw !important;
        padding: 2vw 2.8vw 1.4vw !important;
	}
	.simulation .wpforms-field ul li {
		margin-bottom: .7vw !important;
	}
	.simulation div.wpforms-container-full .wpforms-field-label {
		font-size: 2vw;
		margin-bottom: 1.2vw;
		padding-left: 8vw;
	}
	.simulation #wpforms-10-field_5-container .wpforms-field-label {
		font-size: 1.3vw;
	}
	.simulation .wpforms-field-label::before {
		height: 4vw;
		width: 7.2vw;
	}

	.simulation .wpforms-field-label-inline {
		font-size: 1.28vw !important;
	}

	.simulation div.wpforms-container-full input[type=checkbox]:before,
	.simulation div.wpforms-container-full input[type=radio]:before {
        top: -.1vw;
        height: 1.4vw;
        width: 1.4vw;
	}
	.simulation div.wpforms-container-full input[type=checkbox]:checked:after {
		transform: translate(0, 1px) scale(.8) rotate(-45deg);
		left: .05vw;
	}
	.simulation div.wpforms-container-full input[type=radio]:checked:after {
		left: .12vw;
	}

	.simulation div.wpforms-container-full button[type=submit] {
        border-radius: .6vw;
        font-size: 1.7vw;
        margin: 4vw auto 0;
        height: 5.2vw;
        width: 36vw;
	}

	.simulation #wpforms-10-field_6-container {
		padding-top: 5.4vw;
	}
	.simulation #wpforms-10-field_6-container::before {
		font-size: 2vw;
		left: 8vw;
	}
	.simulation #wpforms-10-field_6-container::after {
		height: 4vw;
		width: 7.2vw;
	}
	.simulation #wpforms-10-field_6-container .wpforms-field-label,
	.simulation #wpforms-10-field_7-container .wpforms-field-label,
	.simulation #wpforms-10-field_8-container .wpforms-field-label {
		font-size: 1.3vw;
		width: 14vw;
	}
}

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

@media screen and (max-width: 640px) {
	.simulation {
		margin-top: 12vw;
	}
	.simulation .inner {
		border-radius: 6vw;
		padding: 14vw 0 8vw;
	}
	.simulation h2 {
		font-size: 8vw;
		margin: 0 auto 6vw;
	}
	.simulation img {
        left: -6vw;
        top: -6vw;
        width: 14vw;
	}

	.simulation .hbspt-form {
		margin: 0 4vw;
		width: auto;
	}
	.simulation .wpforms-field-container {
		margin: 0 4vw;
		width: auto;
	}

	.simulation .wpforms-container .wpforms-field {
		margin-bottom: 8vw;
	}
	.simulation #wpforms-10-field_3-container {
		margin-bottom: 4vw;
	}

	.simulation .wpforms-field ul {
        border-radius: 3vw !important;
        padding: 4vw 4vw 3vw !important;
	}
	.simulation .wpforms-field ul li {
		margin-bottom: .7vw !important;
	}
	.simulation div.wpforms-container-full .wpforms-field-label {
        font-size: 3.8vw;
        margin-bottom: 3vw;
        padding-left: 16vw;
	}
	.simulation #wpforms-10-field_5-container .wpforms-field-label {
		font-size: 3.6vw;
	}
	.simulation .wpforms-field-label::before {
        height: 8vw;
        width: 14vw;
	}

	.simulation .wpforms-field-label-inline {
		font-size: 3.2vw !important;
	}

	.simulation div.wpforms-container-full input[type=checkbox]:before,
	.simulation div.wpforms-container-full input[type=radio]:before {
        top: -.8vw;
        height: 4vw;
        width: 4vw;
	}
	.simulation div.wpforms-container-full input[type=checkbox]:checked:after {
		transform: translate(0, 1px) scale(.8) rotate(-45deg);
        left: .05vw;
        top: -.8vw;
	}
	.simulation div.wpforms-container-full input[type=radio]:checked:after {
        left: .15vw;
        top: -.6vw;
	}

	.simulation div.wpforms-container-full button[type=submit] {
        border-radius: 3vw;
        font-size: 4.2vw;
        margin: 10vw auto 0;
        height: 12vw;
        width: 82vw;
	}

	.simulation #wpforms-10-field_6-container {
		padding-top: 12vw;
	}
	.simulation #wpforms-10-field_6-container::before {
        font-size: 3.8vw;
        left: 16vw;
	}
	.simulation #wpforms-10-field_6-container::after {
        height: 8vw;
        width: 14vw;
	}
	.simulation #wpforms-10-field_6-container,
	.simulation #wpforms-10-field_7-container,
	.simulation #wpforms-10-field_8-container {
		margin-bottom: 4vw;
	}
	.simulation #wpforms-10-field_6-container .wpforms-field-label,
	.simulation #wpforms-10-field_7-container .wpforms-field-label,
	.simulation #wpforms-10-field_8-container .wpforms-field-label {
        font-size: 3.6vw;
		margin-bottom: 2vw;
        width: 100%;
	}
}


/** -- series -- **/
.series {
	margin-top: 120px;
}
.series .title-01 {
	margin-bottom: -30px;
}
.series .title-01 span {
	display: block;
	font-size: 70px;
    margin-top: 30px;
    padding-left: 365px;
}
.series .title-01 span img {
	left: -25px;
	top: -40px;
	width: 390px;
}

/** inner **/
.series .inner {
	background-color: #C5DDF5;
	border-radius: 60px;
	padding: 100px 130px 80px;
}

/** flow **/
.series .flow {
	justify-content: space-between;
	margin-bottom: 30px;
}
.series .flow p {
	background-color: #005CD0;
	border-radius: 40px;
	color: white;
	font-size: 25px;
	font-weight: 700;
	padding: 12px 50px;
	position: relative;
}
.series .flow p::after {
	border: solid 10px transparent;
	border-left: solid 16px #005CD0;
	border-right: none;
	content: '';
	display: block;
	position: absolute;
	right: -28px;
	top: 50%;
	transform: translateY(-50%);
}
.series .flow p:last-child::after {
	display: none;
}

/** box **/
.series .box {
	align-items: center;
	background-color: white;
	border-radius: 20px;
	margin-bottom: 10px;
	padding: 25px 30px;
	z-index: 1;
}
.series .box.pr {
	width: 860px;
}
.series .box.site {
	margin-left: auto;
	width: 670px;
}
.series .box.siryo {
	margin-left: auto;
	width: 670px;
}
.series .box.design {
	
}

.series .box img {
	width: 188px;
}
.series .box.siryo img {
	width: 207px;
}
.series .box.design img {
	width: 201px;
}

.series .box p {
	font-weight: 700;
	margin-left: 30px;
}

.series .wpp {
	background-color: white;
	border: solid 2px #005CD0;
	border-radius: 10px;
	padding: 10px 15px 0;
	bottom: 0;
	left: 10px;
	text-align: center;
	z-index: 2;
}
.series .wpp p {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 8px;
}
.series .wpp img {
	width: 315px;
}

.series .deco-01 {
	background-color: #005CD0;
	border-radius: 30px;
	color: white;
    padding: 3px 20px;
    bottom: 145px;
    left: 95px;
	z-index: 0;
}
.series .deco-01 span {
	color: #005CD0;
	font-size: 12px;
	left: -5px;
	top: -18px;
	transform: rotate(-3deg);
}
.series .deco-01::before,
.series .deco-01::after {
	content: '';
	display: block;
	position: absolute;
}
.series .deco-01::before {
	border: solid 16px transparent;
	border-bottom: 0;
	border-top: solid 10px #005CD0;
    bottom: -12px;
    left: 50%;
    transform: translateX(-50%);
}
.series .deco-01::after {
	border-bottom: solid 3px #005CD0;
	border-left: solid 3px #005CD0;
    bottom: 15px;
    left: -45px;
    height: 180px;
    width: 330px;
    z-index: -1;
}
.series .deco-02 {
	background-color: white;
	border: solid 2px #005CD0;
	border-radius: 30px;
	color: #005CD0;
    padding: 3px 20px;
    bottom: 32px;
    left: 440px;
    z-index: 2;
}

.series .balloon {
    bottom: 240px;
    left: -80px;
    text-align: center;
}
.series .balloon p {
	color: #005CD0;
	font-size: 18px;
	font-weight: 700;
    padding: 0 40px;
	position: relative;
}
.series .balloon p::before,
.series .balloon p::after {
	background-color: #005CD0;
	content: '';
	display: block;
	position: absolute;
	bottom: -15px;
	height: 80px;
	width: 2px;
}
.series .balloon p::before {
    left: 20px;
    transform: rotate(-35deg);
}
.series .balloon p::after {
    right: 20px;
    transform: rotate(45deg);
}

.series .polygon {
    bottom: 125px;
    left: -30px;
    z-index: 1;
}
.series .polygon p {
	background-color: #005CD0;
    clip-path: polygon(16% 0, 87% 6%, 100% 39%, 91% 89%, 12% 97%, 0% 50%);
	color: white;
	font-weight: 700;
    padding-top: 18px;
	text-align: center;
    height: 90px;
    width: 150px;
}
.series .polygon::after {
	background-color: #005CD0;
    clip-path: polygon(0% 0, 80% 0, 100% 100%);
    content: '';
    display: block;
    position: absolute;
    bottom: -7px;
    left: 50%;
    height: 15px;
    width: 20px;
}

@media screen and (max-width: 1520px) {
	.series {
		margin-top: 8vw;
	}
	.series .title-01 {
		margin-bottom: -2vw;
	}
	.series .title-01 span {
		font-size: 5vw;
		margin-top: 2vw;
		padding-left: 26vw;
	}
	.series .title-01 span img {
        left: -2vw;
        top: -2.6vw;
        width: 28vw;
	}

	/** inner **/
	.series .inner {
        border-radius: 3.5vw;
        padding: 7vw 6vw 5vw;
	}

	/** flow **/
	.series .flow {
		margin-bottom: 2vw;
	}
	.series .flow p {
        border-radius: 3vw;
        font-size: 1.7vw;
        padding: .8vw 3.6vw;
	}
	.series .flow p::after {
        border: solid .8vw transparent;
        border-left: solid 1.2vw #005CD0;
        border-right: none;
        right: -1.6vw;
	}

	/** box **/
	.series .box {
        border-radius: 1.4vw;
        margin-bottom: .8vw;
        padding: 1.6vw 2vw;
	}
	.series .box.pr {
		width: 59vw;
	}
	.series .box.site {
        width: 46vw;
	}
	.series .box.siryo {
        width: 46vw;
	}

	.series .box img {
		width: 12.8vw;
	}
	.series .box.siryo img {
		width: 13.8vw;
	}
	.series .box.design img {
		width: 13.6vw;
	}

	.series .box p {
		margin-left: 2vw;
	}

	.series .wpp {
        border: solid 2px #005CD0;
        border-radius: .6vw;
        padding: .6vw 1vw 0;
        left: .8vw;
	}
	.series .wpp p {
        font-size: .96vw;
        margin-bottom: .6vw;
	}
	.series .wpp img {
		width: 21.5vw;
	}

	.series .deco-01 {
        border-radius: 3vw;
        padding: .2vw 1.4vw;
        bottom: 9.85vw;
        left: 6.5vw;
	}
	.series .deco-01 span {
		font-size: 12px;
		left: -5px;
		top: -18px;
	}
	.series .deco-01::before {
        border: solid 1vw transparent;
        border-bottom: none;
        border-top: solid .7vw #005CD0;
        bottom: -.8vw;
	}
	.series .deco-01::after {
		border-bottom: solid 3px #005CD0;
		border-left: solid 3px #005CD0;
        bottom: 1vw;
        left: -3.1vw;
        height: 12vw;
        width: 23vw;
	}
	.series .deco-02 {
		border: solid 2px #005CD0;
        border-radius: 3vw;
        padding: .2vw 1.4vw;
        bottom: 2vw;
        left: 28.6vw;
	}

	.series .balloon {
        bottom: 18vw;
        left: -3vw;
	}
	.series .balloon p {
        font-size: 1.2vw;
        padding: 0 3vw;
	}
	.series .balloon p::before,
	.series .balloon p::after {
        bottom: -1vw;
        height: 5.4vw;
        width: 2px;
	}
	.series .balloon p::before {
		left: 1.4vw;
	}
	.series .balloon p::after {
		right: 1.4vw;
	}

	.series .polygon {
        bottom: 8.3vw;
        left: -1vw;
	}
	.series .polygon p {
        padding-top: 1.3vw;
        height: 7vw;
        width: 12vw;
	}
	.series .polygon::after {
        bottom: -.5vw;
        height: 1.2vw;
        width: 1.8vw;
	}
}

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

@media screen and (max-width: 640px) {
	.series {
		margin-top: 16vw;
	}
	.series .title-01 {
        margin-bottom: -5vw;
	}
	.series .title-01 span {
        font-size: 10vw;
        margin-top: 3vw;
        padding-left: 40vw;
	}
	.series .title-01 span img {
        left: 0;
        top: -3vw;
        width: 40vw;
	}

	/** inner **/
	.series .inner {
        border-radius: 8vw;
        padding: 14vw 4vw 8vw;
	}

	/** flow **/
	.series .flow {
		margin-bottom: 6vw;
		justify-content: flex-start;
	}
	.series .flow p {
        border-radius: 8vw;
        font-size: 4.2vw;
		margin-bottom: 2vw;
		margin-right: 4vw;
        padding: 1vw 4vw;
	}
	.series .flow p::after {
        border: solid 2vw transparent;
        border-left: solid 3vw #005CD0;
        border-right: none;
        right: -3.5vw;
	}

	/** box **/
	.series .box {
		border-radius: 4vw;
        margin-bottom: 3vw;
        padding: 4vw 4vw;
	}
	.series .box.pr {
		width: 100%;
	}
	.series .box.site {
        width: 100%;
	}
	.series .box.siryo {
        width: 100%;
	}
	.series .box.design {
        margin-top: 26vw;
        width: 100%;
	}

	.series .box img {
        margin-bottom: 3vw;
        width: 38vw;
	}
	.series .box.siryo img {
		width: 48vw;
	}
	.series .box.design img {
		width: 37vw;
	}

	.series .box p {
		margin-left: 0;
	}

	.series .deco-01 {
        border-radius: 8vw;
        display: table;
        margin: 6vw auto 4vw;
        padding: 1vw 4vw;
        position: relative;
        bottom: auto;
        left: auto;
	}
	.series .deco-01 span {
        font-size: 3.2vw;
        left: -2vw;
        top: -5vw;
	}
	.series .deco-01::before {
        border: solid 3vw transparent;
        border-bottom: none;
        border-top: solid 2vw #005CD0;
        bottom: -3vw;
	}
	.series .deco-01::after {
        border-bottom: solid 2px #005CD0;
        border-left: solid 2px #005CD0;
        bottom: 4vw;
        left: -20vw;
        height: 85vw;
        width: 20vw;
	}
	.series .deco-02 {
		border: solid 2px #005CD0;
        border-radius: 8vw;
        padding: 1vw 3vw;
        bottom: 92vw;
        left: 0;
	}

	.series .balloon {
        bottom: 42vw;
        left: 37vw;
	}
	.series .balloon p {
        font-size: 3.4vw;
        padding: 0 3vw;
	}
	.series .balloon p::before,
	.series .balloon p::after {
        bottom: -3vw;
        height: 12vw;
        width: 2px;
	}
	.series .balloon p::before {
		left: 1.4vw;
	}
	.series .balloon p::after {
		right: 1.4vw;
	}
	.series .balloon img {
		width: 24vw;
	}

	.series .polygon {
        bottom: 36vw;
        left: -6vw;
	}
	.series .polygon p {
        padding-top: 2.5vw;
        height: 18vw;
        width: 34vw;
	}
	.series .polygon::after {
        bottom: -1vw;
        height: 3vw;
        width: 4vw;
	}
}


/** -- faq -- **/
.faq {
	margin-top: 120px;
}

.faq dl {
	background-color: white;
	border-radius: 20px;
	padding: 40px 50px;
}
.faq dl + dl {
	margin-top: 30px;
}
.faq dl dt,
.faq dl dd {
	padding-left: 60px;
	position: relative;
}
.faq dl dt {
	color: #005CD0;
	font-size: 22px;
	font-weight: 700;
}
.faq dl dd {
	font-size: 20px;
	margin-top: 20px;
}
.faq dl dt::before,
.faq dl dd::before {
	font-family: 'TsunagiGothic', sans-serif;
	font-size: 40px;
	position: absolute;
	left: 0;
	top: -15px;
}
.faq dl dt::before {
	content: 'Q.';
}
.faq dl dd::before {
	color: #005CD0;
	content: 'A.';
}

@media screen and (max-width: 1520px) {
	.faq {
		margin-top: 8vw;
	}

	.faq dl {
        border-radius: 1.4vw;
        padding: 2.6vw 3.4vw;
	}
	.faq dl + dl {
		margin-top: 2vw;
	}
	.faq dl dt,
	.faq dl dd {
		padding-left: 4vw;
	}
	.faq dl dt {
		font-size: 1.42vw;
	}
	.faq dl dd {
		font-size: 1.3vw;
		margin-top: 1.4vw;
	}
	.faq dl dt::before,
	.faq dl dd::before {
		font-size: 2.6vw;
		top: -1vw;
	}
}

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

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

	.faq dl {
        border-radius: 3vw;
        padding: 6vw 4vw;
	}
	.faq dl + dl {
		margin-top: 4vw;
	}
	.faq dl dt,
	.faq dl dd {
		padding-left: 8vw;
	}
	.faq dl dt {
		font-size: 3.8vw;
	}
	.faq dl dd {
		font-size:3.4vw;
		margin-top: 3vw;
	}
	.faq dl dt::before,
	.faq dl dd::before {
        font-size: 6vw;
        top: -2vw;
	}
}


/** -- operating -- **/
.operating {
	margin-top: 140px;
}
.operating .inner {
	margin-top: 60px;
}

.operating .left img {
    margin-left: -30px;
    margin-top: -10px;
	width: 305px;
}
.operating .left p {
	font-size: 60px;
	line-height: 1.4;
}
.operating .right {
	background-color: white;
	border-radius: 20px;
	margin-left: auto;
	padding: 50px 60px;
}

.operating .right dl dt,
.operating .right dl dd {
	font-size: 18px;
}
.operating .right dl dt {
	float: left;
	font-weight: 700;
	width: 200px;
}
.operating .right dl dd {
	margin-bottom: 20px;
	margin-left: 200px;
}
.operating .right .link {
	background: url('../img/site/icon-link-01.svg') no-repeat right 35px top 10px / 10px;
	border: solid 1px #2D2D2D;
	border-radius: 60px;
	display: block;
	margin-left: auto;
	margin-top: 40px;
	padding: 5px 0;
	padding-right: 20px;
	text-align: center;
	width: 290px;
}
.operating .right .link:hover {
	color: #005CD0;
}

@media screen and (max-width: 1520px) {
	.operating {
		margin-top: 9.6vw;
	}
	.operating .inner {
		margin-top: 4vw;
	}

	.operating .left img {
		margin-left: -2vw;
        margin-top: -.8vw;
        width: 21vw;
	}
	.operating .left p {
		font-size: 4vw;
	}
	.operating .right {
		border-radius: 1.4vw;
		padding: 3.4vw 4vw;
	}

	.operating .right dl dt,
	.operating .right dl dd {
		font-size: 1.4vw;
	}
	.operating .right dl dt {
		width: 13vw;
	}
	.operating .right dl dd {
		margin-bottom: 1.4vw;
		margin-left: 13vw;
	}
	.operating .right .link {
		background-position: right 2.4vw top .7vw;
		background-size: .7vw;
		border-radius: 4vw;
		margin-top: 2.8vw;
		padding: .3vw 0;
		padding-right: 1.4vw;
		width: 20vw;
	}
}

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

@media screen and (max-width: 640px) {
	.operating {
		margin-top: 20vw;
	}
	.operating .inner {
		margin-top: 6vw;
	}

	.operating .left {
		margin-bottom: 8vw;
	}
	
	.operating .left img {
        margin-left: -5vw;
        margin-top: 0;
        width: 52vw;
	}
	.operating .left p {
		font-size: 7.2vw;
	}
	.operating .right {
        border-radius: 3vw;
        padding: 8vw 6vw;
        width: 100%;
	}

	.operating .right dl dt,
	.operating .right dl dd {
		font-size: 3.4vw;
	}
	.operating .right dl dt {
		width: 16vw;
	}
	.operating .right dl dd {
        margin-bottom: 3vw;
        margin-left: 22vw;
	}
	.operating .right .link {
        background-position: right 5vw top 2vw;
        background-size: 3vw;
        border-radius: 10vw;
        margin-top: 6vw;
        padding: 1vw 0;
        padding-right: 5vw;
        width: 58vw;
	}
}


/** -- copyright -- **/
.copyright {
	background-color: #005CD0;
	color: white;
	font-weight: 700;
	padding: 20px 0;
	text-align: center;
	margin-top: 100px;
}

@media screen and (max-width: 1520px) {
	.copyright {
        padding: 1.4vw 0;
        margin-top: 7vw;
	}
}

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

@media screen and (max-width: 640px) {
	.copyright {
        padding: 4vw 0;
        margin-top: 12vw;
	}
}