@charset "UTF-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif+JP&display=swap);
@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap);

/*--------------------------------------------------------------------------
	 reset
---------------------------------------------------------------------------*/
*, *::before, *::after {
	box-sizing: border-box
  }

  ul[class], ol[class] {
	padding: 0
  }

  body, h1, h2, h3, h4, p, ul[class], ol[class], figure, blockquote, dl, dd {
	margin: 0
  }


  body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5
  }

  ul[class], ol[class] {
	list-style: none
  }

  a:not([class]) {
	text-decoration-skip-ink: auto
  }

  img, picture {
	max-width: 100%;
	display: block
  }

  article>*+* {
	margin-top: 1em
  }

  input, button, textarea, select {
	/* font: inherit */
  }

  img:not([alt]) {
	filter: blur(10px)
  }


/* # =================================================================
   # Global selectors
   # ================================================================= */
   html {
	overflow-y: scroll;
	box-sizing: border-box;
	/* All browsers without overlaying scrollbars */

	-webkit-text-size-adjust: 100%;
	/* iOS 8+ */
}

*,
::before,
::after {
	/* Set `background-repeat: no-repeat` to all elements */
	box-sizing: inherit;
	background-repeat: no-repeat;
}

::before,
::after {
	/* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
	vertical-align: inherit;
	text-decoration: inherit;
}

/* Remove margin, padding of all elements and set background-no-repeat as default */
* {
	/* Reset `padding` and `margin` of all elements */
	margin: 0;
	padding: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
	display: none;
	height: 0;
}

hr {
	overflow: visible;
	/* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

summary {
	display: list-item;
	/* Add the correct display in all browsers */
}

small {
	font-size: 80%;
	/* Set font-size to 80% in `small` elements */
}

[hidden],
template {
	display: none;
	/* Add the correct display in IE */
}

abbr[title] {
	border-bottom: 1px dotted;
	/* Add a bordered underline effect in all browsers */
	text-decoration: none;
	/* Remove text decoration in Firefox 40+ */
}

a {
	background-color: transparent;
	/* Remove the gray background on active links in IE 10 */

	-webkit-text-decoration-skip: objects;
	/* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
	outline-width: 0;
	/* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	/* Specify the font family of code elements */
}

b,
strong {
	font-weight: bolder;
	/* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
	font-style: italic;
	/* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
	background-color: #ff0;
	color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
	position: relative;
	vertical-align: baseline;
	font-size: 75%;
	line-height: 0;
}

sub {
	bottom: -.25em;
}

sup {
	top: -.5em;
}

body {
	font-family: "Hiragino Sans","ヒラギノ角ゴ Pro W6","HIragino Kaku Gothic Pro W6",'Noto Sans JP',"HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS P Gothic",sans-serif;
}

.wf-mplus1p { font-family: "M PLUS 1p"; }

 *, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

/*==========================================================================

   mixin

===========================================================================*/
/*--------------------------------------------------------------------------
   html
---------------------------------------------------------------------------*/
/* media query -> sp
=================================================================*/
@media only screen and (max-width: 767px) {
	html {
	}
}

/*--------------------------------------------------------------------------
   head
---------------------------------------------------------------------------*/
head {
	font-family: 'pc';

}

/* media query -> sp
=================================================================*/
@media only screen and (max-width: 767px) {
	head {
		font-family: 'sp';
	}
}

/*--------------------------------------------------------------------------
   body
---------------------------------------------------------------------------*/
body {
	/* min-width: 1100px; */
	min-width: 100%;
	color: #000;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.8;
}

/* media query -> sp
=================================================================*/
@media only screen and (max-width: 767px) {
	body {
		width: 100%;
		min-width: 320px;
		height: auto;
		font-size: 16px;
		line-height: 1.786;
	}
}


/*--------------------------------------------------------------------------
   a
---------------------------------------------------------------------------*/
a {
	color: inherit;
	outline: none;
	-webkit-tap-highlight-color: transparent;
}

a:link,
a:visited {
	text-decoration: none;
}

/*--------------------------------------------------------------------------
   reset
---------------------------------------------------------------------------*/
img {
	vertical-align: middle;
}
img.full_w {
	width: 100%;
}

/* media query -> sp
=================================================================*/
@media only screen and (max-width: 767px) {
  img {
  	width: 100%;
  }
}

ul {
	list-style: none;
}
::selection {
	background-color: #b3d4fc;
	color: #fff;
	text-shadow: none;
}

/*--------------------------------------------------------------------------
   selection
---------------------------------------------------------------------------*/
::-moz-selection {
	background-color: #b3d4fc;
	color: #fff;
	text-shadow: none;
}

::selection {
	background-color: #b3d4fc;
	color: #fff;
	text-shadow: none;
}


input, textarea, select { font-family: inherit; font-size: inherit; font-weight: inherit; }
input, select, textarea { font-size: 100%; font-family: Verdana,Helvetica,sans-serif; }
b {
    font-weight: bold;
    color: rgb(255, 69, 0);
}

/*--------------------------------------------------------------------------
   inner
---------------------------------------------------------------------------*/
.u-inner {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}

/* media query -> sp
=================================================================*/
@media only screen and (max-width: 767px) {
	.u-inner {
		width: 100%;
		max-width: 100%;
		padding: 0 5.333vw;
	}
}

/*==========================================================================

   mixin

===========================================================================*/
/*--------------------------------------------------------------------------
   SHOW / HIDE
---------------------------------------------------------------------------*/
/*
 show / hide
 -- レスポンシブ用 表示/非表示
*/
.u-mi-pc,.u-pc-visible {
	display: block!important;
}

img.u-mi-pc {
	display: inline!important;
}

.u-mi-sp,.u-sp-visible {
	display: none!important;
}
.u-mi-sp-flex {
	display: none!important;
}

.u-mi-min-sp {
	display: none!important;
}

.u-mi-pc-flex {
	display: flex!important;
}
/* media query -> sp
========================================*/
@media only screen and (max-width: 767px) {
	.u-mi-pc,
	img.u-mi-pc,
	.u-mi-pc-flex,
	.u-pc-visible  {
		display: none!important;
	}
	.u-mi-sp,
	.u-sp-visible  {
		display: block!important;
	}
	img.u-mi-sp {
		display: inline!important;
	}
	.u-mi-sp-flex {
		display: flex!important;
	}
}
/*--------------------------------------------------------------------------
   TEXT
---------------------------------------------------------------------------*/
/*
 note
 -- 改行時、一文字目に余白を持たせる
*/
.u-mi-note,
.u-mi-list-note li {
	padding-left: 1em;
	text-indent: -1em;
}

a,
.u-cta__btn--pc {
	-webkit-transition: opacity .3s;
			transition: opacity .3s;
	opacity: 1;
	}
a:hover,
.u-cta__btn--pc:hover {
	-webkit-transition: opacity .3s;
			transition: opacity .3s;
	opacity: .6;
	}

.u-rover{
  	-webkit-transition: opacity .3s;
  			transition: opacity .3s;
  	opacity: 1;
  	}
.u-rover:hover {
  	-webkit-transition: opacity .3s;
  			transition: opacity .3s;
  	opacity: .6;
  	}


/*--------------------------------------------------------------------------
	header
---------------------------------------------------------------------------*/
header {
	width: 100%;
	background-color: #000000;
	z-index: 1;
	position: absolute;
	left: 0;
	top: 0;
}
header .u-header__inner {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	display: flex;
}
header .u-header__inner--02 {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #262626;
}
.u-global-header__logo {
	width: 100px;
	padding: 27px 0;
	margin-left: 40px;
}
.u-global-header__logo--02 {
	width: 95px;
	padding: 20px 0;
	margin-left: 40px;
}
.u-header__btn {
	margin-right: 40px;
}
.u-header__btn a {
	border-radius: 3px;
	background-color:#fe7800;
	width: 160px;
	height: 50px;
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding-right: 10px;
}
.u-header__btn a::after {
	content: '';
	position: absolute;
	right: 22px;
	top: 50%;
	width: 7px;
	height: 11px;
	background-image: url(../img/icon_arw.svg);
	background-size: cover;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
	.u-global-header__logo {
		width: 19.333vw;
		padding: 3.733vw 0;
		margin-left: 5.333vw;
	}
	.u-global-header__logo--02 {
		width: 24.8vw;
		padding: 4.4vw 0;
		margin-left: 5.333vw;
	}
	.u-header__btn {
		margin-right: 5.333vw;
	}
	.u-header__btn a {
		border-radius: 0.8vw;
		width: 34.667vw;
		height: 10.667vw;
		font-size: 3.733vw;
		padding-right: 2.667vw;
	}
	.u-header__btn a::after {
		content: '';
		position: absolute;
		right: 4vw;
		top: 50%;
		width: 1.867vw;
		height: 3.067vw;
		background-image: url(../img/icon_arw.svg);
		background-size: cover;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}
}



/*--------------------------------------------------------------------------
	footer
---------------------------------------------------------------------------*/
.u-l-footer {
	padding: 50px 0 0 0;
	background-color: #262626;
	font-size: 16px;
	text-align: center;
}
.u-l-footer .u-inner {
	padding: 0 0 50px 0;
}
.u-l-footer .certifications {
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
	text-align: left;
}
.u-l-footer .certifications .text {
	font-size: 14px;
	color: #ccc;
}
.u-l-footer .certifications .text p {
	margin: 0;
}
.u-l-footer .certifications .text .company-logo {
	width: 100px;
	padding: 28px 0;
}
.u-l-footer .certifications .text .company-logo img {
	max-width: 100%;
	height: auto;
}
.u-l-footer .certifications .logo {
	display: flex;
}
.u-l-footer .certifications .logo > li + li {
	padding-left: 10px;
}


@media only screen and (max-width: 767px) {
	.u-l-footer {
		padding: 5.333vw 5.333vw 0 5.333vw;
	}
	.u-l-footer .u-inner {
		padding: 0 0 6.667vw 0;
	}
	.u-l-footer .certifications  {
		display: block;
		margin-top: 3.333vw;
	}
	.u-l-footer .certifications .text {
		font-size: 3.333vw;
	}
	.u-l-footer .certifications .text .company-logo {
		width: 18.667vw;
		padding: 3.333vw 0;
	}
	.u-l-footer .certifications .logo {
		padding-top: 4vw;
	}
	.u-l-footer .certifications .logo > li + li {
		padding-left: 1.333vw;
	}
}


/*--------------------------------------------------------------------------
	.u-main_wrap
---------------------------------------------------------------------------*/
.u-main_wrap {
	width: 100%;
	color: #000000;
}



/*--------------------------------------------------------------------------
	 tool
---------------------------------------------------------------------------*/
a {
	color:#0086c7;;
}
table {
	border-collapse: collapse ;
}
.u-t_bold {
	font-weight: 600;
}
.u-f_w3 {
	font-family: "Hiragino Sans","ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3",'Noto Sans JP',"HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS P Gothic",sans-serif;
}
.u-txt--red {
	color: #e30000;
}
.u-txt--orange {
	color: #fe7800;
}
.u-border_line {
	line-height: 1.7;
	display: inline;
	padding-bottom: 0px;
	background:linear-gradient(transparent 70%, #fff000 0%);
}
.u-indent01{
	padding-left: 1.8em;
}


/*--------------------------------------------------------------------------
	.u-sec-mv
---------------------------------------------------------------------------*/
.u-sec-mv {
	position: relative;
	background-image: url(../img/mv_bg.png);
	background-position: center bottom;
	background-size: cover;
	background-repeat: no-repeat;
	height: 870px;
	overflow-x: hidden;
}

.u-sec-mv .u-inner {
	max-width: 800px;
	height: 100%;
	position: relative;
}

.u-sec-mv h1 {
	width: 360px;
	padding-top: 50px;
}
.u-sec-mv .u-img--01 {
	position: absolute;
	right: -160px;
	top: 20px;
	width: 527px;
}
.u-sec-mv .u-txt--02 {
	width: 452px;
	margin-top: 36px;
}
.u-sec-mv ul {
	margin-top: 42px;
	display: flex;
	justify-content: space-between;
}
.u-sec-mv ul li {
	width: 391px;
}

/*--------------------------------------------------------------------------
	.u-sec-annotation
---------------------------------------------------------------------------*/
.u-sec-annotation {
	padding: 30px 0;
}
.u-sec-annotation ul li {
	font-size: 16px;
	line-height: 1.6;
	padding-left: 2em;
	text-indent: -2em;
}
.u-sec-annotation ul li:first-child {
	margin-bottom: 15px;
	padding-left: 1em;
	text-indent: -1em;
}


/*--------------------------------------------------------------------------
	.u-sec-cta
---------------------------------------------------------------------------*/
#u-floating {
	position: fixed;
	left: 0;
	bottom: 0;
	display: none;
	background-color: #fff;
	box-shadow: 0px -6px 12px 0px rgba(57, 32, 0, 0.06);
	width: 100%;
	z-index: 10;
}
#u-floating.u-view {

}
#u-floating.u-d-none {
	display: none;
}
#u-floating .u-inner {
	padding: 0 0 20px 0;
}
.u-sec-cta {
	background-image: url(../img/cta_bg.png);
	background-position: center bottom;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 45px 0 55px;
}

