@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap');

@media screen and (min-width:800px){
	.no-pc{
		display:none!important;
	}
}
@media screen and (max-width:799px){
	.no-sp{
		display:none!important;
	}
}

/* ==============================================
CSS reset
=============================================== */
* ,*:before ,*:after {
	box-sizing:border-box;
	text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
}
html ,body ,div ,p ,span ,iframe ,a ,img ,
h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,
dl ,dt ,dd ,ol ,ul ,li ,
form ,label ,
table ,thead ,tbody ,tfoot ,tr ,th ,td ,
blockquote ,q ,pre ,
header ,footer ,nav ,article ,section ,aside {
	margin:0;
	padding:0;
	border:0 none;
	vertical-align:baseline;
	font-size:inherit;
	font-weight:inherit;
}
button ,input ,textarea ,select {
	font-size:16px;
	padding:5px;
	letter-spacing:1px;
	font-family: 'Noto Sans JP', sans-serif;
}
input[type="submit"] ,button {
	font-size:16px;
	padding:10px 30px;
	font-family:inherit;
}

html ,body {
	min-height:100%;
	height:100%;
	font-family: 'Noto Sans JP', sans-serif;
	line-height:1.6;
}

a {
	color:inherit;
	text-decoration:none;
	cursor:pointer;
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
}

a:hover {
	text-decoration:none;
}

img {
	vertical-align:top;
	max-width:100%;
    max-height:100%;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
}

ol ,ul ,li {
	list-style:none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

/* ============================================
common pc
=============================================== */

html,body{
	margin:0;
	padding:0;
}

html{
	scroll-behavior: smooth;
}

body{
	position:relative;
	font-size:16px;
	color:#000;
	background-color: #fcfcfc;
}

@media screen and (min-width:800px){
	#bgLayer{
		min-width: 960px;
		max-width: 1920px;
		width:100%;
		margin:0 auto;	
	}
}

@media screen and (max-width:799px){
	#bgLayer{
		width:480px;
		min-width:480px;
		max-width:480px;
		margin:0 auto;
		overflow:hidden;
	}
}

img{
	height:auto;
	display:inline-block;
	border:0 none;
}

h1,p{
	margin:0;
}

em {
	font-style: normal;
}

strong {
    font-weight: normal;
}

.all-center-full{
	width:100%;
	max-width:100%;
	margin:0 auto;
}

.all-center-960{
	width:960px;
	max-width:100%;
	margin:0 auto;
}

dl,dt,dd{
	display: block;
	margin: 0;
	padding: 0;
}

header,section,footer{
	max-width: 100%;
}

