@charset "UTF-8";
/* CSS Document */

body {
	font-size: 100%;
	font-family: 'Noto Serif JP', serif;
	overflow-x: hidden;
}

main {
	z-index: 0;
}

.wrapper {
	overflow-x: hidden;
}

img {
	width: 100%;
}

p {
	font-size: 1.25rem;
}

.dib {
	display: inline-block;
}

.w_1160 {
	width: 100%;
	max-width: 1160px;
	margin: 0 auto;
}

#bg_fixed {
	width: 100%;
	height: 100%;
	background-image: url("../images/bg_fixed.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

#menu_fixed {
	display: flex;
	align-items: center;
	width: 100%;
	height: 64px;
	background-color: #001e43;
	position: sticky;
	left: 0;
	bottom: 0;
	z-index: 99;
}

#menu_fixed ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 943px;
	margin: 0 auto;
	list-style: none;
}

#menu_fixed ul li a {
	display: inline-block;
	color: #fff;
	font-size: 1rem;
	letter-spacing: .1em;
	position: relative;
}

#menu_fixed ul li a::before {
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	transform: scale(0, 1);
	transform-origin: left top;
	position: absolute;
	bottom: -5px;
	left: 0;
	opacity: 0;
	transition: all .4s;
}

#menu_fixed ul li a:hover::before {
	opacity: 1;
	transform: scale(1, 1);
}

.section {
	padding: 80px 0;
}

.sec_title {
	height: 156px;
	margin-bottom: 64px;
	text-align: center;
	letter-spacing: .3em;
	position: relative;
}

.sec_title span {
	width: 100%;
	margin-right: -3em;
	color: #001e43;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.sec_title::before {
	margin-left: .15rem;
	color: #001e43;
	font-family: 'Cormorant Garamond',serif;
	font-size: 7.5rem;
	font-weight: 400;
	letter-spacing: .3em;
	opacity: .1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.sec_title::after {
	content: "";
	width: 216px;
	height: 42px;
	background-image: url("../images/sec_title_bg1.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}


/*ヘッダー*/
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 96px;
	background-color: #fff;
	box-shadow: 0px 3px 3px rgba(89,87,87,.2);
	z-index: 100000;
}

.h_shadow {
	display: none;
}

.header_wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100%;
}

h1 {
	width: 100%;
	max-width: 400px;
}

h1 a {
	width: 100%;
}

header nav {
	margin-right: 47px;
}
.nav_wrapper {
  display: none;
}
.nav_wrapper2 {
  width: 100%;
}
.nav_wrapper2 li.nav_main {
  display: inline-block;
  position: relative;
}

.nav_wrapper2 ul.menu {
	display: flex;
	justify-content: space-between;
	align-items: center;
  list-style: none;
}

.nav_wrapper2 li.nav_main a {
  padding: 15px 15px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: .2em;
}

.nav_wrapper2 li.nav_main:hover > a {
  background-color: #efefef;
  color: #444;
}

.nav_wrapper2 ul.sub li.nav_sub {
  display: block;
  
}
.nav_wrapper2 li.nav_sub a {
  /*background-color: #efefef;*/
  color: #001e43;
}
.nav_wrapper2 li.nav_sub a:hover {
  background-color: #8b8b8b;
  color: #ffffff;
}
.nav_main {
	margin-left: 32px;
}
.nav_wrapper .nav_main a {
	display: block;
	color: #001e43;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: .1em;
	position: relative;
}
.nav_wrapper2 .nav_main a {
  color: #001e43;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: .1em;
  display: block;
}
/*.nav_wrapper2 li.nav_main a::before {
	content: "";
	width: 100%;
	height: 1px;
	background: #001e43;
	transform: scale(0, 1);
	transform-origin: left top;
	position: absolute;
	bottom: -5px;
	left: 0;
	opacity: 0;
	transition: all .4s;
}

.nav_wrapper2 li.nav_main a:hover::before {
	opacity: 1;
	transform: scale(1, 1);
}*/

.nav_wrapper2 li.pc_none {
	display: none;
}

.nav_wrapper2 ul.menu {
  position: relative;
  width: 100%;
  height: 50px;
  max-width: 1000px;
  margin: 0 auto;
}

ul.menu > li.nav_main {
  float: left;
  width: 30%; 
  height: 50px;
  line-height: 50px;
}

ul.menu > li.nav_main a {
  display: block;
  color: #001e43;
}

ul.sub {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}

ul.nav_sub {
  visibility: hidden;
  opacity: 0;
}

ul.menu > li.nav_main:hover {
  background: #001e43;
  -webkit-transition: all .5s;
  transition: all .5s;
}

/* floatクリア */
ul.menu:before,
ul.menu:after {
  content: " ";
  display: table;
}

ul.menu:after {
  clear: both;
}

ul.menu {
  *zoom: 1;
}

li.nav_main ul.sub {
  position: absolute;
  top: 40px;
  width: 100%;
  background: #cfcfcf;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
}
li.nav_main:hover ul.sub {
  top: 50px;
  visibility: visible;
  opacity: 1;
}

.hamburger {
	display: none;
}


/*TOP*/
#top {
	width: 100%;
	height: 480px;
	margin-top: 96px;
	background-image: url("../images/top_bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

#top::before {
	content: "";
	width: 174px;
	height: 174px;
	background-image: url("../images/top_acce_01.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
}

#top::after {
	content: "";
	width: 174px;
	height: 174px;
	background-image: url("../images/top_acce_02.png");
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	right: 0;
	bottom: 0;
}

.top_wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100%;
}

