@charset "UTF-8";
@media only screen and (max-width: 1064px) {
  .news_box {
    min-height: 100%;
    box-sizing: border-box;
  }
  .news_box dl {
    flex-direction: column;
    padding: 0px;
    margin-bottom: 0px;
  }
  .news_box dl dt {
    width: 100%;
    font-size: 120%;
    font-weight: 500;
    margin-bottom: 5px;
    border-bottom: none;
  }
  .news_box dl dd {
    width: 100%;
    font-size: 90%;
    border-top: none;
    padding: 10px 10px;
  }
  .news_box dl dd:nth-child(2) {
    border-top: none;
  }
  .blog {
    width: 100%;
    flex-direction: column-reverse;
  }
  .blog .l {
    width: 100%;
  }
  .blog .l ul {
    margin-bottom: 30px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .blog .l ul li {
    width: 48%;
    padding-left: 18px;
    margin-bottom: 10px;
    position: relative;
    text-align: left;
    border-bottom: 1px solid #CCC;
    padding-bottom: 10px;
    font-size: 110%;
    transition-duration: 0.5s;
  }
  .blog .l ul li:hover {
    opacity: 0.6;
  }
  .blog .l ul li a {
    color: #000;
    display: block;
  }
  .blog .l ul li:before {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    left: 0px;
    top: -2px;
    color: #0058CA;
    font-size: 110%;
  }
  .blog .l ul li:last-child {
    margin-bottom: 10px;
  }

  .blog .r {
    width: 100%;
    margin-bottom: 30px;
  }
  .scroll {
    max-width: 100%;
    margin: 0px auto 40px;
    overflow: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .scroll::-webkit-scrollbar {
    height: 5px;
  }
  .scroll::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #eee;
  }
  .scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666;
  }
  .scroll table {
    width: 1000px;
  }
  .purpose_study {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .purpose_study .box, .purpose_study .block {
    width: 100%;
    background: #E2F8FD;
    padding: 20px;
    box-sizing: border-box;
    box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.3);
    margin-bottom: 50px;
  }
  .purpose_study .box:first-child, .purpose_study .block:first-child {
    margin-right: 0%;
  }
  .purpose_study .box:first-child section, .purpose_study .block:first-child section {
    height: auto;
  }
  .purpose_study .box:first-child section li, .purpose_study .block:first-child section li {
    margin-bottom: 10px;
  }
  .purpose_study .box .sub_ttl, .purpose_study .block .sub_ttl {
    background: #005FDD;
    padding: 15px;
    text-align: center;
    box-sizing: border-box;
    width: 100%;
    color: #FFF;
    font-size: 164%;
    margin-bottom: 20px;
  }
  .purpose_study .box section, .purpose_study .block section {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
  }
  footer {
    padding: 50px 0px 30px 0px;
    width: 100%;
    position: relative;
    z-index: 0;
  }
  footer .link {
    padding-top: 40px;
  }
  footer .link .nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  footer .link .nav .box {
    width: 30%;
    margin-bottom: 20px;
  }
  footer .link .nav .box .sub_ttl {
    font-size: 104%;
    color: #FFF;
    margin-bottom: 15px;
  }
  footer .link .nav .box .sub_ttl a {
    color: #FFF;
  }
  footer .link .nav .box ul li {
    position: relative;
    padding-left: 12px;
    margin-bottom: 3px;
  }
  footer .link .nav .box ul li a {
    color: #FFF;
    font-size: 85%;
  }
  footer .link .nav .box ul li:before {
    content: "-";
    color: #FFF;
    position: absolute;
    left: 0px;
    top: 0px;
  }
  footer .info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    padding-bottom: 40px;
    border-bottom: 1px solid #FFF;
  }
  footer .info .logo {
    width: 100%;
    text-align: center;
  }
  footer .info .logo p {
    color: #FFF;
    line-height: 1.6;
    padding-top: 30px;
  }
  footer .info p a {
    text-decoration: underline;
    color: #FFF;
  }
  footer .info .btn_area {
    width: 100%;
  }
  footer .info .btn {
    margin: 20px auto 0px;
  }
  .sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 30px 0px 20px;
  }
  .sns .box {
    width: 100%;
    margin-bottom: 30px;
  }
  .sns .box .sub_ttl {
    text-align: center;
    color: #005FDD;
    margin-bottom: 40px;
    font-size: 184%;
  }
  .top_topics {
    background: #E2F8FD;
    width: 100%;
    padding: 60px 0px;
  }
  .top_topics .outer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .top_topics .outer .left {
    width: 100%;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    background: #FFFFFF;
    box-sizing: border-box;
    padding: 40px;
  }
  .top_topics .outer .left .sub_ttl {
    text-align: center;
    color: #005FDD;
    font-size: 184%;
    margin-bottom: 25px;
    line-height: 1.5;
  }
  .top_topics .outer .left .sub_ttl span {
    font-size: 70%;
    color: #000;
  }
  .top_topics .outer .left p {
    text-align: center;
    margin-bottom: 50px;
  }
  .top_topics .outer .right {
    width: 100%;
  }
  .top_topics .outer .right .box {
    box-sizing: border-box;
    padding: 50px 0px;
  }
  .top_topics .outer .right .box dl {
    flex-direction: column;
    padding: 0px;
    margin-bottom: 0px;
  }
  .top_topics .outer .right .box dl dt {
    width: 100%;
    font-size: 120%;
    font-weight: 500;
    margin-bottom: 5px;
    background: #FFF;
    padding: 15px 10px;
    border-bottom: none;
    box-sizing: border-box;
  }
  .top_topics .outer .right .box dl dt span {
    width: 180px;
  }
  .top_topics .outer .right .box dl dd {
    width: 100%;
    font-size: 90%;
    border-top: none;
    padding: 10px 10px;
    margin-bottom: 20px;
  }
  .top_topics .outer .right .box dl dd:nth-child(2) {
    border-top: none;
  }
  .top__news .nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
  }
  .top__news .nav ul li {
    width: 48%;
    position: relative;
    transition: .5s all;
    position: relative;
    margin-bottom: 20px;
  }
