@charset "UTF-8";
@-webkit-keyframes loop {
   0% {
       transform: translateX(100%);
   }
   
   to {
       transform: translateX(-100%);
   }
 }
   @-webkit-keyframes loop2 {
   0% {
       transform: translateX(0);
   }
   
   to {
       transform: translateX(-200%);
   }
 }

/* ========================================
   @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px), print {
/* message
-------------------------------------*/
.message .inner {
   width: min(95%, 1440px);
   margin-inline: auto;
   padding: 136px 0 120px;
}
.message h2 {
   font-size: 60px;
   font-weight: 700;
   line-height: 1.45;
   letter-spacing: -0.08em;
   margin-bottom: 64px;
}
.message .inBox {
   display: grid;
   grid-template-columns: 44.44% 41.66%;
   gap: 80px;
}
.message .inBox .txt-box {
   padding: 80px 0 0;
}
.message .inBox h3 {
   font-size: 32px;
   font-weight: 700;
   line-height: 1.4375; /* 143.75% */
   margin-bottom: 64px;
}
.message .inBox .txt {
   font-size: 16px;
   font-weight: 400;
   line-height: 1.875; /* 187.5% */
   margin-bottom: 30px;
}
.message .inBox .txt:nth-of-type(5) {
   margin-bottom: 40px;
}
.message .inBox .txt02 {
   color: #C93800;
   font-size: 18px;
   font-weight: 500;
   line-height: 1.7778; /* 177.778% */
   margin-bottom: 56px;
   margin-top: 56px;
}
.message .inBox .name {
   font-size: 24px;
   font-weight: 600;
   line-height: 1.75; /* 175% */
   display: flex;
   justify-content: flex-end;
   align-items: baseline;
   gap: 16px;
}
.message .inBox .name span {
   font-size: 16px;
   font-weight: 400;
   line-height: 1.875; /* 187.5% */
}
.message .loop {
   overflow: hidden;
}
 .message .loop .loop__box {
   display: flex;
   width: 100vw;
}
.message .loop__box img {
   min-width: 106.25vw;
}
.message .loop__box img:first-child {
   -webkit-animation: loop 50s -25s linear infinite;
   animation: loop 50s -25s linear infinite;
}
 .message .loop__box img:last-child {
   -webkit-animation: loop2 50s linear infinite;
   animation: loop2 50s linear infinite;
}

/* staff
-------------------------------------*/
.staff {
   background: #F5F5F5;
}
.staff .inner{
   width: min(95%, 1440px);
   margin-inline: auto;
   padding: 160px 0;
}
.staff .subt {
   margin-bottom: 8px;
}
.staff h2 {
   font-size: 60px;
   font-weight: 700;
   line-height: 1.45;   
   letter-spacing: -0.08em;
   margin-bottom: 80px;
}
.staff .system-contents {
   width: 100%;
   padding: 0;
}
.staff .system-list {
   display: grid;
   grid-template-columns: repeat(1, minmax(0, 1fr));
   gap: 80px;
}
.staff .system-list li {
   height: 560px;
   display: grid;
   grid-template-columns: 44.45% 55.55%;
}
.staff .system-list li .txt-box {
   padding: 80px;
   background: #FFF;
}
.staff .system-list li .system-catch {
   font-size: 24px;
   font-weight: 700;
   line-height: 1.45833;
   margin-bottom: 34px;
}
.staff .system-list li .system-role {
   margin-bottom: 12px;
}
.staff .system-list li .system-ttl {
   font-size: 24px;
   font-weight: 600;
   line-height: 1.75; /* 175% */
   margin-bottom: 41px;
   letter-spacing: 0;
}
.staff .system-list li th,
.staff .system-list li td {
   font-size: 14px;
   font-weight: 400;
   line-height: 1.85714; /* 185.714% */
   padding: 16px;
   text-align: left;
}
.staff .system-list li th {
   background: #F5F5F5;
   width: 23.33%;
}
.staff .system-list li .system-pic {
   margin: 0;
}
.staff .system-list li .system-pic img {
   height: 560px;
}

