@font-face {
  font-family: "Arial";
  src: url("https://media.aws.locondo.jp/fitfitstatic/common/img/banner/lp/friends/img/ARIAL.TTF");
  font-weight: 400;
}

@font-face {
  font-family: "Arial";
  src: url("https://media.aws.locondo.jp/fitfitstatic/common/img/banner/lp/friends/img/ARIAL.TTF");
  font-weight: 700;
}

#idfriends * {
  font-family: "Noto Sans JP", sans-serif;
  color: #2B2B2B;
  font-weight: 400;
}

/*============================
font------------------------
font-family: "Noto Sans JP", sans-serif;
font-family: "Arial", "Helvetica Neue", Helvetica, sans-serif;

color------------------------
black #2B2B2B
red   #CF0035
beige #FAF5ED
gray  #F6F5F3
============================*

/*============================
#caution
============================*/
#idfriends #caution {
  margin: 80px 0;
}
#idfriends .caution__wrap {
  max-width: 760px;
  margin: 0 auto;
  background-color: #F6F5F3;
  padding: 24px;
}
#idfriends .caution__wrap .section__title .en {
  font-size: 16px;
  line-height: 18px;
}
#idfriends .caution__wrap .section__title .ja {
  margin-top: 4px;
  font-size: 24px;
  line-height: 1.4;
}
#idfriends .caution__wrap .caution__list {
  margin-top: 16px;
	list-style-type: disc;
  padding-left: 26px;
}
#idfriends .caution__wrap .caution__list li {
  font-size: 16px;
  line-height: 1.6;
}
#idfriends .caution__wrap .caution__list li:nth-child(n+2) {
  margin-top: 0.45em;
}

/*== sp ==*/
@media (max-width: 768px) {
  #idfriends #caution {
    margin: 32px 0 0;
  }
  #idfriends .caution__wrap {
    max-width: 100%;
    padding: 16px 8px;
  }
  #idfriends .caution__wrap .section__title .en {
  }
  #idfriends .caution__wrap .section__title .ja {
    line-height: 1.2;
  }
  #idfriends .caution__wrap .caution__list {
    margin-top: 8px;
    padding-left: 20px;
  }
  #idfriends .caution__wrap .caution__list li {
  }
  #idfriends .caution__wrap .caution__list li:nth-child(n+2) {
    margin-top: 0.45em;
  }
}

/*============================
#faq
============================*/
#idfriends #faq {
  padding-top: 80px;
}
#idfriends .faq__wrap {

}
#idfriends .faq__con {
  margin-top: 48px;
}
#idfriends .question__row {
  background-color: #FAF5ED;
  display: table;
  min-height: 72px;
  width: 100%;
}
#idfriends .question__row .question__num {
  display: table-cell;
  text-align: center;
  width: 72px;
  height: auto;
  background-color: #CF0035;
  position: relative;
  color: #fff;
  font-size: 24px;
  line-height: 1;
  white-space: nowrap;
  font-weight: bold;
  font-family: "Arial", "Helvetica Neue", Helvetica, sans-serif;
  vertical-align:middle;
}
#idfriends .question__row h3 {
  width: calc(100% - 72px);
  display: table-cell;
  vertical-align:middle;
}
#idfriends .question__row h3 span {
  padding: 8px 16px;
  display: block;
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
  text-align: left;
    letter-spacing: 0;
}

#idfriends .answer__row {
  display: table;
  min-height: 72px;
  width: 100%;
  margin-top: 16px;
}
#idfriends .answer__row .answer__icon {
  display: block;
  text-align: center;
  width: 72px;
  height: 72px;
  border: 8px solid #fff;
  background-color: #FAF5ED;
  position: relative;
  border-radius: 50%;
}
#idfriends .answer__row .answer__icon span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 100%;
  color: #2B2B2B;
  font-size: 24px;
  line-height: 1;
  white-space: nowrap;
  font-weight: bold;
  font-family: "Arial", "Helvetica Neue", Helvetica, sans-serif;
}
#idfriends .answer__row .answer__con {
  width: 100%;
  display: table-cell;
  vertical-align:middle;
  padding: 8px 16px;
}
#idfriends .answer__row .answer__con p {
  font-size: 18px;
  line-height: 1.4;
}

