@charset "utf-8";

/* margin,padding
--------------------------------------------------------------------*/

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
div,
p,
pre,
address,
blockquote,
ul,
ol,
dl,
dt,
dd,
form,
fieldset,
header,
nav,
footer,
figure,
section,
article {
	display: block;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

/* heading
--------------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
}

/* font 
--------------------------------------------------------------------*/

html {
	overflow-y	: scroll;
	height		: 100%;
	font-size	: 62.5%;
}



address,
em {
	font-style: normal;
}

/* list 
--------------------------------------------------------------------*/

ul,ol {
	list-style-type: none;
}

/* img 
--------------------------------------------------------------------*/

img {
	border: none;
	vertical-align: bottom;
	max-width: 100%;
}

/* form
--------------------------------------------------------------------*/

input,
select,
textarea,
button {
	font-size: inherit;
	line-height: inherit;
}

button {
	cursor: pointer;
}

/* table
--------------------------------------------------------------------*/

table,
thead,
tbody,
tfoot,
tr,
th,
td,
caption,
col,
colgroup {
	text-align: inherit;
	line-height: inherit;
	font-size: 100%;
}

table {
	display: table;
}

thead {
	display: table-header-group;
}

tbody {
	display: table-row-group;
}

tfoot {
	display: table-footer-group;
}

tr {
	display: table-row;
}

th,
td {
	display: table-cell;
}

caption {
	display: table-caption;
}

col {
	display: table-column;
}

colgroup {
	display: table-column-group;
}

/* clearfix
--------------------------------------------------------------------*/

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.clearfix {display: inline-block;}/*IE7用*/

/* Hides from IE-mac \*/
* html .clearfix { height:1%;}
.clearfix { display:block;}
/* End hide from IE-mac */

/* heading
--------------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight:300;
}

/** a **/

/** table **/
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/** margin-top **/
.mt0{margin-top: 0;}
.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mt60{margin-top: 60px;}
.mt70{margin-top: 70px;}
.mt80{margin-top: 80px;}
.mt90{margin-top: 90px;}
.mt100{margin-top: 100px;}

/** margin-left **/
.ml0{margin-left: 0;}
.ml10{margin-left: 10px;}
.ml20{margin-left: 20px;}
.ml30{margin-left: 30px;}
.ml40{margin-left: 40px;}
.ml50{margin-left: 50px;}
.ml60{margin-left: 60px;}
.ml70{margin-left: 70px;}
.ml80{margin-left: 80px;}
.ml90{margin-left: 90px;}
.ml100{margin-left: 100px;}

/** margin-bottom **/
.mb0{margin-bottom: 0 !important;}
.mb10{margin-bottom: 10px !important;}
.mb20{margin-bottom: 20px !important;}
.mb30{margin-bottom: 30px !important;}
.mb40{margin-bottom: 40px !important;}
.mb50{margin-bottom: 50px !important;}
.mb60{margin-bottom: 60px !important;}
.mb70{margin-bottom: 70px !important;}
.mb80{margin-bottom: 80px !important;}
.mb90{margin-bottom: 90px !important;}
.mb100{margin-bottom: 100px !important;}

/** margin-right **/
.mr0{margin-right: 0;}
.mr10{margin-right: 10px;}
.mr20{margin-right: 20px;}
.mr30{margin-right: 30px;}
.mr40{margin-right: 40px;}
.mr50{margin-right: 50px;}
.mr60{margin-right: 60px;}
.mr70{margin-right: 70px;}
.mr80{margin-right: 80px;}
.mr90{margin-right: 90px;}
.mr100{margin-right: 100px;}



/* メイン
--------------------------------------------------------------------*/

*{
	box-sizing: border-box;
}

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	line-height: 1.8;
	color: #231815;
	word-wrap : break-all;
  overflow-wrap : break-word;
}



/*-------------------------------------------------------------------
	wrap
-------------------------------------------------------------------*/

#wrap {
}

.opaImg:hover img {
	opacity: 0.7;
}


/*-------------------------------------------------------------------
	header
-------------------------------------------------------------------*/


#header {
	width:100%;
	background:#06C7F5;
}

#header .header {
	width:1280px;
	max-width: 94%;
	margin:0 auto;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 1.0;
	padding: 20px 0;
}

#header .header .hdLogo {
	margin-right: auto;
}

#header .header ul.pcnav {
	display: flex;
}

#header .header ul.pcnav li {
}

