@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1.5;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

/* remember to define focus styles! */
:focus {
  outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

/* tables still need 'cellspacing=0' in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*----------cssリセットここまで----------*/
/*----------グローバル変数ここから----------*/
/*---------- グローバル変数ここまで----------*/
/*---------- SVG関連のCSSここから ----------*/
#svg-animation .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 15;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
  stroke-dasharray: 1500;
  stroke-dashoffset: 1500;
}

/*---------- SVG関連のCSSここまで ----------*/
/*----------全体共通ここから ----------*/
@-webkit-keyframes blur {
  from {
    -webkit-filter: blur(1rem);
    filter: blur(1rem);
    opacity: 0;
  }
  to {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
  }
}
@keyframes blur {
  from {
    -webkit-filter: blur(1rem);
    filter: blur(1rem);
    opacity: 0;
  }
  to {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
  }
}

html {
  width: 100%;
}

body {
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  line-height: 1.6;
  font-size: 10px;
  color: #333333;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  background: #F4F7F9;
  overflow-x: hidden;
  position: relative;
  width: 100%;
}

body img {
  width: 100%;
}

@media (min-width: 768px) {
  body img {
    width: auto;
  }
}

@media (min-width: 768px) {
  .wrapper {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px 0 20px;
  }
}

.flo_left {
  float: left;
}

.mgb-20 {
  margin-bottom: 20px;
}

.mgb-30 {
  margin-bottom: 30px;
}

.mgb-60 {
  margin-bottom: 60px;
}

a {
  cursor: pointer;
  text-decoration: none;
  color: #1A237E;
}

a:link {
  text-decoration: none;
  color: #1A237E;
}

a:visited {
  text-decoration: none;
  color: #1A237E;
}

a:hover {
  text-decoration: none;
  color: #1A237E;
  opacity: 0.6;
}

a:active {
  text-decoration: none;
  color: #1A237E;
}

.btn_outline a {
  height: 50px;
  line-height: 50px;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  text-decoration: none;
  width: 100%;
  border: 2px solid #1A237E;
  background-color: #FFFFFF;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  cursor: pointer;
}

.btn_outline a:link {
  color: #1A237E;
}

.btn_outline a:visited {
  color: #1A237E;
}

.btn_outline a:hover {
  color: #FFFFFF;
  background-color: #1A237E;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 1;
}

