﻿/* common
------------------------------------------------------------*/
.pc_in{display: inline-block!important;}
.sp_in{display: none!important;}

@media only screen and (max-width:768px){
.pc_in{display: none!important;}
.sp_in{display: inline-block!important;}
}

p.indent-a {
	padding-left:1em;
	text-indent:-1em;
	margin-left: 15px;
}

.brc{clear: both;}

.tbl_flex2{
display: flex;
flex-wrap: wrap;
}

.tbl_flex2 span:nth-of-type( odd ){
width: 30%;
}

.tbl_flex2 span:nth-of-type( even ){
width: 70%;
}

.tbl_flex4{
display: flex;
flex-wrap: wrap;
}

.tbl_flex4 span:nth-of-type(1),
.tbl_flex4 span:nth-of-type(5),
.tbl_flex4 span:nth-of-type(9){
width: 20%;
}

.tbl_flex4 span:nth-of-type(2),
.tbl_flex4 span:nth-of-type(6),
.tbl_flex4 span:nth-of-type(10){
width: 5%;
}

.tbl_flex4 span:nth-of-type(3),
.tbl_flex4 span:nth-of-type(7),
.tbl_flex4 span:nth-of-type(11){
width: 15%;
text-align: right;
}

.tbl_flex4 span:nth-of-type(4),
.tbl_flex4 span:nth-of-type(8),
.tbl_flex4 span:nth-of-type(12){
width: 60%;
}

.pc80{
    display: block;
    width: 80%;
    height: auto;
    margin: auto;
}

.pc70{
    display: block;
    width: 75%;
    height: auto;
    margin: auto;
}

.pc60{
    display: block;
    width: 60%;
    height: auto;
    margin: auto;
}

.pc50{
    display: block;
    width: 50%;
    height: auto;
    margin: auto;
}

@media only screen and (max-width:768px){
    .pc80, .pc70, .pc60, .pc50{
        display: block;
        width: 100%;
    }
}

/* toppage
------------------------------------------------------------*/

/* #top_mainimg{
    margin: 0;
    padding: 200px 0 15%;
    box-sizing: border-box;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-around;
    color: #fff;
} */

#top_mainimg h2{
    font-family: "Oswald", "san-serif";
    font-size: 60px;
    line-height: 1.4em;
    font-weight: normal;
    color: #fff;
    margin-bottom: 15px;
    text-shadow: 0px 2px 3px rgba(0,0,0,0.3);
}

#top_mainimg h2 span{
    font-family: "Oswald", "san-serif";
    font-size: 60px;
}

#top_mainimg p{
    font-size: 20px;
    line-height: 1.1em;
    font-weight: bold;
    color: #fff;
    text-shadow: 0px 2px 3px rgba(0,0,0,0.7);
    margin: -40px 0px 0 25px;
}

	#top_mainimg p .sp_in{display: none;}

/*  FVslider  */

.Vegas {
  position: relative;
  width: 100%;
  height: 100vh;
  background: #3b89e8;
}
/*.Vegas-Inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}*/

.Vegas-Inner {
margin-top: 12%;
}
.vegas-content-scrollable{
position: absolute;
height: 100vh;
overflow:auto;
padding-top: 0;
display: flex;
align-items: center;
justify-content: flex-start;
margin: 0 0 0 10%!important;
box-sizing: border-box;
}

/* typing */
.TextTyping span {
	display: none;
}

/* typing */
.TextTyping::after {
 	content: "|";
	animation: typinganime .8s ease;
	animation-iteration-count: 8;
	animation-fill-mode: forwards;
}

@keyframes typinganime{
	from{opacity: 1}
	to{opacity: 0}
}

.TextTyping span:nth-of-type(1),
.TextTyping span:nth-of-type(5),
.TextTyping span:nth-of-type(8),
.TextTyping span:nth-of-type(13){
	background-color: none;
	animation: change-color-anim 0.5s forwards;
	animation-delay: 3.2s;
}

/*
.TextTyping span:nth-of-type(2),
.TextTyping span:nth-of-type(3),
.TextTyping span:nth-of-type(4),
.TextTyping span:nth-of-type(6),
.TextTyping span:nth-of-type(7),
.TextTyping span:nth-of-type(9),
.TextTyping span:nth-of-type(10),
.TextTyping span:nth-of-type(11),
.TextTyping span:nth-of-type(12),
.TextTyping span:nth-of-type(14),
.TextTyping span:nth-of-type(15),
.TextTyping span:nth-of-type(16),
.TextTyping span:nth-of-type(17),
.TextTyping span:nth-of-type(18),
.TextTyping span:nth-of-type(19),
.TextTyping span:nth-of-type(20),
.TextTyping span:nth-of-type(21),
.TextTyping span:nth-of-type(22){
	animation: hideop 0.1s forwards;
	animation-delay: 6s;
}*/



@keyframes change-color-anim {
	0%{
		color: #fff;
	}
	100%{
		color: #F28E0B;
	}
}

/*@keyframes hideop {
  0% {
    opacity: 1;
    display:visible;
  }

  100% {
    opacity: 0;
    display:none;
  }
} */


