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

.pc,nav,.cat-item-1{
	display:none !important;
}

.anchor{
    display: block;
    width: 100%;
    height: 0;
    margin: 0;
    float: left;
    clear: both;
}

/*アニメーション要素のスタイル*/
.fade{
	opacity : 0;
	visibility: hidden;
    transition: 1.0s;
    transition-delay: 0.2s;
	transform: translateY(80px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

*{
	margin:0;
	padding:0;
}

img{
	display: block;
	max-width: 100%;
	height: auto;
	border:0;
	border-style:none;
}

a{
	word-break: break-all !important;
}

a img {
	border:0;
    border-style:none;
}

html{
	height:100%;
}

body{
    font-family:"Yu Gothic medium", "游ゴシック medium", YuGothic, "游ゴシック体", "Yu Gothic", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "メイリオ",Meiryo, "sans-serif"; 
	font-weight: normal;
	width:100%;
	height:100%;
	margin:0;
    animation: fadeIn 1.2s ease 0s 1 normal;
    -webkit-animation: fadeIn 1.2s ease 0s 1 normal;
}

#toppage{
    background-color: #e7edee;
}

/* top movie */
#topimg  {
    display: block;
    width: 100% !important;
    height: auto;
    overflow: hidden;
    margin-top: 60px !important;
}

/*#toppage #topimg .slides{
    display: block;
    position: relative;
    width: 100% !important;
    height: 100%;
    min-height: 35vh;
    object-fit: cover !important;
    object-position: top right !important;
    z-index: 0 !important;
}
#toppage #topimg .slides img{
    display: block;
    position: relative;
    width: 100% !important;
    height: 100%;
    min-height: 35vh;
    object-fit: cover !important;
    object-position: top right;
}
.slide-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation: slider-1 24s linear infinite;
}

.slide-image:nth-child(1) {
  background-image: url(../images/top01.jpg);
  animation-delay: -2s;
}

.slide-image:nth-child(2) {
  background-image: url(../images/top02.jpg);
  animation-delay: 6s;
}

.slide-image:nth-child(3) {
  background-image: url(../images/top03.jpg);
  animation-delay: 14s;
}

.slide-image:nth-child(4) {
  background-image: url(../images/top04.jpg);
  animation-delay: 14s;
}

@keyframes slider-1 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  4.16% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  41.66% {
    opacity: 0;
    transform: scale(1.2);
  }
  100% {
    opacity: 0;
  }
}*/

/* video */
#video{
  width: 100% !important;
  position: relative;
  z-index: -1;
}

#video video{
  width: 100%;
  height: auto;
  position: relative;
}

header ul {
	list-style:none;
}

header{
	display: block;
	position: fixed;
	width: 100%;
	height: 60px;
	margin: 0 !important;
    background-color: #fff;
	top:0;
	z-index: 20;
    transition: 0.3s;
}

footer{
	display: block;
	width: 100%;
    color: #fff;
    background-color: #004d82;
    padding: 0;
	margin: 0 0 0 0;
	float: left;
	clear: both;
}

#logo a{
    display: inline;
    position: absolute;
    text-decoration: none;
    width: calc(100% - 80px) !important;
    max-width: 300px;
    height: auto;
    z-index: 1011 !important;
    top:19px;
    left: 20px;
    transition: 0.2s;
    cursor: pointer;
}
#logo a:hover{
    filter:alpha(opacity=45);
    -moz-opacity: 0.45;
    opacity: 0.45;
    transition: 0.3s;
}
#toppage header .logo_w{
    position: absolute;
    transition: 0.3s;
    z-index: 1010;
    opacity: 0;
}
#secondary header .logo_w{
    display: none !important;
    cursor: pointer;
}
#toppage header .logo_b{
    position: absolute;
    transition: 0.3s;
    z-index: 1009;
}

#toppage header.fixed,
#secondary header.fixed{
	height: 60px;
    background-color: #fff;
    filter: drop-shadow(0 3px 30px rgba(0,0,0,0.10));
    transition: 1.0s;
}

#toppage header.fixed .logo_w{
    opacity: 0;
    transition: 0.3s;
    z-index: 1009;
    cursor: pointer;
}
#toppage header.fixed #logo a,
#secondary header.fixed #logo a{
    display: inline;
    position: absolute;
    text-decoration: none;
    width: calc(100% - 80px) !important;
    max-width: 300px;
    height: auto;
    z-index: 1011;
    top:19px;
    left: 20px;
    transition: 0.2s;
    cursor: pointer;
}
#toppage header.fixed #gnavi,
#secondary header.fixed #gnavi{
    position: absolute;
    height: 25px;
    top:18px;
    transition: 0.3s;
}
#toppage header.fixed #gnavi li,
#secondary header.fixed #gnavi li{
    font-size: 1.0rem !important;
    transition: 0.2s;
}
#toppage header.fixed #gnavi li a,
#secondary header.fixed #gnavi li a{
    color: #000;
    text-decoration: none;
    padding: 10px 0;
    margin: 0 18px;
    background-image: url("../images/gnavi_bg.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 0 3px;
    transition: 0.2s;
}

#toppage header.fixed #gnavi li a:hover,
#secondary header.fixed #gnavi li a:hover{
    color: #006FBB;
    background-image: url("../images/gnavi_bg.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% 3px;
    transition: 0.2s;
}

.copyright{
	display: block;
	width:90%;
    max-width: 1150px;
	font-size:0.7rem;
    color: #fff !important;
    text-align: center !important;
	padding: 0;
	margin:0 auto 50px auto !important;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
	float: none;
	clear: both;
}

nav{
    position: absolute;
    width: 100%;
}


/*TOP　NEWS*/
#toppage #news_area{
    display: block;
    width: 100%;
    clear: both;
    z-index: 10;
}
#toppage #news_area .block{
    display: block;
    position: relative;
    width: 80%;
    max-width: 1000px;
    color: #fff;
    padding: 20px 5% 20px 5%;
    margin: -25px auto 0 auto !important;
    background-color: #004d82;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
    z-index: 11 !important;
}
#toppage #news_area .block dl{
    display: block;
    width: 100%;
    font-size: 0.9rem;
    line-height: 150%;
    margin: 30px 0 0 0 !important;
    float: left;
    clear: both;
}
#toppage #news_area .block dl dt{
    display: block;
    width: 100%;
    margin-bottom: 3px;
    float: left;
    clear: left;
}
#toppage #news_area .block dl dt span{
    display: inline-block !important;
    width: 90px;
    font-size: 0.6rem !important;
    line-height: 100% !important;
    text-align: center;
    padding: 3px 0 !important;
    margin: 0 10px 0 0 !important;
    border: solid 1px #fff;
    vertical-align: bottom !important;
    float: right;
}
#toppage #news_area .block dl dd{
    display: block;
    width: 100%;
    margin-bottom: 20px;
    float: left;
    clear: both;
}
#toppage #news_area .block dl dd:last-child{
    margin-bottom: 0 !important;
}
#toppage #news_area .block dl a{
    color: #fff;
    text-decoration: none;
}
#toppage #news_area .block dl a:hover{
    text-decoration: none;
    color: #71DFFF;
}
#toppage #news_area .news_area_title{
    display: block;
    width: 35% !important;
    max-width: 70px !important;
    height: auto;
    text-align: center;
    margin: 0 auto 0 auto !important;
    clear: both;
}
#toppage #news_area .news_area_title strong{
    display: block;
    width: 100%;
    height: auto;
    text-align: center;
    float: left;
    clear: both;
}

/*footer*/
footer .block{
    display: block;
    width: 100%;
    margin: 50px auto 50px auto;
    float: left;
    clear: both;
}
footer .block .address{
    display: block;
    width: 90%;
    font-size: 0.8rem;
    line-height: 180%;
    letter-spacing: 0.5px;
    text-align: center;
    margin: 0 5%;
    float: left;
    clear: both;
}
footer .block .address img{
    display: inline-block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
footer .block .fnavi_area{
    display: none !important;
}

#logo2 a{
    display: block;
    position: relative;
    text-decoration: none;
    width: 300px;
    height: auto;
    margin: 0 auto 30px auto !important;
    z-index: 10;
    transition: 0.2s;
}
#logo2 a:hover{
    filter:alpha(opacity=45);
    -moz-opacity: 0.45;
    opacity: 0.45;
    transition: 0.3s;
}

