@charset "utf-8";

*{
	font-family: 'Noto Sans JP', 'Sen', 'Kosugi', sans-serif;
	margin:0px;
	padding:0px;
	border:0px;
	box-sizing: border-box;
	font-size:14px;
	font-weight: normal;
	list-style-type: none;
}
body{
	background-color: #fff2da;
}
img{
	vertical-align: bottom;
}
input,textarea,button{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-appearance: none;
	max-width: 100%;
}
/****************************************************************
 * header
*/
	header{
		width:100%;
		height:48px;
		border:1px solid #005074;
		background-color: #4682b4;
		color:#fff;
		padding:4px;
		z-index:5000;
		position: fixed;
		top:0;
		left: 0;
		/*background: -moz-linear-gradient(top, #4682b4, #005074);
		background: -webkit-linear-gradient(top, #4682b4, #005074);
		background: linear-gradient(to bottom, #4682b4, #005074);*/

	}
	header h1{
		text-align: center;
		font-size:20px;
		font-weight: bold;
		line-height: 38px;
	}
	header h1 a{
		text-decoration: none;
		font-size:inherit;
		font-weight: inherit;
		color: #fff;
	}
	#spMenuBtn{
		position: absolute;
		right:16px;
		top:14px;
		font-size: 20px;
		color:#fff;
	}
	#spUserBtn{
		position: absolute;
		left:16px;
		top:14px;
		font-size: 20px;
		color:#fff;
	}

/****************************************************************
 * footer
*/
	footer div{
		margin:0 auto;
		max-width: 720px;
		color:#fff;
	}
	footer{
		width:100%;
		/*height:64px;*/
		background-color: #4682b4;
		color:#fff;
		padding:4px 4%;
		overflow: hidden;
	}
	.footkeyword{
		max-width: 720px;
		margin:0 auto;
		list-style-type: none;
		padding:16px 0;
		overflow: hidden;
	}
	.footkeyword li{
		padding:2px 4px;
		display:inline-block;
		border:1px solid #999;
		background-color: #005074;
		float: left;

	}
	.footLinks{
		padding:16px 0;
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
	.footLinks a{
		display: block;
		width: 40%;
		margin:4px 0;
		padding:8px 4%;
		text-decoration: none;
		text-align: center;
		color:#fff;
		position: relative;

	}
	.footLinks a:nth-child(odd):after{
		content:"|";
		position: absolute;
		right:-10%;
		top: 50%;
		transform: translate(-50%, -50%);
		margin: auto;

	}
	.copyrigthBox{
		text-align: center;
	}
/****************************************************************
 * navigation
*/
	#spnav{
		display:none;
		width:100vw;
		height:100vh;
		position: fixed;
		top:0;
		left:0;
		background-color: rgba(70,130,180,1);
		z-index: 10000;
	}
	#spnav *{
		color:#fff;
	}
	.navBlock{
		max-width: 720px;
		width: 90%;
		margin: 40vh 0 0 10%;
		transform: translateY(-50%);
		height:auto;
	}
	.navBlock ul{
		width:100%;
		/*display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;*/

	}
	.navBlock ul li{
		/*width:46%;*/
		border:1px solid #999;
		border-radius: 12px 0 0 12px;
		/*height: 80px;*/
		/*padding:8px 4px;*/
		margin:0 0 8px 0;
		background-color: #eeeeee;
		
	}
	.navBlock ul li a{
		color:#333 !important;
		text-decoration: none;
		display:block;
	}
	.navBlock ul li a i{
		color:#46b44c !important;
	}
	.navBlock ul li.row1p{
		width:100%;
	}
	.navttl{
		font-size: 1.4em;
		text-align: left;
		padding:8px 0;
	}
	#spMenuClose{
		/*font-size: 32px;
	    position: absolute;
	    top: -30px;
	    right: 0;*/
	}
	.btmlink{
		font-size: 0.8em;
		text-align: center;
		padding:16px 0 8px 0;
	}

	/* bread */
	#bread ul{
		list-style-type: none;
		padding:8px 4% 8px 4%;
		overflow: hidden
	}
	#bread ul li{
		background-color: #fff;
		padding:4px 8px;
		margin:4px 16px 4px 0;
		border-radius: 8px;
		display:inline-block;
		font-size: 0.8em;
		color:#00bfff;
		float:left;
	}
	#bread ul li:last-child{
		color:#333;
	}

	#bread ul li a {
		text-decoration: none;
		font-size: 1em;
		color:#00bfff;
		float:left;
	}

	#bread ul::after {
		clear: both;
	}

	@media screen and (min-width: 720px) {
		.navBlock{
			margin: 0 auto;
			transform: none;
			height:auto;
			top:50%;
			transform:translateY(50%);
		}
		.navBlock ul{
			display: flex;
			flex-wrap: wrap;

		}
		.navBlock ul li{
			width:48%;
			border-radius: 12px;
		}
	}
