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

html, body {
	margin     : 0;
	padding    : 0;
	line-height: 1;
}

/* IEだけに適応 */
_:lang(x)::-ms-backdrop, .selector {
	font-family: "Segoe UI", Meiryo, sans-serif;
}

div, span, h1, h2, h3, h4, h5, h6, p, a, img, strong, ul, li {
	margin    : 0;
	padding   : 0;
	border    : 0;
	outline   : 0;
	font-size : 1em;

}


header {
	display: block;
}

ol, ul {
	list-style: none;
	margin:0;
	padding:0;
}

img {
	border: 0;
	vertical-align: bottom;
	padding:0;
	height:auto;
	display: block;
	margin: 0 auto;
	width:100%;
}

@font-face {
  font-family: "YuGothic M";
  src: local("Yu Gothic Medium");
}

p {
  font-family: "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
}


.txt_ct{text-align:center;}
.txt_rt{text-align:right;}
.sp_txtblock{display:inline-block;}

table{border-collapse: collapse;}

/*------------------------
body
------------------------*/
body {
	background    : #fff;
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	line-height   : 1.4;
	-webkit-text-size-adjust: none;
}

div#container {
    width: 100% !important;
    margin:0 auto !important;
    text-align: center;
}

/*------------------------
fv
------------------------*/
.fv {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    position: relative;
    max-width: 1900px;
}


.fv_bg {
    background: url(../img/nlp/01_03.jpg) 50%;
    background-size: contain;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 0 4.2em 0;
    position: relative;
    max-width: 1900px;
    top: 5em;
}

.fv img {
    width: 100%;
    position: relative;
    top: 0;
	margin:0 0 1em 0
}

.fv_bt01 {
    margin: 0 auto;
    text-align: center;
    position: absolute;
    bottom: 5.5em;
}

.fv_bt01 a {
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    background-image: linear-gradient(to bottom, #1ba110, #18830f);
    padding: 0 1.6em;
    border-radius: 6px;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
    width: 100%;
}
.fv_bt01 a::before {
  content: "";
  width: 90%;
  height: 10px;
  position: absolute;
  top: 100%;
  left: 5%;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  z-index: -1;
  opacity: 0;
  transition: .3s;
}
.fv_bt01 a:hover {
}
.fv_bt01 a:hover::before {
  opacity: 1;
}

.bg_arrow {
    height: 50px;
    text-align: center;
    line-height: 50px;
}
.bg_arrow div{
    color: #FFF;
    position: relative;
    padding-right: 30px;
}
.bg_arrow div::before {
    position: absolute;
    content: '';
    top: 30%;
    right: 1%;
    width: 28px;
    height: 28px;
    background: #fff;
    border-radius: 50%;
    transform: rotate( 45deg);
}
.bg_arrow div::after {
    position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    border-top: solid 2px #00b050;
    border-right: solid 2px #00b050;
    -webkit-transform: rotate( 45deg);
    transform: rotate( 45deg);
    top: 46%;
    right: 16px;
    margin-top: -1px;
}

.cl_arrow {
  display: block;
  width: 300px;
  height: 50px;
  text-align: center;
  line-height: 50px;
  background: #000;
  font-weight: bold;
  text-decoration: none;
  border-radius: 5px;
}
.cl_arrow div {
    color: #FFF;
    position: relative;
    padding-right: 30px;
}
.cl_arrow div::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 7%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    margin-top: -5px;
}

.cl_arrow2 {
  display: block;
  width: 300px;
  height: 50px;
  text-align: center;
  line-height: 50px;
  background: #000;
  font-weight: bold;
  text-decoration: none;
  border-radius: 5px;
}
.cl_arrow2 div {
    color: #fff;
    position: relative;
    padding-right: 30px;
}
.cl_arrow2 div::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 7%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate( 45deg);
    margin-top: -5px;
}


/*------------------------
common
------------------------*/
.fv_inner {
    max-width: 1210px;
    margin: 0 auto;
    text-align: center;
    width: 80%;
}
.ct_inner{width:860px;margin:0 auto;text-align: center;}
.center{text-align:center;}
.bg_gray1 {
    background: #f6f6f6;
    margin: 2em auto;
    padding: 3em 0;
    max-width: 1900px;
}
.bg_gray2 {
    background: #f6f6f6;
    margin: 2em auto;
    max-width: 1900px;
}

.mt1{margin-top:1em !important;}
.mt2{margin-top:2em !important;}
.mt3{margin-top:3em !important;}

.mb1{margin-bottom:1em !important;}
.mb2{margin-bottom:2em !important;}
.mb3{margin-bottom:3em !important;}

.pink_line {background:linear-gradient(transparent 60%, #ffdfef 0%) ;}
.yel_line {background:linear-gradient(transparent 60%, #fff000 0%) ;}
.ft_big {font-size: 1.2em;}

/*------------------------
タイトル付きボックス
------------------------*/
.ttl_box {
    border: 5px solid #0094D6;
    border-radius: 0;
    position: relative;
    margin-top: 5em;
    padding: 0 0 3em 0;
}
.ttl_box h3 {
    text-align: center;
    position: absolute;
    right: 0;
    left: 0;
    top: -1em;
}
.ttl_box h4 {
    font-size: 2.5em !important;
    margin: 1.5em 0 0 0 !important;
    letter-spacing: 0.001em;
}
.ttl_box span{
  padding: 0 .5em;
  background: #FFF;
  color: #0094D6;
}
.ttl_box .inner {
    padding: 5em .5em .5em;
    line-height: 1.8em;
	font-size: 1.2em;
    color: #333;
}

/* ------------------------
header
------------------------ */
#top-head {
    position: absolute;
    width: 100%;
    margin:0;
    padding: 0;
    line-height: 1;
    z-index: 999;
    background: rgba(255,255,255,0.9);
}
#top-head a, #top-head {
    color: #333;
    text-decoration: none;
    z-index: 10000;
    height: 0;
    box-shadow: 0 32px 30px -30px rgba(53, 47, 47, 0.15);
}
#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
    font-size: 36px;
}

 
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 0;
    height: 40px;
    background: rgba(255,255,255,0.9);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
    color: #fff;
}
#top-head.fixed .logo {
    font-size: 24px;
    color: #333;
}

.f_box {
       display: flex;
    background: #fff;
    height: auto;
    box-shadow: 0px 5px 5px -5px rgb(0 0 0 / 10%);
    padding: 0;
    max-width: 1900px;
    margin: 0 auto;
}
.f_item:first-child {
    padding: 0.5em 0.3em 0.5em 1em;
}
.f_item_img1 {
    width: 120px;
    position: relative;
    top: 10px;
}
.f_item_img2 {width: 200px;padding: 0;}
.f_item_img3 {
    width: 300px;
    padding: 1em 0 0 0;
}

