@charset "utf-8";

/*
-----------------------------------------------
▼共通
----------------------------------------------- */
#contact .h1b {
    font-size: 4.5rem;
    text-align: center;
    font-weight: 500;
    margin-bottom: 48px;
}
@media (max-width: 767px){
#contact .h1b {
    font-size: 2.6rem;
    font-weight: bold;
    margin-bottom: 32px;
}
}

.list .fancybox:after {
    content: '';
    display: block;
    width: 100px;
    height: 36px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -18px;
    margin-left: -50px;
    background: url(../../img/zoom.png) no-repeat center center;
    -webkit-background-size: cover;
    background-size: cover;
}


.after_none::after{content: none!important;}
.bdr{border:solid 1px;}

.w235{width:235px;}

.pt10{padding-top:10px;}
.pt50{padding-top:50px;}
.pt80{padding-top:80px;}
.pt90{padding-top:90px;}
.pt100{padding-top:100px;}
.pt120{padding-top:120px;}
.pt130{padding-top:130px;}
.pt30sp{padding-top:20px;}

.pb10{padding-bottom:10px;}
.pb20{padding-bottom:20px;}
.pb30{padding-bottom:30px;}
.pb40{padding-bottom:40px;}
.pb50{padding-bottom:50px;}
.pb60{padding-bottom:60px;}
.pb80{padding-bottom:80px!important;}
.pb90{padding-bottom:90px!important;}

.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.mt40{margin-top:40px;}
.mt50-pc{margin-top:40px;}

.mb10{margin-bottom:10px;}
.mb14{margin-bottom:14px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:20px;}
.mb100-pc{margin-bottom:100px;}

.f-left{float:left;}
.f-right{float:right;}

.f-left-pc{float:left;}
.f-right-pc{float:right;}

.tal-all{
text-align:left !important;
}

.tac-all{
text-align:center;
margin-left:auto;
margin-right:auto;
}

.w100{width:100%;}
.fw-normal{font-weight: normal!important;}

.w75-0auto{
  width: 75%;
  margin: 0 auto 1em;
}
.w90-0auto{
  width: 90%;
  margin: 0 auto 1em;
}

/*
-----------------------------------------------
▼SP
----------------------------------------------- */
@media (max-width:767px) {
  .w75-0auto{
    width: 100%;
  }
  .w90-0auto{
    width: 100%;
  }

.w235{
width:30%;
margin-right:0;
}

.sp-w100{width:100%;}

.sp-w80{width:80%;}

.tac-sp{
text-align:center !important;
margin-left:auto;
margin-right:auto;
}

.dsb-sp{
display:block;
}

.mt50-pc{margin-top:0;}
.mb100-pc{margin-bottom:50px;}
.pb90{padding-bottom:50px!important;}

.f-left-pc{float:none;}
.f-right-pc{float:none;}

#jobz .pt50{padding-top:0;}
#jobz.signjobz .pt50 {
padding-top: 50px;
}

}



/*
-----------------------------------------------
▼SNSページ
----------------------------------------------- */

.blk01-sns {
width:768px;
margin-left:auto;
margin-right:auto;
}
.f-left.r_box {
padding-top: 45px;
}

@media (max-width:767px) {
.blk01-sns {
width:auto;
margin-left:14px;
margin-right:14px;
}
.f-left.r_box {
padding-top: 20px;
}
}



#sns .h1a{
font-weight:normal;
font-size:3.8rem;
text-align:center;
}

#sns .h2a{
font-size:3.6rem;
margin-bottom:14px;
text-align:left;
}

#sns .bg-type01{
background:#f5f5f5;
}

#sns .dl-w01{
width:260px;
}


#sns .dl01{
margin-top:15px;
display:inline-block;
vertical-align:top;
}

#sns .dl01 dt{
font-weight:500;
font-size: 1.9rem;
margin-bottom:3px;
}

#sns .dl01 dd{
font-size: 1.8rem;
}

#sns .dl01 dd a{
color: #2699FB;
text-decoration: none;
}

#sns .dl01 dd a:hover {
color: #2699FB;
text-decoration: underline;
opacity: 0.7;
}

/*
-----------------------------------------------
▼SNSページ SP
----------------------------------------------- */
@media (max-width:767px) {

#sns .dl-w01{
width:auto;
}

#sns .dl01{
margin-top:15px;
display:block;
margin-right:0px;
margin-left:30px;
}

#sns .dl01 dt{
font-weight:bold;
}

#sns .dl01.dl-w01{
margin-top:0px;
}
#sns .f-left.r_box {
padding-top: 0px;
}


#sns .h1a{font-size:2.8rem;}

#sns .h2a{font-size:1.8rem;}
#sns .dl01 dt{font-size: 1.6rem;}
#sns .dl01 dd{font-size: 1.6rem;}

}

/*
-----------------------------------------------
▼メールマガジンページ
----------------------------------------------- */
/* iOSでのデフォルトスタイルをリセット */
input[type="text"],
input[type="submit"],
input[type="button"] {
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}
input[type="text"]{
cursor:text;
}
input:focus::-webkit-input-placeholder,
isindex:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
color: transparent;
}



#magazine .h1a{
font-size:4.8rem;
font-weight: bold;
text-align:center;
}

#magazine .catch{
font-size:3.0rem;
text-align:center;
}


.input_area {
margin-left:auto;
margin-right:auto;
margin-bottom: 190px;
width:800px;
}

.conversion {
padding: 12px 58px;
border-radius: 25px;
background: #2699fb;
color: #fff;
font-weight: 500;
font-size: 1.7rem;
-webkit-transition: all 5s ease 0s;
-o-transition: all 5s ease 0s;
transition: all 5s ease 0s;
}

.conversion:hover {
opacity: 0.25;
cursor: pointer;
}

.mailaddress {
margin-right: 16px;
padding: 0 0 8px 18px;
width: 590px;
border: 0;
border-radius: 0 !important;
border-bottom: 1px solid #707070 !important;
color: #333;
font-size: 2.5rem;
}

.magazine-p{
text-align:center;
}

.magazine-p h2{
font-size:2.2rem;
margin-top:30px;
margin-bottom:30px;
font-weight:bold;
}


/*
-----------------------------------------------
▼メールマガジン SP
----------------------------------------------- */
@media (max-width:767px) {

#magazine .h1a{
font-size:2.5rem;
font-weight:bold;
}

#magazine .catch{
font-size:2.2rem;
}

.magazine-icn{
width:70%;
/* float:left; */
}

/* .magazine-p{
width:70%;
float:right;
} */

#magazine .fcol{
width:50%;
}

.magazine-p{
/* text-align:left; */
}

.magazine-p h2{
font-size:1.8rem;
/* text-align:left; */
margin-top:5px;
margin-bottom:10px;
}

.magazine-p{
font-size:1.4rem;
}

.mailaddress {
padding:0 0 5px 0;
margin:0 auto 15px auto;
border-radius: 0 !important;
border-bottom: 1px solid #707070 !important;
width: 90%;
font-size: 2.4rem;
display:block;
text-align:center;
}

.input_area {
margin-bottom: 60px;
width:100%;
}

}

/*
-----------------------------------------------
▼ブログ活用事例
----------------------------------------------- */
#ttl-link a{
text-decoration:none;
color:#ccc;
}

#ttl-link a:hover{
text-decoration:underline;
color:#333;
}

.current-cat a {
/* line-height:1;
display: block;
padding:8px 0;
background: #000 url(../img/current.png) no-repeat 8px 14px !important;
color: #fff;
text-align:center;
font-weight:500;
font-size:1.6rem;
text-decoration:none;
cursor:default ; */
}

.topics1 li span.jirei {
background-color:rgba(3, 50, 117, 0.8);
}

/*
-----------------------------------------------
▼ブログ活用事例 SP
----------------------------------------------- */
@media (max-width:767px) {
.current-cat a {
/* background: #003277 url(../img/current.png) no-repeat 2px center !important; */
}

}


/*
-----------------------------------------------
▼ブログ 詳細
----------------------------------------------- */

.share_item iframe{
vertical-align:bottom;
}

#blog .h1b {
margin-bottom: 0px;
font-weight:bold;
font-size: 3.2rem;
line-height:1.4em;
}

.blog-detail-tag {
margin-top:60px;
margin-bottom:40px;
}

.blog-detail-tag .tag {
float:left;
margin:0 8px 8px 0;
font-size:1.4rem;
}

.blog-detail-tag .tag a {
display:block;
padding:10px;
background:#eee;
line-height:1;
}

.shareWrap {
margin-bottom: 36px;
text-align: center;
}

.share_item {
display: inline-block;
margin: 0 10px 10px;
line-height: 1;
}


#tblCont{
margin-bottom:60px;
padding:20px 27px;
border:1px solid #C7C7C7;
}

#tblCont h3{
margin-bottom:21px;
font-size:1.8rem;
font-weight:bold;
}
#tblCont ul {
margin-left: 0;
list-style-type: none;
}
#tblCont ul li a{
color: #2699FB;
text-decoration: none;
line-height:1.8;
}

.blog_cont{
margin-bottom:90px;
}

#cnt_4.blog_cont{
margin-bottom:30px;
}

.blog_cont h2{
margin-bottom:45px;
font-size:3.0rem;
font-weight:bold;
text-align:left;
}

.blog_cont .textarea{
font-size:1.6rem;
line-height:1.8;
}

.blog_cont p{
margin-bottom:10px;
font-size:1.6rem;
line-height:1.8;
}

.pointList{
margin-bottom:30px;
}

.pointList li{
/* font-size:1.6rem;
line-height:1.8;
margin-left:1em; */
}

.pointList li:before{
/* content: '・ ';
margin-left:-1em; */
}
.pointList li a{
color:#2699FB;
}
.customerInfo{
margin-bottom:45px;
padding:20px 27px 20px;
background-color:#ECECEC;
}

.customerInfo a {
color:#2699FB;
font-size:16px;
line-height:1.875;
/*text-decoration: none;*/
}

.customerInfo h2{
margin-bottom: 20px;
font-size: 1.8rem;
font-weight: bold;
}

.customerInfo-ul01{
font-size:1.6rem;
line-height:1.8;
margin-left:1em;
}

.customerInfo-ul01 li:before{
content: '・ ';
margin-left:-1em;
}

.service{
padding:20px 27px 27px;
border:1px solid #565658;
margin-bottom:30px;
}

.service h2{
text-align:left;
margin-bottom:17px;
font-size:1.8rem;
font-weight:bold;
}

.blog-service-ul{
margin-left:1em;
}

.blog-service-ul li a {
color:#2699FB;
font-size:16px;
line-height:1.875;
/*text-decoration: none;*/
}

.blog-service-ul li:before{
content: '・ ';
margin-left:-1em;
}


.recommend_posts{
margin-bottom:60px;
}

#blog .h2b {
text-align:left;
margin: 0 auto 8px;
padding: 0 0 23px;
font-size: 3.0rem;
font-weight: bold;
border-bottom: 1px solid #707070;
letter-spacing: 0px;
}


.recommend_posts ul li{
padding-left:24px;
margin-bottom:5px;
padding-bottom:5px;
border-bottom:1px solid #C7C7C7;
}

.recommend_posts ul li a{
padding: 0 11px;
color:#2699FB;
font-size:1.6rem;
line-height:1.8;
}

.recommend_posts ul li:before{
content: '› ';
margin-left:-1em;

}

.bnrWrap{
margin:30px 0 60px 0;
}

.w410{
width:410px;
}

.w240{
width:240px;
}

.blog-date{
margin-top:10px;
margin-bottom:0;
}

/*
-----------------------------------------------
▼ブログ 詳細 SP
----------------------------------------------- */
@media (max-width:767px) {

#blog .h1b {
margin-bottom: 20px;
font-size: 2.0rem;
}


.blog_cont h2{
margin-bottom:15px;
font-size:2.0rem;
}

#blog .h2b {
padding: 0 0 12px;
font-size: 2.0rem;
}
#blog .recommend_posts .h2b {
font-size: 2.4rem;
}
.recommend_posts ul li a{
font-size:1.4rem;
}
.blog_cont p,
.blog_cont .textarea{
font-size:1.5rem;
}

.customerInfo-ul01{
font-size:1.6rem;
line-height:1.8;
margin-left:0px;
}

.blog_cont{
margin-bottom:50px;
}

.shareWrap {
margin-bottom: 36px;
text-align: left;
}

.share_item {
display: inline-block;
margin: 0 10px 10px;
line-height:1.0 !important;
}
.share_item iframe {
vertical-align: bottom;
}

.w410{
width: 100%;
}

.blog-detail-tag .tag {
font-size:1.1rem;
}

.blog-date{
font-size:1.1rem;
margin-top:10px;
margin-bottom:5px;
}

