@charset "utf-8";
/*==============================================
  モバイルファースト CSS
  - デフォルト: モバイル（~640px）
  - タブレット: @media (min-width: 641px) and (max-width: 1391px)
  - PC: @media (min-width: 1392px)
==============================================*/
/* うちのAI Avatarとは？ */

#about-ai {
  padding: 0px 6.25vw 11.56vw 6.25vw;
}


#about-ai .inner_wrapper_about_ai {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 12.5vw;
margin: 0 auto;
}

#about-ai .about_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5vw;
}


#about-ai .about_logo {
  width: 13.9vw;
  height: 7.81vw;
  display: flex;
  align-items: center;
  position: relative;
}
#about-ai .about_logo::before {
  content: "";
  display: block;
  padding-top: 56.1%;
}

#about-ai .about_logo img {
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
}

#about-ai .about_title {
  margin-bottom: 1.25;
  font-size: 6.25vw;
  background: linear-gradient(90deg, #0079BD 0%, #04A79B 100%);
   -webkit-background-clip: text;
   background-clip: text;
   -webkit-text-fill-color: transparent;
   color: transparent;
 }

 #about-ai .about_description {
  font-size: 3.75vw;
  line-height: 7.34vw;
  overflow-wrap: break-word;
  font-weight: 500;
 }

 #about-ai .about_image{
  width: 100%;
 }

 #about-ai .about_image_box {
  position: relative;
  width: 100%;
 }

 #about-ai .about_image_box::before{
  content: "";
  display: block;
  padding-top: 120.1%;
 }
 #about-ai .about_image_box img.pc-only {
  display: none;
}

 #about-ai .about_image_box img.sp-only {
  display: block;
  position: absolute;
  height: auto;
  width: 100%;
  top: 0;
 }



/* MEDIA COVERAGE */

/* こんなシーンで大活躍 */

#scenes{
  padding-bottom: 31.25vw;
  padding-top: 104px;

 }
 #scenes .scene_main_title{
  display: flex;
  justify-content: center;
  position: relative;
  letter-spacing: 0;
  margin: 0 auto 10vw auto;
  width: 61.56vw;
  height: 15vw;
 }


 #scenes .scene_main_title span {
  display: inline-flex;
  position: relative;
  z-index: 2;
  align-items: center;     /* 垂直方向の中央揃え */
  justify-content: center;
  z-index: 2;
  /* 本体のグラデーション */
  border: 4px solid rgba(239, 239, 239, 0.3);
  box-sizing: border-box;
  background: linear-gradient(90deg, #0079BD 0%, #04A79B 100%);
  color: #fff;
  padding: 5vw 7.34vw;
  white-space: nowrap;
  border-radius: 50px;
  font-size: 4.68vw;
  font-weight: bold;
  /* 影は本体と突起を合わせた形に当たるように filter に変更するのがおすすめ */
 
}

#scenes .scene_main_title span::after {
  content: "";
  position: absolute;
  /* 突起を本体の下端に配置 */
  bottom: -3.5vw; /* 突起の高さに合わせて調整 */
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% - 2px);
  /* 突起のサイズ指定 */
  width: 9vw;  /* 三角形の底辺の幅 */
  height: 4vw; /* 三角形の高さ */
  border: 4px solid rgba(239, 239, 239, 0.3);
  /* ★重要：本体と同じグラデーションを適用 */
  /* 三角形は小さいので、中央付近の色（#0290adなど）で単色塗りしても自然です */
  background: linear-gradient(90deg, #0079BD 0%, #04A79B 100%);

  /* ★重要：clip-pathで下向きの三角形に切り抜く */
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  
  z-index: 1;
}

/* 吹き出し全体に影をつけたい場合（本体+三角形を合わせた影になります） */
#scenes .scene_main_title {
  filter: drop-shadow(0 4px 15px rgba(0, 121, 189, 0.3));
}



#scenes .inner_wrrapper_scenes{
  width: 75vw;
  margin: 0 auto;
 /* padding: 0 12.5vw; */
}

#scenes .scene_list{
  display: flex;
  flex-direction: column;
  gap: 10vw; 
  padding: 0;
}
#scenes .scene_item {
  text-align: center;
  list-style: none;
}

#scenes .scene_img {
  position: relative;
  background: #fff;
  padding: 1.56vw 2.5vw;
  border-radius: 6.25vw;
  margin-bottom: 4vw;
  box-shadow: 14.84vw 10.78vw 11.09vw rgb(51, 147, 202,0.05),
  6.56vw 4.84vw 8.12vw rgb(51, 147, 202,0.09);
}

#scenes .scene_img::before{
  content: '';
  display: block;
  padding-top: 61.3%;
}

#scenes .scene_img img {
  position: absolute;
  border-radius: 5.93vw;
  top: 1.56vw;   
  left: 2.5vw;
  width: calc(100% - 5vw); 
  height: calc(100% - 3.12vw); 
}

