body {
    color: #333c4e;
    font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
/* p{
    font-size: 19px;
}
@media only screen and (max-width: 979px) {
    p{font-size: 16px;}
} */
a {
    text-decoration: none;
}
img {max-width: 100%;}
.top-img {
  max-width: 100%;
  border: 1px solid #ccd8dd;
}
.logo-img { max-width: 110%;}
.carousel-item {
  transition: -webkit-transform .7s ease !important;
  transition: transform .7s ease !important;
  transition: transform .7s ease,-webkit-transform .7s ease !important;
}
ol.carousel-indicators {
  bottom: 0px!important;
  margin-bottom: 1.8rem;
}
@media only screen and (max-width: 599px) {
    .carousel-indicators {
        display: none;
    }
}
@media only screen and (max-width: 1366px) {
    ol.carousel-indicators {margin-bottom: 1rem;}
}
.btn-square {
    display: inline-block;
    padding: 0.5em 1em;
    text-decoration: none;
    background: #e60012;
    color: #FFF !important;
    border-radius: 3px;
    box-shadow: 0 2px 0 #ddd, 0 2.5px 0 rgba(0,0,0,.2);
    margin-left:20px;
}
.btn-square2 {
    background: #3076AD;
}
.btn-square:hover {
   box-shadow: none;
   transform: translateY(2px);
   text-decoration: none;
   color: #fff;
}
.btn-square:active {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
    border-bottom: none;
}
/*breadcrumb*/
.breadcrumb_list {
    padding-bottom: 20px;
}
 @media only screen and (max-width: 599px) {
        .breadcrumb { margin: 20px 6px;}
 }
.breadcrumb2 {
    width: 96%;
    margin: 10px -14px;
    padding-top: 0;
    font-size: 120%;
    background: #f6f6f6;
    padding-top: 30px;
}
 @media only screen and (max-width: 599px) {
        .breadcrumb2 { margin: 10px 10px;}
 }
 @media only screen and (max-width: 979px) and (min-width: 600px) {
        .breadcrumb2 { margin: 10px 60px;}
 }
 @media only screen and (max-width: 1366px) and (min-width: 1024px)  {
         .breadcrumb2 { margin: 10px 60px;}
 }
.brea {
    color: #5E5E5E;
    border-bottom: 1px dotted #999999;
}
.brea:hover {
    color: #212529;
    text-decoration: none;
}
/*header*/
div#header {
  margin-bottom: 10px;
}
#header .navbar-language {
    padding: 0.5rem 1rem 0;
}
#header .navbar-language .nav-link {
    padding: 0.3rem 0.5rem .3rem;
}
#header a {
    color: #333c4e;
}
#header a:hover {
    color: #f68e1f;
}
#header .navbar-brand img {
    height: 50px;
}
.navbar-brand_full {
    display: block;
    text-indent: -9999px;
    width: 295px;
    height: 56px;
    overflow: hidden;
    background-image: url(../images/iad_logo.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: cover;
}
.navbar-collapse {
    flex-grow: 0;
}
 @media only screen and (max-width: 599px) {
    .navbar-brand_full {
        background-image: url(../images/logo.png);
        width: 50px;
        height: 50px;
    }
 }
.navbar-brand_mini {
    display: none;
    text-indent: -9999px;
    width: 300px;
    height: 56px;
    overflow: hidden;
    background-image: url(../images/logo.png);
    background-position: left top;
    background-repeat: no-repeat;
}
.header_drawer_label {
    padding: 10px 8px;
}
.header_drawer_label > div {
    width: 22px;
    height: 16px;
    position: relative;
}
.header_drawer_label_hamburger {
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    background: #004E98;
    display: block;
    transition-property: opacity, top, transform;
    transition-duration: .4s;
}
.header_drawer_label_hamburger-1 { top: 0;}
.header_drawer_label_hamburger-2 { top: 50%;}
.header_drawer_label_hamburger-3 { top: 100%;}

/*menu*/
/*lever 1*/
#main_navbar .navbar-collapse > ul {
    min-height: 37px;
}
#main_navbar .navbar-collapse > ul > li {
    margin-left: 4px;
    margin-right: 4px;
}
#main_navbar .navbar-collapse > ul > li > a{
    font-weight: bold;
}
@media (max-width: 1200px) {
    #main_navbar .navbar-collapse > ul > li {
        margin-left: -10px;
    }
    .navbar-nav li {font-size: 15px;}
}
/*lever 2*/
#main_navbar .navbar-collapse > ul > li > ul {
    background: #4e5052;
    border-radius: 0;
}
#main_navbar .navbar-collapse > ul > li > ul > li > a {
    padding: 8px 1.75em 6px 1.2667em;
    color: #fff;
    white-space: nowrap;
}
#main_navbar .navbar-collapse > ul > li > ul > li > a:hover {
    background: #6e7173;
}
/*lever 3*/
#main_navbar .navbar-collapse > ul > li > ul > li > ul {
    background: #6e7173;
    border-radius: 0;
}
#main_navbar .navbar-collapse > ul > li > ul > li > ul > li > a {
    padding: 8px 1.75em 6px 1.2667em;
    color: #fff;
    white-space: nowrap;
}
#main_navbar .navbar-collapse > ul > li > ul > li > ul > li > a:hover {
    background: #e0e2e2;
    color: #4e5052;
}