.top_topics_bg {
    background: #f7f7f7;
}	
	
  .about_bg {
    background: url("../img/sub_main.jpg") no-repeat 0px 0px;
    object-fit: cover;
  }
  .second__ttl {
    position: relative;
    width: 100%;
    min-height: 270px;
    margin-bottom: 100px;
  }
  .second__ttl .outer {
    position: absolute;
    left: 0px;
    bottom: -120px;
    min-width: 540px;
    width: 50%;
  }
  .second__ttl .outer .sub_ttl {
    text-align: center;
    color: #FFF;
    padding: 80px 0px;
    font-size: 196%;
  }
  .second__ttl .outer .sub_ttl span {
    font-size: 70%;
    display: inline-block;
    margin-left: 20px;
  }
  .main_ttl {
    position: relative;
    width: 100%;
    background: url("../img/main.jpg") no-repeat 0px 0px;
    object-fit: cover;
    min-height: 750px;
  }
  .main_ttl .sub_ttl {
    padding: 120px 0px 0px 40px;
  }
  .main_ttl .sub_ttl h2 {
    font-size: 304%;
  }
  .main_ttl .sub_ttl p {
    padding-top: 35px;
    font-size: 114%;
  }
  .main_ttl .feature {
    position: absolute;
    left: 0px;
    bottom: 50px;
    min-width: 540px;
    width: 70%;
  }
  .main_ttl .feature .outer {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    padding: 30px 50px;
    box-sizing: border-box;
    color: #FFF;
  }
  .main_ttl .feature .outer .inner {
    max-width: 540px;
    width: 100%;
  }
  .main_ttl .feature .outer a {
    color: #FFF;
  }
  .main_ttl .feature .outer h3 {
    border-bottom: 1px solid #FFF;
    padding-bottom: 8px;
    font-size: 114%;
  }
  .main_ttl .feature .outer ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding: 20px 0px;
  }
  .main_ttl .feature .outer ul li {
    width: calc(100% / 3);
    position: relative;
    text-align: center;
    -webkit-transform: skewX(150deg);
    -moz-transform: skewX(150deg);
    transform: skewX(150deg);
    border-right: 1px solid #FFF;
    padding: 10px;
    box-sizing: border-box;
  }
  .main_ttl .feature .outer ul li:last-child {
    border-right: none;
  }
  .main_ttl .feature .outer ul li a {
    display: block;
    box-sizing: border-box;
    font-size: 100%;
    display: block;
    transform: skewX(-150deg);
    transition: .1s all;
  }
  .main_ttl .feature .outer ul li a:hover {
    opacity: 0.6;
  }
  .main_ttl .feature .outer ul li a span {
    font-size: 80%;
    color: #005FDD;
  }
  .ttl {
    margin-bottom: 30px;
  }
  .common_contact .sub_ttl {
    font-size: 184%;
    margin-bottom: 50px;
  }
  .common_contact section {
    width: 100%;
  }
  .common_contact address {
    width: 100%;
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .common_contact address .left {
    text-align: center;
    width: 100%;
    margin-bottom: 30px;
  }
  .common_contact address .left .tel {
    color: #005FDD;
    font-size: 264%;
    font-weight: bold;
  }
  .common_contact address .right {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .common_contact address .right a {
    margin: 0px auto;
    width: 80%;
  }
  .common_contact address .right a:after {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    right: 10px;
    font-size: 144%;
    top: 15px;
    z-index: 3;
  }
  .common_contact address .right a:hover {
    opacity: 0.7;
  }
  .common_contact address .right a:hover:after {
    right: 5px;
    transition: .5s all;
  }
  .second__fixed {
    position: static !important;
    z-index: 1000;
    width: 100%;
  }
  .fixed {
    position: static !important;
    z-index: 1000;
    width: 100%;
    left: 0px;
    background: rgba(0, 0, 0, 0);
    top: 0px;
    padding: 0px;
  }
  .common_contact .form_box {
    padding-top: 80px;
  }
  .common_contact .form_box .policy {
    text-align: center;
    padding: 50px 0px;
  }
  .common_contact .form_box .policy a {
    color: #E2F8FD;
    text-decoration: underline;
  }
  .common_contact .form_box form table {
    table-layout: fixed;
    word-break: break-all;
    word-wrap: break-word;
  }
  .common_contact .form_box form table th, .common_contact .form_box form table td {
    display: block;
    box-sizing: border-box;
    width: 100%;
    border: none;
  }
  .common_contact .form_box form table th {
    width: 100%;
    border-bottom: none;
  }
  .sp_none {
    display: none !important;
  }
  .pc_none {
    display: block;
  }
  .sp_mt20 {
    margin-top: 20px;
  }
  .fixed {
    padding-top: 0px;
    position: static;
  }
  .local_nav {
    display: none;
  }
  .map__block_sp {
    display: none;
  }
  .map {
    width: 100%;
    height: 350px;
    margin-bottom: 40px;
  }
  .scroll-prevent {
    position: fixed;
    z-index: -1;
    width: 100%;
    height: 100%;
    top: 0;
    /*追記*/
    right: 0;
    /*追記*/
  }
  #nav-drawer {
    position: relative;
    background: #0059B2;
    text-align: center;
  }
  .nav-unshown {
    display: none;
  }
  .half__column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .half__column .box {
    width: 100%;
    margin-bottom: 25px;
  }
  .reverse {
    flex-direction: column-reverse;
  }
  /*アイコンのスペース*/
  #nav-open {
    display: inline-block;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    position: fixed;
    padding: 10px;
    right: 0px;
    top: 0px;
    z-index: 1001;
    background: #005FDD;
  }
  #nav-open span {
    position: absolute;
    height: 3px;
    /*線の太さ*/
    width: 30px;
    /*長さ*/
    background: #FFF;
    display: block;
    content: '';
    cursor: pointer;
    -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  }
  #nav-open span:nth-of-type(1) {
    top: 13px;
  }
  #nav-open span:nth-of-type(2) {
    top: 23px;
  }
  #nav-open span:nth-of-type(3) {
    top: 33px;
  }
  #nav-open.active span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
  }
  #nav-open.active span:nth-of-type(2) {
    opacity: 0;
  }
  #nav-open.active span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(45deg);
    transform: translateY(-10px) rotate(45deg);
  }
  /*閉じる用の薄黒カバー*/
  #nav-close {
    display: none;
    /*はじめは隠しておく*/
    position: fixed;
    z-index: 99;
    top: 0;
    /*全体に広がるように*/
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: .3s ease-in-out;
  }
  /*中身*/
  #nav-content {
    overflow-y: scroll;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    background: rgba(43, 105, 213, 0.9);
    transition: .3s ease-in-out;
    /*滑らかに表示*/
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%);
    /*左に隠しておく*/
    -webkit-overflow-scrolling: touch;
  }
  #nav-content .box {
    display: flex;
    width: 100%;
  }
  #nav-content .box ul {
    width: 100%;
  }
  #nav-content .box .active {
    background: rgba(0, 178, 133, 0.7);
  }
  #nav-content .box a {
    color: #fff;
  }
  #nav-content .box a:after {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    color: #FFF;
    font-size: 124%;
    top: 20px;
    right: 10px;
  }
  #nav-content .box ul {
    width: 100%;
  }
  #nav-content .box ul .icon {
    position: absolute;
    width: 14px;
    height: 14px;
    top: 26px;
    right: 10px;
  }
  #nav-content .box ul .icon span {
    display: inline-block;
    transition: all .3s;
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #FFF;
  }
  #nav-content .box ul .icon span:nth-of-type(2) {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
  }
  #nav-content .box ul .parent:after {
    display: none;
  }
  #nav-content .box ul .is-active span:nth-of-type(1) {
    display: none;
  }
  #nav-content .box ul .is-active span:nth-of-type(2) {
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
  }
  #nav-content .box ul li {
    width: 100%;
    text-align: left;
  }
  #nav-content .box ul li a {
    display: block;
    color: #fff;
    transition: .5s all;
    box-sizing: border-box;
    padding: 20px;
    position: relative;
    border-bottom: 1px solid #FFF;
    width: 100%;
  }
  #nav-content .box ul li a:after {
    top: 15px;
  }
  #nav-content .box ul li ul {
    display: none;
  }
  #nav-content .box ul li ul li a {
    padding: 15px 15px 15px 40px;
  }
  #nav-content .box ul li ul li ul li a {
    padding: 15px 15px 15px 60px;
  }
  
  #nav-content .box .gas-plant_list li:not(:first-child) a,#nav-content .box .gas-plant_list .inner a {
    padding-left: 60px;
  }
  #nav-content .box .gas-plant_list li:not(:first-child) ul li a {
    padding-left: 80px;
  }
  /*チェックが入ったらもろもろ表示*/
  #nav-input:checked ~ #nav-close {
    display: block;
    /*カバーを表示*/
    opacity: .5;
  }
  #nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    /*中身を表示（右へスライド）*/
    box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
  }
  .news_box , .topics {
    width: 100%;
    box-sizing: border-box;
  }
  .news_box , .topics dl {
    flex-direction: column;
    padding: 0px;
    margin-bottom: 0px;
  }
  .news_box , .topics dl dt {
    width: 100%;
    font-size: 120%;
    font-weight: 500;
    margin-bottom: 5px;
    background: #F7F7F7;
    padding: 15px 10px;
    border-bottom: none;
  }
  .news_box , .topics dl dt span {
    width: 180px;
  }
  .news_box , .topics dl dd {
    width: 100%;
    font-size: 90%;
    border-top: none;
    padding: 10px 10px;
  }
  .news_box , .topics dl dd:nth-child(2) {
    border-top: none;
  }
  /*/////////// 会社概要 ////////////*/
  .history_tbl dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }
  .history_tbl dl dt {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    border-right: 1px solid #CCC;
    font-size: 84%;
    text-align: left;
  }
  .history_tbl dl dt span {
    font-size: 184%;
  }
  .history_tbl dl dd {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
  }
  .history_tbl table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0px;
    border: none;
    box-sizing: border-box;
  }
  .history_tbl table tr {
    width: 100%;
    border: 1px solid #CCC;
  }
  .history_tbl table th,
  .history_tbl table td {
    box-sizing: border-box;
    padding: 15px;
    font-size: 16px;
    border: none;
    font-size: 100%;
    display: block;
  }
  .history_tbl table thead {
    display: none;
  }
  .history_tbl table tbody {
    text-align: left;
  }
  .history_tbl table tbody th {
    background: #F5F5F5;
    color: #171515;
    text-align: left;
    width: 100%;
  }
  .history_tbl table tbody td {
    background: white;
  }
  .company_tbl table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0px;
    border: none;
    box-sizing: border-box;
  }
  .company_tbl table tr {
    width: 100%;
    border: 1px solid #CCC;
  }
  .company_tbl table th, .company_tbl table td {
    box-sizing: border-box;
    padding: 15px;
    font-size: 16px;
    border: none;
    font-size: 100%;
    display: block;
  }
  .company_tbl table thead {
    display: none;
  }
  .company_tbl table tbody {
    text-align: left;
  }
  .company_tbl table tbody th {
    background: #F5F5F5;
    color: #171515;
    text-align: left;
    width: 100%;
  }
  .company_tbl table tbody td {
    background: white;
  }
  .company_tbl table tbody td dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .company_tbl table tbody td dl dt {
    width: 40%;
    display: flex;
    justify-content: space-between;
    padding-right: 35px;
    box-sizing: border-box;
    margin-bottom: 8px;
  }
  .company_tbl table tbody td dl dd {
    width: 60%;
    margin-bottom: 8px;
  }
  /*/////////// header ////////////*/
  .content_block {
    padding: 50px 0px 0px;
  }
  /*/////////// nav ////////////*/
  .nav {
    padding-bottom: 0px;
  }
  .nav .logo {
    max-width: initial;
    width: 100%;
    text-align: center;
  }
  .slick-slider li {
    transition: .5s all;
  }
  .slick-slider li img {
    height: 500px;
    width: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    /*IE対策*/
  }
  .slick-slider li:hover {
    opacity: 0.7;
  }
  .top__header {
    position: relative;
  }
  .top__header .slide_content {
    position: absolute;
    top: 20%;
    width: 100%;
    left: 0px;
    z-index: 1;
  }
  .top__header .slide_content .sub_ttl {
    color: #FFF;
    font-size: 184%;
    line-height: 1.6;
    margin-bottom: -30px;
    width: 100%;
    text-align: center;
  }
  .top__header .slide_content .outer {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
  }
  .top__header .slide_content .outer img {
    max-width: 360px;
    margin-right: 25px;
  }
  .top__header .slide_content .outer .txt {
    max-width: 340px;
    display: flex;
    padding-bottom: 0px;
    padding-top: 50px;
    align-items: flex-start;
  }
  .top__header .slide_content .outer .txt .copy {
    line-height: 1.7;
    margin-bottom: 30px;
    color: #FFF;
    font-size: 124%;
  }
  .top__header .slide_content .outer .txt .copy span {
    font-size: 124%;
  }
  .top__header .slide_content .outer .txt .btn {
    display: block;
    border: 1px solid #FFF;
    text-align: center;
    color: #FFF;
    padding: 20px;
    box-sizing: border-box;
    transition: .5s all;
  }
  .top__header .slide_content .outer .txt .btn:hover {
    background: #FFF;
    color: #000;
  }
