@charset "UTF-8";
/* Scss Document */
.flex_30 {
  width: 30%;
}

.flex_31 {
  width: 31%;
}

.flex_32 {
  width: 32%;
}

.flex_33 {
  width: 33%;
}

.flex_34 {
  width: 34%;
}

.flex_35 {
  width: 35%;
}

.flex_36 {
  width: 36%;
}

.flex_37 {
  width: 37%;
}

.flex_38 {
  width: 38%;
}

.flex_39 {
  width: 39%;
}

.flex_40 {
  width: 40%;
}

.flex_41 {
  width: 41%;
}

.flex_42 {
  width: 42%;
}

.flex_43 {
  width: 43%;
}

.flex_44 {
  width: 44%;
}

.flex_45 {
  width: 45%;
}

.flex_46 {
  width: 46%;
}

.flex_47 {
  width: 47%;
}

.flex_48 {
  width: 48%;
}

.flex_49 {
  width: 49%;
}

.flex_50 {
  width: 50%;
}

.flex_51 {
  width: 51%;
}

.flex_52 {
  width: 52%;
}

.flex_53 {
  width: 53%;
}

.flex_54 {
  width: 54%;
}

.flex_55 {
  width: 55%;
}

.flex_56 {
  width: 56%;
}

.flex_57 {
  width: 57%;
}

.flex_58 {
  width: 58%;
}

.flex_59 {
  width: 59%;
}

.flex_60 {
  width: 60%;
}

.flex_61 {
  width: 61%;
}

.flex_62 {
  width: 62%;
}

.flex_63 {
  width: 63%;
}

.flex_64 {
  width: 64%;
}

.flex_65 {
  width: 65%;
}

.flex_66 {
  width: 66%;
}

.flex_67 {
  width: 67%;
}

.flex_68 {
  width: 68%;
}

.flex_69 {
  width: 69%;
}

.flex_70 {
  width: 70%;
}

.padding100 {
  padding-top: 100px;
  padding-bottom: 100px;
}

.padding110 {
  padding-top: 110px;
  padding-bottom: 110px;
}

.padding120 {
  padding-top: 120px;
  padding-bottom: 120px;
}

.padding130 {
  padding-top: 130px;
  padding-bottom: 130px;
}

.padding140 {
  padding-top: 140px;
  padding-bottom: 140px;
}

.padding150 {
  padding-top: 150px;
  padding-bottom: 150px;
}

.padding160 {
  padding-top: 160px;
  padding-bottom: 160px;
}

.padding170 {
  padding-top: 170px;
  padding-bottom: 170px;
}

.padding180 {
  padding-top: 180px;
  padding-bottom: 180px;
}

.padding190 {
  padding-top: 190px;
  padding-bottom: 190px;
}

.padding200 {
  padding-top: 200px;
  padding-bottom: 200px;
}

.padding210 {
  padding-top: 210px;
  padding-bottom: 210px;
}

.padding220 {
  padding-top: 220px;
  padding-bottom: 220px;
}

.padding230 {
  padding-top: 230px;
  padding-bottom: 230px;
}

.padding240 {
  padding-top: 240px;
  padding-bottom: 240px;
}

.padding250 {
  padding-top: 250px;
  padding-bottom: 250px;
}

.padding260 {
  padding-top: 260px;
  padding-bottom: 260px;
}

.padding270 {
  padding-top: 270px;
  padding-bottom: 270px;
}

.padding280 {
  padding-top: 280px;
  padding-bottom: 280px;
}

.padding290 {
  padding-top: 290px;
  padding-bottom: 290px;
}

.padding300 {
  padding-top: 300px;
  padding-bottom: 300px;
}

.margin100 {
  margin-top: 100px;
  margin-bottom: 100px;
}

.margin110 {
  margin-top: 110px;
  margin-bottom: 110px;
}

.margin120 {
  margin-top: 120px;
  margin-bottom: 120px;
}

.margin130 {
  margin-top: 130px;
  margin-bottom: 130px;
}

.margin140 {
  margin-top: 140px;
  margin-bottom: 140px;
}

.margin150 {
  margin-top: 150px;
  margin-bottom: 150px;
}

.margin160 {
  margin-top: 160px;
  margin-bottom: 160px;
}

.margin170 {
  margin-top: 170px;
  margin-bottom: 170px;
}

.margin180 {
  margin-top: 180px;
  margin-bottom: 180px;
}

.margin190 {
  margin-top: 190px;
  margin-bottom: 190px;
}

.margin200 {
  margin-top: 200px;
  margin-bottom: 200px;
}

.margin210 {
  margin-top: 210px;
  margin-bottom: 210px;
}

.margin220 {
  margin-top: 220px;
  margin-bottom: 220px;
}

.margin230 {
  margin-top: 230px;
  margin-bottom: 230px;
}

.margin240 {
  margin-top: 240px;
  margin-bottom: 240px;
}

.margin250 {
  margin-top: 250px;
  margin-bottom: 250px;
}

.margin260 {
  margin-top: 260px;
  margin-bottom: 260px;
}

.margin270 {
  margin-top: 270px;
  margin-bottom: 270px;
}

.margin280 {
  margin-top: 280px;
  margin-bottom: 280px;
}

.margin290 {
  margin-top: 290px;
  margin-bottom: 290px;
}

.margin300 {
  margin-top: 300px;
  margin-bottom: 300px;
}

.pt-110 {
  padding-top: 110px;
}

.pt-120 {
  padding-top: 120px;
}

.pt-130 {
  padding-top: 130px;
}

.pt-140 {
  padding-top: 140px;
}

.pt-150 {
  padding-top: 150px;
}

.pt-160 {
  padding-top: 160px;
}

.pt-170 {
  padding-top: 170px;
}

.pt-180 {
  padding-top: 180px;
}

.pt-190 {
  padding-top: 190px;
}

.pt-200 {
  padding-top: 200px;
}

.pt-210 {
  padding-top: 210px;
}

.pt-220 {
  padding-top: 220px;
}

.pt-230 {
  padding-top: 230px;
}

.pt-240 {
  padding-top: 240px;
}

.pt-250 {
  padding-top: 250px;
}

.pt-260 {
  padding-top: 260px;
}

.pt-270 {
  padding-top: 270px;
}

.pt-280 {
  padding-top: 280px;
}

.pt-290 {
  padding-top: 290px;
}

.pt-300 {
  padding-top: 300px;
}

.pb-110 {
  padding-bottom: 110px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pb-130 {
  padding-bottom: 130px;
}

.pb-140 {
  padding-bottom: 140px;
}

.pb-150 {
  padding-bottom: 150px;
}

.pb-160 {
  padding-bottom: 160px;
}

.pb-170 {
  padding-bottom: 170px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pb-190 {
  padding-bottom: 190px;
}

.pb-200 {
  padding-bottom: 200px;
}

.pb-210 {
  padding-bottom: 210px;
}

.pb-220 {
  padding-bottom: 220px;
}

.pb-230 {
  padding-bottom: 230px;
}

.pb-240 {
  padding-bottom: 240px;
}

.pb-250 {
  padding-bottom: 250px;
}

.pb-260 {
  padding-bottom: 260px;
}

.pb-270 {
  padding-bottom: 270px;
}

.pb-280 {
  padding-bottom: 280px;
}

.pb-290 {
  padding-bottom: 290px;
}

.pb-300 {
  padding-bottom: 300px;
}

.mt-110 {
  margin-top: 110px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-130 {
  margin-top: 130px;
}

.mt-140 {
  margin-top: 140px;
}

.mt-150 {
  margin-top: 150px;
}

.mt-160 {
  margin-top: 160px;
}

.mt-170 {
  margin-top: 170px;
}

.mt-180 {
  margin-top: 180px;
}

.mt-190 {
  margin-top: 190px;
}

.mt-200 {
  margin-top: 200px;
}

.mt-210 {
  margin-top: 210px;
}

.mt-220 {
  margin-top: 220px;
}

.mt-230 {
  margin-top: 230px;
}

.mt-240 {
  margin-top: 240px;
}

.mt-250 {
  margin-top: 250px;
}

.mt-260 {
  margin-top: 260px;
}

.mt-270 {
  margin-top: 270px;
}

.mt-280 {
  margin-top: 280px;
}

.mt-290 {
  margin-top: 290px;
}

.mt-300 {
  margin-top: 300px;
}

.mb-110 {
  margin-bottom: 110px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-130 {
  margin-bottom: 130px;
}

.mb-140 {
  margin-bottom: 140px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb-160 {
  margin-bottom: 160px;
}

.mb-170 {
  margin-bottom: 170px;
}

.mb-180 {
  margin-bottom: 180px;
}

.mb-190 {
  margin-bottom: 190px;
}

.mb-200 {
  margin-bottom: 200px;
}

.mb-210 {
  margin-bottom: 210px;
}

.mb-220 {
  margin-bottom: 220px;
}

.mb-230 {
  margin-bottom: 230px;
}

.mb-240 {
  margin-bottom: 240px;
}

.mb-250 {
  margin-bottom: 250px;
}

.mb-260 {
  margin-bottom: 260px;
}

.mb-270 {
  margin-bottom: 270px;
}

.mb-280 {
  margin-bottom: 280px;
}

.mb-290 {
  margin-bottom: 290px;
}

.mb-300 {
  margin-bottom: 300px;
}

* {
  text-decoration: none !important;
}

.sp_fixed{display: none;}   

.menu_link li a {
  position: relative;
  font-size: 19px;
  border-top: 1px solid #fff;
  padding: 25px 5px;
  color: #fff;
  display: block;
}

.menu_link li a span {
  position: absolute;
  top: 50%;
  right: 1%;
  transform: translateY(-50%);
  background-color: #f2f2f3;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  transition: .3s;
}

.menu_link li a span i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  display: block;
}

.menu_link li a span i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #2e50b5;
  width: 10px;
  height: 1px;
  transition: .3s;
}

.menu_link li a span i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 61%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #2e50b5;
  border-right: 1px solid #2e50b5;
  width: 7px;
  height: 7px;
  transition: .3s;
}

.menu_link li:last-child a {
  border-bottom: 1px solid #fff;
}

#menu_tel {
  font-size: 30px;
  display: flex;
  gap: 5px;
  align-items: baseline;
  justify-content: center;
  color: #fff;
  margin-top: 50px;
}

#menu_tel span {
  font-size: 22px;
}

.header_wrap {
  display: flex;
  justify-content: space-between;
  gap: 2vw;
  padding: 20px 2vw;
}

