@charset "UTF-8";

html {
  scroll-behavior: smooth;
}
body {
  width: 100%;
  margin: 0 auto;
  font-family: "Zen Kaku Gothic New", "Helvetica Neue", "Helvetica",
    "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo",
    sans-serif;
  background-color: #FFFFFF;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  transition: var(--transit-default);
  z-index: 4;
}

h2 {
  margin: 0 auto;
}

img {
  width: 100%;
  vertical-align: bottom;
}

ul {
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

:root {
  --ease-in-out: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.medibot_container {
  text-align: center;
}
/* @media screen and (min-width: 1001px) {
  #wrapper {
    display: flex;
  }
}
@media screen and (max-width: 1000px) {
  #wrapper {
    display: block;
  }
} */

@media screen and (max-width: 80em) {
  #wrapper .navigation,
  #wrapper .cta {
    display: none;
  }
}

#wrapper.is-show {
  opacity: 1;
  filter: blur(0);
  pointer-events: auto;
}

.bg-wrapper {
  position: fixed;
  inset: 0;
  z-index: -1;
  background-color: #ffffff;
}

.main_contents--bg {
  position: sticky;
  top: 0;
  z-index: 0;
  width: max(25vw, 600px);
  max-width: 600px;
  margin-inline: auto;
}

.main_contents {
  position: relative;
  z-index: 1;
  width: max(25vw, 600px);
  max-width: 600px;
  margin-inline: auto;
  overflow: clip;
}

@media screen and (max-width: 47.9375em) {
  .main_contents {
    width: 100%;
  }
}

.main_contents main {
  font-size: calc(16 * var(--cont_calc));
  background-color: #fff;
}

.home .main_contents {
  padding-top: 50vh;
}

@media screen and (max-width: 30em) {
  .home .main_contents {
    padding-top: 100vh;
  }
}

.main_contents main {
  background-color: #fff;
}

.load_active.loaded,
.load_active.active,
.scroll_active.loaded,
.scroll_active.active {
  transform: translateY(0);
  opacity: 1;
}
/* ========================
btn
=========================== */
.pl_fv-cta_btn001_sp {
  text-align: center;
}
.pl_fv-cta_btn001_sp .btn-form {
  width: 85%;
  display: block;
  padding: 1rem 1rem;
  text-decoration: none;
  border-radius: 132px;
background: #06C755;
box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.50);
  color: #fff;
  border: 1px solid #06C755;
  border-radius: 4rem;
  margin: 0 auto;
}
.pl_fv-cta_btn001_sp .btn-form span {
  vertical-align: bottom;
  margin-left: 10px;
}
/*ボタンを押したとき*/
.pl_fv-cta_btn001_sp .btn-form:active,
.pl_fv-cta_btn001_sp .btn-form:hover {
  background-color: #fff;
  color: #06C755;
  -webkit-transform: translateY(4px);
  transform: translateY(4px); /*下に動く*/
box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.50);
}

.pl_fv-cta_btn001_sp .btn-meetings {
  width: 85%;
  display: block;
  padding: 1rem 1rem;
  text-decoration: none;
  background: #FFF; /*ボタン色*/
  color: #2b2b2b;
  border: 1px solid #2b2b2b;
box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.50);
  border-radius: 4rem;
  margin: 1rem auto;
}
.pl_fv-cta_btn001_sp .btn-meetings span {
  vertical-align: bottom;
  margin-left: 10px;
}

/*ボタンを押したとき*/
.pl_fv-cta_btn001_sp .btn-meetings:active,
.pl_fv-cta_btn001_sp .btn-meetings:hover {
  background-color: #2b2b2b;
  color: #fff;
  -webkit-transform: translateY(4px);
  transform: translateY(4px); /*下に動く*/
box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.50);
}
/* ========================
cta
=========================== */
.btn-on-text{
  font-size: 0.9rem;
  font-weight: 600;
}
.prgn_fv-cta {
  width: 90%;
  margin: 4% auto 0 auto;
}