.f_item:last-child{
    margin-left: auto;
	margin-right:1em;
}
.f_item ul {
    display: table;
    position: relative;
    top: 40%;
}
.f_item ul li{display:table-cell;}
.f_item ul li a {
    color: #1b96d5 !important;
    line-height: 1.6em;
    font-size: 1em;
	font-weight: bold;
    padding: 0 0.5em;
    letter-spacing: 0.001em;
}
.f_item ul li a::after{
    content: "";
    position: absolute;
    top: 25%;
    width: 5px;
    height: 5px;
    border-top: 1px solid #1b96d5;
    border-right: 1px solid #1b96d5;
    transform: rotate( 135deg);
}

.f_item ul li a:hover,#top-head.fixed .f_item ul li a:hover{opacity: 0.7;}

.f_item dl{display:table;}
.f_item dl dt{display:table-cell;}
.f_item dl dd{display:table-cell;margin:0 0 1em 0;}

#top-head.fixed .f_item ul li a {
	color: #333;
    font-weight: bold;
    line-height: 1.6em;
    font-size: 1em;
    padding: 0 0.5em;
    letter-spacing: 0.001em;
}
#top-head.fixed .f_item dl,#top-head.f_item dl{display: table;}
#top-head.fixed .f_item dl dt,#top-head.f_item dl dt{display:table-cell;}
#top-head.fixed .f_item dl dd,#top-head.f_item dl dd{display:table-cell;}
#top-head #global-nav ul li a span{display:block;}	

/*導入事例*/
.case {
    background: #f6f7f9;
    position: relative;
    padding: 3em 0 6em 0;
    max-width: 1900px;
    margin: 0 auto;
}

.kigyou_ps{position: relative;top: -40px;}
.shadow_box2 {
    background: #fff;
    padding: 1em;
    text-align: left;
    /*box-shadow: 2px 2px 6px 1px #ccc, 2px 2px 6px rgb(255 255 255 / 40%) inset;*/
}