.header_wrap nav {
  display: flex;
  justify-content: end;
  align-items: center;
  gap: 2.5vw;
  width: 100%;
  max-width: 1280px;
}

.header_wrap nav ul {
  display: flex;
  gap: 1.7vw;
  justify-content: center;
  align-items: center;
}

.header_wrap nav ul li a {
  position: relative;
  font-size: 15px;
}
.header_wrap nav ul li:last-child{line-height: 0.7;}
.header_wrap nav ul li a:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  background-color: #2e50b5;
  width: 0;
  height: 2px;
  transition: .3s;
}

.header_wrap nav ul li a:hover:after {
  width: 100%;
}

.header_wrap nav .contact_btn {
  max-width: 220px;
  height: 45px;
}

.header_wrap nav .contact_btn span {
  right: 4%;
}

#slider {
  position: relative;
  height: 49vw !important;
}

.catch {
  position: absolute;
  bottom: 10%;
  left: 4%;
  width: 47.95vw;
}

.title_text h2 {
  background: linear-gradient(to right, #2e50b5, #0192d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.4em;
  width: fit-content;
}

.title_text span {
  display: flex;
  align-items: center;
  gap: 8px;
}

.title_text span i {
  width: 30px;
  height: 2px;
  background-color: #2e50b5;
  display: block;
}

.title_text.c-fff h2 {
  background: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
  color: #fff;
}

.title_text.c-fff span {
  color: #fff;
}

.top_sec01 {
  width: 84%;
  margin: 0 auto;
}

.top_sec01 .grid_contents {
  display: grid;
  grid-template-columns: 46% 45%;
  justify-content: space-between;
  gap: 3vw;
}

.top_sec01 .grid_contents .left .img_box {
  position: relative;
  padding-top: 7vw;
}

.top_sec01 .grid_contents .left .img_box img {
  position: relative;
  z-index: 1;
}

.top_sec01 .grid_contents .left .img_box:after {
  content: "";
  position: absolute;
  bottom: -10%;
  left: -26%;
  background-image: url(../images/top03.webp);
  background-size: cover;
  width: 460px;
  height: 500px;
}

.top_sec01 .grid_contents .right {
  padding-top: 130px;
}

.top_sec01 .grid_contents .right p {
  line-height: 2.6em;
  letter-spacing: 0.03em;
}

.top_sec01 .grid_contents .right .pb-40 {
  padding-bottom: 2.1vw;
}

.top_sec01 .grid_contents .right .img_box {
  text-align: end;
  padding-top: 10.5vw;
}

.top_sec01 .grid_contents .right .img_box img {
  width: 85%;
  max-width: 490px;
}

.top_sec02 .grid_contents {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 9vw;
}

.top_sec02 .grid_contents .right {
  padding-top: 30px;
}

.news_list li a {
  position: relative;
  border-top: 1px solid #d2d2d2;
  padding: 35px 10px;
  display: grid;
  grid-template-columns: 95px 1fr;
  align-items: baseline;
  gap: 3vw;
}

.news_list li a time {
  font-size: 16px;
  color: #8a8c91;
}

.news_list li a p {
  font-size: 18px;
  width: 88%;
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: center;
}

.news_list li a p span {
  background-color: #0092d1;
  color: #fff;
  display: block;
  line-height: normal;
  padding: 2px 10px;
  font-size: 14px;
  border-radius: 75px;
  width: fit-content;
}

.news_list li a .arrow {
  position: absolute;
  top: 50%;
  right: 1%;
  transform: translateY(-50%);
  background-color: #f2f2f3;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  transition: .3s;
}

.news_list li a .arrow i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  display: block;
}

.news_list li a .arrow i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #2e50b5;
  width: 10px;
  height: 1px;
  transition: .3s;
}

.news_list li a .arrow i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 61%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #2e50b5;
  border-right: 1px solid #2e50b5;
  width: 7px;
  height: 7px;
  transition: .3s;
}

.news_list li a:hover {
  color: #222222;
}

.news_list li a:hover .arrow {
  background-color: #2e50b5;
}

.news_list li a:hover .arrow i:after {
  background: #fff;
}

.news_list li a:hover .arrow i::before {
  content: "";
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.news_list li:last-child a {
  border-bottom: 1px solid #d2d2d2;
}

.news_category_btn {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1vw;
}
.news_category_btn02 {
  width: 100%;
  max-width: 960px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1vw;
}
.news_category_btn li {
  background-color: #fff;
  border: 1px solid #0092d1;
  font-size: 15px;
  padding: 5px 10px;
  cursor: pointer;
  text-align: center;
  border-radius: 75px;
  transition: .3s;
}

.news_category_btn02 li a {
    background-color: #fff;
    border: 1px solid #0092d1;
    font-size: 15px;
    padding: 5px 10px;
    cursor: pointer;
    text-align: center;
    border-radius: 75px;
    transition: .3s;
    display: block;
}

.news_category_btn li:hover {
  background-color: #0092d1;
  color: #fff;
}
.news_category_btn02 li a:hover {
  background-color: #0092d1;
  color: #fff;
}


.top_sec03 {
  background-image: linear-gradient(to right, #52b6d6, #148ec3);
  border-radius: 60px 60px 0 0;
}

.top_sec03 .grid_contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 3vw;
  align-items: center;
}

.top_sec03 .grid_contents .flex01 {
  width: 53%;
}

.top_sec03 .grid_contents .flex02 {
  width: 39%;
}

.service_number {
  border-bottom: 1px solid #fff;
  letter-spacing: 0.1em;
  display: inline-block;
  padding-bottom: 5px;
  font-size: 18px;
}

.top_sec04 {
  background-color: #f7f7f7;
}

.top_sec04 .grid_contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.3vw;
}

.top_sec04 .grid_contents .category_text {
  border-radius: 75px;
  display: block;
  width: fit-content;
  padding: 2px 15px;
  color: #fff;
  margin: 20px 0 20px;
}

.top_sec04 .grid_contents .midashi21 {
  letter-spacing: -0.01em;
}

.top_sec04 .grid_contents .font15 {
  line-height: 1.7em;
  padding-top: 10px;
  letter-spacing: 0.03em;
}

.top_sec05 .grid_contents {
  display: grid;
  grid-template-columns: 48.5% 45.5%;
  justify-content: space-between;
  gap: 2vw;
}

.top_sec05 .grid_contents .left p {
  letter-spacing: 0.01em;
}

.top_sec05 .grid_contents ul li a {
  display: block;
  position: relative;
  border-top: 1px solid #d2d2d2;
  padding: 33px 20px;
}

.top_sec05 .grid_contents ul li a .font1.c-2e4fb5 {
  font-size: 18px;
  display: block;
  line-height: 1.1em;
}

.top_sec05 .grid_contents ul li a .arrow {
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translateY(-50%);
  background-color: #f2f2f3;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  transition: .3s;
}

.top_sec05 .grid_contents ul li a .arrow i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  display: block;
}

.top_sec05 .grid_contents ul li a .arrow i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #2e50b5;
  width: 10px;
  height: 1px;
  transition: .3s;
}

.top_sec05 .grid_contents ul li a .arrow i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 61%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #2e50b5;
  border-right: 1px solid #2e50b5;
  width: 7px;
  height: 7px;
  transition: .3s;
}

.top_sec05 .grid_contents ul li a:hover {
  color: #222222;
}

.top_sec05 .grid_contents ul li a:hover .arrow {
  background-color: #2e50b5;
}

.top_sec05 .grid_contents ul li a:hover .arrow i:after {
  background: #fff;
}

