@charset "utf-8";

/* Reset
--------------------------*/
* {
 margin: 0;
 padding: 0;
 box-sizing: border-box;
}
body {
 line-height: 1;
 font-family: "Noto Sans JP", sans-serif;
 color: #2F2725;
 /* background-color: #f6f5f5f5; */
 box-sizing: border-box;
}
ul {
 list-style: none;
}
a {
 display: block;
 text-decoration: none;
 color: inherit;
}
img {
 max-width: 100%;
 vertical-align: bottom;
}


/* 共通
--------------------------*/
#pc {
 display: block;
}
#sp {
 display: none;
}

.works_container {
 max-width: 1000px;
 margin: 0 auto 200px;
}
.feature h2,
.process h2,
.point h2,
.review h2 {
 font-family: "Poppins", sans-serif;
 /* font-family: "Lato", sans-serif; */
 font-weight: 500;
 letter-spacing: 3px;
 font-size: 55px;
 padding-top: 150px;
}
.process h3,
.point h3,
.review h3 {
 font-size: 28px;
 padding-top: 120px;
 margin-bottom: 75px;
}
h3 span {
 font-size: 48px;
 /* font-family: "Train One", system-ui; */
 font-family: "Roboto Condensed", sans-serif;
 font-weight: 500;
 padding-right: 15px;
}
.process h4,
.point h4,
.review h4 {
 font-size: 22px;
 margin-bottom: 30px;
 margin-top: 55px;
 font-weight: 500;
}
.process p,
.point p,
.review p {
 line-height: 2;
 margin-bottom: 55px;
}


/* FV
--------------------------*/
.fv {
 width: 100%;
 background-color: #F6F5F5;
}
.fv_inner {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: 5%;
 padding-inline: 3%;
 padding-block: 2% 7%;
}
.fv_inner img {
 width: 55%;
}
.fv_lead {
 width: 37%;
 text-align: left;
}
.cliant {
 font-size: 20px;
}
.fv_title {
 font-feature-settings: "palt";
 letter-spacing: 4px;
 font-size: 38px;
 font-weight: 600;
 line-height: 1.3;
 margin-top: 40px;
}
.fv_inner .type {
 margin-bottom: 50px;
}
.fv_text {
 font-size: 17px;
 line-height: 2;
}
.fv_inner .more {
 margin-top: 65px;
 float: left;
}

.more {
 width: 242px;
 line-height: 72px;
 margin: 0 auto;
 border: 1.5px solid #000;
 border-radius: 72px;
 background-color: #fff;
 font-size: 22px;
 font-weight: bold;
 text-align: center;
}
.spec {
 line-height: 2;
 font-size: 15px;
 margin-bottom: 95px;
}



/* Header
--------------------------*/
.header_inner {
 display: flex;
 justify-content: space-between;
 padding: 4%;
}
nav {
 font-family: "Poppins", sans-serif;
 font-weight: 500;
 letter-spacing: 3px;
}
nav ul {
 display: flex;
 gap: 30px;
}

/* Navi サブメニュー */
.works_list {
 display: block;
 display: none;
 position: absolute;
}
.works_list a {
 padding-block: 30px 3px;
 border-bottom: 1.5px solid transparent;
}
.works_list li:hover a {
 border-bottom: 1.5px solid #2F2725;
 transition: 200ms;
}
.works_list li:hover a::after {
 content: "を見る";
 font-size: 10px;
 letter-spacing: normal;
 padding-left: 3px;
}
.pc-nav li:hover .works_list {
 display: block;
}


/* FEATURE
--------------------------*/
.feature_copy {
 font-size: 27px;
 font-weight: 600;
 margin-top: 100px;
 margin-bottom: 75px;
}
.feature_inner {
 display: flex;
 justify-content: space-between;
 align-items: center;
}
.feature_inner img {
 /* width: 462px; */
 height: 560px;
 background-color: pink;
 width: 53%;
 /* height: auto; */
}
.feature_lead {
 width: 40%;
}
.feature_lead_title {
 font-size: 17px;
 font-weight: 500;
 margin-bottom: 10px;
}
.feature_lead_title+p {
 margin-bottom: 35px;
 line-height: 1.7;
}


