@charset "UTF-8";
/*英語フォント*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes rotateY {
  from {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  to {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@keyframes rotateY {
  from {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  to {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@-webkit-keyframes moveUpDown01 {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
  }
}
@keyframes moveUpDown01 {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
  }
}
@-webkit-keyframes moveUpDown02 {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(3%);
            transform: translateY(3%);
  }
}
@keyframes moveUpDown02 {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(3%);
            transform: translateY(3%);
  }
}
@-webkit-keyframes moveUpDown03 {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-1.5%);
            transform: translateY(-1.5%);
  }
}
@keyframes moveUpDown03 {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-1.5%);
            transform: translateY(-1.5%);
  }
}
@-webkit-keyframes fadeInOut {
  0%, 80%, 100% {
    opacity: 0;
  }
  40%, 60% {
    opacity: 1;
  }
}
@keyframes fadeInOut {
  0%, 80%, 100% {
    opacity: 0;
  }
  40%, 60% {
    opacity: 1;
  }
}
.p-president-sec-wrap {
  margin-top: min(40px, 10.6666666667vw);
  margin-bottom: min(70px, 18.6666666667vw);
  position: relative;
  padding: 1px 0;
}
@media print, screen and (min-width:768px) {
  .p-president-sec-wrap {
    margin-top: min(114px, 11.4vw);
    margin-bottom: min(160px, 16vw);
  }
}

.p-president-sec {
  position: relative;
  padding-top: min(106px, 28.2666666667vw);
}
@media print, screen and (min-width:992px) {
  .p-president-sec {
    margin-top: 0;
    padding-top: 0;
  }
}
@media print, screen and (min-width:992px) {
  .p-president-sec__img {
    /*PCのみ*/
    position: absolute;
    top: 0;
    right: 0;
    width: 50.1428571429vw;
  }
}
.p-president-sec__img img {
  width: 100%;
}
@media print, screen and (min-width:1400px) {
  .p-president-sec__img img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    height: 100%;
  }
}
.p-president-sec__caption {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: 6.8vw;
  text-align: left;
}
@media print, screen and (min-width:768px) {
  .p-president-sec__caption {
    margin-right: auto;
    -webkit-transform: translateX(-16%);
            transform: translateX(-16%);
  }
}
.p-president-sec__caption-position {
  display: block;
  margin-top: 0.8em;
  font-size: min(3.7333333333vw, 1.4rem);
}
@media print, screen and (min-width:992px) {
  .p-president-sec__caption-position {
    margin-top: 2.4em;
    font-size: min(15px, 1.5vw);
  }
}
.p-president-sec__caption-name {
  display: block;
  line-height: 1.4;
  font-size: min(4.8vw, 1.8rem);
  font-weight: 500;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__caption-name {
    line-height: 1.7;
    font-size: min(20px, 2vw);
  }
}
@media print, screen and (min-width:992px) {
  .p-president-sec__inner {
    /*PCのみ*/
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-president-sec__textarea {
  text-align: justify;
  -moz-text-align-last: left;
       text-align-last: left;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__textarea {
    /*PCのみ*/
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 56.2%;
    padding: 0;
    margin-right: auto;
  }
}
@media print, screen and (max-width:991px) {
  .p-president-sec__title-wrap {
    position: absolute;
    top: 0;
    left: 6.8vw;
  }
}
.p-president-sec__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: min(4.8vw, 1.8rem);
  font-weight: bold;
  line-height: 1;
  color: var(--color-main);
  white-space: nowrap;
}
.p-president-sec__title::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  background-color: var(--color-main);
  margin-right: 0.6em;
  border-radius: 50%;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__title {
    padding-left: 0;
    padding-bottom: 0;
    font-size: min(20px, 2vw);
  }
}
.p-president-sec__subtitle {
  margin-top: 1.1em;
  font-size: min(5.8666666667vw, 2.2rem);
  font-weight: bold;
  line-height: 1.8181818182;
  color: #fff;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__subtitle {
    margin-top: 1.8em;
    margin-bottom: 0.6em;
    font-size: min(34px, 3.4vw);
    margin-left: -0.8em;
  }
}
.p-president-sec__subtitle span {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: var(--color-main);
  padding: 0 0.8em;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__subtitle span {
    line-height: 1.65;
  }
}
.p-president-sec__subtitle span + span {
  margin-top: 0.1em;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__subtitle span + span {
    margin-top: 0.2em;
  }
}
.p-president-sec__text {
  margin-top: 1.7em;
  font-size: min(4vw, 1.5rem);
  line-height: 1.7333333333;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__text {
    margin-top: 1.8em;
    font-size: min(15px, 1.5vw);
    line-height: 1.8666666667;
  }
}
.p-president-sec__link {
  margin-top: 2.5em;
}
@media print, screen and (min-width:992px) {
  .p-president-sec__link {
    margin-left: 0;
    margin-top: 5em;
  }
}

