@charset "utf-8";
/* CSS Document */

/*---------- Google Fonts ----------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&display=swap');
/* font-family: 'Noto Sans JP', sans-serif; */


body {
	font-family: 'Noto Sans JP', sans-serif;
	background-color: #fff; 
	color: #4c4c4c;
}

a,
input,
button,
textarea {
	outline: none !important;
}

a {
	transition: all ease-in-out 300ms;
	-webkit-transition: all ease-in-out 300ms;
	-ms-transition: all ease-in-out 300ms;
	-o-transition: all ease-in-out 300ms;
	-moz-transition: all ease-in-out 300ms;
}

.content{
	height: 100%;
	width: 100%;
	overflow: hidden;
}
.container-fluid,
.container {
	padding-left: 15px;
	padding-right: 15px;
}

.row {
	margin-left: -15px;
	margin-right: -15px;
}

.row>* {
	padding-left: 15px;
	padding-right: 15px;
}

p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
	line-height: 37px;
	text-align: left;
	color: #333;
	margin: 0;
}
p a {
	text-decoration: none;
	color: inherit;
}

p a:hover {
	text-decoration: underline;
	color: #BBEADD;
}

ul li,
ol li {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
	line-height: 37px;
	color: #333;
}

ul li a,
ol li a {
	text-decoration: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
	color: inherit;
}

ul li a:hover,
ol li a:hover {
	text-decoration: underline;
	color: #BBEADD;
}


/*common-style*/
.section-title {
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: 700;
	font-size: 40px;
	line-height: 42px;
	letter-spacing: 0.06em;
	color: #333;
}

.section-title * {
	text-decoration: none;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	color: inherit;
	text-align: center;
	color: inherit;
	margin: 0;
}

.section-small-title {
	/* font-family: "A P-OTF A1Gothic Std"; */
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: 700;
	font-size: 20px;
    line-height: 26px;
	letter-spacing: 0.06em;
	text-align: center;
	color: #2f84ae;
}

.section-small-title * {
	text-decoration: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
	text-align: center;
	color: inherit;
	margin: 0;
}

.block-title {
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: 700;
	font-size: 26px;
	letter-spacing: 0.06em;
	line-height: 42px;
	text-align: left;
	color: #333;
}

.block-title * {
	text-decoration: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
	margin: 0;
}

.inner-detail {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.13em;
	line-height: 37px;
	text-align: left;
	color: #333;
}

.inner-detail * {
	text-decoration: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
	/* text-align: center; */
	color: inherit;
	margin: 0;
}

.section-sub-title {
	/* font-family: "A P-OTF A1Gothic Std"; */
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: 700;
	font-size: 32px;
	letter-spacing: 0.05em;
	line-height: 54px;
	text-align: center;
	color: #333;
}

.section-sub-title * {
	text-decoration: none;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	color: inherit;
	text-align: center;
	color: inherit;
	margin: 0;
}

.yellow-border {
	position: relative;
	display: inline-block;
}

.yellow-border::before {
	content: "";
    position: absolute;
    bottom: 1px;
    left: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 15px;
    background-color: #FEE083;
    z-index: -1;
}
/*common-style*/

/* buttons */
.btn-blue {
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: normal;
	font-size: 24px;
	letter-spacing: 0.06em;
	font-weight: 700;
	text-align: center;
	color: #fff;
	border-radius: 46px;
	background-color: #2f84ae;
	padding: 28px 94px;
	position: relative;
	box-shadow: 1px 10px 0px 0px rgba(16,96,136,1);
	border: none;
	display: inline-block;
	text-decoration: none;
	transition: 0.4s;
	-webkit-transition: 0.4s;
	-moz-transition: 0.4s;
	-ms-transition: 0.4s;
	-o-transition: 0.4s;
	-webkit-box-shadow: 1px 10px 0px 0px rgba(16,96,136,1);
	-moz-box-shadow: 1px 10px 0px 0px rgba(16,96,136,1);
	
}

.btn-blue::before {
    content: "\f054";
    font-family: 'Font Awesome 5 Free';
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
}

.btn-blue:hover {
	color: #fff;
	/*background-color: #106088;
	box-shadow: 1px 10px 0px 0px rgba(47, 132, 174,1);
	-webkit-box-shadow: 1px 10px 0px 0px rgba(47, 132, 174,1);
	-moz-box-shadow: 1px 10px 0px 0px rgba(47, 132, 174,1);
	*/
	/*transform: translateY(10px);
	-webkit-transform: translateY(10px);
	-moz-transform: translateY(10px);
	-ms-transform: translateY(10px);
	-o-transform: translateY(10px);*/
	 transform: translate(0, 5px);
	background-color: rgba(16,96,136,1);
    transition: all .3s;
    box-shadow: none;
}

/* buttons */


/*==================================================================*/
/*========== Header Start ==========*/
/*==================================================================*/

/*==================================================================*/
/*========== Header End ==========*/
/*==================================================================*/



/*==================================================================*/
/*========== New Class Add Start ==========*/
/*==================================================================*/
.banner-wrp {
    background-color: #F2F2F2;
    position: relative;
    /* overflow: hidden; */
    padding: 42px 0 0 0;
    /* height: 76vh; */
}

