@charset "utf-8";

/* ---------------------------------------------
CSS Info
 File name:  style.css

～767px　スマホ基本
-----メジャーブレークポイント-----
768px～　PC
1280px～　大画面PC
------------------------------------------------ */
.container {
	position: relative;
	width: 94%;
	max-width: 1280px;
	margin: 0 auto;
}
.container.small {max-width: 980px;}

@media screen and (max-width:767px) {
	.pc-only {display: none;}
}
@media screen and (min-width:768px) {
	.sp-only {display: none;}
}


/* HEADER
------------------------------------------------ */
.l-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 48px;
	padding: 0 16px;
	background: transparent;
	z-index: 999;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
.l-header.cm-header {
	position: relative;
	background: rgb(98,84,234);
	background: linear-gradient(35deg, rgba(98,84,234,1) 0%, rgba(97,201,255,1) 100%, rgba(255,255,255,1) 100%);
}
.header--logo img {
	width: auto;
	height: 32px;
	vertical-align: bottom;
}

@media screen and (max-width:959px) {
	.header-nav {display: none;}

	.drawer-open {overflow: hidden !important;}
	.drawer-overlay {
		position: fixed;
		z-index: 500;
		top: 0;
		left: 0;
		display: none;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, .75);
	}
	.drawer-overlay:after {
		position: absolute;
		content: "";
		top: 16px;
		right: 8px;
		width: 32px;
		height: 32px;
		background: url("../images/share/nav-close.png") no-repeat left top;
		background-size: 32px;
	}
	.drawer-open .drawer-overlay {display: block;}
	.drawer-nav {
		position: fixed;
		z-index: 501;
		overflow: hidden;
		top: -100%;
		left: 0;
		width: 100%;
		height: 100vh;
		max-height: 100%;
		padding: 48px 0;
		background: rgb(98,84,234);
		background: linear-gradient(35deg, rgba(98,84,234,1) 0%, rgba(97,201,255,1) 100%, rgba(255,255,255,1) 100%);
		color: #FFF;
		line-height: 1;
		overflow-y: scroll;
		-webkit-transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
		transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	}
	.drawer--top.drawer-open .drawer-nav {top: 0;}
	.drawer--top .drawer-hamburger,
	.drawer--top.drawer-open .drawer-hamburger {right: 0;}

	.drawer-hamburger {
		position: fixed;
		z-index: 501;
		display: block;
		top: 0;
		width: 48px;
		height: 48px;
		padding: 0;
		border: 0;
		outline: 0;
		background-color: #53abd9;
	}
	.drawer-hamburger:hover {cursor: pointer;}
	.drawer-open .drawer-hamburger,
	.cm-header .drawer-hamburger {background-color: transparent;}
	.cm-header .drawer-hamburger {position: absolute;}
	.drawer-hamburger-icon {
		position:absolute;
		display: block;
		width: 28px;
		height: 2px;
		top: 10px;
		left: 10px;
		background: #FFF;
	}
	.drawer-hamburger-icon:before,
	.drawer-hamburger-icon:after {
		position: absolute;
		content: "";
		height: 2px;
		left: 0;
		background: #FFF;
		-webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
		transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	}
	.drawer-hamburger-icon:before {width: 24px;}
	.drawer-hamburger-icon:after {width: 16px;}
	.drawer-hamburger-icon:before {bottom: -6px;}
	.drawer-hamburger-icon:after {bottom: -12px;}
	.drawer-open .drawer-hamburger-icon {background-color: transparent;}
	.drawer-open .drawer-hamburger-icon:before,
	.drawer-open .drawer-hamburger-icon:after {top: 10px;}
	.drawer-open .drawer-hamburger-icon:before {
		width: 28px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.drawer-open .drawer-hamburger-icon:after {
		width: 28px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.drawer-hamburger-label {
		position: absolute;
		display: block;
		width: 100%;
		bottom: 7px;
		left: 0;
		font-size: 10px;
		font-size: 1rem;
		font-weight: 700;
		color: #FFF;
		text-align: center;
	}
	.drawer-open .drawer-hamburger-label {display: none;}

	#mobileNavi .mn-wrap {
		margin-top: 40px;
		padding: 0 16px;
	}
	#mobileNavi .mn-wrap a {
		display: block;
		position: relative;
		color: #FFF;
		line-height: 1;
	}

	#mobileNavi .mn-main_nav ul li {margin-bottom: 1.5em;}
	#mobileNavi .mn-main_nav ul li a {
		width: 100%;
		font-size: 24px;
		font-size: 2.4rem;
		font-weight: bold;
		line-height: 1.3;
		text-align: center;
	}
	#mobileNavi .mn-main_nav ul li a.login {color: #fff019;}
	#mobileNavi .mn--contact {margin-top: 40px;}
	#mobileNavi .mn--contact ul {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		/*-webkit-justify-content: space-between;*/
		/*-ms-justify-content: space-between;*/
		/*justify-content: space-between;*/
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
	}
	#mobileNavi .mn--contact li {width: calc(50% - 16px / 2);}
	#mobileNavi .mn--contact li a {
		position: relative;
		width: 100%;
		padding: 1em .5em;
		background: #FFF;
		border-radius: 0px 8px 8px 8px;
		font-size: 17px;
		font-size: 1.7rem;
		font-weight: bold;
		color: #181c2f;
		line-height: 1;
		text-align: center;
	}
	#mobileNavi .mn--contact li a:hover {background: #fff019;}
	#mobileNavi .mn--contact li a:after {
		position: absolute;
		right: 8px;
		top: calc(50% - .5em);
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 10px;
		font-size: 1rem;
		content: "\f0da";
	}
	#mobileNavi .mn--contact li a i {margin-right: .5em;}
	#mobileNavi .mn--contact li.request a i,
	#mobileNavi .mn--contact li.request a:after {color: #5347c7;}
	#mobileNavi .mn--contact li.signup a i,
	#mobileNavi .mn--contact li.signup a:after {color: #53abd9;}

	.drawer-open .l-header.cm-header {background: transparent;}
	.drawer-open .header--logo {display: none;}
}
@media screen and (min-width:960px) {
	.l-header {
		height: 80px;
		padding: 0 48px;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
	}
	.header--logo img {
		width: auto;
		height: 48px;
	}
	.header-nav {
		display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.header--gnav,
	.header--cta {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-weight: bold;
	}
	.header--gnav li {margin-right: 24px;}
	.header--gnav li a {color: #FFF;}
	.header--gnav li a.login {color: #fff019;}
	.header--gnav li a:hover {color: #5347c7;}
	.header--cta li:not(:last-child){margin-right: 16px;}
	.header--cta li a {
		position: relative;
		padding: .75em 1.5em;
		background: #FFF;
		border-radius: 0px 8px 8px 8px;
		font-size: 14px;
		font-size: 1.4rem;
		color: #181c2f;
		line-height: 1;
	}
	.header--cta li a:hover {background: #fff019;}
	.header--cta li a:after {
		position: absolute;
		right: 8px;
		top: calc(50% - .35em);
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 10px;
		font-size: 1rem;
		content: "\f0da";
	}
	.header--cta li a i {margin-right: .5em;}
	.header--cta li.request a i,
	.header--cta li.request a:after {color: #5347c7;}
	.header--cta li.signup a i,
	.header--cta li.signup a:after {color: #53abd9;}

	.drawer-hamburger,
	#mobileNavi,
	.header-main--txt {display: none;}
}
@media screen and (min-width:1280px) {
	.header--gnav li {margin-right: 40px;}
}


/* メインコンテンツ
------------------------------------------------ */
.l-main {
	display:block; /* IE対策 */
	overflow: hidden;
}


/* CTA共通
------------------------------------------------ */
.cm-cta {
	background: rgb(98,84,234);
	background: url("../img/bg-abstract.png"), linear-gradient(35deg, rgba(98,84,234,1) 0%, rgba(97,201,255,1) 100%, rgba(255,255,255,1) 100%);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding-top: 20px;
	padding-bottom: 25px;
	
}
.cm-cta .txt {
	text-align: center;
	padding-top: 20px;
	color: #FFF;
}
.cm-cta .tel {
	display: block;
	margin: 10px auto;
	font-size: 40px;
	font-weight: bold;
	color: #FFF019;
	text-align: center;
	
}
.cta-box {
	padding: 32px 0;
	text-align: center;
}
.cta-box li a {
	position: relative;
	display: block;
	width: 100%;
	padding: 1.25em .25em;
	background: #FFF;
	border-radius: 0px 8px 8px 8px;
	font-weight: bold;
	color: #181c2f;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
}
.cta-box li a:hover {background: #fff019;}
.cta-box li a:after {
	position: absolute;
	right: 8px;
	top: calc(50% - .5em);
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 14px;
	font-size: 1.4rem;
	content: "\f0da";
}
.cta-box li a i {margin-right: .5em;}
.cta-box li.request a i,
.cta-box li.request a:after {color: #5347c7;}
.cta-box li.signup a i,
.cta-box li.signup a:after {color: #53abd9;}

.contactbox {
	margin-top: 20px;
	text-align: center;
}
.contact_tel {
	text-align: center;
	color: #FFF;
}
.contact_tel a {
	text-decoration: none;
	font-size: 38px;
	font-size: 3.8rem;
	font-weight: bold;
	color: #fff019;
}
.contact_tel a i{
	color: #FFF;
	font-size: 0.8em;
}
@media screen and (min-width: 768px){
.contact_tel {
	margin-right: 3%;
}
.contactbox {
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	align-items: center;
	}
}
.buybtn i {color: #5347c7;}
.buybtn i {margin-right: .5em;}
.buybtn .btn{
	display: block;
	width: 300px;
	padding: 1.5em 2.5em;
	background: #FFF;
	border-radius: 0px 8px 8px 8px;
	font-weight: bold;
	color: #181c2f;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
}
.buybtn a:hover{background: #fff019;}


@media screen and (min-width:768px) {
	.cta-box {
		padding: 48px 0;
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.cta-box li {
	width: 49%;
	max-width: 260px;
	}
	.cta-box li:first-child {margin-right: 2%;
	}
	.cta-box li a {
		font-size: 18px;
		font-size: 1.8rem;
	}
	.cta-box li a:after {
		font-size: 18px;
		font-size: 1.8rem;
	}
}


/* MV
------------------------------------------------ */
.hero {
	padding-top: 64px;
	color: #FFF;
}
.hero.lp01 {
	background-color: rgb(98,84,234);
	background: url("../img/bg-abstract.png"), linear-gradient(35deg, rgba(98,84,234,.9) 0%, rgba(97,201,255,.9) 100%, rgba(255,255,255,.9) 100%), url("../img/hero-lp01.jpg");
	background-repeat: no-repeat;
	background-position: right bottom, left top;
	background-size: auto, cover;
}
.hero.lp02 {
	background-color: rgb(98,84,234);
	background: url("../img/bg-abstract.png"), linear-gradient(35deg, rgba(98,84,234,.9) 0%, rgba(97,201,255,.9) 100%), url("../img/hero-lp02.jpg");
	background-repeat: no-repeat;
	background-position: right bottom, left top;
	background-size: cover;
}
.hero-copy .label {
	display: inline-block;
	height: 24px;
	line-height: 24px;
	border: 2px solid #FFF;
	/*border-radius: 8px;*/
	margin-bottom: .75em;
	padding: 0 2em 1.8em;
	/*background: #FFF;*/
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
}
.hero-copy .label .smalltxt {
	font-size: 75%;
}
.hero-copy .catch {
	width:100%;
}
.hero-copy .ttl {
	display: inline-block;
	margin-bottom: .25em;
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: bold;
	line-height: 1.5;
}
.hero-copy .extxt {
	display: inline-block;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight:bold;
}
.hero-copy .banner {
	margin: 24px 0;
	display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}
.hero-copy .banner li:first-child {margin-right: 8px;}
.hero-copy .banner img {
	width: 100%;
	max-width: 168px;
	vertical-align: bottom;
}

.hero-visual .visual {
  position: relative;
  width: 100%;
  padding-top: 210px;
}

.mainvisual {
	display: block;
/*	position: relative;
	left: 80px;*/
	padding-top: 40px;
	width:600px;
	margin-left: calc(100%/7);
}

.hero-cta {
	background-color: rgba(0,0,0,.15);
	padding-top: 20px;
	padding-bottom: 25px;
}
.hero-cta .txt {
	text-align: center;
	padding-top: 20px;
	
}

@media screen and (max-width:767px) {
	.hero-copy .ttl {
		font-size: 32px;
		font-size: 3.2rem;
	}
	.mainvisual {
		margin-left: calc(100% / 6);
		padding-top: 20px;
	}
}
@media screen and (min-width:768px) {
	.hero {padding-top: 80px;}
	.hero-inr  {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.hero-item {
		width: calc(70% - 20px / 2);
		padding-bottom: 40px;
	}
	.hero-copy .ttl {
		font-size: 32px;
		font-size: 3.2rem;
	}
	.hero-copy .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
}
@media screen and (min-width:960px) {
	.hero-item {width: calc(60% - 20px / 2);}
	.hero-copy .label {
		height: 32px;
		line-height: 32px;
		/*border-radius: 16px;*/
		font-size: 18px;
		font-size: 1.8rem;
	}
	.hero-copy .ttl {
		font-size: 36px;
		font-size: 3.6rem;
	}
	.hero-copy .catch {
		font-size: 22px;
		font-size: 2.2rem;
	}
	.hero-copy .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
}
@media screen and (min-width:1024px) {
	.hero-copy .ttl {
		font-size: 42px;
		font-size: 4.2rem;
	}
}
@media screen and (min-width:1280px) {
	.hero-item {width: calc(60% - 80px / 2);}
	.hero-copy .ttl {
		font-size: 54px;
		font-size: 5.4rem;
	}
	.hero-copy .catch {
		font-size: 22px;
		font-size: 2.2rem;
	}
}


/* セクション共通
------------------------------------------------ */
.cm-sec {padding: 48px 0;}
.sec-ttl {
	position: relative;
	margin-bottom: 24px;
	padding-bottom: 24px;
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}
.sec-ttl:after {
	position: absolute;
	content: "";
	width: 40px;
	height: 12px;
	left: calc(50% - 20px);
	bottom: 0;
	background: url("../img/ttl-sprt.png") no-repeat;
	background-size: 40px 12px;
}

@media screen and (min-width:768px) {
	.cm-sec {padding: 72px 0;}
	.sec-ttl {
		margin-bottom: 38px;
		font-size: 38px;
		font-size: 3.8rem;
	}
}

/* チェックマーク
------------------------------------------------ */
.checkmark{
	padding-left:24px;
	position:relative;
}
.checkmark:before,
.checkmark:after{
	content:"";
	display:block;
	position:absolute;
}
.checkmark:before{
	width:16px;
	height:16px;
	border:2px solid #000000;
	left:0;top:2px;
}
.checkmark:after{
	border-left:4px solid #ff0000;
	border-bottom:4px solid #ff0000;
	width:18px;
	height:5px;
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
	left:5px;
	top:3px;
}

/* 三角矢印
------------------------------------------------ */
.arrow {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 0 15px;
	border-color: #583696 transparent transparent transparent;
	margin-top: 30px;
	text-align: center;
	display: block;
	margin: 40px auto 30px;
}
/* 問題提起
------------------------------------------------ */
.issues-ttl {
	position: relative;
	margin-bottom: 24px;
	padding-bottom: 24px;
	color: rgba(84,70,178,1);
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.issues-ttl .smallttl{
	font-size: 75%;
	font-weight: 800;
}

.issues-txt {
	position: relative;
	margin-bottom: 24px;
	color: rgba(84,70,178,1);
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}
.issues-txt .smalltxt{
	font-size: 75%;
	font-weight: 800;
}
.issues-question {
	margin: 40px auto;
	
}
.issues-question .ttl {
	color:#f03434;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.issues-img {
	margin-bottom: 20px;
	max-width: 768px;
	width: 100%;
	margin: 0 auto;
}

.issues-item {
	width: 100%;
	max-width: 1280px;
	padding: 24px 16px;
	background: #EFEFEF;
	text-align: center;
	margin-top: 20px;
}

.issues-item .ttl {
	color:#000;
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 1.5rem;
}
.issues-item .txt {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
}
.issues-item .txtlarge, .issues-benefit .txtlarge {
	font-size: 1.5em;
}
.issues .arrow {
	margin: 20px auto 0;
}
.issues-benefit {
	margin: 40px auto 0 ;
	text-align: center;
	border: solid #EFEFEF 4px;
	padding-bottom: 5px;
}
.issues-benefit .txt {
	color: rgba(84,70,178,1);
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.issues-Answer {
	margin: 40px auto 0;
}
.issues-Answer .ttl {
	color:#f03434;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.issues-item .redtxt{color:#ff7364;}

.under {
	border-bottom: double 3px;
}
.money, .losstable {
	width: 100%;
	display: block;
	text-align: center;
	margin: 10px auto;
}
.before_after_box {
	background: #ddeef7;
	padding: 10px;
}

.before_after_image > img {
    margin: 0px auto;
    max-width: 100%;
}

.before_after_arrow {
    position: relative;
    width: 60px;
    height: 60px;
    color: #3388dd;
}
.before_after_arrow:before,
.before_after_arrow:after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    content: "";
}
.before_after_arrow:before {
    right: -50px;
    width: 0px;
    height: 0px;
    border: 40px solid transparent;
    border-left: 50px solid currentColor;
}
.before_after_arrow:after {
    left: -10px;
    width: 40px;
    height: 40px;
    background-color: currentColor;
}

@media screen and (max-width: 767px) {
    .before_after_arrow {
        margin: 30px auto;
        transform: rotate(90deg);
    }
}
@media print, (min-width: 768px) {
	.before_after {
        display: flex;
        justify-content: space-between;
        position: relative;
	}
    .before_after_image {
        width: calc(50% - 60px);
    }
    .before_after_arrow {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
    }
}
@media screen and (max-width:767px) {
	.issues-box .thumb {margin-bottom: 16px;}
}
@media screen and (min-width:768px) {
	.issues-ttl {
		margin-bottom: 42px;
		font-size: 42px;
		font-size: 4.2rem;
	}
	.attention {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: center;
		flex-wrap: wrap;
		align-items: center;
		background: #ddeef7;
		padding: auto 10px;
		margin: 10px auto;
	}
	.attention img {width: calc(50% - 20px / 2);}
}


/* 課題解決
------------------------------------------------ */
.question-ttl {
	position: relative;
	margin-bottom: 40px;
	color: rgba(84,70,178,1);
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.question-ttl .smallttl{
	font-size: 75%;
	font-weight: 800;
}
@media screen and (min-width:768px) {
	.question-ttl {
		margin-bottom: 60px;
		font-size: 38px;
		font-size: 3.8rem;
	}
}

.question-item {
	padding: 32px 16px 24px;
	background: #FFF;
	border-radius: 0px 16px 16px 16px;
	text-align: center;
	margin-bottom: 20px;
}
.question-item .thumb img {
	width: 120px;
	height: auto;
	vertical-align: bottom;
}
.question-item .txt {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
}
.question-item .ttl {
	color:#000;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 4rem;
}

@media screen and (max-width:767px) {
	.question-item:not(:last-of-type) {margin-bottom: 20px;}
}
@media screen and (min-width:768px) {
	.question-box {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.question-item {width: calc(50% - 20px / 2);}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.question-item .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
}
@media screen and (min-width:1280px) {
	.question-item {width: calc(50% - 30px / 2);}
}


/* Evi計りとは？
------------------------------------------------ */

.about-item {
	padding: 24px 16px;
	background: #FFF;
	border-radius: 0px 16px 16px 16px;
	text-align: center;
}
.about-item .thumb img {
	width: 120px;
	height: auto;
	vertical-align: bottom;
}
.about-item .txt {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}
.about-item .ttl {
	color:#f03434;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.5rem;
}

@media screen and (max-width:767px) {
	.about-item:not(:last-of-type) {margin-bottom: 16px;}
}
@media screen and (min-width:768px) {
	.about-box {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
	}
	.about-item {width: calc(33.3333333% - 32px / 3);}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.about-item .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
}
@media screen and (min-width:1280px) {
	.about-item {width: calc(33.3333333% - 80px / 3);}
}


/* Evi計りにできること
------------------------------------------------ */
.feature-box {position: relative;}
.feature-item .num {
	display: block;
	margin-bottom: 16px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	font-size: 60px;
	font-size: 6.0rem;
	color: #53abd9;
	line-height: 1;
}
.feature-item .ttl {
	margin-bottom: .75em;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
}
.feature-box .desc:before {
	position: absolute;
	content: "";
}
.feature-benefit .txtlarge {
	font-size: 1.5em;
}
.feature-benefit {
	margin: 40px auto 0 ;
	text-align: center;
	border: solid #EFEFEF 4px;
	padding-bottom: 5px;
}
.feature-benefit .txt {
	color: rgba(84,70,178,1);
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.feature01 .desc:before {
	width: 155px;
	height: 106px;
	left: 80px;
	top: 0;
	background: url("../img/bg-feature01.png") no-repeat;
	background-size: 155px 106px;
}
.feature02 .desc:before {
	width: 88px;
	height: 111px;
	right: 0;
	top: 0;
	background: url("../img/bg-feature02.png") no-repeat;
	background-size: 88px 111px;
}
.feature03 .desc:before {
	width: 123px;
	height: 36px;
	left: 48px;
	top: 0;
	background: url("../img/bg-feature03.png") no-repeat;
	background-size: 123px 36px;
}

.feature-cta {
	padding: 24px 16px;
	border: 8px solid #bdc5cb;
	text-align: center;
}
.feature-cta .txt {
	margin-bottom: .75em;
	font-weight: bold;
}
.feature-cta .banner {
	/*margin-bottom: 48px;*/
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.feature-cta .banner li:first-child {margin-right: 8px;}
.feature-cta .banner li img {
	width: 100%;
	max-width: 168px;
	vertical-align: bottom;
}
.feature-cta .btns li a {
	display: block;
	width: 260px;
	margin: 0 auto;
	padding: 1em .25em;
	border-radius: 0px 8px 8px 8px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.feature-cta .btns li.signup a {background: #53abd9;}
.feature-cta .btns li.buy a {background: #5347c7;}
.feature-cta .btns li a:hover {
	background: #fff019;
	color: #181c2f;
}
.feature-cta .btns li a i {
	margin-right: .5em;
	color: #fff019;
}
.feature-cta .btns li.signup a:hover i {color: #53abd9;}
.feature-cta .btns li.buy a:hover i {color: #5347c7;}

@media screen and (max-width:320px) {
	.feature-cta .txt {
		font-size: 13px;
		font-size: 1.3rem;
	}
}
@media screen and (max-width:767px) {
	.feature-box {margin-bottom: 24px;}
	.feature-box .thumb {
		margin-top: 16px;
		padding: 24px 0;
		text-align: center;
	}
	.feature-box .thumb img {
		width: auto;
		height: 250px;
	}
	.feature-box:nth-of-type(even) .thumb {position: relative;}

	.feature-cta .btns li.signup {margin-bottom: 8px;}
}
@media screen and (min-width:768px) {
	.feature-box {padding: 48px 0;}
	.feature-inr {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.feature-item {width: calc(50% - 40px / 2);}
	.feature-box:nth-of-type(even) .feature-inr {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.feature01 .desc:before {
		width: 310px;
		height: 212px;
		left: 10vw;
		background-size: auto;
	}
	.feature02 .desc:before {
		width: 176px;
		height: 222px;
		background-size: auto;
	}
	.feature03 .desc:before {
		width: 246px;
		height: 72px;
		background-size: auto;
	}

	.feature-cta .btns {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.feature-cta .banner li:first-child,
	.feature-cta .btns li:first-child {margin-right: 16px;}
	.feature-cta .txt {
		font-size: 18px;
		font-size: 1.8rem;
	}
}
@media screen and (min-width:960px) {
	.feature-box:nth-of-type(even):before {left: -960px;
}
	.feature-item {width: calc(50% - 80px / 2);}
	.feature-item .ttl {
		font-size: 32px;
		font-size: 3.2rem;
	}
}
@media screen and (min-width:1280px) {
	.feature-box:nth-of-type(even):before {left: -960px;}
	.feature-item {width: calc(50% - 160px / 2);}
}


/* 使い方
------------------------------------------------ */
#howto {
	/*max-height: 700px;*/
}
.video-box {
	display: block;
	margin: 0 auto;	
	max-width: 600px;
}
.video {
	padding-bottom: 56.25%;
	height:0px;
	position: relative;
}
.video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:100%;
}
.pdf-manual {
	border: none;
	margin-top: 50px;
}
.howto-cta .btns {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.howto-cta .btns li a {
	display: block;
	width: 260px;
	margin: 0 auto;
	padding: 1em .25em;
	border-radius: 0px 8px 8px 8px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.howto-cta .btns li.signup a {background: #53abd9;}
.howto-cta .btns li a:hover {
	background: #fff019;
	color: #181c2f;
}
.howto-cta .btns li a i {
	margin-right: .5em;
	color: #fff019;
}
.howto-cta .btns li.signup a:hover i {color: #53abd9;}

@media screen and (max-width:767px) {
	.howto-cta .btns li.signup {margin-bottom: 8px;}
}
@media screen and (min-width:768px) {
	.howto-cta .btns {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.howto-cta .banner li:first-child,
	.howto-cta .btns li:first-child {margin-right: 16px;}
}

/* 料金
------------------------------------------------ */
.price-txt {
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
}
.price-tbl {
	width: 100%;
	margin-top: 24px;
	border-collapse: collapse;
	border: 2px solid #bdc5cb;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
}
.price-tbl th,
.price-tbl td {
	padding: .75em 1em;
	border-right: 1px solid #bdc5cb;
	border-bottom: 2px solid #bdc5cb;
	text-align: center;
}
.price-tbl th {background: #dde1e5;}
.price-tbl td span {
	font-size: 24px;
	font-size: 2.4rem;
	color: #53abd9;
}

@media screen and (max-width:767px) {
	.price-tbl .num {
		width: 10em;
		text-align: left;
	}
}
@media screen and (min-width:768px) {
	.price-txt {
		font-size: 32px;
		font-size: 3.2rem;
	}
	.price-tbl {
		margin-top: 40px;
		font-size: 22px;
		font-size: 2.2rem;
	}
	.price-tbl .num {width: 30%;}
	.price-tbl td span {
		font-size: 32px;
		font-size: 3.2rem;
	}
}

/*専用はかり
------------------------------------------------ */
.product {
	display: flex;
}
.product-ttl {
	position: relative;
	margin-bottom: 40px;
	color: rgba(84,70,178,1);
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.product-ttl .smallttl{
	font-size: 75%;
	font-weight: 800;
}
.product-item .txt {
	text-align: right;
	padding-right: 5%;
}
.product-item .pkg {
	width: 100%;
}
.product-item .pkgicon {
	width: 100%;
}
.product-price {
	font-size: 30px;
	font-size: 3.0rem;
}

@media screen and (min-width:768px) {
	.product-ttl {
		margin-bottom: 60px;
		font-size: 38px;
		font-size: 3.8rem;
	}
}
/*.product-box{
	padding-bottom: 60px;
}*/
.product-item {
	background: #FFF;
	text-align: center;
	margin-bottom: 20px;
}
.product-item .txt {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
}
.product-item .ttl {
	color:#000;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 4rem;
}

@media screen and (max-width:767px) {
	.product-item:not(:last-of-type) {margin-bottom: 20px;}
	.product-item:first-of-type {
		border-bottom: solid 1px #1f51b8;
		padding-bottom: 20px;
}
}
@media screen and (min-width:768px) {
	.product-box {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: center;
		flex-wrap: wrap;
		align-items: center;
	}
	.product-item {		
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: center;
		flex-wrap: wrap;
		width: calc(50% - 20px / 2);}
.product-item:first-of-type {
	border-right: solid 1px #1f51b8;
}
.product-item .pkg {
	width: 45%;
	height: auto;
	vertical-align: bottom;
	align-self: flex-start;
}
.product-item .pkgicon {
	width: 55%;
	height: auto;
	vertical-align: bottom;
	align-self: flex-start;
}
}
@media screen and (min-width:768px) and (max-width:959px) {
	.product-item .txt {
		font-size: 15px;
		font-size: 1.5rem;
	}
}
@media screen and (min-width:1280px) {
	.product-item {width: calc(50% - 30px / 2);}
	.product-item .txt {
	text-align: right;
	padding-right: 8%;
	}
}


/* 事例
------------------------------------------------ */
.case-item {
	padding: 16px 16px 24px;
	background: #FFF;
	border-radius: 0px 16px 16px 16px;
}
.case-item .thumb {text-align: center;}
.case-item .thumb img {vertical-align: bottom;}
.case-item .name {
	margin: .75em 0;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.3;
}
.case-item .name span {
	margin-left: .5em;
	font-size: 18px;
	font-size: 1.8rem;
}

@media screen and (max-width:767px) {
	.case-item:not(:last-of-type) {margin-bottom: 16px;}
}
@media screen and (min-width:768px) {
	.case-box {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
	}
	.case-item {width: calc(33.3333333% - 48px / 3);}
}


/* 問い合わせ
------------------------------------------------ */
.contact-header {line-height: 1.8;}
.contact-header p + p {margin-top: 1em;}
.contact-header .ttl {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}
.contact-header .errmsg {
	margin: 1.5em 0;
	padding: 1em;
	border: 3px solid #cc0000;
	color: #cc0000;
}

.contact-tbl {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #bdc5cb;
	margin-top: 24px;
}
.contact-tbl th,
.contact-tbl td {
	padding: 1em;
	border: 1px solid #bdc5cb;
	vertical-align: middle;
}
.contact-tbl th {
	background: #ddeef7;
	font-weight: bold;
}

.contact-tbl input,
.contact-tbl textarea {
	width: 100%;
	padding: .75em 1em;
	background-color: #FFF;
	border: 1px solid #bdc5cb;
	border-radius: 4px;
	outline: none;
}
.contact-tbl input::-webkit-input-placeholder,
.contact-tbl input::-moz-placeholder,
.contact-tbl input::-ms-input-placeholder {color: #aaa;}
.contact-tbl input:-ms-input-placeholder {color: #aaa;}
.contact-tbl input::placeholder {color: #aaa;}
.contact-tbl input:focus,
.contact-tbl textarea:focus {border:1px solid #999}
.contact-tbl input.error,
.contact-tbl textarea.error {background: #FFE4E4;}
.contact-tbl ul li:not(:last-child) {margin-bottom: 1em;}

.contact-tbl .must {
	display: inline-block;
	margin-left: .5em;
	padding: .35em .75em;
	background: #cc0000;
	border-radius: 4px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #FFF;
	line-height: 1;
}
.contact-tbl .msg {
	margin-top: .75em;
	color: #cc0000;
	font-size: 14px;
	font-size: 1.4rem;
}

.contact-btns {text-align: center;}
.contact-btns button {
	width: 260px;
	padding: 1em 0;
	border: 0;
	border-radius: 8px;
	font-weight: bold;
	cursor: pointer;
	color: #fff;
}
.contact-btns button:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.contact-btns .contact-submit {background: #181c2f;}
.contact-btns .contact-back {background: #666;}

.thanks-wrap {padding-bottom: 64px;}
.thanks-wrap {line-height: 1.8;}
.thanks-wrap p + p {margin-top: 1.5em;}

@media screen and (max-width:767px) {
	.contact-tbl th,
	.contact-tbl td {
		display: block;
		width: 100%;
		font-size: 14px;
		font-size: 1.4rem;
	}
	.contact-tbl input,
	.contact-tbl textarea {
		font-size: 14px;
		font-size: 1.4rem;
	}

	.contact-btns {margin-top: 24px;}
	.contact-btns button {margin: 8px auto;}
}
@media screen and (min-width:768px) {
	.contact-tbl {margin-top: 40px;}
	.contact-tbl th {width: 30%;}
	.contact-btns {margin-top: 48px;}
	.contact-btns button {margin: 0 8px;}

	.thanks-wrap {
		padding-bottom: 120px;
		text-align: center;
	}
}


/* その他ページ
------------------------------------------------ */
.lower-ttl {
	margin-bottom: 1.5em;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
}

.term-dl {margin-bottom: 48px;}
.term-dl dt {
	margin: 2em 0 .75em;
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.5;
}
.term-dl dd + dd {margin-top: 1em;}
.term ul,
.term ol {margin: 1em 0 1em 1em;}
.term li:not(:last-child) {margin-bottom: .5em;}

@media screen and (min-width:768px) {
	.lower-ttl {
		font-size: 40px;
		font-size: 4rem;
	}
}


/* FOOTER
------------------------------------------------ */
.l-footer {
	padding: 40px 0 24px;
	background: #181c2f;
	color: #FFF;
}
.l-footer a {
	color: #FFF;
	line-height: 1.3;
}
.l-footer a:hover {text-decoration: underline;}
.l-footer-nav {
	font-size: 12px;
	font-size: 1.2rem;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}
.ft-copy {
	margin-top: 32px;
	font-size: 11px;
	font-size: 1.1rem;
	color: rgba(255,255,255,.5);
	text-align: center;
	line-height: 1.3;
}
.ft-copy a {
	color: rgba(255,255,255,.5);
	text-decoration: underline
}
.ft-copy a:hover {
	color: rgba(255,255,255,1);
	text-decoration: none;
}

@media screen and (max-width:767px) {
	.l-footer-nav {
		border-top: 1px solid rgba(255,255,255,.25);
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.l-footer-nav li {
		width: 50%;
		border-bottom: 1px solid rgba(255,255,255,.25);
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
	}
	.l-footer-nav li:nth-child(odd) {border-right: 1px solid rgba(255,255,255,.25);}
	.l-footer-nav li a {
		width: 100%;
		padding: 1em .5em;
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		text-align: center;
	}
}
@media screen and (min-width:768px) {
	.l-footer-nav {
		font-size: 14px;
		font-size: 1.4rem;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.l-footer-nav li:not(:last-child) {margin-right: 40px;}
	.ft-copy {
		padding-top: 24px;
		border-top: 1px solid rgba(255,255,255,.25);
	}
}


/* 汎用
------------------------------------------------ */
/*----- 丸リスト -----*/
.list-dot li {
	position: relative;
	margin: 0 0 0 1em;
}
.list-dot li:before {
	display: inline-block;
	content: "";
	position: absolute;
	top: .65em;
	left: -1em;
	width: .5em;
	height: .5em;
	border-radius: 50%;
	background: #999;
}

/*----- 数字リスト -----*/
ol.list-num {
	counter-reset: number;
	list-style: none;
	padding: 0;
}
ol.list-num li:before{
	counter-increment: number;
	content: counter(number);
	display: inline-block;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	margin-right: .5em;
	color: #999;
}

/*----- TABLE -----*/
.cm-tbl {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #bdc5cb;
}
.cm-tbl th,
.cm-tbl td {
	padding: 1em;
	border: 1px solid #bdc5cb;
	vertical-align: middle;
}
.cm-tbl th {
	width: 30%;
	background: #f3f3f3;
	font-weight: bold;
}

@media screen and (max-width:767px) {
	.cm-tbl {
		font-size: 13px;
		font-size: 1.3rem;
	}
}

/*----- 背景関連 -----*/
.bg-bl {background-color: #ddeef7;}
.bg-gray {background-color: #f3f3f3;}

/*----- 文字関連 -----*/
.txt-center {text-align: center;}
.txt-right {text-align: right;}
.txt-bold {font-weight: bold;}
.txt-nml {font-weight: normal;}
.txt-big {
	font-size: 20px;
	font-size: 2rem;
}
.txt-small {
	font-size: 12px;
	font-size: 1.2rem;
}

.txt-grad {
	color: #53abd9;
	background: linear-gradient(to right, rgba(98,84,234,1) 0%, rgba(97,201,255,1) 100%, rgba(255,255,255,1) 100%);
	-webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media all and (-ms-high-contrast:none){
  .txt-grad {background: none;}
}
.txt-red {color: #f03434;}
.txt-bl {color: #1f51b8;}
.txt-pu {color: #5347c7;}
.txt-pink {color: #f25c5c;}
.txt-org {color: #f29a2e;}
.txt-yel {color: #fff019;}
.txt-gry {color: #757575;}
.txt-blk {color: #000000;}

.marker-yel {
	background: #fff019;
	background: -webkit-linear-gradient(transparent 70%, #fff019 0%);
	background: linear-gradient(transparent 70%, #fff019 0%);
	font-weight: bold;
}
@media screen and (min-width:960px) {
	.txt-center_pc {text-align: center;}
}
/*----- 吹き出しテキスト -----*/
.quate_center {
	text-align: center;
}
.quote_text {
	display: inline-block;
	margin: 0 auto;
	text-align: center;
	border: 2px solid rgba(84,70,178,1);
	color: rgba(84,70,178,1);
	border-radius: 40px;
	font-size: 1.2em;
	font-weight: 500;
	line-height: 24px;
	position: relative;
	padding: 5px 20px;
}
.quote_text::before {
	content: '';
	display: block;
	position: absolute;
	border-color: rgba(84,70,178,1);
	border-style: solid;
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-width: 0;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	width: 10px;
	height: 10px;
	border-top-width: 2px;
	border-right-width: 2px;
	-webkit-transition: 0.3s cubic-bezier(0.13, 0.78, 0.38, 0.98);
	transition: 0.3s cubic-bezier(0.13, 0.78, 0.38, 0.98);
	bottom: -7.5px;
	left: 0;
	right: 0;
	margin: 0 auto;
	line-height: 0;
	background-color: #ddeef7;
}
.issues-Answer .quote_text::before,.product .quote_text::before {
	content: '';
	display: block;
	position: absolute;
	border-color: rgba(84,70,178,1);
	border-style: solid;
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-width: 0;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	width: 10px;
	height: 10px;
	border-top-width: 2px;
	border-right-width: 2px;
	-webkit-transition: 0.3s cubic-bezier(0.13, 0.78, 0.38, 0.98);
	transition: 0.3s cubic-bezier(0.13, 0.78, 0.38, 0.98);
	bottom: -7.5px;
	left: 0;
	right: 0;
	margin: 0 auto;
	line-height: 0;
	background-color: #FFF;
}
.quote_text .quote_text_txt {
	display: table-cell;
	vertical-align: middle;
}
/*----- スペース -----*/
.btm-space{
	margin-bottom:.8em;
}
