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

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');
@import url("https://use.fontawesome.com/releases/v5.6.1/css/all.css");

*:focus {
  outline: none;
}

iframe{
vertical-align:bottom;
}

.bold {font-weight: bold;}
.red {color:red;}


/*端末写真*/
#photos {
   /* Prevent vertical gaps */
   line-height: 0;
 
   -webkit-column-count: 5;
   -webkit-column-gap:   0px;
   -moz-column-count:    5;
   -moz-column-gap:      0px;
   column-count:         5;
   column-gap:           0px;
 
}
#photos img {
  /* Just in case there are inline attributes */
  width: 100% !important;
  height: auto !important;
}

@media (max-width: 1200px) {
  #photos {
  -moz-column-count:    4;
  -webkit-column-count: 4;
  column-count:         4;
  }
}
@media (max-width: 1000px) {
  #photos {
  -moz-column-count:    3;
  -webkit-column-count: 3;
  column-count:         3;
  }
}
@media (max-width: 800px) {
  #photos {
  -moz-column-count:    2;
  -webkit-column-count: 2;
  column-count:         2;
  }
}
@media (max-width: 400px) {
  #photos {
  -moz-column-count:    1;
  -webkit-column-count: 1;
  column-count:         1;
  }
}


/*FAQ関連*/



.faqmain {width:75%; padding: 10px 20px;}

.faqmenu 
{ 

}

.syncer-acdn-faq
{
	margin: 1.5em 0 0 ;
}

.syncer-acdn-faq dt ,
.syncer-acdn-faq dd
{
	margin: 0 0 0 2em ;
	padding: 4px 0 ;
}

.syncer-acdn-faq dt:hover
{
	cursor: pointer ;
	color: #777 ;
}

.syncer-acdn-faq dt
{ border: 1px dotted #999;

  font-size: 1.1rem;
  line-height: 1.3;
  font-weight: bold;
  padding: 20px 50px 20px 30px;
	margin: 10px;
	color: #333;
}

.syncer-acdn-faq dd
{
	display: none ;
	
	font-size: 1.0rem;
}

.align_right {text-align:right; padding-bottom: 15px;}

/*Slick Flow関連*/
.flow_list_box{
    cursor: pointer;
    text-align: center;
    width: 265px;
	height: 400px;
}




.flow_list_box:first-child{
    background: url('../img/common/logo.png') 17.5rem 1.2rem no-repeat;
}
.flow_list_box:last-child{
    background: url('../icon/arrow2.png') -6.5rem 1.2rem no-repeat;
}
.flow_img{
    height: 16.5rem;
    width: 100%;
    margin: 0 auto;
    position: relative;
}
.flow_img img{
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
}




.flow_num{
    background: url(../images/bg_flow.png) no-repeat;
    background-size: 41px 47px;
    color: #000;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 3.5rem;
    width: 150px;
    padding: 0px 0;
}

.slick-center .flow_num{
    
    background-size: 41px 47px !important;
    -webkit-transform: scale(1.5);
       -moz-transform: scale(1.5);
        -ms-transform: scale(1.5);
         -o-transform: scale(1.5);
            transform: scale(1.5);
    -webkit-transition-timing-function:ease-out;
       -moz-transition-timing-function:ease-out;
        -ms-transition-timing-function:ease-out;
         -o-transition-timing-function:ease-out;
}

.slick-center .flow_img

{
	-webkit-transform: scale(1.16);
       -moz-transform: scale(1.16);
        -ms-transform: scale(1.16);
         -o-transform: scale(1.16);
            transform: scale(1.16);
    -webkit-transition-timing-function:ease-out;
       -moz-transition-timing-function:ease-out;
        -ms-transition-timing-function:ease-out;
         -o-transition-timing-function:ease-out;

		   -webkit-filter: saturate(200%) contrast(110%) brightness(95%);
            filter: saturate(200%) contrast(110%) brightness(95%);
}


.slick-center .flow_title
{
	color: #000;
	    font-size: 20px;
    -webkit-transition-timing-function:ease-out;
       -moz-transition-timing-function:ease-out;
        -ms-transition-timing-function:ease-out;
         -o-transition-timing-function:ease-out;
}



.flow_title {
 color: #555;
font-size: 18px;
	line-height: 50px

}

.flowCap {
 font-weight: normal !important;
 padding: 0px 20px;
	height: 100px;
}


/*Effect*/
.slick-center .flow_img img
{ -webkit-transition: all .12s ease-out;
     -moz-transition: all .12s ease-out;
        -ms-transition: all .12s ease-out;
         -o-transition: all .12s ease-out;
            transition: all .12s ease-out;}


/*******FLEX*******/
.flexcontainer { width:100%;

  display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;

  -webkit-justify-content: center; /* Safari */
  justify-content:stretch;
  flex-flow: row wrap;
 -webkit-flex-wrap: wrap; /* Safari */
  flex-wrap:         wrap;
	

  }

_:-ms-lang(x), アイテムのセレクタ { width:480px; } 
  
  
 .flex_mt { width:100%;

  display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;
  -webkit-justify-content: center; /* Safari */
  justify-content:stretch;
  flex-flow: row wrap;
 -webkit-flex-wrap: wrap; /* Safari */
  flex-wrap:         wrap;
  flex-grow: 3;

  } 

/*******基本設定*******/
* {margin: 0 auto;padding: 0;box-sizing: border-box;}
body {
	font-family: 'Noto Sans JP',"メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	background: #fff;
	color: #212125;
	font-size: 16px;
	height: 100%;
	position: relative;
}
html {overflow-y: scroll;height: 100%;}
h1,h2,h3,h4,h5,h6 {font-weight: normal; line-height:1em; margin-top: 10px;}
p,li,dt,dl {line-height: 1.75;}
p {margin: 0 0 1em 0;/*最初に消したマージンをふっかつ*/}
li {list-style: none;}
img {border: none;vertical-align: bottom;max-width:100%;}
.switch {visibility: hidden;}
.center { text-align:center;}
.basic_text {width:80%; }
.image { text-align:center; padding:15px;}
.columnbox {width:780px; }
blockquote {
line-height:1.9em;
margin: 40px;
padding:30px;
border: 1px solid #B8B8B8;
}

section{
	margin: 25px 0
}

.text_larger {
	font-size:35px
}

.text_01{
	font-size: 1.3em
}

ul.list {
 display: flex;
 flex-wrap: wrap;
 width: 100%;
}

ul.list > li {
 width: 100%;
 list-style:none;
 padding-bottom:5px;
 box-sizing: border-box;
 text-indent: -1em;
 padding-left: 1em
}

ul.list > li::before{
	content: "●";
	font-size: 30%;
	color: #2EC4B6;
	padding-right: 5px
}


ul.list2 {
 display: flex;
 flex-wrap: wrap;
 width: 100%;
 list-style-position: inside
}

ul.list2 > li {
 width: 50%;
 list-style:none;
 box-sizing: border-box;
 text-indent: -1em;
 padding-left: 1em
}

ul.list2 > li::before{
	content: "●";
	font-size: 30%;
	color: #2EC4B6;
	padding-right: 5px
}


ul.list3 {
 flex-wrap: wrap;
 width: 100%;
}

ul.list3 > li {
 width: 100%;
 list-style:none;
 box-sizing: border-box;
 color: #212125;
}

ul.list3 > li::before{
	content: "■";
	font-size: 30%;
	color: #2EC4B6;
	padding-right: 5px;
	padding-left: 10px
}

ul.list4 > li::before{
	content: "・";
	font-size: 30%;
	padding-right: 5px;
	padding-left: 10px
}


/*******table*******/
table,th,td {
	border: solid 1px;
	border-collapse: collapse;
	padding: 10px;
}

/*******リンク*******/
a:link {
	color: #2EC4B6;
	text-decoration: none;
}

a:visited {
	color: #239389;
	text-decoration: none;
}

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