.top_title {
	width: 100%;
	max-width: 440px;
	margin-left: 100px;
}

.top_img1 {
height: 100%;
}

.top_img1 img {
	width: auto;
	height: 100%;
  
}
/*topContent(飛び出してくる文字)*/
#topContent {
	display: block;	
	align-items: center;
  margin: 0 auto;
	height: 100%;
}

.Font0{
  font-size: 2rem;
  line-height: 3rem;
}

.Font1{
  font-size: 1.5rem;
  line-height: 3rem;
}

.Font2{
  font-size: 1.8rem;
  line-height: 3rem;
}

.impFont{
  color: #FF0000;
}
#topContent .slide_text {
  text-align: center;
  display: block;
  margin: 5rem auto 0;
}

#topContent2 .about_text {
  margin: 10vh auto 10vh;
  text-align: left;
  width: 80%;
  color: #595757;
}


/*ABOUT(ビュートリオとは)*/
p.about_text {
  text-align: left;
  color: #595757;
	line-height: 2;
	letter-spacing: .1em;
  margin: 0 auto 40px;
  width: 90%;
}

.about_container {
	padding: 40px 100px 80px;
	background-color: #fff;
	border: #001e43 solid 1px;
	outline: #001e43 solid 1px;
	outline-offset: -16px;
}

#about .sec_title::before {
	content: "ABOUT";
	font-size: 7rem;
}

.about_img {
 text-align: center;
}
  
.about_img img {
 width: 60%;
}

/*POINT(ビュートリオの特徴、スライド14枚)*/

#point .sec_title::before {
	content: "POINT";
	font-size: 7rem;
}

.point_img {
	width: 100%;
	margin-bottom: 80px;
}

.point_card {
	width: 100%;
	max-width: 600px;
	margin: 0 auto 40px;
	border: #001e43 solid 5px;
}

