@charset "UTF-8";

header {
	width:100%;
  background-color: #fff;
  text-align: center;
  margin: 0;
}
header #hdr_sub{
	width:100%;
	height:30px;
	background:#f5f5f5;
	padding: 0 calc(50% - 550px);
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
header #hdr_sub h2{
	width:50%;
	padding: 8px 0 0;
	text-align: left;
	color:#555;
}
header #hdr_sub nav{
	width:50%;
}
header #hdr_sub nav ul{
	text-align: right;
	padding-top: 8px;
}
header #hdr_sub nav ul li{
	display: inline;
	font-size:1.2rem;
	margin-left: 20px;
}
header #hdr_sub nav ul li a,
header #hdr_sub nav ul li a:visited,
header #hdr_sub nav ul li a:hover{
	color:#555;
	text-decoration: underline;
}
header #hdr_main{
	width:100%;
	height:70px;
	background:#fff;
	padding:0 calc(50% - 550px);
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
header #hdr_main h1{
	width:15%;
	font-size:3.6rem;
	font-weight:700;
	padding:30px 0 0;
	text-align: left;
	color:#fc6760;
	position:relative;
}
header #hdr_main h1 a{
	width:100%;
	height:100%;position:absolute;
	top:0;
	left:0;
}
header #hdr_main nav{
	width:65%;
}
header #hdr_main nav ul{
	width:100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	padding-top: 30px;
}
header #hdr_main nav ul li {
  width: 20%;
  font-size: 1.4rem;
  position: relative;
}
header #hdr_main nav ul li:hover{
	cursor: pointer;
}
header #hdr_main nav ul li a{
	width:100%;
	height:100%;position:absolute;
	top:0;
	left:0;
}
header #hdr_main div.cv{
	width:20%;
}
header #hdr_main div.cv div.contact{
	width:80%;
	height:50px;
	background:#fc6760;
	position:relative;
	color:#fff;
	margin: 10px 0 10px 20%;
	border-radius: 25px;
	font-size:1.5rem;
	font-weight:700;
	padding-top:18px;
	text-align: center;
}
header #hdr_main div.cv div.contact:hover{
	background:#ffb23f;
	cursor: pointer;
}
header #hdr_main div.cv div.contact a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
/* -------------------------------------------------------------- */
section#mv{
	width:100%;
	height:540px;
	background: linear-gradient(to right, #ffb23f, #fc6760);
	padding: 0 calc(50% - 550px);
	overflow: hidden;
	position: relative;
}
section#mv figure{
	width:70%;
	height:auto;
	margin: 0 -160px 0 auto;
}
section#mv figure img{
	width:100%;
	height:auto;
}
section#mv h3{
	text-align: left;
	font-size:4.8rem;
	line-height: 1.5em;
	font-weight:700;
	color:#fff;
	position: absolute;
	top:120px;
	left:calc(50% - 550px);
}
section#mv p{
	text-align: left;
	font-size:1.8rem;
	font-weight:700;
	color:#fff;
	position: absolute;
	top:360px;
	left:calc(50% - 550px);
}
/* -------------------------------------------------------------- */
section#intro{
	width:100%;
	background:#f5f5f5;
	padding: 0 calc(50% - 550px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
section#intro div{
	width:60%;
	padding: 40px 0 20px;
}	
section#intro div h3{
	font-size:2.8rem;
	font-weight:700;
	margin: 0 0 40px;
	color:#fc6760;
}
section#intro div h3 + p{
	font-size:1.8rem;
	line-height: 1.5em;;
	margin-bottom: 40px;
}
section#intro div h4{
	font-size:1.4rem;
	font-weight:700;
	text-align: left;
	margin: 0;
	padding:5px 10px;
	background:#fc6760;
	color:#fff;
	display:inline;
}
section#intro div p{
	margin-top: 15px;;
	font-size:1.4rem;
	text-align: left;
	line-height: 1.5em;
}
section#intro div ul{
	list-style: none;
	padding: 0;
}
section#intro div ul li{
	font-size:1.4rem;
	margin-bottom: 20px;
}
section#intro figure{
	width:40%;
	height:auto;
	padding-top: 200px;
}
section#intro figure img{
	width:100%;
	height:auto;
}
section#intro h4.point{
	display: block;
	width:100%;
	text-align: center;
	font-size:2.4rem;
	font-weight:700;
	margin: 0;
	color:#fff;
	background:#fc6760;
	padding: 20px 20px;
	border-radius: 0px;
	line-height: 1.5em;
}
/* -------------------------------------------------------------- */
section#logic{
	width:100%;
	background:#fff;
	padding: 60px calc(50% - 550px);
	margin-bottom: 80px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