a img {
	-webkit-transition: .2s ease-in-out !important;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

a li {
	color: #000;
	text-decoration: none;
}

/*マウスオーバーで透過する*/
a:hover img {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}

/*マウスオーバーしても透過しない*/
.op_none:hover{opacity: 100}

/*******レイアウト*******/
.left {float: left;}
.right {float: right;}

.tx-l {text-align: left;}
.tx-r {text-align: right;}
.tx-c {text-align: center;}

.ofa {overflow: auto;}
.clear {clear: both;overflow: hidden;}

.cf {display: inline-table;}
.cf:after {
  display: block;
  clear: both;
  content: "";
}

/*******余白*******/
.m0 { margin: 0 !important; }

.mb0 { margin-bottom:0px !important;}
.mb10 { margin-bottom:10px !important;}
.mb20 { margin-bottom:20px !important;}
.mb30 { margin-bottom:30px !important;}
.mb40 { margin-bottom:40px !important;}
.mb50 { margin-bottom:50px !important;}

.mt0 { margin-top:0px !important;}
.mt10 { margin-top:10px !important;}
.mt20 { margin-top:20px !important;}
.mt30 { margin-top:30px !important;}
.mt40 { margin-top:40px !important;}
.mt50 { margin-top:50px !important;}
.mt60 { margin-top:60px !important;}
.mt70 { margin-top:70px !important;}
.mt80 { margin-top:80px !important;}
.mt90 { margin-top:90px !important;}
.mt100 { margin-top:100px !important;}
.mt120 { margin-top:120px !important;}
.mt130 { margin-top:130px !important;}
.mt180 { margin-top:180px !important;}

.ml0 { margin-left: 0px !important;}
.ml10 { margin-left: 10px !important;}
.ml20 { margin-left: 20px !important;}
.ml30 { margin-left: 30px !important;}
.ml40 { margin-left: 40px !important;}
.ml50 { margin-left: 50px !important;}
.ml70 { margin-left: 70px !important;}

.mr0 { margin-right: 0px !important;}
.mr10 { margin-right: 10px !important;}
.mr20 { margin-right: 20px !important;}
.mr30 { margin-right: 30px !important;}
.mr40 { margin-right: 40px !important;}
.mr50 { margin-right: 50px !important;}

.pb0 { padding-bottom:0 !important;}
.pb10 { padding-bottom:10px !important;}
.pb20 { padding-bottom:20px !important;}
.pb30 { padding-bottom:30px !important;}
.pb40 { padding-bottom:40px !important;}
.pb50 { padding-bottom:50px !important;}

.pt0 { padding-top:0px !important;}
.pt10 { padding-top:10px !important;}
.pt20 { padding-top:20px !important;}
.pt30 { padding-top:30px !important;}
.pt40 { padding-top:40px !important;}
.pt50 { padding-top:50px !important;}

.pl0 { padding-left: 0px !important;}
.pl10 { padding-left: 10px !important;}
.pl20 { padding-left: 20px !important;}
.pl30 { padding-left: 30px !important;}
.pl40 { padding-left: 40px !important;}
.pl50 { padding-left: 50px !important;}

.pr0 { padding-right: 0px !important;}
.pr10 { padding-right: 10px !important;}
.pr20 { padding-right: 20px !important;}
.pr30 { padding-right: 30px !important;}
.pr40 { padding-right: 40px !important;}
.pr50 { padding-right: 50px !important;}

/*レスポ用*/
.mb40-24 {
	margin-bottom: 40px !important;
}

/*******ボタン各種*******/
.btn01 {
	border: 1px solid;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 0.1em;
	padding: 1em 3.5em;
	
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

.btn01 i {
	margin-right: 1em;
}

.btn01:hover {
	text-decoration: none;
}

.btn02 {
	border: 1px solid;
	display: inline-block;
	font-size: 12px;
	padding: 1em 1em;
	
	
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

.btn02 i {
	margin-right: 1em;
}

.btn02:hover {
	text-decoration: none;
	
}


.btn03 {
	border: 1px solid;
	display: inline-block;
	font-size: 12px;
	padding: 0.5em 0.5em;
	margin:0.5em 0;
	
	
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

.btn03 i {
	margin-right: 1em;
}

.btn03:hover {
	text-decoration: none;
	background-color: #CFCFCF;
}


.btnsolid {
	
	border: 1px solid #2EC4B6;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 0.1em;
	padding: 1em 3.5em;
	width:40%;
	
	
	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

.btnsolid i {
	margin-right: 1em;
}

.btnsolid:hover {
	text-decoration: none;
	background-color:  #2EC4B6;
	color: #FFF;
}

/*aボタンと3行のpを横並び*/
.btn_side a{
	float: left;
	margin-right: 20px;
	margin-top: 5px
}

/*フォント白*/
.font_white{
	color: #fff
}

/*フォントカラーブルー*/
.font_color{
	color: #2EC4B6
}

/*メインビジュアル*/
.btn01.trans-color {
	color: #fff;
}

.btn01.trans-color:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}

/*青背景*/
.btn01.red-color {
	background: #2EC4B6;
	border: 1px solid #2EC4B6;
	color: #000000;
}

.btn01.red-color:hover {
	color: #2EC4B6;
	background: #fff;
}

.btn02.red-color {
	background: #1F1F1F;
	border: 1px solid #000;
	color: #fff;
}

.btn02.red-color:hover {
	background: #3E3E3E;
}

/*青アンダーライン*/
.under_line01{
	background: linear-gradient(transparent 60%, #EFFFE6 60%)
}

/*薄い青背景*/
.bk_01{
	background: #EFFFE6
}

/*薄いグレー背景*/
.bk_02{
	background: #EEE
}

/*薄い水色背景*/
.bk_03{
	background: url("../img/product/image_pattern.png") repeat
}

/*上白色　下濃い水色背景*/
.bk_04{
	background: linear-gradient(180deg,#fff 25%,#fff 100px,#2EC4B6 100px,#2EC4B6 100%);
}

/*CBCBCBに白背景*/
.bk_05{
	background: linear-gradient(180deg,#ccc 80%,#ccc 100px,#fff 100px,#fff 20%);
	  overflow: hidden;
}

/*f2f2f2に白背景*/
.bk_06{
	background: linear-gradient(180deg,#fff 30%,#fff 100px,#f2f2f2 100px,#f2f2f2 70%);
	  overflow: hidden;
}


/*青枠に白背景*/
.btn01.blue-color {
	border: 1px solid #2EC4B6;
	color: #000000;
}

.btn01.blue-color:hover {
	color: #fff;
	background: #2EC4B6;
}

.btn02.blue-color {
	border: 1px solid #2EC4B6;
	color: #000000;		
}

.btn02.blue-color:hover {
	color: #fff;
	background: #2EC4B6
}

/***リスト***/
/*数字*/
.list_ol li{
	display: list-item;
	margin-left: 20px;
	list-style-type: decimal;
	padding-bottom: 5px;
}

/*黒ポチ*/
.list_ul li{
	list-style-type: disc;
	list-style-position: inside
}


/*注意事項*/
.asterisk{
	text-indent: -1em;
	margin-left: 1em
}

.asterisk::before{
	content: "※"
}

/*ラベル*/
.label_01{
	position: relative
}

.label_01::before{
	content: "";
	top: 0;
	left: 0;
	position: absolute;
	border-bottom: 7em solid transparent;
	border-left: 7em solid #2EC4B6
}

.label_01::after{
	content: "NEW";
	display: block;
	font-size: 1.5em;
	color: #fff;
	top: 15px;
	left: 8px;
	transform: rotate(-45deg);
	position: absolute
}


/*トップの課金筐体 開発  Q&amp;A部分*/
.btn01.white-color {
	background: #fff;
	border: 1px solid #848484;
	color: #212125;
}

.btn01.white-color:hover {
	background: #DDDDDD;
	border: 1px solid #A3A3A3;
	color: #222;
}

/*******共通*******/
.wrap {
	overflow:visible;
	width: 1000px;
	padding-top: 10px;
}

.wrap_w {
	overflow:visible;
	width: 1200px;
	padding-top: 10px;
}

.wrap_s {
	overflow:visible;
	width: 1000px;
}


/*******header*******/
header {
    overflow: auto;
    padding-top: 32px;
    width: 1000px;
}

.logo {
	float: left;
	width: 140px;
}

.logo a{
	border-bottom: none
}

/*******nav*******/
nav {
	float: right
}

nav .navi {
	padding-top: 8px;
}

nav .navi li {
	display: block;
	float: left;
	padding-left: 1px;
	width:140px;
}

nav .navi li a {
	
	display: block;
	text-align:center;
	font-size: 13.5px;
	padding-bottom: 33px;
	border-bottom: 4px solid #fff;

	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}



nav .navi .menu_single li a {
	display: block;
	width:133px;
	line-height:3em;
	text-align:center;
	
	padding: 0px;
	margin:0px;
	border-bottom: 1px solid #ccc;
	font-size:13px;	

	-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

nav .navi .menu_single li a:link,nav li a:visited,nav li a:hover {
	color: #212125;
	text-decoration: none;
	
}

nav .navi .menu_single li a:hover,nav .navi li.current a {
	border-bottom: 4px solid #cccccc;
	cursor: pointer;
}

nav .navi .menu_single li a:hover,nav .navi .menu_single li.select a {
	border-bottom: 1px solid #ccc;
	background-color:#D5D5D5;
	cursor: pointer;
}



nav .navi li a:link,nav li a:visited,nav li a:hover {
	color: #212125;
	text-decoration: none;
}

nav .navi li a:hover,nav .navi li.current a {
	border-bottom: 4px solid #cccccc;
	cursor: pointer;
}

nav .navi li a:hover,nav .navi li.select a {
	border-bottom: 4px solid #2EC4B6;
	cursor: pointer;
}

.devmenu-mobile {
	display: none;
}

.menu-mobile {
	display: none;
}

/*シンプルドロップダウン*/

.menu_single {
	background: #f9f9f9;
	display: none;

	margin:0;
	position: fixed;
	width: 135px;

	z-index: 1000;
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.3);
	border-radius: 0px 0px 3px 3px;

	
}

.menu_single li a {line-height:2.5em;

}




/*メガメニュー*/
.megamenu {
	background: #f9f9f9;
	display: none;
	padding: 16px 32px;
	position: fixed;
	width: 1000px;
	right: 0;
	z-index: 1000;
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.3) ;
	border-radius: 0px 0px 5px 5px;
}

.megamenu li.listItem {
	padding-left: 0;
	width: 20%;
}

.megamenu li.listItem h3,.megamenu li.listItem img {
	margin-bottom: 16px;
	line-height: 1.4;
	
}

.megamenu li.listItem h3 a {
	font-size: 16px;
	display: inline;
	padding-bottom: 0;
	border-bottom: none;
}

.megamenu li.listItem h3 a:hover {
	border-bottom: none;
	text-decoration: underline;
}

.megamenu li.listItem ul {width:100%;}

.megamenu li.listItem ul li {
	float: none;
	padding-left: 0px;
	
}

.megamenu li.listItem ul li a {
	color: #5c5c5c;
	display: inline-block;
	padding-bottom: 0;
	border-bottom: none;
	
}

.megamenu li.listItem ul li a:hover {
	border-bottom: none;
	text-decoration: underline;
}

/*******トップページicatch*******/
.icatch {
	background: #212125;
	color: #f9f9f9;
}

.slide-wrap {
	width: 1000px;
}

.bxslider li {
	padding: 56px  64px;
}

.bxslider li h3 {
	font-size: 24px;
	line-height: 1.3;
	letter-spacing: 0.13em;
	margin-bottom: 40px;
}

.bxslider li h3 span.en {
	color: #b2b4b6;
	font-size: 21px;
	font-family: Times New Roman, Times, serif;
}

.bxslider li p {
	margin-bottom: 48px;
}

.bxslider li .txt {
	float: right;
	width: 50%;
	
}

/*スライドの背景*/
#slide01 {
	background: url(../img/common/ic01.jpg) no-repeat;
	background-size: cover;
}

#slide02 {
	background: url(../img/common/ic02.jpg) no-repeat;
	background-size: cover;
}

#slide03 {
	background: url(../img/common/ic03.jpg) no-repeat;
	background-size: cover;
}


/*******トップページ*******/
.container{
	padding-top: 100px
}

.top_img{
	position: relative;
}

.top_img p{
	position: absolute;
	color: #fff;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
  	-webkit-transform: translate(-50%,-50%);
  	transform: translate(-50%,-50%);
	margin: 0;
	padding: 0;
	text-shadow: 1px 1px 2px #000;
	font-size: 2.5vw;
	font-weight: bold
}

.top_img img{
	width: 100%
}

/****トップ見出し****/
.ttl_top{
	position: relative;
	display: inline-block;
	width: 100%;
	margin-top: 100px;
	margin-bottom: 40px;
	padding: 0 10px;
	text-align: center;
	font-size: 2.4em
}

.ttl_top::before{
	content: "";
	position: absolute;
	bottom: -0.5em;
	display: inline-block;
	width: 2em;
	height: 2px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: black;
	border-radius: 2px;
}

/****TOP Pickup****/
.top_pickup{
	position: relative;
	background: #fff;
	z-index: 10;
	top: -40px;
	-webkit-box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
	box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
}

/**pickup box**/
.pickup_card01 {
font-size: 14px;
line-height: 1.45em;
position: relative;
overflow: hidden;
height: 200px;
margin: 0 auto 1%;
-webkit-transition: height 0.3s ease;
transition: height 0.3s ease;
border-radius: 3px;
background: #ffffff;
width: 450px
}
.pickup_card01:hover .details {
left: 0;
}
.pickup_card01:hover.alt .details {
right: 0;
}
.pickup_card01.alt .details {
right: -100%;
left: inherit;
}
.pickup_card01 .photo {
position: relative;
float: left;
width: 35%;
height: 100%;
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
}
.pickup_card01:hover .photo {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}

/*pickupの写真入れ替え*/
.pickup_card01 .photo.photo1 {
background: url('../img/common/top_pickup01.png') center no-repeat;
background-size: cover;
}
.pickup_card01 .photo.photo2 {
background: url('../img/product/cbez/cbez_standard.jpg') center no-repeat;
background-size: contain;
background-repeat: no-repeat;
}

.pickup_card01 .details {
position: absolute;
top: 0;
left: -100%;
width: 35%;
height: 200px;
margin: 0;
padding: 10px 15px;
list-style: none;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
color: #ffffff;
background: rgba(128,128,128,0.7);
}
.pickup_card01 .details > li {
padding: 3px 0;
}
.pickup_card01 .details li::before {
margin-right: 5px;
vertical-align: middle;
content: '〉';
}
.pickup_card01 .description {
position: relative;
z-index: 0;
float: left;
width: 65%;
padding: 10px;
min-height: 200px;
}
.pickup_card01 .description::before {
position: absolute;
z-index: -1;
top: 0;
bottom: 0;
left: -15px;
width: 100%;
content: '';
-webkit-transform: skewX(-8deg);
transform: skewX(-8deg);
background: #ffffff;
}
.pickup_card01 .description h1 {
font-size: 1.4em;
line-height: 1em;
margin: 0 0 10px 0;
}
.pickup_card01 .description h2 {
font-size: 1em;
line-height: 1.2em;
margin: 1.2% 0;
color: #9b9b9b;
}
.pickup_card01 .description p {
position: relative;
margin: 0;
padding-top: 20px;
}
.pickup_card01 .description p::after {
position: absolute;
top: 6px;
left: 0;
width: 20%;
height: 4px;
content: '';
background: #2EC4B6;
}
.pickup_card01 .description a {
float: right;
margin: 10px 0;
text-decoration: none;
color: #2EC4B6;
}
.pickup_card01 .description a::after {
margin: 10px 0 -10px;
content: '→';
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
vertical-align: middle;
opacity: 0;
}
.pickup_card01 .description a:hover::after {
margin-left: 5px;
opacity: 1;
}

/****Our Company****/
.ttl_oc{
	font-size: 30px;
	letter-spacing: 0.13em;
	padding-bottom: 25px;
	text-align: center;
	line-height: normal;
}

.ttl_oc span{
	color: #2EC4B6;
	font-size: 35px;
	font-weight: bold
}

.p_oc{
	line-height: 1.8
}

/***floatで2カラム***/
.float_l{
	float: left;
	width: 50%;
	padding: 20px 15px 15px;
}

.float_r{
	float: right;
	width: 50%;
	padding: 20px 15px 15px;
}

/*inline-blockで2カラム*/
.ilb{
	width: 100%;
	display: inline-block;
	vertical-align: top;
	text-align: center;
}

.ilb img{
	width: 48%;
	padding: 30px;
}

/****News****/
/***アコーディオン***/
.accbox *, .accbox *:after, .accbox *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.accbox {
	border-top: 1px solid #1b2538;
	margin-top: 15px
}
.accbox .acc_tab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin-bottom: 1px;
	color: #1b2538;
}
.accbox .acc_tab input {
	position: absolute;
	opacity: 0;
}
/* 質問 */
.accbox .acc_tab label {
	line-height: 1.6;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1.5em 2.5em 1.5em 1.5em;
	cursor: pointer;
	border-bottom: 1px solid #1b2538;
}
.accbox .acc_tab label:hover {
	color: #2EC4B6;
}

.news_date{
	padding-right: 25px
}

/* 答え */
.accbox .acc_tab .accshow {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.5s ease;
	        transition: max-height 0.5s ease;
	color: black;
	background: #FFFFFF;
}
.accbox .acc_tab .accshow p {
	margin: 1em;
}
/* 質問を開いた時の仕様 */
/* --アイコン */
.accbox .acc_tab input:checked ~ label {
	color: #2EC4B6;
}
/* --答えの高さ */
.accbox .acc_tab input:checked ~ .accshow {
	max-height: 40em;
}
/* 質問をクリックした時のアイコンの動き */
.accbox .acc_tab label::after {
	line-height: 1.6;
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 3em;
	margin-top: -12.5px;
	-webkit-transition: all 0.5s ease;
	        transition: all 0.5s ease;
	text-align: center;
}
.accbox .acc_tab input[type=checkbox] + label::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f078';
}
.accbox .acc_tab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}

/*ラベルの白丸を消す*/
.accbox label::before{
	border: 0px
}

/****Business****/
/*ショップ説明*/
.p_shop{
	font-size: 0.95em;
	padding-top: 10px
}

.fs_small{
	font-size: 0.9em
}

.partner{
	background: url("../img/common/partner_over.png") no-repeat;
	padding: 15px;
	width: 50%
}

.partner a{
	display: inline-block
}

.partner img{
	border: none
}

.partner a::hover{
	background: none;
}

.partner a::hover img{
	visibility: hidden
}

/*共通*/
.row01 {
	overflow: auto;
	padding: 5px 0;
}

.row02 {
	background: #fff;
	overflow: auto;
	padding: 40px 0;
}

.row03 {
	background: #4D4D4D;
	overflow: auto;
	padding: 40px 0;
}


/*リンクボタン*/
.top-content-link {
	margin-bottom: 56px;
	overflow: auto;
	width: 950px;
}

.top-content-link li {
	float: left;
	margin: 0.5px;
    height: 130px;
	overflow: hidden;
	position: relative;
	width: 315px;
}

.top-content-link li a:link,.top-content-link li a:visited {
	color: #fff;
}

.top-content-link li img {
    display: block;
    position: relative;
	transform: scaleY(1);
	transition: all 0.7s ease-in-out;
}

.top-content-link li .mask {
	background: rgba(0,0,0,0.65);
	width: 100%;
    height: 100%;
	padding: 24px 16px;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    transition: all 0.3s linear;
    opacity: 0;
}

.top-content-link li .mask h3{
	font-size: 18px;
	margin-bottom: 4px;
    transition: all 0.3s linear;
    opacity: 0;
}

.top-content-link li .mask p {
	margin-bottom: 0;
    transform: scale(0);
    transition: all 0.3s linear;
    opacity: 0;
}

/*マウスオーバー*/
.top-content-link li:hover img { 
	transform: scale(2);
    opacity: 0;
}
.top-content-link li:hover .mask { 
	opacity: 1;
}																			 
.top-content-link li:hover h3,
.top-content-link li:hover p{ 
    transform: scale(1);
    opacity: 1;
}

.top-content-link a:hover img {opacity: 1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";}

/*トータルソリューション*/
.top-about-area {
	background: #f9f9f9 url(../img/common/top-about-bg.jpg);
	background-repeat: no-repeat;
	overflow: auto;
	padding: 48px 0 32px;
}

.top-about-area h2 {
	margin-bottom: 32px;
	text-align: center;
}

.top-about-area .image {
	float: right;
}

.top-about-area .txt {
	float: left;
	width: 490px;
}

.top-about-area .txt p {
	letter-spacing: 0.1em;
	margin: 48px auto;
}

/*新着情報*/
.news-area {
	float: left;
	width: 600px;
}

.news-ttl {
	border-bottom: 3px solid #ccc;
	font-size: 19px;
	letter-spacing: 0.13em;
	padding-left: 21px;
	padding-bottom: 8px;
}

.news-ttl span.en {
	color: #999;
	font-family: Times New Roman, Times, serif;
	font-size: 14px;
	margin-left: 1em;
}

.news-wrap {
	display: table;
}

.news-wrap dl {
	display: table-row;
}

.news-wrap dl dt, .news-wrap dl dd {
	border-bottom: 1px solid #d1d1d1;
	display: table-cell;
	font-size: 13px;
	line-height: 1.75;
	padding: 21px;
	vertical-align: middle;
}

/*バナー*/
.banner-list {
	float: right;
}

.banner-list li {
	margin-bottom: 16px;
}

/*課金筐体 開発  Q&amp;A*/
.top-note .wrap {
	position: relative;
}

.top-note-ttl {
	display: block;
	background-color: #FB575A;
	
	font-size: 21px;
	padding: 9px 0 0 30px;
	height: 60px;
	margin-bottom: 24px;
}

.top-note-ttl a { display: block; color: #fff; text-decoration: none; letter-spacing: 2px;}

.top-note-ttl:hover {background: #940209;}

.top-note-ttl span.en {
	color: #999;
	font-family: Times New Roman, Times, serif;
	font-size: 16px;
	margin-left: 1em;
}

.note-wrap {
	display: flex;
}

.note-item {
	border-right: 1px dashed #999;
	padding: 8px 32px;
	width: 33.3%;
}

.note-item:last-child {
	border-right: none;
}

.note-item h3 {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 16px;
}

.note-item p {
	font-size: 13px;
	margin-bottom: 16px;
	color: #333;
}



.note-item a {display: block; text-decoration: none;}
.note-item:hover {background: #f0f0f0; }

.top-note .wrap .btn01.white-color {
	position: absolute;
	top: 10px;
	right: 30px;
	border: none;
	height:40px;
	color: red;
	margin: 0px;
	padding: 1px 20px;
}

/*カタログ・お問い合わせバナー*/
.top-btm-banner {
	margin: 32px 0;
}
.top-btm-banner li {
	display: inline-block;
	margin: 0 32px;
}

.top-btm-banner li a {
	font-size: 16px;
}

/*******下層ページ共通*******/
.contents {
	overflow: visible;
	padding: 40px 0;
}

/*大見出し*/
.main-ttl01 {
	font-size: 32px;
	border-bottom: 2px dotted#d1d1d1;
	line-height: 1;
	padding-bottom: 8px;
	position: relative;
	margin-top: 50px;
	margin-bottom: 50px
}

.main-ttl01::after {
	background-color: #2EC4B6;
	content: "";
	position: absolute;
	bottom: -2px; left: 0;
	height: 2px;
	width: 5%;
	z-index: 2;
}

.main-ttl01 .gray-small {
	color: #5c5c5c;
	font-size: 21px;
	margin-left: 1em;
}

/*小見出し*/
.main-ttl02 {
	font-size: 18px;
	border-left: 3px solid #2EC4B6;
	line-height: 1.85;
	margin-bottom: 0.75em;
	padding-left: 1.2em;
}

/*内容区切り*/
.inner {
	overflow: auto;
	padding-top:20px;
	padding-bottom: 20px;
}

.inner:last-child {
	margin-bottom: 0;
}

.inner_s {
	overflow: auto;
	padding-top:20px;
	padding-bottom: 20px;
}

/*テーブル*/
.table01 {
	border-top: 3px solid #2EC4B6;
	display: table;
	width: 100%;
}

.table01 dl {
	display: table-row;
}

.table01 dl dt,.table01 dl dd {
	border-bottom: 1px solid #ccc;
	display: table-cell;
	font-size: 16px;
	padding: 16px 24px;
	vertical-align: middle;
}

.table01 dl dt {
	border-right: 1px solid #ccc;
	text-align: center;
	width: 32%;
}

.table01 dl:nth-child(even) {
	background: #BAE4E3;
}

/*テーブル半幅*/
.table01s {
	border-top: 3px solid #2EC4B6;
	display: table;
	width: 45%;
}

.table01s dl {
	display: table-row;
}

.table01s dl dt,.table01s dl dd {
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	display: table-cell;
	font-size: 16px;
	padding: 16px 24px;
	vertical-align: middle;
	text-align: right;
}

.table01s dl dt {
	border-right: 1px solid #ccc;
	text-align: center;
	width: 60%;
}

.table01s dl:nth-child(even) {
	background: #EFFFE9;
}



/*******Table02*******/

.table02 {
	border-top: 3px solid #2EC4B6;
	display: table;
	width: 100%;
}

.table02 dl {
	display: table-row;

}

.table02 dl dt,.table02 dl dd {
	
	border-bottom: 1px solid #ccc;
	display: table-cell;
	font-size: 16px;
	padding: 16px 24px;
	vertical-align: middle;
}

.table02 dl dt {
	
	border-right: 1px solid #ccc;
	text-align: right;
	width: 32%;
}

.table02 dl:nth-child(even) {
	background: #EFFFE9;
}


/*******Table03*******/

.table03 {
	border-top: 3px solid #2EC4B6;
	display: table;	
	margin-bottom:30px;
	padding:10px;
	width:320px;
}

.table03 dl {
	display: table-row;

}

.table03 dl dt,.table03 dl dd {
	
	border-bottom: 1px solid #ccc;
	display: table-cell;
	font-size: 16px;
	
	vertical-align: middle;
}

.table03 dl dt {
	
	border-right: 1px solid #ccc;
	text-align: right;
	
}

.table03 dl:nth-child(even) {
	background: #EFFFE9;
}

/*******Table04*******/

.table04 {
	border-top: 3px solid #2EC4B6;
	
	width: 80%;
	
	margin-bottom:30px;
	
}

.table04 td, th {
	padding: 3px;
	height: 25px;
	line-height:2.8em;

}

.table04 td { text-align:center;}

.table04 hr{
	border-top: 1px dotted #8c8b8b;
}


/*******Table05*******/

.table05 {
	border-top: 3px solid #2EC4B6;
	display: table;
	width: 100%;
}

.table05 dl {
	display: table-row;

}

.table05 dl dt,.table05 dl dd {
	
	border-bottom: 1px solid #ccc;
	display: table-cell;
	font-size: 14px;
	padding: 10px 10px;
	vertical-align: middle;
}

.table05 dl dt {
	
	border-right: 1px solid #ccc;
	text-align: center;
	width: 50%;
}

.table05 dl:nth-child(even) {
	background: #EFFFE9;
}


/*******Table 制御方式*******/

.table_seigyo {
	width: 100%;
	margin-bottom:30px;
	margin-top: 50px;
}

.table_seigyo td, th {
	padding: 5px 20px;
	height: 20px;
	line-height:1.75em;
}
.table_seigyo td { 
	text-align:left;
	vertical-align: top;
	padding: 10px;
}
.table_seigyo th { 
border: 1px #2EC4B6 solid;
}

table.table_seigyo td.table_seigyo {
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #fff;
}

/*******下層アイキャッチ*******/
.icatch-page {
	height: 400px;
	position: relative
}

.icatch-page h1.page-ttl {
	color: #2EC4B6;
	font-size: 32px;
	letter-spacing: 0.1em;
	position: absolute;
	bottom: 10%;
}

.icatch-page h1.page-ttl2 {
	font-size: 32px;
	letter-spacing: 0.1em;
	position: absolute;
	bottom: 10%;
}

.icatch-page h1.page-ttl a { text-decoration:none;
color:#fff;}

.icatch-page h1.page-ttl a:hover { text-decoration:none;
color:#239389;}

.icatch-page h1.page-ttl2 a { text-decoration:none;
color:#3E3E3E;}

.icatch-page h1.page-ttl2 a:hover { text-decoration:none;
color:#239389;}


/*文字が黒だと見えない場合*/
.icatch-page h1.page-ttl.white {
	color: #fff;
	text-shadow: 0 0 12px rgba(0,0,0,0.7);
}

/*各ページアイキャッチ　idがディレクトリ名*/
.icatch-page#about {
	background: url(../img/about/ic_about.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.icatch-page#technical {
	background: url(../img/technical/ic_technical.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.icatch-page#development {
	background: url(../img/development/ichatch_dm.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.icatch-page#product {
	background: url("../img/product/bk_kyotaikiban.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.icatch-page#contact {
	background: url(../img/contact/ic_contact.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size:100% auto;
}

.icatch-page#dev {
	background: url(../img/technical/ic_technical.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}


#devmenu-box {}

#devmenu{
  width: 100%;
  max-width:1000px;
  margin: 0 auto;
  padding: 0;
}
#devmenu li{
  
  display: inline-block;
  width: 24%;
  margin: 0;
  padding: 8px 4px; }
#devmenu li a{
  display: block;
  padding: 12px 0 10px;
  	color: rgba(10,10,10,1);
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	border: 1px solid rgba(10,10,10,0.5);
  text-align: center;
  letter-spacing: 1px;
  
	text-decoration: none;
}
#devmenu li a:hover{
	 display: block;
  	background-color:rgba(10,10,10,0.2);
color:#000;
		-webkit-transition: .2s ease-in-out;
	-moz-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
#toggle{ 
 display: none;
}

/*やめる*/
.icatch-page-menu {height: 240px;
	
background: url("../img/development/ichatch_dm.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	padding-top:120px;
	margin-top:85px
}

.icatch-page-menu h1.page-ttl.white {
	font-size: 32px;
	letter-spacing: 0.1em;	
	color: #fff;
	text-shadow: 0 0 12px rgba(0,0,0,0.7);
}





/*******オクトについて*******/
.bg_gray {width:100%; background-color:#E7E7E7; }
.bg_red {width:100%; background-color:#EFFFE9; padding:50px 100px;}
.bg_white {width:80%; background-color:#FFF; padding:15px; margin-top:5px; border-radius:5px; font-size:12px;}

ul.about > li {
 width: 80%;
 list-style:none;
 text-indent: -1em;
 margin-left: 1em
}

ul.about > li::before{
	content: "●";
	color: #2EC4B6;
}

/*採用情報*/
.recruit_image{
	text-align: center;
	width: 100%;
	margin-top: 50px;
}

.recruit_image img{
	max-width: 100%;
	margin: 15px;
}

.font_atesaki{
	font-size: 1.3em
}


/*******製品・サービス一覧*******/
/*メインコンテンツ*/
.product-main {
	
	padding:10px 20px;
}

.tag {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	margin-bottom: 30px;
	text-align: center;
	padding: 0.3em 1em;
}
.tag-2 {
	background-color: #3a9dde;
	color: #fff;
	display: inline-block;
	font-size: 8px;
	text-align: center;
	padding: 0.65em 1em;
}
.tag-3 {
	background-color: #da76ba;
	color: #fff;
	display: inline-block;
	font-size: 8px;
	text-align: center;
	padding: 0.65em 1em;
}

.seriesbox {width:85%;
border: 1px solid #ccc;
	background-color:#FBFBFB;
	margin: 10px 15px;
	padding:10px;
	box-shadow:#FBFBFB 2px 2px 1px;
 display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;}
  
  
 .seriesbox a {text-decoration:none; color:inherit;}
.seriesbox:hover {background-color:#DFDFDF;
} 
  
  
  .photo_series { width:200px; border: solid 1px #CCC; background-color:white; margin-left:8px;
}


.leftcol_series {width:250px;
	text-align:center;
	}


.rightcol_series { width:450px;
	
	}


.right_cbez {width:85%; padding: 10px}

.col450{width:450px;}
.col200{width:200px;}


.productlist {width:320px;
border-radius: 8px;
margin:6px;

  border: 1px solid #fff;
  padding: 10px;
  background-color: #e5e5e5;
 }


.graybox {width:320px;
border-radius: 8px;
margin:15px;
  border: 1px solid #fff;
  padding: 10px;
  background-color: #e5e5e5;
 }

/****筐体・基板****/
.box-list {
	display: flex;
	flex-wrap: wrap;
	margin: 30px 0
}

.box-list .box-list-item {
	text-align: center;
	margin-bottom: 24px;
	width: 45%;
}

.box-list .box-list-item a {
	display: block;
	height: 150px;
	position: relative;
	border: 2px solid #ccc;
}

.box-list .box-list-item a:link,.box-list .box-list-item a:visited {
	color: #212125;
}

.box-list .box-list-item a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.box-list .box-list-item a .link-wrap {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}

.box-list .box-list-item a .link-wrap .center {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	padding: 0 24px;
}

.box-list .box-list-item a .link-wrap .ttl {
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 16px;
}

.box-list .box-list-item a .link-wrap .txt {
	display: block;
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 0;
}

.box-list .box-list-item a::before{
	content: "";
	bottom: 3px;
	right: 3px;
	border-top: 1.5em solid transparent;
	border-right: 1.5em solid #2EC4B6;
	position: absolute;
}

.height_normal{
	line-height: normal
}


/*サイドバー*/
.product-sidebar {
	
	width: 800px;
}

.sidebar-ttl {
	background: #e40005;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 8px;
	padding: 16px 24px;
}

.sidebar-ttl .en {
	font-size: 12px;
	font-weight: normal;
}

.accordion .btn {
	background: #5c5c5c;
	color: #fff;
	
	font-size: 15px;
	line-height: 1;
	padding: 16px 24px;
	position: relative;
}



.accordion .accordion-item {
	border-bottom: 1px solid #fff;
}

.accordion .accordion-item:last-child {
	border-bottom: none;
}

.accordion .child {
	display: none;
}

.accordion .child-item {
	border-bottom: 1px dashed #5c5c5c;
}

.accordion .child-item:last-child {
	border-bottom: none;
}

.accordion .child-item a {
	background: #EFFFE9;
	color: #212125;
	display: block;
	font-size: 15px;
	line-height: 1;
	padding: 16px 24px;
	border-bottom: none
}

.accordion .child-item a:hover {
	color: #2EC4B6;
	text-decoration: none;
}

.accordion .child-item a i {
	margin-right: 0.5em;
}


#opened{
    display:block !important;

}

/*******会社概要*******/

li.company {width:300px; text-align:left; font-size:small; box-sizing: border-box; max-width: 100%;}
.w600 {width:600px}




/*******課金筐体 開発  Q&amp;A*******/

/*******コピペット キャプションエフェクト*******/
figure.cp_caption {
	position: relative;
	overflow: hidden;
	width: 100%;
	min-width: 220px;
	max-width: 300px;
	max-height: 220px;
	margin: 5px 1%;
	color: #ffffff;
}

figure.cp_caption * {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
figure.cp_caption img {
	width: 100%;
	height: 100%;
}
figure.cp_caption figcaption {
	position: absolute;
	z-index: 1;
	top: 50%;
	padding: 2em 2em;
	transition: all 0.3s ease-out;
	transition-delay: 0.1s;
	opacity: 0;
}
figure.cp_caption:after {
	position: absolute;
	top: 0%;
	right: 3%;
	bottom: 0%;
	left: 3%;
	display: inline-block;
	content: '';
	transition: all 0.3s ease-out;
	opacity: 0;
	background: rgba(27, 37, 56, 0.8);
}
figure.cp_caption:hover:after {
	opacity: 0.9;
}
figure.cp_caption:hover figcaption {
	transform: translateY(-50%);
	opacity: 1;
}



figure.cp_caption_ver {
	position: relative;
	overflow: hidden;
	width: 100%;
	min-width: 300px;
	max-width: 300px;
	max-height: 420px;
	margin: 5px 1%;
	color: #ffffff;
}

figure.cp_caption_ver * {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
figure.cp_caption_ver figcaption {
	position: absolute;
	z-index: 1;
	top: 50%;
	padding: 5em 3em;
	transition: all 0.3s ease-out;
	transition-delay: 0.1s;
	opacity: 0;
}
figure.cp_caption_ver:after {
	position: absolute;
	top: 0%;
	right: 3%;
	bottom: 0%;
	left: 3%;
	display: inline-block;
	content: '';
	transition: all 0.3s ease-out;
	opacity: 0;
	background: rgba(27, 37, 56, 0.8);
}
figure.cp_caption_ver:hover:after {
	opacity: 0.9;
}
figure.cp_caption_ver:hover figcaption {
	transform: translateY(-50%);
	opacity: 1;
}

figure.cp_caption_ver2 {
	position: relative;
	overflow: hidden;
	width: 100%;
	min-width: 500px;
	max-width: 300px;
	max-height: 420px;
	margin: 5px 1%;
	color: #ffffff;
}

figure.cp_caption_ver2 * {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
figure.cp_caption_ver2 figcaption {
	position: absolute;
	z-index: 1;
	top: 50%;
	padding: 5em 3em;
	transition: all 0.3s ease-out;
	transition-delay: 0.1s;
	opacity: 0;
}
figure.cp_caption_ver2:after {
	position: absolute;
	top: 0%;
	right: 3%;
	bottom: 0%;
	left: 3%;
	display: inline-block;
	content: '';
	transition: all 0.3s ease-out;
	opacity: 0;
	background: rgba(27, 37, 56, 0.8);
}
figure.cp_caption_ver2:hover:after {
	opacity: 0.9;
}
figure.cp_caption_ver2:hover figcaption {
	transform: translateY(-50%);
	opacity: 1;
}







figure {margin-bottom: 10px;}

figcaption { text-align:center;}


h2#tech{ font-size: 18px;
	border-left: 3px solid #e40005;
	line-height: 1.85;
	margin-bottom: 0.75em;
	padding-left: 1.2em;
}

.technical-list {
	display: flex;
	flex-wrap: wrap;
}

.technical-list .technical-list-item {
	text-align: center;
	margin-bottom: 24px;
	width: 31%;
}

.technical-list .technical-list-item a {
	display: block;
	height: 150px;
	position: relative;
	border: 1px solid #ccc;
}

.technical-list .technical-list-item a:link,.technical-list .technical-list-item a:visited {
	color: #212125;
}

.technical-list .technical-list-item a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.technical-list .technical-list-item a .link-wrap {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}

.technical-list .technical-list-item a .link-wrap .center {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	padding: 0 24px;
}

.technical-list .technical-list-item a .link-wrap .ttl {
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 16px;
}

.technical-list .technical-list-item a .link-wrap .txt {
	display: block;
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 0;
}

.technical-list .technical-list-item a::before{
	content: "";
	bottom: 3px;
	right: 3px;
	border-top: 1.5em solid transparent;
	border-right: 1.5em solid #2EC4B6;
	position: absolute;
}

.techbox_ttl{
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	text-align: center;
	padding: 0.25em 1em;
	position: absolute;
	top: 3px;
	right: 3px;
}

/*******お問い合わせフォーム*******/
.form-table {
	border-top: 1px solid #ddd;
	display: table;
	margin-bottom: 32px;
	width: 800px;
}

dl.form-item {
	display: table-row;
}

dl.form-item dt,dl.form-item dd {
	border-bottom: 1px solid #ddd;
	display: table-cell;
	padding: 24px 16px;
	vertical-align: middle;
}

dl.form-item dt {
	font-weight: bold;
	width: 33%;
}

dl.form-item dd {
	width: 67%;
}

input, button, textarea {
	

	border-radius: 0;
}

input[type="text"],textarea {
	border: 1px solid #ccc;
	font-size: 14px;
	padding: 0.3em 0.5em;
}

input[type="text"].long {
	width: 60%;
}

input[type="text"].short {
	width: 30%;
}

textarea {
	width: 100%;
}

/* ラジオボタン */
input[type="radio"] {
	display: none;
}
label {
	position: relative;
	display: inline-block;
	margin-right: 0.5em;
	padding: 5px 3px 3px 1.6em;
	cursor: pointer;
}
label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 100%;
}
input[type="radio"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #3498db;
	border-radius: 100%;
}

input[type="submit"].submit {
	font-size: 14px;
	color: #fff;
	border: 1px solid #2EC4B6;
	background: #2EC4B6;
	padding: 5px 32px;
	cursor: pointer;
}

input[type="button"].reset {
	font-size: 14px;
	color: #212125;
	border: 1px solid #d1d1d1;
	background: #d1d1d1;
	padding: 5px 32px;
	cursor: pointer;
}

.important,.option {
	float: right;
    font-size: 12px;
}

.important {
    color: #e40005;
}

.option {
    color: #2EC4B6;
}

.error_messe {
    color: #e40005;
}

/*******開発例*******/
.exam{
	padding: 25px 0
}

/*背景白で下に三角の吹き出し風*/
.triangle_01{
	position: relative;
	background: #fff;
	padding: 10px 0
}
.triangle_01:before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	border-top-color: #fff;
	border-width: 40px;
	margin-left: -40px;
	z-index: 50
}

/*背景薄緑で下に三角の吹き出し風*/
.triangle_02{
	position: relative;
	background: #96ddc5;
	padding: 10px 0
}
.triangle_02:before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	border-top-color: #96ddc5;
	border-width: 40px;
	margin-left: -40px;
	z-index: 40
}

/*見出し*/
.exam h2{
	font-size: 2.8em;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 1px;
}
.exam h2 span{
	color: #8173e6
}
.exam h3{
	font-size: 1.8em;
	line-height: 0.8;
}
.exam h4{
	font-size: 1.4em;
	text-align: center;
	font-weight: 600;
	line-height: 1.5
}

/*ボックス*/
.box01 {
    position: relative;
    padding:0.25em 1em;
	margin: 100px 10px 40px;
	width: 300px;
	background-color:rgba(255,255,255,0.8);
	box-shadow: 2px 2px 7px gray
}
.box01:before,.box01:after{ 
    content:'';
    width: 20px;
    height: 25px;
    position: absolute;
    display: inline-block;
}
.box01:before{
    border-left: solid 2px #8173e6;
    border-top: solid 2px #8173e6;
    top: 5px;
    left: 5px;
}
.box01:after{
    border-right: solid 2px #8173e6;
    border-bottom: solid 2px #8173e6;
    bottom: 5px;
    right: 5px;
}
.box01 p {
	font-size: 0.9em;
    margin: 0; 
    padding: 15px;
}

/*つくりたいをカタチに背景画像*/
.exam_img01{
	background: url("../img/development/exam_01.png") no-repeat;
	background-size: contain;
	background-position: right 40% bottom 30%
}

/*端末写真一覧*/
#exam_photos {
   line-height: 0;
   -webkit-column-count: 5;
   -webkit-column-gap:   0px;
   -moz-column-count:    5;
   -moz-column-gap:      0px;
   column-count:         5;
   column-gap:           0px;
}
#exam_photos img {
  width: 100% !important;
  height: auto !important;
}
@media (max-width: 1200px) {
  #exam_photos {
  -moz-column-count:    4;
  -webkit-column-count: 4;
  column-count:         4;
  }
}
@media (max-width: 1000px) {
  #exam_photos {
  -moz-column-count:    3;
  -webkit-column-count: 3;
  column-count:         3;
  }
}
@media (max-width: 800px) {
  #exam_photos {
  -moz-column-count:    2;
  -webkit-column-count: 2;
  column-count:         2;
	padding: 3% 5%
  }
}
@media (max-width: 400px) {
  #exam_photos {
  -moz-column-count:    1;
  -webkit-column-count: 1;
  column-count:         1;
  }
}

/*端末開発例*/
.exam_dlm{
	position: relative;
	margin: 0;
	padding: 30px 0 0
}

.exam_dlm img{
	width: 100%
}

/*吹き出し多機能端末*/
.exam_dlm .box02 {
    position: absolute;
	bottom: 0%;
	left: 25%;
    padding: 0.5em 0.7em;
    margin: 2em 0;
    background: #fff;
 	width: 250px;
	z-index: 1
}
.exam_dlm .box02:after {
    position: absolute;
    content: '';
    top: 25%;
    left: -30px;
    border: 15px solid transparent;
    border-right: 15px solid #fff;
    width: 0;
    height: 0;
}
.exam_dlm .box02 h4{
    margin: 0; 
    padding: 0;
}
.exam_dlm .box02 p {
    margin: 0; 
    padding: 0;
}

/*吹き出しCB-BOX-Slim*/
.exam_dlm .box03 {
    position: absolute;
	top: 33%;
	left: 25%;
    padding: 0.5em 0.7em;
    margin: 2em 0;
    background: #fff;
 	width: 170px;
	z-index: 1
}
.exam_dlm .box03:after {
    position: absolute;
    content: '';
    top: 50%;
    left: 170px;
    border: 15px solid transparent;
    border-left: 15px solid #fff;
    width: 0;
    height: 0;
}
.exam_dlm .box03 h4{
    margin: 0; 
    padding: 0;
}
.exam_dlm .box03 p {
	font-weight: 600;
    margin: 0; 
    padding: 0;
}

.exam_dlm .btn01{
	margin: 7px 0;
	padding: 0.6em 0.9em;
	font-size: 12px
}

/*吹き出しKIOSK端末*/
.exam_dlm .box04 {
    position: absolute;
	top: 25%;
	right: 25%;
    padding: 0.8em 0.7em;
    margin: 2em 0;
    background: #fff;
 	width: 250px;
	z-index: 1
}
.exam_dlm .box04:after {
    position: absolute;
    content: '';
    bottom: -20%;
    left: 150px;
    border: 15px solid transparent;
    border-top: 15px solid #fff;
    width: 0;
    height: 0;
}
.exam_dlm .box04 h4{
    margin: 0; 
    padding: 0;
}
.exam_dlm .box04 p {
    margin: 0; 
    padding: 0;
}



/*あとで消す*/
.ttl_ex{
	font-size: 2em;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	margin: 25px 0
}

.ttl_ex span{
	font-size: 0.7em;
	font-weight: normal
}

.float_l_ex{
	float: left;
	width: 60%;
}

.float_r_ex{
	float: right;
	width: 40%;
	margin-top: 50px
}

/***開発部品スライド 別ver***/
  .loop_img {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    width: 50vw;
    overflow: hidden;
  }

  .loop_img ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .loop_img li {
    display: inline-block;
    width: calc(50vw / 2);
    min-width: 100px;
    margin: 0 10px 0 0;
    list-style: none;
    text-align: center;
  }

  .loop_img li a {
    display: block;
  }

  .loop_img li img {
    display: block;
    width: 100%;
    height: auto;
  }

  .loop_img li a:hover {
    opacity: .7;
  }

  .loop_img ul:first-child {
    -webkit-animation: loop 30s -15s linear infinite;
    animation: loop 30s -15s linear infinite;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
  }

  .loop_img ul + ul {
    -webkit-animation: loop2 30s  linear infinite;
    animation: loop2 30s linear infinite;
  }

  .loop_img:hover ul {
    animation-play-state: paused;
  }

@keyframes loop {
    0% {
      -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
      transform: translateX(100%);
    }
    to {
      -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
      transform: translateX(-100%);
    }
  }

  @-webkit-keyframes loop2 {
    0% {
      -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
      transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(-200%);
      -ms-transform: translateX(-200%);
      transform: translateX(-200%);
    }
  }

  @keyframes loop2 {
    0% {
      -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
      transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(-200%);
      -ms-transform: translateX(-200%);
      transform: translateX(-200%);
    }
  }

/*ラベルの白丸を消す*/
.exam_slider label::before{
	border: 0px
}
/*あとで消す終わり*/



/******開発の流れnew*******/
.flowbox{
	width: 460px;
	padding: 5px 10px 20px 10px
}

.flowimage{
	position: relative;
	border: solid 1px #CCC;
	background-color: #EFFFE9;
	margin:15px 0;
}

.flowimage p{
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	right: 4px;
	top: 4px;
}

/*******footer*******/
footer {
	font-size: 12px;
	clear: both;
	color: #5c5c5c;
	padding-top:80px;
}

.foot-navi {
	display: flex;
	width: 1000px;
}

.foot-navi .foot-navi-ttl {
	color: #FFFFFF;
	display: inline-block;
	font-size: 14px;
	margin-bottom: 12px;
	width: 100%;
	border-bottom: solid 1px #FFFFFF 
}

.foot-navi > li {
	width: 20%;
}

.foot-navi .child li {
	margin-bottom: 8px;
}

.foot-navi .child li a {
	color: #FFFFFF;
	font-size: 13px;
	text-decoration:none;
	border-bottom: none
}

.foot-navi .child li a:hover{
	color: #2EC4B6
}

.foot-navi .child li a i {
	margin-right: 0.5em;
}

.foot-navi2{
	display: block;
	color: #FFFFFF;
	font-size: 13px;
	width: 400px;
	padding: 5px 30px;
	margin: 0 0 0 auto;
}

.foot-navi2 a{
	color: #FFFFFF;
	text-decoration: none
}

.foot-navi2 a:hover{
	color: #2EC4B6
}

.foot-navi2 i{
	padding: 0 10px 10px 0;
}

.foot-navi2 ul li{
	float: left;
	padding-right: 10px
}

footer .wrap {
	display: flex;
	padding: 16px 0;
}

.foot-left {
	width: 50%;
}

.foot-logo {
	float: left;
	margin: 8px 24px 0 0;
}

.foot-logo img {
	width: 140px;	
}

.foot-logo a{
	border-bottom: none
}

.copy {
	text-align: right;
	margin-top: 32px;
	width: 50%;
}

.foot-left .info,.copy {
	margin-bottom: 0;
}

/*******カタログページ*******/


.catalogue {width:400px;
border: 1px solid #ccc;
	background-color:#FBFBFB;
	margin-bottom:40px;
	padding:10px;
	box-shadow:#FBFBFB 2px 2px 1px;
 display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;}


.catalogue_empty {width:400px;

	
	margin-bottom:40px;
	padding:10px;
}

.catalogue a {text-decoration:none; color:inherit;}
.catalogue:hover {background-color:#DFDFDF;
}


.photo_catalogue{ width:100px; height:142px; border: solid 1px #CCC; background-color:white; margin-left:8px;
}

.underline_p { border-bottom: dotted 1px #A1A1A1;
font-weight:bold; font-size: larger;
	}


.catalogue ul {
	

    font-size: 80%;
    padding-left: 15px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.catalogue li {
	list-style:disc inside;
    display: list-item;
    text-align: -webkit-match-parent;
}


.leftcol {
	width:120px;
	font-size:smaller;
	text-align:center;
	}


.rightcol {
	width:70%;
	}


/*******コインメック・ビルバリの購入について*******/
.cmbvmenuflex {
	width:100%;
	display: flex
}
  
.cmbvmenu{
	position: relative;
	height:200px;
	min-width:105px;
	width:auto;
	text-align:center;
	padding-top:5px;
	margin-bottom:10px;	
	border: 1px solid #A6A6A6;
	display: inline-block;
}	
	
.cmbvmenu:hover{
	border-color:#444444;
}	

.menutitle {
	background-color: #666666;
	color: #fff;
	display: block;
	width:100%;
	font-size: 11px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	bottom:0
}

.menutitle:hover { 
	background-color:#333333;
}

.flow {
	width:75%;	
}

.flow li {	
	border: 1px solid #ccc;
	background-color:#FBFBFB;
	padding:20px;
	line-height:1.8em;
	list-style-type:decimal;
	list-style-position: inside;
	padding-left:40px;
	text-indent:-1em;	
	}

.cmbv {
	position: relative;
	width:460px;
	border: 1px solid #ccc;
	margin: 10px 15px;
	padding:10px;
	box-shadow:#FBFBFB 2px 2px 1px;
	 display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;
}

.cmbvleft {
	padding:5px;
      float: left;
}

.cmbvright {
	padding:5px 0px 5px 10px;
	  float: right;
	
}

.cmbv_empty{
	width:460px;
	margin: 10px 10px;
	padding:10px;
}

.cmbv a {
	text-decoration:none;
	color:inherit;
	border-bottom: none
}

.cmbv:hover{
	background-color:#DFDFDF
}

.hinban { 
	width:350px;
	font-size:20px;
	font-weight:bold; 
	line-height:2em
}

.taiou { 
	width:350px; 
	font-size:13px
}

.conlux {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	top: 3px;
	right: 3px;
}

.fuji {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	top: 3px;
	right: 3px;
}

.nec {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 11px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	top: 3px;
	right: 3px;
}

.jcm {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	top: 3px;
	right: 3px;
}

.koa {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	text-align: center;
	padding: 0.3em 1em;
	position: absolute;
	top: 3px;
	right: 3px;
}

/**基板説明ページ用**/
.kiban {
	background-color: #2EC4B6;
	color: #fff;
	display: inline-block;
	font-size: 13px;
	text-align: center;
	padding: 0.3em 1em;
	top: 3px;
	right: 3px;
}

.kiban-p {
	position:absolute;
	top:3px;
	left:3px;
	right:300px}

.kiban-pr {
	position:absolute;
	top:3px;
	left:200px;
	right:100px}

.kiban-long {
	position:absolute;
	top:3px;
	left:3px;
	right:200px}

.kiban-waku {
	position: relative;
	width:460px;
	border: 1px solid #ccc;
	margin: 10px 15px;
	padding:10px;
	box-shadow:#FBFBFB 2px 2px 1px;
	 display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;
}

.kiban-waku img{
	align-self: flex-start
}

.table_waku tr td{
	border-bottom-style: none;
	border-bottom-color: none;
	border: none;
	padding: 0px;
	width: 25%;
}


/*******Table*******/
/**テーブルメインで使用**/
.table_main{
	width: 100%;
	margin-bottom: 20px
}

.table_main th{
	border: 1px solid #2EC4B6;
	font-weight: normal;
	background-color: #EFFFE9;
	text-align: center
}

.table_main td{
	border: 1px solid #CCC;
	font-weight: normal
}

/*テーブル　筐体・基板で使用*/
.table_02{
	width: 100%;
	min-width: 900px;
	margin-bottom: 20px;
	border-top: 3px solid #2EC4B6
}

.table_02 th{
	border: 1px solid #CCC;
	font-weight: normal;
	text-align: center;
	line-height: normal;
	padding: 20px 5px
}

.table_02 td{
	border: 1px solid #CCC;
	text-align: center
}

/*テーブル横スクロール*/
.table_scroll{
	overflow-x: scroll;
	margin-bottom: 30px;
	display: block;
	white-space: nowrap;
  -webkit-overflow-scrolling: touch;

}



#s_table {
	width: 650px;
	border-collapse: collapse;
	border-spacing: 0;
	margin-left: 60px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #4F4F4F;
	background-color: #EFFFE9;
	margin-bottom: 40px;
	font-size: 80%;
	line-height: 1.6;
}
#s_table td {
	padding: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #1A1A1A;
}
#s_table th {
	padding: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	font-weight: normal;
	text-align: left;
	border-right-width: 1px;
	border-right-style: dotted;
	
}

#ki_table, #ki02,#ki03 {
	border-collapse: collapse;
	border-spacing: 0;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #1A1A1A;
	background-color: #ffffff;
	font-size: 80%;
	line-height: 1.5;
}

#ki_table td, #ki02 td,#ki03 td {
    text-align: center;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #1A1A1A;
	padding: 5px 1px;
	table-layout: fixed;
}

#ki_table th, #ki02 th,#ki03 th {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	font-weight: normal;
	text-align: center;
	border-right-width: 1px;
	border-right-style: dotted;
	background-color: #EFEFCF;
}

