@charset "utf-8";
/* CSS Document */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary{
	display:block;
	margin:0;
	padding:0
}
html,
body,
div,
h1,
h2,
h3,
h4,
h5,
p,
blockquote,
ul,
ol,
li,
dl,
dt,
dd,
form{
	margin:0;
	padding:0
}
html{
	overflow-x:hidden;
	overflow-y:scroll
}
body,
h1,
h2,
h3,
h4,
h5,
samp,
kbd,
input,
button,
select,
textarea{
	font-family: '游ゴシック', 'Yu Gothic', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', system-ui, sans-serif;
	font-weight: 500;	
}
a{
	text-decoration: none !important;
}
html,
body{
	font-size:16px;
}
h1,
h2,
h3,
h4,
h5	{
	/*font-weight:normal;*/
}
a	{
	text-decoration:none;
}

li	{
	list-style:none;
}
a:hover	{
	text-decoration:none;
}
rt{
	padding-bottom: 1px;
}

ruby {
  position: relative;
}

ruby rt {
  position: relative;
  /*top: 0.6ex; ルビと本文の間隔*/
}
/* box margin
---------------------------------------------------------*/
.m0{margin:0 !important;}
.m5{margin:5px !important;}
.m10{margin:10px !important;}
.m15{margin:15px !important;}
.m20{margin:20px !important;}
.m30{margin:30px !important;}
.m40{margin:40px !important;}
.m50{margin:50px !important;}

.mt0{margin-top:0 !important;}
.mt5{margin-top:5px !important;}
.mt10{margin-top:10px !important;}
.mt15{margin-top:15px !important;}
.mt20{margin-top:20px !important;}
.mt30{margin-top:30px !important;}
.mt40{margin-top:40px !important;}
.mt50{margin-top:50px !important;}

.mr0{margin-right:0 !important;}
.mr5{margin-right:5px !important;}
.mr10{margin-right:10px !important;}
.mr15{margin-right:15px !important;}
.mr20{margin-right:20px !important;}

.mb0{margin-bottom:0 !important;}
.mb5{margin-bottom:5px !important;}
.mb10{margin-bottom:10px !important;}
.mb15{margin-bottom:15px !important;}
.mb20{margin-bottom:20px !important;}
.mb25{margin-bottom:25px !important;}
.mb30{margin-bottom:30px !important;}
.mb40{margin-bottom:40px !important;}
.mb50{margin-bottom:50px !important;}

.ml0{margin-left:0 !important;}
.ml5{margin-left:5px !important;}
.ml10{margin-left:10px !important;}
.ml15{margin-left:15px !important;}
.ml20{margin-left:20px !important;}

/* box padding
---------------------------------------------------------*/
.p0{padding:0 !important;}
.p5{padding:5px !important;}
.p10{padding:10px !important;}
.p15{padding:15px !important;}
.p20{padding:20px !important;}
.p30{padding:30px !important;}
.p40{padding:40px !important;}
.p50{padding:50px !important;}

.pt0{padding-top:0 !important;}
.pt5{padding-top:5px !important;}
.pt10{padding-top:10px !important;}
.pt15{padding-top:15px !important;}
.pt20{padding-top:20px !important;}
.pt30{padding-top:30px !important;}
.pt40{padding-top:40px !important;}
.pt50{padding-top:50px !important;}

.pr0{padding-right:0 !important;}
.pr5{padding-right:5px !important;}
.pr10{padding-right:10px !important;}
.pr15{padding-right:15px !important;}
.pr20{padding-right:20px !important;}

.pb0{padding-bottom:0 !important;}
.pb5{padding-bottom:5px !important;}
.pb10{padding-bottom:10px !important;}
.pb15{padding-bottom:15px !important;}
.pb20{padding-bottom:20px !important;}
.pb30{padding-bottom:30px !important;}
.pb40{padding-bottom:40px !important;}
.pb50{padding-bottom:50px !important;}

.pl0{padding-left:0 !important;}
.pl5{padding-left:5px !important;}
.pl10{padding-left:10px !important;}
.pl15{padding-left:15px !important;}
.pl20{padding-left:20px !important;}