#tblCont ul li{
margin-bottom:20px;
}

.blog-service-ul li{
margin-bottom:20px;
}

.recommend_posts ul li{
margin-bottom:12px;
padding-bottom:12px;
}

}

/*
-----------------------------------------------
▼GCCシリーズTOP
----------------------------------------------- */
.case_black_type02 .btns .mttl.gcc-mk {
position:relative;
padding-left:130px;
margin-right:80px;
}

.case_black_type02 .mttl.gcc-mk::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-19px;
background:url(../img/gcc_icon.png) no-repeat center center;
background-size:100% auto;
width:115px;
height:38px;
}




.gcc-pan{
margin-bottom:12px;
}

.case_black_type02 > div p a.skyblue {
background-color:#5CB2FC;
}

.gcc_back {
position: relative;
background: url(../../img/gcc_back.jpg) no-repeat center top;
background-size: cover;
padding-bottom:70px;
}

.gcc-blk01 {
position:relative;
}
.gcc-blk01b,
.gcc-blk01c {
position:relative;
padding-top:120px;
}
.gcc-blk01.topblk {
padding-top:0;
}

.gcc-blk02.topblk {
padding-top:0;
}

.gcc-blk01 .blk01,
.gcc-blk01b .blk01,
.gcc-blk01c .blk01,
.gcc-blk02 .blk01,
.gcc-blk03 .blk01{
  /* 元 64px */
padding-bottom:90px;
}

.gcc-blk01::after,
.gcc-blk01b::after {
position:absolute;
bottom:-50px;
left:50%;
z-index:3;
content:'';
margin:50px auto;
margin:0 0 0 -50px;
width:0;
height:0;
border-style:solid;
border-width:50px 50px 0 50px;
border-color:#fff transparent transparent transparent;
z-index:5;
}

#c-jet .gcc-blk01::after,.lineup.gcc-blk01::after,.dis.gcc-blk01::after,
#cnfactory .gcc-blk01::after,#cnfactory .gcc-blk01b::after,
#jobz .gcc-blk01.dis::after,#jobz .gcc-blk01.dis::after,
#jobz.eng .gcc-blk01::after, #jobz.eng .gcc-blk01b::after,
#jobz .jobz_blk01.dis.signjobz-box02::after,
#sign-display .gcc-blk01::after{
display:none;
}


.gcc-blk02 {
position:relative;
background:#eee;
padding-top:90px;
margin-top:0;
}
.gcc-blk03 {
position:relative;
background:#292B2D;
/*padding-top:80px;*/
padding-top:90px;
color:#fff;
}
.spec_3d{
margin-top: 100px;
}

.gcc-blk03 table,
.gcc-blk03 th,
.gcc-blk03 td,
.gcc-blk03 .head_ttl{
color:#222!important;
}
.gcc-blk04 {
/*padding-top:80px;*/
padding-top:90px;
}

.st-color-red{color:#e2472a;}

.gcc_text2 {
clear: both;
margin-top:60px;
font-size: 1.8rem;
}

.gcc-col img{
/* width:60%; */ /* 2018.10.31削除（近藤） */
text-align:center;
margin-left:auto;
margin-right:auto;
display:block;
}

#sei-item img{
width:100% !important;
}


.fbox.col3.gcc-col .fcol{
padding-right:24px;
padding-left:24px;
}

.gcc-col .h3a{
text-align:center;
font-size:2.6rem !important;
margin-bottom:3px;
}
@media (max-width:767px) {
.gcc-col .h3a{
font-size:16px !important;
}

.gcc-blk01b,
.gcc-blk01c {
position:relative;
padding-top:64px;
}
.gcc-blk01::after,
.gcc-blk01b::after {
bottom:-30px;
left:50%;
margin:30px auto;
margin:0 0 0 -30px;
border-width:30px 30px 0 30px;
}

#anc_topic.topics1{
padding-top: 60px !important;
}
.c-jet_type03 .f-right .btm2em,
.c-jet_type03 .f-left .btm2em{
margin-bottom:0px;
margin-bottom:0px;
}
.cnfactory-box01.c-jet_type03.pt80{
padding-top: 0;
}
}

.gcc-col .read{
font-size:1.8rem !important;
text-align:center;
margin-bottom:8px;
}
@media (max-width:767px) {
.gcc-col .read{
font-size:13px !important;
}
.spec_3d{
margin-top:60px;
}

}

.gcc-col .h3a a{
color: #2699FB;
text-decoration: none;
}

.gcc-col .h3a a:hover {
color: #2699FB;
text-decoration: underline;
opacity: 0.7;
}


/*
-----------------------------------------------
▼GCCシリーズTOP sp
----------------------------------------------- */
@media (max-width:767px) {

.case_black_type02 .btns .mttl.gcc-mk {
position:relative;
padding-left:35px;
margin-right:80px;
}


.case_black_type02 .btns .mttl.gcc-mk {
margin-right:0;
}
.case_black_type02 .mttl.gcc-mk::after {
top:50%;
left:50%;
margin-top:-10px;
margin-left:-150px;
width:60px;
height:20px;
}




/*.pt130,.pt100,.pt80{
padding-top:35px;
}*/
.pt130,.pt100,.pt80{
padding-top:60px;
}


.gcc_back {
background-size: cover;
padding-bottom:35px;
}

.gcc-blk01,
.gcc-blk02,
.gcc-blk03{
/*padding-top:35px !important;*/
padding-top:10px !important;
}
#c-jet .gcc-blk01,
#c-jet .gcc-blk02,
#c-jet .gcc-blk03 {
padding-top:3em !important;
}
#c-jet .gcc-blk01.after_none .blk01 {
padding-bottom:0 !important;
}
.eng .gcc-blk01{
margin-top: 40px;
}
.eng .gcc-blk01 .pt1em{
margin-top: 40px;
}

.gcc-blk01 .blk01,
.gcc-blk02 .blk01,
.gcc-blk03 .blk01{
/*padding-bottom:35px;*/
padding-bottom:3em;
}
.eng .gcc-blk01 .blk01{
padding-bottom:1em;
}
.gcc-blk02 {
position:relative;
background:#eee;
padding-top:80px;
}
.eng .gcc-blk02{
padding-top: 0px !important;
}

.gcc-blk03 {
position:relative;
background:#292B2D;
padding-top:80px;
color:#fff;
}
.gcc-blk04 {
padding-top:60px;
}


.gcc_back .f24,
.gcc-blk01 .f24,
.gcc-blk02 .f24,
.gcc-blk03 .f24 {
font-size:1.6rem !important;
}

.photo-type01 img{
	width:48%;
}


.gcc_text2 {
clear: both;
margin-top:30px;
font-size: 1.5rem;
}

.gcc-col img{
width:80%
}

.gcc-col .btm2em{
margin-bottom:10px !important;
}

.fbox.col3.gcc-col .fcol{
padding-right:10px;
padding-left:10px;
}


.gcc-col .f20{
font-size:12px;
font-family: 'Noto Jp', sans-serif;
font-weight:300;
color: #565658;
}

}

@media (max-width: 1200px) {
	.photo-type01{
		max-width:100%;
		margin:0;
	}	
	.gcc-blk03 p{
		max-width:100%;
		margin:0;
	}
}

/*
-----------------------------------------------
▼SEIシリーズTOP
----------------------------------------------- */

.case_black_type02 .btns .mttl.sei-mk {
position:relative;
padding-left:130px;
margin-right:80px;
}

.case_black_type02 .mttl.sei-mk::after {
position:absolute;
top:50%;
left:0;
content:'';
/* margin-top:-10px; */
margin-top:-26px;
background:url(../../img/sei_icon.png) no-repeat center center;
background-size:100% auto;
width:100px;
height:56px;
}


.case_black_type02 > div p a.sei-red {
background-color:#eb6c00;
}

.case_blue.sei_blue{
background:#3a5f9c !important;
}

.sei_back {
position: relative;
background: url(../../img/sec01_bg.jpg) no-repeat center top;
background-size: cover;
padding-bottom:70px;
color:#fff;
}

.sei-type01{
width:345px;
}

.sei-type02{
width:700px;
}

.ul-mk01 li{
margin-bottom:0.4em;
margin-left:1em;
}

.ul-mk01 li:before{
content: '・ ';
margin-left:-1em;
}

.sei-enkaku dl{
margin-bottom:0.4em;
}

.sei-enkaku dt{
width:4.0em;
float:left;
}

.sei-enkaku dd{
width:590px;
float:left;
}

.sei-image_list {
margin: 50px 0 30px;
}
.sei-image_list p {
margin-top: 10px;
font-size: 18px;
}
.sei-image_list .f-left {
float: left;
width: 66.42%;
}
.sei-image_list .f-left .box {
width: 47.6%;
float: left;
}
.sei-image_list .f-left .box + .box {
float: right;
}
.sei-image_list .f-right {
float: right;
width: 30.3%;
margin-top: -10px;
}
.sei-image_list .f-right .box {
float: right;
width: 46.37%;
padding-top: 10px;
}
.sei-image_list .f-right .box:nth-child(odd) {
float: left;
}

.sei-p01{
margin:30px 0;
}

.sei-p01 a {
color: #D0550D;
text-decoration:underline;
}

/*
-----------------------------------------------
▼SEIシリーズTOP SP
----------------------------------------------- */
@media (max-width:767px) {

.case_black_type02 .btns .mttl.sei-mk {
position:relative;
padding-left:35px;
margin-right:80px;
}


.case_black_type02 .btns .mttl.sei-mk {
margin-right:0;
}
.case_black_type02 .mttl.sei-mk::after {
top:50%;
left:50%;
margin-top:-10px;
margin-left:-150px;
width:60px;
height:20px;
}


.sei_back {
background-size: cover;
padding-bottom:60px;
}

.sei_back .f24{
font-size:1.6rem !important;
}



.sei-image_list {
margin: 25px 0;
}
.sei-image_list img {
width: 100%;
}
.sei-image_list p {
margin-top: 10px;
font-size: 13px;
}
.sei-image_list .f-left {
float: none;
width: auto;
}
.sei-image_list .f-right {
float: none;
width: auto;
margin-top: -20px;
}
.sei-image_list .f-right .box {
width: 47.6%;
padding-top: 20px;
}

.sei-type01{
text-align:center;
margin-left:auto;
margin-right:auto;
width:100%;
}

.sei-type01 img[src="/assets/img/sec02_img02.jpg"]{
width:80%;
}

.sei-type02{
width:100%;
text-align:center;
}

.ul-mk01,
.sei-enkaku{
margin-top:20px;
display:inline-block !important;
margin-left:auto;
margin-right:auto;
text-align:left;
}

.sei-enkaku dt{
width:23%;
}

.sei-enkaku dd{
width:75%;
}

}

/*
-----------------------------------------------
▼AIプラグインTOP
----------------------------------------------- */
.case_black_type02 > div p a.ai-orange {
background-color:#f90;
}

.case_blue.ai_orange{
background:#f90 !important;
}

.case_black_type02 .btns .mttl.ai-mk {
position:relative;
padding-left:60px;
margin-right:155px;
}

.case_black_type02 .mttl.ai-mk::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-19px;
background:url(../img/ai.png) no-repeat center center;
background-size:100% auto;
width:40px;
height:39px;
}

.case_black_type02 .btns .mttl.ai-dd {
position:relative;
padding-left:60px;
margin-right:300px;
}

.case_black_type02 .mttl.ai-dd::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-19px;
background:url(../img/ai.png) no-repeat center center;
background-size:100% auto;
width:40px;
height:39px;
}

.ai-page .h2a{
font-size:4.8rem !important;
}

#ai-item img{
height:222px !important;
width:auto;
}
@media (max-width: 767px){
#ai-item img {
height:111px !important;
}
}
/*
-----------------------------------------------
▼AIプラグインTOP SP
----------------------------------------------- */
@media (max-width:767px) {
.ai-page .pt90{
padding-top: 0px;
}
.ai-page .jobz_here {
max-width:300px;
}
.case_black_type02 .btns .mttl.ai-mk {
position:relative;
padding-left:15px;
margin-right:90px;
}

.case_black_type02 .btns .mttl.ai-mk {
margin-right:0;
}
.case_black_type02 .mttl.ai-mk::after {
top:50%;
left:50%;
margin-top:-10px;
margin-left:-110px;
width:20px;
height:20px;
}

.ai-page .h2a{
font-size:2.4rem !important;
}

}

/*
-----------------------------------------------
▼CADソフトTOP
----------------------------------------------- */

.cad_back {
position: relative;
background: url(../../img/cad_back.jpg) no-repeat center top;
background-size: cover;
padding-bottom:70px;
}

