@charset "utf-8";
	
*{
	margin: 0;
	padding: 0;
	line-height:1.5;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	text-decoration:none;
}
.clear{
	clear:both !important;
}
.clearfix:after{
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}
.clearfix{
	min-height: 1px;
	position:relative;
}
* html .clearfix{
	height: 1px;
	height: auto;
	overflow: hidden;
}
img{
	border:0;
}

div .logo{
	margin:10px 0 30px 0;
}
body{
	font-size:12px;
}

/*----------------------------------------------*/

#wrapper,#wrapper2{
	width:100%;
	max-width:950px;
	margin:0 auto;
	overflow: hidden;
}
#header{
	/*height:110px;*/
	/*margin-bottom:15px;*/
	padding:20px 20px 0 20px;
}
.logo{
	max-width:140px;
}

/*----------------------------------------------*/
.content{
	width:auto;
	max-width:840px;
	margin:0 auto 40px;
	/*padding:40px 30px;
	*/
}
.nai{
	margin: 1em;
}
h1{
	padding: 0.3em 0.8em;
	margin:0 auto;
	margin-bottom:0.25em;
	margin-top:1em;
	margin-left:0.5em;
	margin-right:0.5em;
	color: #fff;
	background:linear-gradient(#45659b 0%,#45659b 50%,#25497c 50%,#25497c 100%);
	font-size:22px; 
	border-radius:5px;
	max-width:890px;
	text-align:center;
} 
.tit {
	margin: 1.5em 1em 0 1em;
	font-size:15px; 
}
.topcome {
	margin: 1.5em 1em 0 1em;
	font-size:16px; 
	font-weight:700;
    padding : 0.1em 0.5em ;
    border-left : solid 10px #45659b;
    border-bottom : solid 1px #45659b;
}
dt{ 
}  
dd {
	padding-left:1em;
	margin: 0.5em 1em 0.5em 1em;
	font-size:15px; 
	line-height:1.5;
}
dd a {
	text-decoration: none;
}
dd a:hover {
	text-decoration: underline;
}
p{
	margin-left: 1em;
	font-size:15px; 
	line-height:1.5;
}
.indent {
  text-indent: -1em;
  padding-left: 1em;
}

.right{
	text-align:right;
	margin-right:1em;
}
.right span{
	font-size:17px; 
	font-weight:700;
}
/*----------------------------------------------*/
#footer{
	width: 100%;
	text-align: center;
	border-top:solid 2px #A9A9A9;
	margin:2em 0;
	padding-bottom:3em;
	padding-top:4em;
}
#footer a{
	color:#45659b;
	text-decoration:none;
	font-size:15px;
}
#footer ul{
	list-style-type: none;
	margin:1em 0;
}

#footer li{
	float: left;
	margin:1em 2em;
}
#footer li:after {
	font-family: FontAwesome;
	content: '\f054'; /* アイコンのunicode */
	padding-left:0.5em;
	color:#E10098;
}


@media screen and (max-width: 600px) {
	#footer li{
		clear:both;
		margin:1em 0;
		padding:0;
		padding-bottom:2em;
		width:100%;
		border-bottom:solid 1px #A9A9A9;
	}
}
/*----------------------------------------------*/
hr{
	height: 1px;
	border: none;
	border-top: 3px #E0E0DB dotted;
	margin:15px 0;
	* margin:0px 0 20px;
}

/*----------------------------------------------*/
.page-top{
	position: fixed;
	bottom:0;
	right: 20px;
	width:100px;
	height:40px;
}
.page-top a{
	display:block;
	width:100px;
	height:40px;
}
.page-top a:hover{
	background: url(../img/pagetop_on.png) no-repeat;
}
.btm{
	height: 40px;
	width: 100px;
}
/*----------------------------------------------*/
.inner .excla{
	background:url(../img/excla.png) no-repeat 20px center  !important;
	padding-left:60px !important;
}


.bold{
	font-weight:bold !important;
}
.fn-24{
	font-size:24px !important;
}
.mt-0{
	margin-top:0 !important;
}
.mt-20{
	margin-top:20px !important;
}
.mt-35{
	margin-top:35px !important;
}
.mt-50{
	margin-top:60px !important;
}
.mb-0{
	margin-bottom:0 !important;
} 
.mb-10{
	margin-bottom:10px !important;
}
.mb-20{
	margin-bottom:20px !important;
}
.mb-30{
	margin-bottom:30px !important;
}
.mb-50{
	margin-bottom:50px !important;
}
.mb-80{
	margin-bottom:80px !important;
}
.mr-20{
	margin-right:20px !important;
}
.mr-30{
	margin-right:30px !important;
}
.mc-20{
	margin-left:20px !important;
	margin-right:20px !important;
}



.fl-r,.fl-rpul{
	float:right !important;
}
.fl-l{
	float:left !important;
}

.nk{
	display: none;
}
@media screen and (min-width: 900px) {
	.pk{
		display: none;
	}
}