/*ヘッダー
================================================*/
#page-header{
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100px;
	background: #fff;
	transition-property:top, opacity;
	transition-duration:.5s;
	z-index:10
}

@media (min-width: 767px){
	.doc-status-scroll-down #page-header{
		top:-60px;
		opacity:0.95
	}
	.doc-status-scroll-down #page-header .header-border{
		left:0;
		transition-duration:1s;
		transition-delay:0.3s
	}
}
#header-bar{
	width:970px;
	height:65px; /*試験名称変更テキスト掲載用、元は60px*/
	margin: 0 auto;
	background-color:#fff;
	z-index:20
}
@media (max-width: 767px){
	#header-bar{
		height: 50px;
		background: #f9f9f9;
	}
}
#head-navi-bg{
	height: 53px;
	width: 100%;
	/*background-color:#349fff;*/
	background: #0066cc;
}
#header-menu{
	max-width:100%;
	margin: 0 auto;
	/*transition-property:bottom;*/
	transition-duration:.5s;
}

#header-menu i{
	display: block;
}

@media (min-width: 767px) {
  	#header-bar,
	#header-menu{
		width: 750px;
	}
}
@media (min-width: 992px) {
  	#header-bar,
	#header-menu{
    width: 970px;
  }
}
@media (max-width: 767px) {
	#header-bar,
	#header-menu{
		margin:0 ;
	}
	#head-navi-bg{
		height: 0;
	}
	#header-menu i{
		display: inline;
		margin-right: 0.5em;
	}
}
#header-logo{
	position:relative;
	left:0px;
	top:5px;
	transition:transform .5s;
	-webkit-transform:translateY(0px);
	-ms-transform:translateY(0px);
	transform:translateY(0px)
}
#header-logo a{
	display:inline-block;
	height:60px;
	white-space:nowrap;
}
#header-logo a img{
	float: left;
	padding-right: 12px;
	height:100%;
	vertical-align:bottom;
	transition:height .5s
}
#header-logo h1{
	font-size: 40px;
	float: left;
	padding-top: 2px;
	color: #0C5BA8;
	font-weight:bold;
	/*font-family:"Meiryo";*/
}
#header-menu>ul{
	height:40px;
	margin:0;
	float: left;
}
#header-menu>ul>li{
	display: inline-block;
	/*height:100%;*/
	/*margin-bottom:0*/
}
#header-menu>ul>li a{
	display:inline-block;
	/*width:100%;
	height:100%;*/
	padding:9px 12px 8px 12px;
	text-align:center;
	font-size:15px;
	/*letter-spacing:1px;*/
	color:#fff;
  	transition: all 0.3s;
}
#header-menu>ul>li a:hover{
	/*background: #00519a;*/
	background-color:#349fff;
}
#header-menu ul li{
	position: relative;
}
@media (min-width: 767px) and (max-width: 991px){
	#header-menu>ul>li a{
		padding-left:8px;
		padding-right:8px;
		padding-top: 10px;
		font-size: 14px;
	}
}
@media (min-width: 1px) and (max-width: 767px){
	#page-header	{
		height: auto;
	}
	#header-logo{
		position:absolute;
		top:0px;
		left:0;
		right:0;
		height:50px;
		width: 450px; /*試験名称変更テキスト掲載用、元は350px*/
		margin: 0 auto;
		padding-top: 5px;
		padding-left:60px;
		white-space:nowrap;
	}
	#header-logo a{
		height:100%
	}
	#header-logo a img{
		width: 65px;	
	}
	#header-logo h1{
		font-size: 24px;
		padding-top: 6px;
	}
	#header-menu{
		position:fixed;
		left:0;
		top:0;
		right:auto;
		bottom:auto;
		width:200px;
		height:100vh;
		background-color:#0066cc;
		box-shadow:2px 3px 4px rgba(64,64,64,0.4);
		transform:translate3d(-200px, 0, 0);
		transition:transform .5s;z-index:110;		
	}
	#header-menu>ul{
		height:auto;
	}
	#header-menu>ul>li{
		/*display:flex;*/
		width:100%;
		height:auto;
		margin:0;	
	}
	#header-menu>ul>li:first-child>a::after{
		/*content:'トップページ';*/
		padding-left:10px;	
		flex-grow: 1;
	}
	#header-menu>ul>li>a{
		text-align:left;
		display:block;
		padding:14px 14px 14px 14px;
		font-weight:normal !important;
		border:none
	}
	#header-nav-xs{
		position:absolute;
		left:0;
		top:0;
		transition:transform .5s;
		z-index:110
	}
	#header-btn-xs{
		display:block;
		width:55px;
		height:50px;
		font-size:11px;
		text-align:center;
		color:#fff;
		/*background-color:#007eef;*/
		background-color:#0066cc;
	}
	#header-btn-xs::before{
		content:"a";
		font-family:"ElegantIcons";
		display:block;
		margin:0 0 -10px 0;
		font-size:28px;
		
	}
	#header-btn-xs::after{
		content:'MENU'
	}
}
/*試験名称変更テキスト掲載用*/
@media (min-width: 1px) and (max-width: 440px){
	#header-logo h1{
		/*font-size: 24px;*/
		padding-top: 2px;
	}
}
/*試験名称変更テキスト掲載用*/
@media (min-width: 441px){
	.visible-xxs {
		display: none !important;
	}
}
#header-xs-bgcover{
	display:none;
	position:fixed;
	top:0;left:0;
	width:100%;
	height:100%;
	background-color:rgba(64,64,64,0.5);
	animation:anime-fade-in .5s;
	z-index:100
}
@media (min-width: 1px) and (max-width: 767px){
	.doc-status-scroll-down #page-header{
		box-shadow:0 2px 5px rgba(64,64,64,0.15);
		opacity:0.95
	}
	.doc-status-xs-menu-open #page-header{
		opacity:1 !important
	}
	.doc-status-xs-menu-open #header-menu{
		-webkit-transform:translate3d(0, 0, 0);
		-ms-transform:translate3d(0, 0, 0);
		transform:translate3d(0, 0, 0)
	}
	.doc-status-xs-menu-open #header-nav-xs{
		-webkit-transform:translate3d(200px, 0, 0);
		-ms-transform:translate3d(200px, 0, 0);
		transform:translate3d(200px, 0, 0)
	}
	.doc-status-xs-menu-open #header-btn-xs::before{
		content:"4";font-family:"ElegantIcons"
	}
	.doc-status-xs-menu-open #header-btn-xs::after{
		content:'CLOSE'
	}
	.doc-status-xs-menu-open #header-xs-bgcover{
		display:block
	}
}
/*コンテナ
----------------------------------------------*/
.wrapper	{
	max-width:970px;
	margin:0 auto;
}
@media (min-width: 767px) {
  .wrapper {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .wrapper {
    width: 970px;
  }
}
@media (max-width: 767px) {
	.wrapper {
		margin:0 15px;
	}
}
#page-content{
	padding-top:113px
}
@media (min-width: 1px) and (max-width: 767px){
	#page-content{
		padding-top:50px
	}
}
/*TOPに戻る





---------------------------------------*/
#page-top	{
	display:block;
	position:fixed;
	z-index:998;
	bottom:10px;
	right:10px;
	width:60px;
	height:60px;
	border-radius:30px;
	background:rgba(0,0,0,.6);
	font-size:12px;
	color:#FFF;
	text-decoration:none;
	text-align:center;
	padding:3px 0;
	transform:rotateY(270deg);
	transition:.5s;
}
#page-top:hover	{
	background:rgba(0,0,0,.5);
}
#footer-to-pagetop	{
	clear:both;
}
#footer-to-pagetop a	{
	position:absolute;
	right:30px;
	margin-top:-25px;
	padding:5px 10px;
	font-size:12px;
	color:#fff;
	background:#738fd4;
	border-radius:5px 5px 0 0;
}