.casebox {
    width:100%;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    margin: 0 auto;
}
.casebox ul{ display: flex;justify-content: space-between;}
.casebox ul li{}
.casebox img {padding:1em 0 0 0;}
.casebox ul li h3{font-size:1em;line-height: 1.3em;}
.casebox ul li h3 span {
    font-size: 0.85em;
    display: block;
    border-bottom: 2px solid #333;
	 width: 100px;
    margin: 0 auto 0.5em auto;
}
.casebox ul li .more_bt {
    background: #222222;
    border-radius: 60px;
    padding: 0.2em;
    color: #fff;
    width: 150px;
    margin: 1em auto;
}
.casebox ul li a{text-decoration: none;display:block;}
.casebox ul li a:hover{background:#daecf6;opacity:0.8;}
.casebox ul li dl{margin:1em;}
.casebox ul li dl dd{ padding:0 0 1em 0;margin:0 auto;}
/*------------------------
機能一覧
------------------------*/
.function {
    background: #e8f4fb;
    margin: 5em auto 2em auto;
    padding: 4em 0 0 0;
	max-width: 1900px;
}

.shadow_box {
    background: #fff;
    padding: 1em;
    text-align: left;
    box-shadow: 3px 3px 6px -2px #555, 3px 3px 8px rgb(255 255 255 / 80%) inset;
}

.shadow_box h3 {
    font-size: 1.8em !important;
    margin: 1em 0!important;
    letter-spacing: 0.001em;
    text-align: center!important;
}

/*point*/
.point{}
.point img{max-width:1900px;margin:0 auto;}

/*定期*/
.regular{}
.regular dl{justify-content: center;
    align-items: center;
    display: flex;
}
.regular dl dt{width: 45%}
.regular dl dd{text-align: left;}


/*------------------------
機能紹介
------------------------*/
.introduction {
    background: url(../img/nlp/introduction_bg.png);
    background-size: cover;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 2em 0;
    background-repeat: no-repeat;
    max-width: 1900px;
}

/*外部連携スライド*/
.slide_wrap{margin:3em auto;}
.ps_slide{
	text-align: right;
    position: relative;
    right: 0;
    top: -40px;
    color: #333;
}

/*------------------------
料金一覧
------------------------*/
.bd_line {
    border-top: 1px solid #ccc;
    padding: 3em 0;
}

.plan1 {
    background: url(../img/nlp/plan_bg1.png) 50%;
    background-size: cover;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 3em 0;
    position: relative;
    max-width: 1900px;
}

.plan2{ 
	background: url(../img/nlp/plan_bg2.png) 50%;
    background-size: cover;
    width: 100%;
    height: auto;
	margin:0 auto;
    padding: 3em 0;
	max-width: 1900px;
}

.plan2 .planbox {
    width: 100%;
    margin: 3em auto;
}
.plan2 .planbox ul{display: flex;justify-content: space-between;
	flex-wrap: wrap;}
.plan2 .planbox ul li {
    width: 47.5%;
    margin-right: 1em;
    margin-bottom: 2em;
}

.plan2 .planbox ul li:nth-child(2n){margin-right:0;}
.plan2 .plan01{
	border:3px solid #e13177; background: #fff;
    padding: 0 0.5em;
    margin: 0 auto;
    text-align: center;}
.plan2 .plan02{
	border:3px solid #009ed6; background: #fff;
    padding: 0 0.5em;
    margin: 0 auto;
    text-align: center;}
.plan2 .plan03{
	border:3px solid #10bfc5; background: #fff;
    padding: 0 0.5em;
    margin: 0 auto;
    text-align: center;}
.plan2 .plan04 {
    border: 3px solid #c495f0;
    background: #fff;
    padding: 0 0.5em;
    margin: 0 auto;
    text-align: center;
}
.planbox .memo {
    text-align: center;
    font-size: 1.2em;
    color: #333;
    font-weight: bold;
    margin: 2em 0 0 0;
}
.memo_box {
    background: url(../img/nlp/memo_bg.png) 50%;
    background-size: cover;
    height: auto;
    margin: 0 auto 2em auto;
    width: 84%;
    border: 3px solid #ccc;
    padding: 1em;
    letter-spacing: 0.001em;
}
.memo_box h3{font-size:1.4em !important;}
.memo_box p {
    text-align: left;
    line-height: 1.6em;
    color: #333;
    height: 120px;
    font-size: 1em;
}

.memo_btm {
    border-top: 2px solid #ccc;
    padding: 1em 0;
    margin: 1em 0 0 0;
    font-size: 0.85em;
}
.memo_btm dl {
    display: flex;
    margin: 0 0 0.8em 0;
}
.memo_btm dl dt {
    background: #1b96d5;
    color: #fff;
    width: 100px;
    height: 25px;
    line-height: 25px;
}
.memo_btm dl dd {
    color: #333;
    height: 25px;
    line-height: 25px;
    margin: 0 0 0 1em;
	font-size: 1rem;
}

.memo_bd01{border: 3px solid #e13177;}
.memo_bd02{border: 3px solid #009ed6;}
.memo_bd03{border: 3px solid #10bfc5;}
.memo_bd04{border: 3px solid #c495f0;}

/*------------------------
table
------------------------*/

.tb_box {
    width: 860px;
    padding: 3em 0;
    position: relative;
}

.ps_label {
    position: absolute;
    left: -50px;
    z-index: 9999;
    width: 45px;
    top: -50px;
}

.t-line {
  border-collapse: collapse;
  width: 100%;
  padding: 0;
  text-align: center;		
  table-layout: fixed;
}

.t-line thead tr{
  /*background-color: #167F92;*/
  color:#fff;
}
.t-line tbody th {
    background: #78bbc7;
    color: #fff;
}
.t-line .txt{
   text-align: left;
   font-size: .85em;
}
.t-line price{
  text-align: right;
  color: #167F92;
  font-weight: bold;
}
.t-line .non {
    background: none !important;
}


.t-line th, .t-line td {
    padding:0;
    text-align: center;
    letter-spacing: 0;
	border:none;
	height: 60px;
}

.t-line td table {
width:100%;
}
.t-line td table td {
padding:0 !important;
}

.t-line span{font-size:0.5em;}
.t-line tr:nth-child(odd) th {  
  background-color: #1b96d5;  
  color:#fff;	
}
.t-line tr:nth-child(even) th {  
  background-color: #4eb9f0; 
  color:#fff;	
}  

.t-line tr:nth-child(odd) td {  
  background-color: #f8f8f8;  
}
.t-line tr:nth-child(even) td {  
  background-color: #fff;  
} 

/*------------------------
plan table装飾
------------------------*/
/*背景色*/
/*黄色*/.yl {
    background: #fff8b0 !important;
    color: #fff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    height: 70px;
    line-height: 50px;
    border-top: solid 2px #ffea00;
    border-right: solid 2px #ffea00;
    border-left: solid 2px #ffea00;
    width: 97%;
}
/*灰色*/.gy{background:#cccccc !important;color:#fff;border-top-left-radius: 10px;border-top-right-radius: 10px;height: 50px;line-height: 50px;}
/*赤*/.pk{background:#e13177 !important;color:#fff;border-top-left-radius: 10px;border-top-right-radius: 10px;}
/*青*/.aq{background:#009ed6 !important;color:#fff;border-top-left-radius: 10px;border-top-right-radius: 10px;height: 50px;line-height: 50px;}
/*緑*/.gr{background:#10bfc5 !important;color:#fff;border-top-left-radius: 10px;border-top-right-radius: 10px;height: 50px;line-height: 50px;}
/*紫*/.pp{background:#c495f0 !important;color:#fff;border-top-left-radius: 10px;border-top-right-radius: 10px;height: 50px;line-height: 50px;}

/*線左右*/
.bd_yl {
    box-shadow: 3px 5px 10px 0 rgb(0 0 0 / 30%);
    position: relative;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
	border-right: solid 3px #ffea00 !important;
    border-left: solid 3px #ffea00 !important;
    border-bottom: solid 3px #ffea00 !important;
}
.bd_pk{border-right:solid 2px #e13177 !important;border-left:solid 2px #e13177 !important;}

/*線右*/
.bd_bl{border-right:solid 2px #579bc3 !important;box-shadow: 0 3px 5px rgb(0 0 0 / 14%);}
.bd_wh{border-right:solid 1px #fff !important;}

/*線下*/
.bd_pk_bm{border-bottom:solid 2px #e13177 !important;}
.bd_yl_bm {border-bottom: solid 2px #ffea00 !important;}
.yl{width: 100%;}
.t-line .popular2 {
    display: block;
    position: relative;
    margin: 0 auto;
    width: 100%;
    height: 70px;
    background: none;
    box-shadow: 3px 0 3px 0 rgb(0 0 0 / 14%);
    box-sizing: border-box;
    font-size: 2em;
    font-weight: bold;
    line-height: 80px;
}

.t-line .popular2 img{    
	width: 100px;
    text-align: center;
    margin: 0 auto;
    padding: 0.8em 0 0 0;
}

.t-line .popula2r span.inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    overflow: hidden;
}


.t-line .popular {
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 10px 0;
    height: 70px;
    background: #f1f1f1;
    box-shadow:3px 0 3px 0 rgb(0 0 0 / 14%);
    box-sizing: border-box;
    font-size: 2em;
    font-weight: bold;
    line-height: 70px;
}

.t-line .popular span.inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    overflow: hidden;
    line-height: 100px;
}

.t-line .popular span.no1 {
    display: inline-block;
    position: absolute;
    padding: 5px 0;
    left: -50px;
    top: 5px;
    width: 165px;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    line-height: 16px;
    background: #ffff00;
    color: #ff3c00;
    letter-spacing: 0.05em;
    -webkit-transform: rotate( 
-25deg);
    transform: rotate( 
-25deg);
    letter-spacing: 0.001em;
}

.non2{background: none !important;
    margin: 0;
	padding: 0 !important;
	vertical-align: bottom;	
}

/*------------------------
プラン機能一覧
-------------------------*/
.plan_list{text-align: left;}
.plan_list h3 {font-weight: normal;}
.bd_graybox {
    background: #fff;
    border: 3px solid #ccc;
    padding: 1em;
    text-align: center;
    line-height: 1.8em;
    font-size: 1.2em;
    font-weight: bold;
    color: #333;
    letter-spacing: 0.001em;
}
/*------------------------
よくある質問
-------------------------*/

.qa {
    background: #f6f6f6;
    margin: 3em auto 0 auto;
    padding: 3em 0;
	max-width: 1900px;
}
.qa ul{
  width: 100%;
  margin:0 auto;
}
.qa ul li {
    background-color: #fff;
    list-style: none;
    margin-top: 1em;
    text-align: left;
    padding: 0;
}
.qa .question {
    position: relative;
    margin: 0;
    padding: 1.3em 3em 1.3em 1em;
    font-size: 1.3em;
    font-weight: bold;
    cursor: pointer;
}

.qa .question span{color:#1b96d5;}
.qa .question:hover{
    text-decoration:underline;
}

.qa .question:after {
  content: "";
  position: absolute;
  right: 25px;
  top: 38%;
  transition: all 0.2s ease-in-out;
/*   要素の動きを指定 */
  
  display: block;
  width: 10px;
  height: 10px;
  border-top: solid 2px #1b96d5;
  border-right: solid 2px #1b96d5;
  
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
/* transform: rotateで要素の角度を指定 */
  
}

.qa .question.open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
/*   .openクラスがついた時の要素の角度を指定 */
}
.qa .answer {
    padding: .5em 1em;
    background: #1b96d5;
    color: #fff;
}
.sp_dv{display:none;}

/*contents area*/
.rpst_lp{margin:0 auto;text-align: center;}
h2 {
    font-size: 2.4em;
    color: #333;
}

h3 {
    font-size: 2.2em;
    color: #333;
    margin: 0;
}

h4 {
    font-size: 1.2em;
    color: #333;
    margin: 0.5em 0 0 0;
}

.subtxt{font-size:1em;line-height: 1.6em;text-align: center;margin: 1em 0 ;    letter-spacing: 0.001em;}
.subtxt2{font-size:1em;line-height: 1.6em;text-align: left;    letter-spacing: 0.001em;}
.subtxt3{font-size:1em;line-height: 1.6em;text-align: center;margin: 1em 0 ;    letter-spacing: 0.001em;}

.red{color:#ce4242; display: inline-block;}
.red2{color:#ff0000; display: inline-block;}
.blue{color:#1b96d5;display:inline-block;}
.wh{color:#fff !important;}
.yel{color:#fff000;display:inline-block;}
.pt5{padding:3em 0;}
.pt5 h2 {
    font-size: 2.4em;
    color: #333;
    margin:0 !important;
    text-align: left;
}

/*-------------------------
サポートテーブル
--------------------------*/
.sp_table{}
.sp_table dl:first-child {
    border-top: 1px solid #ccc;
}
.sp_table dl {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
    display: flex;
	margin:0;
}
.sp_table dl dt {
    background: #1b96d5;
    color: #fff;
    padding: 1em;
    width: 25%;
    font-size: 1.2em;
    font-weight: bold;
}
.sp_table dl dd {
    color: #333;
    padding: 1em;
	font-size:1em;
    font-weight: bold;
}

/*左右斜線タイトル
--------------------------*/
.diagonal {}
.diagonal-body__txt {
    position: relative;
    text-align: center;
    color: #333;
    font-size: 1.5em;
    font-weight: bold;
}
.diagonal-body__txt::before {
    margin-right: 10px;
    content: "＼";
}

.diagonal-body__txt::after {
    margin-left: 10px;
    content: "／";
}

/*下線吹き出し
--------------------------*/
.balloon {
    position: relative;
    display: inline-block;
    background-color: #fff;
    border-bottom: solid 2px #1b96d5;
    padding: 5px;
    min-width: auto;
    max-width: 100%;
    text-align: center;
	margin: 0 0 1em 0;
}
.balloon:before,
.balloon:after,
.balloon1:before,
.balloon1:after,
.balloon2:before,
.balloon2:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.balloon:before,.balloon1:before,.balloon2:before{
    border: solid 18px transparent;
    border-top: solid 18px #1b96d5;
}
.balloon:after {
    border: solid 20px transparent;
    border-top: solid 20px #fff;
    margin-top: -5px;
}
.balloon p ,.balloon1 p ,.balloon2 p {
    font-size: 1.3em;
    margin: 0;
    padding: 0;
    font-weight: bold;
    color: #333;
}

/*吹き出し色違い
--------------------------*/
.balloon1 {
    position: relative;
    display: inline-block;
    background-color: #f6f7f9;
    border-bottom: solid 2px #1b96d5;
    padding: 5px;
    min-width: auto;
    max-width: 100%;
    text-align: center;
	margin: 0 0 1em 0;
}

.balloon1:after {
    border: solid 20px transparent;
    border-top: solid 20px #f6f7f9;
    margin-top: -5px;
}


.balloon2 {
    position: relative;
    display: inline-block;
    background-color: #e8f4fb;
    border-bottom: solid 2px #1b96d5;
    padding: 5px;
    min-width: auto;
    max-width: 100%;
    text-align: center;
	margin: 0 0 1em 0;
}

.balloon2:after {
    border: solid 20px transparent;
    border-top: solid 20px #e8f4fb;
    margin-top: -5px;
}



/*点で一部分を強調
--------------------------*/
.dot-text {
    display: inline-block;
    padding-top: .4em;
    background-position: top left -2px;
    background-repeat: repeat-x;
    background-size: 1em .3em;
    background-image: radial-gradient(.10em .10em at center center,#1b96d5,#1b96d5,#1b96d5,100%,transparent);
}
/*青い線で強調
--------------------------*/
.ttl_line {
    font-size: 2.6em;
    font-weight: bold;
    color: #333;
    margin: 0;
    padding: 0 0 0.3em 0;
    border-bottom: 3px solid #1b96d5;
}


/*-------------------------
ボタン各種
--------------------------*/
/*bkボタン*/
.bk_bt{margin:0 auto;text-align:center;}

.bk_bt a {
    color: #fff;
    font-size: 1.2em;
    font-weight: normal;
    background-image: linear-gradient(to bottom, #1ba110, #18830f);
    padding: 0;
    border-radius: 6px;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
}
.bk_bt a::before {
  content: "";
  width: 90%;
  height: 10px;
  position: absolute;
  top: 100%;
  left: 5%;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  z-index: -1;
  opacity: 0;
  transition: .3s;
}
.bk_bt a:hover {
  transform: translateY(-7px);
}
.bk_bt a:hover::before {
  transform: translateY(7px);
  opacity: 1;
}


/*whボタン*/
.wh_bt{margin:0 auto;padding:3em 0;text-align:center;background: #f6f6f6;}

.wh_bt a {
    width: 60%;
    color: #fff;
    font-size: 1.4em;
    font-weight: bold;
    background: #00b050;
    padding: 0;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
    height: 80px;
    line-height: 80px;
}
.wh_bt a::before {
  content: "";
  width: 90%;
  height: 10px;
  position: absolute;
  top: 100%;
  left: 5%;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  z-index: -1;
  opacity: 0;
  transition: .3s;
}
.wh_bt a:hover {
  transform: translateY(-7px);
}
.wh_bt a:hover::before {
  transform: translateY(7px);
  opacity: 1;
}

/*wh2ボタン*/
.wh_bt2 {
    margin: 0 auto;
    text-align: center;
    padding: 3em 0 0 0;
    background: #fff;
}
.wh_bt2 a {
    width: 60%;
    color: #fff;
    font-size: 1.4em;
    font-weight: bold;
    background-image: linear-gradient(to bottom, #1ba110, #18830f);
    padding: 0;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
    height: 80px;
    line-height: 80px;
}
.wh_bt2 a::before {
  content: "";
  width: 90%;
  height: 10px;
  position: absolute;
  top: 100%;
  left: 5%;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  z-index: -1;
  opacity: 0;
  transition: .3s;
}
.wh_bt2 a:hover {
}
.wh_bt2 a:hover::before {
  opacity: 1;
}

.f_item:last-child {
    margin-left: auto;
}
	
.f_item h2 {
    font-size: 7em;
    color: #fff;
    padding: 0.01em 0.5em;
    margin: 0;
	position: relative;
}
.f_item h2 img {
    width: 60px;
    padding: 0 0 0 1em;
    position: absolute;
    top: 20px;
}	
/*---------------------
フォーム周り
---------------------*/
.rpemn_form{max-width: 1900px;margin:0 auto;}
.rpemn_form h3 {
    font-size: 2.4em;
    color: #333;
    margin: 0 auto;
    padding: 1em 0;
	text-align: center;
}

/*---------------------
footer
---------------------*/
div#newlp_footer {
    clear: both;
    width: 100%;
    margin:0 auto;
    color: #ffffff;
    padding: 0;
	height: 150px;
}

div#newlp_footer a{
text-decoration: none;
color: #ffffff;
}

div#newlp_footer a:link {
text-decoration: none;
color: #ffffff;
}

div#fnewlp_footer a:visited {
text-decoration: none;
color: #ffffff;
}


div#newlp_footer .header__flex {
    display: flex;
	justify-content: space-between;
    align-items: center;
    margin: 0 auto;
	padding: 1rem;
	background-color: #333;
}

.ft01{width: 30%;}
.ft01 img{width:150px;margin: 0;}
.ft02{width:70%;}
.ft03{}

div#newlp_footer .header__flex ul li {
    margin-left: 20px;
    font-size: 1.2em;
}
div#newlp_footer .copyright {
    width: 100% !important;
    margin: 0 auto;
    padding: 1rem 0;
    text-align: left;
    background: #333;
    color: #fff;
    font-size: 0.75rem;
}

div#newlp_footer .copyright > ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto;
    padding: 0;
    height: 70px;
    line-height:auto;
}
div#newlp_footer .copyright ul > li{padding:0;}

div#newlp_footer nav {
  margin-left: auto;
}
div#newlp_footer nav ul {
  display: flex;
	list-style: none;
}

div#newlp_footer nav ul li {
    margin-right: 1rem;
}

div#newlp_footer .ft_box {
    padding: 0 2rem;
    position: relative;
    top: -10px;
}
div#newlp_footer .img01 {
    height: 40px;
    width: 100px;
	margin: 0 0 0 auto;
}

div#newlp_footer .img02{width:40px;}

li.pdt30 img{margin: 0 0 0 10px;}
.swiper-slide img{width:150px;}
	
/*PC*/

@media screen and (min-width:960px){
	
.f_item ul li a {
    font-size: 0.85em;
}	
#top-head.fixed .f_item ul li a {
    font-size: 0.85em;
}
.fv_bg {
    background-size: contain;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 0 6em 0;
    position: relative;
    max-width: 1900px;
    top: 4.5em;
}	
	
.fv_bt01 {
    bottom: 5.5em;
}
	
		
.fv_bt01 a {
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 0 0.85em;
    margin-left: 3rem;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
    width: 100%;
	height: 70px;
	line-height: 70px;
}	
	.f_item_img1 {
    width: 100px;
    position: relative;
    top: 10px;
}
	
	.f_item_img3 {
    width: 240px;
    padding: 0;
}
#lpshoppingcolumn {
    width: 90% !important;
}	
div#newlp_footer .header__flex,
	div#newlp_footer .copyright {
}	
	
}

@media screen and (min-width:1080px){
	
#top-head.fixed .f_item ul li a {font-size: 0.75em;}
.fv_bg {
    background-size: contain;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 0 4.3em 0;
    position: relative;
    max-width: 1900px;
    top: 4.5em;
}	
	
.fv_bt01 {
    bottom: 5.5em;
}
	
		
.fv_bt01 a {
    font-size: 1.2rem;
	height: 70px;
	line-height: 70px;
 }	
.f_item_img1 {
    width: 110px;
    position: relative;
    top: 10px;
}
	
.f_item_img3 {
    width: 260px;
    padding: 0;
}
.f_item ul li a {
    font-size: 0.85em;
}	
	
#lpshoppingcolumn {width: 90% !important;}	
div#newlp_footer .header__flex,
div#newlp_footer .copyright {}
	
}	
	
@media screen and (min-width:1250px) {
	.tb_box {
    width: 1000px;
    padding: 3em 0;
    position: relative;
}
	.ct_inner{width:1000px;margin:0 auto;text-align: center;}
	.f_item ul li a {font-size: 1em;}
	#top-head.fixed .f_item ul li a {font-size: 1em;}
	.f_item ul li a::after {width: 6px;height: 6px;}
	.f_item_img1 {width: 120px;}
	.f_item_img2 {width: 260px;padding: 0;}
	.f_item_img3 {width: 260px;}
	.f_item:first-child {padding: 0.5em 0.3em 0.5em 1em;}
		
	.fv_bg {
    background-size: contain;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 0 5.6em 0;
    position: relative;
    max-width: 1900px;
    top: 5.4em;
}

	.fv img {
    top: 15px;
}
	.fv_bt01 {
    margin: 0 auto;
    bottom: 7em;
}
.fv_bt01 a {
    font-size: 1.4em;
    letter-spacing: 0.001em;
    height: 70px;
    line-height: 70px;
    padding: 0 0.5em;
    margin-left: 5rem;
	width: 100%;}
	
	.bg_arrow div::before {
		top: 30%;
		right: 0;
		width: 30px;
		height: 30px;
	}	
	.bg_arrow div::after {
		width: 10px;
		height: 10px;
		border-top: solid 2px #4aaf22;
		border-right: solid 2px #4aaf22;
		top: 45%;
		right: 12px;
	}
	
	.bk_bt a {
		font-size: 1.6em;
		font-weight: normal;
		padding: 0 1em;
		height: 70px;
		line-height: 70px;
		width:40%;
}
	
	.wh_bt a {
    font-size: 1.5em;
    padding: 0 1em;
    height: 80px;
    line-height: 80px;
    letter-spacing: 0.001em;
}
	
.sp_table dl dd {
    font-size: 1.2em;
}	
	
.cl_arrow2 div::before {
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    right:5%;	
}
	
}	

@media screen and (min-width:1500px) {
	.tb_box {
    width: 1000px;
    padding: 3em 0;
    position: relative;
}
	.ct_inner{width:1000px;margin:0 auto;text-align: center;}
	.f_item ul li a {font-size: 1em;}
	#top-head.fixed .f_item ul li a {font-size: 1em;}
	.f_item ul li a::after {width: 6px;height: 6px;}
	.f_item_img1 {width: 130px;}
	.f_item_img2 {width: 260px;padding: 0;}
	.f_item_img3 {width: 260px;}
	.f_item:first-child {padding: 0.5em 0.3em 0.5em 1em;}
		
.fv_bg {
    background: url(../img/nlp/01_03.jpg) 50%;
    background-size: contain;
    width: 100%;
    height: 680px;
    margin: 0 auto;
    padding: 0;
    position: relative;
    max-width: 1900px;
    top: 5.4em;
}
	.fv img {
    width: 100%;
    position: relative;
    top: 15px;
}
	.fv_bt01 {
    margin: 0 auto;
    text-align: center;
    position: absolute;
    bottom: 7.5em;
}
	.fv_bt01 a {
		font-size: 1.4em;
		padding: 0 1em;
	}
	.bg_arrow div::before {
		top: 30%;
		right: 0;
		width: 30px;
		height: 30px;
	}	
	.bg_arrow div::after {
		width: 10px;
		height: 10px;
    border-top: solid 2px #4aaf22;
    border-right: solid 2px #4aaf22;
		top: 45%;
		right: 12px;
	}
	
	.bk_bt a {
    font-size: 1.6em;
    font-weight: normal;
    padding: 0 1em;
    height: 60px;
    line-height: 60px;
}
	
	.wh_bt a {
    font-size: 1.8em;
    padding: 0 1em;
    height: 80px;
    line-height: 80px;
    letter-spacing: 0.001em;
}
	
.sp_table dl dd {
    font-size: 1.2em;
}	
	
.cl_arrow2 div::before {
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    right: 6%;	
}
	
}

@media screen and (min-width: 1700px){
.fv_ttl {
    color: #fff;
    font-size: 5em;
    font-weight: bold;
    margin: 0.5em 0 0 0;
}

.fv_sbttl {
    color: #fff;
    font-size: 2.4em;
    font-weight: bold;
    margin: 1em 0 0 0;
}
.fv_bt01 {
    margin: 2em auto;
    text-align: center;
	bottom: 5.5em;
}
.fv_bt01 a {
    font-size: 1.4em;
}

.fv_bt02 a {
    font-size: 1.8em;
}

.bl_arrow {
    height: 80px;
    line-height: 80px;
}

}


/*タブレット*/
@media (max-width:959px) {
/*common*/
:root {
    font-size: calc(1rem + ((1vw - 7.68px) * 0.6944));
    min-height: 0vw;
  }	
	
.swiper-slide img{width:90%;}	
#smp-lpshoppingcolumn{text-align: left !important;}	
.sp_txtblock{display:block;}	
.sp_txt_lf{text-align:left;}
.sp_mt1{margin: 1em 0 0 0 !important;}	
.sp_mt2{margin: 2em 0 0 0 !important;}
.sp_mt3{margin: 2em 0 0 0 !important;}
.bd_line {padding:1em 0 2em 0;}	
.pc_dv{display:none;}	
.sp_dv{display:block;}
.sp_plan{width: auto;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    table-layout: fixed;
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;}	
.sp_plan img{width:860px;}
	
.fv_inner{max-width:1210px;margin:0 auto;text-align: center;width:100%;}	
.ct_inner {
	display:none;
    width: 100%;
    margin: 0 auto;
}
/*fv*/
.fv_ct_inner{
	display:block;	
	width: 100%;
    margin: 0 auto 10em auto;}

.fv {
    background: none;
    background-size: cover;
    height: auto !important;
    background-repeat: no-repeat;
    position: relative;
    top: 0;
	padding:3em 0 0 0;
}	
	
.fv img {
    width: 100%;
    position: relative;
    top: 6em;
    margin: 0 auto 1em auto;
}	
	
.f_box{padding:0;}
	
.sp_fv_bt01 {
    margin: 0 auto;
    text-align: center;
    position: relative;
    bottom:1.2em;
}
.sp_fv_bt01 a {
    color: #fff;
    font-weight: bold;
    background-image: linear-gradient(to bottom, #1ba110, #18830f);
    padding: 0;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
    bottom: 1em;
    width: 90%;
    font-size: 1.4rem;
    height: 70px;
    line-height: 70px;
}	
.bg_arrow {
    height: 40px;
    line-height: 40px;
}
.bg_arrow div::before {
    top: 25%;
    right: 3%;
    width: 30px;
    height: 30px;
}

.bg_arrow div::after {
    width: 7px;
    height: 7px;
    top: 42%;
    right: 4.5%;
}
	
.cl_arrow {
    display: block;
    height: 40px;
    text-align: center;
    line-height: 40px;
    background: #000;
    font-weight: bold;
    text-decoration: none;
    border-radius: 5px;
    font-size: 0.85em;
    letter-spacing: 0.001em;
	}
	
.cl_arrow div {
    color: #FFF;
    position: relative;
    padding-left: 30px;
}
	
.cl_arrow div::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    margin-top: -5px;
}
	
.cl_arrow2 {
    display: block;
    height: 40px;
    text-align: center;
    line-height: 40px;
    background: #000;
    font-weight: bold;
    text-decoration: none;
    border-radius: 5px;
    font-size: 0.85em;
    letter-spacing: 0.001em;
	}
	
.cl_arrow2 div {
    color: #fff;
    position: relative;
    padding-left: 0;
}	

.cl_arrow2 div::before {
    right: 5%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}	

	
.sp_fv_bt01 a:hover::before {
  opacity: 1;
}
	
.sp_ct_inner {
	width: 90%;
    margin: 0 auto;
	display:block;
	}	
	
h2 {
    font-size: 1.5em;
	font-weight: bold; /*装飾*/
    margin: 1em 0 0 0;
}
	
h2 span {
    font-size: 0.5em;
    line-height: 1.2em;
}	
h3 {
    font-size: 1.4em;
    margin: 0;
}
	
h4 {
    font-size: 1.3em;
	font-weight: bold; /*装飾*/
    margin: 0.5em 0 0 0;
	letter-spacing: 0.001em;
}
	
.bd_graybox {
    font-size: 1em;
    letter-spacing: 0.001em;
    text-align: left;
}
.wh_bt {
    margin: 1em auto;
    text-align: center;
}	
	
.wh_bt a {
	width:100%;
    font-size: 1.5em;
    height: 70px;
    line-height: 70px;
}	
	
.subtxt {
    font-size: 1em;
    letter-spacing: 0.001em;
}
	
.subtxt3 {
    font-size: 1.4em;
    letter-spacing: 0.001em;
}	
	.ps_rel{position:relative;}
	.ps_ball01 {
    position: absolute;
    top: -70px;
    right: 0;
    width: 20%;
}
	.ps_ball02 {
    position: absolute;
    bottom: -50px;
    right: 0;
    width: 30%;
}
	
	
.balloon {
    position: relative;
    display: inline-block;
    background-color: #fff;
    border-bottom: solid 2px #1b96d5;
    padding: 5px 0;
	min-width: auto;
    max-width: 100%;
    text-align: center;
    margin: 0 0 1em 0;
}
.balloon1,ballon2{min-width:auto;}	
	
.balloon p,.balloon1 p,.balloon2 p {font-size: 1.2em;}

.balloon:before, .balloon1:before, .balloon2:before {
    border: solid 14px transparent;
    border-top: solid 14px #1b96d5;
}

.balloon:after, .balloon1:after {
    border: solid 14px transparent;
    border-top: solid 14px #fff;
    margin-top: -3px;
}
.balloon1:after {
    border: solid 14px transparent;
    border-top: solid 14px #f6f7f9;
    margin-top: -3px;
}		
	
.balloon2:after {
    border: solid 14px transparent;
    border-top: solid 14px #e8f4fb;
    margin-top: -3px;
}
	
.dot-text2{
	line-height: 1.6em;
    font-size: 1.7em;
    font-weight: bold;
    color: #333;
	}	
.dot-text2 span {
position: relative;
padding-top: 0.4em;
}
 
.dot-text2 span::before {
    position: absolute;
    content: "";
    width: 0.2em;
    height: 0.2em;
    border-radius: 50%;
    background-color: #1b96d5;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
}	
	
/*header*/	
#top-head .inner {
    width: 100%;
    max-width: 100%;
    position: relative;
}
	#top-head a, #top-head {
    color: #000;
    text-decoration: none;
    z-index: 10000;
    height: auto;
    box-shadow: none;
}
	
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
		box-shadow: 0px 5px 5px -5px rgb(0 0 0 / 10%);
    }
	
	
/* Fixed reset */
 #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }

#top-head.fixed .logo {
        position: absolute;
        left: 10px;
        top: 7px;
        color: #333;
    }
	
#top-head .logo {
    position: absolute;
    left: 13px;
    top: 5px;
    color: #333;
    font-size: 26px;
}
	
#top-head .logo img {
    width: 120px;
}	
#top-head .sp_nav{margin:0 auto;text-align: center;width: 100%; background: #fff;}
#top-head .sp_nav ul {
    justify-content: center;
    align-items: center;
    display: flex;
    padding: 2em 0 1em 0;
}
	
