@charset "utf-8";

/*============================================================================
	PC非表示
==============================================================================*/
.hiddenPc{
visibility: hidden;
display: none;
width: 0px;
height: 0px;
}

.gFont{

}
/*============================================================================
	index頭部
==============================================================================*/

/*============================================================================
	頭の話header#globalHeader
==============================================================================*/

h1#logo{
	margin: 18px auto 8px 6px;
	float: left;
}
h1#logo a{
    display:block;

	width:180px;
	height:42px;
	background: url(../img/logo.png) no-repeat;
	background-size: 180px 42px;
	text-decoration:none;
	text-indent:-1000px;
	font-size:8px;
    overflow:hidden;

}
h1#logo a:hover { text-decoration:none;}

.telBox{
	float: right;
	width: 220px;
	margin: 20px 20px 0 12px;
}
.telBox a{
	font-weight: bold;
	color: #222;
	font-size: 24px;
}
.telBox .telText{
	display: block;
	color: #222;
	font-size: 12px;
	text-align: right;
}
.telBox a i{
margin-right: 6px;
}

div.fbBox{
	float: right;
	width: 230px;
	margin: 15px 40px 0 12px;
}
div.fbBox a{
	display: block;
	width: 230px;
	padding: 15px 10px;
	background:#93ba3e;
	color: #FFF;
	border-bottom: 4px solid #698c48;
	border-radius: 30px;
	font-weight: bold;
	font-size: 16px;
	text-align: center;
}
div.fbBox a i{
margin-right: 6px;
}
div.fbBox a:hover{
	text-decoration: none;
	background: #8db536;
}

/*============================================================================
	index頭部
==============================================================================*/



#headBg {
	margin-top: 90px;
}
#headBg img{
	width: 100%;
}

.txtWrap{
	text-align: center;
	z-index: -1;
	width: 1000px;
	margin: 0 auto;
}
.txtWrap .title{
    position: relative;
	padding-top: 20px;
	font-size: 50px;
	line-height: 130%;
	color: #222;
	text-align: center;
	font-weight: bold;
	margin: 0 auto;
}
.txtWrap .copy{
    position: relative;
	padding: 60px 10px 10px 10px;
	margin: 0 auto;
	font-size: 20px;
	color: #222;
	text-align: center;
/*	background: url(../img/bg_header.png) center top ;*/
}
.txtWrap .copy img{
	width: 80px;
	height: auto;
}
.txtWrap .scl{
    position: relative;
	padding-top: 180px;
    margin-bottom: 10px;
}
.txtWrap .scl img{
	width: 80px;
	height: auto;
}

