@media only screen and (min-width: 1024px) and (max-width: 1399px) {
 .masonry-blog .s-post,
 .masonry-blog.large-post .s-post {
  width:31%;
  }
 .port-5col .port-item {
  width:25%;
  }
   
 }
 
@media only screen and (min-width: 980px) and (max-width: 1023px) {
 .masonry-blog .s-post,
 .masonry-blog.large-post .s-post {
  width:33%;
  }
 .iso-pro-list.fivecol .item,
 .iso-pro-list.fourcol .item {
  width:24.9%;
 } 
 }
@media only screen and (max-width: 980px) {
 .dl-menuwrapper{
  display:block;
  position:absolute;
  top:0;
  right:0;
 }
 .vertical-header header .push-area,
 .vertical-header.h-right header .push-area {
  display:none;
  }
 .vertical-header .nav-container {
  left:0;
  right:0;
  width:100%;
  background:#fff;
  height:66px;
  border-bottom: 1px solid #ececec;
  box-shadow:0 3px 2px 0 rgba(0,0,0,.03);
  min-height:67px;
  }
 
 .vertical-header.h-right .nav-container {
  right:0;
  }   
 .vertical-header .logo {
  margin:5px 10px;
  } 
 .vertical-header .main-container,
 .vertical-header.h-right .main-container {
  padding:0;
  }  
  
 .main-menu {
  display:none;
 }
 .wrapper {
  overflow:hidden;
 }
 
 .topbar .container .t-left {
  display:none;
 }
 #error404 {
 padding:50px 0;
 }
 .iso-pro-list.fivecol .item,
 .iso-pro-list.fourcol .item {
  width:32.9%;
 }
}
@media only screen and (min-width: 768px) and (max-width: 979px) {
 .all-products li {
  width:50%;
  }
 .post .it-entry-meta .button-group a.liked {
  margin:10px 0 0 0;
  }
 .masonry-blog .s-post,
 .masonry-blog.large-post .s-post {
  width:49%;
  }
 .port-5col .port-item {
  width:25%;
  }
 .iso-pro-list.fivecol .item,
 .iso-pro-list.fourcol .item {
  width:32.9%;
 }  
  
}
@media only screen and (max-width: 767px) {
 .copyright div > div.col-sm-12 {
  text-align:center;
  line-height:20px;
  } 
 .copyright div > div.col-sm-12 .socials {
  float:none !important;
  margin:20px 0;
  text-align:center;
  }
 .all-products li {
  width:50%;
  }
 .post .it-entry-meta .button-group a.liked {
  margin:10px 0 0 0;
  }
 .post-content .img-post {
  max-width:50%;
  }   
 }
@media only screen and (max-width: 639px) {
 .about-info .container > div {
  width:50%;
  }
 .iso-pro-list.fivecol .item,
 .iso-pro-list.fourcol .item ,
 .iso-pro-list.threecol .item {
  width:49.9%;
 }
 .home-4 .port-filter {
  width:100%;
  position:relative;
  padding-top:80px;
  }
 .home-4 .h4-portfolio {
  padding:0;
  }
 }
