/*
Theme Name: ミノリアライズ
*/
@charset "UTF-8";

body {
  text-align: center;
  color: #515151;   
  font-family: Noto Sans JP;
  background-color: #fff;
  overflow-x: hidden;
  word-wrap: break-word
}

img {
  max-width: 100%;
}

p {
font-size: 16px;
text-align: left;
}

h1 {
 font-size: 36px;
 font-weight: 700;
 line-height: 57.60px;
 text-align: left;
 margin-top: 3%;
}

h2 {
display: inline-block;
font-size: 66px;
font-family: Montserrat;
font-weight: 600;
color: #EDF1F5;
line-height: 82px;
letter-spacing: 4.10px;
margin-bottom: 50px;
position: relative;
}

h2 small {
font-size: 20px;
font-weight: 700;
color: #515151;
line-height: 20px;
letter-spacing: 1px;
position: absolute;
bottom: 10px;
left: 0;
}

h3 {
color: #515151;
font-size: 24px;
font-weight: 700;
text-align: left;
line-height: 38.40px;
}

h4 {
color: #515151;
font-size: 16px;
font-weight: 400;
text-align: left;
line-height: 25.60px;
}


.SP-only {
  display: block;
}

.PC-only {
  display: none;
}


.cta {
  width: 100%;
  margin: 40px auto 0;
  position: relative;
  transition: .5s;
}

.cta:hover {
  scale: 1.05;
}

.cta a {
  display: block;
  width: 100%;
  height: 80px;
  border-radius: 60px;
  box-shadow: 0 3px #06307d2f;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 97px;
  overflow: hidden;
}

.cta p {
  font-size: 20px;
  text-align: center;
  color: #515151;
  font-weight: bold;
  box-shadow: 0 1px 0 #fff;
  margin: 0 auto;
}

.cta img {
  width: 24px;
  height: 24px;
}

/* header */
header {
    width: 100%;
    height: 80px;
    border-bottom: 1px solid #e3e3e3;
}

header .inner {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px;
}

header .logo {
    width: 158px;
    height: 59px;
}


/* menuバー */
.menu-wrapper {
  width: 100%;
  height: 17px;
  position: relative;
}

.menu-wrapper .hamburger__btn {
  z-index: 101;
  width: 30px;
  height: 17px;
  position: absolute;
  top: 0;
  right: 0;
}
.menu-wrapper .bar {
  width: 30px;
  height: 3px;
  display: block;
  position: absolute;
  left: 50%;
  background-color: #515151;
  transition: all 0.3s ease;
}

