/*
Theme Name:æ ªå¼ä¼šç¤¾ãƒŸãƒ„ã‚«ãƒ«
Description: æ ªå¼ä¼šç¤¾ãƒŸãƒ„ã‚«ãƒ« theme for WordPress
Author: yuki izawa
Version:1.0
*/


/* --------å…±é€š--------- */

@font-face {
	font-family: 'MrDeHaviland_Pro';
	src: url("../font/MrDeHaviland-Regular.ttf");
}

html {
    font-size: 62.5% !important;
    box-sizing: border-box !important;
}

html {
  /* visibility: hidden; */
}

html.wf-active {
  visibility: visible;
}

body {
    font-family: 'Noto Sans JP', sans-serif !important;
    font-weight: 500!important;
    font-style: normal!important;
    line-height: 1 !important;
    background-color: unset !important;
    position: unset !important;
    color: #000 !important;
}

ul {
    list-style: none;
}

img{
    max-width:100%;
    vertical-align:bottom;
}

p {
    font-size: 1.8rem;
}

a {
    font-size: 1.8rem;
    color: #000!important;
    cursor: pointer;
}

.pc_none {
    display: none!important;
}

.sp_none {
    display: block!important;
}

* {
    box-sizing: unset !important;
}


/* --------ãƒˆãƒƒãƒ—ãƒšãƒ¼ã‚¸--------- */

.top-hero{
    position: relative;
    background: url("../images/top/top-hero.jpg") no-repeat;
    background-size: cover;
    padding: 5rem 0 0;
}

.top_about_inner {
    position: relative;
    width: 95%;
    max-width: 1300px;
    margin: 8rem auto -5rem;
}

.top_about_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.top_about_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.top_about_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.top_about_inner h3 {
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
    border-bottom: solid 3px #000;
}

.top_about_box {
    overflow: hidden;
}

.btn-about {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 15px 38px;
  background: linear-gradient(to right, #f76b1c, #f8991c);
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 4px 6px rgb(0 0 0 / 15%);
  transition: background 0.3s, transform 0.2s;
}

.btn-about:hover {
  background: linear-gradient(to right, #f8991c, #f76b1c);
  transform: translateY(-2px);
}

.btn-about__text {
  white-space: nowrap;
  color: #fff;
  font-weight: bold;
  padding-right: 1.8rem;
  padding: .5rem 1.5rem .5rem 0;
  margin-right: .5rem;
  border-right: solid 1.5px #fff;
}

.btn-about__arrow {
  font-size: 18px;
  line-height: 1;
  color: #fff;
}


.top_about_box p {
    margin: auto;
    max-width: 1300px;
    font-size: 2.3rem;
    line-height: 4.5rem;
    padding: 4rem 0;
    position: relative;
    color: #000;
}

.top-hero-img{
    position: relative;
    display: block;
    top: -5rem;
    left: 30%;
    width: 80%;
}


.top_service{
    position: relative;
    background: url("../images/top/service-bottom.jpg") no-repeat;
    background-size: contain;
    background-position: center bottom;
}

.top_service_inner {
    padding: 5rem 0 10rem;
    position: relative;
    z-index: 0;
    width: 95%;
    max-width: 1300px;
    margin:0 auto;
}

.top_service_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.top_service_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.top_service_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.top_service_inner h3 {
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
    border-bottom: solid 3px #000;
}

.top_service_inner h3 span {
    background-color: #E95513;
    padding: 0 1rem;
}

.top_service_inner h3:nth-of-type(2) {
    margin-top: 2.5rem;
}

.top_service_img{
    position: absolute;
    top: 550px;
    left:calc(50% - 120px);
    width: 50%;
    max-width: 580px;
}

.top_service_inner p {
    max-width: 1300px;
    margin: 0 auto;
    font-size: 2.1rem;
    line-height: 4rem;
}

.top_service_cardwrap{
    max-width: 1300px;
    width: 95%;
    margin: auto;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.top_service_card{
    width: 45%;
    background: #fff;
    max-width: 40rem;
    box-shadow: 2px 5px 15px rgb(0 0 0 / 30%);
    margin: 4rem 2rem 0;
}

.top_service_cardwrap .top_service_card:nth-child(1) h4{
    background: url("../images/top/bg-green.jpg") no-repeat;
    background-size: cover;
    text-align: center;
    height: 6rem;
    line-height: 3;
    color: #fff;
    font-size: 2rem;
}

.top_service_cardwrap .top_service_card:nth-child(2) h4{
    background: url("../images/top/bg-orange.jpg") no-repeat;
    background-size: cover;
    text-align: center;
    height: 6rem;
    line-height: 3;
    color: #fff;
    font-size: 2rem;
}

.top_service_cardwrap .top_service_card:nth-child(3) h4{
    background: url("../images/top/bg-blue.jpg") no-repeat;
    background-size: cover;
    text-align: center;
    height: 6rem;
    line-height: 3;
    color: #fff;
    font-size: 2rem;
}

.top_service_cardwrap .top_service_card:nth-child(4) h4{
    background: url("../images/top/bg-red.jpg") no-repeat;
    background-size: cover;
    text-align: center;
    height: 6rem;
    line-height: 3;
    color: #fff;
    font-size: 2rem;
}

.top_service_card p{
    font-size: 1.5rem;
    padding: 0 2rem;
    margin:2rem 0;
    line-height: 3rem;
}

.top_service_cardlink{
    display: flex;
    justify-content: end;
    align-items: center;
    padding: 0 2rem;
    margin:3rem 0;
    line-height: 3rem;
}

.btn-service {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 10px 38px;
  background: linear-gradient(to right, #f76b1c, #f8991c);
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 4px 6px rgb(0 0 0 / 15%);
  transition: background 0.3s, transform 0.2s;
}

.btn-service:hover {
  background: linear-gradient(to right, #f8991c, #f76b1c);
  transform: translateY(-2px);
}

.btn-service__text {
  white-space: nowrap;
  color: #fff;
  font-weight: bold;
  padding-right: 1.8rem;
  padding: .5rem 3rem .5rem 0;
  margin-right: .5rem;
  border-right: solid 1.5px #fff;
}

.btn-service__arrow {
  font-size: 18px;
  line-height: 1;
  color: #fff;
}

.top_news_inner {
    max-width: 1300px;
    margin: auto;
    padding: 10rem 4rem 6rem;
}

.top_news_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.top_news_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.top_news_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.top_news_inner h3 {
    max-width: 1300px;
    width: 95%;
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
}

.btn-news {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 15px 38px;
  background: linear-gradient(to right, #f76b1c, #f8991c);
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 4px 6px rgb(0 0 0 / 15%);
  transition: background 0.3s, transform 0.2s;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.btn-news:hover {
  background: linear-gradient(to right, #f8991c, #f76b1c);
  transform: translateY(-2px);
}

.top_news_box {
    display: flex;
    margin-top: 5rem;
}

.top_news_box .slick-slider .slick-track, .slick-slider .slick-list {
    padding: 20px 0;
}

.top_news_card {
  position: relative;
  width: 100%;
  max-width: 300px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 4px 12px rgb(0 0 0 / 10%);
  display: flex;
  flex-direction: column;
}

.top_news_img img {
  width: 100%;
  height: auto;
  display: block;
}

.top_news_ttl {
  font-size: 1.8rem;
  line-height: 2.2rem;
  height: 4.5rem;
  overflow: hidden;
  font-weight: bold;
  margin: 16px;
}

.top_news_content {
  font-size: 0.9rem;
  color: #555;
  margin: 0 16px 16px;
}

.top_news_info {
    display: flex;
    justify-content: flex-start;
    margin: 0 16px 16px;
}

.top_news_date {
    font-size: 1.2rem;
    line-height: 1.8rem;
    color: #333;
    margin-right: 5px;
}

.top_news_new {
  display: inline-block;
  background: #f15a24;
  color: #fff;
  font-size: 1rem;
  padding: 4px 6px;
  margin-left: 8px;
}

.top_news_link {
  display: inline-block;
  margin: 0 16px 16px;
  align-self: flex-end;
}

.news-arrow{
position: absolute;
    width: 25px;
    height: 25px;
    bottom: 16px;
    right: 16px;
}

.gray_top {
    background-color: rgb(105 105 105 / 25%);
}

.top_recruit_inner {
    max-width: 1300px;
    margin: auto;
    position: relative;
    padding: 4rem 0 8rem;
}

.top_recruit_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.top_recruit_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.top_recruit_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.top_recruit_inner h3 {
    max-width: 1300px;
    width: 95%;
    margin: -2rem 0 3rem;
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    padding-bottom: 3rem;
}

.top_recruit_inner h3 span {
    padding: 0 1rem;
}

.btn-recruit {
  position: absolute;
  bottom:25%;
  right: 15%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 15px 38px;
  background: linear-gradient(to right, #f76b1c, #f8991c);
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  border-radius: 999px;
  text-decoration: none;
  box-shadow: 0 4px 6px rgb(0 0 0 / 15%);
  transition: background 0.3s, transform 0.2s;
}

.btn-recruit:hover {
  background: linear-gradient(to right, #f8991c, #f76b1c);
  transform: translateY(-2px);
}

.btn-recruit__text {
  white-space: nowrap;
  color: #fff;
  font-weight: bold;
  padding-right: 1.8rem;
  padding: .5rem 8rem .5rem 0;
  margin-right: .5rem;
  border-right: solid 1.5px #fff;
}

.btn-recruit__arrow {
  font-size: 18px;
  line-height: 1;
  color: #fff;
}

.other{
    position: relative;
    background: url("../images/top/top-other.jpg") no-repeat;
    background-size: cover;
    background-position: center bottom;
    padding-bottom: 15rem;
}

.top_other_inner {
    max-width: 1300px;
    margin: auto;
    padding: 7rem 4rem;
}

.top_other_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.top_other_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.top_other_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.top_other_inner h3 {
    max-width: 1300px;
    width: 95%;
    margin: -2rem 0 3rem;
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    padding-bottom: 3rem;
}

.top_other_inner h3 span {
    padding: 0 1rem;
}

.top_other_inner ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1100px;
    margin: 30px auto 0;
}

.top_other_inner ul li {
    width: 31%;
    box-shadow: 0 5px 12px rgb(0 0 0 / 10%);
    margin-bottom: 5rem;
    height: fit-content;
}

.top_other_inner ul li:nth-child(3) {
    margin-bottom:0;
}

.top_other_inner ul li:nth-child(4) {
    margin-bottom:0;
}

.top_other_inner ul li h3 img {
    width: 38px;
    height: 38px;
    margin-right: 15px;
}

footer {
    background-color: #000;
    color: #fff;
}

.footer_inner {
    max-width: 1300px;
    margin: auto;
    padding: 2rem 4rem;
}

.footer_list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.footer_list li {
    width:28%;
    margin-right: 4%;
}

.footer_list li:nth-child(2n) {
}

.footer_list li:last-child {
    width:20%;
    margin: 0;
    padding-top: 85px;
}

.footer_list li:last-child a{
    border: solid 1px #fff;
    width: auto;
    text-align: center;
    padding: 20px;
    margin-bottom: 15px;
}

.footer_list li h2 {
    font-size: 1.6rem;
    margin-top: 5rem;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: solid 1px #fff;
}

.footer_list li h2 a{
    margin: 0;
}

.footer_list li a {
    font-size: 1.4rem;
    display: block;
    line-height: 1.3;
    margin-bottom: 2rem;
    color: #fff!important;
}

.footer_list li h3 {
    font-size: 1.6rem;
    margin-top: 3rem;
    margin-bottom: 2rem;
}

.footer_list li:nth-child(3) h3 {
    margin-top: 4rem;
}

.footer_list li:nth-child(4) h3 {
    margin-top: 4rem;
}

.footer_list li:nth-child(5) {
    width: 10%;
}

.footer_icon {
    margin-left: 1rem;
}

.footer_flex{
    display: flex;
    flex-direction: column;
}

.footer_flex a{
    width: 50%;
}

.footer_list li a.footer_link-small{
    font-size: 1rem;
    margin-top: -1rem;
}

.sns_box {
    display: flex;
    align-items: center;
    justify-content: end;
    margin-bottom: 2rem;
}

.sns_box ul {
    display: flex;
    align-items: center;
}

.sns_box ul li:nth-child(2) {
    margin: 0 1rem;
}

.sns_box p {
    font-size: 1.4rem;
    font-weight: bold;
    margin-right: 2rem;
}

.copy_box{
    padding:25px 0 37px;
    background: #696969;
}

.copy_box_inner{
    max-width: 1300px;
    margin: 0 auto;
}

.copy_box img {
    width: 200px;
    margin-bottom: 10px;
    padding-left: 4rem;
}

.copy_box ul {
    display: flex;
    justify-content: space-between;
}

.copy_box ul li {
    color: #fff!important;
}

.copy_box ul li a {
    font-size: 1.4rem;
    color: #fff!important;
}

.l-section {
    padding:15rem 0;
    margin-bottom: 0;
}

.c-title {
    text-align: center;
    color: #1a2248;
    font-size: 3.2rem;
    line-height: 1;
    font-weight: 700;
    margin-bottom: 4.5rem;
}

.c-text {
    font-weight: 300;
    font-size: 1.8rem;
    width: 90%;
    max-width: 80rem;
    line-height: 2.5;
    margin-left: auto;
    margin-right: auto;
    color: #1a2248;
}

#js-header.m_fixed {
	left: 0;
    right: 0;
    position: fixed;
    top: 0;
    background-color: #fff;
    z-index: 100;
    padding: 1.5rem 0;
    border-bottom: 1px solid #c1c1c1;
    animation-name:fadeInAnime_header;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
}

@keyframes fadeInAnime_header {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

header {
    position: absolute;
    z-index: 999999;
    width: 100%;
    margin: auto;
    top: 2rem;
}


.header_inner {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 1065px;
    margin: auto;
    background-color: rgb(255 255 255 / 60%);
    backdrop-filter: blur(4px) brightness(30) opacity(70%);
    border-radius: 5rem;
    padding: 0 5rem;
    height: 6.3rem;
}

#header-interview .header_inner {
    justify-content: space-between;
}

#header-interview .header_left a{
    display: flex;
    align-items: center; 
}

#header-interview .header_right{
    display: flex;
    align-items: center
}

.header_interview-btn02{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1.5rem 2.5rem;
    background: #1A3261;
    color: #fff!important;
    margin-left: 2rem;
}

#header-interview .header_left img{
    margin-right: 1rem;
    width: auto; 
}

.header_left img {
    margin-right: 4rem;
    width: 75%;
}

.gnavi__lists {
    display: flex;
}

.gnavi__list {
    position: relative;
    margin-right: 5rem;
}

.gnavi__list:last-child {
    margin-right: 0;
}

.gnavi__list:last-child a {
    background-color: #1A326E;
    color: #fff!important;
    padding: 0;
    width: 10rem;
    border-radius: 5rem;
}

.gnavi__list:nth-child(1) {
    margin-right: 6rem;
}

.gnavi__list:nth-child(2) {
    margin-right: 6rem;
}

.gnavi__list:nth-child(3) {
    margin-right: 6rem;
}

.gnavi__list:hover::before {
    background-color: #0071BB;
}

.gnavi__list a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    color: #000;
    padding-bottom: 2rem;
    font-size: 1.4rem;
}

.gnavi_hover:hover {
    color: #e95513!important;
}

.gnavi_arrow {
    position: relative;
}

.gnavi_arrow::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #17315e;
    line-height: 1;
    width: 0.8rem;
    height: 0.8rem;
    border: 0.1em solid currentcolor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box!important;
    transform: translateY(-25%) rotate(135deg);
    position: absolute;
    right: -15px;
}

.gnavi_arrow:hover::after {
    color: #e95513;
   
}

.gnavi__list:hover .dropdown__lists {
    display: block;/* GãƒŠãƒ“ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ãƒ›ãƒãƒ¼ã—ãŸã‚‰è¡¨ç¤º */   
}

.dropdown__list {
    background-color: #fff;
    height:4rem;
    position: relative;
}

.dropdown__list:not(:first-child)::before{
    content: "";
    width: 100%;
    height: 0.5px;
    background-color: #eee;
    position: absolute;
    top: 0;
    left: 0;
}

.dropdown__list:hover {
    background-color: #FFECCC;
}

.dropdown__list a {
    display: flex;
    justify-content: left;
    align-items: center;
    color: #e95513!important;
    text-decoration: none;
    position: relative;
    padding-left: 2rem;
}

.dropdown__lists {
    visibility: hidden;/* ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã¯éžè¡¨ç¤ºã®çŠ¶æ…‹ã«ã—ã¦ãŠã */
    opacity: 0;/* ä¸é€æ˜Žåº¦0 */
    width: 100%;
    position: absolute;
    top: 60px;
    left: 0;
}

.dropdown__lists {
    transition: all .3s;
}

.dropdown__lists {
    transform: scaleY(0);
    transform-origin: center top;
    width: 24rem;
    position: absolute;
    top: 5rem;
    left: 0;
}

.gnavi__list:hover .dropdown__lists {
    visibility: visible;/* GãƒŠãƒ“ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ãƒ›ãƒãƒ¼ã—ãŸã‚‰è¡¨ç¤º */
    opacity: 1;/* ä¸é€æ˜Žåº¦1 */
    transform: scaleY(1);/* GãƒŠãƒ“ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ãƒ›ãƒãƒ¼ã—ãŸã‚‰è¡¨ç¤º */
}

.gnavi__list_acc .dropdown__list a{
    padding-bottom: 1rem;
    padding-top: 1rem;
    padding-left: 2rem;
}

.gnavi__list_acc .dropdown__list .acc_header a{
    padding: 0;
    padding-left: 2rem;
}

.gnavi__list_acc label {
    display: flex;
    line-height: 1;
    color :#e95513;
    cursor :pointer;
    height: 4rem;
    justify-content: left;
    align-items: center;
    text-decoration: none;
    position: relative;
    padding-left: 2rem;
    font-size: 1.4rem;
    
}

.gnavi__list_acc label::after {
    content:"";
  display:block;
  width:8px;
  height:8px;
  border-top: #e95513 2px solid;
  border-right: #e95513 2px solid;
  transform: rotate(135deg);
  position:absolute;
  right: 5%;
  top: 0;
  bottom: 15%;
  margin: auto;
}

input[type="checkbox"]:checked + label::after{
  content:"";
  display:block;
  width:8px;
  height:8px;
  border-top: #e95513 2px solid;
  border-right: #e95513 2px solid;
  transform: rotate(-45deg);
  position:absolute;
  right: 5%;
  top: 7%;
  bottom: 0;
  margin: auto;
}

#js-header.m_fixed {
	left: 0;
    right: 0;
    position: fixed;
    top: 0;
    background-color: #fff;
    z-index: 100;
    padding: 1.5rem 0;
    border-bottom: 1px solid #c1c1c1;
    animation-name:fadeInAnime_header;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
}


.gnavi__list_acc label:hover {
    background-color: #FFECCC;
    
}

.gnavi__list_acc .dropdown__list:not(:first-child)::before {
    top: -1px;
}

.gnavi__list_acc .dropdown__list {
    background-color: #fff;
    height: auto;
    position: relative;
}

.acc_header a {
    font-size: 1.4rem;
    padding-left: 2rem;
}

.acc_header a:hover {
    background-color: #FFECCC;
}


#links01 li {
    height: 0;
    overflow: hidden;
    transition: all .3s;
  
}

#links02 li {
    height: 0;
    overflow: hidden;
    transition: all .3s;
  
}

