@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400&display=swap');

body {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    color: #333;
    margin-bottom: 0 !important;
}

img {
    vertical-align: top;
}

a:visited {
    color: #333;
}


.grecaptcha-badge {
    visibility: hidden;
}

#masthead {
    position: relative;
    background: #1c2d40;
}

.hd-menu img {
    width: 110px;
}

.hd-menu {
    display: flex;
}

.hd-logo-area {
    width: 20%;
}

.hd-menu-area {
    width: 80%;
}

.hd-menu-area ul {
    display: flex;
    justify-content: flex-end;
}

.hd-menu-area ul li {
    text-align: center;
    font-size: 10px;
    padding: 10px 15px;
    line-height: 15px;
}

.hd-menu-area ul li a {
    color: #fff;
}

.hd-menu-area ul li strong {
    font-weight: 300;
    font-size: 13px;
    display: block;
}

.hd-menu-area ul li span {
    font-size: 10px;
    font-family: 'Lato', sans-serif;
    font-weight: 400;
}

.purchase-hd {
    position: absolute;
    background: #922037;
    top: 0;
    right: 0;
    width: 160px;
}

.purchase-hd a {
    display: block;
    color: #fff;
    text-align: center;
}

.purchase-hd p {
    text-align: center;
    font-size: 10px;
    padding: 10px 15px;
    line-height: 15px;
}

.purchase-hd span {
    font-size: 10px;
    font-family: 'Lato', sans-serif;
}

.purchase-hd strong {
    display: block;
    font-weight: 300;
    font-size: 13px;
}

.front-sd {
    position: relative;
}

.hd-slider .slick-prev {
    left: 85px;
    z-index: 1;
}

.hd-slider .slick-prev:before {
    font-family: "Font Awesome 5 Free";
    content: '\f053';
    font-weight: 900;
    font-size: 50px;
}

.hd-slider .slick-next:before {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    font-size: 50px;
}

.hd-slider .slick-prev:before,
.hd-slider .slick-next:before {
    color: #333;
}

.hd-slider li {
    vertical-align: top;
}

.hd-slider li img {
    margin: 0 auto;
}

.hd-slider .slick-next {
    right: 94px;
}

.front-news {
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 800px;
}

.front-news-box {
    display: flex;
    align-items: center;
}

.front-news-title {
    width: 30%;
    background: url(../img/top-news.jpg) no-repeat #1d2e3f;
    background-size: contain;
    background-position: right;
    color: #fff;
    height: 70px;
    display: grid;
    align-items: center;
    padding: 0 2rem;
}


.front-news-area {
    width: 70%;
    background: #fff;
    position: relative;
}



.front-news-title h2 {
    font-size: 90%;
}

.front-news-title h2 span {
    font-family: 'Lato', sans-serif;
    font-size: 170%;
    display: inline-block;
    margin-right: 20px;
    font-weight: 400;
}

.front-news-area .slick-prev {
    position: absolute;
    top: 20px;
    right: 20px;
    left: auto;
}

.front-news-area .slick-prev::before {
    font-family: "Font Awesome 5 Free";
    content: '\f0de';
    font-weight: 900;
    color: #1d2e3f;
}

.top-news-sd {
    padding: 22px;
    width: 100%;
    position: relative;
}

.front-news-area .slick-next {
    position: absolute;
    bottom: -4px;
    right: 20px;
    top: auto;
}

.front-news-area .slick-next:before {
    font-family: "Font Awesome 5 Free";
    content: '\f0d7';
    font-weight: 900;
    color: #1d2e3f;
}

.top-news-sd li a {
    display: inline-block;
    margin-left: 20px;
    color: #333;
    position: relative;
}

.top-news-sd li a::after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    margin-left: 10px;
}

.top-contents {
    margin: 0;
}

.top-contents h2,
.ft-area h2 {
    line-height: 1;
    color: #1c2d40;
}

.top-contents h2 span,
.ft-area h2 span {
    display: block;
    font-family: 'Lato', sans-serif;
    font-size: 200%;
    margin-bottom: 10px;
}

.top-ctk {
    background: url(../img/top-ctk.jpg) no-repeat;
    background-size: 730px;
    background-position: center left;
}