.pl_fv-cta_btn001_sp {
  margin: 1.5rem auto 0 auto;
  width: 94%;
  padding-bottom: 2rem;
}
.pl_fv-cta_btn001_sp a{
  font-size: 1.2rem;
  font-weight: 600;
}
@media screen and (min-width: 1001px) {
  .btn-on-text{
  font-size: 1.2rem;
  font-weight: 500;
}
  .pl_fv-cta_btn001_sp a{
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
}
  .pl_fv-cta_btn001_sp {
    margin: 2.5rem auto 0 auto;
    width: 94%;
    font-size: 1.2rem;
  }
}
/* @media screen and (max-width: 1000px) {
  .pl_fv-cta_btn001_pc {
    display: none;
  }
  .pl_fv-cta_btn001_sp {
    margin: 2.5rem auto 0 auto;
    width: 94%;
  }
}
@media screen and (min-width: 1001px) {
  .pl_fv-cta_btn001_pc {
    margin: 2.5rem auto 0 auto;
    width: 94%;
  }
  .pl_fv-cta_btn001_pc a {
    display: block;
  }
  .pl_fv-cta_btn001_sp {
    display: none;
  }
} */
.prgn_fv-cta_btn002 {
  margin: 10% auto -6% auto;
  width: 94%;
}


/* ------------------------------------
ボタンの基本スタイル
------------------------------------*/

/* ボタン自体のスタイル */

.shine-button {
	display: block;		/* 形状は block */
	/* ボタンを光らせるために必要 */
	position: relative;
	/* ボタンの位置を基準にするため relative指定 */
	overflow:hidden;		/* ボタンの外の領域は非表示 */
}


/* ボタン内のリンクのスタイル 
（リンク自体でボタンを作る場合には不要） */

.shine-button a {
	display: block;	/* 形状はblock */
	text-decoration:none;	/* 下線など文字装飾は無し */
}


/* リンク自体でボタンを作る場合の追加のスタイル
（ボックス＋その中にリンクのあるボタンの場合には不要）*/

a.shine-button {
    text-decoration: none;	/* リンクの下線は非表示 */
}


/* ------------------------------------
ボタンの外側にボックス作成
（疑似要素「before」を使う）
------------------------------------*/
.shine-button::before {
	content: "";			/* 文字は表示しないので中身無しを指定 */
    
	position: absolute;	/* ボタンの位置を基準に絶対値指定する */
	display: block;		/* 形式はblock */

	background: linear-gradient(to right,rgba(255,255,255,0), rgba(255,255,255,0.9));
    /* 背景色は透明から白になるグラデーション */
	
	width: 50px;	/* 横幅 */
	height: 50px;	/* 縦幅 */

	top: -60px;	/* ボタン左上を基準に上へ60pxの位置 */
	left: -60px;	/* ボタン左上を基準に左へ60pxの位置 */


	/* アニメーションの動作指定 */
	animation-name:shine-run;	/* アニメーション名の指定 */
	animation-delay:0s;		/* アニメーションの開始時間指定 */
	animation-duration: 3s;	/* アニメーション動作時間の指定 */
	animation-timing-function: ease-in;
	/* アニメーションの動き指定（徐々に早く）*/
	animation-iteration-count: infinite;
	/* アニメーションの無限繰り返しの指定 */
}


/* ------------------------------------
アニメーションのタイミングとボックスの
拡大率、角度、透過率の指定
------------------------------------*/
@keyframes shine-run {
    0% {
        transform: scale(0) rotate(50deg);
        /* アニメ開始時は大きさ0、50度の傾き */
        
        opacity: 0;
        /* アニメ開始時は全透過 */
    }

    40% {
        transform: scale(1) rotate(50deg);
        /* 40%まで進む間に大きさを等倍に。傾きは50度のまま*/
        
        opacity: 1;
        /* 透過しない（しっかり表示される）ように1を設定 */
    }

    100% {
        transform: scale(250) rotate(50deg);
        /* 最後は元の大きさの250倍になるようにする。傾きは50度のまま*/

        opacity: 0;
        /* 全透過になるようにして、徐々に消えるような変化を付ける */
    }
}
/* ========================
fix-btn
=========================== */
.fix-btn-wrapper {
  position: fixed;
  z-index: 999;
  width: 100%;
  max-width: 999px;
  margin: 0 auto;
  bottom: 0;
  padding: 0px 2%;
  transition: opacity 1s ease-in-out;
  left: 50%;
  transform: translateX(-50%);
}

.fix_btn {
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.fix_btn.visible {
  opacity: 1;
  pointer-events: auto;
}

.fix-btn-wrapper .pl_fv-cta_btn001_sp {
  text-align: center;
  display: flex;
  gap: 5px;
  font-size: 0.85rem;
  font-weight: bolder;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 0.5rem;
}
.fix-btn-wrapper .pl_fv-cta_btn001_sp .btn-form {
  width: 98%;
  display: block;
  padding: 1rem 0.3rem;
  text-decoration: none;
  background: #06C755; /*ボタン色*/
  color: #fff;
  border: 1px solid #06C755;
  box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.50);
  border-radius: 0.5rem;
  margin: 0 auto;
}
.fix-btn-wrapper .pl_fv-cta_btn001_sp .btn-form span {
  vertical-align: bottom;
  margin-left: 10px;
}

