@charset "UTF-8";
body {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    font-size: 15px;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 20px;
}
/* CSS Document */
body header {
    background-color: rgba(0,0,0,0.80);
    min-height: 100px;
    position: fixed;
    top: 0px;
    z-index: 99;
    left: 0px;
    right: 0px;
}
footer {
    background-color: #2F2F2F;
    color: #FFFFFF;
	clear:both;
	padding-top:20px;
}
main {
padding-top:30px;
padding-bottom:0px;
}
.clear {
    clear: both;
}
#ideal, .sec-title {
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 5px;
}
.sec-title {
    text-align: center;
}
.engtitle {
    color: #2A6684;
    font-size: 0.80rem;
	margin-left: 20px;
}
.bottombody h2{
text-align:left;
}
h2,h3,h4{font-family: 'Noto Sans JP', sans-serif;}
h2{
    color: #2F2F2F;
	clear: both;
	}
h3{
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    border-bottom: 1px solid #2A6684;
	font-weight:500;
	font-size:1.3rem;
	color:#474747;
    margin-top: 10px;
    margin-bottom: 20px;
	clear:both;
}
h4{
    border-left: 5px solid #2A6684;
    padding-top: 10px;
    padding-right: 15px;
    padding-bottom: 10px;
    padding-left: 15px;
    margin-top: 10px;
    margin-right: 0px;
    margin-bottom: 20px;
    margin-left: 0px;
	font-weight:400;
	font-size:1.15rem;
	color:#474747;
	clear:both;
}
h5{
    color: #FFFFFF;
    font-size: 1.2rem;
}
.img-link {
    width: 100%;
}
main p, main ul li, main ol li{
font-size:1rem;
line-height:40px;
}
main ul li, main ol li{
padding-left:1%;
padding-right:2%;
}
/*テーブルスタイル*/
.global-beside-table ,.global-vertical-table ,.global-verticalblue-table {
    margin-bottom: 40px;
}
.global-beside-table tbody tr ,.global-verticalblue-table tbody tr{
    border-bottom: 1px dashed #212121;
}
.global-vertical-table tbody tr {
    border-bottom: 1px solid #898989;
}

table {
    border-collapse:  collapse; /* セルの線を重ねる */
}
td {
	padding:10px;
	font-size: 0.75rem;
}
.global-vertical-table tbody tr th ,.global-beside-table tbody tr th ,.global-verticalblue-table tbody tr th{
    text-align: center;
    font-size: 0.82rem;
    line-height: 1.2rem;
    padding-top: 5px;
    padding-right: 10px;
    padding-bottom: 5px;
    padding-left: 10px;
}
.global-vertical-table tbody tr td ,.global-beside-table tbody tr td ,.global-verticalblue-table tbody tr td{
    padding-top: 5px;
    padding-right: 10px;
    padding-bottom: 5px;
    padding-left: 10px;
}

/*ヘッダーの色以外*/
/*ヘッダー見た目操作*/
.global-beside-table tbody tr th ,.global-verticalblue-table tbody tr th{
    background-color: #688EAF;
    color: #FFFFFF;
}
.global-beside-table tbody tr:nth-child(odd) td ,.global-verticalblue-table tbody tr:nth-child(odd) td{
	background: #EFEFEF;
}
.global-verticalblue-table tbody tr th{
	border: dashed #FFFFFF;
	border-width: 1px 0px;
}
.global-beside-table tbody tr th {
	border: dashed #FFFFFF;
	border-width: 0px 1px;
}
.global-vertical-table tbody tr th {
    background-color: #F2F2F2;
}

.block-link {
    background-color: #2A6684;
    color: #FFFFFF;
    text-align: center;
    padding-top: 8px;
    padding-right: 8px;
    padding-bottom: 8px;
    padding-left: 8px;
	margin-left:auto;
	margin-right:auto;
    font-size: 1rem;
    line-height: 1rem;
    width: 60%;
	display:block;
}
.hyp-link {
    text-decoration: none;
    border-bottom: 1px solid #2A6684;
    list-style-position: outside;
    list-style-type: disc;
	color:#474747;
}
.hyp-link::after {
    content: "＞";
	}
.tech-box .hyp-link{
color:#fff;
}
.material-symbols-outlined {
  font-variation-settings:
  'FILL' 0,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}