section#logic h3{
	width:100%;
	text-align: center;
	font-size:3.2rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#fc6760;
}
section#logic p{
	width:100%;
	text-align: center;
	font-size:1.6rem;
	margin-bottom: 40px;
	color:#555;
	line-height: 1.8em;
}
section#logic figure{
	width:100%;
	max-width: 800px;
	margin:0 auto 20px;
}
section#logic figure img{
	width:100%;
	height:auto;
}
section#logic div.btn{
	width:40%;
	height:60px;
	border:1px solid #ccc;
	border-radius: 30px;
	text-align: center;
	font-size:1.6rem;
	margin: 0 2%;
	padding: 22px 0 0;
	font-weight:700;
	position:relative;
	color:#555;
}
section#logic div.btn:hover{
	background:#fc6760;
	color:#fff;
	cursor: pointer;
}
/* -------------------------------------------------------------- */
section#reason{
	width:100%;
	padding: 0 calc(50% - 550px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 80px;
}
section#reason h3{
	width:100%;
	text-align: center;
	font-size:3.2rem;
	font-weight:700;
	margin-bottom: 60px;
	color:#fc6760;
}
section#reason article{
	width:32%;
	margin-bottom: 20px;
	position:relative;
	border:1px solid #ccc;
}
section#reason article p{
	width:30px;
	height:30px;
	top:0;
	left:0;
	padding: 8px 0 0;
	text-align: center;
	font-size:1.4rem;
	font-weight:700;
	background:#ffb23f;
	color:#fff;
	position:absolute
}
section#reason article h4{
	font-size:1.6rem;
	font-weight:700;
	margin: 20px 0 20px;
	color:#555;
	line-height: 1.5em;
	text-align: center;
	width:100%;
	line-height: 1.8em;
}
section#reason article h4 strong{
	font-weight:700;
	color:#fc6760;
}
/* -------------------------------------------------------------- */
section#blog{
	width:100%;
	padding: 60px calc(50% - 550px) 40px;
	margin-bottom: 0;
	background: #eee;
	display:flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
section#blog article{
	width:32%;
	margin: 0 2% 40px 0;
	border: 1px solid #eee;
	position: relative;
}
section#blog article:nth-child(3n){
	margin: 0;
}
section#blog article:hover{
	opacity: 0.8;
	cursor: pointer;
}
section#blog article a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	text-decoration: none;
}
section#blog article p.date{
	font-size:1.2rem;
	color:#999;
}
section#blog article h4{
	font-size:1.6rem;
	line-height: 1.5em;
	font-weight:700;
	margin: 0;
	color:#555;
	text-align: left;
	margin-bottom: 10px;
}
section#blog article figure{
	width:100%;
	height:auto;
	margin: 0 auto 20px;
}
section#blog article figure img{
	width:100%;
	height:auto;
}
/* -------------------------------------------------------------- */
section#news{
	width:100%;
	padding: 60px calc(50% - 550px) 40px;
	margin-bottom: 0;
	background: #eee;
}
section#news h3{
	width:100%;
	text-align: left;
	font-size:2.8rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#555;
}
section#news article{
	width:100%;
	margin: 0;
	background: #fff;
	border: 1px solid #eee;
	padding: 20px;
	position: relative;
}
section#news article:hover{
	opacity: 0.8;
	cursor: pointer;
}
section#news article a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	text-decoration: none;
}
section#news article p.date{
	font-size:1.2rem;
	color:#999;
	margin-bottom: 10px;
}
section#news article h4{
	font-size:1.6rem;
	font-weight:700;
	margin: 0;
	color:#555;
	text-align: left;
}
/* -------------------------------------------------------------- */
section#conversion{
	width:100%;
	background: linear-gradient(to right, #ffb23f, #fc6760);
	padding: 60px calc(50% - 550px) 40px;
	overflow: hidden;
	position: relative;
}
section#conversion h3{
	width:100%;
	text-align: center;
	font-size:2.8rem;
	font-weight:700;
	margin: 20px;
	color:#fff;
}
section#conversion p{
	width:100%;
	text-align: center;
	font-size:1.6rem;
	line-height: 1.8em;
	font-weight:700;
	margin: 20px;
	color:#fff;
}
section#conversion div.cv{
	width:40%;
	height:60px;
	border-radius: 30px;
	text-align: center;
	font-size:1.6rem;
	margin: 0 auto;
	padding: 22px 0 0;
	font-weight:700;
	position:relative;
	color:#fc6760;
	background: #fff;
}
section#conversion div.cv:hover{
	background:#fc6760;
	color:#fff;
	cursor: pointer;
}
section#conversion div.cv a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	text-decoration: none;
	}