#main_navbar .dropdown-toggle {
    position: relative;
}

#main_navbar .dropdown-menu {
    margin-top: 0;
}
#main_navbar .dropdown-menu .dropdown-toggle::after {
    vertical-align: middle;
    border-left: 4px solid;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent;
    position: absolute;
    top: 16px;
    right: 10px;
}
.dropdown-menu .dropdown .dropdown-menu {
    left: 100%;
    top: 0%;
    margin:0 20px;
    border-width: 0;
}

#main_navbar .dropdown-menu > li a:hover,
#main_navbar .dropdown-menu > li.show {
    transition: transform 0s 2s, opacity 0.3s 1s;
    background: #6e7173;
    color: white;
}
#main_navbar .dropdown-menu > li.show > a {
    color: white;
}
#main_navbar .logo-mini {
    display: none;
}
#main_navbar.is-scrolled {
    position: fixed;
    left: 0;
    width: 100%;
    animation-duration: 1s;
    animation-name: slideDown;
    z-index: 999;
    background: transparent !important;
}
#main_navbar.is-scrolled .container {
    box-shadow: 0 2px 3px 0 rgba(166, 166, 166, 0.14);
    margin-top: 0;
    background-color: #FFFFFF !important;
}

@keyframes slideDown {
    0%{transform:translate(0, -100%);}
    100%{transform:translate(0, 0);}
}
@media (min-width: 768px) {
    .dropdown-menu .dropdown .dropdown-menu {
        margin:0;
        border-width: 1px;
    }
    #main_navbar.is-scrolled { padding: 0;}
    #main_navbar.is-scrolled .logo-full { display: none}
    #main_navbar.is-scrolled .logo-mini { display: inline-block;}
}

@media (max-width: 768px) {
    #header .navbar-brand img { height: 40px;}
    #main_navbar .navbar-collapse {
        position: absolute;
        right: 0;
        top: 60px;
        z-index: 9999999;
        width: 100%;
        background: #f2f2f0;
    }
    #main_navbar .dropdown-menu {border: none;}
    #main_navbar .dropdown-menu .dropdown-toggle::after {
        border-top: 0;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
    }
    #main_navbar .dropdown-menu > li a:hover,
    #main_navbar .dropdown-menu > li.show {
        background: transparent;
        color: initial;
    }
    #main_navbar .dropdown-menu > li.show > a {
        color: initial;
    }
    #main_navbar .navbar-collapse > ul > li {
        padding-right: 20px;
    }
    #main_navbar .navbar-collapse a {
        padding: 14px 1.75em 12px 1.2667em !important;
        color: #333c4e;
        border-color: #e7e4e2;
        border-bottom: 1px solid #e7e4e2;
    }
    #main_navbar .navbar-collapse a:after {
        position: absolute;
        top: 20px;
        right: 10px;
    }
    /*lever 1*/
    #main_navbar .navbar-collapse > ul > li {
        margin-left: 20px;
    }
    /*lever 2*/
    #main_navbar .navbar-collapse > ul > li > ul {
        padding: 0 0 0 1.2667em;
        background: transparent;
        font-size: 0.9rem;
    }
    #main_navbar .navbar-collapse > ul > li > ul > li > a {
        color: initial;
    }
    #main_navbar .navbar-collapse > ul > li > ul > li > a:hover {
        background: transparent;
    }
    /*lever 3*/
    #main_navbar .navbar-collapse > ul > li > ul > li > ul {
        background: transparent;
        border-radius: 0;
        margin: 0 0 0 20px;
        padding-top: 0;
        padding-bottom: 0;
    }
    #main_navbar .navbar-collapse > ul > li > ul > li > ul > li > a {
        color: initial;
    }
    #main_navbar.is-scrolled {
        top: 0px;
        padding: 0px;
    }
}
/* about gray */
.about_gray {
   background: #f9f9f9;
   padding:60px 0px;
   margin: 80px 0 0 0;
}
.box_gray {
   background: #f9f9f9;
   padding: 25px 25px;
}
/* recruit */
.recruit_img {
   width: 20.458%;
   text-align: left;
}
.recruit_text {
   width: 57.458%;
   float: right;
   margin-right: 200px;
}
.recruit_text p {
   font-size: 1.75rem;
}
.rec-center{
   text-align: center;
}
.kenko-mt{
    margin-top: 25px;
}
.company-work{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-left: 85px;
    margin-right: 85px;
}