#idfriends .faq__img-box {
  width: calc(100% - 72px);
  margin-left: auto;
}

#idfriends .answer__img {
  max-width: 704px;
  width: 100%;
  height: auto;
  margin: 32px auto 0;
}
#idfriends .code__btn {
  margin: 32px auto 0;
}

#idfriends .answer__steps {

}
#idfriends .answer__step {
  max-width: 704px;
  width: 100%;
  height: auto;
  margin: 32px auto 0;
}
#idfriends .answer__step .answer__img {
  margin-top: 0;
}
#idfriends .answer__step .answer__description {
  margin-top: 8px;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: 0.01em;
} 
#idfriends .answer__step .answer__description span {
  font-size: 14px;
}

#idfriends .answer__row.has-list {

}

#idfriends .answer__row.has-list .answer__con p ,
#idfriends .answer__row.has-list .answer__con ul li {
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: 0.01em;
}
#idfriends .answer__row.has-list .answer__con ul {
  margin: 1.3em 0;
  line-height: 2;
	padding-left: 24px;
	list-style-type: disc;
}
#idfriends .answer__row.has-list .answer__con ul li {
  line-height: 2;
}


/*== sp ==*/
@media (max-width: 768px) {
  #idfriends #faq {
    padding-top: 32px;
  }
  #idfriends .faq__wrap {

  }
  #idfriends .faq__con {
    margin-top: 24px;
  }
  #idfriends .question__row {
    background-color: #FAF5ED;
    display: table;
    min-height: 64px;
    width: 100%;
  }
  #idfriends .question__row .question__num {
    width: 56px;
    color: #fff;
    font-size: 20px;
    line-height: 1;
  }
  #idfriends .question__row h3 {
    width: calc(100% - 56px);
  }
  #idfriends .question__row h3 span {
    padding: 14px 16px;
    font-size: 16px;
    letter-spacing: 0;
  }

  #idfriends .answer__row {
    min-height: 56px;
    width: 100%;
    margin-top: 4px;
  }
  #idfriends .answer__row .answer__icon {
    width: 56px;
    height: 56px;
    border: 4px solid #fff;
    border-radius: 50%;
  }
  #idfriends .answer__row .answer__icon span {
    font-size: 20px;
  }
  #idfriends .answer__row .answer__con {
    width: 100%;
    display: table-cell;
    vertical-align:middle;
    padding: 0;
    padding-left: 16px;
  }
  #idfriends .answer__row .answer__con p {
    font-size: 16px;
    line-height: 1.6;
  }

  #idfriends .faq__img-box {
    width: 100%;
    margin-right: auto;
  }

  #idfriends .answer__img {
    max-width: 100%;
    margin: 16px auto 0;
  }
  #idfriends .code__btn {
    margin: 16px auto 0;
  }
  #idfriends .answer__step {
    max-width: 100%;
    margin: 16px auto 0;
  }
  #idfriends .answer__step .answer__img {
    margin-top: 0;
  }
  #idfriends .answer__step .answer__description {
    margin-top: 4px;
    letter-spacing: 0;
  } 
  #idfriends .answer__step .answer__description span {
    font-size: 14px;
  }

  #idfriends .answer__row.has-list .answer__con p ,
  #idfriends .answer__row.has-list .answer__con ul li {
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0;
  }
  #idfriends .answer__row.has-list .answer__con ul {
    margin: .3em 0;
    line-height: 1.6;
    padding-left: 20px;
  }
  #idfriends .answer__row.has-list .answer__con ul li {
    line-height: 1.6;
  }
}

/*============================
#hou-to
============================*/
#idfriends #hou-to {
  padding-top: 80px;
}