.top_sec05 .grid_contents ul li a:hover .arrow i::before {
  content: "";
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.top_sec05 .grid_contents ul li:last-child a {
  border-bottom: 1px solid #d2d2d2;
}

.top_sec05 .grid_contents .right {
  padding-top: 30px;
}

.contact_sec {
  background: url(../images/contact_bg.webp) 50%/cover;
}

.contact_sec .grid_contents {
  display: grid;
  grid-template-columns: 400px 480px;
  justify-content: space-between;
  gap: 3vw;
  align-items: center;
}

.contact_sec .contact_btn {
  max-width: 480px;
  height: 90px;
  font-size: 24px;
}

.contact_sec .contact_btn span {
  right: 4%;
  width: 30px;
  height: 30px;
}

.footer {
  background-color: #f2f2f3;
  padding: 130px 0 0;
}

.f_container {
  width: 88%;
  max-width: 1600px;
  margin: 0 auto;
}

.f_container .grid_contents {
  display: grid;
  grid-template-columns: 440px 330px;
  justify-content: space-between;
  gap: 3vw;
}

.f_container .grid_contents .left .address {
  padding: 20px 0 5px;
}

.f_container .grid_contents .left .address a {
  position: relative;
  bottom: 2px;
  display: inline-flex;
  line-height: normal;
  align-items: center;
  justify-content: center;
  padding: 1px 6px 2px 9px;
  border-radius: 75px;
  background-color: #2e4fb5;
  border: 1px solid #2e4fb5;
  color: #fff;
  font-size: 14px;
  margin-left: 7px;
}

.f_container .grid_contents .left .address a i {
  display: inline-block;
  background-image: url(../images/map_icon.webp);
  background-size: cover;
  width: 8px;
  height: 11px;
  margin-right: 5px;
  transition: .3s;
}

.f_container .grid_contents .left .address a:hover {
  background-color: #fff;
  color: #2e4fb5;
}

.f_container .grid_contents .left .address a:hover i {
  background-image: url(../images/map_icon02.webp);
  background-size: cover;
  width: 8px;
  height: 11px;
}

.f_container .grid_contents .right nav {
  display: grid;
  grid-template-columns: 100px 110px;
  justify-content: space-between;
  gap: 25px;
}

.f_container .grid_contents .right nav ul {
  display: grid;
  gap: 25px;
}

.f_container .grid_contents .right nav ul li a {
  font-size: 15px;
}

.f_container .copy_container {
  border-top: 1px solid #e5e5e5;
  padding: 90px 0 80px;
  margin-top: 110px;
  display: flex;
  align-items: end;
  justify-content: space-between;
}

.f_container .copy_container a {
  font-size: 14px;
}

.f_tel {
  font-size: 22px;
}

.f_tel span {
  font-size: 16px;
}

.f_logo {
  width: 100%;
  max-width: 330px;
}

.copy {
  font-size: 13px;
}

/*下層共通*/
.header_wrap.lower {
  box-shadow: rgba(0, 0, 0, 0.05) 0px 5px 10px 0px;
}

.fast_title {
  padding: 100px 0 130px;
  width: 88%;
  max-width: 1600px;
  margin: 0 auto;
}

.fast_title h2 {
  font-size: 100px;
  background: linear-gradient(to right, #2e50b5, #0192d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.3em;
  letter-spacing: 0.01em;
  width: fit-content;
}

.fast_title span {
  padding-left: 8px;
  font-size: 20px;
  font-weight: 700;
  display: block;
  letter-spacing: 0.08em;
}

.fast_img {
  height: 31vw;
}

.fast_img.meo {
  background: url(../images/main_meo.webp) center/cover;
}
.about_text{
  font-weight: bold;
}
.anchor {
  background-color: #f2f2f3;
  padding: 40px 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.anchor li a {
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  border-right: 1px solid #d2d2d2;
  padding: 8px 10px;
}

.anchor li a span {
  position: relative;
  background-color: #2e4fb5;
  border: 1px solid #2e4fb5;
  width: 100%;
  max-width: 25px;
  height: 25px;
  border-radius: 50%;
  transition: .3s;
}

.anchor li a span::before {
  content: "";
  position: absolute;
  top: 48%;
  left: 50%;
  transform: translate(-50%, -50%) rotateZ(135deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 6px;
  height: 6px;
  transition: .3s;
}

.anchor li a:hover span {
  background-color: #f2f2f3;
}

.anchor li a:hover span::before {
  border-top: 1px solid #2e4fb5;
  border-right: 1px solid #2e4fb5;
}

.lower_sec01 .bg_fff {
  background-color: #fff;
  border-radius: 60px 60px 0 0;
}

.lower_grid01 {
  display: grid;
  grid-template-columns: 46% 45%;
  justify-content: space-between;
  gap: 3vw;
}

.lower_grid01 .right p {
  letter-spacing: 0.03em;
}

.lower_grid01 .left {
  padding-top: 30px;
}

.worries_midashi {
  font-size: 40px;
  letter-spacing: 0.03em;
}

.worries_midashi span {
  font-size: 50px;
  color: #0092d1;
}

.worries_wrap {
  height: 400px;
}

.worries_wrap img {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.worries_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 4vw;
  row-gap: 70px;
}

.worries_grid div {
  position: relative;
  z-index: 1;
  background-color: #2e4fb5;
  width: 80%;
  max-width: 440px;
  height: 100px;
  border-radius: 35px;
  text-align: center;
  color: #fff;
  font-size: 23px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
}

.worries_grid div:nth-child(1) {
  margin-left: 6vw;
  margin-right: auto;
}

.worries_grid div:nth-child(2) {
  margin-right: 6vw;
  margin-left: auto;
}

.worries_grid div:nth-child(3) {
  margin-left: 2vw;
  margin-right: auto;
}

.worries_grid div:nth-child(4) {
  margin-right: 2vw;
  margin-left: auto;
}

.worries_grid div:nth-child(odd):after {
  content: "";
  position: absolute;
  bottom: -23px;
  right: 55px;
  background-image: url(../images/fukidashi_shape.webp);
  background-size: cover;
  width: 29px;
  height: 37px;
}

.worries_grid div:nth-child(even):after {
  content: "";
  position: absolute;
  bottom: -23px;
  left: 60px;
  transform: rotateY(180deg);
  background-image: url(../images/fukidashi_shape.webp);
  background-size: cover;
  width: 29px;
  height: 37px;
}
.worries_text{
  width: 85%;
  border: 3px solid red;
  margin: 65px auto 0;
  padding: 20px 50px;
}
/*MEO対策*/
.merit_table {
  width: 100%;
  overflow: hidden;
  border-collapse: separate;
  border-spacing: 0;
}

.merit_table tr td:nth-child(1) {
  width: 14%;
}

.merit_table tr td:nth-child(n + 2) {
  width: 43%;
}

.merit_table thead tr td {
  text-align: center;
  font-size: 25px;
  color: #fff;
  padding: 13px 10px;
  letter-spacing: 0.03em;
}

.merit_table thead tr td:nth-child(2) {
  border-radius: 15px 0 0 0;
}

.merit_table thead tr td:nth-child(n + 2) {
  background-color: #589cb9;
}

.merit_table thead tr td:last-child {
  border-left: 1px solid #fff;
  border-radius: 0 15px 0 0;
}

.merit_table tbody tr td:nth-child(1) {
  text-align: center;
  font-size: 25px;
  color: #fff;
  background-color: #589cb9;
  padding: 15px 10px;
  border-bottom: 1px solid #fff;
}

.merit_table tbody tr td:nth-child(n + 2) {
  padding: 35px 10px 35px 40px;
  border-bottom: 1px solid #d2d2d2;
  background-color: #fff;
}

.merit_table tbody tr td:nth-child(n + 2) p {
  display: flex;
  gap: 7px;
  align-items: baseline;
  font-size: 17px;
  line-height: 1.7em;
  letter-spacing: 0.03em;
}

.merit_table tbody tr td:nth-child(n + 2) p span {
  position: relative;
  bottom: 2px;
  display: block;
  background-color: #589cb9;
  width: 100%;
  max-width: 7px;
  height: 7px;
  border-radius: 50%;
}

.merit_table tbody tr td:nth-child(n + 2) p:nth-child(n + 2) {
  margin-top: 8px;
}

.merit_table tbody tr td:last-child {
  border-left: 1px solid #d2d2d2;
}

.merit_table tbody tr:nth-child(1) td:nth-child(1) {
  border-radius: 15px 0 0 0;
}

.merit_table tbody tr:last-child td {
  border-bottom: none;
}

.merit_table tbody tr:last-child td:nth-child(1) {
  border-radius: 0 0 0 15px;
}

.merit_table tbody tr:last-child td:nth-child(3) {
  border-radius: 0 0 15px 0;
}

.element_wrap .element_box {
  border-top: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
  padding: 50px 0 110px;
}

.element_wrap .element_box .grid_contents {
  display: grid;
  grid-template-columns: 65% 29%;
  justify-content: space-between;
  gap: 3vw;
  padding-right: 4vw;
}

.element_wrap .element_box:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.element_midashi {
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.element_midashi span {
  font-size: 50px;
}

.element_list {
  display: grid;
  gap: 10px;
}

.element_list li {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  gap: 1vw;
  background-color: #f2f2f3;
  border-radius: 5px;
  padding: 12px 40px 12px 20px;
}

.element_list li span {
  color: #0092d1;
  font-size: 16px;
  letter-spacing: 0.01em;
}

.element_list li p {
  font-size: 15px;
  letter-spacing: 0.03em;
  line-height: 1.6em;
}

.citation_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.4vw;
}

.citation_list li {
  background-color: #eff6fc;
  border-radius: 10px;
  padding: 15px 2vw 30px;
}

.citation_list li .img_box {
  height: 140px;
  display: grid;
  align-items: end;
  justify-content: center;
}

.citation_list li .midashi24 {
  padding: 20px 0 15px;
  text-align: center;
  line-height: 1.5em;
}

.citation_list li p {
  letter-spacing: 0.03em;
  line-height: 1.7em;
}

.meo_graph_wrap {
  border: 10px solid #eff6fc;
  border-radius: 20px;
  padding: 60px 4vw;
}

.meo_graph_wrap .graph_box {
  width: 100%;
  max-width: 855px;
  margin: 0 auto;
}

.works_sec {
  background-color: #eff6fc;
  border-radius: 60px 60px 0 0;
}

.works_sec .grid_contents {
  display: grid;
  grid-template-columns: 35% 60%;
  justify-content: space-between;
  gap: 3vw;
  background-color: #fff;
  border-radius: 15px;
  padding: 80px 4vw;
}

.works_sec .grid_contents .right .midashi27 {
  border-bottom: 1px solid #d2d2d2;
  padding-bottom: 5px;
  margin-bottom: 25px;
}

.works_sec .grid_contents .right .bg_0092d1 {
  border-radius: 75px;
  display: inline-block;
  padding: 1px 15px;
  color: #fff;
  font-size: 15px;
}

.works_sec .grid_contents .right p .c-red span {
  font-size: 24px;
}

.q_and_a .box {
  border-bottom: 1px solid #d2d2d2;
  padding-bottom: 50px;
  padding-left: 10px;
  padding-right: 10px;
  display: grid;
  gap: 15px;
}

.q_and_a .box p {
  display: flex;
  align-items: baseline;
  gap: 20px;
}

.q_and_a .box .question {
  line-height: 1.7em;
}

.q_and_a .box .question i {
  position: relative;
  top: 5px;
  background-image: url(../images/Q.webp);
  background-size: cover;
  width: 100%;
  max-width: 32px;
  height: 36px;
  display: block;
}

.q_and_a .box .answer i {
  position: relative;
  top: 10px;
  background-image: url(../images/A.webp);
  background-size: cover;
  width: 100%;
  max-width: 29px;
  height: 30px;
  display: block;
}

.q_and_a .box:nth-child(n + 2) {
  padding-top: 50px;
}

/*rpo*/
.fast_img.rpo {
  background: url(../images/main_rpo.webp) center/cover;
}

.rpo_flow_sec .midashi40 .point {
  position: relative;
}

.rpo_flow_sec .midashi40 .point:after {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-60%);
  background: #0092d1;
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.step_flow {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.step_flow li {
  background-color: #fff;
}

.step_flow li .step_midashi {
  position: relative;
  text-align: center;
  color: #fff;
  font-size: 35px;
  padding: 22px 10px;
}

.step_flow li .step_text_box {
  padding: 30px 2.2vw 50px;
}

.step_flow li .img_box {
  height: 130px;
  display: grid;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}

.step_flow li .midashi24 {
  display: flex;
  gap: 10px;
  align-items: baseline;
  line-height: 1.5em;
  letter-spacing: normal;
}

.step_flow li .midashi24 span {
  position: relative;
  bottom: 5px;
  display: block;
  background: #0092d1;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.step_flow li .midashi24:nth-child(n + 2) {
  margin-top: 12px;
}

.step_flow li .font16 {
  line-height: 1.6em;
  letter-spacing: normal;
}

.step_flow li:nth-child(1) {
  border-radius: 0 0 0 15px;
}

.step_flow li:nth-child(1) .step_midashi {
  border-radius: 15px 0 0 0;
}

.step_flow li:nth-child(1) .step_midashi:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
  background-image: url(../images/step01_shape.webp);
  background-size: cover;
  width: 33px;
  height: 60px;
  z-index: 1;
}

.step_flow li:nth-child(2) .step_midashi:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
  background-image: url(../images/step02_shape.webp);
  background-size: cover;
  width: 33px;
  height: 60px;
  z-index: 1;
}

.step_flow li:nth-child(3) .step_midashi:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
  background-image: url(../images/step03_shape.webp);
  background-size: cover;
  width: 33px;
  height: 60px;
  z-index: 1;
}

.step_flow li:nth-child(4) {
  border-radius: 0 0 15px 0;
}

.step_flow li:nth-child(4) .step_midashi {
  border-radius: 0 15px 0 0;
}

.reason_wrap {
  display: grid;
  gap: 30px;
}

.reason_wrap .reason_box {
  background-color: #f2f2f3;
  padding: 80px 3.5vw;
  border-radius: 15px;
}

.reason_wrap .reason_box .grid_contents {
  display: grid;
  grid-template-columns: 59% 32%;
  justify-content: space-between;
  gap: 3vw;
}

.reason_wrap .reason_box .grid_contents .left .number {
  font-size: 30px;
}

.reason_wrap .reason_box .grid_contents .left .midashi35 {
  letter-spacing: normal;
}

.reason_wrap .reason_box .grid_contents .left .text {
  letter-spacing: normal;
}

.reason_wrap .reason_box .bg_fff.img100 {
  background-color: #fff;
  padding: 50px 5vw;
  border-radius: 15px;
}

.graph_wrap {
  background-color: #fff;
  border-radius: 15px;
  padding: 100px 5vw;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6vw;
}

.graph_wrap .box .bg_589cb9 {
  color: #fff;
  padding: 10px 15px;
  border-radius: 75px;
  text-align: center;
}

.graph_wrap .box .midashi22 .c-red {
  font-size: 35px;
}

.graph_wrap .box .midashi22 .c-red span {
  font-size: 45px;
}

.graph_wrap .box .text_box {
  border: 2px solid #c7dce5;
  border-radius: 5px;
  padding: 15px 1vw;
}

.graph_wrap .box .text_box p {
  letter-spacing: normal;
}

/*acting*/
.fast_img.acting {
  background: url(../images/main_acting.webp) center/cover;
}

.acting_check_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.8vw;
}

.acting_check_list li {
  background-color: #fff;
  border-radius: 5px;
  padding: 18px 20px;
  display: flex;
  align-items: baseline;
  gap: 12px;
  font-size: 19px;
  line-height: normal;
}

.acting_check_list li img {
  position: relative;
  top: 5px;
  width: 100%;
  max-width: 26px;
  height: 23px;
}

.benefit_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2vw;
  row-gap: 1.5vw;
}