@media only screen and (max-width: 599px) {
       .recruit_text{width: 100.458%;float: none;margin-right: auto;}
       .recruit_img {width: 100.458%;text-align: center;}
       .rec-center {text-align: center;margin-right: auto;margin-top:10px;}
       .csr-mt {margin-top: 15px;}
       .kenko-mt {margin-top: 15px;}
       .company-work {display: block;margin: 0px;}
}
@media only screen and (max-width: 768px) and (min-width: 600px) {
    .company-work {display: block;margin: 0px;margin-left: 115px;}
}
@media only screen and (max-width: 979px) and (min-width: 600px) {
       .recruit_text{width: 69.458%;float: right;margin-right: auto;}
       .recruit_img {width: 29.458%;text-align: left;}
       .csr-mt {margin-top: 15px;}
       .kenko-mt {margin-top: 15px;}
}
@media only screen and (max-width: 1366px) and (min-width: 1024px)  {
       .recruit_text{width: 70.458%;float: right;margin-right: auto;}
       .recruit_img {width: 25.458%;text-align: left;}
       .csr-mt {margin-top: 15px;}
       .kenko-mt {margin-top: 15px;}
}
/*page content*/
.page-content {
    padding: 30px 0 15px 0px;
}
.title, .title_company {
  display: block;
  margin: 0 0 40px 0;
  font-size: 18px;
  font-weight: bold;
}
.title_company {
  margin: 20px 0 15px 20px;
}
.title_1 {
  display: block;
  font-weight: bold;
  font-size: 13px;
}
.title_2 {
  display: block;
  margin-top: 80px;
  font-weight: bold;
  font-size: 13px;
}
.title_3 {
  display: block;
  margin: 10px 0 25px 0;
  font-size: 18px;
  font-weight: bold;
}
.top_title {
   margin-top: 20px;
}
.support-t{
    margin-top: 70px;
}
 @media only screen and (max-width: 979px) and (min-width: 600px) {
        .title {margin-top: 43px;}
}
.title .title-heading-left {
    display: inline-block;
    position: relative;
    font-size: 32px;
    border-bottom: solid 3px #9CBECC;
    color: #444444;
    font-weight: bold;
}
 @media only screen and (max-width: 599px) {
        .title .title-heading-left {
               font-size: 23px;
        }
 }
.title .title-heading-left:after {
    content: "";
    position: absolute;
    width: 20%;
    max-width: 200px;
    height: 2px;
    border-bottom: solid 3px #175B80;
    bottom: -3px;
    left: 0 !important;
    transform: translate(0);
}

table {
    width: 100%;
    vertical-align: middle;
    border-collapse: collapse;
  }
  .middle {
    vertical-align: middle;
  }
  tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
  }
  li a {
    color: #444444;
  }
  .mini {
    border: none;
  }
  table th.tplus, table td.tplus {
      border-top: solid 1px #CCC;
  }
  table th.lplus, table td.lplus {
      border-left: solid 1px #CCC;
  }
  th.green {
      color: #FFF;
      /* background: #25305c; */
      background: #175B80;
  }
  #fw {
      font-size: 120%;
  }
  #fw_small{
      font-size: 90%;
      font-weight: bold;
  }
  .sp th,.sp td {
      padding: 20px;
      border-left: solid 1px #CCC;
      border-right: solid 1px #CCC;
      border-bottom: solid 1px #CCC;
      width: 12%;
      line-height: 150%;
      font-size: 100%;
      text-align: leftr;
  }
  @media only screen and (max-width: 599px) {
         .sp th,.sp td {font-size: 50%;}
  }
  table td {
      background: #FFF;
  }
  .f1 td {
      background: #F1F1F1;
  }
  th.tal {
      text-align: left;
  }
  .help1, .help2 {
      width: 100%;
      float: inherit;
  }
  .help2 {
      width: 45%;
      float: right;
  }
  .help1 {
      width: 45%;
      float: left;
  }
   @media only screen and (max-width: 599px) {
          .help2 {
             width: 100%;
             float: none;
          }
          .help1 {
             width: 100%;
             float: none;
          }
   }

