h2 {
    width: 100%;
    position: relative;
    display: inline-block;
    margin-top: 0;
    margin-left: 0;
    margin-bottom: 20px;
    padding: 0;
    font-size: 24px;
    font-weight: bold;
    color: rgb(51, 51, 51);
    text-align: left;
    border-bottom: solid 3px #dadeec;
}

h2:before {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #4b4b4b;
    bottom: -3px;
    width: 10%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 会社情報上部メニュー
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.sub_menu{
text-align: center;
    margin-bottom: 50px;
}

.sub_menu ul{
margin: 0 ;
padding: 0 ;
}

.sub_menu li{
list-style: none;
display: inline-block;
width: 10%;
min-width: 130px;
    line-height: 200%;
        font-weight: bold;
}
.sub_menu li:not(:last-child){
border-right:2px solid #ddd;
}
.sub_menu a{
text-decoration: none;
color: #333;
}
.sub_menu a.current{
color: #666;
border-bottom:2px solid #666;

}
.sub_menu a:hover{
border-bottom:2px solid #666;
}


/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* トピック */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.topic article	{padding-bottom: 15px;}

.topic a	{color: #000;
		text-decoration: none;}
.topic a:hover	{color: #ff2e57;
		 opacity: 0.8}

.topic p	{margin-top: 15px;
	margin-bottom: 0;
	font-size: 11px}


@media (max-width: 420px) {
	.topic .snap	{margin-bottom: 10px;}
	.topic h1	{margin-bottom: 3px;}
}



/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 概要 */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.gaiyou article	{padding-bottom: 15px;}

.gaiyou a	{color: #000;
		text-decoration: none;}
.gaiyou a:hover	{color: #ff2e57;
		 opacity: 0.8}

.gaiyou .snap	{width: 100%;
	height: 120px;
	margin-bottom: 20px;
	background-position: 50% 50%;
	background-size: cover;}


.gaiyou h1	{margin: 0.5em 0;
  padding: 0.2em 0 0.1em 1em;
  border-bottom: 1px dotted #1e90ff;
  border-left: 10px solid #1e90ff;
  font-size: 15px;
  font-weight: bold;
  color: #808080;
	}


.gaiyou p	{margin-top: 0;
	margin-bottom: 0;
	font-size: 12px}


@media (max-width: 420px) {
	.gaiyou .snap	{margin-bottom: 10px;}
	.gaiyou h1	{margin-bottom: 3px;}
}

.main_image {
    width:79%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
align-items: flex-start;
    margin-bottom: 20px;
}
.main_image img {
    width:100%;
    max-width:750px;
    height: auto;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* アクセス */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.acctable {
	table-layout: fixed;
	width:95%;
	border-collapse:collapse;
	border-spacing:0;
	border:1px solid #ccc;
	padding:5px;
	margin-right : auto;
	margin-left : auto;
}

.acctable th {
	border:1px solid #ddd;
	font-size: 12px;
	padding:5px;
	text-align:center;

}

.acctable td {
	font-size: 12px;
	padding:5px;
	text-align:left;

}

.acctable th, .acctable td {
	padding:10px;
	font-size: 12px;
}

.gmap{
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.gmap iframe, .gmap object, .gmap embed{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* プレリリース */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.releass {
    text-align: center;
	width:79%;
	border-collapse:collapse;
	border-spacing:0;
	border:1px solid #ccc;
	padding:5px;
	margin-right : auto;
	margin-left : auto;
}

.releass th {
	background-color: #F0F0F0;
	border:1px solid #ddd;
	font-size: 16px;
	padding:5px;
	text-align:center;

}

.releass td {
	font-size: 16px;
	padding:5px;
	text-align:left;
  border:1px solid #ccc;

}

.releass td1 {
	font-size: 16px;
	padding:5px;
	text-align:left;

}

.releass th, .releass td {
	padding:10px;
	font-size: 16px;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 商標 */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.mark {
	width:50%;
	border-collapse:collapse;
	border-spacing:0;
	border:1px solid #ccc;
	padding:0;
	margin-right : auto;
	margin-left : auto;
}

.mark th {
	font-size: 12px;
	padding:5px;
	text-align:center;
}

.mark td {
	font-size: 12px;
	padding:5px;
	text-align:center;
}


.mark th, .mark td {
	padding:10px;
	font-size: 12px;
	text-align:center;

}


/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* サポートページ */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.info-title {
    display: flex;
    align-items: center;
    background-color: #888;
    width: 100%;
    height: 100px;
    margin: 0;
    padding: 0;
    vertical-align: middle;
}

.info-title h1{
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-size: 1.8em;
    color: #fff;
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 採用情報 */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.viewpc{
    display: block;
}

.viewsp{
    display: none;
}

p.resizeimage img { 
  width: 100%; 
}

.recruit {
	width:75%;
	border-collapse:collapse;
	border-spacing:0;
	padding:0;
	margin-right : auto;
	margin-left : auto;
}

.recruit th {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
	padding:5px;
	text-align:center;
    background: #eaeff1;
    color: #4D4D4D;
}

.recruit td {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
	font-size: 14px;
	padding:10px;
	text-align:left;
}

th.recruit1 {
	width: 100px;
	font-size: 14px;
	padding:10px;
	text-align:center;
}


table {
  
}


p.flow {
    width:70%;
    text-align: center;
    background: #DAE8D7;
    border-radius: 10px; 
    margin-top: -5px;
    margin-right : auto;
	margin-left : auto;
    padding:20px;
}

.arrow{
    margin-right : auto;
    margin-left : auto;
    width: 0px;
    border-color: #cccccc;
    border-style: solid;
    border-width: 15px;
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-right-color: transparent;
}

.button_wrapper {
    display: flex;
    flex-direction: column;
    margin: 10px 0 10px 0;
}

.entry_button_intern {
    position: relative;
    display: inline-block;
    padding: 0.8em 1em;
    width: 250px;
    background-color: #7273AC;
    color: #FFF !important;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 3px;
    transition: .4s;
}

.syousai_button_intern {
    position: relative;
    display: inline-block;
    padding: 0.8em 1em;
    width: 250px;
    background-color: #83abba;
    color: #FFF !important;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 3px;
    transition: .4s;
}



/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ニュース一覧
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

viewpc{
    display: block;
}

.viewsp{
    display: none;
}

.box {
  width: 75px;
  border: solid 1px #666666;
  font-size: 14px;
  color: #666666;
  font-weight: bold;
  padding: 0px 5px 0px 5px;  
  float: right;
  margin-left: 70px;
  text-align: center;
  margin-top: -20px;
}

dl, dt, dd {
  margin: 0;
  padding: 0;
  font-size: 16px;
}

dl {
  width: auto;
  list-style: none;
  overflow: auto;
}


.news dt {
  clear: both;
  width: 180px;
  overflow: hidden;
  float: left;
  border-top: 1px dotted black;
  padding-top: 30px;
}

.news dd {
  width: auto;
  margin-left: 180px;
  margin-bottom: 20px;
  border-top: 1px dotted black;
  padding-top: 30px;
  padding-left: 15px;
}

.news {
  margin-left: 60px;
}

.nav {
  font-weight: bold;
  line-height: 30px;
}

.nav a {
  color: #658cff;
}

dl dt:first-child + dd  {
  border-top: none;
}

dl dt:first-child {
  border-top: none;
}

.bold {
  font-weight: bold;
}
