@charset "UTF-8";

/*---------------------------------
  Google Fonts
---------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');

.NotoSans { font-family: 'Noto Sans JP', sans-serif; }
.NotoSerif { font-family: 'Noto Serif JP', serif; }
.ShipporiMincho { font-family: 'Shippori Mincho', serif; }
.MPLUSRounded1c { font-family: 'M PLUS Rounded 1c', sans-serif; }

/*---------------------------------
  表示・非表示（PC / TB / SP）
---------------------------------*/
.pconly {
	display: block;
}
.tbonly {
	display: block;
}
.sponly {
	display: none !important;
}
.pcnone {
	display: none;
}
@media screen and (max-width: 767px) {
.pconly {
	display: none !important;
}
.tbonly {
	display: none !important;
}
.sponly {
	display: block;
}
.pcnone {
	display: inline-block;
}
.spnone {
	display: none;
}
}

/*---------------------------------
  html/bodyの設定
---------------------------------*/
html {
	font-size: 62.5%; /* 62.5%は10px */
	font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";
}
body {
    max-width: 100vw;
	color: #251e1c;
	background: #ffffff;
	overflow-x: hidden;
	word-wrap: break-word;
}
@media screen and (max-width: 767px) {
html {
	font-size: 62.5%; /* 62.5%は10px */
	font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";
}
body {
    max-width: 100vw;
	color: #251e1c;
	background: #ffffff;
	overflow-x: hidden;
	word-wrap: break-word;
}
}

/*---------------------------------
  リンク無効
---------------------------------*/
.pointereventsnone {    
   pointer-events: none;
}

/*---------------------------------
  画像
---------------------------------*/
img {
	width:100%;
	height:auto;
}
#maincontentswrap01 img {
   vertical-align:bottom;
   pointer-events: none;
}
#maincontentswrap01 a img {
	border-style:none;
}
#maincontentswrap01 img {
	width:100%;
	height:auto;
	image-rendering: auto;
}
#maincontentswrap01 img[src$=".svg"] {
    width: 100%;
}


/*---------------------------------
  テキストリンク
---------------------------------*/
a:link {
	color: #066eb8;
	text-decoration: underline;
	transition: 1.0s;
}
a:visited {
	color: #066eb8;
	text-decoration: underline;
	transition: 1.0s;
}
a:active {
    color: #066eb8;
	text-decoration: underline;
    opacity: 1;
    transition: 1.0s;
}
a:hover {
    color: #066eb8;
	text-decoration: underline;
    opacity: 0.6;
    transition: 1.0s;
}

/*---------------------------------
  画像リンク
---------------------------------*/
a img {
	display: block;
}
a:link img {
	display: block;
	opacity: 1.0;
	transition: all 0.8s ease;
}
a:visited img {
	opacity: 1.0;
	transition: all 0.8s ease;
}
a:hover img {
	opacity: 0.6;
	transition: all 0.8s ease;
}
a:active img {
	opacity: 0.6;
	transition: all 0.8s ease;
}


/*---------------------------------
  フォントサイズ
---------------------------------*/
.fontsize-14 {
    font-size: 1.4rem;
}
.fontsize-18 {
    font-size: 1.8rem;
}
.fontsize-20 {
    font-size: 2.0rem;
}
.fontsize-22 {
    font-size: 2.2rem;
}
.fontsize-26 {
    font-size: 2.6rem;
}
.fontsize-28 {
    font-size: 2.8rem;
}
.fontsize-30 {
    font-size: 3.0rem;
}
.fontsize-38 {
    font-size: 3.8rem;
}
@media screen and (max-width: 767px) {
.fontsize-14 {
    font-size: 2.4vw; /* 750px基準で18px */
}
.fontsize-18 {
    font-size: 2.933333333333333vw; /* 750px基準で22px */
}
.fontsize-20 {
    font-size: 3.2vw; /* 750px基準で24px */
}
.fontsize-22 {
    font-size: 3.4666666666666663vw; /* 750px基準で26px */
}
.fontsize-26 {
    font-size: 4vw; /* 750px基準で30px */
}
.fontsize-28 {
    font-size: 4.266666666666667vw; /* 750px基準で32px */
}
.fontsize-30 {
    font-size: 4.533333333333333vw; /* 750px基準で34px */
}
.fontsize-38 {
    font-size: 5.6000000000000005vw; /* 750px基準で42px */
}
}


/*---------------------------------
  上付き文字
---------------------------------*/
.sup01 {
    font-size: 0.5em;
	vertical-align: top;
    line-height: 180%;
}