.object{
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.drop-shadow{
	filter: drop-shadow(0 0 1px #000);
}

.display-b{
	display: block;
}

.display-inb{
	display: inline-block;
}

.pointer1:hover {
    opacity: 0.8;
}

/* ==============================================
common SP
=============================================== */

@media screen and (max-width:799px){	
	.sp-LR15 {
		padding-left:15px !important;
		padding-right:15px !important;
	}

	.sp-L15 {
		padding-left:15px !important;
	}
	
	.sp-R15 {
		padding-right:15px !important;
	}

	.sp-LR10 {
		padding-left:15px !important;
		padding-right:15px !important;
	}

	.sp-L10 {
		padding-left:15px !important;
	}
	
	.sp-R10 {
		padding-right:15px !important;
	}
}

/* ====================================================================
	flex
==================================================================== */
.flex {
	display:flex;
	justify-content:center;
	align-items:center;
}
.flex.left {
	justify-content:flex-start;
}
.flex.right {
	justify-content:flex-end;
}
.flex.between {
	justify-content:space-between;
}
.flex.around {
	justify-content:space-around;
}
.flex.evenly {
	justify-content:space-evenly;
}

.flex.top {
	align-items:flex-start;
}
.flex.bottom {
	align-items:flex-end;
}
.flex.stretch {
	align-items:stretch;
}

.flex.column {
	flex-direction:column;
}
.flex.rev {
	flex-direction:row-reverse;
}
.flex.column.rev {
	flex-direction:column-reverse;
}

.flex.wrap {
	flex-wrap:wrap;
}

.flex.col2 > * {
	width:calc(100% / 2);
}
.flex.col3 > * {
	width:calc(100% / 3);
}

.flex > .half {
	width:50%;
}
.flex > .full {
	width:100%;
}

.height-inherit > * {
	height:100%;
}
.height-inherit-all * {
	height:100%;
}

/* =============================
common button
================================ */

/* ボタン */
.button-all{
	padding-top:3em;
}

.button-wrapper {
    padding-top: 1em;
}

.button-cover{
	padding-left: 0.5em;
	padding-right: 0.5em;
}

.button{
	display: inline-block;
}

@media screen and (max-width:799px){

	.button-all{
		padding-top:3em;
		overflow:hidden;
	}

	.button-wrapper{
		display: block;
	}

	.button-cover + .button-cover{
		padding-top: 1.5em;
	}

	.button-cover{
		text-align: center;
	} 

	.button > img{
		height:120px;
	}
}

/* =============================
common caption
================================ */

.caption1-cover{
	padding-top: 0;
}

.caption1{
	text-align: center;
}

.caption2-cover{
	padding-top: 2em;
}

.caption2{
	text-align: center;
	font-size: 250%;
	color: #900;
	font-weight: bold;
}

.caption3-cover {
    padding-top: 3em;
}

.caption3{
	text-align: center;
}

.caption4-cover {
    padding-top: 1em;
}

.caption4{
	text-align: center;
	font-size: 300%;
	color:#28428f;
	font-weight: bold;
}

.caption5-wrapper {
    padding-top: 4em;
}

.caption5-cover{
	padding-left: 1em;
	padding-right: 1em;
}

.caption5-cover + .caption5-cover{
	padding-top: 2em;
}

.caption5-left{
	width: 13%;
}

.caption5-right{
	width: 87%;
	padding-left: 1em;
}

.caption5-img-cover{
	width: auto;
	height: 100px;
}

.caption5-text,
.caption5-text-a {
    font-weight: bold;
    color: #453b3c;
    padding: 0.5em 1em;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
	min-height: 100px;
	width: 100%;
    display: flex;
	justify-content: left;
    align-items: center;
}

.caption5-text {
    font-size: 190%;
}

.caption5-text-a {
    font-size: 120%;
	border-top-right-radius: 0.5em;
    border-bottom-right-radius: 0.5em;
}

.number {
    background-color: #c60;
    color: #fff;
    font-size: 500%;
    font-weight: 900;
    width: 100%;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
	padding-bottom: 0.1em;
}

@media screen and (max-width:799px){

	.caption2{
		font-size: 180%;
		line-height: 1.3;
	}

	.caption4{
		font-size: 190%;
	}

	.caption5-wrapper {
		padding-top: 2em;
	}

	.caption5-cover {
		padding-left: 0.5em;
		padding-right: 0.5em;
	}

	.caption5-cover + .caption5-cover {
		padding-top: 1.5em;
	}

	.caption5{
		align-items: flex-start;
	}

	.caption5-right{
		padding-left: 0.5em;
	}

	.caption5-left {
		width: 13%;
		min-height: 100%;
		border-radius: 5px 0 0 5px;
	}

	.caption5-img-cover {
		width: auto;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items:center;
	}

	.caption5-text, 
	.caption5-text-a {
		padding: 0em 0.5em;
		min-height: 49.5px;
	}

	.caption5-text{
		font-size: 130%;
	}

	.caption5-text-a {
		font-size: 120%;
	}

	.number {
		font-size: 250%;
		min-height: 50px;
		max-height: 50px;
	}
}

/* =============================
common color
================================ */

.color1{
	color:#444;
}

.color2{
	color:#666;
}

.color3{
	color: #eb0310;
}

.color4{
	color: #f69603;
}

@media screen and (max-width:799px){
}

/* =============================
common bg
================================ */

.bg1{
	background-color: #c80;
}

.bg2{
	background-color: #dbe4f5;
}

.bg3{
	background-color: #a33001;	
}

.bg4{
	background-color: #fce2c7;	
}

@media screen and (max-width:799px){
}

/* =====================================================================
common main
======================================================================== */

.waku{
	padding-top: 8em;
}

/* contents */
.contents-cover{
	padding-top: 3em;
}

/* square */
.square-cover {
    padding-top: 2em;
}

.square{
	width: 50%;
	padding: 1em;
}

.square-text-cover{
	padding-top: 1em;
}

.square-text2{
	padding: 0.5em 1em 0;
	font-size: 110%;
}

@media screen and (max-width:799px){

	.waku{
		padding-top: 4em;
	}

	/* contents */
	.contents-cover{
		padding: 1.5em 0.5em 0;
	}

	/* square */
	.square-cover {
		padding-top: 1.5em;
		align-items: flex-start;	
	}

	.square {
		padding: 0.5em;
	}

	.square-text1{
		font-size: 120%;
	}

	.square-text2 {
		padding: 0.5em 0.5em 0;
	}
}

/* ===
circle
===== */

 .circle2-wrapper{
	flex-wrap:nowrap;
	padding: 3em 0;
	background-color: #eee;
}

 .circle2-cover {
	width: calc(100% / 3);
	margin: 0 auto;
}

 .circle2-cover:nth-child(1) .circle2 {
	background-color: #1f76bf;
}

.circle2-cover:nth-child(2) .circle2{
	 background-color: #f3ae3b;
	 margin-left: auto;
}
	
.circle2-cover:nth-child(3) .circle2{
	 background-color: #33bf76;
}

 .circle2 {
	text-align: center;
	border-radius: 50%;
	max-width:280px;
	margin: 0 auto;
	aspect-ratio:1/1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

 .circle2-text {
	color: #fff;
	transition:all 0.5s ease;
	-webkit-transition:all 0.5s ease;
	height: 100%;
	line-height: 1;
}

 .circle2-text1 {
	font-size: 260%;
	line-height: 1.3;
}

 .circle2-text2 {
	font-size: 400%;
	font-weight: bold;
	line-height: 1.3;
}

 .circle2-text3 {
	font-size: 260%;
	font-weight: bold;
	line-height: 2;
}

@media screen and (max-width:799px){

	 .circle2-outer {
		padding-top: 1em;
	}

	.circle2-wrapper {
		padding: 1em 0;
	}

	 .circle2-cover {
		width: calc(100% / 3);
	}

	 .circle2 {
		text-align: center;
		border-radius: 50%;
		width: 140px;
		max-width:140px;
	}

	 .circle2-text1 {
		font-size: 110%;
	}

	 .circle2-text2 {
		font-size: 220%;
		font-weight: bold;
	}

	 .circle2-text3 {
		font-size: 125%;
		font-weight: bold;
		line-height: 2;
	}
}

/* ==================================
header
================================== */

header .waku{
	padding: 0;
}

header .contents{
    border-bottom: solid 4px #181b3e;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

header .button-wrapper{
	padding-top: 0;
	display: flex;
}

header img{
	height: 60px;
}

@media screen and (max-width:799px){

	header .contents {
		padding: 0.5em 0.3em 0.5em 0;
	}

	header .button-cover {
		padding-left: 0.2em;
		padding-right: 0.2em;
	}

	header .button-cover + .button-cover {
		padding-top: 0;
	}

	header img{
		height: 50px;
	}	
}

/* ==================================
fv
================================== */

#fv .waku{
	padding-top:1em;
}

@media screen and (max-width:799px){	
}

/* ==================================
cta
================================== */

#cta .waku{
	padding-top:0;
}

#cta .caption2-cover{
	padding-top: 3em;
}

#cta .img-cover2{
	padding-top: 2em;
}