/****************************************************************
 * Top contents
 */
	#top_main{
		margin:0 auto;
		padding:48px 0 0 0;
		max-width: 780px;
	}
	#top_main article{
		padding:8px 4%;
		margin:0 auto;	
	}
	#firstSearchBox{
		max-width: 480px;
		font-size: 1.2em;
	}
	#firstSearchBox input[type=search]{
		width:84%;
		padding:8px 16px;
		border-radius: 4px 0 0 4px;
		font-size: inherit;
		border:1px solid #ccc;
		border-right:0px;
	}
	#firstSearchBox input[type=search]::placeholder{
		font-size: 0.8em;
	}
	#firstSearchBox input[type=search]+button{
		width:16%;
		padding:8px;
		border-radius:0 4px 4px 0;
		font-size: inherit;
		border:1px solid #4682b4;
		border-left:0px;
		background-color: #4682b4;
		color:#fff;
	}
	#firstSearchBox input[type=search]+button i{
		font-size: 1.2em;
	}

	#genreListBox{
		overflow-x:scroll;
		background-color: #fefefe;
	}
	ul.listButtons{
		padding:8px 0;
		width:724px;
	}
	ul.listButtons li{
		display:table-cell;
		width:56px;
		padding:0 4px 0 0;
		font-size: 0.6em;
		vertical-align: top;
	}
	ul.listButtons li a span{
		padding:2px 0 0 0;
		display:inline-block;
		text-decoration: none;
		color:#999;
		font-size: 0.8em;
	}
	.circleBtn {
		margin:0 auto;
		/*border:1px solid #740000;*/
		display: inline-block;
		text-decoration: none;
		background: #999;
		color: #FFF;
		width: 48px;
		height: 48px;
		line-height: 48px;
		border-radius: 50%;
		text-align: center;
		overflow: hidden;
		/*transition: .4s;*/
		box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.33);
	}
	.circleBtn i{
		font-size: 24px;
		line-height: inherit;
	}
	/* other contents */
	.cardBox{
		margin:0 4px 8px 4% !important;
		padding: 8px 0 !important;
		background-color: #fff;
		border:1px solid #ccc;
	}

	.labelList{
		margin:8px;
		display: flex;
		flex-wrap: wrap;
		/*justify-content: */
	}
	.labelList li.labelTtl{
		/*border-bottom:1px solid #333;*/
		padding:8px 0;
		width:100% !important;
	}
	.labelList li a{
		display: block;
		margin:0 2% 8px 2%;
		padding:8px;
		border:1px solid #ccc;
		border-radius: 4px;
		text-align: left;
		font-size:1.4vh;
		text-decoration: none;
		color:#333;
	}
	.labelList li a i{
		margin:0 8px 0 0;
	}

	.campaignBox{
		margin:8px 4px;
		border:1px solid #ccc;
		display:flex;
		justify-content: space-between;
	}
	.campaign-img{
		position: relative;
	}
	.campaign-img img{
		width:100%;
	}
	.campaign-img-label{
		position: absolute;
		top:0;
		left:0;
		font-size: 0.6em;
		padding:2px 4px;
		color:#fff;
		background-color: rgba(0,0,0,0.8);
	}

	.mailBox{
		margin:8px 4%;
	}
	.mailBox li{
		padding:8px 4px;
		font-size: 0.8em;
		border-bottom:1px dashed #999;
	}
	.mailBox li i{
		margin:0 8px 0 0;
	}
	.mailBox li:first-child{
		border-top:4px solid #666;
	}
	.mailBox li:last-child{
		border-bottom:4px solid #666;
	}
	.maildttm{
		text-align: right;
		padding:2px 0;
		font-size: 0.8em;
	}

	.btn-flex{
		display:flex;
		justify-content: space-around;
	}
	.squaerBtn-rich{
		margin:0 2%;
		border-radius: 4px;
		background-color: #4682b4;
		border-right:2px solid #005074;
		border-bottom:2px solid #005074;
		color:#fff;
		text-align: center;
	}
	.squaerBtn-rich a{
		display: block;
		padding:16px 0;
		text-decoration: none;
		color:#fff;
		font-size: 1.2em;
	}
	.squaerBtn-rich a i{
		display: block;
		margin:0 auto;
		font-size: 1.8em;
	}
	.signin{
		background-color: #b44646 !important;
		border-right:2px solid #740000 !important;
		border-bottom:2px solid #740000 !important;	
	}
	.gakusei{
		background-color: #4682b4 !important;
		border-right:2px solid #005074 !important;
		border-bottom:2px solid #005074 !important;	
	}
	.sensei{
		background-color: #46b455 !important;
		border-right:2px solid #007406 !important;
		border-bottom:2px solid #007406 !important;	
	}

	/* course list */
	.cList {
		margin:8px 0;
	}
	.cList li{
		padding:4px 8px;
		border-bottom:1px dashed #999;
		font-size: 1em;
		position: relative;
	}
	.cList li a{
		text-decoration: none;
		color:inherit;
		font-size: inherit;
		font-weight: inherit;
	}
	.cList li.cttl{
		padding:4px 24px 4px 8px;
		background-color: #f4f4f4;
		border-radius: 4px;
		text-align: center;
		font-size:1em;
		border:none !important;
	}
	.cList li.cttl:after{
		font-family: "Font Awesome 5 Free";
		content: "\f107";
		font-weight: 900;
		position: absolute;
		right:4px;
		top:50%;
		transform: translate(-50%, -50%);
		margin:auto;

	}
	.cList li:not(:first-child):{
		font-family: "Font Awesome 5 Free";
		content: "\f054";
		font-weight: 900;
		position: absolute;
		right:4px;
		top:50%;
		transform: translate(-50%, -50%);
		margin:auto;
	}


	.requestbtn_eve,.requestbtn_eve *{
		background-color: #81cb00 !important;
		color:#ffffff !important;
	}
	.requestbtn,.requestbtn *{
		background-color: #e8961d !important;
		color:#ffffff !important;
	}
	.detailsbtn,.detailsbtn *{
		background-color: #4682b4 !important;
		color:#ffffff !important;
	}
	.sclistbox{
		margin:0 0 16px 0;
		position: relative;
		border:1px solid #efefef;
		box-shadow: 0px 4px 4px #efefef;
	}
	.scl-img{
		width:60%;
		position: relative;
	}
	.scl-img img{
		width: 100%;
	}
	.scl-imglabel{
		position: absolute;
		top: 0;
		left:0;
		background-color: rgba(0,0,0,0.8);
		padding:4px 16px;
		color:#fff;
		font-size: 0.8em;
	}
	.scl-imglabel2{
		position: absolute;
		bottom: 0;
		left:0;
		background-color: rgba(0,0,0,0.8);
		padding:4px 16px;
		color:#fff;
		font-size: 0.8em;
	}
	.scl-btns{
		display: flex;
		justify-content:space-around;
	    flex-wrap: wrap;
   		flex-direction: row;
   		height:100%;

	}
	.scl-btns button{
		width:92%;
		margin: 8px 0;
	}
	.scl-con {
		width:40%;
		font-size:0.1em;
		display: flex;
		justify-content:space-between;
		flex-direction: column;
	}
	.scl-schoolname{
		width: 100%;
		padding:4px 8px;
		text-align: left;
	    padding: 0.5em 1em;
	    background: #f4f4f4;
	    border-top: solid 6px #4682b4;
	}
	.scl-schoolname h4{
		font-size:1.2em;
		font-weight: normal;
	}
	.sclistbox{
		display: flex;
		justify-content:space-around;
		flex-wrap: wrap;
	}
	.scl-description{
		width: 100%;
		padding:8px 8px;
		text-align: left;
		font-size: 0.8em;
	}
	.slidewrap{
		overflow: hidden;
	}
	.slideList{
		margin:8px 16px;
	}
	.slideList li{
		/*width:100%;*/
		display:block;
		position: relative;
		margin:0 8px;
	}
	.slideList li a{
		display: block;
		background-color: #efefef;
	}
	.slideList li a img{
		width:100%;
		margin:0 auto;
		display:block;
		vertical-align: middle;
	}
	.reportImageLabel{
		position: absolute;
		bottom:0;
		right:0;
		padding:8px;
		background-color: rgba(0,0,0,0.8);
		color:#fff;
		text-decoration: none;
	}
	.flexBtnBox{
		margin:4px 8px;
		display: flex;
		justify-content: center;
	}
	.flexBtnBox button{
		margin:0 2px;
		padding:8px 16px;
		background-color: #efefef;
		border-radius: 4px;
	}
	.flexBtnBox button i{
		color:#46b44c;

	}
