@charset "utf-8";

#top {
  position: relative;
  overflow: hidden;
}
.mv {
  background-position: center center;
  background-repeat: no-repeat;
  /* background: url(/img/top-view.jpg) no-repeat; */
  height: 100%;
  position: relative;
  background-size: cover;
}
.mv_imgBox,
.imgbox{
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  padding-top: 8.4rem;
}
.mv-contents {
  position: absolute;
  top: 64%;
  text-align: center;
  transform: translateY(-50%);
  width: 100%;
  font-size: 2.2vw;
  /*padding: 30px;
  */color:#3A1274;
  font-weight: 700;
  z-index: 3;
  line-height: 1.6;
}





.text{
  font-size: 2.8rem;
  letter-spacing: 0.18rem;
  line-height: 1.9rem;
  text-align: center;
  font-weight: 500;
  margin: 100px 0 60px;
  color: #444444;

}

h2 {
  color: #3A1274;
  font-size: 3.6rem;
  position: relative;
  padding-top: 10rem;
  text-align: center;
}

h2::before{
  position: absolute;
  bottom: -28px;
  left: calc(50% - 36px);
  width: 70px;
  height: 3px;
  content: '';
  border-radius: 3px;
  background: #3A1274;
}

h2::after {
  color: #3A1274;
	content: attr(data-ja);
  display: block;
  font-size: var(--subtitle);
  letter-spacing: 0.3em;
  margin-top: 2rem;
  margin-bottom: 12.8rem;

}

h3 {
  text-align: center;
  font-size: var(--subtitle);
  margin-bottom: 3.6rem;
}
/* section {
  margin-bottom: 30rem;
} */



 /* こんなお悩み、お持ちではありませんか？ */
.section {
  max-width: 70rem;
  margin: 0 auto;
  /* text-align: center; */
}


.balloon li {
  max-width: 53rem;
  margin: 0 auto;
	line-height:2.0em;
	border-bottom: 1px solid #ccc;
  font-size: 16px;
	list-style-position: outside;
}
.balloon img {
  width: auto;
  display: inline-block;
  padding-right: 1.5rem;
}

/* 三角 */
/*基本の吹き出し*/
.balloon{
  position: relative;
  background: #fff;
  /* padding: 2em; */
  padding-bottom: 10rem;
}
.balloon:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #ffffff transparent transparent transparent;
  border-width: 60px 40px 0 40px;
}
/* その悩み、弊社の事業承継サポートなら解決できます！ */
.support {
  background-color: #E5E5E5;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  text-align: center;
  padding: 15rem 0;

}

.underline {
  font-size: 3rem;
  padding: 0 2rem;
  color: #3A1274;
  text-decoration:underline;
  font-weight: 500;
}
.support-text-p {
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 2em;
  letter-spacing: .018;
  padding: 6rem 0;


}

/* そもそも事業承継とは？ */

.ma-p {
  font-size: 2rem;
  line-height: 1.8;
  text-align: center;
  font-weight: 500;
  /* margin: 10rem 0 0 0; */
}

.diagram-content {
  font-size: 2rem;
  letter-spacing: .18em;
  line-height: 2.65;
  text-align: center;
  font-weight: 500;
  margin-top: 10rem;
}
.diagram img {
  margin: 6rem 0;
}

.diagram-content1 {
  font-size: 1.6rem;
  line-height: 1.56;
  text-align: center;
  font-weight: 300;
}
.diagram-content2 {
  padding: 3rem 6rem;
  background: #E5E5E5;
  margin-top: 10rem;


}
/* <!-- 事業承継（M&A）のメリット --> */


.diagram-content3 {
  padding: 0 5rem 3.4rem;
  background: #E5E5E5;
  margin-top: 10rem;
  margin-bottom: 10rem;


}

.merit-underline {
  text-decoration:underline;
  text-align: center;
  padding: 3.4rem 0 2.5rem 0;

}
.merit .flex {
  justify-content: space-around;
}

.fa-circle:before {
  padding-right: 8px;
  color: #C1C1C1;

}

/* <!-- ココが違う --> */