.benefit_list .box {
  position: relative;
  background-color: #f2f2f3;
  padding: 50px 2.5vw;
  display: grid;
  align-items: center;
  grid-template-columns: 55% 39%;
  justify-content: space-between;
  gap: 2vw;
  border-radius: 15px;
}

.benefit_list .box .left .midashi27 {
  letter-spacing: normal;
}

.benefit_list .box .left p {
  letter-spacing: normal;
}

.benefit_list .box span {
  position: absolute;
  top: 0;
  left: 0;
  width: 70px;
  height: 70px;
  background-color: #0092d1;
  border-radius: 15px 0 15px 0;
  color: #fff;
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/*kikikomi*/
.fast_img.kikikomi {
  background: url(../images/main_kikikomi.webp) center/cover;
}

.anchor.kikikomi {
  grid-template-columns: repeat(3, 1fr);
}

.kikikomi_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3vw;
}

.kikikomi_list li {
  background-color: #fff;
  padding: 50px 2.3vw 60px;
  border-radius: 15px;
}

.kikikomi_list li .img_box {
  display: grid;
  align-items: center;
  justify-content: center;
  height: 170px;
  margin-bottom: 45px;
}

.kikikomi_list li .midashi24 {
  letter-spacing: normal;
}

.kikikomi_list li p {
  letter-spacing: normal;
}

.benefit_list02 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2vw;
}

.benefit_list02 .box {
  border-radius: 15px;
  padding: 50px 3vw 60px;
}

.benefit_list02 .box .img100 {
  margin-bottom: 40px;
}

.benefit_list02 .box .img100 img {
  max-width: 250px;
}

.benefit_list02 .box p {
  letter-spacing: normal;
}

.benefit_list02 .box .midashi24 {
  border-radius: 10px;
  text-align: center;
  padding: 12px 15px;
}

.benefit_list02 .box .grid {
  min-height: 255px;
}

.benefit_list02 .box:nth-child(1) {
  background-color: #eff6fc;
}

.benefit_list02 .box:nth-child(1) .midashi35 {
  color: #0092d1;
}

.benefit_list02 .box:nth-child(1) .midashi24 {
  color: #fff;
  background-color: #0092d1;
}

.benefit_list02 .box:nth-child(2) {
  background-color: #fefbe6;
}

.benefit_list02 .box:nth-child(2) .midashi35 {
  color: #f8b551;
}

.benefit_list02 .box:nth-child(2) .midashi24 {
  color: #fff;
  background-color: #f8b551;
}

/*company*/
.fast_img.company {
  background: url(../images/main_kikikomi.webp) center/cover;
}

.greeting_grid {
  display: grid;
  grid-template-columns: 41% 53%;
  justify-content: space-between;
  gap: 2vw;
  align-items: flex-start;
}

.greeting_grid .img100 div {
  position: absolute;
  bottom: 0;
  left: 0;
  width: fit-content;
  padding: 25px 20px 5px;
  border-radius: 0 15px 0 0;
  background-color: #fff;
}

.greeting_grid .img100 div span {
  display: block;
  line-height: normal;
  letter-spacing: 0.03em;
}

.greeting_grid .right .midashi38 {
  letter-spacing: 0.03em;
}

.greeting_grid .right p {
  letter-spacing: 0.03em;
}

.greeting_grid .right .midashi22 {
  border-bottom: 1px solid #d2d2d2;
  padding-bottom: 10px;
}

.history_list {
  display: grid;
  gap: 15px;
}

.history_list li {
  display: grid;
  grid-template-columns: 110px 1fr;
}

.history_list li p {
  line-height: 1.8em;
}

.overview_list li {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 15vw;
  border-bottom: 1px solid #d2d2d2;
  padding: 40px 15px;
  font-size: 17px;
}
.overview_list2 li {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 15vw;
  border-bottom: 1px solid #d2d2d2;
  padding: 40px 15px;
  font-size: 17px;
}
.break-word{overflow-wrap: break-word;}
.block740{
 display: none; 
}
.overview_list li div, .overview_list li p {
  line-height: normal;
}

.overview_list li .grid {
  gap: 10px;
}

.overview_list li .flex {
  display: flex;
  align-items: center;
  gap: 10px;
}

.overview_list li .flex span {
  display: block;
  background-color: #0092d1;
  width: 100%;
  max-width: 8px;
  height: 8px;
  border-radius: 50%;
}

.overview_list li .map iframe {
  width: 100%;
  height: 500px;
  border-radius: 20px;
}

.overview_list li:nth-child(1) {
  padding-top: 0;
}

/*news*/
.page {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}

.page li, .page a {
  font-size: 22px;
}

.page a {
  color: #bdbfc2;
}

.page .active {
  color: #0092d1;
  border-bottom: 1px solid #0092d1;
}

.page .next a {
  position: relative;
  left: 40px;
  border-top: 2px solid #0092d1;
  border-right: 2px solid #0092d1;
  width: 9px;
  height: 9px;
  transform: rotateZ(45deg);
  display: block;
}

.page .prev a {
  position: relative;
  right: 40px;
  border-top: 2px solid #0092d1;
  border-right: 2px solid #0092d1;
  width: 9px;
  height: 9px;
  transform: rotateZ(-135deg);
  display: block;
}

/*contact*/
.contact_form {
  display: grid;
  gap: 40px;
}

.contact_form li {
  display: grid;
  gap: 15px;
}

.contact_form li .title_type {
  display: flex;
  gap: 15px;
  align-items: center;
}

.contact_form li .title_type p {
  font-size: 18px;
}

.contact_form li .title_type span {
  display: block;
  line-height: normal;
  font-size: 15px;
  color: #fff;
  padding: 0 10px;
  border-radius: 75px;
}

.contact_form .radio {
  display: grid;
  gap: 10px;
}

.contact_form .radio label {
  display: flex;
  gap: 3px;
}

.contact_form .radio .wpcf7-radio {
  display: grid;
  row-gap: 10px;
}

input[type=radio] {
  position: relative;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
  width: 0;
}

input[type=radio]:checked + .wpcf7-list-item-label::before {
  opacity: 1;
}

.radio input[type=checkbox] {
  position: relative;
  opacity: 0;
  visibility: hidden;
  z-index: 0;
  width: 0;
}

.radio input[type=checkbox]:checked + .wpcf7-list-item-label::before {
  opacity: 1;
}

.radio .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-205%, -50%);
  width: 13px;
  height: 13px;
  background: #0092d1;
  border-radius: 50%;
  z-index: 1;
  opacity: 0;
}

.radio .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-130%, -50%);
  border: 1px solid #bfbfbf;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  background: unset;
  z-index: 1;
}

.text_input {
  border: 1px solid #c1c9d0;
  border-radius: 5px;
  width: 100%;
  height: 60px;
  padding: 0 15px;
}

.textarea {
  border: 1px solid #c1c9d0;
  border-radius: 5px;
  width: 100%;
  height: 250px;
  padding: 10px 15px;
}

input::placeholder {
  color: #717171;
  font-size: 15px;
}

.privacy_check_box label {
  display: flex;
  justify-content: center;
  gap: 5px;
}

.privacy_check_box a {
  border-bottom: 1px solid #222222;
  padding-bottom: 3px;
}

.submit {
  position: relative;
  width: 100%;
  max-width: 320px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 50px auto 0;
  transition: .3s;
}

.submit input {
  color: #0092d1;
  width: 100%;
  max-width: 320px;
  height: 70px;
  border: 1px solid #0092d1;
  background-color: #fff;
  border-radius: 75px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}

.submit .arrow {
  position: absolute;
  top: 50%;
  right: 6%;
  transform: translateY(-50%);
  background-color: #35a6d7;
  border: 1px solid #35a6d7;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  transition: .3s;
}

.submit .arrow i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  width: 9px;
  height: 1px;
  transition: .3s;
}

.submit .arrow i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 6px;
  height: 6px;
  transition: .3s;
}

.submit:hover input {
  color: #fff;
  background-color: #0092d1;
}