#links03 li {
    height: 0;
    overflow: hidden;
    transition: all .3s;
  
}

#links04 li {
    height: 0;
    overflow: hidden;
    transition: all .3s;
}

#links12 li {
    height: 0;
    overflow: hidden;
    transition: all .3s;
}

#links14 li {
    height: 0;
    overflow: hidden;
    transition: all .3s;
}



.gnavi__list_acc input {
    display: none;
}

.menu ul {
    margin: 0;
    padding: 0;
    background :#f4f4f4;
    list-style: none;
}

.menu li {
    height: 0;
    overflow: hidden;
}

#menu_bar01:checked ~ #links01 li,
#menu_bar02:checked ~ #links02 li,
#menu_bar03:checked ~ #links03 li,
#menu_bar04:checked ~ #links04 li,
#menu_bar12:checked ~ #links12 li{
    height:4rem;
    opacity: 1;
    transition: all .3s;
}

#menu_bar14:checked ~ #links14 li{
    height:4rem;
    opacity: 1;
    transition: all .3s;
}



.header_right_sp {
    display: none;
}

#js-header_sp {
    display: none;
}

.pc_footer {
    display: block;
}

.sp_footer {
    display: none;
}
























/* --------èª¿æ•´--------- */

@media screen and (width <= 1400px) {
.top_about_box::after {
    width: 80%;
}

.top_about_box a {
    right: 10%;
}

}

@media screen and (width <= 1300px) {
.footer_list li h2 {
    font-size: 1.4rem;
}

.footer_list li h3 {
    font-size: 1.4rem;
}

.footer_list li a {
    font-size: 1.2rem;
}

}



@media screen and (width <= 1200px) {
.top_about_box::after {
    width: 90%;
}

.top_about_box a {
    width: 30rem;
    right: 3%;
}

.top_news_box_left a {
    width: 30rem;
    font-size: 2rem;
}

.header_right {
    padding: 1rem 2rem;
}

.gnavi__list:nth-child(1) {
    margin-right: 3.5rem;
}

.gnavi__list:nth-child(2) {
    margin-right: 3.5rem;
}

.gnavi__list:nth-child(3) {
    margin-right: 3.5rem;
}

.gnavi__list {
    margin-right: 2rem;
}

}


/* --------ä¼šç¤¾æ¦‚è¦--------- */


.under_header {
    left: 0;
    right: 0;
    position: fixed;
    top: 0;
    background-color: #fff;
    z-index: 100;
    padding: 1.5rem 0;
}

