@charset "UTF-8";

/* リセット
----------------------------------------*/
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, table, th, td, button {
    margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
* { 
margin: 0px; 
padding: 0px; 
}

img {
	border: 0;
}

ol ,
ul {
	list-style: none;
}
a{
	text-decoration: none;
	color:#333;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* フォント
----------------------------------------*/
@font-face{
	font-display:swap;
	font-family:'NotoSans_L';
	font-style:normal;
	src:url(../../font/NotoSansCJKjp-Light.woff2) format('woff2'),
		url(../../font/NotoSansCJKjp-Light.woff) format('woff');
}
@font-face{
	font-display:swap;
	font-family:'NotoSans_R';
	font-style:normal;
	src:url(../../font/NotoSansCJKjp-Regular.woff2) format('woff2'),
		url(../../font/NotoSansCJKjp-Regular.woff) format('woff');
}
@font-face{
	font-display:swap;
	font-family:'NotoSerif_R';
	font-style:normal;
	src:url(../../font/NotoSerifCJKjp-Regular.woff2) format('woff2'),
		url(../../font/NotoSerifCJKjp-Regular.woff) format('woff');
}
@font-face{
	font-display:swap;
	font-family:'Hannari';
	font-style:normal;
	src:url(../../font/Hannari.woff2) format('woff2'),
		url(../../font/Hannari.woff) format('woff');
}
body{
	width:100%;
	margin:0;
	padding:0;
	box-sizing: border-box;
	font-family: "NotoSans_R";
	color:#333;
}
.w1000{
	width:96%;
	margin:0 auto;
}
a.link{
	display: inline-block!important;
	color:#fff;
	text-align: center;
	border-radius: 5px;
	font-size:20px;
	padding:10px 15px;
	background: #0bc8c0;
	line-height: 100%;
}
a.link:hover{
	text-decoration: none;
	opacity: 0.8;
}
a.link2{
	display: inline-block!important;
	color:#fff;
	text-align: center;
	border-radius: 5px;
	font-size:20px;
	padding:10px 50px;
	line-height: 100%;
	background:#de7676 url(../../images/base/mouse2.png) no-repeat center right;
}
a.link2:hover{
	text-decoration: none;
	opacity: 0.8;
}
h1,nav,#h_inner p.tel,footer .f_nav,#h_inner p.to_mousikomi{
	display: none;
}
header{
	position:fixed;
	width:100%;
	top: 0;
    left:0;
	z-index: 999;
	background:#fff;
}
#h_inner,#global{
	position: relative;
	height:55px;
	padding:0;
}
#h_inner .logo,#global .logo{
	position: absolute;
	font-family: "Hannari";
	font-size:30px;
	color:#333;
	font-weight: normal;
	text-align: left;
	line-height: 60%;
	top:5px;
	left:45%;
	margin:0;
}
#h_inner .logo span,#global .logo span{
	font-size:11px;
	display: block;
	font-family: "NotoSans_R";	
}
ul.sp_h_menu{
	right:-7px;
	top:0;
	position: absolute;
	width:189px;
	margin:0;
}
ul.sp_h_menu li{
	margin-right:3px;
	width:60px;
	height:55px;
	float:left;
	background: #377c90;
	color:#fff;
	font-size:12px;
	font-family: "NotoSans_R";	
	letter-spacing: -0.5px;
	text-align: center;
}
ul.sp_h_menu li a{
	color:#fff;
}
ul.sp_h_menu li img{
	width:auto;
	display: block;
	margin:10px auto 0 auto;
}
ul.sp_h_menu li:last-child{
	margin-right:0;
}
/*----------------------------- 
ページトップ 
----------------------------- */
.navi_pan{
	display: none;
}
#pagetop {
    position: fixed;
   right:10px;
	bottom:10px;
}