/*  FVanimation  */
.apng-image{
    max-width: 100%;
    height: auto;
}

@media only screen and (max-width:768px){
    .apng-image{
        max-width: 100%;
        width: 90%;
        height: auto;
    }

    .vegas-content-scrollable{
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0!important;
    }

    #top_mainimg p{
        margin: 0;
    }

}


/*  TOP section1  */
#top_newsbox{
display: flex;
width: 100%;
height: auto;
justify-content: space-between;
}

#top_news_first{
display: flex;
width: 50%;
box-sizing: border-box;
color: #202020;
line-height: 1.5em;
}

#top_news_first div a{color: #202020;}

#top_news_first div{
display: flex;
flex-direction: column;
width: 49%;
margin-right: 1%;
}

#top_news_first div img{
width: 100%;
height: auto;
transition: 0.2s;
margin-bottom: 10px;
}

#top_news_first div:hover img{
opacity: 0.8;
}

#top_news_first h3{margin-bottom: 10px;}

#top_news_first h3,
#top_news_first p{
padding: 0 3%;
display: block;
box-sizing: border-box;
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.top_newsday{
margin-left: 5px;
}

.top_cate{
font-size: 12px;
width: 90px;
display: inline-block;
background: #324E74;
color: #fff;
text-align: center;
}

.cate-news{
background: #324E74;
}

.cate-seminar,
.cate-seminar-movie{
background: #F28E0B;
}

#top_news_last{
display: flex;
flex-direction: column;
background: #fff;
padding: 2% 3%;
width: 50%;
box-sizing: border-box;
}

#top_news_last div.news_text a{
display: flex;
margin-bottom: 10px;
align-items: flex-start;
}

#top_news_last div.news_text span{
margin-right: 10px;
}

#top_news_last div.news_text span.top_date{
color: #202020;
}

#top_news_last div.news_text h3{
    width: 60%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#top_news_last div.news_text:hover h3{
text-decoration: underline;
}

/* tabbox */
.tab_container {

}

.tab_item {
  width: auto;
  padding:15px 0 0;
  border-top: 3px solid #fff;
  text-align: center;
  color: #202020 ;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  margin: 0 20px 15px 0;
}
.tab_item:hover {
  cursor: pointer;
}
input[name="tab_item"] {
  display: none;
}
.tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}
#tab1:checked ~ #tab1_content,
#tab2:checked ~ #tab2_content,
#tab3:checked ~ #tab3_content {
  display: block;
}

.tab_container input:checked + .tab_item {
  border-top: 3px solid #F28E0B;
}


/* toppage_sp */


@media only screen and (max-width:768px){
	#top_mainimg h2{
	    font-size: 7vw;
	line-height: 2.2em;
	}

	.Vegas-Inner {
	  position: absolute;
	  top: 25%;
	  left: 0;
      right: 0;
      text-align: center;
	  transform: none;
	}

	#top_mainimg p{
	    font-size: 5vw;
	line-height: 1.4em;
	}

	#top_mainimg p .sp_in{display: inline;}

	#top_newsbox{
	display: flex;
	flex-direction: column;
	padding: 0 3%;
	box-sizing: border-box;
	}

	#top_news_first, #top_news_last{
	    display: flex;
	    width: 100%;
	    margin-bottom: 3%;
	flex-direction: column;
	}

	#top_news_first div{
	width: 100%;
	margin: 0 0 7%;
	}

	#top_news_last div.news_text{
	flex-wrap: wrap;
	}

	#top_news_last div.news_text a h3{
	display: block;
	}

    #top_news_last div.news_text h3{
        width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

	#top_news_last div.news_text a{
	margin-bottom: 15px;
	flex-wrap: wrap;
	}

}


#top_sec01{
    background: #303843;
    box-sizing: border-box;
    display: block;
    padding: 100px 0 80px;
}

#top_sec01 h2.top_h2{
    border: none;
    background: none;
    text-align: center;
    margin: 0 auto 50px;
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    padding: 0;
}

#top_sec01 h2.top_h2 span{
    font-family: "Oswald", "san-serif";
    font-size: 60px;
    line-height: 1.4em;
    font-weight: normal;
    text-align: center;
    color: #cecece;
    margin-bottom: 15px;
    display: block;
    position: static;
    top: initial;
    left: initial;
}

.top_sec01box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}

.top_sec01box div{
    display: block;
    background: #F0F3F5 url(images/corner_icon.png) right 0 bottom 0 no-repeat;
    flex-basis: 31%;
    box-sizing:border-box;
    margin: 0 auto 3%;
    position: relative;
    transition:0.4s all;
}

.top_sec01box div:nth-child(even){
    display: block;
    background: #F0F3F5 url(images/corner_icon_r.png) right 0 bottom 0 no-repeat;
    flex-basis: 31%;
    box-sizing:border-box;
    margin: 0 auto 3%;
    position: relative;
    transition:0.4s all;
}

.top_sec01box div a {
    display: block;
    color: #202020;
    padding: 0 5% 5%;
    box-sizing:border-box;
}

.top_sec01box div p {
    color: #707070;
}