/* -------------------------------------------------------------- */
footer nav{
	width:100%;
	padding: 60px calc(50% - 550px) 40px;
}
footer nav ul{
	padding-top: 8px;
	display: flex;
	flex-wrap: nowrap;
	justify-content:center;
	margin-bottom: 20px;
}
footer ul li{
	width:20%;
	text-align: left;
	font-size:1.2rem;
}
footer ul li a,
footer ul li a:visited,
footer ul li a:hover{
	color:#555;
	text-decoration: underline;
}
footer p.copyright{
	width:100%;
	text-align: center;
	font-size:1.2rem;
	background:#555;
	color:#ccc;
	padding: 5px 0;
}
footer p.copyright small{
	font-size:1.2rem;
}

/* --------------------------------------------------------------
下層共通
-------------------------------------------------------------- */
section#cts_mv{
	width:100%;
	height:240px;
	background: linear-gradient(to right, #ffb23f, #fc6760);
	padding: 80px calc(50% - 550px) 0;
	overflow: hidden;
	position: relative;
	margin-bottom: 80px;
}
section#cts_mv h1{
	text-align: center;
	font-size:3.6rem;
	line-height: 1.5em;
	font-weight:700;
	color:#fff;
	margin-bottom: 20px;
}
section#cts_mv h1 + p{
	text-align: center;
	font-size:1.4rem;
	line-height: 1.5em;
	font-weight:700;
	color:#fff;
}

/* --------------------------------------------------------------
ABOUT
-------------------------------------------------------------- */

#cts_about{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
}
#cts_about h3{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 20px;
	color:#fc6760;
}
#cts_about p{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	margin-bottom: 40px;
	color:#555;
	line-height: 1.8em;
}
#cts_about ul{
	width:100%;
	list-style: none;
	padding: 0;
}
#cts_about ul li{
	width:100%;
	font-size:1.4rem;
	margin-bottom: 20px;
	color:#555;
	line-height: 1.8em;
}
#cts_about ul li strong{
	font-weight:700;
	color:#fc6760;
}

/* --------------------------------------------------------------
機能
-------------------------------------------------------------- */

#cts_feature{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cts_feature div{
	width:100%;
	margin-bottom: 60px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cts_feature h3{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 20px;
	color:#fc6760;
}
#cts_feature h3.wide_title{
	width:100%;
	margin: 0 calc(-50% + 550px) 20px;
	text-align: center;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 40px;
	background:#fc6760;
	color:#fff;
	padding: 20px 0;
}
#cts_feature p{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	color:#555;
	line-height: 1.8em;
}
#cts_feature article{
	width:48%;
	margin-bottom: 20px;
	padding: 20px;
	background:#fff;
	border:1px solid #ccc;
}
#cts_feature h4{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 10px;
	color:#fc6760;
	line-height: 1.5em;
}
#cts_feature h4 + p{
	margin-bottom: 20px;
}
#cts_feature h5{
	width:100%;
	text-align: left;
	font-size:1.8rem;
	font-weight:700;
	margin-bottom: 10px;
	color:#fc6760;
	line-height: 1.5em;
}
/* --------------------------------------------------------------
課題
-------------------------------------------------------------- */