.banner-wrp .banner-shape-1 {
	position: absolute;
	bottom: -110px;
    right: 0px;
}

.banner-wrp .banner-shape-2 {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(-50% , -50%);
    -webkit-transform: translate(-50% , 0);
    -moz-transform: translate(-50% , -50%);
    -ms-transform: translate(-50% , -50%);
    -o-transform: translate(-50% , -50%);
}

.banner-wrp .banner-shape-3 {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(0px , 100px);
    -webkit-transform: translate(0px , 100px);
    -moz-transform: translate(0px , 100px);
    -ms-transform: translate(0px , 100px);
    -o-transform: translate(0px , 100px);
}

.banner-wrp .banner-shape-4 {
    position: absolute;
    top: 0;
    right: 0;
    transform: translate(-68px , 49px);
    -webkit-transform: translate(-68px , 49px);
    -moz-transform: translate(-68px , 49px);
    -ms-transform: translate(-68px , 49px);
    -o-transform: translate(-68px , 49px);
}

.banner-wrp .banner-shape-5 {
	position: absolute;
	top: 0;
	right: 0;
	transform: translate(-670px , -50px);
	-webkit-transform: translate(-670px , -50px);
	-moz-transform: translate(-670px , -50px);
	-ms-transform: translate(-670px , -50px);
	-o-transform: translate(-670px , -50px);
}

.banner-wrp .banner-shape-6 {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-130%, -40px);
    -webkit-transform: translate(-130%, -40px);
    -moz-transform: translate(-130%, -40px);
    -ms-transform: translate(-130%, -40px);
    -o-transform: translate(-130%, -40px);
}

.banner-wrp .banner-shape-7 {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(400px, -40px);
    -webkit-transform: translate(400px, -40px);
    -moz-transform: translate(400px, -40px);
    -ms-transform: translate(400px, -40px);
    -o-transform: translate(400px, -40px);
}

.banner-wrp .banner-shape-8 {
    position: absolute;
    top: 0;
    left: -40px;
}

.banner-wrp .banner-shape-9 {
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-70px, 360px);
	-webkit-transform: translate(-70px, 360px);
	-moz-transform: translate(-70px, 360px);
	-ms-transform: translate(-70px, 360px);
	-o-transform: translate(-70px, 360px);
}

.banner-wrp .banner-shape-10 {
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translate(0, 70px);
	-webkit-transform: translate(0, 70px);
	-moz-transform: translate(0, 70px);
	-ms-transform: translate(0, 70px);
	-o-transform: translate(0, 70px);
}

.banner-wrp::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
	background-color: #BBF1F8;
	/* z-index: -1; */
}

.banner-image {
	position: relative;
    z-index: 1;
    text-align: center;
    /* top: 10px; */
}

/*about section start*/
.about-wrp {
    padding: 80px 0;
	position: relative;
}

.about-wrp .about-bottom-image-1 {
    position: absolute;
    bottom: -70px;
    right: 0;
}

.about-wrp .about-bottom-image-2 {
    position: absolute;
    bottom: -110px;
    left: 0;
}

.about-main {
	text-align: center;
}

.about-wrp .section-small-title {
    display: inline-block;
    position: relative;
    max-width: 546px;
    width: 100%;
    padding: 0 70px;
	line-height: 40px;
	display: block;
    margin: 0 auto;
}