.top_sec01box div a img{
    margin: -5% auto 2%;
    width:100%;
    height: auto;
    overflow: hidden;
    transition:0.4s all;
}

.top_sec01box div:hover a img{
  transform:scale(1.025,1.025);
  transition:0.4s all;
}

.top_sec01box div:hover{
    background: #fff url(images/bgnone.png) right 0 bottom 0 no-repeat;
}

#top_sec02{
    background: #F0F3F5;
    box-sizing: border-box;
    display: block;
    padding: 100px 0;
}

#top_sec02 h2.top_h2{
    border: none;
    background: none;
    text-align: center;
    margin: 0 auto 50px;
    font-size: 28px;
    font-weight: bold;
    color: #707070;
    padding: 0;
}

#top_sec02 h2.top_h2 span{
    font-family: "Oswald", "san-serif";
    font-size: 60px;
    line-height: 1.4em;
    font-weight: normal;
    text-align: center;
    color: #cecece;
    margin-bottom: 15px;
    display: block;
    position: static;
    top: initial;
    left: initial;
}


#top_sec03{
    background: #fff url(images/about-strength-bg.png) no-repeat;
    background-size: cover;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 100px 0;
}

#top_sec03 h2{
    color: #707070;
}

.top_sec03box_l{
    width: 45%;
    display: flex;
    flex-direction: column;
    background: rgba(240, 243, 245, 0.4);
    backdrop-filter: blur(11px);
}

.top_sec03box_r{
    width: 50%;
    display: flex;
    flex-direction: row-reverse;
    background: rgba(240, 243, 245, 0.4);
    backdrop-filter: blur(11px);
    margin: 100px 0 0;
}

.top_sec03box_l img{
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
}

.top_sec03box_r img.pc_in{
    display: block!important;
    height: 100%;
    max-height: 100%;
    width: auto;
}
.top_sec03box_r img.sp_in{
    display: none;
}



.top_sec03box_l h2, .top_sec03box_r h2{
margin:10px 0;
font-size:28px;
font-weight:bold;
color: #707070;
line-height: 2em;
}

.top_sec03box_l h2 span, .top_sec03box_r h2 span{
display: block;
font-family: "Oswald", "serif";
font-size: 60px;
font-weight: normal;
color: #CECECE;
word-break: initial;
}

.top_sec03box_l div:last-of-type, 
.top_sec03box_r div:last-of-type{
    display: block;
    padding: 5% 5% 8%;
    box-sizing:border-box;
    line-height: 1.4em;
    word-break: break-all;
}

.top_sec03box_l p{
line-height: 1.5em;
margin-bottom: 20px;
}

.top_sec03box_r p{
line-height: 2em;
margin-bottom: 20px;
}

@media only screen and (max-width:1100px){

	.top_sec03box_l{
	    width: 40%;
	    display: flex;
	    flex-direction: column;
	    background: rgba(240, 243, 245, 0.4);
	    backdrop-filter: blur(11px);
	}

	.top_sec03box_r{
	    width: 58%;
	    display: flex;
	    flex-direction: row-reverse;
	    background: rgba(240, 243, 245, 0.4);
	    backdrop-filter: blur(11px);
	    margin: 100px 0 0;
	}
}


@media only screen and (max-width:940px){

	.top_sec03box_r img.pc_in{
	    display: none!important;
	}
	.top_sec03box_r img.sp_in{
	display: block!important;
	}

	#top_sec01{padding: 50px 0;}
	#top_sec02{padding: 50px 0;}
	#top_sec03{padding: 50px 0;}

	.top_sec01box > div,
    .top_sec01box > div:nth-child(even){
	    flex-basis: 90%;
	    box-sizing:border-box;
	    margin: 0 5% 10%;
	    padding: 0 2% 2%;
	    position: relative;
	}

	.top_sec01box div h3{
	margin: 5px 0 10px;
	}

	.top_sec01box div p{
	line-height: 1.2em;
	}

	#top_sec03 {
	flex-direction: column;
	}

	.top_sec03box_l{
	width: 90%;
	margin-right: 10%;
	background: rgba(240, 243, 245, 0.8);
	}

	.top_sec03box_r{
	width: 90%;
	margin: 10% 0 0 10%;
	flex-direction: column;
	background: rgba(240, 243, 245, 0.8);
	}

	.top_sec03box_r img.sp_in{
	display: block;
	width: 100%;
	height: auto;
	max-height: initial;
	}

	.top_sec03box_r img.pc_in{display: none;}

	.top_sec03box_l div h2,
	.top_sec03box_r div h2{
	font-size: 5vw;
	}

	.top_sec03box_l div h2 span,
	.top_sec03box_r div h2 span{
	font-size: 7vw;
	}

	/* .top_sec03box_l div p,
	.top_sec03box_r div p{
	font-size: 3.3vw;
	} */

	.top_sec03box_l div:last-of-type, 
	.top_sec03box_r div:last-of-type{
	    word-break: initial;
	}


}

/* common
------------------------------------------------------------*/