#cts_issue{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cts_issue h3{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#fc6760;
}
#cts_issue article{
	width:32%;
	margin-bottom: 20px;
	padding: 20px;
	background:#fff;
	border:1px solid #ccc;
}
#cts_issue article:nth-child(3){
	width: 100%;
}
#cts_issue h4{
	width:100%;
	text-align: left;
	font-size:1.8rem;
	font-weight:700;
	margin-bottom: 10px;
	color:#fc6760;
	line-height: 1.6em;
}
#cts_issue h4 strong{
	font-size:1.2em;
}
#cts_issue p{
	width:100%;
	text-align:justify;
	font-size:1.6rem;
	color:#555;
	line-height: 1.8em;
}
#cts_issue p strong{
	font-weight:700;
	color:#fc6760;
}
#cts_issue figure{
	width:40%;
	height:auto;
	margin: 0 auto 10px;
}
#cts_issue article:nth-child(3) figure{
	width:14%;
}
#cts_issue figure img{
	width:100%;
	height:auto;
}
/* --------------------------------------------------------------
料金
-------------------------------------------------------------- */

#cts_price{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
}
#cts_price h3{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 20px;
	color:#fc6760;
}
#cts_price p{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	margin-bottom: 40px;
	color:#555;
	line-height: 1.8em;
}
#cts_price table{
	width:100%;
	border-collapse: collapse;
	margin-bottom: 40px;
}
#cts_price table th,
#cts_price table td{
	width:20%;
	padding: 20px 10px;
	font-size:1.6rem;
	line-height: 1.5em;
	color:#555;
	border: 1px solid #ccc;
}
#cts_price table th{
	text-align: center;
	color:#fff;
	font-weight:700;
}
#cts_price table th:nth-child(2){
	background:#FFB23F;
}
#cts_price table th:nth-child(3){
	background:#FD8C50;
}
#cts_price table th:nth-child(4){
	background:#fc7a58;
}
#cts_price table th:nth-child(5){
	background:#fc6760;
}
#cts_price table td{
	text-align: center;
	background:#fff;
	line-height: 1.5em;
}
#cts_price table td strong{
	font-weight:700;
	color:#fc6760;
}
#cts_price table td.md{
	background:#f5f5f5;
	padding: 10px;
	font-weight:700;
}
#cts_price table tr td:nth-child(1){
	text-align: center;
}
#cts_price .note p{
	width:100%;
	font-size:1.2rem;
	color:#999;
	line-height: 1.5em;
}

/* --------------------------------------------------------------
FAQ
-------------------------------------------------------------- */

#cts_faq{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
}
#cts_faq h3{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#fc6760;
}
#cts_faq dl{
	width:100%;
	margin: 0 0 60px;
}
#cts_faq dl dt{
	width:100%;
	font-size:1.6rem;
	font-weight:700;
	margin: 20px 0 10px;
	color:#555;
}
#cts_faq dl dd{
	width:100%;
	font-size:1.4rem;
	margin-bottom: 20px;
	color:#555;
	line-height: 1.8em;
}
/* --------------------------------------------------------------
お知らせ
-------------------------------------------------------------- */

#cts_news_single{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
}
#cts_news_single h2{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#fc6760;
}
#cts_news_single p.date{
	width:100%;
	text-align: left;
	font-size:1.2rem;
	margin-bottom: 20px;
	color:#999;
	line-height: 1.8em;
}
#cts_news_single p{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	margin-bottom: 40px;
	color:#555;
	line-height: 1.8em;
}
/* --------------------------------------------------------------
ブログ
-------------------------------------------------------------- */

#cts_blog_single{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#cts_blog_single figure{
	width:28%;
	height:auto;
	margin:0;
}
#cts_blog_single figure img{
	width:100%;
	height:auto;
}
#cts_blog_single article{
	width:68%;
}
#cts_blog_single h2{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#fc6760;
}
#cts_blog_single p.date{
	width:100%;
	text-align: left;
	font-size:1.2rem;
	margin-bottom: 20px;
	color:#999;
	line-height: 1.8em;
}
#cts_blog_single p{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	margin-bottom: 40px;
	color:#555;
	line-height: 1.8em;
}
/* --------------------------------------------------------------
お問い合わせ
-------------------------------------------------------------- */