.about-wrp .section-small-title:before {
	content: "";
	position: absolute;
	top: 30px;
	left: 0;
	background-image: url("../images/line-img-2.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 37px;
	height: 47px;
}

.about-wrp .section-small-title:after {
	content: "";
	position: absolute;
	top: 30px;
	right: 0;
	background-image: url("../images/line-img.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 37px;
	height: 47px;
}

.about-main .section-title {
	padding: 34px 0 0 0;
    position: relative;
    max-width: 745px;
    margin: 0 auto;
    /* font-weight: 700; */
}

/* .about-main .section-title::before {
    content: "";
    position: absolute;
    bottom: 4px;
    left: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 15px;
    background-color: #FEE083;
    z-index: -1;
} */

.planning-right {
    position: relative;
    max-width: 446px;
    max-height: 446px;
    margin-left: 74px;
}

.planning-right::before {
	content: "";
    position: absolute;
    top: 69%;
    left: 50%;
    background-color: #BBF1F8;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.intro-list .form-group,
.planning-list .form-group {
	text-align: left;
	padding-bottom: 22px;
	display: flex;
    align-items: center;
}

.intro-list .form-check-input:checked[type=checkbox],
.planning-list .form-check-input:checked[type=checkbox] {
	background-image: url("../images/checkbox.svg");
	background-size: 70% 70%;
	background-position: 4px 4px;
}

.intro-list .form-check-input:checked, 
.planning-list .form-check-input:checked {
	background-color: unset;
	border-color: #3F3A39 !important;
}

.intro-list .form-check-input,
.planning-list .form-check-input {
    width: 28px;
    height: 28px;
    border: 2px solid #3F3A39;
    border-radius: 3px !important;
    -webkit-border-radius: 3px !important;
    -moz-border-radius: 3px !important;
    -ms-border-radius: 3px !important;
    -o-border-radius: 3px !important;
}

.intro-list .form-check-input:focus,
.planning-list .form-check-input:focus {
	box-shadow: none;
	border-color: #3F3A39 !important;
}

.intro-list .form-check-label,
.planning-list .form-check-label {
	padding-left: 16px;
	padding-top: 3px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
	line-height: 20px;
	text-align: left;
	color: #333;
}

.intro-list .form-check-input:active,
.planning-list .form-check-input:active {
	filter: brightness(100%);
	-webkit-filter: brightness(100%);
}

.intro-list ul,
.planning-list ul {
	margin: 0;
	padding: 0;
}

.intro-list ul li,
.planning-list ul li {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.13em;
	line-height: 20px;
	text-align: left;
	color: #333;
	position: relative;
	list-style: none;
	padding:0 0  30px 50px;
}

.intro-list ul li::before,
.planning-list ul li::before {
	content: " ";
	position: absolute;
	top: -5px;
	left: 0;
	background-image: url("../images/check-img.png");
	width: 28px;
	height: 28px;
	background-repeat: no-repeat;
}

.intro-list ul li:last-child{
	padding-bottom: 0;
}
.planning-section {
    padding: 84px 0 90px 0;
}

.block-quote-part {
	background-color: #F2F2F2;
	text-align: center;
	position: relative;
	padding: 36px 97px 36px;
	margin: 0 -20px 0 0;
	border-radius: 24px;
	-webkit-border-radius: 24px;
	-moz-border-radius: 24px;
	-ms-border-radius: 24px;
	-o-border-radius: 24px;
}

.block-quote-part::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border: 0 solid transparent;
    border-bottom-width: 45px;
    border-top-width: 36px;
    border-left: 97px solid #F2F2F2;
	right: -33px;
    transform: translate(0, -50%);
    top: 52%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
}

.block-quote-part p {
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: 700;
	font-size: 26px;
	letter-spacing: 0.06em;
	line-height: 61px;
	text-align: left;
	color: #333;
	margin: 0;
}

.planning-list {
	padding: 32px 0 0 0;
}

.about-main .about-bottom-small-title {
    text-align: left;
    padding: 0 161px;
	font-family: 'Noto Sans JP', sans-serif;
	text-align: left;
	color: #333;
	max-width: 100%;
}

.about-main .about-bottom-small-title:after, 
.about-main .about-bottom-small-title:before {
	display: none;
}

.about-main .about-bottom-small-title p {
	padding-bottom: 40px;
	text-align: left;
}

/* .about-main .about-bottom-small-title.section-small-title p:last-child {
	text-decoration: underline;
	text-decoration-color: #FEE083;
	text-decoration-style: solid;
	text-decoration-thickness: 2px;
	-moz-text-decoration-color:;
} */

.about-main .about-bottom-small-title.section-small-title p:nth-last-child(2),
.about-main .about-bottom-small-title.section-small-title p:last-child {
	border-bottom: 2px solid #FEE083;
	padding-bottom: 0;
	display: inline-block;
}

.about-main .section-sub-title {
    padding: 75px 0 0 0;
}

.section-sub-title span {
	color: #2F84AE;
}

.about-main .block-part {
	margin: 52px 162px 54px 162px;
	background-color: #F2F2F2;
	padding: 45px 102px;
	border-radius: 24px;
	-webkit-border-radius: 24px;
	-moz-border-radius: 24px;
	-ms-border-radius: 24px;
	-o-border-radius: 24px;
	position: relative;
}

.about-main .block-part::before {
	content: "";
	position: absolute;
    bottom: -33px;
	left: 50%;
	width: 0;
	height: 0;
	border: 0 solid transparent;
	border-left-width: 55px;
	border-right-width: 43px;
	border-top: 86px solid #F2F2F2;
	transform: translate(-50% , 0);
	-webkit-transform: translate(-50% , 0);
	-moz-transform: translate(-50% , 0);
	-ms-transform: translate(-50% , 0);
	-o-transform: translate(-50% , 0);
}

.about-main .block-part p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.13em;
	line-height: 37px;
	text-align: center;
	color: #333;
	margin: 0;
}

.about-main .bottom-title .section-title {
	font-size: 32px;
    letter-spacing: 0.05em;
    line-height: 54px;
}

.about-main .bottom-title .section-title.yellow-border::before {
	bottom: 10px;
}

/*about section end*/

/*customer start*/
.customer-wrp {
    background-color: #f2f2f2;
    padding: 105px 0 149px 0;
}

.customer-inner-block {
    background-color: #fff;
    padding: 18px 16px 58px 16px;
    /* margin-top: 40px; */
    border-radius: 13px;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    -ms-border-radius: 13px;
    -o-border-radius: 13px;
    height: calc(100% - 40px);
    /* height: 100%; */
}

.customer-inner-block .detail p {
	line-height: 31px;
	padding: 15px 0 0 0;
	letter-spacing: 0;
}

.customer-block .row>*:nth-child(7) .customer-inner-block img {
	margin-top: -19px;
}

.customer-block .row>*:nth-child(1) .customer-inner-block img {
	margin-top: -9px;
}

.customer-block .row>*:nth-child(3) .customer-inner-block img {
	margin-top: -9px;
}

/*.customer-inner-block .customer-img img{
	height: 134px;
}*/

.customer-main .section-title {
    padding: 32px 0 132px 0;
}

.customer-bottom .customer-left .section-small-title {
	/* font-family: "A P-OTF A1Gothic Std";*/
	font-family: 'a_p-otf_a1gothic_stdnb';
	position: relative;
	z-index: 1;
	max-width: 431px;
	margin-bottom: 10px;
	text-align: left;
	color: #333;
}

.customer-left .detail {
	padding-top: 36px;
}

/* .customer-bottom .customer-left .inner-detail:before {
	content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 15px;
    background-color: #FEE083;
    z-index: -1;
} */

.customer-left .detail p {
	font-weight: 500;
	letter-spacing: normal;
}

.customer-bottom {
    padding: 0 0 90px 0;
}

.customer-bottom .row {
	margin: 0 -34px;
}

.customer-bottom .row>* {
	padding: 0 34px;
}
/*customer end*/

/*report section start*/
.report-wrp {
    padding: 92px 0 90px 0;
	position: relative;
}

.report-wrp .customer-design-image-1 {
    position: absolute;
    top: -8px;
    left: 0;
}

.report-wrp .customer-design-image-2 {
	position: absolute;
	bottom: 0;
	left: 0;
}
.report-wrp .customer-design-image-4 {
	position: absolute;
	bottom: 0;
	right: 0;
}

.report-wrp .customer-design-image-3 {
    position: absolute;
    top: -4px;
    right: 0;
}

.report-left {
	position: relative;
	max-width: 388px;
	max-height: 388px;
}

.report-left::before {
	content: "";
    position: absolute;
	top: 58%;
    left: 47%;
    background-color: #BBF1F8;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.report-right .block-title {
	text-align: left;
    background-color: #F2F2F2;
	padding: 51px 84px 51px 84px;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
	margin: 10px 0 0 10px;
	position: relative;
}

.report-right .block-title::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -45px;
    width: 0;
    height: 0;
    border: 0 solid transparent;
    border-top-width: 46px;
    border-bottom-width: 46px;
    border-right: 118px solid #F2F2F2;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
}

