.content {
	width: 90%;
	max-width:1000px;
	margin: 0 auto;
	text-align:center;
}

 #point h3 {
	width:100%;
	color: #18519F;
	font-size:24px;
	font-size:2.4rem;
	font-weight:bold;
	line-height:1.2;
	margin:0 0 0.7em 0;
}

 #point h4 {
	width:100%;
	color: #FF8533;
	font-size:16px;
	font-size:1.6rem;
	font-weight:500;
	margin:0 0 0.8em 0;
}

.catch_01 {
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: 600;
	line-height:1.6;
	margin-bottom:1.5em;
	text-align: center;
}

.yellow_line {
	background: linear-gradient(
		transparent 70%, #F7F56F 0%);
}

.catch_02 {
	margin: 0 auto;
	text-align: center;
	display: block;
}

#point .catch_02 h3 {
	text-align:center;
}

#point .catch_02 p {
	text-align:center;
}

#point .catch_02 p.bold{
	font-size:20px;
	font-size:2rem;
	font-weight:600;
	margin-bottom:0.4em;
}

.catch_02 .catch_02_inner {
	background:#F9F9F9;
	text-align: center;
	margin: 0 auto;
	padding:2.4em 3em 2em 3em;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.catch_02 .catch_02_inner ul li {
	margin-bottom:0.5em;
	padding-left:1.2em;
    text-indent:-1.2em;
}

.point-cont2 {
	background:#20A3DD;
	margin:60px auto;
	padding:2em 0;
}

.point-cont2 figure {
	width:98%;
	margin:0 auto;
    text-align:center;
}

.point-cont2 figure img {
	max-width:100%;
	height:auto;
}

 /* -----------------------------------
	privacy
----------------------------------- */

.point-cont3{
	margin: 0 auto 50px auto;
}

dl.privacy dt{
	background:#EEE;
    font-weight:bold;
    margin:1.5em 0;
    padding:0.5em 0.8em;
}

/* -----------------------------------
	card-policy
----------------------------------- */

ul.card-policy{
    width: 100%;
	margin:0 auto;
	text-align:center;
}

ul.card-policy li{
    margin:0 0 1.5em 0;
}

ul.card-policy li.card-h1{
    background:#EEE;
    font-weight:bold;
    margin:0 0 1.5em 0;
    padding:0.5em 0.8em;
}

dl.policy_ol{
    width: 100%;
    zoom: 1;
}

dl.policy_ol dt{
    width: 2em;
    float: left;
    clear: both;
}

dl.policy_ol dd{
    padding: 0 0 0.5em 2em;
}

dl.policy_ol_2{
    width: 100%;
    overflow: hidden;
    zoom: 1;
}
dl.policy_ol_2 dt{
    width: 7em;
    float: left;
    clear: both;
	border-left:3px solid #404040;
	line-height:1;
	padding-left:6px;
}
dl.policy_ol_2 dd{
    padding: 0 0 0.5em 7em;
}

ul.card-policy li p,
dl.policy_ol dd p,
dl.policy_ol_2 dd p{
    margin:0 0 6px 0;
    padding: 0;
}

p.c-cution{
    font-size:13px;
    font-size:1.3rem;
    padding-left: 0.8em;
    text-indent: -0.8em;
}

@media screen and (max-width: 1024px) {
  #point h3 { font-size: 28px;font-size: 2.8rem;}
}

@media screen and (max-width: 864px) {
  .point-cont2 { margin:3em auto 1.5em auto; padding:0 0 1em 0;}
  .point-cont3{ margin: 0 auto 1.5em auto;}
  #point h3 { font-size: 3vw;}
  #point .catch_01 { font-size: 1.8rem;}
  #point .catch_02 p.bold { font-size: 1.7rem;}
  .catch_02 .catch_02_inner { padding: 1.8em 1.5em;}
  dl.policy_ol_2 dt{ width: 100%; float: none; border-left:3px solid #404040; margin-bottom:0.6em; padding-left:0.4em;}
  dl.policy_ol_2 dd{ width: 100%;padding: 0 0 1.5em 0;}
}

@media screen and (max-width: 559px) {
  #point h3 { font-size: 4vw;}
}
 
/* -----------------------------------
	stageup
----------------------------------- */

#stageup{
  width:100%;
  margin:20px auto;
  font-size: 110%;
  border:5px solid #004098;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
}

#stageup section{
  width:96%;
  margin:16px auto;
}

.stageup-1　{
  width:100%;
  max-width:697px;
  margin: 0 auto;
}
.stageup-1 img {
  width:100%;
  height:auto;
}

@media screen and (max-width:648px) {
  stageup-1 { width:90%;}
}

.hidden_box {
    margin: 1em 0 2em 0;
    padding: 0;
}

/*ボタン装飾*/
.hidden_box label {
	display: block;
    padding: 15px;
	font-size:155%;
    font-weight: bold;
	color:#FFF;
    background:#004098;
    border-radius: 5px;
    cursor :pointer;
    transition: .5s;
	text-align:center;
}

/*アイコンを表示*/
.hidden_box label:before {
    display: inline-block;
    content: '\f078';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-right: 5px;
    transition: 0.2s;
}

/*ボタンホバー時*/
.hidden_box label:hover {
    background: #C30C23;
}

/*アイコンを切り替え*/
.hidden_box input:checked ~ label:before {
     content: '\f00d';
     -webkit-transform: rotate(360deg);
     transform: rotate(360deg);
     color: #FFF;
}

/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 10px 0;
    height: auto;
    opacity: 1;
}

table.stageup1{
	width: 100%;
    font-size: 110%;
    border-collapse:collapse;
    border-spacing:0;
	margin-bottom:25px;
    empty-cells:show;
}
.stageup1 th{
	width: 10em;
	font-weight:normal;
    padding:2px;
}

.stageup1 td,.stageup2 td{
    padding:2px;
}

p.stage-text{
    font-size:110%;
	color:#003F97;
	font-weight:bold;
	margin-bottom:8px;
}
	
table.stageup2{
	width: 100%;
    font-size: 110%;
    border-collapse:collapse;
    border-spacing:0;
    empty-cells:show;
}
.stageup2 th{
	width:25em;
	font-weight:normal;
    padding:3px;
	text-align:left;
}

.stageup2 th ul li{
	width:11em;
	float:left;
	text-align:right;
}

.stageup2 th ul li:first-child{
	width:12em;
	text-align:right;
}

.stageup2 td:before{
	content:"：";
}

@media screen and (max-width: 600px) {
#stageup{
  width:100%;
  font-size: 100%;
  border:none;
}

#stageup section{
  width:92%;
  margin:0 auto;
}

.hidden_box label {
	font-size:135%;
}

table.stageup1{
	width: 100%;
    font-size: 100%;
    border-collapse:collapse;
    border-spacing:0;
	margin-bottom:25px;
    empty-cells:show;
}
.stageup1 th{
	width: 100%;
	display:block;
}

.stageup1 td,.stageup2 td{
	display:block;
}

p.stage-text{
    font-size: 110%;
}

table.stageup2{
	width: 100%;
    font-size: 100%;
}
	
.stageup2 th{
	width: 100%;
	display:block;
}

table.stageup2{
	width: 100%;
    font-size: 90%;
    border-collapse:collapse;
    border-spacing:0;
    empty-cells:show;
}

.stageup2 th ul li{
	text-align:left;
}

.stageup2 th ul li:first-child{
	text-align:left;
}

.stageup2 td,.stageup2 td{
	clear:both;
	display:block;
	margin-bottom:10px;
	padding-bottom:10px;
	border-bottom:1px solid #CCCCCC;
}
}