#cts_contact{
	width:80%;
	padding: 0 calc(50% - 550px);
	margin:0 auto 80px;
}
#cts_contact p{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	margin-bottom: 10px;
	color:#555;
	line-height: 1.8em;
}
#cts_contact input{
	width:100%;
	padding: 20px;
	font-size:1.8rem;
	border:1px solid #ccc;
	border-radius: 5px;
	margin-bottom: 20px;
}
#cts_contact select{
	width:100%;
	padding: 20px;
	font-size:1.8rem;
	border:1px solid #ccc;
	border-radius: 5px;
	margin-bottom: 20px;
}
#cts_contact textarea{
	width:100%;
	padding: 20px;
	font-size:1.8rem;
	border:1px solid #ccc;
	border-radius: 5px;
	margin-bottom: 20px;
}
#cts_contact dt p{
	width:100%;
	font-size:1.6rem;
	font-weight:700;
	color:#fc6760;
	line-height: 1.8em;
	margin-top: 20px;
}
#cts_contact input[type="checkbox"]{
	width:20px;
	height:20px;
	margin-right: 10px;
}
#cts_contact input[type="submit"]{
	width:100%;
	background:#fc6760;
	color:#fff;
	font-size:1.8rem;
	border:none;
	cursor: pointer;
	font-weight:700;
	margin-top: 20px;
	padding: 30px;
}
#cts_contact .wpcf7-not-valid-tip{
	background: #c00;
	color:#fff;
	font-size:1.2rem;
	padding: 10px;
	border-radius: 5px;
}
#cts_contact .screen-reader-response{
	width:100%;
	margin: 0 auto 40px;
	background: #fff;
	color:#555;
	font-size:1.2rem;
	padding: 20px;
}
#cts_contact .screen-reader-response p{
	color:#c00;
	font-weight:700;
	margin: 0;
}
#cts_contact .screen-reader-response ul,
#cts_contact .wpcf7-response-output{
	display: none;
}
#cts_contact .note{
	width:100%;
	font-size:1.2rem;
	color:#999;
	line-height: 1.5em;
	margin-top: 20px;
}
#contact section#cts_mv{
	margin-bottom: 0;
}

/* --------------------------------------------------------------
運営会社情報
-------------------------------------------------------------- */

#cts_company{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
}
#cts_company h3{
	width:100%;
	text-align: left;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom: 40px;
	color:#fc6760;
}
#cts_company dl{
	width:100%;
	margin: 0 0 60px;
}
#cts_company dl dt{
	width:100%;
	font-size:1.6rem;
	font-weight:700;
	margin: 20px 0 10px;
	color:#555;
}
#cts_company dl dd{
	width:100%;
	font-size:1.6rem;
	margin-bottom: 20px;
	color:#555;
	line-height: 1.8em;
}
#cts_company figure{
	width:100%;
	height:auto;
	margin: 0 auto 20px;
}
#cts_company figure video{
	width:100%;
	height:auto;
}
/* --------------------------------------------------------------
プライバシーポリシー
-------------------------------------------------------------- */

#cts_privacy{
	width:100%;
	padding: 0 calc(50% - 550px);
	margin-bottom: 80px;
}
#cts_privacy p{
	width:100%;
	text-align:justify;
	font-size:1.4rem;
	color:#555;
	line-height: 1.5em;
}
#cts_privacy dt{
	width:100%;
	text-align: left;
	font-size:1.6rem;
	font-weight:700;
	margin-bottom: 10px;
	color:#fc6760;
	line-height: 1.5em;
}
#cts_privacy dd{
	width:100%;
	text-align:justify;
	font-size:1.4rem;
	color:#555;
	line-height: 1.5em;
}

/* 
スマホ用ハンバーガーメニュー
=================================== */
#nav-wrapper{
	display: none;
}

/* --------------------------------------------------------------
--------------------------------------------------------------
▼スマホ
--------------------------------------------------------------
-------------------------------------------------------------- */
.sp{
	display: none;
}
.pc{
	display: block;
}