.mainvisual {
    clear: both;
}
.nav_list li a, .global-foot ul li a, .news_thumb li a, .news_thumb li a:hover .news-title, .side_list li a{
-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.global-foot ul li a:hover {
    background-color: #F7F7F7;
    color: #212121;
}
.foot-build .footlogo {
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-bottom: 0px;
    padding-bottom: 0px;
    height: 30px;
    margin-top: 20px;
}
.foot-build .copyright {
    color: #FFFFFF;
    text-align: center;
    font-size: 0.89rem;
    margin-top: 30px;
    margin-right: 0px;
    margin-bottom: 10px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 20px;
    padding-left: 0px;
    display: block;
}
.page_top {
position:fixed;
bottom:30px;
right:30px;
width: 55px;
height: 55px;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
color:#fff;
font-size:20px;
text-decoration:none;
background:#2A6684;
text-align: center;
line-height: 55px;
}
.bottomvisual{
background-color:#EEEEEE;
display:block;
background-position: center top;
background-repeat:no-repeat;
}
.pagetoptitle{
padding:5px;
background-color:#000000;
opacity:0.75;
}
.pagetoptitle .sec-title, .pagetoptitle .engtitle{
color:#fff;
}
.breadcrumbs{
  background-color: #E1E1E1;
  height:40px;
  color:#373737;
}
.breadcrumbs a{
text-decoration:none;
color:#464646;
}
.topsec .valebox{
padding:20px;
border:1px solid #E1E1E1;
border-radius:10px;
box-shadow: 0px 0px 5px #E1E1E1;
}
.topsec .valebox p{
color:#474747;
padding:0px 0px 0px 0px;
margin: 0px 0px 0px 0px;
line-height:25px;
height:60px;
font-size:0.85rem;
text-align:center;
font-weight:400;
}
.topsec .valebox .value-image{
width:120px;
height:120px;
background-color:#EFEFEF;
border-radius:60px;
margin-left:auto;
margin-right:auto;
display:block;
}
.sa-technology{
color:#fff;
background-color:#3E3E3E;
border-radius:10px;
padding:20px;
width:90%;
margin-left:auto;
margin-right:auto;
}
.sa-technology h2{color:#fff;}
.sa-technology h2 .engtitle{color:#fff;}
.sa-news .newslist{
border-top:3px solid #373737;
border-bottom:3px solid #373737;
margin-bottom:50px;
overflow-y: scroll;
height:250px;
}
.sa-news .newslist ul{
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    list-style-image: none;
    list-style-type: none;
}
.sa-news .newslist ul li{border-bottom:1px dotted #878787;　list-style-image: none;}
.sa-news .newslist ul li a{padding:20px; display:block; text-decoration:none; color:#373737;}
.sa-news .newslist ul li a:hover{background-color:#373737; color:#fff;}
.bgtop_base {
background: rgb(232,235,237);
background: linear-gradient(107deg, rgba(232,235,237,1) 25%, rgba(249,249,249,1) 25%);
margin-top:0px;
margin-top:0px;
margin-top:0px;
margin-top:0px;
padding-top:60px;
padding-bottom:60px;
}
.hissu{color:#fff; background-color:red; padding:3px; font-size:0.65rem; margin-left:20px;}
.contact-table{
 background-color:#EFEFEF;
}

.contact-table dt, .contact-table dd{
padding:20px;
width:60%;
}
.contact-table dd input{
    margin-bottom: 20px;
    padding-top: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    border-radius: 5px;
    border: 1px solid #898989;
    height: 30px;
}
.contact-table dd textarea{
    width: 90%;
    height: 100px;
    margin-bottom: 20px;
    padding-top: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    border: 1px solid #898989;
    border-radius: 5px;
}
.toparea, .toparea #ideal{
margin:0px;
color:#2A6684;
}
.wraptb{
	overflow-x: scroll;
}
.news_thumb {list-style:none; margin:0px 0px 20px 0px; padding:0px 0px 0px 0px;}
.news_thumb li {border-bottom:1px dotted #373737; margin:0px 0px 10px 0px; clear:both;}
.news_thumb li a {display:block; text-decoration:none; color:#464646;}
.news_thumb li a:hover {background-color:#f2f2f2; color:#373737;}
.news_thumb li a .news-photo{display:block;}
.news_thumb li a:hover .news-title{background: linear-gradient(transparent 80%, #588ca6 40%);}
.news_thumb li a .news-date{background-color:#2A6684; padding:10px 10px 10px 10px; color:#fff; margin-right:20px;}
.main-area{padding-bottom:80px;}
.contact-table dt,.contact-table dd {padding:10px 0px 10px 0px; margin:10px 0px 10px 0px;}
.tokusei-list{}
.flat-link{border:3px solid #2A6684; padding:10px 40px 10px 40px; width:240px; height:40px; text-align:center; font-size:16px; line-height:40px; border-radius:40px; font-weight:700; text-decoration:none; color:#2A6684; display:block; margin:20px auto 30px auto;}
.flat-link:hover{border:3px solid #2A6684; background-color:#2A6684; color:#fff;}
/*再記述　共通Ver先輩社員の声*/
.empvoice{background-color:#fff; padding:3%; border-radius:20px; margin-bottom:30px; clear:both;}
.empvoice .emppic-thum{display:block; margin:0px;}
.empvoice .empname{background-color:#2A6684; color:#fff; font-family: 'Noto Serif JP', serif; font-weight:700; padding:10px 30px 10px 60px; font-size:1.43rem; line-height:40px;}
.empvoice .cp_qa .faq-content .faq-button {background: #efefef; padding: 15px; color: #373737; border-radius:6px; font-weight:600;}
.empvoice .cp_qa .faq-content .faq-button:hover {cursor: pointer;}
.empvoice .cp_qa .faq-content .faq-button::before {content: "Ｑ："}
.empvoice .cp_qa .faq-content .faq-button::after {position:relative; right:0px; content: "▼"}
.empvoice .cp_qa .faq-content {border: 1px solid #efefef; margin: 20px auto; border-radius:6px;}
.empvoice .cp_qa .faq-content .faq-detail{padding:20px;}
.empvoice .cp_qa .faq-content .faq-detail::before{content: "Ａ："}
.footersite-map ul {list-style:none; padding:0px; margin:0px;}
.footersite-map ul a {color:#fff; text-decoration:none;}
.footersite-map .mapmenu{margin:0px 0px 15px 0px;}
.footersite-map .mapmenu li a, .footersite-map .mapmenu ul li a{display:block;}
.bannerbox{display:block;}
.bannerbox img{ width:100%; height:auto;}

/* デザインC(PC) */
@media screen and (min-width: 1025px) {
/* PC用レイアウト 1,025px以上の範囲に収めるデザインはこの中に記述 */
.heading_body {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.mainvisual{
position: relative;
	height:750px;
	z-index:-1;
}

video {
    /*天地中央配置*/
    overflow: hidden;
    top: 50%;
    left: 50%;
    transform: translate(0%, -15%);
    /*縦横幅指定*/
    width: 177.77vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
/*再記述　PC Ver先輩社員の声*/
.empvoice .emppic-thum{max-width:90%; height:auto;}
.empvoice .empname{margin-left:-80px;}
.bottomvisual{
height:70px;
padding-top:330px;
background-size:100%;
}
.breadbody{
width:1200px;
margin-left:auto;
margin-right:auto;
font-size:0.75rem;
line-height:40px;
}
main .topsec, .bottombody{
    width: 1000px;
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-left: 20px;
    margin-left: auto;
    margin-right: auto;
}
/*サイドメニュー設置のため縮めている*/

.side-menu{float:left; width:200px; margin-left:0px;}
.heading_body #rogoarea {
    float: left;
    width: 400px;
}
.heading_body #rogoarea h1 {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 20px;
    padding-right: 20px;
    padding-bottom: 5px;
}
.heading_body #rogoarea .discrupt {
    margin-top: 5px;
    margin-right: 0px;
    margin-bottom: 10px;
    margin-left: 0px;
    color: #FFFFFF;
    font-size: 0.74rem;
}
.heading_body .hamburger-menu .menu-btn  {
    display: none;
}
.nav_list  {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    list-style-image: none;
  }
 .nav .nav_list li{
    display: inline-block;
    text-align: center;
    border-left: 1px solid #FFFFFF;
    margin-top: 0px;
    margin-right: -4px;
    margin-bottom: 0px;
    margin-left: 0px;
    list-style-image: none;
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 0px;
  }
 .nav .nav_list li a{
    color: #fff;
    text-align: center;
    text-decoration: none;
    display: block;
    padding-top: 45px;
    padding-right: 24px;
    padding-left: 20px;
    padding-bottom: 45px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
  }

.nav .nav_list li a:hover {
    background-color: #FBFBFB;
    color: #212121;
}
.nav .nav_list li .sub-menu{display:none;}
.nav .nav_list li:hover .sub-menu {display: inline;　z-index:99; position:absolute; background-color: rgba(0,0,0,0.80); padding-left: 0px; text-align:left;}
.nav .nav_list li .sub-menu li{display: flex; float:none; height:60px; position:relative; border-left:none; width:250px;margin-right: 0px; left:0px;}
.nav .nav_list li .sub-menu li a{padding:10px 0px 10px 30px; line-height:40px; width:100%; text-align:left;}
.foot-build {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
.foot-build .global-foot {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
}

.foot-build .global-foot ul {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    list-style-image: none;
    list-style-type: none;
}
.global-foot ul li {
    border-right: 1px solid #FCFCFC;
    float: left;
    min-width: 160px;
    max-width: 300px;
}
.global-foot ul li:last-child {
    border-right: 0px solid #FCFCFC;
}
.global-foot ul li a {
    text-align: center;
    font-size: 0.8rem;
    color: #FFFFFF;
    text-decoration: none;
    padding-top: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    padding-left: 30px;
    display: block;
}
.foot-build form .formbox {
    float: left;
}
.foot-build form .fright  {
    width: 65%;
}
.foot-build form .fleft  {
    width: 35%;
}
	.foot-build form .formbox input{
    width: 380px;
    margin-bottom: 20px;
    padding-top: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    border-radius: 5px;
    border: 1px solid #898989;
    height: 30px;
    -webkit-box-shadow: inset 2px 2px 5px #909090;
    box-shadow: inset 2px 2px 5px #909090;
	}
form .formbox textarea {
    width: 750px;
    height: 100px;
    margin-bottom: 20px;
    padding-top: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    border: 1px solid #898989;
    border-radius: 5px;
    -webkit-box-shadow: inset 2px 2px 5px #898989;
    box-shadow: inset 2px 2px 5px #898989;
}
form .formbox.fright .checkarea {
    float: left;
    width: 550px;
    height: auto;
}
.formbox.fright .checkarea .checkb{
    width: auto;
    height: auto;
    margin-right: 20px;
    margin-bottom: 0px;
    margin-top: 0px;
    margin-left: 0px;
}
.formbox.fright .checkarea #doui {
    width: auto;
    height: auto;
    margin-right: 20px;
    margin-bottom: 0px;
    margin-top: 0px;
    margin-left: 0px;
}
.formbox.fright .checkarea p {
    margin-top: 5px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    font-size: 0.8rem;
}
form .formbox.fright .soushin {
    float: left;
    width: 180px;
    border: 1px solid #6AA5C2;
    background-color: #2A6684;
    color: #F1F1F1;
    border-radius: 0px;
    -webkit-box-shadow: 0px 0px 0px 0px;
    box-shadow: 0px 0px 0px 0px;
}
.topsec .valebox{
width:20%;
margin-top:30px;
margin-bottom:50px;
margin-left:0%;
margin-right:2%;
float:left;
}
.topsec .valebox:last-child{
width:17%;
margin-left:0%;
margin-right:0%;
}
.sa-technology .tech-box{
width:30%;
margin-top:30px;
margin-bottom:50px;
margin-left:2%;
margin-right:1%;
float:left;
text-align:center;
}
.sa-technology .techbox-icon{
width:90px;
height:90px;
display:block;
margin-left:auto;
margin-right:auto;
}
.sa-technology p{font-size:0.9rem; line-height:1.25rem;}
.sa-technology .leftb, .sa-technology .centerb{
border-right:1px solid #fff;
}
.left-content{
float:left;
width:48%;
margin-right:2%;
}
.right-photo{
float:left;
width:48%;
margin-left:2%;
}
.left-content img, .right-content img {
width:90%;
display:block;
margin-left:auto;
margin-right:auto;
}
.toparea{
width:100%;
height:400px;
background-image:url("http://soleil-design.com/test-site/sysad/wp-content/uploads/2023/10/2240028013.jpg");
background-position: top;
background-position: right;
background-repeat: no-repeat;
}
.topmsbody{
width:1000px;
margin-left:auto;
margin-right:auto;
padding:100px;
}
.img-link{}
.csr-left{
	width:60%;
	height:auto;
	margin-right:2%;
	float:left;
}
.csr-left p{margin-top:-3px; margin-bottom:20px;}
.csr-right{
	width:38%;
	height:auto;
	margin:0%;
	float:left;
}
.presiname{
	text-align:left;
	font-family:'Noto Serif JP', serif;
	padding:0px;
	margin:10px;
	font-weight:700;
	font-size:1.2rem;
	line-height:35px;
}
.emp-name{
	text-align:center;
	font-family:'Noto Serif JP', serif;
	padding:0px;
	margin:10px;
	font-weight:700;
	font-size:1.2rem;
	line-height:35px;
}
.prodimage{
	width:90%;
	min-width:360px;
	height:auto;
	display:block;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:20px;
}
.left-clm, .right-clm{
	width:50%;
	float:left;
}
.left-clm .prodimage, .right-clm .prodimage{
	margin-top:30px;
}
.th-clm-left, .th-clm-cent, .th-clm-right{
	width:46%;
	float:left;
	padding:2%;
}
.listp{
font-size:1rem;
line-height:40px;
margin-bottom:10px;
}
/*ヘッダーPC用*/
/*フォームPC用*/
table{width:100%;}
.wraptab table{width:100%;}
.news_thumb li a{height:200px;}
.news_thumb li a .news-photo{display:block; width:280px; height:189px; margin-right:30px; background-repeat:no-repeat; background-size:cover; background-position:center center; float:left; padding-top:11px;}
.news_thumb li a .news-title{font-size:1.4rem; line-height:45px; margin-bottom:20px;}
.contact-table dt, .contact-table dd{ float:left; line-height:35px;}
.contact-table dt{text-align:center; width:240px;}
.contact-table dd input{width:95%; margin-left:5%;}
.contact-table .checker input{width:20px; height:auto; padding:0px;}
.contact-table dd textarea{width:100%; height:140px;}
.soushin {background-color: #2A6684; color: #fff; width: 100%; border: none; padding: 10px 0px 10px 0px; font-size: 0.9rem; border-radius: 0px 0px 10px 10px;}
.post-area{width:780px; float:left; margin-right:20px;}
.side-menu h2{height:40px; line-height:40px; border-left:8px solid #2A6684; color:#373737; font-size:0.95rem; padding-left:15px;}
.side_list{margin:0px 0px 0px 0px; padding:0px 0px 0px 0px; list-style:none;}
.side_list li{border-bottom:1px solid #e6e6e6;}
.side_list li a{height:20px; line-height:20px; padding:8px; display:block; color:#373737; text-decoration:none; font-weight:500;}
.side_list li a:hover{color:#fff; background-color:#373737;}
.side-menu li ul{margin-bottom:20px; list-style:none; padding:0px 0px 0px 0px;}
.side-menu li ul li{border-bottom:1px dotted #444444; padding:0px 0px 0px 0px;}
.side-menu li ul li a{font-size:0.78rem; line-height:15px; height:15px; padding:8px; font-weight:400;}
.post-area .post-topimg{display:block; width:100%; height:300px; margin-bottom:30px; background-repeat:no-repeat; background-size:cover; background-position:center center;}
.footersite-map .mapmenu {float:left; width:25%;}
.footersite-map .mapmenu ul{padding:0px 0px 0px 10px;}
.footersite-map .mapmenu li, .footersite-map .mapmenu ul li{margin:5px 0px 5px 0px;}
.footersite-map .mapmenu li a, .footersite-map .mapmenu ul li a{padding:5px 5px 5px 5px;}
.footersite-map .mapmenu li a:hover, .footersite-map .mapmenu ul li a:hover{background-color:#fff; color:#373737;}
.footbannerbox{display:none;}
.footbannerbox img{ width:100%; height:auto;}

}
@media only screen and (max-width: 1024px) {
.bottomvisual{
height:70px;
padding-top:330px;
background-size: cover;
}
.mainvisual{
position: relative;
	height:300px;
	z-index:-1;
}
video {
    /*天地中央配置*/
    overflow: hidden;
    top: 50%;
    left: 50%;
    transform: translate(0%, -15%);
    /*縦横幅指定*/
    width: 177.77vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
.breadbody{
width:96%;
margin-left:auto;
margin-right:auto;
font-size:0.65rem;
line-height:40px;
}
.empvoice .emppic-thum{max-width:95%; height:auto;}
.empvoice .empname{margin-left:-60px; padding:10px 10px 10px 40px;}

.nav {
    position: fixed;
    right: -320px; /* 右から出てくる */
    top: 0;
    width: 300px; /* スマホに収まるサイズ */
    height: 100vh;
    padding-top: 60px;
    background-color: #525252;
    transition: all .6s;
    z-index: 200;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
  }
#rogoarea h1 img {
    width: 200px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding-top: 10px;
}
.heading_body #rogoarea .discrupt {
    color: #FFFFFF;
    font-size: 0.83rem;
    text-align: center;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 20px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
  .hamburger {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 40px; /* クリックしやすい幅 */
    height: 40px; /* クリックしやすい高さ */
    cursor: pointer;
    z-index: 300;
	  	   

  }
 .nav .nav_list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .nav_item {
    text-align: center;
    padding: 0 14px;
  }
  .nav_item a {
    display: block;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    color: #333;
  }
  .nav_item a:hover {
    background-color: #eee;
  }
  .hamburger_border {
    position: absolute;
    left: 5px;
    width: 30px;
    height: 2px;
    background-color: #FFFFFF;
    transition: all .6s;
    color: #fff;
  }
  .hamburger_border_top {
    top: 12px;
  }
  .hamburger_border_center {
    top: 20px;
  }
  .hamburger_border_bottom {
    top: 28px;
  }
  .black_bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #333;
    opacity: 0;
    visibility: hidden;
    transition: all .6s;
    cursor: pointer;
  }

  /* 表示された時用のCSS */
  .nav-open .nav {
    right: 0;
  }
  .nav-open .black_bg {
    opacity: .8;
    visibility: visible;
  }
  .nav-open .hamburger_border_top {
    transform: rotate(45deg);
    top: 20px;
  }
  .nav-open .hamburger_border_center {
    width: 0;
    left: 50%;
  }
  .nav-open .hamburger_border_bottom {
    transform: rotate(-45deg);
    top: 20px;
  }
.nav .nav_list li {
    border-bottom: 1px dotted #BCBCBC;
}
.nav .nav_list li a {
    color: #FFFFFF;
    text-decoration: none;
    padding-top: 15px;
    padding-right: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    display: block;
}
.nav .nav_list li .sub-menu{margin-bottom:15px;}
.nav .nav_list li .sub-menu li{list-style:none; border-bottom:none;}
.foot-build form .formbox {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
    width: 96%;
}
	
.foot-build form .formbox input, textarea {
    width: 96%;
    height: 30px;
    margin-bottom: 20px;
    border-radius: 5px;
    padding-top: 5px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    border: 1px solid #898989;
    -webkit-box-shadow: inset 2px 2px 5px #898989;
    box-shadow: inset 2px 2px 5px #898989;
}
.foot-build h5 {
    text-align: center;
}
.formbox.fright .checkarea #doui {
    width: auto;
    height: auto;
}
.formbox.fright .checkarea {
    text-align: center;
}
.formbox.fright .checkarea p {
    font-size: 0.7rem;
    text-align: center;
}
	form .formbox.fright .soushin {
    float: left;
    width: 96%;
    border: 1px solid #6AA5C2;
    background-color: #2A6684;
    color: #F1F1F1;
    border-radius: 0px;
    -webkit-box-shadow: 0px 0px 0px 0px;
    box-shadow: 0px 0px 0px 0px;
}
	.foot-build form .formbox textarea {
		height: 160px;;}
.nav_list .menu-globalmenu-container ul li a:hover {
    color: #212121;
    background-color: #FFFFFF;
}
.foot-build .global-foot {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    height: auto;
}
.foot-build .global-foot ul {
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    list-style-image: none;
    list-style-type: none;
}
.global-foot ul li {
    height: 40px;
    float: left;
    text-align: center;
    width: 100%;
    border-bottom: 1px dotted #FFFFFF;
    font-size: 1.3rem;
    line-height: 40px;
}
.global-foot ul li a {
    color: #FFFFFF;
    text-align: center;
    text-decoration: none;
    font-size: 0.75rem;
}
.topsec .valebox{
width:40%;
margin-top:20px;
margin-bottom:20px;
margin-left:2%;
margin-right:2%;
float:left;
margin-bottom:20px;
}
.sa-technology .tech-box{
width:30%;
margin-top:30px;
margin-bottom:50px;
margin-left:2%;
margin-right:1%;
float:left;
text-align:center;
}
.sa-technology .techbox-icon{
width:120px;
height:120px;
display:block;
margin-left:auto;
margin-right:auto;
}
.sa-technology p{font-size:0.9rem; line-height:1.25rem;}
.sa-technology .leftb, .sa-technology .centerb{
border-right:1px solid #fff;
}
.toparea{
width:100%;
height:500px;
background-image:url("http://soleil-design.com/test-site/sysad/wp-content/uploads/2023/10/2240028013-smp.jpg");
background-position: center bottom;
background-size: cover;
background-repeat: no-repeat;
text-align:center;
}
.sa-technology, .sa-news{
width:90%;
margin-left:auto;
margin-right:auto;
}
.topmsbody{
width:96%;
margin-left:auto;
margin-right:auto;
padding:2%;
}
.csr-left{
	width:65%;
	height:auto;
	margin-right:5%;
	float:left;
}
.csr-right{
	width:30%;
	height:auto;
	margin:0%;
	float:left;
}
.presiname{
	text-align:right;
	font-family:'Noto Serif JP', serif;
	padding:0px;
	margin:10px;
	font-weight:700;
	font-size:1.2rem;
	line-height:35px;
}
.emp-name{
	text-align:left;
	font-family:'Noto Serif JP', serif;
	padding:0px;
	margin:10px;
	font-weight:700;
	font-size:1.2rem;
	line-height:35px;
}
.prodimage{
	width:90%;
	min-width:450px;
	height:auto;
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.left-clm, .right-clm{
	width:50%;
	float:left;
}
.th-clm-left, .th-clm-cent, .th-clm-right{
	width:46%;
	float:left;
	padding:2%;
}
.listp{
font-size:1rem;
line-height:40px;
margin-bottom:10px;
}
.news_thumb li a{height:200px;}
.news_thumb li a .news-photo{display:block; width:280px; height:189px; margin-right:30px; background-repeat:no-repeat; background-size:cover; background-position:center center; float:left; padding-top:11px;}
.news_thumb li a .news-title{font-size:1.4rem; line-height:45px; margin-bottom:20px;}
.news_thumb{width:96%; margin-left:auto; margin-right:auto;}
.contact-table dt, .contact-table dd{ float:left; line-height:35px; }
.contact-table dt{text-align:center; width:240px;}
.contact-table dd input{ width:100%;}
.contact-table .checker input{width:20px; height:auto; padding:0px;}
.contact-table dd textarea{width:100%; height:140px;}
.soushin {background-color: #2A6684; color: #fff; width: 100%; border: none; padding: 10px 0px 10px 0px; font-size: 0.9rem; border-radius: 0px 0px 10px 10px;}
.post-area{width:680px; float:left; margin-right:20px;}
.side-menu{float:left; width:300px;}
.side-menu h2{height:40px; line-height:40px; border-left:8px solid #2A6684; color:#373737; font-size:0.95rem; padding-left:15px;}
.side_list{margin:0px 0px 0px 0px; padding:0px 0px 0px 0px; list-style:none;}
.side_list li{border-bottom:1px dotted #373737;}
.side_list li a{height:20px; line-height:20px; padding:10px; display:block; color:#373737; text-decoration:none;}
.side_list li a:hover{color:#fff; background-color:#373737;}
.post-area .post-topimg{display:block; width:100%; height:300px; margin-bottom:30px; background-repeat:no-repeat; background-size:cover; background-position:center center;}
.footersite-map{width:98%; margin-left:auto; margin-right:auto;}
.footersite-map .mapmenu {float:left; width:25%;}
.footersite-map .mapmenu ul{padding:0px 0px 0px 10px;}
.footersite-map .mapmenu li, .footersite-map .mapmenu ul li{margin:5px 0px 5px 0px;}
.footersite-map .mapmenu li a, .footersite-map .mapmenu ul li a{padding:5px 5px 5px 5px;}
.footersite-map .mapmenu li a:hover, .footersite-map .mapmenu ul li a:hover{background-color:#fff; color:#373737;}
.footbannerbox{display:inline;}
.footbannerbox img{ width:100%; height:auto; max-width:680px; margin:10px auto 20px auto;}
}
/* sp */
@media only screen and (max-width: 756px) {
main .contentsection{
width:100%;
margin-top:30px;
margin-left:0px;
margin-right:0px;
margin-bottom:0px;
padding-left:0%;
padding-right:0%;
}
.empvoice .emppic-thum{max-width:100%; height:auto; margin-bottom:0px;}
.empvoice .empname{margin-left:0px; padding:10px 10px 10px 10px; margin-top:0px;}

.discrupt{
font-size:0.7rem;
}
.checkb{
display:inline;
width:20px;
height:20px;
}
.mainvisual{
margin-top:100px;
position: relative;
	height:150px;
	z-index:-1;
}
video {
    /*天地中央配置*/
    overflow: hidden;
    top: 50%;
    left: 50%;
    transform: translate(0%, -30%);
    /*縦横幅指定*/
    width: 41.77vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
.toparea{
width:100%;
height:400px;
background-image:url("http://soleil-design.com/test-site/sysad/wp-content/uploads/2023/10/2240028013-smp.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size: cover;
text-align:center;
}
.toparea #ideal{
font-size:1.2rem;
line-height:30px;
}
.toparea p{
font-size:1rem;
line-height:20px;
}
.topsec .valebox{
width:80%;
margin-top:20px;
margin-bottom:20px;
margin-left:auto;
margin-right:auto;
margin-bottom:20px;
float:none;
}
.sa-technology, .sa-news{
width:300px;
margin-left:auto;
margin-right:auto;
}
.sa-technology .tech-box{
width:80%;
margin-top:30px;
margin-bottom:30px;
margin-left:auto;
margin-right:auto;
float:none;
text-align:center;
padding-bottom:20px;
}
.sa-technology .techbox-icon{
width:100px;
height:100px;
display:block;
margin-left:auto;
margin-right:auto;
}
.sa-technology p{font-size:0.9rem; line-height:1.25rem;}
.sa-technology .leftb, .sa-technology .centerb{
border-right:0px solid #fff;
border-bottom:1px solid #fff;
}
.bottombody{
padding-left:2%;
padding-right:2%;
}
.topmsbody{
width:86%;
margin-left:auto;
margin-right:auto;
padding:7%;
}
.csr-left{
	width:90%;
	height:auto;
	margin-right:5%;
	float:none;
}
.csr-right{
	width:90%;
	height:auto;
	margin:0%;
	float:none;
}
.presiname{
	text-align:right;
	font-family:'Noto Serif JP', serif;
	padding:0px;
	margin:10px;
	font-weight:700;
	font-size:1.2rem;
	line-height:35px;
}
.emp-name{
	text-align:left;
	font-family:'Noto Serif JP', serif;
	padding:0px;
	margin:10px;
	font-weight:700;
	font-size:1.2rem;
	line-height:35px;
}
.prodimage{
	width:90%;
	min-width:300px;
	height:auto;
	display:block;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:20px;
}
.left-clm, .right-clm{
	width:90%;
	margin-left:auto;
	margin-right:auto;
	float:none;
}
.th-clm-left, .th-clm-cent, .th-clm-right{
	width:90%;
	float:none;
	padding:5%;
}
.listp{
font-size:1rem;
line-height:40px;
margin-bottom:10px;
}
.img-link{
width:345px;
height:auto;
display:block;
margin-left:auto;
margin-right:auto;
}
.wraptab{
overflow-x: scroll;
}
table{width:240%;}
.news_thumb{width:96%; margin-left:auto; margin-right:auto;}
.news_thumb li a{height:100%; padding-bottom:20px;}
.news_thumb li a .news-photo{display:block; width:100%; height:100%; min-height:250px; margin-right:0px; background-repeat:no-repeat; background-size:cover; background-position:center center; float:none; padding-top:11px;}
.news_thumb li a .news-title{font-size:1.4rem; line-height:45px; margin-bottom:20px;}
.contact-table dt, .contact-table dd{ float:none; line-height:35px; width:100%;}
.contact-table dt{text-align:center; width:100%;}
.contact-table dd input{ width:80%; margin-left:5%; margin-right:5%;}
.contact-table .checker input{width:20px; height:auto; padding:0px;}
.contact-table dd textarea{ width:80%; margin-left:5%; margin-right:5%; height:140px;}
.soushin {background-color: #2A6684; color: #fff; width: 100%; border: none; padding: 10px 0px 10px 0px; font-size: 0.9rem; border-radius: 0px 0px 10px 10px;}
.post-area{width:96%; float:none; margin-right:auto; margin-left:auto;}
.side-menu{display:none;}
.post-area .post-topimg{display:block; width:100%; height:300px; margin-bottom:30px; background-repeat:no-repeat; background-size:cover; background-position:center center;}
.footersite-map{width:98%; margin-left:auto; margin-right:auto;}
.footersite-map .mapmenu {float:none; width:98%;}
.footersite-map .mapmenu ul{padding:0px 0px 0px 10px;}
.footersite-map .mapmenu li, .footersite-map .mapmenu ul li{margin:5px 0px 5px 0px; border-bottom:1px dotted #fff;}
.footersite-map .mapmenu li a, .footersite-map .mapmenu ul li a{padding:5px 5px 5px 5px; text-align:center;}
.footersite-map .mapmenu li a:hover, .footersite-map .mapmenu ul li a:hover{background-color:#fff; color:#373737;}
.footbannerbox{display:inline;}
.footbannerbox img{ width:100%; height:auto; max-width:360px; margin:10px auto 20px auto;}
}