.different {
	margin: 0 calc(50% - 50vw);
  padding: 10rem;
	/* padding: 10rem 0 0 calc(50vw - 50%); */
	width: 100vw;
  height: auto;
  background: #39127483;


}
.circle {
  position: relative;
  display: inline-block;
  background: #fff;
  width: 28rem;
  height: 28rem;
  border-radius: 50%;
  /* padding-top: 10rem; */
  margin: 1rem;
  

}
.circle_flex {
  width: 72%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto 10rem;

}


.circle-text {
  position: absolute;
  width: 28rem;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  color: #3A1274;
  line-height: 1.2;
  letter-spacing: .15em;
  display: inline-block;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.different-p{

  text-align: center;
  color: #fff;
  font-size: 2.3rem;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 1.5;
  position: relative;
  margin-bottom: 9rem;

}

.different-p::before{
     content:"";
     display:inline-block;
     width:3px;
     height:55px;
     background-color:#EDEDED;
     position:absolute;
     top: 0;
     left:50%;
     transform: rotate(-20deg) translate(-25rem, -8rem);
}



.different-p::after{
     content:"";
     display:inline-block;
     width:3px;
     height:55px;
     background-color:#EDEDED;
     position:absolute;
     top: 0;
     right:50%;
     
     transform: rotate(20deg) translate(25rem, -8rem);
}



/* <!-- 成約までの流れ --> */

.flow{
  background-color: #E5E5E5;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  /* padding: 10rem calc(50vw - 50%); */
  padding: 10rem;

}

.flow .flex{
  margin: 10rem auto;
  justify-content: center;
}



/* <!-- 代表挨拶 --> */
#about {
  position: relative;
  z-index: 1;
  margin-bottom: 25rem;
  margin-top: 25rem;
}
#about::before {
  content: "";
  width: 100vw;
  height: 100%;
  background: url(../img/bg.png);
  background-attachment: fixed;
  position: absolute;
  top: 17rem;
  left: 0;
  margin-left: calc(50% - 50vw);
  z-index: -1;
}
.mp4 {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0 auto;
  margin-bottom: 10rem;
}
.mp4 video {
  width: 100%;
  height: 100%;
}

.about {
  font-size: 1.8rem;
  font-weight: 500;
  color: #707070;
  text-align: center;

}

.about-1 {
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #707070;
  padding: 2.4rem 0;
}
.about-2 {
  font-weight: 300;


}







details {
  background-color: var(--color-gray);
}
details.faq {
  background-color: #fff;
}


/* <!-- よくある質問 --> */
summary {
  cursor: pointer;
  display: block;
  position: relative;
  padding: 4.8rem 8.5rem;
  font-size: var(--subtitle);
}
summary.que {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: var(--subtitle);
  font-weight: 400;
  position: relative;
  padding: 4rem 12rem 4rem 8.5rem;
}
summary.que::before {
  content: "Q";
  color: var(--main-color);
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 1;
  position: absolute;
  top: 4.8rem;
  left: 4rem;
}
.ans {
  font-size: var(--subtitle);
  font-weight: 400;
  position: relative;
}
.ans::before {
  content: "A";
  color: #444444;
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 4.5rem;
}


/* Chrome、Safari */
summary::-webkit-details-marker {
  display: none;
}
.faq_cat {
  background: #A7A7A7;
  color: #fff;
  display: inline-block;
  padding: 0 0.5em;
  font-size: var(--normal-font-size);
  font-weight: var(--normal-font-weight);
}
/* 疑似要素でアイコンを表示 */
summary::after {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 6.5rem;
  width: 10px;
  height: 10px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  transform: rotate(45deg);
  box-sizing: border-box;
  transition: .1s;
}
summary.que::after {
  top: 0;
}
summary:hover {
  opacity: 0.5;
}
summary.qua:hover {
  opacity: 1;
}
.details_content {
  padding: 0 8.5rem 6rem;

}
/* オープン時 */
/* details[open] summary {
  color: var(--color-gray);
} */
details[open] summary::after {
  transform: rotate(226deg);
  right: 8.5rem;
  top: 5px;
}
details[open] summary.que::after {
  top: 0;
}
/* オープン時のアニメーション設定 */
details[open] .details_content {
  animation: fadeIn 0.5s ease;
}



/* <!-- お客様の声 --> */
#voice {
  margin-bottom: 30rem;
}