@media screen and (max-width: 767px) {
	.sp{
	display: block;
}
.pc{
	display: none;
}
#nav-wrapper{
	display: block;
}
header {
}
header #hdr_sub{
	display: none;
}
header #hdr_sub nav{
	display: none;
}
header #hdr_main{
	width:100%;
	height:50px;
	background:#fff;
	padding:0 20px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	position: fixed;
	z-index: 100;
	top:0;
	left:0;
}
header #hdr_main h1{
	width:100%;
	font-size:2.4rem;
	padding:18px 0 0;
}
header #hdr_main h1 a{
	width:100%;
	height:100%;position:absolute;
	top:0;
	left:0;
}
header #hdr_main nav{
	display: none;
}
header #hdr_main div.cv{
	width:100%;
}
header #hdr_main div.cv div.contact{
	width:140px;
	height:30px;
	margin: 0;
	border-radius: 10px;
	font-size:1.4rem;
	padding-top:9px;
	text-align: center;
	position:absolute;
	top:10px;
	right:60px;
}
header #hdr_main div.cv div.contact:hover{
	background:#ffb23f;
	cursor: pointer;
}
header #hdr_main div.cv div.contact a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

/* -------------------------------------------------------------- */
section#mv{
	height:80vh;
	margin-top: 50px;
	padding: 0 40px;
}
section#mv figure{
	width:110%;
	height:auto;
	margin: 0;
	position: absolute;
	bottom:-140px;
	right:-100px;
}
section#mv figure img{
	width:100%;
	height:auto;
}
section#mv h3{
	text-align: left;
	font-size:3.6rem;
	top:30px;
	left:30px;
	line-height: 1.4em;
}
section#mv p{
	font-size:1.4rem;
	line-height: 1.5em;
	top:250px;
	left:30px;
	width:calc(100% - 60px);
}
/* -------------------------------------------------------------- */
section#intro{
	padding: 60px 20px 0;
	flex-wrap: wrap;
}
section#intro div{
	width:100%;
	padding: 0;
}	
section#intro div h3{
	font-size:2.4rem;
	margin: 0 0 40px;
	text-align: center;
}
section#intro div h4{
	font-size:1.4rem;
	font-weight:700;
	text-align: left;
	margin: 0;
	padding:6px 10px 5px;
	display:block;
}
section#intro div p{
	margin-top: 15px;;
	font-size:1.4rem;
	text-align: left;
}
section#intro div ul{
}
section#intro div ul li{
	font-size:1.4rem;
	line-height: 1.5em;
	margin-bottom: 20px;
}
section#intro figure{
	width:80%;
	height:auto;
	padding-top: 20px;
	margin: 0 auto;
}
section#intro figure img{
	width:100%;
	height:auto;
}

/* -------------------------------------------------------------- */
section#logic{
	padding: 60px 20px;
	margin-bottom: 80px;
}
section#logic h3{
	width:100%;
	font-size:2.4rem;
	margin-bottom: 40px;
	line-height: 1.5em;;
}
section#logic p{
	font-size:1.4rem;
}
/* -------------------------------------------------------------- */
section#reason{
	padding: 0 20px;
	margin-bottom: 80px;
}
section#reason h3{
	font-size:2.4rem;
	margin-bottom: 60px;
}
section#reason article{
	width:48%;
	margin-bottom: 20px;
	padding:10px
}
section#reason article p{
	width:30px;
	height:30px;
	top:0;
	left:0;
	padding: 8px 0 0;
	font-size:1.2rem;
}
section#reason article h4{
	font-size:1.4rem;
	margin: 30px 0 10px;
	line-height: 1.5em;
}
section#reason article h4 strong{
}
/* -------------------------------------------------------------- */
section#blog{
	width:100%;
	padding: 60px 20px 20px;
}
section#blog article{
	width:100%;
	margin-right: 0;
}
section#blog article h4{
	font-size:1.4rem;
}
/* -------------------------------------------------------------- */
section#news{
	width:100%;
	padding: 60px 20px 20px;
}
section#news h3{
	width:100%;
	text-align: center;
	font-size:1.8rem;
}
section#news article{
	padding: 20px;
}
section#news article h4{
	font-size:1.4rem;
}
/* -------------------------------------------------------------- */
section#conversion{
	padding: 40px 20px;
}
section#conversion h3{
	font-size:1.8rem;
	margin-left: 0;
	margin-right:0;
}
section#conversion p{
	font-size:1.2rem;
	line-height: 1.5em;
	margin-left: 0;
	margin-right:0;
}
section#conversion div.cv{
	width:80%;
	height:60px;
	border-radius: 30px;
	font-size:1.6rem;
	padding: 22px 0 0;
}
section#conversion div.cv:hover{
	background:#fc6760;
	color:#fff;
	cursor: pointer;
}
/* -------------------------------------------------------------- */
footer nav{
	display: none;
}
/* --------------------------------------------------------------
下層共通
-------------------------------------------------------------- */
section#cts_mv{
	width:100%;
	height:auto;
	padding: 80px 20px 0;
	margin-bottom: 40px;
}
section#cts_mv h1{
	font-size:2.4rem;
	margin-bottom: 10px;
}
section#cts_mv h1 + p{
	font-size:1.2rem;
	margin-bottom: 40px;
}
/* --------------------------------------------------------------
ABOUT
-------------------------------------------------------------- */

