@charset "utf-8";
body, div, p, ul, ol, li, dl, dt, dd, table, th, td, img, h1, h2, h3, h4, h5, h6, form, select, input, nav, strong , em{
	margin: 0px;
	padding: 0px;
	border:none;
	font-size:16px;
	font-weight:normal;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
html{
  scroll-behavior: smooth;
}
.clear{
	clear:both;
}
.hide{
	display:none;
}
a{
	color:#164589;
}
a:hover{
	color:#FF8D57;
	text-decoration:none;
}
#page_slide{
	width:100%;
	height:70px;
	position: fixed;
	z-index:9999;
}
#head_area{
	width:100%;
	height:71px;
	border-bottom:1px solid #164589;
	background-color:#f3f2f7;
	position:relative;
}
h1{
	width:249px;
	height:70px;
}
h1 a{
	width:249px;
	height:70px;
	display:block;
	background:url(../images/logo.jpg) no-repeat;
	background-size:100% auto;
	text-indent:-9999px;
	position:relative;
	top:0px;
	left:0px;
}
nav{
	display:none;
}
#tel_area{
	display:none;
}
#top_img01{
	padding-top:70px;
}
#top_img02_area{
	width:100%;
	position:relative;
	top:0px;
	right:0px;
}
p#top_img02{
	width:100%;
	text-align:center;
	margin-top:-120px;
}
p#top_img03{
	text-align:center;
	margin-top:-70px;
	margin-bottom:20px;
}
p#top_img03_s{
	display:none;
}
.wrapper_b{
	background:#DFEFEC;
	padding:0px 0px 140px;
}
.wrapper_g{
	background:#efefef;
}
.wrapper_db{
	background:#164589;
}
h2{
	text-align:center;
	color:#164589;
	font-size:28px;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	margin-bottom:20px;
}
#flower_img{
	width:100%;
	height:250px;
	background:url(../images/flower_img.png) bottom no-repeat;
	background-size:100% auto;
	margin-bottom:30px;
}
#info_top{
	padding-top:70px;
}
#info_img01_area{
	width:100%;
	margin-top:-180px;
	margin-bottom:30px;
}
p#info_img01{
	width:100%;
	text-align:center;
}
#info{
	line-height:2em;
	width:480px;
	margin:0px auto;
}
#info p{
	margin-bottom:25px;
}
#setsubi{
	width:610px;
	margin:0px auto;
}
#setsubi h3{
	font-weight:bold;
	font-size:18px;
	color:#164589;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	margin-bottom:15px;
}
#setsubi #setsubi_l{
	width:610px;
	line-height:2em;
}
#setsubi #setsubi_r{
	width:250px;
	float:left;
	margin-top:40px;
	margin-left:20px;
}
#setsubi_list_area{
	width:600px;
	margin:25px auto;
	overflow:hidden;
}
#setsubi_list_area ul{
	list-style:none;
	width:640px;
}
#setsubi_list_area ul li{
	width:280px;
	height:280px;
	float:left;
	margin-right:40px;
	margin-bottom:40px;
}
#setsubi_list_area ul li h4{
	margin:10px 0px;
	color:#164589;
	font-weight:bold;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}
#setsubi_list_area ul li img{
	border-radius:10px;
}
#access_area{
	width:600px;
	margin:0px auto;
}
#access_area h3{
	font-weight:bold;
	font-size:28px;
	color:#164589;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	margin-bottom:15px;
}
#access_area p{
	margin-bottom:10px;
}
#plan_area h2{
	color:#fff;
	font-weight:bold;
}
#plan_top{
	padding-top:70px;
}
#plan_img{
	width:100%;
	height:250px;
	background:url(../images/plan_img.png) center no-repeat;
	background-size:100% auto;
	margin-bottom:30px;
}
div#plan{
	width:700px;
	margin:0px auto;
}
div#plan p{
	margin-bottom:10px;
	line-height:2em;
	color:#fff;
}
div#plan p span{
	font-size:12px;
}
div#plan ul{
	margin-left:40px;
	margin-bottom:10px;
	line-height:2em;
	color:#fff;
}
p.plan_list{
	width:750px;
	margin:0px auto;
}
#contact_top{
	padding-top:70px;
}
p#contact_img{
	width:100%;
/*	height:250px;
	background:url(../images/contact_img.jpg) bottom no-repeat;
	background-size:100% auto;*/
	margin-bottom:30px;
}
#contact_area{
	width:700px;
	margin:0px auto;
}
#contact_area table{
	border-collapse: collapse;
	position:relative;
}
#contact_area table th , #contact_area table td{
	border:1px solid #acc7fa;
	padding:30px 30px;
}
#contact_area table th{
	width:130px;
	text-align:left;
	background:#F0FAFF;
	font-weight:bold;
	color:#555555;
	position:relative;
	padding-top:28px;
	padding-left:55px;
}
#contact_area table th.hissu::before{
	content: "必須";
	background:#164589;
	color:#fff;
	padding:2px 4px;
	border-radius:8px;
	font-size:12px;
	position:absolute;
	left:20px;
}