@media screen and (max-width:799px){

	#cta .caption2-cover{
		padding-top: 1em;
	}

	#cta .img-cover2 {
		padding-top: 1em;
	}
}

/* ==================================
hosyou
================================== */

#hosyou .waku{
	padding-top: 3em;
}

/* hosyou2 */
#hosyou2 .caption3-cover{
	padding-top: 5em;
}

#hosyou2 .contents-cover {
	padding: 3em 1em 0;
}

#hosyou2 .contents{
	line-height: 2.5;
}

#hosyou2 .img-cover{
	width: 50px;
}

#hosyou2 .text{
	font-size: 200%;
	font-weight: bold;
	padding-left: 0.5em;
    padding-right: 0.5em;
	width: calc(100% - 50px);
}

/* hosyou3 */
#hosyou3 .caption3-cover {
    padding-top: 5em;
}

#hosyou3 .square-img-cover {
	padding: 2em 1em 0;
}

#hosyou3 .square-img-cover > img{
	aspect-ratio: 4/3;
	object-fit: cover;
	width: 100%;
	height: 100%;
	overflow: hidden;
	object-position:50% 50%;
}

#hosyou3 .square:nth-child(4) .square-img-cover > img{
	object-position:50% 80%;
}

#hosyou3 .square:nth-child(6) .square-img-cover > img{
	object-position:0% 50%;
}