.point_card_img {
	width: 100%;
	height: 500px;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.point_card:first-of-type .point_card_img{
	background-image: url("../images/point_card01.png");
}

.point_card:nth-of-type(2) .point_card_img{
	background-image: url("../images/point_card02.png");
  background-position: center;
}

.point_card:nth-of-type(3) .point_card_img{
	background-image: url("../images/point_card03.png");
}

.point_card:nth-of-type(4) .point_card_img{
	background-image: url("../images/point_card04.png");
  background-position: right;
}

.point_card:nth-of-type(5) .point_card_img{
	background-image: url("../images/point_card05.png");
  background-position: top;
}

.point_card:nth-of-type(6) .point_card_img{
	background-image: url("../images/point_card06.png");
  background-position: center;
}

.point_card:nth-of-type(7) .point_card_img{
	background-image: url("../images/point_card07.png");
  background-position: center;
}

.point_card:nth-of-type(8) .point_card_img{
	background-image: url("../images/point_card08.png");
}

.point_card:nth-of-type(9) .point_card_img{
	background-image: url("../images/point_card09.png");
  background-position: center;
}

.point_card:nth-of-type(10) .point_card_img{
	background-image: url("../images/point_card10.png");
  background-position: center;
}

.point_card:nth-of-type(11) .point_card_img{
	background-image: url("../images/point_card11.png");
  background-position: center;
  background-size: contain;
}

.point_card:nth-of-type(12) .point_card_img{
	background-image: url("../images/point_card12.png");
  background-position: center;
}

.point_card:nth-of-type(13) .point_card_img{
	background-image: url("../images/point_card13.png");
  background-position: right;
}

.point_card:nth-of-type(14) .point_card_img{
	background-image: url("../images/point_card14.png");
}
.point_card:nth-of-type(15) .point_card_img{
	background-image: url("../images/point_card15.png");
}

.point_card_img p {
  width: 500px;
  color: #595757;
  text-align: left;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .2em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.point_card_title {
	height: 137px;
	background-color: #001e43;
	position: relative;
}

.point_card_title h3 {
	width: calc(100% + 10px);
	color: #fff;
	text-align: center;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .3em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.point_card_title::before {
	content: "";
	width: 125px;
	height: 135px;
	background-image: url("../images/point_card_title_l.png");
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.point_card_title::after {
	content: "";
	width: 125px;
	height: 135px;
	background-image: url("../images/point_card_title_r.png");
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}


/*脱毛機の紹介*/

#difference .sec_title::before {
	content: "TYPE";
	font-size: 7rem;
}

.intro_boldFont {
  margin-top: 4rem;
}

.intro_boldFont .Font2 {
  display: block;
  text-align: center;
  font-weight: bold;
  color: #595757;
}

.intro_content {
	display: flex;
	justify-content: center;
	align-items: center;
}

.panel p.about_text {
  margin-bottom: 0;
}

.intro_picture {
	width: 20%;
	max-width: 460px;
	margin: 0 3rem 0 5rem;
}

.intro_picture1 {
	width: 15%;
	max-width: 460px;
	margin: 0 3rem;
}

.intro_picture img {
  width: 100%;
}
.intro_picture1 img {
  width: 80%;
}
.panel {
	width: 60%;
	max-width: 660px;
	padding: 24px;
  margin: 1rem 0 5rem;
}

.panel ul.component li {
  float: left;
  margin-right: 0.5rem;
  background-color: #595757;
  border-radius: 1vw;
  width: 150px;
  color: #FFFFFF;
  font-family: "Yu Mincho", "YuMincho";
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.5rem;
  padding: 0.5rem 0;
  font-size: 1rem;
  list-style: none;
}

.panel ul.component {
  overflow: hidden;
  display: block;
}

@media (max-width: 1024px) {
  .intro_picture1 {
    width: 25%;
  }
  .panel {
    width: 80%;
  }
  .intro_picture {
    width: 25%;
    max-width: 460px;
    margin-left: 2rem;
}
}

@media (max-width: 600px) {
  .panel {
    width: 60%;
    padding: 0.7rem;
}

.intro_picture1 {
  width: 30%;
  margin: 1rem 1rem 5rem 1rem;
}

.intro_picture {
  width: 35%;
  max-width: 460px;
  margin: 1rem 1rem 5rem 1rem;
}

.intro_picture1 img, .intro_picture img {
  width: 100%;
}

.panel ul.component li {
  margin-right: 0.2rem;
  width: 75px;
  margin-bottom: 0.5rem;
  padding: 0.5rem 0;
  font-size: 0.5rem;
}

.sec_title::after {
  bottom: -10%;
}
}

/*無料デモンストレーション*/

.flow_bottom {
	width: 100%;
	background-image: url("../images/flow_bg.png");
	background-size: auto calc(100% - 50px);
	background-repeat: no-repeat;
	background-position: center center;
}

.flow_bottom_card {
	width: 100%;
	max-width: 360px;
	margin: 0 auto;
	position: relative;
}
.cv_img{
  animation:anime1 0.8s ease 0s infinite alternate;
  box-shadow: 0 10px 25px 0 rgba(69, 69, 69, 0.8);
}

@keyframes anime1{
  from{
    transform: scale(0.95,0.95);
  }
  to{
    transform: scale(1,1);
  }
}

/*導入の流れ*/

#trouble .sec_title::before {
	content: "INTRODUCTION";
  font-size: 2rem;
}

.trouble_container {
	padding: 40px 100px 80px;
	background-color: #fff;
	border: #001e43 solid 1px;
	outline: #001e43 solid 1px;
	outline-offset: -16px;
}

.trouble_text {
	color: #595757;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .1em;
}

.process_wrap{
  margin: 0 auto;
  border: 2px solid #595757;
  padding: 20px;
  margin-bottom: 50px;
}

  .process_wrap .header {
    border-bottom: 1px solid #595757;
    padding-left: 5px;
    margin: 0 auto 20px;
    line-height: 3rem;
}

.header {
  font-size: 1.5rem;
}
.explain {
  text-align: left;
  color: #595757;
	line-height: 2;
	letter-spacing: .1em;
  margin: 0 auto 40px;
  
}
.boldFont {
  font-weight: bold;
  color: #595757;
}


/*CONTACT*/

#contact .sec_title::before {
	content: "CONTACT";
	font-size: 2rem;
}

.contact_container{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 64px 0;
	background-color: #F7F3ED;
	border: #001e43 solid 1px;
	box-shadow: 1px 1px 6px rgb(45,54,112,.4);
	position: relative;
	z-index: 0;
}

.contact_container::before {
	content: "";
	width: 200px;
	height: 224px;
	background-image: url("../images/contact_bg011.png");
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.contact_container::after {
	content: "";
	width: 200px;
	height: 224px;
	background-image: url("../images/contact_bg021.png");
	background-size: 100%;
	background-repeat: no-repeat;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: -1;
}

div#agreement {
	width: 100%;
	letter-spacing: .1em;
	margin-bottom: 64px;
	border-bottom: none;
}

div#agreement h3 {
	font-size: 1.25rem;
	margin-bottom: 16px;
}