.top-ctk-inner {
    width: 40%;
    margin-left: auto;
    padding: 7rem 0;
}

.top-ctk-txt {
    background: rgb(28 45 64 / 70%);
    margin-top: 2rem;
    padding: 2rem;
    color: #fff;
}

.top-ctk-txt p {}

.top-ctk-txt a,
.top-stock a,
a.top-more,
.top-company-txt a {
    display: block;
    width: 200px;
    margin: 1rem auto 0;
    text-align: center;
    background: #922037;
    padding: 9px;
    border-radius: 2rem;
    font-size: 90%;
    color: #fff;
    font-weight: bold;
}

.top-contents section,
.ft-area section {
    margin-top: 3rem;
}

.top-stock {
    color: #fff;
    position: relative;
    height: 375px;
}

.top-stock h2 {
    text-align: center;
    color: #fff;
}

.top-stock p {
    margin: 2rem 0 0;
}

.top-stock a {
    margin: 2rem auto 0;
}

.top-stock .simpleParallax {
    position: absolute;
    z-index: 1;
}

.top-stock-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
    width: 100%;
    text-align: center;
}


.top-customers h2 {
    text-align: center;
}

.top-customer-box {
    margin-top: 2rem;
    display: grid;
    gap: 2%;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    clear: both;
    align-items: center;
    justify-content: space-between;
    align-content: center;
    position: relative;
}

.top-customer-txt {
    margin-top: 1rem;
    color: #727171;
}

.top-customer-txt h3 {
    font-size: 110%;
}

.top-customer-txt p {
    margin-top: .2rem;
}

.top-customer-txt span {
    margin-right: 10px;
}

a.top-more {
    margin-top: 3rem;
    color: #fff;
}

.top-purchase {
    height: 970px;
    position: relative;
}

.top-purchase .simpleParallax {
    position: absolute;
    z-index: 1;
}

.top-purchase-area {
    height: auto;
    z-index: 2;
    width: 100%;
    position: absolute;
    padding: 4rem 0;
}

.top-purchase-txt h3 span {
    background: linear-gradient(transparent 60%, #7fbfff 60%);
    font-weight: bold;
}

.top-purchase-box {
    background: rgb(28 45 64 / 70%);
    padding: 2rem;
    text-align: center;
    color: #fff;
    margin-bottom: 2rem;
}

.top-purchase-box h2 {
    color: #fff;
    margin-bottom: 1rem;
}

.top-purchase-sd-area h3 {
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    margin-bottom: 2rem;
}


.top-purchase-sd {
    background: rgb(255 255 255 / 70%);
    padding: 2rem;
}

.top-purchase-sd li {
    padding: 0 10px;
}



.top-purchase a.top-more {
    margin-top: 1rem;
}

.top-company {
    background: url(../img/top-company-bg.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    padding: 3rem 0;
    margin-top: 0 !important;
}

.top-company h2 {
    text-align: center;
}

.top-company-inner {
    width: 50%;
    padding: 2rem;
}

.top-company-inner img.top-wedge {
    width: 430px;
    display: block;
    margin: 0 auto;
}

.top-company-inner img.syacho-interview {
    display: block;
    margin: 2rem auto 0;
}

p.top-company-catch {
    border-bottom: 4px solid #1d2e3f;
    text-align: center;
    margin-bottom: 2rem;
    font-size: 110%;
    padding-bottom: .5rem;
}

.top-company-txt {
    background: rgb(28 45 64 / 70%);
    margin-top: 2rem;
    padding: 2rem;
    color: #fff;
}

.top-company-txt p {}


.top-company-txt a {}

.top-blog {}

.top-blog h2 {
    text-align: center;
}

ul.top-blog-box {
    width: 100%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    margin-top: 2rem;
}

ul.top-blog-box li {
    width: 50%;
    padding: 1rem;
}

.top-blog-inner {
    padding: 1rem;
    background: rgb(28 45 64 / 70%);
    color: #fff;
}


.top-blog-inner h3 {
    font-size: 110%;
}

.top-blog-inner p {
    text-align: right;
    font-size: 90%;
}

.top-blog-inner .col-lg-8 a {
    display: block;
    background: #1d2e3f;
    text-align: center;
    padding: 10px;
    border-radius: 1rem;
    font-size: 90%;
    width: 200px;
    margin: 1rem auto 0;
    color: #fff;
}

.ft-insta h2 {
    text-align: center;
    color: #fff;
}

.ft-insta {
    position: relative;
    margin-top: 0 !important;
}

.ft-insta-prp {}

.ft-insta-box {
    width: 100%;
    top: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.ft-insta-inner {
    margin-top: 2rem;
}

.ft-contact h2 {
    text-align: center;
}

.ft-contact-box {
    margin: 2rem auto 0;
    width: 80%;
    display: flex;
    justify-content: space-between;
}

.ft-contact-inner {
    width: 300px;
    margin: 0 1rem;
}

.ft-contact-inner a {
    display: block;
    text-align: center;
    background: #921f37;
    color: #fff;
    border-radius: 1rem;
    padding: 10px;
}

.ft-contact-inner a i {
    margin-right: 10px;
}

.ft-ac {
    text-align: center;
}

.ft-ac h2 {
    margin-bottom: 1rem;
}

.ft-map {
    margin-top: 2rem;
}

.site-info {
    background: #1c2d40;
}

.ft-menu-area ul {
    display: flex;
    font-size: 12px;
}

.ft-menu-area li {
    margin-right: 12px;
    color: #fff;
}


.ft-menu-area li a {
    color: #fff;
}

.ft-menu-area li a:after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    margin-left: 6px;
}

.ft-menu-area {
    padding: 15px 0;
    line-height: 22px;
}

.site-info img {
    width: 212px;
}

.copy p {
    text-align: center;
    font-size: 10px;
    padding: 5px 0;
    color: #777;
}

.hd-txt {
    position: relative;
}

.hd-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.3), 0px 0px 11px #979797;
}

