@charset "UTF-8";
.nk-list .item, .nk-image-block .item .text {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    font: 16px / 1.7em -apple-system, BlinkMacSystemFont, "Helvetica Neue","Noto Sans JP", Verdana, sans-serif;
    font-size: 1.4rem;
    text-align: center;
    color: #535353;
}

img{
max-width: 100%;
height: auto;
}

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

@media screen and (max-width: 480px) {
    .innercol-1000 {
        width: 100%;
    }
	img{
　　　　max-width: 100%;
　　　　height: auto;
}
}

@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
	.innercol-1000 {
        width: 100%;
    }
	img{
　　　　max-width: 100%;
　　　　height: auto;
}
}

/* ---------------------------------------------------
header
----------------------------------------------------*/
.nk-header {
  font-family: "Lato", "Noto Sans CJK JP";
  background: rgba(255, 255, 255, 0.8);
  width: 1000px;
  position: fixed;
  top: 0;
  text-align: left;
  z-index: 999;
}

.nk-header_position {
  position: relative;
}

.nk-header .logo {
  color: #fff;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  letter-spacing: 2px;
  padding: 20px;
}

.nk-header .contact {
  width: 370px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.nk-header .contact a {
  display: block;
  padding: 5px 40px;
  text-decoration: none;
}

.nk-header .contact a:hover {
  color: #000;
  background: #fff;
  opacity: 1;
}

@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
 .nk-header {
  font-family: "Lato", "Noto Sans CJK JP";
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  position: fixed;
  top: 0;
  text-align: left;
  z-index: 999;
}
.nk-header .contact a {
  display: block;
  padding: 5px 15px;
  text-decoration: none;
}
}

@media (max-width: 480px) {
 .nk-header {
  font-family: "Lato", "Noto Sans CJK JP";
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  position: fixed;
  top: 0;
  text-align: left;
  z-index: 999;
}

.nk-header_position {
  position: relative;
}

.nk-header .logo {
}

.nk-header .contact {
  width: 370px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

.nk-header .contact a {
  display: block;
  padding: 5px 40px;
  text-decoration: none;
}

.nk-header .contact a:hover {
  color: #000;
  background: #fff;
  opacity: 1;
}
	.sp_ht_cta{
		padding: 15px 5px 5px 5px;
	}

}

/* ---------------------------------------------------
FV
----------------------------------------------------*/
.relative{
	position: relative;
}

img .fv {
  width: 100%; /* divの幅に対する割合 */
}

.fv-cta_absolute {
	position: absolute;
    left: 50%;
    top: 85%;
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 767px) {
    .fv-cta_absolute{
        position: absolute;
        left: 50%;
        top: 89%;
        transform: translate(-50%, -50%);
    }
}

/* ---------------------------------------------------
解決ブロック
----------------------------------------------------*/
.innercol-1000_pink {
	background: linear-gradient(261deg, rgba(255, 126, 91, 0.20) 0.16%, rgba(255, 51, 149, 0.20) 99.84%);
    width: 1000px;
    margin: 0 auto;
    text-align: center;
	padding-bottom: 50px;
}

.white_back{
	width: 90%;
	flex-shrink: 0;
	border-radius: 31px;
	background: #FFF;
	margin: 0 auto; /* 水平方向に中央寄せ */
	padding: 40px 0px 40px 0px;
}

.title{
	margin: 30 0;
}

.balloon0{
	display: flex;
    max-width: 90%;
	margin: auto;
}

.balloon1,.balloon2{
	display: inline-block;
	margin-right: 20px;
}

.balloon1 {
	flex: 1; /* 横並び均等幅 */
    position: relative;
    margin: 20px 10px 30px 10px;
    padding: 30px 10px 20px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #fff;
    font-size: 38px;
    background: #542BC4;
    border-radius: 20px;
	line-height: 110%;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #542BC4;
}

.balloon1 p {
  margin: 0;
  padding: 0;
}

.balloon2 {
	flex: 1; /* 横並び均等幅 */
    position: relative;
    margin: 20px 10px 30px 10px;
    padding: 30px 10px 20px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #fff;
    font-size: 38px;
    background: #1A8F87;
    border-radius: 20px;
	line-height: 110%;
}

.balloon2:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #1A8F87;
}

