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

@media screen and (max-width: 767px) {
	
	
	
.under-title {
	text-align: center;
}
.under-title h3 {
	font-size: 32px;
	font-weight: bold;
	position: relative;
}

.under-title h3:before {
  content: '';
	background: #003c7a;/*-------------ここを変更----------*/
	height: 1px;
	width: 20px;
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0 auto;
	right: 0;
	display: inline-block;
}

.under-title p {
	font-size: 14px;
	margin-top: 7px;
}
		
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
com-kaso mv
--------------------------------------------------*/
.under .mv {
	width: 100%;
	min-width: 100%;
}

.under .mv .mv-image {
	position: relative;
	height: 200px;
	width: 100%;
}
.under .mv .text-box {
	position: absolute;
	top: 42%;
	max-width: 100%;
	margin: 0 auto;
	text-align: center;
	left: 0;
	right: 0;
	color: #fff;
}

.under .mv .text-box h2 {
	font-size: 34px;
	font-weight: bold;
}
.under .mv .text-box p {
	font-size: 14px;
}
.under .mv .mv-image img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
	
	
	
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
business
--------------------------------------------------*/
/*-------------------
business under-com01
--------------------------------------------------*/
.under .com {

}

.under .under-com01  {
  margin-top: 30px;
}
.under-com01 .inner {
	width: 92%;
	margin: 0 auto;
	text-align: center;
}
.under-com01 .inner h3 {
	font-size: 20px;
	margin-bottom: 15px;
}

.under-com01 .inner p {
	font-size: 13px;
}


/*-------------------
business under-com02
--------------------------------------------------*/
.under-com02 {
  margin-top: 30px;
}
.under-com02 .inner {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.under-com02 .inner .box {
	margin-bottom: 80px;
	min-height: auto;
}
.under-com02 .ls01 , .under-com02 .ls02 {
	padding: 0;
	max-width: 92%;
	margin: 0 auto;
}

.under-com02 .ls01 .image-box{
	float: none;
}
.under-com02 .ls02 .image-box{
	float: none;
}
.under-com02 .ls01 .image-box .image {
	position: inherit;
	left: 0;
	height: 200px;
	width: 100%;
}
.under-com02 .ls02 .image-box .image {
	position: inherit;
	left: 0;
	height: 200px;
	width: 100%;
}

.under-com02 .ls01 .image-box .image img , .under-com02 .ls02 .image-box .image img {
	object-fit: cover;
  width: 100%;
  height: 100%
}

.under-com02 .ls01 .text-box{
	float: none;
	width: 90%;
	background: #fff;
	padding: 5%;
	min-height: auto;
}

.under-com02 .ls02 .text-box{
	float: none;
	width: 90%;
	background: #fff;
	padding: 5%;
	min-height: auto;
}

.under-com02 .ls01 .text-box h3 , .under-com02 .ls02 .text-box h3 {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 20px;
	position: relative;
}

.under-com02 .ls01 .text-box p , .under-com02 .ls02 .text-box p {
	line-height: 1.8;
}


.under-com02 .inner .box:after {
  content: '';
	background: #f3f3f3;	
	z-index: -1;
	position: absolute;
	height: 250px;
	margin-top: -210px;
	width: 100%;
}


/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
タイトルラインの色変更
--------------------------------------------------*/
.under-com02 .text-box h3:before {
  content: '';
	background: #003c7a;/*-------------ここを変更----------*/
	height: 1px;
	width: 26px;
	position: absolute;
	bottom: -7px;
	display: inline-block;
}	
	
	
	
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
GALLERY
--------------------------------------------------*/
/*-------------------
GALLERY under-com03
--------------------------------------------------*/

.under-com03 {
	width: 100%;
	margin: 0 auto;
	margin-top: 40px;
	margin-bottom: 100px;
}

.under-com03 .inner {
	width: 100%;
	min-width: 100%;
	margin: 0 auto;
	max-width: 100%;
	padding: 0;
}
.under-com03 .slider {
	position: relative;
	width: 80%;
	margin: 0 auto;
}

.under-com03 .image01 {
	position: relative;
	margin: 0 auto;
}
.under-com03 .image01 img {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

.under-com03 .text01 {
	font-size: 12px;
	background: rgba(0,60,122,0.8);
	position: absolute;
	font-weight: bold;
	bottom: 0;
	color: #fff;
	margin: 0;
	line-height: 1.4;
	width: 92%;
	padding: 3% 4% 3% 4%;
}

.under-com03 .text01 span {
	display: inline-block;
	font-weight: bold;
}

/*--------------------------------------------------
ページャー　ボタン
--------------------------------------------------*/

.slide-dots2 {
  position: absolute;
  text-align: center;
  margin: 0 0 0 -35px;
  z-index: 100;
  bottom: -45px;
  left: 50%;
}
.slide-dots2 li {
  display: inline-block;
  padding: 0 6px;
}
.slide-dots2 li button {
  width: 12px;
  height: 12px;
  background: #cacaca;
  border-radius: 50%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
	cursor: pointer;
}
.slide-dots2 .slick-active button {
  background: #003c7a;  
}


button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}


.slide-arrow02 {
  position: absolute;
	top: 45%;
	cursor: pointer;
	z-index: 100;
}


.prev-arrow02 {
	position: absolute;
	left: -30px;
}

.prev-arrow02:before {
	content: '';
	position: absolute;
	left: 0;
	background: #003c7a;
	width: 40px;
	height: 40px;
	border-radius: 100px;        /* CSS3草案 */  
	-webkit-border-radius: 100px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 100px;   /* Firefox用 */ 	
}

.prev-arrow02:after {
	content: '';
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	position: absolute;
	left: 0;
	display: inline-block;
	margin-top: 16px;
	margin-left: 16px;
}

.next-arrow02 {
	position: absolute;
	right: 14px;
}

.next-arrow02:before {
	content: '';
	position: absolute;
	left: 0;
	background: #003c7a;
	width: 40px;
	height: 40px;
	border-radius: 100px;        /* CSS3草案 */  
	-webkit-border-radius: 100px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 100px;   /* Firefox用 */ 	
}

.next-arrow02:after {
	content: '';
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	left: 0;
	display: inline-block;
	margin-top: 16px;
	margin-left: 14px;
}	
	
/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
news-index news
--------------------------------------------------*/
.news-main {
	width: 100%;
	min-width: 100%;
	margin: 50px auto 0;
}

.news-main .inner {
  max-width: 92%;
	margin: 0 auto;
	padding: 0;
}

.news-main .inner .left-box {
	float: none;
	width: 100%;
}

.news-main .inner .comment {
	margin-bottom: 50px;
}

.news-main .inner .comment .time {
	font-size: 12px;
	color: #fff;
	display: inline-block;
	padding: 2px 6px;
}

.news-main .inner .comment .c-title {
	font-size: 18px;
	font-weight: bold;
	margin: 5px 0 10px 0;
}

.news-main .inner .comment .text {
	line-height: 2;
}
.news-main .inner .comment .image {
	margin-top: 20px;
}

.news-main .inner .comment li {
	border-top : solid #c9c9c9 1px;
	padding: 15px 0;
}

.news-main .inner .comment li:last-child {
	border-bottom : solid #c9c9c9 1px;
}


.news-main .inner .comment li dl {
	display: block;
	width: 100%
}
.news-main .inner .comment li dt , .news-main .inner .comment li dd {
		display: block;
}
.news-main .inner .comment li dt {
	width: 100%;
	margin-bottom: 5px;
}
.news-main .inner .comment li dd  {
	width: 100%;
	line-height: 1.6;
	color: #111;
}

	
	
.news-main .inner .right-box {
	float: none;
	width: 100%;
}

.archive h3 {
	font-size: 20px;
	position: relative;
	margin-bottom: 25px;
}


/*-------------------------------------
タイトルラインの色変更
--------------------------------------------------*/
.archive h3:before {
  content: '';
	background: #003c7a;/*-------------ここを変更----------*/
	height: 1px;
	width: 24px;
	position: absolute;
	bottom: -5px;
	display: inline-block;
}

/*-------------------------------------
アコーディオン　色変更
--------------------------------------------------*/
.archive .accordionlist {
	margin: 0;
	padding: 0;
}
.archive .accordion , .accordionbox {
	margin: 0;
	padding: 0;
}

.archive .accordionlist dt{
	display:block;
	margin: 0 auto;
	position: relative;
	font-weight: bold;
	margin-bottom: 14px;
	padding-bottom: 10px;
	border-bottom: 1px solid #b2b2b2;
}

.archive .accordionlist dt .year {
  position: relative;
	font-size: 14px;
}

.archive .accordionlist dd{
  display:none;
	padding:0;
	padding-left: 10px;
	position: relative;
	padding-bottom: 20px;
}

.archive .accordionlist dd li {
	padding-bottom: 10px;
}
.archive .accordionlist dd li a{
	color: #111;
}

.archive .accordionlist .open {
	 display:block;
}


.archive .accordion_icon,
.archive .accordion_icon span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}

.archive .accordion_icon {
	position:absolute;
	width: 10px;
	height: 10px;
	right: 10px;
	top: 3px;
}


 .archive .accordion_icon span {
	position: absolute;
	left: 6px;
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color:  transparent transparent #003c7a #003c7a;/*-------------ここを変更----------*/
  transform: rotate(-45deg);
}

/*＋、－切り替え*/
.archive .accordion_icon.active span:nth-of-type(1) {
	display:none;
}
.archive .accordion_icon.active span:nth-of-type(2) {
	top: 5px;
	transform: rotate(180deg);
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
}



/*-------------------------------------
ページャー
--------------------------------------------------*/
.pager {
	margin: 0 auto;
	max-width: 100%;
	text-align: center;
	margin-top: 45px;
}
.pager a {
	color: #111;
	font-size: 13px;
}
	
	
.pager02 {
	margin: 0 auto;
	max-width: 100%;
	text-align: center;
	margin-top: 45px;
}
.pager02 a {
	color: #111;
	margin: 0 5px;
	font-size: 14px;
}

.pager02 .bg {
	background: #ececec;
	display: inline-block;
	padding: 0 8px;
}
	

.pager a:hover {
}
	


/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
recruit
--------------------------------------------------*/
.recruit-main {
	width: 100%;
	min-width: 100%;
	margin: 40px auto 0;
}

.recruit-main .inner {
  max-width: 92%;
	margin: 0 auto;
	padding: 0 ;
}


.recruit-main .inner .under-title {
	margin-bottom: 30px;
}


.recruit-main .a-box {
	margin-bottom: 60px;
	width: 100%;
}


.recruit-main .ul_open {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

.recruit-main .ul_open:after {
		content: "";
		width: 0;
		position: absolute;
		top: 0;
		height: 0;
		border-style: solid;
		border-width: 16px 13px 0 13px;
		border-color: #003c7a transparent transparent transparent;	/*-------------カラー変更----------*/
		left: 0;
		right: 0;
		margin: 0 auto;
}


.recruit-main .ul_open .text-box {
	padding-top: 30px;
}

.recruit-main .a-box .ul_open .tx01 {
	font-size: 18px;
	width: 100%;
	text-align: center;
}
.recruit-main .ul_open .text-box ul {
	max-width: 100%;
	margin: 0 auto;
	margin-top: 20px;
}
.recruit-main .ul_open .text-box li {
	border-top: dashed 1px #003c7a; /*-------------カラー変更----------*/
	padding: 20px 0;
}

.recruit-main .ul_open .text-box li:last-child {
	border-bottom: dashed 1px #003c7a; /*-------------カラー変更----------*/
}

.recruit-main .ul_open .text-box li dl {
	display: table;
	width: 100%;
}
.recruit-main .ul_open .text-box li dt {
	display: table-cell;
	width: 20%;
	font-weight: bold;
	font-size: 14px;
	padding-left: 2%;
}

.recruit-main .ul_open .text-box li dd {
	display: table-cell;
	width: 70%;
	font-size: 14px;
}
.recruit-main .ul_open .text-box .btn01 {
	background: #003c7a; /*-------------カラー変更----------*/
	color: #fff;
	line-height: 45px;
	padding: 0;
	width: 100%;
	text-align: center;
	position: relative;
	display: inline-block;
}

.recruit-main .ul_open .text-box .btn01:after {
	content:"";
	width: 6px;
	height: 6px;
	border-top: solid 2px #fff; 
	border-right: solid 2px #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: 20px;
	top: 40%;
	display: inline-block;
}




.recruit-main .open_ttl{
	background: #003c7a;/*-------------カラー変更----------*/
	color: #fff;
  cursor: pointer;
  margin: 0 auto;
	font-weight: bold;
	font-size: 24px;
	padding: 15px 0;
	text-align: center;
	position: relative;
	width: 100%;
}


.recruit-main .open_ttl.active::after {
  content: "";
	position: absolute;
	right: 30px;
  width: 10px;
  height: 10px;
	margin-top: 12px;
  border: 2px solid;
  border-color:  transparent transparent #fff #fff;/*-------------ここを変更----------*/
  transform: rotate(135deg);	
}
.recruit-main .open_ttl::after {
  content: "";
	position: absolute;
	right: 30px;
	margin-top: 6px;
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color:  transparent transparent #fff #fff;/*-------------ここを変更----------*/
  transform: rotate(-45deg);		
}
	
	
/*-------------------------------------
一番上 オープン　アイコン　
--------------------------------------------------*/
	
.recruit-main .open_ttl-o.active::after {
  content: "";
	position: absolute;
	right: 30px;
  width: 10px;
  height: 10px;
	margin-top: 6px;
  border: 2px solid;
  border-color:  transparent transparent #fff #fff;/*-------------ここを変更----------*/
  transform: rotate(-45deg);			
}
.recruit-main .open_ttl-o::after {
  content: "";
	position: absolute;
	right: 30px;
	margin-top: 12px;
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color:  transparent transparent #fff #fff;/*-------------ここを変更----------*/
  transform: rotate(135deg);	
}
	
	

/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
COMPANY
--------------------------------------------------*/
.under-com04 {
	width: 100%;
	min-width: 100%;
	margin: 40px auto 0;
}

.under-com04 .inner {
  max-width: 92%;
	margin: 0 auto;
	padding: 0;
}
.under-com04 .inner .under-title {
	margin-bottom: 30px;
}

.under-com04 .inner .image {
	float: none;
	width: 100%;
}

.under-com04 .inner .text {
	float: none;
	width: 100%;
}

.under-com04 .inner .text h4 {
	color: #003c7a;/*-------------ここを変更----------*/
	font-size: 20px;
	margin-bottom: 18px;
	margin-top: 18px;
}

.under-com04 .inner .text p {
	line-height: 1.8; 
	font-size: 12px;
}

.under-com04 .inner .name {
	width: 100%;
	ext-align: right;
	margin-top: 20px;
}
.under-com04 .inner .name p {
	font-size: 20px;
	font-weight: bold;
}
.under-com04 .inner .name span {
	color: #fff;
	font-size: 12px;
	background: #003c7a;/*-------------ここを変更----------*/
	display: inline-block;
	padding: 2px 10px;
	margin-right: 14px;
	position: relative;
	top:-4px;
}

.under-com05 {
	width: 100%;
	background: #f8f8f8;
	min-width: 100%;
	margin: 50px auto 0;
	padding-bottom: 70px;
}
.under-com05 .inner {
  max-width: 92%;
	margin: 0 auto;
	padding: 0 ;
	padding-top: 40px;
}

.under-com05 .inner .under-title {
	margin-bottom: 30px;
}

.under-com05 .box {
	max-width: 100%;
	margin: 0 auto;
	font-size: 13px;
}

.under-com05 .box li {
	border-bottom: 1px solid #bababa;
	padding: 15px 0;
}

.under-com05 .box li dl {
	width: 100%;
	display: table;
}
.under-com05 .box li dt {
	display: table-cell;
	width: 28%;
	font-weight: bold;
	padding-left: 2%;
}
.under-com05 .box li dd {
	width: 100%;
	padding: 2px 0;
}

.under-com05 .box li dd ul {
	margin-top: -15px;
	margin-bottom: -15px;
}
.under-com05 .box li dd li {
  padding: 12px 0 12px 0;
	border-bottom: 1px dashed #bababa;

}

.under-com05 .box li dd li:last-child {
	border-bottom: none;
}


.under-com06 {
	width: 100%;
	min-width: 100%;
	margin: 50px auto 0;
}

.under-com06 .inner {
  max-width: 92%;
	margin: 0 auto;
	padding: 0;
}

.under-com06 .inner .under-title {
	margin-bottom: 40px;
}

 .under-com06 .parts01 .parts-inner {
    width: 88%;
    margin: 0 0 0 auto;
    padding: 0 0 0 15px;
    position: relative;
    box-sizing: border-box;
  }
 .under-com06 .parts01 .parts-inner:before {
    bottom: 14%;
		left: -26px;
		width: 8px;
		height: 80%;
		background: #003c7a;/*-------------ここを変更----------*/
		content: '';
		position: absolute;
 }
 .under-com06 .parts01 .box {
    margin: 0 0 46px 0;
    background: #f4f9fe;/*-------------ここを変更----------*/
    position: relative;
  }
  .under-com06 .parts01 .box::before {
    position: absolute;
    top: 12px;
    left: -14px;
    display: block;
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 20px 12px 0;
    border-color: transparent #f4f9fe transparent transparent;/*-------------ここを変更----------*/
  }

 .under-com06 .parts01 .box .box-inner {
    padding: 15px 18px;
    position: relative;
	 font-size: 12px;
  }
 .under-com06 .parts01 .box .box-inner::before {
    position: absolute;
    top: 6px;
    left: -54px;
    display: block;
    content: '';
    width: 12px;
    height: 12px;
	  background: #fff;
    border-radius: 50%;
    border: #003c7a solid 10px;/*-------------ここを変更----------*/
  }

 .under-com06 .parts01 .box .box-ttl {
    font-weight: bold;
    color: #003c7a;/*-------------ここを変更----------*/
    font-size: 20px;
    position: absolute;
    left: 0;
    top: -30px;
  }	
	
}