.tablecenter {
	text-align: center;
}
.tableright {
	text-align: right;
}
.tablewhite {
	background-color: #FFF;
}



/*******商品検索*******/
/* ▼プルダウンメニューを囲む枠の装飾 */
.pulldownset {
   border-bottom: 1px solid #ddd;
   display: table-cell;
   padding: 24px 16px;
   vertical-align: middle;
   margin: 1em 0px;             /* 外側の余白：上下に1文字分 */
   padding: 1em;                /* 内側の余白：周囲に1文字分 */
   overflow: auto;              /* はみ出る場合は自動調整(スクロールバーを表示) */
}
/* ▼プルダウンメニューそのものの装飾 */
select {
   font-size: 1.2em;   /* 項目の文字サイズを1.2倍に */
}

/*******オリジナル券売機*******/
.kenbaiki_top{
	max-width: 1280px;
	margin-bottom: 35px;
	text-align: center
}

.kenbaiki{
	text-align: center;
	padding: 20px 0 20px 0;
}

.kenbaiki_ttl{
	font-size: 1.3em;
	font-weight: bold;
}

.kenbaiki figcaption{
	text-align: left
}

.kenbaiki_pd{
	padding: 40px 0 40px 0
}

.kenbaiki_box{
	width: 95%;
	border: solid 2px #ccc;
	padding: 2em;
	margin: 3em auto;
}