.balloon2 p {
  margin: 0;
  padding: 0;
}

.point_title {
	line-height: 90%;
	 margin-bottom: 20px;
}
.text_back{
	width: 95%;
	flex-shrink: 0;
	border-radius: 31px;
	background: #FFF;
	margin: 0 auto; /* 水平方向に中央寄せ */
	color: #535353;
	font-size: 20px;
}

.point_box{
	margin: auto;
	padding: 1px 10px 0px 30px;
	text-align: left;
}

li {
    padding-top: 10px;
    line-height: 150%;
}

.point_img{
	padding: 0px 20px 20px 20px;
}

.strong {
	margin: auto;
	padding: 25px 10px 25px 10px;
	width: 90%;
	border-radius: 20px;
	background: #FFDED4;
	text-align: center;
	line-height: 44px;
    letter-spacing: 2px;
    text-shadow    : 
       2px  2px 1px #ffffff,
      -2px  2px 1px #ffffff,
       2px -2px 1px #ffffff,
      -2px -2px 1px #ffffff,
       2px  0px 1px #ffffff,
       0px  2px 1px #ffffff,
      -2px  0px 1px #ffffff,
       0px -2px 1px #ffffff; 
}

@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
    .innercol-1000_pink {
        width: 100%;
    }
}

@media screen and (max-width: 480px) {
    .innercol-1000_pink {
        width: 100%;
    }
	
	.balloon0{
	display:block;/*SPでflex解除*/
    max-width: 90%;
	margin: auto;
}
	.point_title {
	line-height: 50%;
	 margin-bottom: 10px;
}
	li {
    padding-top: 10px;
    line-height: 150%;
	font-size: 14px
}
.strong {
	margin: auto;
	padding: 25px 10px 25px 10px;
	width: 90%;
	border-radius: 20px;
	background: #FFDED4;
	text-align: center;
	line-height: 30px;
    letter-spacing: 2px;
    text-shadow    : 
       2px  2px 1px #ffffff,
      -2px  2px 1px #ffffff,
       2px -2px 1px #ffffff,
      -2px -2px 1px #ffffff,
       2px  0px 1px #ffffff,
       0px  2px 1px #ffffff,
      -2px  0px 1px #ffffff,
       0px -2px 1px #ffffff; 
}


}
/* ---------------------------------------------------
決まりブロック
----------------------------------------------------*/
.innercol-1000_green {
	background: #0DBFB3;
    width: 1000px;
    margin: 0 auto;
    text-align: center;
	padding: 30px 0 70px 0;
}

.kimari_title{
	display: flex;
    justify-content: center;
    align-items: flex-start;
	margin: auto;
    width: 80%;
    padding: 30px;
}

.kimari_title_text{
	display: inline-block;
	margin: auto;
    line-height: 2;
	letter-spacing: 0.1rem;
	padding: 0px 40px 0px 40px;
}

.kimari_title_img{
	display: inline-block;
	width: 10%;
}

.kimari_point{
	display: flex;
	margin: auto;
	width: 90%;
}

.kimari_point_g{
	flex: 1;
    position: relative;
	margin: 1rem 1rem;
}

.kimari_point_title{
	margin: auto;
    width: 90%;
}

.kimari_point_text{
	border-radius: 20px;
	background: #FFF;
	padding: 20px 20px;
	line-height: 3rem;
}
.kimari_cta{
		width: 60%;
		margin: auto;
	}

@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
    .innercol-1000_green {
    width: 100%;
    margin: 0 auto;
    text-align: center;
	padding: 30px 0 70px 0;
    }
}

