.inter-regular {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400; /* Normal weight */
    font-style: normal;
    font-variation-settings: "slnt" 0;
}
.inter-bold {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700; /* Bold weight */
    font-style: normal;
    font-variation-settings: "slnt" 0;
}
/* フォントウェイト400で"Noto Sans JP"を適用するクラス */
.noto-sans-jp-normal {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
}

/* フォントウェイト700で"Noto Sans JP"を適用するクラス */
.noto-sans-jp-bold {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-style: normal;
}
/* フォントウェイト400（通常の太さ） */
.inter-normal {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400; /* 通常の太さ */
    font-style: normal;
    font-variation-settings: "slnt" 0;
}
/* フォントウェイト700（太字） */
.inter-bold {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700; /* 太字 */
    font-style: normal;
    font-variation-settings: "slnt" 0;
}

html,
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

article,
div,
span,
img,
a {
    display: block;
}

h1,
h2,
h3,
h4,
h5,
p,
a,
ul,
li,
span,
table,
tr,
td {
    font-family: "Inter", "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #707070;
    letter-spacing: 0.1em;
    line-height: 48pt;
}

ul,
li,
ol,
p,
h1,
h2,
h3,
h4,
h5 {
    list-style: none;
    margin: 0;
    padding: 0;
}

a,
a:visited {
    text-decoration: none;
    color: #707070;
}

p,
a,
td,
li {
    font-size: 16pt;
}

/*======================================================header======================================================*/

header {
    margin: 0 80px;
    padding-top: 64px;
    display: flex;
    justify-content: space-between;
}

header nav ul li a {
    font-size: 1em;
    font-weight: 200;
}

.headerLogoImg a img {
    width: 50%;
}

/*======================================================link-btn======================================================*/

.btnInner h3,
.btnInner p {
    display: flex;
}

.btnInner span {
    width: 16pt;
    height: 3px;
    background-color: #707070;
    position: relative;
    left: 40px;
    top: 30px;
}

.btnInner span::before {
    content: "";
    width: 8pt;
    height: 8pt;
    border-bottom: solid #707070 3px;
    border-right: solid #707070 3px;
    transform: rotate(-45deg);
    display: block;
    position: absolute;
    left: 7pt;
    top: -4pt;
}

.btn span {
    transition: transform 0.3s;
}

.btn:hover span {
    transform: translateX(10px);
}

/*======================================================sideMargin======================================================*/

.sideMargin {
    margin-right: 240px;
    margin-left: 240px;
}

/*======================================================footer======================================================*/

footer {
    margin-top: 160px;
    padding: 160px 0;
    background-color: #9a9898;
}

footer a,
footer p,
footer h3,
footer li {
    color: #fff;
}

footer a,
footer li,
footer p {
    font-size: 16pt;
    line-height: 40pt;
}

footer a:visited {
    color: #fff;
}

.footerInner {
    margin: 0 240px;
}

.footerTopConts {
    display: flex;
}

.companyInfo {
    margin-top: 64px;
}

.address ul {
    display: flex;
}

.address ul li:nth-child(1) {
    margin-right: 10px;
}

.footerNav {
    margin-left: 120px;
    display: flex;
}

.footerNav ul:nth-child(2) {
    margin-left: 120px;
}

.footerNav li {
    line-height: 64pt;
}

.footerUnderConts {
    margin-top: 120px;
}

.otherLink {
    text-align: center;
}

.otherLink a {
    text-align: center;
    display: inline-block;
    border-left: solid #fff 1px;
    border-right: solid #fff 1px;
    padding: 0 16px;
}

/*======================================================page======================================================*/

.mainVisual__img {
    height: calc(100vh - 432px);
    overflow: hidden;
    object-position: center;
    object-fit: cover;
}

.mainVisual__img img {
    object-fit: cover;
    object-position: center;
    height: 100%;
}