.kenbaiki_box div{
	display: inline-block;
	margin: 0 1.2em
}

.kenbaiki_table{
	margin: 20px 0;
}

.kenbaiki_table table{
	table-layout: fixed;
}

.kenbaiki_table th,td{
	border: 1px solid #CCC
}

.kenbaiki_table th{
	font-weight: normal;
	background: #2EC4B6
}

/*******Tick Touch*******/
/*共通*/
.tt_main section{
	margin: 0;
	padding: 60px 0
}

.tt_main h2{
	position: relative;
	font-size: 36px;
	color: #372f88;
	line-height: 1.5;
	display: block;
	padding: 0.25em 1em;
	margin: 35px 0;
	text-align: center
}
.tt_main h2:before, .tt_main h2:after{
	content: "";
	width: 20px;
	height: 30px;
	position: absolute;
	display: block
}
.tt_main h2:before{
	border-left: solid 2px #2EC4B6;
	border-top: solid 2px #2EC4B6;
	top: 0;
	left: 32%
}
.tt_main h2:after{
	border-right: solid 2px #2EC4B6;
	border-bottom: solid 2px #2EC4B6;
	bottom: 0;
	right: 32%
}
.tt_main .float_l h2:before{
	left: 20%
}
.tt_main .float_l h2:after{
	right: 20%
}
.tt_main .float_r h2:before{
	left: 20%
}
.tt_main .float_r h2:after{
	right: 20%
}