.report-main .section-small-title {
	font-family: 'Noto Sans JP', sans-serif;
    padding: 110px 0 0 0;
    text-align: center;
	color: #333;
	line-height: 30px;
}

.report-main .section-small-title p:nth-last-child(2) {
	padding-top: 5px;
}

.report-main .section-small-title span,
.report-main .section-small-title p {
	text-align: center;
	display: inline-block;
}

.report-main .section-small-title span {
	padding: 60px 0 0 0;
	max-width: 820px;
	width: 100%;
}

.report-main .section-small-title p:nth-child(2),
.report-main .section-small-title p:nth-child(3),
.report-main .section-small-title p:first-child {
	border-bottom: 2px solid #fedc78;
}

.report-main .section-title {
    font-size: 32px;
    line-height: 54px;
    text-align: center;
    padding: 36px 0 29px;
}

.report-quote .block-title {
    border-radius: 30px;
    background-color: #f2f2f2;
    position: relative;
    padding: 20px 22px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: bold;
    font-size: 20px;
    line-height: 32px;
    text-align: center;
    color: #333;
    height: 100%;
    display: flex;
    align-items: center;
	justify-content: center;
}

.report-quote .block-title span {
	display: block;
	font-size: 13px;
	line-height: 37px;
}

.report-quote .row>*:first-child .block-title::before {
	content: "";
    position: absolute;
    bottom: -40px;
    right: 70px;
    width: 0;
    height: 0;
    border: 0 solid transparent;
    border-left-width: 67px;
    border-right-width: 6px;
    border-top: 82px solid #f2f2f2;
}

.report-quote .row>*:nth-child(2) .block-title::before {
    content: "";
    position: absolute;
    bottom: -40px;
    /*right: 50%;
    */width: 0;
    height: 0;
    border: 0 solid transparent;
    border-left-width: 29px;
    border-right-width: 29px;
    border-top: 49px solid #f2f2f2;
    transform: translate(-50% , 0);
    left: 50%;
    -webkit-transform: translate(-50% , 0);
    -moz-transform: translate(-50% , 0);
    -ms-transform: translate(-50% , 0);
    -o-transform: translate(-50% , 0);
}

.report-quote .row>*:nth-child(3) .block-title::before {
    content: "";
    position: absolute;
    bottom: -40px;
	width: 0;
	height: 0;
	border: 0 solid transparent;
    border-left-width: 11px;
    border-right-width: 57px;
    border-top: 63px solid #f2f2f2;
    transform: translate(-50% , 0);
    left: 115px;
    -webkit-transform: translate(-50% , 0);
    -moz-transform: translate(-50% , 0);
    -ms-transform: translate(-50% , 0);
    -o-transform: translate(-50% , 0);
}

/*report section end*/

/*fault start*/
.fault-wrp {
    background-color: #BBF1F8;
    padding: 73px 0;
}

.fault-wrp .section-title {
	position: relative;
    z-index: 1;
    max-width: 979px;
    width: 100%;
    margin: 0 auto;
}