/*CONTACT*/
.contact_area{
    display: block;
    width: 100%;
    padding: 30px 0 !important;
    float: left;
    clear: both;
}
.contact_block {
	background: #004d82;
	width: calc(95% - 40px) !important;
    max-width: 1110px;
	height: auto;
    color: #fff;
    padding: 30px 20px 25px 20px !important;
    margin: 0 auto 0 auto !important;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
	clip-path: polygon(50px 0%, 100% 0%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0% 100%, 0% 50px);
}
.title_contact_area{
    display: block;
    width: 50%;
    max-width: 250px !important;
    height: auto;
    margin: 0 auto;
    float: none;
    clear: both;
}
.contact_navi{
    display: block;
    width: 90%;
    list-style: none;
    margin: 30px 5% 0 5% !important;
    float: left !important;
    clear: both;
}
.contact_navi li{
    max-width: 320px;
    margin: 0 auto;
}
.contact_navi li img{
    display: block;
    width: 100%;
    height: auto;
}
.contact_navi01 a{
    display: block;
    width: calc(100% - 2px);
    border: solid 1px #fff;
    margin-bottom: 15px;
    float: left;
    clear: both;
}
.contact_navi02 a{
    display: block;
    width: 100%;
    background-image: url("../images/hnavi_bg.png") !important;
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 200% 100%;
    transition: 0.15s;
    float: left;
    clear: both;
}
.contact_navi02 a:hover{
    display: block;
    width: 100%;
    background-image: url("../images/hnavi_bg.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 200% 100%;
    transition: 0.15s;
    float: left;
    clear: both;
}

/*TOP　ABOUT*/
.top_about_area{
    display: block;
    width: 100%;
    padding: 50px 0 50px 0 !important;
    float: left;
    clear: both;
}
.top_about_area article{
    display: block;
    width: 90%;
    max-width: 1100px !important;
    margin: 0 5%;
    float: left;
    clear: both;
}
.top_about_area article .block{
    display: block;
    width: 100%;
    height: auto;
    float: left;
    clear: both;
}
.top_about_area h1 {
    display: block;
    width: 100% !important;
    height: auto;
    margin: 0 auto;
    clear: both;
}

.top_title_about{
    display: block;
    width: 55%;
    max-width: 330px;
    height: auto;
    margin: 0 auto 30px auto !important;
}

.top_about01 {
    display: block;
    position: absolute;
    width: 109%;
    max-width: 734px;
    height: auto;
}
.top_about02 {
    display: block;
    position: absolute;
    width: 109%;
    max-width: 734px;
    height: auto;
}

@media screen and (max-width: 1200px) {
    .top_about_img{
        display: none;
        position: relative;
        width: 100%;
        float: left;
    }
}

/*TOP OVERVIEW*/
.top_overview_area{
    display: block;
    width: 100%;
    padding: 50px 0 0 0 !important;
    background-image: url("../images/top_overview_bg.jpg");
    background-position: center center !important;
    background-size: cover;
    background-attachment: fixed;
    float: left;
    clear: both;
}
.top_overview_bottom{
    display: block;
    width: 100%;
    height: auto;
}
.top_overview_area article{
    display: block;
    width: 90%;
    max-width: 1100px;
    margin: 0 5% 50px 5%;
    float: left;
    clear: both;
}
.top_overview_area article .block{
    display: block;
    width: 100%;
    float: left;
}

.overview_list{
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap !important;
    float: left;
    clear: both;
    list-style: none;
}
.overview_list li{
    display: inline-block;
    width: 48.5% !important;
}
.overview_list li a{
    display: block;
    width: calc(100% - 32px);
    text-decoration: none;
    color: #fff;
    padding: 30px 15px 0 15px;
    border: solid 1px #fff;
    margin-bottom: 20px;
    background-image: url("../images/more_bg.png") !important;
    background-position: center left;
    background-repeat: no-repeat;
    background-size: 210% 0% !important;
    transition: 0.4s;
}
.overview_list li a:hover{
    display: block;
    color: #fff;
    background-image: url("../images/more_bg.png") !important;
    background-position: center left;
    background-repeat: no-repeat;
    background-size: 210% 200% !important;
    border: solid 1px #0084CD;
    transition: 0.4s;
}
.overview_list li span{
    display: block;
    width: calc(100% - 5px);
    font-size: 1rem !important;
    line-height: 100% !important;
    text-align: right !important;
    letter-spacing: 0 !important;
    padding: 3px 0 12px 5px;
}
.overview_list li img{
    display: block;
    width: calc(100% - 5px);
    max-width: 363px;
    height: auto;
    margin-bottom: 8px;
}
.top_title_overview{
    display: block;
    width: 60% !important;
    max-width: 300px;
    height: auto;
    margin: 0 auto 50px auto;
    clear: both;
}

/*TOP SERVICE*/
.top_service_area{
    display: block;
    width: 100%;
    padding: 50px 0 0 0 !important;
    float: left;
    clear: both;
}
.top_service_area article{
    display: block;
    width: 90%;
    max-width: 1100px;
    margin: 0 5%;
    float: left;
    clear: both;
}
.service_list{
    display: flex;
    width: 100%;
    max-width: 1080px;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto;
    clear: both;
}
.service_list li:nth-child(1),
.service_list li:nth-child(2){
    display: inline-block;
    width: 47% !important;
    max-width: 455px;
    text-align: center;
    margin-bottom: 50px;
}
.service_list li:nth-child(3),
.service_list li:nth-child(4){
    display: inline-block;
    width: 45% !important;
    max-width: 455px;
    text-align: center;
    margin-bottom: 20px;
}
.service_list li a{
    display: block;
    color: #254378;
    text-decoration: none;
    transition: 0.2s;
}
.service_list li a:hover{
    display: block;
    color: #2E9DFE;
    text-decoration: none;
    transition: 0.2s;
}
.service_list li a>img{
    transition: 0.2s;
}
.service_list li a:hover>img{
    opacity: 0.5;
    transition: 0.2s;
}

.service_list li img{
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}
.service_list li span{
    display: inline-block;
    font-size: 1.0rem;
    line-height: 130% !important;
    font-weight: 500;
    text-align: left;
    padding-right: 20px;
    margin: 0 auto !important;
    background-image: url("../images/top_service_tri.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 9px 15px;
    float: none !important;
}
.service_list li span br{
    display: none;
    margin: 0;
    padding: 0;
}
.top_title_service{
    display: block;
    width: 68% !important;
    max-width: 330px;
    height: auto;
    margin: 0 auto 50px auto;
    clear: both;
}

/*TOP RECRUIT*/
.top_recruit_area{
    display: block;
    width: 100%;
    padding: 0 0 100px 0 !important;
    background-image: url("../images/top_recruit_bg.jpg");
    background-position: top center !important;
    background-size: cover;
    background-attachment: fixed;
    float: left;
    clear: both;
}
.top_recruit_area article{
    display: block;
    width: 90%;
    max-width: 1100px;
    margin: 0 5%;
    float: left;
    clear: both;
}
.top_recruit_top{
    display: block;
    width: 100%;
    height: auto;
}
.top_recruit_area article .block{
    display: block;
    width: 100%;
    height: auto;
    margin-top: 50px;
    float: left;
    clear: both;
}
.top_recruit_area h2{
    display: block;
    width: 100% !important;
    height: auto;
    float: none;
    clear: both;
}

.top_recruit_img{
    display: none;
}
.top_recruit01 {
    display: block;
    position: absolute;
    width: 100%;
    max-width: 580px;
    height: auto;
}
.top_recruit02 {
    display: block;
    position: absolute;
    width: 100%;
    max-width: 580px;
    height: auto;
}
.top_recruit03 {
    display: block;
    position: absolute;
    width: 100%;
    max-width: 580px;
    height: auto;
}

.top_title_recruit{
    display: block;
    width: 60%;
    max-width: 270px;
    margin: 0 auto 50px auto !important;
}

/*TOP title*/
#toppage h1,
#toppage h2{
    display: inline !important;
}

/*TOP text*/
#toppage .text{
    display: block;
    margin-bottom: 50px;
    float: left;
    clear: both !important;
}
#toppage .text p{
    font-size: 1rem;
}
#toppage .text p{
    font-size: 1rem;
}
#toppage .text .lead{
    font-size: 1.9em !important;
    line-height: 140% !important;
    letter-spacing: 1px;
    color: #004d82;
    margin-bottom: 25px;
}
#toppage .text .lead strong{
    font-weight: 600;
}
.top_overview_area .text .lead,
.top_recruit_area .text .lead{
    color: #fff !important;
}