#cts_about{
	padding: 0 20px;
	margin-bottom: 80px;
}
#cts_about h3{
	font-size:2.4rem;
	line-height: 1.5em;
	margin-bottom: 20px;
}
#cts_about p{
	font-size:1.4rem;
	margin-bottom: 40px;
}
#cts_about ul{
}
#cts_about ul li{
	font-size:1.4rem;
	margin-bottom: 20px;
}

/* --------------------------------------------------------------
機能
-------------------------------------------------------------- */

#cts_feature{
	padding: 0 20px;
	margin-bottom: 80px;
	justify-content: space-between;
}
#cts_feature h3{
	font-size:2.4rem;
	line-height: 1.5em;
	margin-bottom: 20px;
}
#cts_feature h3.wide_title{
	font-size:2.4rem;
	line-height: 1.5em;
	margin-bottom: 20px;
	margin: 0 0 40px;
}
#cts_feature p{
	font-size:1.4rem;
	line-height: 1.8em;
}
#cts_feature article{
	width:100%;
	margin-bottom: 20px;
	padding: 20px;
}
#cts_feature h4{
	font-size:2.4rem;
	margin-bottom: 10px;
}
#cts_feature h5{
	font-size:1.8rem;
	margin-bottom: 10px;
}
/* --------------------------------------------------------------
課題
-------------------------------------------------------------- */

#cts_issue{
	padding: 0 20px;
	margin-bottom: 80px;
}
#cts_issue h3{
	font-size:1.8rem;
	margin-bottom: 40px;
}
#cts_issue article{
	width:100%;
	margin-bottom: 20px;
	padding: 20px;
}
#cts_issue h4{
	font-size:1.8rem;
	margin-bottom: 10px;
}
#cts_issue p{
	font-size:1.4rem;
	line-height: 1.8em;
}
#cts_issue p strong{
}
#cts_issue figure{
	width:40%;
}
#cts_issue article:nth-child(3) figure{
	width:40%;
}

/* --------------------------------------------------------------
料金
-------------------------------------------------------------- */

#cts_price{
	padding: 0 20px;
	margin-bottom: 80px;
}
#cts_price h3{
	font-size:1.8rem;
	margin-bottom: 20px;
	line-height:1.5em;
}
#cts_price p{
	font-size:1.4rem;
	margin-bottom: 20px;
}
#cts_price table{
	width:100%;
	border-collapse: collapse;
	margin-bottom: 40px;
}
#cts_price table th,
#cts_price table td{
	padding: 20px 5px;
	font-size:1.4rem;
	line-height: 1.5em;;
}
#cts_price table th{
	font-size:1.2rem;
	font-weight:700;
}
#cts_price table td{
	text-align: center;
	background:#fff;
}
#cts_price table td strong{
	font-weight:700;
	color:#fc6760;
}
#cts_price table td.md{
	background:#f5f5f5;
	padding: 10px;
	font-weight:700;
}
#cts_price table tr td:nth-child(1){
	text-align: center;
}
#cts_price .note p{
	width:100%;
	font-size:1.2rem;
	color:#999;
	line-height: 1.5em;
}
/* --------------------------------------------------------------
FAQ
-------------------------------------------------------------- */