/*----------------------button設定--------------------*/
.btn_button {
    text-align: center;
    background-color:#ffffff;
    border: 2px solid #25305c;
    border-radius: 18px;
    color:#25305c;
    margin-top:20px;
    cursor:pointer;
    padding:6px 20px;
    margin-bottom:10px;
 }
 .btn_button:hover {
    background: #25305c;
    color: #FFFFFF;
    text-decoration: none;
 }
 .btn_button p{
    font-size: 17px;
    margin: 0 0 0 0px!important;
 }
 .btn_button p:after {
    font-family: 'Font Awesome 5 Free';
    content: "\f0a9";
    font-weight: 900;
    margin-left: 10px;
 }
 /*----------------------button設定--------------------*/
 .download_button {
    text-align: center;
    background-color:#ffffff;
    padding:8px 44px;
    border: 2px solid #25305c;
    border-radius: 18px;
    color:#25305c;
    margin-top:20px;
    cursor:pointer;
 }
 .download_button p {
    font-size: 15px;
 }
 .lead_button {
    background-color:#ffffff;
    padding: 0px 0px;
    border: 2px solid #25305c;
    border-radius: 18px;
    color:#25305c;
    cursor:pointer;
 }
 .lead_button p {
    font-size: 15px;
 }
 .recruit-button {
   background-color:#ffffff;
   padding:8px 20px;
   border: 2px solid #25305c;
   border-radius: 15px;
   color:#25305c;
   padding-left:80px;
   padding-right:80px;
   margin-top:20px;
   cursor:pointer;
 }
 .recruit-button p {
   font-size: 18px;
 }
 .interview_button {
   background-color: #ffffff;
   font-size: 18px;
   padding: 8px 20px;
   border: 2px solid #25305c;
   border-radius: 15px;
   color: #25305c;
   cursor: pointer;
 }
  @media only screen and (max-width: 1366px) and (min-width: 1024px)  {
     .download_button {padding: 8px 31px;}
  }
  @media only screen and (max-width: 1000px) and (min-width: 768px) {
     .interview_button {font-size: 13px;}
     .recruit-button p { font-size:18px;}
  }
  @media only screen and (max-width: 979px) and (min-width: 600px) {
        .lead_button p {font-size:10px;}
        .download_button {padding: 8px 75px;}
  }
  @media only screen and (max-width: 599px) {
          .interview_button {font-size: 13px;}
          .contact_button{margin-right:0px;}
          .right{text-align: center;}
          .recruit-button{padding-left: 40px;padding-right: 40px;}
          .recruit-button p{font-size: 17px;}
  }
  @media only screen and (max-width: 320px) {
          .download_button {padding: 8px 34px;}
  }
  @media only screen and (max-width: 360px) and (min-width: 321px) {
          .download_button {padding: 8px 36px;}
  }
 .recruit-button:hover, .interview_button:hover, .lead_button:hover, .download_button:hover {
    background: #25305c;
    color: #FFFFFF;
    text-decoration: none;
 }
 .recruit-button p::after, .interview_button::after, .lead_button p::after, .sp-btn::after {
   font-family: 'Font Awesome 5 Free';
   content: "\f0a9";
   font-weight: 900;
   margin-left: 10px;
 }
 .download_button p::before {
   font-family: 'Font Awesome 5 Free';
   content: "\f019";
   font-weight: 900;
   margin-right: 10px;
 }
 .carousel-item .active {
   position: relative;
 }

/*---------contact-button--------*/
.contact-button, .contact-button2, .top-images, .contact-button img {
    width:100%
  }
  .contact-button {
    padding-top: 60px;
  }
  .cv-btn-mt{
      margin-top: 30px;
  }
  @media screen and (min-width: 750px) {
     .contact_1, .top-1 { display:block;}
     .contact_2, .top-2 { display:none;}
  }
  @media screen and (max-width: 750px) {
     .contact_1, .top-1 { display:none;}
     .contact_2, .top-2 { display:block;}
     .cv-btn-mt{margin-top: 0;}
  }
  p.guide {
    margin: 10px 0px 10px 15px;
  }
  .dlbox-l {
    margin-bottom: 30px;
  }


/*========= CV btn =========*/
.contact-button {
    margin-top: 100px;
    background-image: url(../images/contact/CVimage_lp_1920.jpg);
    background-position: center;
    background-size: cover;
}
.container-CV {
    margin-top: 0;
    text-align: center;
    padding:0 25px;
}	
.title-CV1 {
    display: inline-block;
	text-align:left !important;
    position: relative;
    font-size:32px;
	font-weight:700;
    color: #333c4e;
    line-height: 40px;
    text-shadow: 0px 1px 1px #808080;
    margin-bottom: 0;
}
.title-CV2 {
    display: inline-block;
	text-align:	center;
    position: relative;
    font-size:20px;
	font-weight:400;
    color: #333c4e;
    line-height: 40px;
    text-shadow: 0px 1px 1px #808080;
}
.cvlp{
	text-align:center;
}
.cv-text p{
    font-size: 24px;
}

.btn_buttonLP2 {
    padding: 15px 70px;
    color: #fff;
    /* background-color: #ffba00; */
    background-color: #14416d;
    border: 2px #000;
    text-decoration: none;
    line-height: 2.0em;
    margin:50px 0 20px 0;
    border-radius: 10px;
    width:50%;
    box-shadow: 0px -2px 3px 3px #0c355e  inset;
    cursor: pointer;
  }
  .btn_buttonLP2:hover {
    background: rgba( 20, 65, 109, 0.8);
    }
  .btn_buttonLP2 p{
     font-size: 28px;
     font-weight: 600;
     margin: 0 0 0 0px!important;
  }
  .btn_buttonLP2 p:after {
     font-family: 'Font Awesome 5 Free';
     /* content: "\f061"; */
     content: "\f0a9";
     font-size: 26px; 
     font-weight: 600;
     margin-left: 20px;
  }

  .btn_buttonLP3 {
    padding: 15px 70px;
    color: #fff;
    /* background-color: #036eb8; */
    background-color: #f69021;
    border: 2px #fff;
    text-decoration: none;
    line-height: 2.0em;
    margin:50px 0 50px 0;
    border-radius: 10px;
    width:50%;
    box-shadow: 0px -2px 3px 3px #e17d11  inset;
    cursor: pointer;
  }
  .btn_buttonLP3:hover {
      background: rgba( 246, 144, 33, 0.8 );
  }
  .btn_buttonLP3 p{
     font-size: 28px;
     font-weight: 600;
     margin: 0 0 0 0px!important;
  }
  .btn_buttonLP3 p:after {
     font-family: 'Font Awesome 5 Free';
     /* content: "\f061"; */
     content: "\f0a9";
     font-size: 26px; 
     font-weight: 600;
     margin-left: 20px;
  }
  
    