.under_content {
    max-width: 1400px;
    margin: auto;
}

.rec.under_content {
    max-width: 1085px;
    margin: auto;
}


.orange {
    background-color: #F08519;
}

.pan {
    max-width: 1045px;
    margin: auto;
    margin-top: 9.3rem;
    padding: 1.15rem 1rem;
}

.pan p {
    font-size: 1.4rem;
    color: #fff;
}

.pan p a {
    font-size: 1.4rem;
    color: #fff!important;
}

.under_eye_inner {
    position: relative;
}

.under_eye_inner img {
    width: 100%;
}

.under_eye_text {
    position: absolute;
    bottom: 38%;
    left: calc(50% - 52rem);
}

.under_eye_text h1 {
    display: inline-block;
    font-size: 4rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #fff;
    background: #E95513;
    margin: auto;
    padding: 10px 15px;
    margin-bottom: 1.6rem;
}

.under_eye_text h3 {
    font-size: 5rem;
    font-weight: 500;
    color: #fff;
    margin: auto;
    text-shadow: 2px 2px 10px rgb(0 0 0 / 30%);
}

.under_eye_text h3 span {
    background-color: #E95513;
    display: inline-block;
    padding: 1rem;
}

.news-newslist{
    position: relative;
    background: url("../images/top/top-hero.jpg") no-repeat;
    background-size: cover;
    padding: 5rem 0 10rem;   
}

.newslist_inner {
    position: relative;
    width: 95%;
    max-width: 1040px;
    margin: 8rem auto -5rem;
}

.newslist_box{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 10rem;
}

.newslist_box a{
    width: 50%;
    max-width: 350px;
    margin-bottom: 5rem;
}

.about-philosophy{
    position: relative;
    background: url("../images/top/top-hero.jpg") no-repeat;
    background-size: cover;
    padding: 5rem 0 10rem;
}

.philosophy_inner {
    position: relative;
    width: 95%;
    max-width: 1040px;
    margin: 8rem auto -5rem;
}

.philosophy_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.philosophy_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.philosophy_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.philosophy_inner h3 {
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
}

.philosophy-img{
    display: block;
    width: 70%;
    max-width: 1200px;
    margin: 0 auto;
}

.phi_padding {
    padding: 0 4rem;
}

.about-message{
    position: relative;
    background: url("../images/about/message-bg.jpg") no-repeat;
    background-size: cover;
    padding: 5rem 0 10rem;
}

.message_inner {
    position: relative;
    width: 95%;
    max-width: 1040px;
    margin: 8rem auto -5rem;
}

.message_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.message_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.message_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.message_inner h3 {
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
}

.mes_box{
    display: flex;
    justify-content: center;
    margin-top: 5rem;
}

.mes_box img{
    width: 40%;
    height: fit-content;
    margin-right: 5%;
}

.mes_text{
    width: 55%;
}

.mes_text_ttl{
    font-size: 2.8rem;
    margin-bottom: 2rem;
}

.mes_text_desc{
    font-size: 1.6rem;
    line-height: 1.6;
}

.mes_text_left{
    text-align: end;
    line-height: 1.8;
}

.history {
    position: relative;
    background: url("../images/top/top-hero.jpg") no-repeat;
    background-size: contain;
    padding: 5rem 0 10rem;
}

.history_inner {
    position: relative;
    width: 95%;
    max-width: 1040px;
    margin: 8rem auto -5rem;
}

.history_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.history_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.history_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.history_inner h3 {
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
}

.his_box{
    margin-top: 5rem;
}

.his_box dl {
    display: flex;
}

.his_box_left {
    color: #fff;
    width: 10rem;
    text-align: center;
    padding-top: 1.4rem;
    border: 0.5px solid #fff;
}