#agreement h3::before {
	content: "必須";
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 27px;
	margin-right: 16px;
	background-color: #001e43;
	font-size: .75rem;
	font-weight: 400;
	font-style: normal;
	color: #ffffff;
}

#agree_check label {
	display: flex;
}

#agree_check label span {
	color: #595757;
	font-size: 1rem;
	line-height: 2;
	letter-spacing: .1em;
}

#agree_check a {
	color: #001e43;
	font-size: 1rem;
	font-weight: 700;
	text-decoration: underline;
}

/*FOOTER*/

footer {
	background-color: #001e43;
	padding: 40px 0;
}

.f_insta {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	margin-bottom: 24px;
	text-align: center;
	position: relative;
}

.f_insta span {
	margin-right: 16px;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 40px;
	letter-spacing: .2em;
}

.f_insta a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	color: #001e43;
	background-color: #fff;
	border: transparent solid 2px;
	font-size: 1.5rem;
	border-radius: 50%;
	transition: all .4s;
}

.f_insta a:hover {
	color: #fff;
	background-color: #001e43;
	border: #fff solid 2px;
}

.f_nav {
	width: 100%;
	margin: 0 auto 24px;
}

.f_nav ul{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.f_nav ul li a {
	padding-right: 16px;
	margin-right: 16px;
	border-right: #fff solid 1px;
	color: #fff;
	font-size: .875rem;
	line-height: 2;
	letter-spacing: .1em;
	position: relative;
}

.f_nav ul li:last-child a {
	padding-right: 0;
	margin-right: 0;
	border-right: none;
}

.f_nav ul li a::before {
	content: "";
	width: calc(100% - 16px);
	height: 1px;
	background: #fff;
	transform: scale(0, 1);
	transform-origin: left top;
	position: absolute;
	bottom: -5px;
	left: 0;
	opacity: 0;
	transition: all .4s;
}

.f_nav ul li a:hover::before {
	opacity: 1;
	transform: scale(1, 1);
}

.f_nav ul li:last-child a::before {
	width: 100%;
}

footer p {
	text-align: center;
}

footer hr {
	width: 100%;
	max-width: 1160px;
	margin: 0 auto 24px;
	border-top: 1px solid #ffffff;
}

footer p small {
	color: #fff;
	text-align: center;
	font-size: .875rem;
	letter-spacing: .1em;
}

/*THANKS*/
#thanks {
	padding: 176px 0 80px;
}

