@charset "utf-8";
/* CSS Document */

/*
---------------------------------------------
	TOP common
---------------------------------------------
*/
.pr{
	background:#06172f;
	color:#fff;
}
header{
	display:none;
}
ul, li {
  list-style: none;
  padding-left: 0%;
}

h1, h2, h3, h4, p, a {
  margin: 0;
  text-decoration: none;
  font-family: "Noto Serif JP";
  font-style: normal;
  line-height: 180%;
}
.is-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-sp {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .is-pc {
    display: none;
  }
}
.inner {
  width: min(1400 / 1728 * 100vw, 1400px);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .inner {
    width: calc(340 / 390 * 100vw);
    margin: 0 auto;
  }
}
main {
  background: #FFFFFF;
  overflow-x: hidden;
}
.fv {
  background: #F9FAFB;
}
.fv_inner {
  background-image: url(../img/fv_bg.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
  width: calc(1564 / 1728 * 100vw);
  height: calc(850 / 1728 * 100vw);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .fv_inner {
    width: calc(365 / 390 * 100vw);
    height: calc(426 / 390 * 100vw);
  }
}
.fv_inner::after {
  position: absolute;
  content: "";
  background-image: url(../img/fv.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: calc(1204 / 1728 * 100vw);
  height: calc(690 / 1728 * 100vw);
  top: calc(80 / 1728 * 100vw);
  left: calc(524 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .fv_inner::after {
    top: calc(64 / 390 * 100vw);
    left: 0;
    width: calc(390 / 390 * 100vw);
    height: calc(223 / 390 * 100vw);
    background-size: cover;
  }
}
.fv_inner img {
  margin-top: 29px;
  margin-left: 40px;
  width: calc(174 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .fv_inner img {
    margin-top: 20px;
    margin-left: 25px;
    width: min(99 / 390 * 100vw, 99px);
  }
}
.fv_inner h1 {
  font-weight: 700;
  font-size: calc(64 / 1728 * 100vw);
  line-height: 180%;
  letter-spacing: 0.08em;
  color: #FFFFFF;
  border-bottom: 2px solid #FFFFFF;
  padding-top: calc(255 / 1728 * 100vw);
  margin-left: calc(165 / 1728 * 100vw);
  width: calc(750 / 1728 * 100vw);
  position: sticky;
  z-index: 4;
}
@media screen and (max-width: 768px) {
  .fv_inner h1 {
    padding-top: calc(273 / 390 * 100vw);
    font-size: calc(22 / 390 * 100vw);
    margin-left: calc(25 / 390 * 100vw);
    width: calc(275 / 390 * 100vw);
    letter-spacing: 0.01em;
  }
}
.fv_inner h1 span {
  font-size: calc(48 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .fv_inner h1 span {
    font-size: calc(22 / 390 * 100vw);
  }
}
.fv_inner p {
  font-weight: 700;
  font-size: calc(36 / 1728 * 100vw);
  line-height: 180%;
  letter-spacing: 0.08em;
  color: #FFFFFF;
  margin-top: 30px;
  margin-left: calc(165 / 1728 * 100vw);
  border-bottom: 2px solid #FFFFFF;
  width: calc(705 / 1728 * 100vw);
  position: sticky;
  z-index: 4;
}
@media screen and (max-width: 768px) {
  .fv_inner p {
    font-size: calc(16 / 390 * 100vw);
    letter-spacing: 0.01em;
    width: calc(291 / 390 * 100vw);
    margin-top: 10px;
    margin-left: calc(25 / 390 * 100vw);
  }
}
.concept {
  padding-top: min(142 / 1728 * 100vw, 142px);
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .concept {
    padding-top: min(124 / 390 * 100vw, 124px);
  }
}
.concept::after {
  position: absolute;
  content: "";
  background: #F9FAFB;
  height: 100%;
  width: 28.0092592593%;
  top: 0%;
  right: 0%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .concept::after {
    width: min(125 / 390 * 100vw, 125px);
  }
}
.concept_inner {
  max-width: 1728px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .concept_inner {
    max-width: 340px;
  }
}
.concept_inner h2 {
  font-weight: 500;
  font-size: min(36 / 1728 * 100vw, 36px);
  line-height: 160%;
  letter-spacing: 0.01em;
  padding-left: calc(724 / 1728 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .concept_inner h2 {
    padding-left: 0px;
    font-size: min(22 / 390 * 100vw, 22px);
  }
}
.concept_inner h2::before {
  position: absolute;
  content: "";
  height: 2px;
  width: calc(484 / 1728 * 100vw);
  background: #000000;
  top: min(58 / 1728 * 100vw, 58px);
  left: max(-15 / 390 * 100vw, -15px);
}
@media screen and (max-width: 768px) {
  .concept_inner h2::before {
    top: max(-32 / 390 * 100vw, -32px);
    width: min(95 / 390 * 100vw, 95px);
    height: 1px;
  }
}
.concept_inner h2::after {
  position: absolute;
  content: "CONCEPT";
  font-family: "YuGothic";
  font-style: normal;
  font-weight: 500;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.08em;
  color: #06172F;
  top: min(30 / 1728 * 100vw, 30px);
  left: calc(504 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .concept_inner h2::after {
    top: max(-48 / 390 * 100vw, -48px);
    font-size: min(16 / 390 * 100vw, 16px);
    left: min(103 / 390 * 100vw, 103px);
  }
}
.concept_inner_contents_left {
  display: flex;
  margin-top: calc(120 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_left {
    flex-direction: column;
    margin-top: min(40 / 390 * 100vw, 40px);
  }
}
.concept_inner_contents_left_img {
  width: min(964 / 1728 * 100vw, 964px);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_left_img {
    width: min(340 / 390 * 100vw, 340px);
    margin: 0 auto;
  }
}
.concept_inner_contents_left_img::after {
  position: absolute;
  content: "";
  height: 33.3333333333%;
  width: 87.1369294606%;
  background: #06172F;
  top: min(400 / 1728 * 100vw, 400px);
  left: min(244 / 1728 * 100vw, 244px);
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_left_img::after {
    height: min(64 / 390 * 100vw, 64px);
    width: min(335 / 390 * 100vw, 335px);
    top: min(138 / 390 * 100vw, 138px);
    left: min(30 / 390 * 100vw, 30px);
  }
}
.concept_inner_contents_left_img img {
  width: 100%;
}
.concept_inner_contents_left_text {
  width: min(600 / 1728 * 100vw, 600px);
  padding-left: min(140 / 1728 * 100vw, 140px);
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_left_text {
    width: 100%;
    padding-left: 0;
  }
}
.concept_inner_contents_left_text h3 {
  font-size: min(36 / 1728 * 100vw, 36px);
  letter-spacing: 0.01em;
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_left_text h3 {
    margin-top: min(72 / 390 * 100vw, 72px);
    font-size: min(20 / 390 * 100vw, 20px);
  }
}
.concept_inner_contents_left_text p {
  font-weight: 400;
  font-size: min(16 / 1728 * 100vw, 16px);
  line-height: 220%;
  letter-spacing: 0.01em;
  padding-top: min(60 / 1728 * 100vw, 60px);
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_left_text p {
    font-size: min(16 / 390 * 100vw, 16px);
    padding-top: min(20 / 390 * 100vw, 20px);
  }
}
.concept_inner_contents_right {
  display: flex;
  justify-content: end;
  margin-top: calc(200 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_right {
    flex-direction: column-reverse;
    margin-top: min(80 / 390 * 100vw, 80px);
  }
}
.concept_inner_contents_right_img {
  width: min(964 / 1728 * 100vw, 964px);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_right_img {
    width: min(340 / 390 * 100vw, 340px);
    margin: 0 auto;
  }
}
.concept_inner_contents_right_img::after {
  position: absolute;
  content: "";
  height: 33.3333333333%;
  width: 87.1369294606%;
  background: #06172F;
  top: min(400 / 1728 * 100vw, 400px);
  right: min(244 / 1728 * 100vw, 244px);
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_right_img::after {
    height: min(64 / 390 * 100vw, 64px);
    width: min(335 / 390 * 100vw, 335px);
    top: min(138 / 390 * 100vw, 138px);
    right: min(30 / 390 * 100vw, 30px);
  }
}
.concept_inner_contents_right_img img {
  width: 100%;
}
.concept_inner_contents_right_text {
  width: min(440 / 1728 * 100vw, 440px);
  margin-right: min(140 / 1728 * 100vw, 140px);
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_right_text {
    width: 100%;
    margin-right: 0;
  }
}
.concept_inner_contents_right_text h3 {
  font-size: min(36 / 1728 * 100vw, 36px);
  letter-spacing: 0.01em;
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_right_text h3 {
    margin-top: min(72 / 390 * 100vw, 72px);
    font-size: min(20 / 390 * 100vw, 20px);
  }
}
.concept_inner_contents_right_text p {
  font-weight: 400;
  font-size: min(16 / 1728 * 100vw, 16px);
  line-height: 220%;
  letter-spacing: 0.01em;
  padding-top: min(60 / 1728 * 100vw, 60px);
}
@media screen and (max-width: 768px) {
  .concept_inner_contents_right_text p {
    font-size: min(16 / 390 * 100vw, 16px);
    padding-top: min(20 / 390 * 100vw, 20px);
  }
}
.concept_inner_p {
  font-weight: 400;
  font-size: 16px;
  line-height: 220%;
  letter-spacing: 0.01em;
  width: min(920 / 1728 * 100vw, 920px);
  margin: 0 auto;
  margin-top: calc(194 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .concept_inner_p {
    width: 100%;
    margin-top: min(35.2 / 390 * 100vw, 35.2px);
  }
}

.company {
  padding-top: calc(120 / 1728 * 100vw);
  padding-bottom: 20px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .company {
    padding-top: min(146 / 390 * 100vw, 146px);
  }
}
.company::after {
  position: absolute;
  content: "";
  background: #F9FAFB;
  height: 100%;
  width: 28.0092592593%;
  top: 0%;
  right: 0%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .company::after {
    width: min(125 / 390 * 100vw, 125px);
  }
}
.company_contents {
  width: 100%;
}
.company_contents00 {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .company_contents00 {
    flex-direction: column;
  }
}
.company_contents00_img {
  width: min(680 / 1728 * 100vw, 680px);
  position: relative;
}
@media screen and (max-width: 768px) {
  .company_contents00_img {
    width: 100%;
    margin-top: min(21 / 390 * 100vw, 21px);
  }
}
.company_contents00_img::after {
  position: absolute;
  content: "";
  background: #000;
  height: 2px;
  width: 84.7058823529%;
  top: min(40 / 1728 * 100vw, 40px);
  left: 100%;
}
@media screen and (max-width: 768px) {
  .company_contents00_img::after {
    width: min(95 / 390 * 100vw, 95px);
    top: max(-55 / 390 * 100vw, -55px);
    left: max(-15 / 390 * 100vw, -15px);
    height: 1px;
  }
}
.company_contents00_img::before {
  position: absolute;
  content: "取材協力";
  font-weight: 600;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.08em;
  color: #06172F;
  top: min(23 / 1728 * 100vw, 23px);
  left: min(1276 / 1728 * 100vw, 1276px);
  width: 105px;
}
@media screen and (max-width: 768px) {
  .company_contents00_img::before {
    font-size: min(16 / 390 * 100vw, 16px);
    top: max(-66 / 390 * 100vw, -66px);
    left: min(103 / 390 * 100vw, 103px);
  }
}
.company_contents00_img img {
  width: 100%;
  margin-top: min(24 / 390 * 100vw, 24px);
}
@media screen and (max-width: 768px) {
  .company_contents00_img h2 {
    font-weight: 600;
    font-size: min(16 / 390 * 100vw, 16px);
    letter-spacing: 0.01em;
    color: #000000;
  }
}
.company_contents00_img h2 span {
  font-size: min(22 / 390 * 100vw, 22px);
}
@media screen and (max-width: 768px) {
  .company_contents00_img h2 span {
    font-size: min(22 / 390 * 100vw, 22px);
  }
}
.company_contents00_text {
  width: min(560 / 1728 * 100vw, 560px);
  margin-right: min(40 / 1728 * 100vw, 40px);
  margin-top: min(100 / 1728 * 100vw, 100px);
}
@media screen and (max-width: 768px) {
  .company_contents00_text {
    width: 100%;
    margin: 0;
    margin-top: 0;
  }
}
.company_contents00_text h2 {
  font-weight: 600;
  font-size: min(24 / 1728 * 100vw, 24px);
  line-height: 180%;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 768px) {
  .company_contents00_text h2 {
    font-size: min(16 / 390 * 100vw, 16px);
  }
}
.company_contents00_text h2 span {
  font-size: min(36 / 1728 * 100vw, 36px);
}
@media screen and (max-width: 768px) {
  .company_contents00_text h2 span {
    font-size: min(22 / 390 * 100vw, 22px);
  }
}
.company_contents00_text p {
  font-weight: 400;
  font-size: min(16 / 1728 * 100vw, 16px);
  line-height: 220%;
  letter-spacing: 0.01em;
  margin-top: min(30 / 1728 * 100vw, 30px);
}
@media screen and (max-width: 768px) {
  .company_contents00_text p {
    font-size: min(16 / 390 * 100vw, 16px);
    margin-top: min(40 / 390 * 100vw, 40px);
  }
}
.company_contents .btn {
  margin-top: min(96 / 1728 * 100vw, 96px);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .company_contents .btn {
    margin-top: min(50 / 390 * 100vw, 50px);
  }
}
.company_contents .btn a {
  padding: 15px 105px;
  color: #FFFFFF;
  background: linear-gradient(90deg, #06172F 0%, #023276 50.82%, #06172F 100%);
  font-size: 16px;
  line-height: 180%;
	transition:0.3s;
}
.company_contents .btn a:hover {
	color:#06172F;
	background:#FFFFFF;
	border: 2px solid #06172F;
}
@media screen and (max-width: 768px) {
  .company_contents .btn a {
    padding: 10px 68px;
  }
}

.works {
  padding-bottom: calc(75 / 1728 * 100vw);
  padding-top: calc(135 / 1728 * 100vw);
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .works {
    padding-top: min(135 / 390 * 100vw, 135px);
    padding-bottom: min(25 / 390 * 100vw, 25px);
  }
}
.works::after {
  position: absolute;
  content: "";
  background: #F9FAFB;
  height: 100%;
  width: 28.0092592593%;
  top: 0%;
  right: 0%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .works::after {
    width: min(125 / 390 * 100vw, 125px);
  }
}
.works_inner {
  max-width: 1728px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .works_inner {
    max-width: 340px;
  }
}
.works_inner h2 {
  font-weight: 500;
  font-size: min(36 / 1728 * 100vw, 36px);
  line-height: 160%;
  letter-spacing: 0.01em;
  padding-left: calc(724 / 1728 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .works_inner h2 {
    font-size: min(22 / 390 * 100vw, 22px);
    padding-left: 0;
    margin-bottom: 1rem;
  }
}
.works_inner h2::before {
  position: absolute;
  content: "";
  height: 2px;
  width: calc(484 / 1728 * 100vw);
  background: #000000;
  top: min(58 / 1728 * 100vw, 58px);
  left: 0;
}
@media screen and (max-width: 768px) {
  .works_inner h2::before {
    height: 1px;
    width: min(95 / 390 * 100vw, 95px);
    top: max( -32/ 390 * 100vw, -32px);
    left: max( -15/ 390 * 100vw, -15px);
  }
}
.works_inner h2::after {
  position: absolute;
  content: "WORKS";
  font-family: "YuGothic";
  font-style: normal;
  font-weight: 500;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.08em;
  color: #06172F;
  top: min(30 / 1728 * 100vw, 30px);
  left: calc(504 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .works_inner h2::after {
    font-size: min(16 / 390 * 100vw, 16px);
    top: max(-48 / 390 * 100vw, -48px);
    left: min(103 / 390 * 100vw, 103px);
  }
}
.works_inner_contents {
  display: flex;
  width: min(1400 / 1728 * 100vw, 1400px);
  gap: 0;
  margin: 0 auto;
  margin-top: min(120 / 1728 * 100vw, 120px);
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .works_inner_contents {
    flex-direction: column;
    width: 100%;
    margin-top: 0;
  }
}

.works_inner_contents li{
  display: flex;
  flex-direction: column;
  margin-right: 20px;
  width: calc((100% - 20px * 2) / 3);
}

@media screen and (max-width: 768px) {
  .works_inner_contents li{
    width: 100%;
  }
}

.works_inner_contents_text{
  margin: 5%;
  font-size: min(16 / 1728 * 100vw, 16px);
}

@media screen and (max-width: 768px) {
  .works_inner_contents_text{
    margin: 0;
    width: 100%;
    font-size: min(16 / 390 * 100vw, 16px);
  } 
}

.works_inner_contents_btn{
  margin: auto 0 0;
}

@media screen and (max-width: 768px) {
  .works_inner_contents_btn{
    margin: 3rem 0;
  }
}

.works_inner_contents_btn p{
  padding: 15px 0;
  text-align: center;
  color: #FFFFFF;
  background: linear-gradient(90deg, #06172F 0%, #023276 50.82%, #06172F 100%);
  font-size: 16px;
  line-height: 180%;
	transition:0.3s;
}

.works_inner .btn {
  margin-top: min(96 / 1728 * 100vw, 96px);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .works_inner .btn {
    margin-top: min(50 / 390 * 100vw, 50px);
  }
}
.works_inner .btn a {
  padding: 15px 105px;
  color: #FFFFFF;
  background: linear-gradient(90deg, #06172F 0%, #023276 50.82%, #06172F 100%);
  font-size: 16px;
  line-height: 180%;
	transition:0.3s;
}
.works_inner .btn a:hover {
	color:#06172F;
	background:#FFFFFF;
	border: 2px solid #06172F;
}
@media screen and (max-width: 768px) {
  .works_inner .btn a {
    padding: 10px 68px;
  }
}

.feature {
  padding-top: min(265 / 1728 * 100vw, 265px);
  padding-bottom: 30px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .feature {
    padding-top: min(124 / 390 * 100vw, 124px);
  }
}
.feature::after {
  position: absolute;
  content: "";
  background: #F9FAFB;
  height: 100%;
  width: 28.0092592593%;
  top: 0%;
  left: 0%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .feature::after {
    width: min(125 / 390 * 100vw, 125px);
  }
}
.feature_inner {
  max-width: 1728px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .feature_inner {
    max-width: 340px;
  }
}
.feature_inner h2 {
  font-weight: 500;
  font-size: min(36 / 1728 * 100vw, 36px);
  line-height: 160%;
  letter-spacing: 0.01em;
  padding-left: calc(724 / 1728 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .feature_inner h2 {
    font-size: min(22 / 390 * 100vw, 22px);
    padding-left: 0;
  }
}
.feature_inner h2::before {
  position: absolute;
  content: "";
  height: 2px;
  width: calc(484 / 1728 * 100vw);
  background: #000000;
  top: min(58 / 1728 * 100vw, 58px);
  left: 0;
}
@media screen and (max-width: 768px) {
  .feature_inner h2::before {
    height: 1px;
    width: min(95 / 390 * 100vw, 95px);
    top: max(-32 / 390 * 100vw, -32px);
    left: max(-25 / 390 * 100vw, -25px);
  }
}
.feature_inner h2::after {
  position: absolute;
  content: "FEATURE";
  font-family: "YuGothic";
  font-style: normal;
  font-weight: 500;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.08em;
  color: #06172F;
  top: min(30 / 1728 * 100vw, 30px);
  left: calc(504 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .feature_inner h2::after {
    font-size: min(16 / 390 * 100vw, 16px);
    top: max(-48 / 390 * 100vw, -48px);
    left: min(103 / 390 * 100vw, 103px);
  }
}
.feature_inner_contents_left {
  display: flex;
  justify-content: left;
  margin-top: min(120 / 1728 * 100vw, 120px);
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_left {
    margin-top: 0;
    flex-direction: column;
  }
}
.feature_inner_contents_left_img {
  width: min(680 / 1728 * 100vw, 680px);
  margin-left: min(164 / 1728 * 100vw, 164px);
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_left_img {
    width: 100%;
    margin-left: 0;
    margin-top: min(40 / 390 * 100vw, 40px);
  }
}
.feature_inner_contents_left_img img {
  width: 100%;
}
.feature_inner_contents_left_text {
  width: min(764 / 1728 * 100vw, 764px);
  margin-left: min(120 / 1728 * 100vw, 120px);
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_left_text {
    width: 100%;
    margin-left: 0;
    margin-top: min(40 / 390 * 100vw, 40px);
  }
}
.feature_inner_contents_left_text h3 {
  background-color: #102138;
  width: 100%;
  padding: min(43 / 1728 * 100vw, 43px) min(40 / 1728 * 100vw, 40px);
  font-weight: 600;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.01em;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_left_text h3 {
    padding: min( 7 / 390 * 100vw, 7px) min(20 / 390 * 100vw, 20px);
    font-size: min( 20 / 390 * 100vw, 20px);
  }
}
.feature_inner_contents_left_text p {
  margin-top: min(60 / 1728 * 100vw, 60px);
  width: min(440 / 1728 * 100vw, 440px);
  font-weight: 400;
  font-size:  min(16 / 1728 * 100vw, 16px);;
  line-height: 220%;
  letter-spacing: 0.01em;
  padding-left: min(40 / 1728 * 100vw, 40px);
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_left_text p {
    margin-top: min( 20 / 390 * 100vw, 20px);
    width: 100%;
	  font-size: min(16 / 390 * 100vw, 16px);
    padding-left: 0;
  }
}
.feature_inner_contents_right {
  display: flex;
  justify-content: right;
  margin-top: min(120 / 1728 * 100vw, 120px);
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_right {
    flex-direction: column-reverse;
    margin-top: 0;
  }
}
.feature_inner_contents_right_img {
  width: min(680 / 1728 * 100vw, 680px);
  margin-left: min(120 / 1728 * 100vw, 120px);
  margin-right: min(164 / 1728 * 100vw, 164px);
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_right_img {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-top: min(40 / 390 * 100vw, 40px);
  }
}
.feature_inner_contents_right_img img {
  width: 100%;
}
.feature_inner_contents_right_text {
  width: min(764 / 1728 * 100vw, 764px);
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_right_text {
    width: 100%;
    margin-right: 0;
    margin-top: min(40 / 390 * 100vw, 40px);
  }
}
.feature_inner_contents_right_text h3 {
  background-color: #102138;
  width: 100%;
  padding: min(43 / 1728 * 100vw, 43px) min(40 / 1728 * 100vw, 40px) min(43 / 1728 * 100vw, 43px) min(164 / 1728 * 100vw, 164px);
  font-weight: 600;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.01em;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_right_text h3 {
    width: 81%;
    margin-left: max( -25 / 390 * 100vw, -25px);
    padding: min( 7 / 390 * 100vw, 7px) min(45 / 390 * 100vw, 45px);
    font-size: min( 20 / 390 * 100vw, 20px);
  }
}
.feature_inner_contents_right_text p {
  margin-top: min(60 / 1728 * 100vw, 60px);
  width: min(600 / 1728 * 100vw, 600px);
  font-weight: 400;
  font-size:  min(16 / 1728 * 100vw, 16px);;
  line-height: 220%;
  letter-spacing: 0.01em;
  padding-left: min(164 / 1728 * 100vw, 164px);
}
@media screen and (max-width: 768px) {
  .feature_inner_contents_right_text p {
    margin-top: min( 20 / 390 * 100vw, 20px);
    width: 100%;
    padding-left: 0;
	  font-size: min(16 / 390 * 100vw, 16px);
  }
}
.feature_inner .btn {
  margin-top: min(96 / 1728 * 100vw, 96px);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .feature_inner .btn {
    margin-top: min(50 / 390 * 100vw, 50px);
  }
}
.feature_inner .btn a {
  padding: 15px 45px;
  color: #FFFFFF;
  background: linear-gradient(90deg, #06172F 0%, #023276 50.82%, #06172F 100%);
  font-size: 16px;
  line-height: 180%;
	transition:0.3s;
}
.feature_inner .btn a:hover {
	color:#06172F;
	background:#FFFFFF;
	border: 2px solid #06172F;
}
@media screen and (max-width: 768px) {
  .feature_inner .btn a {
    padding: 10px min(10 / 1728 * 100vw, 10px);
  }
}
p.text_long {
  width: min(750 / 1728 * 100vw, 750px);
}
.model {
  padding-top: min(120 / 1728 * 100vw, 120px);
  padding-bottom: min(160 / 1728 * 100vw, 160px);
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .model {
    padding-top: min( 124 / 390 * 100vw, 124px);
    padding-bottom: min( 40 / 390 * 100vw, 40px);
  }
}
.model::after {
  position: absolute;
  content: "";
  background: #F9FAFB;
  height: 100%;
  width: 28.0092592593%;
  top: 0%;
  left: 0%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .model::after {
    width: min(125 / 390 * 100vw, 125px);
  }
}
.model_inner {
  max-width: 1728px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .model_inner {
    max-width: 340px;
  }
}
.model_inner h2 {
  font-weight: 500;
  font-size: min(36 / 1728 * 100vw, 36px);
  line-height: 160%;
  letter-spacing: 0.01em;
  padding-left: calc(724 / 1728 * 100vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  .model_inner h2 {
    font-size: min( 22 / 390 * 100vw, 22px);
    padding-left: 0;
  }
}
.model_inner h2::before {
  position: absolute;
  content: "";
  height: 2px;
  width: calc(484 / 1728 * 100vw);
  background: #000000;
  top: min(58 / 1728 * 100vw, 58px);
  left: 0;
}
@media screen and (max-width: 768px) {
  .model_inner h2::before {
    height: 1px;
    width: min( 95 / 390 * 100vw, 95px);
    top: max( -32 / 390 * 100vw, -32px);
    left: max( -25 / 390 * 100vw, -25px);
  }
}
.model_inner h2::after {
  position: absolute;
  content: " MODELHOUSE";
  font-family: "YuGothic";
  font-style: normal;
  font-weight: 500;
  font-size: min(24 / 1728 * 100vw, 24px);
  letter-spacing: 0.08em;
  color: #06172F;
  top: min(30 / 1728 * 100vw, 30px);
  left: calc(504 / 1728 * 100vw);
}
@media screen and (max-width: 768px) {
  .model_inner h2::after {
    font-size: min( 16 / 390 * 100vw, 16px);
    top: max( -50 / 390 * 100vw, -50px);
    left: min( 103 / 390 * 100vw, 103px);
  }
}
.model_inner_contents {
  display: flex;
  justify-content: left;
  margin-top: min(120 / 1728 * 100vw, 120px);
}
@media screen and (max-width: 768px) {
  .model_inner_contents {
    flex-direction: column;
    margin-top: min( 40 / 390 * 100vw, 40px);
  }
}
.model_inner_contents_img {
  width: 62.7314814815%;
  position: sticky;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .model_inner_contents_img {
    width: 107.3529411765%;
    margin-left: max( -25 / 390 * 100vw, -25px);
    z-index: 2;
  }
}
.model_inner_contents_img img {
  width: 100%;
}
.model_inner_contents_text {
  position: sticky;
  z-index: 1;
  width: 32.4074074074%;
  margin-top: min(120 / 1728 * 100vw, 120px);
  margin-right: min(164 / 1728 * 100vw, 164px);
  padding-bottom: 30px;
  background-color: #102138;
  color: #FFFFFF;
  margin-left: max(-80 / 1728 * 100vw, -80px);
}
@media screen and (max-width: 768px) {
  .model_inner_contents_text {
    width: 107.6470588235%;
    margin-top: max( -81 / 390 * 100vw, -81px);
    margin-left: 0;
    margin-right: 0;
    height: min( 491 / 390 * 100vw, 491px);
  }
}
.model_inner_contents_text p {
  width: min(440 / 1728 * 100vw, 440px);
  padding-top: min(80 / 1728 * 100vw, 80px);
  margin: 0 auto;
  font-weight: 500;
  font-size: min(16 / 1728 * 100vw, 16px);
  line-height: 220%;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 768px) {
  .model_inner_contents_text p {
    width: min( 301 / 390 * 100vw, 301px);
    padding-left: 0;
    padding-right: 0;
    padding-top: min( 101 / 390 * 100vw, 101px);
    font-size: min( 16 / 390 * 100vw, 16px);
  }
}
.model_inner_contents_text .btn {
  margin: 0 auto;
  margin-top: min(60 / 1728 * 100vw, 60px);
  width: min(340 / 1728 * 100vw, 340px);
  text-align: center;
}
.model_inner_contents_text .btn a{
	padding: min(10 / 1728 * 100vw, 10px)  min(40 / 1728 * 100vw, 40px);
	border: 2px solid #FFFFFF;
  font-size: min( 16 / 1728 * 100vw, 16px);
}
@media screen and (max-width: 768px) {
  .model_inner_contents_text .btn {
    margin-top: min( 20 / 390 * 100vw, 20px);
    width: min( 280 / 390 * 100vw, 280px);
  }
	.model_inner_contents_text .btn a{
		padding: min(10 / 340 * 100vw, 10px)  min(40 / 340  * 100vw, 40px);
		border: 2px solid #FFFFFF;
    font-size: min( 16 / 390 * 100vw, 16px);
	}
}
.model_inner_contents_text .btn a {
  color: #FFFFFF;
}/*# sourceMappingURL=style.css.map */