.top_about_area .text{
    width: 100%;
    color: #000;
}
.top_about_area .text2{
    width: 100%;
    color: #000;
}
.top_overview_area .text{
    width: 100%;
    color: #fff;
}
.top_recruit_area .text{
    width: 100%;
    color: #fff;
}

/*more button*/
#toppage .more{
    display: block;
    width: 100%;
    list-style: none !important;
    background-image: url("../images/more_bg.png") !important;
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 50px 0 0 0 !important;
    float: left;
    clear: both;
    cursor: pointer;
    transition: 0.15s;
}
#toppage .more:hover{
    display: block;
    width: 100%;
    list-style: none !important;
    background-image: url("../images/more_bg.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 50px 0 0 0;
    float: left;
    clear: both;
    transition: 0.15s;
}
#toppage .more a{
    display: block;
    width: 100%;
    font-size: 1rem;
    text-align: center;
    text-decoration: none;
    color: #fff;
    /*background-color: #004d82;*/
    padding: 20px 0;
    background-image: url("../images/more_arrow.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 80px 60px;
    list-style: none !important;
    float: left;
    clear: both;
}

/*セカンダリ　title*/
#title{
    display: flex;
    width: 100%;
    height: 220px;
    background-color: #ebebeb;
    border-bottom: solid 1px #ccc;
    background-position: top center;
    background-size: cover;
    align-items: center;
    margin-bottom: 50px;
    float: left;
    clear: both;
}

#title h1{
    display: block;
    width: 90%;
    max-width: 1400px;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0 !important;
    margin: 25px auto 0 auto;
}
#title h1 span{
    display: block;
    font-size: 1.4rem;
    letter-spacing: 0.5 !important;
    clear: both;
}

.title_overview01{
    background-image: url("../images/title_bg_overview01.jpg");
}
.title_overview01 h1{
    color: #1b56b5;
}
.title_overview01 h1 span{
    color: #000 !important;
}
.title_recruit01{
    background-image: url("../images/title_bg_recruit01.jpg");
}
.title_recruit01 h1{
    color: #fff;
}
.title_recruit01 h1 span{
    color: #fff !important;
}


/*セカンダリ*/
#contents_area{
    display: block;
    width: 100%;
    margin: 0 0 50px 0;
    clear: both;
}
#contents_area article{
    display: block;
    width: 90%;
    max-width: 1100px;
    margin: 0px auto 0px auto;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
}


#contents_area h3{
    display: inline-block;
    width: calc(100% - 20px);
    font-size: 1.6rem;
    line-height: 120%;
    font-weight: 400 !important;
    color: #005fbe;
    letter-spacing: 0;
    border-left:solid 5px #005fbe;
    padding: 0 0 0 15px;
    margin-top: 40px;
    margin-bottom: 20px;
    float: left;
    clear: both;
}
#contents_area h3:first-child{
    margin-top: 0 !important;
}

#contents_area h4{
    display: inline-block;
    width: 100%;
    font-size: 1.4rem;
    line-height: 120%;
    font-weight: 500 !important;
    color: #005fbe;
    font-feature-settings: 'palt' !important;
    letter-spacing: 0;
    padding: 0 0 0 0;
    margin-top: 35px;
    margin-bottom: 18px;
    float: left;
    clear: both;
}

#contents_area h5{
    display: inline-block;
    width: calc(100% - 20px);
    font-size: 1.2rem;
    line-height: 120%;
    font-weight: 400 !important;
    color: #fff;
    background-color: #005fbe;
    /*border-bottom: solid 1px #005fbe;*/
    font-feature-settings: 'palt' !important;
    letter-spacing: 1px;
    padding: 10px 10px;
    margin-top: 30px;
    margin-bottom: 15px;
    float: left;
    clear: both;
}

#contents_area h4:first-child{
    margin-top: 0 !important;
}

#contents_area p{
    font-size: 1rem;
    line-height: 210%;
    margin-bottom: 30px;
    letter-spacing: 0.5px;
}

/*table*/
#contents_area table{
    display: table;
    font-size: 0.8rem;
    line-height: 160%;
    margin-bottom: 50px;
}
#contents_area table th{
    display: table-cell;
    width: 20%;
    text-align: left;
    vertical-align: top;
    font-weight: normal;
    padding: 15px 10px;
    border-top:solid 2px #005fbe;
}
#contents_area table td{
    display: table-cell;
    text-align: left;
    vertical-align: top;
    padding: 15px 10px;
    border-top:solid 1px #005fbe;
}
#contents_area table td p{
    font-size: 0.8rem;
    line-height: 160%;
}
#contents_area table tr:last-child th{
    border-bottom:solid 2px #005fbe;
}
#contents_area table tr:last-child td{
    border-bottom:solid 1px #005fbe;
}
.table01{
    width: 100%;
}


/*採用情報*/
.recruit_top_area article{
    max-width: 1200px !important;
}
.recruit_lead{
    display: block;
    width: 100%;
    text-align: left;
    margin: 30px 0 50px 0;
    float: left;
    clear: both;
}

.recruit_lead p strong{
    font-size: 1.3rem !important;
    line-height: 160% !important;
    color: #004d82;
    font-style: italic;
    letter-spacing: 0 !important;
}

.recruit_lead p br{
    display: none;
    margin: 0;
    padding: 0;
}

.recruit_block{
    display: block;
    width: 100%;
    max-width: 1100px;
    min-height: 470px;
    line-height: 180% !important;
    background-image: url("../images/recruit_block_bg.png");
    background-position: center center;
    background-size: cover;
    vertical-align: middle !important;
    color: #fff;
    padding: 0 0 10px 0;
    margin: 0 auto 80px auto;
    float: left;
    clear: both;
}

.recruit_block .left_block{
    display: block;
    width: 90% !important;
    margin: 30px 5% 0 5% !important;
    float: left !important;
    clear: both;
}
.recruit_block .right_block{
    display: block;
    width: 90%;
    margin: 30px 5% 0 5% !important;
    float: left !important;
    clear: both;
}
.recruit_block .left_block br,
.recruit_block .right_block br{
    display: none;
    margin: 0;
    padding: 0;
}

.recruit_block .left_block strong,
.recruit_block .right_block strong{
    display: block;
    width: 100%;
    font-size: 1.6rem !important;
    letter-spacing: 0 !important;
    color: #fff !important;
    font-style:italic;
    margin-bottom: 25px !important;
    float: left;
    clear: both;
}