#top-head .sp_nav ul li {
    border-right: 1px solid #333;
    text-align: center;
}
#top-head .sp_nav ul li a {
    padding: 0 0.5em;
    letter-spacing: 0.001em;
    font-size: 1em;
    font-weight: bold;
}
	
#top-head .sp_nav ul li:last-child{border-right: none;}	
.f_item_img1 {
    width: 120px;
    padding: 0;
    position: relative;
    top: 10px;
}	
.f_item_img3 {
    width: 120px;
    padding: 0.5em 0 0 0;
}		
	
.f_item_img2 {
    width: 150px;
    padding: 1em 0 0 0;
}	

/*導入事例*/
.case {
    padding: 0.1em 0 3em 0;
}	
	
.bk_bt a {
    color: #fff;
    font-size: 1.2em;
    font-weight: normal;
    padding: 0;
    position: relative;
    z-index: 1;
    display: inline-block;
    transition: .3s;
    border-radius: 60px;
    text-decoration: none;
    width: 60%;
}
	
.kigyou_ps {
    position: relative;
    top: 0;
}
	
/*機能*/
.function {
    margin: 2em auto;
    padding: 2em 0 0 0;
}
.shadow_box {
    background: #fff;
    padding: 1em;
    text-align: left;
    box-shadow: 3px 3px 6px -2px #555, 3px 3px 8px rgb(255 255 255 / 80%) inset;
    margin: 0 auto;
}	
	