/*---------------------------------
  フォントカラー
---------------------------------*/
.font-white01 { color: #ffffff; }
.font-blue01 { color: #009cff; }
.font-blue02 { color: #1c6ec2; }
.font-black01 { color: #000000; }
.font-red01 { color: #c83b39; }
.font-yellow01 { color: #fff338; }
.font-green01 { color: #009c37; }
.font-green02 { color: #6ac000; }
.font-orange01 { color: #f39802; }


/*---------------------------------
  フォント太さ指定
---------------------------------*/
.font-thin100 {
    font-weight: 100;
}
.font-extralight200 {
    font-weight: 200;
}
.font-light300 {
    font-weight: 300;
}
.font-regular400 {
    font-weight: 400;
}
.font-medium500 {
    font-weight: 500;
}
.font-semibold600 {
    font-weight: 600;
}
.font-bold700 {
    font-weight: 700;
}
.font-extrabold800 {
    font-weight: 800;
}
.font-black900 {
    font-weight: 900;
}


/*---------------------------------
  テキストアンダーライン
---------------------------------*/
.textunderline {
    text-decoration: underline;
}


/*---------------------------------
  テキスト頭揃え
---------------------------------*/
.indent00-05 {
	text-indent: -0.5em;
	padding: 0 0 0 0.5em;
}
.indent01-01 {
	text-indent: -1em;
	padding: 0 0 0 1em;
}
.indent01-05 {
	text-indent: -1.5em;
	padding: 0 0 0 1.5em;
}
.indent03-01 {
	text-indent: -3em;
	padding: 0 0 0 3em;
}

.block {
    display: block;
}

/*---------------------------------
  文字間調整用
---------------------------------*/
.letterspace01 {
	letter-spacing: -0.02em;
}

/*---------------------------------
  行間調整用
---------------------------------*/
.block {
    display: block;
}
.lineheight120 {
    line-height: 120% !important;
}
.lineheight140 {
    line-height: 140% !important;
}
.lineheight160 {
    line-height: 160% !important;
}
.lineheight200 {
    line-height: 200% !important;
}

/*---------------------------------
  行間調整用
---------------------------------*/
.underpadding10px {
    padding: 0 0 10px;
}

/*---------------------------------
  テキスト位置
---------------------------------*/
.textleft {
	text-align: left !important;
}
.textcenter {
	text-align: center !important;
}
.textright {
	text-align: right !important;
}

/*---------------------------------
  改行設定
---------------------------------*/
.break:before {
	content: "\A";
	white-space: pre;
}
.pcno-break:before {
	content: "";
	white-space: pre;
}
.spno-break:before {
	content: "\A";
	white-space: pre;
}
@media screen and (max-width: 767px) {
.break:before {
	content: "\A";
	white-space: pre;
}
.pcno-break:before {
	content: "\A";
	white-space: pre;
}
.spno-break:before {
	content: "";
	white-space: pre;
}
}




/*---------------------------------
  ヘッダー
---------------------------------*/
#headwrap01 {
	width: 100%;
	padding: 0.9333333333333335vw 0; /* 1500px基準でpadding: 14px 0; */
    background: #ffffff;
}
#headwrap02 {
	width: 64vw; /* 1500px基準でwidth: 960px; */
    margin: 0 auto;
}
#headwrap02 a {
	width: 9.866666666666667vw; /* 1500px基準でwidth: 148px; */
    display: block;
}
@media screen and (max-width: 767px) {
#headwrap01 {
	width: 100%;
	padding: 4.406779661016949vw 2.5423728813559325vw; /* 590px基準でpadding: 26px 15px;*/
    background: #ffffff;
}
#headwrap02 {
	width: 100%;
    margin: 0 auto;
}
#headwrap02 a {
	width: 22.033898305084744vw; /* 590px基準でwidth: 130px; */
    display: block;
}
}


/*---------------------------------
  メインビジュアル
---------------------------------*/
#mainvisualwrap01 {
    width: 100%;
    background: url('../img/blockbgbottom_pc.svg') no-repeat left bottom / contain;
    position: relative;
    padding: 0 0 12.133333333333333vw; /* 1500px基準でpadding: 0 0 182px; */
}
#mainvisualwrap02 {
	width: 100%;
	background:
    url('../img/blockbgtop_pc.svg') no-repeat left top / contain,
    #fefaf2;
    padding: 11.333333333333332vw 0 0; /* 1500px基準でpadding: 170px 0 0; */
}
#mainvisualwrap03 {
    width: 47.66666666666667vw; /* 1500px基準でwidth: 715px; */
    margin: 0 auto;
    padding: 0 0 1.2vw; /* 1500px基準でpadding: 0 0 18px; */
}

#naviwrap01 {
    width: 64vw; /* 1500px基準でwidth: 960px; */
    margin: 0 auto;
    padding: 0 0 2.3333333333333335vw; /* 1500px基準でpadding: 0 0 35px; */
    display: flex;
    gap: 0 1.2vw; /* 1500px基準でgap: 0 18px; */
}
.naviinner01 {
    width: calc(100% / 4);
}
.naviinner01 a:link {
    display: block;
}
.naviinner01 a:hover {
    opacity: 1 !important;
    transform: translateY(5px);
}
.naviinner01 a:hover img {
    opacity: 1 !important;
}

#tvcmwrap01 {
    width: 100%;
    position: relative;
}
.tvcminner01 {
}
.tvcminner01:nth-child(2) {
    width: 25.333333333333336vw; /* 1500px基準でwidth: 380px; */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
#mainvisualwrap01 {
    width: 100%;
    background: url('../img/blockbgbottom_sp.svg') no-repeat left bottom / contain;
    position: relative;
    padding: 0 0 25.423728813559322vw; /* 590px基準でpadding: 0 0 150px; */
}
#mainvisualwrap02 {
	width: 100%;
	background:
    url('../img/blockbgtop_sp.svg') no-repeat left top / contain,
    #fefaf2;
    padding: 27.627118644067792vw 0 0; /* 590px基準でpadding: 163px 0 0; */
}
#mainvisualwrap03 {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 3.389830508474576vw; /* 590px基準でpadding: 0 0 20px; */
}

#naviwrap01 {
    width: 92.71186440677967vw; /* 590px基準でwidth: 547px; */
    margin: 0 auto;
    padding: 0 0 7.627118644067797vw; /* 590px基準でpadding: 0 0 45px; */
    display: block;
    gap: 0;
}
.naviinner01 {
    width: 100%;
    padding: 0 0 1.4322033898305082vw; /* 590px基準でpadding: 0 0 8.45px; */
}
.naviinner01:last-child {
    padding: 0;
}
.naviinner01 a:link {
    display: block;
}
.naviinner01 a:hover {
    opacity: 1 !important;
    transform: translateY(5px);
}
.naviinner01 a:hover img {
    opacity: 1 !important;
}

#tvcmwrap01 {
    width: 100%;
    position: relative;
}
.tvcminner01 {
}
.tvcminner01:nth-child(2) {
    width: 55.42372881355932vw; /* 590px基準でwidth: 327px; */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
}
}