#pagetop img{
    width:auto;
	cursor:pointer;
}
#alpha{
	width:96%;
	margin:0 auto;
}
img.bn{
	width:100%;
	height:auto;
}
h2.line01{
	text-align: center;
	font-family: "NotoSerif_R";
	font-size:22px;
	font-weight: normal;
	color:#333;
	margin-bottom:30px;
}
h2.line01 span{
	border-bottom:2px solid #e68282;
	position: relative;
	display: inline-block;
}
h2.line01 span:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 30%;
  border-bottom: 2px solid #73a72e;
}
.cource_title{
	padding: 0.5em 1em;
    margin: 2em 0;
    color: #000;
    background:#f4efea;/*背景色*/
    border-top: double 7px #fff;/*左線*/
    border-bottom: double 7px #fff;/*右線*/
}
.cource_title div{
	margin:0 auto;
}
.cource_title div::after{
	content: "";
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	font-size: 0.1em;
	line-height: 0;
}
.cource_title h2{
	width:50%;
	float:left;
	font-family: "NotoSerif_R";
	font-size:30px;
	font-weight: normal;
}
.cource_title h2 span{
	font-size:18px;
}
.cource_title img{
	float:right;
}
h3.title{
	text-align: center;
	font-family: "NotoSerif_R";
	font-size:24px;
	font-weight: normal;
	color:#000;
	margin-bottom:30px;
	
}
h3.title span{
	padding-bottom:10px;
	border-bottom:1px solid #e68282;
	position: relative;
	display: inline-block;
}
h3.title span:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 30%;
  border-bottom: 1px solid #73a72e;
}
hr.main_hr{
	padding-top:100px;
	border:0;
}
/***フッター****/
footer{
	text-align: center;
	background: #fbfbfb;
	margin:30px 0 0 0;
	padding:30px 5px;
	color:#0bc8c0;
	font-size:18px;
}
footer p{
	border-radius: 20px;
	background: #fff;
	font-size:20px;
	padding:15px 0;
	color:#000;
	margin:5px auto 0 auto;
	width:300px;
}
footer p img{
	width:30px;
	vertical-align:text-top;
	margin-right:15px;
}
footer table.footer_nav{
	width:100%;
	border-collapse:collapse;
}

footer table.footer_nav td{
	border:1px solid #c8b6a1;
	line-height:120%;
	width:25%;
	height:80px;
	text-align:center;
	font-size:13px;
	background: #fff;
}

footer table.footer_nav td a{
	display:block;
}
div.sitemap_box{
	background:#fbfbfb;
	padding:20px 10px 10px 10px;
	margin:0 auto;
}
div.sitemap_box h3{
	color:#5E5D5D;
	margin:0 0 5px 0;
	font-size:16px;
	text-align: left;
}
div.sitemap_box table{
	width:100%;
	margin:0 auto 20px auto;
	border-collapse:collapse;
}
div.sitemap_box table td{
	width:43%;
	border:1px solid #c8b6a1;
	padding:10px 30px 10px 10px;
	font-size:13px;
	background: #ffffff url(../../images/base/ico_g2.png) no-repeat 95% 50%;
	background-size:8px auto;
	line-height:120%;
	height:30px;
	text-align: left;
}