.case_black_type02 > div p a.cad-blue {
background-color:#003277 !important;
}

.case_blue.cad_blue {
background:#003277 !important;
}
br.sp{display:none;}

/*
-----------------------------------------------
▼CADソフトSP
----------------------------------------------- */

@media (max-width:767px) {
.cad_back {
background-size: cover;
padding-bottom:35px;
background: url(../../img/sp_cad_back.jpg) no-repeat center top;
}

.cad_back .f24 {
font-size:1.6rem !important;
}


.lh18{
  line-height: 1.8em;
}
.mt20-sp{
  margin-top: 20px;
}

br.sp{
  display: block;
}
}


/*
-----------------------------------------------
▼CNファクトリー
----------------------------------------------- */
.case_black_type02 > div p a.cnfactory-blue {
background-color:#0091D2 !important;
}

.case_blue.cnfactory_blue {
background:#0091D2 !important;
}

.page_catch{
margin-bottom:20px;
text-shadow:rgba(0, 0, 0, 0.5) 0 3px 6px;
font-size:3.8rem;
font-weight:500;
}

.cnfactory-box01 .f-left{width:600px;}
.cnfactory-box01 .f-right{width:420px;}

.cnfactory-box02 .f-left{width:420px;}
.cnfactory-box02 .f-right{width:600px;}


.cnfactory-box03 .f-left{width:510px;}
.cnfactory-box03 .f-right{width:510px;}

.cnfactory-type01{
font-size:5rem;
text-align:center;
font-weight:500;
margin-bottom:48px;
}
#cnfactory .cnfactory-type01{
margin-top:70px;
}
.a90{
padding-top: 90px;
}
.case_black_type02 .btns .mttl.cnfactory-mk {
position:relative;
padding-left:70px;
margin-right:160px;
}

.case_black_type02 .mttl.cnfactory-mk::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-28px;
background:url(../img/procs_cnfactory1.png) no-repeat center center;
background-size:100% auto;
width:60px;
height:58px;
}


/*
-----------------------------------------------
▼CNファクトリー sp
----------------------------------------------- */
@media (max-width:767px) {
#cnfactory .h2a{
margin-top: 32px;
}

.cn-type-ttl .page_title{
font-size:2.6rem !important;
}

.page_catch{
font-weight:bold;
margin-bottom:10px;
font-size:1.7rem;
}

.cnfactory-box01 .f-left{width:100%;}
.cnfactory-box01 .f-right{width:100%;}

.cnfactory-box02 .f-left{width:100%;}
.cnfactory-box02 .f-right{width:100%;}

.cnfactory-box03 .f-left{width:48%;}
.cnfactory-box03 .f-right{width:48%;}


.cnfactory-type01{
font-size:2.6rem;
font-weight:bold;
margin-bottom:32px;
}
#cnfactory .cnfactory-type01 {
margin-top: 30px;
}
#cnfactory .btm2em{
margin-bottom: 1em;
}
.case_black_type02 .btns .mttl.cnfactory-mk {
margin-right:0;
padding-left: 20px;
letter-spacing: -0.01em;
}
.a90{
  padding-top: 0;
}
.a16{margin-bottom: 16px;}
.anon::after{
content: none;
}
.case_black_type02 .mttl.cnfactory-mk::after {
top:50%;
left:50%;
margin-top:-16px;
margin-left:-80px;
width:30px;
height:30px;
}
}

/*
-----------------------------------------------
▼3Dクリスタルレーザー
----------------------------------------------- */
.case_black_type02 .btns .mttl.c-jet-mk {
position:relative;
padding-left:130px;
margin-right:45px;
}

.case_black_type02 .mttl.c-jet-mk::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-25px;
background:url(../img/3d_icon.png) no-repeat center center;
background-size:100% auto;
width:120px;
height:50px;
}


.case_black_type02 > div p a.c-jet-red {
background-color:#e24729 !important;
}

.case_blue.c-jet_red {
background:#e24729 !important;
}

.c-jet_back {
position: relative;
background: url(../../img/3d_bg.jpg) no-repeat center top;
background-size: cover;
padding-bottom:70px;
}

.c-jet_back .h2a{
font-size:4.8rem !important;
}

.c-jet_type01 .f24{
line-height:2.4 !important;
font-size:2.6rem !important;
}

.c-jet_type02{
font-size:4.0rem ;
margin-top:70px;
text-align: center;
}

.c-jet_type03 .h2a{
margin-bottom:20px !important;
}

.cnfactory-box03 .f-left img{
float:right;
}

.c-jet-col .h3a{
text-align:center;
font-size:3.0rem;
font-weight:normal;
line-height:1.5 !important;
}

.shikaku{
padding-left:150px;
}

.shikaku li{
margin-bottom:15px;
list-style-type:square;
color:red;
font-size:3.2rem;
}
.shikaku li span{
color:#333 !important;
}


#c-jet .table_area .box + .box {
	margin-top: 25px;
}
#c-jet .table_area .head_ttl {
color:#333;
	padding: 8px 15px;
	font-size: 14px;
	font-weight: bold;
	border-top: #959595 solid 1px;
	border-left: #959595 solid 1px;
	border-right: #959595 solid 1px;
	background-color: #d9d9d9;
}
#c-jet .table_area table {
color:#333;
	-webkit-box-sizing: border-box;
	 -moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border-top: #959595 solid 1px;
	border-left: #959595 solid 1px;
}
#c-jet .table_area table th,
#c-jet .table_area table td {
	-webkit-box-sizing: border-box;
	 -moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 8px 15px;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.3;
	background-color: #fff;
	border-right: #959595 solid 1px;
	border-bottom: #959595 solid 1px;
	vertical-align: middle;
	text-align: center;
}
#c-jet table_area table .in_head th {
	font-weight: bold;
	background-color: #e6e6e6;
}
#c-jet .table_area table .in_head td {
	text-align: center;
	font-weight: bold;
	background-color: #c0d2e6;
}
#c-jet .table_area table th {
	width: 300px;
}

.topic-pt50{padding-top:50px}


/*
-----------------------------------------------
▼3Dクリスタルレーザー sp
----------------------------------------------- */
@media (max-width:767px) {

.case_black_type02 .btns .mttl.c-jet-mk {
margin-right:0;
padding-left:20px;
}
.case_black_type02 .mttl.c-jet-mk::after {
top:50%;
left:40%;
margin-top:-16px;
margin-left:-150px;
width:60px;
height:30px;
}

.c-jet_back .h2a{
font-size:2.6rem !important;
}

.c-jet_back {
background-size: cover;
padding-bottom:60px;
}

.c-jet_back .f24{
font-size:1.6rem !important;
}
.c-jet_type01 .f24{
line-height:1.6 !important;
font-size:1.6rem !important;
}
.c-jet_type01 .f24.mt20{
margin-top: 0;
}

#c-jet .table_area .head_ttl {
font-size: 10px;
}
#c-jet .table_area table th,
#c-jet .table_area table td {
font-size: 10px;
}

.c-jet_type02{
font-size:1.4rem ;
margin-top:30px;
}

.c-jet-col .h3a{
font-size:1.5rem !important;
margin-top:-15px !important;
padding-top:0 !important;
}

.shikaku li{
font-size:1.6rem;
}

.shikaku{
padding-left:30px;
}

.c-jet_type03 .h2a{
margin-bottom:10px !important;
margin-top:16px !important;
font-size:1.8rem;
font-weight:bold;
}

}

/*
-----------------------------------------------
▼サイン・ディスプレイ業界向け
----------------------------------------------- */

.jobz_blk03-b{
padding-bottom:80px;
}

.jobz_blk03-b {
position:relative;
background:#1b1b36;
padding-top:120px;
color:#fff;
}
.jobz_blk03-b::after {
position:absolute;
bottom:-50px;
left:50%;
content:'';
margin:50px auto;
margin:0 0 0 -50px;
width:0;
height:0;
border-style:solid;
border-width:50px 50px 0 50px;
border-color:#1b1b36 transparent transparent transparent;
z-index:5;
}

#sign-display .h2a-small {
font-size:3.5rem;
text-align:center;
font-weight:normal;
margin-bottom:48px;
}

.photo-type02 .f-left,
.photo-type02 .f-right{
width:47%;
}

#sign-display .movi {
width: 100%;
max-width: 959px;
margin: 0 auto;
}
#sign-display .movi > iframe {
width: 100%;
max-width: 959px;
/*height: auto;*/
}




#sign-display div.movi-box {
width: 100%;
max-width: 1088px;
margin: 0 auto;
display: flex;
}

#sign-display div.movi-box > div:first-child {
margin-right: 4.3%;
}
#sign-display div.movi-box > div.s-movi {
width:100%;
		max-width: 959px;
}
#sign-display  > div.s-movi > iframe {
		width: 100%;
		max-width: 520px;
}

#sign-display .gcc-col img {
width: 100%;
}

/*製品ラインナップ*/
.lineup h3.h3a{
font-weight: 500;
}
.lineup strong{
font-weight: 500;
}
@media (max-width:767px) {
.jobz_blk03-b::after {
bottom:-30px;
left:50%;
margin:30px auto;
margin:0 0 0 -30px;
border-width:30px 30px 0 30px;
}
}



/*
-----------------------------------------------
▼サイン・ディスプレイ sp
----------------------------------------------- */
@media (max-width:767px) {

.jobz_blk03-b {
padding-top:64px;
}

#sign-display .h2a-small {
font-size:14px;
line-height: 1.8;
text-align:center;
font-weight:500;
margin-bottom:24px;
}



.photo-type02 .f-left,
.photo-type02 .f-right{
margin-bottom:20px;
width:100%;
}



#sign-display .movi {
width: 92%;
padding-bottom: 51.25%;
height: 0px;
position: relative;
margin: 0 auto;
}

#sign-display .movi > iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


#sign-display div.movi-box {
width: 100%;
margin: 0 auto;
display:block;
}
#sign-display div.movi-box > div:first-child {
margin-right: 4.3%;
}
#sign-display div.movi-box > div.s-movi {
width: 92%;
padding-bottom: 51.25%;
height: 0px;
position: relative;
margin: 0 auto;
}
#sign-display div.movi-box > div.s-movi:first-child {
margin-bottom: 20px;
}
#sign-display div.movi-box > div.s-movi > iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#sign-display > div.movi-box > div.s-movi {
width: 92%;
		margin: 0 auto;
padding-bottom: 51.25%;
height:0px;
position: relative;
}
#sign-display div.movi-box > div.s-movi > iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
}

/*
-----------------------------------------------
▼製品TOP
----------------------------------------------- */
.products_case_blue {
background-color: #4970DF;
}
.products-btn > div .btns .btn_item{
  max-width: 600px;
}

.products-btn .btn_item .in_left .in_item {
border-right: #4c4c4c solid 1px;
}

.products-btn .btn_item .in_item.in_ttl {
padding-top: 0;
margin-top: -4px;
}
.products-btn .btn_item .in_item.in_ttl span {
display: block;
padding: 5px 10px;
color: #fff;
font-size: 11px;
border: #fff solid 1px;
border-radius: 20px;
}


.products-btn > div .btns .mttl {
margin-right:120px;
}
.products-btn > div .btns .btn_item .in_item {
margin-right: 15px;
color: #fff;
}
@media (max-width:767px) {
  .products-btn > div .btns .btn_item .in_item {
  margin-right: 0;
  }
#products .bg_gray.pd_b0{
padding-bottom: 0;
}
}
.products-btn > div .btns .btn_item .in_item.in_ttl {
}
.products-btn > div .btns .btn_item .in_item.in_ttl span {
display: block;
padding: 5px 10px;
color: #fff;
font-size: 11px;
border: #fff solid 1px;
border-radius: 20px;
}

@media (min-width:768px) {
  .products-btn > div {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
  }
  .products-btn > div p{
    position: absolute;
    right:0;
  }
  .products-btn > div .btns .btn_item .in_item_outer {
  margin-bottom: 18px;
  }
}
@media (max-width:767px) {
  .products-btn > div .btns .btn_item .in_item_outer {
    width: 50%;
  }
  .products-btn > div .btns .btn_item .in_item_outer .in_item {
    width: 100%;
    border-right: #4c4c4c solid 1px;
  }
  .products-btn > div .btns .btn_item .in_item.in_ttl span {
    text-align: center;
  }
}

.products-ttl .page_title,
.products-ttl .page_sub{
color:#000 !important;
}


.products-box02 .f-left{width:52%;}
.products-box02 .f-right{width:47%;}

.products-box01 .f-right{width:56%;}
.products-box01 .f-left{width:42%;}

.products-box04 .f-right{width:49%;}
.products-box04 .f-left{width:51%;}
.products-box05 .f-right{width:51%;}
.products-box05 .f-left{width:49%;}