/*   header .sp_tel {
    position: fixed;
    z-index: 1001;
    right: 50px;
    top: 0px;
    font-size: 200%;
    width: 50px;
    height: 50px;
    color: #FFF;
    background: #D5E5E6;
    line-height: 50px;
    text-align: center;
  }
  header .sp_tel a {
    color: #FFF;
    display: block;
  } */
header .login_sp {
    position: fixed;
    z-index: 1001;
    right: 50px;
    top: 0px;
    font-size: 200%;
    width: 50px;
    height: 50px;
    color: #FFF;
    background: #3ad8db;
    line-height: 50px;
    text-align: center;
  }
header .login_sp a {
    color: #FFF;
    display: block;
  }
  /*/////////// 会社概要 ////////////*/
  .message ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .message ul .pic {
    width: 300px;
    margin: 0px auto;
  }
  .message ul .txt {
    width: 100%;
    padding-left: 0px;
    padding-top: 20px;
  }
  .message ul .txt .sub_ttl {
    font-size: 124%;
    margin-bottom: 20px;
  }
  .second {
    padding-top: 50px;
  }
  .column__half {
    flex-wrap: wrap;
  }
  .column__half .box {
    width: 100%;
  }
  .column__half .box:first-child {
    margin-bottom: 25px;
  }
  .about__list .box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-top: 30px;
  }
  .about__list .box div {
    background: #f7f7f7;
    padding: 25px;
    box-sizing: border-box;
  }
  .about__list .sales div {
    width: 48%;
    margin-bottom: 25px;
  }
  .about__list .production div {
    width: 32%;
  }