.tt_main h3{
	font-size: 22px
}

.tt_headline01{
	line-height: 1.8
}

/*Tick Touchとは*/
.tt_about_flex figcaption{
	text-align: left;
	line-height: 1.7
}

.tt_about_flex .tt_point{
	font-size: 20px;
	margin-right: 10px;
	line-height: 2.5;
	border-bottom: 2px solid #2EC4B6
}

/**フェードインエフェクト**/
/*画面外*/
.fadein {
    opacity : 0;
    transform : translate(0, 50px);
    transition : all 500ms;
    }

/*画面内*/
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }

/*左から順にフェードイン*/
.effect_fadein > .fadein:nth-of-type(2) {
    -moz-transition-delay:200ms;
    -webkit-transition-delay:200ms;
    -o-transition-delay:200ms;
    -ms-transition-delay:200ms;
    }

.effect_fadein > .fadein:nth-of-type(3) {
    -moz-transition-delay:400ms;
    -webkit-transition-delay:400ms;
    -o-transition-delay:400ms;
    -ms-transition-delay:400ms;
    }

.effect_fadein > .fadein:nth-of-type(5) {
    -moz-transition-delay:200ms;
    -webkit-transition-delay:200ms;
    -o-transition-delay:200ms;
    -ms-transition-delay:200ms;
    }