#hosyou3 .square:nth-child(7) .square-img-cover > img{
	object-position:100% 50%;
}

#hosyou3 .text-under-cover{
	padding-top: 2em;
}

#hosyou3 .text-under{
	font-size: 250%;
	text-align: center;
	font-weight: bold;
	color: #900;
}

#hosyou3 .square-text1{
	color: #fff;
	background-color: #091c49;
	border-radius: 0.5em;
	font-size: 170%;
	display: block;
	padding: 0.3em 0;
	width: 100%;
	text-align: center;
}

@media screen and (max-width:799px){

	#hosyou .waku {
		padding-top: 1em;
	}

	#hosyou2 .caption3-cover{
		padding-top: 3em;
	}

	#hosyou2 .contents-cover {
		padding: 1em 0.5em 0;
	}

	#hosyou2 .contents + .contents{
		padding-top: 1em;
	}
	
	#hosyou2 .img-cover > img {
		width: 50px;
	}

	#hosyou2 .text {
		font-size: 125%;
		line-height: 1.3;
		padding-top: 0.3em;
	}

	#hosyou3 .caption3-cover {
		padding-top: 3em;
	}

	#hosyou3 .square-img-cover {
		padding: 1em 0.5em 0;
	}

	#hosyou3 .text-under-cover {
		padding-top: 1em;
	}

	#hosyou3 .text-under{
		font-size: 170%;
	}

	#hosyou3 .square-text1{
		font-size: 120%;
	}
}

/* ==================================
reason
================================== */

	#reason1 .contents-wrapper{
		padding:0 0.5em;
	}

	#reason1 .contents-cover {
		width: 100%;
		padding:5em 0 0;
	}

	#reason1 .contents-cover:nth-child(2n) .img-text{
		flex-direction: row-reverse;
	}

	#reason1 .contents-cover:nth-child(2n) .text {
		margin-right: auto;
	}

	#reason1 .title {
		text-align: center;
		font-size: 170%;
		background-color: #091c49;
		color: #fff;
		border-radius: 5px;
		padding: 0.3em 0;
	}

	#reason1 .img-text-cover {
		padding: 3em 1em 0;
	}

	#reason1 .img-cover {
		width: 37%;
		padding: 0 1em;
	}

	#reason1 .img-cover > img{
		aspect-ratio: 4/3;
		object-fit: cover;
		width: 100%;
		height: 100%;
		overflow: hidden;
		object-position:50% 50%;
	}

	#reason1 .contents-cover:nth-child(1) .img-cover > img{
		object-position:25% 50%;
	}

	#reason1 .contents-cover:nth-child(2) .img-cover > img{
		object-position:100% 50%;
	}

	#reason1 .contents-cover:nth-child(3) .img-cover > img{
		object-position:100% 50%;
	}

	#reason1 .text-cover{
		width: 63%;
	}

	#reason1 .text {
		width: 95%;
		margin-left: auto;
		font-size: 120%;
	}