#idfriends .hou-to__wrap {
  margin-top: 40px;
}
#idfriends .hou-to__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 32px;
}
#idfriends .hou-to__con {
  display: block;
  width: 100%;
  height: auto;
}
#idfriends .step-tag {
  display: block;
  font-family: "Arial", "Helvetica Neue", Helvetica, sans-serif;
  color: #fff;
  background-color: #CF0035;
  font-size: 18px;
  line-height: 21px;
  width: fit-content;
  width: 78px;
  padding: 6px 0 2px;
  text-align: center;
  font-weight: 700;
}
#idfriends .hou-to__con img {
  display: block;
  width: 100%;
  height: auto;
}
#idfriends .hou-to__con .how-to__text {
  margin-top: 16px;
  font-size: 18px;
  line-height: 1.3;
  letter-spacing: 0.01em;
}
#idfriends .hou-to__con .hou-to__caution {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.4;
  text-align: justify;
}
#idfriends #hou-to .code__btn {
  margin: 40px auto 0;
}
#idfriends .code__btn {
  padding: 16px 72px;
  white-space: nowrap;
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  background-color: #2B2B2B;
  border-radius: 200px;
  display: block;
  width: fit-content;
  height: auto;
}

/*== sp ==*/
@media (max-width: 768px) {
  #idfriends #hou-to {
    padding-top: 32px;
  }

  #idfriends .hou-to__wrap {
    margin-top: 24px;
  }
  #idfriends .hou-to__list {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  #idfriends .hou-to__con {

  }
  #idfriends .step-tag {

  }
  #idfriends .hou-to__con img {

  }
  #idfriends .hou-to__con .how-to__text {
    margin-top: 8px;
    font-size: 18px;
    letter-spacing: 0;
  }
  #idfriends .hou-to__con .hou-to__caution {
    margin-top: 4px;
    font-size: 14px;
    line-height: 1.4;
    text-align: unset;
  }
  #idfriends #hou-to .code__btn {
    margin: 16px auto 0;
  }
  #idfriends .code__btn {
    padding: 16px 40px;
    font-size: 16px;
  }
}

/*============================
#about
============================*/
#idfriends #about {
  padding-top: 80px;
}

#idfriends .about__text {
  margin-top: 24px;
  font-size: 20px;
  line-height: 2;
  letter-spacing: 0.02em;
  text-align: center;
}
#idfriends .about__text span {
  font-weight: bold;
}
#idfriends .about__caution {
  margin-top: 24px;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0.02em;
  text-align: center;
}

/*== sp ==*/
@media (max-width: 768px) {
  #idfriends #about {
    padding-top: 32px;
  }

  #idfriends .about__text {
    margin-top: 16px;
    font-size: 18px;
    line-height: 1.8;
    text-align: left;
    letter-spacing: 0;
  }
  #idfriends .about__caution {
    margin-top: 4px;
    font-size: 14px;
    text-align: left;
    letter-spacing: 0;
  }
}

/*============================
#mv
============================*/
#idfriends #mv {
  padding: 48px 0 53px;
  background: #FAF5ED;
}
#idfriends .mv__inner {
  max-width: 1048px;
  width: 100%;
  padding: 0 24px;
  margin: 0 auto;
}

#idfriends .mv__inner img {
  max-width: 740px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

/*== sp ==*/
@media (max-width: 768px) {
  #idfriends #mv {
    padding: 0;
  }
  #idfriends .mv__inner {
    padding: 0;
  }

  #idfriends .mv__inner img {

  }
}

/*============================
#idfriends instagram
============================*/
#new-contents section.fitfit-official{
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #F7F6F4;
} 

#idfriends .fitfit-official-item{
  display: flex;
  gap: 16px;
  justify-content: center;
  align-items: center;
  max-width: 870px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