@media screen and (max-width: 480px) {
    .innercol-1000_green {
    width: 100%;
    margin: 0 auto;
    text-align: center;
	padding: 30px 0 70px 0;
    }
	.kimari_title_img{
	display: inline-block;
	width: 20%;
	padding: 10% 0% 0% 0%;
}
	.kimari_title_text{
	display: inline-block;
	margin: auto;
    line-height: 2;
	letter-spacing: 0.1rem;
	padding: 0px 5px 0px 5px;
}
	.kimari_point{
	display:block;/*SPでflex解除*/
	margin: auto;
	width: 90%;
}
	.kimari_point_g{
	flex: 1;
    position: relative;
	margin: 1rem 1rem;
	padding: 10px;
}
	.kimari_point_title {
    margin: auto;
    width: 70%;
}
	.kimari_point_text {
    border-radius: 20px;
    background: #FFF;
    padding: 5px 5px;
    line-height: 3rem;
}
	.kimari_cta{
		width: 85%
	}

}

/* ---------------------------------------------------
事例スライダー
----------------------------------------------------*/
.zirei_title{
	display: flex;
    justify-content: center;
    align-items: flex-start;
	margin: auto;
    width: 80%;
    padding: 60px 0px 0px;
}

.zirei_title_text{
	display: inline-block;
	margin: auto;
    line-height: 1.3;
	letter-spacing: 0.1rem;
	padding: 0px 40px 0px 40px;
}

@media screen and (max-width: 767px) {
	.slider{
	margin: auto;
	width: 90%;
}
	.zirei_title_text{
	display: inline-block;
	margin: auto;
    line-height: 1.3;
	letter-spacing: 0.1rem;
	padding: 0px 5px 0px 5px;
}
}

/* ---------------------------------------------------
最後CTA
----------------------------------------------------*/
.innercol-1000_green-2 {
	background: linear-gradient(180deg, rgba(60, 210, 200, 0.20) 19.38%, rgba(255, 255, 255, 0.20) 80.62%);
    width: 1000px;
    margin: 0 auto;
    text-align: center;
	padding: 60px 0px;
}

.cta_copy{
	margin: auto;
	padding: 0 0 30px 0;
}

.balloon-cta {
  background-color: #fff;
  border-radius: 60px;
  filter: drop-shadow(4px 4px 4px rgba(9, 162, 152, .6));
  margin: auto;
  padding: 15px;
  position: relative;
  text-align: center;
  width: 40%;
  line-height: 230%;
}
.balloon-cta::before {
  background-color: #fff;
  content: "";
  height: 30px;
  position: absolute;
  width: 30px;
}

/* 吹き出し下 */
.balloon-bottom-cta::before {
  bottom: -20px;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  left: 43%;
}

.anim-box.poyopoyo {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}

@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
    .innercol-1000_green-2 {
        width: 100%;
		margin: auto;
		padding: 30px 0px 0px 0px;
    }
}

@media screen and (max-width: 480px) {
    .innercol-1000_green-2 {
        width: 100%;
		margin: auto;
		padding: 30px 0px 0px 0px;
    }
	img{
　　　　max-width: 100%;
　　　　height: auto;
}
	.balloon-cta {
  background-color: #fff;
  border-radius: 60px;
  filter: drop-shadow(4px 4px 4px rgba(9, 162, 152, .6));
  margin: auto;
  padding: 15px;
  position: relative;
  text-align: center;
  width: 40%;
  line-height: 230%;
}
.balloon-cta::before {
  background-color: #fff;
  content: "";
  height: 30px;
  position: absolute;
  width: 30px;
}

/* 吹き出し下 */
.balloon-bottom-cta::before {
  bottom: -20px;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  left: 43%;
}
}

/* ---------------------------------------------------
footer
----------------------------------------------------*/
.footer {
    font-family: "Lato", "Noto Sans CJK JP";
    color: #3CD2C8;
    background: #fff;
    padding: 0 0 50px 0;
}
.footer .copyright {
    background: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 20px 0;
}
.ft_logo{
	width: 30%;
	margin: auto;
}
@media (max-width: 767px) {
.footer {
	width: 100%;
    font-family: "Lato", "Noto Sans CJK JP";
    color: #3CD2C8;
    background: #fff;
    padding: 0 0 50px 0;
}
	.ft_logo{
	width: 60%;
	margin: auto;
}
}