@charset "UTF-8";
/*
Theme Name: ここに会社名
*/

/*-----------------------------------------
default
-----------------------------------------*/
* {
	margin: 0;
	padding: 0;
}

@font-face {
	font-family: "Yu Gothic M";
	src: local("Yu Gothic Medium");
}

@font-face {
	font-family: "Yu Gothic M";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

html {
	/*-----------------------------------------
	ゴシック主体の場合
	-----------------------------------------*/
	font-family: "Noto Sans JP", sans-serif, -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	/*-----------------------------------------
	明朝体主体の場合
	-----------------------------------------*/
	/*
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	*/
	color: #222;
	letter-spacing: 1px;
	font-size: 14px;
	scroll-behavior: smooth;
	scroll-padding-top: 97px;
}

a {
	transition: 0.1s linear all;
	color: #222;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

li {
	list-style-type: none;
}

p,
th,
td,
li,
dt,
dd {
	line-height: 1.8em;
}

img {
	border: none !important;
}

/*-----------------------------------------
wrapper
-----------------------------------------*/
.wrapper {
	width: 100%;
	height: auto;
}

/*-----------------------------------------
header
-----------------------------------------*/

/*-----------------------------------------
gnav
-----------------------------------------*/

/*-----------------------------------------
footer
-----------------------------------------*/
.pagetop {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 999;
}

/*-----------------------------------------
common
-----------------------------------------*/
.section_inner,
.footer_inner,
.header_inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
}
.more_inner {
	max-width: 1000px;
	margin: 0 auto;
}
.effect-fade{
	opacity:0;
	transform:translate(0,60px);
	transition:all 1000ms;
}
.effect-fade.effect-scroll {
	opacity:1;
	transform:translate(0, 0);
}
.lefteffect{
	transform:translateX(-15%);
	opacity:0;
	transition:opacity 1000ms,transform 1000ms;
}
.righteffect{
	transform:translateX(15%);
	opacity:0;
	transition:opacity 1000ms,transform 1000ms;
}
.fadein{
	opacity:1;
	transform:translateX(0);
}
.copyright {
	text-align: center;
}
.zenmaru {
	font-family: 'Zen Maru Gothic', serif;
}
.yumin {
	font-family: '游明朝', serif;
}
.Montserrat {
	font-family: "Montserrat", sans-serif;
}
.normal {
	font-weight: normal;
}
.medium {
	font-weight: 600;
}
.bold {
	font-weight: bold;
}
.center {
	text-align: center;
}
.white {
	color: white;
}
.black {
	color: black;
}
.yellow {
	color: #ffff00;
}
.purple {
	color: #0f066c;
}
.lightpurple {
	color: #483d8b;
}
.red {
	color: #c81731;
}
.pink {
	color: #d57f80;
}
.navy {
	color: #0a3553;
}
.blue {
	color: #064a95;
}
.bg_red {
	background: #c81731;
}
.bg_pink {
	background: #d57f80;
}
.bg_lightgray {
	background: #f3f2f7;
}
.bg_lightpurple {
	background: #d5d7ff;
}
.bg_purple {
	background: #483d8b;
}
.bg_deeppurple {
	background: #0f066c;
}
.bg_blue {
	background: #005bea;
}
.bg_deepblue {
	background: #004d99;
}
.bg_lightskyblue {
	background: #eef2fb;
}
.bg_orange {
	background: #f39800;
}
.bg_yellow {
	background: #fff352;
}
.bg_white {
	background: white;
}
h2 {
	background: #0f066c;
	padding: 40px 0 30px;
	box-sizing: border-box;
	position: relative;
	color: white;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 100px;
	font-size: 30px;
}
h2:before {
	position: absolute;
	content: "";
	border-style: solid;
	border-color: #0f066c transparent;
	border-width: 30px 20px 0;
	bottom: -30px;
	left: 50%;
	margin-left: -20px;
}
h2 span.size38 {
	color: #ffff00;
}
.h3 {
	text-align: center;
}
h3 {
	font-size: 30px;
	font-weight: bold;
	color: #0f066c;
	border-bottom: 2px solid #0f066c;
	padding: 100px 20px 5px;
	box-sizing: border-box;
	margin-bottom: 65px;
	text-align: center;
	display: inline-block;
}
h4 {
	font-size: 30px;
	padding-top: 100px;
	margin-bottom: 50px;
	font-weight: bold;
	color: #0f066c;
	text-align: center;
}
.block {
	display: block;
}
/* 文字サイズ */
.size10{ font-size:10px; }
.size11{ font-size:11px; }
.size12{ font-size:12px; }
.size13{ font-size:13px; }
.size14{ font-size:14px; }
.size16{ font-size:16px; }
.size17{ font-size:17px; }
.size18{ font-size:18px; }
.size20{ font-size:20px; }
.size21{ font-size:21px; }
.size22{ font-size:22px; }
.size24{ font-size:24px; }
.size25{ font-size:25px; }
.size26{ font-size:26px; }
.size27{ font-size:27px; }
.size28{ font-size:28px; }
.size30{ font-size:30px; }
.size31{ font-size:31px; }
.size32{ font-size:32px; }
.size35{ font-size:35px; }
.size36{ font-size:36px; }
.size37{ font-size:37px; }
.size38{ font-size:38px; }
.size42{ font-size:42px; }
.size45{ font-size:45px; }
.size46{ font-size:46px; }
.size47{ font-size:47px; }
.size48{ font-size:48px; }
.size50{ font-size:50px; }
.size55{ font-size:55px; }
.size60{ font-size:60px; }

.page main {
	margin-top: 133px;
}

/*-----------------------------------------
top
-----------------------------------------*/
header {
	padding: 0 0 10px;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	background: rgba(213, 215, 255, 0.9);
	width: 100%;
	z-index: 999;
}
header > a.contact {
	position: absolute;
	top: 0;
	right: 0;
	padding: 20px 30px 15px 20px;
	box-sizing: border-box;
	display: block;
	border-radius: 0 0 0 15px;
}
header > a.contact:hover {
	text-decoration: none;
	opacity: 0.6;
}
header .header_inner .header_left {
	float: left;
	width: 325px;
	margin-right: 60px;
	padding-top: 15px;
}
header .header_inner .header_left img {
	width: 100%;
}
header .header_inner .header_right {
	float: left;
	width: calc(100% - 385px);
}
header .header_inner .header_right ul {
	overflow: hidden;
	padding-bottom: 5px;
}
header .header_inner .header_right ul.top {
	float: right;
	margin-right: 125px;
}
header .header_inner .header_right ul.bottom {
	clear: both;
}
header .header_inner .header_right ul li {
	float: left;
	margin-right: 15px;
	padding-top: 15px;
}
header .header_inner .header_right ul.bottom {
	display: flex;
	justify-content: space-between;
}
header .header_inner .header_right ul:last-child li {
	padding-top: 10px;
}
header .header_inner .header_right ul:last-child li:last-child {
	margin-right: 0;
}
header .header_inner .header_right ul li .bg_deeppurple {
	padding: 5px 15px;
	margin-right: 10px;
	box-sizing: border-box;
	border-radius: 10px;
}
header .header_inner .header_right ul li a {
	letter-spacing: 0.3px;
}
.mainimg {
	margin-top: 96px;
	position: relative;
	width: 100%;
	height: 710px;
	background: url(../images/bg_mainbottom.png) no-repeat, url(../images/bg_mainimg.png) no-repeat;
	background-position: center bottom, center 0;
}
.mainimg .inner {
	/* background: url(../images/pack.png) no-repeat;
	background-position: 95% 20%; */
	width: 1200px;
	margin: 0 auto;
	position: relative;
	height: 700px;
}
.mainimg .inner img.letter_pack {
	top: 2.5%;
	right: 4%;
	position: absolute;
	z-index: 1;
}
.mainimg .text_block {
	width: 700px;
	position: absolute;
	top: 15%;
	left: 5%;
}
.mainimg .text_block p.direct {
	background: url(../images/sub_bg.png) no-repeat;
	background-position: center;
	padding: 10px 0;
	box-sizing: border-box;
	padding-right: 30px;
	letter-spacing: 0.1px;
}
.mainimg .text_block img {
	margin: 0px 0 75px;
}
.mainimg .text_block .bgWhite {
	display: flex;
	padding: 17.5px 0 17.5px 50px;
	box-sizing: border-box;
	width: 100%;
	background: white;
	align-items: center;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}
.mainimg .text_block p.purple,
.mainimg .text_block p.yellow {
	box-sizing: border-box;
	display: inline-block;
}
.mainimg .text_block p.purple {
	line-height: 1.2;
	padding-right: 10px;
	border-bottom: 7px solid;
	border-image: linear-gradient(to right, #F7CD00 0, #FCF9CE 100%) 1;
}
.mainimg .text_block p.purple.size42 {
	line-height: 1;
	border-image: linear-gradient(to left, #F7CD00 0, #FCF9CE 100%) 1;
}
.mainimg .point {
	position: absolute;
	right: 0;
	bottom: 5%;
	left: 0;
	margin: 0 auto;
	z-index: 2;
}
.mainimg .point ul {
	overflow: hidden;
	width: 930px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
}
.mainimg .point ul li {
	width: 215px;
	height: 215px;
	box-sizing: border-box;
	background: url(../images/bg_circle01.svg) no-repeat;
	background-position: center center;
	border-radius: 50%;
	line-height: 1.2;
	padding-top: 50px;
	letter-spacing: 0.001em;
	/* position: relative; */
}
.mainimg .point ul li:nth-child(2n) {
	background: url(../images/bg_circle02.svg) no-repeat;
	background-position: center center;
}
/* .mainimg .point ul li:before {
	content: url(../images/check.png);
	top: -5px;
	left: 0;
	right: 0;
	position: absolute;
} */
.mainimg .point ul li:nth-child(4) span.bg_red {
	display: inline-block;
	padding: 0 10px 2px;
}
.mainimg .point ul li:nth-child(4) span.size50 {
	letter-spacing: -5px;
	line-height: 1.2;
	margin-bottom: -5px;
	display: inline-block;
}
.mainimg .point ul li span.size30 {
	line-height: 1;
}
.mainimg .point ul li span.size35 {
	line-height: 1.2;
}
section p.band {
	padding: 30px 0;
	box-sizing: border-box;
}
section .worry .worry_block,
section .manager .manager_block {
	background: url(../images/bg_worry.png) no-repeat;
	background-position: center top;
	background-size: cover;
	margin: 0 auto;
	padding: 70px 2%;
}
section .manager .manager_block {
	background: url(../images/bg_manager.png) no-repeat;
	background-position: center top;
	background-size: cover;
	margin: 0 auto;
	padding: 70px 2%;
}
section .worry .worry_block .more_list,
section .manager .manager_block .more_list {
	width: 650px;
	margin-left: auto;
}
section .manager .manager_block .more_list {
	margin-right: auto;
	margin-left: 0;
}
section .worry .worry_block .more_list li,
section .manager .manager_block .more_list li {
	padding: 10px 0;
	box-sizing: border-box;
	margin-bottom: 30px;
	position: relative;
	border-radius: 8px;
	box-shadow: 0px 0.125em 0.25em 0px rgba(0, 0, 0, 0.25);
}
section .worry .worry_block .more_list li:last-child,
section .manager .manager_block .more_list li:last-child {
	margin-bottom: 0;
}
section .worry .worry_block .more_list li:before,
section .manager .manager_block .more_list li:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	border-style: solid;
	border-width: 20px 20px 0 0;
	border-color: transparent #fff transparent transparent;
	translate: -100% -50%;
	transform: skew(0, 25deg);
	transform-origin: right;
	box-shadow: 0px 0.25em 0 0px rgba(0, 0, 0, 0.1);
}
section .manager .manager_block .more_list li:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	border-style: solid;
	border-width: 20px 0 0 20px;
	border-color: transparent transparent transparent #fff;
	translate: 0 -50%;
	transform: skew(0, -25deg);
	transform-origin: left;
	box-shadow: 0px 0.25em 0 0px rgba(0, 0, 0, 0.1);
}
/* section .worry .worry_block ul.more_inner {
	padding: 60px 0;
	width: 500px;
}
section .worry .worry_block ul.more_inner li {
	width: 100%;
	padding: 20px 0;
	box-sizing: border-box;
	border: 1px solid #dddefd;
	margin-bottom: 20px;
}
section .worry .worry_block ul.more_inner li:last-child {
	margin-bottom: 0;
} */
section .money {
	padding: 55px 0 80px;
	clip-path: polygon(100% 0, 100% 75%, 50% 100%, 0 75%, 0 0);
	position: relative;
	z-index: 2;
}
section .money .money_ex {
	margin: 0 auto;
	width: 830px;
	text-align: center;
}
section .money .money_ex ul {
	margin: 30px auto 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
section .money .money_ex ul li {
	box-sizing: border-box;
	border: 1px solid #565656;
	padding: 10px 0 10px 55px;
	width: calc(50% - 20px);
	background: #d5d7ff url(../images/check_red.png) no-repeat;
	background-position: 20px 7.5px;
}
section .money .money_ex ul li:first-child {
	margin-right: 40px;
	padding: 10px 0 10px 40px;
}
section .money .money_ex p.red {
	background: linear-gradient(transparent 50%, #ffff00 50%);
	display: inline;
}
section .resolve {
	padding: 200px 0 100px;
	position: relative;
	z-index: 1;
	margin-top: -110px;
}
section .resolve > p.size38 span.bg_white {
	border: 3px solid #c81731;
	box-sizing: border-box;
	border-radius: 5px;
	padding: 0 2.5px;
	line-height: 1.1;
	height: 50px;
	display: inline-block;
}
section .resolve > p.size38 span.bg_white.first {
	margin-right: 5px;
}
section .resolve ul {
	overflow: hidden;
	width: calc(1200px - 2%);
	margin: 10px auto;
	margin-top: 40px;
	padding: 5px;
	box-sizing: border-box;
}
section .resolve ul li {
	float: left;
	width: calc((100% - 90px) / 4);
	margin-right: 30px;
	border-radius: 5px;
	padding: 40px 0;
	box-sizing: border-box;
	box-shadow: 0px 0px 10px -5px #777777;
}
section .resolve ul li:last-child {
	margin-right: 0;
}
section:nth-child(2) {
	background: #f3f2f7;
	background-repeat: repeat;
}
section.bg_lightpurple .section_inner > p.size24 {
	margin-bottom: 100px;
}
section.bg_lightpurple .section_inner > p.size24 span.size30 {
	display: inline-block;
	margin-top: 20px;
	padding: 0 15px;
	box-sizing: border-box;
}
section .case {
	width: 98%;
	margin: 0 auto;
}
section .case .case_block {
	border-radius: 40px;
	background: white;
	box-shadow: 0px 0px 15px -5px #777777;
	padding: 40px;
	box-sizing: border-box;
	position: relative;
}
section .case .case_block:first-child {
	margin-bottom: 60px;
}
section .case .case_block p.size150 {
	color: #d5d7ff;
	font-size: 150px;
	position: absolute;
	top: -40px;
	opacity: 0.3;
	font-weight: bold;
	right: 6%;
}
section .case .case_block p.ex {
	background: #f3f2f7;
	display: inline-block;
	padding: 5px 10px;
	box-sizing: border-box;
	border-radius: 15px;
	margin-bottom: 40px;
}
section .case .case_block .text_flex,
section .case .case_block .graph_flex {
	display: flex;
	align-items: flex-start;
	margin-bottom: 30px;
}
section .case .case_block .text_flex {
	margin-left: 20px;
	justify-content: start;
}
section .case .case_block .graph_flex {
	justify-content: space-between;
}
section .case .case_block .text_flex .left {
	margin-right: 20px;
}
section .case .case_block .text_flex .left > p.navy {
	border: 1px solid #0f066c;
	width: 100px;
	border-radius: 20px;
}
section .case .case_block .graph_flex .left {
	margin-right: 40px;
	margin-top: 40px;
}
/*
section .case .case_block .graph_flex .left ul,
section .case .case_block .graph_flex .left p.pink {
	margin-left: 20px;
}
*/
section .case .case_block .graph_flex .left .if {
	background: #faf1f2;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 25px;
	margin-top: 15px;
}
section .case .case_block .graph_flex .left .if p.bg_red {
	border-radius: 15px;
	padding: 7px 0 5px;
	box-sizing: border-box;
	margin-bottom: 25px;
	position: relative;
}
section .case .case_block .graph_flex .left .if p.bg_red:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 22.5%;
	border-bottom: 15px solid transparent;
	border-right: 15px solid #c81731;
	z-index: 100;
}
section .case .case_block .graph_flex .left .if p.size24 {
	background:linear-gradient(transparent 60%, #ffff00 60%);
	display: inline;
}
section .case .case_block .graph_flex .right img {
	width: 100%;
}
section .case p.kome {
	margin: 20px 0 40px;
}
section .case img.block.center {
	margin: 40px auto 20px;
}
section .case > p.size30 {
	margin-bottom: 80px;
}
section:nth-child(3) .section_inner > p.size20 {
	margin-bottom: 75px;
}
section .about {
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	margin-bottom: 115px;
	position: relative;
}
section .about .arrow_img {
	position: absolute;
	width: 50px;
	left: 237.5px;
}
section .about .arrow_img.sec {
	left: 655px;
}
section .about .arrow_img img {
	position: absolute;
	top: 110px;
	left: 0;
	right: 0;
}
section .about .arrow_img img:last-child {
	top: 290px;
}
section .about .about_block {
	min-height: 360px;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 5px;
}
section .about .about_block:nth-child(1) {
	padding: 140px 20px 0;
	background: #004d99 url(../images/mail_white.png) no-repeat;
	background-position: center 25%;
}
section .about .about_block:nth-child(3),
section .about .about_block:nth-child(5) {
	padding: 0;
}
section .about .about_block.bg_blue p.bg_white {
	border-radius: 5px;
	margin-top: 10px;
	padding: 5px 0;
}
section .about .about_block:nth-child(3) .block {
	padding: 20px;
	box-sizing: border-box;
	border-radius: 5px;
}
section .about .about_block:nth-child(3) .block:first-child {
	margin-bottom: 30px;
}
section .about .about_block:nth-child(3) .block > p.bg_white {
	padding: 2px 0;
	box-sizing: border-box;
	border-radius: 10px;
	margin-bottom: 20px;
}
section .about .about_block:nth-child(5) .block {
	height: 132px;
	padding: 0 50px;
	border-radius: 5px;
	display: flex;
	align-items: center;
}
section .about .about_block:nth-child(5) .block:first-child {
	height: 197px;
	margin-bottom: 30px;
}
section.bg_blue {
	padding: 80px 0 100px;
	background: #002899;
	background-position: center;
	background-size: cover;
}
section.bg_blue > p.size45 {
	margin-bottom: 30px;
	padding-top: 20px;
}
section.bg_blue p.size45 span.size55 {
	margin-right: 5px;
	padding: 0 5px;
	box-sizing: border-box;
	border-radius: 5px;
}
section.bg_blue p.size45 span.size55:first-child {
	margin-left: 5px;
}
section.bg_blue p.size45 span.size55:last-child {
	position: relative;
}
section.bg_blue p.size45 span.size55:last-child:before {
	content: url(../images/ashirai.png);
	transform: rotate(-5deg);
	position: absolute;
	right: -20px;
	top: -55px;
	width: 30px;
	height: 30px;
}
section.bg_blue > p.size20 {
	margin-bottom: 25px;
}
section.bg_blue .plan > p.size20 span.bg_white {
	padding: 2px 10px;
	box-sizing: border-box;
}
section.bg_blue .inji {
	width: 1200px;
	margin: 0 auto;
	border-radius: 5px;
}
section.bg_blue .inji_on {
	border-radius: 5px;
}
section.bg_blue .inji .plan {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #d5d7ff;
	border-radius: 5px 5px 0 0;
	border-bottom: 2px solid #0f066c;
	padding-left: 370px;
	text-align: center;
}
section.bg_blue .inji > p,
section.bg_blue .inji .plan > p {
	padding: 20px 0 30px;
}
section.bg_blue .inji .plan > p {
	padding: 0;
	margin-top: 30px;
}
section.bg_blue .inji .plan > p.size30 {
	padding: 0;
	box-sizing: border-box;
	margin-right: 20px;
}
section.bg_blue .inji > p span.bg_lightgray {
	padding: 2px 20px;
	box-sizing: border-box;
	border-radius: 15px;
}
section.bg_blue .inji .ex {
	width: 96%;
	margin: 60px auto;
	overflow: hidden;
	background: url(../images/plus.png) no-repeat;
	background-position: 71.75% 40%;
	background-size: 25px;
	padding-bottom: 60px;
}
section.bg_blue .inji .ex .ex_block {
	width: 70%;
	float: left;
	margin-right: 30px;
	overflow: hidden;
	padding: 15px;
	border-radius: 15px;
	box-sizing: border-box;
	background: #f3f2f7;
}
section.bg_blue .inji .ex .ex_block:last-child {
	width: calc(30% - 30px);
	margin-right: 0;
	padding: 65px 15px;
}
section.bg_blue .inji .ex .ex_block .bg_white {
	width: 49%;
	margin-right: 2%;
	float: left;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 15px;
	overflow: hidden;
}
section.bg_blue .inji .ex .ex_block .bg_white:last-child {
	margin-right: 0;
}
section.bg_blue .inji .ex .ex_block .bg_white .left {
	width: 60%;
	float: left;
	margin-right: 10px;
}
section.bg_blue .inji .ex .ex_block .bg_white .left > p.size18 {
	padding-top: 40px;
	line-height: 1.2;
	padding-bottom: 10px;
	box-sizing: border-box;
	padding-left: 5px;
	border-bottom: 2px solid #064a95;
}
section.bg_blue .inji .ex .ex_block .bg_white .left > p.size30 {
	box-sizing: border-box;
	padding-left: 5px;
}
section.bg_blue .inji .ex .ex_block .bg_white .right {
	width: calc(40% - 10px);
	float: left;
}
section.bg_blue .inji .ex .ex_block .bg_white:last-child .left > p.size18 {
	border-bottom: 2px solid #c81731;
}
section.bg_blue .inji .ex .ex_block .bg_white .right img {
	width: 100%;
}
section.bg_blue .inji .ex .ex_block:last-child {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
section.contact {
	padding: 60px 0;
}
section.contact .section_inner > p {
	margin-bottom: 30px;
}
section.contact .contact {
	overflow: hidden;
}
section.contact .contact .left,
section.contact .contact .right {
	float: left;
	width: calc(50% - 20px);
	margin-right: 20px;
	padding: 30px 25px;
	box-sizing: border-box;
	border-radius: 12px;
}
section.contact .contact .left > p.size20 {
	padding-left: 30px;
	box-sizing: border-box;
	margin-bottom: 5px;
}
section.contact .contact .left .wrap_inner {
	overflow: hidden;
	margin-bottom: 15px;
}
section.contact .contact .left .wrap_inner .left_inner {
	margin-left: 30px;
	background: url(../images/tel_white.png) no-repeat;
	background-position: calc(50% - 110px) center;
	background-size: 25px;
}
section.contact .contact .left .wrap_inner p.bg_white {
	border-radius: 12px;
	padding: 5px 0;
	margin-bottom: 10px;
	box-sizing: border-box;
}
section.contact .contact .left .wrap_inner a {
	letter-spacing: 0.1px;
}
section.contact .contact .left p.size17 span.bg_white {
	padding: 2px 15px;
	box-sizing: border-box;
	border-radius: 12px;
	margin-right: 10px;
}
section.contact .contact .left .wrap_inner .right_inner,
section.contact .contact .right {
	margin-right: 0;
}
section.contact .contact .right {
	padding: 0;
}
section.contact .contact .right a {
	display: block;
	background: url(../images/icon_mail.png) no-repeat, url(../images/contact_arrow.png) no-repeat;
	background-position: 20% 37.5%, 92.5% center;
	padding: 53.5px 0;
}
section.contact .contact .right a:hover {
	text-decoration: none;
	background-position: 20% 37.5%, 95% center;
}
section.contact .contact .right a p.size20 {
	padding-left: 30px;
}
section:nth-child(6) {
	background: #f3f2f7 url(../images/bg_border.png);
	background-repeat: repeat;
}
dl {
	margin-bottom: 40px;
	border: 2px solid #d5d7ff;
	box-sizing: border-box;
	border-radius: 12px;
}
dl:last-child {
	margin-bottom: 130px;
}
dt {
	padding: 20px 0;
	border-radius: 12px;
}
dt:hover {
	opacity: 0.6;
}
dt.active:hover {
	opacity: 1
}
dd.a {
	display: none;
}
dd > p.bg_deeppurple {
	padding: 15px 0;
	position: relative;
}
dd > p.bg_deeppurple:before {
	position: absolute;
	content: "";
	border-style: solid;
	border-color: #0f066c transparent;
	border-width: 20px 10px 0;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
}
dd .bg_lightgray {
	border-radius: 0 0 12px 12px;
}
dd .a_flex {
	display: flex;
	justify-content: space-between;
	padding: 50px 0 70px;
	width: 1000px;
	margin: 0 auto;
}
dd .a_flex .left p.size24 {
	margin-left: 20px;
}
dd .a_flex .left .bg_white {
	border-radius: 10px;
	border: 2px solid #d57f80;
	padding: 25px 20px;
	box-sizing: border-box;
	width: 465px;
	margin-top: 25px;
}
dd .a_flex .left .bg_white > p {
	margin-bottom: 10px;
	font-weight: 600;
}
dd .a_flex .left .bg_white ul li {
	padding-left: 1.25em;
	position: relative;
}
dd .a_flex .left .bg_white ul li:before {
	content: "";
	width: 15px;
	height: 15px;
	background: #d57f80;
	position: absolute;
	left: 0;
	top: 7.5px;
	border-radius: 50%;
}
.nav-open {
	position: relative;
}
.nav-open:hover {
	cursor: pointer;
}
.nav-open::before{
	content: "＋";
	position: absolute;
	right: 20px;
	font-size: 20px;
	text-align: center;
	line-height: 32px;
	width: 30px;
	border-radius: 50%;
	background: white;
	top: 22.5px;
	height: 30px;
	padding: 0 0 0px 2px;
	box-sizing: border-box;
}
.nav-open.active::before {
	content: "－";
}
section.bg_lightpurple.slash {
	background: linear-gradient(138.75deg, #eef2fb 0%, #eef2fb 50%, #e2e6f8 50%, #e2e6f8 100%);
}
section.bg_lightpurple > p.size20 {
	margin-bottom: 65px;
}
section.bg_lightpurple .example,
section.bg_lightpurple .customer {
	overflow: hidden;
}
section.bg_lightpurple .example .left,
section.bg_lightpurple .example .right  {
	width: calc(50% - 15px);
	float: left;
	background: white;
	box-sizing: border-box;
	border-radius: 10px;
	margin-bottom: 100px;
	box-shadow: 0px 0px 10px -5px #777777;
}
section.bg_lightpurple .example .left {
	margin-right: 30px;
}
section.bg_lightpurple .example .left p.size30,
section.bg_lightpurple .example .right p.size30 {
	padding: 20px 0 20px 100px;
	box-sizing: border-box;
	border-radius: 10px 10px 0 0;
}
section.bg_lightpurple .example .left p.size30 {
	background: #0f066c url(../images/arrow_right.png) no-repeat;
	background-position: 30px 20px;
	background-size: 50px;
}
section.bg_lightpurple .example .right p.size30 {
	background: #d55f61 url(../images/arrow_left.png) no-repeat;
	background-position: 30px 20px;
	background-size: 50px;
}
section.bg_lightpurple .example .inner_flex {
	padding: 20px 30px 40px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
section.bg_lightpurple .example .left > p.size20,
section.bg_lightpurple .example .right > p.size20 {
	margin: 0 30px 40px;
	position: relative;
	box-sizing: border-box;
}
section.bg_lightpurple .example .left > p.size20:before,
section.bg_lightpurple .example .left > p.size20:after,
section.bg_lightpurple .example .right > p.size20:before,
section.bg_lightpurple .example .right > p.size20:after {
	position: absolute;
	content: url(../images/purple_border.png);
	top: -5px;
}
section.bg_lightpurple .example .left > p.size20:before,
section.bg_lightpurple .example .right > p.size20:before {
	left: 0;
}
section.bg_lightpurple .example .left > p.size20:after,
section.bg_lightpurple .example .right > p.size20:after {
	right: 0;
}
section.bg_lightpurple .example .left ul,
section.bg_lightpurple .example .right ul {
	overflow: hidden;
	padding: 0 30px;
	box-sizing: border-box;
}
section.bg_lightpurple .example .left ul li,
section.bg_lightpurple .example .right ul li {
	float: left;
	width: calc(50% - 10px);
	margin-right: 20px;
	margin-bottom: 50px;
}
section.bg_lightpurple .example .left ul li:nth-child(1) p.size20 {
	background: #f3f2f7 url(../images/icon01.svg) no-repeat;
	background-position: 50px center;
	background-size: 30px;
}
section.bg_lightpurple .example .left ul li:nth-child(2) p.size20{
	background: #f3f2f7 url(../images/icon02.svg) no-repeat;
	background-position: 50px center;
}
section.bg_lightpurple .example .left ul li:nth-child(3) p.size20{
	background: #f3f2f7 url(../images/icon03.svg) no-repeat;
	background-position: 50px center;
	background-size: 30px;
}
section.bg_lightpurple .example .left ul li:nth-child(4) p.size20{
	background: #f3f2f7 url(../images/icon04.svg) no-repeat;
	background-position: 50px center;
	background-size: 30px;
}
section.bg_lightpurple .example .right ul li:nth-child(1) p.size20{
	background: #f3f2f7 url(../images/icon05.svg) no-repeat;
	background-position: 30px center;
	padding-left: 40px;
}
section.bg_lightpurple .example .right ul li:nth-child(2) p.size20{
	background: #f3f2f7 url(../images/icon06.svg) no-repeat;
	background-position: 50px center;
	background-size: 30px;
	padding-left: 0;
}
section.bg_lightpurple .example .right ul li:nth-child(3) p.size20{
	background: #f3f2f7 url(../images/icon07.svg) no-repeat;
	background-position: 50px center;
	background-size: 30px;
	padding-left: 0;
}
section.bg_lightpurple .example .left ul li:nth-child(2n),
section.bg_lightpurple .example .right ul li:nth-child(2n) {
	margin-right: 0;
}
section.bg_lightpurple .example .right ul li:nth-child(3) {
	margin: 0 auto 75px;
}
section.bg_lightpurple .example .left ul li p.size20,
section.bg_lightpurple .example .right ul li p.size20 {
	padding: 2px 0;
	border-radius: 10px;
	border: 2px solid #e3e4fb;
	margin-bottom: 15px;
	padding-left: 20px;
	box-sizing: border-box;
}
section.bg_lightpurple span.mark {
	background: linear-gradient(transparent 50%, #ffff00 50%);
	display: inline;
}
section .voice .voice_block {
	border-radius: 20px;
	padding: 30px 50px;
	box-sizing: border-box;
	border: 5px solid #6a5acd;
	margin-bottom: 50px;
	overflow: hidden;
	box-shadow: 0px 20px 0px 0px #f3f2f7;
}
section .voice .voice_block:last-child {
	margin-bottom: 100px;
}
section .voice .voice_block .left {
	width: 52.5%;
	margin-right: 75px;
	float: left;
	margin-top: 30px;
}
section .voice .voice_block.irregular .left {
	float: right;
	margin-right: 0;
	margin-left: 75px;
}
section .voice .voice_block .left p.bold {
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 1px solid #d5d7ff;
}
section .voice .voice_block .left p.size18 {
	padding-left: 10px;
	box-sizing: border-box;
}
section .voice .voice_block .right {
	width: calc(47.5% - 75px);
	float: left;
}
section .voice .voice_block .right img {
	width: 100%;
}
section ul.tab {
	overflow: hidden;
}
section ul.tab li {
	float: left;
	width: calc(50% - 25px);
	border-radius: 10px 10px 0 0;
	background: #eef2fb;
	padding: 20px 0 15px;
	color: #6a5acd;
}
section ul.tab li span {
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	width: 0.75em;;
	height: 0.75em;;
	border: 0.1em solid currentColor;
	border-left: 0;
	border-bottom: 0;
	margin: 0 0 5px 20px;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(135deg);
}
section ul.tab li:hover {
	cursor: pointer;
}
section ul.tab li:hover,
section ul.tab li.on {
	color: white;
	background: #6a5acd;
}
section ul.tab li:first-child {
	margin: 0 5px 0 20px;
}
section ul.tab li:last-child {
	margin: 0 20px 0 5px;
}
section .flow {
	overflow: hidden;
	padding: 60px 25px;
	box-sizing: border-box;
	margin: 0 auto 100px;
	width: 99%;
	display: none;
	border-radius: 5px;
	box-sizing: border-box;
	box-shadow: 0px 0px 15px -5px #777777;
}
section .flow.on {
	display: block;
}
section .flow .flow_block {
	width: calc((100% - 80px) / 5);
	float: left;
	border-radius: 10px;
	border: 1px solid #483d8b;
	box-sizing: border-box;
	position: relative;
	padding: 20px;
	min-height: 290px;
}
section .flow .flow_block:last-child {
	margin-right: 0;
}
section .flow .arrow_img {
	padding-top: 135px;
	float: left;
	width: 20px;
	display: flex;
	justify-content: center;
}
section .flow .flow_block > p.montserrat {
	position: absolute;
	left: -5px;
	width: 45px;
	height: 45px;
	top: -5px;
	padding-top: 5px;
	box-sizing: border-box;
}
section .flow .flow_block > p.purple {
	line-height: 1.4;
	padding-bottom: 25px;
	position: relative;
	margin-bottom: 20px;
	margin-top: 15px;
}
section .flow .flow_block:first-child > p.purple {
	padding-bottom: 15px;
	margin-top: 0;
}
section .flow .flow_block > p.purple:before {
	position: absolute;
	width: 50px;
	height: 2px;
	background: #483d8b;
	content: "";
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}
section .flow .flow_block p.size18 span.bg_red {
	padding: 0 5px 2px;
	box-sizing: border-box;
}
section .flow .flow_block ul li.dot {
	padding-left: 20px;
	box-sizing: border-box;
	position: relative;
}
section .flow .flow_block ul li.dot:before {
	content: "";
	width: 10px;
	height: 10px;
	background: #6a5acd;
	position: absolute;
	left: 0;
	top: 7.5px;
	border-radius: 50%;
}
section.contact .contact.bg_orange {
	padding: 35px 0 40px;
	width: 735px;
	margin: 0 auto;
	border-radius: 12px;
}
section.contact .contact .contact_flex {
	overflow: hidden;
	margin: 20px auto 25px;
	width: 560px;
}
section.contact .contact .contact_flex .left_inner {
	text-align: center;
	margin-left: 30px;
}
section.contact .contact .contact_flex .right_inner {
	margin-right: 0;
}
section.contact .contact .contact_flex p.bg_white {
	border-radius: 12px;
	padding: 5px 0;
	margin-bottom: 10px;
	box-sizing: border-box;
}
section.contact .contact .contact_flex a {
	letter-spacing: 0.1px;
	padding-left: 20px;
	box-sizing: border-box;
	background: url(../images/tel_white.png) no-repeat;
	background-position: calc(50% - 120px) center;
	display: block;
	background-size: 25px;
}
section.contact .contact.bg_orange > p.size17 span.bg_white {
	padding: 5px 20px;
	box-sizing: border-box;
	border-radius: 12px;
	margin-right: 15px;
}
section.form_block > p.size20 {
	margin: 95px 0 30px;
}
section.form_block .form {
	width: 1000px;
	margin: 0 auto;
}
section.form_block .form table {
	width: 100%;
}
section.form_block .form table th,
section.form_block .form table td {
	box-sizing: border-box;
	padding: 20px 0;
	border-top: 1px solid #ccc;
}
section.form_block .form table th {
	width: 30%;
	padding-left: 15px;
	font-weight: 600;
	text-align: left;
	vertical-align: top;
}
section.form_block .form table th span {
	font-weight: bold;
	font-size: 12px;
	float: right;
	padding: 5px 8px 7px;
	box-sizing: border-box;
	line-height: 1;
}
section.form_block .form table td {
	padding: 15px 35px 15px 30px;
}
section.form_block .form table td input,
section.form_block .form table td textarea {
	border-radius: 5px;
	border: 1px solid #ababab;
	box-sizing: border-box;
}
section.form_block .section_inner > p.center {
	margin: 40px 0;
}
section.form_block .agree {
	padding: 20px 0 20px 10px;
	box-sizing: border-box;
	width: 520px;
	margin: 0 auto 10px;
	background: #eef2fb;
	border-radius: 5px;
}
section.form_block .agree input {
	margin-right: 10px;
}
section.form_block .agree p {
	font-weight: bold;
}
section.form_block p.pl {
	padding-left: 80px;
	background: url(../images/privacy_icon.png) no-repeat;
	background-position: left center;
	box-sizing: border-box;
	width: 800px;
	margin: 20px auto 60px;
}
section.form_block .section_inner > input {
	width: 450px;
	margin: 0 auto 90px;
	text-align: center;
	padding: 20px 0;
	box-sizing: border-box;
	color: white;
	font-size: 27px;
	font-weight: 600;
	background: #6a5acd;
	border-radius: 24px;
	border: 1px solid #6a5acd;
	display: block;
}
section.form_block .section_inner > input:hover {
	background: white;
	color: #6a5acd;
}
footer {
	background: #eef2fb;
	padding: 35px 0 40px;
	box-sizing: border-box;
}
footer .footer_inner {
	overflow: hidden;
	width: 1000px;
	display: flex;
	justify-content: space-between;
}
footer .footer_inner .left ul {
	display: flex;
}
footer .footer_inner .left ul li {
	margin-right: 20px;
	padding-right: 20px;
	box-sizing: border-box;
	border-right: 1px solid #b5b7bd;
}
footer .footer_inner .left ul li:last-child {
	border-right: none;
	padding-right: 0;
	margin-right: 0;
}
.pagetop {
	border-radius: 8px;
}
.pagetop p {
	-webkit-text-orientation: mixed;
	text-orientation: mixed;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	padding: 45px 15px 20px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
}
.pagetop p:hover {
	cursor: pointer;
}
.pagetop p:before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-bottom: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(225deg);
	position: absolute;
	top: -90px;
	left: 0;
	bottom: 0;
	right: -2px;
	margin: auto;
}
.pagetop p:hover:before {
	top: -95px;
	transition: 0.1s linear all;
}
/*-----------------------------------------
確認画面
-----------------------------------------*/
section.confirm {
	padding: 0 0 100px;
	box-sizing: border-box;
}
section.confirm h3 {
	margin: 65px 0 50px;
}
section.confirm table {
	width: 100%;
}
section.confirm table {
	width: 100%;
}
section.confirm table th,
section.confirm table td {
	box-sizing: border-box;
	padding: 20px 0;
	border-top: 1px solid #ccc;
}
section.confirm table th {
	width: 30%;
	padding-left: 15px;
	font-weight: 600;
	text-align: left;
	vertical-align: top;
}
section.confirm table th span {
	font-weight: bold;
	font-size: 12px;
	float: right;
	padding: 5px 8px 7px;
	box-sizing: border-box;
	line-height: 1;
}
section.confirm table td {
	padding: 15px 35px 15px 30px;
}
section.confirm .btn_flex {
	display: flex;
	justify-content: space-between;
	width: 500px;
	margin: 50px auto 0;
}
section.confirm .btn_flex input {
	width: 285px;
	text-align: center;
	padding: 15px 0;
	border: none;
	border-radius: 24px;
	font-size: 20px;
}
section.confirm .btn_flex input:first-child {
	margin-right: 30px;
}
section.confirm .btn_flex input:last-child {
	background: #6a5acd;
}
section.confirm,
section.error,
section.completed {
	padding: 0 0 100px;
	box-sizing: border-box;
}
section.confirm h3,
section.error h3,
section.completed h3 {
	margin: 65px 0 50px;
}
section.confirm table {
	width: 100%;
}
section.confirm table {
	width: 100%;
}
section.confirm table th,
section.confirm table td {
	box-sizing: border-box;
	padding: 20px 0;
	border-top: 1px solid #ccc;
}
section.confirm table th {
	width: 30%;
	padding-left: 15px;
	font-weight: 600;
	text-align: left;
	vertical-align: top;
}
section.confirm table th span {
	font-weight: bold;
	font-size: 12px;
	float: right;
	padding: 5px 8px 7px;
	box-sizing: border-box;
	line-height: 1;
}
section.confirm table td {
	padding: 15px 35px 15px 30px;
}
section.confirm .btn_flex {
	display: flex;
	justify-content: space-between;
	width: 500px;
	margin: 50px auto 0;
}
section.confirm .btn_flex input {
	width: 285px;
	text-align: center;
	padding: 15px 0;
	border: 1px solid #ccc;
	border-radius: 24px;
	font-size: 20px;
}
section.confirm .btn_flex input:first-child {
	margin-right: 30px;
}
section.confirm .btn_flex input:first-child:hover {
	background: #dbdbdb;
}
section.confirm .btn_flex input:last-child {
	background: #6a5acd;
	border: 1px solid #6a5acd;
	color: white;
}
section.confirm .btn_flex input:last-child:hover {
	color: #6a5acd;
	background: white;
}
.pagetop p {
	display: block;
}
/*-----------------------------------------
ぱんくず
-----------------------------------------*/
.wrapper .breadcrumb {
	width: 1000px;
	margin: 10px auto;
}

.wrapper .breadcrumb ul {
	overflow: hidden;
}

.wrapper .breadcrumb ul li {
	float: left;
	font-size: 11px;
}

/*-----------------------------------------
改行
-----------------------------------------*/
.W-640 {
	display: none;
}

/*-----------------------------------------
コンタクトフォーム用
-----------------------------------------*/
input[type="checkbox"],
input[type="radio"] {
	vertical-align: middle;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
	padding: 10px 20px;
	width: 100%;
	box-sizing: border-box;
}
textarea {
	resize: none;
}
.agree {
	display: flex;
	justify-content: center;
	align-items: center;
}
/*-----------------------------------------
pagenavi
-----------------------------------------*/
.wp-pagenavi {
	margin-bottom: 5px;
}

.wp-pagenavi a,
.wp-pagenavi span {
	background-color: #0033a1;
	border: 1px solid #0033a1 !important;
	color: white;
	padding: 5px 8px !important;
	font-size: 14px;
	transition: 0.1s linear all;
}

.wp-pagenavi span.current {
	background-color: white;
	font-weight: normal !important;
	color: #0033a1;
}

.wp-pagenavi a:hover {
	background-color: #0033a1;
	color: white;
}

.sp {
	display: none;
}

.humburger_on {
	display: none;
}
.W-1024 {
	display: none;
}



p.error {
	color: red;
	text-align: center;
	margin-bottom: 20px;
}
.form p.error {
	text-align: left;
	margin-bottom: 0;
}



@media screen and (min-width: 1300px) {
	header > a.contact {
		padding: 20px 220px 15px 20px;
	}
	.mainimg {
		background: url(../images/bg_mainbottom.png) no-repeat, url(../images/bg_mainimg.png) no-repeat;
		background-position: center bottom, center -30px;
		background-size: contain, cover;
	}
	.mainimg .text_block {
		left: 0;
	}
	.mainimg .point {
		right: 10%;
	}
	section.bg_lightpurple.slash {
		background: linear-gradient(150deg, #eef2fb 0%, #eef2fb 50%, #e2e6f8 50%, #e2e6f8 100%);
	}
}
@media screen and (min-width: 1530px) {
	header > a.contact {
		padding: 20px 145px 15px 20px;
	}
}
@media screen and (min-width: 1740px) {
	header > a.contact {
		padding: 20px 250px 15px 20px;
	}
}
@media screen and (min-width: 1900px) {
	header > a.contact {
		padding: 20px 340px 15px 20px;
	}
	section .worry .worry_block,
	section .manager .manager_block {
		padding: 140px 25rem;
	}
}
@media screen and (min-width: 2100px) {
	header > a.contact {
		padding: 20px 21% 15px 20px;
	}
}
@media screen and (min-width: 2390px) {
	header > a.contact {
		padding: 20px 24% 15px 20px;
	}
}
@media screen and (min-width: 2550px) {
	header > a.contact {
		padding: 20px 26% 15px 20px;
	}
}
@media screen and (min-width: 2870px) {
	header > a.contact {
		padding: 20px 28% 15px 20px;
	}
}



@media screen and (max-width: 1194px) {

}

@media screen and (max-width: 1024px) {
	.W-1024 {
		display: block;
	}
	.W-1024none {
		display: none;
	}
	/* 文字サイズ */
	.size10{ font-size:9px; }
	.size11{ font-size:10px; }
	.size12{ font-size:11px; }
	.size13{ font-size:12px; }
	.size14{ font-size:13px; }
	.size16{ font-size:15px; }
	.size17{ font-size:16px; }
	.size18{ font-size:17px; }
	.size20{ font-size:19px; }
	.size21{ font-size:20px; }
	.size24{ font-size:22px; }
	.size25{ font-size:23px; }
	.size26{ font-size:24px; }
	.size27{ font-size:25px; }
	.size30{ font-size:28px; }
	.size31{ font-size:29px; }
	.size32{ font-size:30px; }
	.size35{ font-size:32px; }
	.size36{ font-size:34px; }
	.size37{ font-size:35px; }
	.size38{ font-size:37px; }
	.size42{ font-size:40px; }
	.size45{ font-size:42px; }
	.size46{ font-size:44px; }
	.size47{ font-size:45px; }
	.size48{ font-size:46px; }
	.size50{ font-size:48px; }
	.size55{ font-size:52px; }
	.size60{ font-size:54px; }

	/* ハンバーガーメニュー */
	.humburger_on {
		display: block;
		float: right;
	}
	.humburger_none {
		display: none;
	}
	.h-menu {
		position: relative;
	}
	.h-menuCheckbox {
		display: none;
	}
	.h-menu_icon {
		display: inline-block;
		width: 30px;
		height: 30px;
		vertical-align: middle;
	}
	.h-menu_icon p.menu {
		margin-left: 60px;
		width: 60px;
		color: white;
		margin-top: -3px;
	}
	.hamburger-icon,
	.hamburger-icon::before,
	.hamburger-icon::after {
		content: '';
		display: block;
		position: absolute;
		z-index: 100;
		top: 30px;
		bottom: 0;
		width: 32px;
		height: 3px;
		background: #0f066c;
		cursor: pointer;
		right: 12.5px;
	}
	.hamburger-icon:before {
		top: 10px;
		right: 0;
	}
	.hamburger-icon:after {
		top: 20px;
		right: 0;
	}
	#h-menu_black {
		display: none;
		position: fixed;
		z-index: 98;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(255, 255, 255, 0.3);
		opacity: 0;
		transition: .7s ease-in-out;
	}
	#h-menu_content {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 99;
		width: 100%;
		max-width: 320px;
		height: 100vh;
		background: white;
		overflow: auto;
		transition: .3s ease-in-out;
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);
	}
	input:checked~.h-menu_icon .hamburger-icon {
		background: transparent;
	}
	input:checked~.h-menu_icon .hamburger-icon::before {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 10px;
		z-index: 999;
	}
	input:checked~.h-menu_icon .hamburger-icon::after {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 10px;
		z-index: 999;
	}
	input:checked~#h-menu_black {
		display: block;
		opacity: .8;
	}
	#h-menu_checkbox:checked~#h-menu_content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
		box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
	}
	.h-menu_icon .hamburger-icon,
	.h-menu_icon .hamburger-icon::before,
	.h-menu_icon .hamburger-icon::after,
	#h-menu_black,
	#h-menu_content {
		-webkit-transition: all .3s;
		transition: all .3s;
	}
	#h-menu_content ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	#h-menu_content ul li {
		border-bottom: solid 1px white;
		float: none;
		width: 100%;
		margin: 0;
	}
	header .header_inner .header_right #h-menu_content ul:last-child li {
		padding-top: 0;
	}
	#h-menu_content li a {
		display: block;
		font-size: 16px;
		padding: 10px 15px;
		text-decoration: none;
		transition-duration: 0.2s;
		background: rgba(213, 215, 255, 1);
	}
	#h-menu_content li.contact a {
		background: #c81731;
		color: white;
	}
	#h-menu_content li a:hover {
		background: #0f066c;
		color: white;
	}
	#h-menu_content li.contact a:hover {
		color: #c81731;
		background: white;
	}
	#h-menu_content li:first-child a {
		border-bottom: none;
		padding: 10px 15px 5px;
		text-align: center;
		background: none;
	}
	#h-menu_content li:first-child a img {
		width: 80%;
	}
	/* content */
	.section_inner, .footer_inner, .header_inner {
		width: 96%;
	}
	header > a.contact {
		display: none;
	}
	.mainimg {
		margin-top: 80px;
		height: 610px;
		background-size: contain, cover;
		background-position: center bottom, center 0;
	}
	.mainimg .inner {
		height: inherit;
		width: 96%;
		background-size: 45%;
	}
	.mainimg .inner img.letter_pack {
		top: 0;
		right: 0%;
		width: 42.5%;
	}
	.mainimg .text_block {
		width: 600px;
		top: 10%;
		left: 2.5%;
	}
	.mainimg .text_block img {
		margin: 10px 0 15px;
		width: 90%;
	}
	.mainimg .text_block p.purple, .mainimg .text_block p.yellow {
		margin-left: 0;
	}
	section .resolve ul,
	section.bg_blue .inji  {
		width: 90%;
	}
	section .resolve ul li {
		width: calc(50% - 10px);
		margin-right: 20px;
		margin-bottom: 20px;
	}
	section .resolve ul li:nth-child(2n) {
		margin-right: 0;
	}
	section.bg_blue .inji .ex .ex_block {
		width: 100%;
		margin-right: 0;
		float: none;
		margin-bottom: 50px;
	}
	section.bg_blue .inji .ex .ex_block:last-child {
		width: 50%;
		margin: 0 auto;
	}
	section.bg_blue .inji .ex {
		background: url(../images/plus.png) no-repeat;
		background-position: center 47%;
	}
	dd .a_flex {
		width: 100%;
		padding: 50px 30px 70px;
		box-sizing: border-box;
	}
	dd .a_flex .left .bg_white > p {
		margin-bottom: 5px;
	}
	section.bg_lightpurple .example .inner_flex {
		display: block;
		text-align: center;
	}
	section.bg_lightpurple .example .inner_flex .inner_right {
		margin-top: 20px;
	}
	section.bg_lightpurple .example .left > p.size20:before, section.bg_lightpurple .example .left > p.size20:after, section.bg_lightpurple .example .right > p.size20:before, section.bg_lightpurple .example .right > p.size20:after {
		position: absolute;
		content: "";
		top: 17.5px;
		width: 140px;
		height: 2px;
		background: #6a5acd;
	}
	section .flow {
		padding: 60px 15px;
	}
	section .flow .flow_block {
		padding: 20px 10px;
	}
	section .flow .flow_block ul li.dot {
		padding-left: 15px;
	}
	section .flow .flow_block > p.montserrat {
		width: 40px;
		height: 40px;
		padding-top: 2.5px;
	}
	section .about .about_block:nth-child(5) .block:first-child {
		height: 189px;
	}
	section .about .about_block:nth-child(5) .block {
		height: 128px;
	}
	section .about .arrow_img.sec {
		left: 635px;
	}
	section.bg_lightpurple .example .left ul li .size18, section.bg_lightpurple .example .right ul li .size18 {
		font-size: 16px;
	}
	section.bg_lightpurple .example .right ul li:nth-child(3) {
		margin: 0 auto 79px;
	}
	section .flow .flow_block:first-child > p.purple,
	section .flow .flow_block ul li.size15,
	section .flow .flow_block p.medium,
	section .flow .flow_block p span.red {
		letter-spacing: 0;
	}
}