.u-cta-area .u-ttl {
	width: 243px;
	margin: 0 auto;
}
.u-cta-area .u-btn {
	position: relative;
	z-index: 0;
}
.u-cta-area .u-btn a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 45px;
	width: 540px;
	height: 90px;
	background-color: #ff0700;
	color: #fff;
	font-size: 26px;
	font-weight: 600;
	line-height: 1;
	margin: 20px auto 0 auto;
	padding-left: 15px;
}
.u-cta-area .u-btn a::before {
	content: '';
	position: absolute;
	left: 45px;
	top: 50%;
	width: 27px;
	height: 34px;
	background-image: url(../img/icon_cta.svg);
	background-size: cover;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.u-cta-area .u-btn a::after {
	content: '';
	position: absolute;
	right: 35px;
	top: 50%;
	width: 10px;
	height: 16px;
	background-image: url(../img/icon_arw.svg);
	background-size: cover;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

/*--------------------------------------------------------------------------
	.u-sec-l_nav
---------------------------------------------------------------------------*/
.u-sec-l_nav {
	background-color: #000;
}
.u-sec-l_nav ul {
	display: flex;
}
.u-sec-l_nav ul li {
	display: flex;
	font-size: 16px;
	width: 25%;
	height: 80px;
	position: relative;
}
.u-sec-l_nav ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 1px;
	height: 30px;
	background-color: #fff;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	opacity: .2;
}
.u-sec-l_nav ul li:last-of-type:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	width: 1px;
	height: 30px;
	background-color: #fff;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	opacity: .2;
}
.u-sec-l_nav ul li a {
	width: 100%;
	color: #fff;
	text-align: center;
	padding: 20px 0 0 0;
}
.u-sec-l_nav ul li a span {
	position: relative;
}
.u-sec-l_nav ul li a span::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -14px;
	width: 11px;
	height: 7px;
	background-image: url(../img/icon_arw_d.svg);
	background-size: cover;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}