.mt100{margin-top: 100px;}
.mt90{margin-top: 90px;}
.mt80{margin-top: 80px;}
.mt70{margin-top: 70px;}
.mt60{margin-top: 60px;}
.mt50{margin-top: 50px;}
.mt40{margin-top: 40px;}
.mt30{margin-top: 30px;}
.mt20{margin-top: 20px;}
.mt10{margin-top: 10px;}

.mb100{margin-bottom: 100px;}
.mb90{margin-bottom: 90px;}
.mb80{margin-bottom: 80px;}
.mb70{margin-bottom: 70px;}
.mb60{margin-bottom: 60px;}
.mb50{margin-bottom: 50px;}
.mb40{margin-bottom: 40px;}
.mb30{margin-bottom: 30px;}
.mb20{margin-bottom: 20px;}
.mb10{margin-bottom: 10px;}

.mt0{margin-top: 0px!important;}

a.rbtn{
    border-radius: 40px;
    padding: 15px 20px;
    min-width: 200px;
    background-color: #0cbaba;
    background-image: linear-gradient(315deg, #1188FF 0%, #004BB1 74%);
    font-family: "Oswald", san-serif;
    color: #fff;
    font-size: 24px;
    display: inline-block;
    text-align: center;
    transition: 0.2s;
}

a.rbtn:hover{
background-color: #2a2a72;
background-image: linear-gradient(315deg, #2a2a72 0%, #009ffd 74%);
}

.ftbox a.rbtn{
    border-radius: 40px;
    padding: 15px 20px;
    min-width: 200px;
    background-color: #0cbaba;
    background-image: linear-gradient(315deg, #1188FF 0%, #004BB1 74%);
font-family: 'Noto Sans JP', "游ゴシック", "YuGothic", "verdana", "ヒラギノ丸ゴシック ProN W4", "Hiragino Maru Gothic ProN", "メイリオ", "Meiryo", "MS PGothic", Sans-Serif;
    color: #fff;
    font-size: 24px;
    display: inline-block;
    text-align: center;
    transition: 0.2s;
}

.ftbox a.rbtn:hover{
background-color: #2a2a72;
background-image: linear-gradient(315deg, #2a2a72 0%, #009ffd 74%);
}


/* sidebar */
h2.sidetitle,
.sidenavi h2,
.wp-block-group__inner-container h2{
background: #324E74;
display: flex;
width: 100%;
margin: 0;
align-items: center;
color: #fff;
font-size: 18px;
font-weight: bold;
min-height: 80px;
box-sizing: border-box;
padding: 15px;
}

.wp-block-group__inner-container h2{
margin-left: -10px;
width: 105%;
}

div.menu-sv-jinji-container, div.menu-sv-jinji-zh-container,
div.menu-sv-kaigai-container, div.menu-sv-kaigai-zh-container,
div.menu-sv-ma-container, div.menu-sv-ma-container-zh,
div.menu-sv-inbound-container, div.menu-sv-inbound-zh-container,
div.menu-sv-kaikei-container, div.menu-sv-kaikei-zh-container,
div.menu-sv-kokusai-container, div.menu-sv-kokusai-zh-container,
div.menu-company-container, div.menu-company-zh-container,
div.menu-newsletter-container, div.menu-newsletter-zh-container,
div.menu-pri-archive-container, div.menu-pri-archive-zh-container,
div.menu-pri-archive-seminar-container, div.menu-pri-archive-seminar-zh-container,
div.menu-memberlist-container, div.menu-memberlist-zh-container,
div.menu-recruit-container, div.menu-recruit-zh-container,
div.wp-block-group__inner-container {
border-left: 2px solid #324E74;
width: 100%;
margin: 0 0 40px;
padding-left: 10px;
box-sizing: border-box;
}


div.sidenavi ul.menu, 
ul.wp-block-archives-list{
padding: 10px 0 0!important;
}

div.sidenavi ul.menu li,
ul.wp-block-archives-list li{
padding: 0!important; border-bottom: 0!important;
}

div.sidenavi ul.menu li a,
ul.wp-block-archives-list li a{
background: #F0F3F5 url(images/corner_icon.png) no-repeat right 0 bottom 0;
line-height: 1.6em;
font-size: 18px;
font-weight: bold;
color: #505050;
padding: 10px;
box-sizing: border-box;
display: block;
transition: 0.2s;
}

div.sidenavi ul.menu li ul.sub-menu{
padding: 10px 0 0 10px!important;
}

div.sidenavi ul.menu li ul.sub-menu li a{
font-size: 16px;
background-color: #FFF3E3;
background-image: none;
}

#sub .sidenavi ul.menu > li.current-menu-item > a,
#sub .sidenavi ul.menu > li.current-menu-parent > a,
#sub .sidenavi ul.menu > li.current-menu-parent > ul.sub-menu li.current-menu-item > a{
background: #F28E0B url(images/bgnone.png) no-repeat right bottom;
color: #fff;
}

#sub .sidenavi ul.menu li a:hover,
#sub .wp-block-group ul.wp-block-archives > li > a:hover{
background: #F28E0B url(images/bgnone.png) no-repeat right bottom;
color: #fff;
}


@media only screen and (max-width:768px){

	a.rbtn{
	    font-size: 18px;
	    line-height: 1.2em;
	}
}

/* 検索窓
------------------------------------------------------------*/
.search-form{
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
}

.search_container input[type="text"]{
  border: 1px solid #999;
  padding: 3px 10px;
  border-radius: 3px;
  height: 2.2em;
  overflow: hidden;
  width: 74%;
  box-sizing:border-box;
  font-size: 15px;
}
.search_container input[type="text"]:focus {
  outline: 0;
  background: #d9e9ff;
}
.search_container button[type="submit"]{
  border: none;
  background: #004BB1;
  border: 1px solid #004BB1;
  border-radius: 3px;
  color: #fff;
  outline : none;
  display: inline-block;
  vertical-align: middle;
  width: 23%;
  height: 2.2em;
  box-sizing:border-box;
  font-size: 16px;
}

.search_container button[type="submit"]:hover{
  cursor: pointer;
  background: #568fdd;
}

@media only screen and (max-width:940px){
    .search_container button[type="submit"]{
        font-size: 12px;
        height: 2.8em;
    }
}

/* Service
------------------------------------------------------------*/
.sv_index{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    margin-top: 50px;
}

.sv_index div{
    display: block;
    background: #F0F3F5 url(images/corner_icon.png) right 0 bottom 0 no-repeat;
    flex-basis: 31%;
    box-sizing:border-box;
    margin: 0 auto 3%;
    padding-bottom: 2%;
    position: relative;
    transition:0.4s all;
    line-height: 1.8em;
}

.sv_index div:nth-last-of-type(odd){
    display: block;
    background: #F0F3F5 url(images/corner_icon_r.png) right 0 bottom 0 no-repeat;
    flex-basis: 31%;
    box-sizing:border-box;
    margin: 0 auto 3%;
    padding-bottom: 2%;
    position: relative;
    transition:0.4s all;
    line-height: 1.8em;
}

.sv_index div a {
    display: block;
    color: #202020;
    padding: 5% 5% 0;
    box-sizing:border-box;
}

.sv_index div p {
    color: #707070;
    padding-bottom: 0;
}

.sv_index div p a{
    padding: 0 5%;
}

.sv_index div a img{
    width:100%;
    height: auto;
    overflow: hidden;
    transition:0.4s all;
}

.sv_index div:hover a img{
  transform:scale(1.0251,1.025);
  transition:0.4s all;
}

.sv_index div:hover{
    background: #fff url(images/bgnone.png) right 0 bottom 0 no-repeat;
    box-shadow: 0px 1px 10px 0px #004BB1;
}

.sv_index div:nth-last-of-type(odd):hover{
    background: #fff url(images/bgnone.png) right 0 bottom 0 no-repeat;
    box-shadow: 0px 1px 10px 0px #F28E0B;
}

.sv_index div h3{
margin: 7px 0;
}

@media only screen and (max-width:768px){
	.sv_index > div,
    .sv_index div:nth-last-of-type(odd){
	    flex-basis: 100%;
	    margin: 0 auto 5%;
	    padding: 0 2% 5%;
	}

	.sv_index div h3{
	margin-bottom: 10px;
	}

	.sv_index div p{
	line-height: 1.2em;
	}
}

/* MandA
------------------------------------------------------------*/
table.manda_tbl th{
width: 35%;
}

.manda_box{
display: flex;
align-items: center;
}

.manda_box img:first-of-type{
align-self: flex-start;
width: 60%;
}

.manda_box img:last-of-type{
align-self: flex-start;
width: 40%;
}

@media only screen and (max-width:768px){
	table.manda_tbl th{
	display: block;
	width: 100%;
	}

	.manda_box img:first-of-type{
	align-self: flex-start;
	width: 100%;
	}

	.manda_box img:last-of-type{
	align-self: flex-start;
	width: 100%;
	}

}


/* Company
------------------------------------------------------------*/
.cp_index{
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin-top: 50px;
}

.cp_index div{
    display: block;
    background: #F0F3F5 url(images/corner_icon.png) right 0 bottom 0 no-repeat;
    flex-basis: 45%;
    box-sizing:border-box;
    margin: 0 2.5% 3%;
    position: relative;
    transition:0.4s all;
    text-align: center;
    line-height: 1.4em;
}

.cp_index div a {
    display: block;
    color: #202020;
    padding: 4%;
    box-sizing:border-box;
}

.cp_index div h3 {
    margin: 0 auto;
}

.cp_index div a img{
    width:100%;
    height: auto;
    overflow: hidden;
    transition:0.4s all;
}

.cp_index div:hover a img{
  transform:scale(1.025,1.025);
  transition:0.4s all;
}
.cp_index div > a > p{padding-bottom: 8px;}
.cp_index div > p:last-of-type{display:none;}

.cp_index div:hover{
    background: #fff url(images/bgnone.png) right 0 bottom 0 no-repeat;
    box-shadow: 0px 1px 10px 0px #004BB1;
}

.expa-box{
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	margin: 30px auto 100px;
	align-items: center;
	align-content: center;
	justify-content: center;
}

.expa-box a{
margin-bottom: 2%;
margin-right: 1%;
margin-left: 1%;
display: block;
width: 100%;
box-sizing:border-box;
}

@media only screen and (max-width:768px){
	.cp_index > div{
	    flex-basis: 100%;
	    margin: 0 auto 5%;
	    padding: 0 1%;
	}

	.cp_index div h3{
	margin-bottom: 10px;
	}

	.cp_index div p{
	line-height: 1.2em;
	}

	.expa-box a{
	margin-bottom: 30px;
	}

	.expa-box{
	margin: 30px auto 50px;
	}


}


/* officelist
------------------------------------------------------------*/
h3.company_h3{
background: #F0F3F5;
color: #707070;
font-size: 20px;
font-weight: bold;
line-height: 1.5em;
display: block;
box-sizing: border-box;
padding: 5px 10px;
border-left: 3px solid #004BB1;
margin-bottom: 10px;
}


h3.hd_office{
display: block;
font-size: 28px;
line-height: 1.6em;
background: #fff url(images/office_line.png) repeat-x top 0 left 0;
padding: 30px 0 0;
margin: 0 0 25px;
text-align: center;
}

table.tbl_office{
margin-bottom: 50px;
width: 100%;
box-sizing: border-box;
}

table.tbl_office tr th,
table.tbl_office tr td{
box-sizing: border-box;
padding: 25px;
border-collapse: collapse;
border-top :1px dashed #CECECE;
border-bottom: 0px;
border-right: 0px;
border-left: 0px;
line-height: 1.6em;
}

table.tbl_office tr th{
font-weight: bold;
background: #fff;
width: 20%;
box-sizing:border-box;
}

table.tbl_office tr td{
background: #fff;
}

table.tbl_office tr td iframe{
margin: 30px 0;
}


@media only screen and (max-width:768px){

	table.tbl_office tr th, 
	table.tbl_office tr td{
	width: 100%;
	display: block;
	clear: both;
	}

	table.tbl_office tr:first-of-type th,
	table.tbl_office tr td{
	border-top: 0;
	}

	table.tbl_office tr th{
	padding-bottom: 0;
	}

	table.tbl_office tr td{
	padding-top: 10px;
	}

}

/* Archive
------------------------------------------------------------*/
.arch_info{
display: flex;
align-items: center;
}

.cate_name{
border: 1px solid #707070;
color: #707070;
font-size: 12px;
border-radius: 3px;
margin-left: 10px;
padding: 1px 3px 2px;
display: inline-block;
line-height: 1.2em;
}

.pagination{
   margin:70px auto;
}
.nav-links{
   display:flex;
   justify-content: center;
}
.pagination .page-numbers{
   display:inline-block;
   margin-right:10px;
   padding:10px 8px;
   color: #fff;
   border:1px solid #004BB1;
   background: #004BB1;
   transition: 0.3s;
}
.pagination .current{
   padding:10px 8px;
   background:#fff;
   color: #202020;
   border: 1px solid #cecece;
}
.pagination .prev,
.pagination .next{
   display:inline-block;
   margin-right:10px;
   padding:10px 8px;
   color: #fff;
   border:1px solid #004BB1;
   background: #004BB1;
   transition: 0.2s;
}
.pagination .dots{
   background:transparent;
   box-shadow:none;
   color: #202020;
   border: none;
}

.pagination .prev{
margin-right: 30px;
}
.pagination .next{
margin-left: 20px;
}
.pagination .page-numbers:hover,
.pagination .prev:hover,
.pagination .next:hover{
background: #7fb6ff;
}

.pagination .dots:hover,
.pagination .current:hover{
background: #fff;
}


@media only screen and (max-width:768px){
	.pagination{
	   margin:30px auto;
	}
}

/* memberlist
------------------------------------------------------------*/
#p_memberlist{
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: flex-end;
}

#p_memberlist div{
text-align: center;
display: flex;
flex-direction: column;
flex-basis: 25%;
line-height: 1.3em;
margin-bottom: 20px;
}

