.secCompanyName {
  color: #ffffff;
  white-space: nowrap;
  letter-spacing: 0;
  text-align: center;
  pointer-events: none;
}
.secCompanyName .swiper-wrapper {
  transition-timing-function: linear;
}

.secMainVisual {
  position: relative;
  height: 100vh;
  height: 100svh;
  color: #ffffff;
}
.secMainVisual .mainImg {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.secMainVisual .mainImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.secMainVisual .titleJp {
  position: absolute;
  line-height: 100%;
}
.secMainVisual .titleEn {
  position: absolute;
  line-height: 100%;
}
.secMainVisual .scrollArea {
  position: absolute;
}
.secMainVisual .scrollArea .scrollIn {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  transform: rotateZ(90deg);
}
.secMainVisual .scrollArea .scrollIn .scrollText {
  font-size: 12px;
  padding-right: 8px;
}
@media only screen and (max-width: 767px) {
  .secMainVisual .mainImg img {
    height: min(80%, 616px);
    -o-object-position: 66%;
       object-position: 66%;
  }
  .secMainVisual .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
    left: 6.25%;
    bottom: 300px;
  }
  .secMainVisual .titleEn {
    font-size: clamp(24px, 16.9vw, 66px);
    left: 6.25%;
    bottom: 100px;
    line-height: 40px;
  }
  .secMainVisual .scrollArea {
    right: -45px;
    bottom: 150px;
  }
}
@media print, screen and (min-width: 768px) {
  .secMainVisual .titleJp {
    font-size: clamp(17px, 1.94vw, 28px);
    left: 6.25%;
    bottom: clamp(230px, 23vw, 300px);
    z-index: 70;
  }
  .secMainVisual .titleEn {
    font-size: clamp(53px, 7.36vw, 106px);
    left: 6.25%;
    bottom: 100px;
    line-height: 40px;
    z-index: 70;
  }
  .secMainVisual .scrollArea {
    right: 10px;
    bottom: 110px;
  }
}
.secAbout {
  color: #ffffff;
}
.secAbout .secAboutIn .textBox .detail {
  line-height: 180%;
}
@media only screen and (max-width: 767px) {
  .secAbout {
    padding: 104px 0 76px 0;
  }
  .secAbout .secAboutIn .textBox {
    padding: 0 0 36px 0;
  }
  .secAbout .secAboutIn .textBox .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secAbout .secAboutIn .textBox .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
    padding: 0 0 32px 0;
  }
  .secAbout .secAboutIn .textBox .caption {
    font-size: clamp(16px, 5.12vw, 20px);
    padding: 0 0 24px 0;
  }
  .secAbout .secAboutIn .textBox .detail {
    font-size: 14px;
  }
  .secAbout .secAboutIn .imgBox {
    margin-right: -5vw;
  }
}
@media print, screen and (min-width: 768px) {
  .secAbout {
    padding: 180px 0 160px 0;
  }
  .secAbout .secAboutIn {
    display: flex;
    justify-content: space-between;
    position: relative;
  }
  .secAbout .secAboutIn .textBox {
    width: 46.4%;
  }
  .secAbout .secAboutIn .textBox .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secAbout .secAboutIn .textBox .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
    padding: 0 0 54px 0;
  }
  .secAbout .secAboutIn .textBox .caption {
    font-size: clamp(16px, 1.67vw, 24px);
    padding: 0 0 32px 0;
  }
  .secAbout .secAboutIn .textBox .detail {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secAbout .secAboutIn .imgBox {
    position: absolute;
    left: 49.53%;
    width: 50.37%;
    height: 100%;
  }
  .secAbout .secAboutIn .imgBox img {
    height: 100%;
    width: auto;
  }
}
.secPhilosophy {
  background: url(../images/PHILOSOPHY_background.jpg) left top no-repeat;
  background-size: cover;
}
.secPhilosophy .secPhilosophyIn .titleEn {
  letter-spacing: 0;
}
.secPhilosophy .secPhilosophyIn .listArea .listBox .listTitleJp {
  color: #E26522;
}
.secPhilosophy .secPhilosophyIn .listArea .listBox .listText {
  line-height: 175%;
}