#header .header ul.pcnav li.tel {
	font-size:2.4rem;
	color:#FFF;
	font-weight:500;
	margin-right:20px;
}

#header .header ul.pcnav li.contact a {
	display:inline-block;
	font-size:1.8rem;
	background:#666;
	color:#fff;
	font-weight:300;
	padding:5px 20px 7px;
	border-radius:20px; 
	text-decoration: none;
	transition: all,.3s;
}

#header .header ul.pcnav li.contact a:hover {
	background:#444;
}

@media screen and (max-width: 767px){
	
	
	#header .header {
		max-width: 100%;
		box-sizing: border-box;
		padding:10px 3%;
		position:relative;
	}

	
	#header .header .hdLogo img {
		max-height:30px;
	}
	
	#header .header ul.pcnav {
		display:none;
	}
	
	
}



/*-------------------------------------------------------------------
	container
-------------------------------------------------------------------*/

#container {
	padding:30px 0 50px;
}

.alignLeft {
	text-align: left;
}

.alignCenter {
	text-align: center;
}

.alignRight {
	text-align: right;
}


/*-------------------------------------------------------------------
	main
-------------------------------------------------------------------*/

#main {
	width:1280px;
	max-width: 94%;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 767px){
	#main {
		display: block;
	}
}
	
/*-------------------------------------------------------------------
	pagetitle
-------------------------------------------------------------------*/

#pagetitle {
	position: relative;
}

#pagetitle::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.3);
	width: 100%;
	height: 100%;
}

#pagetitle .mainBg img {
	width: 100%;
}



.mainTitle {
	font-size:4.2rem;
	color:#fff;
	font-family: 'Noto Serif JP', serif;
	font-weight:400;
	letter-spacing: .1em;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
}



@media screen and (max-width: 767px){
	
	.mainTitle {
		font-size:3.2rem;
	}
	
}


/*-------------------------------------------------------------------
	side
-------------------------------------------------------------------*/

#side {
	width:25%;
}

.sticky {
	position: sticky;
	top: 50px;
	right: 0;
}

#side .navbox {
	border:1px solid #06c7f5;
	border-radius:5px;
	font-size:1.5rem;
	margin-bottom:30px;
}

#side .sideTitle {
	background:#06c7f5;
	color:#FFF;
	text-align:center;
	padding:3px 0 7px;
	font-size:2.0rem;
}



.snLink li {
	padding: 5px 10px;
}


.snLink li a {
	color:#333;
	transition: all,.3s;
}

.snLink li a:hover {
	color:#06C7F5;
}

.snLink li a:hover::after {
	right: 5%;
}


#side .infor {
	border:1px solid #B7B7B7;
	border-radius:5px;
	padding:15px 20px;
}


#side .infor dt {
	text-align:center;
	color:#06C7F5;
	font-size:2.0rem;
	font-weight:400;
	margin-bottom:10px;
	border-bottom:1px dotted #eee;
	padding:0 0 5px;
}

#side .infor dd.corp {
	padding-bottom:20px;
	font-size:1.4rem;
	line-height:1.6;
}

#side .infor dd.corp span {
	font-size:1.8rem;
	font-weight:300;
}

#side .infor dd.inq {
	margin:0 0 25px;
	text-align:center;
}

#side .infor dd.inq a {
	display:inline-block;
	font-size:1.6rem;
	background:#06C7F5;
	color:#FFF;
	font-weight:400;
	padding:5px 20px 8px;
	border-radius:7px;
	text-decoration: none;
	transition: all,.3s;
}

#side .infor dd.inq a:hover {
	text-decoration:none;
	opacity: 0.7;
}


@media screen and (max-width: 767px){
	#side {
		width: auto;
		margin-top: 50px;
	}
	
	.sticky {
		position: static;
	}
	
}


/*-------------------------------------------------------------------
	content
-------------------------------------------------------------------*/

#content {
	width:70%;
}

.fstTitle {
	border-left:10px solid #06C7F5;
	font-size:2.0rem;
	padding:7px 20px 10px;
	line-height:1.2;
	margin:0 0 20px;
	background:#d5f1f5;
	font-weight:400;
}

.secTitle {
	background:#06C7F5;
	padding:10px 20px;
	margin:0 0 20px;
}

.secTitle span {
	line-height:1.2;
	font-size:2.4rem;
	color:#fff;
	border-left:3px solid #FFF;
	font-weight:300;
	padding:2px 0 2px 10px;
}

.imgFlex {
	display: flex;
	justify-content: space-between;
}

.imgFlex.reverse {
	flex-direction: row-reverse;
}