.fault-wrp .section-title:before {
	content: "";
	position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 15px;
    background-color: #FEE083;
    z-index: -1;
}

.fault-wrp .section-title span {
	display: block;
	font-size: 20px; 
	line-height: 22px;
	text-align: center;
	padding-bottom: 10px;
}



.estimate-part .section-title {
	max-width: 644px;
	width: 100%;
	margin: 0 auto;
}

/*fault end*/

/*mistake start*/

.mistake-wrp {
    padding: 102px 0 70px 0;
	position: relative;
}

.mistake-design-image {
    position: absolute;
    bottom: -70px;
    right: 0;
}

.mistake-main .section-small-title {
	padding-bottom: 18px;
}

.mistake-main .section-small-title h2 {
	text-align: left;
}

.mistake-bottom {
	padding: 177px 0 0 0;
}

.mistake-bottom .row {
	margin: 0 -61px;
}

.mistake-bottom .row > * {
	padding: 0 61px;
}

.mistake-right .block {
	display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.mistake-right .detail {
	padding: 30px 0;
}

.mistake-right .detail p {
	letter-spacing: normal;
	font-weight: 500;
}

.mistake-right .yellow-border::before {
	bottom: 7px;
}

.mistake-left {
	margin: 0 40px 0 0;
}

.mistake-bottom .mistake-left {
    margin: 0 30px 0 35px;
}

.mistake-bottom .mistake-right {
	margin: 0 -19px 0 0;
}

.mistake-left img {
	width: 100%;
}
/*mistake end*/

/*client start*/

.client-wrp {
	padding: 142px 0 91px 0;
	position: relative;
}

.client-design-image {
    position: absolute;
    top: -70px;
    left: 0;
}

.client-wrp .row {
	margin: 0 -46px;
}

.client-wrp .row > * {
	padding: 0 46px;
}

.client-right .block-title {
	padding-top: 18px;
	line-height: 30px;
}

.client-left {
	margin: 0 30px;
}

.client-right .detail {
	padding-bottom: 60px;
}

.client-right .detail p {
	letter-spacing: normal;
	font-weight: 500;
}
/*client end*/

/*planning start*/

.web-planning-wrp {
	background-color: #F2F2F2;
	padding: 107px 0 0 0;
	position: relative;
	/* z-index: -1; */
}
.web-planning-wrp .top-right-shape{
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
	max-width: 100%;
}
.web-planning-wrp .bottom-left-shape{
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	max-width: 100%;
}
.web-planning-wrp .container{
	position: relative;
	z-index: 9;
}
.web-planning-main .row {
	margin: 0 -82px;
}

.web-planning-main .row > * {
	padding: 0 82px;
}

.web-planning-title .section-small-title {
	padding: 0 0 40px 0;
}

.web-planning-main {
    padding: 148px 0 0 0;
    position: relative;
    z-index: 1;
}

.web-planning-left .section-small-title h2 {
	text-align: left;
}

/* .web-planning-left .block-title {
	margin: 21px 0 28px 0;
} */

.web-planning-left .block-title {
    margin: 21px -50px 28px 0;
}

.web-planning-left .detail p {
	font-weight: 500;
	letter-spacing: normal;
}
/*planning end*/

/*income section start*/

.income-wrp {
	padding: 106px 0 114px 0;
}

.income-wrp .income-right .detail {
	margin: 35px 0 20px 0;
}

.income-wrp .block-title h3 {
	font-size: 24px;
	line-height: 38px;
	letter-spacing: normal;
}

.income-left {
    margin: 0px 16px 0 0px;
}

.income-right {
    margin: 0 0 0 -10px;
}

.income-right .block-title.yellow-border::before {
	bottom: 2px
}

.income-right .detail p {
	font-weight: 500;
	letter-spacing: normal;
}
/*income section end*/

/*job section start*/
.job-wrp {
	background-color: #BBF1F8;
	position: relative;
	padding: 110px 0 199px 0;
}

.job-wrp .job-title .section-title {
    padding: 38px 0 59px 0;
}
.job-wrp .job-title .detail {
	/* max-width: 580px; */
	width: 100%;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 70px;
}

.job-wrp .job-title .detail p {
	text-align: center;
}

.job-wrp::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	background-color: #15D1D8;
	clip-path: polygon(100% 6%, 100% 100%, 75% 100%, 0% 100%, 0 90%, 46% 46%);
	width: 100%;
	height: 100%;
	z-index: 0;
}

.job-title {
	position: relative;
	z-index: 1;
}

.job-main {
	padding: 93px 62px 15px 62px;
	background-color: #fff;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	position: relative;
	z-index: 1;
}

.job-main .row {
	margin: 0 -21px;
}

.job-main .row>* {
	padding: 0 21px;
}

.job-block .job-image {
	background-color: #F2F2F2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 223px;
	height: 223px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	margin: 0 auto;
}

.job-block {
	height: calc(100% - 81px);
	margin-bottom: 81px;
}

.job-block .detail {
	padding: 24px 0 21px 0;
}

.job-block .detail p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 18px;
	line-height: 31px;
	text-align: center;
	color: #2f84ae;
	font-weight: 700;
}