#p_memberlist div h3{
font-size: 16px;
color: #202020;
font-weight: normal;
margin: 0 0 20px;
}

#p_memberlist div span{
font-size: 18px;
font-weight: bold;
margin-bottom: 10px;
color: #505050;
padding: 0 25px;
}

#p_member-arch h3:first-of-type{
font-size: 20px;
font-weight: bold;
color: #004BB1;
border-bottom: 3px solid #004BB1;
padding: 3px 8px 3px 0;
display: block;
box-sizing: border-box;
}

#p_member-arch h3{
font-size: 20px;
font-weight: bold;
color: #004BB1;
border-bottom: 3px solid #004BB1;
padding: 3px 8px 3px 0;
display: block;
box-sizing: border-box;
margin-top: 50px;
}

.member_listarchive{
display: flex;
justify-content: space-between;
}

.member_listarchive > div:last-of-type{
width: calc( 100% - 180px );
}

.member_bana{
display: flex;
justify-content: center;
text-align: center;
margin: 30px auto 0;
flex-wrap: wrap;
}

.member_bana img{
margin: 0 10px;
transition: 0.2s;
}

.member_bana img:hover{
opacity: 0.8;
}


@media only screen and (max-width:768px){
	.member_listarchive{
	display: flex;
	flex-direction: column;
	}

	.member_listarchive > div:last-of-type{
	width: 100%;
	}


	#p_memberlist div{
	flex-basis: 50%;
	}

	.member_bana img{
	margin: 0 auto 20px;
	max-width: 100%;
	box-sizing:border-box;
	}
}