/* link-sec
-------------------------------------*/
.link-sec {
   padding: 160px 0 240px;
}
.link-sec .bnr-list {
   width: min(95%, 1180px);
   margin-inline: auto;
   display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 60px;
}
.link-sec .bnr-list li {
   box-shadow: 0 10px 20px 0 rgba(26, 26, 26, 0.10);
}
.link-sec .bnr-list li img {
   width: 100%;
   height: auto;
}

}

/* ========================================
@media screen and (min-width:768px) and (max-width:1500px)
======================================== */
@media screen and (min-width:768px) and (max-width:1500px) {
/* message
-------------------------------------*/
.message .inner {
   padding: 9.067vw 0 8vw;
}
.message h2 {
   font-size: 4vw;
   margin-bottom: 4.267vw;
}
.message .inBox {
   grid-template-columns: 44.44% 46%;
   gap: 5.333vw;
}
.message .inBox .txt-box {
   padding: 5.333vw 0 0;
}
.message .inBox h3 {
   font-size: clamp(1.75rem, 1.488rem + 0.55vw, 2rem);
   margin-bottom: 4.267vw;
}
.message .inBox .txt {
   font-size: clamp(0.75rem, 0.488rem + 0.55vw, 1rem);
   margin-bottom: 2vw;
}
.message .inBox .txt:nth-of-type(5) {
   margin-bottom: 2.667vw;
}
.message .inBox .txt02 {
   font-size: clamp(0.875rem, 0.613rem + 0.55vw, 1.125rem);
   margin-bottom: 3.733vw;
   margin-top: 3.733vw;
}
.message .inBox .name {
   font-size: clamp(1.25rem, 0.988rem + 0.55vw, 1.5rem);
   gap: 1.067vw;
}
.message .inBox .name span {
   font-size: clamp(0.75rem, 0.488rem + 0.55vw, 1rem);
}
.message .inBox .photo img {
   width: 100%;
   height: auto;
}
}

/* ========================================
@media screen and (min-width:768px) and (max-width:1440px)
======================================== */
@media screen and (min-width:768px) and (max-width:1440px) {
/* staff
-------------------------------------*/
.staff .inner{
   padding: 11.111vw 0;
}
.staff .subt {
   margin-bottom: 0.556vw;
}
.staff .subt img {
   width: 50.90vw;
}
.staff h2 {
   font-size: 4.167vw;
   margin-bottom: 5.556vw;
}
.staff .system-list {
   gap: 5.556vw;
}
.staff .system-list li {
   height: 38.889vw;
   grid-template-columns: 44.45% 55.55%;
}
.staff .system-list li .txt-box {
   padding: 5.556vw 5.556vw 0;
}
.staff .system-list li .system-catch {
   font-size: 1.667vw;
   margin-bottom: 2.222vw;
}
.staff .system-list li .system-role {
   margin-bottom: 0.556vw;
}
.staff .system-list li .system-ttl {
   font-size: 1.667vw;
   margin-bottom: 2.778vw;
}
.staff .system-list li th,
.staff .system-list li td {
   font-size: clamp(0.625rem, 0.339rem + 0.6vw, 0.875rem);
   padding: 1.111vw;
}
.staff .system-list li .system-pic img {
   height: 38.889vw;
}

}

/* ========================================
@media screen and (min-width:768px) and (max-width:1100px)
======================================== */
@media screen and (min-width:768px) and (max-width:1100px) {
.staff .system-list li th {
   width: 30%;
}
.staff .system-list li .txt-box {
   padding: 4vw 4vw 0;
}
}