#products .en_txt {
margin-bottom: 35px;
}
#products .en_txt span {
display: inline-block;
padding: 12px 20px;
font-size: 2.0rem;
color: #fff;
background-color: #2699fb;
border-radius: 30px;
line-height: 1;
}

.sw{
background:#0fa34a !important;
}

@media (max-width:767px) {
.products-btn > div .btns .mttl {
margin-right:0;
}
.products-btn > div .btns .btn_item .in_item.in_ttl {
padding:8px;
}
#products .en_txt {
margin-bottom:24px;
}

}


#products .section_title {
margin-bottom: 30px;
text-align: left;
font-size:3.8rem;
line-height: 1.3;
}

#products .section_lead {
margin-bottom: 30px;
font-size:3.5rem;
line-height: 1.3;
}


#products .section_btn {
margin-top: 40px;
}
#products .section_btn a {
position: relative;
display: block;
max-width: 350px;
margin: 0 auto;
padding: 0.5em 8px .5em 0;
font-size: 25px;
text-decoration: none;
border: #292b2d solid 2px;
text-align: center;
border-radius: 40px;
}
#products .section_btn a:hover {
text-decoration: underline;
opacity: 0.75;
}
#products .section_btn a:before {
position: absolute;
top: 50%;
right: 28px;
display: block;
content: '';
width: 6px;
height: 6px;
margin-top: -4px;
border-top: #000 solid 2px;
border-right: #000 solid 2px;
transform: rotate(45deg);
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
}

#products .bg_black .section_btn a {
border: #fff solid 2px;
color:#fff;
}

#products .bg_black .section_btn a:before {
border-top: #fff solid 2px;
border-right: #fff solid 2px;
}

#products .bg_black {
position:relative;
padding:5em 0;
}



#products .bg_white {
position:relative;
background:#fff;
padding:5em 0;
}

/*
-----------------------------------------------
▼製品TOP sp
----------------------------------------------- */
@media (max-width:767px) {

#products .section_title {
    font-size: 2.4rem;
	margin-bottom: 20px;
}
.products-btn .mttl {
margin-right: 0;
}
.products-btn .btn_item {
padding-top: 0;
}
.products-btn .in_item {
float: none;
width: 100%;
border-right: none;
}
.products-btn .btn_item .in_left .in_item {
border-right: #4c4c4c solid 1px;
}
.products-btn .btn_item .in_item.in_ttl {
margin: 0;
padding: 12px 0 4px;
border-bottom: none;
text-align: center;
}
.products-btn .btn_item .in_item.in_ttl span {
padding: 4px 12px;
display: inline-block;
font-size: 11px;
}



.products-box01 .f-left{float:none; width:100%;}
.products-box01 .f-right{float:none; width:100%;}
.products-box02 .f-left,.products-box04 .f-left,.products-box05 .f-left{float:none; width:100%;}
.products-box02 .f-right,.products-box04 .f-right,.products-box05 .f-right{float:none; width:100%;}
.products-box02 .f-left img,
.products-box02 .f-right img,
.products-box04 .f-left img,
.products-box04 .f-right img{
display:block;
width:70%;
margin:0 auto;
}

#product .en_txt {
margin-bottom: 10px;
}
#products .en_txt span {
display: inline-block;
padding: 5px 10px;
font-size: 10px;
color: #fff;
background-color: #2699fb;
border-radius: 30px;
line-height: 1;
}
#products .section_title {
margin-bottom: 15px;
/*text-align: center;*/
font-size: 24px;
}
#products .section_lead {
margin-bottom: 15px;
font-size: 18px;
line-height: 1.3;
text-align: center;
}

#products .section_btn {
margin-top: 20px;
}
#products .section_btn a {
position: relative;
display: block;
max-width: 200px;
margin: 0 auto 24px;
padding: 8px 8px 8px 0;
font-size: 13px;
text-decoration: none;
border: #292b2d solid 1px;
text-align: center;
border-radius: 40px;
}
#products .section_btn a:before {
position: absolute;
top: 50%;
right: 24px;
display: block;
content: '';
width: 5px;
height: 5px;
margin-top: -3px;
border-top: #000 solid 1px;
border-right: #000 solid 1px;
transform: rotate(45deg);
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
}

#products .f24{
font-size:1.4rem;
}

#products .bg_black {
padding:2em 0;
}
#products .bg_white {
padding:2em 0;
}

}

/*
-----------------------------------------------
▼Racoo 2020.10.06
----------------------------------------------- */

.gcc_img{
margin-right:2em;
}

.case_black_type02 .btns .racoo-mark {
position:relative;
padding-left:110px;
margin-right:0px;
}

.case_black_type02 .mttl.racoo-mark::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-25px;
background:url(../img/icon_racoo.jpg) no-repeat center center;
background-size:100% auto;
width:90px;
height:40px;
}



/*
-----------------------------------------------
▼サインジョブズ signjobz
----------------------------------------------- */

.gcc_img{
margin-right:2em;
}

.case_black_type02 .btns .signjobz-mark {
position:relative;
padding-left:110px;
margin-right:0px;
}

.case_black_type02 .mttl.signjobz-mark::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-25px;
background:url(../../img/signjob_icon.png) no-repeat center center;
background-size:100% auto;
width:90px;
height:40px;
}


.signjobz-box01 .list {
	margin-left: -15px;
}
.signjobz-box01 .list li {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	float: left;
	width: 33.333%;
	padding-left: 15px;
}
.signjobz-box01 .list li .bg {
	padding: 50px 25px;
	background-color: #f5f5f7;
}
.signjobz-box01 .list li .ttl {
	margin-bottom: 35px;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}
.signjobz-box01 .list li .img {
	margin-bottom: 35px;
	text-align: center;
  position: relative;
}
.signjobz-box01 .list li .img a{
  display: inline-block;
  }
.signjobz-box01 .list li .img img{
  width: 306px;
  height: auto;
  }
.signjobz-box01 .list li .txt {
	font-size: 21px;
	line-height: 1.4;
	font-weight: 300;
}


.signjobz-box02 .table_area .box + .box {
	margin-top: 25px;
}
.signjobz-box02 .table_area .head_ttl {
	padding: 8px 15px;
	font-size: 14px;
	font-weight: bold;
	border-top: #959595 solid 1px;
	border-left: #959595 solid 1px;
	border-right: #959595 solid 1px;
	background-color: #d9d9d9;
}
.signjobz-box02 .table_area table {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	border-top: #959595 solid 1px;
	border-left: #959595 solid 1px;
}
.signjobz-box02 .table_area table th,
.signjobz-box02 .table_area table td {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 8px 15px;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.3;
	background-color: #fff;
	border-right: #959595 solid 1px;
	border-bottom: #959595 solid 1px;
	vertical-align: middle;
	/*text-align: center;*/
}
.signjobz-box02 .table_area table .in_head th {
	font-weight: bold;
	background-color: #e6e6e6;
}
.signjobz-box02 .table_area table .in_head td {
	text-align: center;
	font-weight: bold;
	background-color: #c0d2e6;
}
.signjobz-box02 .table_area table th {
	width: 300px;
	background-color: #efefef;
}
.signjobz-box02 .table_area table .bg th,
.signjobz-box02 .table_area table .bg td {
	background-color: #efefef;
}
.signjobz-box02 .table_area table th.bg_w {
	background-color: #fff;
}

.signjobz_img{
    margin-bottom: -35.5em;
	margin-right: 2em;
	padding-right:2em;
}
.ai{
margin-top:-5em;
}

.gcc_img{
padding-right:2em;
}
.cad_img{
padding-right:4em;
}

/*
-----------------------------------------------
▼サインジョブズ signjobz SP
----------------------------------------------- */
@media (max-width:767px) {

.case_black_type02 .btns .mttl.signjobz-mark {
margin-right:0;
padding-left:20px;
}
.case_black_type02 .mttl.signjobz-mark::after {
background:url(../img/sp_signjob_icon.png) no-repeat center center;
top:50%;
left:40%;
background-size:70% auto;
margin-top:-16px;
margin-left:-70px;
width:80px;
height:30px;
}



	.signjobz-box01 .box + .box {
		margin-top: 40px;
	}
	.signjobz-box01 .list {
		margin-left: 0;
	}
	.signjobz-box01 .list li + li {
		margin-top: 25px;
	}
	.signjobz-box01 .list li {
		float: none;
		width: auto;
		margin: 0 -20px;
		padding-left: 0;
	}
	.signjobz-box01 .list li .bg {
		padding: 15px 30px;
		zoom: 1;
	}
	.signjobz-box01 .list li .bg:after {
		display: block;
		clear: both;
		height: 0;
		content: '';
	}
	.signjobz-box01 .list li .ttl {
		margin-bottom: 15px;
		font-size: 20px;
	}
	.signjobz-box01 .list li .img {
		float: left;
		width: 35.9%;
		margin-bottom: 0;
		text-align: center;
	}
	.signjobz-box01 .list li .txt {
		float: right;
		width: 59%;
		font-size: 13px;
		line-height: 1.8;
	}


.signjobz-box02 .table_area .box {
		overflow: auto;
		width: 100%;
		-webkit-overflow-scrolling: touch;
	}
.signjobz-box02 .table_area .sp_wrap {
		width: 700px;
	}
.signjobz-box02 .table_area .head_ttl,
.signjobz-box02 .table_area table th,
.signjobz-box02 .table_area table td {
		padding: 7px 10px;
	}
.signjobz-box02 .table_area table th {
		width: 120px;
	}


.signjobz-box03 .movi {
width: 92%;
padding-bottom: 51.25%;
height: 0px;
position: relative;
margin: 0 auto;
}

.signjobz-box03 .movi > iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.signjobz_img{
    margin-bottom: 0em;
	margin-right: 0em;
	padding-right:0em;
}
.ai{
margin-top:0em;
}

.gcc_img{
padding-right:0em;
}
.cad_img{
padding-right:0em;
}


}

/*
-----------------------------------------------
▼はかりや
----------------------------------------------- */


.case_blue.hakariya_orange {
background:#fe9a28 !important;
}

.h3hakariya{
font-size:3.4rem;
margin-bottom:35px;
}

.imgArea{
margin-top:50px;
}

.imgArea img{
margin-bottom:10px;
text-align: center;
display:block;
}

.imgArea img{
padding: 5px 0 20px;
text-align: left;
line-height: 1.4;
}

.redBox {
margin: 10px 15px 0;
border: 2px solid red;
background: #fef4f9;
padding: 8px 9px;
font-weight: normal;
color: red;
font-size:2.4rem;
}


.cad-ai .f-left{width:48%;}
.cad-ai .f-right{width:48%;}

.cad-ai{font-size:2.0rem;}

.cad-ai p{
margin:5px 0 25px 0;
}

.prdctInfo_tbl{
font-size:2.0rem;
border-collapse: collapse;
border:1px solid #999999;
}

.prdctInfo_tbl th{
padding:5px 10px;
width:12em;
text-align: center;
font-weight:normal;
background-color:#efefef;
border:1px solid #999999;
}

.prdctInfo_tbl td{
padding:5px 10px;
text-align: center;
background-color:#ffffff;
border:1px solid #999999;
}

.table_hkdx{
	margin: 0 auto 30px;
	width: 100%;
}

.tr_style01{
	background-color: #FFF7EE;
}
.tr_style02{
	background-color: #FFF0DF;
}

.table_hkdx th{
	font-weight: bold;
	text-align: center;
	background-color: #000000;
	border: 2px solid #ffffff;
}

.table_hkdx th.thNum01{
	width: 50%;
	font-weight: bold;
	background-color: #ff9900;
}


.table_hkdx td{
	padding: 8px 10px;
	border: 2px solid #ffffff;
}

.titlestyle01{
	font-weight: bold;
	font-size: 2.0rem;
	margin-bottom: 3px;
}

.titlestyle02{
	font-size: 1.8rem;
}

.td_txtstyle01{
	text-align: center;
	font-size: 150%;
	font-weight: bold;
	color: #ff9900;
}

.td_txtstyle02{
	text-align: center;
	font-size: 150%;
	font-weight: bold;
}


.case_black_type02 .btns .mttl.hakariya-dx {
position:relative;
padding-left:65px;
margin-right:170px;
}

.case_black_type02 .mttl.hakariya-dx::after {
position:absolute;
top:50%;
left:0;
content:'';
margin-top:-25px;
background:url(../img/hakariyadx1.png) no-repeat center center;
background-size:100% auto;
width:50px;
height:50px;
}