/*フッタ
=============================================*/
#page-footer{
	background-color:#F6F6F6
}

#page-footer .footer-info{
	/*padding-top:30px;
	padding-bottom:20px*/
}

#page-footer .footer-corp .corp-info p{
	margin-bottom:0
}
#page-footer .footer-corp .corp-info .info-main img{
	width:200px;
	vertical-align:bottom
}
#page-footer .footer-corp .corp-info .info-sub{
	margin-top:5px;
	font-family:"Roboto","sans-serif";
	font-weight:700
}
#page-footer .footer-corp .corp-logo{
	margin-top:30px
}
#page-footer .footer-corp .corp-logo img{
	height:40px
}
#page-footer .footer-corp .corp-logo img:first-child{
	margin-right:20px
}


#page-footer .footer-notes{
	margin-top: 10px;
	padding:10px 10px 10px 10px;
	border-top:1px solid #E3E3E3
}
#page-footer .footer-notes p{
	margin-bottom:5px;
	text-align:center;
	font-size:12px;
	line-height:1.3;
	color:#909090
}
#page-footer .footer-copyright{
	letter-spacing:0.5px
}
@media (min-width: 1px) and (max-width: 767px){
	#page-footer .row.footer-info>[class^='col-']:not(:last-child){
		margin-bottom:50px
	}
	#page-footer .footer-contact .info-tel-time{
		padding-right:0
	}
}