/*============================================================================
	bg
==============================================================================*/
/* マーカー */
.yeLine {background:linear-gradient(transparent 60%, #FFFF6A 0%) ;}

/* 白背景 */
.about000{
	clear: both;
	width: 100%;
	height: 100%;
	background: #FFF;
	padding-bottom: 20px;
}
/* 色 */
.about100{
	clear: both;
	width: 100%;
	height: 100%;
	background: #f1f7e9;
	padding-bottom: 20px;
}
.about200{
	clear: both;
	width: 100%;
	height: 100%;
	background: #eaeaea;
	padding-bottom: 20px;
}
.about300{
	clear: both;
	width: 100%;
	height: 100%;
	background: #E2FFFE url(../img/bg_00.jpg) -200px center no-repeat;
	background-size: cover;
	padding-bottom: 20px;
}
/* para */
.about400{
	clear: both;
	width: 100%;
	height: 100%;
	background:#f3f4cf url(../img/bgbg01.gif) center bottom no-repeat;
	background-size: cover;
	padding-bottom: 20px;
}

/*============================================================================
	中の話#mainCont
==============================================================================*/

/*指定カラー*/
.corpC1{color: #09948d!important;}
.corpC2{color: #0c63a6!important;}
.corpC3{color: #16316a!important;}
.corpBG1{background: #09948d!important;}
.corpBG2{background: #0c63a6!important;}
.corpBG3{background: #16316a!important;}

/* Main部分バナー */
.logoBn{ width:300px; margin: 0 auto; padding:20px 0 10px 0; text-align:center; clear: both;}
.mainBn{ width:994px; margin: 0 auto; padding:80px 0 80px 0; text-align:center; clear: both;}
.mainBnMap{ width:994px; margin: 0 auto; padding:80px 0 80px 0; text-align:center; clear: both;}
.mainBn300{ width:300px; margin: 0 auto; padding:30px 0 30px 0; text-align:center; clear: both;}
.mainBn600{ width:600px; margin: 0 auto; padding:30px 0 30px 0; text-align:center; clear: both;}
.mainBn550t{ width:550px; margin: 0 auto; padding:80px 0 0 0; text-align:center; clear: both;}
.mainBn550b{ width:550px; margin: 0 auto; padding:36px 0 80px 0; text-align:center; clear: both;}
.mainBnBill{ width:550px; margin: 0 auto; padding:10px 0; text-align:center; clear: both;}
.mainBnInsta{ width:900px; margin: 0 auto; padding:20px 0 80px 0; text-align:center; clear: both;}

/* マージン */
.mt40{margin-top: 40px;}
.mt80{margin-top: 80px;}
.mb80{margin-bottom: 80px;}
.mt90{margin-top: 90px;}
.mtM10{margin-top: -10px;}
.mtM20{margin-top: -20px;}

/* ページ見出し部分 */
h2.titleH2 {
	margin: 20px auto;
	color: #222;
	font-size: 38px;
  position: relative;
  padding: 1em 2em;
  text-align: center;
}

h2.titleH2:before,
h2.titleH2:after {
  position: absolute;
  content: '';
}

h2.titleH2:after {
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
}

h2.titleH2:before {
  right: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

h3.titleH3{
	clear: both;
	font-size: 22px;
	color: #222;
	text-align: center;
	margin:40px auto 40px auto;
	padding-bottom: 20px;
	background: url(../img/bg_title.png) no-repeat center bottom;
	background-size: 90px 6px;
}
h5{
	clear: both;
	color: #222;
	font-size: 1.5em;
	font-weight: bold;
	text-align: left;
	border-left: 3px solid #333;
	box-sizing: border-box;
	margin: 10px auto 10px auto;
	padding:2px 0 2px 10px;
}

p{
	width: 98.7%;
	margin:0 auto 20px 1.3%;
	padding:0 auto 0px 1.3%;
	color: #222;
	font-size: 1.4em;
	line-height:150%;
	box-sizing: border-box;
}

.lText{
	font-size: 1.8em;
	font-weight: bold;
}
.sText{
	font-size: 1.2em;
}

.centerText{
	text-align: center;
}
.textRight{
	margin:10px auto 20px auto;
	text-align: right;
	font-size: 1.2em;
}

ul.defList{
	width: 93%;
	margin: 0 auto 20px auto;
}
ul.defList li{
	list-style: none;
	font-size: 1.2em;
	color: #222;
	font-weight: normal;
	box-sizing: border-box;
	list-style: disc;
	list-style-position: outside;
	padding: 0px;
	margin-bottom: 10px;
	line-height:140%;
}
ul.defList li i{
	margin-right: 16px;
	color: #222;
}

/*============================================================================
	下の話footer#globalFooter
==============================================================================*/

/* page-top */
#pageTop {
	position: fixed;
	bottom: 20px;
	right: 30px;
	z-index: 100;
}
#pageTop a {
	display: block;
	background: url(../img/gotop@2x.png);
	background-size: 68px 68px;
	width: 68px;
	height: 68px;
	text-indent: -9999px;
}
#pageTop a:hover {
	background: url(../img/gotop@2x.png);
	background-size: 68px 68px;
}


.footMiddle{
	width: 1200px;
	margin: 0 auto;
	padding-top: 40px;
}

/* footRight */
#footRight {
	margin: 0 20px 0 40px;
	width: 280px;
	float: right;
	font-size: 14px;
	color: #999;
	line-height: 180%;
}
#footRight a{
	color: #999;
}

/* footLeft */
#footLeft {
	margin: 0 auto;
	width: 860px;
	float: left;
}
.footList{
	width: 150px;
	float: left;
	vertical-align: top;
	margin: 0 0px 0 84px;
	text-align: left;
	padding-left: 16px;
	border-left: 1px solid #999;
}
.footList li.footMenu{
	list-style: none;
	padding: 5px 0 5px 0;
}
/*
.footList li.footMenu:first-child{
	font-weight: bold;
	font-size: 16px;
	color: #FFF;
}
*/
.footList li.footMenu a{
	font-size: 100%;
	color: #999;
}
.footList li.footMenu a:hover{
	color: #999;
	text-decoration: underline;
}

/* footCenter */
#footLogoBox {
	clear: both;
	width: 1200px;
	margin: auto;

}
#footLogoBox a.footlogo{
	display: block;
	text-indent: -9999px;
	margin: 12px auto 12px auto;
	width: 180px;
	height: 42px;
	background: url(../img/logo_foot.png) no-repeat;
	background-size: 180px 42px;
}

#footBtm{
	width: 100%;
	background: #222;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 100%;
	text-align: center;
	color: #FFF;
}