.shadow_box h3 {
    font-size: 1.4em !important;
    margin: 0 0 1em 0!important;
    letter-spacing: 0.001em;
    text-align: center!important;
}
.regular dl	{display:none;}
.sp_regular dl{
	justify-content: center;
    align-items: center;
    display: block;
}
.sp_regular dl dt{width: 100%}
	
.sp_regular dl dd {
    text-align: left;
    padding: 0;
    margin: 0 auto;
}
	
	
	
/*料金*/
.diagonal-body__txt {
    font-size: 1.2em;
}	
.ttl_line {
    font-size: 2em;
}
	
.plan01 img{margin:0 auto;text-align:center;}	
.plan2 {
    padding: 3em 0 1em 0;
	background-size: contain;
}	
	
.plan2 .planbox {
    margin: 2em auto;
}	
	
.plan2 .planbox ul li {
    width: 100%;
    margin-right:0;
    margin-bottom: 2em;
}
.memo_box{width:90%;}	
.memo_box h3{font-size:1.8em;}	
.memo_box p {
    padding-bottom: 0.5em;
	height: auto;
}	

.tb_box {
    width:auto;
}
	
/*サポート*/
.sp_table dl {
	display: block;
}	
.sp_table dl dt {
    padding: 0;
    width: 100%;
    font-size: 1.3em;
    height: 40px;
    line-height: 40px;
    font-weight: normal;
}
	