@media screen and (max-width:799px){

	#reason1 .contents-wrapper{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}

	#reason1 .contents-cover {
		width: 100%;
		padding: 2em 0 0;
	}

	#reason1 .title {
		text-align: center;
		font-size: 150%;
		background-color: #091c49;
		color: #fff;
	}

	#reason1 .img-text-cover {
		padding: 2em 1em 0;
	}

	#reason1 .contents-cover:nth-child(2n) .img-text {
		flex-direction: column;
	}

	#reason1 .img-text {
		flex-direction: column;
	}

	#reason1 .img-cover {
		padding:0em 2em 0;
		width: 100%;
	}

	#reason1 .img-cover > img{
		aspect-ratio: 5/3;
	}

	#reason1 .text-cover{
		padding-top: 1em;
		width: 100%;
	}

	#reason1 .text {
		width: 100%;
	}
}

/* ==================================
voice
================================== */

#voice1 .contents-outer{
	padding:0 0 0;
	flex-direction: column;
}

#voice1 .contents-wrapper {
	padding-top: 3em;
}

#voice1 .contents-cover{
	width:100%;
	padding:2em 0 2em;
	margin: 0 auto;
	background-color: #f7f7f7;
	border: 3px solid #ccc;
}

#voice1 .title1-wrapper{
	justify-content:center;
}

#voice1 .title1-cover {
	padding: 0 1em;
}

#voice1 .title1{
	border: solid 2px #c60;
}

#voice1 .title1-1,
#voice1 .title1-2 {
	font-size: 115%;
	padding: 0.5em 2em;
}

#voice1 .title1-1{
	background-color: #fbd08b;
}

#voice1 .title1-2{
	background-color: #fff;
}
	
#voice1 .title2-wrapper {
	padding-top:3em;
	text-align: center;
}

#voice1 .title2-cover {
	display: inline-block;
	background-color: #c60;
	padding: 0.5em 1em;
	border-radius: 0.5em;
	width: 70%;
}

#voice1 .title2 {
	font-size: 160%;
	color: #fff;
}

#voice1 .fee-cover {
	padding-top:1.5em;
}

#voice1 .fee {
	padding: 1em 0;
	justify-content: center;
	align-items: baseline;
}

#voice1 .fee1,
#voice1 .fee2 {
	font-weight: bold;
}

#voice1 .fee1 {
	font-size: 150%;
	padding: 0;
	color: #f60;
}

#voice1 .fee2 {
	font-weight: 900;
	font-size: 400%;
	padding: 0 0 0 0.5em;
	line-height: 1;
	color: #c30;
}
#voice1 .fee2 span {
	font-size:70%;
}

#voice1 .img-text-cover{
	padding: 2em 1.5em 0;
}

#voice1 .img-text{
	border:solid 1px #c60;
	padding: 1.5em;
	background-color: #fff;
}

#voice1 .img-cover{
	width: 35%;
}

#voice1 .text-cover {
	width: 65%;
	padding-left:1.5em;
}

#voice1 .text {
	font-size: 120%;
}

@media screen and (max-width:799px){

	#voice1 .contents-wrapper {
		padding-top: 2em;
	}

	#voice1 .contents{
		padding:0 1em;
	}

	#voice1 .title1-wrapper{
		justify-content:space-between !important;
	}

	#voice1 .title1-cover {
		padding: 0;
	}

	#voice1 .title1-1,
	#voice1 .title1-2 {
		font-size: 98%;
		padding: 0.5em;
	}

	#voice1 .title2-cover {
		padding: 0.5em 1em;
		width: 100%;
	}

	#voice1 .title2 {
		font-size: 130%;
	}

	#voice1 .fee2 {
		font-size: 320%;
		padding-left: 0.3em;
	}

	#voice1 .img-text-cover{
		padding: 1.5em 0 0;
	}

	#voice1 .img-text{
		padding: 0.5em 1em;
	}

	#voice1 .img-cover{
		width: 35%;
	}
	
	#voice1 .text-cover {
		width: 65%;
		padding-left:1em;
	}

	#voice1 .text {
		font-size: 100%;
	}
}