/*---------------------------------
  フロートバナー
---------------------------------*/
#floatbannerwrap01 {
    display: inline-block;
    width: 36.733333333333334vw; /* 1500px基準でwidth: 551px; */
    position: fixed;
    top: auto;
    bottom: 1.3333333333333335vw; /* 1500px基準でwidth: 20px; */
    right: 0;
    left: 0;
    margin: auto;
    z-index: 998;
	transition: 0.5s;
}
#floatbannerwrap01 a {
    display: block;
    width: 100%;
}
/* 2カラム時 #floatbannerwrap01 {
    display: inline-block;
    width: 45.13333333333333vw; 1500px基準でwidth: 677px;
    position: fixed;
    top: auto;
    bottom: 1.3333333333333335vw; /* 1500px基準でwidth: 20px;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 998;
	transition: 0.5s;
}
#floatbannerwrap01 a {
    display: inline-block;
    width: 22.466666666666665vw; /* 1500px基準でwidth: 337px;
}
#floatbannerwrap01 a:nth-child(2) {
    width: 22.666666666666664vw; /* 1500px基準でwidth: 340px;
} */
#floatbannerwrap01 a:link {
    opacity: 1;
	transition: 0.5s;
}
#floatbannerwrap01 a:hover {
    opacity: 0.8 !important;
}
@media screen and (max-width: 767px) {
#floatbannerwrap01 {
    width: 66.13333333333333vw; /* 590px基準でwidth: 496px; */
    position: fixed;
    top: auto;
    bottom: 3.389830508474576vw; /* 590px基準でwidth: 20px; */
    right: 0;
    left: 0;
    margin: auto;
    z-index: 998;
}
#floatbannerwrap01 a {
    display: block;
    width: 100%;
}
/* 2カラム時 #floatbannerwrap01 {
    width: 100%;
    position: fixed;
    top: auto;
    bottom: 3.389830508474576vw; 590px基準でwidth: 20px;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 998;
}
#floatbannerwrap01 a {
    display: inline-block;
    width: 49.66101694915254vw; /* 590px基準でwidth: 293px;
}
#floatbannerwrap01 a:nth-child(2) {
    width: 50.33898305084745vw; /* 590px基準でwidth: 297px;
} */
#floatbannerwrap01 a:link {
    opacity: 1;
	transition: 0.5s;
}
#floatbannerwrap01 a:hover {
    opacity: 0.8 !important;
}
}


/*---------------------------------
  メインコンテンツ
---------------------------------*/
#maincontentswrap01 {
	width: 100%;
    font-size: 1.8rem;
    line-height: 180%;
    position: relative;
}
@media screen and (max-width: 767px) {
#maincontentswrap01 {
	width: 100%;
    font-size: 3.733333333333334vw; /* 750px基準で28px */
    line-height: 180%;
    position: relative;
}
}


/*---------------------------------
  コンテンツ（共通）
---------------------------------*/
.contentswrap01 {
	width: 100%;
}
.contentswrap01:after {
	content: "";
	clear: both;
	display: block;
}
.contentswrap01 img {
	display: block;
	width: 100%;
	height: auto;
}
.contentswrap02 {
	width: 100%;
	padding: 6.25vw 0; /* 1600px基準でpadding: 100px 0; */
}
.contentswrap02:after {
	content: "";
	clear: both;
	display: block;
}
.contentswrap02 img {
	display: block;
	width: 100%;
	height: auto;
}
.contentsinner01 {
	width: 1100px;
	max-width: 96%;
	margin: 0 auto;
    padding: 0 0 54px;
}
.contentsinner01:last-child {
	width: 1100px;
	max-width: 96%;
	margin: 0 auto;
    padding: 0;
}
.contentsinner01:after {
	content: "";
	clear: both;
	display: block;
}
@media screen and (max-width: 767px) {
.contentswrap01 {
	width: 100%;
}
.contentswrap01:after {
	content: "";
	clear: both;
	display: block;
}
.contentswrap01 img {
	display: block;
	width: 100%;
	height: auto;
}
.contentswrap02 {
	width: 100%;
	padding: 13.333333333333334vw 0; /* 750px基準でpadding: 100px 0; */
}
.contentswrap02:after {
	content: "";
	clear: both;
	display: block;
}
.contentswrap02 img {
	display: block;
	width: 100%;
	height: auto;
}
.contentsinner01 {
	width: 92vw; /* 750px基準でwidth: 690px; */
    max-width: 92vw; /* 750px基準でmax-width: 690px; */
	margin: 0 auto;
    padding: 0 0 5.333333333333334vw; /* 750px基準でpadding: 0 0 40px; */
}
.contentsinner01:last-child {
	width: 92vw; /* 750px基準でwidth: 690px; */
    max-width: 92vw; /* 750px基準でmax-width: 690px; */
	margin: 0 auto;
    padding: 0;
}
.contentsinner01:after {
	content: "";
	clear: both;
	display: block;
}
}


/*---------------------------------
  コンテンツBG
---------------------------------*/
.bluebg01 {
    background: #e7f0f8;
}
@media screen and (max-width: 767px) {
.bluebg01 {
    background: #e7f0f8;
}
}