.effect_fadein > .fadein:nth-of-type(6) {
    -moz-transition-delay:400ms;
    -webkit-transition-delay:400ms;
    -o-transition-delay:400ms;
    -ms-transition-delay:400ms;
    }

/***ラインナップ***/
.tt_name01{
	color: #372f88;
	font-size: 30px;
	margin-right: 20px
}

/***特長比較***/
.tt_name02{
	font-size: 36px;
	position: relative;
	display: inline-block
}
.tt_name02:before{
	content: "";
	position: absolute;
	display: inline-block;
	left: 0;
	bottom: -8px;
	width: 40px;
	height: 5px;
	background-color: #2EC4B6
}

/***アプリ***/
/*画像変移*/
#tt_app {
    width: 480px;
	max-width: 90%;
    height: 300px;
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
    position: relative;
}
#tt_app img {
    top: 0;
    left: 0;
    position: absolute;
}
/*アプリ連携協力*/
.tt_app_cprt{
	background-color: #fff;
	padding: 20px;
	margin: 35px 0
}
.tt_app_cprt img{
	margin: 10px auto 30px
}
.tt_app_cprt ul li{
  	position: relative;
  	list-style-type: none;
  	margin-bottom: 5px;
}
.tt_app_cprt ul li:before{
  	display:inline-block; 
  	vertical-align: middle;
  	content:'';
  	width:0.8em;
  	height: 0.8em;
  	background: #372f88;
  	border-radius: 50%;
  	margin-right: 8px;
	margin-bottom: 1px
}
.tt_app_point{
	border-bottom: solid 2px #372f88;
	padding-left: 5px;
	color: #372f88;
	font-size: 1.2em;
	letter-spacing: 1.5px;
	font-weight: 600
}

/***導入プラン***/
/*タブ切り替え*/
.tab_01 *, .tab_01 *:before, .tab_01 *:after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.tab_01 {
	margin: 3em auto;
}
.tab_01 > input[type='radio'] {
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	background: none;
	-webkit-appearance: none;
	        appearance: none;
	display: none;
}
.tab_01 .tab_panels {
	position: relative;
	min-height: 230px;/* エリアの高さ */
}
.tab_01 .tab_panel {
	position: absolute;
	width: 100%;
	opacity: 0;
	padding: 2em;
	transform: translateY(-10px);
	-webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
	transition: opacity 0.5s, -webkit-transform 0.5s;
	transition: transform 0.5s, opacity 0.5s;
	transition: transform 0.5s, opacity 0.5s, -webkit-transform 0.5s;
}
.tab_01 > input:first-child:checked ~ .tab_panels > .tab_panel:first-child,
.tab_01 > input:nth-child(3):checked ~ .tab_panels > .tab_panel:nth-child(2),
.tab_01 > input:nth-child(5):checked ~ .tab_panels > .tab_panel:nth-child(3),
.tab_01 > input:nth-child(7):checked ~ .tab_panels > .tab_panel:nth-child(4),
.tab_01 > input:nth-child(9):checked ~ .tab_panels > .tab_panel:nth-child(5),
.tab_01 > input:nth-child(11):checked ~ .tab_panels > .tab_panel:nth-child(6) {
	opacity: 1;
	transform: translateY(0px);
}
.tab_01 > input:first-child:checked ~ .tab_panels > .tab_panel:first-child {
	background: #fff;
}
.tab_01 > input:nth-child(3):checked ~ .tab_panels > .tab_panel:nth-child(2) {
	background: #eee;
}
.tab_01 > input:nth-child(5):checked ~ .tab_panels > .tab_panel:nth-child(3) {
	background: #ddd;
}
.tab_01 > label {
	position: relative;
	display: inline-block;
	padding: 5px 10px;
	cursor: pointer;
	border-radius: 6px 6px 0 0;
	font-weight: bold;
	color: #2EC4B6
}
.tab_01 > input:first-child + label {
	background: #fff;
}
.tab_01 > input:nth-child(3) + label {
	background: #eee;
}
.tab_01 > input:nth-child(5) + label {
	background: #ddd;
}
.tab_01 > label:hover {
	color: #372f88;
}
.tab_01 > input:focus + label {
	color: #ffffff;
}
.tab_01 > input:checked + label {
	margin-bottom: -1px;
}

/*ラベルの白丸を消す*/
.tab_01 label::before{
	border: 0px;
	background: none
}
.tab_01 input[type="radio"]:checked + label::after {
	background: none;
}