@media screen and (max-width: 896px) {

	/* iPhone XS MAX 横表示 */
	.sp {
		display: inline-block;
	}

	.pc {
		display: none;
	}

	.wrapper {
		width: 100%;
		overflow: hidden;
	}

	.W-896 {
		display: block;
	}
	.W-896none {
		display: none;
	}
	/* 文字サイズ */
	.size10{ font-size:8px; }
	.size11{ font-size:9px; }
	.size12{ font-size:10px; }
	.size13{ font-size:11px; }
	.size14{ font-size:12px; }
	.size16{ font-size:13px; }
	.size17{ font-size:14px; }
	.size18{ font-size:15px; }
	.size20{ font-size:16px; }
	.size21{ font-size:18px; }
	.size24{ font-size:20px; }
	.size25{ font-size:21px; }
	.size26{ font-size:22px; }
	.size27{ font-size:24px; }
	.size30{ font-size:25px; }
	.size31{ font-size:26px; }
	.size32{ font-size:28px; }
	.size35{ font-size:30px; }
	.size36{ font-size:32px; }
	.size37{ font-size:34px; }
	.size38{ font-size:35px; }
	.size42{ font-size:38px; }
	.size45{ font-size:40px; }
	.size46{ font-size:42px; }
	.size47{ font-size:44px; }
	.size48{ font-size:45px; }
	.size50{ font-size:46px; }
	.size55{ font-size:48px; }
	.size60{ font-size:50px; }

	/* content */
	.mainimg  {
		height: 515px;
		background-position: center bottom, center 0;
	}
	.mainimg .inner img.letter_pack {
		top: 2.5%;
	}
	.mainimg .text_block {
		width: 450px;
		left: 0;
		top: 10%;
	}
	.mainimg .text_block img {
		margin: 0px 0 40px;
		width: 100%;
	}
	.mainimg .text_block .bgWhite {
		padding: 15px 0 15px 20px;
		align-items: end;
	}
	.mainimg .text_block p.purple {
		padding-right: 0;
	}
	.mainimg .text_block p.purple.size42 {
		font-size: 32px;
	}
	.mainimg .text_block p.purple.size42 .size50 {
		font-size: 35px;
	}
	.mainimg .point ul {
		width: 100%;
	}
	.mainimg .point ul li {
		width: 175px;
		height: 175px;
		padding-top: 45px;
		background-size: cover;
	}
	.mainimg .point ul li:nth-child(2n) {
		background-size: cover;
	}
	.mainimg .point ul li.size30 {
		font-size: 22px;
	}
	.mainimg .point ul li .size42 {
		font-size: 30px;
	}
	.mainimg .point ul li .size22,
	.mainimg .point ul li.size22 {
		font-size: 18px;
	}
	section .worry .worry_block ul.more_inner li,
	section .manager .manager_block ul.more_inner li {
		padding: 10px 0;
		margin-bottom: 10px;
	}
	section .money .money_ex {
		width: 90%;
	}
	section .money .money_ex ul li {
		width: calc(50% - 10px);
		background-size: 40px;
	}
	section .money .money_ex ul li:first-child {
		margin-right: 20px;
	}
	section .case .case_block p.size150 {
		font-size: 100px;
		top: 20px;
	}
	section .case .case_block .text_flex, section .case .case_block .graph_flex {
		display: block;
	}
	section .case .case_block .text_flex {
		margin-left: 0;
	}
	section .case .case_block .graph_flex .left,
	section .case .case_block .graph_flex .right {
		width: 100%;
		float: none;
	}
	section .case .case_block .graph_flex .left {
		margin: 0 auto 20px;
	}
	section .case .case_block .text_flex .left > p.navy {
		margin-bottom: 10px;
	}
	section .case .case_block .graph_flex .left .if {
		text-align: center;
	}
	section .case .case_block .graph_flex .right img {
		text-align: center;
		width: 70%;
		margin: 0 auto;
		display: block;
	}
	section .case .case_block .graph_flex .left .if p.bg_red:before {
		left: 35%;
	}
	section .about {
		display: block;
	}
	section .about .about_block {
		width: 100%;
		min-height: 0;
		margin-bottom: 50px;
	}
	section .about .about_block:last-child {
		margin-bottom: 0;
	}
	section .about .about_block:nth-child(1) {
		padding: 90px 0 30px;
		background-position: center 30px;
		text-align: center;
	}
	section .about .about_block.bg_blue p.bg_white {
		display: inline-block;
		padding: 5px 30px;
		box-sizing: border-box;
	}
	section .about .about_block:nth-child(3) .block > p.bg_white {
		margin-bottom: 10px;
	}
	section .about .about_block:nth-child(3),
	section .about .about_block:nth-child(5) {
		display: flex;
		justify-content: space-between;
	}
	section .about .about_block:nth-child(3) .block,
	section .about .about_block:nth-child(5) .block {
		width: calc(50% - 15px);
	}
	section .about .about_block:nth-child(3) .block:first-child,
	section .about .about_block:nth-child(5) .block:first-child {
		margin-bottom: 0;
		margin-right: 20px;
	}
	section .about .about_block:nth-child(5) .block:first-child,
	section .about .about_block:nth-child(5) .block:last-child {
		height: auto;
		padding: 20px;
		text-align: center;
		display: block;
	}
	section .about .arrow_img {
		width: 70px;
		left: 0;
	}
	section .about .arrow_img img {
		transform: rotate(90deg);
		top: -30px;
		left: 165px;
	}
	section .about .arrow_img img:last-child {
		left: 550px;
		top: -30px;
	}
	section .about .arrow_img.sec {
		left: 0;
	}
	section.bg_blue .inji .ex {
		background-position: center 41%;
	}
	section.contact .contact .left, section.contact .contact .right,
	section.bg_lightpurple .example .left, section.bg_lightpurple .example .right {
		width: 70%;
		margin: 0 auto;
		float: none;
	}
	section.contact .contact .left,
	section.bg_lightpurple .example .left {
		margin-bottom: 20px;
	}
	section.contact .contact .left > p.size20 {
		background-position: calc(50% - 150px) center;
	}
	section.contact .contact .right a,
	section.contact .contact .right a:hover {
		background-position: center 30px, 92.5% center;
		padding: 75px 0 30px;
	}
	dl {
		width: 80%;
		margin: 0 auto 40px;
	}
	dd .a_flex {
		display: block;
		padding: 50px 20px;
	}
	dd .a_flex .left p.size24 {
		margin-left: 0;
		text-align: center;
	}
	dd .a_flex .left .bg_white {
		margin: 25px auto 0;
	}
	dd .a_flex .right {
		text-align: center;
		margin-top: 20px;
	}
	section.bg_lightpurple .example .right {
		margin: 0 auto 50px;
	}
	section.bg_lightpurple .example .left ul li p.size20, section.bg_lightpurple .example .right ul li p.size20 {
		margin-bottom: 10px;
	}
	section.bg_lightpurple .example .left ul li, section.bg_lightpurple .example .right ul li {
		margin-bottom: 20px;
	}
	section.bg_lightpurple .example .right ul li:nth-child(3),
	section.bg_lightpurple .example .left ul li:nth-child(4) {
		margin: 0 auto 30px;
	}
	section .voice .voice_block .left {
		margin-top: 0;
	}
	section .voice .voice_block .left p.size18 {
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	section#flow .section_inner {
		width: 80%;
	}
	section .flow .flow_block {
		width: 60%;
		float: none;
		margin: 0 auto 20px;
		min-height: 0;
	}
	section .flow .arrow_img {
		padding-top: 0;
		float: none;
		text-align: center;
		display: block;
		margin: 0 auto;
		height: 30px;
	}
	section .flow .arrow_img img {
		transform: rotate(90deg);
	}
	section .flow .flow_block > p.montserrat {
		width: 50px;
		height: 50px;
		padding-top: 7.5px;
	}
	section .flow .flow_block p.medium {
		text-align: center;
	}
	section .flow .flow_block:first-child p.medium {
		text-align: left;
		margin-left: 40px;
	}
	section .flow .flow_block:nth-child(7) p.bold {
		margin-left: 40px;
	}
	section .flow .flow_block:last-child {
		margin: 0 auto;
	}
	section .flow .flow_block ul {
		margin-left: 40px;
	}
	section.form_block .form {
		width: 100%;
	}
	section.form_block .form table th,
	section.form_block .form table td {
		display: block;
		width: 100%;
		padding: 10px 15px;
	}
	section.form_block .form table th span {
		float: none;
		margin-left: 20px;
	}
	section.form_block .form table td {
		border-top: none;
		padding: 0 15px 10px;
	}
	section.form_block p.pl {
		width: 100%;
	}
	footer .footer_inner {
		width: 96%;
		display: block;
	}
	footer .footer_inner .right {
		margin-top: 20px;
	}
	section.bg_blue .inji .plan {
		display: block;
		padding-left: 0;
	}
	section.bg_blue .inji .plan > p.size30 {
		padding: 20px 0 0;
	}
	section.bg_blue .inji .plan > p {
		padding: 0;
		margin-top: 0px;
		padding-bottom: 10px;
	}
	section.bg_blue .inji .plan {
		display: block;
		padding-left: 0;
	}
	section.bg_blue .inji .plan > p.size30 {
		padding: 20px 0 0;
		margin-right: 0;
		border-radius: 5px 5px 0 0;
	}
	section.bg_blue .inji .plan > p {
		padding: 0;
		margin-top: 0px;
		padding-bottom: 10px;
	}
	section.contact .contact.bg_orange {
		width: 70%;
	}
	section.contact .contact .contact_flex {
		margin: 10px auto 15px;
	}
	section.contact .contact .contact_flex a {
		padding-left: 10px;
		background-position: calc(50% - 105px) center;
	}
	section .worry .worry_block,
	section .manager .manager_block {
		padding: 30px 2%;
	}
	section .worry .worry_block .more_list,
	section .manager .manager_block .more_list {
		width: 450px;
	}
}