.recaptcha_text {
  font-size: 13px;
  text-align: center;
}

/*privacy*/
.privacy_sec p {
  letter-spacing: 0.03em;
}

.privacy_sec p.flex {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 19px;
}

.privacy_sec p.flex span {
  position: relative;
  top: 2px;
  display: block;
  width: 100%;
  max-width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #0092d1;
}
.break-word{overflow-wrap: break-word;}

/*website*/
.fast_img.website {
  background: url(../images/main_website.webp) center/cover;
}

.website01 {
  .lower_grid01 {
    ul {
      li {
        display: flex;
        align-items: center;
        gap: 7px;
        font-size: 20px;
        font-weight: 700;
        color: #0092d1;

        i {
          display: block;
          background-color: #0092d1;
          width: 100%;
          max-width: 10px;
          height: 10px;
          border-radius: 50%;
        }
      }
    }
  }
}

.website__why_choose_us__contents {
  /* display: grid;
  gap: 80px; */

  .grid_box {
    display: grid;
    grid-template-columns: 50% 45%;
    justify-content: space-between;
    gap: 25px;
    padding: 80px 0;
    border-top: 1px solid #d2d2d2;

    .midashi42 {
      display: flex;
      align-items: baseline;
      color: #0092d1;
      line-height: 1.5em;

      span {
        font-size: 50px;
      }
    }

    .blue_list {
      li {
        display: flex;
        align-items: baseline;
        gap: 7px;
        color: #0092d1;
        font-weight: 700;

        i {
          position: relative;
          bottom: 2px;
          display: block;
          background-color: #0092d1;
          width: 100%;
          max-width: 8px;
          height: 8px;
          border-radius: 50%;
        }
      }
    }

    .check_list {
      ul {
        display: grid;
        gap: 10px;
  
        li {
          display: flex;
          align-items: center;
          gap: 10px;
          background-color: #fff;
          border-radius: 5px;
          padding: 16px 20px;
          font-size: 20px;
          line-height: 1.7em;
  
          img {
            display: block;
            width: 100%;
            max-width: 26px;
          }
        }
      }
    }
  }

  .grid_box:last-child {
    border-bottom: 1px solid #d2d2d2;
  }
}

.flow_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 50px 2vw;

  li {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    p {
      line-height: 1.5em;
    }
  }

  li:nth-child(odd) {
    width: 27%;
    border: 2px solid #0092d1;
    border-radius: 20px;
    min-height: 230px;
    padding: 0 15px;
    

    .number {
      position: absolute;
      top: 0;
      left: 0;
      width: 65px;
      height: 65px;
      background-color: #0092d1;
      border-radius: 15px 0 15px 0;
      color: #fff;
      font-size: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }

  li:nth-child(even) {
    width: 1%;
  }
}

/*LLMO*/
.fast_img.llmo {
  background: url(../images/main_llmo.webp) center/cover;
}
.anchor.llmo {
    grid-template-columns: repeat(2, 1fr);
}


.merit_table.llmo thead tr td:last-child {
  background: linear-gradient(
    90deg,
    #3b5bb5 0%,
    #2e6fb7 50%,
    #1f86b8 100%
  );
}

.merit_table.llmo tbody tr td:nth-child(n + 2) p {
  justify-content: center;
}

.llmo_sec02 {
  .border_box {
    border: 2px solid #0092d1;
    border-radius: 12px;
    background-color: #fff;
    padding: 45px 25px;

    div {
      width: fit-content;
      margin: 0 auto;
    }
  }
}


.llmo_benefit {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 1.5vw;

  li {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 20px;
      min-height: 330px;
      padding: 0 15px;
      background-color: #f2f2f3;

      .midashi28 {
        padding-bottom: 20px;
        line-height: 1.5em;
      }

    .number {
      position: absolute;
      top: 0;
      left: 0;
      width: 65px;
      height: 65px;
      background-color: #0092d1;
      border-radius: 15px 0 15px 0;
      color: #fff;
      font-size: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }
}

.llmo_sec04 {
  padding-bottom: 80px;
}

.llmo_sec04:after {
  content: "";
  position: absolute;
  bottom: -23.1%;
  left: 0;
  background-image: url(../images/llmo_shape.webp);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 100%;
  height: 135px;
}

.llmo_sec05 {
  padding: 180px 0 180px;

  .midashi50 {
    background:linear-gradient(transparent 60%, #fcde95 60%);
    width: fit-content;
    margin: 0 auto;
  }

  .grid_box {
    display: grid;
    grid-template-columns: 45% 47%;
    justify-content: space-between;
    align-items: center;
    gap: 35px;

    ul {
      padding: 25px 0;

       li {
        display: flex;
        align-items: baseline;
        gap: 7px;
        color: #0092d1;
        font-weight: 700;

        i {
          position: relative;
          bottom: 2px;
          display: block;
          background-color: #0092d1;
          width: 100%;
          max-width: 8px;
          height: 8px;
          border-radius: 50%;
        }
      }
    }
  }

  .grid_box02 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    li:nth-child(1) {
      background-color: #0092d1;
      display: grid;
      align-items: center;
      justify-content: center;
      border-radius: 20px 0 0 20px;
      padding: 45px 25px;

      div {
        color: #fff;

        a {
          position: relative;
          border: 1px solid #fff;
          border-radius: 75px;
          width: 100%;
          display: flex;
          align-items: center;
          max-width: 300px;
          height: 65px;
          color: #fff;
          font-size: 18px;
          padding-left: 35px;
          transition: .3s;

          span {
            position: absolute;
            top: 50%;
            right: 6%;
            transform: translateY(-50%);
            background-color: #fff;
            width: 25px;
            height: 25px;
            border-radius: 50%;
            transition: .3s;
          }

          span i {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 12px;
            height: 12px;
            display: block;
            transition: .3s;
          }
  
          span i:after {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: #0092d1;
            width: 9px;
            height: 1px;
            transition: .3s;
          }

          span i::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 61%;
            transform: translate(-50%, -50%) rotateZ(45deg);
            border-top: 1px solid #0092d1;
            border-right: 1px solid #0092d1;
            width: 6px;
            height: 6px;
            transition: .3s;
          }
        }

        a:hover {
          background-color: #fff;
          color: #0092d1;

          span {
            background-color: #0092d1;

            i {
              background-color: #0092d1;
            }
            i:after {
              background-color: #fff;
            }
            i::before {
              border-top: 1px solid #fff;
              border-right: 1px solid #fff;
            }
          }
        }
      }
    }

    li:nth-child(2) {
      background: url(../images/llmo_03.webp) center / cover;
      width: 100%;
      height: 530px;
      border-radius: 0 20px 20px 0;
    }
  }
}

.meo_text_link {
  color: #0092d1;
  border-bottom: 1px solid #0092d1
}



/*カラー*/
.c-fff {
  color: #fff;
}

.c-2e4fb5 {
  color: #2e4fb5;
}

.c-0092d1 {
  color: #0092d1;
}

.c-589cb9 {
  color: #589cb9;
}

.c-red {
  color: #d50d0d;
}

.bg_a0c2e0 {
  background-color: #a0c2e0;
}

.bg_87b2d8 {
  background-color: #87b2d8;
}

.bg_5b92c3 {
  background-color: #5b92c3;
}

.bg_3977ae {
  background-color: #3977ae;
}

.bg_589cb9 {
  background-color: #589cb9;
}

.bg_b92a2a {
  background-color: #b92a2a;
}

.bg_898989 {
  background-color: #898989;
}

/*font*/
.midashi95 {
  font-size: 95px;
}

.midashi85 {
  font-size: 85px;
}

.midashi55 {
  font-size: 55px;
}

.midashi50 {
  font-size: 50px;
}

.midashi45 {
  font-size: 45px;
}

.midashi42 {
  font-size: 42px;
}

.midashi40 {
  font-size: 40px;
}

.midashi40 .point {
  position: relative;
}

.midashi40 .point:after {
  position: absolute;
  top: -25px;
}

.midashi38 {
  font-size: 38px;
}

.midashi35 {
  font-size: 35px;
}

.midashi30 {
  font-size: 30px;
}

.midashi28 {
  font-size: 28px;
}

.midashi27 {
  font-size: 27px;
}

.midashi25 {
  font-size: 25px;
}

.midashi24 {
  font-size: 24px;
}

.midashi22 {
  font-size: 22px;
}

.midashi21 {
  font-size: 21px;
}

.midashi18 {
  font-size: 18px;
}

.font15 {
  font-size: 15px;
}

.font14 {
  font-size: 14px;
}

/*bg*/
.bg_148ec3 {
  background-color: #148ec3;
}

.bg_0092d1 {
  background-color: #0092d1;
}

.bg_ce7432 {
  background-color: #ce7432;
}

.bg_81aa73 {
  background-color: #81aa73;
}

.bg_f2f2f3 {
  background-color: #f2f2f3;
}

.bg_f9fafc {
  background-color: #f9fafc;
}

.bg_eff6fc {
  background-color: #eff6fc;
}

/*btn*/
.btn {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 35px;
  width: 100%;
  max-width: 240px;
  height: 60px;
  border-radius: 75px;
  border: 2px solid #0092d1;
  font-size: 15px;
}

.btn span {
  position: absolute;
  top: 50%;
  right: 7%;
  transform: translateY(-50%);
  background-color: #35a6d7;
  width: 25px;
  height: 25px;
  border-radius: 50%;
}

.btn span i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  display: block;
}

.btn span i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  width: 9px;
  height: 1px;
}

.btn span i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 61%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 6px;
  height: 6px;
}

.btn:hover {
  color: #fff;
  background-color: #0092d1;
  opacity: 0.7;
}

/*service_btn*/
.service_btn {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 35px;
  width: 100%;
  max-width: 240px;
  height: 60px;
  border-radius: 75px;
  border: 2px solid #fff;
  font-size: 14px;
  color: #fff;
}

.service_btn span {
  position: absolute;
  top: 50%;
  right: 7%;
  transform: translateY(-50%);
  background-color: #fff;
  width: 25px;
  height: 25px;
  border-radius: 50%;
}

.service_btn span i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  display: block;
}

.service_btn span i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #0192d1;
  width: 9px;
  height: 1px;
}

.service_btn span i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 61%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #0192d1;
  border-right: 1px solid #0192d1;
  width: 6px;
  height: 6px;
}

.service_btn:hover {
  color: #0192d1;
  background-color: #fff;
}

.service_btn:hover span {
  background-color: #0192d1;
}

.service_btn:hover span i:after {
  background-color: #fff;
}