/*
-----------------------------------------------
▼はかりや SP
----------------------------------------------- */
@media (max-width:767px) {
.h3hakariya{
font-size:2.2rem;
margin-bottom:20px;
font-weight: bold;
}

.cad-ai{font-size:1.5rem;}


.cad-ai .f-left{width:100%;}
.cad-ai .f-right{width:100%;}

.prdctInfo_tbl,
.prdctInfo_tbl tbody,
.prdctInfo_tbl tr,
.prdctInfo_tbl th,
.prdctInfo_tbl td{
display:block;
width:100%;
font-size:1.4rem;
}

.redBox {
margin: 0;
font-size:1.6rem;
}

.titlestyle01{
	font-weight: bold;
	font-size: 1.5rem;
	margin-bottom: 3px;
}

.titlestyle02{
	font-size: 1.2rem;
}


.table_hkdx{
width: 92%

}
.table_hkdx td{
padding: 8px 20px;
}
.table_hkdx th.thNum01{
width: 63%;
}


.case_black_type02 .btns .mttl.hakariya-dx {
margin-right:0;
padding-left:20px;
}
.case_black_type02 .mttl.hakariya-dx::after {
top:50%;
left:40%;
margin-top:-14px;
margin-left:-25px;
width:25px;
height:25px;
}

}

/*
-----------------------------------------------
▼EngiView
----------------------------------------------- */
.case_blue.engview_navy {
background:#033275 !important;
}



.engview-box01 .f-left{width:600px;}
.engview-box01 .f-right{width:410px;}

.engview-box02 .f-left{width:410px;}
.engview-box02 .f-right{width:600px;}

.engview-box03 .f-left{width:45% !important;}
.engview-box03 .f-right{width:45% !important;}

.engview-p01{
font-size:1.8rem;
margin-top:10px;
}

.engiview-flex_box{
display: -webkit-flex;
display:flex;
}

.engiview-flex_box{
-webkit-flex-direction: row;
flex-direction: row;
}

.engiview-flex_box{
-webkit-flex-wrap: nowrap;
flex-wrap: nowrap;
margin-bottom:30px;
}

.engiview-flex_box .tac-all{
padding-left:5px;
padding-right:5px;
}

.engiview-flex_box p{
margin-top:12px;
}

.pt100{padding-top:100px;}

.pb1em{padding-bottom:1em;}
.pt1em{padding-top:1em;}

.pb2em{padding-bottom:2em;}
.pt2em{padding-top:2em;}

.engview-box04 .prdctInfo_tbl td{
text-align:left !important;
}


/*
-----------------------------------------------
▼EngiView SP
----------------------------------------------- */
@media (max-width:767px) {

.engview-box01 .f-left{width:100%;}
.engview-box01 .f-right{width:100%;}
.engview-box02 .f-left{width:100%;}
.engview-box02 .f-right{width:100%;}
.engview-box03 .f-left{width:100% !important; margin-bottom:30px;}
.engview-box03 .f-right{width:100% !important; margin-bottom:30px;}
.eng .engview-box03 .f-right{margin-bottom:0px !important;}

.engview-p01{
font-size:1.5rem;
margin-top:5px;
}

.pt100{padding-top:30px;}
.gcc_back .pt100 {
    padding-top: 20px;
}
}

/*
-----------------------------------------------
▼CERION
----------------------------------------------- */
@media (max-width:767px) {
#c-jet .pt90{padding-top:15px;}
}

/* css_end */


/* =============================== */
/* 2021.07.21 本番公開（仮）のため追加 */
/* ブログサイドナビ */
/* =============================== */
.blog-side-bnr-list {
  padding-bottom: 1.5em;
}
.blog-side-bnr-item + .blog-side-bnr-item {
  margin-top: 1.5em;
}
.blog-side-bnr-item img {
  max-width: 100%;
}



/* =============================== */
/*
-----------------------------------------------
▼ 前・次の記事リンク
----------------------------------------------- */
.c-post-nav {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-bottom:60px;
}
.c-post-nav__prev,
.c-post-nav__next {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	background: transparent;
	text-decoration: none !important;
	color: #000 !important;
	position: relative;
	transition: opacity 0.3s ease;
	border: none;
}
.c-post-nav__prev {
	padding: 10px 40px 10px 0;
}
.c-post-nav__next {
	padding: 10px 0 10px 40px;
}
.c-post-nav__prev:not(.c-post-nav__empty) + .c-post-nav__next:not(.c-post-nav__empty) {
	border-left: 1px solid #000;
}
.c-post-nav__prev:hover,
.c-post-nav__next:hover {
	opacity: 0.7;
}
.c-post-nav__empty {
	border: none;
	background: transparent;
}
.c-post-nav__label {
	font-size: 2.0rem;
	color: #000;
	font-weight: bold;
	margin-bottom: 15px;
	display: block;
}
.c-post-nav__prev .c-post-nav__label::before {
	content: "‹ ";
	color: #2699FB;
}
.c-post-nav__next .c-post-nav__label::after {
	content: " ›";
	color: #2699FB;
}
.c-post-nav__prev .c-post-nav__label {
	text-align: left;
}
.c-post-nav__next .c-post-nav__label {
	text-align: right;
}
.c-post-nav__title {
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1.6;
	color: #000;
	text-align: left;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
@media (max-width: 767px) {
	.c-post-nav {
		flex-direction: row;
	}
	.c-post-nav__prev {
		padding: 10px 15px 10px 0;
	}
	.c-post-nav__next {
		padding: 10px 0 10px 15px;
	}
	.c-post-nav__prev:not(.c-post-nav__empty) + .c-post-nav__next:not(.c-post-nav__empty) {
		border-left: 1px solid #000;
		border-top: none;
	}
	.c-post-nav__label {
		font-size: 1.6rem;
		margin-bottom: 8px;
	}
	.c-post-nav__title {
		font-size: 1.0rem;
	}
}

/*
-----------------------------------------------
▼ ページャー (ブログ一覧等)
----------------------------------------------- */
.c-custom-pager {
	margin: 60px 0;
	text-align: center;
}

.c-custom-pager-text {
	font-size: 1.4rem;
	color: #333;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ddd;
}

.c-custom-pager-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	background-color: #F3F3F3;
	max-width: 600px;
	margin: 0 auto;
	padding: 10px;
	border-radius: 40px;
}

.c-custom-pager-nav a.page-numbers,
.c-custom-pager-nav span.page-numbers {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-width: 35px;
	height: 35px;
	font-size: 1.6rem;
	color: #333;
	text-decoration: none;
	border: none;
	background: transparent;
	border-radius: 50%;
	transition: all 0.3s ease;
	margin: 0;
	padding: 0;
	position: relative;
}

.c-custom-pager-nav a.page-numbers.first,
.c-custom-pager-nav a.page-numbers.last,
.c-custom-pager-nav a.page-numbers.prev,
.c-custom-pager-nav a.page-numbers.next{
	color:#2699FB;
}

.c-custom-pager-nav a.page-numbers:hover {
	background: #e0e0e0;
	color: #2699FB;
}

.c-custom-pager-nav span.current {
	background: #2699FB;
	color: #fff;
	font-weight: bold;
}

.c-custom-pager-nav span.dots {
	min-width: auto;
	border: none;
	background: transparent;
}

.c-custom-pager-nav .prev,
.c-custom-pager-nav .next,
.c-custom-pager-nav .first,
.c-custom-pager-nav .last {
	font-size: 1.6rem;
	color: #2699FB;
	border-radius: 0;
	width: auto;
	padding: 0 10px;
}

.c-custom-pager-nav .prev:hover,
.c-custom-pager-nav .next:hover,
.c-custom-pager-nav .first:hover,
.c-custom-pager-nav .last:hover {
	background: transparent;
	color: #2699FB;
}

.c-custom-pager-nav span.disabled {
	opacity: 0.3;
}




/* =============================== */
/* ラインナップショートコード */
/* =============================== */
.c-lineup-list {
  display: flex;
  flex-wrap: wrap;
  gap: 75px 2%;
  margin: 0;
  padding: 0;
	justify-content: center;
  list-style: none;
}

.c-lineup-item {
  width: 23.5%;
  display: flex;
  flex-direction: column;
}



@media (min-width: 1025px) {
  /* 2カラム指定時: Gridを使って23.5%幅を2列に */
  .c-lineup-list--col-2 {
    display: grid;
    grid-template-columns: repeat(2, 23.5%);
  }
  .c-lineup-list--col-2 .c-lineup-item {
    width: 100%;
  }

  /* 3カラム指定時: Gridを使って23.5%幅を3列に */
  .c-lineup-list--col-3 {
    display: grid;
    grid-template-columns: repeat(3, 23.5%);
  }
  .c-lineup-list--col-3 .c-lineup-item {
    width: 100%;
  }

  /* 4カラム指定時: そのままFlexboxの23.5%で4列 */
  .c-lineup-list--col-4 .c-lineup-item {
    width: 23.5%;
  }
}

@media (max-width: 1200px) {
	.c-lineup-list {
			width:100%;
			gap:25px 6%;
	}
}



.c-lineup-link,
.c-lineup-link-dummy {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

.c-lineup-link:hover .c-lineup-thumb img {
  opacity: 0.8;
  transition: opacity 0.3s ease;
}

.c-lineup-link:hover{
	text-decoration: none;
}

.c-lineup-thumb {
  text-align: center;
  margin-bottom: 0;
  position:relative;
}

.c-lineup-thumb img {
  width: 100%;
  aspect-ratio: 255 / 170;
  object-fit: cover;
  transition: opacity 0.3s ease;
	max-width:203px;
}

.c-lineup-thumb .c-lineup-new{
  position:absolute;
  top:0;
  left:0;
  width:50px;
  height:50px;
}

.c-lineup-thumb .c-lineup-new img{
  width:100%;
  aspect-ratio: 50 / 50;
}
.c-lineup-content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  margin-top:15px;
}

.c-lineup-title {
  color: #2699FB;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 14px;
  line-height: 1.3;
}

.c-lineup-catch {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
	letter-spacing: 0;
  line-height: 1.4;
  color: #333;
}

.post-content .u_lineup .c-lineup-catch {
  margin-bottom: 6px;
}

.c-lineup-txt {
  font-size: 1.6rem;
  line-height: 30px;
  color: #333;
  margin-bottom: 16px;
}

.post-content .u_lineup .c-lineup-txt {
  font-size: 1.3rem;
	line-height:2.4rem;
	margin-bottom:12px;
}

.c-lineup-btn-wrap {
  text-align: center;
  margin-top: auto;
}

.c-lineup-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #2699FB;
  color: #fff;
  border-radius: 30px;
  padding: 4px 30px;
  font-size: 1.3rem;
  font-weight: bold;
  text-decoration: none;
  min-width: 140px;
  transition: background-color 0.3s ease;
}

.c-lineup-link:hover .c-lineup-btn {
  background-color: #1a75c2;
}

@media (max-width: 1024px) {
  .c-lineup-item {
    width: 46%;
  }
}

@media (max-width: 767px) {
  .c-lineup-item {
    width: 46%;
  }
	.c-lineup-title {
		font-size: 1.2rem;
		margin-bottom:10px;
	}
	.c-lineup-catch{
		font-size: 1rem;
		margin-bottom:7px;
	}
	.c-lineup-txt{
		font-size: 1rem;
		line-height:1.6;
		margin-bottom:6px;
	}
	.c-lineup-thumb img{
		max-width:117px;
	}
	.c-lineup-btn{
		min-width:100px;
		line-height: 1;
		padding:6px 0;
		font-size:1rem;
	}
	
	.c-custom-pager-nav{
		padding: 4px 10px;
		gap:1px;
		font-weight:bold;
	}
	.c-custom-pager-nav a.page-numbers,
	.c-custom-pager-nav span.page-numbers {
		min-width: 24px;
		height: 24px;
		font-size: 1.2rem;
	}
	.c-custom-pager-nav a.first,
	.c-custom-pager-nav a.last {
		font-size: 1.4rem;
	}
  .c-lineup-thumb .c-lineup-new{
    position:absolute;
    top:0;
    left:0;
    width:30px;
    height:30px;
  }

}


/* =============================== */
/* ブログ記事内 ラインアップ
/* =============================== */
.u_lineup ul.c-lineup-list { 
	padding-left: 0;
}
.post-content .u_lineup  ul li{
	margin:0;
}
.post-content .u_lineup h3{
	padding:0;
	border: none;
	margin: 0;
	margin-bottom: 10px;
	text-align: center;
	font-size:1.8rem;
}
.post-content .u_lineup a{
	text-decoration: none;
}
.post-content .c-lineup-catch{
	text-align: center;
	font-size: 1.3rem;
}

