@charset "UTF-8";
/*==================================================================== home
*/
.home main {
  color: #fff;
}

.home .main {
  position: relative;
  padding: 0 50px;
}

.home .bx-wrapper {
  position: relative;
  margin: 0 auto;
}

.home .bx-wrapper:before {
  position: absolute;
  right: 30px;
  bottom: 30px;
  content: "";
  width: 30vw;
  height: 9vw;
  background: url(../../img/home/mv_uno.png) no-repeat 50% 50%/contain;
  z-index: 100;
}

.home .bx-wrapper img {
  width: 100%;
}

@media only screen and (max-width: 1024px) {
  .home .main {
    padding: 0 2rem;
  }
}

@media only screen and (max-width: 768px) {
  .home .main {
    padding: 0 1rem;
  }
  .home .bx-wrapper:before {
    right: 20px;
    bottom: 20px;
  }
}

@media only screen and (max-width: 480px) {
  .home .main {
    padding: 0 0.5rem;
  }
  .home .bx-wrapper:before {
    right: 10px;
    bottom: 10px;
  }
}

/*-------------------------------------------------------------------- home_news
*/
.home_news > .inr {
  padding: 3rem 0;
}

@media only screen and (max-width: 768px) {
  .home_news > .inr {
    padding: 1rem 0;
  }
}

.news_list {
  padding: 1rem 0 0;
}

.news_list li {
  padding: 0.4rem 0;
}

.news_list li time {
  position: relative;
  display: inline-block;
  width: 9rem;
  color: #5399e4;
  font-size: 0.8rem;
  vertical-align: middle;
}

.news_list li a {
  color: #fff;
}

.news_list li a:hover {
  color: #f9eb21;
}

.news_list li.new time:after {
  position: absolute;
  right: 1rem;
  background-color: #f00;
  content: "NEW";
  color: #fff;
  font-size: 0.7rem;
  padding: 0.1rem 0.5rem;
  margin-left: 0.5rem;
}

@media only screen and (max-width: 768px) {
  .news_list {
    padding: 0;
  }
  .news_list li {
    padding: 0.8rem 0;
  }
  .news_list li + li {
    border-top: 1px dotted #fff;
  }
  .news_list li time {
    display: block;
    padding-bottom: 0.2rem;
  }
}

/*-------------------------------------------------------------------- home_concept
*/
.home_concept {
  background: url(../../img/border_scale_t.png) repeat-x 50% 0, url(../../img/border_scale_b.png) repeat-x 50% 100%, url(../../img/home/bg_concept.jpg) no-repeat 50% 50%/cover;
}

.home_concept .txt {
  padding: 0.5rem;
}

.home_concept .txt p {
  line-height: 1.8;
}

@media only screen and (max-width: 768px) {
  .home_concept .txt {
    padding: 0;
  }
  .home_concept .txt p {
    line-height: 1.4;
  }
}

/*-------------------------------------------------------------------- home_business
*/
.home_business {
  background: url(../../img/home/bg_business.jpg) no-repeat 50% 50%/cover;
  color: #333;
}

.half_box_l {
  width: 50%;
  float: left;
}

@media only screen and (max-width: 768px) {
  .half_box_l {
    width: 65%;
  }
}

@media only screen and (max-width: 480px) {
  .half_box_l {
    width: auto;
    float: none;
  }
}

.half_box_r {
  width: 50%;
  float: right;
}

@media only screen and (max-width: 768px) {
  .half_box_r {
    width: 65%;
  }
}

@media only screen and (max-width: 480px) {
  .half_box_r {
    width: auto;
    float: none;
  }
}

/*-------------------------------------------------------------------- home_uno
*/
.home_uno {
  background: url(../../img/home/bg_uno.jpg) no-repeat 50% 50%/cover;
}

/*-------------------------------------------------------------------- home_recruit
*/
.home_recruit {
  background: url(../../img/home/bg_recruit.jpg) no-repeat 50% 50%/cover;
}

/*-------------------------------------------------------------------- home_corporate
*/
.home_corporate {
  background: url(../../img/home/bg_building.png) no-repeat 0 100%/auto 38vw, url(../../img/home/bg_map.png) no-repeat 100% 100%/auto 38vw, url(../../img/home/bg_corporate.jpg) no-repeat 50% 50%/cover;
}

.home_corporate .corporate_bg {
  display: inline-block;
  background-color: rgba(0, 179, 213, 0.6);
  padding: 0 20px;
}

.home_corporate .hl2 {
  padding-top: 4rem;
}