#cts_faq{
	padding: 0 20px;
	margin-bottom: 80px;
}
#cts_faq h3{
	font-size:1.8rem;
	margin-bottom: 20px;
}
#cts_faq dl{
	margin: 0 0 60px;
}
#cts_faq dl dt{
	font-size:1.4rem;
	margin: 20px 0 10px;
}
#cts_faq dl dd{
	font-size:1.2rem;
	margin-bottom: 20px;
	line-height: 1.8em;
}
/* --------------------------------------------------------------
お知らせ
-------------------------------------------------------------- */

#cts_news_single{
	padding: 0 20px;
	margin-bottom: 80px;
}
#cts_news_single h2{
	font-size:1.8rem;
	margin-bottom: 20px;
}
#cts_news_single p.date{
	font-size:1.0rem;
	margin-bottom: 20px;
}
#cts_news_single p{
	font-size:1.4rem;
	margin-bottom: 40px;
}
/* --------------------------------------------------------------
ブログ
-------------------------------------------------------------- */

#cts_blog_single{
	padding: 0 20px;
	margin-bottom: 80px;
}
#cts_blog_single h2{
	font-size:1.8rem;
	line-height: 1.5em;
	margin-bottom: 20px;
}
#cts_blog_single p.date{
	font-size:1.0rem;
	margin-bottom: 20px;
}
#cts_blog_single p{
	font-size:1.4rem;
	margin-bottom: 40px;
}
#cts_blog_single figure{
	width:100%;
	margin-bottom: 40px;;
}
#cts_blog_single figure img{
	width:100%;
	height:auto
}
#cts_blog_single article{
	width:100%;
}

/* --------------------------------------------------------------
運営会社情報
-------------------------------------------------------------- */

#cts_company{
	padding: 0 20px;
	margin-bottom: 80px;
}

/* 
hamburger(ハンバーガーアイコン)
=================================== */
.hamburger {
  position: fixed;
  right: 10px;
  top: 15px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  z-index: 300;
}

.hamburger__line {
  position: absolute;
  width: 30px;
  height: 3px;
  right: 0;
  background-color: #000;
  transition: all 0.5s;
}

.hamburger__line--1 {
  top: 1px;
}

.hamburger__line--2 {
  top: 10px;
}

.hamburger__line--3 {
  top: 20px;
}

/*ハンバーガーがクリックされたら*/
.open .hamburger__line--1 {
  transform: rotate(-45deg);
  top: 11px;
}

.open .hamburger__line--2 {
  opacity: 0;
}

.open .hamburger__line--3 {
  transform: rotate(45deg);
  top: 11px;
}

/* 
sp-nav(ナビ)
=================================== */
.sp-nav {
  position: fixed;
  top: -100vh; /*ハンバーガーがクリックされる前はWindow上部に隠す*/
  left: 0;
  width: 100%; /* 出てくるスライドメニューの幅 */
  height: 100vh;
  background-color: #fff;
  transition: all 0.5s;
  z-index: 200;
  overflow-y: auto;
}

/*ハンバーガーがクリックされたら上からスライド*/
.open .sp-nav {
  top: 0;
}


/* 
black-bg(ハンバーガーメニュー解除用bg)
=================================== */
.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 5;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
  cursor: pointer;
  z-index: 100;
}

/*ハンバーガーメニューが開いたら表示*/
.open .black-bg {
  opacity: 0.3;
  visibility: visible;
}
.sp-nav ul{
	margin-top: 60px;
}
.sp-nav li{
	width:100%;
	position:relative;
padding: 15px 20px;
text-align: center;
font-size:1.6rem;
line-height: 1.5em;
color:#555;
border-bottom:1px dotted #ccc;
}
.sp-nav li.sub{
	background:#f5f5f5;
padding: 10px 20px;
}
.sp-nav li a{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
}