@media only screen and (max-width: 767px) {
  .secPhilosophy {
    padding: 80px 0 0px 0;
    background-position: 60% center;
  }
  .secPhilosophy .secPhilosophyIn .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secPhilosophy .secPhilosophyIn .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
    padding: 0 0 31px 0;
  }
  .secPhilosophy .secPhilosophyIn .listArea .listBox .listTitleJp {
    font-size: clamp(16px, 5.12vw, 20px);
    padding: 0 0 4px 0;
  }
  .secPhilosophy .secPhilosophyIn .listArea .listBox .listTitleEn {
    font-size: 14px;
    padding: 0 0 24px 0;
  }
  .secPhilosophy .secPhilosophyIn .listArea .listBox .listText {
    padding: 16px 0 40px 0;
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) {
  .secPhilosophy {
    padding: 74px 0 100px 0;
  }
  .secPhilosophy .secPhilosophyIn .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secPhilosophy .secPhilosophyIn .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
    padding: 0 0 30px 0;
  }
  .secPhilosophy .secPhilosophyIn .listArea {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5.5%;
  }
  .secPhilosophy .secPhilosophyIn .listArea .listBox .listTitleJp {
    font-size: clamp(16px, 1.67vw, 24px);
    padding: 0 0 2px 0;
  }
  .secPhilosophy .secPhilosophyIn .listArea .listBox .listTitleEn {
    font-size: 14px;
    padding: 0 0 24px 0;
  }
  .secPhilosophy .secPhilosophyIn .listArea .listBox .listText {
    padding: 24px 0 0 0;
    font-size: clamp(14px, 1.11vw, 16px);
  }
}
.secService {
  color: #ffffff;
}
.secService .secServiceIn .titleEn {
  letter-spacing: 0;
}
.secService .secServiceIn .caption {
  letter-spacing: 0.04em;
}
.secService .secServiceIn .serviceListArea .serviceList {
  display: block;
  position: relative;
}
.secService .secServiceIn .serviceListArea .serviceList .filter {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.secService .secServiceIn .serviceListArea .serviceList .filter .nameJp {
  color: #E26522;
}
.secService .secServiceIn .serviceListArea .serviceList .filter .nameEn {
  color: #ffffff;
}
@media only screen and (max-width: 767px) {
  .secService {
    padding: 80px 0 60px 0;
  }
  .secService .secServiceIn .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secService .secServiceIn .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
    padding: 0 0 30px 0;
  }
  .secService .secServiceIn .caption {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 0 0 30px 0;
  }
  .secService .secServiceIn .serviceListArea .serviceList {
    border: solid 1px #ffffff;
  }
  .secService .secServiceIn .serviceListArea .serviceList .filter .nameJp {
    font-size: clamp(16px, 6.15vw, 24px);
  }
  .secService .secServiceIn .serviceListArea .serviceList .filter .nameEn {
    font-size: 12px;
  }
  .secService .secServiceIn .serviceListArea .serviceList .filter .icon {
    padding: 24px 0 0 0;
  }
}
@media print, screen and (min-width: 768px) {
  .secService {
    padding: 90px 0;
  }
  .secService .secServiceIn .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secService .secServiceIn .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
    padding: 0 0 30px 0;
  }
  .secService .secServiceIn .caption {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 0 0 24px 0;
  }
  .secService .secServiceIn .serviceListArea {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
  }
  .secService .secServiceIn .serviceListArea .serviceList {
    width: 50%;
    border: solid 2px #ffffff;
  }
  .secService .secServiceIn .serviceListArea .serviceList .filter .nameJp {
    font-size: clamp(19px, 2.22vw, 32px);
  }
  .secService .secServiceIn .serviceListArea .serviceList .filter .nameEn {
    font-size: clamp(14px, 1.11vw, 16px);
  }
  .secService .secServiceIn .serviceListArea .serviceList .filter .icon {
    padding: 32px 0 0 0;
  }
}
.secPoint {
  background: url(../images/point_background.jpg) center top no-repeat;
  background-size: cover;
}
.secPoint .secPointIn .titleEn {
  letter-spacing: 0;
}
.secPoint .secPointIn .pointListArea .pointList .pointTitle {
  color: #E26522;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .secPoint {
    padding: 60px 0 40px 0;
  }
  .secPoint .secPointIn .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secPoint .secPointIn .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
    padding: 0 0 36px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList {
    padding: 0 0 40px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointImg {
    padding: 0 0 16px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle {
    padding: 0 0 8px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle .icon {
    width: min(12.5%, 45px);
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle .icon img {
    max-height: 45px;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle .text {
    padding: 0 0 0 8px;
    font-size: clamp(15px, 4.61vw, 18px);
  }
  .secPoint .secPointIn .pointListArea .pointList .pointDetail {
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) {
  .secPoint {
    padding: 64px 0 0 0;
  }
  .secPoint .secPointIn .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secPoint .secPointIn .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
    padding: 0 0 30px 0;
  }
  .secPoint .secPointIn .pointListArea {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .secPoint .secPointIn .pointListArea .pointList {
    width: 45.71%;
    padding: 0 0 64px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointImg {
    padding: 0 0 16px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle {
    padding: 0 0 8px 0;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle .icon {
    width: 12.5%;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle .icon img {
    max-height: 60px;
  }
  .secPoint .secPointIn .pointListArea .pointList .pointTitle .text {
    padding: 0 0 0 8px;
    font-size: clamp(16px, 1.67vw, 24px);
  }
  .secPoint .secPointIn .pointListArea .pointList .pointDetail {
    font-size: clamp(14px, 1.11vw, 16px);
  }
}
.secFaq {
  color: #ffffff;
}
.secFaq .secFaqIn .faqListArea .faqList .person {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.secFaq .secFaqIn .faqListArea .title {
  border-bottom: solid 1px #ffffff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.secFaq .secFaqIn .faqListArea .title .icon {
  color: #E26522;
}
@media only screen and (max-width: 767px) {
  .secFaq {
    padding: 80px 0 0 0;
  }
  .secFaq .secFaqIn .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secFaq .secFaqIn .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
  }
  .secFaq .secFaqIn .faqListArea {
    padding: 32px 0 0 0;
  }
  .secFaq .secFaqIn .faqListArea .faqList {
    padding: 0 0 48px 0;
  }
  .secFaq .secFaqIn .faqListArea .faqList .person {
    padding: 0 0 8px 0;
  }
  .secFaq .secFaqIn .faqListArea .faqList .person .icon {
    width: min(11.2%, 40px);
  }
  .secFaq .secFaqIn .faqListArea .faqList .person .name {
    padding: 0 0 0 16px;
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secFaq .secFaqIn .faqListArea .title {
    padding: 0 0 8px 0;
  }
  .secFaq .secFaqIn .faqListArea .title .icon {
    font-size: clamp(18px, 7.43vw, 29px);
  }
  .secFaq .secFaqIn .faqListArea .title .titleText {
    padding: 0 0 0 20px;
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secFaq .secFaqIn .faqListArea .detail {
    font-size: 14px;
    padding: 12px 0 0 0;
  }
}
@media print, screen and (min-width: 768px) {
  .secFaq {
    padding: 64px 0 0 0;
  }
  .secFaq .secFaqIn .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secFaq .secFaqIn .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
  }
  .secFaq .secFaqIn .faqListArea {
    padding: 36px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .secFaq .secFaqIn .faqListArea .faqList {
    width: 44.44%;
    padding: 0 0 48px 0;
  }
  .secFaq .secFaqIn .faqListArea .faqList .person {
    padding: 0 0 28px 0;
  }
  .secFaq .secFaqIn .faqListArea .faqList .person .icon {
    width: min(12.5%, 60px);
  }
  .secFaq .secFaqIn .faqListArea .faqList .person .name {
    padding: 0 0 0 16px;
    font-size: clamp(16px, 1.67vw, 24px);
  }
  .secFaq .secFaqIn .faqListArea .title {
    padding: 0 0 12px 0;
  }
  .secFaq .secFaqIn .faqListArea .title .icon {
    font-size: clamp(24px, 3.125vw, 45px);
  }
  .secFaq .secFaqIn .faqListArea .title .titleText {
    padding: 0 0 0 min(7%, 38px);
    font-size: clamp(14px, 1.39vw, 20px);
  }
  .secFaq .secFaqIn .faqListArea .detail {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 16px 0 0 0;
  }
}
.secStaff {
  color: #ffffff;
}
.secStaff .secStaffIn .staffListArea .staffList .name {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}
.secStaff .secStaffIn .staffListArea .staffList .name .nameEn {
  letter-spacing: 0;
}
.secStaff .secStaffIn .staffListArea .staffList .detailRow {
  border-top: solid 1px #ffffff;
}
@media only screen and (max-width: 767px) {
  .secStaff {
    padding: 56px 0 40px 0;
  }
  .secStaff .secStaffIn .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secStaff .secStaffIn .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
    padding: 0 0 32px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList {
    padding: 0 0 32px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .staffPhoto {
    padding: 0 0 16px 0;
    max-width: 288px;
  }
  .secStaff .secStaffIn .staffListArea .staffList .position {
    font-size: 14px;
  }
  .secStaff .secStaffIn .staffListArea .staffList .name {
    padding: 0 0 8px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .name .nameJp {
    font-size: clamp(16px, 6.15vw, 24px);
  }
  .secStaff .secStaffIn .staffListArea .staffList .name .nameEn {
    padding: 0 0 0 8px;
    font-size: 14px;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow {
    padding: 12px 0 12px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow .detailTitle {
    font-size: 14px;
    padding: 0 0 8px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow .detailContent {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 0 0 6px 0;
  }
}
@media print, screen and (min-width: 768px) {
  .secStaff {
    padding: 70px 0 96px 0;
  }
  .secStaff .secStaffIn .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secStaff .secStaffIn .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
    padding: 0 0 32px 0;
  }
  .secStaff .secStaffIn .staffListArea {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .secStaff .secStaffIn .staffListArea .staffList {
    width: 27.04%;
  }
  .secStaff .secStaffIn .staffListArea .staffList:first-of-type {
    width: 100%;
    display: flex;
  }
  .secStaff .secStaffIn .staffListArea .staffList:first-of-type .staffPhoto {
    margin-right: 40px;
  }
  .secStaff .secStaffIn .staffListArea .staffList .staffPhoto {
    padding: 0 0 24px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .position {
    font-size: clamp(14px, 1.25vw, 18px);
  }
  .secStaff .secStaffIn .staffListArea .staffList .name {
    padding: 0 0 16px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .name .nameJp {
    font-size: clamp(17px, 1.94vw, 28px);
  }
  .secStaff .secStaffIn .staffListArea .staffList .name .nameEn {
    padding: 0 0 0 10px;
    font-size: 14px;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow {
    padding: 16px 0 10px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow .detailTitle {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 0 0 8px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow .detailContent {
    font-size: clamp(14px, 1.25vw, 18px);
    padding: 0 0 6px 0;
  }
  .secStaff .secStaffIn .staffListArea .staffList .detailRow .detailContent.mini {
    font-size: clamp(14px, 1.11vw, 16px);
    line-height: 180%;
  }
}
.secInsta {
  background: #ffffff;
}
.secInsta .secInstaIn .titleEn {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.secInsta .secInstaIn .titleEn .text {
  letter-spacing: 0;
  line-height: 100%;
}
.secInsta .secInstaIn .accountName {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.secInsta .secInstaIn .accountName .name {
  color: #222222;
}

@media only screen and (max-width: 767px) {
  .secInsta {
    padding: 60px 0 60px 0;
  }
  .secInsta .secInstaIn .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
    padding: 0 0 12px 0;
  }
  .secInsta .secInstaIn .titleEn {
    font-size: clamp(20px, 12.3vw, 48px);
    padding: 0 0 36px 0;
  }
  .secInsta .secInstaIn .titleEn .icon {
    width: min(11.17%, 40px);
    display: flex;
    padding: 0 0 6px 0;
  }
  .secInsta .secInstaIn .titleEn .text {
    padding: 0 0 0 12px;
  }
  .secInsta .secInstaIn .accountName {
    padding: 16px 0 0 0;
  }
  .secInsta .secInstaIn .accountName .icon {
    width: 26px;
  }
  .secInsta .secInstaIn .accountName .name {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 0 0 0 8px;
  }
}
@media print, screen and (min-width: 768px) {
  .secInsta {
    padding: 50px 0 80px 0;
  }
  .secInsta .secInstaIn .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
    padding: 0 0 12px 0;
  }
  .secInsta .secInstaIn .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
    padding: 0 0 46px 0;
  }
  .secInsta .secInstaIn .titleEn .icon {
    width: min(5.18%, 56px);
    display: flex;
    padding: 0 0 6px 0;
  }
  .secInsta .secInstaIn .titleEn .text {
    padding: 0 0 0 12px;
  }
  .secInsta .secInstaIn .accountName {
    padding: 16px 0 0 0;
  }
  .secInsta .secInstaIn .accountName .icon {
    width: 26px;
  }
  .secInsta .secInstaIn .accountName .name {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 0 0 0 8px;
  }
}
.secCompany {
  color: #ffffff;
}
.secCompany .secCompanyIn .titleArea .titleEn {
  letter-spacing: 0;
}
.secCompany .secCompanyIn .infoArea .listBox .list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.secCompany .secCompanyIn .infoArea .listBox .list .listName {
  border-right: solid 1px #ffffff;
}
.secCompany .secCompanyIn .infoArea .dateTable {
  width: 100%;
}
.secCompany .secCompanyIn .infoArea .dateTable tr td {
  border: solid 1px #ffffff;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .secCompany {
    padding: 72px 0 48px 0;
  }
  .secCompany .secCompanyIn .titleArea .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secCompany .secCompanyIn .titleArea .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
  }
  .secCompany .secCompanyIn .infoArea .listBox {
    padding: 0 0 20px 0;
  }
  .secCompany .secCompanyIn .infoArea .listBox .list {
    padding: 0 0 12px 0;
  }
  .secCompany .secCompanyIn .infoArea .listBox .list .listName {
    font-size: clamp(14px, 4.1vw, 16px);
    width: min(27.4%, 98px);
  }
  .secCompany .secCompanyIn .infoArea .listBox .list .listContent {
    font-size: clamp(15px, 4.61vw, 18px);
    padding: 0 0 0 min(8.4%, 30px);
  }
  .secCompany .secCompanyIn .infoArea .dateTable tr td {
    padding: 10px 0;
    font-size: 12px;
  }
  .secCompany .secCompanyIn .infoArea .dateTable tr td.first {
    width: 21.6%;
  }
  .secCompany .secCompanyIn .infoArea .dateTable tr td.end {
    width: 16.02%;
  }
}
@media print, screen and (min-width: 768px) {
  .secCompany {
    padding: 72px 0 70px 0;
  }
  .secCompany .secCompanyIn {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .secCompany .secCompanyIn .titleArea {
    width: 45.1%;
  }
  .secCompany .secCompanyIn .titleArea .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secCompany .secCompanyIn .titleArea .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
  }
  .secCompany .secCompanyIn .infoArea {
    width: 45.1%;
  }
  .secCompany .secCompanyIn .infoArea .listBox {
    padding: 0 0 30px 0;
  }
  .secCompany .secCompanyIn .infoArea .listBox .list {
    padding: 0 0 24px 0;
  }
  .secCompany .secCompanyIn .infoArea .listBox .list .listName {
    font-size: clamp(14px, 1.25vw, 18px);
    width: min(20.1%, 98px);
  }
  .secCompany .secCompanyIn .infoArea .listBox .list .listContent {
    font-size: clamp(14px, 1.39vw, 20px);
    padding: 0 0 0 min(6%, 30px);
  }
  .secCompany .secCompanyIn .infoArea .dateTable tr td {
    padding: 14px 0;
    font-size: clamp(14px, 1.25vw, 18px);
  }
  .secCompany .secCompanyIn .infoArea .dateTable tr td.first {
    width: 21.6%;
  }
  .secCompany .secCompanyIn .infoArea .dateTable tr td.end {
    width: 16.02%;
  }
}
.secMap {
  overflow: hidden;
}
.secMap iframe {
  position: relative;
  top: -200px;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .secMap {
    height: 390px;
  }
  .secMap iframe {
    height: 790px;
  }
}
@media print, screen and (min-width: 768px) {
  .secMap {
    height: 400px;
  }
  .secMap iframe {
    height: 800px;
  }
}
.secContact {
  background: url(../images/contact_background.jpg?001) center top no-repeat;
  background-size: cover;
  color: #ffffff;
}
.secContact .secContactIn .tilteArea .titleEn {
  letter-spacing: 0;
}
.secContact .secContactIn .linkArea .typeBox .typeTitle {
  font-weight: bold;
}
.secContact .secContactIn .linkArea .typeBox .typeButton {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: solid 1px #ffffff;
  color: #ffffff;
}
.secContact .secContactIn .linkArea .typeBox .typeButton .text {
  flex-grow: 1;
}
@media only screen and (max-width: 767px) {
  .secContact {
    padding: 60px 0 60px;
    background-position: right center;
  }
  .secContact .secContactIn .titleArea {
    padding: 0 0 32px 0;
  }
  .secContact .secContactIn .titleArea .titleJp {
    font-size: clamp(16px, 5.12vw, 20px);
  }
  .secContact .secContactIn .titleArea .titleEn {
    font-size: clamp(20px, 13.1vw, 51px);
  }
  .secContact .secContactIn .linkArea .typeBox {
    padding: 0 0 32px 0;
  }
  .secContact .secContactIn .linkArea .typeBox .typeTitle {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 0 0 10px 0;
  }
  .secContact .secContactIn .linkArea .typeBox .typeMsg {
    font-size: 14px;
    padding: 0 0 24px 0;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton {
    padding: 14px 16px;
    max-width: 270px;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton .text {
    font-size: clamp(14px, 4.1vw, 16px);
    padding: 3px 0 0 6px;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton .arrow {
    width: 13.8%;
  }
}
@media print, screen and (min-width: 768px) {
  .secContact {
    padding: 220px 0 220px;
  }
  .secContact .secContactIn {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .secContact .secContactIn .titleArea {
    width: 41.7%;
  }
  .secContact .secContactIn .titleArea .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .secContact .secContactIn .titleArea .titleEn {
    font-size: clamp(40px, 5.42vw, 78px);
  }
  .secContact .secContactIn .linkArea {
    width: 56.5%;
    display: flex;
    justify-content: space-between;
  }
  .secContact .secContactIn .linkArea .typeBox {
    width: 47.5%;
    display: flex;
    flex-direction: column;
  }
  .secContact .secContactIn .linkArea .typeBox .typeTitle {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 0 0 16px 0;
  }
  .secContact .secContactIn .linkArea .typeBox .typeMsg {
    font-size: 14px;
    padding: 0 0 26px 0;
    flex-grow: 1;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton {
    padding: 14px 16px;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton:hover {
    background: #ffffff;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton:hover > * {
    filter: invert(1);
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton .text {
    font-size: clamp(14px, 1.11vw, 16px);
    padding: 3px 0 0 6px;
  }
  .secContact .secContactIn .linkArea .typeBox .typeButton .arrow {
    width: 13.8%;
  }
}
.modalBoxListArea .modalBox {
  display: none;
}
.modalBoxListArea .modalBox.on {
  display: block;
}
.modalBoxListArea .modalBox .modalTextArea {
  background: #ffffff;
}
.modalBoxListArea .modalBox .modalTextArea .titleJp {
  color: #E26522;
  text-align: center;
}
.modalBoxListArea .modalBox .modalTextArea .titleEn {
  text-align: center;
}
.modalBoxListArea .modalBox .modalTextArea .detailText {
  letter-spacing: 0.04em;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  .modalMain {
    width: min(82%, 450px);
  }
  .modalBoxListArea .modalBox .modalTextArea {
    padding: 16px 16px 16px 16px;
  }
  .modalBoxListArea .modalBox .modalTextArea .titleJp {
    font-size: clamp(16px, 6.15vw, 24px);
  }
  .modalBoxListArea .modalBox .modalTextArea .titleEn {
    font-size: 12px;
    padding: 0 0 8px 0;
  }
  .modalBoxListArea .modalBox .modalTextArea .detailText {
    font-size: clamp(14px, 4.1vw, 16px);
  }
}
@media print, screen and (min-width: 768px) {
  .modalMain {
    width: 640px;
  }
  .modalBoxListArea .modalBox .modalTextArea {
    padding: 16px 35px 16px 35px;
  }
  .modalBoxListArea .modalBox .modalTextArea .titleJp {
    font-size: clamp(16px, 1.8vw, 26px);
  }
  .modalBoxListArea .modalBox .modalTextArea .titleEn {
    font-size: 13px;
    padding: 0 0 14px 0;
  }
  .modalBoxListArea .modalBox .modalTextArea .detailText {
    font-size: clamp(14px, 1.11vw, 16px);
  }
}/*# sourceMappingURL=style.css.map */