/*============================================================================
	index
==============================================================================*/

.indexTitle{
	width: 900px;
	margin: 60px auto 40px auto;
	text-align: center;
	color: #222;
	font-size: 34px;
	font-weight: bold;
}
.indexText{
	width: 900px;
	margin: 10px auto 40px auto;
	text-align: center;
	line-height: 180%;
	color: #222;
	font-size: 140%;	
}


/* CTA */
.btnBox{
	clear: both;
	margin: 40px auto;
}

.arrowImg{ width:100%; margin: 0 auto; padding:0; text-align:center; clear: both;}
.arrowImg img{width: 41px;}

p.btnText{
	color: #222;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin-top: 20px;
}
p.btnTextSub{
	color: #222;
	font-size: 24px;
	font-weight: normal;
	text-align: center;
	margin-top: 20px;
}
.btnTextTel{
	display: block;
	color: #222;
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	margin-top: 20px;
}

a.mainBtn{
	display: block;
	width: 600px;
	background:#9ebd59;
	color: #FFF;
	border-bottom: 4px solid #698c48;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	border-radius: 60px;
	padding: 22px 6px 18px 6px;
	margin: 0 auto 10px auto;
}
a.mainBtn:hover{
	text-decoration: none;
	background: #8db536;
}

a.telBtn i, a.mainBtn i{
	margin-right: 6px;
}

a.telBtn{
	display: block;
	width: 300px;
	background:#FFF;
	color: #222;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	border-radius: 60px;
	padding: 22px 6px 18px 6px;
	margin: 0 auto 10px auto;
}
a.telBtn:hover{
	text-decoration: none;
	background: #ffffff;
}


/* 1 */
.inlineBlock1{
	margin: 40px auto 40px auto;
	text-align: center;
}
.inlineBlock1 .inlineBlockOne1{
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 230px;
	margin: 0 22px 12px 22px;
	border-radius: 8px;
}
.inlineBlock1 .inlineBlockOne1 h4.inlineBlockTitle1{
	text-align: center;
	font-size: 14px;
	color: #222;
	font-weight: bold;
	margin: 10px auto 20px auto;
}
.inlineBlock1 .inlineBlockOne1 .inlineBlockImg1{
	text-align: center;
	width: 100%;
	margin:0 auto 10px;
}

.imgNo{
	padding-top: 40px;
}

/* 2 */
.inlineBlock2{
	margin: 80px auto 20px auto;
	text-align: center;
}
.inlineBlock2 .inlineBlockOne2{
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 400px;
	margin: 0 10px 40px 10px;
	border-radius: 8px;
	text-decoration: none;
}
.numIcon20{
	position: absolute;
	top: -35px;
	left: 140px;
	display: block;
	text-align: center;
	font-size: 24px;
	color: #FFF;
	line-height: 140%;
	box-sizing: padding-box;
	background: #0eb5bd;
	padding: 10px 0;
	width: 120px;
}
.inlineBlock2 .inlineBlockOne2 .inlineBlockImg2{
	text-align: center;
	width: 100%;
	margin:0 auto 10px;
	position: relative;
}
.inlineBlock2 .inlineBlockOne2 .inlineBlockText20{
	margin: 9px auto -20px;
	text-align: center;
	font-size: 16px;
	color: #FFF;
	line-height: 140%;
	box-sizing: padding-box;
	background: #0eb5bd;
	padding: 12px 0;
	width: 46px;
	border-radius: 30px;
}
.inlineBlock2 .inlineBlockOne2 h4.inlineBlockTitle2{
	text-align: center;
	height: 50px;
	font-size: 20px;
	color: #333;
	font-weight: bold;
	margin: 20px auto 10px auto;
}
.inlineBlock2 .inlineBlockOne2 .inlineBlockText2{
	width: 100%;
	margin: 14px auto 20px;
	text-align: left;
	font-size: 16px;
	color: #666;
	line-height: 140%;
}
.inlineBlock2 .inlineBlockOne2 a.inlineBlockBtn2{
	display: block;
	text-align: center;
	width: 200px;
	font-size: 14px;
	color: #FFF;
	background: #222;
	border-radius: 6px;
	padding: 8px 0;
	margin:0 auto 10px;
}
.inlineBlock2 .inlineBlockOne2 a.inlineBlockBtn2{
	text-decoration: none;
}