/*タブ内容デザイン*/
.tab_panel p:first-child{
	font-size: 18px;
}
.tab_panel p span{
	margin-right: 10px;
	padding: 0px 5px;
	color: #fff;
	background: #2EC4B6
}
.tab_panel p:nth-child(2){
	color: #372f88
}
.tab_panel ol{
	counter-reset: number;
}
.tab_panel ol li{
	position: relative;
	padding-left: 30px;
	line-height: 1.5em;
	padding: 0.5em 0.5em 0.5em 30px;
	border-bottom: dashed 1px #2EC4B6
}
.tab_panel ol li:before{
  position: absolute;
  counter-increment: number;
  content: counter(number);
  display:inline-block;
  background: #2EC4B6;
  color: white;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.tab_panel ol li:last-of-type {
  border-bottom: none;
}
/*******メンテナンス品一覧*******/

figure.mt {text-align:center;
border:1px dotted #C4C4C4; 
padding:20px;
margin:10px;
width:450px;

}

figure figcaption.mt {
	position:relative;
	bottom:0;
  padding: 0 1em;
  width: 100%;
  line-height: 3;
  color: red;
 

}

.caution {
	position: relative;
	width:60%;
	border: 1px solid #ccc;
	background-color:#FBFBFB;
	padding:10px 40px 20px;
	
	line-height:1.8em;
	
	
	}

.label {
	text-align:center;
	color:#D70104;
	line-height:2.5em;
}



/*******上へ戻るボタン*******/
#page-top {
	background: #2EC4B6;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	text-align: center;
	padding-top: 12px;
	position: fixed;
	bottom: 5%;
	right: 5%;
	width: 50px;
	height: 50px;
	z-index: 100 /*後から追加*/
}


/*******newボタン*******/

span.text-icon {
    display: inline-block;
    background: #df002c;
    padding: 1px 5px;
    margin-left: 5px;       /* 先行する文字列との間隔 */
    vertical-align: middle; /* 先行する文字列と上下中央揃え */
    font-size: 0.6em;
    font-weight: bold;
    color: #fff;
    border-radius: 3px;     /* アイコンの角を丸める */
}

.bk_l {
    position: relative;
    background-image: url(../img/development/resin_l_bk.png);
    height: 100%; 
    background-position: left bottom;
    background-size: 50% auto;
    background-repeat: no-repeat;
	overflow: hidden;
}

.bk_r {
    position: relative;
    background-image: url(../img/development/resin_r_bk.png);
    height: 100%; 
    background-position: right bottom;
    background-size: 50% auto;
    background-repeat: no-repeat;
}


/*******動画*******/
.wrap-video,.wrap-video_02{
  position: relative;
}

.wrap-video video{
  width: 100%;
  height:100%;
  filter: contrast(85%) sepia(20%) brightness(110%);	
  -ms-filter: contrast(85%) sepia(20%) brightness(110%);
  -webkit-filter: contrast(85%) sepia(20%) brightness(110%);
}

/*02はTick Touchムービー*/
.wrap-video_02 video{
  width: 100%;
  height:100%;
  filter: contrast(85%) brightness(110%);	
  -ms-filter: contrast(85%) brightness(110%);
  -webkit-filter: contrast(85%) brightness(110%);
}

.wrap-video p,.wrap-video_02 p{
	position: absolute;
	color: #fff;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
  	-webkit-transform: translate(-50%,-50%);
  	transform: translate(-50%,-50%);
	margin: 0;
	padding: 0;
	text-shadow: 1px 1px 3px #000;
	font-size: 3vw;
	font-weight: bold;
	z-index: 100;
}
.wrap-video p span,.wrap-video_02 p span{
	font-size: 5vw;
}

.wrap-video img,.wrap-video_02 img{
	width: 100%
}

.wrap-video .dotImg,.wrap-video_02 .dotImg {
  width: 100%;
  height: 100%;
  position: absolute;
  background: url("../img/common/dot.png") repeat;
  opacity: 0.3;
  z-index: 1;
}
hr {
  border-top: 1px dashed #bbb;
}





/*******電子マネー*******/
.cash-bg {
  background: linear-gradient(90deg,#fff 0%,#fff 30%,#efffe9 30%,#efffe9 100%);
  padding: 20px;
  height: 500px;
  width: 100%;
}

.cash-bg_left {
   float: left;
   width: 100%;
   height: 500px;
   padding: 0px 0px 0px 100px;
}

.cash-bg_right {
   background-image: url(../img/product/money.png);
   background-repeat: no-repeat;
   background-position: right bottom;
   background-size: 65%;
   width: 950px;
   height: 480px;
   padding: 60px 0px 0px;
}

.cash-bg_right > h3{
	padding-top: 50px
}

.card-group{
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  width: 100%;
  height: auto;
  
   /* 注目 */
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.card{
 
  /* 注目 */
  width: calc((100% - 20px * 2) / 3);    
  height: auto;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,.2);
	margin-bottom: 15px
}

.card__imgframe{
  width: 90%;
  height: auto;
  background: #fff;
  box-sizing: border-box;
  padding: 10px 0px 0px;
  overflow: hidden;
}

.card__textbox{
  width: 100%;
  height: auto;
  padding: 20px 18px;
  background: #fff;
  box-sizing: border-box;
}

.card__textbox > * + *{
  margin-top: 10px;
}

.card__titletext{
  font-size: 20px;
  font-weight: bold;
  line-height: 125%;
  text-align: center;
}

.card__overviewtext{
  font-size: 12px;
  line-height: 150%;
}

.cash_kiban{
	padding-top: 80px 
}

/*******基板紹介*******/

/*contents_2（2カラムを囲むブロック）
---------------------------------------------------------------------------*/
.contents_2 {
	clear: both;overflow: hidden;
	padding-top: 30px;		/*上に空けるボックス内の余白*/
	padding-bottom: 30px;	/*下に空けるボックス内の余白*/
	width:100%;
  display: -webkit-flex; /* Safari */
  display: flex;
  -webkit-flex-direction: row; /* Safari */
  flex-direction:         row;

  -webkit-justify-content: center; /* Safari */
  justify-content:stretch;
  flex-flow: row wrap;
 -webkit-flex-wrap: wrap; /* Safari */
  flex-wrap:         wrap;
	
  }

_:-ms-lang(x), アイテムのセレクタ { width:480px; } 


/*contents-in（mainとsubを囲むブロック）
---------------------------------------------------------------------------*/
#contents-in {
	float: left;	/*左に回り込み*/
	width: 100%;		/*ブロックの幅*/		
}
/*２カラム時*/
.c2 #contents-in {
	float: none;
	width: auto;
}

/*mainコンテンツ（中央のブロック）
---------------------------------------------------------------------------*/
#main {
	float: right;	/*右に回り込み*/
	width: 75%;		/*ブロックの幅*/
}
/*コンテンツの段落タグ設定*/
#main p {
	padding: 0px 15px 20px;	/*上、左右、下への余白*/
	color: #212125;
}

/*一覧ページの各ブロック
---------------------------------------------------------------------------*/
/*各ボックスの設定*/
#main .list {
	position: relative;overflow: hidden;
	margin-bottom: 20px;
	padding: 20px 20px 20px;		/*ボックス内の余白。ここを変更する際は、下の「.list a」のpaddingとmarginの数字も合わせる。marginの方はマイナス記号を忘れずに。*/
	border: 1px solid #dcdcdc;	/*枠線の幅、線種、色*/
	background-image: linear-gradient(#FFF, #e3e3e3);	/*グラデーション*/
	box-shadow: 0px 2px 5px #ccc, 0px 0px 0px 1px #fff inset;	/*影の設定。右へ・下へ・ぼかし幅・色の設定, ＋内側への影を右・下・ぼかし幅・距離・色を設定*/
}
#main .list a {
	text-decoration: none;display: block;overflow: hidden;
	padding: 10px 20px;
	margin: -20px;
}
/*マウスオン時の背景色*/
#main .list a:hover {
	background: #fff;
}
/*リンクを貼った際に出る「詳しくはこちら」*/
#main .list a::before {
	content: "〉 関連ページ";	/*出力する文字。変更しても構いませんが機種依存文字は化けるので使わないで下さい。*/
	font-size: 14px;	/*文字サイズ*/
	display: block;
	position: absolute;
	right: 20px;	/*ボックスの右から10pxの場所に配置*/
	bottom: 20px;	/*ボックスの下から10pxの場所に配置*/
	width: auto;	/*幅*/
	line-height: 30px;	/*高さ*/
	text-align: center;
	background: #ccc;	/*背景色（古いブラウザ用）*/
	background: rgba(0,0,0,0.2);	/*背景グラデーション。0,0,0は黒の事で、0.3は透明度30%の事。*/
	color: #fff;	/*文字色*/
	padding: 0em 1em;

}
/*マウスオン時の「詳しくはこちら」*/
#main .list a:hover::before {
	background: #2EC4B6;	/*背景色*/
}
/*ボックス内のh4タグ設定*/
#main .list h4 {
	padding-left: 10px;	/*枠線とテキストとの間の余白*/
	padding-bottom: 5px;
 	border-bottom: 1px solid #CCC;	/*下側の線の幅、線種、色*/
	border-left: 3px solid #2EC4B6;	/*左側の線の幅、線種、色*/
	margin-bottom: 1.5em;
	color: #2EC4B6;	/*文字色*/
}
/*ボックス内のp(段落)タグ設定*/
#main .list p {
	padding: 0px !important;
}
/*ボックス内の画像*/
#main .list figure {
	float: left;	/*左に回り込み*/
	width: 40%;
	background: #FFF;	/*画像の背景色。ここでは枠線と画像の間の色になります。*/
	padding: 1%;			/*余白。ここに上の行で設定した背景色が出ます。*/
	border: 1px solid #CCC;	/*枠線の幅、線種、色*/
	margin-right: 20px;
}
/*マウスオン時のボックス内の写真設定。ボックスにoption2スタイルが指定された場合の画像の設定。*/
.list.option2 a:hover figure img,
.list.option2 figure img {
	opacity: 0.3 !important;	/*半透明にする設定*/
}
/*登録日情報*/
#main .list .date {
	display: block;
	font-size: 11px;	/*文字サイズ*/
	color: #999;		/*文字色*/
	text-align: right;	/*テキストを右側に*/
}

/*一覧ページの各ボックス内のテーブル（※CMS用）
---------------------------------------------------------------------------*/
#main .list table {
	font-size: 12px;	/*文字サイズ*/
	width: 63%;			/*テーブル幅*/
	margin-bottom: 5px;
	background: #fff;	/*背景色*/
}
#main .list table,
#main .list table td,
#main .list table th{
	border: 1px solid #dcdcdc;	/*枠線の幅、線種、色*/
}
#main .list table td,
#main .list table th{
	padding: 1%;	/*テーブル内の余白*/
}
/*色のついた見出しブロック*/
#main .list table th{
	width: 20%;		/*幅*/
	text-align: center;		/*文字をセンタリング*/
	font-weight: normal;	/*デフォルトの太字を標準にする設定*/
	background: #edf0f5;	/*背景色*/
}
/*白い説明用ブロック*/
#main .list table td {
	width: 30%;	/*幅*/
}

/*詳細ページの画像切り替え（imgchg_pack.js）※一般のhtmlテンプレートで利用。
---------------------------------------------------------------------------*/
/*大きな画像のボックスと説明文を入れるボックス*/
#item-image {
	position: relative;
}
/*大きな画像の１行目*/
#item-image #item_image1 {
	z-index:2;
	position:relative;
	overflow:hidden;
}
/*大きな画像の２行目*/
#item-image #item_image2 {
	z-index:1;
	position:absolute;
	left:0px;
	top:0px;
	overflow:hidden;
}
/*サムネイル画像*/
.thumbnail {
	width: 80px;	/*画像の幅*/
	height: 80px;	/*画像の高さ*/
	border: 1px solid #dcdcdc;	/*枠線の幅、線種、色*/
	margin-bottom: 15px;
}
.thumbnail:hover {
	border: 1px solid #999;	/*マウスオン時の枠線の幅、線種、色*/
}

/*subコンテンツ（左側のブロック）
---------------------------------------------------------------------------*/
#sub {
	float: left;	/*左に回り込み*/
	width: 200px;	/*ブロックの幅*/
}

/*２カラム時*/
.c2 #side {
	display: none;	
}