.LINElink{
	border: 2px solid #46b455;
	padding:2% 1%;
}
/*----------------------------*/
.on_eve_tag {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.on_eve_tag li {
	list-style-type: none;
	margin: 0.5%;
	padding: 0.5%;
    text-align: center;
    border: 1px solid #4682B4;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
}
.pic {
	background-color:#4682B4;
	color:#fff;
}
.on_eve_img {
	width:100%;
	margin:20px 0;
	text-align: center;
}
.on_eve_img img {
	max-width: 100%;
	height:auto;
}
.on_eve_txt {
	margin-bottom: 30px;
}
.on_eve_summary {
	margin-bottom: 30px;
}
.on_eve_subttl {
	border-bottom:1px solid #4682B4;
	padding-bottom:5px;
	margin-bottom: 20px;
}
.on_eve_summary dl {
	width:100%;
	display: flex;
	flex-direction: row;
	margin-bottom: 10px;
}
.on_eve_summary dl dt {
	width:20%;
	background-color:#4682B4;
	color:#fff;
	text-align: center;
	padding:1% 0;
	margin-right: 2%;
}
.on_eve_summary dl dd {
	width:78%;
	padding: 1% 2% 0 0;
}
.month_col {
	font-weight:bold;
}
.on_eve_schedule {

}

.acd-check{
    display: none;
}
.acd-label{
    background: #E8961D;
    color: #fff;
    display: block;
    margin-bottom: 1px;
	padding: 10px;
	text-align: center;
}
.acd-content{
    height: 0;
    opacity: 0;
	padding: 10px 0 0 0;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label + .acd-content{
	height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}
table {
    width: 100%;
}
table th {
    color: #1F5AA5;
    font-size: 14px;
    text-align: left;
    border-bottom: 1px solid #ccc;
    padding: 2%;
    width: 20%;
    box-sizing: border-box;
}
table td {
    font-size: 14px;
    text-align: left;
    border-bottom: 1px solid #ccc;
    padding: 2%;
    /*width: 80%;*/
    box-sizing: border-box;
}.must {
    color: #ff0000;
}
table td input {
    height: 40px;
    font-size: 14px;
    padding: 0 1%;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
}
.form-btn {
    text-align: center;
    margin: 1% 0;
}
.input96 {
    width: 96%;
}
.input10 {
    width: 10%;
}
.input40 {
    width: 40%;
    background-color: darkorange;
    color: #fff;
}
/*-------------*/
@media screen and (max-width: 760px) {
/*スマホフォーム用*/
table {
	width: 100%;
}
table th {
	padding: 3% 0;
	width: 100%;
	display: list-item;
	list-style-type: none;
	border: none;
}
table td {
	padding: 0 0 3% 0;
	width: 100%;
	display: list-item;
	list-style-type: none;
	border: none;
}
table td input {
    height: 50px;
}
.input10 {
    width: 20%;
}
.form-btn {
    margin: 3% 0 0;
}

/*-------------*/
}
/*-------------*/



	/*----------------------------------------------------------
	 * media size */
	 
	@media screen and (min-width: 720px) {
		#areaBox .labelList li {
			width:20%;
		}
		#genreBox .labelList li {
			width:32%;
		}
		.scl-btns button,
		.scl-btns button i{
			font-size: 1.0em;	
		}
		.flx3box{
			display: flex;
		    flex-wrap: wrap;
		}
		.flx3box .sclistbox{
			width:32%;
			margin: 0 1% 8px 0;
			align-content: baseline;
		}
		.flx3box *{
			align-items: start;

		}
		.flx3box .scl-img,
		.flx3box .scl-con{
			width:100% !important;
		}
	
	}