.titleIcon_book{
	background: url(../img/title_icon_book.png) no-repeat center bottom;
	background-size: 80px 80px;
}

/* 4 */
.inlineBlock4{
	margin: 60px auto 50px auto;
	text-align: center;
}
.inlineBlock4 .inlineBlockOne4{
	float: left;
	text-align: center;
	vertical-align: top;
	width: 132px;
	margin: 0;
}
.inlineBlock4 .inlineBlockOne4:first-child{
	margin-left: 8px;
	}
.inlineBlock4 .inlineBlockOne4:nth-child(even){
	float: left;
	text-align: center;
	vertical-align: middle;
	width: 20px;
	padding-top: 140px;
	margin: 0;
	font-size: 20px;
	color: #09948D;
}
.inlineBlock4 .inlineBlockOne4 h4.inlineBlockTitle4{
	text-align: center;
	font-size: 18px;
	color: #09948D;
	font-weight: bold;
	margin: 0 auto 16px;
}
.stepNum{
	font-size: 28px;
	display: block;
}
.inlineBlock4 .inlineBlockOne4 .inlineBlockImg4{
/*	background: url(../img/bg_03.png) center center; */
	border-radius: 8px;
	color: #FFF;
	font-size: 15px;
	text-align: left;
	margin-bottom: 10px;
	padding:0 20px 10px 20px;
	line-height: 160%;
}
.inlineBlock4 .inlineBlockOne4 .inlineBlockText4{
	text-align: center;
	font-size: 14px;
	min-height: 34px;
	color: #222;
	font-weight: bold;
	margin: 0 auto 6px;
}
.inlineBlock4 .inlineBlockOne4 .inlineBlockText44{
	text-align: left;
	font-size: 12px;
	color: #444;
	line-height: 16px;
	font-weight: normal;
	margin: 0 auto 6px;
	padding-top: 6px;
	border-top: 1px solid #ffffff;
}


/* よくある質問 */
.qa-list{
	margin:0 auto 40px;
	width: 900px;
}
.qa-list dl {
    position: relative;
    margin: 0;
    padding: 20px 80px 20px 30px;
    cursor: pointer;
    border-bottom: 1px solid #222;
}
.qa-list dl:first-child {
    border-top: 1px solid #222;
}
.qa-list dl::before {
    position: absolute;
    top: 25px;
    right: 25px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #222;
    border-right: 2px solid #222;
}
.qa-list .open::before {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 0 0 0 50px;
    font-weight: bold;
    font-size: 18px;
    color: #222;
}
.qa-list dl dt::before {
    font-size: 18px;
    line-height: 1;
    position: absolute;
    top: 3px;
    left: 0;
    display: block;
    content: 'Q.';
    color: #3285bf;
}
.qa-list dl dd::before {
    font-size: 18px;
    line-height: 1;
    position: absolute;
    top: 3px;
    left: 2px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #3285bf;
}
.qa-list dl dd {
    position: relative;
    display: none;
    height: auto;
    margin: 20px 0 0;
    padding: 0 0 0 50px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
        color: #222;
    font-size: 18px;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}

@media screen and (max-width: 767px) {
.qa-list dl {
    position: relative;
    padding: 15px 40px 15px 10px;
}
.qa-list dl::before {
    top: 20px;
    right: 20px;
    width: 7px;
    height: 7px;
}
.qa-list dl dt {
    padding: 0 0 0 30px;
    font-size: 14px;
}
.qa-list dl dt::before {
    font-size: 14px;
    top: 3px;
    left: 5px;
    content: 'Q.';
}
.qa-list dl dd::before {
    font-size: 14px;
    top: 5px;
    left: 5px;
    content: 'A.';
}
.qa-list dl dd {
    margin: 10px 0 0;
    padding: 0 0 0 30px;
    font-size: 14px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}
}