.job-block .bottom-detail p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 27px;
	text-align: left;
	color: #333;
	letter-spacing: normal;
}
/*job section end*/

/*fee section start*/

.fee-wrp {
	background-color: #BBF1F8;
	padding: 80px 0 94px 0;
	position: relative;
}

.fee-shape-1 {
    position: absolute;
    top: -60px;
    left: 0;
}

.fee-shape-2 {
    position: absolute;
    right: 0;
    top: -80px;
}

.fee-shape-3 {
    position: absolute;
    bottom: -66px;
    left: 0;
}

.fee-shape-4 {
    position: absolute;
    bottom: -90px;
    right: 0;
}

.fee-wrp .fee-main {
	position: relative;
	z-index: 1;
}

.fee-main .detail p {
	text-align: center;
	padding-top: 36px;
	line-height: 35px;
	font-weight: 500;
	/* max-width: 702px;
	width: 100%;
	margin: 0 auto; */
}

.fee-main .section-title {
    padding: 30px 0 52px 0;
}

.fee-main .block-title span {
	color: #2F84AE;
}

.fee-main .block-title.yellow-border::before {
	bottom: 10px;
}
/*fee section end*/

/*about section start*/
.training-wrp {
	background-color: #F2F2F2;
}

.like-block {
	background-color: #fff;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	padding: 0 51px;
}

.like-inner {
	display: flex;
	align-items: center;
	/* justify-content: space-between; */
	border-bottom: 2px dashed #acacac;
	padding: 0 0 26px 0;
	margin: 0 0 26px 0;
}

.like-left {
	background-color: #2F84AE;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	-ms-border-radius: 6px;
	-o-border-radius: 6px;
	padding: 18px 22px 12px 22px;
	position: relative;
}

.like-left::before {
	content: " ";
    position: absolute;
    top: 50%;
    right: -15px;
    width: 0;
    height: 0;
    border: 0 solid transparent;
    border-bottom-width: 8px;
    border-top-width: 8px;
    border-left: 16px solid #2F84AE;
    width: 10px;
    height: 10px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
}

.like-left h4 {
	margin: 0;
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-size: 20px;
	line-height: 20px;
	letter-spacing: 0.06em;
	text-align: center;
	color: #fff;	
}

.like-right {
	padding: 0 0 0 30px;
    height: 54px;
    display: flex;
    align-items: center;
}

.like-right p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 27px;
	color: #333;
	letter-spacing: normal;
}

.like-bottom .row {
	margin: 0 -44px;
}

.like-bottom .row > * {
	padding: 0 44px;
}

.training-wrp .training-main .section-title {
	padding: 35px 0 107px 0;
}

.like-block .section-sub-title  {
	color: #2f84ae;
	position: relative;
	top: -25px;
}

.like-bottom {
    padding: 38px 0 40px 0;
}

.training-wrp .training-main .things-part .section-title {
	padding: 35px 0 0 0;
}

.training-wrp .training-main .things-part {
	text-align: center;
	padding: 109px 0 0 0;
	position: relative;
	z-index: 1;
}

.things-main .things-inner-block {
	background-color: #fff;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	padding: 45px 18px;
	position: relative;
	counter-increment: my-awesome-counter;
	height: calc(100% - 53px);
	margin-bottom: 53px;
}

/*.things-main .things-inner-block::before {
	content: " ";
	position: absolute;
	top: 0;
    right: 13px;
    width: 46px;
    height: 51px;
	background-color: #2F84AE;
	clip-path: polygon(0% 0%, 100% 0, 100% 100%, 50% 90%, 0% 100%);
}*/

.things-main {
	counter-reset: my-awesome-counter;
	padding: 75px 0 0 0;
}

/*.things-main .things-inner-block::after {
	content: '0'counter(my-awesome-counter);
    position: absolute;
    top: 9px;
    right: 21px;
	font-family: 'a_p-otf_a1gothic_stdnb';
    font-size: 22px;
    line-height: 24px;
    letter-spacing: 0.06em;
    text-align: center;
    color: #fff;
}*/

.things-main .things-inner-block .section-sub-title {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 20px;
	line-height: 30px;
	text-align: center;
	color: #2f84ae;
	padding: 3px 33px 14px 33px;
}

.things-main .things-inner-block .detail p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	line-height: 26px;
	font-weight: 500;
	text-align: left;
	color: #333;
	letter-spacing: normal;
}

.things-main .row {
	margin: 0 -18px;
}

.things-main .row > * {
	padding: 0 18px;
}

.training-wrp {
	padding: 118px 0 102px 0;
}

/*about section end*/

/*intro section start*/
.intro-image img {
	width: 100%;
	box-shadow: 0px 8px 26px rgba(0, 0, 0, 0.16);
	-webkit-box-shadow: 0px 8px 26px rgba(0, 0, 0, 0.16);
	-moz-box-shadow: 0px 8px 26px rgba(0, 0, 0, 0.16);
}

.intro-wrp {
	background-color: #F2F2F2;
	padding: 142px 0 170px 0;
}

.intro-block {
	padding: 51px 63px 61px 58px;
	background-color: #fff;
	border-radius: 24px;
	-webkit-border-radius: 24px;
	-moz-border-radius: 24px;
	-ms-border-radius: 24px;
	-o-border-radius: 24px;
}