.his_box dl:nth-child(1) .his_box_left{
    background: linear-gradient(180deg, #DB4F00, #ED5800);
}

.his_box dl:nth-child(2) .his_box_left{
    background: linear-gradient(180deg, #ED5800, #F95E00);
}

.his_box dl:nth-child(3) .his_box_left{
    background: linear-gradient(180deg, #F95E00, #F96000);
}

.his_box dl:nth-child(4) .his_box_left{
    background: linear-gradient(180deg, #F96000, #F96100);
}

.his_box dl:nth-child(5) .his_box_left{
    background: linear-gradient(180deg, #F96100, #FE9A00);
}

.his_box dl:nth-child(6) .his_box_left{
    background: linear-gradient(180deg, #FE9A00, #FFB100);
}

.his_box_left dt {
    font-family: Inter, serif;
    font-size: 1.7rem;
}

.his_box_right {
    display: flex;
    justify-content: space-between;
    width: calc(100% - 10rem);
}

.his_box_right_inner {
    display: flex;
    flex-wrap: wrap;
}

.his_box_right_inner div{
    display: flex;
    width: 100%;
}

.his_box_right img{
    max-width: 130px;
    height: fit-content;
    margin-bottom: 4rem;
}

.his_box_right dt {
    font-size: 2rem;
    color: #000;
    padding: 0 4rem;
    padding-top: 3rem;
}

.his_box_right dd {
    font-size: 1.8rem;
    line-height: 3.6rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.his_box_right_block dt {
    font-size: 2rem;
    color: #000;
    padding: 0 4rem;
    padding-top: 3rem;
}

 dt.left-border{
    position: relative;
 }

  dt.left-border::before{
    content: "";
    position: absolute;
    top: 40px;
    left: -1px;
    height: 2px;
    background: #000;
    width: 28px;
 }

.his_box_right_block dd {
    font-size: 1.8rem;
    line-height: 3.6rem;
    padding-top: 2rem;
    
}

.his_box_right_block div {
    display: flex;
}

.his_box_right_block div:last-child dd {
    padding-bottom: 4rem;
}

.company{
    position: relative;
    background: url("../images/top/top-other.jpg") no-repeat;
    background-size: contain;
    background-position: center bottom;
    padding-bottom: 5rem;
}

.company_inner {
    position: relative;
    width: 95%;
    max-width: 1040px;
    margin: 8rem auto 10rem;
}

.company_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    margin-bottom: 5rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.company_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.company_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.company_inner h3 {
    font-size: 5rem;
    line-height: 1.4;
    font-weight: 500;
    margin-top: -2rem;
    padding-bottom: 3rem;
}

.company_box{
    margin-top: 5rem;
}

.company_box dl {
    display: flex;
}

.company_box dt {
    color: #fff;
    width: 15rem;
    text-align: center;
    font-size: 1.7rem;
    padding: 4rem 0;
    border: 0.5px solid #fff;
    margin-right: 6rem;
}

.company_box dd {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: left;
    width: 60%;
    font-size: 2rem;
    line-height: 1.5;
}

.company_box dd p{
    margin: 2rem 0 4rem;
}

.company_box dl:nth-child(1) dt{
    background: linear-gradient(180deg, #E05100, #E35300);
}

.company_box dl:nth-child(2) dt{
    background: linear-gradient(180deg, #E35300, #EA5600);
}

.company_box dl:nth-child(3) dt{
    background: linear-gradient(180deg, #EA5600, #F25A00);
}

.company_box dl:nth-child(4) dt{
    background: linear-gradient(180deg, #F25A00, #F95F00);
}

.company_box dl:nth-child(5) dt{
    background: linear-gradient(180deg, #F95F00, #F96200);
}

.company_box dl:nth-child(6) dt{
    background: linear-gradient(180deg, #F96200, #FB7500);
}

.company_box dl:nth-child(7) dt{
    background: linear-gradient(180deg, #FB7500, #FC8A00);
}

.company_box dl:nth-child(8) dt{
    background: linear-gradient(180deg, #FC8A00, #FB8300);
}

.company_box dl:nth-child(9) dt{
    background: linear-gradient(180deg, #FB8300, #FC8E00);
}

.company_box dl:nth-child(10) dt{
    background: linear-gradient(180deg, #FC8E00, #FFB100);
}

.company_box dd.copmany-logo {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.copmany-logo img{
    width: 400px;
}

.company_box dd.copmany-logo p{
    margin: 0 0 40px;
}

.group_inner {
    width: 80%;
    margin-left: auto;
}

.group_padding {
    padding: 5rem 4rem 10rem;
}

.group_inner h2 {
    font-size: 16rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
    margin-bottom: -1rem;
}

.group_inner h3 {
    font-size: 4rem;
    font-weight: 500;
    color: #fff;
}

.group_inner h3 span {
    background-color: #E95513;
    display: inline-block;
    padding: 1rem;
}

.group_box {
    margin-top: 4rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.group_box_left {
    border: 2px solid #FF9100;
    box-sizing: border-box!important;
    width: 48%;
    position: relative;
    height: 100%;
}

.group_box_right {
    border: 2px solid #1A326E;
    box-sizing: border-box!important;
    width: 48%;
    position: relative;
    height: 100%;
}

.group_box_left img {
    display: block;
    margin: auto;
}

.group_box_right img {
    display: block;
    margin: auto;
    padding-top: 2rem;
}

.group_box_img {
    height: 12rem;
    display: flex;
}

.group_box_left p {
    background-color: #FF9100;
    color: #fff;
    font-size: 2.2rem;
    line-height: 3.8rem;
    text-align: center;
    padding: 2rem 1rem 5rem;
    margin-top: 2rem;
}

.group_box_right p {
    background-color: #1A326E;
    color: #fff;
    font-size: 2.2rem;
    line-height: 3.8rem;
    text-align: center;
    padding: 2rem 1rem 5rem;
    margin-top: 2rem;
}

.group_box_left a {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 22rem;
    font-size: 2.5rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
}

.group_box_left a::before, .group_box_left a::after {
    position: absolute;
    content: '';
}

.group_box_left a::before {
    top: 3rem;
    right: 3rem;
    width: 4rem;
    height: 5px;
    background: #E95513;
}

.group_box_left a::after {
    top: 2.3rem;
    right: 1rem;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 30px solid #E95513;
}

.group_box_right a {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 22rem;
    font-size: 2.5rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
}

.group_box_right a::before, .group_box_right a::after {
    position: absolute;
    content: '';
}

.group_box_right a::before {
    top: 3rem;
    right: 3rem;
    width: 4rem;
    height: 5px;
    background: #E95513;
}

.group_box_right a::after {
    top: 2.3rem;
    right: 1rem;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 30px solid #E95513;
}

.side_inner {
    opacity:0;
    display: none;
}

.side_inner h2 {
    font-size: 1rem;
    background-color: #E95513;
    color: #fff;
    font-weight: 500;
    padding: 1rem;
    margin-top: 2rem;
    display: inline-block;
    letter-spacing: .1em;
}

.side_inner ul li a {
    font-size: 1.3rem;
    border-left: 5px solid #A9A9A9;
    padding: 1rem 0;
    padding-left: 0.5rem;
    display: block;
    color: #A9A9A9!important;
}

.side_inner ul li a:hover {
    border-left: 5px solid #E95513;
    color: #E95513!important;
}

.side_inner.m_fixed_side {
	top: 30%;
    left: 8%;
    position: fixed;
    z-index: 100;
    opacity: 1;
    display: block;
    background-color: #fff;
    padding: 2rem;
    border-radius: 2rem;
    max-width: 1065px;
    margin: auto;
    width: 12rem;
}

.side {
    max-width: 1065px;
    margin: auto;
}

/* footerã¾ã§ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ã—ãŸã‚‰æ¶ˆã™ */
.hidden {
  visibility: hidden;
  opacity: 0;
  
}









@media screen and (width <= 1440px) {
.phi_box p:nth-of-type(6) {
    right: 0%;
}

}

@media screen and (width <= 1300px) {
.phi_box p:nth-of-type(3) {
    left: 66%;
}

.phi_box p:nth-of-type(2) {
    left: 34%;
}

.phi_box p:nth-of-type(5) {
    left: 0%;
}

}




/* --------ãƒŸãƒ„ã‚«ãƒ«--------- */


.service_inner {
    width: 72%;
    margin-left: auto;
    padding-bottom: 8.8rem;
}

.service_inner h2 {
    font-size: 11rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
    padding-left: 1.7rem;
    margin-bottom: -0.8rem;
}

.service_inner h3 {
    font-size: 4rem;
    font-weight: 500;
    color: #fff;
}

.service_inner h3 span {
    background-color: #E95513;
    display: inline-block;
    padding: 1rem;
}

.service_text {
    font-size: 2.1rem;
    line-height: 4rem;
    margin: 5rem 0 6rem;
}

.service_box {
    padding-left: 6.7rem;
}

.service_box h4 {
    font-size: 7.5rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #F08519;
}

.service_box h5 {
    font-size: 3rem;
    font-weight: 500;
    color: #fff;
    margin-top: 2rem;
}

.service_box h5 span {
    background-color: #F08519;
    display: inline-block;
    padding: 1rem;
}

.service_box ul {
    margin-top: 6rem;
}

.service_list_box {
    display: flex;
}

.service_box ul li {
    border-bottom: 1px solid #000;
    padding-bottom: 7.7rem;
    margin-bottom: 7.7rem;
}

.service_list_box_left {
    width: 60%;
    margin-right: 4rem;
}

.service_list_box_right {
    width: 40%;
}

.service_list_box_right p:nth-of-type(1) {
    font-size: 2.3rem;
    margin-bottom: 2rem;
}

.service_list_box_right p:nth-of-type(2) {
    font-size: 1.5rem;
    line-height: 3rem;
}

.service_list_box_right a {
    display: block;
    width: 22rem;
    font-size: 2.3rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
    position: relative;
    margin-left: auto;
}

.service_box ul li:nth-child(1) .service_list_box_right a {
    margin-top: 3rem;
}

.service_box ul li:last-child {
    margin-bottom:0;
}

.service_list_box_right a::before {
    top: 3rem;
    right: 3rem;
    width: 4rem;
    height: 5px;
    background: #E95513;
}

.service_list_box_right a::after {
    top: 2.3rem;
    right: 1rem;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 30px solid #E95513;
}

.service_list_box_right a::before, .service_list_box_right a::after {
    position: absolute;
    content: '';
}

.mit_eye_inner .under_eye_text h2 {
    margin-bottom: -3.5rem;
    padding-left: 8rem;
}












/* --------ãƒŸãƒ„ã‚«ãƒ«ãƒ—ãƒ­ãƒ•ã‚§ãƒƒã‚·ãƒ§ãƒŠãƒ«--------- */

.mitpro_eye_inner h2 {
    font-size: 13rem;
    margin-bottom: 2rem;
    padding-left: 6.5rem;
}

.mitpro_box dl:nth-child(5) dt {
    align-items: center;
    padding-top:0;
}

.company_box dl:nth-child(5) dd {
    padding: 0;
}

.mitpro_list_box ul li:nth-child(1) .service_list_box_right a {
    margin-top: 0;
}

.mitpro_list_box ul li:nth-child(2) .service_list_box_right a {
    margin-top: 2rem;
}

.mitpro_list_box ul li:nth-child(3) .service_list_box_right a {
    margin-top: 2rem;
}

.mitpro_list_box ul li:nth-child(4) .service_list_box_right a {
    margin-top: 1rem;
}

.mitpro_list_box ul li:nth-child(1) .service_list_box_right p span {
    font-size: 1.3rem;
    margin-left: 0.5rem;
}

.mitpro_list_box ul li:nth-child(3) .service_list_box_right p span {
    font-size: 1.3rem;
    margin-left:5rem;
}

.mitpro_list_box ul li:nth-child(4) .service_list_box_right p span {
    font-size: 1.3rem;
    display: block;
    margin-top: 1rem;
}

.mitpro_inner {
    padding-bottom:0;
} 

.mitpro_list_box {
    padding-bottom:5rem;
    background: #fff;
    padding: 5rem 7rem 10rem;
}

.mitpro_bg {
    margin-top: 0;
    padding: 0;
    background-color: #EFD1C1;
}

.mitpro_list_box_2 h4 {
    padding-top: 5rem;
}

.ccs_list ul li {
    border-bottom: unset;
    padding-bottom: 0;
    margin-bottom: 0;
}

.ccs li .service_list_box_right p span {
    margin-left: 6rem!important;
}

.ccs_btn {
    margin-top: -3rem!important;
}

.ccs_list {
    border-left: 3px solid #A9A9A9;
    padding-left: 6.7rem;
}

.ccs_list_box {
    display: flex;
    justify-content: end;
}

.ccs_list_box_left {
    width: 50%;
    margin-right: -1rem;
}

.ccs_list_box_right {
    width: 40%;
    margin-left: 4rem;
}

.ccs_list_box_right p:nth-of-type(1) {
    font-size: 2rem;
    margin-bottom: 2rem;
}

.ccs_list_box_right p:nth-of-type(2) {
    font-size: 1.5rem;
    line-height: 3rem;
}

.ccs_list_box_right a {
    display: block;
    width: 22rem;
    font-size: 2.3rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
    position: relative;
    margin-left: auto;
}

.ccs_list_box_right a::before {
    top: 3rem;
    right: 3rem;
    width: 4rem;
    height: 5px;
    background: #E95513;
}

.ccs_list_box_right a::after {
    top: 2.3rem;
    right: 1rem;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 30px solid #E95513;
}

.ccs_list_box_right a::before, .ccs_list_box_right a::after {
    position: absolute;
    content: '';
}

.ccs_list ul li:nth-child(1) {
    margin-bottom: 5rem;
}

.ccs li:nth-child(2) .service_list_box_right p:nth-of-type(1) span {
    margin-left: 6rem !important;
    font-size: 1.3rem;
}

.ccs li:nth-child(3) .service_list_box_right p:nth-of-type(1) span {
    margin-left: 5rem !important;
}

.ccs li:nth-child(3) {
    padding-bottom: 3rem;
}

.mitpro_list_box_2 {
    padding-bottom: 0;
}

.mitpro_inner_2 {
    padding-bottom: 15rem;
}



/* --------æŽ¡ç”¨ã”æ‹…å½“è€…ã®æ–¹ã¸--------- */



.rec_eye_inner .under_eye_text h2 {
    padding-left: 7rem;
    margin-bottom: -3.4rem;
}

.rec_eye_inner .under_eye_text h3 {
    padding-left: 0.9rem;
}

.rec_eye_text_bottom {
    max-width: 1085px;
    margin: auto;
    padding: 0 4rem;
    margin-top: 5rem;
}

.rec_eye_text_bottom h2 {
    font-size: 3.2rem;
    font-weight: 500;
    margin-bottom: 3rem;
}

.rec_eye_text_bottom p {
    font-size: 2rem;
    line-height: 4.5rem;
    margin-bottom: -5rem;
}

.rec_inner {
    width: 80%;
    margin-left: auto;
}

.rec_inner h2 {
    display: block;
    width: 25rem;
    background: #000;
    padding: 1rem 1.5rem;
    font-size: 2.2rem;
    font-weight: 500;
    color: #fff;
    margin: 2rem 0 5rem;
}

.rec_inner ul:last-child h2{
    background: #0B327C;
}

.rec_inner h3 span {
    background-color: #F08519;
    display: inline-block;
    padding: 1rem;
}

.rec_inner ul {
    margin-top: 10rem;
}

.rec_box {
    display: flex;
}

.rec_box_left {
    width: 65%;
}

.rec_box_right {
    width: 50%;
    position: relative;
}

.rec_inner ul li {
    border-bottom: 3px solid #F08519;
    padding-bottom: 7.7rem;
    margin-bottom: 7.7rem;
}

.rec_inner ul li {
    padding-top: 7.7rem;
    margin-top: -7.7rem;
}

.rec_box_right h4 {
    font-size: 2.3rem;
    margin-bottom: 2rem;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.rec_box_right h4 span {
    font-size: 1.5rem;
}

.rec_box_right p {
    font-size: 1.5rem;
    line-height: 3rem;
}

.rec {
    padding-bottom: 5rem;
}

.rec_box_right a {
    display: flex;
    padding: 1.2rem 3rem;
    position: absolute;
    bottom: 0;
    right: 0;
}

.rec_inner h2:nth-of-type(2) {
    margin-bottom: 0;
}

.side_rec_inner {
    
}

.side_rec_inner h2:nth-of-type(2) {
    font-size: 1.3rem;
}

.side_rec_inner ul li a {
    font-size: 1rem;
}

.rec_eye_text_bottom_2 {
    width: 80%;
    margin-left: auto;
}

.rec_gray {
    background-color: rgb(210 210 210 / 15%);
    margin: 10rem 0 18rem;
    padding-top: 5rem;
}

.contact_inner {
    max-width: 1085px;
    margin: auto;
    padding: 0 4rem;
    position: relative;
}

.contact_inner h2 {
    position: relative;
    display: inline-block;
    font-size: 4rem;
    padding: 0 1.5rem;
    font-family:'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
}

.contact_inner h2::before{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    left:0;
    background: #E95513;
}

.contact_inner h2::after{
    content: "";
    position: absolute;
    display: block;
    height: 6px;
    width: 6px;
    border-radius: 6px;
    top:18px;
    right:0;
    background: #E95513;
}

.contact_inner h3 {
    position: relative;
    top: 25px;
    width: fit-content;
    display: block;
    background: #000;
    color: #fff;
    font-size: 2.2rem;
    line-height: 1.4;
    font-weight: 500;
    padding: 1.2rem 2rem;
}

.contact_inner h3 span {
    padding: 0 1rem;
}

.contact_inner img {
    margin-top: -3rem;
    position: relative;
    z-index: -1;
}

.contact_inner a {
    position: absolute;
    bottom: 3rem;
    right: 8rem;
    width: 26rem;
    justify-content: space-between;
    font-size: 2.2rem;
}

.prof_inner h2 {
    margin-bottom: 0;
    padding-left: 0;
}

.prof_inner h2:nth-of-type(2) {
    margin-bottom: -2rem;
}

/* --------ãŠçŸ¥ã‚‰ã›--------- */


.news_inner {
    max-width: 1065px;
    margin: auto;
    padding: 0 4rem;
    margin-top: 10rem;
    margin-bottom: 10rem;
}

.news_list {
    margin-top: 5rem;
    margin-bottom: 18rem;
}

.news_list dl {
    padding: 4rem 0;
    border-top: 2px solid #000;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}

.news_list dl:last-of-type {
    border-bottom: 2px solid #000;
}


.news_list dl dt:nth-of-type(1) {
    font-size: 1.5rem;
    letter-spacing: .15em;
    margin-bottom: 1rem;
}

.news_list dl dt:nth-of-type(2) {
    margin: 0 4rem;
}

.news_list dl dt:nth-of-type(2) p {
    background-color: #FFB62B;
    width: 9rem;
    height: 2.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    border-radius: 5rem;
    color: #fff;
}

.news_list dl dt:nth-of-type(2) .event p {
    background-color: #85C852;
}

.news_list dl dt:nth-of-type(2) .media p {
    background-color: #78B8EB;
}

.news_list dl dd {
    font-size: 1.6rem;
    line-height: 2.4rem;
}

.news_list_left img {
    height: auto;
}

.news_list_left {
    width: 25%;
}

.news_list_right {
    width: 70%;
}

.cat_list ul {
    display: flex;
}

.cat_list ul li:nth-child(2) {
    margin: 0 2rem;
}

.cat_list ul li a {
    background-color: #FFB62B;
    width: auto;
    height: 2.8rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    border-radius: 5rem;
    color: #fff;
    padding: 0.1rem 2rem;
}

.cat_list ul .event a {
    background-color: #85C852;
}

.cat_list ul .media a {
    background-color: #78B8EB;
}

.wp-pagenavi {
    text-align: center;
}

.wp-pagenavi a, .wp-pagenavi span {
    border: unset!important;
    padding: 0!important;
    margin: 0 2rem!important;
    color: #F08519!important;
    font-size: 1.6rem;
    font-weight: 500!important;
}

.wp-pagenavi .nextpostslink {
    border: 2px solid #F08519 !important;
    border-radius: 50%;
    display: inline-block;
    padding: 1rem !important;
    width: 3.6rem;
    height: 3.6rem;
    box-sizing: border-box!important;
    line-height: 1.3rem;
    font-size: 1.1rem;
    font-weight: bold !important;
}

.wp-pagenavi .previouspostslink {
    border: 2px solid #F08519 !important;
    border-radius: 50%;
    display: inline-block;
    padding: 1rem !important;
    width: 3.6rem;
    height: 3.6rem;
    box-sizing: border-box!important;
    line-height: 1.3rem;
    font-size: 1.1rem;
    font-weight: bold !important;
}

.wp-pagenavi .current {
    background-color: #F08519;
    color: #fff!important;
    display: inline-block;
    width: 4.8rem;
    height: 3.6rem;
    border-radius: 5rem;
    line-height: 3.3rem;
}

.art_inner {
    max-width: 1085px;
    margin: auto;
    padding: 0 4rem;
    margin-top: 10rem;
    margin-bottom: 10rem;
}

.art_day dl {
    display: flex;
}

.art_day dl dt {
    font-size: 2rem;
    letter-spacing: .15em;
}

.art_day dl dd li {
    background-color: #F08519;
    padding: 0.5rem 1rem;
    border-radius: 5rem;
    margin-left: 2rem;
}

.art_day dl dd .event {
    background-color: #85C852;
}

.art_day dl dd .media {
    background-color: #78B8EB;
}

.art_content p {
    font-size: 1.6rem;
    line-height: 2.4rem;
}

.art_content a {
    font-size: 1.6rem;
    text-decoration: underline;
}

.art_day dl dd li p {
    font-size: 1.2rem;
    color: #fff;
}

.art_title {
    font-size: 2.8rem;
    margin: 3rem 0 4rem;
    letter-spacing: .1em;
    line-height: 4rem;
}


.art_btn a {
    display: block;
    width: 36.8rem;
    font-size: 2.5rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
    position: relative;
    margin-left: auto;
}

.art_btn a::before {
    top: 3rem;
    right: 3rem;
    width: 4rem;
    height: 5px;
    background: #E95513;
}

.art_btn a::after {
    top: 2.3rem;
    right: 1rem;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 0 solid transparent;
    border-left: 30px solid #E95513;
}

.art_btn a::before, .art_btn a::after {
    position: absolute;
    content: '';
}

.news_eye_inner img  {
    width: 1055px!important;
}










/* --------ã‚¹ãƒžãƒ›å¯¾å¿œ--------- */
@media screen and (width <= 980px)   {
.pc_none {
    display: block!important;
}

.sp_none {
    display: none!important;
}

.top-hero {
    background-size: contain;
}

.top_eye_inner {
    margin-top: 6rem;
}

.top_about_inner {
    width: 90%;
    margin-top: 0;
}

.top_about_inner h2 {
    font-size: 3.2rem;
    padding: 0 1.5rem 2rem;
    margin-bottom: 0;
}

.top_about_inner h2::before,.top_about_inner h2::after {
    top:15px;
}

.top_about_inner h3 {
    font-size: 3.2rem;
    padding: 0 0 3rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.top_about_box {
    margin-top: 2rem;
    position: relative;
}

.top_about_box::after {
    display: none;
}

.top_about_box p {
    font-size: 1.6rem;
    line-height: 3rem;
    padding: 2rem 0;
}

.top_about_box a {
    position: relative;
        right: unset;
        width: 60%;
        margin: auto;
        display: block;
        font-size: 2rem;
}

.top-hero-img{
    width: 100%;
    margin-top: 10rem;
    left: unset;
}

.mitpro_list_box{
    padding: 0;
    background: none;
}

.top_about_box::before {
    height: 100%;
    width: 60%;
    clip-path: polygon(0 35%, 0% 100%, 100% 100%);
}

.top_service_inner {
    width: 90%;
    margin-top: 7rem;
    padding: 5rem 0 10rem;
}

.top_service_inner h2 {
    font-size: 3.2rem;
    padding: 0 1.5rem 2rem;
    margin-bottom: 0;
}

.top_service_inner h2::before,.top_service_inner h2::after {
    top:15px;
}

.top_service_inner h3 {
    font-size: 3.2rem;
    padding: 0 0 3rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.top_service_inner p {
    font-size: 1.6rem;
    margin-top: 0;
    line-height: 3.1rem;
}

.top_service_card p{
    margin-top: 2rem;
}

.top_service_inner::after {
    width: 100%;
    height: 30rem;
    clip-path: polygon(0% 0, 100% 100%, 100% 0);
}

.top_service_inner::before {
    height: 35rem;
}

.top_service_card{
    width: 100%;
    margin: 0 0 4rem;
}

.top_service_box {
    margin-top: 40rem;
    padding: 0 0 0 2rem;
}

.top_service_img {
    position: absolute;
    top: 620px;
    left: 10%;
    width: 80%;
}

.top_service_inner ul {
    padding-left: 2rem;
    border-left: 0.3rem solid #fff;
}

.top_service_inner ul li:nth-child(1) {
    margin-bottom: 5rem;
}

.top_service_inner ul li h4 {
    font-size: 6rem;
    margin-bottom: -0.5rem;
}

.top_service_inner ul li h5 {
    font-size: 2.2rem;
    margin-bottom: -1.5rem;
}

.top_service_inner ul li h5 span {
    padding: 0.5rem 1rem;
}

.top_service_inner ul li a {
    bottom: -2rem;
    right: 2rem;
    width: 22rem;
    font-size: 2.2rem;
}

.top_service_inner ul li:nth-child(2) h4 {
    margin-bottom: 1.7rem;
}

.top_news_inner {
    padding: 5rem 2rem;
}

.top_news_inner h2 {
    font-size: 3rem;
    padding: 0 1.5rem;
    margin-bottom: 1rem;
}

.top_news_inner h2::before,.top_news_inner h2::after {
    top:15px;
}

.top_news_inner h3 {
    font-size: 3.2rem;
    padding: 0 0 3rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.btn-news{
    display: flex;
    width: 60%;
    margin: 0 auto;
}

.top_news_box {
    display: block;
}

.top_news_box_left {
    width: auto;
}

.top_news_box_left h2 {
    font-size: 10rem;
    margin-bottom: -2rem;
    padding-left: 1rem;
}

.top_news_box_left h3 {
    font-size: 3rem;
}

.top_news_box_left a {
    width: 31rem;
    font-size: 2.1rem;
    padding: 1rem;
    margin-top: 2rem;
}

.top_news_box_right {
    width: auto;
    margin-top: 4rem;
}

.top_recruit_inner {
    width: 90%;
    margin: 0 auto;
    padding: 2rem 0 8rem;
}

.top_recruit_inner {
    width: 90%;
    margin: 0 auto;
    padding: 2rem 0;
}

.top_recruit_inner h2 {
    font-size: 3rem;
    padding: 0 1.5rem;
    margin-bottom: 1rem;
}

.top_recruit_inner h2::before,.top_recruit_inner h2::after {
    top:15px;
}

.top_recruit_inner h3 {
    font-size: 3.2rem;
    padding: 0;
    margin-bottom: 2rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.top_recruit_inner img  {
    width: 100%;
    margin: 0 auto;
}

.top_recruit_inner a {
    position: relative;
    bottom: 2.7rem;
    right: unset;
    left: unset;
    font-size: 2.1rem;
    display: flex;
    width: 200px;
    margin: 0 auto;
}

.btn-recruit__text {
    font-size: 2rem;
    padding: .5rem 5rem .5rem 0;
    width: 125px;
}

.other{
    padding-bottom: 2rem;
}

.top_other_inner {
    padding: 2rem 2rem 5rem;
}

.top_other_inner h2 {
    font-size: 3rem;
    padding: 0 1.5rem;
    margin-bottom: 1rem;
}

.top_other_inner h2::before,.top_other_inner h2::after {
    top:15px;
}

.top_other_inner h3 {
    font-size: 3.2rem;
    padding: 0;
    margin-bottom: 2rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.top_other_inner ul {
    display: block;
}

.top_other_inner ul li {
    margin-bottom: 1rem;
    width: auto;
}

.top_other_inner ul li h3 {
    font-size: 2.1rem;
    font-weight: 500;
    color: #fff;
    margin-bottom: 1.4rem;
}

.top_other_inner ul li:nth-child(2) {
    margin-bottom: 3rem;
}

.top_other_inner ul li:nth-child(3) {
    margin-bottom: 3rem;
}

.top_news_box_right dl {
    display: block;
    padding: 1rem 0 2rem;
}

.top_news_box_right dl div {
    display: flex;    
    align-items: center;
    margin-bottom: 1.5rem;
}



#js-header_sp {
    display: block;
}

#js-header {
    display: none;
}

.top_news_box_right dl dt:nth-of-type(2) ul li {
    margin: 1rem 0;
}



.header_right {
    background-color: unset;
} 

.l-section {
    padding: 7rem 0;
    margin-bottom: 0;
}



.menu-btn {
    position: absolute;
        top: 1.8rem;
        right: 2rem;
        display: flex;
        height: 24px;
        width: 32px;
        justify-content: center;
        align-items: center;
        z-index: 90;
}

.menu-btn span,
.menu-btn span::before,
.menu-btn span::after {
    content: '';
        display: block;
        height: 3px;
        width: 32px;
        border-radius: 3px;
        background-color: #3d3a39;
        position: absolute;
}

.menu-btn span::before {
    bottom: 10px;
}

    .gnavi__list:nth-child(3) {
        margin-right: unset;
    }

.menu-btn span::after {
    top: 10px;
}

#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgb(255 255 255 / 0%);/* ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚ªãƒ¼ãƒ—ãƒ³æ™‚ã¯çœŸã‚“ä¸­ã®ç·šã‚’é€æ˜Žã«ã™ã‚‹ */
}

#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
    background-color: #E95513;
    height: 1px;
    width: 20px;
}

#menu-btn-check:checked ~ .menu-btn span::after {
    top: 1px;
    transform: rotate(-45deg);
    background-color: #E95513;
    height: 1px;
    width: 20px;
}

#menu-btn-check {
    display: none;
}

.gnavi__wrap {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
	visibility: hidden;
    opacity: 0;
    left: 0;/* leftã®å€¤ã‚’å¤‰æ›´ã—ã¦ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’ç”»é¢å¤–ã¸ */
    z-index: 80;
    background-color: #fff;
    transition: all 0.5s;/* ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³è¨­å®š */
}

#menu-btn-check:checked ~ .gnavi__wrap {
    left: 0;
    visibility: visible;
    opacity: 1;
}

#menu-btn-check:checked ~ html {
    overflow: hidden;
}

#menu-btn-check:checked ~ .hamburger-demo-cover {
    position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	z-index: 0;
	background: rgb(3 3 3 / 50%);
	display: block;
    overflow: hidden;
}

.gnavi__lists {
    display: block;
        height: 100vh;
        overflow-y: scroll;
        background-color: #fff;
}

.gnavi__list a {
    display: grid;
        justify-content: left;
        align-items: center;
        height: 5rem;
        color: #E95513!important;
        padding-bottom: 0;
        vertical-align: middle;
        padding-left: 2rem;
        font-size: 1.3rem;
        border-top: 1px solid #E95513;
}

#js-header {
    display: none;
}

#js-header_sp {
    display: block;
    width: 100vw;
    margin: 0;
}

input[type="checkbox"]:checked + label::after {
    display: none;
}

.gnavi__list_menu {
    height: 5rem;
    display: flex;
    align-items: center;
    font-size: 1.7rem;
    color: #E95513;
    padding-left: 2rem;
    border-bottom: 1px solid #fff;
}

.gnavi__list:nth-child(1) {
        margin-right: 0;
    }

.gnavi__list:nth-child(2) {
        margin-right: auto;
        border-bottom: 1px solid #fff;
    }

.gnavi_hover:hover {
    color: #fff;
}

.dropdown__lists {
    transform: scaleY(0);
    transform-origin: unset;
    width: 100%;
    position: unset;
    top: 40px;
    left: 0;
}


.gnavi__list:active .dropdown__lists {
    display: block;/* GãƒŠãƒ“ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ãƒ›ãƒãƒ¼ã—ãŸã‚‰è¡¨ç¤º */
}

.gnavi__list:active .dropdown__lists {
    visibility: visible;/* GãƒŠãƒ“ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ãƒ›ãƒãƒ¼ã—ãŸã‚‰è¡¨ç¤º */
    opacity: 1;/* ä¸é€æ˜Žåº¦1 */
}

.gnavi__list:active .dropdown__lists {
    transform: scaleY(1);/* GãƒŠãƒ“ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«ãƒ›ãƒãƒ¼ã—ãŸã‚‰è¡¨ç¤º */
}

#menu_bar04:checked ~ #links04 li,
#menu_bar05:checked ~ #links05 li,
#menu_bar06:checked ~ #links06 li,
#menu_bar10:checked ~ #links10 li,
#menu_bar11:checked ~ #links11 li,
#menu_bar12:checked ~ #links12 li,
#menu_bar14:checked ~ #links14 li,
#menu_bar13:checked ~ #links13 li
{
    height:5rem;
    opacity: 1;
    overflow:auto;
}

#menu_bar08:checked ~ #links08 {
    height: auto;
    opacity: 1;
    overflow:auto;
}

#menu_bar09:checked ~ #links09 li{
    height: auto;
    opacity: 1;
    overflow:auto;
}



.label_7 {
    position: relative;
    
}

.label_7::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: translateY(-25%) rotate(135deg);
        position: absolute;
        right: 5%;
}


.label_8 {
    position: relative;
}

.gnavi__list_acc label::after {
    content: "";
    display: block;
    width: 1.3rem;
    height: 1.3rem;
    border-top: #E95513 1px solid;
    border-right: #E95513 1px solid;
    transform: rotate(135deg);
    position: absolute;
    right: 5%;
    top: 0;
    bottom: 15%;
    margin: auto;
}

#menu_bar08:checked ~ #links08::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar09:checked ~ #links09::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar05:checked ~ #links05::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar07 {
    display: none;
}

.label_7 {
    height: 5rem;
    display: flex;
    align-items: center;
    padding-left: 2rem;
    color: #E95513;
    transition: all .3s;
}

.label_8 {
    height: 5rem!important;
    display: flex;
    align-items: center;
    padding-left: 2rem!important;
    color: #E95513;
    
}

#links04 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */
  
}

#links05 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */
   
}

#links06 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */ 
}

#links09 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */ 
}

#links10 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */ 
}

#links11 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */ 
}

#links14 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */ 
}

#links13 li {
    height: 0;
    overflow: hidden;

    /* transition: all .3s; */ 
}



#menu_bar07:checked ~ #links07 {
    height: auto;
    overflow: auto;
}

#menu_bar10:checked ~ #links10 {
    height: auto;
    overflow: auto;
    
}

#menu_bar11:checked ~ #links11 {
    height: auto;
    overflow: auto; 
}

#menu_bar12:checked ~ #links12 {
    height: auto;
    overflow: auto; 
}