/* Recruit
------------------------------------------------------------*/
#p_recruit table tr th,
#p_recruit table tr td{
padding: 10px;
box-sizing: border-box;
}

h3.recruit_title:first-of-type{
background: #F0F3F5;
display: block;
font-size: 20px;
font-weight: bold;
line-height: 1.4em;
border-left: 3px solid #004BB1;
padding: 5px 5px 5px 10px;
box-sizing: border-box;
margin: 0 0 30px;
}

h3.recruit_title{
background: #F0F3F5;
display: block;
font-size: 20px;
font-weight: bold;
line-height: 1.4em;
border-left: 3px solid #004BB1;
padding: 5px 5px 5px 10px;
box-sizing: border-box;
margin: 100px 0 30px;
}

.rec_btn_ctr{
margin: auto;
text-align: center;
}
.rec_btn_ctr a{
margin-right: 1%;
margin-left: 1%;
}

.f_r{color: red;}

@media only screen and (max-width:768px){
	#p_recruit table tr th,
	#p_recruit table tr td{
	display: block;
	float: none;
	width: 100%;
	clear: both;
	}
	#p_recruit table tr th{
	border-top: 0;
	border-bottom: 0;
	}
	#p_recruit table tr td{
	border-top: 0;
	}
	#p_recruit table tr{
	border-bottom: 1px solid #cecece;
	}

	.rec_btn_ctr a{
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 7%;
	}

}