.fix-btn-wrapper .pl_fv-cta_btn001_sp .btn-meetings {
  width: 98%;
  display: block;
  padding: 1rem 0.3rem;
  text-decoration: none;
  background: #fff; /*ボタン色*/
  color: #06C755;
  border: 1px solid #06C755;
  box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.50);
  margin: 0 auto;
  border-radius: 0.5rem;
}
.fix-btn-wrapper .pl_fv-cta_btn001_sp .btn-meetings span {
  vertical-align: bottom;
  margin-left: 5px;
}
  .fix-btn-wrapper .fix_btn .pl_fv-cta_btn001_sp a {
    font-size: 0.85rem !important;
  }
@media screen and (max-width: 500px) {
  .fix-btn-wrapper .pl_fv-cta_btn001_sp {
    font-size: 0.8rem;
  }
  .fix-btn-wrapper .pl_fv-cta_btn001_sp .btn-form span,
  .fix-btn-wrapper .pl_fv-cta_btn001_sp .btn-meetings span {
    vertical-align: middle;
    font-size: 0.8rem;
    margin-left: 3px;
  }
}

/* ==========================
Medibot header 
=========================== */

@media screen and (min-width: 1001px) {
  .header_pc {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 20;
    padding: 0.5rem 0 0.5rem 0;
    background: #ffffff;
    border-bottom: 1px solid #bfd6dc;
    display: flex;
  }
  .header_pc div:nth-child(1) {
    padding: 0 2rem;
  }
  /* .header_pc div:nth-child(2),
  .header_pc div:nth-child(3),
  .header_pc div:nth-child(4) {
    padding: 0 3rem;
  } */
  .header_pc div:nth-child(2) {
    margin-left: auto;
    padding: 0 1rem;
  }
  .header_pc div:nth-child(2) a {
    background-color: #06C755;
    color: #fff;
    padding: 0.5rem 2rem;
    border-radius: 19px;
    display: block;
    font-size: 0.875rem;
    margin-right: 2rem;
    border: 2px solid #06C755;
  }
  .header_pc div:nth-child(2) a:hover {
    background-color: #ffffff;
    border: 2px solid #06C755;
    color: #06C755;
  }
  .header_pc .logo img {
    width: 40px;
    max-width: 40px;
  }
  .header_pc div a {
    display: inline-block;
    padding-top: 0.5rem;
    text-decoration: none;
    color: #505256;
  }
  .header_pc div a:hover {
    color: #06C755;
  }
  .header_sp {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  .header_pc {
    display: none;
  }

  .header_sp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 20;
    padding: 0.5rem 0 0.5rem 0;
    background: #ffffff;
    border-bottom: 1px solid #bfd6dc;
    display: flex;
    font-size: 0.8rem;
    font-weight: 600;
  }
  .header_sp div:nth-child(1) {
    padding: 0 5px;
  }
  /* .header_sp div:nth-child(2),
  .header_sp div:nth-child(3),
  .header_sp div:nth-child(4) {
    padding: 0 0.2rem;
  } */
  .header_sp div:nth-child(2) {
    margin-left: auto;
    padding: 0 0.9rem;
  }
  .header_sp div:nth-child(2) a {
    background-color: #06C755;
    color: #fff;
    padding: 0.5rem 0.8rem;
    border-radius: 19px;
    display: block;
    font-size: 0.75rem;
    margin-right: 0;
    border: 2px solid #06C755;
    letter-spacing: 0.1rem;
  }
  .header_sp div:nth-child(2) a:hover {
    background-color: #ffffff;
    border: 2px solid #06C755;
    color: #06C755;
  }
  .header_sp .logo img {
    width: 40px;
  }
  .header_sp div a {
    display: inline-block;
    padding-top: 0.5rem;
    text-decoration: none;
    color: #505256;
  }
  .header_sp div a:hover {
    color: #06C755;
  }
}



/* ======== FOOTER ========== */

.copy {
  margin-top: 2rem;
  text-align: center;
  font-size: 0.8rem;
  color: #ffffff;
}

@media (min-width: 1001px) {
  .fix-btn-wrapper {
    display: none;
  }
  .footer_pc {
    background-color: #156984;
    padding: 2rem 2rem 1rem;
    color: #fff;
    font-size: 0.9rem;
  }
  .footer_sp {
    display: none;
  }
}