@media only screen and (min-width: 640px) and (max-width: 767px) {
 #onepage-1 .newsletter {
  text-align:center;
  }
 #onepage-1 .newsletter i {
  float:none;
  margin-bottom:20px;
  text-align:center;
  }
 #onepage-1 .newsletter .info-form {
  width:100%;
  display:block;
  text-align:center;
  }
 #onepage-1 .newsletter .info-form input,
 #onepage-1 .newsletter .info-form button {
  width:100%;
  display:block;
  margin-top:10px;
  }
 #onepage-1 .newsletter .info-form input {
  margin-top:0;
  } 
}
@media only screen and (min-width: 568px) and (max-width: 639px) {
 .post .it-entry-meta .button-group a.liked {
  margin:0 10px 0 0;
  }
 .port-3col .port-item,
 .port-4col .port-item,
 .port-5col .port-item {
  width:50%;
  }
 .h1-main ul {
  min-height:80px;
  } 
 .h1-main ul li {
  font-size:30px;
  line-height:35px;
  }
} 
}
@media only screen and (min-width: 480px) and (max-width: 567px) {
 .port-3col .port-item,
 .port-4col .port-item,
 .port-5col .port-item {
  width:50%;
  }
 .h2-intro .grid-layout.three-col li,
 .grid-layout.three-col li,
 .grid-layout.four-col li,
 .grid-layout li {
  width:50%;
  }
 .text-heading.bold h1 {
  font-size:20px;
  }
 #onepage-1 #home .middle-content h1 {
  font-size:30px;
  line-height:normal;
  margin-top:0;
  }
 #onepage-1 #home .middle-content h3 {
  font-size:20px;
  line-height:normal;
  }
 .h1-main ul {
  min-height:80px;
  } 
 .h1-main ul li {
  font-size:30px;
  line-height:35px;
  }
 .btn-start {
  bottom:5px;
  }
 .h3-intro h1 {
  font-size:22px;
  line-height:24px;
  } 
}
@media only screen and (min-width: 320px) and (max-width: 479px) {
 #error404 h2 {
  font-size:25px;
  }
 #error404 h1 {
  font-size:35px;
  }
 .about-info .container > div {
  width:100%;
  }
 .contact-wrap .input-block {
  width:100%;
  }
 h1 {
  font-size: 25px;
  line-height: 28px;
  }
 h2 {
  line-height:30px;
  } 
 .text-heading span {
  max-width:90%;
  }
 .all-products li {
  width:100%;
  }
 .page-header h1 {
  font-size:30px;
  }
 .summary .cart .btn {
  padding:0 10px;
  }
 .post .it-entry-meta .button-group a.liked {
  margin:10px 0 0 0;
  }
 .post-meta-infos li {
  padding:5px 0;
  } 
 .post-content .img-post {
  max-width:50%;
  }
 .comment_container .avatar {
  display:none;
  }
 .comment-text {
  margin-left:0;
  }
 .comment-text:after {
  border:none;
  background:none;
  }
 .commentlist li button {
     margin: 0 0 0 -85px;
  }
 .commentlist li ul {
  margin-left:30px;
  }
 .port-3col .port-item,
 .port-4col .port-item,
 .port-5col .port-item {
  width:100%;
  }
 .man-portfolio .item.item-w2 {
  width:100px;
  } 
 .h2-intro .grid-layout.three-col li,
 .grid-layout.three-col li,
 .grid-layout.four-col li,
 .grid-layout li {
  width:100%;
  }
 .iso-pro-list.fivecol .item,
 .iso-pro-list.fourcol .item,
 .iso-pro-list.threecol .item {
  width:100%;
 }
 .man-portfolio .item {
  box-sizing:border-box;
  width:100% !important;
  height:auto !important;
  margin:0 2px 2px 0 !important;
  }
 .post-carousel .it-entry-text p:first-child {
  display:none;
  }
 .text-heading.bold h1 {
  font-size:20px;
  }
 #onepage-1 #home .middle-content h1 {
  font-size:30px;
  line-height:normal;
  margin-top:0;
  }
 #onepage-1 #home .middle-content h3 {
  font-size:20px;
  line-height:normal;
  }
 .h1-main ul {
  min-height:80px;
  } 
 .h1-main ul li {
  font-size:30px;
  line-height:35px;
  }
 .btn-start {
  display:none;
  }   
 .h3-intro h1 {
  font-size:22px;
  line-height:24px;
  } 
}
@media only screen and (min-width: 240px) and (max-width: 319px) {
 .topbar {
  display:none;
 }
 #error404 h2 {
  font-size:15px;
 }
 .about-info .container > div {
  width:100%;
  }
 .contact-wrap .input-block {
  width:100%;
  }
 .text-heading span {
  max-width:90%;
  }
 .all-products li {
  width:100%;
  }
 .summary .cart .btn {
  padding:0 10px;
  }
 .post .it-entry-meta .button-group a.liked {
  margin:10px 0 0 0;
  }
 .it-entry-meta ul {
  display:none;
  }
 .post-content .img-post {
  max-width:100%;
  }
 .comment_container .avatar {
  display:none;
  }
 .comment-text {
  margin-left:0;
  }
 .comment-text:after {
  border:none;
  background:none;
  }
 .commentlist li button {
     margin: 0 0 0 -85px;
  }         
 .commentlist li ul {
  margin-left:30px;
  }
 .page-header h1 {
  font-size:30px;
  line-height:25px;
  }
 .port-3col .port-item,
 .port-4col .port-item,
 .port-5col .port-item {
  width:100%;
  }   
 .grid-layout.three-col li {
  width:100%;
  }
 .h2-intro .grid-layout.three-col li,
 .grid-layout.three-col li,
 .grid-layout.four-col li,
 .grid-layout li {
  width:100%;
  }
 .text-heading.bold h1 {
  font-size:20px;
  }
 #onepage-1 #home .middle-content h1 {
  font-size:30px;
  line-height:normal;
  margin-top:0;
  }
 #onepage-1 #home .middle-content h3 {
  font-size:20px;
  line-height:normal;
  }
 .h1-main ul {
  min-height:80px;
  } 
 .h1-main ul li {
  font-size:30px;
  line-height:35px;
  }
 .btn-start {
  display:none;
  }
 .h3-intro h1 {
  font-size:22px;
  line-height:24px;
  }    
}     
}


.swiper-slide img{width:100%}


.main_visual{position:relative;}

.main_visual {height: 780px;}
.main_visual .swiper.swiper-horizontal{height: 100%;}
.main_visual .swiper-slide.slide1{background: url('../../img/main/visual01.jpg') no-repeat 50% 50% / cover;}