/*---------------------------------
  そんなあなたにの部分
---------------------------------*/
#worrieswrap01 {
    width: 100%;
    margin: 0.16666666666666669vw 0 0; /* 1500px基準でmargin: 2.5px 0 0; */
    padding: 5.333333333333334vw 0 9.533333333333333vw; /* 1500px基準でpadding: 80px 0 143px; */
	background:
    url('../img/worriesbg01_pc.svg') no-repeat center top / contain,
    #ffffff;
}
.worriesinner01 {
    display: table;
    margin: 0 auto;
}
.worriesinner01:nth-child(1) {
    width: 55.13333333333333vw; /* 1500px基準でwidth: 827px; */
    padding: 0 0 3.5333333333333337vw; /* 1500px基準でpadding: 0 0 53px; */
}
.worriesinner01:nth-child(2) {
    width: 38.666666666666664vw; /* 1500px基準でwidth: 580px; */
    padding: 0 0 1.3333333333333335vw; /* 1500px基準でpadding: 0 0 20px; */
}
.worriesinner01:nth-child(3),
.worriesinner01:nth-child(4),
.worriesinner01:nth-child(5),
.worriesinner01:nth-child(6),
.worriesinner01:nth-child(7) {
    width: 0.8vw; /* 1500px基準でwidth: 12px; */
    height: 0.8vw; /* 1500px基準でhtight: 12px; */
    margin: 0 auto 0.8vw; /* 1500px基準でmargin: 0 auto 12px; */
    background: #106db9;
}
.worriesinner01:nth-child(8) {
    width: 0.8vw; /* 1500px基準でwidth: 12px; */
    height: 0.8vw; /* 1500px基準でhtight: 12px; */
    margin: 0 auto 2.8666666666666667vw; /* 1500px基準でmargin: 0 auto 43px; */
    background: #106db9;
}
.worriesinner01:nth-child(9) {
    width: 37.333333333333336vw; /* 1500px基準でwidth: 560px; */
    padding: 0 0 7.333333333333333vw; /* 1500px基準でpadding: 0 0 110px; */
}
.worriesinner01:nth-child(10) {
    width: 37.8vw; /* 1500px基準でwidth: 567px; */
}
@media screen and (max-width: 767px) {
#worrieswrap01 {
    width: 100%;
    margin: 0.3389830508474576vw 0 0; /* 590px基準でmargin: 2px 0 0; */
    padding: 8.47457627118644vw 0 19.152542372881356vw; /* 590px基準でpadding: 50px 0 113px; */
	background:
    url('../img/worriesbg01_sp.svg') no-repeat center top / contain,
    #ffffff;
}
.worriesinner01 {
    display: table;
    margin: 0 auto;
}
.worriesinner01:nth-child(1) {
    width: 89.83050847457628vw; /* 590px基準でwidth: 530px; */
    padding: 0 0 3.050847457627119vw; /* 590px基準でpadding: 0 0 18px; */
}
.worriesinner01:nth-child(2) {
    width: 69.15254237288136vw; /* 590px基準でwidth: 408px; */
    padding: 0 0 2.5423728813559325vw; /* 590px基準でpadding: 0 0 15px; */
}
.worriesinner01:nth-child(3),
.worriesinner01:nth-child(4),
.worriesinner01:nth-child(5),
.worriesinner01:nth-child(6),
.worriesinner01:nth-child(7) {
    width: 1.4406779661016949vw; /* 590px基準でwidth: 8.5px; */
    height: 1.4406779661016949vw; /* 590px基準でhtight: 8.5px; */
    margin: 0 auto 1.3559322033898304vw; /* 590px基準でmargin: 0 auto 8px; */
    background: #106db9;
}
.worriesinner01:nth-child(8) {
    width: 1.4406779661016949vw; /* 590px基準でwidth: 8.5px; */
    height: 1.4406779661016949vw; /* 590px基準でhtight: 8.5px; */
    margin: 0 auto 5.762711864406779vw; /* 590px基準でmargin: 0 auto 34px; */
    background: #106db9;
}
.worriesinner01:nth-child(9) {
    width: 80.67796610169492vw; /* 590px基準でwidth: 476px; */
    padding: 0 0 15.254237288135593vw; /* 590px基準でpadding: 0 0 90px; */
}
.worriesinner01:nth-child(10) {
    width: 76.94915254237287vw; /* 590px基準でwidth: 454px; */
}
}


/*---------------------------------
  ポイント
---------------------------------*/
#point01,
#point02,
#point03,
#point04,
#point05 {
	padding: 2vw 0 0; /* 1500px基準でpadding: 30px 0 0; */
	margin: -2vw 0 0; /* 1500px基準でmargin: -30px 0 0; */
}
.pointwrap01 {
    width: 100%;
    padding: 0 0 4.533333333333333vw; /* 1500px基準でpadding: 0 0 68px; */
    background: #fdf0d9;
}
.pointtitlewrap01 {
    width: 18.8vw; /* 1500px基準でwidth: 282px; */
    margin: 0 auto;
    padding: 0 0 3.5333333333333337vw; /* 1500px基準でpadding: 0 0 53px; */
    position: relative;
}
.pointtitlewrap01 img {
    top: -50%;
    position: absolute;
}
.pointcatchwrap01 {
    display: table;
    margin: 0 auto;
    padding: 0 0 1.7999999999999998vw; /* 1500px基準でpadding: 0 0 27px; */
}
.pointcatchwrap02 {
    display: table;
    margin: 0 auto;
    padding: 0 0 2.666666666666667vw; /* 1500px基準でpadding: 0 0 40px; */
}
#point01 .pointcatchwrap01 {
    width: 20.866666666666667vw; /* 1500px基準でwidth: 282px; */
}
#point01 .pointcatchwrap02 {
    width: 61.33333333333333vw; /* 1500px基準でwidth: 920px; */
}
#point02 .pointcatchwrap01 {
    width: 17.2vw; /* 1500px基準でwidth: 258px; */
}
#point02 .pointcatchwrap02 {
    width: 39.33333333333333vw; /* 1500px基準でwidth: 590px; */
}
#point03 .pointcatchwrap01 {
    width: 15.2vw; /* 1500px基準でwidth: 228px; */
}
#point03 .pointcatchwrap02 {
    width: 44.666666666666664vw; /* 1500px基準でwidth: 670px; */
}
#point04 .pointcatchwrap01 {
    width: 15.2vw; /* 1500px基準でwidth: 228px; */
}
#point04 .pointcatchwrap02 {
    width: 42.66666666666667vw; /* 1500px基準でwidth: 640px; */
}
.pointimgwrap01 {
    width: 53.13333333333333vw; /* 1500px基準でwidth: 797px; */
    margin: 0 auto;
    padding: 0 0 1.3333333333333335vw; /* 1500px基準でpadding: 0 0 20px; */
}
.pointimgwrap01:last-child {
    padding: 0;
}
#point04 .pointimgwrap01:nth-child(6) {
    width: 49.86666666666667vw; /* 1500px基準でwidth: 748px; */
    padding: 0 0 2.1333333333333333vw; /* 1500px基準でpadding: 0 0 32px; */
}
#point04 .pointimgwrap01:nth-child(7) {
    width: 33.33333333333333vw; /* 1500px基準でwidth: 581px; */
    padding: 0 0 2.1333333333333333vw; /* 1500px基準でpadding: 0 0 32px; */
}
#point04 .pointimgwrap01:last-child {
    width: 50.4vw; /* 1500px基準でwidth: 581px; */
    padding: 0;
}
.btnwrap01 {
    width: 36.733333333333334vw; /* 1500px基準でwidth: 551px; */
    margin: 0 auto;
    padding: 2.666666666666667vw 0 7.666666666666666vw; /* 1500px基準でpadding: 40px 0 115px; */
}
.btnwrap01 a {
    display: block;
    width: 100%;
}
/* 2カラム時 .btnwrap01 {
    width: 45.13333333333333vw; 1500px基準でwidth: 677px;
    margin: 0 auto;
    padding: 2.666666666666667vw 0 7.666666666666666vw; /* 1500px基準でpadding: 40px 0 115px;
}
.btnwrap01 a {
    display: inline-block;
    width: 22.466666666666665vw; /* 1500px基準でwidth: 337px;
}
.btnwrap01 a:nth-child(2) {
    width: 22.666666666666664vw; /* 1500px基準でwidth: 340px;
} */