@media (max-width: 1000px) {
  .fix-btn-wrapper {
    position: fixed;
    z-index: 999;
    width: 94%;
    margin: 0 auto;
    bottom: 0;
    padding: 0px 10px;
    transition: opacity 1s ease-in-out;
    left: 50%;
    transform: translateX(-50%);
  }
  .footer_pc {
    display: none;
  }
  .footer_sp {
    background-color: #156984;
    padding: 2rem 0;
    color: #fff;
    font-size: 0.9rem;
  }
}

.fix_btn.visible {
  opacity: 1;
  pointer-events: auto;
}

.fix_btn {
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.fix_btn.visible {
  opacity: 1;
  pointer-events: auto;
}

/*/////////animation用//////////*/

.pulse,
.slick-active > div.youtube-slide-container > div {
  -webkit-animation: pulse 0.85s cubic-bezier(0.25, 0.8, 0.25, 1) both;
  animation: pulse 0.85s cubic-bezier(0.25, 0.8, 0.25, 1) both;
}

.poyo_ani {
  animation: poyo_ani 1s infinite;
}

@keyframes poyo_ani {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.fadeComein,
div.youtube-slide-container > div {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition-duration: 0.8s;
  transition-property: opacity, transform;
  transform: scale(0.9) rotate(0.0001deg);
}

.fadeComein.active,
.slick-active > div.youtube-slide-container > div {
  opacity: 1;
}

/*delay*/
.delay01 {
  transition-delay: calc(0.15s * 1);
  opacity: 0;
}

.delay02 {
  transition-delay: calc(0.15s * 2);
  opacity: 0;
}

.delay03 {
  transition-delay: calc(0.15s * 3);
  opacity: 0;
}

.delay04 {
  transition-delay: calc(0.15s * 4);
  opacity: 0;
}

.delay05 {
  transition-delay: calc(0.15s * 5);
  opacity: 0;
}

.delay06 {
  transition-delay: calc(0.15s * 6);
  opacity: 0;
}

.duration1s {
  transition-duration: 1s !important;
}

/* =============================
slidejp
================================= */
.mini-slideUp {
  -webkit-transform: translateY(5vw) scale(1);
  transform: translateY(5vw) scale(1);
  -webkit-transition-duration: 0.6s;
  transition-duration: 0.6s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: transform, opacity, filter;
  transition-property: transform, opacity, filter, -webkit-transform,
    -webkit-filter;
  opacity: 0;
  will-change: transform, opacity;
}

.mini-slideUp.active {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.mini-slideUp.about_naminami_logo.active {
  -webkit-transform: none;
  transform: none;
  opacity: 1;
}

/* =============================
slidejp
================================= */
.mini-slideUp-r {
  -webkit-transform: translateX(5vw) scale(1);
  transform: translateX(5vw) scale(1);
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: transform, opacity, filter;
  transition-property: transform, opacity, filter, -webkit-transform,
    -webkit-filter;
  opacity: 0;
  will-change: transform, opacity;
}

.mini-slideUp-r.active {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

/* =============================
slidejp
================================= */
.mini-slideUp-l {
  -webkit-transform: translateX(-5vw) scale(1);
  transform: translateX(-5vw) scale(1);
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: transform, opacity, filter;
  transition-property: transform, opacity, filter, -webkit-transform,
    -webkit-filter;
  opacity: 0;
  will-change: transform, opacity;
}

.mini-slideUp-l.active {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

/*fadein*/
@keyframes fadeInScale {
  0% {
    opacity: 0;
    transform: scale(0.8);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.fadeInScale.active {
  opacity: 0;
  transform: scale(0.8);
  animation: fadeInScale 0.4s cubic-bezier(0.34, 1.56, 0.64, 1.26) forwards;
  animation-delay: 0.2s;
  will-change: opacity, transform;
}

.fadeInScale {
  opacity: 0;
}

/*bright*/
.bright.active {
  animation: bright 1s forwards;
}

@keyframes bright {
  0% {
    filter: brightness(2);
  }

  100% {
    filter: brightness(1);
  }
}

/*rotation*/
.rotation {
  animation: 9s linear infinite rotation;
}

@keyframes rotation {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*////////*/
.fadeup {
  animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

@keyframes fadeup {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }

  80% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.reflection:after {
  content: "";
  height: 100%;
  width: 30px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 3s ease-in-out infinite;
}

@keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.scroll {
  animation: scroll 2.5s infinite;
  border: solid #9e9c9a;
  border-width: 0 0 2px 2px;
  content: "";
  margin: auto;
  position: absolute;
  top: 55%;
  right: 0px;
  left: 0px;
  transform: rotate(-45deg);
  width: 50px;
  height: 50px;
}

@keyframes scroll {
  0% {
    transform: rotate(-45deg) translate(0, 0);
  }

  80% {
    transform: rotate(-45deg) translate(-50px, 50px);
  }

  0%,
  80%,
  100% {
    opacity: 0;
  }

  40% {
    opacity: 1;
  }
}

/*fadeUpblur */
.fadeUpblur {
  opacity: 0;
  filter: blur(10px);
  transform: translateY(10px);
  transition: opacity 0.6s var(--ease-in-out), filter 0.6s var(--ease-in-out),
    transform 0.6s var(--ease-in-out);
}

.active.fadeUpblur {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
}

/*sway*/
.yure {
  animation: sway 0.6s steps(2) 0s alternate infinite;
}

@keyframes sway {
  0% {
    transform: rotate(-10deg);
  }

  20% {
    transform: rotate(-8deg);
  }

  80% {
    transform: rotate(8deg);
  }

  100% {
    transform: rotate(10deg);
  }
}

/*faq*/

/* add */
.mt000 {
  margin-top: 0;
}

.mt005 {
  margin-top: 0.5rem;
}
.mt010 {
  margin-top: 1rem;
}
.mt015 {
  margin-top: 1.5rem;
}
.mt020 {
  margin-top: 2rem;
}
.mt025 {
  margin-top: 2.5rem;
}
.mt030 {
  margin-top: 3rem;
}
.mt035 {
  margin-top: 3.5rem;
}
.mt050 {
  margin-top: 5rem;
}
.mt070 {
  margin-top: 7rem;
}

.mt058px {
  margin-top: 55px;
}
.mb005 {
  margin-bottom: 0.5rem;
}
.mb010 {
  margin-bottom: 1rem;
}
.mb015 {
  margin-bottom: 1.5rem;
}
.mb020 {
  margin-bottom: 2rem;
}
.mb025 {
  margin-bottom: 2.5rem;
}
.mb030 {
  margin-bottom: 3rem;
}

.pt015 {
  padding-top: 1.5rem;
}
.pb020 {
  padding-bottom: 2rem;
}

.w90 {
  width: 90%;
}
.w94 {
  width: 94%;
}
.w100 {
  width: 100%;
}
/* ====================================
縦ライン
==================================== */
.topSupport__border {
  position: relative;
  top: 20px;
  width: 100%;
  height: 60px;
  overflow: hidden;
}
.topSupport__border:before {
  content: "";
  display: block;
  position: absolute;
  width: 2px;
  height: 60px;
  top: 0;
  left: 0;
  right: 0;
  background: #b2b2b2;
  animation: topSupport__scrollbar 2s ease-in-out infinite;
  margin: auto;
}

@keyframes topSupport__scrollbar {
  0% {
    height: 0;
    top: 0;
  }
  30% {
    height: 100%;
  }
  100% {
    top: 100%;
  }
}
/* =============================
sideBar
================================= */

@media screen and (min-width: 1001px) {
  .sideBar {
    /* width: 20.8125rem;
    flex-shrink: 0;
    position: sticky; */
    top: 0;
    height: fit-content;
    padding-top: 5rem;
    padding-left: 3rem;
    padding-right: 2rem;
    background-color: #06c755;
  }
  .sideBar--wide {
    width: 28.125rem;
    padding-left: 3rem;
    padding-right: 2rem;
    background-color: #06c755;
  }
  .ebookSideBar {
    max-width: 750px;
    margin: 0 auto;
  }
}
.sideBar {
  position: static;
  display: flex;
  width: 100%;
  flex-direction: column;
  padding: 1rem 0 0;
  background-color: #f5fcf8;
}
.ebookSideBar {
  width: 90%;
  margin: 0 auto;
}
.sideBar__section {
  margin-top: 1rem;
}
.sideBar__section + .sideBar__section {
  margin-top: 3.5rem;
}
.ebookSideBar__title {
  color: #5a5a5a;
  padding-bottom: 1rem;
}
/* ==========================
BG
========================= */
.bg_line{
  background-color: #f5fcf8;
}
.bg_blue{
  background-color: #f4f8fc;
}
.bg_blue02{
  background-color: #c8e1e8;
}
.bg_line02{
  background-color: #06c755;
}

/* ==========================
LOGO
========================= */
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0%);
  }
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0;
}
.scroll-infinity__right {
  display: flex;
  list-style: none;
  padding: 0;
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__list--right {
  animation: infinity-scroll-right 80s infinite linear 0.5s both;
}

.scroll-infinity__item {
  height: 50px;
}
.scroll-infinity__item > img {
  height: 100%;
  width: auto;
}