.sp_table dl dd {
    font-size: 1.1em;
    font-weight: normal;
    text-align: left;
}
.ttl_box {
    margin-top: 5em;
    margin-bottom: 3em;
	}
	
.ttl_box .inner {
    padding: 1em 0 .5em 0;
    line-height: 1.8em;
    font-size: 1em;
    color: #333;
    text-align: left;
    width: 90%;
    margin: 0 auto;
    letter-spacing: 0.001em;
}
.ttl_box h3 {
    letter-spacing: 0.001em;
}	
.ttl_box h4 {
    margin: 0.5em 0 0 0 !important;
	font-size: 2em !important;
}	
.ttl_box img{width:90%;margin: 0 auto;}	
	
/*よくある質問*/
.qa {
    background: #f6f6f6;
    margin: 0 auto;
    padding: 3em 0;
}
.qa ul{
  width: 100%;
  margin:0 auto;
}
.qa ul li {
    background-color: #fff;
    list-style: none;
    margin-top: 1em;
    text-align: left;
    padding: 0;
}
.qa .question {
    padding: 1.3em 3em 1.3em 1em;
}
	
	
img {
    border: 0;
    vertical-align: bottom;
    padding: 0;
    height: auto;
    width: 100%;
}
#lpshoppingcolumn .pb_ttl h3 {
    width: 90% !important;
}
	