#simulationwrap01 {
    width: 52vw; /* 1500px基準でwidth: 780px; */
    margin: 0 auto;
    padding: 5vw 0 0; /* 1500px基準でpadding: 75px 0 0; */
}
.simulationcatch01 {
    margin: 0 auto;
}
.simulationcatch01:nth-child(1) {
    width: 35.06666666666667vw; /* 1500px基準でwidth: 526px; */
    padding: 0 0 3.4666666666666663vw; /* 1500px基準でpadding: 0 0 52px; */
}
.simulationcatch01:nth-child(2) {
    width: 33.33333333333333vw; /* 1500px基準でwidth: 500px; */
    padding: 0 0 2.2666666666666666vw; /* 1500px基準でpadding: 0 0 34px; */
}
.simulationcatch01:nth-child(3) {
    width: 26.666666666666668vw; /* 1500px基準でwidth: 400px; */
    padding: 0 0 2.2666666666666666vw; /* 1500px基準でpadding: 0 0 34px; */
}
#simulationdetailwrap01 {
    width: 100%;
}
#simulationtabwrap01 {
    width: 50.66666666666667vw; /* 1500px基準でwidth: 760px; */
    margin: 0 auto 2px;
    display: flex;
    gap: 0 2px;
}
.simulationtabinner01 {
    width: calc(100% / 5);
    opacity: 1;
	transition: all 0.8s ease;
}
.simulationtabinner01:hover {
    cursor: pointer;
    opacity: 0.6;
	transition: all 0.8s ease;
}
#simulationcontentswrap01 {
    width: 100%;
}
.simulationcontentsinner01 {
    display: none;
}
.simulationcontentsinner01.show {
    display: block;
    animation-name:showblurAnime;
    animation-duration:1.5s;
    animation-fill-mode:forwards;
}

@keyframes showblurAnime{
  from {
  filter: blur(5px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}
@media screen and (max-width: 767px) {
#point01,
#point02,
#point03,
#point04,
#point05 {
	padding: 9.152542372881356vw 0 0; /* 590px基準でpadding: 54px 0 0; */
	margin: -9.152542372881356vw 0 0; /* 590px基準でmargin: -54px 0 0; */
}
.pointwrap01 {
    width: 100%;
    padding: 0 0 9.491525423728813vw; /* 590px基準でpadding: 0 0 56px; */
    background: #fdf0d9;
}
.pointtitlewrap01 {
    width: 44.40677966101695vw; /* 590px基準でwidth: 262px; */
    margin: 0 auto;
    padding: 0 0 7.627118644067797vw; /* 590px基準でpadding: 0 0 45px; */
    position: relative;
}
.pointtitlewrap01 img {
    top: -50%;
    position: absolute;
}
.pointcatchwrap01 {
    display: table;
    margin: 0 auto;
    padding: 0 0 3.2203389830508473vw; /* 590px基準でpadding: 0 0 19px; */
}
.pointcatchwrap02 {
    display: table;
    margin: 0 auto;
    padding: 0 0 8.983050847457626vw; /* 590px基準でpadding: 0 0 53px; */
}
#point01 .pointcatchwrap01 {
    width: 53.050847457627114vw; /* 590px基準でwidth: 313px; */
}
#point01 .pointcatchwrap02 {
    width: 91.35593220338983vw; /* 590px基準でwidth: 539px; */
}
#point02 .pointcatchwrap01 {
    width: 43.728813559322035vw; /* 590px基準でwidth: 258px; */
}
#point02 .pointcatchwrap02 {
    width: 61.016949152542374vw; /* 590px基準でwidth: 360px; */
}
#point03 .pointcatchwrap01 {
    width: 38.64406779661017vw; /* 590px基準でwidth: 228px; */
}
#point03 .pointcatchwrap02 {
    width: 69.49152542372882vw; /* 590px基準でwidth: 410px; */
}
#point04 .pointcatchwrap01 {
    width: 38.64406779661017vw; /* 590px基準でwidth: 228px; */
}
#point04 .pointcatchwrap02 {
    width: 69.49152542372882vw; /* 590px基準でwidth: 410px; */
}
.pointimgwrap01 {
    width: 90.5084745762712vw; /* 590px基準でwidth: 534px; */
    margin: 0 auto;
    padding: 0 0 4.745762711864407vw; /* 590px基準でpadding: 0 0 28px; */
}
.pointimgwrap01:last-child {
    padding: 0;
}
#point04 .pointimgwrap01:nth-child(6) {
    width: 85.42372881355932vw; /* 590px基準でwidth: 504px; */
    padding: 0 0 4.915254237288136vw; /* 590px基準でpadding: 0 0 29px; */
}
#point04 .pointimgwrap01:nth-child(7) {
    width: 84.7457627118644vw; /* 590px基準でwidth: 500px; */
    padding: 0 0 6.271186440677965vw; /* 590px基準でpadding: 0 0 37px; */
}
#point04 .pointimgwrap01:last-child {
    width: 80.84745762711864vw; /* 1500px基準でwidth: 477px; */
    padding: 0;
}
.btnwrap01 {
    width: 66.13333333333333vw; /* 590px基準でwidth: 496px; */
    margin: 0 auto;
    padding: 6.271186440677965vw 0 17.457627118644066vw; /* 590px基準でpadding: 37px 0 103px; */
}
.btnwrap01 a {
    display: block;
    width: 100%;
}
/* 2カラム時 .btnwrap01 {
    width: 100%;
    margin: 0 auto;
    padding: 6.271186440677965vw 0 17.457627118644066vw; 590px基準でpadding: 37px 0 103px;
}
.btnwrap01 a {
    display: inline-block;
    width: 49.66101694915254vw; /* 590px基準でwidth: 293px;
}
.btnwrap01 a:nth-child(2) {
    width: 50.33898305084745vw; /* 590px基準でwidth: 297px;
} */