/* ==================================
satei
================================== */

#satei .caption5-cover {
    padding-left: 1.5em;
    padding-right: 1.5em;
}

#satei .contents-cover{
	padding: 3em 0 0;
}

#satei .caption5-text{
	color: #fff;
	font-size: 180%;
}

#satei .img-cover {
	width: 920px;
    margin: 0 auto;
}

#satei .img-cover > img {
    aspect-ratio: 1/1;
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: 50% 10%;
}

#satei .text-wrapper {
	padding-top: 1em;
}

#satei .text-cover {
	padding-top: 1em;
	padding-left:10em;
	padding-right:3em;
}

#satei .text {
	font-size: 135%;
}

@media screen and (max-width:799px){

	#satei .contents-cover {
		padding:2em 0 0;
		margin: 0 auto;
	}

	#satei .img-cover {
		width: auto;
		padding:0 0.5em;
	}

	#satei .img-cover > img {
		height: 170px;
	}

	#satei .caption5-cover {
		padding-left: 1em;
		padding-right: 1em;
	}

	#satei .caption5-text{
		font-size: 120%;
	}

	#satei .text-cover {
		padding: 1em 0.5em 0;
	}

	#satei .text {
		font-size: 110%;
	}
}

/* ==================================
nitsuite
================================== */

#nitsuite .square-cover{
	padding:2em 1em 0;
}

#nitsuite .square{
	width: 100%;
	padding: 0;
}

#nitsuite .square-img-cover{
	width: 40%;
}

#nitsuite .square-text-cover{
	width: 65%;
	padding-top: 0;
}

#nitsuite .square-text2 {
	height: auto;
	padding: 0 0 0 1em;
	font-size: 180%;
}

#nitsuite .circle2-outer {
    padding-top: 3em;
}

#nitsuite .contents-cover {
    padding-top: 0em;
    width: 100%;
    margin: 0 auto;
}

#nitsuite .contents {
	background-color: #eaeffa;
	padding: 1em 0 3em;
	width: 100%;
}

#nitsuite table{
	border-collapse: collapse;
    font-size: 120%;
    margin: 0 auto;
}

#nitsuite th {
	width: 20%;
	text-align: right;
	padding-top: 2em;
}

#nitsuite td {
	width: 80%;
	padding-left: 3.5em;
}

@media screen and (max-width:799px){

	#nitsuite td {
		padding-left:1.5em;
	}

	#nitsuite .circle2-outer {
		padding-top: 2em;
	}

	#nitsuite .circle2-wrapper {
		padding: 1em 0.8em;
	}

	#nitsuite .square-cover{
		padding:2em 1.3em 0;
	}

	#nitsuite .square {
		padding: 0em 0 0;
	}

	#nitsuite .square-text2 {
		font-size: 110%;
	}

	#nitsuite .contents-cover {
		width: 100%;
		padding: 1.5em 0 0;
	}
}

/* ==================================
question
================================== */

#question .contents-cover {
    padding: 1.5em 0em 0;
}

#question .caption5-wrapper {
    padding-top:0;
}

#question .caption5-cover{
	cursor:pointer;
}

#question p.caption5-cover{
	padding-top: 0.5em;
	display:none;
	cursor:pointer;
	width:100% !important;
	padding-left:0em !important;
	padding-right:0em !important;
}

#question .caption5-right{
	width: calc(87% - 67px);
}

#question p.caption5-cover .caption5-right{
	width: 87%;
}

#question .caption5-img-cover > img{
	width: auto;
	height: 100px;
}

#question .caption5-text {
    font-size: 160%;
    padding:0.5em calc(1.1em - 0.5em);
	min-height: 100%;
}

#question .caption5-text-a {
    padding: 0.5em 1.1em;
}

#question .cell h3.open:after {
	content:"▲";
	color: #26448d;
	background-color: #dbe4f5;
	border-top-right-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding-right: 1.1em;
	min-height: 100%;
}

