	
	body, 
    p
	
 {
	font-family: "Noto Sans", sans-serif;
    font-style: normal;	
	}


		
   * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

html, body {
    height: 100%;
    margin: 0;
}

footer {
    margin-bottom: 0;
    padding-bottom: 0;
}


	
:root {
	
	--box-shadow: 0px 0px 40px #40838C;
	--box-shadow-less: 10px 10px 50.6px rgba(64, 131, 140, 0.07);
	--cta-color: #03163D;
	--cta-linear-bg: linear-gradient(
  to right,
  #458CFD 0%,
  #93CBFF 45%,
  #458CFD 100%
);
	--sub-title: #118BFB;
	--body-lp: #f7f7f7;
	--gradient-text: linear-gradient(to right, #118BFB 0%, #115BFB 100%);
	--main-width: 1100px;
	--auto-margin: 0 auto;
	--border-round: 36px;
	--border-rad-box: 26px;
	--special-pink: #F48DA8;
	--cta-button-gr: linear-gradient(
  to right,
  #118BFB 0%,
  #115BFB 100%
);	
	
}
	
.flex-row {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}

.bread_crumbs {
	padding-top: 2rem;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	gap: 1rem;
}
.main_page {
	color: var(--cta-color);
	font-size: 1rem;
	font-weight: 700;
}

.current_page {
	color: var(--sub-title);
	font-size: 1rem;
}

.previous_page {
	color: var(--special-pink);
	font-size: 1rem;
}
.fv_lp {
	background: var(--cta-linear-bg);
	padding-top: 6.5rem;
    padding-bottom: 3rem;
}	
	
.fv_text {
	font-size: 2.5rem;
	color: white;
	}

.flex-row-unchange {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}
		
img {
	width: 100%;		
}

header {
	position: fixed;
	z-index: 1000;
}
	
header,
footer {
	background-color: #03153d;
	width: 100%;
	color: white;
	
}

.pc_nomi {
	display: block;
}

.sp_nomi {
	display: none;
}

.header_inner,
.fv_inner {
	width: var(--main-width);
	margin: var(--auto-margin);
	position: relative;
}
	
.phone_box {
	gap: 0.5rem;	
	}
	

.right-text {
	font-size: 0.7rem;
	position: absolute;
	right: 11rem;
    bottom: 2.5rem;
	}		
		
.logo_cont {
	width: 200px;		
}
.flex-header {
	justify-content: space-between;
	align-items: center
}
	
.header_cta_box  {
	justify-content: center;
	gap: 1rem;
	align-items: end;
}


.email_button_header {
	padding: 0.5rem 1.5rem;
	gap: 0.5rem;
	border-radius: var(--border-round);
	background: var(--cta-button-gr);
}	

.button_text {
	font-size: 0.8rem;
	font-weight: 700;
}	
	
.fv_pc {
	background-image: url("../img/images/pc_fv_best.webp");
	background-position: center;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	height: 800px;	
}
	
.part_2 {
	padding-top: 2rem;
	background-image: url("../img/images/part_two_background.webp");
	background-position: center;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	height: 450px;	
	}
	
.part_4 {
	background-image: url("../img/images/part_4_pc.webp");
	background-position: center;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	height: 2000px;	
	z-index: 1;
}
	

.fv_cta_buttons {
	gap: 3rem;
	justify-content: center;
	padding-top: 40rem;
	
}
	
.flex_column {
	display: flex;
	flex-direction: column;
}
	
.flex_column_gap_two {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}
.blue-button-inner  {
	background: var(--cta-button-gr);
	border-radius: var(--border-round);
	justify-content: center;
	gap: 3rem;
	padding: 0.7rem 3rem;
}
	
.fv_phone,
.w_t {
	color: white;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 2px;
}

.white_under_cont {
	background-color: white;
	position: absolute;
	bottom: 55;
    left: 227;
}
.white_under_text {
	font-size: 0.7rem;
	padding: 0.2rem 3rem;
	font-weight: 700;
}
	
.white_button {
	background-color: white;
	border-radius: var(--border-round);
	border: solid 3px var(--sub-title);
	gap: 3rem;
	padding: 0.7rem 2rem;
}
	
.white_button_text {
	 font-size: 1.2rem;
	font-weight: 600;
	}
	
.g_t {
	 font-size: 1.7rem;
	  font-weight: 600;
}
.gradient {
	  background: var(--gradient-text);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      color: transparent;
}
.gradient_with_span   {
	 font-size: 2rem;
	font-weight: 700;
}
	
.gradient_with_span_large   {
	 font-size: 3rem;
	font-weight: 700;
	position: relative;
	z-index: 10;
}
	
.gradient_with_span span  {
	 font-size: 2rem;
	 background: white;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      color: transparent;
	font-weight: 700;
}
.gradient_with_span span.black,
.gradient_with_span_large span.black {
	 font-size: 2rem;
	 background: black;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      color: transparent;
	font-weight: 700;
}
.button-content {
	gap: 1.5rem;
	align-items: center;
}
	
	
.fv_title_cont	{
	padding-top: 20px;
    
}

.blue-button-inner,
.button-content,
.white_button,
.blue-button-inner_two,
.button-content_two,
.white_button_two,
.sp_title_flex {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}

.text_center {
	text-align: center;	
	}
	
	.white_text {
		color: white;
	}
	
.__web-inspector-hide-shortcut__, .__web-inspector-hide-shortcut__ *, .__web-inspector-hidebefore-shortcut__::before, .__web-inspector-hideafter-shortcut__::after {
    visibility: visible!important;
}

	.part_1 {
		background-color: var(--cta-color);	
		color: white;
		font-size: 1rem;
		padding-bottom: 2rem;
	}
	.gre_cont {
		box-shadow: var(--box-shadow);
		background: white;
		padding: 2rem;
		gap: 2rem;
		justify-content: center;
		align-items: center;
		border-radius: var(--border-rad-box);
		
	}
	
	.cont_gate_inner {
		background: white;
	    padding: 2rem;
        box-shadow: var(--box-shadow-less);
        border-radius: 15px;
        gap: 2rem;
		justify-content: center;
		align-items: center;
		height: 350px;
	}

	.part_3,
	.part_6 {
	background-color: #f7f7f7;
    padding: 0 2rem 2rem 2rem;
		position: relative;
	}
	
	.gr_stick {
		 background: var(--gradient-text);
		width: 40px;
		height: 5px;
}
.flex_start_aligned  {
	align-items: flex-start;
}
	
	.cont_gate_inner_img {
		width: 700px;
	}
	
.simple_text_one_up {
		font-size: 1.2rem;
	}
.simple_text {
		font-size: 1rem;
	}	
.simple_text span{
		font-size: 1.2rem;
	}	
.cont_gate_inner_text_cont {
		gap: 1.5rem;
	}
	
	.riyo_bango {
		font-size: 4rem;
		position: absolute;
		font-weight: 700;
		top: -40px;
        left: 40px;
	}
	.inner_padding_top_bottom {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
	
.inner_padding_top_bottom_mini {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
	.part_four_containers {
		gap: 4rem;
	}
	.part_four-item {
		position: relative;
	}
	
	.black_middle  {
	 font-size: 1.5rem;
	 background: black;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
	font-weight: 700;
	position: relative;
	z-index: 10;
	}
	
.pink_img_cont {
    width: 495px;
    position: relative;
    z-index: 0;
    padding-right: 70px;
	margin: -8px auto 0px auto;
}
	
	.pink_img_cont_two {
    width: 705px;
    position: relative;
    z-index: 0;
    margin: -20px auto 0px auto;
}

	
.cont_with_list {
	box-shadow: 10.43px 10.43px 56.3px rgba(64, 131, 140, 0.07);
	border-radius: 15px;
	position: relative;
	z-index: 0;
}
	
.image_abs_cont {
		position: absolute;
		z-index: 10;
	left: 70px;
	top: -30px;
	width: 300px;
	}
	
ul {
	display: block;
	line-height: 2;
    float: right;
	padding-right: 1rem;
	line-height: initial;
	}
.center_aligned {
	align-items: center;
	}
	
	.tiny_gap {
		gap: 0.5rem;
	}
	.smaller {
	font-size: 2rem;	
	}

.bold {
	font-weight: 700;
	color: var(--cta-color);
}
	
	.bold_black {
	font-weight: 700;
	color: black;
}
	
.cta_main {
	background: var(--cta-linear-bg);
}
	
.fv_cta_buttons_two {
	gap: 2rem;
	justify-content: center;
}
	
.blue-button-inner_two  {
	background: var(--cta-color);
	border-radius: var(--border-round);
	justify-content: center;
	gap: 3rem;
	padding: 0.7rem 3rem;
}
	
.fv_phone_,
.w_t {
	color: white;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 2px;
}

.white_under_cont_two {
	background-color: white;
	position: absolute;
	top: 128px;
    left: 235px;
}

	.pink_line {
		margin-top: 3rem;
	}
.white_under_text_two {
	font-size: 0.7rem;
	padding: 0.2rem 3rem;
	font-weight: 700;
	color: var(--cta-color);
}
	
.white_button_two {
	background-color: white;
	border-radius: var(--border-round);
	border: solid 3px var(--cta-color);
	gap: 3rem;
	padding: 0.7rem 2rem;
	color: var(--cta-color);
	justify-content: center;
}
	
.white_button_text {
	 font-size: 1.2rem;
	font-weight: 600;
	}
	
.g_t {
	 font-size: 1.7rem;
	  font-weight: 600;
}	
	
.flex_column_gap_one {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
	
.flex_column_gap_three {
	display: flex;
	flex-direction: column;
	gap: 3rem;
}
.padding_sides {
	padding: 0 1rem;
}
	
.padding_top {
	padding: 3rem 0;
}
.link_button_new {
	padding: 0.4rem 1rem;
	border-radius: var(--border-round);
	color: var(--sub-title);
	border: solid 2px var(--sub-title);
	width: 220px;
    font-size: 0.8rem;
}
.blue_title {
	color: var(--sub-title);
	font-size: 1.5rem;
	font-weight: 700;
}

.link_cont  {
	justify-content: center;
	gap: 2rem;
}
.link_cont_item {
	box-shadow: var(--box-shadow-less);
	width: 300px;
	background: white;
	border-radius: var(--border-rad-box);
	}

.company_address {
	color: white;
	font-size: 1rem;
	padding-bottom: 2rem;
}
	
.copy_right{
	color: white;
	font-size: 0.7rem;
}
	
.img_footer_cont {
	width: 400px;
	padding-top: 4rem;
	margin: 0 auto;
}
.company_link {
	font-size: 0.9rem;
	display: inline-block; 
	cursor: pointer;
	text-decoration: none;
	color: inherit;
	transition: transform 0.3s ease, opacity 0.3s ease;
}
	
.company_link:hover {
	 transform: translateY(-2px);
     opacity: 0.7;
     cursor: pointer;	
}


a {
	text-decoration: none;
	color: inherit;
	transition: transform 0.3s ease, opacity 0.3s ease;
}
	
a:hover {
	 transform: translateY(-2px);
     opacity: 0.7;
     cursor: pointer;	
}

.submit-button {
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.submit-button:hover {
	 transform: translateY(-2px);
     opacity: 0.7;
     cursor: pointer;	
}

	@media(max-width: 600px){
		
	
.simple_text  {
	font-size: 0.9rem;
}
		
.smaller {
    font-size: 1.8rem;
}

.black_middle {
    font-size: 1.1rem;
}

.simple_text span {
    font-size: 1rem;
}

.pink_line {
	margin-top: 0px;		
		}
		
ul {
	padding: 1rem;
	float: none;
	flex-direction: column;
    gap: 0.5rem;
    display: flex;
    list-style: none;
	line-height: 2;
}
.gradient_with_span span.black, 
.gradient_with_span_large span.black {
    font-size: 1.7rem;
		}
		
	.gradient_with_span_large {
			font-size: 1.8rem;
		}
.part_3 {
    background-color: #f7f7f7;
    padding: 0 0.5rem 2rem 0.5rem;
}
		
.image_abs_cont {
	position: relative;
	width: 300px;
	z-index: 10;
    left: 0;
    top: 0;

}
		
.sp_title_flex {
	justify-content: center;
	gap: 0.5rem;
	align-items: center;	
	background: inherit;
}
		
.part_2 {
	padding-top: 2rem;
	background-image: url("../img/images/part_2_sp_back.webp");
	background-position: center;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	height: 600px;	
}
	
.gradient_with_span span {
	font-size: 1.6rem;
}

.white_text {
	font-size: 0.9rem;
}
		
.gre_cont {
	box-shadow: var(--box-shadow);
	background: white;
	padding: 1rem;
	gap: 1rem;
	justify-content: center;
	align-items: center;
	border-radius: var(--border-rad-box);
		
}
		
.simple_text_one_up {
    font-size: 0.9rem;
}		
		
.white_under_text_two {
	padding: 0.2rem 3.5rem;

	
}
		
.white_under_cont {
    left: 120px;
	bottom: 130px;
	top: auto;
	
	border-radius: var(--border-rad-box);
}
		
.fv_title_cont {
    padding-top: 10px;
}
	
.white_under_cont_two {
    background-color: white;
    position: absolute;
    top: 19px;
    left: 80px;
		border-radius: var(--border-rad-box);
}
body {
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	margin: 0px!important;
}	
		
.flex-row {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
}
		
.cont_gate_inner {
	flex-direction: column-reverse!important;
	height: 650px;
		}
	
.fv_cta_buttons {
	width: auto;
	gap: 1rem;
padding-top: 490px!important;
		}
		
.blue-button-inner {
    gap: 2rem;
    padding: 0.7rem 1rem;
}

.white_button {
    gap: 1.5rem;
    padding: 0.7rem 1rem;
	justify-content: center;
}
		
.fv_phone, .w_t {
    color: white;
    font-size: 1.6rem;
}

.white_button_text {
    font-size: 1rem;
		}
.header_inner,
.fv_inner {
	width: 100%;
	margin: 0px;
	position: relative;
}
	
.fv_inner {		
	padding-left: 20px;
    padding-right: 20px;
}
.pc_nomi {
	display: none;
}

.sp_nomi {
	display: block;
}
		
		
.fv_pc {
	background-image: url("../img/images/fv-sp-new.webp");
	background-position: center;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	height: 650px;	
}
		
.part_4 {
	background-image: url("../img/images/part_4_back_sp.webp");
	background-position: center;
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
	height: 3100px;
}
	
		
.gradient_with_span {
	font-size: 1.8rem;		
}

		
.blue-button-inner_two {
    gap: 1rem;
    padding: 1rem 1rem;
}
		
.white_button_two {
    gap: 2rem;
    padding: 0.9rem 1rem;
}
		
.inner_padding_top_bottom {
    padding-top: 2rem;
    padding-bottom: 2rem;	
		
}
	
.white_under_text {
    padding: 0.2rem 2rem;
    font-weight: 700;
	
}
		
.link_cont_item {
	width: 100%;
	}
		
.blue_title {
    font-size: 1.3rem;
}
		
.part_6 {
    background-color: #f7f7f7;
    padding: 0 0.5rem 2rem 0.5rem;
}
		
footer {
	background-color: white;
	width: 100%;
	
}
		
.logo_cont {
	margin: 0 auto;		
		}
		
.company_address {
	color: #1F2950;
	font-size: 1rem;
	
}

.copy_right {
	background: var(--cta-color);
	padding: 2rem;
	font-size: 1rem;
}
		
.tree_dots {
			
	margin-top: -13.5px!important;
    justify-content: center;
    gap: 1rem;
    position: absolute;
    top: auto!important;
    left: 15.9rem!important;
		}
		
	.dot {
    font-size: 4rem!important;
		}


	.wrapper {
		padding-left: 10px!important;
		padding-right: 10px!important;
	}
		
		
.flex_column_gap_three {
	gap: 1rem!important;
}
		
.pink_img_cont {
    width: 255px!important;
	padding-right: 10px!important;
    margin: -40px auto 0px auto!important;
}
			
.pink_img_cont_two {
	width: 255px!important;	
}
		
.map_cont {
    gap: 0px!important;
}
		
.site_map_item {
	font-size: 1rem!important
}
		
.bread_crumbs {
	gap: 0.5rem;
}
.main_page {
	font-size: 0.7rem!important;
}

.current_page {
   font-size: 0.7rem!important;
}

.previous_page {
    font-size: 0.7rem!important;
		}

		
		}