#simulationwrap01 {
    width: 91.52542372881356vw; /* 590px基準でwidth: 540px; */
    margin: 0 auto;
    padding: 11.864406779661017vw 0 0; /* 590px基準でpadding: 70px 0 0; */
}
.simulationcatch01 {
    margin: 0 auto;
}
.simulationcatch01:nth-child(1) {
    width: 89.32203389830508vw; /* 590px基準でwidth: 527px; */
    padding: 0 0 9.830508474576272vw; /* 590px基準でpadding: 0 0 58px; */
}
.simulationcatch01:nth-child(2) {
    width: 84.7457627118644vw; /* 590px基準でwidth: 500px; */
    padding: 0 0 5.762711864406779vw; /* 590px基準でpadding: 0 0 34px; */
}
.simulationcatch01:nth-child(3) {
    width: 67.79661016949152vw; /* 590px基準でwidth: 400px; */
    padding: 0 0 3.898305084745763vw; /* 590px基準でpadding: 0 0 23px; */
}
#simulationdetailwrap01 {
    width: 100%;
}
#simulationtabwrap01 {
    width: 84.7457627118644vw; /* 590px基準でwidth: 500px; */
    margin: 0 auto 2px;
    display: flex;
    flex-wrap: wrap-reverse;
    justify-content: center;
    align-items: center;
    gap: 2px;
}
.simulationtabinner01 {
    width: calc(100% / 3 - 2px);
    opacity: 1;
	transition: all 0.8s ease;
}
.simulationtabinner01:nth-child(1) {
    order: 4;
}
.simulationtabinner01:nth-child(2) {
    order: 5;
}
.simulationtabinner01:nth-child(3) {
    order: 1;
}
.simulationtabinner01:nth-child(4) {
    order: 2;
}
.simulationtabinner01:nth-child(5) {
    order: 3;
}
.simulationtabinner01:hover {
    cursor: pointer;
    opacity: 0.6;
	transition: all 0.8s ease;
}
#simulationcontentswrap01 {
    width: 100%;
}
.simulationcontentsinner01 {
    display: none;
}
.simulationcontentsinner01.show {
    display: block;
    animation-name:showblurAnime;
    animation-duration:1.5s;
    animation-fill-mode:forwards;
}
}


/*---------------------------------
  資料請求
---------------------------------*/
#request-for-informationwrap01 {
    width: 40vw; /* 1500px基準でwidth: 600px; */
    margin: 0 auto;
    padding: 7.066666666666667vw 0 0; /* 1500px基準でpadding: 106px 0 0; */
}
@media screen and (max-width: 767px) {
#request-for-informationwrap01 {
    width: 79.3220338983051vw; /* 590px基準でwidth: 468px; */
    margin: 0 auto;
    padding: 13.559322033898304vw 0 0; /* 590px基準でpadding: 80px 0 0; */
}
}