.info-main	{
	font-size: 12px;
}

/*パンくずリスト





----------------------------------------------*/
#breadcrumb {
  padding: 7px 0 1px;
  overflow: hidden;
	clear:both;
}

#breadcrumb li {
  font-size: 11px;
  list-style: none;
  float: left;
}
li.bread{
　margin-bottom: 2px !important;	
}
#breadcrumb li:after {
  content: '＞';
  font-size: 11px;
  color: #8a8a7b;
  margin: 0 10px;
}

#breadcrumb li:last-child:after {
  content: '';
}

/*form
-------------------------------------------------*/
.form-title	{
	font-size: 30px;
    padding: 36px 0 5px 10px;
    border: #d0d0d2 1px solid;
    margin: 0 0 10px 0;
	background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1.0), rgba(254, 254, 254, 1.0) 50%, rgba(241, 241, 241, 1.0) );
    border-radius: 0 0 5px 5px;
    position: relative;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.1), 0px -1px 0px rgba(255,255,255,0.2) inset;
}
.band-title	{
	background: #0085c9;
	top: 3px;
    left: 3px;
    position: absolute;
    width: 99%;
    color: #FFF;
    font-size: 14px;
    text-shadow: 1px 1px 0px #0e396e;
    padding: 6px 0 5px 8px;
}
/* --- ステップ --- */

#page-step {
  overflow: hidden;
  width: 450px;
  margin: 40px auto;
}

#page-step ol {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: pageStepList;
}

#page-step li {
  float: left;
  position: relative;
  width: 150px;
  text-align: center;
  color: #D0D0D0;
}
/* --- ライン --- */
#page-step li::before {
  content: '';
  display: block;
  position: absolute;
  left: 110px;
  top: 29px;
  width: 80px;
  border-bottom: 2px solid #E0E0E0;
}

#page-step li:last-child::before {
  border-bottom: none;
}

/* --- アイコン --- */

#page-step li i {
  display: block;
  width: 60px;
  height: 60px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 11px;
  font-size: 24px;
  color: #FFFFFF;
  border-radius: 30px;
  background-color: #E0E0E0;
  transition: color 0.2s, background-color 0.2s;
}y p

#page-step li i::after {
  content: 'STEP ' counter(pageStepList);
  counter-increment: pageStepList;
  display: block;
  margin-top: 6px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
}

.arrow-color{
		color: #0066cc;
	}

.icon-h2{
		color: #67B7FF;
		padding: none;
		display: inline-block;
		height: 10px;
	}

/* --- 文字 --- */

#page-step li p {
  margin-top: 5px;
  text-align: center;
  font-size: 12px;
}


/* --- ステータス --- */

#page-step li.active p {
  color: #3BAFDA;
}

#page-step li a,
#page-step li.done p {
  color: #91C6DA;
}

#page-step li a:hover {
  color: #2B9FCA;
}

#page-step li a:hover i {
  background-color: #2B9FCA;
}

#page-step li.active {
  cursor: default;
}

#page-step li.active i {
  background-color: #3BAFDA;
}

#page-step li.done::before {
  border-color: #91C6DA;
}

#page-step li.done i {
  background-color: #91C6DA;
}