.recruit_tbl,
.contact_tbl {
display: block;
background: #F0F3F5;
padding: 50px 80px;
box-sizing: border-box;
margin-bottom: 50px;
}

.recruit_tbl table,
.contact_tbl table{
box-sizing: border-box;
border: none;
}

.recruit_tbl table tr,
.recruit_tbl table th,
.recruit_tbl table td,
.contact_tbl table tr,
.contact_tbl table th,
.contact_tbl table td{
border: none;
background: none;
}

.recruit_tbl table th,
.contact_tbl table th{
text-align: right;
width: 30%;
font-size: 20px;
}

/* contactform */
.recruit_tbl table, 
.recruit_tbl table tbody,
.contact_tbl table, 
.contact_tbl table tbody{
    width: 100%;
    box-sizing:border-box;
}

div.wpcf7cp-btns{
    margin: 2em center 0!important;
    text-align: center!important;
    }

button.wpcf7cp-cfm-edit-btn {
    margin-right: 20px!important;
    margin-bottom: 20px!important;
    padding: 0.5em 4em!important;
    border-radius: 5px!important;
    background: #7a7a7a!important;
    color: #fff!important;
    box-shadow: 0 0 1px 0 rgb(0 0 0 / 50%)!important;
    font-weight: bold!important;
    border: 0!important;
    box-sizing: border-box!important;
    font-size: 16px!important;
}

button.wpcf7cp-cfm-submit-btn {
    margin-bottom: 20px!important;
    padding: 0.5em 4em!important;
    border-radius: 5px!important;
    background: #004BB1!important;
    color: #fff!important;
    box-shadow: 0 0 1px 0 rgb(0 0 0 / 50%)!important;
    font-weight: bold!important;
    box-sizing: border-box!important;
    border: 0!important;
    font-size: 16px!important;
}

button.wpcf7cp-cfm-edit-btn:hover, 
button.wpcf7cp-cfm-submit-btn:hover{
    background: #4C9ED9!important;
    box-shadow: none!important;
}


@media only screen and (max-width:768px){
	.recruit_tbl,
    .contact_tbl{
	display: block;
	padding: 10px 5% 30px;
	box-sizing: border-box;
	}

    .recruit_tbl table tr th, 
    .recruit_tbl table tr td,
    .contact_tbl table tr th, 
    .contact_tbl table tr td{
    width: 100%!important;
    display: block!important;
	float: none;
	padding: 3%;
	box-sizing: border-box;
    }

    .recruit_tbl table tr th,
    .contact_tbl table tr th {
    padding-bottom: 0;
    text-align: left;
	border-top: 1px solid #cecece;
    }

}

/* recruitform */
    .recruit_tbl table input[type="text"],
    .recruit_tbl table input[type="email"],
    .recruit_tbl table input[type="tel"],
    .recruit_tbl table select,
    .contact_tbl table input[type="text"],
    .contact_tbl table input[type="email"],
    .contact_tbl table input[type="tel"],
    .contact_tbl table select {
    border: 1px #CECECE solid;
    padding: 0.5em;
    border-radius: 5px;
    margin-bottom: 0.5em;
    max-width: 100%!important;
    font-size: 18px;
    word-break: break-all;
}

.recruit_tbl table textarea,
.contact_tbl table textarea {
    border: 1px #CECECE solid;
    padding: 0.5em;
    border-radius: 5px;
    margin-bottom: 0.5em;
    width: 100%;
    font-size: 18px;
}