/*//////meeting_info//////////*/	
	.url__box .box {
		width: 100%;
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 864px) {
  .main_ttl {
    position: relative;
    width: 100%;
    background: url("../img/main.jpg") no-repeat 0px 0px;
    object-fit: cover;
    min-height: 750px;
  }
  .main_ttl .sub_ttl {
    padding: 120px 0px 0px 40px;
  }
  .main_ttl .sub_ttl h2 {
    font-size: 244%;
  }
  .main_ttl .sub_ttl p {
    padding-top: 35px;
    font-size: 114%;
  }
  .main_ttl .feature {
    position: absolute;
    left: 0px;
    bottom: 0px;
    min-width: 100%;
    width: 100%;
  }
  .main_ttl .feature .outer {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    padding: 30px 50px;
    box-sizing: border-box;
    color: #FFF;
  }
  .main_ttl .feature .outer .inner {
    max-width: 100%;
    width: 100%;
  }
  .main_ttl .feature .outer a {
    color: #FFF;
  }
  .main_ttl .feature .outer h3 {
    border-bottom: 1px solid #FFF;
    padding-bottom: 8px;
    font-size: 114%;
  }
  .main_ttl .feature .outer ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding: 20px 0px;
  }
  .main_ttl .feature .outer ul li {
    width: calc(100% / 3);
    position: relative;
    text-align: center;
    -webkit-transform: skewX(150deg);
    -moz-transform: skewX(150deg);
    transform: skewX(150deg);
    border-right: 1px solid #FFF;
    padding: 10px;
    box-sizing: border-box;
  }
  .main_ttl .feature .outer ul li:last-child {
    border-right: none;
  }
  .main_ttl .feature .outer ul li a {
    display: block;
    box-sizing: border-box;
    font-size: 100%;
    display: block;
    transform: skewX(-150deg);
    transition: .1s all;
  }
  .main_ttl .feature .outer ul li a:hover {
    opacity: 0.6;
  }
  .main_ttl .feature .outer ul li a span {
    font-size: 80%;
    color: #005FDD;
  }
}