#idfriends .fitfit-official-item-img{
  max-width: 116px;
  width: 100%;
  height: auto;
  aspect-ratio: 116/116;
}
#idfriends .fitfit-official-item-img img{
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.fitfit-official-item-text{
  display: flex;
  flex-direction: column;
  gap: 16px;
}
#idfriends .fitfit-official-item-text-title{
  font-size: 24px;
  color: #222222;
  line-height: 1;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bold;
}
#idfriends .fitfit-official-item-text-text{
  font-size: 16px;
  font-weight: 400;
  color: #222222;
  line-height: 1.7;
  font-family: 'Noto Sans JP', sans-serif;
}
#idfriends  .fitfit-official-item-text-btn a{ 
  display: block;
  width: 100%;
  height: 100%;
  color: #222222;
  font-size: 16px;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  text-decoration: underline;
}

/*== sp ==*/
@media (max-width: 768px) {
  #idfriends  section.fitfit-official{
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: #fff;
  } 
  #idfriends .fitfit-official-item{
    display: block;
  }
  #idfriends .fitfit-official-item-img{
    width: 56px;
    height: auto;
    margin: 0 auto;
  }
  #idfriends .fitfit-official-item-img img{
    
  }
  #idfriends .fitfit-official-item-text {
    gap: 0;
  }
  #idfriends .fitfit-official-item-text-title{
    margin: 16px auto 0;
    background-color: #CF0035;
    color: #fff;
    text-align: center;
    max-width: 165px;
    width: 100%;
    height: auto;
    border-radius: 100px;
    padding: 14px;
    white-space: nowrap;
    font-size: 16px;
    line-height: 1;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
  }
  #idfriends .fitfit-official-item-text-text{
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    line-height: 28px;
    text-align: center;
    margin-top: 24px;
    font-weight: 400;
    color: #272727;
  }
}


/*============================
#idfriends base
===========================*/
#idfriends .section__title {
  
}
#idfriends .section__title span.en {
  font-family: "Arial", "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 23px;
  text-align: center;
  color: #CF0035;
  display: block;
  width: 100%;
}
#idfriends .section__title h2.ja {
  margin-top: 4px;
  font-size: 32px;
  line-height: 1.2;
  font-weight: 400;
  text-align: center;
  display: block;
  width: 100%;
}
@media (max-width: 768px) {
  #idfriends .section__title {

  }
  #idfriends .section__title span.en {

  }
  #idfriends .section__title h2.ja {
    font-size: 30px;
    line-height: 1.3;
    letter-spacing: 0.01em;
  }
}

.code__btn {
  opacity: 1;
  transition: .3s;
}
.code__btn:hover {
  opacity: .6;
  transition: .3s;
}

.ifPc {
  display: block;
 
}
@media (max-width: 768px) {
  .ifPc {
    display: none;
  }
}

.ifSp {
  display: none;
}
@media (max-width: 768px) {
  .ifSp {
    display: block;
  }
}


#idfriends .inner{
  max-width: 1048px;
  width: 100%;
  padding: 0 24px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  #idfriends .inner{
    padding: 0 24px;
  }
}

.inner-1200{
  max-width: 1250px;
  width: 100%;
  padding: 0 25px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .inner-1200{
    padding: 0 16px;
  }
}
.inner-1440{
  max-width: 1490px;
  width: 100%;
  padding: 0 25px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .inner-1440{
    padding: 0 15px;
  }
}
/* Breadcrumbs スタイル */
.breadcrumbs {
  padding: 15px 0;
  background: #F7F6F4;
}

.breadcrumbs ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}

.breadcrumbs li {
  font-size: 12px;
  color: #666;
}

.breadcrumbs li a {
  color: #666;
  text-decoration: none;
  transition: opacity 0.3s;
}

.breadcrumbs li a:hover {
  opacity: 0.7;
}

.w1024auto {
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 20px;
}

@media (max-width: 768px) {
  .breadcrumbs {
    display: none;  /* SPでは非表示（.ifPcクラスが指定されているため） */
  }
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}


.sp{
  display: none;
}
@media (max-width: 768px) {
  .sp{
    display: block;
  }
}
.pc-only{
  display: block;
}
@media (max-width: 768px) {
  .pc-only{
    display: none;
  }
}