p.copyright{
	background: #0bc8c0;
	color:#fff;
	font-size:14px;
	text-align: center;
	padding:20px 0;
}
/*******
スマホメニュー*****/
div#global{
	width:320px;
	height: 100%;
	position: fixed;
	top: 0;
	left: 100%;
	z-index: 9999;
	overflow-y: auto;
	transition: all 0.5s ease
}
.modal{
	background:#fff;
}
div#global img.menu{
	position: absolute;
	top:27px;
	right:5px;
	width:auto;
}
div#global hr{
	padding-top:15px;
	border:0;

	clear:both;
}
div#global div.botton{
	position: absolute;
	border:3px solid #377c90;
	right:0;
	top:54px;
	width:290px;
	margin:0 auto 30px auto;
	padding:30px 10px 50px 10px;
	background:#fff;
}
div#global ul.sp_menu{
	clear:both;
	margin:30px 0 35px;
	padding:0;
	font-family: "NotoSerif_R";
	border-top:1px solid #ccc;
}
div#global ul.sp_menu li{
	clear:both;
	letter-spacing:0.02em;
	border-bottom:1px solid #ccc;
	position: relative;
}
div#global ul.sp_menu li a{
	display: block;
	padding: 20px;
}
div#global .waku,div#global .waku2{
	font-size:15px;
	border:2px solid #eeaeae;
	border-radius: 5px;
	text-align: center;
	padding:10px 0;
	color:#d25656!important;
	font-family: "NotoSerif_R";
	display: block;
}
div#global .waku{
	width:120px;
	margin:0 10px 0 0;
	float:left;
}
div#global .waku2{
	margin:0 0 0 0;
	width:150px;
	float:right;
}
div#global img.bn{
	width:auto;
	margin:0 auto 10px auto;
	display: block;
}
div#global .kaihei{
	background: #fbfbfb;
	color:#0bc8c0;
	font-size:16px;
	
}
div#global .kaihei li{
	border-bottom:1px solid #ccc;
	font-family: "NotoSerif_R";
	font-size:14px;
}
div#global .kaihei li a{
	display: block;
	padding:10px 5px 10px 30px;
}
.title label{
	display: block;
	padding:15px 5px 15px 10px;
}
div#global .kaihei img{
	width:30px;
	vertical-align:text-top;
	margin-right:15px;
}
img.close{
	vertical-align:middle;
	float:right;
	height:20px;
	margin:15px 0 0 0 !important;
	width:auto;
}

img.open{
	width:20px;
	float:right;
	margin:0 5px 0 0;
}
img.next{
	width:auto;
	float:right;
	margin:0 5px 0 0;
}
.ac li{
	font-family: "NotoSerif_R";
	display:block;
	font-size:16px;
	border-bottom:1px solid #ccc;
}
.ac li a{
	display:block;
	padding:16px 12px;
}
div#global .sp_fmenu{
	text-align: center;
	background: #fbfbfb;
	margin:30px 0 0 0;
	padding:30px 5px;
	color:#0bc8c0;
	font-size:16px;
}
div#global .sp_fmenu p{
	border-radius: 20px;
	background: #fff;
	font-size:20px;
	padding:15px 0;
	color:#000;
	margin:5px auto 0 auto;
	width:280px;
}
div#global .sp_fmenu img{
	width:30px;
	vertical-align:text-top;
	margin-right:15px;
}

/* SPだけ表示 */
.visible_tb {
	display: block !important;
}
.tabs{
	width:96%;
	margin: 50px auto 40px auto;
	background-color: #fff;
	box-sizing: border-box;
}
.to_cart div{
	width:96%;
}
.faq_cate_box{
	width:49%;
	border:1px solid #ccc;
	padding:15px;
	float:right;
	margin-bottom:20px;
	font-size:15px;
}

.faq_cate_box:nth-child(even){
	float:left;
	clear:both;
}
.faq_cate_box:nth-child(6){
	margin-bottom:50px;
}
.faq_cate_box img{
	width:90px;
	height:90px;
	object-fit: cover;
	float:left;
	margin:0 5px 0 0;
}
.faq_cate_box br{
	display: none;
}
.faq_cate_box h3{
	font-size:19px;
	color:#0bc8c0;
	margin-bottom:5px;
	font-weight: normal;
}
.faq_cate_box span{
	display: block;
	float:right;
	background: #0bc8c0;
	color:#fff;
	padding:5px 10px;
	border-radius: 10px;
	margin-top:20px;
}
/*------------------------------------
       サイドバー
-------------------------------------*/
#right_bar {
    background: url(../../images/base/right_bg.jpg)no-repeat;
    width: 150px;
    height: 248px;
    right: 0;
    top: 370px;
    position: fixed;
    text-align: center;
    padding: 80px 0 0 0;
}
#right_bar img{
	display:block;
	margin:0 auto;
	margin-bottom:10px;
}