#thanks .sec_title::before {
	content: "THANKS";
}

#thanks p {
	color: #707070;
	text-align: center;
}

#thanks p:first-of-type {
	margin-bottom: 40px;
}

.slide_text {
	display: inline-block;
}

@media (max-width: 1280px) {
	
	.w_1160 {
		width: calc(100% - 48px);
		margin-left: 24px;
		margin-right: 24px;
	}
	
	header {
		height: 80px;
		box-shadow: none;
	}
	
	.h_shadow {
		display: block;
		width: 100%;
		height: 80px;
		background-color: #fff;
		box-shadow: 0px 3px 3px rgba(89,87,87,.2);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 99999;
	}
	
	.header_wrapper {
		z-index: 100000;
	}
	
	h1 {
		z-index: 100000;
	}
  .nav_wrapper2 {
    display: none;
  }
	.nav_wrapper {
    display: block;
  }
	.hamburger {
		display: block;
		width: 80px;
		height: 80px;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 999999;
	}
	
	.hamburger span {
		width: 53px;
		height: 2px;
		background-color: #001e43;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		transition: all .4s;
	}
	
	.hamburger span:nth-of-type(1) {
		top: 16px;
	}
	
	.hamburger.active span:nth-of-type(1) {
		transform-origin: left;
		transform: translateX(-50%) rotate(18deg);
	}
	
	.hamburger span:nth-of-type(2) {
		top: 32px;
	}
	
	.hamburger.active span:nth-of-type(2) {
		transform-origin: left;
		transform: translateX(-50%) rotate(-18deg);
	}
	
	.hamburger::before {
		content: "MENU";
		font-size: 1rem;
		font-weight: 700;
		position: absolute;
		left: 50%;
		bottom: 16px;
		transform: translateX(-50%);
	}
	
	.hamburger.active::before {
		content: "CLOSE";
	}
	
	header nav {
		width: 100%;
		height: calc(100% - 80px);
		background-color: #fff;
		position: fixed;
		top: -100%;
		left: 0;
		z-index: 10000;
		transition: all .4s;
	}
	
	header nav.active {
		top: 80px;
	}
	.hamburger::before{
		font-size: 1rem;
	}
	
	.nav_wrapper {
		width: 100%;
		max-width: 328px;
		height: calc(100% - 40px);
		max-height: 710px;
		padding-top: 24px;
		padding-bottom: 40px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		overflow-y: auto;
	}
	
	.nav_wrapper ul {
		display: block;
		height: 100%
	}
	
	.nav_main {
		margin-left: 0;
	}
	
	.nav_main a {
		color: #001e43;
		padding-left: 27px;
		padding-bottom: 4px;
		margin-top: 16px;
		margin-bottom: 8px;
		border-bottom: #001e43 solid 1px;
	}
	
	.nav_main:first-child a{
		margin-top: 0;
	}
	
	.nav_main a::before {
		content: none;
	}
	
	.nav_main a::after {
		content: "";
		width: 24px;
		height: 24px;
		background-image: url("../images/mb_nav1.png");
		background-size: 100%;
		background-repeat: no-repeat;
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.nav_sub {
		display: block;
		padding-left: 30px;
		margin-bottom: 8px;
	}
	
	.nav_sub a {
		display: block;
		font-weight: 400;
		color: #001e43;
	}
	
	.pc_none {
		display: block;
	}
	/*ヘッダーココまで*/

	
	#menu_fixed ul {
		padding: 0 24px;
	}
	
	.sec_title::before {
		font-size: 4rem;
	}
	
	#top {
		height: auto;
		padding-top: 48px;
		margin-top: 80px;
	}
	
	.top_wrapper {
		flex-direction: column;
		align-items: center;
	}
	
	.top_title {
		margin-left: 0;
		margin-bottom: 8px;
	}
	
	.top_img {
		width: 100%;
		max-width: 240px;
		height: auto;
	}
	
	.top_img img {
		width: 100%;
		height: auto;
	}
	
	#point.w_1160 {
		width: 100%;
		margin: 0;
	}
	
	.point_img {
		padding: 0 24px;
	}
	
	.point_content {
		width: 100%;
		overflow-x: hidden;
	}
	
	.point_card {
		overflow-x: hidden;
	}
	
	.flow_content {
		flex-direction: column;
		align-items: center;
	}
	
	.flow_card {
		margin-right: 0;
		margin-bottom: 40px;
	}
	
	.flow_card::after {
		border-width: 24px 12px 0 12px;
		border-color: #6a702d transparent transparent transparent;
		top: auto;
		right: auto;
		left: 50%;
		bottom: -32px;
		transform: translateX(-50%);
	}
	
	.difference_content {
		flex-direction: column-reverse;
	}
	
	.difference_img {
		margin-right: 0;
	}
	
	.difference_text {
		max-width: none;
		margin-bottom: 40px;
	}
	
	.contact_container {
		padding: 64px 16px;
	}
}
/*max-width: 1280px*/