/* ========================================
   @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
/* message
-------------------------------------*/
.message .inner {
   width: 89.37vw;
   margin-inline: auto;
   padding: 10.66vw 0 16.72vw;
}
.message h2 {
   font-size:7.729vw;
   font-weight: 700;
   line-height: 1.4375;
   margin-bottom: 9.66vw;
}
.message .inBox {
   display: grid;
}
.message .inBox .photo {
   order: 2;
   margin-bottom: 7.73vw;
}
.message .inBox .txt-box {
   display: contents;
}
.message .inBox h3 {
   font-size:5.797vw;
   font-weight: 700;
   line-height: 1.4583;
   margin-bottom: 7.73vw;
   order: 1;
}
.message .inBox .txt {
   font-size:3.14vw;
   font-weight: 400;
   line-height: 1.84615;
   margin-bottom: 5.8vw;
   order: 3;
}
.message .inBox .txt:nth-of-type(5) {
   margin-bottom: 5.80vw;
   order: 6;
}
.message .inBox .txt02 {
   color: #C93800;
   font-size:3.865vw;
   font-weight: 500;
   line-height: 1.875;
   margin-bottom: 9.66vw;
   order: 4;
   margin-top: 4vw;
}
.message .inBox .name {
   font-size:5.797vw;
   font-weight: 600;
   line-height: 1.75; /* 175% */
   display: flex;
   justify-content: flex-end;
   align-items: baseline;
   gap: 3.86vw;
   order: 7;
}
.message .inBox .name span {
   font-size:3.865vw;
   font-weight: 400;
   line-height: 1.875; /* 187.5% */
}
.message .loop {
   overflow: hidden;
   margin-bottom: -2vw;
}
 .message .loop .loop__box {
   display: flex;
   width: 100vw;
}
.message .loop__box img {
   min-width: 270.25vw;
}
.message .loop__box img:first-child {
   -webkit-animation: loop 50s -25s linear infinite;
   animation: loop 50s -25s linear infinite;
}
 .message .loop__box img:last-child {
   -webkit-animation: loop2 50s linear infinite;
   animation: loop2 50s linear infinite;
}

/* staff
-------------------------------------*/
.staff {
   background: #F5F5F5;
}
.staff .inner{
   padding: 19.32vw 0;
}
.staff .subt {
   margin-inline: auto;
   margin-bottom: 3.86vw;
   width: 89.86vw;
}
.staff .subt img {
   width: 88.65vw;
}
.staff h2 {
   width: 89.86vw;
   margin-inline: auto;
   font-size:7.729vw;
   font-weight: 700;
   line-height: 1.4375;
   margin-bottom: 11.5vw;
}
.staff .system-contents {
   width: 100%;
   padding: 0;
}
.staff .system-list {
   display: grid;
   grid-template-columns: repeat(1, minmax(0, 1fr));
   gap: 9.66vw;
}
.staff .system-list li {
   background: #FFF;
   padding: 9.66vw 5.31vw 10.01vw;
   display: grid;
}
.staff .system-list li .txt-box {
   display: contents;
}
.staff .system-list li .system-catch {
   font-size:4.348vw;
   font-weight: 700;
   line-height: 1.77278;
   margin-bottom: 7.73vw;
   order: 1;
}
.staff .system-list li .system-role {
   margin-bottom: 2.93vw;
   order: 2;
   font-size: 3.382vw;
}
.staff .system-list li .system-ttl {
   font-size:4.831vw;
   font-weight: 500;
   line-height: 1.7;
   margin-bottom: 5.80vw;
   letter-spacing: 0;
   order: 3;
}
.staff .system-list li table {
   order: 6;
}
.staff .system-list li th,
.staff .system-list li td {
   font-size:3.382vw;
   font-weight: 400;
   line-height: 1.85714; /* 185.714% */
   padding: 3.86vw 2.90vw;
   text-align: left;
}
.staff .system-list li th {
   background: #F5F5F5;
   width: 24.33%;
}
.staff .system-list li th.word {
   line-height: 1.2857;
   vertical-align: middle;
}
.staff .system-list li .system-txt {
   font-size:3.14vw;
}
.staff .system-list li .system-pic {
   margin-bottom: 5.80vw;
   order: 4;
}
.staff .system-list li .system-pic img {
   height: 62.80vw;
}

/* link-sec
-------------------------------------*/
.link-sec {
   padding: 28.99vw 0 38.39vw;
}
.link-sec .bnr-list {
   width: 82.13vw;
   margin-inline: auto;
   display: grid;
   grid-template-columns: repeat(1, minmax(0, 1fr));
   gap: 5.80vw;
}
.link-sec .bnr-list li {
   box-shadow: 0 10px 20px 0 rgba(26, 26, 26, 0.10);
}
.link-sec .bnr-list li img {
   width: 100%;
   height: auto;
}

}