.imgFlex .imgSame {
	width: 35%;
}

.imgFlex .imgText {
	width: 62%;
}

.blogFlex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 50px;
}


.blogFlex .blogSame {
	width: 49%;
	box-sizing: border-box;
}



.blogFlex .blogSame:nth-child(n + 3) {
	margin-top: 30px;
}

.blogFlex .blogSame a {
	display: flex;
	border: 1px solid #ccc;
	box-sizing: border-box;
	padding: 10px;
	color: #333;
	text-decoration: none;
	justify-content: space-between;
	transition: all,.3s;
	width: 100%;
	height: 100%;
}

.blogFlex .blogSame a:hover {
	background: #eee;
}

.blogPhoto {
	width: 45%;
}
.blogText {
	width: 50%;
	position: relative;
}
.blogTime {
	font-size: 0.8em;
}
.catSpan {
	display: inline-block;
	margin-left: 10px;
	background: #666;
	color: #fff;
	padding: 1px 10px 3px;
	line-height: 1.0;
}

.blogTitle {
	font-weight: 500;
}

.blogMore {
	text-align: right;
	position: absolute;
	bottom: 0;
	right: 0;
}

.detailWrap {
	overflow: hidden;
	zoom:1;
	position: relative;
}

.detailTime {
	text-align: right;
	margin-bottom: 10px;
}


@media screen and (max-width: 767px){
	#content {
		width: auto;
	}
	
	.imgFlex {
		display: block;
	}

	.imgFlex.reverse {
		flex-direction: row-reverse;
	}

	.imgFlex .imgSame {
		width: auto;
		margin-bottom: 30px;
		text-align: center;
	}

	.imgFlex .imgText {
		width: auto;
	}
	
	
	.blogFlex {
		display: block;
		margin-bottom: 50px;
	}

	.blogFlex .blogSame {
		width: auto;
	}

	.blogFlex .blogSame:nth-child(n + 2) {
		margin-top: 30px;
	}
	
}


/*-------------------------------------------------------------------
	footer
-------------------------------------------------------------------*/

#footer {
}


#footer address {
	padding:7px 0;
	font-size:1.2rem;
	color:#FFF;
	text-align:center;
	background:#06C7F5;
}

#pagetop {
	text-align:right;
	padding:0 5%;
}

@media screen and (max-width: 767px){
	
	#pagetop {
		width:100%;
		text-align:center;
		padding:0;
	}
}


/* format */

.sp {
	display:none;
}

.pc {
	display:inline;
}


/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="reset"],
input[type="button"] {
	border-radius: 0;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="reset"]::-focus,
input[type="button"]::focus {
	outline-offset: -2px;
}

*:focus {
	outline: none;
}

html {
 -webkit-text-size-adjust: 100%;
}


a[href^="tel:"]{
	color: #231815;
	text-decoration: none;
}

#header a[href^="tel:"]{
	color: #fff;
}


@media(min-width: 767px){
  
	a[href^="tel:"]{
    pointer-events: none;
  }
	
}

/** PageNavi **/
.wp-pagenavi {
	margin-top: 30px;
	text-align: center;
	clear: both;
}

.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	border: 1px solid #BFBFBF;
	padding: 3px 5px;
	margin: 2px;
	color: #333333;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border-color: #000;
}

.wp-pagenavi span.current {
	font-weight: bold;
}



/* edutor */

.detailWrap a {
	text-decoration: none;
}

.detailWrap a:hover {
	text-decoration: underline;
}

img.alignright { display: block; margin: 0 0 0 auto; }
img.alignleft { display: block; margin: 0 auto 0 0; }
img.aligncenter { display: block; margin: 0 auto; }

.detailWrap h1 {
	border-left:10px solid #06C7F5;
	font-size:2.0rem;
	padding:7px 20px 10px;
	line-height:1.2;
	margin:0 0 20px;
	background:#d5f1f5;
	font-weight:400;
}
.detailWrap h2 {
	font-size: 1.8rem;
	border-left: 5px solid #06C7F5;
	padding: 0 0 0 10px;
	margin-bottom: 20px;
	font-weight:400;
}
.detailWrap h3 {
	font-size: 1.8rem;
	border-bottom: 1px solid #06C7F5;
	padding: 0 0 5px;
	margin-bottom: 20px;
	font-weight:400;
}
.detailWrap h4 {
	font-size: 1.8rem;
	font-weight:400;
	color: #06C7F5;
	margin-bottom: 20px;
}