.service_btn:hover span i::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

/*contact_btn*/
.contact_btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 75px;
  color: #fff;
  font-size: 15px;
  background-image: linear-gradient(to right, #2e50b5, #0291d1);
}

.contact_btn span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: #35a6d7;
  width: 25px;
  height: 25px;
  border-radius: 50%;
}

.contact_btn span i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  display: block;
}

.contact_btn span i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  width: 10px;
  height: 1px;
}

.contact_btn span i::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 61%;
  transform: translate(-50%, -50%) rotateZ(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 7px;
  height: 7px;
}

.contact_btn:hover {
  color: #fff;
  opacity: 0.7;
}

/************************/
/* PC用
------------------------------------------------------------*/
@media only screen and (max-width: 1550px) {
  .benefit_list .box {
    padding: 80px 2.5vw 50px;
  }
}

@media only screen and (max-width: 1500px) {
    /* .header_wrap nav ul li a {
    font-size: 14px;
  } */

  .header_wrap nav {
    display: none;
  }

  .citation_list li .midashi24 {
    padding: 20px 0 15px;
    font-size: 1.6vw;
  }
  .benefit_list02 .box .grid {
    min-height: auto;
    padding-bottom: 30px;
  }
}

@media only screen and (max-width: 1400px) {
  .none1400 {
    display: none;
  }
  .llmo_benefit {
    li {
        min-height: 435px;
    }
  }
}
@media only screen and (max-width: 1378px) {
  .llmo_sec04:after {
    bottom: -22.3%;
  }
}
/* @media only screen and (max-width: 1215px) {
  .header_wrap nav ul li a {
    font-size: 14px;
  }
} */
/* @media only screen and (max-width: 1200px) {
  .header_wrap nav {
  gap: 1.5vw;
}

.header_wrap nav ul {
  gap: 1vw;
}


  .header_wrap nav .contact_btn {
    max-width: 180px;
    height: 40px;
  } */
  .contact_btn {
    font-size: 14px;
  }
  .top_sec01 .grid_contents .right p {
    line-height: 2.4em;
  }
  .top_sec01 .grid_contents .left .img_box:after {
    bottom: -10%;
    left: -26%;
    width: 360px;
    height: 391px;
  }
  /*meo*/
  .anchor li a {
    gap: 15px;
    font-size: 18px;
    padding: 8px 10px;
  }

 @media only screen and (max-width: 1155px) {
    .llmo_sec04:after {
        bottom: -21.3%;
    }
}
 /* @media only screen and (max-width: 1035px) {

  .header_wrap nav {
    display: none;
  }
} */
@media only screen and (max-width: 1024px) {
  .padding100 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding110 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding120 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding130 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding140 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding150 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding160 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding170 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding180 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding190 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding200 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding210 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding220 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding230 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding240 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding250 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding260 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding270 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding280 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding290 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding300 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .margin100 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin110 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin120 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin130 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin140 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin150 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin160 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin170 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin180 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin190 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin200 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin210 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin220 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin230 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin240 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin250 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin260 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin270 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin280 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin290 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin300 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .pt-120 {
    padding-top: 80px;
  }
  .pt-130 {
    padding-top: 80px;
  }
  .pt-140 {
    padding-top: 80px;
  }
  .pt-150 {
    padding-top: 80px;
  }
  .pt-160 {
    padding-top: 80px;
  }
  .pt-170 {
    padding-top: 80px;
  }
  .pt-180 {
    padding-top: 80px;
  }
  .pt-190 {
    padding-top: 80px;
  }
  .pt-200 {
    padding-top: 80px;
  }
  .pt-210 {
    padding-top: 80px;
  }
  .pt-220 {
    padding-top: 80px;
  }
  .pt-230 {
    padding-top: 80px;
  }
  .pt-240 {
    padding-top: 80px;
  }
  .pt-250 {
    padding-top: 80px;
  }
  .pt-260 {
    padding-top: 80px;
  }
  .pt-270 {
    padding-top: 80px;
  }
  .pt-280 {
    padding-top: 80px;
  }
  .pt-290 {
    padding-top: 80px;
  }
  .pt-300 {
    padding-top: 80px;
  }
  .pb-120 {
    padding-bottom: 80px;
  }
  .pb-130 {
    padding-bottom: 80px;
  }
  .pb-140 {
    padding-bottom: 80px;
  }
  .pb-150 {
    padding-bottom: 80px;
  }
  .pb-160 {
    padding-bottom: 80px;
  }
  .pb-170 {
    padding-bottom: 80px;
  }
  .pb-180 {
    padding-bottom: 80px;
  }
  .pb-190 {
    padding-bottom: 80px;
  }
  .pb-200 {
    padding-bottom: 80px;
  }
  .pb-210 {
    padding-bottom: 80px;
  }
  .pb-220 {
    padding-bottom: 80px;
  }
  .pb-230 {
    padding-bottom: 80px;
  }
  .pb-240 {
    padding-bottom: 80px;
  }
  .pb-250 {
    padding-bottom: 80px;
  }
  .pb-260 {
    padding-bottom: 80px;
  }
  .pb-270 {
    padding-bottom: 80px;
  }
  .pb-280 {
    padding-bottom: 80px;
  }
  .pb-290 {
    padding-bottom: 80px;
  }
  .pb-300 {
    padding-bottom: 80px;
  }
  .mt-120 {
    margin-top: 80px;
  }
  .mt-130 {
    margin-top: 80px;
  }
  .mt-140 {
    margin-top: 80px;
  }
  .mt-150 {
    margin-top: 80px;
  }
  .mt-160 {
    margin-top: 80px;
  }
  .mt-170 {
    margin-top: 80px;
  }
  .mt-180 {
    margin-top: 80px;
  }
  .mt-190 {
    margin-top: 80px;
  }
  .mt-200 {
    margin-top: 80px;
  }
  .mt-210 {
    margin-top: 80px;
  }
  .mt-220 {
    margin-top: 80px;
  }
  .mt-230 {
    margin-top: 80px;
  }
  .mt-240 {
    margin-top: 80px;
  }
  .mt-250 {
    margin-top: 80px;
  }
  .mt-260 {
    margin-top: 80px;
  }
  .mt-270 {
    margin-top: 80px;
  }
  .mt-280 {
    margin-top: 80px;
  }
  .mt-290 {
    margin-top: 80px;
  }
  .mt-300 {
    margin-top: 80px;
  }
  .mb-120 {
    margin-bottom: 80px;
  }
  .mb-130 {
    margin-bottom: 80px;
  }
  .mb-140 {
    margin-bottom: 80px;
  }
  .mb-150 {
    margin-bottom: 80px;
  }
  .mb-160 {
    margin-bottom: 80px;
  }
  .mb-170 {
    margin-bottom: 80px;
  }
  .mb-180 {
    margin-bottom: 80px;
  }
  .mb-190 {
    margin-bottom: 80px;
  }
  .mb-200 {
    margin-bottom: 80px;
  }
  .mb-210 {
    margin-bottom: 80px;
  }
  .mb-220 {
    margin-bottom: 80px;
  }
  .mb-230 {
    margin-bottom: 80px;
  }
  .mb-240 {
    margin-bottom: 80px;
  }
  .mb-250 {
    margin-bottom: 80px;
  }
  .mb-260 {
    margin-bottom: 80px;
  }
  .mb-270 {
    margin-bottom: 80px;
  }
  .mb-280 {
    margin-bottom: 80px;
  }
  .mb-290 {
    margin-bottom: 80px;
  }
  .mb-300 {
    margin-bottom: 80px;
  }
  /******************/
  .top_sec01 .grid_contents .left .img_box:after {
    bottom: -10%;
    left: -26%;
    width: 320px;
    height: 347px;
  }
  .top_sec02 .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .contact_sec .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .f_container .grid_contents {
    grid-template-columns: 440px 230px;
    gap: 3vw;
  }
  /*meo*/
  .anchor {
    padding: 40px 0;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 15px;
  }
  .anchor li a {
    gap: 10px;
    font-size: 16px;
    padding: 8px 10px;
    border-left: 1px solid #d2d2d2;
  }
  .anchor li:nth-child(even) a {
    border-left: none;
  }
  .worries_midashi {
    font-size: 30px;
  }
  .worries_midashi span {
    font-size: 38px;
  }
  .worries_grid div {
    width: 80%;
    font-size: 19px;
    padding: 0 15px;
  }
  .merit_table thead tr td {
    font-size: 21px;
  }
  .merit_table tbody tr td:nth-child(1) {
    font-size: 21px;
  }
  .merit_table tbody tr td:nth-child(n + 2) {
    padding: 35px 10px 35px 20px;
  }
  .element_midashi span {
    font-size: 37px;
  }
  .citation_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw;
  }
  .citation_list li .midashi24 {
    padding: 20px 0 15px;
    font-size: 20px;
  }
  .step_flow li .img_box img {
    width: 100%;
    height: auto;
  }
  .graph_wrap .box .midashi22 .c-red {
    font-size: 26px;
  }
  .graph_wrap .box .midashi22 .c-red span {
    font-size: 36px;
  }
  /**/
  .acting_check_list li {
    padding: 18px 20px;
    font-size: 16px;
  }
  /*kikikomi*/
  .kikikomi_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 3vw;
  }

  /*website*/
  .website__why_choose_us__contents {
      & .grid_box {
          & .midashi42 {
              span {
                  font-size: 39px;
              }
          }
      }
  }

  /*llmo*/
  .anchor.llmo {
    grid-template-columns: repeat(1, 1fr);
  }
  .llmo_sec04:after {
      bottom: -28.8%;
  }


  /*font*/
  .midashi95 {
    font-size: 75px;
  }
  .midashi85 {
    font-size: 65px;
  }
  .midashi55 {
    font-size: 40px;
  }
  .midashi50 {
    font-size: 35px;
  }
  .midashi45 {
    font-size: 32px;
  }
  .midashi42 {
    font-size: 31px;
  }
  .midashi40 {
    font-size: 30px;
  }
  .midashi38 {
    font-size: 27px;
  }
  .midashi35 {
    font-size: 26px;
  }
  .midashi30 {
    font-size: 25px;
  }
  .midashi28 {
    font-size: 24px;
  }
  .midashi27 {
    font-size: 24px;
  }
  .midashi25 {
    font-size: 21px;
  }
  .midashi24 {
    font-size: 20px;
  }
  .midashi22 {
    font-size: 19px;
  }
  .midashi21 {
    font-size: 19px;
  }
  .midashi18 {
    font-size: 17px;
  }
  .font15 {
    font-size: 15px;
  }
}
 @media only screen and (max-width: 780px) {

  .f_container .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
    .f_container .grid_contents .right nav {
    display: flex;
    justify-content: flex-start;
    gap: 45px;
  }

}
@media only screen and (max-width: 740px) {
  .flex_30 {
    width: 100%;
  }
  .flex_31 {
    width: 100%;
  }
  .flex_32 {
    width: 100%;
  }
  .flex_33 {
    width: 100%;
  }
  .flex_34 {
    width: 100%;
  }
  .flex_35 {
    width: 100%;
  }
  .flex_36 {
    width: 100%;
  }
  .flex_37 {
    width: 100%;
  }
  .flex_38 {
    width: 100%;
  }
  .flex_39 {
    width: 100%;
  }
  .flex_40 {
    width: 100%;
  }
  .flex_41 {
    width: 100%;
  }
  .flex_42 {
    width: 100%;
  }
  .flex_43 {
    width: 100%;
  }
  .flex_44 {
    width: 100%;
  }
  .flex_45 {
    width: 100%;
  }
  .flex_46 {
    width: 100%;
  }
  .flex_47 {
    width: 100%;
  }
  .flex_48 {
    width: 100%;
  }
  .flex_49 {
    width: 100%;
  }
  .flex_50 {
    width: 100%;
  }
  .flex_51 {
    width: 100%;
  }
  .flex_52 {
    width: 100%;
  }
  .flex_53 {
    width: 100%;
  }
  .flex_54 {
    width: 100%;
  }
  .flex_55 {
    width: 100%;
  }
  .flex_56 {
    width: 100%;
  }
  .flex_57 {
    width: 100%;
  }
  .flex_58 {
    width: 100%;
  }
  .flex_59 {
    width: 100%;
  }
  .flex_60 {
    width: 100%;
  }
  .flex_61 {
    width: 100%;
  }
  .flex_62 {
    width: 100%;
  }
  .flex_63 {
    width: 100%;
  }
  .flex_64 {
    width: 100%;
  }
  .flex_65 {
    width: 100%;
  }
  .flex_66 {
    width: 100%;
  }
  .flex_67 {
    width: 100%;
  }
  .flex_68 {
    width: 100%;
  }
  .flex_69 {
    width: 100%;
  }
  .flex_70 {
    width: 100%;
  }
  .padding100 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding110 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding130 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding140 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding150 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding160 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding170 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding180 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding190 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding200 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding210 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding220 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding230 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding240 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding250 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding260 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding270 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding280 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding290 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding300 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .margin100 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin110 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin120 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin130 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin140 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin150 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin160 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin170 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin180 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin190 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin200 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin210 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin220 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin230 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin240 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin250 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin260 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin270 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin280 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin290 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin300 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .pt-110 {
    padding-top: 60px;
  }
  .pt-120 {
    padding-top: 60px;
  }
  .pt-130 {
    padding-top: 60px;
  }
  .pt-140 {
    padding-top: 60px;
  }
  .pt-150 {
    padding-top: 60px;
  }
  .pt-160 {
    padding-top: 60px;
  }
  .pt-170 {
    padding-top: 60px;
  }
  .pt-180 {
    padding-top: 60px;
  }
  .pt-190 {
    padding-top: 60px;
  }
  .pt-200 {
    padding-top: 60px;
  }
  .pt-210 {
    padding-top: 60px;
  }
  .pt-220 {
    padding-top: 60px;
  }
  .pt-230 {
    padding-top: 60px;
  }
  .pt-240 {
    padding-top: 60px;
  }
  .pt-250 {
    padding-top: 60px;
  }
  .pt-260 {
    padding-top: 60px;
  }
  .pt-270 {
    padding-top: 60px;
  }
  .pt-280 {
    padding-top: 60px;
  }
  .pt-290 {
    padding-top: 60px;
  }
  .pt-300 {
    padding-top: 60px;
  }
  .pb-110 {
    padding-bottom: 60px;
  }
  .pb-120 {
    padding-bottom: 60px;
  }
  .pb-130 {
    padding-bottom: 60px;
  }
  .pb-140 {
    padding-bottom: 60px;
  }
  .pb-150 {
    padding-bottom: 60px;
  }
  .pb-160 {
    padding-bottom: 60px;
  }
  .pb-170 {
    padding-bottom: 60px;
  }
  .pb-180 {
    padding-bottom: 60px;
  }
  .pb-190 {
    padding-bottom: 60px;
  }
  .pb-200 {
    padding-bottom: 60px;
  }
  .pb-210 {
    padding-bottom: 60px;
  }
  .pb-220 {
    padding-bottom: 60px;
  }
  .pb-230 {
    padding-bottom: 60px;
  }
  .pb-240 {
    padding-bottom: 60px;
  }
  .pb-250 {
    padding-bottom: 60px;
  }
  .pb-260 {
    padding-bottom: 60px;
  }
  .pb-270 {
    padding-bottom: 60px;
  }
  .pb-280 {
    padding-bottom: 60px;
  }
  .pb-290 {
    padding-bottom: 60px;
  }
  .mt-110 {
    margin-top: 60px;
  }
  .mt-120 {
    margin-top: 60px;
  }
  .mt-130 {
    margin-top: 60px;
  }
  .mt-140 {
    margin-top: 60px;
  }
  .mt-150 {
    margin-top: 60px;
  }
  .mt-160 {
    margin-top: 60px;
  }
  .mt-170 {
    margin-top: 60px;
  }
  .mt-180 {
    margin-top: 60px;
  }
  .mt-190 {
    margin-top: 60px;
  }
  .mt-200 {
    margin-top: 60px;
  }
  .mt-210 {
    margin-top: 60px;
  }
  .mt-220 {
    margin-top: 60px;
  }
  .mt-230 {
    margin-top: 60px;
  }
  .mt-240 {
    margin-top: 60px;
  }
  .mt-250 {
    margin-top: 60px;
  }
  .mt-260 {
    margin-top: 60px;
  }
  .mt-270 {
    margin-top: 60px;
  }
  .mt-280 {
    margin-top: 60px;
  }
  .mt-290 {
    margin-top: 60px;
  }
  .mt-300 {
    margin-top: 60px;
  }
  .mb-110 {
    margin-bottom: 60px;
  }
  .mb-120 {
    margin-bottom: 60px;
  }
  .mb-130 {
    margin-bottom: 60px;
  }
  .mb-140 {
    margin-bottom: 60px;
  }
  .mb-150 {
    margin-bottom: 60px;
  }
  .mb-160 {
    margin-bottom: 60px;
  }
  .mb-170 {
    margin-bottom: 60px;
  }
  .mb-180 {
    margin-bottom: 60px;
  }
  .mb-190 {
    margin-bottom: 60px;
  }
  .mb-200 {
    margin-bottom: 60px;
  }
  .mb-210 {
    margin-bottom: 60px;
  }
  .mb-220 {
    margin-bottom: 60px;
  }
  .mb-230 {
    margin-bottom: 60px;
  }
  .mb-240 {
    margin-bottom: 60px;
  }
  .mb-250 {
    margin-bottom: 60px;
  }
  .mb-260 {
    margin-bottom: 60px;
  }
  .mb-270 {
    margin-bottom: 60px;
  }
  .mb-280 {
    margin-bottom: 60px;
  }
  .mb-290 {
    margin-bottom: 60px;
  }
  .mb-300 {
    margin-bottom: 60px;
  }
  body {
    min-width: auto;
  }
  #slider {
    height: 67vw !important;
  }
  .catch {
    bottom: 10%;
    left: 3%;
    width: 85vw;
  }
  .top_sec01 {
    width: 100%;
  }
  .top_sec01 .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 17vw;
  }
  .top_sec01 .grid_contents .left .img_box:after {
    bottom: -12vw;
    left: -12%;
    width: 320px;
    height: 347px;
  }
  .top_sec01 .grid_contents .left .img_box {
    padding-top: 40px;
    width: 84%;
    margin: 0 auto;
  }
  .top_sec01 .grid_contents .right {
    padding-top: 0;
  }
  .top_sec01 .grid_contents .right .pb-40 {
    padding-bottom: 15px;
  }

  .news_list li a {
    padding: 25px 5px;
    grid-template-columns: repeat(1, 1fr);
    gap: 5px;
  }
  .news_list li a p {
    font-size: 16px;
    width: 88%;
    grid-template-columns: repeat(1, 1fr);
    gap: 5px;
  }
  .news_category_btn {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2vw;
    row-gap: 2.5vw;
  }
  .news_category_btn02 {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2vw;
    row-gap: 2.5vw;
  }
  .top_sec03 .grid_contents {
    gap: 35px;
  }
  .top_sec03 .grid_contents .order2 {
    order: 0;
  }
  .top_sec03 .grid_contents .flex01 {
    width: 100%;
  }
  .top_sec03 .grid_contents .flex02 {
    width: 100%;
  }
  .top_sec04 .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .top_sec05 .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .top_sec05 .grid_contents ul li a {
    padding: 23px 10px;
  }
  .top_sec05 .grid_contents ul li a .font1.c-2e4fb5 {
    font-size: 14px;
  }
  .contact_sec {
    background: url(../images/sp/contact_bg.webp) 50%/cover;
  }
  .contact_sec .contact_btn {
    max-width: 320px;
    height: 75px;
    font-size: 22px;
    margin: 0 auto;
  }
  .footer {
    padding: 60px 0 0;
  }
  .f_logo {
    max-width: 270px;
  }
  .f_container .grid_contents .right nav ul {
    gap: 15px;
  }
  .f_container .copy_container {
    padding: 40px 0 30px;
    margin-top: 60px;
    display: grid;
    gap: 25px;
    justify-content: unset;
  }
  /*下層ページ*/
  .fast_title {
    padding: 40px 0 70px;
  }
  .fast_title h2 {
    font-size: 60px;
  }
  .fast_img {
    height: 66vw;
  }
  .sp_scroll {
    overflow-x: scroll;
  }
  /*meo*/
  .fast_img.meo {
    background: url(../images/sp/main_meo.webp) center/cover;
  }
  .anchor {
    padding: 40px 0;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 15px;
  }
  .anchor li a {
    position: relative;
    font-size: 17px;
    padding: 8px 10px;
  }
  .anchor li a span {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10%;
    max-width: 25px;
    height: 25px;
  }
  .anchor li:nth-child(even) a {
    border-left: 1px solid #d2d2d2;
  }
  .lower_grid01 {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .lower_grid01 .left {
    order: 2;
    padding-top: 0;
  }
  .worries_midashi {
    font-size: 25px;
  }
  .worries_midashi span {
    font-size: 32px;
  }
  .worries_wrap {
    height: 510px;
  }
  .worries_grid {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 0;
    row-gap: 45px;
  }
  .worries_grid div {
    width: 90%;
    font-size: 16px;
    padding: 0 15px;
    height: 120px;
  }
  .worries_grid div:nth-child(1) {
    margin-left: 2.5vw;
  }
  .worries_grid div:nth-child(2) {
    margin-right: 2.5vw;
  }
  .worries_grid div:nth-child(3) {
    margin-left: auto;
  }
  .worries_grid div:nth-child(4) {
    margin-right: auto;
  }
  .worries_wrap img {
    max-width: 200px;
  }
  .merit_table {
    width: 150%;
  }
  .merit_table thead tr td {
    font-size: 18px;
  }
  .merit_table tbody tr td:nth-child(1) {
    font-size: 18px;
  }
  .merit_table tbody tr td:nth-child(n + 2) {
    padding: 25px 10px 25px 20px;
  }
  .merit_table tbody tr td:nth-child(n + 2) p {
    gap: 5px;
    font-size: 15px;
  }
  .element_wrap .element_box .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
    padding-right: 0;
  }
  .citation_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 25px;
  }
  .citation_list li {
    padding: 10px 8vw 30px;
  }
  .element_wrap .element_box {
    padding: 40px 0 60px;
  }
  .element_list li {
    grid-template-columns: 120px 1fr;
    gap: 4vw;
    padding: 12px 30px 12px 20px;
  }
  .meo_graph_wrap {
    border: 10px solid #eff6fc;
    padding: 40px 6vw;
  }
  .meo_graph_wrap .t-right {
    text-align: left;
  }
  .element_midashi {
    gap: 5px;
  }
  .works_sec .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
    padding: 45px 8vw;
  }
  .works_sec .grid_contents .right .bg_0092d1 {
    padding: 1px 12px;
    font-size: 14px;
  }
  .q_and_a .box .question i {
    top: 7px;
    max-width: 27px;
    height: 32px;
  }
  .q_and_a .box .answer i {
    top: 10px;
    max-width: 25px;
    height: 26px;
  }
  .q_and_a .box {
    padding-bottom: 35px;
    gap: 15px;
  }
  .q_and_a .box:nth-child(n + 2) {
    padding-top: 35px;
  }
  /**/
  .rpo_flow_sec .midashi40 {
    line-height: 2.3em;
  }
  .rpo_flow_sec .midashi40 .point:after {
    top: -10px;
    width: 8px;
    height: 8px;
  }
  .step_flow {
    grid-template-columns: repeat(1, 1fr);
  }
  .step_flow li .step_midashi {
    font-size: 27px;
    padding: 15px 10px;
  }
  .step_flow li .step_text_box {
    padding: 30px 15vw 40px;
  }
  .step_flow li:nth-child(1) .step_midashi:after {
    display: none;
  }
  .step_flow li:nth-child(2) .step_midashi:after {
    display: none;
  }
  .step_flow li:nth-child(3) .step_midashi:after {
    display: none;
  }
  .step_flow li:nth-child(1) .step_midashi {
    border-radius: 15px 15px 0 0;
  }
  .step_flow li .img_box img {
    width: 80%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .step_flow li .img_box {
    height: 110px;
  }
  .step_flow li:nth-child(4) .step_midashi {
    border-radius: 0;
  }
  .step_flow li:nth-child(4) {
    border-radius: 0;
  }
  .reason_wrap .reason_box .grid_contents {
    grid-template-columns: repeat(1, 1fr);
    justify-content: space-between;
    gap: 35px;
  }
  .reason_wrap .reason_box {
    padding: 40px 6vw;
  }
  .reason_wrap .reason_box .grid_contents .left .number {
    font-size: 27px;
  }
  .reason_wrap .reason_box .bg_fff.img100 {
    padding: 35px 2vw;
  }
  .graph_wrap {
    padding: 50px 6vw;
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .graph_wrap .box .midashi22 .c-red {
    font-size: 22px;
  }
  .graph_wrap .box .midashi22 .c-red span {
    font-size: 32px;
  }
  .graph_wrap .box .text_box {
    padding: 15px 4vw;
  }
  /**/
  .acting_check_list li {
    padding: 16px 15px;
    font-size: 15px;
    gap: 10px;
  }
  .acting_check_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5vw;
  }
  .benefit_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 25px;
  }
  .benefit_list .box {
    padding: 80px 6vw 50px;
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .benefit_list .box span {
    width: 60px;
    height: 60px;
    border-radius: 15px 0 15px 0;
    font-size: 27px;
  }
  /*kikikomi*/
  .fast_img.kikikomi {
    background: url(../images/sp/main_kikikomi.webp) center/cover;
  }
  .anchor.kikikomi {
    grid-template-columns: repeat(1, 1fr);
  }
  .kikikomi_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 25px;
  }
  .benefit_list02 {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .kikikomi_list li {
    padding: 40px 6vw 50px;
  }
  .benefit_list02 .box {
    padding: 40px 6vw 50px;
  }
  /*company*/
  .fast_img.company {
    background: url(../images/sp/main_kikikomi.webp) center/cover;
  }
  .greeting_grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
  }
  .history_list li {
    grid-template-columns: 95px 1fr;
  }
  .overview_list li {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
    padding: 25px 10px;
    font-size: 16px;
  }
  .overview_list li .map iframe {
    height: 320px;
  }
  .overview_list li .flex {
    gap: 7px;
  }
  .overview_list2 li {
  grid-template-columns: 115px 1fr;
}
.block740{display: block;}
  /*contact*/
  .contact_form {
    gap: 25px;
  }
  .contact_form li .title_type p {
    font-size: 17px;
  }
  .contact_form li .title_type span {
    font-size: 14px;
    padding: 0 10px;
  }
  .textarea {
    height: 180px;
  }
  /*privacy*/
  .privacy_sec p.flex {
    gap: 10px;
    font-size: 17px;
  }

  /*website*/
  .website01 {
    & .lower_grid01 {
        & ul {
            li {
                display: flex;
                align-items: center;
                gap: 7px;
                font-size: 17px;
                font-weight: 700;
                color: #0092d1;
            }
        }
    }
}
  .website__why_choose_us__contents {
      .grid_box {
          grid-template-columns: repeat(1, 1fr);
          gap: 25px;
          padding: 35px 0;
      }
  }
  .website__why_choose_us__contents {
    & .grid_box {
        & .check_list {
            & ul {
                li {
                    gap: 7px;
                    padding: 12px 12px;
                    font-size: 17px;
                }
            }
        }
    }
}
  .website__why_choose_us__contents {
      & .grid_box {
          & .midashi42 {
              span {
                  font-size: 29px;
              }
          }
      }
  }

  .flow_list {
    gap: 25px 15px;
}

  .flow_list {
    li:nth-child(odd) {
        width: 38%;
        min-height: 180px;
        padding: 0 15px;
    }
}
.flow_list {
    li:nth-child(even) {
        width: 6%;
    }
}
.flow_list {
    & li:nth-child(2n+1) {
        .number {
            top: -1px;
            left: -1px;
            width: 45px;
            height: 45px;
            border-radius: 15px 0 15px 0;
            font-size: 23px;
        }
    }
}