#contact_area table td{
	text-align:left;
}
#contact_area table td input{
	padding:3px;
	border:1px solid #cccccc;
	border-radius:3px;
}
#contact_area table td textarea{
	width:100%;
	height:200px;
	padding:3px;
	border:1px solid #cccccc;
	border-radius:3px;
}
#contact_area table td span{
	font-size:14px;
	color:#555555;
}
#contact_area table td p.error{
	font-size:14px;
	color:#FF8D57;
}
p#policy{
	margin-top:10px;
	font-size:14px;
	text-align:center;
}
p#kakunin{
	width:200px;
	margin:30px auto;
}
p#kakunin input{
	padding:10px 20px;
	background:#164589;
	color:#fff;
	font-size:22px;
	font-weight:bold;
	border-radius:10px;
	margin-bottom:70px;
}
p#kakunin input:hover{
	cursor : pointer;
	opacity:0.7;
}
p#group_img{
	width:100%;
	height:250px;
	background:url(../images/group_img.png) bottom no-repeat;
	background-size:100% auto;
	margin-bottom:30px;
}
#group_list{
	width:700px;
	margin:40px auto 0px;
	padding-bottom:40px;
}
#group_list p{
	text-align:center;
	font-size:14px;
	margin-bottom:10px;
}
#group_list h4{
	text-align:center;
	margin-bottom:10px;
	font-weight:bold;
	color:#164589;
}
#group_l,group_r{
	width:330px;
	float:left;
}
#group_l{
	float:left;
}
#group_r{
	float:right;
}
footer{
	background:#164589;
	margin-top:0px;
}
#copy{
	text-align:center;
	padding:20px;
	color:#fff;
}
#saikochiku{
	width:900px;
	position:relative;
	margin:0px auto;
}
#saikochiku p{
	width:100px;
	font-size:12px;
	border:1px solid #333;
	text-align:center;
	padding:2px 0px;
	color:#333;
	position:absolute;
	right:0px;
	bottom:10px;
}
#ham-menu {
    background-color: #f3f2f7; /*メニュー背景色*/
    box-sizing: border-box;
    height: 100%;
    padding: 5px 20px; /*メニュー内左右上下余白*/
    position: fixed;
    right: -190px; /*メニュー横幅 width と合わせる*/
    top: 0;
    transition: transform 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    width: 190px; /*メニュー横幅*/
    z-index: 10000;
}
#menu-background {
    background-color: #333; /*黒背景*/
    display: block;
    height: 100%;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    width: 100%;
    z-index: -1;
}

#menu-icon {
	background:url(../images/s_nav.png) no-repeat center;
	background-size:100% auto;
    background-color: #f3f2f7; /*アイコン部分背景色*/
    border-radius: 0 0 0 10px; /*左下角丸*/
    color: #333; /*アイコン（フォント）色*/
    cursor: pointer;
    display: block;
    font-size: 50px; /*アイコン（フォント）サイズ*/
    height: 50px; /*アイコン縦高さ*/
    line-height: 50px; /*縦位置中央化*/
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    width: 50px; /*アイコン横幅*/
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    z-index: 10000;
}
#menu-cb {
    display: none; /*チェックボックス本体は消しておく*/
}

#menu-cb:checked ~ #ham-menu,
#menu-cb:checked ~ #menu-icon {
    transform: translate(-190px); /*メニュー本体横幅 width と合わせる*/
}
#menu-cb:checked ~ #menu-icon {
   	background:url(../images/s_nav_c.png) no-repeat;
	background-size:100% auto;
    background-color: #f3f2f7; /*アイコン部分背景色*/
    border-radius: 0 0 0 10px; /*左下角丸*/
    color: #000; /*アイコン（フォント）色*/
    cursor: pointer;
    display: block;
    font-size: 50px; /*アイコン（フォント）サイズ*/
    height: 50px; /*アイコン縦高さ*/
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    width: 50px; /*アイコン横幅*/
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    z-index: 10000;
	padding:0px 0px;
}
#menu-cb:checked ~ #menu-background {
    opacity: 0.5;
    z-index: 9999;
}

#ham-menu ul{
	list-style:none;
	border-bottom:1px solid #164588;
}
#ham-menu ul li{
	height:60px;
	border-top:1px solid #164588;
}
#ham-menu ul li a{
	height:45px;
	padding-top:20px;
	display:block;
	color:#164588;
	text-decoration:none;
}
#ham-menu #s_tel{
	width:155px;
	height:55px;
	background:url(../images/s_phone.png) no-repeat;
	background-size:100% auto;
	margin-left:-10px;
}
#ham-menu #s_tel a{
	width:155px;
	height:55px;
	display:block;
}
#ham-menu ul li.second_menu{
	text-indent:20px;
	font-weight:normal;
	border-top:1px dashed #000;
}
#ham-menu ul li.second_menu a{
	font-weight:normal;
}
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 10px;
}
#pageTop i {
  padding-top: 6px
}
#pageTop a {
  display: block;
  z-index: 999;
  padding: 8px 4px 0 4px;
  border-radius: 30px;
  width: 35px;
  height: 35px;
  background-color: #ecedf3;
  color: #707070;
  font-weight: bold;
  font-size:20px;
  text-decoration: none;
  text-align: center;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}