/* =============================== */
/* フッターPCリニューアル
/* =============================== */
@media (min-width: 768px) {
	/* Top links styling */
	.footer-top-links {
		margin-bottom: 50px;
		width: 100%;
		padding-bottom: 0px;
	}
	.footer-top-primary {
		margin-bottom: 20px;
		font-size: 2.0rem;
		font-weight: bold;
		letter-spacing: 0.05em;
	}
	.footer-top-primary a {
		color: #2699FB !important;
		text-decoration: none;
	}
	.footer-top-primary a:hover {
		opacity: 0.7;
	}
	.footer-top-primary .divider {
		color: #fff;
		margin: 0 15px;
		font-weight: normal;
	}
	.footer-top-secondary {
		font-size: 1.8rem;
		font-weight: normal;
		color: #fff;
		letter-spacing: 0.05em;
	}
	.footer-top-secondary a {
		color: #fff !important;
		text-decoration: none;
	}
	.footer-top-secondary a:hover {
		opacity: 0.7;
	}
	.footer-top-secondary .divider {
		color: #fff;
		margin: 0 20px;
	}

	/* 6-column Grid Layout */
	.footer-grid {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin-bottom: 40px;
		gap: 10px;
	}
	.footer-grid .footer-col {
		flex: 1;
	}
	.footer-grid .footer-col.footer-col-wide{
		min-width:200px;
	}
	.footer-grid dl {
		display: block !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-bottom: 0;
	}
	.footer-grid dl.mt-20 {
		margin-top: 30px;
	}
	.footer-grid dt {
		margin-bottom: 20px !important;
		font-size: 1.6rem !important;
		font-weight: bold !important;
	}
	.footer-grid dt a {
		color: #2699FB !important;
	}
	.footer-grid dd {
		margin-bottom: 12px !important;
		font-size: 1.3rem !important;
		font-weight: normal;
	}
	.footer-grid dd a {
		color: #fff !important;
	}
	
	/* SNS columns override */
	.sns-col dd {
		margin-bottom: 10px;
	}
	
	/* Address area layout */
	.address_area.new-address {
		display: flex !important;
		flex-direction: column;
		align-items: center;
		padding-top: 30px;
		text-align: center;
		width: 100% !important;
	}
	.address_area.new-address dt {
		margin-bottom: 20px !important;
	}
	.address_area.new-address dt img {
		width: 200px;
	}
	.address_area.new-address dd {
		display: inline-block !important;
		margin: 0 !important;
		font-size: 1.2rem;
		color: #fff;
	}
	.address_area.new-address address {
		display: inline-block;
		margin-right: 15px !important;
		padding-bottom: 0 !important;
	}
	.address_area.new-address .sitemap {
		border-right: none !important;
		margin-right: 0 !important;
		padding-right: 0 !important;
	}
	.address_area.new-address .sitemap a,
	.address_area.new-address .privacy a {
		color: #fff !important;
		text-decoration: none;
	}
	.address_area.new-address .address-divider {
		margin: 0 10px;
		color: #fff;
	}
	.copyright_area{
		display: flex;
		justify-content: center;
	}

}

@media (max-width: 767px) {
	.footer-top-links.pconly {
		display: none !important;
	}
	.footer-grid.pconly {
		display: none !important;
	}
	.address_area.new-address .address-divider {
		display: none !important;
	}
	.post-content .u_lineup h3{
		font-size:1.2rem;
		margin-bottom: 10px;
	}
	
	.post-content .c-lineup-catch{
		margin-bottom: 0.8em;
	}
}

/* =============================== */
/* 追従バナー (fixedbottom) リニューアル
/* =============================== */
#fixedbottom.new-fixedbottom {
    background-color: #63A9F5 !important;
    height: auto !important;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    width: 100%;
}
.new-fixedbottom-wrp{
	position: relative;
	width: 100%;
}
#fixedbottom.new-fixedbottom.fixed_to_bottom {
    background-color: #63A9F5 !important;
}
#wrapper > #fixedbottom.new-fixedbottom {
    opacity: 1 !important;
}

.new-fixedbottom .fixedbottom-inner {
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
    height: 70px;
    width: 100%;
    max-width: 1090px;
    margin: 0 auto;
    background-color: transparent;
}

.new-fixedbottom .fixedbottom-tel {
    flex-grow: 1;
    background-color: #63A9F5;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    color: #fff;
    padding: 0;
}

.new-fixedbottom .fixedbottom-tel-hours {
    font-size: 1.4rem;
    font-weight: bold;
}

.new-fixedbottom .fixedbottom-tel-number {
    font-size: 2.8rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: 'Roboto', sans-serif;
		display:flex;
		align-items: center;
}

.new-fixedbottom .fixedbottom-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    text-decoration: none !important;
    padding: 0 30px;
    transition: opacity 0.3s;
}

.new-fixedbottom .fixedbottom-btn:hover {
    opacity: 0.8;
}

.new-fixedbottom .fixedbottom-dl {
    background-color: #2143B3;
    font-size: 1.8rem;
    font-weight: bold;
    gap: 10px;
		margin:8px 8px 8px 0;
}

.new-fixedbottom .fixedbottom-contact {
    background-color: #FF0000;
    font-size: 1.8rem;
    font-weight: bold;
    gap: 10px;
		margin:8px 8px 8px 0;
}

.new-fixedbottom .fixedbottom-contact .fixedbottom-btn-img{
	width:40px;
	height:34px;
}

.new-fixedbottom .btn-icon {
    font-size: 1.2em;
    margin-right: 5px;
    display: flex;
    align-items: center;
}

.new-fixedbottom .fixedbottom-pagetop {
    background-color: #7FC4FD;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
   	width: 10%;
		min-width: 80px;
    height: 100%;
    font-size: 2.4rem;
    text-decoration: none !important;
    transition: opacity 0.3s;
		position: absolute;
    right: 0;
    top: 0;
}
.new-fixedbottom .fixedbottom-pagetop:hover {
    opacity: 0.8;
}


.new-fixedbottom .fixedbottom-btn-img {
    width: 37px;
    height: auto;
    vertical-align: middle;
}
.new-fixedbottom .fixedbottom-phone-img {
    width: 16px;
    height: 23px;
    margin-right: 8px;
    vertical-align: middle;
}

/* Mobile Adjustments */
@media (max-width: 767px) {
    .new-fixedbottom .fixedbottom-tel {
        display: none !important;
    }
    
    .new-fixedbottom .fixedbottom-inner {
        height: 60px;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
    }
    
    .new-fixedbottom .fixedbottom-btn {
        flex: 1;
        padding: 0 5px;
        flex-direction: row;
        font-size: 1.4rem;
        text-align: left;
        margin: 0;
        justify-content: center;
        gap: 0;
    }
    
    .new-fixedbottom .fixedbottom-dl {
        background-color: #2143B3;
    }
    
    .new-fixedbottom .fixedbottom-contact {
        background-color: #FF0000;
    }
    
		
    .new-fixedbottom .btn-icon {
        font-size: 1.8em;
        margin-right: 8px;
    }
    .new-fixedbottom .fixedbottom-btn-img {
        width: 30px;
        height: auto;
    }
    
    .new-fixedbottom .btn-text .sponly {
        display: block !important;
        line-height: 1.3;
    }
    
    .new-fixedbottom .fixedbottom-pagetop {
        width: 38px;
				min-width:38px;
        font-size: 2.0rem;
        background-color: #7FC4FD;
        position: static;
    }
		
		.new-fixedbottom .fixedbottom-contact .fixedbottom-btn-img{
			width:40px;
			height:34px;
		}
}


ax-width: 767px) {
}
@media (min-width: 768px) {
}

/* Noto Sans + Roboto */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Roboto:wght@700&display=swap");

body {
  /* font-family: "Noto Sans JP", sans-serif; */
}

@media (max-width: 767px) {
  /* =============================== */
  /* SPヘッダー */
  /* =============================== */
  .header {
    display: flex;
  }

  .header-logo {
    padding: 12px 0 12px 8px;
  }

  .header-logo > a {
    display: flex;
    height: 100%;
  }

  .header-logo img {
    width: 85px;
  }

  .pc-header-nav {
    display: none;
  }

  .pc-header-search {
    display: none;
  }

  .sp-header-menu {
    display: flex;
    margin-left: auto;
  }

  .sp-header-menu-item {
    border-left: 1px solid #c0c0c0;
  }

  /* メガメニュー非表示 */
  .megamenu-container {
    display: none !important;
  }
  /* =============================== */
}

@media (min-width: 768px) {
  /* =============================== */
  /* PCヘッダー */
  /* =============================== */
  .header {
    display: flex;
    align-items: center;
    margin-top: 0;
    width: 1090px;
    height: inherit;
  }

  .header-logo {
    margin-right: 45px;
  }

  .header-logo img {
    display: block;
  }

  .pc-header-nav {
    height: 100%;
    font-size: 1.4rem;
  }

  .pc-header-nav-list {
    display: flex;
    height: 100%;
  }

  .pc-header-nav-item + .pc-header-nav-item {
    margin-left: 1.5em;
  }

  .pc-header-nav-link {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
  }

  .pc-header-nav-link:hover,
  .pc-header-nav-link:focus {
    text-decoration: underline;
    color: #2699fb;
  }

  .pc-header-nav-link.is-active {
    pointer-events: none;
  }

  .pc-header-nav-link.is-active::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8.5px 15px 8.5px;
    border-color: transparent transparent #001030 transparent;
  }

  .pc-header-search {
    margin-left: auto;
  }

  .sp-header-menu {
    display: none;
  }

  /* メガメニュー */
  .megamenu-container {
    display: none;
    position: absolute;
    z-index: 6000;
    top: 110px;
    width: 100vw;
    background-color: #000;
  }

  .megamenu-container img {
    max-width: 100%;
  }

  .megamenu-inner {
    margin-right: auto;
    margin-left: auto;
    padding-top: 30px;
    padding-bottom: 40px;
    width: 1090px;
  }

  .megamenu-content {
    display: none;
    color: #fff;
  }

  /* ここからACFオプションページ */
  .megamenu-content-inner {
    display: flex;
    letter-spacing: 0;
  }

  .megamenu-content-inner a {
    color: #fff;
  }

  /* メガメニューヘッダーサイド */
  .megamenu-aside {
    margin-right: 45px;
    width: 200px;
  }

  .megamenu-title {
    font-size: 2rem;
    font-weight: bold;
  }

  .megamenu-top-link {
    display: inline-block;
    margin-top: 0.5em;
    font-size: 1.4rem;
  }

  .megamenu-lead {
    margin-top: 2em;
  }

  .megamenu-lead-title {
    margin-top: 1em;
    font-size: 1em;
    font-weight: bold;
    line-height: 1.5;
  }

  .megamenu-lead-title.fz-small {
    font-size: 1.5rem;
  }

  .megamenu-lead-content {
    margin-top: 1em;
  }

  .megamenu-lead-txt {
    font-size: 1.4rem;
    line-height: 1.7;
  }

  .megamenu-lead-txt + * {
    margin-top: 1em;
  }

  .megamenu-lead-btn-wrap {
    margin-top: 1em;
    text-align: center;
  }

  .megamenu-btn {
    display: inline-block;
    padding: 0.5em;
    max-width: 125px;
    width: 100%;
    border-radius: 1.3em;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
    transition: opacity 0.3s;
  }

  .megamenu-btn:hover,
  .megamenu-btn:focus {
    opacity: 0.7;
    text-decoration: none;
  }

  .megamenu-btn[data-bgcolor="blue"] {
    background-color: #0091d2;
  }

  .megamenu-btn[data-bgcolor="orange"] {
    background-color: #eb6c01;
  }

  .megamenu-btn[data-bgcolor="green"] {
    background-color: #12b36c;
  }

  /* メガメニューメイン */
  .megamenu-main {
    width: 845px;
  }

  .megamenu-main-row {
    display: flex;
  }

  .megamenu-block-heading {
    padding-bottom: 0.5em;
    border-bottom: 2px solid #fff;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
  }

  .megamenu-block + .megamenu-block {
    margin-left: 40px;
  }

  .megamenu-block {
    flex: 1 0 auto;
  }

  .megamenu-block-row {
    display: flex;
    justify-content: space-between;
  }

  .megamenu-block-col + .megamenu-block-col {
    margin-left: 1.5em;
  }

  .megamenu-nav-group + .megamenu-nav-group {
    margin-top: 1.625em;
  }

  .megamenu-nav-title {
    font-size: 1em;
    font-weight: bold;
    line-height: 1.5;
  }

  /* リンクの場合 */
  .megamenu-nav-title-link {
    display: flex;
    align-items: center;
    transition: opacity 0.3s;
  }

  .megamenu-nav-title > span {
    display: inline-block;
    margin-top: 0.1em;
    margin-left: 1.5em;
    font-size: 1rem;
    font-weight: normal;
  }

  .megamenu-nav-title-link:hover,
  .megamenu-nav-title-link:focus {
    opacity: 0.7;
    text-decoration: none;
  }

  .megamenu-block-content {
    margin-top: 0.8em;
  }

  .megamenu-nav-list {
    margin-top: 0.5em;
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 1.4;
  }

  .megamenu-nav-item + .megamenu-nav-item {
    margin-top: 0.5em;
  }

  /* サムネイルナビリスト */
  .megamenu-thumb-nav {
    padding-top: 0.8em;
  }

  .megamenu-thumb-list {
    display: flex;
    flex-wrap: wrap;
    margin-top: -1.5em;
    margin-left: -1em;
  }

  .megamenu-thumb-item {
    padding-top: 1.5em;
    padding-left: 1em;
    width: calc(99.999% / 4);
  }

  .megamenu-thumb-link {
  }

  .megamenu-thumb-title {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    margin-top:6px;
  }

  /* 横並びテキストナビ */
  .megamenu-txt-list-nav {
    margin-top: 1.2em;
    padding-top: 1.2em;
    border-top: 2px solid #fff;
  }

  .megamenu-txt-list-list {
    display: flex;
    flex-wrap: wrap;
    margin-top: -1em;
    font-size: 1.5rem;
    font-weight: bold;
  }

  .megamenu-txt-list-item {
    flex: 0 0 auto;
    margin-top: 1em;
    margin-right: 60px;
  }

  .megamenu-txt-list-link {
    display: flex;
  }

  .megamenu-txt-list-link::after {
    content: "›";
    display: inline-block;
    margin-left: 0.5em;
  }
}
/* =============================== */