@media only screen and (max-width: 599px) {
    .title-CV1 {font-size:22px;}	
    .title-CV2 {font-size:16px;line-height: 1.5rem;text-shadow: 0px 1px 2px #808080;}
    .cv-mb{margin-bottom: 0;}
    .btn_buttonLP2 {padding: 10px 10px;width:100%;margin-top: 30px;}
    .btn_buttonLP2 p{font-size: 20px;}
    .btn_buttonLP2 p:after {font-size: 18px; }
    .cv-text p {font-size: 17px;}
    .contact-button{
    margin-top: 45px;
    padding-top: 40px;
    background-image: url(../images/contact/CVimage_lp_750.jpg);}
    .btn_buttonLP3 {padding: 10px 10px;width:100%;}
    .btn_buttonLP3 p{font-size: 17px;}
    .btn_buttonLP3 p:after {font-size: 18px; }
      
}
@media only screen and (max-width: 768px) and (min-width: 600px) {
    .contact-button{margin-top: 60px;padding-top: 40px;}
    .cv-text p {font-size: 18px;}
    .btn_buttonLP2{margin-top: 30px;}
    /* .contact-button{background-image: url(../images/contact/CVimage_lp_750.jpg);} */
    .btn_buttonLP2, .btn_buttonLP3{width: 85%;}
}
@media only screen and (max-width: 979px) and (min-width: 600px) {
    .btn_buttonLP2, .btn_buttonLP3{width: 85%;}
}

#footer{
    padding: 0 0 0 30px;
    margin: 60px 0 15px 0;
}
#footer ul a {
    text-decoration: none;
    color: #5E5E5E;
}
#footer a:hover {
    color: #212529;
    text-decoration: underline;
}
.copyright-iad {
    color: #5E5E5E;
    text-align: right;
    font-size: 77%;
}
.copyright-iad a {
    color: #5E5E5E;
}

/*========= アイキャッチバナー sliderの＜＞アイコン修正 =========*/
.carousel-control-prev-icon,
.carousel-control-next-icon {
  background: none;
}

.carousel-control-prev-icon::before {
  content: "\f053"; /* Font Awesomeのアイコンコード */
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1.5rem;
}

.carousel-control-next-icon::before {
  content: "\f054"; /* Font Awesomeのアイコンコード */
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 1.5rem;
}

/*========= 法人データまとめページ =========*/
.slider-home{
    position: relative;
}