.hd-txt p {
    font-family: 'Lato', sans-serif;
    font-size: 2.5rem;
    color: #fff;
}

.hd-txt h1,
.hd-txt p.h1 {
    text-align: center;
    color: #fff;
    font-size: 1.2rem;
}

.hd-txt p.h1 {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}

.breadcrumb-area {
    background: #1d2e3f;
    color: #fff;
}

#breadcrumb {
    padding: .5rem 0;
    font-size: 12px;
}

#breadcrumb ul {
    display: flex;
}

#breadcrumb li {
    margin-right: 10px;
}

#breadcrumb li::after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    margin-left: 10px;
}

#breadcrumb li:last-child::after {
    display: none;
}

#breadcrumb a {
    text-decoration: underline;
    color: #fff;
}

.page-area {
    margin-bottom: 0;
}

.page-area .entry-content {
    margin-top: 0;
}

.blog-a-area {
    display: flex;
    flex-wrap: wrap;
    padding: 2rem;
    background: #f2f2f2;
    margin-top: 2rem;
}

.blog-a-img {
    width: 15%;
    margin-bottom: 2rem;
}

.blog-a-text {
    width: 35%;
    margin-bottom: 2rem;
    padding: .5rem 2rem;
}

.blog-a-text h2 {
    font-size: 1.2rem;
    font-weight: 600;
}

.blog-a-text p {
    margin-top: .5rem;
}

.blog-a-text a {
    display: block;
    margin-top: 1rem;
    border: 1px solid #1d2e3f;
    width: 50%;
    text-align: center;
    padding: 5px;
    font-size: 90%;
    border-radius: 1rem;
}

.pagenation {
    width: 100%;
}

.pagenation ul {
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagenation li a {
    background: #1d2e3f;
    margin: 0 10px;
    padding: 10px 20px;
    color: #fff;
}

.pagenation li.active {
    background: #476b8c;
    margin: 0 10px;
    padding: 7px 20px;
    color: #fff;
}

.pagenation li a {
    color: #fff;
}

.post-page {
    margin-top: 2rem;
    margin-bottom: 3rem;
    padding: 2rem;
    background: #f8f8f8;
}

.post-page h1 {
    font-size: 1.3rem;
}

.post-page header {
    border-bottom: 1px solid #1e2f3f;
    padding-bottom: 10px;
}

.post-page header p {
    margin-top: 10px;
}

.post-page header p i {
    margin-right: 10px;
}

.post-page .entry-content {
    margin-top: 10px;
}

.nav-previous a,
.nav-next a {
    padding: 10px 15px;
    background: #1e2f3f;
    font-size: 90%;
    color: #fff;
}

.nav-previous a::before {
    font-family: "Font Awesome 5 Free";
    content: '\f053';
    font-weight: 900;
    margin-right: 5px;
}

.nav-next a::after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    margin-left: 5px;
}