@media screen and (max-width: 764px) {
  .purpose {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 50px 0px;
  }
  .purpose .box {
    width: 100%;
    background: #E2F8FD;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
    text-align: center;
    padding: 30px;
    margin-bottom: 30px;
  }
  .three__column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .three__column .box {
    width: 100%;
    margin-bottom: 25px;
  }
  .three__column .box img {
    max-width: 100%;
  }
  .column_free {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .column_free .l {
    width: 100%;
  }
  .column_free .s {
    max-width: 100%;
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
  .reverse__tab {
    flex-direction: column-reverse;
  }
  .reverse__tab img {
    width: 100%;
  }
  .local_lead {
    font-size: 114%;
    max-width: 100%;
    padding: 0px 20px;
    margin: 0px auto;
    box-sizing: border-box;
  }
  .large__column .l {
    width: 100%;
  }
  .large__column .s {
    width: 100%;
    margin-bottom: 20px;
  }
  .large__column .s img {
    width: 100%;
  }
  .reverse__764 {
    flex-direction: column-reverse;
  }
  .reverse__764 img {
    width: 100%;
  }
}

@media screen and (max-width: 640px) {
  .second__ttl {
    position: relative;
    width: 100%;
    min-height: 270px;
    margin-bottom: 100px;
  }
  .second__ttl .outer {
    position: absolute;
    left: 0px;
    bottom: -80px;
    min-width: 400px;
    width: 50%;
  }
  .second__ttl .outer .sub_ttl {
    text-align: center;
    color: #FFF;
    padding: 50px 0px;
    font-size: 196%;
  }
  .second__ttl .outer .sub_ttl span {
    font-size: 70%;
    display: inline-block;
    margin-left: 20px;
  }
  footer {
    padding: 50px 0px 30px 0px;
    width: 100%;
    position: relative;
    z-index: 0;
  }
  footer .link {
    padding-top: 40px;
  }
  footer .link .nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  footer .link .nav .box {
    width: 48%;
  }
  .img_list li {
    width: 50% !important;
  }
  .slide_wrapper {
    position: relative;
  }
  .slide_wrapper .txt {
    position: absolute;
    z-index: 1;
    top: 10%;
    left: 15%;
    color: #FFF;
  }
  .slide_wrapper .txt h1 {
    font-size: 164%;
    line-height: 1.6;
  }
  .slide_wrapper .txt h1 span {
    border-bottom: 3px solid #FFF;
  }
  .slide_wrapper .txt p {
    font-size: 100%;
    line-height: 1.5;
    padding-top: 10px;
  }
  .img__ttl_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .img__ttl_list .w20, .img__ttl_list .w30, .img__ttl_list .w50 {
    width: 100%;
    margin-bottom: 25px;
  }
  .img__ttl_list .w20 img, .img__ttl_list .w30 img, .img__ttl_list .w50 img {
    width: 100%;
  }
  .img__ttl_list .w20:last-child, .img__ttl_list .w30:last-child, .img__ttl_list .w50:last-child {
    margin-bottom: 0px;
  }
  .reverse__640 {
    flex-direction: column-reverse;
  }
  .scroll table {
    width: 800px;
  }
  
  /*/////////// お問い合わせ ////////////*/
  .contact {
    padding: 10px;
  }
  .contact .list {
    flex-wrap: wrap;
  }
  .contact .list .box {
    margin-bottom: 30px;
    width: 100%;
  }
  .contact .list .box .sub_ttl {
    padding: 20px;
    font-size: 124%;
  }
  .contact .list .box .inner {
    padding: 20px;
    width: 100%;
  }
  .contact .list .btn {
    width: 100%;
    background: #2A5B88;
    color: #FFF;
    padding: 15px;
  }
  .contact form table {
    table-layout: fixed;
    word-break: break-all;
    word-wrap: break-word;
  }
  .contact form table th, .contact form table td {
    display: block;
    box-sizing: border-box;
    padding: 25px 10px;
  }
  .contact form table th {
    width: 100%;
    border-bottom: none;
    padding-bottom: 10px !important;
  }
  .contact form table td {
    width: 100%;
    padding-top: 0px !important;
  }
  .contact form table .normal_txt {
    width: 100%;
  }
  .contact form table .small_txt {
    width: 50%;
  }
  /*/////////// プライバシーポリシー ////////////*/
  .common_contact {
    height: 300px;
  }
  .main_ttl {
    position: relative;
    width: 100%;
    background: url("../img/main.jpg") no-repeat 0px 0px;
    object-fit: cover;
    min-height: 550px;
  }
  .main_ttl .sub_ttl {
    padding: 50px 0px 0px 20px;
  }
  .main_ttl .sub_ttl h2 {
    font-size: 184%;
  }
  .main_ttl .sub_ttl p {
    padding-top: 35px;
    font-size: 104%;
  }
  .main_ttl .feature {
    position: absolute;
    left: 0px;
    bottom: 0px;
    min-width: 100%;
    width: 100%;
  }
  .main_ttl .feature .outer {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    padding: 20px;
    box-sizing: border-box;
    color: #FFF;
  }
  .main_ttl .feature .outer .inner {
    max-width: 100%;
    width: 100%;
  }
  .main_ttl .feature .outer a {
    color: #FFF;
  }
  .main_ttl .feature .outer h3 {
    border-bottom: 1px solid #FFF;
    padding-bottom: 8px;
    font-size: 114%;
  }
  .main_ttl .feature .outer ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding: 20px 0px;
  }
  .main_ttl .feature .outer ul li {
    width: calc(100% / 3);
    position: relative;
    text-align: center;
    -webkit-transform: skewX(150deg);
    -moz-transform: skewX(150deg);
    transform: skewX(150deg);
    border-right: 1px solid #FFF;
    padding: 10px;
    box-sizing: border-box;
  }
  .main_ttl .feature .outer ul li:last-child {
    border-right: none;
  }
  .main_ttl .feature .outer ul li a {
    display: block;
    box-sizing: border-box;
    font-size: 100%;
    display: block;
    transform: skewX(-150deg);
    transition: .1s all;
  }
  .main_ttl .feature .outer ul li a:hover {
    opacity: 0.6;
  }
  .main_ttl .feature .outer ul li a span {
    font-size: 80%;
    color: #005FDD;
  }
  .ttl {
    text-align: center;
    margin-bottom: 40px;
    position: relative;
    line-height: 1.6;
    font-size: 114%;
  }
	.ttl span {
		font-size: 160%;
		display: inline-block;
		color: #005FDD;
	}

	.defo_tbl table td {
		border: 1px solid #ccc;
	}
	.defo_tbl table th {
		text-align: left;
		background: #f7f7f7;
		padding: 10px;
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
	}
	.defo_tbl table tr:first-child th {
		border-top: 1px solid #ccc;
	}
	.defo_tbl table th, .defo_tbl table td {
		width: 95%;
		display: block;
		margin: auto;
		padding: 10px;
	}
	.privacy_txt{
		font-size:95% !important;
	}
	.sp_left{
		text-align:left;
	}
}

@media screen and (max-width: 480px) {
  .second__ttl {
    position: relative;
    width: 100%;
    min-height: 230px;
    margin-bottom: 100px;
  }
  .second__ttl .outer {
    position: absolute;
    left: 0px;
    bottom: -50px;
    min-width: 320px;
    width: 50%;
  }
  .second__ttl .outer .sub_ttl {
    text-align: center;
    color: #FFF;
    padding: 30px 0px;
    font-size: 156%;
  }
  .second__ttl .outer .sub_ttl span {
    font-size: 70%;
    display: inline-block;
    margin-left: 20px;
  }
  header .tagline .logo {
    padding: 10px;
  }
  header .tagline .logo img {
    max-width: 260px;
  }
  .commmon_rec {
    width: 100%;
    height: 350px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url("../img/company_recruit_img.jpg") no-repeat 0px 0px;
    background-size: cover;
    text-align: center;
    color: #FFF;
  }
  .commmon_rec .sub_ttl {
    margin-bottom: 30px;
    color: #FFF;
    font-size: 154%;
  }
  .commmon_rec p {
    line-height: 1.5;
    padding: 0px 10px;
    text-align: left;
    margin-bottom: 40px;
  }
  .point {
    background: #f5f7fa;
    text-align: center;
    font-size: 1rem;
    font-weight: bold;
    padding: 20px;
    box-sizing: border-box;
    line-height: 1.6;
  }
  .point .sub_ttl {
    font-size: 134%;
    text-align: center;
    color: #E2F8FD;
  }
  .point .sub_ttl span {
    font-size: 60%;
  }
  .slide_wrapper {
    position: relative;
  }
  .slide_wrapper .slide-navigation {
    position: absolute;
    width: 100%;
    left: -0px;
    bottom: 0px;
    z-index: 2;
  }
  .slide_wrapper .slide-navigation ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    padding: 0px 25px;
    box-sizing: border-box;
  }
  .slide_wrapper .slide-navigation ul li {
    margin-right: 0px;
    width: 45%;
    margin-bottom: 10px;
  }
  .slide_wrapper .slide-navigation ul li img {
    width: 100%;
    transition: .5s all;
    cursor: pointer;
  }
  .slide_wrapper .slide-navigation ul li img:hover {
    opacity: 1;
  }
  .slide_wrapper .slide-navigation ul li:last-child {
    margin-right: 0px;
  }
  .checklist li {
    padding-left: 25px;
    margin-bottom: 15px;
    position: relative;
    width: 100% !important;
    box-sizing: border-box;
    font-size: 124%;
    text-align: left;
  }
  .checklist li:before {
    content: "\f00c";
    font-family: FontAwesome;
    position: absolute;
    left: 0px;
    top: 0px;
    color: #005FDD;
  }
  .checklist li:last-child {
    margin-bottom: 0px;
  }
  .point_l .sub_ttl {
    background: #005FDD;
    padding: 20px;
    box-sizing: border-box;
    color: #FFF;
    font-size: 144%;
    text-align: center;
  }
  .point_l .sub_ttl span {
    font-size: 134%;
    font-weight: bold;
  }
  .point_l .box {
    webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 40px;
  }
  .point_l .box .inner {
    box-sizing: border-box;
    padding: 20px;
  }
  .point_l .box .inner p {
    font-size: 108%;
  }
  .br-sp {
    display: none;
  }
  .local_ttl {
    font-size: 1.14rem;
  }
  .local_text {
    font-size: 1.5rem;
  }
  .three__column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .three__column .down {
    width: 100% !important;
  }
  .three__column .box {
    width: 32%;
    margin-bottom: 25px;
  }
  .three__column .box img {
    max-width: 100%;
  }
  .common_btn {
    width: 80%;
    max-width: 300px;
  }
  .image__list_ttl ul li {
    width: 100%;
    margin-bottom: 25px;
  }
  .middle_ttl {
    font-size: 134%;
  }
  .local__tbl table tbody {
    text-align: left;
  }
  .local__tbl table tbody th {
    width: 50%;
  }
  .main_ttl {
    position: relative;
    width: 100%;
    background: url("../img/main.jpg") no-repeat 0px 0px;
    object-fit: cover;
    min-height: 550px;
  }
  .main_ttl .sub_ttl {
    padding: 50px 0px 0px 20px;
  }
  .main_ttl .sub_ttl h2 {
    font-size: 164%;
  }
  .main_ttl .sub_ttl p {
    padding-top: 20px;
    font-size: 104%;
  }
  .main_ttl .feature {
    position: absolute;
    left: 0px;
    bottom: 0px;
    min-width: 100%;
    width: 100%;
  }
  .main_ttl .feature .outer {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    padding: 20px;
    box-sizing: border-box;
    color: #FFF;
  }
  .main_ttl .feature .outer .link {
    text-align: right;
    padding-top: 0px;
  }
  .main_ttl .feature .outer .inner {
    max-width: 100%;
    width: 100%;
  }
  .main_ttl .feature .outer a {
    color: #FFF;
  }
  .main_ttl .feature .outer h3 {
    border-bottom: 1px solid #FFF;
    padding-bottom: 8px;
    font-size: 114%;
  }
  .main_ttl .feature .outer ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding: 20px 0px;
  }
  .main_ttl .feature .outer ul li {
    width: calc(100% / 3);
    position: relative;
    text-align: center;
    -webkit-transform: skewX(150deg);
    -moz-transform: skewX(150deg);
    transform: skewX(150deg);
    border-right: 1px solid #FFF;
    padding: 10px 20px;
    box-sizing: border-box;
  }
  .main_ttl .feature .outer ul li:last-child {
    border-right: none;
  }
  .main_ttl .feature .outer ul li a {
    display: block;
    box-sizing: border-box;
    font-size: 84%;
    display: block;
    transform: skewX(-150deg);
    transition: .1s all;
  }
  .main_ttl .feature .outer ul li a:hover {
    opacity: 0.6;
  }
  .main_ttl .feature .outer ul li a span {
    font-size: 80%;
    color: #005FDD;
  }
}