/* sliderbutton */
.slider-button{
    position: absolute;
    top: 68%;
    left: 18%;
}
.slider-button a {
    background: #E60012;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: auto;
    max-width: 250px;
    padding: 10px 50px;
    font-family: "Noto Sans Japanese";
    text-decoration: none;
    color: #fff;
    line-height: 1.8;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    font-size: 1.5rem;
}
.slider-button a:after {
  content: "";
  position: absolute;
  top: 55%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 12px;
  height: 12px;
  border-top: solid 3px currentColor;
  border-right: solid 3px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.slider-button a:hover {
  background: #e67881;
  color: #FFF;
}
.slider-button a:hover:after {
  right: 1.4rem;
}

@media only screen and (max-width: 768px) {
    .slider-button{top: 62%;left: 23%;}
    .slider-button a {padding: 3px 45px;font-size: 1.1rem;}
    .slider-button a:after {width: 10px;height: 10px;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .slider-button{top: 62%;left: 18%;}
    .slider-button a {padding: 3px 45px;font-size: 1.1rem;}
    .slider-button a:after {width: 10px;height: 10px;}
}
  @media only screen and (max-width: 1366px) and (min-width: 1024px) {
    .slider-button{top: 65%;left: 18%;}
    .slider-button a {padding: 3px 45px;font-size: 1.1rem;}
    .slider-button a:after {width: 10px;height: 10px;}
}

/* Block1 */

.lined-title {
  display: flex;
  align-items: center;
  text-align: center;
  font-weight: bold;
  margin: 20px 0;
}

.lined-title::before,
.lined-title::after {
  content: "";
  flex: 1;
  border-top: 1px solid #ccc;
  margin: 0 15px;
}
.lined-title h1, .lined-title h2 {
    font-size: 200%;
    font-weight: bold;
    color: #444;
}
.ma-bt{
    margin-bottom: 20px;
}
.sp-img{
    display: none;
}

@media only screen and (max-width: 768px) {
    .lined-title h1, .lined-title h2 {font-size: 150%;}
    .lined-title::before, .lined-title::after {display: none;}
    .sp-img{display: block;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .lined-title h1, .lined-title h2 {font-size: 190%;}
}

/* BOX6個 */
 .custom-card {
      border-radius: 12px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.1);
      transition: transform 0.2s ease;
      height: 100%;
    }
    .custom-card:hover {
      transform: translateY(-4px);
    }
    .card-img-top {
      width: 45%;
      height: 45%;
      object-fit: contain;
      margin: 0 auto;
      padding: 1rem 0 0.5rem;
    }
    .card-link {
      color: #E60012;
      font-weight: bold;
      text-decoration: none;
      font-size: 1.2rem;
    }
    .link-right{
        text-align: right;
    }
    .card-link:hover {
      text-decoration: underline;
    }
    .card-title h2 {
      font-size: 1.5rem;
      font-weight: bold;
      background-color: #444444;
      color: white;
      padding: 0.9rem;
      border-radius: 0.5rem 0.5rem 0 0;
      text-align: center;
    }

    .card-body p, .card-body li{
        color: #333c4e;
    }

.downlink a {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 80px;
  height: 80px;
  background-color: #C7C7C7;
  border-radius: 50vh;
  transition: 0.3s;
}

.downlink a::after {
  content: '';
  width: 7px;
  height: 7px;
  border-top: 3px solid #444;
  border-left: 3px solid #444;
  transform: rotate(225deg);
  transition: 0.3s;
}

.downlink span {
  width: 0px;
  height: 0px;
  visibility: hidden;
}

.downlink a:hover {
  background-color: #175B80;
}

.downlink a:hover::after {
  border-top: 3px solid #f2f2f2;
  border-left: 3px solid #f2f2f2;
  transform: translateY(5px) rotate(225deg);
}

    
@media only screen and (max-width: 768px) {
    .card-title h2 {font-size: 1.2rem;}
    .card-link {font-size: 1rem;}
}
@media only screen and (max-width: 990px) and (min-width: 769px) {
    .card-title h2 {font-size: 1.1rem;}
    .card-title .tb-only{padding: 19px 0;}
    .card-link {font-size: 1rem;}
}
  @media only screen and (max-width: 1366px) and (min-width: 991px) {
    .card-title h2 {font-size: 1.1rem;}
        .card-link {font-size: 1rem;}
}

/* Block2 */

/* flex左右 */
 .service-title h3, .service-title h2 {
      background-color: #444444;
      color: white;
      font-size: 1.2rem;
      font-weight: bold;
      padding: 7px 30px;
      display: inline-block;
      margin-bottom: 1rem;
      border-radius: 5px;
    }
    .service-title p {
        font-size: 2.2rem;
        font-weight: bold;
        color: #444444;
    }
    .btn-red {
      background-color: #e60012;
      color: white;
      border: none;
      border-radius: 20px;
      font-size: 1.2rem;
      font-weight: bold;
      padding: 7px 50px;
      border: 2px solid #e60012;
    }
    .btn-red:hover {
      background-color: #fff;
      color: #e60012;
      border: 2px solid #e60012;
    }
    .text-c{
        /* text-align: center; */
        margin-top: 20px;
    }
.indent-color{
    color: #444444;
    margin-right: 5px;
    font-weight: bold;
}
.service-point{
    padding-left: 0;
}
.service-point li{
    margin: 0 0 7px 10px;
    font-size: 1.2rem;
}
.about_gray2{
   background: #ededed;
   padding:60px 0px;
   margin: 80px 0 0 0;
}
.gray-pd{
    padding-top: 50px;
}
.service-title .emphasis-red{
    color: #e60012;
}
.w-70{
    width: 70% !important;
}
.w-65{
    width: 65% !important;
}

@media only screen and (max-width: 768px) {
    .sp-column{flex-direction: column-reverse;}
    .about_gray {padding-top: 30px;margin-top: 30px;}
    .lined-title{display: block;}
    .gray-pd{padding-top: 0;}
    .service-title{text-align: center;}
    .service-title p{font-size: 1.5rem;text-align: left;}
    .service-point li{font-size: 1rem;}
    .btn-red {font-size: 1rem;}
    .about_gray2{padding-top: 0;}
    .text-c{text-align: center;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .service-title h3{font-size: 1rem;}
    .service-title p{font-size: 1.3rem;}
    .service-point li, .btn-red{font-size: 1rem;}

}

/* Block3 */
.t-mt{
    margin-top: 80px;
}
.width-c{
    text-align: center;
    padding: 0 20px;
}
.text-l{
    text-align: start;
}
.box-pd{
    padding: 0 20px;
}
.services-merit b{
    color: #175B80;
}

@media only screen and (max-width: 768px) {
    .t-mt{margin-top: 50px;}
    .services-merit b {font-size: 1.6rem;}
    .sp-mt{margin-top: 20px;}
    .services-merit img{margin-bottom: 0;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
        .services-merit b {font-size: 1.5rem;}
}


/* Block4 */
.reason-card {
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: left;
}
.reason-card img {
    width: 100%;
    border-radius: 10px 10px 0 0;
}
.reason-card .list-group-item {
    border: none;
    font-size: 1.1rem;
}
.reason-card .list-group-item i {
    color: #175B80;
}
.fw-bold{
    color: #444444;
    text-align: center;
    margin-bottom: 20px;
}
.reason-text li{
    padding-left: 0;
}
.reason-text .mb{
    margin-bottom: 28px;
}
.card-body{
    padding-top: 0;
}

@media only screen and (max-width: 768px) {
    .reason-card .list-group-item {font-size: 1rem;}
    .reason .card-body {padding-left: 0;padding-right: 0;}
    .reason-text .mb {margin-bottom: 0;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .reason-card .list-group-item {font-size: 1rem;}
    .fw-bold{font-size: 1.3rem;}
    .reason .card-body {padding-left: 0;padding-right: 0;}
    .reason-card {height: 460px;}
}
  @media only screen and (max-width: 1366px) and (min-width: 1024px) {
    .reason-card .list-group-item {font-size: 1rem;}
    .fw-bold{font-size: 1.5rem;}
    .reason-card {height: 500px;}
}

/* Block5 */
 .step-box {
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    padding: 15px;
    border: solid 1px #e5e5e5;
}
.step-number {
    background-color: #175B80;
    color: #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    margin-right: 20px;
}
.step-number2{
    width: 44px;
}
.step-content {
    flex-grow: 1;
    display: flex;
}
.step-content h3 {
    font-size: 1.5rem;
    font-weight: bold;
    color: #175B80;
    margin: auto 0;
    width: 21%;
}
.step-content p {
    margin: auto 0;
    margin-left: 35px;
}
.step-image {
    width: 150px;
    height: 85px;
    background-color: #ccc;
}
.arrow {
    text-align: center;
    margin: 10px 0;
}
.arrow i {
    font-size: 34px;
    color: #C7C7C7;
}
.w-small{
    width: 68%;
}
.w-up{
    width: 160px;
}

@media only screen and (max-width: 768px) {
    .step-content {display: block;}
    .step-image {display: none;}
    .step-content h3 {width: 100%;font-size: 1.2rem;margin-bottom: 10px;}
    .w-small {width: 100%;}
    .step-content p {margin-left: 0;}
    .step-number{background: none;color: #003C87;width: 30px;font-size: 1.2rem;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .step-content {display: block;width: 80%;}
    .step-content h3 {width: 100%;font-size: 1.2rem;margin-bottom: 10px;}
    .w-small {width: 100%;}
    .step-content p {margin-left: 0;}
    .step-image {background: none;height: 80px;}
    .w-up{width: 150px;}
    .step-number{width: 35px;height: 31px;}
}
  @media only screen and (max-width: 1366px) and (min-width: 1024px) {
    .step-content {width: 80%;}
    .step-content h3 {font-size: 1.3rem;}
    .step-image{background: none;}
    .w-up{width: 150px;}
    .step-number2{width: 40px;}
}

/* Block6 */
.t-mt2{
    margin-top: 140px;
}
@media only screen and (max-width: 768px) {
    .t-mt2{margin-top: 80px;}
}

/*========= 企業・部門情報提供サービス =========*/

/* Block1 */
.service-title .appeal-point{
    font-size: 2.2rem;
    font-weight: bold;
    background: none;
    color: #444444;
    padding: 0;
    line-height: 1.6;
    margin-bottom: 2rem;
}
.service-point i{
    color: #175B80;
    margin-right: 1rem;
}
.cap-number{
    font-size: 2.8rem;
    font-weight: bold;
    color: #444444;
}
.service-title .cap-text{
    margin-bottom: 0;
}
.division-cap{
    display: flex;
    align-items: center; /* 子要素を上下中央揃え */
    gap: 15px; /* 余白は必要に応じて調整 */
}

@media only screen and (max-width: 768px) {
    .sp-none{display: none;}
    .sp-mb{margin-bottom: 10px;}
    .cap-number{font-size: 2rem;}
    .service-title h2{padding: 7px 20px;}
    .service-title .appeal-point{font-size: 1.6rem;margin: 10px 0 15px 0;text-align: left;}
    .sp-column2{flex-direction: column-reverse;}
    .sp-gray-pb{padding-bottom: 20px;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .service-title h2{font-size: 1rem;}
    .cap-number {font-size: 2.2rem;}
    .service-title .appeal-point{font-size: 1.3rem;margin: 5px 0 15px 0;}
    .sp-gray-pb{margin-top: 40px;}
    .sp-none{display: none;}
}
  @media only screen and (max-width: 1366px) and (min-width: 1024px) {
    .sp-none{display: none;}
}

/* Block2*/
.center{
    text-align: center;
    margin: 15px auto;
}
.merit-point{
    color: #175B80;
}
.merit-box{
    padding: 0 20px 10px 20px;
}
@media only screen and (max-width: 768px) {
    .merit-point, .merit-box p{padding: 0 15px 0 15px;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .merit-point, .merit-box p{padding: 0 15px 0 15px;}
    .tb-merit{height: 570px;}
    .tb-merit p{font-size: 1rem;}
}
  @media only screen and (min-width: 1024px) {
    .tb-merit{height: 550px;}
}

/* Block4*/

.pricing-box {
    background-color: #fffaf0;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 20px;
}
.section-title {
    background-color: #ffeebf;
    font-weight: bold;
    padding: 12px 15px;
    border-radius: 5px;
    margin-bottom: 15px;
    text-align: center;
    font-size: 1.5rem;
    color: #444444;
}
.pricing-table, .option-title {
    font-size: 1.5rem;
}
.pricing-table td {
    padding: 15px;
    color: #444444;
}
.pricing-table .bold{
    font-weight: bold;
    color: #444444;
}
.option-title {
    font-weight: bold;
    margin-bottom: 10px;
    width: 50%;
    color: #444444;
}
.pricing-box i{
    text-indent: 1rem;
    width: 45px;
    margin-left: 50px;
}
.pricing-box .price{
    font-size: 2rem;
    margin: 0 15px 0 10px;
}
.option-flex{
    display: flex;
    padding: 15px;
}
.option-flex p{
    width: 65%;
    margin-bottom: 0;
}
.example-text{
    font-weight: bold;
    font-size: 1.2rem;
    margin-top: 50px;
    color: #444444;
}
.data-estimates th, .data-estimates .attention{
    font-weight: bold;
    font-size: 1.2rem;
}
.option-flex .sp-only, .option-flex .sp-only2{
    display: none;
}
@media only screen and (max-width: 768px) {
    .section-title {font-size: 1.2rem;}
    .pricing-table td {display: block;width: 100%;font-size: 1.2rem;text-align: center;}
    .pricing-table tr {display: block;margin-bottom: 15px;}
    .pricing-box .price {font-size: 1.2rem;margin: 0;}
    .pricing-box i{margin-left: 0;text-indent: 0;width: 25px;}
    .option-flex {flex-direction: column;align-items: flex-start;}
    .option-title {width: 100%;margin-left: 0;font-size: 1.2rem;text-align: center;}
    .option-flex p {width: 100%;margin-left: 0;}
    .option-flex .sp-title{margin-left: 0;text-indent: 0;width: auto;}
    .sp-op-center{text-align: center;}
    .option-flex .sp-only2{display: block;}
    .example-text{font-size: 1.1rem;}
    .cost-image th{width: 80%;padding: 10px;}
    .cost-image td{padding: 10px;font-size: 0.7rem;}
    .data-estimates th, .data-estimates .attention{font-size: 0.9rem;}
    .sp-small{font-size: 0.9rem;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .pricing-box i{margin-left: 0;text-indent: 0;width: 30px;}
    .example-text{font-size: 1.1rem;}
    .option-flex .sp-only{display: block;}
}
@media only screen and (max-width: 1366px) and (min-width: 1024px) {
    .option-flex .sp-only{display: block;}
    .sp-op-center{text-align: center;}
    .option-flex .sp-title{margin-left: 0;text-indent: 0;}
    .option-title{width: 33%;}
}

/* Block5*/
   .feature-box {
      text-align: center;
      margin-bottom: 30px;
    }
    .feature-box img {
      width: 100%;
      max-width: 260px;
      height: auto;
      background-color: #ccc; /* 仮の背景 */
      display: block;
      margin: 0 auto 15px;
    }
    .feature-title {
      font-weight: bold;
      font-size: 1.2rem;
      margin-bottom: 10px;
      color: #444444;
    }
    .feature-text {
      font-size: 1rem;
      color: #333;
      margin: 15px 20px;
      text-align: start;
    }
    .feature-link{
        color: #333C4E;
    }
    .feature-link :hover{
        text-decoration: underline;
        color: #175B80;
        opacity: 0.8;
    }

/* Block6*/
.t-mt3{
    margin-top: 100px;
}
@media only screen and (max-width: 768px) {
    .t-mt3{margin-top: 50px;}
}

/*========= インテントデータ =========*/
/* Block1*/
.intent_realization_img{
    width: 90%;
}
.box-h .tb-merit{
    height: 550px;
}
.pd-25{
    padding-top: 25px;
}
@media only screen and (max-width: 768px) {
    .intent_realization_img{width: 100%;margin: 15px 0 15px 0;}
    .box-h .tb-merit{height: auto;}
}
@media only screen and (max-width: 1023px) and (min-width: 769px) {
    .box-h .tb-merit{height: 580px;}
}
  @media only screen and (max-width: 1366px) and (min-width: 1024px) {
    .box-h .tb-merit{height: 580px;}
}

/*========= データクレンジング =========*/
/* Block4*/
.pricing-box2 i{
    margin-left: 0;
}
.pricing-box2 td{
    text-align: center;
}
th.gray{
    background: #F1F1F1;
}
.price-column th{
    width: 30%;
}

/*========= ページトップのためのCSS ===============*/
/*リンクの形状*/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	background:#165B81;
	border-radius: 5px;
	width: 60px;
	height: 60px;
	color: #fff;
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:1rem;
    font-weight: bold;
	transition:all 0.3s;
}
@media only screen and (max-width: 599px) {
    #page-top a{width: 45px;height: 45px;font-size: 0.8rem;}
}
@media only screen and (max-width: 768px) and (min-width: 600px) {
    #page-top a{width: 45px;height: 45px;font-size: 0.8rem;}
}
#page-top a:hover{
	background: #777;
}

/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right: 10px;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}