.customers-a-area {
    padding: 1rem;
    background: #f2f2f2;
    margin-top: 2rem;
    display: flex;
    flex-wrap: wrap;
}

.customer-a-box {
    width: 25%;
    padding: 1rem;
}

.customer-a-txt {
    margin-top: .5rem;
}

.customer-a-txt h2 {
    font-weight: bold;
}

.customer-a-txt p {
    font-size: 85%;
    margin-top: 5px;
}

.customer-a-txt span {
    margin-right: 10px;
}

.customer-a-txt p span:last-child {
    margin: 0;
}

.customer-a-txt a {
    display: block;
    margin: .5rem auto 0;
    border: 1px solid #1d2e3f;
    width: 90%;
    text-align: center;
    padding: 5px;
    font-size: 90%;
    border-radius: 1rem;
}

.customers-a-area .pagenation {
    padding: 1rem 0;
}

ul.customer-sd {}

ul.customer-sd li {
    padding: 0 10px;
}

ul.customer-sd .slick-prev {
    left: 15px;
    z-index: 1;
}

ul.customer-sd .slick-next {
    right: 15px;
}

.customer-txt h1 {
    font-size: 1.2rem;
    margin-bottom: 1rem;
}

.customer-txt h1 span {
    margin-right: 10px;
}

.customer-txt h1 span:last-child {
    margin-right: 0;
}

.customer-txt table {}

.customer-txt th,
.customer-txt td {
    padding: 10px;
}

.customer-txt th {
    width: 30%;
    text-align: center;
    font-weight: normal;
}

.customer-txt tr:nth-child(odd) {
    background-color: #e6e6e6;
}

.customer-txt h2 {
    margin-top: 1rem;
    font-size: 1.1rem;
    margin-bottom: .5rem;
}

.customer-txt p {
    font-size: 90%;
}

.customer-other h3 {
    text-align: left;
    margin: 2rem 0;
    font-size: 1.2rem;
    border-left: 5px solid #1e2f3f;
    padding-left: 10px;
}

.page-inner {
    padding: 1rem;
    background: #f2f2f2;
    margin-top: 2rem;
    display: flex;
    flex-wrap: wrap;
}

.normal-inner {
    padding: 2rem;
    background: #f2f2f2;
    margin-top: 2rem;
}

.catch-box {}

.catch-box p {
    text-align: center;
    font-size: 18px;
    line-height: 35px;
}

a.gaibu {
    display: block;
    width: 260px;
    text-align: center;
    margin: 2rem auto 0;
    background: #004493;
    color: #fff;
    padding: 10px;
    border-radius: 1rem;
    box-shadow: 0px 5px 0 #000;
}

.gallery-box {
    display: flex;
    grid-gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
    margin: 2rem 0;
}


.gallery-inner {
    width: calc(100% / 4 - 1rem);
}

p.eng-catch {
    font-family: 'Lato', sans-serif;
    font-size: 2.5rem;
    line-height: normal;
    margin-bottom: 1rem;
    color: #1e2f3f;
    letter-spacing: 2px;
}

p.eng-catch span {
    background: linear-gradient(transparent 60%, #6cf 60%);
}

.normal-page h2 {
    margin: 3rem 0 2rem;
    font-size: 1.7rem;
    text-align: center;
    background: #1e2f3f;
    color: #fff;
    padding: 15px 0;
}

.taisetsu-box,
.bs-lk {
    display: flex;
    grid-gap: 1rem;
    justify-content: center;
    margin: 2rem 0;
}

.bs-lk {
    margin-bottom: 0;
}

.taisetsu-inner,
.bs-lk-box {
    width: calc(100% / 3 - 1rem);
}

.bs-lk a {
    display: block;
    margin: 2rem 0 0;
    text-align: center;
    border: 2px solid #1f303f;
    padding: 1rem;
    background: #fff;
}

.bs-lk a:after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    margin-left: 1rem;
}