/*footer*/
div#newlp_footer {
    clear: both;
    width: 100%;
    margin: 0 auto;
    color: #ffffff;
    padding: 0;
	height: auto;
}	
div#newlp_footer .ft_box {
	    padding: 0.5rem 0;
    top: 0;
}
div#newlp_footer .img01 {
    width: 120px;
    height: auto;
    margin: 1rem 1rem 1rem auto;
    text-align: center;
}
.ft01 img {
    width: 150px;
    margin: 0 auto !important;
}
	
div#newlp_footer .header__flex {
    display: block;
    height: 60px;
    align-items: center;
    margin: 0 auto;
}
div#newlp_footer a{
text-decoration: none;
color: #ffffff;
}

div#newlp_footer a:link {
    text-decoration: none;
    color: #ffffff;
    font-size: 0.85em;
}
div#fnewlp_footer a:visited {
text-decoration: none;
color: #ffffff;
}


div#newlp_footer .header__flex {
    display: block;
    height: auto;
    align-items: center;
    margin: 0 auto;
    font-size: 0.85em;
}
	
div#newlp_footer .header__flex h1{
	text-align: center;
    position: relative;
    top: -10px;
}
div#newlp_footer .header__flex nav {
    margin: 0 auto;
    text-align: center;
}
div#newlp_footer .header__flex ul {
    display: block;
    text-align: left;
    margin: 1rem auto;
}
div#newlp_footer .header__flex ul li {
    font-size: 1.2em;
    border-bottom: 1px solid #444;
    padding: 0.5em;
    margin: 0 auto;
}
div#newlp_footer .header__flex ul li:first-child{}	
	