.home_corporate .box_list_a {
  width: 400px;
  overflow: hidden;
}

.home_corporate .box_list_a li {
  width: 33.33%;
  float: left;
  border-left: 5px solid #fff;
  padding-left: 0.5rem;
  margin-bottom: 1rem;
}

.home_corporate .box_list_a + .ar {
  width: 420px;
  margin-top: -3rem;
}

@media only screen and (max-width: 1080px) {
  .home_corporate {
    background: url(../../img/home/bg_map.png) no-repeat 100% 100%/auto 38vw, url(../../img/home/bg_corporate.jpg) no-repeat 50% 50%/cover;
  }
  .home_corporate .hl2 {
    padding-top: 3rem;
  }
  .home_corporate .corporate_bg {
    display: block;
    background-color: transparent;
    padding: 0;
  }
}

@media only screen and (max-width: 768px) {
  .home_corporate {
    background: url(../../img/home/bg_corporate.jpg) no-repeat 50% 50%/cover;
  }
  .home_corporate .hl2 {
    padding-top: 2rem;
  }
  .home_corporate .box_list_a {
    width: 100%;
  }
  .home_corporate .box_list_a + .ar {
    width: auto;
    text-align: left !important;
    padding: 0;
    margin-top: 0;
  }
}

/*==================================================================== company01
*/
.sec_concept {
  background: url(../../img/border_scale_t2.png) repeat-x 50% 0, url(../../img/border_scale_b2.png) repeat-x 50% 100%, url(../../img/company/company01_bg1.jpg) no-repeat 50% 50%/cover;
}

.sec_concept > .inr {
  width: 710px;
  max-width: 100%;
}

.sec_concept h2 {
  padding-bottom: 4rem;
}

.sec_concept .fr {
  padding-left: 2rem;
  text-align: right;
}

.sec_concept .fr img {
  max-width: 90%;
}

.sec_concept p {
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.7;
  padding-bottom: 1.5rem;
}

.sec_concept .txt_catch {
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #fff;
  padding: 2rem 0 1rem;
  margin-bottom: 2rem;
}

.sec_concept .txt_catch span {
  color: #5399e4;
}

.sec_concept .txt_catch strong {
  font-size: 2.5rem;
  font-weight: bold;
  vertical-align: bottom;
}

@media only screen and (max-width: 1080px) {
  .sec_concept h2 {
    padding-bottom: 2rem;
  }
  .sec_concept h2 img {
    width: 540px;
  }
  .sec_concept .fr {
    width: 50%;
  }
  .sec_concept p {
    line-height: 1.5;
    padding-bottom: 1rem;
  }
  .sec_concept .txt_catch {
    font-size: 1.2rem;
    padding: 0 0 2rem;
  }
  .sec_concept .txt_catch strong {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 480px) {
  .sec_concept {
    background-size: auto 6px, auto 6px, cover;
  }
  .sec_concept h2 {
    padding-bottom: 1rem;
  }
  .sec_concept .fr {
    width: 60%;
    float: none !important;
    margin: 0 auto;
  }
  .sec_concept .txt_catch {
    font-size: 1.2rem;
    padding: 0 0 2rem;
  }
  .sec_concept .txt_catch strong {
    font-size: 1.6rem;
  }
  .sec_concept .ar img {
    width: 110px;
  }
}

/*==================================================================== company02
*/
.sec_corporate {
  background: url(../../img/border_scale_t.png) repeat-x 50% 0, url(../../img/border_scale_b.png) repeat-x 50% 100%, url(../../img/company/company02_bg1.jpg) no-repeat 50% 50%/cover;
}

.sec_corporate td ul {
  padding: 0;
}

.sec_corporate td li {
  padding: 2px 0;
}

@media only screen and (max-width: 480px) {
  .sec_corporate {
    background-size: auto 6px, auto 6px, cover;
  }
}

.sec_access {
  background: #fff url(../../img/bg1.png) 50% 50%;
}

.sec_access ul {
  padding-top: 1rem;
}

.sec_access ul li {
  padding: 2px 0;
}

.map_area {
  position: relative;
  width: 100%;
  padding: 40% 0 0;
}

.map_area iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 768px) {
  .map_area {
    padding-top: 50%;
  }
}

@media only screen and (max-width: 480px) {
  .map_area {
    padding-top: 80%;
  }
}

.sec_org_chart {
  background: url(../../img/border_scale_t.png) repeat-x 50% 0, url(../../img/border_scale_b.png) repeat-x 50% 100%, url(../../img/company/company02_bg2.jpg) no-repeat 50% 50%/cover;
}

