@charset "utf-8";
.sg_main{
	margin: 7% 0;
	padding: 0 2%;
}
.banner {
    background: url(../common_img/bg_tt_page.jpg) no-repeat top center;
    background-size: 100%;
    padding: 8% 0;
    text-align: center;
}
#sidebar{
	margin-top: 8%;
}
#sidebar .side01 dl.bg01 {
  background: #eb6ea5;
}
#sidebar .side01 dl.bg02 {
  background: #fff463;
}
#sidebar .side01 dl.bg03 {
  background: #009e96;
}
#sidebar .side01 dl.bg04 {
  background: #66cee1;
}
#sidebar .side01 dl.bg05 {
  background: #cc94df;
}
#sidebar .side01 dl dt {
  display: table-cell;
  vertical-align: middle;
  padding-left: 10px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.3;
}
#sidebar .side01 dl dd {
  display: table-cell;
  width: 45%;
}
#sidebar .side01 a:after {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    left: 0;
    content: "";
}
#sidebar .side01 ul li{
	margin-bottom: 5%;
    position: relative;
}
#sidebar .side01 ul li:last-child{
	margin-bottom: 0;
}
#sidebar .side02 {
    background: url(../common_img/side_bg.jpg) no-repeat top center #fef9e4;
    background-size: 100%;
    padding: 5% 6%;
    margin-top: 7%;
}
#sidebar .side02 h3 {
    text-align: center;
    font-size: 22px;
    margin-bottom: 5%;
}
#sidebar .side02 ul {
    width: 30.33333%;
    float: left;
    margin-right: 4%;
}
#sidebar .side02 ul li {
  display: table;
  width: 100%;
  height: 120px;
  border-radius: 50%;
  margin-bottom: 15px;
  position: relative;
}
#sidebar .side02 ul li:last-child{
	margin-bottom: 0;
}
#sidebar .side02 ul li.bg01 {
  background: #fbc7de;
}
#sidebar .side02 ul li.bg02 {
  background: #fbf5a6;
}
#sidebar .side02 ul li.bg03 {
  background: #77e7e1;
}
#sidebar .side02 ul li.bg04 {
  background: #b0d3f8;
}
#sidebar .side02 ul li.bg05 {
  background: #eaeaea;
}
#sidebar .side02 ul li.bg06 {
  background: #f8c099;
}
#sidebar .side02 ul li.bg07 {
  background: #e4f5a6;
}
#sidebar .side02 ul li.bg08 {
  background: #b7f1fb;
}
#sidebar .side02 ul li.bg09 {
  background: #edcdf7;
}
#sidebar .side02 ul li p {
  display: table-cell;
  vertical-align: middle;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
}
#sidebar .side02 ul li p a {
  text-decoration: none;
}
#sidebar .side02 ul li p a:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
}
/*=====================news======================*/
.news_box {
    background: url(../news/images/bg_news.png) no-repeat top right #fef9e4;
    background-size: 45%;
    padding: 4% 2%;
    margin-bottom: 5%;
}
.news_box .news_tt {
    border-bottom: 1px solid #000;
    margin-bottom: 4%;
    padding-bottom: 5px;
}
.news_box .news_tt h3 {
    font-size: 15px;
}
.news_box .photo {
    float: right;
    width: 50%;
}
/*=====================contact======================*/
/*.contact_sec h3 {
    background: url(../contact/images/bg_tt.png) no-repeat right #fef9e4;
    background-size: 45%;
    padding: 2% 4%;
    font-size: 18px;
    margin-bottom: 5%;
}*/
.contact_sec .contact_box {
    border: 1px solid #ccc;
}
.contact_sec .contact_box > div{
    border: 3px solid #fff;
    background: url(../contact/images/bg01.png) no-repeat;
    background-size: cover;
    padding: 3% 1%;
    font-size: 13px;
}
.contact_sec .contact_box .txt1{
	border-bottom: 1px solid #ccc;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.contact_sec .contact_box .tel {
    font-family: "Yu Gothic";
    font-size: 30px;
    font-weight: bold;
    line-height: 1.3;
    padding-left: 10px;
}
.contact_sec .contact_box .tel a{
    color: #000;
    text-decoration: none;
}
.contact_sec .contact_box .txt2 p{
	margin-left: 15px;
	text-indent: -15px;
}
.contact_sec a {
    color: #2270d5;
}
.contact_sec h4 {
    background: #cccccc;
    padding: 5px 10px;
}
.red {
    color: #ff0000;
}
.contact_sec .bg_privacy {
    background: #f1edec;
    padding: 3% 1%;
    margin: 4% 0;
}
.contact_sec .bg_privacy li{
	margin-bottom: 05px;
	text-indent: -15px;
	margin-left: 15px;
}
/*=====================gallery======================*/
.gallery_sec01 {
    background: url(../gallery/images/bg01.png) no-repeat top center;
    background-size: 100%;
	padding: 3% 2% 2%;
	font-size: 13px;
	margin-bottom: 8%;
}
.gallery_sec01 h3 {
    font-size: 16px;
    line-height: 1.3;
    margin-bottom: 3px;
}
.list_btn {
    text-align: center;
    margin-bottom: 7%;
}
.list_btn li {
    width: 32%;
    text-align: center;
    display: inline-block;
    margin-right: 0;
    background-color: #b2e6f0;
    border-radius: 20px;
    padding: 10px 0;
    position: relative;
}
.list_btn li a {
    color: #000;
    text-decoration: none;
}
.list_btn li.current {
    background-color: #66cee1;
}
.list_btn li a:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.list_btn02 {
    text-align: left;
    margin-bottom: 7%;
}
.list_btn02 li {
    width: 32%;
    text-align: center;
    display: inline-block;
    margin-right: 0;
	margin-bottom: 10px;
    background-color: #b2e6f0;
    border-radius: 20px;
    padding: 10px 0;
    position: relative;
}
.gallery_list li {
/*    width: 48%;*/
    background-color: #fff;
    text-align: left;
    font-size: 12px;
    margin-bottom: 4%;
/*    margin-right: 4%;*/
    box-sizing: border-box;
    display: block;
/*    float: left;*/
}
.gallery_list li:nth-child(2n) {
    margin-right: 0;
}
.gallery_list li a {
    display: block;
    text-decoration: none;
}
.gallery_list li figure {
    position: relative;
/*    background-color: #000;*/
    height: 150px;
    width: 100%;
    margin-bottom: 10px;
    margin-right: 2%;
}
.gallery_list li figure img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
}
.gallery_list li h4 {
    font-size: 16px;
    color: #333;
    margin-bottom: 10px;
}
.gallery_listgallery_list li p {
    text-align: left;
    color: #333;
}
.cur_zoom1{
/*	position: relative;*/
}
/*.cur_zoom1:after {
    display: inline-block;
    width: 25px;
    height: 25px;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 10;
    background-image: url(../gallery/images/icon.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 25px 25px;
    content: "";
}*/
.grall_bnr{
	background: url(../common_img/bg_bnr.jpg) no-repeat top center;
    background-size: cover;
    padding: 4% 2%;
    text-align: center;
    margin-top: 8%;
}
.grall_bnr h3 {
    text-align: center;
    font-size: 20px;
    margin-bottom: 4%;
    line-height: 1.3;
}
/*=====================company======================*/
.h3_style01 {
    background: #fef9e4;
    padding: 2%;
    font-size: 20px;
    margin: 7% 0 5%;
    line-height: 1;
}
.tb_style01 {
    width: 100%;
    border: 1px solid #ccc;
    border-collapse: collapse;
    border-spacing: 0;
}
.tb_style01 th {
    background: #ccc;
    vertical-align: middle;
    padding: 5px 10px;
    border-bottom: 1px solid #fff;
    text-align: left;
}
.tb_style01 td {
    border: 1px solid #ccc;
    padding: 5px 10px;
}
.company_box02 .txt {
    float: right;
    width: 67%;
}
.tb_style02 {
    width: 100%;
}
.tb_style02 th, .tb_style02 td {
    padding: 3px 0;
    text-align: left;
    font-weight: normal;
}
.company_sec .box_map {
    border: 1px solid #ccc;
    padding-top: 2%;
    margin-bottom: 7%;
}
.company_sec .box_map h4 {
    background: url(../company/images/bg_tt01.png) no-repeat;
    background-size: 115px;
    margin-left: -5px;
    padding: 3px 5px;
    font-size: 15px;
}
/*=====================recruit======================*/
.recruit_sec .box_border {
    border-bottom: 1px solid #ccc;
    padding-bottom: 5%;
    margin-bottom: 5%;
}
.recruit_sec .box_border:last-of-type {
    border-bottom: none;
}
.recruit_sec .box1 {
    margin-bottom: 5%;
}
.recruit_sec .box1 .txt h4 {
    background: #b7f1fb;
    border-bottom: 1px solid #77e7e1;
    margin-bottom: 3%;
    font-size: 16px;
    padding: 3px 10px;
    width: 68%;
}
.h4_style01 {
    font-size: 15px;
    border-bottom: 1px solid #77e7e1;
    margin-bottom: 4%;
}
.recuit_list dl {
    display: table;
    margin: 10px 0;
    width: 100%;
}
.recuit_list dl dt {
    width: 80px;
    display: table-cell;
    vertical-align: middle;
}
.recuit_list dl dt p{
    height: 80px;
    text-align: center;
    font-weight: bold;
    padding-top: 30px;
    border-radius: 50%;
}
.recuit_list dl dd {
    padding-left: 10px;
    vertical-align: middle;
    display: table-cell;
}
.recuit_list dl dt.list01 p {
    background: #f8c099;
}
.recuit_list dl dt.list02 p {
    background: #b0d3f8;
}
.recuit_list dl dt.list03 p {
    background: #e4f5a6;
}
.recuit_list dl dt.list04 p {
    background: #77e7e1;
}
/*=====================design======================*/
.bg_gray {
    background-color: #f9f9f9;
    margin: 15px -2%;
    padding: 2%;
}
.border_bot {
    border-bottom: 1px dotted #000;
    padding-bottom: 5%;
    margin-bottom: 7%;
}
.schedule {
    background: url(../design/images/bg01.png) no-repeat top right;
    background-size: cover;
    border: 1px solid #009e96;
    padding: 0 2% 4%;
    border-radius: 10px;
    margin: 8% 0;
    position: relative;
}
.schedule .bg {
    background: url(../design/images/bg02.png) no-repeat bottom right;
    background-size: 50%;
}
.schedule h3 {
    background-color: #ee7908;
    border-radius: 5px;
    color: #fff;
    font-size: 15px;
    display: inline-block;
    padding: 5px 15px;
    position: absolute;
    top: -15px;
    left: 15px;
}
.schedule p{
    margin-top: 5px;
    margin-left: 17px;
}
.schedule dl {
    margin-top: 5px;
    display: table;
    position: relative;
    width: 100%;
}
.schedule dl dt{
    display: table-cell;
    vertical-align: middle;
    width: 67px;
}
.schedule dl dt p{
    height: 67px;
    border-radius: 50%;
    background: #fbf5a6;
    font-size: 15px;
    text-align: center;
    font-weight: bold;
    margin-left: 0px;
    margin-top: 0px;
    padding-top: 25px
}
/*.schedule dl dt:after {
    position: absolute;
    content: url(../design/images/arrow.png);
    bottom: -30px;
    left: 50%;
    margin-left: -17px;
    width: 30px;
    height: 15px;
}*/
.schedule dl dd {
    padding-left: 10px;
    vertical-align: middle;
    display: table-cell;
}
/*=====================know01======================*/
.know1_sec .box1 {
    background-color: #edeff5;
    margin-bottom: 5%;
}
.know1_sec .box1 p{
    margin: 3% 2%;
}
.know1_sec .box2 {
    background-color: #f9f9f9;
    margin-bottom: 5%;
}
.know1_sec .box2 p{
    margin: 3% 2%;
}
.common_box {
    background: #fff url(../know01/images/bg_common.png) no-repeat;
    background-size: 100%;
    margin-top: 8%;
    padding: 3% 0;
}
.common_box h3 {
    text-align: center;
    font-size: 18px;
    margin-bottom: 4%;
}
.common_box ul {
    text-align: center;
}
.common_box ul li {
    display: inline-block;
    margin-right: 2%;
    width: 22%;
}
/*=====================know02======================*/
.know2_sec01 {
    background: url(../know02/images/bg01.png) no-repeat top center;
    background-size: cover;
    text-align: center;
    padding: 4% 0;
}
.know2_sec01 p {
    width: 80%;
    display: inline-block;
}
#know02_page .step_box {
    margin-top: 12%;
   background-color: #ebfcff;
   position: relative;
   margin-left: 5%;
   padding: 3% 2% 3% 40px;
}
#know02_page .step_box .number {
    position: absolute;
    top: -12%;
    left: -5%;
}
#know02_page .step_box .btn {
    display: inline-block;
    text-align: center;
    padding: 10px 35px 10px 15px;
    background: #fff;
    border: 1px solid #ee7908;
    color: #ee7908;
    background: url(../know02/images/icon.png) no-repeat 93% center #fff;
    background-size: 11px;
    line-height: 1;
    margin-top: 15px;
}
#know02_page .step_box .btn a {
    color: #ee7908;
    text-decoration: none;
    display: block;
}
/*=====================about======================*/
.about_sec .box01 {
    background: url(../about/images/bg01.jpg) no-repeat;
    background-size: 100%;
    padding: 17% 2% 2%;
}
.about_sec  .box01 p {
    padding-left: 2%;
    margin-top: 3%;
}
.about_sec .box02 {
    background: url(../about/images/bg02.png) repeat-y;
    padding-bottom: 3%;
    margin: 15% 0 8%;
}
.about_sec .box02 p, .about_sec .box03 p{padding: 0 1%;}
.about_sec .box02 .photo,.about_sec .box03 .photo{
    margin-top: -5%;
}
.about_sec .box02 .txt,.about_sec .box03 .txt {
    margin-top: -10%;
}
.about_sec .box02 .txt h3,.about_sec .box03 .txt h3 {
    text-align: center;
    margin-bottom: 10px;
}
.about_sec .box03 {
    background: url(../about/images/bg03.png) repeat-y;
    padding-bottom: 3%;
    margin: 15% 0 8%;
}
/*=====================talent======================*/
.talent_sec .box01 {
    background: url(../talent/images/bg01.jpg) no-repeat;
    background-size: cover;
    padding: 3% 2% 5%;
}
.talent_sec .list_img {
    margin-top: 5%;
}
.talent_sec .list_img li {
    float: left;
    margin-right: 2%;
    width: 32%;
}
/*=====================welfare======================*/
.welfare_sec .box01 {
    background: url(../welfare/images/bg01.png) no-repeat top;
    background-size: cover;
    padding: 2%;
    padding-right: 40%;
}
.welfare_sec .flow dt {
    float: left;
    width: 15%;
}
.welfare_sec .flow dd {
    float: right;
    width: 85%;
    padding-left: 15px;
}
.welfare_sec .flow dd h4 {
    font-size: 18px;
    margin-bottom: 5px;
}
.welfare_sec .box02 {
    background: #eaeaea url(../welfare/images/bg02.png) no-repeat top;
    background-size: cover;
    padding: 4% 2%;
    margin-top: 4%;
}
.welfare_sec .box02 p {
    width: 55%;
    line-height: 1.3;
}
.welfare_sec .box03 {
    background: #eaeaea url(../welfare/images/bg03.png) no-repeat top;
    background-size: cover;
    padding: 4% 2%;
    margin-top: 5%;
    padding-left: 45%;
}
.welfare_sec .box03 p {
    width: 100%;
    line-height: 1.3;
}
.welfare_sec .box04 {
    background: #eaeaea url(../welfare/images/bg04.png) no-repeat top;
    background-size: cover;
    padding: 4% 2%;
    margin-top: 5%;
}
.welfare_sec .box04 p {
    width: 55%;
    line-height: 1.3;
}
@media(max-width: 414px){
	#sidebar .side02 ul li {
	    height: 105px;
	}
}
@media(max-width: 375px){
	#sidebar .side02 ul li {
	    height: 95px;
	}
	.gallery_sec01 h3 {
	    font-size: 14px;
	}
	.gallery_sec01 {
		font-size: 12px;
	}
}
@media(max-width: 320px){
	#sidebar .side02 ul li {
	    height: 85px;
	}
	.gallery_sec01 h3 {
	    font-size: 13px;
	}
	.gallery_sec01 {
		font-size: 11px;
	}
    #know02_page .step_box .btn {
        font-size: 12px;
    }
    .list_btn li {
        font-size: 12px;
    }
}