@media screen and (max-width: 900px) {
	.fl-r{
		display:none;
	}
	.fl-rpul{
		float:right !important;
		width:50px;
	}
	.hosyou ul{
		float: none;
	}
	.hosyou ul li{
		float:none;
		width:auto;
		margin:0 auto;
		margin:1em;
	}
	.strong{
		letter-spacing:1px;
	}
	#expense{
		background:none;
		width:100%;
		height:240px;
		margin:0 auto;
	}
	.plusimg{
		max-width: 80px;
	}
	#expense div{
		float:none;
		width:100%;
		max-width:320px;
		padding:0;
		margin:0 auto;
	}
	#expense div{
		float:left;
		width:100%x;
		padding:0;
	}
	#expense img{
		float:none;
		margin:0;
	}
	div.expense-r{
		width:278px !important;
		text-align:center;
	}
	.kk{
		display: none;
	}
	.mb-50{
		margin-bottom:10px !important;
	}
	.section h2{
		width:100%;
		font-size:20px;
		text-indent:0;
		letter-spacing:0;
		padding-left:1em;
	}

	#merit .fl-l{
		float:none !important;
	}
	#merit .mc-20 {
		margin-left:0 !important;
		margin-right:0 !important;
	}
	#merit .mb-10{
		margin-bottom:0 !important;
	}
	.kind h2{
		font-size:17px;
		letter-spacing:0;
	}
	#mente .pack{
		width:auto;
		float:none;
		margin:20px;
	}
	.mente-s .pack{
		height:auto;
	}
	#mente p{
		font-size:13px;
	}
	#mente h4{
		font-size:16px;
	}
	.mente .description p,
	.mente-s .description p{
		font-size:18px;
		line-height:1.2;
		margin:2em 3em 0 1em;
	}
	.section.main{
		padding:1em;
	}
	#packThere{
		/*含む料金*/
		width:100%;
		margin-right:3%;
	}
	#packNone{
		/*含まない料金*/
		width:100%;
	}
	#packThere th,#packThere td ,#packNone th,#packNone td {
		display:list-item;
		list-style:none;
	}
	#packNone .sub{
		background:#CCC;
		height:auto;
		font-size:15px;
	}
	.square_btn{
		display: inline-block;
		padding: 0.5em 0;
		text-decoration: none;
		background: red;/*ボタン色*/
		border-bottom: solid 4px #627295;
		border-radius: 3px;
		color:#fff;
		font-size:18px;
		font-weight:bold;
		width:100%;
		margin:0 auto;
		text-align:center;
	
	}
	.square_btn:active {/*ボタンを押したとき*/
		-ms-transform: translateY(4px);
		-webkit-transform: translateY(4px);
		transform: translateY(4px);/*下に動く*/
		box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);/*影を小さく*/
		border-bottom: none;
	}

}

@media screen and (max-width: 870px) {
h1{
	font-size:18px; 
	margin:0.5em;
} 
dd {
	padding-left:0.5em;
	margin: 0.5em;
	font-size:15px; 
	line-height:1.5;
}
}
.clear{
	clear:both;
}

@media screen and (max-width: 1100px) {
    .br-pc { display:none; }
}
@media screen and (min-width: 487px) {
    .br-sp { display:none; }
}
/*@media print {
    .br-pc { display:none; }
}*/

  table, tbody, tr, th, td {
    display: block;
    width: 100%;
  }
  
  /* セル同士の余白やボーダーの調整 */
  th, td {
    padding: 10px;
    box-sizing: border-box;
  }
  
  /* 行ごとの区切りを入れる場合 */
  tr {
    margin-bottom: 20px;
    border: 1px solid #ccc;
  }
  td span{
    background: blue;
    color:#ffffff;
    padding:0.5em 1em;
  }

.parent {
  display: flex;
  flex-wrap: wrap; /* 子要素を折り返す指定 */
  gap: 16px;
}
.h-nai{
    padding: 10px;
    border: 1px solid #ccc;
    line-height:2;
    margin-bottom:10px;
  width: calc(50% - 8px); 
  box-sizing: border-box;
    
}
.h-nai2{
    padding: 10px;
    border: 1px solid #ccc;
    line-height:2;
    margin-bottom:10px;
}
.h-nai3{
    padding: 10px;
    border: 1px solid #ccc;
    line-height:2;
    margin-bottom:10px;
  width: calc(33% - 8px); 
  box-sizing: border-box;
    
}

.h-tit{
    /*background: #d70035;*/
    background: #25497c;
    color:#ffffff;
    padding:0.5em 1em;
    margin-bottom:10px;
    font-weight:700;
  }
.nobrk-group {
  /* グループ内の自動改行を禁止し、ひとかたまりとして扱います */
  white-space: nowrap; 
}
@media screen and (max-width: 870px) {
.h-nai,
.h-nai3{
    padding: 10px;
    border: 1px solid #ccc;
    line-height:2;
    margin-bottom:10px;
  width: calc(50% - 8px); 
  box-sizing: border-box;
    
}
}
@media screen and (max-width: 640px) {
.parent {
 display: block;
}
.h-nai,
.h-nai3{
  width: 100%; 
    
}
}
dl{
	margin-bottom:8em;
}