.menu-wrapper .bar-top {
  top: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.menu-wrapper .bar-center {
  top: 7px;
  transform: translateX(-50%);
}
.menu-wrapper .bar-bottom {
  bottom: 0;
  transform: translateX(-50%);
}
.menu-wrapper .hamburger__btn.close .bar-top {
  transform: translate(-50%, 10px) rotate(45deg);
}
.menu-wrapper .hamburger__btn.close .bar-middle {
  opacity: 0;
}
.menu-wrapper .hamburger__btn.close .bar-center {
  display: none;
}
.menu-wrapper .hamburger__btn.close .bar-bottom {
  transform: translate(-50%, -5px) rotate(-45deg);
}

/* MENU LIST */
.menu-wrapper .menu-lists {
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  opacity: 0;
  visibility: hidden;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  text-align: center;
  transition:
    opacity 0.5s ease,
    visibility 0.5s ease;
  z-index: 100;
}

.menu-wrapper .menu-lists::-webkit-scrollbar {
  display: none;
}

.menu-wrapper .menu-lists.show {
  opacity: 1;
  visibility: visible;
  margin-top: 50px;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.menu-wrapper .nav__list {
  max-width: 840px;
  padding: 60px 20px;
  margin: 0 auto;
  list-style: none;
  border-top: 1px solid #eee;
  background-color: #EDF1F5;
}

.menu-wrapper .nav__link {
  display: block;
  font-weight: bold;
  text-align: left;
  padding: 15px 0;
  text-decoration: none;
  border-bottom: 1px solid #EEE7E3;
  position: relative;
}

.menu-wrapper .nav__link-service:after {
  content: "^";
  font-size: 20px;
  color: #515151;
  position: absolute;
  top: 20%;
  padding-right: 10px;
  transform: rotate(180deg);
}

.menu-wrapper .nav__link:last-child {
  border-bottom: none;
}

.menu-wrapper .nav-second .nav__link {
  width: 180px;
  height: 50px;
  background-color: #515151;
  color: #fff;
  font-weight: bold;
  text-align: center;
}

.menu-wrapper .nav__link-contact {
  max-width: 345px;
  width: 500px;
  height: 70px;
  color: #fff;
  background-color: #515151;
  border-radius: 36px;
  margin: 0 5%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
}



/* -------------------------------------------------
   フェードインアニメーション
--------------------------------------------------- */

/* navアイテム：初期状態 */
.nav__item {
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.5s ease;
}

/* メニューが開いたとき */
.menu-lists.show .nav__item {
  opacity: 1;
  transform: translateY(0);
}

/* 順番に表示 */
.menu-lists.show .nav__item:nth-child(1) {
  transition-delay: 0.1s;
}
.menu-lists.show .nav__item:nth-child(2) {
  transition-delay: 0.2s;
}
.menu-lists.show .nav__item:nth-child(3) {
  transition-delay: 0.3s;
}
.menu-lists.show .nav__item:nth-child(4) {
  transition-delay: 0.4s;
}
.menu-lists.show .nav__item:nth-child(5) {
  transition-delay: 0.5s;
}
/* -------------------------------------------------
   フェードインアニメーション終わり
--------------------------------------------------- */
/* header終わり */

/* hero */
.top {
  padding: 0 5%;
  margin-bottom: 30px;
}

.top .rectagle {
    width: 100%;
    height: 200px;
    margin-top: -18%;
}

.top .line {
  width: 100%;
  height: 87px;
  background-color: #d9d9d9;
  margin-top: 20px;
}
/* hero終わり */

/* service */
.service {
  width: 100%;
  height: 100%;
  padding: 0 5%;
  margin-bottom: 50px;
}

.service .inner {
  width: 100%;
  height: 100%;
  background-color: #f8f9fd;
  padding: 50px 10px;
}

.service ul {
  width: 100%;
  height: 100%;
}

.service li {
  width: 100%;
  height: 100%;
  margin-bottom: 50px;
}

.service li:last-child {
  margin-bottom: 0;
}

.service li img {
  width: 100%;
  height: 215px;
  object-fit: cover;
  margin-bottom: 20px;
}

.service li h4 {
  font-size: 20px;
  margin-bottom: 20px;
}

.service li p {
  line-height: 28.80px;
  margin-bottom: 20px;
}

.service .cta {
  width: 100%;
  height: 100%;
}

.service .cta a {
  width: 250px;
  height: 56px;
  border: 3px solid #515151;
  border-radius: 12px;
  gap: 50px;
}

.service .cta p {
  font-size: 14px;
  line-height: 50px;
  margin: 0;
}

.service .cta img {
  width: 24px;
  height: 24px;
  margin: 0;
}
/* service終わり */

/* company */
.company {
  width: 100%;
  height: 100%;
  padding: 0 5%;
  margin-bottom: 125px;
}

.company img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  margin-bottom: 30px;
}

.company h3 {
font-size: 16px;
font-weight: 400;
color: #515151;
line-height: 28.80px;
letter-spacing: 0.80px;
margin-bottom: 20px;
}

.company .cta {
  width: 100%;
  height: 100%;
}

.company .cta a {
  width: 250px;
  height: 56px;
  border: 3px solid #515151;
  border-radius: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}

.company .cta p {
  font-size: 14px;
  line-height: 50px;
  margin: 0;
}

.company .cta img {
  width: 24px;
  height: 24px;
  margin: 0;
}
/* company終わり */

/* news */
.news {
  width: 100%;
  height: 100%;
  padding: 0 5%;
  margin-bottom: 125px;
}

.news ul {
  width: 100%;
  height: 100%;
}

.news li {
  width: 100%;
  height: 100%;
  margin-bottom: 25px;
  border: 1px solid #c4c4c4;
  border-radius: 12px;
  padding: 23px 35px;
}

.news li .detail {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.news .date {
  font-size: 14px;
  font-weight: 400;
  color: #c4c4c4;
  line-height: 14px;
}

.news .category {
  font-size: 10px;
  font-weight: 400;
  line-height: 10px;
  padding: 2px 6px;
  border: 1px solid #515151;
  border-radius: 36px;
}

.news h4 {
  font-size: 14px;
  font-weight: 500;
  line-height: 19.60px;
}

.news .cta {
  width: 100%;
  height: 100%;
}

.news .cta a {
  width: 250px;
  height: 56px;
  border: 3px solid #515151;
  border-radius: 12px;
  line-height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 97px;
  margin: 0 auto;
}

.news .cta p {
  font-size: 14px;
  line-height: 50px;
  margin: 0;
}

.news .cta img {
  width: 24px;
  height: 24px;
  margin: 0;
}
/* news終わり */

/* contact */
.contact {
  width: 100%;
  height: 100%;
}

.contact .inner {
  width: 100%;
  height: 100%;
  background-color: #69D5D3F2;
  padding: 60px 15px;
}

.contact .box-area {
  padding: 30px 10px;
  background-color: #FFFFFF80;
  border-radius: 36px;
}

.contact h2 {
  font-size: 44px;
  margin-bottom: 10px;
}

.contact h3 {
  font-size: 16px;
  font-weight: 400;
  color: #fff;
  line-height: 28.80px;
  margin-bottom: 20px;
}

.contact ul {
  width: 100%;
  height: 100%;
}

.contact li {
  width: 100%;
  height: 100%;
  margin: 0 auto 20px;
}

.contact li a {
  width: 300px;
  height: 75px;
  border-radius: 12px;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 0 auto;
}

.contact li a:hover {
  background-color: #EDF1F5;
}

.contact li a p {
  font-size: 16px;
  font-weight: 700;
  line-height: 16px;
}

.contact li a img {
  width: 24px;
  height: 24px;
}
/* contact終わり */

/* footer */
footer {
  width: 100%;
  height: 100%;
  background-image: url(image/footer-bg.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

footer .inner {
  padding: 30px 5%;
}

footer h2 {
  display: block;
  font-size: 24px;
  font-weight: 700;
  color: #515151;
  text-align: left;
  line-height: 24px;
  letter-spacing: 1.20px;
  margin-bottom: 15px;
}

footer .address {
  margin-bottom: 20px;
}

footer .address p {
  font-weight: bold;
}

footer nav {
  width: 100%;
}

footer nav ul {
  width: 100%;
  height: 100%;
}

footer nav li {
  width: 100%;
  border-bottom: 1px solid #515151;
  padding: 20px 0 10px;
  margin-bottom: 20px;
}

footer nav li a {
  display: block;
  text-align: left;
}

footer .overview {
  width: 100%;
}

footer .overview li {
  text-align: left;
  margin-bottom: 20px;
}

footer .copyright {
  text-align: left;
}
/* footer終わり */

/* プライバシーポリシー */
.privacy,
.disclaimers,
.legal {
  width: 100%;
  height: 100%;
  margin-top: 30px;
  margin-bottom: 50px;
}

.privacy .inner,
.disclaimers .inner,
.legal .inner {
  max-width: 1000px;
  width: 100%;
  height: 100%;
  padding: 0 5%;
  margin: 0 auto;
}

.privacy h2,
.disclaimers h2,
.legal h2 {
  display: block;
  font-size: 36px;
  color: #515151;
  margin-right: auto;
  text-align: left;
}

.privacy h2 small,
.disclaimers h2 small,
.legal h2 small {
  bottom: -5px;
}

.privacy h3,
.disclaimers h3,
.legal h3 {
  font-size: 16px;
  color: #fff;
  background-color: #515151;
  padding-left: 10px;
  margin-bottom: 20px;
}

.privacy p,
.disclaimers p,
.legal p {
  line-height: 32px;
  margin-bottom: 30px;
}

.privacy p:last-child,
.disclaimers p:last-child,
.legal p:last-child {
  margin-bottom: 0;
}
/* プライバシーポリシー終わり */

/* *******************************
      レスポンシブ
********************************** */
@media (min-width: 1024px) {

h1 {
 font-size: 48px;
 line-height: 76.80px;
}

h2 {
display: inline-block;
font-size: 100px;
font-weight: 600;
line-height: 100px;
letter-spacing: 5px;
}

h2 small {
font-size: 20px;
font-weight: 700;
color: #515151;
line-height: 20px;
letter-spacing: 1px;
position: absolute;
bottom: 10px;
left: 0;
}

h3 {
color: #424242;
font-size: 28px;
font-weight: 700;
text-align: left;
line-height: 44.80px;
}

h4 {
color: #424242;
font-size: 16px;
font-weight: 400;
text-align: left;
line-height: 25.60px;
}


.SP-only {
  display: none;
}

.PC-only {
  display: block;
}

.cta {
  width: 600px;
}

.cta a {
  width: 600px;
  height: 100px;
  font-size: 28px;
}

.cta p {
  height: 50px;
  font-size: 24px;
}

.pan {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  margin-bottom: 100px;
}

.pan a {
  color: #0094EB;
  border-bottom: 1px solid #0094EB;
}

/* header */
.menu-wrapper-pc {
  width: 100%;
  height: 80px;
}

.menu-wrapper-pc .menu-lists {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 30px;
  opacity: 1;
  position: relative;
}

.menu-wrapper-pc .nav__list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 50px;
  border-top: none;
  background-color: initial;
  margin-bottom: 30px;
}

.nav__item {
  position: relative;
  opacity: 1;
}

.menu-wrapper-pc .nav-second {
  width: 160px;
  height: 80px;
  box-shadow: 6px 3px 3px #0000002f;
  background-color: #fff;
  position: absolute;
  top: 150%;
  display: none;
}

.menu-wrapper-pc .nav-second .nav__link {
  display: block;
  font-weight: bold;
  width: 140px;
  text-align: left;
  padding: 12px 0 10px 12px;
  background-color: #fff;
  border-bottom: 1px solid #E3E3E3;
}

.menu-wrapper-pc .nav__link-contact {
  max-width: 120px;
  width: 100%;
  height: 35px;
  color: #fff;
  background-color: #515151;
  border-radius: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
}

.menu-wrapper-pc .nav__item:hover .nav-second {
    display: block !important;
}
/* header終わり */

/* hero */
.top .inner {
  position: relative;
}

.top .rectagle {
  display: block;
  max-width: 80%;
  margin-left: auto;
  margin-top: 30px;
}

.top .frame {
  width: 100%;
  height: 100%;
  text-align: left;
}

.top .title {
  position: absolute;
  top: 30%;
  left: 0;
}

.top h3 {
  margin-bottom: 20px;
}
/* hero終わり */

/* service */
.service .inner {
  padding: 100px 8%;
}

.service h2 small {
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.service li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 50px;
}

.service li:nth-child(odd) {
  flex-direction: row-reverse;
}

.service li img {
  width: 50%;
  height: 100%;
  border-radius: 12px;
}

.service li .content {
  width: 50%;
}
/* service終わり */

/* company */
.company {
  padding: 0 12%;
}

.company .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}

.company img {
  width: 50%;
  height: 300px;
  margin: 0;
}

.company .content {
  width: 50%;
  text-align: left;
}

.company h2 {
  font-size: 66px;
}
/* company終わり */

/* news */
.news h2 small {
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
/* news終わり */

/* contact */
.contact .box-area {
  max-width: 1230px;
  padding: 50px 80px;
  margin: 0 auto;
}

.contact .title {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  margin-bottom: 50px;
}

.contact h2 {
  font-size: 70px;
  margin: 0;
}

.contact h3 {
  width: 39%;
  margin: 0;
}

.contact ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}

.contact li a {
  margin: 0;
}
/* contact終わり */

/* footer */
footer .inner {
  padding: 50px 5%;
}

footer .content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 40px;
}

footer nav {
  width: 24%;
}

footer .overview ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}

footer .overview li {
  padding-right: 40px;
  border-right: 1px solid #515151;
}

footer .overview li:last-child {
  border: none;
}

footer .copyright {
  text-align: center;
}
/* footer終わり */

/* プライバシーポリシー 免責事項　特商法 */
.privacy,
.disclaimers,
.legal {
  margin-top: 50px;
  margin-bottom: 100px;
}

.privacy h2,
.disclaimers h2,
.legal h2 {
  display: block;
  font-size: 56px;
  color: #515151;
  margin-right: auto;
  text-align: left;
}

.privacy h2 small,
.disclaimers h2 small,
.legal h2 small {
  bottom: -5px;
}
/* プライバシーポリシー　免責事項　特商法終わり */



}