#menu_bar14:checked ~ #links14 {
    height: auto;
    overflow: auto; 
}

#menu_bar13:checked ~ #links13 {
    height: auto;
    overflow: auto; 
}

.gnavi__list label:hover {
    background-color: #FFECCC;
}

#menu_bar11 + label{
    padding-left: 4rem;
}

.gnavi__list_acc .dropdown__list .acc_header a{
    padding-left: 4rem;
}


#links07 {
    height: 0;
    overflow: hidden;
  
}

#menu_bar07:checked ~ #links07::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar10:checked ~ #links10::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar11:checked ~ #links11::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar12:checked ~ #links12::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #E95513;
    line-height: 1;
    width: 1.3rem;
    height: 1.3rem;
    border: 0.1em solid currentcolor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box!important;
transform: rotate(-45deg);
    position: absolute;
    right: 5%;
    top: 25px;
}

#menu_bar14:checked ~ #links14::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #E95513;
    line-height: 1;
    width: 1.3rem;
    height: 1.3rem;
    border: 0.1em solid currentcolor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box!important;
transform: rotate(-45deg);
    position: absolute;
    right: 5%;
    top: 25px;
}

#menu_bar13:checked ~ #links13::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
    transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}






#links08 {
    height: 0;
    overflow: hidden;
}