/* =============================== */
/* ページコンテンツヘッダー */
/* =============================== */
.page-header-section {
  padding: 40px 0;
  background-color: #003277;
  color: #fff;
}

.page-header-section-inner {
  text-align: center;
}

.page-header-heading {
  font-size: 3.6rem;
  font-weight: bold;
}

.page-header-txt {
  margin-top: 0.5em;
  line-height: 1.67;
}

.page-header-bottom {
  margin-top: 2.5em;
}

.page-header-btn-row {
  display: flex;
  justify-content: center;
  align-items: center;
}

.page-header-btn-row > * + * {
  margin-left: 120px;
}

.page-header-txt-link {
  display: inline-block;
  color: #fff;
  font-size: 2.1rem;
  text-decoration: underline;
}

.round-btn {
  display: inline-block;
  padding: 0.5em;
  border-radius: 1.5em;
  border: 2px solid transparent;
  background-color: #2699fb;
  max-width: 360px;
  width: 100%;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.round-btn:hover,
.round-btn:focus {
  border-color: currentColor;
  background-color: #fff;
  color: #2699fb;
  text-decoration: none;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .page-header-section {
    margin-top: 48px;
    padding: 90px 0 45px;
  }
  .page-header-heading {
    font-size: 6.25vw; /*  20px */
  }
  .page-header-txt {
    font-size: 3.75vw; /*  12px */
    font-weight: bold;
  }

  .page-header-bottom {
    margin-top: 2em;
  }

  .page-header-btn-row {
    display: block;
  }

  .page-header-btn-row > * + * {
    margin-top: 1em;
    margin-left: 0;
  }

  .page-header-txt-link {
    font-size: 1.8rem;
  }

  .round-btn {
    width: 80%;
    font-size: 1.8rem;
  }

  /* 事例を探すヘッダーセクション */
  .case-study-header {
    position: relative;
    padding-top: 45px;
    padding-bottom: 25px;
    background-color: #fff;
    color: #000;
    margin-top:0;
  }

  .case-study-header > .breadcrumb {
    position: absolute;
    top: 0;
    left: 0;
  }
}

/* =============================== */

/* =============================== */
/* パンクズリスト */
/* =============================== */
.breadcrumb {
  margin-top: 1em;
  margin-bottom: 50px;
  font-size: 1.6rem;
}

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

.breadcrumb-item {
  margin-right: 0.5em;
}

.breadcrumb-item + .breadcrumb-item::before {
  content: "＞";
  display: inline-block;
}

.breadcrumb-item > a {
  color: #2699fb;
}

.breadcrumb-item > span {
}

@media (max-width: 767px) {
  .breadcrumb {
    margin-bottom: 1em;
    font-size: 1rem;
  }
}
/* =============================== */

/* =============================== */
/* ブログサイドナビ */
/* =============================== */
.blog-side-bnr-list {
  padding-bottom: 1.5em;
}
.blog-side-bnr-item + .blog-side-bnr-item {
  margin-top: 1.5em;
}
.blog-side-bnr-item img {
  max-width: 100%;
}
/* =============================== */

/* =============================== */
/* フッターCTAセクション */
/* =============================== */
.page-cta-section {
  padding-top: 75px;
  padding-bottom: 75px;
  background-color: rgba(204, 204, 204, 0.25);
  letter-spacing: 0;
}

/* 冒頭テキスト */
.page-cta-head {
  font-weight: bold;
  text-align: center;
}

.page-cta-head-subtxt {
  font-size: 1.6rem;
}

.page-cta-head-txt {
  font-size: 2.8rem;
}

/* お問い合わせボタン */
.page-cta-btn-container {
  margin-top: 2em;
  text-align: center;
}

.page-cta-btn {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  max-width: 500px;
  border-radius: 1.7em;
  font-size: 2.4rem;
}

/* お問い合わせ先 */
.page-cta-contact-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2em;
}

.page-cta-contact {
  display: flex;
  align-items: center;
  font-weight: bold;
}

.page-cta-contact-txt {
  font-size: 1.8rem;
}

.page-cta-contact-tel {
  display: flex;
  align-items: center;
  margin-left: 2em;
}

.page-cta-contact-tel .tel-num {
  font-family: "Roboto", sans-serif;
  font-size: 3.4rem;
  line-height: 1.4;
}
.page-cta-contact-tel .tel-num::before {
  content: "";
  display: inline-block;
  margin-right: 0.2em;
  width: 0.47em;
  height: 0.7em;
  background-image: url(../img/icon/icon_tel.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.page-cta-contact-tel .info-txt {
  margin-left: 1em;
  font-size: 1.4rem;
}

/* よくある質問 */
.page-cta-faq {
  margin-left: 2em;
  padding-left: 2em;
  border-left: 1px solid #ccc;
}

.page-cta-faq-link {
  color: #1571da;
  font-weight: bold;
}

@media (max-width: 767px) {
  .page-cta-section {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .page-cta-head-subtxt {
    font-size: 1.2rem;
  }
  .page-cta-head-txt {
    font-size: 2rem;
  }

  .page-cta-btn-container {
    margin-top: 1em;
  }
  .page-cta-btn {
    padding-top: 0.6em;
    padding-bottom: 0.6em;
    max-width: 290px;
    font-size: 1.5rem;
  }

  .page-cta-contact-wrap {
    display: block;
  }
  .page-cta-contact {
    display: block;
    text-align: center;
  }
  .page-cta-contact-txt {
    font-size: 1.4rem;
  }

  .page-cta-contact-tel {
    display: block;
    margin-left: 0;
  }

  .page-cta-contact-tel .tel-num {
    font-size: 2.6rem;
  }

  .page-cta-contact-tel .info-txt {
    margin-left: 0;
    font-size: 1.2rem;
  }
}

/*  */
.page-cta-footer-box {
  margin-top: 2em;
  margin-right: auto;
  margin-left: auto;
  max-width: 960px;
  background-color: #fff;
}

.page-cta-footer-box-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 30px;
}

.page-cta-footer-box-lead {
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  font-weight: bold;
}
.page-cta-footer-box-lead .txt-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  margin-right: 1em;
  width: 60px;
  height: 60px;
  border: 2px solid currentColor;
  border-radius: 50%;
}
.page-cta-footer-box-lead .lead-txt {
}

.page-cta-footer-box-btn {
  flex: 1 1 295px;
  margin-left: auto;
  max-width: 295px;
}

.page-cta-usefull-btn {
  padding-top: 0.9em;
  padding-bottom: 0.9em;
  border-color: currentColor;
  border-radius: 2em;
  background-color: #fff;
  color: #2699fb;
  font-size: 1.6rem;
}

.page-cta-usefull-btn:hover,
.page-cta-usefull-btn:focus {
  border-color: transparent;
  background-color: #2699fb;
  color: #fff;
}

@media (max-width: 767px) {
  .page-cta-footer-box-inner {
    display: block;
  }
  .page-cta-footer-box-lead {
    justify-content: center;
    font-size: 1.4rem;
  }
  .page-cta-footer-box-lead .txt-icon {
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
  }
  .page-cta-footer-box-btn {
    margin: 1.5em auto 0;
    max-width: 210px;
    width: 100%;
  }
  .page-cta-usefull-btn {
    width: 100%;
    font-size: 1.3rem;
  }
}

/* =============================== */

/* =============================== */
/* 絞り込み検索フォーム */
/* =============================== */
.sort-term-form {
}

.sort-term-group {
  display: flex;
  padding-top: 1em;
  padding-bottom: 1em;
  border-top: 1px solid #ddd;
}

.sort-term-group:last-of-type {
  border-bottom: 1px solid #ddd;
}

.sort-term-title {
  flex: 0 0 240px;
  padding-top: 0.2em;
  font-weight: bold;
}

.sort-term-body {
  flex: 1 1 auto;
}

.sort-term-items {
  display: flex;
  flex-wrap: wrap;
  margin-top: -0.2em;
}

.sort-term-item {
  margin-top: 0.2em;
  width: 50%;
}

.sort-term-item input {
  display: none;
}

.sort-term-item label {
  display: inline-block;
  position: relative;
  padding-left: 2em;
  line-height: 1.875;
}

/* チェックボックスのデザイン */
.sort-term-item label::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(0.25em);
  margin-right: 0.25em;
  width: 1.25em;
  height: 1.25em;
  border: 2px solid #ccc;
  border-radius: 3px;
}
.sort-term-item input:checked + label:before {
  border-color: transparent;
  background-color: #2699fb;
}

/* チェックマーク */
.sort-term-item input:checked + label:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0.56em;
  left: 0.4em;
  width: 0.55em;
  height: 0.4em;
  border-bottom: 3px solid #fff;
  border-left: 3px solid #fff;
  transform: rotate(-45deg);
}

.sort-term-submit {
  margin-top: 3em;
  text-align: center;
}

.sort-term-submit-btn {
  display: inline-block;
  /* デフォルトのbuttonをリセット */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  font-size: 100%;
  outline: none;

  padding: 0.5em;
  max-width: 160px;
  width: 100%;
  border: 1px solid transparent;
  border-radius: 1.4em;
  background-color: #2699fb;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 600;
  cursor: pointer;

  transition: opacity 0.3s;
}

.sort-term-submit-btn:hover,
.sort-term-submit-btn:focus {
  opacity: 0.7;
}

@media (min-width: 768px) {
  .sort-term-body {
    /* アコーディオンの挙動制御のためimportant */
    display: block !important;
  }

  .sort-term-items.sort-term-items--col4 > .sort-term-item {
    width: calc(99.999% / 4);
  }

  .sort-term-items.sort-term-items--col4 > .sort-term-item:nth-of-type(3n) {
    margin-right: calc(99.999% / 4);
  }
}
@media (max-width: 767px) {
  .sort-term-group {
    display: block;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0.5em;
  }

  .sort-term-title {
    position: relative;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
    color: #2699fb;
  }

  .sort-term-title::after {
    content: "＋";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    border: 1px solid currentColor;
    color: inherit;
    font-size: 1.2rem;
  }

  .sort-term-body {
    display: none;
    padding-bottom: 1em;
    font-size: 1.3rem;
  }

  .sort-term-title.is-open {
    color: #333;
  }

  .sort-term-title.is-open::after {
    content: "ー";
  }

  .sort-term-items {
    margin-top: -0.5em;
    margin-left: -1.5em;
  }

  .sort-term-item {
    margin-top: 0.5em;
    padding-left: 1.5em;
  }

  .sort-term-item.sort-term-item--cat {
    width: auto;
  }

  .sort-term-item label {
    padding-left: 1.7em;
  }

  /* チェックボックスのデザイン */
  .sort-term-item label::before {
    transform: translateY(0.35em);
    width: 1em;
    height: 1em;
    border: 1px solid #707070;
    border-radius: 0;
  }

  .sort-term-item input:checked + label:before {
    border-radius: 2px;
  }

  .sort-term-item input:checked + label:after {
    top: 0.6em;
    left: 0.25em;
    width: 0.45em;
    height: 0.3em;
    border-bottom-width: 2px;
    border-left-width: 2px;
  }

  .sort-term-submit {
    margin-top: 2em;
  }
  .sort-term-submit-btn {
    font-size: 1.6rem;
  }
}
/* =============================== */