span.wpcf7-checkbox,
span.wpcf7-radio,
span.wpcf7-list-item-label{
font-size: 18px;
vertical-align: bottom;
}

.wpcf7 input[type="file"] {
	cursor: pointer;
	padding: 5px;
	height: 33px;
}

/* recruitform */
.recruit_tbl table input[type="text"]:focus,
.recruit_tbl table input[type="email"]:focus,
.recruit_tbl table input[type="tel"]:focus,
.recruit_tbl table textarea:focus,
.recruit_tbl table select:focus,
.contact_tbl table input[type="text"]:focus,
.contact_tbl table input[type="email"]:focus,
.contact_tbl table input[type="tel"]:focus,
.contact_tbl table textarea:focus,
.contact_tbl table select:focus{
    background: #EEFFFF;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
}
/* submit */
.recruit_tbl input[type="submit"],
.contact_tbl input[type="submit"] {
    margin-top: 30px;
    padding: 0.5em 4em;
    border-radius: 5px;
    background: #004BB1;
    color: #fff;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
    font-weight: bold;
    box-sizing:border-box;
}
.recruit_tbl input[type="submit"]:hover,
.contact_tbl input[type="submit"]:hover {
    background: #4C9ED9;
    box-shadow: none;
}

.comform .wpcf7-list-item{
    display: inline-block;
    margin: 0;
}

.recruit_tbl input[type="button"].wpcf7-previous,
.contact_tbl input[type="button"].wpcf7-previous{
    background: #707070;
    margin: 30px 10px 0 0;
    border-radius: 5px;
    padding: 0.5em 4em;
    font-weight: bold;
}

.recruit_tbl input[type="button"].wpcf7-previous:hover,
.contact_tbl input[type="button"].wpcf7-previous:hover{
    background: #ccc;
}

.wpcf7-spinner {
    margin: 0 0 10px!important;
}

.contact_tbl table input.f-name1,
.recruit_tbl table input.f-name1{
    display: inline-block;
    width: 185px;
    margin-right: 5px;
}

.contact_tbl table input.f-name2,
.recruit_tbl table input.f-name2{
    display: inline-block;
    width: 185px;
}

.f_hissu{
background: #F28E0B;
color: #fff;
font-size: 15px;
font-weight: bold;
display: inline-block;
padding: 0px 5px;
border-radius: 3px;
margin-left: 10px;
}

.f_ninni{
background: #707070;
color: #fff;
font-size: 15px;
font-weight: bold;
display: inline-block;
padding: 0px 5px;
border-radius: 3px;
margin-left: 10px;
}

div.sitemap{
display: flex;
justify-content: space-around;
align-items: flex-start;
}

div.sitemap > div{
margin: 0 3%;
}

div.sitemap ul li{
margin-bottom: 0;
padding-left: 0;
list-style: inside;
list-style-type: disc;
}

div.sitemap ul li a{
    text-decoration: underline;
}

div.sitemap ul li a:hover{
    text-decoration: none;
}

@media only screen and (max-width:768px){
	.recruit_tbl table input[type="text"],
	.recruit_tbl table input[type="email"],
	.recruit_tbl table input[type="tel"],
	.recruit_tbl table select,
    .contact_tbl table input[type="text"],
	.contact_tbl table input[type="email"],
	.contact_tbl table input[type="tel"],
	.contact_tbl table select {
	    width: 95%;
	}

	.recruit_tbl table input[type="text"][name="gallantry"]{
        width: 40%;
    }

	.recruit_tbl table select,
    .contact_tbl table select {
	max-width: 100%;
	}

    /* recruitform */
    .recruit_tbl input[type="submit"],
    .contact_tbl input[type="submit"] {
        margin-top: 20px;
    }

    .wpcf7 input[type="file"] {
        cursor: pointer;
        padding: 5px;
        height: 33px;
        width: 100%;
        box-sizing: border-box;
        }

}

@media only screen and (max-width:750px){
    .recruit_tbl table,
    .recruit_tbl table tbody,
    .contact_tbl table,
    .contact_tbl table tbody{
	width:100%;
	box-sizing:border-box;
	}

    .recruit_tbl table tr th, 
    .recruit_tbl table tr td,
    .contact_tbl table tr th, 
    .contact_tbl table tr td{
        width: 100%!important;
        display: block!important;
	float: none;
	padding: 3%;
	box-sizing: border-box;
	margin: 0!important;
    }

    .recruit_tbl table input[type="text"][name="gallantry"]{
        width: 40%;
    }
    .recruit_tbl table td select[name="occupation"] {
        width: 100%;
        box-sizing: border-box;
    }

    .wpcf7 input[type="file"] {
    cursor: pointer;
    padding: 5px;
    height: 33px;
    width: 100%;
    box-sizing: border-box;
    }

    .contact_tbl table input.f-name1,
    .recruit_tbl table input.f-name1{
        display: inline-block;
        width: 40%;
        margin-right: 3%;
    }

    .contact_tbl table input.f-name2,
    .recruit_tbl table input.f-name2{
        display: inline-block;
        width: 40%;
    }

    div.sitemap{
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-start;
    }

}