#links10 {
    height: 0;
    overflow: hidden;
}

#links11 {
    height: 0;
    overflow: hidden;
}

#links14 {
    height: 0;
    overflow: hidden;
}

#links13 {
    height: 0;
    overflow: hidden;
}


.dropdown__lists {
    opacity: 1;
    transform: unset;
    visibility: visible;
}

.gnavi__list:hover .dropdown__lists {
    transform: unset;
}

.gnavi__list:hover .dropdown__lists {
    visibility: unset;
    opacity: unset;
}

.gnavi__list:hover .dropdown__lists {
    display: unset;
}

.gnavi__lists .gnavi__list {
    border-bottom: 1px solid #E95513;
    font-size: 1.3rem;
   font-weight: bold;
    
}

.dropdown__list:not(:first-child)::before {
    display: none;
}

.dropdown__list a {
    padding-left: 4rem;
    height: 5rem;
}

.dropdown__list {
    height: 4rem;
}

.gnavi_arrow:hover::after {
    color: #E95513;
}

.gnavi_arrow::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #E95513;
    line-height: 1;
    width: 1.3rem;
        height: 1.3rem;
    border: 0.1em solid currentcolor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box!important;
    transform: translateY(-25%) rotate(135deg);
    position: absolute;
    right: 25%;
}

    .gnavi__list {
        margin-right: auto;
    }
    


/* ãƒ™ãƒ¼ã‚¹ */
.toggle {
	display: none;
}

.Label {/* ã‚¿ã‚¤ãƒˆãƒ« */
	padding: 2.4rem 1.8rem;
        display: block;
        color: #17315e;
        font-size: 1.5rem;
        border-top: 1px solid #17315e;
}

.Label_1 {
    border-top:unset;
}

.Label::before{		/* ã‚¿ã‚¤ãƒˆãƒ«æ¨ªã®çŸ¢å° */
	content: "";
        width: 8px;
        height: 8px;
        border-top: 1px solid #17315e;
        border-right: 1px solid #17315e;
        position: absolute;
        top: calc(50% - 7px);
        right: 20px;
        transform: rotate(135deg);
}

.Label,
.content {
	backface-visibility: hidden;
	transform: translateZ(0);
	
}

.content {		/* æœ¬æ–‡ */
	height: 0;
	padding:0 20px;
	overflow: hidden;
}

.toggle:checked + .Label + .content {	/* é–‹é–‰æ™‚ */
	height: auto;
	
}

.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}


#menu_bar04:checked ~ #links04::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #fff;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: rotate(-45deg);
        position: absolute;
        right: 25%;
        top: 25px;
}

#menu_bar05:checked ~ #links05::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar06:checked ~ #links06::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar10:checked ~ #links10::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar11:checked ~ #links11::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}

#menu_bar12:checked ~ #links12::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #E95513;
    line-height: 1;
    width: 1.3rem;
    height: 1.3rem;
    border: 0.1em solid currentcolor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box!important;
    transform: rotate(-45deg);
    position: absolute;
    right: 5%;
    top: 25px;
}

#menu_bar14:checked ~ #links14::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    color: #E95513;
    line-height: 1;
    width: 1.3rem;
    height: 1.3rem;
    border: 0.1em solid currentcolor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box!important;
    transform: rotate(-45deg);
    position: absolute;
    right: 5%;
    top: 25px;
}

#menu_bar13:checked ~ #links13::after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        color: #E95513;
        line-height: 1;
        width: 1.3rem;
        height: 1.3rem;
        border: 0.1em solid currentcolor;
        border-left: 0;
        border-bottom: 0;
        box-sizing: border-box!important;
        transform: rotate(-45deg);
        position: absolute;
        right: 5%;
        top: 25px;
}





.gnavi__list:last-child a {
    background-color: unset;
    color: #E95513!important;
    padding: 0;
    width: auto;
    border-radius: 0;
    padding-left: 2rem;
}