/* PROCESS
--------------------------*/
.process_solution {
 font-size: 22px;
}


/* POINT
--------------------------*/
.point img {
 margin-bottom: 100px;
}


/* Footer
--------------------------*/
footer {
 color: #FFF;
 background-color: #2F2725;
 line-height: 200px;
}
.footer_nav ul {
 display: flex;
 justify-content: center;
 gap: 40px;
}
.footer_nav li {
 font-size: 16px;
 letter-spacing: 2px;
}



/*--------------------------
         MediaQuery
--------------------------*/

@media (width <= 743px) {

/* 共通
--------------------------*/
#pc {
 display: none;
}
#sp {
 display: block;
}

body {
 font-weight: 350;
}

.sp-nav ul {
 /* display: block; */
 position: absolute;
 top: 0px;
 left: 0px;
 width: 100%;
 height: 100svh;
 flex-direction: column;
 justify-content: center;
 align-items: center;
}


.works_container {
 /* max-width: 1000px; */
 margin: 0 auto 150px;
 padding-inline: 5%;
}
.feature h2,
.process h2,
.point h2,
.review h2 {
 font-family: "Poppins", sans-serif;
 font-size: 42px;
 padding-top: 90px;
 padding-bottom: 0;
}
.process h3,
.point h3,
.review h3 {
 font-size: 20px;
 padding-top: 0;
 margin-top: 75px;
 margin-bottom: 50px;
}
h3 span {
 font-size: 35px;
 font-family: "Roboto Condensed", sans-serif;
 font-weight: 500;
 padding-right: 15px;
}
.process h4,
.point h4,
.review h4 {
 font-size: 18px;
 margin-bottom: 20px;
}
.process p,
.point p,
.review p {
 line-height: 2;
 margin-bottom: 45px;
}


/* FV
--------------------------*/
.fv {
 width: 100%;
 height: auto;
 padding-bottom: 40px;
}
.fv_inner {
 display: block;
 align-items: center;
 gap: 5%;
 padding-inline: 5%;
 padding-block: 0;
}
.fv_inner img {
 width: 100%;
}
.fv_lead {
 width: 100%;
 text-align: left;
}
.cliant {
 font-size: 16px;
}
.fv_title {
 font-feature-settings: "palt";
 letter-spacing: 3px;
 font-size: 25px;
 font-weight: 600;
 line-height: 1.3;
 margin-top: 22px;
}
.fv_inner .type {
 margin-bottom: 25px;
}
.fv_text {
 font-size: 16px;
 line-height: 1.8;
}
.fv_inner .more {
 margin-top: 35px;
 float: none;
}


/* Header
--------------------------*/
.header_inner {
 display: block;
 padding: 5%;
}
h1::before {
 /* content: ""; */
 /* position: static; */
 display: none;
}
nav {
 font-family: "Poppins", sans-serif;
 font-weight: 500;
 letter-spacing: 3px;
}
nav ul {
 display: flex;
 gap: 30px;
}


/* FEATURE
--------------------------*/
.feature_copy {
 font-size: 23px;
 font-weight: 600;
 line-height: 1.7;
 margin-top: 70px;
 margin-bottom: 35px;
}
.feature_inner {
 display: block;
 align-items: center;
}
.feature_inner img {
 height: auto;
 background-color: pink;
 width: 100%;
 margin-bottom: 30px;
}
.feature_lead {
 width: 100%;
}
.feature_lead_title {
 font-size: 17px;
 font-weight: 500;
 margin-bottom: 10px;
}
.feature_lead_title+p {
 margin-bottom: 35px;
 line-height: 1.7;
}


/* PROCESS
--------------------------*/
.process_solution {
 font-size: 18px;
 font-weight: 600;
 font-feature-settings: "palt";
 letter-spacing: 1.5px;
}


/* Footer
--------------------------*/
footer {
 color: #FFF;
 background-color: #2F2725;
 line-height: 200px;
}
.footer_nav ul {
 display: flex;
 justify-content: center;
 gap: 40px;
}
.footer_nav li {
 font-size: 16px;
 letter-spacing: 2px;
}


}