.intro-row .row {
	margin: 0 -27px;
}

.intro-row .row > * {
	padding: 0 27px;
}

.intro-right .section-title h3,
.intro-right .section-title,
.intro-right .section-small-title h2,
.intro-right .section-small-title {
	text-align: left;
}

.intro-right .section-title {
	font-size: 24px;
}

.intro-right .section-small-title {
	font-size: 16px;
    line-height: 23px;
}

.intro-right .detail span {
	font-size: 16px;
	line-height: 27px;
	text-align: left;
	font-weight: 700;
	display: block;
	padding-bottom: 8px;
}

.intro-right .detail p {
	font-size: 16px;
	letter-spacing: -0.02em;
	line-height: 27px;
	font-weight: 500;
	color: #333;
}

.intro-image-main .row {
	margin: 0 -23px;
}

.intro-image-main .row > * {
	padding: 0 23px;
}

.intro-list {
	text-align: center;
	position: relative;
	z-index: 1;
	padding: 53px 0 44px 0;
}

.intro-list > .section-small-title {
	margin-bottom: 37px;
}

.intro-form {
	padding: 37px 0 53px 0;
}

.intro-main > .section-title {
	padding: 19px 0 60px 0;
}

.author-block {
	background-color: #fff;
	border-radius: 32px;
	-webkit-border-radius: 32px;
	-moz-border-radius: 32px;
	-ms-border-radius: 32px;
	-o-border-radius: 32px;
	position: relative;
	z-index: 1;
}

.intro-image-main {
    margin: 0 20px;
}

.author-block {
	margin-top: 81px;
	padding: 62px 76px 83px;
}

.author-block .section-title {
	color: #2F84AE;
	padding-bottom: 43px;
}

.author-block .row {
	margin: 0 -27px;
}

.author-block .row > * {
	padding: 0 27px;
}

.author-detail .section-small-title h2 {
	text-align: left;
}
.author-detail .section-small-title {
	font-size: 16px;
    line-height: 22px;
}

.author-detail .block-title {
	/* font-family: "A P-OTF A1Gothic Std"; */
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-size: 24px;
	line-height: 26px;
	text-align: left;
	color: #333;
	padding: 4px 0 8px;
} 

.author-detail .detail span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 27px;
	color: #333;
	font-weight: 700;
	padding: 0 0 5px 0;
	display: block;
}

.author-detail .detail p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: -0.02em;
	line-height: 30px;
	text-align: left;
	color: #333;
}
/*intro section end*/

/*letter section start*/
.letter-wrp {
	background-color: #BBF1F8;
	padding: 146px 0 0 0;
}

.letter-main {
	position: relative;
	z-index: 1;
}

.letter-block {
	background-color: #fff;
	padding: 49px 29px;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	height: calc(100% - 170px);
	margin-bottom: 170px;
}

.letter-block .letter-image {
	background-color: #fff;
	padding: 10px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 207px;
	height: 207px;
	margin: 0 auto;
	margin-top: -150px;
}

.letter-block .letter-image img {
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	width: 187px;
	height: 187px;
	object-fit: cover;
}

.letter-bottom {
	padding: 230px 0 0 0;
}

.letter-detail {
	padding: 26px 0;
}

.letter-detail span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	line-height: 26px;
	text-align: center;
	color: #333;
	display: block;
}

.letter-detail p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 24px;
	font-weight: 700;
	text-align: center;
	color: #2f84ae;
}

.letter-block .bottom-detail-letter {
	background-color: #F2F2F2;
	padding: 30px 38px;
	border-radius: 13px;
	-webkit-border-radius: 13px;
	-moz-border-radius: 13px;
	-ms-border-radius: 13px;
	-o-border-radius: 13px;
	height: calc(100% - 182px);
	/* margin-bottom: 182px; */
}

.letter-block .bottom-detail-letter .detail span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 18px;
	line-height: 24px;
	font-weight: 700;
	text-align: center;
	color: #2f84ae;
	display: block;
	padding-bottom: 20px;
}

.letter-block .bottom-detail-letter .detail p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	letter-spacing: -0.02em;
	line-height: 27px;
	text-align: left;
	color: #333;
	font-weight: 500;
}
/*letter section end*/

/*apply section start*/
.apply-wrp {
	background-color: #15D1D8;
	padding: 146px 0 149px 0;
	position: relative;
}

.apply-shape-1 {
    position: absolute;
    top: -40px;
    left: 0;
}

.apply-shape-2 {
    position: absolute;
    top: -220px;
    right: 0;
}

.apply-shape-3 {
	position: absolute;
	bottom: 0;
	left: 0;
}

.apply-shape-4 {
	position: absolute;
	bottom: 0;
	right: 0;
}

.apply-main {
	background-color: #fff;
	border-radius: 32px;
	-webkit-border-radius: 32px;
	-moz-border-radius: 32px;
	-ms-border-radius: 32px;
	-o-border-radius: 32px;
	text-align: center;
	padding: 18px 0 69px 0;
	position: relative;
	z-index: 1;
}

.apply-man-image-1 {
    position: absolute;
    bottom: -33px;
    left: 18px;
}