.gnavi__list_acc label {
    display: flex;
    line-height: 1;
    color: #E95513;
    cursor: pointer;
    height: 5rem;
    justify-content: left;
    align-items: center;
    text-decoration: none;
    position: relative;
    padding-left: 2rem;
    font-size: 1.3rem;
    border-top: 1px solid #E95513;
}

.label_8 {
    border-top:unset!important;
}

.label_9 {
    border-top:unset!important;
}

.label_14 {
    border-top:unset!important;
}

.gnavi_arrow:hover::after {
    transform: rotate(-45deg);
}

.acc_header li a {
    padding-left: 4rem;
    border-top: 1px solid #E95513;
    margin-top: 2px;
}


#links07 li a {
    padding-left: 4rem;
        height: 5rem;
        border-top: 1px solid #E95513;
}

#menu-btn-check:checked ~ .menu-btn {
       position: fixed;
        top: 12px;
        right: 5px;
    }

#js-header_sp.m_fixed {
    left: 0;
    right: 0;
    position: fixed;
    top: 0;
    background-color: #fff;
    z-index: 100;
    border-bottom: 1px solid #c1c1c1;
    animation-name: fadeInAnime_header;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}

.header_inner {
    display: block;
    margin-top: 0;
        padding: 0 2rem;
        background-color: #fff;
        border-radius: unset;
        height: 6rem;
}

.header_left img {
    margin-right: 0;
    width: 70%;
}

.m_fixed .menu-btn {
    top: 1.8rem;
}

.header_left {
    position: relative;
    top: 5px;
    width: 50%;
}

header {
    top: 0;
}



.accordion ul {
  list-style: none;
  margin:0;
}

label{
  cursor: pointer;
}

.toggle{
  display: none;
}

.toggle + ul{
  max-height: 0;
  overflow: hidden;
  transition: all .5s ease;
}

.toggle:checked + ul{
  max-height: 500px;
  transition: all 1s ease-in;
}

.toggle:checked + label::after {
	transform: rotate(-45deg) !important;
}




.pc_footer {
    display: none;
}

.sp_footer {
    display: block;
    background: #000;
}

footer {
    background-color:unset;
}

.sp_footer_inner {
    padding: 4rem 2rem 3rem;
}

.footer_logo {
    display: block;
    margin: auto;
    margin-bottom: 3rem;
    width: 70%;
}

.accordion label {
    font-size: 1.3rem;
    padding: 2rem 0;
    display: block;
    color: #fff;
    border-top: 2px solid #fff;
    position: relative;
}

.accordion label::after {
    content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}





.acc_no_list:nth-child(2) a {
    display: block;
    padding: 2rem 0;
    border-top: 2px solid #fff;
    font-size: 1.3rem;
}

.acc_no_list:nth-child(3) a {
    display: block;
    padding: 2rem 0;
    border-top: 2px solid #fff;
    font-size: 1.3rem;
}

.copy_box ul li a {
    display: block;
    font-size: 1.2rem;
}

.copy_box p {
    font-size: 1rem;
    margin-top: 1rem;
}

.accordion ul li a {
    font-size: 1.3rem;
    padding: 2rem 0;
    display: block;
    color: #fff!important;
}

.sns_link_img {
    border-top:unset!important;
    padding:unset!important;
    margin-left: 1rem;
} 

.copy_box{
    padding:15px 0 12px;
}

.copy_box img {
    width: 200px;
    margin:0;
    padding-left: 2rem;
}

.copy_box ul{
    display: block;
    padding:0 20px;
}

.copy_box ul li{
    margin-bottom: 20px;
}


.acc_no_list li:nth-child(1) {
    display: flex;
    align-items: center;
}

.acc_no_list li:nth-child(1) div:nth-of-type(2) {
    display: flex;
    align-items: center;
    margin-left: 1rem;
}

.acc_no_list li:nth-child(1) div:nth-of-type(1) p {
    border-top: unset;
    font-size: 1.3rem;
    padding: 2rem 0;
}

.acc_no_list li:nth-child(1) {
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    margin-bottom: 30px;
}

.sp-footer-news{
    border: solid 1px #fff;
    width: 100%;
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
}

.sp-footer-contact{
    border: solid 1px #fff;
    width: 100%;
    text-align: center;
    padding: 20px;
    margin-bottom: 1px;
}

.acc_no_list li:nth-child(1) div:nth-of-type(2) img:nth-of-type(1) {
    width: 100%;
}

.acc_no_list li:nth-child(1) div:nth-of-type(2) img:nth-of-type(2) {
    width: 16%;
    margin: 0 1.5rem;
}

.acc_no_list li:nth-child(1) div:nth-of-type(2) img:nth-of-type(3) {
    width: 25%;
}



/* --------ä¼šç¤¾æ¦‚è¦--------- */


.orange {
    display: none;
}

.news-newslist{
    position: relative;
    background: none;
    background-size: cover;
    padding: 5rem 0 10rem;   
}

.newslist_inner {
    position: relative;
    width: 90%;
    margin: 2rem auto 0;
}

.newslist_box{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0;
}

.newslist_box a{
    width: 100%;
    max-width: none;
    margin-bottom: 5rem;
}

.philosophy_inner{
    width: 90%;
    margin-top: 7rem;
    padding: 5rem 0 0;
}

.philosophy_inner{
    width: 90%;
    margin-top: 7rem;
    padding: 5rem 0 0;
}

.philosophy_inner h2 {
    font-size: 3rem;
    padding: 0 1.5rem;
    margin-bottom: 1rem;
}

.philosophy_inner h2::before,.philosophy_inner h2::after {
    top:15px;
}