.btn_outline a:active {
  border: 2px solid #1A237E;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.menu_item_corporate::before {
  content: '';
  width: 25px;
  height: 25px;
  display: inline-block;
  background: no-repeat url(../images/icon_corporate.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

.menu_item_business::before {
  content: '';
  width: 25px;
  height: 25px;
  display: inline-block;
  background: no-repeat url(../images/icon_business.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

.menu_item_recruit::before {
  content: '';
  width: 25px;
  height: 25px;
  display: inline-block;
  background: no-repeat url(../images/icon_recruit.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

.menu_item_contact::before {
  content: '';
  width: 25px;
  height: 25px;
  display: inline-block;
  background: no-repeat url(../images/icon_contact.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

@media (min-width: 768px) {
  .header_sp {
    display: none;
  }
  header {
    position: relative;
    z-index: 12;
  }
  .header_pc {
    background-color: #FFFFFF;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  }
  nav {
    background-color: #FFFFFF;
    padding: 0 20px;
    height: 60px;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
  }
  nav a {
    display: block;
  }
  nav h1 img {
    height: 40px;
    margin: 10px 0 10px 20px;
  }
  nav .menu_button {
    display: none;
  }
  nav .global_nav {
    font-size: 1.4em;
    font-weight: bold;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
  }
  nav .menu_item_pc, nav .menu_direct_link {
    width: 150px;
    vertical-align: middle;
  }
  nav .menu_item_pc .nav_item_link, nav .menu_item_pc .menu_item_contact, nav .menu_direct_link .nav_item_link, nav .menu_direct_link .menu_item_contact {
    display: block;
    height: 60px;
    line-height: 60px;
    text-align: center;
    padding-bottom: 3px;
    color: #333333;
  }
    nav .menu_item_pc2 .nav_item_link, nav .menu_item_pc2 .menu_item_contact, nav .menu_direct_link .nav_item_link, nav .menu_direct_link .menu_item_contact {
    display: block;
    height: 60px;
    line-height: 60px;
    text-align: center;
    padding-bottom: 3px;
    color: #333333;
  }
  nav .menu_item_pc .nav_item_link:hover, nav .menu_direct_link .nav_item_link:hover {
    background-color: #F4F7F9;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    color: #333333;
    opacity: 1;
  }
    nav .menu_item_pc2 .nav_item_link:hover, nav .menu_direct_link .nav_item_link:hover {
    background-color: #F4F7F9;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    color: #333333;
    opacity: 1;
  }
  nav .menu_item_pc .nav_item_link::after, nav .menu_direct_link .nav_item_link::after {
    border-bottom: 3px #1A237E solid;
    bottom: 0;
    content: "";
    display: block;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 0;
  }
    nav .menu_item_pc2 .nav_item_link::after, nav .menu_direct_link .nav_item_link::after {
    border-bottom: 3px #1A237E solid;
    bottom: 0;
    content: "";
    display: block;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 0;
  }
  nav .menu_item_pc .nav_item_link:hover::after, nav .menu_direct_link .nav_item_link:hover::after {
    width: 100%;
  }
    nav .menu_item_pc2 .nav_item_link:hover::after, nav .menu_direct_link .nav_item_link:hover::after {
    width: 100%;
  }
  nav .menu_item_pc .menu_item_contact:hover, nav .menu_direct_link .menu_item_contact:hover {
    background-color: #F4F7F9;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    opacity: 1;
  }
    nav .menu_item_pc2 .menu_item_contact:hover, nav .menu_direct_link .menu_item_contact:hover {
    background-color: #F4F7F9;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    opacity: 1;
  }
  nav .menu_item_pc .menu_item_contact::after, nav .menu_direct_link .menu_item_contact::after {
    border-bottom: 3px #1A237E solid;
    bottom: 0;
    content: "";
    display: block;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 0;
  }
    nav .menu_item_pc2 .menu_item_contact::after, nav .menu_direct_link .menu_item_contact::after {
    border-bottom: 3px #1A237E solid;
    bottom: 0;
    content: "";
    display: block;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 0;
  }
  nav .menu_item_pc .menu_item_contact:hover::after, nav .menu_direct_link .menu_item_contact:hover::after {
    width: 100%;
  }
    nav .menu_item_pc2 .menu_item_contact:hover::after, nav .menu_direct_link .menu_item_contact:hover::after {
    width: 100%;
  }
  nav .menu_direct_link {
    width: 150px;
  }
  nav .submenu_header_pc {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    width: 100%;
    display: none;
    position: absolute;
    width: 250px;
    background: #FFFFFF;
  }
  nav .nav_submenu_item {
    text-align: left;
  }
  nav .nav_submenu_item a {
    display: block;
    padding: 10px 20px;
    color: #333333;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  nav .nav_submenu_item a:link {
    color: #333333;
  }
  nav .nav_submenu_item a:visited {
    color: #333333;
  }
  nav .nav_submenu_item a:hover {
    background-color: #1A237E;
    color: #FFFFFF;
    opacity: 1;
  }
}

@media (max-width: 767px) {
  .header_pc {
    display: none;
  }
  nav {
    font-weight: bold;
  }
  nav .header {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
    padding: 0 0 0 20px;
    box-sizing: border-box;
    height: 60px;
    background: #FFFFFF;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  }
  nav .header .header_logo {
    width: 30%;
    vertical-align: bottom;
  }
  nav .header {
    position: relative;
    z-index: 12;
    top: 0;
  }
  nav .menu_button {
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
    border-left: 1px solid #E6EAED;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    height: 60px;
  }
  nav .menu_button img {
    width: 50%;
  }
  nav .global_nav_wrapper {
    position: absolute;
    top: 60px;
    width: 0;
    overflow: hidden;
    height: calc(100% - 60px);
    z-index: 10;
  }
  nav .global_nav_wrapper .global_nav_bg {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0);
    top: 0;
    left: 0;
    -webkit-transition: margin-right 10s ease-in;
    transition: margin-right 10s ease-in;
  }
  nav .global_nav_wrapper.open {
    width: 100%;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  nav .global_nav_wrapper.open .global_nav_bg {
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: background-color 0.5s;
    transition: background-color 0.5s;
  }
  nav .global_nav {
    position: absolute;
    top: 0;
    right: -100%;
    width: 80%;
    height: 100%;
    background: #FFFFFF;
    font-size: 1.4em;
    box-sizing: border-box;
  }
  nav .global_nav .nav_item_link {
    position: relative;
    display: block;
    height: 60px;
    line-height: 60px;
    padding-left: 20px;
    border-bottom: 1px solid #E6EAED;
  }
  nav .global_nav .nav_item {
    display: block;
    height: 60px;
    line-height: 60px;
    padding-left: 20px;
    border-bottom: 1px solid #E6EAED;
  }
  nav .global_nav .nav_item_link:after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    background: no-repeat center/60% url(../images/icon_accordion_open.svg);
  }
  nav .global_nav .nav_item_link.on:after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    background: no-repeat center/60% url(../images/icon_accordion_close.svg);
  }
  nav .global_nav .nav_submenu_item {
    height: 40px;
    line-height: 40px;
    padding-left: 20px;
  }
  nav .global_nav .submenu_nav_sp {
    display: none;
    border-bottom: 1px solid #E6EAED;
  }
  nav .global_nav a {
    text-decoration: none;
    color: #333333;
  }
}

footer {
  background-color: #FFFFFF;
  padding-top: 30px;
  margin-top: 60px;
}

footer .copyright {
  text-align: center;
  padding: 30px 0 30px 0;
  font-size: 1.4em;
  margin-top: 30px;
  background-color: #F4F7F9;
}

footer .menu {
  font-size: 1.4em;
  font-weight: bold;
}

@media (min-width: 768px) {
  footer .footer_sp {
    display: none;
  }
  footer .footer_contents {
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
  }
  footer .footer_logo {
    padding:0 30px;
    border-right: 2px #E6EAED solid;
  }
  footer .footer_logo img {
    width: 130px;
  }
  footer .footer_logo li:last-child {
    font-size: 1.4em;
    font-weight: bold;
  }
  footer .menu {
    display: -webkit-box;
    display: flex;
  }
  footer .menu_item_wrap {
    height: 100%;
    border-right: 2px #E6EAED solid;
    margin-left: 30px;
  }
  footer .menu_item {
    text-align: left;
    margin-right: 30px;
  }
  footer .menu_item_link {
    pointer-events: none;
    color: #333333;
  }
  footer .submenu_pc {
    margin-top: 10px;
  }
  footer .submenu_pc a {
    color: #333333;
    font-weight: normal;
  }
  footer .submenu_item {
    margin-top: 5px;
  }
}

@media (max-width: 767px) {
  footer .footer_pc {
    display: none;
  }
  footer .footer_logo {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    border-bottom: 1px solid #E6EAED;
    padding-bottom: 20px;
  }
  footer .footer_logo img {
    max-width: 100%;
  }
  footer .footer_logo li:first-child {
    width: 130px;
    height: auto;
    text-align: center;
    margin-right: 20px;
  }
  footer .footer_logo li:first-child img {
    display: block;
  }
  footer .footer_logo li {
    vertical-align: middle;
    font-size: 1.4em;
    font-weight: bold;
  }
  footer .menu_item {
    cursor: pointer;
    display: block;
    margin-bottom: 1px;
    position: relative;
  }
  footer .menu_item a {
    color: #333333;
    font-weight: bold;
    opacity: 1;
  }
  footer .menu_item a:hover {
    opacity: 1;
  }
  footer .menu_item a:active {
    opacity: 1;
  }
  footer .menu_item a:visited {
    opacity: 1;
  }
  footer .menu_item_link {
    display: block;
    padding: 0 20px;
    line-height: 60px;
    position: relative;
    border-bottom: 1px solid #E6EAED;
  }
  footer .menu_item_link:after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    background: no-repeat center/60% url(../images/icon_accordion_open.svg);
  }
  footer .menu_item_link.on:after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    background: no-repeat center/60% url(../images/icon_accordion_close.svg);
  }
  footer .submenu_item {
    padding: 15px 20px;
  }
  footer .submenu_sp {
    display: none;
    border-bottom: 1px solid #E6EAED;
  }
}

@media (min-width: 768px) {
  .container {
    padding: 40px 40px;
    background-color: #FFFFFF;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
    font-size: 1.4em;
  }
  .subpage_ttl {
    text-align: left;
    margin: 60px 0 30px 0;
  }
  .subpage_ttl span {
    font-size:50%;
    margin-left:1em;
  }
  .side_navi {
    width: 25%;
  }
  .side_navi ul {
    margin-top: 60px;
    margin-right: 40px;
    background-color: #fff;
    font-weight: bold;
    font-size: 1.4em;
  }
  .side_navi ul li a {
    display: block;
    padding: 15px 20px;
    color: #333333;
    border-bottom: 1px #E6EAED solid;
    opacity: 1;
  }
  .side_navi ul li a:hover {
    background-color: #1A237E;
    color: #FFFFFF;
    opacity: 1;
  }
  .side_navi ul li .side_navi_off a {
    color: #333333;
    opacity: 1;
  }
  .side_navi ul li .side_navi_off a:hover {
    background-color: #1A237E;
    color: #FFFFFF;
    opacity: 1;
  }
  .side_navi ul li .side_navi_off a:visited {
    color: #333333;
    opacity: 1;
  }
  .side_navi ul li .side_navi_off a:active {
    color: #333333;
    opacity: 1;
  }
  .side_navi ul li .side_navi_on {
    background-color: #1A237E;
    color: #FFFFFF;
  }
  .side_navi ul li .side_navi_on a {
    background-color: #1A237E;
    color: #FFFFFF;
  }
  .side_navi ul li .side_navi_on a:hover {
    background-color: #1A237E;
    color: #FFFFFF;
  }
  .side_navi ul li .side_navi_on a:visited {
    background-color: #1A237E;
    color: #FFFFFF;
  }
  .side_navi ul li .side_navi_on a:active {
    background-color: #1A237E;
    color: #FFFFFF;
  }

  
  .side_navi ul li:last-child {
    border-bottom:none;
  }
  
     ul.side_navi_c{
   margin-top: 0;
  }
  
      ul.side_navi_cs{
   margin-top: 3px;
       margin-left: 20px;
           background-color: #fff;
  }
        ul.side_navi_cs li{
           border-bottom: 3px #E6EAED solid;
  }
 ul.side_navi_cs li:last-child {
    border-bottom: 3px #E6EAED solid;
  }
  
  
  .main_contents {
    width: 75%;
  }
  .subpage_wrapper {
    max-width: 1200px;
    padding: 0 20px 0 20px;
    margin: 0 auto;
    display: -webkit-box;
    display: flex;
  }
}

@media (max-width: 767px) {
  .container {
    padding: 30px 20px;
    background-color: #FFFFFF;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
    font-size: 1.4em;
  }
  .subpage_ttl {
    text-align: center;
    margin: 40px 0 20px 0;
  }
    .subpage_ttl span {
    font-size:50%;
    margin-left:1em;
  }
  .side_navi {
    display: none;
  }
    .m3-b {
    display: none;
  }
  .intas-h4 {
    display: none;
  }
  .intas-h4_en {
    display: none;
  }
}

.pagetop {
  -webkit-animation: blur 0.6s ease-in 0s 1 alternate;
  animation: blur 0.6s ease-in 0s 1 alternate;
}

@media (min-width: 768px) {
  .mv {
    margin-bottom: 60px;
  }
  .mv img {
    width: 100%;
    display: block;
  }
  .mv .mv_pc {
    height: 460px;
    background: url(../images/img_mv_pc.png) no-repeat;
    background-position: center;
    background-size: cover;
  }
    .mv .mv_pc_en {
    height: 460px;
    background: url(../images/img_mv_pc_en.png) no-repeat;
    background-position: center;
    background-size: cover;
  }
  .mv .mv_pc div {
    position: relative;
    max-width: 1000px;
    height: 460px;
    margin: 0 auto;
  }
    .mv .mv_pc_en div {
    position: relative;
    max-width: 1000px;
    height: 460px;
    margin: 0 auto;
  }
  .mv .mv_pc div img {
    width: 160px;
    height: auto;
    right: 0;
    bottom: 20px;
    position: absolute;
  }
    .mv .mv_pc_en div img {
    width: 160px;
    height: auto;
    right: 0;
    bottom: 20px;
    position: absolute;
  }
  .mv .mv_sp {
    display: none;
  }
    .mv .mv_sp_en {
    display: none;
  }
}

@media (max-width: 767px) {
  .mv {
    margin-bottom: 60px;
  }
  .mv .mv_sp {
    height: 70vh;
    position: relative;
    background: url(../images/img_mv_sp.png) no-repeat;
    background-position: top;
    background-size: cover;
  }
    .mv .mv_sp_en {
    height: 70vh;
    position: relative;
    background: url(../images/img_mv_sp_en.png) no-repeat;
    background-position: top;
    background-size: cover;
  }
  .mv .mv_sp img {
    width: 30%;
    height: auto;
    position: absolute;
    right: 30px;
    bottom: 15px;
  }
    .mv .mv_sp_en img {
    width: 30%;
    height: auto;
    position: absolute;
    right: 30px;
    bottom: 15px;
  }
  .mv .mv_pc {
    display: none;
  }
    .mv .mv_pc_en {
    display: none;
  }
}

.intro_wrapper {
  width: 100%;
  display: block;
}

@media (min-width: 768px) {
  .intro_wrapper {
    position: relative;
    margin-bottom: 60px;
  }
}

.intro_img {
  z-index: auto;
  top: 10px;
}

@media (min-width: 768px) {
  .intro_img {
    width: 70%;
    vertical-align: middle;
  }
  .intro_img img {
    width: 100%;
    display: block;
  }
}

h2 {
  font-size: 3em;
  font-family: 'Roboto', sans-serif;
  line-height: 1.2;
  margin-bottom: 1vw;
}

.intro_text {
  padding: 20px;
  margin: 0 20px 0 20px;
  background-color: #FFFFFF;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  z-index: 2;
  position: relative;
  bottom: 60px;
}

.intro_text span {
  color: #F07E0F;
  font-size: 1.4em;
  font-weight: bold;
  display: inline-block;
}

.intro_text p {
  margin-bottom: 1vw;
  font-size: 1.3em;
}

@media (max-width: 767px) {
  .intro_text span {
    margin-bottom: 15px;
  }
  .intro_text p {
    margin-bottom: 15px;
  }
}

@media (min-width: 768px) {
  .intro_text {
    margin: 0;
    padding: 20px;
    position: absolute;
    width: 50%;
    top: 50%;
    bottom: auto;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    max-height: 95%;
    box-sizing: border-box;
    display: inline-block;
  }
  .intro_text span {
    margin-bottom: 1vw;
  }
  .intro_text .btn_outline {
    width: 30%;
    float: right;
  }
  .intro_wrapper {
    display: -webkit-box;
    display: flex;
  }
  .flex-flow {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-flow: row-reverse;
  }
  .flex-flow .intro_text {
    right: auto;
    left: 0;
  }
  div.blue_sq2{
display:none;
  }
  .intas_l{
display:none;
  }
}

.news {
  margin-bottom: 60px;
  padding: 30px 20px;
  background-color: #FFFFFF;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.news h2 {
  text-align: center;
  position: relative;
  margin-bottom: 40px;
}

.news h2::before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
  display: inline-block;
  width: 50px;
  height: 6px;
  background-color: #F07E0F;
}

.news li {
  background-color: #F4F7F9;
  padding: 15px;
  margin-bottom: 20px;
}

.news li time {
  color: #A5AAAD;
  font-size: 1.1em;
}

.news li h3 {
  font-size: 1.4em;
  margin-top: 5px;
  font-weight: normal;
}

.news li .news_link {
  margin-top: 10px;
  font-size: 1.4em;
  line-height: 30px;
  display: inline-block;
  vertical-align: middle;
}

.news li .news_link::before {
  content: '';
  width: 14px;
  height: 14px;
  display: inline-block;
  background: no-repeat url(../images/img_arrow_link.svg);
  margin-top: -1px;
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

@media (min-width: 768px) {
  .flex-align-items {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
  .flex-align-items .news {
    width: 100%;
    margin-right: 40px;
  }
  .flex-align-items .info {
    width: 100%;
  }
}

.info {
  margin-bottom: 60px;
  padding: 30px 20px;
  background-color: #FFFFFF;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.info h2 {
  text-align: center;
  position: relative;
  margin-bottom: 40px;
}

.info h2::before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
  display: inline-block;
  width: 50px;
  height: 6px;
  background-color: #F07E0F;
}

.info .info_rows {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.info .info_rows a {
  width: 100%;
  text-align: center;
  display: block;
}

.info .info_rows a h3 {
  width: 80%;
  margin: 0 auto;
}

.info .info_rows a h3 img {
  width: 100%;
}

.info .info_rows a:first-child {
  margin-right: 20px;
}

.info a {
  display: block;
  background-color: #F4F7F9;
  padding: 20px 15px;
  font-size: 1.4em;
}

.info .list_img_partner {
  margin-top: 20px;
  font-size: 1.4em;
  line-height: 30px;
}

.info .list_img_partner::before {
  content: '';
  width: 30px;
  height: 30px;
  display: inline-block;
  background: no-repeat url(../images/icon_partner.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

.info .list_img_solutions {
  margin-top: 20px;
  font-size: 1.4em;
  line-height: 30px;
}

.info .list_img_solutions::before {
  content: '';
  width: 30px;
  height: 30px;
  display: inline-block;
  background: no-repeat url(../images/icon_solutions.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

.info .list_img_about-infront {
  margin-top: 20px;
  font-size: 1.4em;
  line-height: 30px;
}

.info .list_img_about-infront::before {
  content: '';
  width: 30px;
  height: 30px;
  display: inline-block;
  background: no-repeat url(../images/icon_corporate.svg);
  background-size: contain;
  margin-right: 5px;
  vertical-align: middle;
}

.company_history dl {
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px #E6EAED solid;
  display: -webkit-box;
  display: flex;
}

.company_history dl dt {
  font-weight: bold;
  margin-right: 20px;
  width: 140px;
}

.company_history dl dd {
  font-weight: normal;
  margin-right: 20px;
  width: 660px;
}


.company_overview dl {
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px #E6EAED solid;
  display: -webkit-box;
  display: flex;
}

.company_overview dl dt {
  font-weight: bold;
  margin-right: 20px;
}


.container a:link {
text-decoration: underline;
}

.company_overview dl {
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px #E6EAED solid;
  display: -webkit-box;
  display: flex;
}

.company_overview dl dt {
  font-weight: bold;
  margin-right: 20px;
}

.map {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.map iframe,
.map object,
.map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 768px) {
  .container .company_history dl dt {
    width: 140px;
  }
  .container .company_history .company_overview_rows {
    display: -webkit-box;
    display: flex;
  }
  .container .company_history .company_overview_rows dl {
    width: 50%;
  }
}

@media (max-width: 767px) {
  .container {
    padding: 20px;
  }
  .container .company_history {
    padding: 20px 20px 0 20px;
  }
  .container .company_history dl dt {
    width: 30%;
  }
  .container .company_history dl dd {
    width: 70%;
  }
  .container .map {
    margin: 0 20px 20px 20px;
  }
}


@media (min-width: 768px) {
  .container .company_overview dl dt {
    width: 140px;
  }
  .container .company_overview .company_overview_rows {
    display: -webkit-box;
    display: flex;
  }
  .container .company_overview .company_overview_rows dl {
    width: 50%;
  }
}

@media (max-width: 767px) {
  .container {
    padding: 20px;
  }
  .container .company_overview {
    padding: 20px 20px 0 20px;
  }
  .container .company_overview dl dt {
    width: 30%;
  }
  .container .company_overview dl dd {
    width: 70%;
  }
  .container .map {
    margin: 0 20px 20px 20px;
  }
}


@media (min-width: 768px) {
  .navi_business {
    margin: 30px 0 0 0;
  }
  .navi_business ul {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    padding: 10px;
    width: 100%;
  }
  .navi_business ul li {
    width: 50%;
    box-sizing: border-box;
  }
  .navi_business ul li a {
    color: #333333;
  }
}

@media (max-width: 767px) {
  .navi_business {
    padding: 10px 20px;
    margin: 20px 10px;
  }
  .subpage_h3 {
    margin-top: 20px;
  }
}

.navi_business {
  background: #FFFFFF;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  font-size: 1.4em;
}

.navi_business li {
  padding: 10px;
  font-weight: bold;
}

.navi_business li a {
  color: #333333;
}

.navi_business li::before {
  content: "";
  width: 6px;
  height: 6px;
  display: inline-block;
  background-color: #333333;
  border-radius: 50%;
  margin-right: 10px;
}

.navi_business .navi_business_focus::before {
  background-color: #F07E0F;
}

.subpage_h3 {
  font-size: 2em;
  padding: 1px 0 1px 10px;
  border-left: 5px solid #F07E0F;
  margin-bottom: 30px;
}

.img_business {
  width: 100%;
  margin-bottom: 30px;
}

.title_copy {
  font-size: 1.8em;
  font-weight: bold;
  margin-bottom: 15px;
}
.title_copy_en {
  font-size: 1.4em;
  font-weight: bold;
  margin-bottom: 15px;
}

.title_description {
  margin-bottom: 20px;
}
.list_code {
  border: 1px #E6EAED solid;
  padding: 15px;
  margin-bottom: 20px;
}

.list_business {
  border: 1px #E6EAED solid;
  padding: 15px;
  margin-bottom: 20px;
}

.list_business h4 {
  font-size: 1.6em;
  border-bottom: 1px #E6EAED solid;
  padding-bottom: 20px;
}

.list_business li {
  font-weight: bold;
  border-bottom: 1px #E6EAED solid;
  padding: 20px 0;
}

.list_business li span {
  font-weight: normal;
  display: block;
}

.list_business li:last-child {
  border: none;
  padding-bottom: 0;
}



.list_business2 {
  border: 1px #E6EAED solid;
  padding: 15px;
  margin-bottom: 20px;
}



h4.blue_h4 {
  font-size: 1.6em;
  margin-top:40px;
  padding: 10px;
  color: #fff;
  background-color:#1A237E;
}


.list_business2 li {
  font-weight: bold;
  border-bottom: 1px #E6EAED solid;
  padding: 10px 0;
}

.list_business2 li span {
  font-weight: normal;
  display: block;
  
}

.list_business2 li:last-child {
  border: none;
  margin-bottom:0;
}



.list_business3 {
  border: 1px #E6EAED solid;
  padding: 0;
  margin: 0;
}

.list_business3_u{
  border-bottom: 1px #E6EAED solid;
    margin: 0 20px;
      overflow:hidden;
display:flex;
position:relative;
  }
  
.list_business3_ul{
    padding: 0 20px;
      overflow:hidden;
display:flex;
position:relative;
  }
  
.list_business3_m {
    font-weight: bold;
  padding: 20px 0;
      display: block;
      width: 100px; 
          float:left;
          
}

.list_business3_h{
  padding: 20px 10px;
  font-weight: normal;
  display: block;
  width:100%;
  float:left;


}

.list_control {

}

.list_control h4 {
  font-size: 1.6em;
  border-bottom: 1px #E6EAED solid;
  padding-bottom: 20px;
}

.list_control li {
  font-weight: bold;
  border-bottom: 1px #E6EAED solid;
  background-color: #1A237E;
  color:#ffffff;
  padding: 20px 0 20px 80px;
}
.list_control li:before {
	content: '▶'; /* ←ここにリストマーカーにしたい文字列を設定 */
	    font-size:60%;
  vertical-align: -12px;
  margin-left:-60px;
  margin-right: 20px; 
}

.list_control li  {
  font-size:150%;
  font-weight:bold;
  color: #ffffff;
  padding: 20px 10px 20px 70px;
  text-decoration:none;
}

.list_control li span {
  font-weight: normal;
    font-size:60%;
  color:#ffffff;
  display: block;
    padding: 0;
    margin-left:-35px;
    margin-top:-8px;
}


.list_control_en h4 {
  font-size: 1.6em;
  border-bottom: 1px #E6EAED solid;
  padding-bottom: 20px;
}

.list_control_en li {
  font-weight: bold;
  border-bottom: 1px #E6EAED solid;
  background-color: #1A237E;
  color:#ffffff;
  padding: 20px 0 0 80px;
}
.list_control_en li:before {
	content: '▶'; /* ←ここにリストマーカーにしたい文字列を設定 */
	    font-size:60%;
  vertical-align: 2px;
  margin-left:-60px;
  margin-right: 20px; 
}

.list_control_en li  {
  font-size:150%;
  font-weight:bold;
  color: #ffffff;
  padding: 20px 10px 20px 70px;
  text-decoration:none;
}

.list_control_en li span {
  font-weight: normal;
    font-size:60%;
  color:#ffffff;
  display: block;
    padding: 0;
    margin-left:-35px;
    margin-top:-8px;
}



.ourspecialty {
  background: #F4F7F9;
  padding: 20px;
}

.ourspecialty dt {
  font-size: 1.6em;
  font-weight: bold;
  color: #F07E0F;
  margin-bottom: 10px;
}

.ourspecialty dt::before {
  content: '';
  display: inline-block;
  background: no-repeat center/100% url(../images/icon_check.png);
  width: 22px;
  height: 22px;
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
  margin-top: -5px;
}

.navi_business .navi_business_focus a {
  color: #F07E0F;
}

.list_disease {
  margin-top: 40px;
}

.list_disease .disease_wrap {
  margin-bottom: 20px;
  padding: 20px;
  background: #F4F7F9;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}

.list_disease .disease_title {
  display: inline-block;
  text-align: center;
}

.list_disease .disease_title h4 {
  font-size: 1.6em;
  color: #F07E0F;
}

.list_disease .list_disease_right {
  padding-left: 20px;
}

.list_disease .list_disease_right li {
  margin-bottom: 5px;
}

.list_disease .list_disease_right li:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .disease_title {
    width: 50%;
  }
  .disease_title img {
    width: 50%;
  }
}

@media (min-width: 768px) {
  .disease_title {
    width: 25%;
    margin-right: 30px;
  }
  .disease_title img {
    width: 30%;
  }
  .disease_rows {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
  .disease_rows li {
    width: 50%;
  }
  .list_disease_right {
    width: 75%;
  }
}

h3.privacy_c{
   text-align: center;
      font-size:110%;
      margin-bottom:2em;
}

p.migi{
   text-align: right;
}

.title_center{
   margin: 50px 0 80px 0;
   text-align: center;
   font-size:210%;
   line-height: 2em
}

.sprits_center{
   margin:2.5em;
   text-align: center;
   font-size:125%;
   line-height: 2.5em
}

.sprits_center2{
   margin:2.5em;
   text-align: center;
   font-size:125%;
   line-height: 2.5em
   padding:150px;
   margin-bottom:100px;
   line-height: 2.5em;
}


div.spirits_sq{

}
.sp_dl{
    margin:20px 0;
    padding:20px;
    border: solid 1px;
    border-color: #404040;
    height:100%
    width:80%;
    margin:  0 auto;
    width:80%
}

div.m3-b{
width:85%; margin: 0 auto;

}

div.blue_sq{
overflow:hidden;
display:flex;
position:relative;
    margin:20px 0;
    padding:20px;
    border: solid 1px;
    border-color: #1A237E;

}
div.blue_sq2{
    margin:20px 0;
    padding:20px;
    border: solid 1px;
    border-color: #1A237E;

}
div.blue_sq2 img{
width: 130px;
display: block;
margin: 0 auto;
}
div.intas_l img{
width: 130px;
display: block;
margin: 0 auto;
padding:20px 0;
}

.m3_hidari{
display: inline-block; 
  min-width: 130px;
      margin:  0 ;
      padding:0;
    float: left;

}
.m3_hidari img{
  position: absolute;
  top: 50%;
  -webkit-transform : translate(-5%,-50%);
  transform : translate(-5%,-50%);
width: 130px;

}

.m3_migi{
display: inline-block; 
    float: left;
        width: 80%;


}
ul.sup_list{
    width: 50%;
    float: left;
    

}
	
.sup_list li:nth-child(odd){
	background: #E6E6FA;
	padding:10px;
	border:solid 1px #ffffff;
}
	
.sup_list li:nth-child(even){
	background:#F4F7F9;
	padding:10px;
	border:solid 1px #ffffff;
}


.float_no { 
    overflow: hidden;
    position: relative; 
    zoom:1; 

} 

.sp_dl dt{
    float: left;
     color:#404040;
     font-size:80%;
}
.sp_dl dd{
    padding-left:1.5em;
         color:#404040;
         font-size:80%;
}

ul.code_left{
    position: relative;
    padding: 0;
    marign: 0;
    list-style-type: none;
    }

ul.code_left li{
    border:none;
    border-left: solid 12px #F07E0F;
        padding: 0;
    marign: 0;
    padding-left: 2em;
    margin-bottom:4em;
    font-weight:normal;
}
ul.code_left li b{
    font-size: 1.6em;
}

ul.code_left li:last-of-type {
    border:none;
    border-left: solid 12px #F07E0F;
    padding-left: 2em;
    margin-bottom:0;
}

	


.ae_ttl{
  background-image: url("/images/icon_ae.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.spd_ttl{
  background-image: url("/images/icon_spd.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.pl_ttl{
  background-image: url("/images/icon_pl.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.cr_ttl{
  background-image: url("/images/icon_cr.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.icd_ttl{
  background-image: url("/images/icon_icd.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.vcd_ttl{
  background-image: url("/images/icon_vcd.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}


.mec_ttl{
  background-image: url("/images/icon_mec.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.adm_ttl{
  background-image: url("/images/icon_adm.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}

.pd_ttl{
  background-image: url("/images/icon_pd.png");
  background-size: 120px 120px;
  background-repeat: no-repeat;

  padding: 0px 0px 0px 140px; 
}


.intas-h4{
  float:left;
  width:350px;
  background-image: url("/images/logo_intas.png");
  background-size: 120px;
  background-repeat: no-repeat;
  background-position:30% 50% ;
}

.intas-h4_en{
  float:left;
  width:350px;
  background-image: url("/images/logo_intas_en.png");
  background-size: 120px;
  background-repeat: no-repeat;
  background-position:30% 50% ;
}

.intas-ul{
width:100%;
}

.intas-div{
overflow:hidden;
display:flex;
position:relative;

}

#framePrivacy{
         border: solid 1px #d0d0d0;
         height: 120px;
         margin:20px 0;
         padding: 1em;
         overflow: auto;
      }
.PrivacyT{
font-weight:bold;
      }
      
#framePrivacy p{
margin-bottom:1em;
      }

.mfp_buttons{
margin-top:20px;
}

.mfp_buttons_inner{
margin-top:20px;
         width:190px;
    margin: auto;

}

table.pubTb{
width:100%;
}

.pubTbl tr,td,th{
border-collapse: collapse;
border: 1px solid #d0d0d0;
line-height: 1.5;
padding:10px;


}

.pubTbl th{
	background:#F4F7F9;
}

h3.pub {
 font-size:120%;
 margin-bottom:20px;
}

p.pubTxt01{
 margin:20px 0;
 text-indent:-2em;
padding-left:2em;
}

p.pubTxt01 span{
font-weight:bold;
font-family:monospace;
}

p.pubTxt02{
text-indent:-2.5em;
padding-left:2.5em;
 margin:20px 0;
}

 p.pubTxt02 span{
font-family:monospace;
}

p.kk_message{
line-height: 1.75em;
}

table.formTbl01 tr,td,th{
  border:0;
}

/* 奇数行のスタイル */
table.formTbl01 tr:nth-child(odd){
  background-color:#F4F7F9;

}
 
/* 偶数行のスタイル */
table.formTbl01 tr:nth-child(even){
  background-color:white;

}

.origin_img{
width:50%;
float:left;

}

.origin_img h2{
font-family:serif;
font-weight:bold;
font-size:180%;
text-align:center;
  position: absolute;
  top: 40%;
  width:50%;
}
.origin_img h2 span{
font-family:serif;
font-weight:bold;
font-size:150%;
color:#c11920;
}
.add{
margin:20px 0;
padding:20px;
color:#fff;
background-color: #1A237E;

}
 p.rec_btn{
 text-align:center;
 font-weight:bold;
margin:40px auto;
padding:20px;
color:#fff;
background-color:#F07E0F;
width:250px;
}