.gt-box {
    background: url(../img/tencho.jpg) no-repeat;
    background-position: right top;
    background-size: 950px;
    padding: 3rem 0 3rem 0;
}

.bt-inner {
    width: 50%;
    background: #fff;
    padding: 2rem;
}

.bt-inner p,
.ceo-inner p {
    font-size: 1.2rem;
    line-height: 35px;
}

.bt-inner p.name,
.ceo-inner p.name {
    text-align: right;
    font-size: 100%;
}

.bt-inner p.name span,
.ceo-inner p.name span {
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin-left: 1rem;
    display: inline-block;
    font-size: 120%;
}

.shop-info table {
    width: 80%;
    margin: 0 auto;
}

.shop-info th,
.shop-info td {
    vertical-align: middle;
    border-bottom: 5px solid #fff;
    padding: 1rem;
}

.shop-info th {
    font-weight: 300;
    width: 30%;
    border-color: #921f37;
}

.company-catch {
    position: relative;
}

.company-img {
    position: relative;
}

.company-txt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    width: 100%;
    text-align: center;
    font-size: 1.2rem;
    line-height: 40px;
}

.company-logo {
    position: absolute;
    top: 1rem;
    left: 1rem;
    width: 200px;
}

.company-logo2 {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 90px;
}

.company-logo3 {
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    width: 100px;
}

.company-logo4 {
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    width: 100px;
}

.group-box {
    display: flex;
    grid-gap: 1rem;
    flex-wrap: wrap;
    padding: 0 3rem;
}

.group-box ul {
    width: 280px;
    margin: 2rem auto 0;
}

.group-box li {
    line-height: 30px;
    border-bottom: 1px solid;
    padding: 0 1rem 0.5rem;
    margin-bottom: 0.5rem;
}

.group-box li a {
    display: block;
    position: relative;
}

.group-box li a::after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.group-box img {
    display: block;
    width: 280px;
    margin: 0 auto;
}

.group-top {
    width: 100%;
}

.group-inner {
    width: calc(100% / 2 - 1rem);
    margin-top: 2rem;
}

.group-top a {
    display: block;
    width: 200px;
    margin: 2rem auto 0;
    background: #921f37;
    text-align: center;
    padding: 5px 10px;
    border-radius: 1rem;
    color: #fff;
}

.ceo-box {
    background: url(../img/ceo.jpg) no-repeat;
    background-position: right top;
    background-size: 380px;
    padding-top: 6rem;
    position: relative;
}

.ceo-inner {
    width: 60%;
    background: #fff;
    padding: 2rem;
}

.ceo-name {
    position: absolute;
    bottom: 9rem;
    right: 0rem;
    width: 230px;
}

.ceo-interview {
    position: absolute;
    right: 0;
    bottom: 0;
}

.fmenu-area {
    align-items: center;
}

.contact-ft p {
    text-align: center;
}

.contact-ft a {
    display: block;
    margin-top: 2rem;
    background: #4caf50;
    text-align: center;
    padding: 10px;
    border-radius: 1rem;
    color: #fff;
}

.contact-ft a i {
    margin-right: 10px;
}

.contact-page table {
    width: 80%;
    margin: 2rem auto 0;
}

.contact-page th,
.contact-page td {
    padding: 1rem;
    border-bottom: 5px solid #ccc;
    vertical-align: middle;
}

.contact-page th {
    border-color: #921f37;
    position: relative;
    width: 30%;
    font-weight: 300;
}

.contact-page th span {
    position: absolute;
    top: 50%;
    right: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    background: #f44336;
    color: #fff;
    padding: 2px 10px;
    font-size: 11px;
}

input.wpcf7-submit {
    display: block;
    line-height: normal;
    margin: 2rem auto 0;
    width: 260px;
    text-align: center;
    border: none;
    background: #ffeb3b;
    font-size: 1.2rem;
    font-weight: bold;
}