.philosophy_inner h3 {
    font-size: 3.2rem;
    padding: 0;
    margin-bottom: 2rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.philosophy-img{
    display: block;
    width: 100%;
    margin: 0 auto;
}

.message_inner{
    width: 100%;
    margin-top: 0;
    padding: 0 0 4.5rem;
}

.about-message{
    padding: 0;
    background:#fff
}

.message_inner h2 {
    width: auto;
    font-size: 3rem;
    padding: 0 1.5rem;
    margin: 0 2rem 1rem;
}

.message_inner h2::before,.message_inner h2::after {
    top:15px;
}

.message_inner h3 {
    font-size: 3.2rem;
    padding: 0;
    margin-bottom: 2rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: 90%;
    margin: 0 auto;
}

.mes_box{
    display: block;
}

.mes_box img {
    width: 100%;
    height: fit-content;
    margin: 0;
}

.mes_text {
    position: relative;
    background: url("../images/about/message-bg.jpg") no-repeat;
    background-size: cover;
    width: calc(100% - 4rem);
    margin: 0 auto;
    padding: 4rem 2rem;
}

.company_inner{
    width: 90%;
    margin-top: 0;
    padding: 2rem 0 0;
}

.company_inner h2 {
    font-size: 3rem;
    padding: 0 1.5rem;
    margin-bottom: 1rem;
}

.company_inner h2::before,.company_inner h2::after {
    top:15px;
}

.company_inner h3 {
    font-size: 3.2rem;
    padding: 0;
    margin-bottom: 2rem;
    margin-top: 0;
    line-height: 5.5rem;
    width: auto;
}

.phi_box p:nth-of-type(1) {
    top: 15%;
    left: 38%;
    font-size: 1.4rem;
    line-height: 2.4rem;
}

.phi_box p:nth-of-type(1) span {
    font-size: 2rem;
}

.phi_box p:nth-of-type(2) {
    top: 65%;
    left: 19%;
    font-size: 1.4rem;
    line-height: 2.4rem;
}

.phi_box p:nth-of-type(2) span {
    font-size: 2rem;
}

.phi_box p:nth-of-type(3) {
    top: 54%;
        left: 69%;
    font-size: 1.4rem;
    line-height: 2.4rem;
}

.phi_box p:nth-of-type(3) span {
    font-size: 2rem;
}

.phi_box p:nth-of-type(4) {
    position: absolute;
    top: -9%;
    left: 57%;
    font-size: 1.5rem;
    line-height: 2rem;
    text-align: left;
}

.phi_box p:nth-of-type(5) {
    position: absolute;
    top: 0%;
        left: 0%;
    font-size: 1.5rem;
    line-height: 2rem;
    text-align: left;
}

.phi_box p:nth-of-type(6) {
    position: absolute;
    top: 100%;
        left: 35%;
    font-size: 1.5rem;
    line-height: 2rem;
    text-align: left;
}

.mes_sp_inner {
    margin-top: 20rem;
}

.mes_sp_inner {
    margin-top: 20rem;
}

.mes_sp_inner h2 {
    font-size: 9rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
    padding: 0 4rem;
}

.mes_sp_inner h3 {
    font-size: 3.2rem;
        font-weight: 500;
        color: #fff;
        margin-top: -2.5rem;
        padding: 0 2rem;
}

.mes_sp_inner h3 span {
    background-color: #E95513;
    display: inline-block;
    padding: 1rem;
}

.mes_sp_img {
    margin-top: 5rem;
    position: relative;
}

.mes_sp_img p {
    position: absolute;
        bottom: 0;
        background-color: rgb(26 50 110 / 15%);
        font-size: 1.6rem;
        color: #fff;
        width: 100%;
        text-align: center;
        padding: 2rem 0;
}

.mes_sp_text p {
    font-size: 1.2rem;
    padding: 3rem 2rem 10rem;
    line-height: 2rem;
}

.mes_sp_text p.mes_text_ttl {
    font-size: 1.6rem;
    padding: 3rem 2rem 0;
    line-height: 2rem;
}

.mes_sp_text {
    position: relative;
    z-index: 0;
}

.mes_sp_text::before {
    content: "";
    position: absolute;
    background-color: rgb(0 0 0 / 5%);
    width: 100%;
    height: 42.8rem;
    clip-path: polygon(0 0, 0 85%, 100% 0);
    top: 0;
    left: 0;
    z-index: -1;
}

.mes_sp_text::after {
    content: "";
    position: absolute;
    background-color: rgb(0 0 0 / 5%);
    width: 100%;
    height: 65.5rem;
    clip-path: polygon(20% 100%, 100% 100%, 100% 60%);
    bottom: -50px;
    left: 0;
    z-index: -2;
}

.his_bg {
    margin-top: 5rem;
    background: none;
}

.his_inner h2 {
    font-size: 9rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #E95513;
    margin-bottom: -2rem;
}

dt.left-border::before {
    content: "";
    position: absolute;
    top: 32px;
    left: -1px;
    height: 2px;
    background: #000;
    width: 18px;
}

dt.left-border::after {
    content: "";
    position: absolute;
    top: 28px;
    left: -6px;
    background: #000;
    width: 10px;
    height: 10px;
}

.his_inner h3 {
    font-size: 3.2rem;
    font-weight: 500;
    color: #fff;
}

.his_inner {
    padding: 5rem 2rem;
}

.his_bg::before {
    display: none;
}

.his_bg_2::after {
    display: none;
}

.his_bg::after {
    display: none;
}

.his_box_left {
    width: auto;
        padding-top: 1.4rem;
        border: 0.3px solid #fff;
        writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-orientation: upright;
        padding: 1.5rem;
        text-align: justify;
}

.his_box_right dt {
    font-size: 2rem;
    padding: 0 2rem;
    padding-top: 2.2rem;
    font-weight: bold;
    color: #E95513;
}

.his_box_right dd {
    width: 75%;
    font-size: 1.2rem;
    line-height: 2.1rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.his_box_right_block dt {
    font-size: 2rem;
    color: #E95513;
    padding: 0 2rem;
    padding-top: 3rem;
    font-weight: bold;
}

.his_box_right_block dd {
    font-size: 1.2rem;
    line-height: 2.1rem;
    padding-top: 2rem;
}

.his_box_right img{
    margin: 2rem 0 0;
}

.his_box_right_img{
    width: 100%;
    text-align: end;
}

.his_box_right {
    width: 100%;
}

.his_box_right_block {
    width: 100%;
}

.his_box_right_inner {
    width: 100%;
}


.group_inner {
    max-width: 1300px;
    margin: auto;
    padding: 5rem 2rem 10rem;
}

.group_inner h2 {
    font-size: 9rem;
}

.group_inner h3 {
    font-size: 3.2rem;
    font-weight: 500;
    color: #fff;
}

.group_box {
    margin-top: 4rem;
    display: block;
    justify-content: space-between;
    flex-wrap: wrap;
}

.group_box_left {
    border: 2px solid #FF9100;
    box-sizing: border-box!important;
    width: auto;
    position: relative;
    height: 100%;
}

.group_box_right {
    border: 2px solid #1A326E;
    box-sizing: border-box!important;
    width: auto;
    position: relative;
    height: 100%;
    margin-top: 7rem;
}

.group_box_left img {
    display: block;
    margin: auto;
    padding-top: 1rem;
    height: 7rem;
}

.group_box_right img {
    display: block;
        margin: auto;
        padding-top: 2rem;
        height: 5rem;
}

.group_box_left p {
    background-color: #FF9100;
    color: #fff;
    font-size: 2rem;
    line-height: 3.8rem;
    text-align: center;
    padding: 1rem 1rem 3rem;
    margin-top: 2rem;
}

.group_box_right p {
    background-color: #1A326E;
    color: #fff;
    font-size: 2rem;
    line-height: 3.8rem;
    text-align: center;
    padding: 1rem 1rem 3rem;
    margin-top: 2rem;
}

.group_box_left a {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20rem;
    font-size: 2rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
}

.group_box_right a {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20rem;
    font-size: 2rem;
    background-color: #fff;
    border: 3px solid #000;
    box-sizing: border-box!important;
    padding: 1rem;
    box-shadow: 6px 6px 10px 0 rgb(0 0 0 / 40%);
}

.under_eye_text h1 {
    font-size: 2rem;
    font-family: 'MrDeHaviland_Pro';
    font-weight: 400;
    color: #fff;
    max-width: 1065px;
    margin: auto;
    margin-bottom: 1rem;
}

.under_eye_text h3 {
    font-size: 3.8rem;
    font-weight: 500;
    color: #fff;
    max-width: 1065px;
}

.under_eye_text {
    position: absolute;
    bottom: 5%;
    width: 90%;
    left: 5%;
}

.under_header_sp .header_inner {
    background-color: unset;
    backdrop-filter: unset;
}

.phi_box {
    margin-top: 8rem;
    position: relative;
}

.side_inner {
    display: none!important;
}

.phi_padding {
    padding: 0;
}

.his_width {
    width: auto;
}

.group_inner {
    width: auto;
    margin-left: auto;
}

.group_padding {
    padding: 0;
}

.group_box_img {
    height: auto;
}


/* --------ãƒŸãƒ„ã‚«ãƒ«--------- */

.company_box {
    margin-top: 3rem;
}

.company_box dl dt {
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    width: 15%;
    padding: 1.5rem 0;
    margin-right: 1rem;
    writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
}

.company_box dl dd {
    font-size: 1.5rem;
    padding: 4rem 0;
    width: 80%;
    align-items: flex-start;
}

.padding {
    padding: 0 2rem;
}

.company_box dl dd p {
    font-size: 1.5rem;
    line-height: 2rem;
    margin-top: 1rem;
}

.company_box dl dd iframe {
    height: 18.7rem;
}

.copmany-logo img{
    width: 220px;
    padding-left: 2rem;
}

.company_box dl:nth-child(4) dd {
    padding: 0 0 2rem;
}

.company_box dl:last-child dd p {
    padding-left: 2rem;
}

.company_box dl:nth-child(4) dt {
    align-items: center;
}

.company_box dl:nth-child(5) dt {
    align-items: center;
}

.company_box dl:last-child dt {
    align-items: center;
}

.service_inner {
    width: auto;
    margin-bottom: 5rem;
}

.service_inner h2 {
    font-size: 9rem;
    padding-left: 1.4rem;
}

.service_inner h3 {
    font-size: 3.2rem;
}

.service_text {
    font-size: 1.5rem;
    line-height: 2.5rem;
    margin: 2rem 0 3rem;
}

.service_box {
    border-left: unset;
    padding-left: 0;
}

.service_box h4 {
    font-size: 5.8rem;
}

.service_box h5 {
    font-size: 2rem;
    margin-top: 1rem;
}

.service_list_box {
    display: block;
}

.service_list_box_left {
    width: auto;
    margin-right: 0;
}

.service_list_box_right {
    width: auto;
    margin-top: 2rem;
}

.service_box ul li {
    padding-bottom: 4rem;
    margin-bottom: 4rem;
}

.service_box ul li:nth-child(1) .service_list_box_right a {
    margin-top: 1rem;
}

.service_box ul li .service_list_box_right a {
    margin-top: 1rem;
}

.service_list_box_right a {
    width: 20rem;
    font-size: 2rem;
}

.service_inner {
    padding-bottom: 5rem;
}


/* --------ãƒŸãƒ„ã‚«ãƒ«ãƒ—ãƒ­ãƒ•ã‚§ãƒƒã‚·ãƒ§ãƒŠãƒ«--------- */

.mitpro_eye_inner h2 {
    font-size: 8rem;
    margin-bottom: 0;
    padding-left: 2rem;
}

.mitpro_eye_inner h3 {
    font-size: 2.4rem;
}

.mitpro_inner {
    padding-bottom: 0;
    margin-bottom: 0;
}

.ccs_btn {
    margin-top: 0 !important;
}

.ccs_list {
    border-left: 3px solid #fff;
    padding-left: 3rem;
}

.ccs_list_box {
    display: block;
}

.ccs_list_box_left {
    width: auto;
    margin-right: auto;
}

.ccs_list_box_right {
    width: auto;
    margin-top: 2rem;
}

.ccs_list ul li:nth-child(1) {
    margin-bottom: 0;
}

.mitpro_list_box ul li:nth-child(2) .service_list_box_right a {
    margin-top: 0;
}

.mitpro_list_box ul li:nth-child(3) .service_list_box_right a {
    margin-top: 0;
}

.mitpro_bg {
    padding-bottom: 5rem;
    margin-bottom: 5rem;
}


/* --------æŽ¡ç”¨ã”æ‹…å½“è€…ã®æ–¹ã¸--------- */

.rec_eye_inner .under_eye_text h2 {
    padding-left: 1rem;
    margin-bottom: -1rem;
    font-size: 8rem;
}

.rec_eye_text_bottom {
    padding: 0 2rem;
}

.rec_eye_text_bottom_2 {
    width: auto;
    margin-left: auto;
}

.rec_eye_text_bottom h2 {
    font-size: 2.7rem;
    font-weight: 500;
    margin-bottom: 3rem;
    line-height: 5rem;
}

.rec_eye_text_bottom p {
    font-size: 2rem;
    line-height: 3.6rem;
    margin-bottom: 0;
}

.rec_inner {
    width: auto;
    margin-left: auto;
    padding-bottom: 1rem;
}

.rec_inner h3 {
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    margin-top: 4rem;
}

.rec_inner ul {
    margin-top: 5rem;
}

.rec_box {
    display: block;
}

.rec_box_left {
    width: auto;
    margin-bottom: 2rem;
}

.rec_box_right {
    width: auto;
    position: relative;
}

.rec_box_right a {
    display: flex;
    width: 18rem;
    font-size: 2rem;
    position: relative;
    bottom: unset;
    margin-left: auto;
    margin-top: 1rem;
}

.rec_inner ul li {
    border-bottom: 3px solid #F08519;
    padding-bottom: 4.7rem;
    margin-bottom: 4.7rem;
}

.rec_inner h2:nth-of-type(2) {
    margin-bottom: -2rem;
}

.rec_box_right h4 {
    font-size: 2rem;
}

.rec_gray {
    background-color: rgb(210 210 210 / 15%);
    margin: 0 0 5rem;
    padding-top: 2rem;
}

.contact_inner h2 {
    font-size: 3.5rem;
    margin-bottom: 4rem;
}

.contact_inner h3 {
    top: -10px;
    font-size: 2rem;
    width: calc(100% - 4rem);
    line-height: 5rem;
    padding: .5rem 2rem;
}

.contact_inner img {
    margin-top: -7rem;
    position: relative;
    z-index: -1;
}

.contact_inner a {
    position: absolute;
    bottom: -2rem;
    right: 15%;
    width: 24rem;
    font-size: 2rem;
    padding: 1.2rem 2.8rem;
}

.rec_box_right h4 span {
    font-size: 1.3rem;
}

.rec_inner ul:nth-of-type(2) li:last-child {
    margin-bottom: 3.7rem;
}

.mit_eye_inner .under_eye_text h2 {
    margin-bottom: -1.5rem;
    padding-left: 2rem;
}

.prof_eye_inner .under_eye_text h2 {
    padding-left: 2rem;
    margin-bottom: 1rem;
    font-size: 7rem;
}



/* --------ãŠçŸ¥ã‚‰ã›--------- */

.news_inner {
    max-width: 1065px;
    margin: auto;
    padding: 0 2rem;
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.cat_list ul li:nth-child(2) {
    margin: 0 1rem;
}

.news_list dl {
    padding: 2rem 0;
    border-top: 2px solid #000;
    display: block;
    align-items: center;
}

.news_list dl dt:nth-of-type(1) {
    font-size: 1.2rem;
    letter-spacing: .15em;
}

.news_list dl dd {
    font-size: 1.6rem;
    clear: both;
    margin-top: 1rem;
    line-height: 3rem;
}

.news_list dl dt:nth-of-type(2) {
    margin: 0;
    float: left;
    margin-top: -2rem;
    padding-left: 10rem;
}

.news_list dl dd a {
    font-size: 1.6rem;
    line-height: 3rem;
}

.news_list {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.art_inner {
    max-width: 1085px;
    margin: auto;
    padding: 0 2rem;
    margin-top: 10rem;
    margin-bottom: 10rem;
}

.art_btn a {
    margin-top: 2rem;
        width: 28rem;
        font-size: 2rem;
}

.news_list_left {
    width: auto;
}

.news_list_right {
    width: auto;
}


}