@media only screen and (max-width: 480px) {
  .sec_org_chart {
    background-size: auto 6px, auto 6px, cover;
  }
}

.sec_org_chart figure {
  padding-top: 1rem;
}

.sec_group {
  color: #333;
  background-color: #fff;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media only screen and (max-width: 768px) {
  .sec_group {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

@media only screen and (max-width: 480px) {
  .sec_group {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .sec_group .hl3 + .group_box > .inr {
    padding-top: 0;
  }
}

.group_box + .group_box {
  border-top: 1px dotted #333;
}

.group_box > .inr {
  max-width: 1000px;
  padding: 2rem 0;
  margin: 0 auto;
  overflow: hidden;
}

.group_box .img {
  width: 38%;
  float: left;
}

.group_box .img img {
  max-width: 100%;
}

.group_box .txt {
  padding-left: 42%;
}

.group_box .txt h3 {
  color: #00289d;
  font-size: 1rem;
  font-weight: bold;
  padding-bottom: 1rem;
}

.group_box .txt address {
  font-style: normal;
  border-left: 5px solid #ccc;
  padding: 0.5em 0 0.5em 1em;
  margin-bottom: 1rem;
}

.group_box .txt address strong {
  display: block;
  color: #333;
  font-weight: bold;
}

@media only screen and (max-width: 480px) {
  .group_box > .inr {
    padding: 1rem 0;
  }
  .group_box .img {
    width: 100%;
    max-width: 320px;
    float: none;
    padding: 0;
    margin: 0 auto;
  }
  .group_box .txt {
    padding: 1rem 0 0;
  }
  .group_box .txt h3 {
    padding-bottom: 0.5rem;
  }
  .group_box .txt address {
    margin-bottom: 0.5rem;
  }
}

/*==================================================================== company03
*/
.company03 .scale_w {
  background: url(../img/border_scale_t.png) repeat-x 50% 0, url(../img/border_scale_b.png) repeat-x 50% 100%, #000 url(../img/bg2.png) repeat 50% 100%;
}

.company03 .table_a th,
.company03 .table_a td:nth-child(1) {
  white-space: nowrap;
}

/*==================================================================== company05
*/
.sec_blocks .table_a {
  max-width: 800px;
  width: 100%;
  margin-bottom: 4rem;
}

.sec_blocks .table_a:last-child {
  margin-bottom: 0;
}

.sec_blocks .table_a td:nth-child(1) {
  color: #f00;
}

.sec_blocks .table_a a {
  color: #5399e4;
}

.sec_blocks .table_a a i {
  padding-right: 5px;
}

.sec_blocks .table_a a:hover {
  color: #f9eb21;
}

@media only screen and (max-width: 768px) {
  .sec_blocks .inner_link {
    margin: 0;
  }
  .sec_blocks .table_a {
    margin-bottom: 2rem;
  }
}

/*==================================================================== company07
*/
.sec_sky_box {
  background: url(../../img/border_scale_t.png) repeat-x 50% 0, url(../../img/border_scale_b.png) repeat-x 50% 100%, url(../../img/company/maker_bg.png) no-repeat 50% 50%/100% auto, #000 url(../../img/bg2.png) 50% 50%;
  background-attachment: fixed;
}

@media only screen and (max-width: 480px) {
  .sec_sky_box {
    background-size: auto 6px, auto 6px, contain, auto auto;
  }
}

.topics_list {
  max-width: 700px;
  text-align: center;
  margin: 2rem auto;
  overflow: hidden;
}

.topics_list li {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  background-color: #f9eb21;
  padding: 0.4rem 1.5rem;
  margin-bottom: 1rem;
}

.topics_list li b {
  color: #ea1c24;
}

.topics_list li b strong {
  color: inherit;
  font-size: 2rem;
  font-weight: inherit;
}

@media only screen and (max-width: 768px) {
  .topics_list {
    margin: 1rem auto;
  }
  .topics_list li {
    font-size: 1.2rem;
  }
  .topics_list li b strong {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 480px) {
  .topics_list {
    margin: 0 auto;
  }
}

.items_list_area {
  margin: 0 -5px;
  overflow: hidden;
}

.items_list_area li {
  width: 20%;
  float: left;
  padding: 0 5px 10px;
}

.items_list_area li > span {
  display: block;
  background-color: #fff;
  color: #0477d2;
  font-weight: bold;
  text-align: center;
  padding: 0.5rem;
}

@media only screen and (max-width: 768px) {
  .items_list_area li {
    width: 33.33%;
  }
}

@media only screen and (max-width: 480px) {
  .items_list_area {
    margin: 0 -2px;
  }
  .items_list_area li {
    width: 50%;
    padding: 0 2px 4px;
  }
  .items_list_area li > span {
    padding: 0.2rem;
  }
}

.macker_list_area {
  overflow: hidden;
  /*	
	ul {
		width: 25%;
		float: left;
		color: $color_white;
		font-weight: bold;
		line-height: 1.2;
		padding: 0 5px 10px;
		font-feature-settings: "palt";
		-webkit-font-feature-settings: "palt";
		
		li { padding: 0 0 10px;}
	}
*/
}

.macker_list_area ul {
  overflow: hidden;
  margin: 0 -5px;
}

.macker_list_area li {
  width: 25%;
  float: left;
  color: #fff;
  font-weight: bold;
  line-height: 1.2;
  padding: 0 5px 10px;
  font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
}

.macker_list_area li:nth-child(4n+1) {
  clear: both;
}

.macker_list_area + .ar {
  color: #fff;
  font-weight: bold;
  border-top: 1px dotted #fff;
  padding: 1rem 0;
}

@media only screen and (max-width: 768px) {
  .macker_list_area li {
    width: 50%;
  }
  .macker_list_area li:nth-child(4n+1) {
    clear: none;
  }
  .macker_list_area li:nth-child(2n+1) {
    clear: both;
  }
}

/*==================================================================== business
*/
.business .inner_link li {
  width: 50%;
}

.sec_business {
  background: url(../../img/border_scale_t2.png) repeat-x 50% 0, url(../../img/border_scale_b2.png) repeat-x 50% 100%, #fff url(../../img/business/bg1.png) no-repeat 15% 60%/32% auto;
  color: #333;
}

.sec_business .half_box_r {
  font-size: 1rem;
  line-height: 2;
}

@media only screen and (max-width: 768px) {
  .sec_business {
    background-position: 50% 0, 50% 100%, 50% 120px;
    background-size: auto, auto, 50% auto;
  }
  .sec_business .half_box_r {
    width: auto;
    padding-top: 46%;
  }
}

@media only screen and (max-width: 480px) {
  .sec_business {
    background-position: 50% 0, 50% 100%, 50% 86px;
    background-size: auto 6px, auto 6px, 70% auto;
  }
  .sec_business .half_box_r {
    padding-top: 68%;
  }
}

.sec_model {
  color: #fff;
}

.clm2 {
  margin: 1rem -10px;
  overflow: hidden;
}

.clm2 > .inr {
  width: 50%;
  float: left;
  padding: 10px;
}

@media only screen and (max-width: 768px) {
  .clm2 > .inr {
    width: auto;
    float: none;
  }
}

.model_img {
  padding: 1rem 0;
}

.dlbox {
  border: 1px solid #fff;
  padding: 1rem;
}

.dlbox dt {
  color: #5399e4;
  font-size: 1.2rem;
}

@media only screen and (max-width: 480px) {
  .dlbox dt {
    font-size: 1rem;
  }
}

/*==================================================================== uno
*/
.uno .inner_link li {
  width: 50%;
}

.uno .sec {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .uno .sec {
    padding-top: 2rem;
  }
}

.unocatch {
  max-width: 980px;
  margin: 0 auto;
}

.unocatch .note_txt {
  padding: 3rem 0 0;
}

@media screen and (max-width: 767px) {
  .unocatch .note_txt {
    padding: 1.5rem 0 0;
  }
}

.unoimg {
  max-width: 980px;
  margin: 1rem auto 0;
}

.unoimg img {
  max-width: 100%;
}

.remodal {
  border: 5px solid #00289d;
}

.remodal-close {
  color: #ba0c21;
  font-size: 20px;
}

.remodal .uno_box {
  height: 100%;
  overflow: hidden;
}

.remodal .uno_box > div {
  width: 50%;
  float: left;
  padding: 10px;
}

.remodal .uno_box > div:last-child {
  border-left: 2px dotted #ccc;
}

.remodal .uno_box h2 {
  position: relative;
  line-height: 1.2;
  border: none;
  padding-top: 50px;
  margin: 0;
}

.remodal .uno_box h2:before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 40px;
  height: 40px;
  background: no-repeat 50% 50% / contain;
  content: "";
  margin: 0 auto;
}

.modal1 .uno_box h2:before {
  background-image: url(../images/uno/num1.png);
}

.modal2 .uno_box h2:before {
  background-image: url(../images/uno/num2.png);
}

.modal3 .uno_box h2:before {
  background-image: url(../images/uno/num3.png);
}

.modal4 .uno_box h2:before {
  background-image: url(../images/uno/num4.png);
}

.modal5 .uno_box h2:before {
  background-image: url(../images/uno/num5.png);
}

.modal6 .uno_box h2:before {
  background-image: url(../images/uno/num6.png);
}

.modal7 .uno_box h2:before {
  background-image: url(../images/uno/num7.png);
}

.remodal .uno_box h2 strong {
  display: block;
  font-size: 2em;
  font-weight: bold;
  text-align: center;
}

.remodal .uno_box h3 {
  color: #00289d;
  font-size: 20px;
  text-align: center;
  border: none;
  padding: 0 0 10px;
  margin: 0;
}

.remodal .uno_box .fr p:nth-child(2) {
  text-align: left;
}

@media screen and (max-width: 767px) {
  .remodal {
    padding: 15px !important;
  }
  .remodal .uno_box h2 {
    padding-top: 40px;
  }
  .remodal .uno_box h2 strong {
    display: inline-block;
    font-size: 1.4em;
  }
  .remodal .uno_box .fl p {
    padding-bottom: 10px;
  }
  .remodal .uno_box .fl img {
    width: 120px;
  }
  .remodal .uno_box > div {
    width: auto;
    float: none;
    padding: 0;
  }
  .remodal .uno_box > div:last-child {
    border-left: none;
    border-top: 2px dotted #ccc;
  }
  .remodal .uno_box h3 {
    padding: 5px 0 0;
  }
}

/*==================================================================== news
*/
.page_all {
  text-align: right;
  border-bottom: 1px dotted #fff;
}

.pager_list {
  text-align: center;
  border-top: 1px dotted #fff;
  padding-top: 1rem;
  margin-top: 1rem;
}

.pager_list li {
  display: inline-block;
  padding: 0 0.2rem;
}

.pager_list li a {
  display: inline-block;
  border: 1px solid #fff;
  min-width: 40px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 0.5rem;
}

.pager_list li a i {
  margin: 0 10px;
}

.pager_list li a:hover {
  color: #f9eb21;
  border-color: #f9eb21;
}

.article_header {
  display: table;
  width: 100%;
}

.article_header h2,
.article_header time {
  display: table-cell;
  vertical-align: bottom;
}

.article_header time {
  color: #5399e4;
  text-align: right;
  white-space: nowrap;
  padding-bottom: 0.8rem;
  padding-left: 1rem;
}

.article_detail {
  border-top: 1px dotted #fff;
  border-bottom: 1px dotted #fff;
  padding: 2rem 0;
  margin-bottom: 1rem;
}

.article_detail img {
  height: auto !important;
}

.article_detail a {
  color: #f9eb21;
}

.article_detail a:hover {
  text-align-last: none;
}

/*==================================================================== contact
*/
.contact .scale_w {
  background: url(../img/border_scale_t.png) repeat-x 50% 0, url(../img/border_scale_b.png) repeat-x 50% 100%, #000 url(../img/bg2.png) repeat 50% 100%;
}

.contact .table_a th {
  width: 30%;
  text-align: left;
}

.contact .table_a label {
  margin: 5px 0;
}

.contact .table_a p + p {
  padding-top: 5px;
}

.contact .table_a dl {
  padding: 0;
}

.contact .table_a dl dt {
  padding-bottom: 5px;
}

.contact .table_a dl dt:before {
  content: "[";
  padding-right: 0.5rem;
}

.contact .table_a dl dt:after {
  content: "]";
  padding-left: 0.5rem;
}

.contact .table_a dl dd + dt {
  padding-top: 1rem;
}

.contact .error {
  color: #f00;
  font-size: 0.8rem;
  padding: 5px 0 0;
}

.contact .required:after {
  display: inline-block;
  background-color: #00289d;
  content: "必須";
  font-size: 0.7rem;
  vertical-align: middle;
  padding: 0.2rem 0.5rem;
  margin-left: 0.5rem;
}

@media only screen and (max-width: 480px) {
  .contact .table_a th {
    width: auto;
  }
  .contact .required:after {
    margin-top: -3px;
  }
}

.contact .article_detail a {
  color: #f9eb21;
  text-decoration: underline;
}

.contact .article_detail a:hover {
  text-decoration: none;
}

.contact .article_detail img {
  height: inherit !important;
}