/* --- XSデバイス --- */
@media (max-width: 767px) {

  #page-step {
    width: auto;/*270px;*/
    margin: 20px auto;
  }

  #page-step li {
    width: auto;
    margin-right: 10px;
  }

  #page-step li::before {
    display: none;
  }

  #page-step li i {
    width: 80px;
    height: auto;
    padding: 2px 0 4px 0;
    font-size: 14px;
  }

  #page-step li i::after {
    display: inline-block;
    margin-left: 5px;
  }

  #page-step li p {
    font-size: 11px;
  }

}
 /* --- 注意書き ---*/

.notice-form {
  margin: 20px auto;
  padding: 15px 20px;
  color: #606060;
  border: 1px solid #E0E0E0;
  border-radius: 5px;
}

.notice-form h2 {
  margin-top: 5px;
  margin-bottom: 20px;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #FFFFFF;
  background-color: #3BAFDA;
}

.notice-form h2 small {
  display: block;
  margin-top: 5px;
  color: #FFFFFF;
}

/*--- ブレットリスト --- */

ul.list-bullet {
  list-style: none;
  padding-left: 20px;
}

ul.list-bullet > li {
  position: relative;
  margin-bottom: 2px;
}

ul.list-bullet > li:before {
  content: '';
  position: absolute;
  left: -15px;
  top: 0.45em;
  width: 8px;
  height: 8px;
  background-color: #87CEEB;
  border-radius: 4px;
}

ul.list-bullet ul.list-bullet > li:before {
  width: 6px;
  height: 6px;
  background-color: #B0BEC5;
}

/* --- モバイルの注意 --- */

.notice-mobile {
  margin-top: 10px;
}

.notice-mobile h3 {
  display: inline-block;
  margin: 0 0 10px 0;
  padding: 4px 10px 3px 10px;
  font-size: 16px;
  color: #FFFFFF;
  background-color: #78909C;
}

.notice-mobile p {
  line-height: 1.5;
  font-size: 14px;
  color: #606060;
}

.notice-mobile li {
  font-size: 14px;
  color: #606060;
}
.email {
  letter-spacing: 1px;
  word-wrap: break-word;
}

em.email {
  margin-left: 5px;
  margin-right: 5px;
  padding-left: 5px;
  padding-right: 2px;
  color: #305030;
  background-color: #F6FACA;
}
/* --- 必須、任意 --- */
.req::before,
.opt::before {
  margin-right: 10px;
  padding-left: 5px;
  padding-right: 5px;
  vertical-align: top;
  font-size: 14px;
  color: #FFFFFF;
}

.req::before {
  content: '必須';
  background-color: #E57373;
}

.opt::before {
  content: '任意';
  background-color: #90A4AE;
}
.flo-l	{
	float: left;
}
.form-group p{
	font-size: 12px;
	color: #585858;
	margin-left: 4em;
	padding-top: 5px;
}
.form-confirm	{
	margin-bottom: 15px;
	border-bottom: 1px solid #ccc;
}
.form-confirm dt	{
	font-size: 14px;
	margin-right: 2em;
	float: left;
}
.form-confirm dd	{
	font-size: 18px;
	margin-left: 120px;
	padding-bottom: 10px;
}
.aster	{
	color: #f00;
	font-weight: bold;
}
.error_list {
	padding: 10px 30px;	
	color: #ff2e5a;	
	font-size: 86%;	
	text-align: left;	
	border: 1px solid #ff2e5a;	
	border-radius: 5px;
}


/*TOPページ
----------------------------------------*/
.top-b-header	{
	font-size: 36px;
	padding:0.5rem 0 0.2rem 0.5rem;
	/*padding: 20 0 15 10;*/
	margin: 0.2rem 0 0.6rem;
	border-left: 16px solid #026ecf;
	background: #f0f8ff;
}

.top-m-header	{
	font-size: 26px;
    text-align: center;
    border-top: #abd7ff 2px solid;
    border-bottom: #abd7ff 2px solid;
    background: #f6f6f6;
    padding: 10px 0 7px;
}
.top-s-read	{
	background: #8f8fee;
	color: #fff;
	padding: 6px 0 5px 6px;
}
.top-chara-read	{
	font-size: 18px;
	font-weight: 550;
	color: #004889;
	text-align: center;
}
.top-link-btn {
	font-size: 24px;
	color: #fff;
	text-align: center;
	padding: 22px 20px 14px;
	border-radius: 6px;
	background:#0066cc;
}