#voice .voice {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
.voice_item {
  background-color: var(--color-gray);
  padding: 5rem;
  width: 47rem;
  margin-bottom: 3rem;

}
.voice_item .flex {
  margin-bottom: 3rem;
}
.voice_text {
  /* height: 25rem;
  overflow: auto;
  overflow-x: hidden;
  padding-right: 1rem; */
  color: #444444;

}


.voice_image {
  width: 11.3rem;
}
.voice_image img {
  border-radius: 50%;
}

.voice_desc {
  padding-left: 1.8rem;
  width: 67%;
  font-size: var(--subtitle);
  font-weight: 400;
 
}
.voice_name {
  display: block;
  text-align: end;
  font-size: var(--normal-font-size);
  font-weight: var(--normal-font-weight);
  color: #444444;
}

/* <!-- よくある質問 --> */
#faq {
  position: relative;
    /* z-index: 1; */
   


}
.faq_content {
  background: #ffffff;
}
#faq .flex{
  margin: 14rem auto 15rem;
}
#faq::before {
  content: "";
  display: block;
  width: 100vw;
  height: calc(100% + 35rem);
  background: #E5E5E5;
  /* margin-right: calc(50% - 50vw); */
  margin-left: calc(50% - 50vw);
  position: absolute;
  top: -10rem;
  left: 0;
  z-index: -1;
}


.accordion_area li {
  border-top: 1px solid #707070;
  background: #fff;
}
.accordion_area li:last-child {
  border-bottom: 1px solid #707070;
}


/* <!-- 代表挨拶 --> */
.inner_container .flex {
  width: 85.7%;
  margin: 0 auto;
  justify-content: space-around;
}
.inner_container_about {
  width: 44%;
  padding-left: 7rem;
}



/*=============== メディアクエリ =================*/

/* 画面幅870px"以下"の時に読み込むスタイル */
  @media screen and (max-width:870px) {
.button,
.button-online{
  margin-bottom: 0;
}
.diagram-content3 {
  margin-top: 5rem;
}

.diagram img {
  width: 90%;
  margin: 0 auto;
}
.faq_content {

  width: 90%;
  margin: 0 auto;
}





}






@media screen and (max-width:843px) {

.inner_container_about {
  width: 65%;
  margin-top: 3rem;
  padding: 0;
}
.different {
  padding: 10rem 0;
}
.text,
.underline,
.support-text-p,
h2 {
font-size: 2.4rem;
}

.support-text-p {
font-size: 2.2rem;
}
/* スマホ版非表示 */
.sp {
  display: none;
    }
    
    
.db {
   display: block;
}
    

}

/* 画面幅520px"以下"の時に読み込むスタイル */
@media screen and (max-width:520px) {
  

.mv-contents{
  font-size: 4.4vw;
}

.mv-img{
  height: 500px;
  object-fit: cover;
}

.inner {
  max-width: 90%;
}
h2 {
  padding-top: 6rem;
}
.support {
  padding: 6rem 0;
}
.balloon {
  padding-bottom: 6rem;
}
.diagram img {
  padding: 2rem 0;
}

.balloon p,
.diagram-content{
  margin-top: 6rem;
}
.text  {
  line-height: 2;
}
#service .fa-ul {
  margin-left: 0;
}
.support-text {
  width: 90%;
  margin: 0 auto;
}

.flow {
  padding: 6rem 3em 2rem;
}

.inner_container_about {
  width: 90%;
}

summary::after {
 
  right: 5%;
}
/* オープン時 */
details[open] summary::after {
  right: 5%;
}
summary.que {
  padding: 4rem 4rem 4rem 6rem;
}
.details_content {
  padding: 0rem 4rem 4rem 6rem;
}
.diagram-content2 {
  margin-top: 6rem;
}
.different {
  padding: 6rem 0;
}
.different-p,
.mp4 {
  margin-bottom: 6rem;
}
.voice_item .flex {

  display: block;
}
.voice_desc{
  width: 100%;
  padding-left: 0;
}
#voice {
    margin-bottom: 16rem;
}
#faq .flex {
  margin-top: 6rem;
  margin-bottom: 6rem;
}
#faq::before {
  height: calc(100% + 15rem);
  top: -10rem;
}
summary.que::before,
.ans::before {
  left: 2rem;
}



.flow .flex {
  margin: 6rem auto;
}
h2::after {
  margin-bottom: 8rem;
}


#about {
  margin-bottom: 10rem;
  margin-top: 5rem;
}









}
