@charset "utf-8";
:root {
  --navy: #052564;
  --yellow: #e2c54b;
  --serif: "Kaisei HarunoUmi", serif;
}
#fujimoriyu {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: bold;
	font-style: normal;
	font-size: 15px;
	line-height: 1.8;
	color: #222;
	overflow-x: clip;
}
#fujimoriyu img{
	width: 100%;
	vertical-align: bottom;
}
#fujimoriyu .pc {
	display: none;
}
#fujimoriyu .inner {
    width: 90%;
    margin: 0 auto;
    padding: 40px 0;
    position: relative;
}
#fujimoriyu .fadeIn {
  opacity: 0;
  transform: translateY(40px);
}
#fujimoriyu #header{
	position: relative;
	width: 100%;
	background: #ffffff;
}
#fujimoriyu .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#fujimoriyu .kv {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-height: 70svh;
}

#fujimoriyu .kv::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height: 100%;
  background: #000d2d8c;
  z-index: 1;
}
#fujimoriyu h1.logo {
  width: 72%;
  margin: 0 auto;
  opacity: 0;
  position:absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
#fujimoriyu h2.date {
  width: 95%;
  background: var(--yellow);
  text-align: center;
  margin: 0 auto;
  padding: 2%;
  color: var(--navy);
  font-size: clamp(1.6rem, 5.1vw, 2.7rem);
  font-family: var(--serif);
  opacity: 0;
  position:absolute;
  bottom: 3%;
  left:50%;
  transform:translateX(-50%);
  z-index: 2;
}
#fujimoriyu h1.logo img,
#fujimoriyu h2.date img{
  width:100%;
  height:auto;
  display:block;
  transform:translateZ(0);
}
/*intro*/
#fujimoriyu #intro,
#fujimoriyu #sns {
    background: url(../images/bg.jpg) no-repeat top center;
    background-size: cover;
}
#fujimoriyu .video {
    width: 100%;
    margin: 0 auto 6%;
    max-width: 800px;
}
#fujimoriyu .videoWrapper {
    position: relative;
    padding-bottom: 56.25%;
}
#fujimoriyu .videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#fujimoriyu .ttl {
    font-family: var(--serif);
    font-size: 1.9rem;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    margin-bottom: 5%;
}
#fujimoriyu span.underline {
    border-bottom: 1px solid var(--navy);
}
#fujimoriyu span.big_text {
    font-size: 2.7rem;
}
#fujimoriyu .ttl_wrap {
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin: 7% 0;
}

#fujimoriyu .ttl_img {
    width: 35%;
}

#fujimoriyu .lead_wrap {
    margin: 0 0 5%;
}
#fujimoriyu .lead_img {
    width: 100%;
    margin-bottom: 3%;
}
#fujimoriyu .lead {
    font-size: 1.5rem;
    position: relative;
    font-weight: 500;
}
#fujimoriyu span.bold {
    font-weight: bold;
    font-size: 1.7rem;
}
#fujimoriyu .lead::after {
    content: "";
    background: url(../images/yuge02.png) no-repeat top center;
    background-size: contain;
    aspect-ratio: 171 / 148;
    position: absolute;
    width: 13%;
    right: 0;
}
/*program*/
#fujimoriyu #program {
  background: url(../images/bg_program.png) top center;
  background-repeat: repeat;
}
#fujimoriyu ul.flow_list {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 15px;
  margin: 5% 0 10%;
}
#fujimoriyu ul.flow_list::before {
    content: "";
    background: url(../images/shampoo.png) no-repeat top center;
    background-size: contain;
    aspect-ratio: 348 / 215;
    position: absolute;
    width: 18%;
    top: -12px;
    left: -5%;
}
#fujimoriyu ul.flow_list::after {
    content: "";
    background: url(../images/oke.png) no-repeat top center;
    background-size: contain;
    aspect-ratio: 225 / 219;
    position: absolute;
    width: 14%;
    bottom: -2%;
    right: -2%;
}
#fujimoriyu ul.flow_list li{
    width: 100%;
    padding: 3%;
    border: 5px solid #8d8d8d;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
#fujimoriyu .number {
    font-size: 2rem;
    font-family: var(--serif);
    text-align: center;
}
#fujimoriyu .flow_ttl {
    font-size: 2.3rem;
    margin-bottom: 5%;
    font-family: var(--serif);
    text-align: center;
}
#fujimoriyu .flow_text {
    font-weight: 500;
}

#fujimoriyu .photo_swiper{
	overflow: hidden;
	object-fit: cover;
	pointer-events: none;
}
#fujimoriyu .photo_swiper .swiper-wrapper{
	transition-timing-function: linear;
}
#fujimoriyu .photo_swiper .swiper-slide{
	width: auto;
}

#fujimoriyu .photo_swiper img{
	width: 350px;
	height: auto;
	display: block;
}

/*SNS*/
#fujimoriyu a.yt_btn {
  width: 90%;
  margin: 0 0 5%;
  padding: 15px;
  background: #FF0033;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  color: #fff;
  font-size: 1.8rem;
  transition: 0.3s ease;
}
#fujimoriyu a.yt_btn:hover{
  opacity: 0.6;
}

#fujimoriyu a.yt_btn img {
    display: block;
    width: 45px;
    margin-left: 10px;
}
#fujimoriyu .sns_wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /* gap: 30px; */
    margin-bottom: 10%;
}

#fujimoriyu .sns_img {
    width: 20%;
}
#fujimoriyu ul.sns_list {
    display: flex;
    justify-content: center;
    gap: 20px;
}
#fujimoriyu a.sns_btn{
    transition: 0.3s ease;
}

#fujimoriyu a.sns_btn:hover {
    opacity: 0.6;
}
#fujimoriyu a.sns_btn img {
  width: 60px;
}
#fujimoriyu .sns_list_text {
    color: var(--navy);
    font-size: 1.8rem;
    text-align: center;
    margin: 0 0 3%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
#fujimoriyu .sns_list_text::before,
#fujimoriyu .sns_list_text::after {
    content: "";
    display: inline-block;
    flex-shrink: 0;
    width: 2px;
    height: 23px;
    background-color: var(--navy);
    position: static;
}

#fujimoriyu .sns_list_text::before {
    transform: rotate(-35deg);
}

#fujimoriyu .sns_list_text::after {
    transform: rotate(35deg);
}
/*form*/
#fujimoriyu #form{
  background: var(--navy);
  position: relative;
  color: #fff;
}
#fujimoriyu #form .ttl{
  text-align: center;
}
#fujimoriyu .form_btn{
  width: 90%;
  margin: 3% auto 5%;
  padding: 15px;
  color: var(--navy);
  border-radius: 10px;
  display: flex;
  justify-content: center;
  background: #fff;
  font-family: var(--serif);
  font-size: 2.2rem;
  transition: 0.3s ease;
}
#fujimoriyu a.form_btn:hover {
    opacity: 0.6;
}
#fujimoriyu .form_text {
    position: relative;
}