@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-family: "Kaisei HarunoUmi", sans-serif; */
	font-weight: bold;
	font-style: normal;
	font-size: 16px;
	line-height: 2.0;
	color: #222;
	overflow-x: clip;
}
#fujimoriyu img{
	width: 100%;
	vertical-align: bottom;
}
#fujimoriyu .sp {
	display: none;
}
#fujimoriyu .inner {
    max-width: 1160px;
    padding: 70px 30px;
    position: relative;
}
#fujimoriyu a{
	display: block;
}
#fujimoriyu .fadeIn,
#fujimoriyu .fadeInRight{
  opacity:0;
}
#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: 70vh;
}

#fujimoriyu .kv::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height: 100%;
  background: #000d2d8c;
  z-index: 1;
}
#fujimoriyu h1.logo {
  max-width: 500px;
  margin: 0 auto;
  opacity: 0;
  position:absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
#fujimoriyu h2.date {
  display: inline-block;
  background: var(--yellow);
  text-align: center;
  margin: 0 auto;
  padding: 0px 20px;
  color: var(--navy);
  font-family: var(--serif);
  font-size: clamp(1.8rem, 2.2vw ,3rem);
  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: 60%;
    margin: 0 auto 5%;
    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: 3.6rem;
    line-height: 1.5;
    text-align: center;
    margin: 0 0 4%;
}
#fujimoriyu span.underline {
    border-bottom: 2px solid var(--navy);
}
#fujimoriyu span.big_text {
    font-size: 5rem;
}
#fujimoriyu .ttl_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin: 5% 0;
}

#fujimoriyu .ttl_img {
    width: 16%;
}

#fujimoriyu .lead_wrap {
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
    /* gap: 30px; */
    margin: 0 0 5%;
}
#fujimoriyu .lead_img {
    width: 32%;
}
#fujimoriyu .lead {
    font-size: 1.8rem;
    position: relative;
    font-weight: normal;
}
#fujimoriyu span.bold {
    font-weight: bold;
    font-size: 2.1rem;
}
#fujimoriyu .lead::after {
    content: "";
    background: url(../images/yuge02.png) no-repeat top center;
    background-size: contain;
    aspect-ratio: 171 / 148;
    position: absolute;
    width: 20%;
    right: 0;
}
/*program*/
#fujimoriyu #program {
  background: url(../images/bg_program.png) top center;
  background-repeat: repeat;
}
#fujimoriyu ul.flow_list {
  position: relative;
    display: flex;
    justify-content: space-between;
    margin: 5% 5% 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: 12%;
    top: -12%;
    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: 9%;
    bottom: -10%;
    right: -6%;
}
#fujimoriyu ul.flow_list li{
    width: 32%;
    padding: 3%;
    border: 6px solid #aaaaaa;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
#fujimoriyu .number {
    font-size: 3rem;
    font-family: var(--serif);
    text-align: center;
}
#fujimoriyu .flow_ttl {
    font-size: 2.5rem;
    margin-bottom: 5%;
    font-family: var(--serif);
}

#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: 320px;
  margin: 0 0 2%;
  padding: 2%;
  background: #FF0033;
  border-radius: 15px;
  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;
    align-items: center;
    margin-bottom: 5%;
}
#fujimoriyu .sns_img {
    width: 11%;
}
#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: 2.2rem;
    text-align: center;
    margin: 0 0 1%;
    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);
  color: #fff;
  position: relative;
}
#fujimoriyu #form .ttl{
  text-align: center;
}
#fujimoriyu .form_btn{
  width: 320px;
  margin: 3% auto 5%;
  padding: 1%;
  background: #fff;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  color: var(--navy);
  font-family: var(--serif);
  font-size: 2.4rem;
  transition: 0.3s ease;
  border: 3px solid #fff;
}
#fujimoriyu a.form_btn:hover {
    opacity: 0.6;
}
#fujimoriyu .form_text {
    text-align: center;
    position: relative;
}