@media (max-width: 768px) {
	.hamburger::before{
		font-size: 2rem;
	}
	.nav_wrapper .nav_main a,
	.nav_sub a{
		font-size: 2rem;
	}
	#menu_fixed {
		height: 40px;
	}
	
	.sec_title span {
		font-size: 2.3rem;
	}
	.sec_title::before{
		margin-top: 10px;
		font-size: 7rem;
	}
	p.about_text{
		width: 95%;
		font-size: 2.5rem;
	}
	
	.about_container,
	.trouble_container{
		padding: 40px 16px 80px;
		outline-offset: -8px;
	}
	
	.point_card_img {
    height: 45rem;
}

	.point_card_img p {
    line-height: 1.5;
    letter-spacing: normal;
    left: 50%;
    width: 400px;
}
	.point_card_title {
		height: 74px;
	}
	
	.point_card_title::before,
	.point_card_title::after {
		width: 68px;
		height: 74px;
	}
	
	.point_card_title h3 {
		font-size: 2rem;
	}
	
	#menu_fixed ul li a {
		font-size: 2rem;
	}
	
	.flow_h3 span {
		font-size: 1rem;
	}
	#contact .sec_title::before{
		font-size: 4rem;
	}
	.contact_container::before,
	.contact_container::after {
		width: 124px;
		height: 138px;
	}
	
	.f_nav ul {
		flex-direction: column;
		align-items: center;
	}
	
	.f_nav ul li a {
		padding-right: 0;
		margin-right: 0;
		margin-bottom: 16px;
		border-right: none;
	}
	.f_insta a{
		font-size: 3rem;
	}
	.f_nav ul li:last-of-type a {
		margin-bottom: 0px;
	}
	
	footer hr {
		max-width: 255px;
	}
	.panel p.about_text {
    margin-bottom: 0;
    font-size: 1.5rem;
}
.panel ul.component li {
  width: 90px;
  font-size: 0.5rem;
}
.explain{
	font-size: 2rem;
}
div#agreement h3{
	font-size: 2.5rem;
}
#agree_check label span,
#agree_check a{
	font-size: 2rem;
}
.f_insta span{
	font-size: 2rem;
}
.f_nav ul li a,
footer p small{
	font-size: 1.7rem;
}

}/*max-width: 768px*/