#question .cell h3:after {
	content:"▼";
	margin-left:auto;
	font-size:200%;
	color: #26448d;
	background-color: #dbe4f5;
	border-top-right-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding-right: 1.1em;
	min-height: 100%;
}

@media screen and (max-width:799px){

	#question .caption5-right {
		width: calc(87% - 32px);
	}

	#question .caption5-img-cover{
		padding-right: 1px;
	}

	#question .caption5-img-cover > img {
		height: auto;
	}

	#question .caption5-text {
		font-size: 100%;
		text-indent: 0;
		line-height: 1.3;
		padding: 0.5em 0 0.5em 0.7em;
	}

	#question .caption5-text-a {
		font-size: 100%;
		line-height: 1.3;
		padding: 0.5em 1em;
	}

	#question .caption5-cover .caption5-left {
		background-color: #26448d;
	}

	#question p.caption5-cover .caption5-left{
		background-color: #a33001;
	}

	#question .cell h3:after {
		font-size: 100% !important;
		padding-right: 1em;
		margin-left: -1px;
	}

	#question .cell h3.open:after {
		margin-left: -1px;
	}
}

/* ==================================
form
================================== */

#form .text-cover{
	padding-top: 1em;
}

#form .text-cover{
	text-align: center;
	font-size: 180%;
	font-weight: bold;
}

@media screen and (max-width:799px){

	#form .text-cover {
		padding-top: 0.5em;
		font-size: 150%;
		line-height: 1.4;
	}
}

/* ==================================
footer
================================== */

footer{
	background-color: #091c49;
}

footer .waku {
    padding: 3em 0 3em;
}

footer .contents{
	padding-top: 0;
}

footer .contents{
	padding-top: 0;
	text-align: center;
}

footer .text-cover{
	color: #fff;
	font-size: 120%;
	line-height: 2;
	padding-top: 1.5em;
	padding-bottom: 3em;
}

footer .logo img {
	height:80px;
}

@media screen and (max-width:799px){	
}

/* ==================================
footer nav button
================================== */

#footer-nav-button{
	padding-top: 2em;
}

#footer_btn{
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
	width: 100%;
	min-width: 960px;
	max-width: 1920px;
	margin:0 auto;	
	padding-top: 1em;
	padding-bottom: calc(1em + env(safe-area-inset-bottom));
	background-color: #fff;
}

#footer_cta .button-all {
    padding-top: 0em;
}

#footer_cta .button-wrapper{
    padding-top: 0em;
}

@media screen and (max-width:799px){

	#footer-nav-button {
		padding-top: 0;
	}

	#footer_btn {
		position: fixed;
		padding:0;
		z-index: 1;
		width: 100%;
		min-width: 480px;
		max-width: 480px;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
	}

    #footer_cta{
        justify-content:space-between;
    }

	#footer_cta .button-all{
		padding-left: 0.2em;
		padding-right: 0.2em;
	}

	#footer_cta .button-wrapper{
		display: flex;
	}

	#footer_cta .button-cover {
		padding-left: 0.1em;
		padding-right: 0.1em;
	}

	#footer_cta .button-cover + .button-cover {
		padding-top:0;
	}

	#footer_cta .button > img {
		height: auto;
	}
}

/* ==================================
privacy policy 別ページ
================================== */
.privacy .all-center-960{
	width:800px;
}

.privacy .contents{
	font-size:90%;
	padding:2em 1em 3em;
}

.privacy h1{
	font-size: 120%;
	font-weight: bold;
}

.privacy .h2{
	font-size: 110%;
	font-weight: bold;
}

.privacy .jyou-ajust{
	font-weight: bold;
	padding-top: 1em;
}

.privacy ul > li {
	list-style:disc;
	margin-left:2em;
}
.privacy ol > li {
	list-style:decimal;
	margin-left:1.2em;
}

/* =================================================================
web form
====================================================================  */
form#mailformpro {
	display:block;
	width:900px;
	max-width:100%;
	margin:0 auto;
	padding-bottom:3em;
}