.apply-man-image-2 {
    position: absolute;
    bottom: -27px;
    right: -18px;
}

.apply-main .section-title {
	position: relative;
	top: -45px;
}

.apply-main .section-sub-title {
	color: #2F84AE;
}

.apply-main .section-small-title {
	color: #333;
	margin: 23px 0 16px 0;
}

.month-section .month-block {
	display: flex;
	align-items: center;
	justify-content: center;
}

.month-section .month-block span,
.month-section .month-block p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 20px;
	line-height: 35px;
	color: #333;
	display: block;
}

.month-section .month-block p {
	padding-right: 20px;
}

.month-section .month-block span {
	padding-left: 20px;	
}

.episode-block .section-small-title {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	/* text-decoration: underline; */
	font-size: 20px;
	letter-spacing: 0.04em;
	line-height: 28px;
	text-align: center;
	color: #333;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.episode-block .section-small-title p {
	border-bottom: 1px solid #333;
	display: inline-block;
	margin-bottom: 5px;
}

/* .business-detail {
	max-width: 524px;
    margin: 0 auto;
    text-align: center;
} */

.business-detail p {
	text-align: center;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.04em;
	line-height: 35px;
	text-align: center;
	color: #333;
}

.buiness-list {
	max-width: 567px;
    margin: 0 auto;
	padding: 25px 0 52px 0;
}

.buiness-list ul li {
	/* display: inline-block; */
	font-weight: 500;
	font-size: 17px;
	letter-spacing: 0.04em;
	line-height: 35px;
	text-align: left;
	color: #333;
}
/*apply section end*/
/*==================================================================*/
/*========== New Class Add End ==========*/
/*==================================================================*/


/*==================================================================*/
/*========== Footer Start ==========*/
/*==================================================================*/
.copy-right-wrp {
	background-color: #f2f2f2;
	padding: 56px 0;
}

.copy-right-main .detail p {
	font-weight: 500;
	font-size: 20px;
	line-height: 35px;
	text-align: center;
	color: #2f84ae;
}

.copy-bottom {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	margin: 9px 238px 0 238px;
}

.copy-bottom a {
	display: block;
	font-weight: 500;
	font-size: 16px;
	line-height: 35px;
	text-align: center;
	color: #333;
	text-decoration: none;
}

.copy-bottom a:hover {
	color: #2f84ae;
}
/*==================================================================*/
/*========== Footer End ==========*/
/*==================================================================*/
.apply-top-section {
	position: relative;
}

.apply-top-1 {
    position: absolute;
    top: -160px;
    left: 0;
}

.apply-top-2 {
    position: absolute;
    bottom: -130px;
    left: 0;
}

.apply-top-3 {
    position: absolute;
    top: -80px;
    right: 0;
}

.apply-top-4 {
    position: absolute;
    bottom: -170px;
    right: 0;
}

.customer-main .detail p {
	font-weight: 500;
}

.customer-inner-block {
	text-align: center;
}

.customer-design-image-5{
	position: absolute;
    left: -20px;
    top: -10px;
    max-width: 100%;
    display: none;
    z-index: 9;
}
.apply-shape-5{
	display: none;
	position: absolute;
    left: -20px;
    top: -21px;
}
.intro-image-main .section-small-title{
	margin:0 auto 44px;
	display: table;
}






.report-main .section-small-title{
	line-height: 37px;
}
.report-main .section-small-title span.info-txt{
	display: block;
	margin: 0;
	padding: 0;
	text-align: center;
	max-width: 100%;
	width: auto;
}
.like-left{
	padding: 17px 20px 13px;
}
.things-inner-block label{
	font-family: 'a_p-otf_a1gothic_stdnb';
	font-weight: normal;
	font-size: 22px;
	letter-spacing: 0.06em;
	text-align: center;
	color: #fff;
	width: 46.68px;
	height: 51.64px;
	background: #2f84ae;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 12px;
	top: 0;
	clip-path: polygon(0% 0%, 100% 0, 100% 100%, 50% 90%, 0% 100%);
}
.fee-main .block-title{
	font-size: 24px;
}
.fee-main .block-title span{
	font-size: 32px;
}
.intro-image-main .section-small-title:before{
	z-index: 1;
}
.intro-image-main .section-small-title h3{
	position: relative;
	z-index: 2;
}


.mac .like-left{
	padding: 15px 20px;
}




.titlebar img{max-width: 100%;}
.titlebar .desktop-title-img{display: table;}
.titlebar .mobile-title-img{display: none;}

.about-main .titlebar{margin: 35px auto 0;}
.about-main .titlebar img{margin: 0 auto;}


.web-planning-left .titlebar{
	margin: 0 0 28px;
}
.apply-main .month-section{
	margin: 20px 0 0;
}
.apply-main .business-detail{
	margin: 25px 0 0;
}
.fee-main .titlebar img{
	margin: 0 auto;
}


.fault-main .section-title{
	font-size: 32px;
	letter-spacing: 0.05em;
	line-height: 54px;
	text-align: center;
	color: #333;
	display: table;
	margin: 0 auto;
	max-width: unset;
	width: fit-content;
}
.fault-wrp .section-title:before{
	bottom: 10px;
}