.sample-link-btn {
	font-size: 20px;
	color: #fff;
	text-align: center;
	padding: 20px 16px 12px;
	border-radius: 6px;
	background:#0066cc;
}
.entry-link-btn {
	font-size: 16px;
	color: #fff;
	text-align: center;
	padding: 15px 10px 5px;
	border-radius: 40px;
	background:#db2060;
}
.problem-btn,
.answer-btn	{
	font-size: 20px;
	color: #fff;
	text-align: center;
	padding: 20px 16px 12px;
	border-radius: 6px;
}

.problem-btn	{
	background:#17a2b8;
}
.answer-btn	{
	background: #db2060;
}
.top-link-btn:hover {
	transition:0.2s;
	background: #349fff;
}
.sample-link-btn:hover {
	transition:0.2s;
	background: #349fff;
}
.entry-link-btn:hover {
	transition:0.2s;
	background: #F4246B;
}
.problem-btn:hover	{
	transition:0.2s;
	background:#39afc2;
}

.answer-btn:hover	{
	transition:0.2s;
	background:#F4246B;
}

.light-purple	{
	width: 100%;
	background: #f6f6fe;
	padding: 50px 0;
}
.light-blue	{
	width: 100%;
	background: #d4eefb;
	padding: 30px 0;
}
.light-yellow	{
	width: 100%;
	background: #FFFDEE;
	padding: 30px 0;
}
.info-hole	{
	background: #fff;
	padding: 20px;
	border-radius: 6px;
}
.main-banner-01,
.main-banner-02,
.main-banner-03,
.main-banner-04,
.main-banner-05{
	font-size: 14px;
	text-align: center;
	background:#F9F9F9;
	padding: 6px 0;
	transition: 0.2s;
	border-radius: 6px;
	font-family:'Yu Gothic medium';
	font-weight: bold;
}
.main-banner-01	{
	border: 2px solid #0C5BA8;
	color:#0C5BA8;
	font-size: 16px;
}
.main-banner-02	{
	border: 2px solid #D49B0C;
	color:#D49B0C;
}
.main-banner-03	{
	border: 2px solid #cf1e5a;
	color:#cf1e5a;
	font-size: 16px;
}
.main-banner-04	{
	border: 2px solid #17a2b8;
	color:#17a2b8;
}
.main-banner-05	{
	border: 2px solid #d2652e;
	color:#d2652e;
	font-size: 16px;
}
.main-banner-01:hover	{
	color:#fff;
	background:#0C5BA8;
	font-weight:normal;
}
.main-banner-02:hover	{
	color:#fff;
	background:#D49B0C;
	font-weight:normal;
}
.main-banner-03:hover	{
	color:#fff;
	background:#cf1e5a;
	font-weight:normal;
}
.main-banner-04:hover	{
	color:#fff;
	background:#17a2b8;
	font-weight:normal;
}
.main-banner-05:hover	{
	color:#fff;
	background:#d2652e;
	font-weight:normal;
}

/*追加したもの*/
.img_wrap{
  border-radius: 6px;
  margin: 0 auto;
  overflow: hidden;
}
.img_wrap img{
  width: 100%;
  cursor: pointer;
  transition: opacity 0.3s;
}
.img_wrap:hover img{
  opacity: 0.6;
  transition: opacity 0.3s;
}

@media screen and (max-width : 658px ){
	.main-banner-01,
	.main-banner-02,
	.main-banner-03,
	.main-banner-04,
	.main-banner-05	{
		letter-spacing: -1px;
		font-size: 0.98em;
	}
}
@media screen and (max-width: 767px) {
	.main-banner-01,
	.main-banner-02,
	.main-banner-03,
	.main-banner-04,
	.main-banner-05 {
		letter-spacing: 0px;
	}
}


.flexbox{
 display: flex;
 flex-direction: column;
}
@media screen and (max-width: 767px) {
  .order1 {
    order: 1;
	margin-top: -40px;   
  }
  .order2 {
    order: 2;
	margin-top: 40px;  
  }
}
/*ルビ有文字noline-height
-------------------------------------*/
.rubi-text{
	line-height: 200%;
}