/*---------------------------------
  アコーディオン
---------------------------------*/
.faqwrap01 {
	display: block;
    width: 50.4vw; /* 1500px基準でwidth: 756px; */
    margin: 0 auto;
}
.faqwrap01 p {
    line-height: 160%;
}
.faqtitlewrap01 {
	font-size: 3vw; /* 1500px基準でfont-size: 36px; */
    color: #333333;
    text-align: center;
    padding: 0 0 2.3333333333333335vw; /* 1500px基準でpadding: 0 0 35px; */
}
.aboutwrap01 {
	display: block;
    width: 50.4vw; /* 1500px基準でwidth: 756px; */
    margin: 0 auto;
}
.abouttitlewrap01 {
	font-size: 2.1333333333333333vw; /* 1500px基準でfont-size: 32px; */
    font-weight: 600;
    color: #106db9;
    padding: 0 0 2vw; /* 1500px基準でpadding: 0 0 30px; */
}
.accordion {
    display: block;
}
.accordion a:link {
    color: #000000;
    text-decoration: none;
}
.accordion a:visited {
    color: #000000;
}
.accordion__title {
    width: 100%;
    display: table;
    font-size: 1.2666666666666666vw; /* 1500px基準でfont-size: 19px; */
    font-weight: 500;
    padding: 2vw 0.6666666666666667vw; /* 1500px基準でpadding: 30px 10px; */
    border-bottom: 1px solid #646464;
    cursor: pointer;
    position: relative;
}
a.accordion__title:link {
    color: #106db9;
    opacity: 1 !important;
}
a.accordion__title:hover {
    color: #106db9;
    opacity: 1 !important;
}
a.accordion__title:hover img {
    opacity: 1 !important;
}
.accordion__title::before {
    content: '';
    display: inline-block;
    width: 1.6666666666666667vw; /* 1500px基準でwidth: 25px; */
    height: 0.2vw; /* 1500px基準でheight: 3px; */
    background-color: #106db9;
    position: absolute;
    right: 1.3333333333333335vw; /* 1500px基準でright: 20px; */
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 1s;
}
.accordion__title::after {
    content: '';
    display: inline-block;
    width: 1.6666666666666667vw; /* 1500px基準でwidth: 25px; */
    height: 0.2vw; /* 1500px基準でheight: 3px; */
    background-color: #106db9;
    position: absolute;
    right: 1.3333333333333335vw; /* 1500px基準でright: 20px; */
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    transition: transform 1s;
}
.accordion__title.show::before {
    opacity: 0;
}
.accordion__title.show::after {
    transform: translateY(-50%) rotate(180deg);
}
.accordion__title p {
    display: table-cell;
    vertical-align: middle;
}
.accordion__title.about01 p {
    width: 100%;
    display: block;
    vertical-align: middle;
    font-size: 1.7333333333333332vw; /* 1500px基準でfont-size: 26px; */
    font-weight: 600;
    color: #106db9;
}
.accordion__title p:nth-child(1) {
    width: 2.933333333333333vw; /* 1500px基準でwidth: 44px; */
}
.accordion__title.about01 p:nth-child(1) {
    width: 100%;
}
.accordion__title p:nth-child(2) {
    padding: 0 0 0 1.6666666666666667vw; /* 1500px基準でpadding: 0 0 0 25px; */
}
.accordion__title p img {
    display: block;
}
.accordion__content {
    display: none;
    font-size: 1.2666666666666666vw; /* 1500px基準でfont-size: 19px; */
    font-weight: 400;
    padding: 2vw 0.6666666666666667vw; /* 1500px基準でpadding: 30px 10px; */
    background: #ffffff;
    color: #333333;
}
.accordion__contentattention {
    display: block;
    font-size: 1vw; /* 1500px基準でfont-size: 15px; */
    line-height: 160%;
}
.accordion__contentdetail {
    width: 100%;
    display: table;
}
.accordion__contentdetail p {
    display: table-cell;
    vertical-align: top;
    font-size: 1.2666666666666666vw; /* 1500px基準でfont-size: 19px; */
}
.accordion__contentdetail p:nth-child(1) {
    width: 2.933333333333333vw; /* 1500px基準でwidth: 44px; */
}
.accordion__contentdetail p:nth-child(2) {
    padding: 0 1.6666666666666667vw; /* 1500px基準でpadding: 0 25px; */
    letter-spacing: -0.01em;
}
.accordion__contentdetail a:link {
    color: #ff6c00;
    text-decoration: underline;
}
.accordion__contentdetail a:visited {
    color: #ff6c00;
    text-decoration: underline;
}
.nowrap01 .accordion__contentdetail a:link {
    color: #32b4e1;
    text-decoration: underline;
}
.nowrap01 .accordion__contentdetail a:visited {
    color: #32b4e1;
    text-decoration: underline;
}

ul.aboutdetail01 {
    display: block;
    line-height: 160%;
}
ul.aboutdetail01 li {
    display: block;
    padding: 0 0 0.5em;
}
ul.aboutdetail01 li.aboutattention01 {
    display: block;
    padding: 0;
    font-size: 1vw; /* 1500px基準でfont-size: 15px; */
}

#faqattentinonwrap01 {
    width: 100%;
    padding: 6.2vw 0; /* 1500px基準でpadding: 93px 0; */
    font-size: 0.9333333333333335vw; /* 1500px基準でfont-size: 14px; */
    color: #333333;
    line-height: 220%;
    letter-spacing: 0.1em;
    background: #f6f6f6;
}
#faqattentinonwrap02 {
    width: 60.8vw; /* 1500px基準でwidth: 912px; */
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
.faqwrap01 {
	display: block;
    width: 93.22033898305084vw; /* 590px基準でwidth: 550px; */
    margin: 0 auto;
}
.faqwrap01 p {
    line-height: 160%;
}
.faqtitlewrap01 {
	font-size: 6.101694915254238vw; /* 590px基準でfont-size: 36px; */
    color: #333333;
    text-align: center;
    padding: 0 0 5.932203389830509vw; /* 590px基準でpadding: 0 0 35px; */
}
.aboutwrap01 {
	display: block;
    width: 93.22033898305084vw; /* 590px基準でwidth: 550px; */
    margin: 0 auto;
}
.abouttitlewrap01 {
	font-size: 5.932203389830509vw; /* 590px基準でfont-size: 35px; */
    font-weight: 600;
    color: #106db9;
    padding: 0 0 8.47457627118644vw; /* 590px基準でpadding: 0 0 50px; */
}
.accordion {
    display: block;
}
.accordion a:link {
    color: #000000;
}
.accordion a:visited {
    color: #000000;
}
.accordion a:hover {
    color: #000000;
}
.accordion__title {
    width: 100%;
    display: table;
    font-size: 3.2203389830508473vw; /* 590px基準でfont-size: 19px; */
    padding: 3.050847457627119vw 1.1864406779661016vw; /* 590px基準でpadding: 18px 7px; */
    border-bottom: 1px solid #646464;
    cursor: pointer;
    position: relative;
}
a.accordion__title:link {
    color: #106db9;
    opacity: 1 !important;
}
a.accordion__title:hover {
    color: #106db9;
    opacity: 1 !important;
}
a.accordion__title:hover img {
    opacity: 1 !important;
}
.accordion__title::before {
    content: '';
    display: inline-block;
    width: 4.23728813559322vw; /* 590px基準でwidth: 25px; */
    height: 0.5084745762711864vw; /* 590px基準でheight: 3px; */
    background-color: #106db9;
    position: absolute;
    right: 3.38983050847457vw; /* 590px基準でright: 20px; */
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 1s;
}
.accordion__title::after {
    content: '';
    display: inline-block;
    width: 4.23728813559322vw; /* 590px基準でwidth: 25px; */
    height: 0.5084745762711864vw; /* 590px基準でheight: 3px; */
    background-color: #106db9;
    position: absolute;
    right: 3.38983050847457vw; /* 590px基準でright: 20px; */
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    transition: transform 1s;
}
.accordion__title.show::before {
    opacity: 0;
}
.accordion__title.show::after {
    transform: translateY(-50%) rotate(180deg);
}
.accordion__title p {
    display: table-cell;
    vertical-align: middle;
    line-height: 140%;
}
.accordion__title.about01 p {
    width: 100%;
    display: block;
    vertical-align: middle;
    font-size: 4.406779661016949vw; /* 590px基準でfont-size: 26px; */
    font-weight: 600;
    color: #106db9;
}
.accordion__title p:nth-child(1) {
    width: 7.966101694915253vw; /* 590px基準でwidth: 47px; */
}
.accordion__title.about01 p:nth-child(1) {
    width: 100%;
}
.accordion__title p:nth-child(2) {
    padding: 0 0 0 2.711864406779661vw; /* 590px基準でpadding: 0 0 0 16px; */
}
.accordion__title p img {
    display: block;
}
.accordion__content {
    display: none;
    padding: 3.050847457627119vw 1.1864406779661016vw; /* 590px基準でpadding: 18px 7px; */
    font-weight: 400;
    background: #ffffff;
}
.accordion__contentattention {
    display: block;
    font-size: 2.5423728813559325vw; /* 750px基準でfont-size: 15px; */
    line-height: 120%;
}
.accordion__contentdetail {
    width: 100%;
    display: table;
    font-size: 3.2203389830508473vw; /* 590px基準でfont-size: 19px; */
    line-height: 140%;
}
.accordion__contentdetail p {
    display: table-cell;
    vertical-align: top;
    font-size: 3.2203389830508473vw; /* 590px基準でfont-size: 19px; */
    line-height: 140%;
}
.accordion__contentdetail p:nth-child(1) {
    width: 7.966101694915253vw; /* 590px基準でwidth: 47px; */
}
.accordion__contentdetail p:nth-child(2) {
    padding: 0 2.711864406779661vw; /* 590px基準でpadding: 0 16px; */
    letter-spacing: -0.01em;
}
.accordion__contentdetail a:link {
    color: #ff6c00;
    text-decoration: underline;
}
.accordion__contentdetail a:visited {
    color: #ff6c00;
    text-decoration: underline;
}
.nowrap01 .accordion__contentdetail a:link {
    color: #32b4e1;
    text-decoration: underline;
}
.nowrap01 .accordion__contentdetail a:visited {
    color: #32b4e1;
    text-decoration: underline;
}