.main_visual .swiper-slide.slide2{background: url('../../img/main/visual02.jpg') no-repeat 50% 50%/ cover;}
.visual_txt{position:absolute;top:50%;left:50%;    transform: translate(-50%,-50%); padding-left: 20px;}
.visual_txt .txt > span, .visual_txt .txt > strong{display:block;color:#fff;line-height:1.5;text-shadow:3px 2px 3px rgba(0,0,0,0.3);}
.visual_txt .txt > span{font-size:36px;}
.visual_txt .txt > strong{margin:20px 0 40px;font-size:80px;font-weight:700}




.main_business > .inner{padding:185px 0;}
.main_business .title{font-size:50px;line-height:1;text-align: center;font-weight:700;color:#021a7f}
.main_business .business_list{display:grid;grid-template-columns: repeat(4,1fr);margin-top:150px;justify-items: center;}
.main_business .business_list a{display:block;width:100%}
.main_business .business_list dl{width:100%;margin:0;color:#021a7f}
.main_business .business_list dl > dt{font-size:36px;text-align: center;font-weight:700;line-height:1;padding-top:220px;}


.main_business .business_list dl > dt.research{background:url(../../img/main/business_01.png) no-repeat top center}
.main_business .business_list dl > dt.pr{background:url(../../img/main/business_02.png) no-repeat top center}
.main_business .business_list dl > dt.brend{background:url(../../img/main/business_03.png) no-repeat top center}
.main_business .business_list dl > dt.sale{background:url(../../img/main/business_04.png) no-repeat top center}


.main_business .business_list dl > dd{margin-top:36px;}
.main_business .business_list dl > dd li{text-align: center;font-size:22px;line-height:1.5}


.video_box{background:#121c50}
.video_box .inner{padding:220px 0}
.video_box .flex_box{display:flex;gap:60px; align-items: center;}
.video_box .flex_box > div:first-child {width: 670px;}
.video_box .flex_box > div iframe {width: 100%; height: 400px;}
.video_box .flex_box > div iframe + p {display: block; font-size: 20px; margin-top: 40px; text-align: center; line-height: 1.4; font-weight: 300;}


.video_box .flex_box > div:last-child {width: calc(100% - 730px);}
.video_box .flex_box dl + dl{margin-top:40px}

.video_box .flex_box dl > dt{font-size:44px;font-weight:700;color:#fff }
.video_box .flex_box dl > dd{margin-top:20px;font-size:22px;color:#acb9ff;line-height:2}

.item_box .inner{padding:185px 0;}
.item_box .img_grid{display:grid;grid-template-columns:repeat(4,1fr); gap: 20px;margin:125px 0;}
.item_box .box_txt{text-align: center;font-size:46px}

.item_box .box_txt p{line-height:1;color:#021a7f}
.item_box .box_txt p strong{font-weight:700;line-height:1.2;}




.brand_box{background:#edf0ff}
.brand_box .inner{padding:120px 0}
.brand_box .brand_list{display:grid;grid-template-columns: repeat(5,1fr);justify-items: center;    align-items: center;gap:50px}
.brand_box .brand_txt{margin-top:130px}
.brand_box .brand_txt p{text-align: center;font-size:36px;line-height:1.5}
.brand_box .brand_txt p strong{font-weight:700}


.connect_box .inner{padding:120px 0}
.connect_box .connect_list{display:grid;grid-template-columns: repeat(2,1fr);justify-items: center;gap:50px}
.connect_box .connect_list dt{padding-top:190px;;font-size:36px;font-weight:700;color:#021a7f;text-align: center;}
.connect_box .connect_list dd{margin-top:40px;font-size:24px;color:#021a7f;text-align: center;}
.connect_box .connect_list dd em {display: block; font-size: 18px; font-style: normal; margin-bottom: 40px;}
.connect_box .connect_list dd > span {display: block; margin: 16px 0 12px;}


.connect_box .connect_list .item01 dt{background:url(../../img/main/connect_01.png) no-repeat top center}
.connect_box .connect_list .item02 dt{background:url(../../img/main/connect_02.png) no-repeat top center}
.connect_box .connect_list .item03 dt{background:url(../../img/main/connect_03.png) no-repeat top center}






footer .inner{text-align: center;}
footer .inner .footer_info{margin-top:118px;color:#fff}
footer .inner .footer_info strong{font-weight:700}


footer .inner .adress_wrap{margin-top:30px}
footer .inner .flex_box{display:flex;align-items: center;    justify-content: space-around;}


@media all and (min-width:768px) and (max-width:1023px) { 
 .visual_txt{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);}
.visual_txt .txt > span, .visual_txt .txt > strong{display:block;color:#fff;line-height:1.2;text-shadow: 3px 2px 3px rgba(0,0,0,0.3);}
.visual_txt .txt > span{font-size:20px}
.visual_txt .txt > strong{margin:20px 0 20px;font-size:60px;font-weight:700}








.main_business > .inner{padding:50px 20px;}
.main_business .title{font-size:30px;line-height:1;text-align: center;font-weight:700;color:#021a7f}
.main_business .business_list{display:grid;grid-template-columns: repeat(4,1fr);margin-top:75px;justify-items: center;}
.main_business .business_list dl{width:100%;margin:0;color:#021a7f}
.main_business .business_list dl > dt{font-size:26px;text-align: center;font-weight:700;line-height:1;padding-top:120px;}




.main_business .business_list dl > dt.research{background:url(../../img/main/business_01.png) no-repeat top center/50%}
.main_business .business_list dl > dt.pr{background:url(../../img/main/business_02.png) no-repeat top center/50%}
.main_business .business_list dl > dt.brend{background:url(../../img/main/business_03.png) no-repeat top center/50%}
.main_business .business_list dl > dt.sale{background:url(../../img/main/business_04.png) no-repeat top center/50%}




.main_business .business_list dl > dd{margin-top:20px;}
.main_business .business_list dl > dd li{text-align: center;font-size:16px;line-height:1.5}




.video_box{background:#121c50}
.video_box .inner{padding:50px 20px;}
 .video_box .inner .flex_box div{width:100%}
 .video_box .inner iframe{width:100%}
.video_box .flex_box{display:flex;gap:20px;flex-wrap:wrap}
.video_box .flex_box dl + dl{margin-top:20px}


.video_box .flex_box dl > dt{font-size:36px;font-weight:700;color:#fff }
.video_box .flex_box dl > dd{margin-top:18px;font-size:18px;color:#acb9ff;line-height:2}


.item_box .inner{padding:50px 20px;}
.item_box .img_grid{display:grid;grid-template-columns:repeat(4,1fr); gap: 20px;margin:80px 0;}
.item_box .box_txt{text-align: center;font-size:30px}


.item_box .box_txt p{line-height:1;color:#021a7f}
.item_box .box_txt p strong{font-weight:700;line-height:1.2;}








.brand_box{background:#edf0ff}
.brand_box .inner{padding:50px 20px;}
.brand_box .brand_list{display:grid;grid-template-columns: repeat(5,1fr);justify-items: center;    align-items: center;gap:50px}
.brand_box .brand_txt{margin-top:60px}
.brand_box .brand_txt p{text-align: center;font-size:24px;line-height:1.5}
.brand_box .brand_txt p strong{font-weight:700}




.connect_box .inner{padding:50px 20px;}
.connect_box .connect_list{display:grid;grid-template-columns: repeat(2,1fr);justify-items: center;gap:50px}
.connect_box .connect_list dt{padding-top:120px;;font-size:26px;font-weight:700;color:#021a7f;text-align: center;}
.connect_box .connect_list dd{margin-top:20px;font-size:14px;color:#021a7f;text-align: center;}
.connect_box .connect_list .item01 dt{background:url(../../img/main/connect_01.png) no-repeat top center/50%}
.connect_box .connect_list .item02 dt{background:url(../../img/main/connect_02.png) no-repeat top center/50%}
.connect_box .connect_list .item03 dt{background:url(../../img/main/connect_03.png) no-repeat top center/50%}












footer .inner{text-align: center;}
footer .inner .footer_info{margin-top:118px;color:#fff}
footer .inner .footer_info strong{font-weight:700}




footer .inner .adress_wrap{margin-top:30px}
footer .inner .flex_box{display:flex;align-items: center;    justify-content: space-around;}
} 


@media all and (min-width:480px) and (max-width:767px)  { 
 header .logo{max-width:150px}
.visual_txt{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);padding:50px 20px}
.visual_txt .txt > span, .visual_txt .txt > strong{display:block;color:#fff;line-height:1.2;text-shadow: 3px 2px 3px rgba(0,0,0,0.3);}
.visual_txt .txt > span{font-size:14px}
.visual_txt .txt > strong{margin:10px 0;font-size:24px;font-weight:700}








.main_business > .inner{padding:50px 20px;}
.main_business .title{font-size:24px;line-height:1;text-align: center;font-weight:700;color:#021a7f}
.main_business .business_list{display:grid;grid-template-columns: repeat(4,1fr);margin-top:75px;justify-items: center;}
.main_business .business_list dl{width:100%;margin:0;color:#021a7f}
.main_business .business_list dl > dt{font-size:16px;text-align: center;font-weight:700;line-height:1;padding-top:80px;}




.main_business .business_list dl > dt.research{background:url(../../img/main/business_01.png) no-repeat top center/50%}
.main_business .business_list dl > dt.pr{background:url(../../img/main/business_02.png) no-repeat top center/50%}
.main_business .business_list dl > dt.brend{background:url(../../img/main/business_03.png) no-repeat top center/50%}
.main_business .business_list dl > dt.sale{background:url(../../img/main/business_04.png) no-repeat top center/50%}




.main_business .business_list dl > dd{margin-top:10px;}
.main_business .business_list dl > dd li{text-align: center;font-size:13px;line-height:1.5}




.video_box{background:#121c50}
.video_box .inner{padding:50px 20px;}
 .video_box .inner .flex_box div{width:100%}
 .video_box .inner iframe{width:100%}
.video_box .flex_box{display:flex;gap:20px;flex-wrap:wrap}
.video_box .flex_box dl + dl{margin-top:20px}


.video_box .flex_box dl > dt{font-size:24px;font-weight:700;color:#fff }
.video_box .flex_box dl > dd{margin-top:10px;font-size:14px;color:#acb9ff;line-height:2}


.item_box .inner{padding:50px 20px;}
.item_box .img_grid{display:grid;grid-template-columns:repeat(4,1fr); gap: 10px;margin:30px 0;}
.item_box .box_txt{text-align: center;font-size:24px}


.item_box .box_txt p{line-height:1;color:#021a7f}
.item_box .box_txt p strong{font-weight:700;line-height:1.2;}








.brand_box{background:#edf0ff}
.brand_box .inner{padding:50px 20px;}
.brand_box .brand_list{display:grid;grid-template-columns: repeat(5,1fr);justify-items: center;    align-items: center;gap:30px}
.brand_box .brand_txt{margin-top:60px}
.brand_box .brand_txt p{text-align: center;font-size:24px;line-height:1.5}
.brand_box .brand_txt p strong{font-weight:700}




.connect_box .inner{padding:50px 20px;}
.connect_box .connect_list{display:grid;grid-template-columns: repeat(2,1fr);justify-items: center;gap:20px}
.connect_box .connect_list dt{padding-top:80px;;font-size:16px;font-weight:700;color:#021a7f;text-align: center;}
.connect_box .connect_list dd{margin-top:20px;font-size:13px;color:#021a7f;text-align: center;}
.connect_box .connect_list .item01 dt{background:url(../../img/main/connect_01.png) no-repeat top center/50%}
.connect_box .connect_list .item02 dt{background:url(../../img/main/connect_02.png) no-repeat top center/50%}
.connect_box .connect_list .item03 dt{background:url(../../img/main/connect_03.png) no-repeat top center/50%}












footer .inner{text-align: center;}
footer .inner .footer_info{margin-top:50px;color:#fff}
footer .inner .footer_info strong{font-weight:700}




footer .inner .adress_wrap{margin-top:30px}
footer .inner .flex_box{display:grid;align-items: center;    justify-content: space-around;}
} 


@media all and (max-width:479px)  { 
 header .logo{max-width:150px}
.visual_txt{position:absolute;top:50%;left:50%;transform: translate(-50%,-50%);padding:50px 20px 0}
.visual_txt .txt > span, .visual_txt .txt > strong{display:block;color:#fff;line-height:1.2;text-shadow: 3px 2px 3px rgba(0,0,0,0.3);}
.visual_txt .txt > span{font-size:13px}
.visual_txt .txt > strong{margin:8px 0;font-size:16px;font-weight:700}








.main_business > .inner{padding:50px 20px;}
.main_business .title{font-size:24px;line-height:1;text-align: center;font-weight:700;color:#021a7f}
.main_business .business_list{display:grid;grid-template-columns: repeat(4,1fr);margin-top:40px;justify-items: center;}
.main_business .business_list dl{width:100%;margin:0;color:#021a7f}
.main_business .business_list dl > dt{font-size:16px;text-align: center;font-weight:700;line-height:1;padding-top:80px;}




.main_business .business_list dl > dt.research{background:url(../../img/main/business_01.png) no-repeat top center/50%}
.main_business .business_list dl > dt.pr{background:url(../../img/main/business_02.png) no-repeat top center/50%}
.main_business .business_list dl > dt.brend{background:url(../../img/main/business_03.png) no-repeat top center/50%}
.main_business .business_list dl > dt.sale{background:url(../../img/main/business_04.png) no-repeat top center/50%}




.main_business .business_list dl > dd{margin-top:10px;}
.main_business .business_list dl > dd li{text-align: center;font-size:13px;line-height:1.5}




.video_box{background:#121c50}
.video_box .inner{padding:50px 20px;}
 .video_box .inner .flex_box div{width:100%}
 .video_box .inner iframe{width:100%}
.video_box .flex_box{display:flex;gap:20px;flex-wrap:wrap}
.video_box .flex_box dl + dl{margin-top:20px}


.video_box .flex_box dl > dt{font-size:24px;font-weight:700;color:#fff }
.video_box .flex_box dl > dd{margin-top:10px;font-size:14px;color:#acb9ff;line-height:2}


.item_box .inner{padding:50px 20px;}
.item_box .img_grid{display:grid;grid-template-columns:repeat(4,1fr); gap: 10px;margin:30px 0;}
.item_box .box_txt{text-align: center;font-size:24px}


.item_box .box_txt p{line-height:1;color:#021a7f}
.item_box .box_txt p strong{font-weight:700;line-height:1.2;}








.brand_box{background:#edf0ff}
.brand_box .inner{padding:50px 20px;}
.brand_box .brand_list{display:grid;grid-template-columns: repeat(5,1fr);justify-items: center;    align-items: center;gap:30px}
.brand_box .brand_txt{margin-top:60px}
.brand_box .brand_txt p{text-align: center;font-size:24px;line-height:1.5}
.brand_box .brand_txt p strong{font-weight:700}




.connect_box .inner{padding:50px 20px;}
.connect_box .connect_list{display:grid;grid-template-columns: repeat(3,1fr);justify-items: center;gap:20px}
.connect_box .connect_list dt{padding-top:80px;;font-size:16px;font-weight:700;color:#021a7f;text-align: center;}
.connect_box .connect_list dd{margin-top:20px;font-size:13px;color:#021a7f;text-align: center;}
.connect_box .connect_list .item01 dt{background:url(../../img/main/connect_01.png) no-repeat top center/50%}
.connect_box .connect_list .item02 dt{background:url(../../img/main/connect_02.png) no-repeat top center/50%}
.connect_box .connect_list .item03 dt{background:url(../../img/main/connect_03.png) no-repeat top center/50%}












footer .inner{text-align: center;}
footer .inner .footer_info{margin-top:50px;color:#fff}
footer .inner .footer_info strong{font-weight:700}




footer .inner .adress_wrap{margin-top:30px}
footer .inner .flex_box{display:grid;align-items: center;    justify-content: space-around;}
@media screen and (min-width:768px) and (max-width:1023px) {
    .visual_txt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }


    .visual_txt .txt>span,
    .visual_txt .txt>strong {
        display: block;
        color: #fff;
        line-height: 1.2;
        text-shadow: 0px 5px 12px #000;
    }


    .visual_txt .txt>span {
        font-size: 20px
    }


    .visual_txt .txt>strong {
        margin: 20px 0 20px;
        font-size: 60px;
        font-weight: 700
    }









    .main_business>.inner {
        padding: 50px 20px;
    }


    .main_business .title {
        font-size: 30px;
        line-height: 1;
        text-align: center;
        font-weight: 700;
        color: #021a7f
    }


    .main_business .business_list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        margin-top: 75px;
        justify-items: center;
    }


    .main_business .business_list dl {
        width: 100%;
        margin: 0;
        color: #021a7f
    }


    .main_business .business_list dl>dt {
        font-size: 26px;
        text-align: center;
        font-weight: 700;
        line-height: 1;
        padding-top: 120px;
    }





    .main_business .business_list dl>dt.research {
        background: url(../../img/main/business_01.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.pr {
        background: url(../../img/main/business_02.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.brend {
        background: url(../../img/main/business_03.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.sale {
        background: url(../../img/main/business_04.png) no-repeat top center/50%
    }





    .main_business .business_list dl>dd {
        margin-top: 20px;
    }


    .main_business .business_list dl>dd li {
        text-align: center;
        font-size: 16px;
        line-height: 1.5
    }





    .video_box {
        background: #121c50
    }


    .video_box .inner {
        padding: 50px 20px;
    }


    .video_box .inner .flex_box div {
        width: 100%
    }


    .video_box .inner iframe {
        width: 100%
    }


    .video_box .flex_box {
        display: flex;
        gap: 20px;
        flex-wrap: wrap
    }


    .video_box .flex_box dl+dl {
        margin-top: 20px
    }



    .video_box .flex_box dl>dt {
        font-size: 36px;
        font-weight: 700;
        color: #fff
    }


    .video_box .flex_box dl>dd {
        margin-top: 18px;
        font-size: 18px;
        color: #acb9ff;
        line-height: 2
    }



    .item_box .inner {
        padding: 50px 20px;
    }


    .item_box .img_grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
        margin: 80px 0;
    }


    .item_box .box_txt {
        text-align: center;
        font-size: 30px
    }



    .item_box .box_txt p {
        line-height: 1;
        color: #021a7f
    }


    .item_box .box_txt p strong {
        font-weight: 700;
        line-height: 1.2;
    }









    .brand_box {
        background: #edf0ff
    }


    .brand_box .inner {
        padding: 50px 20px;
    }


    .brand_box .brand_list {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        justify-items: center;
        align-items: center;
        gap: 50px
    }


    .brand_box .brand_txt {
        margin-top: 60px
    }


    .brand_box .brand_txt p {
        text-align: center;
        font-size: 24px;
        line-height: 1.5
    }


    .brand_box .brand_txt p strong {
        font-weight: 700
    }





    .connect_box .inner {
        padding: 50px 20px;
    }


    .connect_box .connect_list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        justify-items: center;
        gap: 50px
    }


    .connect_box .connect_list dt {
        padding-top: 120px;
        ;
        font-size: 26px;
        font-weight: 700;
        color: #021a7f;
        text-align: center;
    }


    .connect_box .connect_list dd {
        margin-top: 20px;
        font-size: 14px;
        color: #021a7f;
        text-align: center;
    }


    .connect_box .connect_list .item01 dt {
        background: url(../../img/main/connect_01.png) no-repeat top center/50%
    }


    .connect_box .connect_list .item02 dt {
        background: url(../../img/main/connect_02.png) no-repeat top center/50%
    }


    .connect_box .connect_list .item03 dt {
        background: url(../../img/main/connect_03.png) no-repeat top center/50%
    }
    footer .inner {
        text-align: center;
    }


    footer .inner .footer_info {
        margin-top: 118px;
        color: #fff
    }


    footer .inner .footer_info strong {
        font-weight: 700
    }


    footer .inner .adress_wrap {
        margin-top: 30px
    }


    footer .inner .flex_box {
        display: flex;
        align-items: center;
        justify-content: space-around;
    }
}



@media screen and (min-width:480px) and (max-width:767px) {
    header .logo {
        max-width: 150px
    }


    .visual_txt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 50px 20px
    }


    .visual_txt .txt>span,
    .visual_txt .txt>strong {
        display: block;
        color: #fff;
        line-height: 1.2;
        text-shadow: 0px 5px 12px #000;
    }


    .visual_txt .txt>span {
        font-size: 14px
    }


    .visual_txt .txt>strong {
        margin: 10px 0;
        font-size: 24px;
        font-weight: 700
    }









    .main_business>.inner {
        padding: 50px 20px;
    }


    .main_business .title {
        font-size: 24px;
        line-height: 1;
        text-align: center;
        font-weight: 700;
        color: #021a7f
    }


    .main_business .business_list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        margin-top: 75px;
        justify-items: center;
    }


    .main_business .business_list dl {
        width: 100%;
        margin: 0;
        color: #021a7f
    }


    .main_business .business_list dl>dt {
        font-size: 16px;
        text-align: center;
        font-weight: 700;
        line-height: 1;
        padding-top: 80px;
    }





    .main_business .business_list dl>dt.research {
        background: url(../../img/main/business_01.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.pr {
        background: url(../../img/main/business_02.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.brend {
        background: url(../../img/main/business_03.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.sale {
        background: url(../../img/main/business_04.png) no-repeat top center/50%
    }





    .main_business .business_list dl>dd {
        margin-top: 10px;
    }


    .main_business .business_list dl>dd li {
        text-align: center;
        font-size: 13px;
        line-height: 1.5
    }





    .video_box {
        background: #121c50
    }


    .video_box .inner {
        padding: 50px 20px;
    }


    .video_box .inner .flex_box div {
        width: 100%
    }


    .video_box .inner iframe {
        width: 100%
    }


    .video_box .flex_box {
        display: flex;
        gap: 20px;
        flex-wrap: wrap
    }


    .video_box .flex_box dl+dl {
        margin-top: 20px
    }



    .video_box .flex_box dl>dt {
        font-size: 24px;
        font-weight: 700;
        color: #fff
    }


    .video_box .flex_box dl>dd {
        margin-top: 10px;
        font-size: 14px;
        color: #acb9ff;
        line-height: 2
    }



    .item_box .inner {
        padding: 50px 20px;
    }


    .item_box .img_grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 10px;
        margin: 30px 0;
    }


    .item_box .box_txt {
        text-align: center;
        font-size: 24px
    }



    .item_box .box_txt p {
        line-height: 1;
        color: #021a7f
    }


    .item_box .box_txt p strong {
        font-weight: 700;
        line-height: 1.2;
    }









    .brand_box {
        background: #edf0ff
    }


    .brand_box .inner {
        padding: 50px 20px;
    }


    .brand_box .brand_list {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        justify-items: center;
        align-items: center;
        gap: 30px
    }


    .brand_box .brand_txt {
        margin-top: 60px
    }


    .brand_box .brand_txt p {
        text-align: center;
        font-size: 24px;
        line-height: 1.5
    }


    .brand_box .brand_txt p strong {
        font-weight: 700
    }





    .connect_box .inner {
        padding: 50px 20px;
    }


    .connect_box .connect_list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        justify-items: center;
        gap: 20px
    }


    .connect_box .connect_list dt {
        padding-top: 80px;
        ;
        font-size: 16px;
        font-weight: 700;
        color: #021a7f;
        text-align: center;
    }


    .connect_box .connect_list dd {
        margin-top: 20px;
        font-size: 13px;
        color: #021a7f;
        text-align: center;
    }


    .connect_box .connect_list .item01 dt {
        background: url(../../img/main/connect_01.png) no-repeat top center/50%
    }


    .connect_box .connect_list .item02 dt {
        background: url(../../img/main/connect_02.png) no-repeat top center/50%
    }


    .connect_box .connect_list .item03 dt {
        background: url(../../img/main/connect_03.png) no-repeat top center/50%
    }
    footer .inner {
        text-align: center;
    }


    footer .inner .footer_info {
        margin-top: 50px;
        color: #fff
    }


    footer .inner .footer_info strong {
        font-weight: 700
    }


    footer .inner .adress_wrap {
        margin-top: 30px
    }


    footer .inner .flex_box {
        display: grid;
        align-items: center;
        justify-content: space-around;
    }
}



@media screen and (max-width:479px) {
    header .logo {
        max-width: 150px
    }


    .visual_txt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 50px 20px 0
    }


    .visual_txt .txt>span,
    .visual_txt .txt>strong {
        display: block;
        color: #fff;
        line-height: 1.2;
        text-shadow: 0px 5px 12px #000;
    }


    .visual_txt .txt>span {
        font-size: 13px
    }


    .visual_txt .txt>strong {
        margin: 8px 0;
        font-size: 16px;
        font-weight: 700
    }









    .main_business>.inner {
        padding: 50px 20px;
    }


    .main_business .title {
        font-size: 24px;
        line-height: 1;
        text-align: center;
        font-weight: 700;
        color: #021a7f
    }


    .main_business .business_list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        margin-top: 40px;
        justify-items: center;
    }


    .main_business .business_list dl {
        width: 100%;
        margin: 0;
        color: #021a7f
    }


    .main_business .business_list dl>dt {
        font-size: 16px;
        text-align: center;
        font-weight: 700;
        line-height: 1;
        padding-top: 80px;
    }





    .main_business .business_list dl>dt.research {
        background: url(../../img/main/business_01.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.pr {
        background: url(../../img/main/business_02.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.brend {
        background: url(../../img/main/business_03.png) no-repeat top center/50%
    }


    .main_business .business_list dl>dt.sale {
        background: url(../../img/main/business_04.png) no-repeat top center/50%
    }





    .main_business .business_list dl>dd {
        margin-top: 10px;
    }


    .main_business .business_list dl>dd li {
        text-align: center;
        font-size: 13px;
        line-height: 1.5
    }





    .video_box {
        background: #121c50
    }


    .video_box .inner {
        padding: 50px 20px;
    }


    .video_box .inner .flex_box div {
        width: 100%
    }


    .video_box .inner iframe {
        width: 100%
    }


    .video_box .flex_box {
        display: flex;
        gap: 20px;
        flex-wrap: wrap
    }


    .video_box .flex_box dl+dl {
        margin-top: 20px
    }



    .video_box .flex_box dl>dt {
        font-size: 24px;
        font-weight: 700;
        color: #fff
    }


    .video_box .flex_box dl>dd {
        margin-top: 10px;
        font-size: 14px;
        color: #acb9ff;
        line-height: 2
    }
    .item_box .inner {
        padding: 50px 20px;
    }


    .item_box .img_grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 10px;
        margin: 30px 0;
    }


    .item_box .box_txt {
        text-align: center;
        font-size: 24px
    }
    .item_box .box_txt p {
        line-height: 1;
        color: #021a7f
    }


    .item_box .box_txt p strong {
        font-weight: 700;
        line-height: 1.2;
    }
    .brand_box {
        background: #edf0ff
    }


    .brand_box .inner {
        padding: 50px 20px;
    }


    .brand_box .brand_list {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        justify-items: center;
        align-items: center;
        gap: 30px
    }


    .brand_box .brand_txt {
        margin-top: 60px
    }


    .brand_box .brand_txt p {
        text-align: center;
        font-size: 24px;
        line-height: 1.5
    }


    .brand_box .brand_txt p strong {
        font-weight: 700
    }
    .connect_box .inner {
        padding: 50px 20px;
    }


    .connect_box .connect_list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        justify-items: center;
        gap: 20px
    }


    .connect_box .connect_list dt {
        padding-top: 80px;
        ;
        font-size: 16px;
        font-weight: 700;
        color: #021a7f;
        text-align: center;
    }


    .connect_box .connect_list dd {
        margin-top: 20px;
        font-size: 13px;
        color: #021a7f;
        text-align: center;
    }


    .connect_box .connect_list .item01 dt {
        background: url(../../img/main/connect_01.png) no-repeat top center/50%
    }


    .connect_box .connect_list .item02 dt {
        background: url(../../img/main/connect_02.png) no-repeat top center/50%
    }


    .connect_box .connect_list .item03 dt {
        background: url(../../img/main/connect_03.png) no-repeat top center/50%
    }
    footer .inner {
        text-align: center;
    }


    footer .inner .footer_info {
        margin-top: 50px;
        color: #fff
    }


    footer .inner .footer_info strong {
        font-weight: 700
    }





    footer .inner .adress_wrap {
        margin-top: 30px
    }


    footer .inner .flex_box {
        display: grid;
        align-items: center;
        justify-content: space-around;
    }
}