@charset "UTF-8";

/*body {
  min-width: 100%;
}*/
.inner {
  max-width: 100%;
  padding: 0 5vw;
}
.btn_line{
	width: 90%;
	margin: 10px auto;
}
/**********************************************************
 * header
 **********************************************************/
header {
  height: 42vh;   /* height: 25vh; */
  background-image: url("../img/bg_header_sp.jpg");
  background-position: top;
}
header .catchphrase {
  top: 52vw;   /* top: 20vw; */
  padding-left:4vw;
  font-size: 4.2vw;
}
header .box {
  top: 2vw;
  /* width: 49vw; */
  width: 51vw; 
  padding: 1vw 0 1vw 0;
}
header .box .area {
  font-size: 3vw;
  margin-top: 2vw;
}
header .box .price {
  font-size: 5vw;
}
header .inner {
  padding-top: 86vw;
}
header .box h1 {
    padding: .1em .5em;
}

/**********************************************************
 * main
 **********************************************************/
.schedule img{
  width: 90%;
  margin: 0 auto 1rem;
}
.btn {
  flex-direction: column;
  gap: 4vw;
  width: 70vw;
  margin-top: 8vw;
  margin-inline: auto;
}
.btn a {
  width: 100%;
  font-size: 4vw;
  border: solid .9375vw #FFF;
}

.title_section .en {
  font-size: 8vw;
}
.title_section .ja {
  font-size: 3.5vw;
}
.title_copy{
  font-size: 3.2vw;
	line-height: 160%;
  margin: 10px auto 10px;
}

#about .inner .point{
	max-width: 100%;
	margin: 0 auto;
}
#about .img_brokerage-fee_01 img,
#about .img_brokerage-fee_02 img{
	width: 100%;
	margin: 0px auto 10px;
}
/*インタビュー*/
.interview {
  padding: 3vw 0 6vw;
}
.interview h2{
	position: static;
	padding: 20px 10px;
	font-size:5vw;
}
.interview h2 span{
	font-size:6vw;
	line-height: 160%;
}
.interview h3{
	font-size:5vw;
}
.interview .interview_photo2{
	margin: 10px 0;
	float: none;
	width: 100%;
}
.interview .interview_photo3{
	margin: 10px 0;
	float: none;
	width: 100%;
}
.interview .profile_wrap{
    display: block;
}
.interview .profile{
	width: calc(100% - 30px);
	margin: 10px 0;
}
#concept .price_table{
	width: 90%
}
#concept .price_table th{
	padding: 5px 10px;
	font-size:1em;
}
#concept .price_table td{
	padding: 5px 10px;
	font-size:1em;
}
#about,
#concept {
  padding: 3vw 0 6vw;
}
#concept .inner {
  padding: 0;
}
#concept .img_brokerage-fee_01 img,
#concept .img_brokerage-fee_02 img{
	width: 100%;
	margin: 40px auto 40px;
}
#concept .list_concept {
  flex-direction: column;
  gap: 12.5vw;
  margin-top: 12.5vw;
}
#concept .list_concept li {
  width: 100%;
  padding: 6.25vw 4.375vw;
}
#concept .list_concept li:first-child,
#concept .list_concept li:nth-child(2) {
  width: 100%;
  margin-bottom:0px;
}
#concept .list_concept li::before {
  font-size: 11.25vw;
}
#concept .list_concept li h3 {
  font-size: 6.3vw;
  margin: .2em 0 1em;
}
#concept .list_concept li .flex {
  display: flex;
  gap: 4vw;
}
#concept .list_concept li .flex .image {
  width: 30vw;
}
#concept .list_concept li .flex .text {
  width: calc(100% - 30vw);
}
#concept .list_concept li h4 {
  text-align: left;
  font-size: 4.2vw;
  line-height: 1.6;
  margin-bottom: .8em;
}
#concept .list_concept li p {
  font-size: 2.8125vw;
  line-height: 1.5;
  padding: .9em 1em;
  border-radius: 3.125vw;
}

#description {
  background-image: url(../img/bg_description_sp.jpg);
  padding: 8vw 0;
}
#description h2 {
  font-size: 5.5vw;
}
#description p {
  text-align: left;
  font-size: 3.125vw;
  margin-top: 2.5em;
}

#brokerage-fee {
  padding: 8vw 0;
}
#brokerage-fee p {
  font-size: 3.5vw;
  margin-top: 8vw;
}
#brokerage-fee img {
  width: 100%;
  margin: 8vw auto 0;
}
#brokerage-fee picture + picture {
  margin-top: 8vw;
}

#hp_link .btn a {
	width: 100%;
}
#flow {
  padding: 8vw 0;
}
#flow .inner {
  padding: 0;
}
#flow .flow_00 .content,
#flow .flex .box_flow .list_flow > li .content {
    padding: .8em;
}
#flow .flow_00{
	padding: 0;
}
#flow .flow_00 ul{
  width: 100%;
	display: block;
}
#flow .flow_00 ul li{
  width: 100%;
	margin:0;
}
#flow .flow_00 .content::before{
  content: "00";
  position: relative;
  font-size: 2em;
  margin-left:-10vw;
  margin-bottom:2vw;
}
#flow .nav_flow {
  display: flex;
  justify-content: space-between;
  margin-top: 8vw;
  padding: 0 2px;
}
#flow .nav_flow a {
  position: relative;
  width: calc(50% - 1px);
  font-size: 4.5vw;
  font-weight: 500;
  text-decoration: none;
  color: #FFF;
  padding: .5em 1em;
  box-sizing: border-box;
}
#flow .nav_flow a.btn_sale {
  background-color: #494C54;
}
#flow .nav_flow a.btn_buy {
  background-color: #8C733A;
}
#flow .nav_flow a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: .5em;
  transform: translateY(-50%);
  width: 1em;
  height: 1em;
  background-image: url("../img/arrow_bottom.svg");
  background-size: 100%;
}
#flow .flex {
  flex-direction: column;
  gap: 8vw;
  width: 81.25vw;
  margin: 8vw auto 0;
}
#flow .flex .box_flow {
  width: 100%;
}
#flow .flex .box_flow h3 {
  font-size: 4.5vw;
}
#flow .flex .box_flow .list_flow {
  gap: 1.25em;
  font-size: 2.8vw;
}

#faq {
  padding: 8vw 0;
}
#faq .tab_faq {
  width: 100%;
  flex-wrap: wrap;
  gap: 1vw;
  margin: 6vw auto 0;
  border: none;
}
#faq .tab_faq li {
  width: calc(50% - .5vw);
  font-size: 3.125vw;
}
#faq dl {
  width: 100%;
  font-size: 3.5vw;
  margin: 8vw auto 0;
}

#contact {
  padding: 8vw 0 10vw;
}
#contact .read {
  font-size: 4.5vw;
}
#contact .tel {
  font-size: 4rem;
}
/**********************************************************
 * footer
 **********************************************************/
footer {
 font-size: 4.5vw;
  padding-bottom:80px !important;
}
#fix_contact {
	display: flex;
	width: 100%;
	margin:0;
	position: fixed;
	right: 0;
	top: auto;
	bottom: 0;
}

#fix_contact li {
	width: 100%;
}
#fix_contact li img{
	margin:0;
}