ul.aboutdetail01 {
    display: block;
    line-height: 160%;
}
ul.aboutdetail01 li {
    display: block;
    padding: 0 0 0.5em;
}
ul.aboutdetail01 li.aboutattention01 {
    display: block;
    padding: 0;
    font-size: 2.5423728813559325vw; /* 590px基準でfont-size: 15px; */
}

#faqattentinonwrap01 {
    width: 100%;
    padding: 18.983050847457626vw 0; /* 590px基準でpadding: 112px 0; */
    font-size: 2.711864406779661vw; /* 590px基準でfont-size: 16px; */
    color: #333333;
    line-height: 180%;
    letter-spacing: 0.1em;
    background: #f6f6f6;
}
#faqattentinonwrap02 {
    width: 63.72881355932203vw; /* 590px基準でwidth: 376px; */
    margin: 0 auto;
}
}


/*---------------------------------
  フッター
---------------------------------*/
#footerwrap01 {
    width: 100%;
    background: #ffffff;
    padding: 4vw 0 0; /* 1500px基準でpadding: 60px 0 0; */
    position: relative;
    z-index: 9999;
}
#footerwrap02 {
    width: 100%;
    position: relative;
}
#footerlogowrap01 {
    width: 16.2vw; /* 1500px基準でwidth: 243px; */
    margin: 0 auto;
    padding: 0 0 4vw; /* 1500px基準でpadding: 0 0 60px; */
}
@media screen and (max-width: 767px) {
#footerwrap01 {
    width: 100%;
    background: #ffffff;
    padding: 11.864406779661017vw 0 0; /* 590px基準でpadding: 70px 0 0; */
    position: relative;
    z-index: 9999;
}
#footerlogowrap01 {
    width: 53.38983050847458vw; /* 590px基準でwidth: 315px; */
    margin: 0 auto;
    padding: 0 0 15.254237288135593vw; /* 590px基準でpadding: 0 0 90px; */
}
}


/*---------------------------------
  ページトップ
---------------------------------*/
#pagetop01 {
    width: 12.8vw; /* 1500px基準でwidth: 192px; */
    position: absolute;
    bottom: 0;
    right: 0;
}
#pagetop01 a:hover {
    opacity: 1;
}
#pagetop01 a:hover img {
    opacity: 1;
}
@media screen and (max-width: 767px) {
#pagetop01 {
    width: 41.35593220338983vw; /* 590px基準でwidth: 244px; */
    position: absolute;
    bottom: 0;
    right: 0;
}
#pagetop01 a:hover {
    opacity: 1;
}
#pagetop01 a:hover img {
    opacity: 1;
}
}


/*---------------------------------
  コピーライト
---------------------------------*/
#copyrightwrap01 {
    font-size: 1.0666666666666667vw; /* 1500px基準でfont-size: 18px; */
    font-weight: 600;
    text-align: center;
    color: #ffffff;
    padding: 1.2vw 0; /* 1500px基準でpadding: 18px 0; */
    background: #333333;
    border-top: 3px solid #d12e2d;
}
@media screen and (max-width: 767px) {
#copyrightwrap01 {
	font-size: 2.3728813559322033vw; /* 590px基準でfont-size: 14px; */
    font-weight: 600;
    text-align: center;
    color: #ffffff;
    padding: 4.23728813559322vw 0; /* 1500px基準でpadding: 25px 0; */
    background: #333333;
    border-top: 3px solid #d12e2d;
}
}


/*---------------------------------
  モーダルウィンドウ
---------------------------------*/
.js-modal-btn {
    cursor: pointer;
}