/*============================================================================
	デフォルト テーブル
==============================================================================*/

.defTable table {
	clear: both;
	width: 900px;
	margin: 0 auto;
	border-collapse: collapse;
	border: none;
}

.defTable th, .defTable td {
	font-size: 18px;
	padding: 10px 20px;
	line-height: 180%;
	color: #222;
	border: none;
	border: 3px solid #FFF;
	text-align: center;
	vertical-align: middle;
}
.defTable th {
	width: 200px;
	font-weight: bold;
	white-space: nowrap;
}

.defTable th.corpTh1{background: #09948d!important; color: #FFF; font-size: 180%;}
.defTable th.corpTh2{background: #c4c4c4!important; color: #222; font-size: 110%;}
.defTable th.corpTh3{background: #c3cfe8!important; color: #222; font-size: 110%;}

.defTable td.corpTd1{background: #e0fffd!important; color: #e04b52; font-size: 140%;font-weight: bold;}
.defTable td.corpTd2{background: #f0f0f0!important; color: #222; font-size: 110%;}


.defTable td.bigTd{
	font-size: 140%;
}
.defTable th.borNone, .defTable td.borNone {
	border-bottom: none;
}

/* 必須 */
.required:after {
  margin-left: 1.0em;
  padding: 6px 6px 6px 6px;
  border-radius: 4px;
  font-size: 0.6em;
  color: white;
  background-color: #C44;
  content: "必須";
}

/* notice */
.notice{
	width: ;
	border: 1px solid #999;
	font-size: 16px;
	line-height: 160%;
	color: #222;
	padding: 20px;
	margin: 10px auto;
}


/* コメントBOX */
.commBox01{
	margin: 20px auto;
}
.commBox01L{
	width: 100%;
	text-align: center;

}
.commText{
	vertical-align: top;
	display: inline-block;
	width: 385px;
	margin: 10px 10px;
	padding: 30px 16px;
	border-radius: 20px;
	background: #FFF;
	font-size: 22px;
	font-weight: bold;
	color: #222;
	text-align: center;
	line-height: 140%;
}
.commText:nth-child(even){
	margin-top: 60px;
}

.commBox02{
	margin: 20px auto;
}
.commBox02L{
	float: left;
}
.commBox02R{
	float: right;
}


/* 課題BOX */
.themeBoxOT{
	padding-top: 40px;
}
.themeBox01{
	margin: 20px auto 40px;
}
.themeBox01R img , .themeBox02L img{
	width: 288px;
}

.themeBox01L{
	padding: 40px;
	background: url(../img/bgbg.png) ;
	border-radius: 20px;
}
.themeBox01R{
}
.themeTitle{
	display: block;
	width: 100%;
	margin-bottom: 10px;
	font-size: 28px;
	font-weight: bold;
	color: #222;
	text-align: center;
	line-height: 140%;
}
.themeText{
	display: block;
	width: 100%;
	font-size: 16px;
	font-weight: normal;
	color: #222;
	text-align: left;
	line-height: 160%;
	padding-top: 10px;
	border-top: 1px solid #09948d;
}

.themeBox02{
	margin: 20px auto 40px;
}
.themeBox02L{
	float: left;
}
.themeBox02R{
	float: right;
}

/* メリットBOX */
.meritBox{
	width: 100%;
	padding: 20px 60px 60px 60px;
	background: url(../img/bgbg.png);
	background-size: 68px 68px;
	border-radius: 30px;
	box-sizing: border-box;
}
.meritTitle{
	display: block;
	box-sizing: border-box;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 78px;
	margin-top: 30px;
	font-size: 28px;
	font-weight: bold;
	color: #222;
	text-align: left;
	line-height: 140%;
	background: url(../img/star@2x.png) no-repeat left center;
	background-size: 67px 67px;	
}
.meritText{
	display: block;
	font-size: 16px;
	font-weight: normal;
	color: #222;
	text-align: left;
	line-height: 160%;
	margin-top: 10px;
}
.meritTextS{
	display: block;
	font-size: 12px;
	font-weight: normal;
	color: #696969;
	line-height: 140%;
	margin-top: 10px;
}