textarea,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
    padding: 0.5rem;
}

select {
    -moz-appearance: menulist;
    -webkit-appearance: menulist;
    padding: 0.5rem;
}

.contact-page th span.nini {
    background: #2196f3;
}

.komoku .wpcf7-list-item {
    display: block;
}

.info-area {
    background: #182d40;
    color: #fff;
    padding: 4rem;
}

.info-area h2 {
    text-align: center;
    font-size: 1.5rem;
}

.info-area ul {
    width: 700px;
    margin: 2rem auto 0;
    line-height: 35px;
    border: 3px solid #fff;
    padding: 2rem;
}

.info-area li {
    position: relative;
}

.info-area a {
    display: inline-block;
    margin-left: 2rem;
    color: #fff;
}

.info-area a:hover {
    color: #fff;
}

.info-area a::after {
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.info-area time {
    font-family: 'Lato', sans-serif;
    letter-spacing: 2px;
}

.top-purchase-txt {
    color: #000;
    background: #ffeb3b;
    padding: 2rem;
}

.top-purchase-txt h2 {
    text-align: center;
}

.top-purchase-txt h3 {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin: 3rem 0;
}

ul.top-purchase-txt-area {
    display: flex;
    grid-gap: 2rem;
}

.top-purchase-txt-area li {
    width: calc(100% / 3);
}

.top-purchase-txt-area h4 {
    font-size: 1.2rem;
    font-weight: bold;
}

.top-purchase-txt-area p {
    margin-top: 1rem;
    font-size: 110%;
}

.top-purchase-txt-area p span {
    display: block;
    font-size: 70%;
}

.top-purchase-txt-area img {
    margin-bottom: 2rem;
    color: #ff9800;
    filter: drop-shadow(5px 5px 0px #ff9800);
}

p.nikkei {
    text-align: center;
    font-size: 12px;
    display: block;
    margin-top: 1rem;
}

p.nikkei a {
    text-decoration: underline;
    color: #921f37;
    display: inline-block;
    margin-left: 10px;
}

.timeline {
    list-style: none;
    width: 90%;
    margin: 0 auto;
}

.timeline>li {
    margin-bottom: 30px;
}

.timeline-content h3 {
    font-size: 1.2rem;
    margin: 1rem 0;
}

.timeline p {
    font-size: 1.2rem;
}

/* for Desktop */
@media (min-width : 640px) {
    .timeline>li {
        overflow: hidden;
        margin: 0;
        position: relative;
    }

    .timeline-date {
        width: 10%;
        float: left;
        margin-top: 1rem;
        font-size: 1.2rem;
    }

    .timeline-content {
        width: 90%;
        float: left;
        border-left: 3px #1f303f solid;
        padding-left: 30px;
    }

    .timeline-content:before {
        content: '';
        width: 12px;
        height: 12px;
        background: #921f37;
        position: absolute;
        left: 9.5%;
        top: 24px;
        border-radius: 100%;
    }
}

.infsd {
    margin: 3rem 0 0;
    position: relative;
}

.infiniteslide img {
    width: 200px;
}

.infiniteslide li{

}

.in-mask{
        width: 100%;
    height: 266.8px;
    background: rgb(0 0 0 / 39%);
    position: absolute;
    top: 0;
}

.no-entry{
    width: 100%;
    position: absolute;
    margin-top: 1rem;
}

.no-entry p{
    text-align: center;
}

.no-results{
        width: 100%;
}

.no-results h1{
        border-bottom: 5px solid #1c2d40;
    padding-bottom: 1rem;
    font-size: 1.4rem;
}

.no-results .page-content{
    margin-top: 1rm;
}

.error-404{
        margin-top: 3rem;
    text-align: center;
}

.error-404 a{
        color: #fff;
    display: block;
    width: 200px;
    margin: 1rem auto 0;
    text-align: center;
    background: #1c2d40;
    padding: 10px;
    font-size: 90%;
}

.post-page .entry-content p{
	margin-top:1rem;
}

.sitemap-area ul{
	    list-style: disc;
    margin-left: 15px;
    line-height: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
}

.sitemap-area li{}

.sitemap-area a{}