div#newlp_footer .copyright {
    font-size: 0.85em;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}
.ft01 {
    width: 100%;
}	
.ft02 {
    width: 100%;
}	
	
.plan_standard {
    position: relative;
    top: 1em;
} 
	
.pt5 h2 {
    font-size: 1.5em;
    color: #333;
    margin: 0 !important;
    text-align: left;
}	
	
#lpshoppingcolumn {
    width: 90%;

}	
		
.rpemn_form h3 {
    font-size: 1.4em;
    color: #333;
    margin: 0 auto;
    padding: 1em 0 0 0;
    text-align: center;
}
.wh_bt2 a {
    width: 90%;
    font-size: 1.3rem;
}		

	
div#newlp_footer .copyright ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto;
    padding: 0;
    height: auto;
    line-height: auto !important;
}
}


/*スマートフォン*/
@media (max-width: 519px) {

h2 {font-size: 1.7em;}
h4 {font-size: 0.85em;}
	
.bk_bt a {
    width: 80%;
}	
.sp_plan img{width:500px;}	
.qa .question {
    font-size: 1.1em;
	padding: 1em 3em 1em 1em;
	}
.dot-text2{
	line-height: 1.6em;
    font-size: 1.7em;
    font-weight: bold;
    color: #333;
	}
	
.qa .question:after {
    content: "";
    position: absolute;
    right: 25px;
    top: 40%;
    transition: all 0.2s ease-in-out;
    display: block;
    width: 12px;
    height: 12px;
    border-top: solid 2px #1b96d5;
    border-right: solid 2px #1b96d5;
    -webkit-transform: rotate(
135deg);
    transform: rotate(
135deg);
}
	
.dot-text2 span {
position: relative;
padding-top: 0.4em;
}
 
.dot-text2 span::before {
    position: absolute;
    content: "";
    width: 0.2em;
    height: 0.2em;
    border-radius: 50%;
    background-color: #1b96d5;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
}	
	
.subtxt2 {
    font-size: 1em;
    line-height: 1.6em;
    text-align: left;
    margin: 1em 0 0 0;
	letter-spacing: 0.001em;
}	
	
.subtxt3 {
    font-size: 1.1em;
    letter-spacing: 0.001em;
}	
	
.pt5 {
    padding: 2em 0;
}	
.pt5 h2 {
    font-size: 1.5em;
    color: #333;
    margin: 0 !important;
    text-align: left;
}	
	
.sp_ct_inner {
    width: 90%;
    margin: 0 auto;
    display: block;
    font-size: 0.85em;
}	
	

.wh_bt {
    margin: 0 auto;
    padding: 1em 0 !important;
    text-align: center;
}	
	
.wh_bt a {
    height: 60px;
    line-height: 60px;
    font-size: 1.3rem;
}
.wh_bt2 a {
    width: 90%;
    height: 60px;
    line-height: 60px;
    font-size: 1.3rem;
}	
.ttl_box h3 {
    font-size: 1.4em !important;
    letter-spacing: 0.001em;
}
	
.red {
    color: #ce4242;
    display: contents;
}	
	img {
    border: 0;
    vertical-align: bottom;
    padding: 0;
	height: auto;
	}
/*header*/	
#top-head .inner {
    width: 100%;
    position: relative;
}
#top-head .logo img {
    width: 100px;
}
	
.f_box {
    padding: 0;
    height: 45px;
}	
.f_item:first-child {
    padding:0.5em;
}
	
.f_item_img1 {
    width: 100px;
}		
.f_item_img2 {
	width: 140px;
    padding: 0.5em 0 0 0;
}
	
.f_item_img3 {
    width: 110px;
}	
	
#top-head .sp_nav ul li a {
    padding: 0 0.5em;
    letter-spacing: 0.001em;
    font-size: 0.85em;
    font-weight: bold;
}
	
#top-head .logo {
    position: absolute;
    left: 5px !important;
    top: 7px !important;
    color: #333;
}
	
	
/*fv*/	
.fv {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    position: relative;
    max-width: 1900px;
    text-align: center;
}
	
.fv img {
    width: 100%;
    position: relative;
    top: 6.8em;
    margin: 0 auto 3.5em auto;
}

.fv_ct_inner{
	display:block;	
	width: 100%;
    margin: 0 auto 7.8em auto;}	
	
.sp_fv_bt01{bottom:0;}
	
.sp_fv_bt01 a {
    bottom: 0.5em;
    width: 90%;
    font-size: 1.3rem !important;
    height: 60px;
    line-height: 60px;
    letter-spacing: 0.001em !important;
}
.bg_arrow div::before {
    top: 35%;
    right: 4%;
    width: 20px;
    height: 20px;
}
	
.bg_arrow div::after {
    width: 5px;
    height: 5px;
    top: 48%;
    right: 6%;
}
	div#newlp_footer-copy{width:100%;}
	.newlp_footer-copy ul li img{width:120px;}

	.logo img {
    width: 100px;
}
	
.bd_yl{font-size: 1.2em;}	
	
	.planbox .memo {
    font-size: 1.2em;
    margin: 2em 0 1em;
}
	.memo_box {
		width: 90%;
		margin: 1em auto;
		padding: 1em;

	}
	
	.memo_box h3 {
    font-size: 1.4em !important;
}
	.memo_box p {
    margin-top: 1em !important;
    letter-spacing: 0.001em;
    line-height: 160%;
}
	
.memo_btm dl {
    margin: 0 0 0.5em 0;
}	
.memo_btm dl dt {
    background: #1b96d5;
    color: #fff;
    height: 20px;
    line-height: 20px;
    font-size: 0.85em;
    letter-spacing: 0.001em;
}
	
.memo_btm dl dd {
    color: #333;
    height: 20px;
    line-height: 20px;
    margin: 0 0 0 0.5em;
    letter-spacing: 0.001em;
	font-size:1rem;
}
	
.balloon p,.balloon1 p {font-size: 1em;letter-spacing:0.001em;}
	
.balloon2 p {font-size: 1.2em;}	
	
.plan2 {padding: 2em 0 1em 0;}
	
.logo_ps{position: relative;top: 2em;}
	
.tb_box {width: auto;padding: 0;}	
	.casebox{width:100%;}
	
#confirm_submit_text {
    width: 90% !important;
    height: 60px !important;
    line-height: 60px !important;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin: 0 auto;
    padding: 0.1em 0 0;
    background: #00b050 !important;
    border: 1px solid #00b050 !important;
    color: #fff;
    border-radius: 30px;
    box-shadow: 1px 1px 1px rgb(0 0 0 / 30%);
}	
}
	