@media screen and (max-width: 640px) {
	.W-640 {
		display: block;
	}
	.W-640none,
	.pagetop.W-640none {
		display: none !important;
	}
	/* 文字サイズ */
	.size10{ font-size:7px; }
	.size11{ font-size:8px; }
	.size12{ font-size:9px; }
	.size13{ font-size:10px; }
	.size14{ font-size:11px; }
	.size16{ font-size:12px; }
	.size17{ font-size:13px; }
	.size18{ font-size:14px; }
	.size20{ font-size:15px; }
	.size21{ font-size:17px; }
	.size24{ font-size:19px; }
	.size25{ font-size:20px; }
	.size26{ font-size:21px; }
	.size27{ font-size:22px; }
	.size30{ font-size:24px; }
	.size31{ font-size:25px; }
	.size32{ font-size:27px; }
	.size35{ font-size:29px; }
	.size36{ font-size:30px; }
	.size37{ font-size:32px; }
	.size38{ font-size:34px; }
	.size42{ font-size:36px; }
	.size45{ font-size:38px; }
	.size46{ font-size:40px; }
	.size47{ font-size:42px; }
	.size48{ font-size:44px; }
	.size50{ font-size:45px; }
	.size55{ font-size:46px; }
	.size60{ font-size:48px; }
	/* content */
	header .header_inner .header_left {
		width: 70%;
	}
	header .header_inner .header_right {
		width: auto;
		float: right;
	}
	header .header_inner .header_left img {
		width: 100%;
	}
	.mainimg {
		margin-top: 74px;
	}
	.mainimg {
		height: 880px;
	}
	.mainimg .inner {
		background-position: right 35%;
		background-size: 75%;
	}
	.mainimg .text_block {
		width: 100%;
		top: 36.5%;
	}
	.mainimg .text_block .bgWhite {
		padding: 10px 0 10px 15px;
		align-items: end;
	}
	.mainimg .text_block p.purple {
		font-size: 15px;
	}
	.mainimg .text_block p.purple span.size28 {
		font-size: 22px;
	}
	.mainimg .text_block p.purple.size42 {
		font-size: 28px;
	}
	.mainimg .text_block p.purple.size42 .size50 {
		font-size: 32px;
	}
	.mainimg .point {
		right: 0;
		margin: 0 auto;
		left: 0;
		bottom: 1.5%;
	}
	.mainimg .point ul {
		flex-wrap: wrap;
		gap: 7.5px 0px;
	}
	.mainimg .point ul {
		padding-top: 50px;
	}
	.hamburger-icon {
		right: 0;
		top: 25px;
	}
	section p.band {
		font-size: 20px;
		padding: 15px 0;
	}
	section p.band span.size38,
	section .resolve .size38 {
		font-size: 26px;
	}
	section .worry .worry_block ul.more_inner,
	section .manager .manager_block ul.more_inner {
		width: 90%;
		padding: 40px 0;
	}
	section .money {
		padding: 30px 0 60px;
	}
	section .money .money_ex ul {
		display: block;
		margin: 20px auto;
	}
	section .money .money_ex ul li {
		width: 100%;
	}
	section .money .money_ex ul li:first-child {
		margin-bottom: 20px;
	}
	section .resolve {
		padding: 150px 0 30px;
	}
	section .resolve > p.size38 span.bg_white {
		padding: 5px;
		height: auto;
	}
	section .resolve ul li {
		width: 100%;
		float: none;
		margin-right: 0;
		padding: 15px 0;
	}
	section.bg_lightpurple .section_inner > p.size24 span.size30 {
		font-size: 20px;
		padding: 10px 15px;
	}
	section .case .case_block {
		padding: 20px;
	}
	section .case .case_block p.size150 {
		font-size: 70px;
		top: 70px;
	}
	section .case .case_block .graph_flex .right img {
		width: 100%;
	}
	section .case > p.size30 {
		font-size: 21px;
	}
	h2 {
		font-size: 20px;
		padding: 20px 0;
		margin-bottom: 60px;
	}
	h2 span.size38 {
		font-size: 22px;
	}
	section .about .about_block .block .size18 {
		font-size: 12px;
	}
	section .about .about_block:nth-child(3) .block {
		padding: 10px 15px;
	}
	section .about .arrow_img img {
		left: 75px;
	}
	section .about .arrow_img img:last-child {
		left: 265px;
	}
	section.bg_blue .inji .ex .ex_block .bg_white {
		width: 100%;
		float: none;
		margin-right: 0;
	}
	section.bg_blue .inji .ex .ex_block .bg_white:first-child {
		margin-bottom: 10px;
	}
	section.bg_blue .inji .ex .ex_block:last-child {
		width: 100%;
	}
	section.bg_blue .inji .ex {
		background-position: center 65%;
	}
	section.bg_blue .inji .ex .ex_block .bg_white .left > p.size18 {
		padding-top: 30px;
	}
	section.bg_blue .inji .ex .ex_block:last-child {
		padding: 15px;
	}
	section.contact .contact .left, section.contact .contact .right, section.bg_lightpurple .example .left, section.bg_lightpurple .example .right {
		width: 100%;
		padding: 20px 15px;
	}
	section.contact .contact .left .wrap_inner .left_inner, section.contact .contact .left .wrap_inner .right_inner {
		width: 100%;
		float: none;
	}
	section.contact .contact .left .wrap_inner .left_inner {
		margin-bottom: 20px;
	}
	section.contact .contact .left > p.size20 {
		background-position: calc(50% - 130px) center;
		background-size: 25px;
	}
	section.contact .contact .right a {
		background-position: center 5px, 92.5% center;
		padding: 45px 0 5px;
	}
	dl {
		width: 100%;
		margin: 0 auto 20px;
	}
	dl:last-child {
		margin-bottom: 50px;
	}
	dl dt.size20 {
		font-size: 13px;
	}
	.nav-open::before {
		right: 5px;
		top: 15px;
	}
	dd .a_flex {
		padding: 40px 15px;
	}
	dd .a_flex .left p.size24 {
		font-size: 18px;
	}
	dd .a_flex .left .bg_white {
		width: 100%;
		padding: 15px 10px;
	}
	dd .a_flex .right img {
		width: 100%;
	}
	dd .a_flex .left .bg_white ul li {
		padding-left: 1.5em;
	}
	dd .a_flex .left .bg_white ul li:before {
		top: 3.5px;
	}
	section.bg_lightpurple .example .left, section.bg_lightpurple .example .right  {
		padding: 0;
	}
	section.bg_lightpurple .example .inner_flex {
		padding: 20px 15px 20px;
	}
	section.bg_lightpurple .example .left > p.size20, section.bg_lightpurple .example .right > p.size20 {
		margin: 0 15px 20px;
	}
	section.bg_lightpurple .example .left > p.size20:before, section.bg_lightpurple .example .left > p.size20:after, section.bg_lightpurple .example .right > p.size20:before, section.bg_lightpurple .example .right > p.size20:after {
		width: 100px;
		top: 13px;
	}
	section.bg_lightpurple .example .left ul li, section.bg_lightpurple .example .right ul li {
		width: 100%;
		margin-right: 0;
		float: none;
	}
	h3 {
		padding: 40px 20px 5px;
		margin-bottom: 30px;
		font-size: 20px;
	}
	section .voice .voice_block {
		padding: 20px;
	}
	section .voice .voice_block .left,
	section .voice .voice_block .right {
		float: none;
		width: 100%;
	}
	section .voice .voice_block .left {
		margin-right: 0;
	}
	h4 {
		font-size: 18px;
		padding-top: 40px;
		margin-bottom: 30px;
	}
	section#flow .section_inner {
		width: 96%;
	}
	section .flow {
		padding: 30px 15px;
		margin: 0 auto 50px;
	}
	section ul.tab li span:first-child,
	section ul.tab li span:last-child {
		margin: 0;
	}
	section ul.tab li {
		width: 50%;
		padding: 10px 0;
	}
	section .flow .flow_block {
		width: 90%;
		margin: 0 auto 10px;
	}
	section .flow .flow_block ul {
		margin-left: 10px;
	}
	section .flow .flow_block > p.purple {
		padding-bottom: 10px;
		margin-bottom: 15px;
		margin-top: 10px;
	}
	section .flow .flow_block:nth-child(7) p.bold {
		margin-left: 0;
		margin-top: 10px;
	}
	section .flow .flow_block:first-child p.medium {
		margin-left: 0;
	}
	section.contact .contact.bg_orange {
		width: 96%;
		padding: 20px 15px;
		box-sizing: border-box;
	}
	section .about,
	section .case > p.size30 {
		margin-bottom: 40px;
	}
	section .case .case_block:first-child,
	section:nth-child(3) .section_inner > p.size20 {
		margin-bottom: 30px;
	}
	section.bg_lightpurple .section_inner > p.size24 {
		margin-bottom: 50px;
	}
	section.bg_blue {
		padding: 50px 0;
	}
	section.bg_blue > p.size45 {
		font-size: 24px;
		line-height: 1.5;
	}
	section.bg_blue .inji > p {
		line-height: 2.5;
		padding: 10px 0;
	}
	section.bg_blue .inji > p.size30 {
		padding: 10px 0 0;
	}
	section.bg_blue .inji .ex {
		margin: 30px auto;
	}
	section.contact {
		padding: 30px 0;
	}
	section.contact .contact .contact_flex {
		width: 100%;
		margin: 0;
	}
	section.contact .contact .contact_flex .left_inner, section.contact .contact .contact_flex .right_inner {
		width: 100%;
		float: none;
	}
	section.contact .contact .contact_flex .left_inner {
		margin-right: 0;
		margin-bottom: 20px;
	}
	section.contact .contact .contact_flex .right_inner {
		margin-bottom: 20px;
	}
	section.contact .contact > p.size20 {
		margin-bottom: 15px;
	}
	section.contact .contact .contact_flex a {
		background-position: 60px center;
		background-size: 25px;
	}
	section.form_block .agree {
		width: 100%;
		padding: 20px 0;
	}
	section.form_block p.pl {
		padding: 75px 0 0;
		background-position: center top;
		margin: 0 auto 30px;
	}
	section.form_block .section_inner > input {
		width: 70%;
		font-size: 18px;
		padding: 10px 0;
		margin: 0 auto 60px;
	}
	footer .footer_inner .left ul {
		justify-content: center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(1) p.size20 {
		background: #f3f2f7 url(../images/icon01.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(2) p.size20{
		background: #f3f2f7 url(../images/icon02.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(3) p.size20{
		background: #f3f2f7 url(../images/icon03.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(4) p.size20{
		background: #f3f2f7 url(../images/icon04.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .right ul li:nth-child(1) p.size20{
		background: #f3f2f7 url(../images/icon05.svg) no-repeat;
		background-position: 70px center;
		padding-left: 40px;
	}
	section.bg_lightpurple .example .right ul li:nth-child(2) p.size20{
		background: #f3f2f7 url(../images/icon06.svg) no-repeat;
		background-position: 85px center;
		padding-left: 10px;
	}
	section.bg_lightpurple .example .right ul li:nth-child(3) p.size20{
		background: #f3f2f7 url(../images/icon07.svg) no-repeat;
		background-position: 85px center;
		padding-left: 10px;
	}
	section .case p.kome {
		margin: 20px auto;
	}
	section .case img.block.center {
		margin: 0px auto 20px;
	}
	section.bg_blue p.size45 span.size55:last-child:before {
		transform: rotate(-65deg);
		right: 190px;
		top: -40px;
	}
	footer {
		padding: 15px 0 80px;
	}
	section .case .case_block p.ex {
		margin-bottom: 20px;
	}
	.fix {
		position: fixed;
		bottom: 0;
		width: 100%;
		z-index: 20;
	}
	.fix .fix_inner {
		display: flex;
		justify-content: space-between;
	}
	.fix .fix_inner p {
		width: calc(100% / 3);
	}
	.fix .fix_inner a {
		display: block;
		color: white;
		border-right: 1px solid white;
		box-sizing: border-box;
		text-align: center;
		height: 40px;
	}
	.fix .fix_inner a:hover {
		text-decoration: none;
	}
	.fix .fix_inner p:nth-child(1) a {
		background: #f39800 url(../images/fix_tel.png) no-repeat;
		background-position: center center;
		background-size: 25px;
	}
	.fix .fix_inner p:nth-child(2) a {
		background: #005bea url(../images/fix_mail.png) no-repeat;
		background-position: center center;
		background-size: 25px;
	}
	.fix .fix_inner p:nth-child(3) {
		color: #fff;
		border-right: none;
		background: #0f066c;
		padding: 7.5px 0;
		text-align: center;
		height: 40px;
		box-sizing: border-box;
	}
	.fix .js-pagetop {
		position: unset;
		border-radius: unset;
		display: block !important;
	}
	.fix .js-pagetop:hover {
		text-decoration: none;
	}
	section.contact .contact .contact_flex {
		width: 100%;
	}
	section.confirm h3,
	section.completed h3{
		margin: 85px 0 40px;
	}
	section.confirm .form {
		width: 100%;
	}
	section.confirm .form table th,
	section.confirm .form table td {
		display: block;
		width: 100%;
		padding: 10px 15px;
	}
	section.confirm .form table th span {
		float: none;
		margin-left: 20px;
	}
	section.confirm .form table td {
		border-top: none;
		padding: 0 30px 10px;
	}
	section.confirm p.pl {
		width: 100%;
	}
	section.confirm .btn_flex {
		display: block;
		width: 100%;
		text-align: center;
	}
	section.confirm .btn_flex input {
		width: 80%;
		margin: 0 auto;
		font-size: 15px;
		padding: 10px 0;
	}
	section.confirm .btn_flex input:first-child {
		margin: 0 auto;
	}
	section.confirm .btn_flex input:last-child {
		margin: 15px auto 0;
	}
	section.form_block .form table th span,
	section.confirm table th span {
		padding: 2px 8px 4px;
	}
	section.bg_lightpurple .example .left ul li:nth-child(1) p.size20 {
		background: #f3f2f7 url(../images/icon01.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(2) p.size20{
		background: #f3f2f7 url(../images/icon02.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(3) p.size20{
		background: #f3f2f7 url(../images/icon03.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .left ul li:nth-child(4) p.size20{
		background: #f3f2f7 url(../images/icon04.svg) no-repeat;
		background-position: 80px center;
	}
	section.bg_lightpurple .example .right ul li:nth-child(1) p.size20{
		background: #f3f2f7 url(../images/icon05.svg) no-repeat;
		background-position: 70px center;
		padding-left: 40px;
	}
	section.bg_lightpurple .example .right ul li:nth-child(2) p.size20{
		background: #f3f2f7 url(../images/icon06.svg) no-repeat;
		background-position: 85px center;
		padding-left: 10px;
	}
	section.bg_lightpurple .example .right ul li:nth-child(3) p.size20{
		background: #f3f2f7 url(../images/icon07.svg) no-repeat;
		background-position: 85px center;
		padding-left: 10px;
	}
	section .case p.kome {
		margin: 20px auto;
	}
	section .case img.block.center {
		margin: 0px auto 20px;
	}
	section.bg_blue p.size45 span.size55:last-child:before {
		transform: rotate(-65deg);
		right: 190px;
		top: -40px;
	}
	section .case .case_block p.ex {
		margin-bottom: 20px;
	}
	section.bg_blue > p.size45 {
		line-height: 1.5;
	}
	dl:nth-child(1) dt,
	dl:nth-child(2) dt {
		padding: 10px 0;
	}
	.pagetop p {
		width: 50px;
	}
	.nav-open::before {
		line-height: 28px;
	}
	header {
		height: 74px;
	}
	html {
		scroll-padding-top: 74px;
	}
	section p.band span.yellow.size32 {
		font-size: 20px;
	}
	section .worry .worry_block {
		background-size: 230%;
		background-position: -140px top;
	}
	section .manager .manager_block {
		background-position: -180px top;
		/* background: url(../images/bg_manager.png) no-repeat; */
		background-size: 170%;
	}
	section.contact .contact .left .wrap_inner {
		margin-bottom: 0;
	}
	section.contact .contact .left .wrap_inner .left_inner {
		margin-bottom: 10px;
		background-position: calc(50% - 100px) center;
		background-size: 20px;
	}
	section.contact .contact > p.size20 {
		margin-bottom: 10px;
	}
	section.contact .contact .contact_flex .left_inner {
		margin-left: 10px;
	}
	section.contact .contact .contact_flex a {
		padding-left: 0;
		background-position: calc(50% - 100px) center;
		background-size: 20px;
	}
	section ul.tab li {
		width: calc((100% - 20px) / 2);
		padding: 10px 0;
		font-size: 13px;
	}
	section ul.tab li:first-child,
	section ul.tab li:last-child {
		margin: 0 5px;
	}
	section ul.tab li span:first-child,
	section ul.tab li span:last-child {
		margin: 5px 10px 0px 0;
		float: right;
	}
	.mainimg .point ul li .size22,
	.mainimg .point ul li.size22 {
		font-size: 16px;
	}
	.mainimg .inner img.letter_pack.letter_pack01 {
		top: 9%;
		width: 75%;
		transform: rotate(350deg);
		right: 20%;
	}
	.mainimg .inner img.letter_pack.letter_pack02 {
		top: -2%;
		width: 70%;
		right: -5%;
	}
	.mainimg .text_block img {
		margin: 0px 0 20px;
	}
	section .worry .worry_block .more_list,
	section .manager .manager_block .more_list {
		width: 65%;
	}
	section .worry .worry_block .more_list li,
	section .manager .manager_block .more_list li {
		font-size: 12px;
		line-height: 1.35;
		margin-bottom: 10px;
	}
	section .worry .worry_block .more_list li:before,
	section .manager .manager_block .more_list li:before {
		box-shadow: 0px 0.25em 0 0px rgba(0, 0, 0, 0.3);
	}
	section .worry .worry_block .more_list li span.size28 {
		font-size: 16px;
	}
}

@media screen and (max-width: 320px) {}