/*--------------------------------------------------------------------------
	.u-sec-plan
---------------------------------------------------------------------------*/
.u-sec-plan {
	padding-bottom: 64px;
}
.u-sec-plan .u-heading {
	margin-top: 78px;
}
.u-sec-plan .u-heading h2 {
	font-size: 50px;
	text-align: center;
}
.u-sec-plan .u-heading .u-heading__txt {
	font-size: 24px;
	text-align: center;
	line-height: 1.5;
	font-weight: 600;
	padding-top: 25px;
}
.u-sec-plan .u-merit ul {
	padding-top: 45px;
	display: flex;
	justify-content: space-between;
}
.u-sec-plan .u-merit ul li {
	width: 190px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff8ea;
	border: 1px solid #ffd0a5;
	position: relative;
	line-height: 1.25;
	text-align: center;
	font-size: 24px;
	font-weight: 600;
	padding-left: 35px;
}
.u-sec-plan .u-merit ul li::before {
	content: '';
	position: absolute;
	left: 14px;
	top: 50%;
	width: 28px;
	height: 26px;
	background-image: url(../img/icon_check.png);
	background-size: cover;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.u-sec-plan .u-plan {
	margin-top: 40px;
	border: 2px solid #000;
	background-color: #000;
}
.u-sec-plan .u-plan h3 {
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	padding: 10px 0;
	background-color: #000;
}
.u-sec-plan .u-plan .u-plan__inner {
	background-color: #fff;
	text-align: center;
	padding-bottom: 64px;
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--01 {
	font-size: 30px;
	font-weight: 600;
	padding-top: 55px;
	line-height: 1;
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--01 span {
	position: relative;
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--01 span::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 2px;
    height: 25px;
	background-color: #000;
    transform: translate(-20px, -50%) rotate(-18deg);
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--01 span::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 2px;
    height: 25px;
	background-color: #000;
    transform: translate(20px, -50%) rotate(18deg);
}
.u-sec-plan .u-plan .u-plan__inner .u-img--01 {
	padding-top: 27px;
	margin: 0 auto;
	width: 605px;
}
.u-sec-plan .u-plan .u-plan__inner .u-about-price a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-style: solid;
	border-width: 2px;
	border-color: #000;
	background-color:#fff;
	border-radius: 30px;
	margin-top: 25px;
	font-size: 22px;
	font-weight: 600;
	line-height: 1;
	width: 300px;
	height: 60px;
	color: #000;
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--02 {
	padding-top: 30px;
	font-size: 20px;
	line-height: 1.6;
}
.u-sec-plan .u-plan .u-plan__inner .u-imp__txt {
	width: 600px;
	border: 2px solid #ff0700;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 25px auto 0 auto;
	padding: 15px;
}
.u-sec-plan .u-plan .u-plan__inner .u-imp__txt p {
	font-size: 28px;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	color: #ff0700;
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--03 {
	width: 600px;
	margin: 25px auto 0 auto;
	font-size: 16px;
	line-height: 1.6;
}
.u-sec-plan .u-plan .u-plan__inner .u-img--02 {
	padding-top: 34px;
	margin: 0 auto;
	width: 600px;
}
.u-sec-plan .u-plan .u-plan__inner .u-plan__list {
	padding-top: 47px;
}
.u-sec-plan .u-plan .u-plan__inner .u-plan__list ul li a {
	width: 420px;
	height: 60px;
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
	border: 2px solid #fe7800;
    border-radius: 30px;
    background-color: #fff;
    color: #fe7800;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    margin: 0 auto;
    padding-left: 15px;
}
.u-sec-plan .u-plan .u-plan__inner .u-plan__list ul li + li {
	margin-top: 14px;
}
.u-sec-plan .u-plan .u-plan__inner .u-plan__list ul li a::before {
    content: '';
    position: absolute;
    left: 40px;
    top: 50%;
    width: 20px;
    height: 24px;
    background-image: url(../img/icon_detail.svg);
    background-size: cover;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.u-sec-plan .u-plan .u-plan__inner .u-txt--04 {
	font-size: 18px;
	padding-top: 16px;
}
.u-sec-plan .u-benefits {
	padding-top: 50px;
	display: flex;
	justify-content: space-between;
}
.u-sec-plan .u-benefits li {
	width: 391px;
	position: relative;
}
.u-sec-plan .u-benefits li span {
	position: absolute;
	left: 45px;
	bottom: 30px;
	font-size: 16px;
}
.u-sec-plan .u-benefits li span.u-t-01 {
    position: absolute;
    right: 77px;
    left: auto;
    bottom: 115px;
    font-size: 16px;
}
.u-sec-plan .u-txt--05 {
	margin: 30px auto 0 auto;
	font-size: 18px;
	text-align: center;
}


/*--------------------------------------------------------------------------
	.u-sec-reason
---------------------------------------------------------------------------*/
.u-sec-reason {
	background-color: #f2f2f2;
	padding-bottom: 80px;
}
.u-sec-reason .u-heading {
	background-color: #000;
}
.u-sec-reason .u-heading h2 {
	font-size: 36px;
	color: #fff;
	font-weight: 600;
	text-align: center;
	padding: 60px 0;
}
.u-sec-reason .u-heading h2 span {
	font-size: 18px;
	display: block;
}
.u-sec-reason .u-reason__item {
	margin-top: 70px;
}
.u-sec-reason .u-reason__item + .u-reason__item {
	margin-top: 60px;
}
.u-sec-reason .u-reason__item .u-item__flex {
	display: flex;
	align-items: center;
}
.u-sec-reason .u-reason__item .u-item__flex--re {
	flex-direction: row-reverse;
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__txt {
	flex: 1;
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__txt h3 {
	font-size: 34px;
	font-weight: 600;
	line-height: 1.4;
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__txt h3 sup {
	font-size: 0.4em;
    top: -1.5em
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__txt h3 span {
	width: 141px;
	height: 59px;
	display: block;
	font-size: 20px;
	line-height: 1;
	background-image: url(../img/icon_balloon.png);
    background-size: cover;
	padding: 15px 0 0 40px;
	margin-bottom: 10px;
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__txt .u-txt--01 {
	padding-top: 20px;
	font-size: 18px;
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__txt .u-txt--01 sup {
	font-size: 0.6em;
}
.u-sec-reason .u-reason__item .u-item__flex .u-reason__img {
	width: 380px;
	margin-left: 40px;
}
.u-sec-reason .u-reason__item .u-item__flex--re .u-reason__img {
	margin-left: 0;
	margin-right: 40px;
}
.u-sec-reason .u-reason__item .u-annotation {
	margin-top: 30px;
	font-size: 16px;
	background-color: #fff;
	padding: 10px 15px;
}


/*--------------------------------------------------------------------------
	.u-sec-flow
---------------------------------------------------------------------------*/
.u-sec-flow {
	padding-bottom: 75px;
}
.u-sec-flow .u-heading {
	background-color: #000;
}
.u-sec-flow .u-heading h2 {
	font-size: 36px;
	color: #fff;
	font-weight: 600;
	text-align: center;
	padding: 60px 0;
}
.u-sec-flow .u-item__wrap {
	margin-top: 80px;
}
.u-sec-flow .u-item__wrap .u-item {
	width: 100%;
	height: 80px;
	display: flex;
	align-items: center;
	background-color: #f1f3f6;
	padding-left: 105px;
	font-size: 24px;
	font-weight: 600;
	position: relative;
}
.u-sec-flow .u-item__wrap .u-item::after {
	content: '';
	position: absolute;
	left: 50px;
	bottom: -25px;
	width: 1px;
	height: 40px;
	background-color: #262626;
	z-index: -1;
}
.u-sec-flow .u-item__wrap .u-item--04 {
	background-color: #fff8ea;
}
.u-sec-flow .u-item__wrap .u-item--04::after  {
	display: none;
}
.u-sec-flow .u-item__wrap .u-item--01::before {
	content: '';
    position: absolute;
    left: 30px;
    top: 50%;
    width: 50px;
    height: 48px;
    background-image: url(../img/icon_flow01.png);
    background-size: cover;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.u-sec-flow .u-item__wrap .u-item--02::before {
	content: '';
    position: absolute;
    left: 30px;
    top: 50%;
    width: 42px;
    height: 47px;
    background-image: url(../img/icon_flow02.png);
    background-size: cover;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.u-sec-flow .u-item__wrap .u-item--03::before {
	content: '';
    position: absolute;
    left: 20px;
    top: 50%;
    width: 52px;
    height: 42px;
    background-image: url(../img/icon_flow03.png);
    background-size: cover;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.u-sec-flow .u-item__wrap .u-item--04::before {
	content: '';
    position: absolute;
    left: 20px;
    top: 50%;
    width: 59px;
    height: 45px;
    background-image: url(../img/icon_flow04.png);
    background-size: cover;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
.u-sec-flow .u-item__wrap .u-item + .u-item {
	margin-top: 20px;
}
.u-sec-flow .u-item__wrap .u-item .u-step_num {
	font-size: 24px;
	color: #fe7800;
	margin-right: 22px;
}
.u-sec-flow .u-item__wrap .u-item .u-txt--01 {
	font-size: 18px;
	color: #fff;
	margin-right: 22px;
	display: inline-block;
	border-radius: 30px;
	background-color: #fe7800;
	padding: 10px 20px;
	margin-left: 25px;
	line-height: 1;
}
.u-sec-flow .u-item__wrap .u-item .u-txt--02 {
	font-size: 20px;
}
.u-sec-flow .u-item__wrap .u-item .u-txt--02 sup {
	font-size: 0.6em;
}
.u-sec-flow .u-txt--03 {
	font-size: 16px;
	line-height: 1.4;
	padding-top: 25px;
}

/*--------------------------------------------------------------------------
	.u-sec-faq
---------------------------------------------------------------------------*/
.u-sec-faq {
	padding-bottom: 75px;
}
.u-sec-faq .u-heading {
	background-color: #000;
}
.u-sec-faq .u-heading h2 {
	font-size: 36px;
	color: #fff;
	font-weight: 600;
	text-align: center;
	padding: 60px 0;
}
.u-sec-faq .u-faq__list {
	margin-top: 80px;
}
.u-sec-faq .u-faq__list .u-item {
	background-color: #d6dce5;
}
.u-sec-faq .u-faq__list .u-item +.u-item {
	margin-top: 10px;
}
.u-sec-faq .u-faq__list .u-item dt {
	padding: 25px 50px 25px 67px;
	position: relative;
	cursor: pointer;
	font-size: 18px;
	line-height: 1.4;
}
.u-sec-faq .u-faq__list .u-item dt .u-icon_q {
	position: absolute;
	left: 28px;
	top: 50%;
	width: 14px;
	height: 18px;
	background-image: url(../img/icon_qst.svg);
	background-size: cover;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
.u-sec-faq .u-faq__list .u-item dt i {
	position: absolute;
    top: 50%;
    right: 20px;
    width: 13px;
	height: 8px;
    transform: translateY(-50%);
}
.u-sec-faq .u-faq__list .u-item dt i::before {
    content: "";
    position: absolute;
    top: 50%;
	width: 13px;
	height: 8px;
	background-image: url(../img/icon_arw_d02.svg);
	background-size: cover;
    transition: all 0.3s ease 0s;
}
.u-sec-faq .u-faq__list .u-item dt i::before {
	transform: translateY(-50%);
}
.u-sec-faq .u-faq__list .u-item dt.is-active i::before {
	transform: translateY(-50%) rotate(180deg);
}
.u-sec-faq .u-faq__list .u-item dd {
	display: none;
	background-color: #f1f3f6;
}
.u-sec-faq .u-faq__list .u-item dd {
	padding: 18px 40px 20px 67px!important;
	font-size: 18px;
	position: relative;
	line-height: 1.6;
}
.u-sec-faq .u-faq__list .u-item dd p + p {
	padding-top: 15px;
}
.u-sec-faq .u-faq__list .u-item dd .u-icon_blank {
	display: inline-block;
	width: 12px;
	margin: 0 5px;
	vertical-align: text-top;
}
.u-sec-faq .u-faq__list .u-item dd .u-icon_a {
	position: absolute;
	left: 28px;
	top: 25px;
	width: 14px;
	height: 18px;
	background-image: url(../img/icon_ans.svg);
	background-size: cover;
}

.u-sec-faq .u-faq__list .u-item dd .u-txt--01 {
	font-size: 16px;
	padding-top: 15px;
	padding-left: 1em;
	text-indent: -1em;
	display: block;
}

.u-sec-faq .u-faq__list .u-item dd .u-media{
	padding-top: 15px;
	width: 100%;
}


/*--------------------------------------------------------------------------
	.u-modal
---------------------------------------------------------------------------*/
.u-modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
	font-size: 1em;
	z-index: 100;
}
.u-modal__bg {
    background: rgba(43,46,56,0.95);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.u-modal__content {
    background: #fff;
    left: 50%;
    position: absolute;
    top: 10vh;
    transform: translate(-50%, 0);
    width: 80%;
	max-width: 700px;
	max-height: 80vh;
	overflow-y: scroll;
}
.u-js-modal-close_btn__wrap {
	width: 80%;
	max-width: 700px;
    position: fixed;
    left: 50%;
	transform: translate(-50%, -100%);
    top: 10vh;
	display: block;
}
.u-modal__content {
	border: 2px solid #000;
	background-color: #000;
}
.u-modal__content .u-heading h2 {
	color: #fff;
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	padding: 10px 0;
	background-color: #000;
}
.u-modal__content .u-modal__inner {
	background-color: #fff;
	padding: 40px 50px 80px 50px;
	line-height: 1.6;
}
.u-modal__content .u-modal__inner .u-txt--01 {
	font-size: 20px;
}
.u-modal__content .u-modal__inner .u-txt--01--2 {
	font-size: 20px;
	padding-top: 20px;
}
.u-modal__content .u-modal__inner .u-txt--02 {
	font-size: 16px;
	padding-top: 10px;
}
.u-modal__content .u-modal__inner h3.u-ttl {
	font-size: 22px;
	padding-top: 30px;
	margin-top: 30px;
	position: relative;
	border-top: 1px solid #dddddd;
}
.u-modal__content .u-modal__inner h3.u-ttl span {
	position: relative;
	display: block;
	padding-left: 20px;
	line-height: 1;
}
.u-modal__content .u-modal__inner h3.u-ttl span::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 4px;
	height: 100%;
	background: #000;
	transform: translate(0, -50%);
}
.u-modal__content .u-modal__inner .u-price {
	font-size: 38px;
	font-weight: 600;
	color: #fe7800;
	padding-top: 15px;
}
.u-modal__content .u-modal__inner .u-price span {
	font-size: 20px;
	display: inline-block;
	margin-right: 10px;
}
.u-modal__content .u-modal__inner .u-price span.u-yen {
	font-size: 20px;
	display: inline-block;
	margin-right: 0;
	margin-left: 10px;
}
.u-modal__content .u-modal__inner .u-txt--03 {
	font-size: 20px;
	font-weight: 600;
	color: #fe7800;
	padding-top: 10px;
}
.u-modal__content .u-modal__inner .u-txt--03 sup {
	font-size: 0.6em;
}
.u-modal__content .u-modal__inner .u-txt--04 {
	font-size: 16px;
	padding-top: 0;
}
.u-modal__content .u-modal__inner .u-modal__list {
	padding-top: 20px;
}
.u-modal__content .u-modal__inner .u-modal__list li {
	font-size: 20px;
	font-weight: 600;
}
.u-modal__content .u-modal__inner .u-img--01 {
	padding-top: 30px;
	width: 100%;
}
.u-modal__content .u-modal__inner .u-list {
	padding: 20px 0 30px;
}
.u-modal__content .u-modal__inner .u-list li {
	text-indent: -1.2em;
	padding-left: 1.2em;
	margin-top: 5px;
}
.u-modal__content .u-modal__inner .u-list li span {
	font-weight: 600;
	font-size: 1.2em;
	display: block;
}
.u-modal__content .u-modal__inner .u-cta-area{
	padding-top: 54px;
}

.u-js-modal-close_btn {
	display: block;
    width: 35px;
    height: 35px;
    position: absolute;
    right: 0;
    top: -40px;
}
.u-js-modal-close_btn::before, .u-js-modal-close_btn::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px; /* 棒の幅（太さ） */
	height: 35px; /* 棒の高さ */
	background: #fff; /* バツ印の色 */
	z-index: 1;
}

.u-js-modal-close_btn::before {
	transform: translate(-50%,-50%) rotate(45deg);
}

.u-js-modal-close_btn::after {
	transform: translate(-50%,-50%) rotate(-45deg);
}
.u-js-modal-close_btn--02 {
	margin-top: 40px;
}
.u-js-modal-close_btn--02 a {
	border-radius: 3px;
	background-color:#707476;
	width: 160px;
	height: 50px;
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin: 0 auto;
}
.u-js-modal-close_btn--02 a::after {
	content: '';
	position: absolute;
	right: 22px;
	top: 50%;
	width: 7px;
	height: 11px;
	background-image: url(../img/icon_arw.svg);
	background-size: cover;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}



@media screen and (max-width: 767px){
	/*--------------------------------------------------------------------------
		 .u-sec-mv
	 ---------------------------------------------------------------------------*/
	 .u-sec-mv {
		 position: relative;
		 background-image: url(../img/mv_bg_sp.png);
		 background-position: center bottom;
		 background-size: cover;
		 background-repeat: no-repeat;
		 height: 146vw;
		 overflow-x: hidden;
	 }
	 .u-sec-mv .u-inner {
		 max-width: 100%;
		 padding: 0;
	 }
	 .u-sec-mv h1 {
		 width: 51.733vw;
		 padding: 6.667vw 0 0 5.333vw;
	 }
	 .u-sec-mv .u-img--01 {
		 position: absolute;
		 right: auto;
		 left: 0;
		 top: 37.867vw;
		 width: 50.667vw;
	 }
	 .u-sec-mv .u-txt--02 {
		 width: 77.6vw;
		 margin: 6.267vw 0 0 18.533vw;
	 }
	 .u-sec-mv ul {
		 position: relative;
		 margin: 17.867vw 5.333vw 0 5.333vw;
	 }
	 .u-sec-mv ul li {
		 width: 44.133vw;
	 }

	 /*--------------------------------------------------------------------------
		 .u-sec-annotation
	 ---------------------------------------------------------------------------*/
	 .u-sec-annotation {
		 padding: 4vw 0 5.333vw;
	 }
	 .u-sec-annotation ul li {
		 font-size: 3.2vw;
		 padding-left: 0;
		 text-indent: 0;
		 padding-top: 1.333vw;
	 }
	 .u-sec-annotation ul li:first-child {
		 margin-bottom: 2vw;
	 }

	 /*--------------------------------------------------------------------------
		 .u-sec-cta
	 ---------------------------------------------------------------------------*/
	 #u-floating {
		 box-shadow: 0 -0.8vw 1.6vw 0 rgba(57, 32, 0, 0.06);
	 }
	 #u-floating .u-inner {
		 padding: 0 0 2.667vw 0;
	 }
	 .u-sec-cta {
		 background-image: url(../img/cta_bg_sp.png);
		 background-position: center bottom;
		 background-size: cover;
		 background-repeat: no-repeat;
		 padding: 8.8vw 0 10vw;
	 }
	 .u-cta-area .u-ttl {
		 width: 40.933vw;
		 margin: 0 auto;
	 }
	 .u-cta-area .u-btn {
		 position: relative;
		 z-index: 0;
	 }
	 .u-cta-area .u-btn a {
		 border-radius: 8vw;
		 width: 89.333vw;
		 height: 16vw;
		 font-weight: 600;
		 margin: 4vw auto 0 auto;
		 padding-left: 3.333vw;
		 font-size: 4.533vw;
	 }
	 .u-cta-area .u-btn a::before {
		 content: '';
		 position: absolute;
		 left: 6.667vw;
		 top: 50%;
		 width: 4.933vw;
		 height: 6.133vw;
		 background-image: url(../img/icon_cta.svg);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-cta-area .u-btn a::after {
		 content: '';
		 position: absolute;
		 right: 5.333vw;
		 top: 50%;
		 width: 2vw;
		 height: 3.2vw;
		 background-image: url(../img/icon_arw.svg);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }

	 /*--------------------------------------------------------------------------
		 .u-sec-l_nav
	 ---------------------------------------------------------------------------*/
	 .u-sec-l_nav {
	 }
	 .u-sec-l_nav .u-inner {
		 padding: 0;
	 }
	 .u-sec-l_nav ul {
		 display: flex;
		 flex-wrap: wrap;
	 }
	 .u-sec-l_nav ul li {
		 display: flex;
		 align-items: center;
		 font-size: 4vw;
		 width: 50%;
		 height: 16vw;
		 position: relative;
		 border-bottom: 0.133vw solid #333333;
		 border-left: 0.133vw solid #333333;
	 }
	 .u-sec-l_nav ul li::before {
		 display: none;
	 }
	 .u-sec-l_nav ul li:last-of-type:after {
		 display: none;
	 }
	 .u-sec-l_nav ul li a {
		 width: 100%;
		 height: 100%;
		 color: #fff;
		 text-align: center;
		 padding: 0;
		 display: flex;
		 align-items: center;
	 }
	 .u-sec-l_nav ul li a span {
		 position: relative;
		 display: block;
		 text-align: left;
		 padding-left: 12vw;
	 }
	 .u-sec-l_nav ul li a span::after {
		 content: '';
		 position: absolute;
		 left: 5.333vw;
		 bottom: auto;
		 top: 50%;
		 width: 3.2vw;
		 height: 2vw;
		 background-image: url(../img/icon_arw_d.svg);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }


	 /*--------------------------------------------------------------------------
		 .u-sec-plan
	 ---------------------------------------------------------------------------*/
	 .u-sec-plan {
		 padding-bottom: 13.867vw;
	 }
	 .u-sec-plan .u-heading {
		 margin-top: 14.533vw;
	 }
	 .u-sec-plan .u-heading h2 {
		 font-size: 9.333vw;
	 }
	 .u-sec-plan .u-heading .u-heading__txt {
		 font-size: 4.8vw;
		 padding-top: 4.667vw;
	 }
	 .u-sec-plan .u-merit ul {
		 padding-top: 10vw;
		 flex-wrap: wrap;
	 }
	 .u-sec-plan .u-merit ul li {
		 width: 100%;
		 height: 12vw;
		 background-color: #fff8ea;
		 border: 0.133vw solid #fff8ea;
		 font-size: 4.8vw;
		 padding-left: 12vw;
		 justify-content: flex-start;
	 }
	 .u-sec-plan .u-merit ul li + li {
		 margin-top: 1.333vw;
	 }
	 .u-sec-plan .u-merit ul li::before {
		 content: '';
		 position: absolute;
		 left: 4vw;
		 top: 50%;
		 width: 4.667vw;
		 height: 4.4vw;
		 background-image: url(../img/icon_check_sp.png);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-plan .u-plan {
		 margin-top: 9.333vw;
		 border: 0.267vw solid #000;
		 background-color: #000;
	 }
	 .u-sec-plan .u-plan h3 {
		 font-size: 4.8vw;
		 padding: 3.333vw 0;
	 }
	 .u-sec-plan .u-plan .u-plan__inner {
		 padding: 0 5.333vw 12vw 5.333vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-txt--01 {
		 font-size: 5.333vw;
		 padding-top: 8.667vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-txt--01 span::before {
		 content: '';
		 position: absolute;
		 left: 0;
		 top: 50%;
		 width: 0.533vw;
		 height: 5.733vw;
		 background-color: #000;
		 transform: translate(-2.667vw, -50%) rotate(-18deg);
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-txt--01 span::after {
		 content: '';
		 position: absolute;
		 right: 0;
		 top: 50%;
		 width: 0.533vw;
		 height: 5.733vw;
		 background-color: #000;
		 transform: translate(2.667vw, -50%) rotate(18deg);
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-img--01 {
		 padding-top: 5.333vw;
		 width: 78.267vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-about-price a {
		 border-style: solid;
		 border-width: 0.4vw;
		 border-color: #000;
		 border-radius: 5.333vw;
		 margin-top: 6.4vw;
		 font-size: 4.267vw;
		 width: 56vw;
		 height: 10.667vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-txt--02 {
		 padding-top: 5.333vw;
		 font-size: 4vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-imp__txt {
		 width: 100%;
		 border: 0.4vw solid #ff0700;
		 margin: 3.333vw auto 0 auto;
		 padding: 3.333vw 0;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-imp__txt p {
		 font-size: 5.333vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-txt--03 {
		 width: 100%;
		 margin: 5.333vw auto 0 auto;
		 font-size: 3.2vw;
		 padding-left: 1em;
		 text-indent: -1em;
		 text-align: left;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-img--02 {
		 padding-top: 6.667vw;
		 margin: 0;
		 width: 78.667vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-plan__list {
		 padding-top: 6.667vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-plan__list ul li a {
		 width: 100%;
		 height: 13.333vw;
		 border: 0.4vw solid #fe7800;
		 border-radius: 6.667vw;
		 font-size: 3.733vw;
		 padding-left: 4.667vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-plan__list ul li + li {
		 margin-top: 2.667vw;
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-plan__list ul li a::before {
		 content: '';
		 position: absolute;
		 left: 4.667vw;
		 top: 50%;
		 width: 4vw;
		 height: 4.8vw;
		 background-image: url(../img/icon_detail.svg);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-plan .u-plan .u-plan__inner .u-txt--04 {
		 font-size: 3.733vw;
		 padding-top: 5.333vw;
	 }
	 .u-sec-plan .u-benefits {
		 padding-top: 10.267vw;
		 display: block;
	 }
	 .u-sec-plan .u-benefits li {
		 width: 100%;
		 position: relative;
	 }
	 .u-sec-plan .u-benefits li + li {
		 margin-top: 1.867vw;
	 }
	 .u-sec-plan .u-benefits li span {
		 position: absolute;
		 left: 16.267vw;
		 bottom: 4vw;
		 font-size: 3.2vw;
	 }
	 .u-sec-plan .u-benefits li span.u-t-01 {
		 position: absolute;
		 right: 20.267vw;
		 left: auto;
		 bottom: 21.333vw;
		 font-size: 3.2vw;
	 }
	 .u-sec-plan .u-txt--05 {
		 margin: 5.867vw auto 0 auto;
		 font-size: 3.733vw;
	 }


	 /*--------------------------------------------------------------------------
		 .u-sec-reason
	 ---------------------------------------------------------------------------*/
	 .u-sec-reason {
		 padding-bottom: 10.667vw;
	 }
	 .u-sec-reason .u-heading h2 {
		 font-size: 6.667vw;
		 padding: 11.333vw 0;
	 }
	 .u-sec-reason .u-heading h2 span {
		 font-size: 3.333vw;
	 }
	 .u-sec-reason .u-reason__item {
		 margin-top: 13.333vw;
	 }
	 .u-sec-reason .u-reason__item + .u-reason__item {
		 margin-top: 10.667vw;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex {
		 display: block;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex .u-reason__txt h3 {
		 font-size: 8vw;
		 text-align: center;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex .u-reason__txt h3 span {
		 width: 33.867vw;
		 height: 12.133vw;
		 font-size: 4.533vw;
		 background-image: url(../img/icon_balloon_sp.png);
		 background-size: contain;
		 padding: 2.933vw 0 3.067vw 0;
		 margin: 0 auto 2vw;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex .u-reason__txt .u-txt--01 {
		 padding-top: 5.333vw;
		 font-size: 4.267vw;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex .u-reason__txt .u-txt--01 sup {
		 font-size: 0.6em;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex .u-reason__img {
		 width: 100%;
		 margin-top: 4.667vw;
		 margin-left: 0;
	 }
	 .u-sec-reason .u-reason__item .u-item__flex--re .u-reason__img {
		 margin-left: 0;
		 margin-right: 0;
	 }
	 .u-sec-reason .u-reason__item .u-annotation {
		 margin-top: 2.667vw;
		 font-size: 3.2vw;
		 background: none;
		 padding: 0;
	 }

	 /*--------------------------------------------------------------------------
		 .u-sec-flow
	 ---------------------------------------------------------------------------*/
	 .u-sec-flow {
		 padding-bottom: 10vw;
	 }
	 .u-sec-flow .u-heading h2 {
		 font-size: 6.667vw;
		 padding: 10.667vw 0;
	 }
	 .u-sec-flow .u-item__wrap {
		 margin-top: 13.333vw;
	 }
	 .u-sec-flow .u-item__wrap .u-item {
		 width: 100%;
		 height: 21.333vw;
		 display: block;
		 background-color: #f1f3f6;
		 padding-left: 20vw;
		 font-size: 5.333vw;
		 line-height: 1;
	 }
	 .u-sec-flow .u-item__wrap .u-item::after {
		 content: '';
		 position: absolute;
		 left: 9.333vw;
		 bottom: -4vw;
		 width: 0.133vw;
		 height: 6.667vw;
		 background-color: #262626;
		 z-index: -1;
	 }
	 .u-sec-flow .u-item__wrap .u-item--04 {
		 background-color: #fff8ea;
	 }
	 .u-sec-flow .u-item__wrap .u-item--04::after  {
		 display: none;
	 }
	 .u-sec-flow .u-item__wrap .u-item--01::before {
		 content: '';
		 position: absolute;
		 left: 5.333vw;
		 top: 50%;
		 width: 11.333vw;
		 height: 10.667vw;
		 background-image: url(../img/icon_flow01_sp.png);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-flow .u-item__wrap .u-item--02::before {
		 content: '';
		 position: absolute;
		 left: 5.333vw;
		 top: 50%;
		 width: 10vw;
		 height: 11.2vw;
		 background-image: url(../img/icon_flow02_sp.png);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-flow .u-item__wrap .u-item--03::before {
		 content: '';
		 position: absolute;
		 left: 4vw;
		 top: 50%;
		 width: 11.6vw;
		 height: 9.467vw;
		 background-image: url(../img/icon_flow03_sp.png);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-flow .u-item__wrap .u-item--04::before {
		 content: '';
		 position: absolute;
		 left: 4vw;
		 top: 50%;
		 width: 12vw;
		 height: 9.2vw;
		 background-image: url(../img/icon_flow04_sp.png);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-flow .u-item__wrap .u-item + .u-item {
		 margin-top: 4vw;
	 }
	 .u-sec-flow .u-item__wrap .u-item .u-step_num {
		 font-size: 3.2vw;
		 margin-right: 0;
		 display: block;
		 line-height: 1;
		 padding: 5.333vw 0 2vw 0;
	 }
	 .u-sec-flow .u-item__wrap .u-item .u-txt--01 {
		 font-size: 3.467vw;
		 color: #fff;
		 margin-right: 0;
		 display: inline-block;
		 border-radius: 4vw;
		 background-color: #fe7800;
		 padding: 1.067vw 3.333vw;
		 margin-left: 2vw;
		 line-height: 1;
	 }
	 .u-sec-flow .u-item__wrap .u-item .u-txt--02 {
		 font-size: 3.733vw;
	 }
	 .u-sec-flow .u-item__wrap .u-item .u-txt--02 sup {
		 font-size: 0.6em;
	 }
	 .u-sec-flow .u-txt--03 {
		 font-size: 3.2vw;
		 padding-top: 5.333vw;
	 }


	 /*--------------------------------------------------------------------------
		 .u-sec-faq
	 ---------------------------------------------------------------------------*/
	 .u-sec-faq {
		 padding-bottom: 9.333vw;
	 }
	 .u-sec-faq .u-heading h2 {
		 font-size: 6.667vw;
		 padding: 10.667vw 0;
	 }
	 .u-sec-faq .u-faq__list {
		 margin-top: 13.333vw;
	 }
	 .u-sec-faq .u-faq__list .u-item +.u-item {
		 margin-top: 5.333vw;
	 }
	 .u-sec-faq .u-faq__list .u-item dt {
		 padding: 3.333vw 9.867vw 3.333vw 12.267vw;
		 font-size: 4vw;
	 }
	 .u-sec-faq .u-faq__list .u-item dt .u-icon_q {
		 position: absolute;
		 left: 4vw;
		 top: 50%;
		 width: 3.2vw;
		 height: 4vw;
		 background-image: url(../img/icon_qst.svg);
		 background-size: contain;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
	 .u-sec-faq .u-faq__list .u-item dt i {
		 position: absolute;
		 top: 50%;
		 right: 4vw;
		 width: 3.2vw;
		 height: 2vw;
		 transform: translateY(-50%);
	 }
	 .u-sec-faq .u-faq__list .u-item dt i::before {
		 content: "";
		 position: absolute;
		 top: 50%;
		 width: 3.2vw;
		 height: 2vw;
		 background-image: url(../img/icon_arw_d02.svg);
		 background-size: cover;
		 transition: all 0.3s ease 0s;
	 }
	 .u-sec-faq .u-faq__list .u-item dt i::before {
		 transform: translateY(-50%);
	 }
	 .u-sec-faq .u-faq__list .u-item dt.is-active i::before {
		 transform: translateY(-50%) rotate(180deg);
	 }
	 .u-sec-faq .u-faq__list .u-item dd {
		 display: none;
		 background-color: #f1f3f6;
	 }
	 .u-sec-faq .u-faq__list .u-item dd {
		 padding: 5.867vw 5.333vw 5.867vw 12.267vw!important;
		 font-size: 4vw;
	 }
	 .u-sec-faq .u-faq__list .u-item dd p + p {
		 padding-top: 2.667vw;
	 }
	 .u-sec-faq .u-faq__list .u-item dd .u-icon_blank {
		 width: 2.667vw;
		 margin: 0 1.333vw;
	 }
	 .u-sec-faq .u-faq__list .u-item dd .u-icon_a {
		 position: absolute;
		 left: 4vw;
		 top: 7.467vw;
		 width: 3.2vw;
		 height: 3.867vw;
		 background-image: url(../img/icon_ans.svg);
		 background-size: contain;
	 }

	 .u-sec-faq .u-faq__list .u-item dd .u-txt--01 {
		 font-size: 3.2vw;
		 padding-top: 2.667vw;
	 }

	 .u-sec-faq .u-faq__list .u-item dd .u-media{
		 padding-top: 3.333vw;
		 width: 100%;
	 }

	 /*--------------------------------------------------------------------------
		 .u-modal
	 ---------------------------------------------------------------------------*/
	 .u-modal__content {
		 position: absolute;
		 top: 10vh;
		 max-height: 80vh;
		 width: 90%;
	 }
	 .js-modal-close_btn__wrap {
		 width: 90%;
	 }
	 .u-modal__content {
		 border: 0.267vw solid #000;
	 }
	 .u-modal__content .u-heading h2 {
		 font-size: 4.8vw;
		 padding: 2.667vw 0;
	 }
	 .u-modal__content .u-modal__inner {
		 padding: 6.667vw 5.333vw 14.667vw 5.333vw;
	 }
	 .u-modal__content .u-modal__inner .u-txt--01 {
		 font-size: 4vw;
	 }
	 .u-modal__content .u-modal__inner .u-txt--01--2 {
		 font-size: 4vw;
		 padding-top: 2.667vw;
	 }
	 .u-modal__content .u-modal__inner .u-txt--02 {
		 font-size: 3.2vw;
		 padding-top: 1.333vw;
	 }
	 .u-modal__content .u-modal__inner h3.u-ttl {
		 font-size: 4.267vw;
		 padding-top: 6.667vw;
		 margin-top: 6.667vw;
		 position: relative;
		 border-top: 0.133vw solid #dddddd;
	 }
	 .u-modal__content .u-modal__inner h3.u-ttl span {
		 padding-left: 3.333vw;
	 }
	 .u-modal__content .u-modal__inner h3.u-ttl span::before {
		 content: '';
		 position: absolute;
		 left: 0;
		 top: 50%;
		 width: 1.067vw;
		 height: 100%;
		 background: #000;
		 transform: translate(0, -50%);
	 }
	 .u-modal__content .u-modal__inner .u-price {
		 font-size: 7.333vw;
		 padding-top: 3.333vw;
		 line-height: 1.2;
	 }
	 .u-modal__content .u-modal__inner .u-price span {
		 font-size: 4vw;
		 margin-right: 1.333vw;
	 }
	 .u-modal__content .u-modal__inner .u-price span.u-yen {
		 font-size: 4vw;
		 margin-right: 0;
		 margin-left: 1.333vw;
	 }
	 .u-modal__content .u-modal__inner .u-txt--03 {
		 font-size: 3.2vw;
		 padding-top: 1.333vw;
	 }
	 .u-modal__content .u-modal__inner .u-txt--03-2 {
		 font-size: 4vw;
		 padding-top: 1.333vw;
		 padding-left: 1em;
	 }
	 .u-modal__content .u-modal__inner .u-txt--03 sup {
		 font-size: 0.6em;
	 }
	 .u-modal__content .u-modal__inner .u-txt--04 {
		 font-size: 3.2vw;
		 padding-top: 1.333vw;
	 }
	 .u-modal__content .u-modal__inner .u-modal__list {
		 padding-top: 4vw;
	 }
	 .u-modal__content .u-modal__inner .u-modal__list li {
		 font-size: 4vw;
		 padding-left: 1em;
		 text-indent: -1em;
	 }
	 .u-modal__content .u-modal__inner .u-img--01 {
		 padding-top: 6.667vw;
		 width: 100%;
	 }
	 .u-modal__content .u-modal__inner .u-list {
		 padding: 2.667vw 0 4vw;
	 }
	 .u-modal__content .u-modal__inner .u-list li {
		 text-indent: -1.2em;
		 padding-left: 1.2em;
		 margin-top: 2.667vw;
		 font-size: 3.2vw;
	 }
	 .u-modal__content .u-modal__inner .u-list li span {
		 font-weight: 600;
		 font-size: 1.2em;
		 display: block;
	 }
	 .u-modal__content .u-modal__inner .u-cta-area{
		 padding-top: 10.667vw;
	 }
	 .u-modal__content .u-modal__inner .u-cta-area a {
		 width: 78.667vw;
		 padding-left: 0;
		 padding-right: 2vw;
		 font-size: 4.267vw;
	 }
	 .u-modal__content .u-modal__inner .u-cta-area .u-btn a::before {
		 display: none;
	 }
	 .u-js-modal-close_btn {
		 display: block;
		 width: 5.333vw;
		 height: 5.333vw;
		 position: absolute;
		 right: 0;
		 top: -10vw;
	 }
	 .u-js-modal-close_btn::before, .u-js-modal-close_btn::after {
		 content: "";
		 position: absolute;
		 top: 50%;
		 left: 50%;
		 width: 0.4vw; /* 棒の幅（太さ） */
		 height: 7.467vw; /* 棒の高さ */
		 background: #fff; /* バツ印の色 */
		 z-index: 1;
	 }
	 .u-js-modal-close_btn::before {
		 transform: translate(-50%,-50%) rotate(45deg);
	 }
	 .u-js-modal-close_btn::after {
		 transform: translate(-50%,-50%) rotate(-45deg);
	 }
	 .u-js-modal-close_btn--02 {
		 margin-top: 10.667vw;
	 }
	 .u-js-modal-close_btn--02 a {
		 border-radius: 0.8vw;
		 width: 32vw;
		 height: 9.333vw;
		 font-size: 3.467vw;
	 }
	 .u-js-modal-close_btn--02 a::after {
		 content: '';
		 position: absolute;
		 right: 3.2vw;
		 top: 50%;
		 width: 1.333vw;
		 height: 2.133vw;
		 background-image: url(../img/icon_arw.svg);
		 background-size: cover;
		 -webkit-transform: translate(0, -50%);
		 transform: translate(0, -50%);
	 }
 }