@media (max-width:550px) {
	.Font4{
		font-size: 1.89rem;
	}
	.Font3 {
    font-size: 2rem;
    line-height: 2rem;
}
  .Font2 {
    font-size: 1.5rem;
    line-height: 2rem;
}
.Font1 {
  font-size: 2.6rem;
  line-height: 4rem;
}
.Font0 {
  font-size: 1.4rem;
  line-height: 2rem;
}
	.sec_title span {
		margin-right: -3em;
	}
	
	.sec_title::before {
		letter-spacing: normal;
		margin-top: -2px;
	}
	
	#menu_fixed ul {
		padding: 0 8px;
	}
	
	#menu_fixed ul li a {
		letter-spacing: normal;
	}
	
	h1 {
	max-width: 250px;
	}
	
	.top_title {
		max-width: 296px;
	}
	
	#top::before,
	#top::after {
		width: 88px;
		height: 88px;
	}
	
  .about_img img {
    width: 80%;
   }

   .point_card_img p {
    font-size: 1.8rem;
    line-height: 1.5;
    letter-spacing: normal;
    left: 50%;
}

	.flow_h3 span {
		letter-spacing: normal;
	}
	
	.date_wrapper {
		display: block;
	}
	
	.date_wrapper span {
		display: inline-block;
		margin-bottom: 16px;
	}
	
	.flow_card::before,
	.flow_bottom_card::before{
		font-size: 1.125rem;
	}
}/*max-width:550px*/

@media (max-width: 420px){
.point_card_img p {
    left: 50%;
    width: 300px;
}
}/*max-width:420px*/


@media (max-width:375px) {
	.sec_title::before {
		margin-top: -3px;
		font-size: 1.8rem;
		/* font-size: calc(56 / 375 * 100vw); */
	}
	
	.point_card_title h3{
    font-size: 1.8rem;
	}
	
	.nav_main a,
	.about_text,
	.flow_text dt,
	.flow_text dd,
	.flow_bottom_card::before,
	form#mail_form dl dt,
	.check_wrapper label,
	p{
		font-size: calc(20 / 375 * 100vw);
	}
	
	.flow_card::before,
	.point_card_img p{
    font-size: 1.65rem;
	}

  .point_card_img p {
    width: 210px;
    left: 50%;
  }
	
	.nav_sub a,
	.flow_h3 span,
	#menu_fixed ul li a,
	.f_insta span{
		font-size: calc(16 / 375 * 100vw);
	}
	
	.f_nav ul li a,
	footer p small{
		font-size: calc(14 / 375 * 100vw);
	}
	
	h1{
		width: calc(250 / 375 * 100vw);
	}
	
	
	.w_1160 {
		margin-left: calc(24 / 375 * 100vw);
		margin-right: calc(24 / 375 * 100vw);
	}
	
	.sec_title,
	.point_card_title h3{
		letter-spacing: .2em;
	}
}/*max-width:375px*/