#mailformpro dl#mailform-list dt ,
#mailformpro dl#mailform-list dd {
	float:none;
	padding:1em 0.5em 2em;
	font-size:105%;
	line-height:1.4;
	font-weight:bold;
	border:0 none;
}

#mailformpro dl#mailform-list dt .must {
	display:inline;
	float:none;
	margin:0;
	padding:0px 0.5em;
	font-size:75%;
	border-width:1px;
	background:#c00;
	box-shadow:none;
}

#mailformpro dl#mailform-list dd input ,
#mailformpro dl#mailform-list dd textarea {
	font-size:120%;
	line-height:1.3;
	padding:0.4em 0.5em;
	border:1px solid #999;
	border-radius:0.3em;
	box-shadow:none;
}
#mailformpro dl#mailform-list dd .memo {
	font-size:80%;
	color:#666;
} 

#mailformpro dl#mailform-list dd input[name="お名前"] ,
#mailformpro dl#mailform-list dd input[name="電話番号"] ,
#mailformpro dl#mailform-list dd input[name="email"] ,
#mailformpro dl#mailform-list dd input[name^="住所"] {
	width:100% !important;
}
#mailformpro dl#mailform-list dd textarea {
	width:100% !important;
}
#mailformpro dl#mailform-list dd textarea[rows="5"] {
	height:5em !important;
}
#mailformpro dl#mailform-list dd textarea[rows="10"] {
	height:10em !important;
}
@media screen and (max-width:799px){
	#mailformpro dl#mailform-list dd input[name="都道府県"] {
		width:50% !important;
	}
	#mailformpro dl#mailform-list dd input[name^="住所"] {
		width:75% !important;
	}
}


#mailformpro #send_buttons {
	text-align:center;
}
#mailformpro .mfp_element_submit {
	width:50%;
	padding:0.8em;
	color:#fff;
	font-size:120%;
	font-weight:bold;
	text-shadow:none;
	background:#00a0e8;
	border-color:#666;
	border-radius:0.3em;
}
#mailformpro .mfp_element_submit:hover {
	box-shadow:1px 1px 0.5em #999;
}

#mailformpro div.mfp_err {
	font-size:100%;
	background-position:0 0.5em;
}


#mfp_overlay h4 {
	font-size:100%;
}
#mfp_overlay table#mfp_confirm_table tr th ,
#mfp_overlay table#mfp_confirm_table tr td {
	font-size:100%;
}
#mfp_overlay .mfp_element_button {
	margin:0 0.3em;
	padding:0.5em 1em;
	color:#fff;
	font-size:100%;
	font-weight:bold;
	text-shadow:none;
	background:#00a0e8;
	border-color:#666;
	border-radius:0.3em;
}
#mfp_overlay .mfp_element_button:hover {
	box-shadow:1px 1px 0.3em #999;
}


@media screen and (min-width:800px){
	#mailformpro dl#mailform-list {
		display:flex;
		justify-content:flex-start;
		align-items:stretch;
		flex-wrap:wrap;
	}
	#mailformpro dl#mailform-list dt {
		width:25%;
	}
	#mailformpro dl#mailform-list dd {
		width:75%;
	}

	#mailformpro dl#mailform-list dt .head {
		display:block;
		text-align:right;
	}

	#mailformpro div.mfp_err {
		font-size:110%;
	}
}
@media screen and (max-width:799px){
	#mailformpro dl#mailform-list dt {
		padding-bottom:0;
	}
	#mailformpro dl#mailform-list dd {
		padding:0.5em 1em 1.5em;
		text-align:center;
	}

	#mailformpro dl#mailform-list dt .must {
		margin-left:0.5em;
	}
}


#thanks {
}
#thanks .all-center-960 {
	padding:2em 1em 6em;
}
#thanks div#mfp_thanks {
	padding:1em 0 2em;
}

#thanks p {
	padding-top:0.5em;
}


@media screen and (min-width:800px){
	#thanks .all-center-960 {
		width:720px;
	}
}