/****************************************************************
 * main contents
 */
	#main{
		margin:0 auto;
		padding:48px 0 0 0;
		max-width: 980px;
	}

	#introBox,
	.introBox{
		margin:0 4% 16px 4%;
		padding:8px 0;
		background-color: #ffffff;
		border:1px solid #ccc;
		/*box-shadow: 10px 10px 8px rgba(00,00,00,0.3);*/
	}
	.imgmain{
		margin:0 0 16px 0;
		/*padding:0 0 16px 0;*/
		width:100%;
		max-height:100vw;
		position: relative;
		background-color: #fff;
	}
	.imgmain img{
		margin:0 auto;
		display: block;
		max-width:100%;
		height: auto;
		object-fit: contain;
	}
	.imgmain .im_label{
		position: absolute;
		bottom:32px;
		left:0;
		padding:2%;
		display: block;
		background-color: rgba(0,0,0, 0.5);
		font-weight: bold;
		color:#fff;
		font-size:1.6em;
	}
	.cblock img{
		width:100%;
		height:160px;
		object-fit: cover;
		object-position: top;
	}
	.cblock .im_label{
		font-size: 1.4em !important;
	}
	.imgmain .im_label_min{
		position: absolute;
		bottom:32px;
		left:0;
		padding:2%;
		display: block;
		background-color: rgba(0,0,0, 0.5);
		font-weight: bold;
		color:#fff;
		font-size: 1.2em !important;
	}

	.introRibon{
		width: 100%;
		margin: 0px 0 0 -10px;
		padding:4px 16px 4px 24px;
		font-size: 1.2em;
		color:#ffffff;
		background-color: #4682b4;
		border:1px solid #005074;
		position: relative;
	}
	.introRibon::before{
		display: block;
	    width: 10px;
	    height: 0px;
	    position: absolute;
	    bottom: -10px;
	    left: -11px;
	    content: "";
	    border-bottom: 10px solid transparent;
	    border-right: 10px solid rgb(0, 80, 116);
	}
	.introRibon i{
		font-size:inherit;
		padding:0 8px 0 0;
	}

	.content{
		padding:16px 4% 24px 4%;
	}
	.content p{
		padding:0 0 8px 8px;
	}
	.content img {
		max-width: 100%;
		height:auto;
	}




	.ibimg img{
		width: 100%;
		padding:8px 0;
		object-fit: contain;
	}
	/* course link box */
	.cbox{
		padding:0 0 8px 0;
	}
	.cimg{
		margin:0 0 8px 0;
		position: relative;
	}
	.cimg img{
		width: 100%;
		height: 120px;
		object-fit:cover;

	}
	.cimg .clabel{
		position: absolute;
		bottom:10px;
		right:0;
		padding:2%;
		display: block;
		background-color: rgba(0,0,0, 0.5);
		font-weight: bold;
		color:#fff;
		font-size:1em;
	}

	.sticky{
		padding: 0.5em 1em;
		margin: 1em 0;
		background: #f4f4f4;
		border-left: solid 6px #4682b4;
		box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.33);
	}
	.sticky i{
		margin:0 8px 0 0;
		color:#46b44c;
	}

	.basicTbl{
		width:100%;
	}
	.basicTbl tr{
		padding:8px;
	}
	.basicTbl tr th{
		display:inline-block;
		padding:4px 8px;
		color:#fff;
		border: 1px solid #999;
		background-color: #005074;

	}
	.basicTbl tr td{
		display: block;
		padding:8px 0;
		width:100% !important;
	}
	.basicTbl tr th + td{
		border-bottom: 1px dashed #333;
		margin:0 0 8px 0;
	}

	#grandBtn {
		z-index:5000;
		line-height: 2em;
		position: fixed;
		bottom:24px;
		right: 12px;
	}
	#grandBtn button{
		border:1px solid #740000;
		display: inline-block;
		text-decoration: none;
		background: #b44646;
		color: #FFF;
		width: 48px;
		height: 48px;
		line-height: 48px;
		border-radius: 50%;
		text-align: center;
		overflow: hidden;
		transition: .4s;
		box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.33);
	}
	#grandBtn button i{
		font-size: 24px;
		line-height: inherit;
	}
	.btn-stitch {
		margin:8px;
		width:24%;
		display: inline-block;
		padding: 0.5em 1em;
		text-decoration: none;
		background: #4682b4;
		color: #FFF;
		border-radius: 4px;
		box-shadow: 0px 0px 0px 5px #4682b4;
		border: dashed 1px #FFF;
	}
	.btn-rich {
		margin:8px 4px 8px 0;
		text-decoration: none;
		background-image: linear-gradient(#fff,#f5f8fa);
		border: 1px solid #e6ecf0;
		border-radius: 4px;
		color: #393e42;
		cursor: pointer;
		display: inline-block;
		font-size: 0.8em;
		font-weight: bold;
		padding: 8px 8px;
		position: relative;
	 }
	 .btn-rich i{
	 	color:#4682b4;
	 	margin:0 8px 0 0 ;
	 }
	 .btn-rich:hover {
	  background-color: #e6ecf0;
	  background-image: linear-gradient(#fff,#e6ecf0);
	  border-color: #e6ecf0;
	}
	.btn-flat {
		margin:8px 4px 8px 0;
		text-decoration: none;
		/*background-image: linear-gradient(#fff,#f5f8fa);*/
		background-color: #eeeeee;
		border: 1px solid #e6ecf0;
		border-radius: 4px;
		color: #393e42;
		cursor: pointer;
		display: inline-block;
		font-size: 0.8em;
		font-weight: bold;
		padding: 8px 8px;
		position: relative;
	}

	.detailsData{
		margin:0 0 16px 0;
		border:1px solid #eee;
		box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.33)
	}
	.namesticky{
		margin:0 0 0px 0;
		background-color: #efefef;
		overflow:hidden;
		font-weight: normal;
	}
	.namesticky i{
		padding:8px 0;
		/*display: block;*/
		font-size: 1.0em;
		font-weight: normal;
	}
	.namesticky i:before{
		margin:0 16px 0 0;
		padding:8px 8px 8px 8px;
		background-color: #46b44c;
		color:#fff;
	}
	.ibfwb:before{
		font-weight: 900;
	}
	.cdetails{
		margin:0 0 16px 0;
		padding:0 0 0 12px;
		font-size:0.8em;
		line-height: 2em;
	}
	.cdetails h5{
		margin:16px 0 0 0;
	}

	.cdetails p{
		padding:0 8px;
		margin:0 12px 8px 0;
		font-size: 1em;
		background-image: 
	    linear-gradient(
	      180deg,
	      rgba(0,0,0,0) 0%,
	      rgba(0,0,0,0) 97%,
	      #ddd 97%,
	      #ddd 100%
	    );
		background-size:100% 2.4em;
		line-height:2.4em;
	}
	.nfont{
		font-size:1.1em !important;
	}
	.cdetails .cpoint{
		margin:0 12px 8px 0;
		padding:4px 16px 4px 16px;
		border-bottom: 1px dashed #ccc;
		font-size:inherit;
		position: relative;
	}
	.cdetails .cpoint i{
		position: absolute;
		right:4px;
	    top: 50%;
	    transform: translate(-50%, -50%);
	    margin: auto;
	}
	.clink{
		padding:4px 8px 4px 12px;
		text-align: right;
	}
	.btn-flat i{
		color:#4682b4;
		margin:0 8px 0 0 ;
		font-size: 1.2em;

	}
	.btn-flat:hover {
		background-color: #e6ecf0;
		background-color: #cccccc;
		/*background-image: linear-gradient(#fff,#e6ecf0);*/
		border-color: #e6ecf0;
	}
	.cntentimg img{
		max-width:100%;
		padding:2px;
		border:1px solid #eee;
		margin:0 auto;
		display:block;
	}
	.btnArea{
		padding: 16px 8px;
		display: flex;
		justify-content: space-between;
	}
	.btnArea a{
		width:33%;
		text-align: center;
	}

/****************************************************************
 * result page
 */
	.SearchBox{
		max-width: 480px;
		font-size: 1.2em;
		margin:0 auto;
	}
	.SearchBox input[type=text]{
		width:84%;
		padding:8px 16px;
		border-radius: 4px 0 0 4px;
		font-size: inherit;
		border:1px solid #ccc;
		border-right:0px;
	}
	.SearchBox input[type=text]::placeholder{
		font-size: 0.8em;
	}
	.SearchBox input[type=text]+button{
		width:16%;
		padding:8px;
		border-radius:0 4px 4px 0;
		font-size: inherit;
		border:1px solid #4682b4;
		border-left:0px;
		background-color: #4682b4;
		color:#fff;
	}
	.SearchBox input[type=text]+button i{
		font-size: 1.2em;
	}

/****************************************************************
 * result page
 */
	#reSearchBox{
		margin:8px 4% 16px 4%;
		padding:8px;
		background-color: #fff;
		border:1px solid #ccc;
	}
	.rltbox{
		margin:0 0 22px 0;
		position: relative;
		border:1px solid #efefef;
		box-shadow: 0px 4px 4px #bbb;

	}
	.rlt-img{
		position: relative;
	}
	.rlt-img img{
		width: 100%;
	}
	.rlt-imglabel{
		position: absolute;
		top: 0;
		left:0;
		background-color: rgba(0,0,0,0.8);
		padding:4px 16px;
		color:#fff;
		font-size: 0.8em;
		/*border-radius: 0 0 8px 0;*/
	}
	.rlt-btns{
		display: flex;
		justify-content:space-around;
	}
	.rlt-btns button{
		width:42%;
		margin: 8px 0;
	}

	.rlt-con {
		/*border-top: 8px solid #4682b4;*/
		font-size:0.1em;
	}
	.rlt-description{
		padding:4px 8px;
	}
	.rlt-description h4{
		margin:0 0 8px 0;
		padding:8px 0;
		font-size: 1.2em;
		font-weight: bold;
		border-bottom:1px dashed #333;
	}
	.pagebox{
		margin:16px 0 0 0;
	}
	.pagebox ul{
		list-style: none;
		display: flex;
		justify-content:center;
	}
	.pagebox ul li{
		width:32px;
		margin:0 4px;
		padding:8px 0;
		text-align: center;
		background-color:#4682b4;
		color:#fff;
	}
	.pagebox ul li a{
		text-decoration: none;
		color: #fff;
	}
	.signin2{
		background-color: #f59b42;
		color:#ffffff;
	    border-right: 2px solid #ba5d00 !important;
	    border-bottom: 2px solid #ba5d00 !important;
	}
	.orangeRibon{
		background-color: #f59b42;
		color:#ffffff;
		border: 1px solid #ba5d00 !important;
	}
	.orangeRibon:before{
		border-right: 10px solid rgb(186, 93, 0) !important;
	}
	ul.scl-list{
		margin:8px 0;
		list-style-type: none;
		border-top:2px solid #4682b4;
		border-bottom:2px solid #4682b4;
	}
	ul.scl-list li{
		border-bottom:1px dashed #4682b4;
		padding:4px 8px;
		font-size: 0.8em;
	}
	ul.scl-list li:first-child{
		border-bottom:2px solid #4682b4;
	}
	ul.scl-list li:last-child{
		border-bottom:none;
	}
	@media screen and (min-width:640px) {
		.rltbox{
			display: flex;
			justify-content:space-around;
			
		}
		.rlt-img {
			width:42%;
		}
		.rlt-con {
			width:58%;
		}
		.rlt-con{
			display: flex;
			justify-content:space-between;
			flex-direction: column;
		}
		
	}