.recruit_block .more{
    display: block;
    width: 100%;
    list-style: none !important;
    background-image: url("../images/more_bg2.png") !important;
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 0 0 0 0;
    float: left;
    clear: both !important;
    cursor: pointer;
    border: solid 1px #fff;
    transition: 0.15s;
}
.recruit_block .more:hover{
    display: block;
    width: 100%;
    list-style: none !important;
    background-image: url("../images/more_bg2.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 0 0 0 0;
    float: left;
    clear: both;
    transition: 0.15s;
}
.recruit_block .more a{
    display: block;
    width: 100%;
    font-size: 1rem;
    text-align: center;
    text-decoration: none;
    color: #fff;
    /*background-color: #004d82;*/
    padding: 12px 0;
    background-image: url("../images/more_arrow.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 80px 60px;
    list-style: none !important;
    float: left;
    clear: both;
}

.recruit_img_right{
    display: block;
    width: 90%;
    max-width: 500px;
    height: auto;
    margin: -40px 5% 0 5% !important;
    float: left;
    clear: both;
}
.recruit_img_left{
    display: block;
    width: 90%;
    max-width: 500px;
    height: auto;
    margin: -40px 5% 0 5% !important;
    float: left;
    clear: both;
}

.wp-image-282{
    display: block;
    width: 50%;
    max-width: 150px;
    height: auto;
    margin: 20px auto !important;
    float: none !important;l
    clear: both;
}

/*社員インタビュー*/
.interview_lead{
    display: block;
    width: 100%;
    text-align: center;
    margin: 30px 0 120px 0 !important;
    float: left;
    clear: both;
}

.interview_lead p{
    font-size: 1.0rem !important;
    line-height: 120% !important;
    color: #004d82;
    font-style: italic;
}
.interview_lead p strong{
    font-size: 1.3rem !important;
    color: #004d82 !important;
    font-style: italic;
}

.interview_block{
    display: block;
    width: 100%;
    max-width: 1100px;
    min-height: 200px;
    line-height: 180% !important;
    background-image: url("../images/recruit_block_bg.png");
    background-position: center center;
    background-size: cover;
    vertical-align: middle !important;
    color: #fff;
    padding: 0 0 0 0;
    margin: 0 auto 110px auto;
    float: left;
    clear: both;
}


.interview_block .right_block{
    display: block;
    width: 90% !important;
    height: auto;
    margin: 30px 5% 0 5% !important;
    float: left !important;
    clear: both;
}

.interview_block .right_block{
    font-size: 1.3rem;
    line-height: 180%;
}
.interview_block .right_block span{
    display: block;
    font-size: 1.0rem !important;
    line-height: 160% !important;
    margin-top: 10px;
    margin-bottom: 40px !important;
    float: left;
    clear: both;
}
.interview_block .right_block strong{
    display: block;
    width: 100%;
    color: #fff !important;
    font-size: 2rem !important;
    letter-spacing: 1px;
    margin-bottom: 35px;
    float: left;
    clear: both;
}


.interview_block .more{
    display: block;
    width: 100%;
    list-style: none !important;
    background-image: url("../images/more_bg2.png") !important;
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 0 0 0 0;
    float: left;
    clear: both;
    cursor: pointer;
    border: solid 1px #fff;
    transition: 0.15s;
    position: relative !important;
    z-index: 5 !important;
}
.interview_block .more:hover{
    display: block;
    width: 100%;
    list-style: none !important;
    background-image: url("../images/more_bg2.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 0 0 0 0;
    float: left;
    clear: both;
    transition: 0.15s;
}
.interview_block .more a{
    display: block;
    width: 100%;
    font-size: 1rem;
    text-align: center;
    text-decoration: none;
    color: #fff;
    /*background-color: #004d82;*/
    padding: 12px 0;
    background-image: url("../images/more_arrow.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 80px 60px;
    list-style: none !important;
    float: left;
    clear: both;
}

.interview_img{
    display: block;
    width: 90%;
    max-width: 500px;
    margin: -75px 5% 10px 5% !important;
    height: auto;
    float: left;
    clear: both;
}
.interview_img2{
    display: block;
    position: absolute;
    width: 90%;
    max-width: 1100px;
    height: auto;
}

/*recruit table*/
.recruit_area table{
    display: table;
    width: 100%;
    font-size: 1rem;
    line-height: 210%;
    margin-bottom: 100px !important;
    border:solid 1px #ccc !important;
    border-collapse:  collapse; 
}
.recruit_area table th{
    display: table-cell;
    width: 20%;
    text-align: center  !important;
    vertical-align: top;
    font-weight: bold !important;
    background-color: #F5F5F5;
    padding: 20px;
    border:solid 1px #ccc !important;
}
.recruit_area table td{
    display: table-cell;
    text-align: left;
    vertical-align: top;
    padding: 20px;
    border:solid 1px #ccc !important;
}

/* メディアファイルレイアウト */
.alignleft{
	display:block;
    width: 100% !important;
    height: auto;
	margin:0 auto 20px auto !important;
	float:left;
	clear:both !important;
}

.alignright{
	display:block;
    width: 100% !important;
    height: auto;
	margin:0 auto 20px auto !important;
	float:left;
	clear:both !important;
}

.aligncenter,.alignnone{
	display:block;
    width: 100% !important;
    height: auto;
	margin:0 auto 20px auto !important;
	float:left;
	clear:both !important;
}

/*2nd overview*/
.group_block{
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
    justify-content: space-between !important;
    flex-wrap: wrap;
    align-items: flex-start;
    clear: both;
}

.group_block img{
    display: block;
    width: 50% !important;
    height: auto !important;
    margin-bottom: 50px;
    float: left;
}
.group_block .text{
    display: inline-block !important;
    width: 47% !important;
    margin-bottom: 50px;
    float: right;
}
.group_block hr{
    display: block;
    width: 100% !important;
    height: 30px;
    border: 0;
    border-top:solid 1px #999;
    clear: both;
}
.group_h2{
    display: inline-block;
    width: 100%;
    font-size: 40px;
    line-height: 120%;
    font-weight: 400 !important;
    color: #005fbe;
    letter-spacing: 2px;
    border-left:solid 5px #005fbe;
    padding: 0 0 0 15px;
    margin-top: 150px !important;
    margin-bottom: 0px !important;
    float: left;
    clear: both;
}

/*FAQ*/

.faq_navi{
    display: block;
    width: 100%;
    margin: 0 0 30px 0;
    float: left;
    clear: both;
}
.faq_navi li{
    display: block;
    width: 100%;
    font-size: 1.2rem;
    text-align: center;
    color: #fff;
    padding: 0; 
    margin: 0 0 10px 0;
}

.faq_navi li a{
    display: inline-block;
    width: 100%;
    text-decoration: none;
    color: #fff;
    background-color: #29abe2;
    background-image: url("../images/faq_navi_bg.png") !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding:15px 0;
    transition: 0.2s;
}
.faq_navi li a:hover{
    background-image: url("../images/faq_navi_bg.png") !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 0;
    transition: 0.1s;
}
.faq_navi li a#ro{
    background-color: #29abe2;
    background-image: none !important;
}

.faq_list{
    display: block;
    width: 100%;
    text-align: left;
    font-size: 1.1rem;
    line-height: 150%;
    float: left;
    clear: both;
}
.faq_list a{
    color: #000;
    text-decoration: none;
}
.faq_list a:hover{
    color: #29abe2;
}
.faq_list hr{
    display: block;
    width: 100%;
    border: none;
    border-bottom: solid 1px #ccc;
    float: left;
    clear: both;
}
.faq_list dt{
    display: inline-block;
    width: 100%;
    font-size: 0.9rem;
    margin-top: 20px;
    margin-bottom: 3px;
    float: left;
    clear: both;
}
.faq_list dd{
    display: inline-block;
    width: 100%;
    margin-bottom: 22px;
    float: left;
    clear: both;
}

.faq_title strong{
    display: block;
    width: 100%;
    font-size: 1.25rem;
}
.faq_date{
    display: block;
    width: 100%;
    border-bottom: solid 1px #ccc;
    padding-bottom: 15px;
    float: left;
    clear: both;
}

.to_faq_list a{
    display: block;
    width: 100%;
    text-decoration: none;
    text-align: center;
    font-size: 1.0rem;
    color: #fff;
    background-color: #0071bc;
    padding: 12px 0;
    margin: 100px auto 0 auto !important;
    border-radius: 5px;
    float: left;
    clear: both;
    transition: 0.2s;
}
.to_faq_list a:hover{
    background-color: #29abe2;
    transition: 0.2s;
}
.to_faq_list img{
    display: inline-block;
    width: 15px;
    height: auto;
    margin: 0 15px 2px 0;
}

/* support */
.support_caution{
    display: block;
    width: 100%;
    font-size: 0.85rem !important;
    margin-top: -45px !important;
    margin-bottom: 25px !important;
    float: left;
    clear: both;
}

.support_block01{
    display: block !important;
    width: calc(100% - 30px) !important;
    background-color: #0071bc;
    border: solid 15px #0071bc;
    padding: 0 !important;
    margin: 30px 0 50px 0 !important;
    float: left;
    clear: both !important;
}
.support_block01 .block{
    display: block !important;
    width: calc(100% - 20px);
    background-color: #fff;
    text-align: center;
    vertical-align: middle;
    padding: 0 10px !important;
    margin: 0 0 0 0;
    float: left;
    clear: both;
}
.support_block01 h4{
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.6rem !important;
    line-height: 100% !important;
    color: #fff;
    letter-spacing: 0.5px;
    padding: 15px 0 15px 0 !important;
    margin: 0 !important;
    float: left;
    clear: both;
}
.support_block01 .block .text{
    display: inline-block;
    text-align: left !important;
    padding: 20px 0 0 0 !important;
}
.support_block01 .block .tel{
    display: block;
    margin: 0 !important;
    clear: both;
}
.support_block01 .block .tel strong{
    display: inline-block !important;
    width: initial !important;
    color: #005fbe;
    font-size: 1.6rem !important;
    margin: 0 auto !important;
}

.support_block02{
    display: block;
    width: calc(100% - 30px) !important;
    background-color: #0071bc;
    border: solid 15px #0071bc;
    padding: 0 !important;
    margin: 0 0 50px 0 !important;
    float: left;
    clear: both !important;
}
.support_block02 .block2{
    display: block;
    width: 100%;
    background-color: #fff;
    text-align: left;
    padding: 20px 0 !important;
    margin: 0 0 0 0;
    float: left;
    clear: both;
}
.support_block02 h4{
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.6rem !important;
    line-height: 100% !important;
    color: #fff;
    letter-spacing: 0px;
    padding: 15px 0 15px 0 !important;
    margin: 0 !important;
    float: left;
    clear: both;
}
.support_block02 .block2 ul{
    display: block;
    justify-content: center;
    list-style: none !important;
}
.support_block02 .block2 ul li{
    display: block;
    width: 100%;
    text-align: center !important;
    font-size: 1.2rem;
    line-height: 150%;
    font-weight: bolder;
    padding: 0;
    float: left;
    clear: both;
}
.support_block02 .block2 ul li strong{
    display: inline-block;
    color: #005fbe;
    font-size: 1.6rem !important;
}

.support_block03{
    display: block;
    width: calc(100% - 30px) !important;
    background-color: #bdccd4;
    padding: 15px 15px !important;
    margin: 0 0 50px 0 !important;
    float: left;
    clear: both;
}
.support_block03 dl{
    display: block;
    width: 100%;
    margin: 0 0 20px 0 !important;
    float: left;
    clear: both;
}
.support_block03 dl dt{
    display: block;
    width: 100%;
    margin: 0 0 0 0;
    float: left;
    clear: both;
}
.support_block03 dl dt strong{
    display: block;
    width: 100% !important;
    font-size: 1.2rem !important;
    font-weight: normal !important;
    text-align: center !important;
    color: #fff !important;
    background-color: #005fbe;
    padding: 7px 0 6px 0 !important;
    margin:  0;
    float: left;
    clear: both;
}
.support_block03 dl dd{
    display: block;
    width: 100%;
    font-size: 1.2rem !important;
    line-height: 180% !important;
    font-feature-settings: 'palt' !important;
    letter-spacing: 0;
    padding: 3px 0 0 0 !important;
    margin: 0 0 40px 0 !important;
    float: left;
}

.kuwashiku strong{
    display: block;
    width: 100%;
    text-align: center;
    color: #005fbe;
    font-size: 1rem !important;
    margin: 10px 0 30px 0 !important;
    float: left;
    clear: both;
}
.app_download_block{
    display: block;
    width: calc(100% - 22px);
    font-size: 1rem !important;
    text-align: center !important;
    background-color: #fff;
    padding: 15px 10px !important;
    border: solid 1px #000 !important;
    float: left;
}
.app_download_block p{
    font-size: 0.8rem !important;
}

.app_download_block a{
    display: block;
    width: 100% !important;
    text-decoration: none;
    text-align: center;
    font-size: 1.2rem;
    color: #fff;
    background-color: #0071bc;
    padding: 15px 0;
    margin: -10px 0 25px 0 !important;
    border-radius: 5px;
    float: left;
    clear: both;
    transition: 0.2s;
}
.app_download_block a:hover{
    background-color: #29abe2;
    transition: 0.2s;
}

/* pager */
.pager{
	display:block;
	width:100%;
	height:100px;
	text-align:center;
	font-size:1.25rem;
	margin:50px 0 0 0;
	float:left;
	clear:both;
}

a.page-numbers,
.pager .current{
	color: #999999;
	text-decoration: none;
	padding:5px 7px 4px 7px;
	margin:0 4px;
    border-radius: 6px;
}
.pager .current{
	background:#000;
	color:#fff;
}
.pager a{
	color:#000;
}


/*お問い合わせ*/
.page_contact .form_area{
	display: block;
	width: 100% !important;
	margin: 30px auto !important;
    float: left;
	clear: both;
}

.page_contact .form_area th{
	display: block;
	width: 100% !important;
    font-weight: 500 !important;
	text-align: left;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    float: left;
    clear: both !important;
}
.page_contact .form_area td{
	display: block;
    width: 100% !important;
    padding: 0 0 30px 0 !important;
    margin: 0 !important;
    border: 0 !important;
    float: left;
    clear: both !important;
}
.page_contact .form_area th .required{
	display: inline-block;
	text-align: center;
	color: #fff;
	font-size:10px;
    line-height: 180% !important;
	background-color: #D90000;
	padding:3px 12px 2px 12px !important;
	margin: 0 0 6px 12px !important;
	vertical-align: bottom;
    border-radius: 3px;
}

.page_contact .form_area input{
	width: calc(100% - 22px);
	padding: 15px 10px;
	font-size:15px;
	line-height: 150%;
	margin: 0 0 5px 0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: solid 1px #ccc;
	background-color: #FBFDFF;
}

.page_contact .form_area textarea{
	width: calc(100% - 22px);
	height: 200px;
	padding: 15px 10px;
	font-size:15px;
	line-height: 150%;
	margin: 0 0 0 0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: solid 1px #ccc;
	background-color: #FBFDFF;
}
input::-webkit-input-placeholder{
    color: #999;
}
input::-moz-placeholder{
    color: #999;
}
input:-moz-placeholder{
    color: #999;
}
input::placeholder {
  color: #999 !important;
}
input:-ms-input-placeholder {
  color: #999 !important;
}
input::-ms-input-placeholder {
  color: #999 !important;
}

.page_contact .agreement{
	display: block;
	font-size: 13px;
	float: left;
	clear: both;
}

.wpcf7 input[type="submit"] {
	display: block;
	width: 250px;
	font-size: 1.5rem;
	padding: 15px 0;
	margin: 20px auto 0 auto;
	background-color: #F5AC34;
	color: #fff;
	cursor: pointer;
	border-style: none;
}
.wpcf7 input[type="submit"]:hover{
	background-color: #FFD413;
}
.wpcf7 input[type="submit"]:active{
	background-color: #004D82;
}

.policy_area{
	display: block;
	width: calc(100% - 42px);
	height: 200px !important;
	font-size: 13px !important;
	line-height: 160% !important;
    font-weight: normal !important;
	border: solid 1px #999;
	padding: 20px;
	margin-bottom: 20px;
	overflow-x: hidden;
	overflow-y: scroll;
}
.policy_area p{
	font-size: 13px !important;
	line-height: 160% !important;
	margin-bottom: 20px;
}

/*お知らせ*/
.news_area aside{
	display: block;
	width: 100% !important;
	min-height: 400px;
	padding: 0;
	margin: 20px 0 0 0 !important;
	float: left;
    clear: both !important;
}

.to_news_top{
    display: block;
    width: 100%;
    margin-top: 150px !important;
    float: left;
    clear: both;
}

.news_area .news_list_area{
	display: block;
	width: 100% !important;
	float: left;
}
.news_area .contents{
	display: block;
	width: 100%;
	border-bottom: solid 1px #ccc;
	padding-bottom: 20px;
	margin-bottom: 20px;
	float: left;
}
.news_area .contents{
	font-size: 1rem;
	line-height: 140%;
	margin-bottom: 20px;
}

.news_area .category1{
	display: inline-block;
	width: 100px;
	font-size: 12px !important;
	line-height: 12px !important;
	text-align: center;
	color: #fff;
	padding: 4px 0 2px 0 !important;
	margin: 8px 0 0 0;
	background-color: #22B574;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	float: right;
}
.news_area .category2{
	display: inline-block;
	width: 100px;
	font-size: 12px !important;
	line-height: 12px !important;
	text-align: center;
	color: #fff;
	padding: 4px 0 2px 0 !important;
	margin: 8px 0 0 0;
	background-color: #C0272D;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	float: right;
}
.news_area .category3{
	display: inline-block;
	width: 100px;
	font-size: 12px !important;
	line-height: 12px !important;
	text-align: center;
	color: #000;
	padding: 4px 0 2px 0 !important;
	margin: 8px 0 0 0;
	background-color: #FFCC56;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	float: right;
}
.news_area .category4{
	display: inline-block;
	width: 100px;
	font-size: 12px !important;
	line-height: 12px !important;
	text-align: center;
	color: #000;
	padding: 4px 0 2px 0 !important;
	margin: 8px 0 0 0;
	background-color: #EAEAEB;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	float: right;
}

.to_list{
	display: block;
	width: 100%;
	text-align: center !important;
	margin: 50px 0 0 0;
	float: left;
	clear: both;
}
.to_list a{
	font-size: 13px;
	color: #000;
}
.to_list a:hover{
	text-decoration: none;
}


.news_area article p{
	font-size: 1rem;
	line-height: 150%;
    letter-spacing: 0.5px;
	margin-bottom: 25px !important;
}
.news_area article a:hover{
	text-decoration: none;
}
.news_area article h3{
	display: inline-block;
    width: 100%;
    font-size: 1.6rem !important;
    line-height: 120%;
    font-weight: 400 !important;
    color: #005fbe;
    font-feature-settings: 'palt';
    letter-spacing: 0 !important;
    border-left:solid 5px #005fbe;
    padding: 0 0 0 15px;
    margin-top: 30px !important;
    margin-bottom: 30px;
    float: left;
    clear: both;
}
.news_area .list_title strong a{
	font-size: 20px;
	font-weight: 500;
	color: #000;
}
.news_area .list_title strong a:hover{
	text-decoration: none !important;
}



/*サイドバー*/
.news_area aside{
	display: block;
	width: 200px;
	min-height: 400px;
	padding: 0;
	margin: 0;
	float: right;
}
.widget_title{
	display: block;
	width: 100%;
	text-align: center !important;
	background-color: #02396C !important;
	color: #fff !important;
    font-weight: bold !important;
	font-size: 13px !important;
	padding: 8px 0 6px 0 !important;
	margin: 0 0 15px 0 !important;
    border-radius: 2px;
	float: left;
	clear: both;
}
.program-widget-title{
	display: block;
	position: relative;
	width: 100%;
	text-align: center !important;
	background-color: #C4B896 !important;
	color: #fff;
    font-weight: 500 !important;
	font-size: 16px !important;
	padding: 3px 0 5px 0 !important;
	margin: 0 0 10px 0 !important;
	float: left;
	clear: both;
}
aside ul{
	display: block;
	list-style: none;
	width: 100%;
	font-size: 15px;
	line-height: 150%;
	margin-bottom: 15px;
	float: left;
	clear: both;
}
aside ul a{
	color:#000;
}
aside ul a:hover{
	text-decoration: none;
}
aside ul li{
	display: block;
	padding-left: 30px;
	background-image: url("../images/tri.png");
	background-repeat: no-repeat;
	background-position: 7px 3px;
	background-size: auto 18px;
	float: left;
	clear: both;
}
aside ul li a{
	display: block;
	margin-bottom: 15px;
	float: left;
	clear: both;
}

/*インタビュー*/
.page_interview .interview_header_area{
    display: block;
    width: 100%;
    min-height: 300px;
    background-color: #ffef5b;
    padding: 30px 0;
    float: left;
    clear: both;
}

.page_interview #title{
    margin-bottom: 0 !important;
}
.page_interview section{
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    float: left;
    clear: both;
}
.page_interview section article{
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    float: left;
    clear: both;
}
.interview_header_img{
    display: block;
    width: 100%;
    height: 0;
    max-width: 1200px;
    padding-bottom: 50.65%;
}
.interview_header_img img{
    display: block;
    position: absolute !important;
    width: 90% !important;
    max-width: 1200px;
    height: auto;
}

.page_interview main .block{
    display: block;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
}
.page_interview main .name{
    display: block;
    width: 100%;
    font-size: 1.2rem !important;
    margin: 30px 0 0 0 !important;
}
.page_interview main .name strong{
    display: block;
    width: 100%;
    font-size: 1.6rem !important;
    color: #004d82;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}
.page_interview main .name span{
    display: block;
    margin: -50px 0 0 20px !important;
}

.page_interview .interview_schedule_area{
    display: block;
    width: 100%;
    min-height: 200px;
    background-color: #fffcdb;
    padding: 30px 0 50px 0 !important;
    overflow-x: scroll !important;
    float: left;
    clear: both;
}
.page_interview .interview_schedule_area img{
    display: block !important;
    width: 300% !important;
    height: auto !important;
}
.interview_schedule_area h3{
    display: block;
    width: 100% !important;
    font-size:1.4rem !important;
    color: #004d82 !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px !important;
    font-style: italic !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
    border:0 !important;
    float: left !important;
    clear: both;
}
.schedule_img{
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto !important;
}
.page_interview .interview_text_area{
    display: block;
    width: 100% !important;
    background-color: #fff;
    padding: 50px 0 30px 0 !important;
    margin: 0 !important;
    float: left;
    clear: both !important;
}
.interview_text_area h3{
    display: block;
    width: 100% !important;
    font-size:1.4rem !important;
    line-height: 140% !important;
    color: #004d82 !important;
    font-weight: 500 !important;
    letter-spacing: 0px !important;
    font-style: italic !important;
    margin-bottom: 20px !important;
    padding: 0 !important;
    border:0 !important;
    float: left;
    clear: both !important;
}

.interview_text_area p{
    font-size:1.0rem !important;
    font-feature-settings: 'palt';
    letter-spacing: 0.5px !important;
    margin-bottom: 20px !important;
}
.interview_text_area p strong{
    font-size:1.1rem !important;
    font-weight: 600 !important;
}

.interview_text_area h3 br{
    display: none !important;
    margin: 0;
    padding: 0;
}

.interview_text_area .interview_left_img{
    display: block;
    width: 100% !important;
    max-width: 507px;
    height: auto;
    margin-top: 10px;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.interview_text_area .interview_right_img{
    display: block;
    width: 100% !important;
    max-width: 507px;
    height: auto;
    margin-top: 10px;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.interview_text_area .right_column{
    display: block;
    width: 100%;
    text-align: justify;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.interview_text_area .left_column{
    display: block;
    width: 100%;
    text-align: justify;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}

.interview_text_area .left_column strong{
    color: #000 !important;
    line-height: 180% !important;
}

.page_interview .interview_text_area2{
    display: block;
    width: 90% !important;
    max-width: 1200px !important;
    min-height: 100px;
    background-color: #fff;
    padding: 30px 0 50px 0;
    margin: 0 auto;
    float: none;
    clear: both;
}
.page_interview main .interview_text_area2 .block{
    display: block;
    width: 100% !important;
    max-width: 1200px;
    margin: 0 auto;
    float: left;
    clear: both;
}

.interview_text_area2 h3{
    display: block;
    width: 100% !important;
    font-size:1.3rem !important;
    line-height: 140% !important;
    color: #004d82 !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px !important;
    font-style: italic !important;
    margin: 0 auto 40px auto !important;
    padding: 0 !important;
    border:0 !important;
    float: none !important;
    clear: both;
}
.interview_text_area2 h3 br{
    display: none !important;
    margin: 0;
    padding: 0;
}
.interview_text_area2 .interview_left_img{
    display: block;
    width: 100%;
    max-width: 600px;
    height: auto;
    margin-top: 20px;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.interview_text_area2 .interview_right_img{
    display: block;
    width: 100%;
    max-width: 600px;
    height: auto;
    margin-top: 20px;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.interview_text_area2 .right_column{
    display: block;
    width: 100%;
    text-align: justify;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.interview_text_area2 .left_column{
    display: block;
    width: 100%;
    text-align: justify;
    margin-bottom: 20px;
    float: left !important;
    clear: both;
}
.name_lead{
    display: block;
    font-weight: 600;
    margin-left: 0 !important;
}

.interview_text_area06{
    display: block;
    width: 100%;
    min-height: 300px;
    background-color: #fff;
    padding: 120px 0 0 0 !important;
    margin-bottom: -40px !important;
    float: left;
    clear: both;
}
.to_interview_top{
    display: block;
    width: 340px;
    list-style: none !important;
    background-image: url("../images/more_bg2.png") !important;
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 0 auto 70px auto !important;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
    float: none;
    clear: both;
    cursor: pointer;
    border: solid 1px #0071bc;
    transition: 0.15s;
}
.to_interview_top:hover{
    display: block;
    width: 340px;
    list-style: none !important;
    background-image: url("../images/more_bg2.png") !important;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 210% 100%;
    margin: 0 0 0 0;
    float: none;
    clear: both;
    transition: 0.15s;
}
.to_interview_top:hover{
    color: #fff !important;
    transition: 0.15s;
}
.to_interview_top a{
    display: block;
    position: relative;
    width: 340px;
    font-size: 1rem;
    text-align: center;
    text-decoration: none;
    color: #0071bc;
    /*background-color: #004d82;*/
    padding: 12px 0;
    background-image: url("../images/more_arrow_blue.svg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: 50px 60px;
    list-style: none !important;
    float: left;
    clear: both;
}
.to_interview_top a:hover{
    color: #fff;
    background-image: url("../images/more_arrow.svg");
    transition: 0.15s;
}
.enjapan img{
    display: block;
    width: 90% !important;
    height: auto;
    margin: 25px 5% 0 5% !important;
}

.page_interview .enjapan{
    display: block;
    width: 90% !important;
    height: auto;
    margin: 0 5% 0 5% !important;
}

/* 社長メッセージ */
.president{
	display: block;
    width: 70%;
    max-width: 400px;
    height: auto;
	margin:0 auto 30px auto;
    clear: both !important;
}

/*沿革*/
.history_table th{
    width: 60px !important;
}
.history_table .month{
    display: table-cell;
    width: 40px;
    text-align: left;
    vertical-align: top;
    font-weight: normal;
    padding: 15px 0;
    border-top:solid 2px #005fbe !important;
}

/*固定ページ イメージ画像*/
.image_picture{
    display: flex;
    width: 100% !important;
    max-width: 1200px !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    margin: 30px 0;
    float: left;
    clear: both;
}

.image_picture img{
    display: inline;
    width: 48.5%;
    max-width: 1200px !important;
    height: auto;
    padding: 0;
    margin: 0 0 20px 0;
    border-radius: 4px;
    float: none !important;
}

.image_picture br{
    display: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.list{
    list-style: initial !important;
    list-style-position: outside !important;
    margin-left: 0 !important;
    padding-left: 25px;
}

.list li{
    list-style: initial !important;
    list-style-position: outside !important;
    margin-left: 0 !important;
    margin-bottom: 5px;
}

.list li a{
    display: inline-block !important;
    padding: 0;
    margin: 0;
}
.list li a:hover{
    text-decoration: none;
}

#contents_area blockquote{
    display: block;
    width: calc(100% - 30px);
    font-size: 0.9rem !important;
    line-height: 130% !important;
    padding: 25px 15px 15px 15px;
    margin: 30px auto;
    background-color: #E5F1FF;
    border-radius: 5px;
    float: left;
    clear: both;
}

#contents_area strong{
    display: block;
    font-size: 1.2rem;
    line-height: 120%;
    font-weight: 600 !important;
    color: #005fbe;
    font-feature-settings: 'palt' !important;
    letter-spacing: 0;
    margin-bottom: 18px;
}

.recruit_area strong{
    font-size: 1.2rem;
    line-height: 120% !important;
    font-weight: 600 !important;
    color: #005fbe !important;
    font-feature-settings: 'palt' !important;
    letter-spacing: 1px;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/*製品*/
.lineup_area img{
    max-width: 100%;
    height: auto;
}
.lineup_area h3{
    display: block;
    width: 100%;
    margin: 30px 0 30px 0 !important;
    clear: both !important;
}
.lineup_area p strong{
	display:block;
    width: 100%;
	font-size:30px;
    line-height: 150%;
    text-align: center;
	font-weight: 700;
    letter-spacing: 2px;
	color: #005491;
    margin-top: 0 !important;
	margin-bottom: 25px;
	float: left;
	clear: both;
}
.lineup_area .lead{
	display:block;
    width: calc(100% - 20px);
	font-size:1.1rem !important;
    line-height: 150% !important;
    color: #fff;
    text-align: center;
	font-weight: bolder;
    letter-spacing: 0 !important;
    padding: 20px 10px;
    margin: 20px 0 !important;
    background-color: #55A8EE;
    border-radius: 4px;
	float: left;
	clear: both;
}
.lineup1_img1_area{
	display:block;
    width: 100%;
	margin: 0 auto 30px auto !important;
    float: left;
	clear: both;
}
.lineup1_img1_area img{
	display:block;
    width: 100%;
    height: auto;
	float: left;
    clear: both;
}
.lineup1_img1_area p{
	display:block;
    width: 100%;
    height: auto;
    font-size:1.4rem !important;
    line-height: 150%;
	font-weight: 400;
    font-style: italic !important;
    letter-spacing: 0;
    margin-top: 10px;
	float: left;
    clear: both;
}
.lineup1_img1_area p br{
	display:none;
    margin: 0;
    padding: 0;
}


.lineup_area .lead2{
	display:block;
    width: 100%;
    word-break: keep-all !important;
    white-space: nowrap !important;
	font-size:1.4rem;
    line-height: 150%;
    text-align: left;
	font-weight: bold;
    letter-spacing: 0;
    margin: 0 auto !important;
	float: left !important;
	clear: both;
}
.lineup2_img1_area{
	display:block;
    width: 100%;
    max-width: 1100px;
	margin: 0 auto 30px auto !important;
    float: left;
	clear: both;
}
.lineup2_img1_area img{
	display:block;
    width: 100%;
    height: auto;
	float: left;
}
.lineup2_img1_area p{
	display:block;
    width: 100%;
    height: auto;
    font-size:1.4rem !important;
    line-height: 150%;
	font-weight: 400;
    font-style: italic !important;
    letter-spacing: 0;
    margin-top: 10px;
	float: left;
    clear: both;
}
.lineup2_img1_area p br{
	display:none;
    margin: 0;
    padding: 0;
}

.lineup_caution{
    display:block;
    width: 100%;
    word-break: break-all;
    font-size: 0.8rem !important;
    line-height: 140% !important;
    margin: 30px auto 50px auto!important;
    float: left!important;
    clear: both;
}
.lineup_caution br{
    display:none;
    margin: 0;
    padding: 0;
}

.lineup2_block_area{
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 20px 0 !important;
    float: left;
    clear: both;
}
.lineup2_block_area .lineup2_block{
    display: inline-block;
    width: calc(32% - 22px);
    text-align: center !important;
    padding: 5px 10px 5px 10px;
    border: solid 1px #ccc;
    float: left;
}
.lineup2_block_area .lineup2_block img{
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 15px;
    float: left;
    clear: both;
}
.lineup2_block_area .lineup2_block p{
    display: inline-block;
    width: auto !important;
    text-align: left;
    font-size: 0.8rem !important;
    line-height: 160% !important;
    margin: 0 auto !important;
}
.lineup2_block_area .lineup2_block p br{
    display: none;
    margin: 0;
    padding: 0;
}
.lineup2_bottom_area{
    display: block;
    width: 100% !important;
    text-align: left;
    margin: 0 auto;
    clear: both;
}
.lineup2_bottom_text1{
    display: inline-block;
    width: 100%;
    font-size: 1.0rem !important;
    margin:20px auto 20px auto !important;
    float: left;
    clear: both !important;
}
.lineup2_bottom_text2{
    display: inline-block;
    width: calc(100% - 20px);
    text-align: left;
    font-size: 0.8rem;
    padding: 10px 10px 12px 10px;
    margin: 0 auto !important;
    background-color: #EDEDEE;
    float: none;
    clear: both !important;
}
.lineup2_bottom_text2 br{
    display: none;
    padding: 0;
    margin: 0;
}
.lineup2_lead2{
    display: block;
    width: 100% !important;
    text-align: left;
    margin: 30px 0;
    vertical-align: middle;
    float: left;
    clear: both;
}
.lineup2_lead2 p{
    display: inline-block;
    font-size: 1.2rem !important;
    line-height: 120% !important;
    font-weight: 700;
    margin: 30px auto 0 auto !important;
}
.lineup2_lead2 p img{
    display: inline-block;
    width: 80px;
    height: 80px;
    margin-right: 20px !important;
    margin-top: -20px !important;
    float: left;
}
.lineup2_block2_area{
    display: block;
    width: 700px;
    margin: 0 auto;
    float: none;
    clear: both;
}
.lineup2_block2_area img{
    display: block;
    width: 370px !important;
    height: auto;
    margin: 20px 0 0 0;
    float: left;
}
.lineup2_block2_area .text{
    display: block;
    width: 300px !important;
    height: auto;
    margin: 30px 0 0 0;
    float: right;
}
.lineup2_block2_area .text .lineup2_block2_name{
    display: inline !important;
    height: auto;
    font-size:1.9rem !important;
    line-height: 150%;
	font-weight: 700;
    letter-spacing: 1px;
	color: #005491;
}
.lineup2_block2_area .text .price{
    display: inline-block !important;
    height: auto;
    font-size:18px;
    line-height: 150%;
	font-weight: 700;
    letter-spacing: 1px;
}
.lineup2_block2_area .text .price span{
    font-size:30px;
    line-height: 150%;
	font-weight: 700;
    letter-spacing: 1px;
}
.lineup2_img6{
    width: 100% !important;
    height: auto;
    margin: 0 auto !important;
    float: none !important;
}

.lineup_area .lead3{
	display:block;
    width: 100%;
    word-break: keep-all !important;
    white-space: nowrap !important;
	font-size:1.4rem;
    line-height: 150%;
    text-align: left;
	font-weight: bold;
    letter-spacing: 0;
    margin: 0 auto !important;
	float: none !important;
	clear: both;
}

.pink_area{
    display: inline-block;
    width: calc(100% - 30px);
    font-size: 1.2rem;
    line-height: 170%;
    padding: 10px 15px 12px 15px;
    margin: 0 auto 15px auto !important;
    background-color: #FFE5FF;
    float: left; 
    clear: both !important;
}
.lineup3_caution{
    font-size: 0.8rem !important;
}
.lineup3_img1_area{
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 50px 0 0 0 !important;
    float: left;
    clear: both;
}
.lineup3_img1_area img{
    display: inline-block;
    width: 100% !important;
    height: auto;
}

.lineup3_img3_area{
    display: block;
    width: 100%;
    margin: 0 0 50px 0 !important;
    float: left;
    clear: both;
}
.lineup3_img3_area img{
    display: inline-block;
    width: 100%;
    height: auto;
    float: left;
}

.lineup3_img4_area{
    display: block;
    width: 100%　！;
    margin: 0 0 50px 0 !important;
    float: left;
    clear: both;
}
.lineup3_img4_area img{
    display: inline-block;
    width: 100%;
    height: auto;
    float: left;
}
.lineup3_img4_area .text{
    display: block;
    width: 100%;
    font-size: 0.9rem !important;
    float: right;
}
.lineup3_img4_area .text td{
    padding-bottom: 10px;
}
.lineup3_img5_area{
    display: block;
    width: 100% !important;
    margin: 0 0 30px 0 !important;
    float: left;
    clear: both;
}
.lineup3_img5_area img{
    display: block;
    width: 100% !important;
    height: auto;
    margin-bottom: 20px !important;
    float: left;
}

.lineup3_table{
	display: table;
	width: 100%;
	font-size: 0.8rem !important;
	line-height: 150%;
	margin-bottom: 40px;
	border-collapse: collapse;
	border: solid 1px #666;/*表全体を線で囲う*/
	background-color: #fff;
    float: right;
}
.lineup3_table th{
	display: table-cell;
	width: auto !important;
	font-weight: 400 !important;;
	padding: 8px 10px;
	margin: 0;
	border: solid 1px #666 !important;
	background-color: #EBEBFA !important;
}
.lineup3_table td{
	display: table-cell;
	padding: 8px 10px;
	margin: 0;
	border: solid 1px #666 !important;
}

.lineup4_img1_area{
	display:block;
    width: 100%;
	margin: 0 auto 50px auto !important;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: hidden;
	clear: both;
}
.lineup4_img1_area img{
	display:block;
    width: 370px;
    height: auto;
    margin-bottom: 50px;
	float: left;
}
.lineup4_img1_area p{
	display:block;
    width: calc(100% - 390px);
    height: auto;
    font-size:18px !important;
    line-height: 170%;
	font-weight: bold;
    letter-spacing: 1px;
    margin-top: 30px;
	float: right;
}
.lineup3_img6{
    width: 80% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

/*製品販売関連*/
.product_list_area{
    display: block;
    width: 100%;
    margin: 30px 0;
    float: left;
    clear: both;
}
.product_list_area strong{
    font-size: 1.3rem !important;
    letter-spacing: 0;
}
.product_list_area .left_column,
.product_list_area .right_column{
    display: block;
    width: 100% !important;
    text-align: left !important;
    margin-bottom: 30px !important;
    float: left;
    clear: both;
}
.product_list_area ul{
    display: block;
    width: calc(100% - 15px);
    list-style: none;
    margin-left: 15px;
    float: left;
    clear: both;
}
.product_list_area ul li{
    display: block;
    width: calc(100% - 25px);
    font-size: 1.2rem;
    line-height: 125%;
    text-align: left;
    color: #000;
    font-weight: 300;
    font-feature-settings: 'palt' !important;
    letter-spacing: 1.5px;
    padding-left: 25px;
    margin: 0 0 16px 0;
    background-image: url("../images/tri_b.svg");
    background-position: center left;
    background-repeat: no-repeat;
    background-size: 20px;
    float: left;
    clear: both;
}
.product_list_area ul li a{
    color: dodgerblue !important;
    text-decoration: none;
    font-weight: 500;
}
.product_list_area ul li a:hover{
    color: deepskyblue !important;
    text-decoration: none;
}


/*サポート関連*/
.support_list_area{
    display: block;
    width: 100%;
    margin: 30px 0;
    float: left;
    clear: both;
}
.support_list_area strong{
    font-size: 1.3rem !important;
    letter-spacing: 0;
}
.support_list_area ul{
    display: block;
    width: calc(100% - 15px);
    list-style: none;
    margin-left: 15px;
    margin-top: -10px;
    margin-bottom: 30px;
    float: left;
    clear: both;
}
.support_list_area ul li{
    display: block;
    width: calc(100% - 25px);
    font-size: 1.2rem;
    line-height: 125%;
    text-align: left;
    color: #000;
    font-weight: 300;
    font-feature-settings: 'palt' !important;
    letter-spacing: 1.5px;
    padding-left: 25px;
    margin: 0 0 16px 0;
    background-image: url("../images/tri_b.svg");
    background-position: center left;
    background-repeat: no-repeat;
    background-size: 20px;
    float: left;
    clear: both;
}
.support_list_area ul li a{
    color: dodgerblue !important;
    text-decoration: none;
    font-weight: 500;
}
.support_list_area ul li a:hover{
    color: deepskyblue !important;
    text-decoration: none;
}