@media screen and (max-width: 767px) {
	.rubi-text	{
		line-height: 240%;
	}
}


/*WordPress 投稿記事一覧　不具合が解消されたら消す
-------------------------------------*/
.info-inner	{
	border-bottom:#dbebe8 1px solid;
	margin:10px 0px 5px;
}
.info-date	{
	font-size:12px;
	font-weight:normal;
	width:14em;
	float:left;
	padding-top:2px;
}
.info-txt	{
	font-size:16px;
	padding-bottom:8px;
	margin-left: 5.2em;
	text-indent: -5.2em;
}
@media screen and (max-width: 767px) {
	.info-date	{
	width:14em;
	padding-right:0px;
}
	.info-txt	{
		font-size:14px;
		margin-left: 6em;
		text-indent: -6em;
	}
}
/*ここまで*/

.whats-sundai	{
	font-size: 26px;
	color: #2E327F;
	/*font-style: italic;*/
}
.about-sundai	{
	font-size: 32px;
	text-align: center;
	padding: 10px 0 6px;
	background-size: 5px 5px;
	background-color: #f0f9ff;
    background-image: linear-gradient(-45deg, #bde6ff 25%, transparent 25%,
          transparent 50%, #bde6ff 50%, #bde6ff 75%,
          transparent 75%, transparent);
}
.sundai-line	{
	font-size: 22px;
	padding: 0 0 3px 0;
	border-bottom: solid 1px #0066cc;
}
@media screen and (max-width: 767px) {
	.top-b-header	{
		font-size: 24px;
		margin: 0.3em  0 0.8em;
	}
	.top-b-header:before	{
		top: -12px;
		left: 50%;
		width: 90px;
		height: 85px;
		border-radius: 100%;
	}
	.top-m-header	{
		font-size: 20px;
		padding: 10px 0 7px;
	}
	.top-link-btn {
		font-size: 18px;
		padding: 22px 18px 14px;
		border-radius: 4px;
	}
	.sample-link-btn {
		font-size: 16px;
		padding: 18px 16px 10px;
		border-radius: 4px;
	}
	.entry-link-btn {
		font-size: 16px;
		padding: 15px 10px 5px;
		border-radius: 40px;
	}
	.problem-btn,
	.answer-btn	{
		font-size: 16px;
		padding: 18px 16px 10px;
		border-radius: 4px;
	}
	
	.whats-sundai	{
		font-size: 20px;
		font-style: normal;
	}
	.sundai-line	{
		font-size: 16px;
	}
	p{
		font-size: 16px;
	}
	.about-sundai	{
		font-size: 24px;
	}
	.main-banner-01,
	.main-banner-02,
	.main-banner-03,
	.main-banner-04,
	.main-banner-05	{
		font-size: 16px;
		padding: 4px 0;
}
}

@media screen and (max-width: 380px) {
	.top-link-btn,
	.sample-link-btn,
	.problem-btn,
	.answer-btn{
		font-size: 14px;
		padding: 16px 10px 8px;
	}
	.entry-link-btn{
		font-size: 13px;
		padding: 10px 10px 5px;
	}	
}

/*第2階層
==========================================*/
.sec-a-header {
	font-size: 32px;
	position: relative;
	background: #e7ffe6;
	padding: 2px 10px;
	border-left: solid 6px #09b300;
	border-radius: 5px 0 0 5px;
}
.sec-b-header {
	font-size: 24px;
	position: relative;
	background: #f6f7f9;
	border-left: solid 6px #67b7ff;
	border-radius: 5px 0 0 5px;
	padding:0.6em 0 0.3em 0.4em;
}
.sec-m-read	{
	font-size: 18px;
	background: #17a2b8;
	color: #fff;
	padding:0.8em 0 0.3em 0.4em;
}

.header-accent{
	line-height: 150%;
}

.header-accent-color{
	color: #424242;
	font-size: 1rem;
}

.entry-border	{
	font-size: 22px;
	border: #c2d9ff 2px solid;
	padding: 8px 4px 8px 6px;
}