.p-executive-sec-wrap {
  border-top: 1px solid #ccc;
  padding-top: min(45px, 12vw);
  position: relative;
}
@media print, screen and (min-width:992px) {
  .p-executive-sec-wrap {
    padding-top: min(85px, 8.5vw);
    margin-bottom: min(170px, 17vw);
  }
}

.p-executive-sec__title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1.6em;
}
@media print, screen and (min-width:768px) {
  .p-executive-sec__title-wrap {
    margin-bottom: min(65px, 6.5vw);
  }
}
.p-executive-sec__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: min(4.8vw, 1.8rem);
  font-weight: bold;
  line-height: 1;
  color: var(--color-main);
  white-space: nowrap;
}
.p-executive-sec__title::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  background-color: var(--color-main);
  margin-right: 0.6em;
  border-radius: 50%;
}
@media print, screen and (min-width:992px) {
  .p-executive-sec__title {
    padding-left: 0;
    padding-bottom: 0;
    font-size: min(20px, 2vw);
  }
}
.p-executive-sec__title-note {
  font-size: min(3.2vw, 1.2rem);
  line-height: 1;
}
@media print, screen and (min-width:992px) {
  .p-executive-sec__title-note {
    font-size: min(12px, 1.2vw);
  }
}
@media print, screen and (max-width:991px) {
  .p-executive-sec .p-executive-table {
    width: 100%;
  }
}
.p-executive-sec .p-executive-table tr {
  position: relative;
  display: table-row;
  border-bottom: 1px dashed #CCCCCC;
}
@media print, screen and (max-width:991px) {
  .p-executive-sec .p-executive-table tr:last-child {
    border-bottom: none;
  }
}
@media print, screen and (max-width:991px) {
  .p-executive-sec .p-executive-table th,
  .p-executive-sec .p-executive-table td {
    /*スマホのみ*/
    display: block;
    width: 100%;
    padding-left: 6.4vw;
  }
}
@media print, screen and (min-width:992px) {
  .p-executive-sec .p-executive-table th,
  .p-executive-sec .p-executive-table td {
    /*PCのみ*/
    padding: 0.8em 0;
    vertical-align: middle;
  }
}
@media print, screen and (max-width:991px) {
  .p-executive-sec .p-executive-table th {
    /*スマホのみ*/
    padding-top: 0.8em;
    font-size: min(4vw, 1.5rem);
    line-height: 1.4;
    letter-spacing: -0.05em;
  }
}
@media print, screen and (min-width:992px) {
  .p-executive-sec .p-executive-table th {
    /*PCのみ*/
    width: 50%;
    font-size: min(15px, 1.5vw);
  }
}
.p-executive-sec .p-executive-table th .position {
  display: inline-block;
  margin-right: 1em;
}
@media print, screen and (min-width:992px) {
  .p-executive-sec .p-executive-table th .position {
    width: 8em;
  }
}
.p-executive-sec .p-executive-table th .name {
  display: inline-block;
}
@media print, screen and (max-width:991px) {
  .p-executive-sec .p-executive-table td {
    /*スマホのみ*/
    padding-bottom: 1em;
    font-size: min(3.2vw, 1.2rem);
  }
}
@media print, screen and (min-width:992px) {
  .p-executive-sec .p-executive-table td {
    /*PCのみ*/
    width: 50%;
    font-size: min(13px, 1.3vw);
  }
}