/*llmo*/
.llmo_sec02 {
    .border_box {
        padding: 25px 25px;
    }
}
.llmo_benefit {
    grid-template-columns: repeat(1, 1fr);
    gap: 25px;
}
  .llmo_benefit {
      li {
          min-height: 330px;
      }
  }
  .llmo_benefit {
    li {
      padding: 25px;
    }
  }
    .acting_check_list {
        grid-template-columns: repeat(1, 1fr);
        gap: 10px;
    }

    .llmo_sec04:after {
        bottom: -18.3%;
    }

  .llmo_sec05 {
    padding: 60px 0 70px;
  }
  .llmo_sec05 {
    .grid_box {
        grid-template-columns: repeat(1, 1fr);
        gap: 35px;
    }
  }
  .llmo_sec05 {
    .grid_box02 {
        grid-template-columns: repeat(1, 1fr);
        gap: 15px;
    }
  }
  .llmo_sec05 {
    & .grid_box02 {
        li:nth-child(1) {
            border-radius: 20px;
            padding: 35px 25px;
        }
    }
}
.llmo_sec05 {
    & .grid_box02 {
        li:nth-child(2) {
            height: 230px;
            border-radius: 20px;
        }
    }
}


  /*btn*/
  .btn {
    margin: 0 auto;
  }
  /*font*/
  .midashi95 {
    font-size: 50px;
  }
  .midashi85 {
    font-size: 40px;
  }
  .midashi55 {
    font-size: 28px;
  }
  .midashi50 {
    font-size: 26px;
  }
  .midashi45 {
    font-size: 25px;
  }
  .midashi42 {
    font-size: 24px;
  }
  .midashi40 {
    font-size: 24px;
  }
  .midashi38 {
    font-size: 24px;
  }
  .midashi35 {
    font-size: 23px;
  }
  .midashi30 {
    font-size: 22px;
  }
  .midashi28 {
    font-size: 21px;
  }
  .midashi27 {
    font-size: 21px;
  }
  .midashi25 {
    font-size: 19px;
  }
  .midashi24 {
    font-size: 19px;
  }
  .midashi22 {
    font-size: 18px;
  }
  .midashi21 {
    font-size: 18px;
  }
  .midashi18 {
    font-size: 17px;
  }
  .font15 {
    font-size: 14px;
  }
  /*****************/
  footer{
    margin-bottom: 75px;
  }
  .sp_fixed{
    width: 100%;
    height: 83px;
    margin: 0 auto;
      display: flex;
      justify-content: center;
      align-items: center;
      position: fixed;
      bottom: -3px;
      left: 0;
      z-index: 999;
  }
  .sp_fixed div{
    width: 100%;
    padding: 27px 0;
    background-color: #2E4FB5;
    margin: 0 auto;
  }
  .contact{
    border-left: 1px solid #fff;
  }
  .tel{
    border-right: 1px solid #fff;
  }
  .sp_fixed div a{
    display: block;
    color: #fff;
    text-align: center;
  }
  .sp_fixed:hover{
    opacity: 0.8;
  }

  
}

/* スマートフォン 縦(ポートレート) */