#scenes .scene_title{
    font-size: 4.6vw;
    color: rgba(8, 52, 97, 1);
    margin-bottom: 1.25vw;
    font-weight: bold;
    letter-spacing: 0;
}

#scenes .scene_text{
  font-size:3.75vw;
  line-height: 1.67;
  text-align: left;
  color: rgba(8, 52, 97, 1);
  letter-spacing: 0;
  font-weight: 400
}


/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  タブレット（641px〜1919px）
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
@media screen and (min-width: 641px) and (max-width: 1391px){
/* うちのAI Avatarとは？ */
#about-ai {
  padding: 0px 15vw 0px 15vw;
  margin-bottom: 2vw;
}

#about-ai .about_content {
  justify-content: center;
  max-width: 30.6vw;
  gap: 2vw;
}

#about-ai .about_logo {
  width: 4.6vw;
  height: 2.6vw;
}

#about-ai .about_logo img {
  width: 100%;
  height: auto;
}

#about-ai .about_title {
  margin-bottom: 0px;
  font-size: 1.6vw;
 }

 #about-ai .about_description {
  font-size: 0.9vw;
  line-height: 2.1vw;
  overflow-wrap: break-word;
 }


#about-ai .about_image{
  margin:0;
  max-width: 33vw;

 }

 #about-ai .about_image_box::before{
  content: "";
  display: block;
  padding-top: 84.4%;
 }
#about-ai .inner_wrapper_about_ai{
  flex-direction: row;
  gap:2.5vw;
  max-width: 1328px;
}

#about-ai .about_image_box img.sp-only {
  display: none;
}

#about-ai .about_image_box img.pc-only {
  display: block;
  position: absolute; 
  height: auto;
  width: 100%;
  top: 0;
}

/* MEDIA COVERAGE */

/* こんなシーンで大活躍 */
}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
  PC（1920px〜）
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
@media screen and (min-width: 1392px){
/* うちのAI Avatarとは？ */

#about-ai {
  padding: 0px 296px 0px 296px;
  margin-bottom: 40px;
}

#about-ai .about_content {
  justify-content: center;
  gap: 40px;
  max-width: 589px;
}

#about-ai .about_logo {
  width: 89px;
  height: 50px;
}


#about-ai .about_title {
  margin-bottom: 0px;
  font-size: 32px;
 }

 #about-ai .about_description {
  font-size: 18px;
  line-height: 42px;
  overflow-wrap: break-word;
 }


#about-ai .about_image{
  margin:0;
  max-width: 645px;

 }

 #about-ai .about_image_box::before{
  content: "";
  display: block;
  padding-top: 84.4%;
 }
#about-ai .inner_wrapper_about_ai{
  flex-direction: row;
  gap:48px
}

#about-ai .about_image_box img.sp-only {
  display: none;
}

/* PC用を表示する */
#about-ai .about_image_box img.pc-only {
  display: block;
  position: absolute; /* 元のレイアウトを維持 */
  height: auto;
  width: 100%;
  top: 0;
}

/* MEDIA COVERAGE */

/* こんなシーンで大活躍 */
#scenes .inner_wrrapper_scenes {
  padding: 0;
  max-width: 1328px; /* コンテンツ最大幅 */
  margin: 0 auto;
}


#scenes .scene_main_title{
 max-width: 372px; 
 height: 96px;
 margin-bottom: 142px;
}



#scenes .scene_main_title span {
  font-size: 26px;
  padding: 30px 56px;
 
}


#scenes .scene_main_title span::after {
  width: 68px;
  height: 36px; 
}





#scenes .scene_list {
  flex-direction: row; 
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 74px 0;
}

#scenes .scene_item {
  text-align: center; 
}

#scenes .scene_item.row-top {
  width: 32%;
}

#scenes .scene_item:not(.row-top) {
  width: calc((100% - (48px * 3)) / 4);

}

#scenes .scene_img {
  padding: 9px 14px;
  border-radius: 20px;
  box-shadow: 95px 69px 71px rgb(51, 147, 202,0.05),
  42px 31px 52px rgb(51, 147, 202,0.09); 
  margin-bottom: 28px;
}

#scenes .scene_img img {
  position: absolute;
  top: 9px;
  left: 14px;
  width: calc(100% - 28px);
  height: calc(100% - 18px);
  border-radius: 20px;
  border-bottom: 28px;
  /* border-radius: 15px; */
  /* object-fit: cover; */
}


#scenes .scene_title, #scenes .scene_text{
  padding: 0 17px;
}

#scenes .scene_title {
   font-size: 28px; 
   margin-bottom: 8px; 
}

#scenes .scene_text { 
  font-size: 20px; 
  line-height: 1.6;
 
}

}