.entry-border2	{
	font-size: 18px;
	border: #8de797 2px solid;
	padding: 8px 4px 8px 1em;
	text-indent: -1em;
}
.entry-maru {
    border-radius: 50%;
    font-size: 24px;
    padding: 0 3px;
    color: #fff;
    border: 4px solid #80affc;
    background: #80affc;
	margin-right: 10px;
}
.entry-arrow	{
	font-size: 30px;
	text-align: center;
	color: #C6D4EE;
}
.entry-have	{
	padding: 8px 4px 5px 8px;
	border: 2px dotted #da988b;
}
.entry-att-read	{
	font-size: 18px;
	background: #5cafff;
	color: #fff;
	padding: 5px 0 3px 4px;
}
.jisage	{
	padding-left: 1em;
	text-indent: -1em;
}
.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
img.photo{
	background-color: #ffffff;
    padding: 8px;
    border: 1px solid #dfdfd0;
    box-shadow: 1px 1px 10px rgba(0,0,0,0.15);
}
@media screen and (max-width: 767px) {
	.sec-a-header {
		font-size: 22px;
	}
	.sec-b-header {
		font-size: 18px;
	}
	td{
		font-size: 12px;
	}
	.sec-m-read	{
		font-size: 16px;
	}
	.header-accent{
	line-height: 200%;
	}
	.header-accent-color{
	font-size: 0.8rem;
}
}

.privacy-header	{
	font-size: 36px;
	text-align: center;
	position: relative;
	padding:10px 0;
	margin: 30px 0 45px;
}
.privacy-header:before	{
	content: "";
  	position: absolute;
  	top: -12px;
	left: 50%;
	width: 120px;
	height: 85px;
	border-radius: 100%;
	border: 3px solid #94a6d1;
	border-left-color: transparent;
	border-right-color: transparent;
	transform: translateX(-50%);
}
.pv-b-header {
	font-size: 24px;
	position: relative;
	background: #f3f5fa;
	padding: 10px 10px;
	border-left: solid 6px #a0b0d6;
	border-radius: 5px 0 0 5px;
}
ol.list-number {
    list-style: none;
    counter-reset: roundList;
    padding-left: 0;
}
ol.list-number>li {
    position: relative;
    padding-left: 2em;
    margin-bottom: 5px;
	font-size: 16px;
}
ol.list-number>li::before {
    content: counter(roundList);
    counter-increment: roundList;
    position: absolute;
    left: 0;
    width: 1.5em;
    height: 1.5em;
    line-height: 1.5em;
    text-align: center;
    font-family: "Arial","Helvetica",sans-serif;
    font-size: 90%;
    color: #FFFFFF;
    background-color: #acbadb;
    border-radius: 4px;
}
.privacy-att-read	{
	font-size: 18px;
	background: #94a6d1;
	color: #fff;
	padding: 5px 0 3px 4px;
}
@media screen and (max-width: 767px) {
	.privacy-header	{
		font-size: 24px;
		padding:10px 0;
		margin: 30px 0 45px;
	}
	.privacy-header:before	{
		top: -12px;
		left: 50%;
		width: 90px;
		height: 70px;
		border-radius: 100%;
	}
	.pv-b-header {
		font-size: 18px;
	}
	.privacy-att-read	{
		font-size: 18px;
	}
	ol.list-number-table>li{
		font-size: 12px;
	}

}

@media screen and (max-width: 524px) {
	#can.privacy-header	{
		font-size: 18px;
		padding:10px 0;
		margin: 20px 0 25px;
	}
}
.info-box	{
	background: #ffffff;
	border: #cccccc 1px solid;
	border-radius: 5px;
	padding: 10px;
}

.hero-img{
	position: relative;/*親要素にrelative*/
}
.hero-text{
  position: absolute;/*重ねたい子要素にabsolute*/
  top:50%;
  left: 18%;
 -ms-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
  -webkit-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
  transform: translate(-50%,-50%);/*センター寄せの修正*/
  color: #fff;
  font-size: 2rem;
  font-weight: 600;
  margin: 0!important;/*文字がずれている場合や*/
  padding: 0!important;/*文字が折り返される場合*/
}

.font-size{
	font-size: 1.4rem;
}
/*モーダルウィンドウ
------------------------------------*/
.modal{
    display: none;
    height: 100%;
    position: fixed;
    top: 0;
    width: 100%;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 10px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%;
}	