/****************************************************************
 * 共通パーツ
 */
.mzero{
	margin:0;
}
.red{
	color:#ff0000;
}
.blue{
	color:#0000ff;
}
.col1{
	width:10%;
}
.col2{
	width:20%;
}
.col3{
	width:30%;
}
.col4{
	width:40%;
}
.col5{
	width:50%;
}
.col6{
	width:60%;
}
.col7{
	width:70%;
}
.col8{
	width:80%;
}
.col9{
	width:90%;
}
.col10{
	width:100%;
}

.note{
	margin:16px 0;
}
.note *{
	font-size: 0.8em;
}

.arrow-tag {
	margin:0 0 0 8px;
	display:inline-block;
	background-color:#005074;
	padding:0 16px 0 8px;
	position:relative;
	font-size: 0.8em;
	line-height: 24px;
	color:#fff;
    border-radius:0 4px 4px 0;
}
.arrow-tag:before {
	display: block;
    content: '';
    position: absolute;
    left: -12px;
    /*border-radius: 4px;*/
    border-right: 12px solid #005074;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
}
.arrow-tag:after{
    display: block;
    content: '';
    position: absolute;
    width: 4px;
    height: 4px;
    left: -4px;
    border-radius: 50%;
    top: 10px;
    background: #fff;
}

.alinkBtn{
	padding:16px 8px;
	text-align: center;
	width:100%;
	font-size: 1em;
}
.alinkBtn:hover,.alinkBtn:active{
	background-color: #8d580c !important;
}