@charset "UTF-8";
/* Base (2026.01)
-------------------------------------------------------------- 

body {
background-color: var(--color_main);
padding-top: 70px;
}

.formSubmitBtn {
margin-top: 20px;
p {
background: #E89700;
background: linear-gradient(90deg, rgba(232, 151, 0, 1) 0%, rgba(226, 94, 0, 1) 100%);
border: 1px solid rgba(226, 94, 0, 1);
margin: 0;
transition: 0.2s;
button {
background: none;
border: none;
color: #FFF;
cursor: pointer;
display: flex;
justify-content: center;
align-items: center;
font-size: var(--fs-m);
font-weight: bold;
letter-spacing: 0.04em;
min-height: 60px;
padding: 12px 0;
position: relative;
text-decoration: none;
transition: 0.2s;
width: 100%;
&:before {
background: url("../images/home_new/icon_mail.svg") center center no-repeat;
background-size: 24px auto;
content: '';
display: inline-block;
margin-right: 12px;
height: 16px;
transition: 0.2s;
width: 24px;
filter: brightness(0) invert(1);
}
&:hover {
background-color: var(--color_white);
color: rgba(226, 94, 0, 1);

&:before {
filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
transition: 0.2s;
}

}
}
}
}

.open-sub {
color: #0812E4!important;
}

@media screen and (max-width: 1700px) {
#content-in {
padding-bottom: 120px;
}
}

@media screen and (max-width: 480px) {
#content-in {
padding-bottom: 80px;
}
}

@media screen and (max-width: 768px) {
body {
padding-top: 60px;
}
}

.ftCta {
background-color: var(--color_main);
display: flex;
justify-content: center;
align-items: center;
min-height: 550px;
padding-left: 0;
padding-right: 0;
.inr {
color: var(--color_gray-light);
text-align: center;
.hl1 {
color: var(--color_gray-light);
font-size: var(--fs-m);
font-weight: 500;
line-height: 1.6;
letter-spacing: 0.06em;
margin-bottom: 1em;
}
.free {
letter-spacing: 0.06em;
margin-bottom: 40px;
}
.ftCtaBtn {
padding: 0;
ul {
display: flex;
justify-content: space-between;
list-style: none;
margin: 0 auto 24px;
max-width: 900px;
padding: 0;
width: 100%;
li {
border: 1px solid #FFF;
background: #FFFFFF;
background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(216, 216, 216, 1) 100%);
margin: 0;
transition: 0.2s;
width: 48.2%;
a {
display: flex;
justify-content: center;
align-items: center;
font-size: var(--fs-m);
font-weight: bold;
letter-spacing: 0.04em;
min-height: 114px;
position: relative;
text-decoration: none;
transition: 0.2s;
width: 100%;
&:before {
background: url("../images/home_new/icon_docs.svg") center center no-repeat;
background-size: 21px auto;
content: '';
display: inline-block;
margin-right: 12px;
height: 28px;
transition: 0.2s;
width: 21px;
}
&:hover {
background-color: var(--color_main);
color: var(--color_gray-light);

&:before {
filter: brightness(0) invert(1);
}

}
}
&.mail {
background: #E89700;
background: linear-gradient(90deg, rgba(232, 151, 0, 1) 0%, rgba(226, 94, 0, 1) 100%);
border: 1px solid rgba(226, 94, 0, 1);
a {
color: #FFF;
&:before {
background: url("../images/home_new/icon_mail.svg") center center no-repeat;
background-size: 28px auto;
content: '';
display: inline-block;
margin-right: 12px;
height: 19px;
width: 28px;
transition: 0.2s;
filter: brightness(0) invert(1);
}
&:hover {
background-color: var(--color_white);
color: rgba(226, 94, 0, 1);

&:before {
filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
transition: 0.2s;
}

}
}
}
}
}
}
dl {
color: var(--color_gray-light);
display: flex;
justify-content: center;
align-items: center;
margin: 0;
dt {
font-size: var(--fs-l);
font-weight: bold;
	letter-spacing: 0.06em;
	line-height: 1;
	a {
	color: var(--color_gray-light);
	text-decoration: none;
	span {
	background-color: var(--color_gray);
	color: var(--color_main);
	display: inline-block;
font-size: 24px;

letter-spacing: 0;
margin-right: 8px;
padding: 4px 8px;
vertical-align: 4px;
	}
	}
}
dd {
font-size: 14px;
letter-spacing: 0.04em;
padding-left: 24px;
}
}
}
}
@media screen and (max-width: 1366px){
.ftCta {
.inr {
.hl1 {
letter-spacing: 0.01em;
}
.ftCtaBtn {
  padding: 0 40px;
}
}
}
}
@media screen and (max-width: 680px) {
.ftCta {
min-height: auto;
min-height: none;
padding: 40px 5vw 40px;
.inr {
max-width: auto;
max-width: none;
.free {
letter-spacing: 0;
margin-bottom: 28px;
}
.ftCtaBtn {
padding: 0;
ul {
display: block;
margin: 0 auto;
max-width: 420px;
li {
margin: 0 0 16px;
width: 100%;
a {
min-height: 60px;
}
}
}
}
dl {
display: block;
dt {
	letter-spacing: 0.04em;
	padding: 8px 0 12px;
	a {
	span {
font-size: 18px;
margin-right: 12px;
vertical-align: 3px;
	}
	}
}
dd {
font-size: 13px;
letter-spacing: 0;
padding-left: 0;
}
}
}
}
}

.newHeader {
padding: 0;
position: fixed;
top: 0;
left: 0;
z-index: 2;
width: 72%;
* {
margin: 0;
padding: 0;
}
.hdInr {
background-color: var(--color_main);
display: flex;
justify-content: space-between;
height: 70px;
}
.hdLogo {
display: flex;
align-items: center;
height: 70px;
padding: 4px 0 0 10px;
width: 180px;
img {
width: 170px;
}
}
.hdR {
display: flex;
justify-content: flex-end;
height: 70px;
width: calc(100% - 180px);

.gNav {
> ul {
display: flex;
list-style: none;
> li {
> a, .noLink {
color: #FFF;
display: flex;
align-items: center;
font-size: 14px;
font-weight: 600;
letter-spacing: -0.02em;
min-height: 60px;
padding: 0 12px;
text-decoration: none;
-webkit-font-smoothing: antialiased;
&[target="_blank"]{
&:after {
background: url("../images/home_new/icon_blank.svg") center center no-repeat;
background-size: 19px auto;
content: '';
display: inline-block;
margin-left: 4px;
height: 19px;
width: 19px;
}
}
&:hover {
text-decoration: underline;
}
}
.noLink {
&:after {
background: url("../images/home_new/icon_arrow_under.svg") center center no-repeat;
background-size: 10px auto;
content: '';
display: inline-block;
margin-left: 8px;
height: 6px;
width: 10px;
}
}
.sub {
display: none;
list-style: none;
padding: 8px;
position: relative;
z-index: 1;
&:after {
box-shadow: inset 25px 35px 35px rgba(0,32,59	, 0.4), inset -25px -35px 35px rgba(0,32,59, 0.4);
background: rgba(0,32,59,0.55);
backdrop-filter: blur(8px);
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
z-index: -1;
}
li {
a {
color: #FFF;
display: block;
font-size: 15px;
font-weight: 600;
padding: 8px 12px 8px;
text-decoration: none;
transition: 0.2s;
&:hover {
background: rgba(255,255,255,0.9);
color: var(--color_main);
}
}
}
}
}
}
}

.cvBtn {
ul {
display: flex;
justify-content: flex-end;
list-style: none;
margin: 0;
padding: 0;
max-width: 420px;
li.mail {
background: #E89700;
background: linear-gradient(90deg, rgba(232, 151, 0, 1) 0%, rgba(226, 94, 0, 1) 100%);
height: 70px;
margin: 0;
width: 200px;
a {
color: #FFF;
display: flex;
justify-content: center;
align-items: center;
font-size: 16px;
font-weight: bold;
letter-spacing: 0.04em;
height: 70px;
position: relative;
text-decoration: none;
transition: 0.2s;
width: 100%;
&:before {
background: url("../images/home_new/icon_mail.svg") center center no-repeat;
background-size: 22px auto;
content: '';
display: inline-block;
margin-right: 8px;
height: 15px;
width: 20px;
transition: 0.2s;
filter: brightness(0) invert(1);
}
&:hover {
background-color: var(--color_white);
color: rgba(226, 94, 0, 1);

&:before {
filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
}

}
}
}
li.tel {
height: 70px;
margin: 0;
transition: 0.2s;
width: 210px;
a {
color: #FFF;
display: flex;
align-items: center;
align-content: center;
flex-wrap: wrap;
justify-content: center;
align-items: center;
font-size: 20px;
font-weight: bold;
letter-spacing: 0.04em;
line-height: 1.3;
height: 70px;
position: relative;
text-decoration: none;
width: 100%;
&:before {
background: url("../images/home_new/icon_tel.svg") center center no-repeat;
background-size: 16px auto;
content: '';
display: inline-block;
margin-right: 8px;
height: 16px;
width: 16px;
filter: brightness(0) invert(1);
}
span {
font-size: 12px;
font-weight: normal;
}
}
}
}
}
}
}
@media screen and (min-width: 1023px){
 .newHeader .hdR .cvBtn ul li.tel a {
pointer-events: none;
  }
}
@media screen and (max-width: 1700px) {
.newHeader {
.hdR {
.gNav {
padding-right: 16px;
}
.cvBtn ul li.mail {
display: none;
}
.cvBtn ul li.tel {
display: none;
}
}

}
}
@media screen and (max-width: 1366px){
	.newHeader {
	width: 68%;
	}
}
@media screen and (min-width: 1024px) and (max-width: 1182px) {
.newHeader .hdR .gNav > ul > li > a, .newHeader .hdR .gNav > ul > li .noLink {
font-size: 13px;
padding: 0 6px;
transition: none!important;
}
}
@media screen and (min-width: 769px) and (max-width: 800px) {
.newHeader .hdR .gNav > ul > li > a, .newHeader .hdR .gNav > ul > li .noLink {
  letter-spacing: -0.06em;
  padding: 0 10px;
		transition: none!important;
}
}
@media screen and (min-width: 768px) {
.newHeader .hdR .gNav > ul > li .noLink:hover + .sub,
.newHeader .hdR .gNav > ul > li .sub:hover {
  display: block;
}
}
@media screen and (max-width: 1023px) {
.newHeader {
width: 100%;
.hdInr {
height: 60px;
}
.hdLogo {
height: 60px;
}
.hdR {
height: 60px;

.gNav {
> ul {
> li {
> a, .noLink {
min-height: 60px;
}
}
}
}

}
}
.newHeader {
.hdLogo {
padding: 4px 0 0 10px;
width: 140px;
img {
width: 130px;
}
}
.hdR {
padding-right: 70px;
.gNav {
padding: 0;
position: absolute;
top: 60px;
left: 0;
width: 100%;
&:after {
box-shadow: inset 25px 35px 35px rgba(0,32,59	, 0.4), inset -25px -35px 35px rgba(0,32,59, 0.4);
background: rgba(0,32,59,0.7);
backdrop-filter: blur(8px);
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
z-index: 0;
}
> ul {
display: block;
position: relative;
z-index: 1;
padding: 12px 5vw;
> li {
> a, .noLink {
border-bottom: 1px solid rgba(255,255,255,0.2);
font-size: 17px;
min-height: auto;
min-height: none;
padding: 20px;
&[target="_blank"]{
&:after {
background: url("../images/home_new/icon_blank.svg") center center no-repeat;
background-size: 18px auto;
content: '';
display: inline-block;
margin-left: 6px;
height: 18px;
width: 18px;
}
}
}
.noLink {
&:after {
background: url("../images/home_new/icon_arrow_under.svg") center center no-repeat;
background-size: 10px auto;
content: '';
display: inline-block;
margin-left: 8px;
height: 6px;
width: 10px;
transition: 0.2s;
}
&.active {
&:after {
transform: rotate(-180deg);
}
}
}
.sub {
display: none;
list-style: none;
padding: 12px 20px ;
position: relative;
z-index: 1;
&:after {
box-shadow: inset 25px 35px 35px rgba(0,32,59	, 0.4), inset -25px -35px 35px rgba(0,32,59, 0.4);
background: rgba(255,255,255,0.05);
backdrop-filter: blur(12px);
}
li {
a {
font-size: 15px;
padding: 8px 12px;
transition: 0.2s;
&:hover {
background: rgba(255,255,255,0.9);
color: var(--color_main);
}
}
}
&.active {
display: block;
}
}


}
}
}
.cvBtn {
ul {
li.tel {
height: 60px;
text-align: center;
width: 140px;
a {
color: #FFF;
display: flex;
align-items: center;
align-content: center;
flex-wrap: wrap;
justify-content: center;
align-items: center;
font-size: 16px;
font-weight: bold;
letter-spacing: 0.04em;
line-height: 1.3;
height: 60px;
position: relative;
text-decoration: none;
width: 100%;
&:before {
background: url("../images/home_new/icon_tel.svg") center center no-repeat;
background-size: 13px auto;
content: '';
display: inline-block;
margin-right: 6px;
height: 13px;
width: 13px;
filter: brightness(0) invert(1);
}
span {
font-size: 8px;
font-weight: normal;
display: block;
width: 100%;
}
}
}
}
}
}
}
}


.fixedCvBtn {
background: rgba(0,0,0,0.05);
backdrop-filter: blur(6px);
position: fixed;
bottom: 0;
left: 0;
padding: 24px 40px;
width: 72%;
ul {
display: flex;
justify-content: space-between;
list-style: none;
margin: 0 auto;
max-width: 900px;
padding: 0;
width: 100%;
li {
border: 1px solid var(--color_main);
background: #FFFFFF;
background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(216, 216, 216, 1) 100%);
margin: 0;
transition: 0.2s;
width: 48.2%;
a {
display: flex;
justify-content: center;
align-items: center;
font-size: var(--fs-m);
font-weight: bold;
letter-spacing: 0.04em;
min-height: 70px;
position: relative;
text-decoration: none;
transition: 0.2s;
width: 100%;
&:before {
background: url("../images/home_new/icon_docs.svg") center center no-repeat;
background-size: 21px auto;
content: '';
display: inline-block;
margin-right: 12px;
height: 28px;
transition: 0.2s;
width: 21px;
}
&:hover {
background-color: var(--color_main);
color: var(--color_gray-light);

&:before {
filter: brightness(0) invert(1);
}

}
}
&.mail {
background: #E89700;
background: linear-gradient(90deg, rgba(232, 151, 0, 1) 0%, rgba(226, 94, 0, 1) 100%);
border: 1px solid rgba(226, 94, 0, 1);
a {
color: #FFF;
&:before {
background: url("../images/home_new/icon_mail.svg") center center no-repeat;
background-size: 28px auto;
content: '';
display: inline-block;
margin-right: 12px;
height: 19px;
width: 28px;
transition: 0.2s;
filter: brightness(0) invert(1);
}
&:hover {
background-color: var(--color_white);
color: rgba(226, 94, 0, 1);

&:before {
filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
transition: 0.2s;
}

}
}
}
}
}
}
@media screen and (max-width: 1366px){
	.fixedCvBtn {
	width: 68%;
	}
}
@media screen and (max-width: 1023px){
		.fixedCvBtn {
		width: 100%;
	}
}
@media screen and (max-width: 680px) {
.fixedCvBtn {
padding: 4vw 5vw;
ul {
padding: 0;
width: 100%;
li {
a {
font-size: 18px;
min-height: 60px;
padding: 0 22px;
&:before {
background-size: 18px auto;
margin-right: 8px;
height: 25px;
width: 18px;
}
span {
font-size: 12px;
}
}
}
li.mail {
a {
font-size:18px;
min-height: 60px;
&:before {
background-size: 22px auto;
margin-right: 8px;
height: 15px;
  width: 20px;
}
}
}
}

}
}
@media screen and (max-width: 480px) {
.fixedCvBtn {
ul {
li {
a {
font-size: 15px;
min-height: 54px;
padding: 0 20px 0 16px;
&:before {
background-size: 15px auto;
margin-right: 8px;
height: 21px;
width: 15px;
}
span {
font-size: 12px;
}
}
}
li.mail {
a {
font-size:15px;
min-height: 54px;
&:before {
background-size: 20px auto;
margin-right: 8px;
height: 15px;
width: 20px;
}
}
}
}

}
}


 ここまで
-------------------------------------------------------------- */
/* Home (2026.01)
-------------------------------------------------------------- */
.topMv {
  background: url(../images/mv_bg.jpg) repeat 50% 50%;
  display: flex;
  min-height: 500px;
  height: 27.5vw; }
  .topMv * {
    margin: 0;
    padding: 0; }
  .topMv .img {
    margin: 0;
    min-height: 500px;
    min-width: 464px;
    height: 27.5vw;
    width: 36%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0; }
    .topMv .img img {
      height: 100%;
      width: 100%;
      object-fit: cover; }
  .topMv .data {
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    padding: 0 0 0 7%;
    position: relative;
    z-index: 1;
    width: 100%; }
    .topMv .data h1 {
      color: var(--color_white);
      font-size: 2.67vw;
      font-family: var(--family-min);
      text-shadow: 1px 1px 2px var(--color_shadow-dark);
      letter-spacing: -0.05em;
      line-height: 1.3;
      margin-bottom: 2vw;
      width: 100%; }
    .topMv .data .meritList {
      display: flex;
      list-style: none;
      margin-bottom: 2vw;
      width: 100%; }
      .topMv .data .meritList li {
        background: var(--color_white);
        border-radius: 50px;
        font-size: 0.88vw;
        font-weight: 600;
        line-height: 1;
        margin-right: 0.55vw;
        padding: 0.7vw 1.15vw; }
        .topMv .data .meritList li br {
          display: none; }
    .topMv .data .achievements {
      color: var(--color_white);
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 1.5vw;
      width: 100%; }
      .topMv .data .achievements .acImg {
        width: 4.5vw; }
      .topMv .data .achievements .acData {
        width: calc(100% - 5.5vw); }
        .topMv .data .achievements .acData h2 {
          font-size: 1.1vw;
          font-weight: 500;
          letter-spacing: 0.04em;
          line-height: 1.3;
          margin-bottom: 0.1vw; }
          .topMv .data .achievements .acData h2 span {
            display: block;
            font-size: 1.35vw; }
            .topMv .data .achievements .acData h2 span strong {
              color: #FFEF3A;
              font-size: 1.77vw; }
          .topMv .data .achievements .acData h2 sup {
            font-size: 0.67vw; }
        .topMv .data .achievements .acData p {
          font-size: 12px;
          font-size: 0.67vw;
          letter-spacing: 0.04em; }
    .topMv .data .mvCtaBtn {
      padding: 0; }
      .topMv .data .mvCtaBtn ul {
        display: flex;
        justify-content: space-between;
        list-style: none;
        margin: 0;
        padding: 0;
        width: 100%; }
        .topMv .data .mvCtaBtn ul li {
          border: 1px solid #FFF;
          background: #FFFFFF;
          background: linear-gradient(90deg, white 0%, #d8d8d8 100%);
          margin: 0;
          min-width: 15vw; }
          .topMv .data .mvCtaBtn ul li a {
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 0.88vw;
            font-weight: bold;
            letter-spacing: 0.04em;
            min-height: 66px;
            min-height: 3.6vw;
            min-width: 290px;
            position: relative;
            text-decoration: none;
            transition: none;
            width: 100%; }
            .topMv .data .mvCtaBtn ul li a:before {
              background: url("../images/home_new/icon_docs.svg") center center no-repeat;
              background-size: cover;
              content: '';
              display: inline-block;
              margin-right: 0.5vw;
              height: 0.95vw;
              transition: none;
              width: 0.7vw; }
            .topMv .data .mvCtaBtn ul li a:hover {
              background-color: var(--color_main);
              color: var(--color_gray-light); }
              .topMv .data .mvCtaBtn ul li a:hover:before {
                filter: brightness(0) invert(1); }
          .topMv .data .mvCtaBtn ul li.mail {
            background: #E89700;
            background: linear-gradient(90deg, #e89700 0%, #e25e00 100%);
            border: 1px solid #e25e00;
            margin-right: 16px; }
            .topMv .data .mvCtaBtn ul li.mail a {
              color: #FFF; }
              .topMv .data .mvCtaBtn ul li.mail a:before {
                background: url("../images/home_new/icon_mail.svg") center center no-repeat;
                background-size: cover;
                content: '';
                display: inline-block;
                margin-right: 0.5vw;
                height: 0.65vw;
                width: 0.95vw;
                transition: 0.2s;
                filter: brightness(0) invert(1); }
              .topMv .data .mvCtaBtn ul li.mail a:hover {
                background-color: var(--color_white);
                color: #e25e00; }
                .topMv .data .mvCtaBtn ul li.mail a:hover:before {
                  filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
                  transition: 0.2s; }
    @media screen and (max-width: 1800px) {
      .topMv .data h1 {
        font-size: 48px;
        margin-bottom: 36px; }
      .topMv .data .meritList {
        margin-bottom: 36px; }
        .topMv .data .meritList li {
          font-size: 16px;
          margin-right: 10px;
          padding: 12px 20px; }
      .topMv .data .achievements {
        margin-bottom: 24px; }
        .topMv .data .achievements .acImg {
          width: 81px; }
        .topMv .data .achievements .acData {
          width: calc(100% - 100px); }
          .topMv .data .achievements .acData h2 {
            font-size: 20px;
            margin-bottom: 2px; }
            .topMv .data .achievements .acData h2 span {
              font-size: 24px; }
              .topMv .data .achievements .acData h2 span strong {
                font-size: 32px; }
            .topMv .data .achievements .acData h2 sup {
              font-size: 12px; }
          .topMv .data .achievements .acData p {
            font-size: 12px; }
      .topMv .data .mvCtaBtn ul li {
        min-width: 290px; }
        .topMv .data .mvCtaBtn ul li a {
          font-size: 16px;
          min-height: 66px;
          min-width: 290px; }
          .topMv .data .mvCtaBtn ul li a:before {
            background: url("../images/home_new/icon_docs.svg") center center no-repeat;
            background-size: 13px auto;
            margin-right: 10px;
            height: 17px;
            width: 13px; }
        .topMv .data .mvCtaBtn ul li.mail {
          margin-right: 16px; }
          .topMv .data .mvCtaBtn ul li.mail a:before {
            background: url("../images/home_new/icon_mail.svg") center center no-repeat;
            background-size: 18px auto;
            margin-right: 10px;
            height: 12px;
            width: 17px; } }

@media screen and (min-width: 768px) {
  .topMv .data .mvCtaBtn ul li a:hover {
    transition: 0.2s; } }
@media screen and (max-width: 768px) {
  .topMv {
    background: url(../images/mv_bg.jpg) repeat 50% 50%;
    display: flex;
    flex-direction: column;
    min-height: auto;
    min-height: none;
    height: auto; }
    .topMv .img {
      min-height: auto;
      min-height: none;
      min-width: 100%;
      height: 60vw;
      width: 100%;
      position: static; }
      .topMv .img img {
        object-position: center top; }
    .topMv .data {
      order: 1;
      padding: 7vw 7.5vw;
      width: 100%; }
      .topMv .data h1 {
        font-size: 6.5vw;
        letter-spacing: -0.1em;
        line-height: 1.55;
        margin-bottom: 4vw; }
      .topMv .data .meritList {
        display: flex;
        margin-bottom: 5vw;
        width: 100%; }
        .topMv .data .meritList li {
          background: none;
          border-radius: 0;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 3.2vw;
          letter-spacing: 0.02em;
          line-height: 1.3;
          margin: 0 1px 8px;
          position: relative;
          padding: 8px 8px 6px;
          width: calc(33% - 1px); }
          .topMv .data .meritList li:before {
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            z-index: -1;
            background-color: #FFF;
            transform: skewX(-15deg); }
          .topMv .data .meritList li br {
            display: inline; }
      .topMv .data .achievements {
        align-items: flex-start;
        margin-bottom: 6vw;
        width: 100%; }
        .topMv .data .achievements .acImg {
          width: 18%; }
        .topMv .data .achievements .acData {
          width: 77%; }
          .topMv .data .achievements .acData h2 {
            font-size: 4.5vw;
            letter-spacing: -0.04em;
            margin-bottom: 1vw; }
            .topMv .data .achievements .acData h2 span {
              font-size: 4.5vw; }
              .topMv .data .achievements .acData h2 span strong {
                font-size: 7vw;
                margin: 0 2px; }
            .topMv .data .achievements .acData h2 sup {
              font-size: 2.5vw; }
          .topMv .data .achievements .acData p {
            font-size: 2.3vw;
            letter-spacing: -0.04em;
            line-height: 1.4; }
      .topMv .data .mvCtaBtn {
        padding: 0;
        width: 100%; }
        .topMv .data .mvCtaBtn ul {
          display: block;
          justify-content: space-between;
          list-style: none;
          margin: 0;
          max-width: 100%;
          padding: 0;
          width: 100%; }
          .topMv .data .mvCtaBtn ul li {
            border: 1px solid #FFF;
            background: #FFFFFF;
            background: linear-gradient(90deg, white 0%, #d8d8d8 100%);
            margin: 0 0 12px;
            transition: 0.2s;
            width: 100%; }
            .topMv .data .mvCtaBtn ul li a {
              display: flex;
              justify-content: center;
              align-items: center;
              font-size: var(--fs-m);
              font-weight: bold;
              letter-spacing: 0.04em;
              min-height: 60px;
              position: relative;
              text-decoration: none;
              transition: 0.2s;
              width: 100%; }
              .topMv .data .mvCtaBtn ul li a:before {
                background: url("../images/home_new/icon_docs.svg") center center no-repeat;
                background-size: 21px auto;
                content: '';
                display: inline-block;
                margin-right: 12px;
                height: 28px;
                transition: 0.2s;
                width: 21px; }
              .topMv .data .mvCtaBtn ul li a:hover {
                background-color: var(--color_main);
                color: var(--color_gray-light); }
                .topMv .data .mvCtaBtn ul li a:hover:before {
                  filter: brightness(0) invert(1); }
            .topMv .data .mvCtaBtn ul li.mail {
              background: #E89700;
              background: linear-gradient(90deg, #e89700 0%, #e25e00 100%);
              border: 1px solid #e25e00; }
              .topMv .data .mvCtaBtn ul li.mail a {
                color: #FFF; }
                .topMv .data .mvCtaBtn ul li.mail a:before {
                  background: url("../images/home_new/icon_mail.svg") center center no-repeat;
                  background-size: 28px auto;
                  content: '';
                  display: inline-block;
                  margin-right: 12px;
                  height: 19px;
                  width: 28px;
                  transition: 0.2s;
                  filter: brightness(0) invert(1); }
                .topMv .data .mvCtaBtn ul li.mail a:hover {
                  background-color: var(--color_white);
                  color: #e25e00; }
                  .topMv .data .mvCtaBtn ul li.mail a:hover:before {
                    filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
                    transition: 0.2s; } }
.topLogos {
  background: #FFF;
  box-shadow: 0px 12px 12px -5px rgba(0, 0, 0, 0.05);
  padding: 12px 0;
  position: relative; }
  .topLogos:before {
    background: #FFF;
    background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0) 100%);
    content: '';
    display: block;
    height: 100%;
    width: 15%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2; }
  .topLogos:after {
    background: #FFF;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, white 100%);
    content: '';
    display: block;
    height: 100%;
    width: 15%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2; }
  .topLogos .logo-slider {
    width: 100%;
    overflow: hidden; }
  .topLogos .logo-track {
    display: flex;
    width: max-content;
    will-change: transform;
    padding: 12px 0; }
  .topLogos .logo-track.track1 {
    animation: logoSlide1 70s linear infinite; }
  .topLogos .logo-track.track2 {
    animation: logoSlide2 70s linear infinite; }
  .topLogos .logo-track img {
    height: 39px;
    /* ロゴサイズ調整 */
    object-fit: contain; }
@keyframes logoSlide1 {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); } }
@keyframes logoSlide2 {
  0% {
    transform: translateX(-50%); }
  100% {
    transform: translateX(0); } }
@media screen and (max-width: 768px) {
  .topLogos {
    padding: 8px 0; }
    .topLogos .logo-track {
      padding: 8px 0; }
    .topLogos .logo-track.track1 {
      animation: logoSlide1 70s linear infinite; }
    .topLogos .logo-track.track2 {
      animation: logoSlide2 70s linear infinite; }
    .topLogos .logo-track img {
      height: 30px; } }
.topMerit {
  background: #F6F6F6;
  padding: 72px 40px; }
  .topMerit .tmHead {
    color: var(--color_main);
    font-size: var(--fs-l);
    font-family: var(--family-min);
    font-weight: bold;
    letter-spacing: -0.04em;
    line-height: 1.5;
    margin: 0;
    text-align: center; }
    .topMerit .tmHead.iconTriangle {
      padding-top: 52px;
      position: relative; }
      .topMerit .tmHead.iconTriangle:before {
        content: '';
        display: block;
        background-color: var(--color_point3);
        clip-path: polygon(0 0, 0% 100%, 100% 50%);
        transform: rotate(90deg);
        height: 40px;
        width: 26px;
        position: absolute;
        top: 0;
        left: calc(50% - 8px); }
  .topMerit .tmProblemList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    list-style: none;
    max-width: 900px;
    margin: 40px auto 24px;
    padding: 0; }
    .topMerit .tmProblemList li {
      background: url(../images/home_new/icon_fukidashi.svg) left 32px center no-repeat #FFF;
      border: 1px solid #D6D6D6;
      color: var(--color_primary);
      font-weight: 600;
      line-height: 1.7;
      margin: 0 0 20px;
      padding: 32px 32px 32px 86px;
      width: calc(50% - 10px); }
  .topMerit .tCenter {
    margin: 16px 0 40px; }
  .topMerit .tmSupportList {
    display: flex;
    justify-content: space-between;
    list-style: none;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0; }
    .topMerit .tmSupportList li {
      background: #FFF;
      border: 1px solid #D6D6D6;
      color: var(--color_primary);
      font-weight: 600;
      line-height: 1.7;
      margin: 0;
      padding: 32px 12px 40px;
      text-align: center;
      width: calc(25% - 16px); }
      .topMerit .tmSupportList li .img {
        background: #F6F6F6;
        border-radius: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 16px;
        height: 90px;
        width: 90px; }
        .topMerit .tmSupportList li .img img {
          width: 40px; }
      .topMerit .tmSupportList li h4 {
        font-size: var(--fs-s);
        letter-spacing: -0.04em;
        line-height: 1.6;
        margin: 0 0 4px; }
      .topMerit .tmSupportList li p {
        font-size: var(--fs-xxs);
        font-weight: 500;
        margin: 0; }

@media screen and (max-width: 1366px) {
  .topMerit .tmSupportList {
    flex-wrap: wrap; }
    .topMerit .tmSupportList li {
      margin-bottom: 24px;
      width: calc(50% - 12px); } }
@media screen and (max-width: 768px) {
  .topMerit {
    padding: 48px 5vw; } }
@media screen and (max-width: 680px) {
  .topMerit {
    padding: 44px 5vw 32px; }
    .topMerit .tmHead {
      font-size: 24px;
      line-height: 1.5; }
      .topMerit .tmHead.iconTriangle {
        padding-top: 40px; }
        .topMerit .tmHead.iconTriangle:before {
          height: 30px;
          width: 20px;
          left: calc(50% - 10px); }
    .topMerit .tmProblemList {
      display: block;
      margin: 24px auto 28px; }
      .topMerit .tmProblemList li {
        background: url(../images/home_new/icon_fukidashi.svg) left 14px center no-repeat #FFF;
        background-size: 32px auto;
        font-size: 14px;
        letter-spacing: -0.06em;
        line-height: 1.65;
        margin: 0 0 8px;
        padding: 16px 0 16px 56px;
        width: 100%; }
        .topMerit .tmProblemList li br.hideTb {
          display: inline !important; }
    .topMerit .tCenter {
      letter-spacing: -0.04em;
      margin: 16px 0 28px; }
    .topMerit .tmSupportList {
      margin: 0; }
      .topMerit .tmSupportList li {
        line-height: 1.65;
        margin: 0 0 12px;
        padding: 16px 8px;
        width: calc(50% - 6px); }
        .topMerit .tmSupportList li .img {
          margin: 0 auto 8px;
          height: 62px;
          width: 62px; }
          .topMerit .tmSupportList li .img img {
            width: 30px; }
        .topMerit .tmSupportList li h4 {
          font-size: 16px;
          letter-spacing: -0.04em;
          line-height: 1.4;
          margin: 0 0 10px; }
        .topMerit .tmSupportList li p {
          font-size: 10px;
          letter-spacing: -0.1em; } }
.topHd {
  color: var(--color_main);
  font-size: var(--fs-xl);
  font-family: var(--family-min);
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: -0.02em;
  margin: 0 0 40px;
  text-align: center; }
  .topHd .en {
    color: var(--color_point3);
    display: block;
    font-family: var(--family-default);
    font-size: 20px;
    letter-spacing: 0.15em;
    margin-bottom: 10px; }

@media screen and (max-width: 680px) {
  .topHd {
    font-size: 24px;
    line-height: 1.5;
    margin: 0 0 28px; }
    .topHd .en {
      font-size: 14px;
      margin-bottom: 6px; } }
.topReason {
  background: #FFF;
  padding: 72px 40px 60px; }
  .topReason .tmSupportList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
    max-width: 900px;
    margin: 0 auto;
    padding: 0; }
    .topReason .tmSupportList li {
      background: #FFF;
      border: 1px solid #D6D6D6;
      box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
      color: var(--color_primary);
      font-weight: 600;
      line-height: 1.7;
      margin: 0 0 24px;
      padding: 32px 40px 40px;
      width: calc(50% - 12px); }
      .topReason .tmSupportList li .img {
        background: #F6F6F6;
        border-radius: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 16px;
        height: 90px;
        width: 90px; }
        .topReason .tmSupportList li .img img {
          width: 48px; }
      .topReason .tmSupportList li:nth-child(2) .img img {
        width: 44px; }
      .topReason .tmSupportList li:nth-child(4) .img img {
        width: 40px; }
      .topReason .tmSupportList li h3 {
        font-size: var(--fs-s);
        letter-spacing: 0.02em;
        line-height: 1.6;
        margin: 0 0 12px;
        text-align: center; }
      .topReason .tmSupportList li .desc {
        font-size: var(--fs-xxs);
        font-weight: 500;
        letter-spacing: -0.02em;
        margin: 0; }
      .topReason .tmSupportList li .indentP {
        font-size: 11px;
        font-weight: normal;
        margin: 4px 0 0;
        text-indent: -1em;
        padding-left: 1em; }

@media screen and (max-width: 680px) {
  .topReason {
    padding: 44px 5vw 32px; }
    .topReason .tmSupportList {
      display: block; }
      .topReason .tmSupportList li {
        margin: 0 0 12px;
        padding: 5vw 5vw;
        width: 100%; }
        .topReason .tmSupportList li .spFlex {
          display: flex;
          align-items: center;
          margin-bottom: 14px; }
        .topReason .tmSupportList li .img {
          margin: 0 18px 0 0;
          height: 72px;
          width: 72px; }
          .topReason .tmSupportList li .img img {
            width: 32px; }
        .topReason .tmSupportList li:nth-child(2) .img img {
          width: 33px; }
        .topReason .tmSupportList li:nth-child(4) .img img {
          width: 30px; }
        .topReason .tmSupportList li h3 {
          font-size: 18px;
          letter-spacing: -0.02em;
          line-height: 1.6;
          margin: 0;
          padding-top: 4px;
          text-align: left; }
        .topReason .tmSupportList li .desc {
          font-size: 13px;
          font-weight: 500;
          letter-spacing: -0.02em;
          margin: 0 2vw; }
        .topReason .tmSupportList li .indentP {
          display: block;
          font-size: 9px;
          margin: 8px 2vw 0; } }
.topConsulting {
  background: #F6F6F6;
  padding: 100px 40px; }
  .topConsulting .topConsultingList {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    position: relative;
    padding-top: 8px;
    margin: 0 auto;
    max-width: 1400px; }
    .topConsulting .topConsultingList:after {
      content: "";
      display: block;
      width: 31.66%;
      max-width: 443px; }
    .topConsulting .topConsultingList > article {
      display: flex;
      align-items: flex-end;
      align-content: flex-end;
      margin-bottom: 56px;
      row-gap: 0;
      width: 31.66%; }
      .topConsulting .topConsultingList > article a {
        background: #FFF;
        border: 1px solid #D6D6D6;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
        overflow: hidden;
        text-decoration: none;
        height: 100%;
        position: relative;
        transition: 0.4s; }
        .topConsulting .topConsultingList > article a p {
          margin: 0; }
        .topConsulting .topConsultingList > article a .thumb {
          overflow: hidden; }
          .topConsulting .topConsultingList > article a .thumb img {
            display: block;
            transition: 0.5s;
            width: 100%; }
        .topConsulting .topConsultingList > article a .data {
          display: flex;
          align-items: center;
          padding: 5% 5%;
          width: 100%; }
          .topConsulting .topConsultingList > article a .data h3 {
            font-size: 16px;
            font-weight: 600;
            letter-spacing: 0.02em;
            transition: 0.2s; }
        .topConsulting .topConsultingList > article a:hover {
          box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1); }
          .topConsulting .topConsultingList > article a:hover .thumb img {
            opacity: 0.7; }
          .topConsulting .topConsultingList > article a:hover .data h2 {
            color: #00427E;
            text-decoration: underline; }
  @media screen and (max-width: 1480px) {
    .topConsulting .topConsultingList:after {
      display: none; }
    .topConsulting .topConsultingList > article {
      margin-bottom: 28px;
      width: 48%; } }
  @media screen and (max-width: 640px) {
    .topConsulting .topConsultingList {
      padding-top: 2em; }
      .topConsulting .topConsultingList > article {
        margin-bottom: 32px;
        width: 100%; }
        .topConsulting .topConsultingList > article a {
          /*
          border-radius: 4px;
          */ }
          .topConsulting .topConsultingList > article a .data {
            padding: 6% 6% 8%; }
            .topConsulting .topConsultingList > article a .data h2 {
              font-size: 15px; } }

@media screen and (max-width: 680px) {
  .topConsulting {
    padding: 44px 5vw 52px; }
    .topConsulting .topConsultingList {
      padding: 0 0 16px; }
      .topConsulting .topConsultingList > article {
        margin-bottom: 20px; }
        .topConsulting .topConsultingList > article a .data {
          padding: 16px 5vw; }
          .topConsulting .topConsultingList > article a .data h3 {
            font-size: 14px; } }
.topLinkBtn {
  text-align: center; }
  .topLinkBtn p {
    background: var(--color_main-grad_start);
    background: -webkit-linear-gradient(90deg, var(--color_main-grad_start) 0%, var(--color_main-grad_end) 100%);
    background: linear-gradient(90deg, var(--color_main-grad_start) 0%, var(--color_main-grad_end) 100%);
    border: 1px solid var(--color_main);
    display: inline-block;
    margin: 0; }
    .topLinkBtn p a {
      color: #FFF;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-size: 16px;
      font-weight: bold;
      letter-spacing: 0.04em;
      min-height: 66px;
      min-width: 290px;
      padding: 0 2em 0 1em;
      position: relative;
      text-decoration: none;
      transition: 0.2s; }
      .topLinkBtn p a:before {
        position: absolute;
        right: 2em;
        top: 50%;
        width: 8px;
        height: 8px;
        content: '';
        border-top: 2px solid var(--color_white);
        border-right: 2px solid var(--color_white);
        transition: 0.2s all ease 0.1s;
        transform: rotate(45deg);
        margin: -4px 0 0; }
      .topLinkBtn p a:hover {
        background-color: var(--color_white);
        color: var(--color_main); }
        .topLinkBtn p a:hover:before {
          right: 1.5em;
          border-color: var(--color_main); }

@media screen and (max-width: 680px) {
  .topLinkBtn p a {
    font-size: 15px;
    min-height: 56px;
    width: 100%; }
    .topLinkBtn p a:before {
      width: 7px;
      height: 7px; } }
.topCta {
  background: url(../images/mv_bg.jpg) repeat 50% 50%;
  padding: 80px 40px; }
  .topCta .topCtaInr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    max-width: 1080px;
    padding: 0 5px; }
    .topCta .topCtaInr .tcL {
      color: #FFF;
      width: 45%; }
      .topCta .topCtaInr .tcL h2 {
        font-size: var(--fs-m);
        font-weight: bold;
        line-height: 1.5;
        margin-bottom: 16px; }
      .topCta .topCtaInr .tcL p {
        margin: 0; }
    .topCta .topCtaInr .tcR {
      width: 53%; }
      .topCta .topCtaInr .tcR ul {
        display: flex;
        justify-content: space-between;
        list-style: none;
        margin: 0;
        padding: 0;
        width: 100%; }
        .topCta .topCtaInr .tcR ul li {
          border: 1px solid #FFF;
          background: #FFFFFF;
          background: linear-gradient(90deg, white 0%, #d8d8d8 100%);
          margin: 0;
          width: 49%; }
          .topCta .topCtaInr .tcR ul li a {
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 16px;
            font-weight: bold;
            letter-spacing: 0.04em;
            min-height: 66px;
            position: relative;
            text-decoration: none;
            transition: 0.2s;
            width: 100%; }
            .topCta .topCtaInr .tcR ul li a:before {
              background: url("../images/home_new/icon_docs.svg") center center no-repeat;
              background-size: 13px auto;
              content: '';
              display: inline-block;
              margin-right: 10px;
              height: 17px;
              transition: 0.2s;
              width: 13px; }
            .topCta .topCtaInr .tcR ul li a:hover {
              background-color: var(--color_main);
              color: var(--color_gray-light); }
              .topCta .topCtaInr .tcR ul li a:hover:before {
                filter: brightness(0) invert(1); }
          .topCta .topCtaInr .tcR ul li.mail {
            background: #E89700;
            background: linear-gradient(90deg, #e89700 0%, #e25e00 100%);
            border: 1px solid #e25e00;
            margin-right: 16px; }
            .topCta .topCtaInr .tcR ul li.mail a {
              color: #FFF; }
              .topCta .topCtaInr .tcR ul li.mail a:before {
                background: url("../images/home_new/icon_mail.svg") center center no-repeat;
                background-size: 18px auto;
                content: '';
                display: inline-block;
                margin-right: 10px;
                height: 12px;
                width: 17px;
                transition: 0.2s;
                filter: brightness(0) invert(1); }
              .topCta .topCtaInr .tcR ul li.mail a:hover {
                background-color: var(--color_white);
                color: #e25e00; }
                .topCta .topCtaInr .tcR ul li.mail a:hover:before {
                  filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
                  transition: 0.2s; }

@media screen and (min-width: 1024px) and (max-width: 1366px), screen and (max-width: 768px) {
  .topCta {
    padding: 48px 5vw 36px; }
    .topCta .topCtaInr {
      display: block;
      padding: 0; }
      .topCta .topCtaInr .tcL {
        color: #FFF;
        text-align: center;
        width: 100%; }
        .topCta .topCtaInr .tcL h2 {
          font-size: var(--fs-m);
          font-weight: 600;
          line-height: 1.6;
          margin-bottom: 1em; }
        .topCta .topCtaInr .tcL p {
          margin: 0 0 28px; }
      .topCta .topCtaInr .tcR {
        width: 100%; } }
@media screen and (max-width: 680px) {
  .topCta {
    padding: 48px 5vw 36px; }
    .topCta .topCtaInr {
      display: block;
      padding: 0; }
      .topCta .topCtaInr .tcL {
        color: #FFF;
        text-align: center;
        width: 100%; }
        .topCta .topCtaInr .tcL h2 {
          font-size: var(--fs-m);
          font-weight: 600;
          line-height: 1.6;
          margin-bottom: 1em; }
        .topCta .topCtaInr .tcL p {
          margin: 0 0 28px; }
      .topCta .topCtaInr .tcR {
        width: 100%; }
        .topCta .topCtaInr .tcR ul {
          display: block;
          justify-content: space-between;
          list-style: none;
          margin: 0 auto;
          max-width: 420px;
          padding: 0;
          width: 100%; }
          .topCta .topCtaInr .tcR ul li {
            border: 1px solid #FFF;
            background: #FFFFFF;
            background: linear-gradient(90deg, white 0%, #d8d8d8 100%);
            margin: 0;
            transition: 0.2s;
            width: 100%; }
            .topCta .topCtaInr .tcR ul li a {
              display: flex;
              justify-content: center;
              align-items: center;
              font-size: var(--fs-m);
              font-weight: bold;
              letter-spacing: 0.04em;
              min-height: 60px;
              position: relative;
              text-decoration: none;
              transition: 0.2s;
              width: 100%; }
              .topCta .topCtaInr .tcR ul li a:before {
                background: url("../images/home_new/icon_docs.svg") center center no-repeat;
                background-size: 21px auto;
                content: '';
                display: inline-block;
                margin-right: 12px;
                height: 28px;
                transition: 0.2s;
                width: 21px; }
              .topCta .topCtaInr .tcR ul li a:hover {
                background-color: var(--color_main);
                color: var(--color_gray-light); }
                .topCta .topCtaInr .tcR ul li a:hover:before {
                  filter: brightness(0) invert(1); }
            .topCta .topCtaInr .tcR ul li.mail {
              background: #E89700;
              background: linear-gradient(90deg, #e89700 0%, #e25e00 100%);
              border: 1px solid #e25e00;
              margin: 0 0 12px; }
              .topCta .topCtaInr .tcR ul li.mail a {
                color: #FFF; }
                .topCta .topCtaInr .tcR ul li.mail a:before {
                  background: url("../images/home_new/icon_mail.svg") center center no-repeat;
                  background-size: 28px auto;
                  content: '';
                  display: inline-block;
                  margin-right: 12px;
                  height: 19px;
                  width: 28px;
                  transition: 0.2s;
                  filter: brightness(0) invert(1); }
                .topCta .topCtaInr .tcR ul li.mail a:hover {
                  background-color: var(--color_white);
                  color: #e25e00; }
                  .topCta .topCtaInr .tcR ul li.mail a:hover:before {
                    filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
                    transition: 0.2s; } }
.topVoice {
  padding: 100px 0; }
  .topVoice .topVoiceSlider {
    background: #FFF;
    padding: 12px 0 48px;
    position: relative; }
    .topVoice .topVoiceSlider:before {
      background: #FFF;
      background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0) 100%);
      content: '';
      display: block;
      height: 100%;
      width: 10%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2; }
    .topVoice .topVoiceSlider:after {
      background: #FFF;
      background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, white 100%);
      content: '';
      display: block;
      height: 100%;
      width: 10%;
      position: absolute;
      top: 0;
      right: 0;
      z-index: 2; }
    .topVoice .topVoiceSlider .logo-slider {
      width: 100%;
      overflow: hidden; }
    .topVoice .topVoiceSlider .logo-track {
      display: flex;
      width: max-content;
      will-change: transform;
      animation: logoSlide1 52s linear infinite; }
    .topVoice .topVoiceSlider .logo-track img {
      height: 38px;
      margin-right: 32px;
      object-fit: contain; }
@keyframes logoSlide1 {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); } }
@media screen and (max-width: 680px) {
  .topVoice {
    padding: 48px 0; }
    .topVoice .topVoiceSlider {
      padding: 0; }
      .topVoice .topVoiceSlider .logo-track {
        animation: logoSlide1 44s linear infinite; }
      .topVoice .topVoiceSlider .logo-track img {
        height: 30px; } }
.topVoiceArticleList {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  position: relative;
  margin: 0 auto;
  max-width: 1480px;
  padding: 0 40px; }
  .topVoiceArticleList:after {
    content: "";
    display: block;
    width: 31.66%;
    max-width: 380px; }
  .topVoiceArticleList > article {
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    margin-bottom: 56px;
    width: 31.66%; }
    .topVoiceArticleList > article a {
      border: 1px solid #D6D6D6;
      box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
      /*
      border: 1px solid #DEDEDE;
      border-radius: 8px;
      */
      display: flex;
      align-items: flex-start;
      align-content: flex-start;
      flex-wrap: wrap;
      overflow: hidden;
      text-decoration: none;
      height: 100%;
      position: relative;
      transition: 0.4s; }
      .topVoiceArticleList > article a p {
        margin: 0; }
      .topVoiceArticleList > article a .thumb {
        overflow: hidden; }
        .topVoiceArticleList > article a .thumb img {
          display: block;
          transition: 0.8s;
          width: 100%;
          aspect-ratio: 16 / 9;
          object-fit: cover; }
      .topVoiceArticleList > article a .data {
        padding: 7.5% 7.5% 76px;
        /* 右向き */ }
        .topVoiceArticleList > article a .data h3 {
          font-size: 14px;
          font-weight: normal;
          letter-spacing: 0.02em;
          margin-bottom: 16px;
          transition: 0.2s; }
        .topVoiceArticleList > article a .data h4 {
          font-size: 16px;
          font-weight: 600;
          letter-spacing: 0.02em;
          margin-bottom: 20px;
          transition: 0.2s; }
        .topVoiceArticleList > article a .data .category {
          font-feature-settings: "palt";
          list-style: none;
          margin: 0;
          padding: 0; }
          .topVoiceArticleList > article a .data .category li {
            background: #F2F7FC;
            border-radius: 4px;
            color: #00427E;
            display: inline-block;
            font-size: 14px;
            font-weight: bold;
            letter-spacing: 0;
            margin: 0 6px 4px 0;
            padding: 2px 12px; }
            .topVoiceArticleList > article a .data .category li.type2 {
              background: #F4F4F4;
              color: #808080;
              font-weight: 500; }
        .topVoiceArticleList > article a .data .toDetail {
          color: #00427E;
          font-size: 14px;
          font-weight: bold;
          position: absolute;
          bottom: 24px;
          right: 24px; }
        .topVoiceArticleList > article a .data [class^="arrow"] {
          position: relative;
          display: inline-block;
          width: 18px;
          height: 18px;
          background: #00427E;
          border: 1px solid #00427E;
          border-radius: 30px;
          cursor: pointer;
          transition: .5s;
          vertical-align: -3px;
          margin-left: 6px;
          transition: 0.2s; }
        .topVoiceArticleList > article a .data [class^="arrow"]::before {
          position: absolute;
          display: block;
          width: 6px;
          height: 6px;
          content: "";
          border-top: 2px solid #ffffff;
          border-right: 2px solid #ffffff;
          transition: .5s; }
        .topVoiceArticleList > article a .data .arrow-right::before {
          top: 5px;
          /* widthの1/2 ぐらい*/
          right: 6px;
          /* topの1.5 */
          transform: rotate(45deg); }
      .topVoiceArticleList > article a:hover {
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1); }
        .topVoiceArticleList > article a:hover .thumb {
          overflow: hidden; }
          .topVoiceArticleList > article a:hover .thumb img {
            transform: scale(1.06); }
        .topVoiceArticleList > article a:hover .data h3 {
          color: #00427E; }
        .topVoiceArticleList > article a:hover .data h4 {
          color: #00427E;
          text-decoration: underline; }
        .topVoiceArticleList > article a:hover .data .toDetail {
          text-decoration: underline; }
        .topVoiceArticleList > article a:hover .data [class^="arrow"] {
          transform: translate(3px, 0); }

@media screen and (max-width: 1480px) {
  .topVoiceArticleList:after {
    display: none; }
  .topVoiceArticleList > article {
    margin-bottom: 28px;
    width: 48%; } }
@media screen and (max-width: 1024px) {
  .topVoiceArticleList {
    padding-top: 3em; } }
@media screen and (max-width: 680px) {
  .topVoiceArticleList {
    padding: 2em 5vw 1em; }
    .topVoiceArticleList > article {
      margin-bottom: 20px;
      width: 100%; }
      .topVoiceArticleList > article a .data {
        padding: 6% 6% 48px; }
        .topVoiceArticleList > article a .data h3 {
          font-size: 13px;
          margin-bottom: 6px; }
        .topVoiceArticleList > article a .data h4 {
          font-size: 15px;
          letter-spacing: 0;
          line-height: 1.45;
          margin-bottom: 10px; }
          .topVoiceArticleList > article a .data h4 br {
            display: none; }
        .topVoiceArticleList > article a .data .category {
          margin: 2px 0 0;
          padding: 0; }
          .topVoiceArticleList > article a .data .category li {
            font-size: 10px;
            margin: 0 4px 2px 0;
            padding: 2px 6px; }
        .topVoiceArticleList > article a .data .toDetail {
          font-size: 12px;
          bottom: 16px;
          right: 16px; }
        .topVoiceArticleList > article a .data [class^="arrow"] {
          width: 14px;
          height: 14px;
          vertical-align: -3px;
          margin-left: 6px; }
        .topVoiceArticleList > article a .data [class^="arrow"]::before {
          width: 5px;
          height: 5px; }
        .topVoiceArticleList > article a .data .arrow-right::before {
          top: 3px;
          /* widthの1/2 ぐらい*/
          right: 4px;
          /* topの1.5 */ } }
.topMember {
  background: #F6F6F6;
  padding: 100px 40px; }
  .topMember .memberList {
    padding: 24px 0 48px; }
    .topMember .memberList > ul {
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between;
      position: relative;
      margin: 0 auto;
      max-width: 1400px;
      list-style: none;
      padding: 0; }
      .topMember .memberList > ul > li {
        background: #FFF;
        width: 31.66%; }
        .topMember .memberList > ul > li a {
          background: #FFF;
          border: 1px solid #D6D6D6;
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
          display: flex;
          align-items: flex-start;
          flex-wrap: wrap;
          overflow: hidden;
          text-decoration: none;
          height: 100%;
          padding: 20px 6% 70px;
          text-align: center;
          position: relative;
          transition: 0.4s;
          width: 100%;
          /* 右向き */ }
          .topMember .memberList > ul > li a .img {
            display: block;
            margin-bottom: 20px;
            text-align: center;
            width: 100%; }
            .topMember .memberList > ul > li a .img img {
              max-width: 217px;
              width: 65%; }
          .topMember .memberList > ul > li a .data {
            width: 100%; }
          .topMember .memberList > ul > li a .name {
            font-size: var(--fs-m);
            font-weight: bold;
            line-height: 1.4;
            margin: 0 0 20px;
            padding: 0;
            text-align: center;
            width: 100%;
            transition: 0.2s; }
            .topMember .memberList > ul > li a .name span {
              background: var(--color_main-grad_start);
              border-radius: 50px;
              color: #FFF;
              display: block;
              font-size: 14px;
              font-weight: bold;
              line-height: 1.4;
              margin-top: 8px;
              padding: 8px 12px 7px;
              transition: 0.2s; }
          .topMember .memberList > ul > li a dl {
            margin: 0;
            padding: 0;
            text-align: left;
            width: 100%; }
            .topMember .memberList > ul > li a dl * {
              margin: 0;
              padding: 0; }
            .topMember .memberList > ul > li a dl dt {
              color: var(--color_gray-dark);
              font-size: 14px;
              font-weight: normal;
              padding-bottom: 2px; }
            .topMember .memberList > ul > li a dl dd .incharge {
              display: flex;
              flex-wrap: wrap;
              list-style: none;
              padding: 0; }
              .topMember .memberList > ul > li a dl dd .incharge li {
                color: var(--color_point3);
                font-size: 14px;
                letter-spacing: 0.06em;
                margin-right: 8px; }
                .topMember .memberList > ul > li a dl dd .incharge li:before {
                  background: url("../images/home_new/icon_tag.svg") center center no-repeat;
                  background-size: cover auto;
                  content: '';
                  display: inline-block;
                  margin-right: 2px;
                  height: 16px;
                  width: 16px;
                  vertical-align: -3px; }
          .topMember .memberList > ul > li a .toDetail {
            color: #00427E;
            font-size: 14px;
            font-weight: bold;
            margin: 0;
            padding: 0;
            position: absolute;
            bottom: 24px;
            right: 24px; }
          .topMember .memberList > ul > li a [class^="arrow"] {
            position: relative;
            display: inline-block;
            width: 18px;
            height: 18px;
            background: #00427E;
            border: 1px solid #00427E;
            border-radius: 30px;
            cursor: pointer;
            transition: .5s;
            vertical-align: -3px;
            margin-left: 6px;
            transition: 0.2s; }
          .topMember .memberList > ul > li a [class^="arrow"]::before {
            position: absolute;
            display: block;
            width: 6px;
            height: 6px;
            content: "";
            border-top: 2px solid #ffffff;
            border-right: 2px solid #ffffff;
            transition: .5s; }
          .topMember .memberList > ul > li a .arrow-right::before {
            top: 5px;
            /* widthの1/2 ぐらい*/
            right: 6px;
            /* topの1.5 */
            transform: rotate(45deg); }
          .topMember .memberList > ul > li a:hover {
            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1); }
            .topMember .memberList > ul > li a:hover .name {
              color: var(--color_point3); }
              .topMember .memberList > ul > li a:hover .name span {
                background: var(--color_point3); }
            .topMember .memberList > ul > li a:hover .toDetail {
              color: var(--color_point3); }
            .topMember .memberList > ul > li a:hover [class^="arrow"] {
              background: var(--color_point3);
              border-color: var(--color_point3);
              transform: translate(3px, 0); }

@media screen and (max-width: 680px) {
  .topMember {
    padding: 48px 0; }
    .topMember .memberList {
      padding: 16px 2.5vw 32px; }
      .topMember .memberList > ul {
        display: block;
        margin: 0; }
        .topMember .memberList > ul > li {
          width: 100%; }
          .topMember .memberList > ul > li a {
            background: #FFF;
            border: 1px solid #D6D6D6;
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: nowrap;
            overflow: hidden;
            text-decoration: none;
            padding: 20px 2.5vw 52px;
            width: 100%; }
            .topMember .memberList > ul > li a .img {
              margin-bottom: 0;
              text-align: left;
              width: 30%; }
              .topMember .memberList > ul > li a .img img {
                max-width: auto;
                max-width: none;
                width: 100%; }
            .topMember .memberList > ul > li a .data {
              width: 65%; }
            .topMember .memberList > ul > li a .name {
              font-size: 20px;
              line-height: 1.4;
              margin: 0 0 12px;
              text-align: left;
              width: 100%; }
              .topMember .memberList > ul > li a .name span {
                display: block;
                font-size: 11px;
                font-weight: 500;
                line-height: 1.4;
                letter-spacing: -0.08em;
                margin-top: 6px;
                padding: 6px 14px 5px;
                text-align: center;
                width: fit-content; }
            .topMember .memberList > ul > li a dl dt {
              font-size: 12px; }
            .topMember .memberList > ul > li a dl dd .incharge li {
              color: var(--color_point3);
              font-size: 12px;
              letter-spacing: 0.06em;
              margin-right: 8px; }
              .topMember .memberList > ul > li a dl dd .incharge li:before {
                background: url("../images/home_new/icon_tag.svg") center center no-repeat;
                background-size: cover auto;
                content: '';
                display: inline-block;
                margin-right: 4px;
                height: 12px;
                width: 12px;
                vertical-align: -2px; }
            .topMember .memberList > ul > li a .toDetail {
              font-size: 12px;
              bottom: 16px;
              right: 16px; }
            .topMember .memberList > ul > li a [class^="arrow"] {
              width: 14px;
              height: 14px;
              vertical-align: -3px;
              margin-left: 6px; }
            .topMember .memberList > ul > li a [class^="arrow"]::before {
              width: 5px;
              height: 5px; }
            .topMember .memberList > ul > li a .arrow-right::before {
              top: 3px;
              /* widthの1/2 ぐらい*/
              right: 4px;
              /* topの1.5 */ } }
.topSchedule {
  background: var(--color_main-grad_start);
  background: -webkit-linear-gradient(90deg, var(--color_main-grad_start) 0%, var(--color_main-grad_end) 100%);
  background: linear-gradient(90deg, var(--color_main-grad_start) 0%, var(--color_main-grad_end) 100%);
  padding: 110px 40px; }
  .topSchedule .topScheduleInr {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1100px; }
    .topSchedule .topScheduleInr .tsL {
      color: #FFF;
      padding-top: 80px;
      width: 45%; }
      .topSchedule .topScheduleInr .tsL .topHd {
        color: #FFF;
        letter-spacing: 0.04em;
        text-align: left; }
        .topSchedule .topScheduleInr .tsL .topHd .en {
          color: #FFF;
          display: block;
          font-family: var(--family-default);
          letter-spacing: 0.15em;
          margin-bottom: 10px; }
      .topSchedule .topScheduleInr .tsL p {
        font-size: 14px;
        letter-spacing: 0.04em; }
      .topSchedule .topScheduleInr .tsL .mailBtn {
        background: #E89700;
        background: linear-gradient(90deg, #e89700 0%, #e25e00 100%);
        border: 1px solid #e25e00;
        margin: 40px 0 0;
        max-width: 356px; }
        .topSchedule .topScheduleInr .tsL .mailBtn a {
          color: #FFF;
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 16px;
          font-weight: bold;
          letter-spacing: 0.04em;
          min-height: 66px;
          min-width: 290px;
          position: relative;
          text-decoration: none;
          transition: 0.2s;
          width: 100%; }
          .topSchedule .topScheduleInr .tsL .mailBtn a:before {
            background: url("../images/home_new/icon_mail.svg") center center no-repeat;
            background-size: 18px auto;
            content: '';
            display: inline-block;
            margin-right: 12px;
            height: 12px;
            width: 17px;
            transition: 0.2s;
            filter: brightness(0) invert(1); }
          .topSchedule .topScheduleInr .tsL .mailBtn a:hover {
            background-color: var(--color_white);
            color: #e25e00; }
            .topSchedule .topScheduleInr .tsL .mailBtn a:hover:before {
              filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
              transition: 0.2s; }
    .topSchedule .topScheduleInr .tsR {
      width: 55%; }
      .topSchedule .topScheduleInr .tsR figure {
        background: #FFF;
        border-radius: 24px;
        display: block;
        height: 100%;
        padding: 44px 44px 52px;
        width: 100%; }
        .topSchedule .topScheduleInr .tsR figure ol {
          list-style: none;
          margin: 0;
          padding: 0; }
          .topSchedule .topScheduleInr .tsR figure ol li {
            background: #CCC;
            border-radius: 6px;
            margin: 0 0 36px;
            padding: 24px;
            position: relative; }
            .topSchedule .topScheduleInr .tsR figure ol li:after {
              background: url("../images/home_new/schedule_arrow.svg") center center no-repeat;
              background-size: 22px auto;
              content: '';
              display: block;
              height: 14px;
              width: 100%;
              position: absolute;
              bottom: -26px;
              left: 0; }
            .topSchedule .topScheduleInr .tsR figure ol li.start {
              background: #DEDEDE;
              font-size: 17px;
              font-weight: bold;
              text-align: center; }
            .topSchedule .topScheduleInr .tsR figure ol li.numLi {
              background: rgba(29, 120, 206, 0.06);
              border: 1px solid var(--color_point3);
              display: flex;
              align-items: center;
              justify-content: space-between;
              padding: 16px 24px;
              min-height: 106px; }
              .topSchedule .topScheduleInr .tsR figure ol li.numLi .num {
                background: var(--color_point3);
                border-radius: 100%;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #FFF;
                font-size: 20px;
                line-height: 1;
                height: 60px;
                width: 60px; }
              .topSchedule .topScheduleInr .tsR figure ol li.numLi dl {
                margin: 0;
                padding: 0;
                width: calc(100% - 80px); }
                .topSchedule .topScheduleInr .tsR figure ol li.numLi dl dt {
                  font-size: 17px;
                  line-height: 1.4; }
                .topSchedule .topScheduleInr .tsR figure ol li.numLi dl dd {
                  font-size: 14px;
                  line-height: 1.5; }
            .topSchedule .topScheduleInr .tsR figure ol li.goal {
              background: rgba(226, 94, 1, 0.06);
              border: 1px solid #E25E00;
              text-align: center;
              margin: 50px 0 0;
              padding: 24px 24px 16px;
              position: relative; }
              .topSchedule .topScheduleInr .tsR figure ol li.goal:before {
                background: #E25E00;
                border-radius: 50px;
                content: 'GOAL';
                display: inline-flex;
                align-items: center;
                justify-content: center;
                color: #FFF;
                font-size: 14px;
                font-weight: 500;
                letter-spacing: 0.08em;
                line-height: 1;
                padding: 6px 12px;
                width: 100px;
                position: absolute;
                top: -14px;
                left: calc(50% - 50px ); }
              .topSchedule .topScheduleInr .tsR figure ol li.goal dl {
                margin: 0;
                padding: 0; }
                .topSchedule .topScheduleInr .tsR figure ol li.goal dl dt {
                  font-size: 20px;
                  line-height: 1.4; }
                .topSchedule .topScheduleInr .tsR figure ol li.goal dl dd {
                  font-size: 14px;
                  line-height: 1.5; }
              .topSchedule .topScheduleInr .tsR figure ol li.goal:after {
                display: none; }

@media screen and (min-width: 1401px) {
  .topSchedule .topScheduleInr .tsL .topHd {
    font-size: 36px; }
    .topSchedule .topScheduleInr .tsL .topHd .en {
      font-size: 20px; } }
@media screen and (max-width: 1400px) {
  .topSchedule {
    padding: 80px 40px; }
    .topSchedule .topScheduleInr {
      display: block;
      margin: 0 auto;
      max-width: 600px;
      padding-bottom: 100px;
      position: relative; }
      .topSchedule .topScheduleInr .tsL {
        padding-top: 0;
        width: 100%; }
        .topSchedule .topScheduleInr .tsL .topHd {
          line-height: 1.4; }
          .topSchedule .topScheduleInr .tsL .topHd br.noTablet {
            display: none; }
        .topSchedule .topScheduleInr .tsL .mailBtn {
          margin: 0;
          max-width: 300px;
          position: absolute;
          bottom: 0;
          left: calc((100% - 300px) / 2); }
          .topSchedule .topScheduleInr .tsL .mailBtn a {
            letter-spacing: 0;
            min-width: 300px;
            width: 100%; }
      .topSchedule .topScheduleInr .tsR {
        padding-top: 28px;
        width: 100%; }
        .topSchedule .topScheduleInr .tsR figure {
          padding: 44px 6% 52px; }
          .topSchedule .topScheduleInr .tsR figure ol li {
            padding: 24px 12px; }
            .topSchedule .topScheduleInr .tsR figure ol li.numLi {
              padding: 16px; }
            .topSchedule .topScheduleInr .tsR figure ol li.goal {
              padding: 24px 16px 16px; } }
@media screen and (max-width: 680px) {
  .topSchedule {
    padding: 60px 5vw; }
    .topSchedule .topScheduleInr .tsL .topHd {
      letter-spacing: -0.04em; }
    .topSchedule .topScheduleInr .tsR {
      padding-top: 20px;
      width: 100%; }
      .topSchedule .topScheduleInr .tsR figure {
        border-radius: 10px;
        padding: 28px 5vw 32px; }
        .topSchedule .topScheduleInr .tsR figure ol li {
          padding: 24px 5vw; }
          .topSchedule .topScheduleInr .tsR figure ol li:after {
            background: url("../images/home_new/schedule_arrow.svg") center center no-repeat;
            background-size: 18px auto;
            height: 12px;
            bottom: -26px; }
          .topSchedule .topScheduleInr .tsR figure ol li.start {
            font-size: 16px; }
          .topSchedule .topScheduleInr .tsR figure ol li.numLi {
            padding: 16px 5vw;
            min-height: 90px; }
            .topSchedule .topScheduleInr .tsR figure ol li.numLi .num {
              font-size: 17px;
              height: 44px;
              width: 44px; }
            .topSchedule .topScheduleInr .tsR figure ol li.numLi dl {
              margin: 0;
              padding: 0;
              width: calc(100% - 60px); }
              .topSchedule .topScheduleInr .tsR figure ol li.numLi dl dt {
                font-size: 16px;
                margin-bottom: 2px; }
              .topSchedule .topScheduleInr .tsR figure ol li.numLi dl dd {
                font-size: 13px;
                line-height: 1.5; }
          .topSchedule .topScheduleInr .tsR figure ol li.goal {
            padding: 24px 5vw 16px; }
            .topSchedule .topScheduleInr .tsR figure ol li.goal:before {
              font-size: 12px;
              padding: 6px;
              width: 80px;
              left: calc(50% - 40px ); }
            .topSchedule .topScheduleInr .tsR figure ol li.goal dl dt {
              font-size: 17px;
              margin-bottom: 2px; }
            .topSchedule .topScheduleInr .tsR figure ol li.goal dl dd {
              font-size: 13px;
              line-height: 1.5; }
            .topSchedule .topScheduleInr .tsR figure ol li.goal:after {
              display: none; } }
.topInfo {
  background: #F6F6F6;
  padding: 100px 40px; }
  .topInfo .infoList {
    padding: 24px 0 48px; }
    .topInfo .infoList > ul {
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between;
      position: relative;
      margin: 0 auto;
      max-width: 1100px;
      list-style: none;
      padding: 0; }
      .topInfo .infoList > ul > li {
        background: #FFF;
        border: 1px solid #D6D6D6;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
        padding: 44px 4%;
        width: calc(50% - 16px); }
        .topInfo .infoList > ul > li h3 {
          font-size: var(--fs-s);
          font-weight: bold;
          line-height: 1.5;
          margin-bottom: 12px; }
        .topInfo .infoList > ul > li .desc {
          font-size: 14px;
          margin: 0 0 16px;
          padding: 0; }
        .topInfo .infoList > ul > li .imgBox {
          display: block;
          margin: 0 0 24px;
          padding: 0;
          position: relative;
          width: 100%;
          transition: 0.2s; }
          .topInfo .infoList > ul > li .imgBox:hover {
            opacity: 0.7; }
          .topInfo .infoList > ul > li .imgBox * {
            margin: 0;
            padding: 0; }
          .topInfo .infoList > ul > li .imgBox .tag {
            border: 1px solid var(--color_point3);
            border-bottom: none;
            border-radius: 4px 4px 0 0;
            color: var(--color_main-grad_start);
            display: inline-block;
            font-size: 12px;
            font-weight: bold;
            line-height: 1.2;
            letter-spacing: 0.06em;
            padding: 5px 12px; }
          .topInfo .infoList > ul > li .imgBox .img {
            display: block;
            line-height: 1; }
          .topInfo .infoList > ul > li .imgBox .title {
            display: block;
            font-size: 14px;
            font-weight: bold;
            line-height: 1.65;
            letter-spacing: 0.02em;
            padding: 12px 4px; }
        .topInfo .infoList > ul > li.type2 .imgBox .tag {
          border-color: #E25E00;
          color: #E25E00; }
        .topInfo .infoList > ul > li.type2 .topLinkBtn p {
          background: #E89700;
          background: linear-gradient(90deg, #e89700 0%, #e25e00 100%);
          border: 1px solid #e25e00; }
          .topInfo .infoList > ul > li.type2 .topLinkBtn p a:hover {
            background-color: var(--color_white);
            color: #e25e00; }
            .topInfo .infoList > ul > li.type2 .topLinkBtn p a:hover:before {
              filter: brightness(0) saturate(100%) invert(43%) sepia(91%) saturate(2596%) hue-rotate(3deg) brightness(91%) contrast(101%);
              transition: 0.2s; }

@media screen and (min-width: 1024px) and (max-width: 1240px), screen and (max-width: 860px) {
  .topInfo {
    padding: 60px 5vw 20px; }
    .topInfo .infoList {
      padding: 24px 0; }
      .topInfo .infoList > ul {
        display: block;
        max-width: 640px; }
        .topInfo .infoList > ul > li {
          margin-bottom: 24px;
          padding: 44px 5vw;
          width: 100%; } }
@media screen and (max-width: 480px) {
  .topInfo .infoList {
    padding: 4px 0; }
    .topInfo .infoList > ul > li {
      padding: 28px 5vw;
      width: 100%; }
      .topInfo .infoList > ul > li .desc {
        font-size: 13px; }
      .topInfo .infoList > ul > li .imgBox {
        margin-bottom: 10px; }
        .topInfo .infoList > ul > li .imgBox .tag {
          font-size: 10px;
          padding: 4px 8px; } }
body.home .fixedCvBtn {
  display: none !important; }

body.home #content-in {
  padding-bottom: 0; }