/* =============================== */
/* 記事一覧リスト */
/* =============================== */
.cs-article-archive {
  margin-top: 90px;
}

.cs-article-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: -2.8125em;
  margin-left: -2.3125em;
  padding-bottom: 100px;
}


@media (max-width: 1200px) {
  .cs-article-list {
    width:100%;
  }
}
.cs-article-item {
  padding-top: 2.8125em;
  padding-left: 1.3125em;
  width: calc(99.999% / 4);
}

.cs-article-link {
  display: block;
  height: 100%;
}

.cs-article-link:hover,
.cs-article-link:focus {
  text-decoration: none;
  opacity: 0.8;
  transition: opacity 0.3s;
}

.cs-article {
  display: flex;
  flex-direction: column;
  height: 100%;
  letter-spacing: 0;
}

.cs-article-thumb {
}

.cs-article-thumb > img {
  width: 100%;
}

.cs-article-title {
  margin-top: 1em;
  min-height: 6.4em; /* 文字配置調整のため */
  color: #1571da;
  font-size: 1.6rem;
  line-height: 1.85;
}

.cs-article-terms {
  padding-top: 1em;
}

.cs-article-term-group {
  display: flex;
  font-size: 1.4rem;
  line-height: 22px;
  margin-bottom:8px;
}

.cs-article-term-group-tilte {
  font-weight: normal;
  white-space: nowrap;
}

.cs-article-term-list {
  margin-left: 0.6em;
  line-height:1.6;
}

.cs-article-term-list > span {
  margin-right: 1em;
}

/* 記事がなかった場合 */
.cs-archive-error-txt {
  padding-bottom: 100px;
  font-size: 1.8rem;
  text-align: center;
}

@media (max-width: 767px) {
  .cs-article-list {
    display: block;
    padding-bottom: 60px;
    margin:0 auto 24px auto;
  }

  .cs-article-item {
    width: 100%;
    padding-top: 0;
    padding-left:0;
    padding-bottom:36px;
  }
  .cs-article {
    flex-wrap: wrap;
    flex-direction: row;
  }

  .cs-article-thumb {
    flex: 0 0 40%;
  }

  .cs-article-title {
    flex: 0 0 60%;
    margin-top: 0;
    padding-left: 1em;
    min-height: auto;
    font-size: 1.4rem;
  }

  .cs-article-term-group {
    font-size: 1.2rem;
  }

  .cs-article-term-group-tilte {
  }

  .cs-article-term-list {
    margin-left: 1em;
  }
}

/* =============================== */

/* =============================== */
/* 製品・サービス ページ */
/* =============================== */
/* ページコンテンツ部分 */
.page-products-service {
  letter-spacing: 0;
}
/* ページコンテンツヘッダー */
.ps-head-section {
}
.ps-head-section-inner {
  margin-right: auto;
  margin-left: auto;
  width: 1088px;
}

.ps-head-txt {
  font-size: 2.6rem;
  line-height: 1.8;
  text-align: center;
}
@media (max-width: 767px) {
  .page-products-service {
    padding-top: 20px;
    padding-bottom: 45px;
  }
  .ps-head-section-inner {
    margin-right: 14px;
    margin-left: 14px;
    width: auto;
  }
  .ps-head-txt {
    font-size: 1.3rem;
  }
}
@media (max-width: 359px) {
  .ps-head-txt {
    font-size: 1rem;
  }
}

/* タブナビゲーション */
.ps-tab-nav {
  margin-top: 2em;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.3;
}
.ps-tab-nav-list {
  display: flex;
}
.ps-tab-nav-item {
  position: relative;
  width: 20%;
  border: 2px solid #fff;
  background-color: #e2e2e2;
}
.ps-tab-nav-item > a {
  display: block;
  padding: 1.2em 0;
  color: inherit;
  text-align: center;
}
.ps-tab-nav-item > a:hover,
.ps-tab-nav-item > a:focus {
  background-color: #2699fb;
  color: #fff;
  text-decoration: none;
  transition: 0.3s;
}
.ps-tab-nav-item.is-current {
  background-color: #2699fb;
  color: #fff;
}
.ps-tab-nav-item.is-current::after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -2px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 23px 13px 0 13px;
  border-color: #2698fb transparent transparent transparent;
}
.ps-tab-nav-item.is-current > a:hover,
.ps-tab-nav-item.is-current > a:focus {
  text-decoration: none;
}
@media (max-width: 767px) {
  .ps-tab-nav {
    margin-top: 2.5em;
    font-size: 1.2rem;
    line-height: 1.45;
  }
  .ps-tab-nav-item {
    border-width: 1px;
  }
  .ps-tab-nav-item.is-current::after {
    border-width: 12px 6px 0 6px;
  }
}
@media (max-width: 359px){
  .ps-tab-nav {
    font-size: 1rem;
  }
}

/* ページ内リンクナビ */
.ps-page-nav {
  display: flex;
  flex-wrap: wrap;
  margin-top: -1.5em;
  margin-left: -1em;
  padding-top: 3.75em;
  padding-bottom: 100px;
  font-size: 2rem;
  font-weight: bold;
}
.ps-page-nav-list {
  padding-top: 1.5em;
  padding-left: 1em;
  width: calc(99.9999% / 2);
}
.ps-page-nav-item + .ps-page-nav-item {
  margin-top: 1.5em;
}
.ps-page-nav-item > a {
  display: inline-block;
  margin-left: 1.3em;
  text-indent: -1.3em;
  color: #2699fb;
}
.ps-page-nav-item > a::before {
  content: "";
  display: inline-block;
  transform: rotate(-45deg);
  margin-right: 0.6em;
  margin-bottom: 0.2em;
  width: 0.4em;
  height: 0.4em;
  border-bottom: 3px solid currentColor;
  border-left: 3px solid currentColor;
}
@media (max-width: 767px) {
  .ps-page-nav {
    padding-bottom: 35px;
    font-size: 1.1rem;
  }
  .ps-page-nav-item > a::before {
    width: 0.5em;
    height: 0.5em;
    border-bottom-width: 2px;
    border-left-width: 2px;
  }
}

/* ボーダーセクション */
.ps-border-section {
}

.ps-border-section + .ps-border-section .ps-border-section-inner {
  border-top: 1px solid #c7c7c7;
}
.ps-border-section-inner {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .ps-border-section + .ps-border-section .ps-border-section-inner {
    border-top: none;
  }
  .ps-border-section-inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

/* 基本セクション */
.ps-common-section {
}

.ps-common-section-heading {
  padding: 0.6em;
  background-color: #f5f5f5;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.375;
  text-align: center;
}

.ps-common-section-inner {
  padding-top: 2em;
}

.ps-common-section-intro-txt {
  font-size: 2.4rem;
  line-height: 1.75;
}

.ps-common-section-footer {
  margin-top: 50px;
}

.ps-common-section-btn-wrap {
  display: flex;
  justify-content: center;
}

.ps-common-section-btn-wrap > .ps-round-btn {
  max-width: 300px;
}

.ps-common-section-to-top {
  margin-top: 5em;
  margin-bottom: 1em;
  text-align: right;
}
.ps-common-section-to-top-link {
  display: inline-flex;
  align-items: center;
  color: #2699fb;
}
.ps-common-section-to-top-link::before {
  content: "";
  display: inline-block;
  margin-right: 0.25em;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0.5em 0.9375em 0.5em;
  border-color: transparent transparent currentColor transparent;
}

@media (max-width: 767px) {
  .ps-common-section-heading {
    padding: 0.7em;
    font-size: 1.6rem;
  }
  .ps-common-section-inner {
    padding-top: 1em;
  }

  .ps-common-section-intro-txt {
    font-size: 1rem;
  }

  .ps-common-section-footer {
    margin-top: 30px;
  }

  .ps-common-section-to-top {
    margin-top: 3em;
    font-size: 1rem;
  }
}

/* セクション導入部分 */
.ps-section-intro {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.ps-section-intro-main {
  flex: 0 0 625px;
}
.ps-section-intro-title {
  font-size: 4rem;
  font-weight: bold;
  line-height: 1.4;
}
.ps-section-intro-catch {
  margin-top: 0.8em;
  font-size: 3.5rem;
  line-height: 1.4;
}
.ps-section-intro-txt {
  margin-top: 1em;
  font-size: 2.4rem;
  line-height: 1.67;
}

.ps-section-intro-btn-wrap {
  padding-top: 3em;
  display: flex;
  justify-content: center;
}

.ps-round-btn {
  display: inline-block;
  padding: 0.5em;
  max-width: 390px;
  width: 100%;
  border: 2px solid currentColor;
  border-radius: 1.4em;
  background-color: #fff;
  color: #292b2d;
  font-size: 2.5rem;
  font-weight: 500;
  text-align: center;
}
.ps-round-btn::after {
  content: "›";
  margin-left: 0.5em;
}
.ps-round-btn:hover,
.ps-round-btn:focus {
  transition: 0.3s;
  border-color: transparent;
  background-color: #292b2d;
  color: #fff;
  text-decoration: none;
}
.ps-round-btn + .ps-round-btn {
  margin-left: 1.4em;
}

/* ボタン色違い */
.ps-round-btn[data-bgcolor] {
  border-color: transparent;
  color: #fff;
}
.ps-round-btn[data-bgcolor]:hover,
.ps-round-btn[data-bgcolor]:focus {
  transition: 0.3s;
  opacity: 0.7;
}
.ps-round-btn[data-bgcolor="orange"] {
  background-color: #eb6c01;
}
.ps-round-btn[data-bgcolor="blue"] {
  background-color: #1d43c5;
}
.ps-round-btn[data-bgcolor="light-blue"] {
  background-color: #2699fb;
}
.ps-round-btn[data-bgcolor="gray"] {
  background-color: #565656;
}
.ps-round-btn[data-bgcolor="green"] {
  background-color: #84c11a;
}

.ps-section-intro-aside {
  flex: 0 1 405px;
}
.ps-section-intro-pic {
}
.ps-section-intro-pic > img {
  width: 100%;
}
@media (max-width: 767px) {
  .ps-section-intro {
    flex-direction: column-reverse;
  }
  .ps-section-intro-title {
    font-size: 2rem;
    text-align: center;
  }
  .ps-section-intro-catch {
    font-size: 1.4rem;
    text-align: center;
  }
  .ps-section-intro-txt {
    font-size: 1.2rem;
    line-height: 2;
  }
  .ps-section-intro-main {
    flex-basis: auto;
    margin-top: 1em;
  }
  .ps-section-intro-aside {
    flex-basis: auto;
  }
  .ps-section-intro-pic {
    margin-right: auto;
    margin-left: auto;
    width: 50%;
  }
  .ps-section-intro-btn-wrap {
    padding-top: 1.5em;
  }
  .ps-round-btn {
    padding-top: 0.6em;
    padding-bottom: 0.6em;
    border-width: 1px;
    font-size: 1.1rem;
  }
  .ps-section-intro-btn-wrap.single-btn .ps-round-btn {
    width: 60%;
  }
}

/* 製品リスト */
.ps-product-container {
  padding-top: 5em;
}
.ps-product-card-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: -2.5em;
  margin-left: -1.25em;
}
.ps-product-card {
  padding-top: 2.5em;
  padding-left: 1.25em;
  width: calc(99.999% / 4);
}
.ps-product-card-link {
}
.ps-product-card-link:hover,
.ps-product-card-link:focus {
  transition: 0.3s;
  opacity: 0.7;
  text-decoration: none;
}

.ps-product-card-link:hover .ps-product-card-txt,
.ps-product-card-link:focus.ps-product-card-txt {
  text-decoration: underline;
}

.ps-product-card-inner {
}
.ps-product-card-pic {
}
.ps-product-card-pic > img {
  max-width: 100%;
  width: 100%;
}
.ps-product-card-title {
  margin-top: 0.2em;
  color: #2699fb;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}
.ps-product-card-catch {
  margin-top: 0.5em;
  font-weight: bold;
  text-align: center;
}
.ps-product-card-txt {
  margin-top: 0.5em;
  line-height: 1.875;
}
@media (max-width: 767px) {
  .ps-product-container {
    padding-top: 1.5em;
  }
  .ps-product-card-list {
    margin-top: -1.25em;
  }
  .ps-product-card {
    padding-top: 1.25em;
    width: calc(99.999% / 2);
  }
  .ps-product-card-title {
    font-size: 1.3rem;
  }
  .ps-product-card-catch {
    font-size: 1rem;
  }
  .ps-product-card-txt {
    font-size: 1rem;
  }
}
/* =============================== */