/*sub,side共通設定
---------------------------------------------------------------------------*/
/*h2見出しタグ設定*/
#sub h2,
#side h2 {
	text-align: center;	/*文字をセンタリング*/
	border-top: 3px solid #2EC4B6;		/*上の線の幅、線種、色*/
	border-right: 1px solid #cfcfcf;	/*右の線の幅、線種、色*/
	border-bottom: 1px solid #cfcfcf;	/*下の線の幅、線種、色*/
	border-left: 1px solid #cfcfcf;		/*左の線の幅、線種、色*/
	padding: 8px 0px;	/*上下、左右への余白*/
	margin-bottom: 10px;
	background: #fff;	/*背景色*/
	color: #2EC4B6;	/*文字色*/
	font-size: 13px;
	font-weight: bold;
}
/*段落タグ（p）設定*/
#sub p,
#side p {
	padding-bottom: 20px;	/*段落タグの下に空けるスペース*/
	line-height: 1.6;		/*行間を少し狭く*/
}

/*box1設定（sub,sideで使っています）
---------------------------------------------------------------------------*/
/*box1設定*/
#sub .box1,
#side .box1 {
	background: #EFFFE9;			/*背景色*/
	border: 1px solid #dedede;	/*枠線の幅、線種、色*/
	padding: 10px;				/*ボックス内の余白*/
	margin-bottom: 20px;		/*ボックスの下にあけるスペース*/
	width: 190px;
}
/*box1の中にある段落タグをなくす設定*/
#sub .box1 p,
#side .box1 p {
	margin-bottom: 0px;
}
/*box1の中にある段落タグが続いた場合に間に空けるスペース*/
#sub .box1 p + p,
#side .box1 p + p {
	margin-bottom: 10px;
}

/*submenu（sub,sideのメニュー）
---------------------------------------------------------------------------*/
/*メニューブロック全体の設定*/
#sub .submenu,
#side .submenu {
	border-top: 1px solid #cfcfcf;		/*上側の線の幅、線種、色*/
	border-right: 1px solid #cfcfcf;	/*右側の線の幅、線種、色*/
	border-left: 1px solid #cfcfcf;		/*左側の線の幅、線種、色*/
	margin-bottom: 20px;	/*メニューブロックの下にあけるスペース*/
}
/*メニュー１個ごとの設定*/
#sub .submenu li a,#sub .submenu li span,
#side .submenu li a {
	text-decoration: none;display: block;
	border-bottom: 1px solid #cfcfcf;	/*下側の線の幅、線種、色*/
	padding: 5px 10px 5px 2px;	/*上下、左右のボックス内の余白*/
	background: #FFF;	/*背景色*/
	color: #212125;
	font-size: 12px;
	text-indent:1em;
}

/*マウスオン時*/
#sub .submenu li a:hover,#sub .submenu li span:hover,
#side .submenu li a:hover {
	background: #dcdcdc;	/*背景色*/
	color: #212125;	/*文字色*/
}

/*h2見出しにsubmenuが続いた場合*/
#sub h2 + .submenu,
#side h2 + .submenu {
	border-top: none;	/*メニューの一番上の線を消す設定*/
	margin-top: -10px;	/*h2見出しの下の余白を相殺する*/
}
/*box1内のsubmenu*/
#sub .box1 .submenu,
#side .box1 .submenu {
	margin-bottom: 0;	/*下に余分な余白ができるのをなくす*/
}
/*box1内でsubmenuが続いた場合にsubmenu間にとるスペース。この指定がないとくっついてしまいます。*/
#sub .box1 .submenu + .submenu,
#side .box1 .submenu + .submenu {
	margin-top: 10px;
}

/*sub,sideコンテンツ内のおすすめ一覧ブロック
---------------------------------------------------------------------------*/
/*各ボックスの設定*/
#sub .list, #side .list {
	position: relative;overflow: hidden;
	font-size: 10px;	/*文字サイズ*/
	line-height: 1.2;	/*行間を狭くする*/
}
#sub .list a, #side .list a {
	text-decoration: none;display: block;overflow: hidden;
	padding: 10px;	/*ボックス内の余白*/
	border-top: 1px solid #cfcfcf;	/*上の線の幅、線種、色*/
	background: #fff;	/*背景色*/
}
/*ボックス内のh4タグ設定*/
#sub .list h4, #side .list h4 {
	font-weight: bold;
}
#sub .list p, #side .list p {
	padding: 0 !important;
}


/*絞りこみ設定*/
.search_item {
    display: inline-block;
    padding: 3px;
    cursor: pointer;
}

.submenu.is-active {
	color: white;
	background-color: black;
}

.is-hide {
	display: none;
}

/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px){
/*contents（３カラムを囲むブロック）
---------------------------------------------------------------------------*/
#contents {
	padding-top: 0px;
}

/*main,sub,side,contents-in
---------------------------------------------------------------------------*/
#main, #sub, #side, #contents-in {
	float: none;
	width: auto;
}

#main ul, #main li {
	font-size: 15px;	/*文字サイズ*/
}

#main p {
	font-size: 10px;	/*文字サイズ*/
}


/*sub,sideコンテンツ内のおすすめ一覧ブロック
---------------------------------------------------------------------------*/
/*ボックス内の写真設定*/
#sub .list figure img, #side .list figure img {
	width: 20%;		/*写真の幅*/
}

/*その他
---------------------------------------------------------------------------*/
body.s-n #sub,body.s-n #side,body.s-n #footermenu {display: none;}
.sh {display:block;}
.pc {display:none;}

}


/*******cb-box-self*******/
/*共通*/
.wrap_1500 {
	overflow:visible;
	width: 1500px;
	padding-top: 10px;
}

.cbs_main section{
	margin: 0;
	padding: 10px 0
}

.triangle_03 p{
	font-size: 25px	
}

.cbs_link {
    position: relative;
	width: 1500px;
}
.cbs_img1 {
    position: absolute;
	left: 55%;
    bottom: 3%;
}
.cbs_img2 {
    position: absolute;
	left: 78%;
    bottom: 3%;
}

.cbs_img3 {
    position: absolute;
	left: 40%;
    bottom: 7%;
}
.cbs_img4 {
    position: absolute;
	right: 20%;
    bottom: 7%;
}

.cbs_img3_sp {
	position: absolute;
	bottom: 30%;
	right: 7%;
}

.cbs_img4_sp {
	position: absolute;
	right: 7%;
	bottom: 10%;
}

.cbs_img7 {
	position: absolute;
	right: 23.7%;
	bottom: 70%;
}

.cbs_img5_sp {
    position: absolute;
	left: 3%;
    bottom: 3%;
}
.cbs_img6_sp {
    position: absolute;
	left: 52%;
    bottom: 3%;
}

.cbs_img8_sp {
	position: absolute;
}

.cbs_img9 {
	position: absolute;
	right: 41.5%;
	bottom: 19%;
}



.cbs_img10 {
	position:relative;
}

.neoregi_img_pc {
	margin-top: 50px;
}


.cbs_main h2{
	position: relative;
	font-weight: bold;
	color: #1c3d57;
	line-height: 1.5;
	display: block;
	padding: 0.25em 1em;
	margin: 15px 0;
	text-align: center;
	font-size: 2vw;
}

.cbs_main h2 span{
	font-weight: bold;
	color: #e44f1a;
	font-size: 4vw;
}
/*背景白で下に三角の吹き出し風*/
.triangle_03{
	position: relative;
	background: #1c3d57;
	padding: 10px 0
}
.triangle_03:before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	border-top-color: #1c3d57;
	border-width: 40px;
	margin-left: -40px;
	z-index: 50
}

/*背景薄緑で下に三角の吹き出し風*/
.triangle_04{
	position: relative;
	background-size: 4px 4px;
	background-image: linear-gradient(-45deg,#fff 25%, #d2e2f1 25%, #d2e2f1 50%, #fff 50%, #fff 75%,#d2e2f1 75%, #d2e2f1);
	padding: 10px 0;
}
.triangle_04:before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	border-top-color: #e8f0f8;
	border-width: 40px;
	margin-left: -40px;
	z-index: 40;
}

.cbs_text{
	font-size: 2.5em;
	text-align: center;
	color: #fff;
}

.ribbon14-wrapper {  
  display: block;
  position: relative;
  margin: 15px auto;
  padding: 10px;
  width: 300px;
  background: #fff;
  box-sizing: border-box;
  border: solid 1px #b3b3b3;/*線*/
  border-radius: 10px;/*角の丸み*/
  }

.ribbon14 {  
  display: inline-block;
  position: absolute;
  top: -10px;
  right: 135px;
  margin: 0;
  padding: 0;
  z-index: 2;
  width: 40px;
  text-align: center;
  color: white;
  background: #e44f1a;
}

.ribbon14:before {
  position: absolute;
  content: '';
  top: 0;

  border: none;
}

.ribbon14:after {
  content: '';
  position: absolute;
  left: 0;
  top: 100%;
  height: 0;
  width: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 20px solid #e44f1a;
}

.cbs_name01{
	color: #e44f1a;
	font-size: 1.3vw;
	font-weight:bold;
}

.font_small{
	font-size: 0.8em;
}

.contents-cbs {
	overflow: visible;
	padding: 0;
}

/*******Neo_cb-box-self*******/
/*共通*/
.n_cbs_main section{
	margin: 0;
	padding: 50px 0
}

.triangle_05 p{
	font-size: 25px	
}

.n_cbs_main h2{
	position: relative;
	font-weight: bold;
	color: #1c3d57;
	line-height: 1.5;
	display: block;
	padding: 0.25em 1em;
	margin: 15px 0;
	text-align: center;
	font-size: 2vw;
}

.n_cbs_main h2 span{
	font-weight: bold;
	color: #D34E69;
	font-size: 4vw;
}
/*背景白で下に三角の吹き出し風*/
.triangle_05{
	position: relative;
	background: #75C7C9;
	padding: 10px 0
}
.triangle_05:before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	border-top-color: #75C7C9;
	border-width: 40px;
	margin-left: -40px;
	z-index: 50
}

/*背景薄緑で下に三角の吹き出し風*/
.triangle_06{
	position: relative;
	background:#E3F4F4;
	padding: 70px 0;
}
.triangle_06:before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	border-top-color: #E3F4F4;
	border-width: 40px;
	margin-left: -40px;
	z-index: 40;
}

.n_cbs_text{
	font-size: 2.5em;
	text-align: center;
	color: #2B2F4D;
}

.n_ribbon14-wrapper {  
  display: block;
  position: relative;
  margin: 15px auto;
  padding: 10px;
  width: 300px;
  background: #fff;
  box-sizing: border-box;
  border: solid 1px #b3b3b3;/*線*/
  border-radius: 10px;/*角の丸み*/
  }

.n_ribbon14 {  
  display: inline-block;
  position: absolute;
  top: -10px;
  right: 135px;
  margin: 0;
  padding: 0;
  z-index: 2;
  width: 40px;
  text-align: center;
  color: white;
  background: #D34E69;
}

.n_ribbon14:before {
  position: absolute;
  content: '';
  top: 0;

  border: none;
}

.n_ribbon14:after {
  content: '';
  position: absolute;
  left: 0;
  top: 100%;
  height: 0;
  width: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 20px solid #D34E69;
}

.n_cbs_name01{
	color: #D34E69;
	font-size: 25px;
	font-weight:bold;
	font-size: calc(A + B * (100vw - C)/D);
}

.editor-tou {

  width: 80%;

  height: 400px;

  overflow: scroll;

  border: black 2px solid;

}


.monitor_item{
	width: 100%;
	
	height: 40px;
	
	background-color: #C84C65;
	
	color: white;
}

.monitor_icon{
	
  	text-align: center;
	/*border: solid;*/
	max-width: 300px;
}

.iconbox{
	display: flex;
	flex-wrap: wrap;
	margin: auto;
	/*border: solid;*/
	justify-content: space-between;
}

.icontext{
	/*border: solid;*/
}

.application_btn{
	text-align: center;
}

/*modal*/

.modal{
display: none;
height: 100vh;
position: fixed;
top: 0;
width: 100%;
z-index: 999999;
}
.close-btn{
text-align: right;
text-decoration: none;
font-size: 1.8rem;
color: #666;
}
.modal-bg{
background: rgba(0,0,0,0.8);
height: 100vh;
position: absolute;
width: 100%;
}
.modal-box{
background: #fff;
left: 50%;
padding: 16px;
position: absolute;
top: 50%;
transform: translate(-50%,-50%);
width: 65%;
}