@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td{
border:0;
font-family:inherit;
font-size:100%;
font-style:inherit;
font-weight:inherit;
margin:0;
outline:0;
padding:0;
vertical-align:baseline;
}

:focus{
outline:0;
}

br.smp {
		display:none;
}

table{
border-collapse:separate;border-spacing:0;
}

caption, th, td{
font-weight:normal;text-align:left;
}

blockquote:before, blockquote:after,q:before, q:after{
content:"";
}

blockquote, q{
quotes:"" "";
}

a img{
border:0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{
display:block;
}

html {
	scroll-behavior: smooth;
}

body{
font:20px/2.0 'M PLUS 2',"Lucida Sans Unicode", "Lucida Grande", Arial, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
-webkit-text-size-adjust:100%;
	color:#555555;
	/*background: url(images/back2.jpg) center;*/
	position: relative;
	min-height:100vh;
}

.tat {
	height:100%!important;
}

.thumb .item p {
	text-indent:0;
	font-size: 1.2rem;
	line-height: 1.3;
    margin-top: 10px;
}
/* リンク設定
------------------------------------------------------------*/

a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size: 1.1rem;
font-weight:normal;
color: #8dc0ff;
}

a:hover, a:active{
outline:none;
color:#7bbb54;
}

a[href $='.pdf'] {
    background: url(images/pdf.png) no-repeat;
	padding: 10px 0 10px 58px;
	background-size: contain;
}

/**** Clearfix ****/

nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after, ul.post li:after,nav#mainNav .inner:after{
content:""; display:table;clear:both;
}

nav .panel,nav#mainNav,.newsTitle,.bg, .post, ul.post li,nav#mainNav .inner{
zoom:1;
}


/* レイアウト
------------------------------------------------------------*/

#wrapper, .inner{
margin:0 auto;
	overflow:hidden;
/*width:1280px;*/
}

#header{
background: #fff;
    padding: 0 186px;
}

#header .inner {
background: #fff;
width:auto;
}

.flexslider {
    width: 100%;
    margin: 0px auto 0;
    border: none;
	overflow: hidden;
}

#content2 {
float:right;
width:790px;
padding:40px 0 50px;
}

#content {
    float: none;
    width: 1080px;
    padding: 0px 0 250px;
    margin: 0 auto;
}

#sidebar{
float:left;
width:280px;
padding:40px 0 50px;
}

#footer{
clear:both;
    padding: 20px 0 30px;
    background-image: url(images/footerback.png);
    background-position-x: center;
    background-position-y: bottom;
    background-repeat-y: no-repeat;
	text-align: center;
	width: 100%;
    position: absolute;
    bottom: 0;
} 


/* ヘッダー
------------------------------------------------------------*/

#header h1{
padding:8px 0;
font-size: 1.0rem;
font-weight:normal;
line-height: 1.7;
}

.contact{
text-align: right;
    font-size: 100%;
    margin-top: 8px;
    position: absolute;
    top: 0;
    right: 0;
	line-height: 1.7;
}

.contact .tel{
font-size: 1.4rem;
font-family: "ヒラギノ角ゴ StdN","Hiragino Kaku Gothic StdN";
padding-right: 5px;
}

.tel img {
width: 30px;
    vertical-align: text-top;
    margin-right: 5px;
}

#header h2{
clear:both;
text-align:center;
margin: 0;
color:#000000;
font-size:160%;
font-weight:bold;
}

#header h2 img{
width:400px;
    margin-left: -100px;
}

#header .inner {
position:relative;
}

#mainImg img{
width:100%;
height:auto;
}

.post{
margin:0 0 20px 0;
padding-left: 15px;
}

.flex-direction-nav a {
    line-height: 1;
}

	.full {
background: #f0f8ff;
    padding: 4px 8px;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: -1;
}
	.full2 {
background: #fee;
    padding: 4px 8px;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: -2;
}
	.rot1 {
		transform: rotate(1deg);
	}
	.rot2 {
		transform: rotate(-1deg);
	}
	.waku{
	background-image: url(https://www.yusunosato.com/renewal/wp-content/themes/nazuna/img/waku.png);
    background-repeat-y: no-repeat;
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: -7px;
    z-index: 1;
	}
	section {
		margin-bottom:100px;
	}
	.newswrap {
		display: flex;
	}
	.newsmado {
width: 100%;
    box-sizing: border-box;
    padding: 0 15px 10px;
font-size: 1.0rem;
    line-height: 1.5;
	}
		.blog {
width: 100%;
	border-left: 2px solid #eee;
	border-right: 2px solid #eee;
    box-sizing: border-box;
    padding: 0 15px 10px;
	font-size: 1.0rem;
	line-height: 1.5;
	}
	.newsmado h3,
	.blog h3,
	.youtube h3 {
	width: 65%;
    border-bottom: 3px solid #ff9dd8;;
    text-align: center;
    margin: 0 auto 20px;
    line-height: 1.5;
    font-weight: 500;
    font-size: 1.5rem;
	}
	.newsmado h3 span,
	.blog h3 span,
	.youtube h3 span {
        font-size: 0.9rem;
    margin: 3px 0 5px;
    display: block;
    font-weight: 400;
	}
	
	.newsmado dd,
	.blog dd,
	.youtube dd {
    margin: 0 0.5em 1em;
}
		.youtube {
    width: 100%;
    box-sizing: border-box;
    padding: 0 15px 10px;
    font-size: 0.9rem;
    line-height: 1.4;
	}

/* 記事ループ
------------------------------------------------------------*/

.list{
padding:10px 0;
}

.post .list p{
padding:0;
}

.list span{
padding-left:10px;
}


/* タイポグラフィ
------------------------------------------------------------*/

h2.title{
    clear: both;
    margin-bottom: 50px;
    text-align: center;
    font-size: 200%;
    line-height: 1.4;
    font-weight: 500;
}

h2.title.pg {
	padding: 52px 0;
	background-image: url(images/skypic.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}

h2.title span{
padding: 0 10px 5px;
    color: #4c5aff;
    background: linear-gradient(transparent 56%, #f0f8ff 56%);
}

h2.title span.cw {
    background: linear-gradient(transparent 56%, #fff 56%);
}

h2.recentpost{
margin:15px 0 25px;
font-size:200%;
color: #4c5aff;
    border-bottom: 3px solid #000000;
}

.dateLabel{
text-align:right;
font-weight:bold;
}

.post p{
padding-bottom:15px;
	line-height: 1.6;
}

span.sm {
	display:block;
	margin-top:5px;
	font-size:1.1rem;
	line-height:1.6;
	color: #339b33;
}

.post ul{
margin:0px 0 35px 30px;
}

.post ul li{
padding-left:5px;
list-style:none;
text-indent: -18px;
}

.post ul li:before {
content: "●";
    color: #4c5aff;
    margin-right: 5px;
    font-size: 1.0rem;
    vertical-align: text-bottom;
}

.post ol{
margin:0 0 35px 30px;
}

ol.list_p{
  padding:0 0 0 2em;
  margin: 0 0 0 10px;
}
 
ol.list_p>li{
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
text-indent: -50px;
	line-height: 1.8;
    margin-bottom: 5px;
}
ol.list_p>li:before{
  display: marker;
  content: "( " counter(cnt) " ) ";
}

ol.list_p>ol {
  margin-left:35px;
}

ol.list_p ol>li {
 /*text-indent: -18px;*/
}

.post h1{
margin:15px 0 25px;
padding:5px 0;
font-size:150%;
/*font-weight:bold;*/
border-bottom:3px solid #7bbb54;
}

.post h2{
margin: 15px 0 25px;
padding:5px 0;
font-size:140%;
/*font-weight:bold;*/
border-bottom:2px solid #7bbb54;
}

.post h3{
margin: 15px 0 25px -15px;
padding:5px 0;
font-size:150%;
/*font-weight:bold;*/
border-bottom:1px solid #7bbb54;
}

.post h4{
        margin: 15px 0px 15px -15px;
    padding: 10px 10px 12px 12px;
    font-size: 130%;
	line-height: 1.4;
    font-weight:500;
    background: #f0f8ff;
    border-radius: 8px;
	clear: both;
	    box-shadow: 3px 3px 2px #d7daff;
}

.post h5{
    margin: 15px 0 10px;
    display: inline-block;
    padding: 0px 20px 2px;
    border-radius: 10px;
    font-size: 120%;
    color: #FFF;
    /*font-weight:bold;*/
    background: #339b33;
}

.post h6{
margin:15px 0 10px;
padding:15px 0;
font-size:110%;
font-weight:bold;
}

.post blockquote{
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote {
clear:both;
padding:10px 0 10px 25px;
margin:10px 0 25px 0px;
border-left:5px solid #e9e9e9;
}
 
.post blockquote p{
padding:5px 0;
}

.post table{
border:1px #cccccc solid;
border-collapse:collapse;
border-spacing:0;
margin:10px 0 30px;
width:100%;
}

.post table th{
padding:15px;
border:#cccccc solid;
border-width:0 0 1px 1px;
font-weight:bold;
	background: #f0f8ff;
}

.post table td{
padding:15px;
border:1px #cccccc solid;
border-width:0 0 1px 1px;
}

ul.stafflist li {
display: inline-block;
padding: 0 10px;
background: #ffeeee;
border-radius: 10px;
text-indent: 0;
margin: 0 5px 15px;
}
ul.stafflist li:before {
content: none;
}
.flb {
	display: flex;
    gap: 50px;
    flex-direction: row;
    justify-content: flex-start;
}
.post dt{
font-weight:bold;
}

.post dd{
padding-bottom:10px;
}

.post img{
max-width:100%;height:auto;
border-radius: 7px;
}

img.aligncenter {
display:block;
margin:5px auto 30px auto;
text-align:center;
}

img.alignright{
margin:5px 0 10px 30px;
}

img.alignleft{
margin:5px 20px 30px 0;
}

.alignright{
float:right;
}

.alignleft{
float:left;
}


/* サイドバー　ウィジェット
------------------------------------------------------------*/

section.widget ul, .widget_search, #calendar_wrap, .textwidget{
margin:0 0 10px 0;
}

p.banner{
padding-bottom:20px;
}

p.banner img{
max-width:280px;
height:auto;
}

p.banner img:hover{
cursor:pointer;
opacity:.8;
}

section.widget h3{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:130%;
font-weight:bold;
border-bottom:3px solid #000000;
}

section.widget ul{
margin:30px 0 30px 0;
}

section.widget li a{
display:block;
margin-top:15px;
color:#000000;
font-weight:bold;
}

section.widget li a:hover{
color:#cdcdcd;
}

.newsTitle{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:130%;
font-weight:bold;
border-bottom:3px solid #000000;
}

.newsTitle h3{
float:left;
}

.newsTitle p{
float:right;
padding:5px 10px 0 10px;
font-size:70%;
}

.newsTitle p a{
color:#000000;
}

.newsTitle p a:hover{
color:#cdcdcd;
}

.news{
margin:30px 0 30px 0;
}

.news p{
clear:both;
margin-top:15px;
}

.news p a{
display:block;
color:#000000;
font-weight:bold;
}

.news span{
padding-left:10px;
}

.news a:hover span{
color:#cdcdcd;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
 
.clearfix:before {
　　　　content: "";
	display: block;
	clear: both;
}
 
.clearfix {
	display: block;
}

.post ul.service li {
    padding-left: 5px;
    list-style: none;
    text-indent: -18px;
    writing-mode: vertical-rl;
    display: inline-block;
    border: 1px solid #999;
    vertical-align: text-top;
    padding: 26px 6px 10px;
	position:relative;
	    margin-right: 35px;
}

.post ul.service li:before {
	content:none;
}

.post ul.service li:after {
	content: "➡";
    position: absolute;
    left: 59px;
    top: 40px;
    transform: rotate(-90deg);
}

/* フッター
------------------------------------------------------------*/

#footer ul{
padding:15px 0 25px;
text-align:center;
}

#footer li{
display:inline-block;
padding:5px 16px;
}
*:first-child+html #footer li{
display:inline;
}

#footer li:first-child{
border:0;
}

#footer li a{
text-decoration:none;
font-weight:bold;
color:#000000;
}

#footer li a:hover{
color:#6f6f6f;
}

#footer ul ul{
display:none;
}

#copyright{
    clear: both;
    padding: 1px 10px;
    text-align: center;
    font-size: 12px;
    color: #fff;
    display: inline-block;
        background: rgba(76,90,255,0.7);
    margin-top: 120px;
    border-radius: 63px;
}

.kokura {
background:#fff;
display:flex;
gap: 20px;
}
.gaiyou {
width: 520px;
}
.nagare th,
.nagare td {
text-align:center!important;
}

.pagetop{
    display: none;
    position: fixed;
    right: 40px;
    bottom: 40px;
	z-index: 1;
}
.pagetop a{
    display: block;
    font-size: 20px;
    width: 50px;
    height: 50px;
    text-align: center;
    background: #4c5aff;
    border-radius: 50%;
    line-height: 48px;
    color: #fff;
}
.pagetop a i{
font-size: 20px;
    color: #fff;
    line-height: 46px;
    cursor: pointer;
}

/* トップページ 最新記事3件 + 3つの画像
------------------------------------------------------------*/

.thumbWrap{
width:100%;
}

.thumbWrap .thumb {
	display: table;
    table-layout: fixed;
    width: 100%;
   }

.thumbWrap li{
    display: table-cell;
	padding: 2px 10px 0px 0px;
    background: none;
}

.thumbWrap img{
	display:block;
max-width:100%;
	width: 100%;
height:auto;
}

ul.thumbUnder h3{
padding:5px;
font-weight:bold;
text-align:center;
border:2px solid #000000;
}

ul.thumbUnder h3 span{
display:block;
}

ul.thumbUnder h3 a{
color:#000000;
}

ul.thumbUnder h3 a:hover{
color:#cdcdcd;
}

ul.thumbUnder li p{
margin:15px 0 25px;
}

/* トップページ 最新記事4件
------------------------------------------------------------*/

ul.oshirase{
padding:0;
}

ul.oshirase li{
	clear:both;
    padding: 15px 10px 17px;
    border-bottom: 1px dashed #999;
	line-height:1.8;
}

ul.oshirase li:hover {
	background:#f8fef4;
}

ul.oshirase img{
float:left;
margin:0 25px 5px 0;
	width: 150px;
}

ul.oshirase h3{
    margin: 5px 0 12px 0;
    border: 0;
    font-size: 120%;
    font-weight: bold;
    line-height: 1.5;
}

ul.oshirase h3 a{
color:#000000;
}

/*ul.oshirase h3 a:hover{
color:#cdcdcd;
}*/

ul.oshirase a{
color:#555555;
}

ul.oshirase a:hover{
color:#7bbb54;
}

ul.oshirase .ostime {
	display: inline-block;
    font-size: 1.1rem;
    background: #339b33;
    padding: 9px 10px 5px;
    margin-left: -10px;
    margin-bottom: 5px;
    margin-top: 5px;
    border-radius: 8px;
    color: #fff;
    line-height: 1;
}

ul.newslist {
    padding: 0;
    margin: 0;
}

ul.newslist li{
	clear:both;
    padding: 15px 10px;
    border-bottom: 1px dashed #999;
	text-indent:0;
}

ul.newslist li:hover {
	background:#f8fef4;
}

ul.newslist li:before {
    content: none;
}

ul.newslist img{
float:left;
margin:5px 25px 5px 0;
	width: 80px;
    border-radius: 50%;
}

ul.newslist h3{
margin:0 0 5px 0;
border:0;
font-size:120%;
font-weight:bold;
	line-height: 1.5;
	margin-top:10px;
}

ul.newslist h3 a{
color:#000000;
}

ul.newslist h3 a:hover{
color:#cdcdcd;
}

ul.newslist a{
color:#555555;
}

ul.newslist a:hover{
color:#7bbb54;
}

ul.newslist .ostime {
	display: inline-block;
    font-size: 1.1rem;
    background: #339b33;
    padding: 5px 10px 7px;
    margin-left: -10px;
    margin-bottom: 10px;
    border-radius: 8px;
    color: #fff;
    line-height: 1;
}

.pagination {
	clear: both;
	text-align: center;
	margin:15px 0 -20px;
}

.pagination a {
	text-decoration: none;
	border: 1px solid #abd38f;
	color: #069;
}

.pagination a, .pagination span {
	display: inline-block;
	padding: 0.3em 0.5em;
	margin-right: 5px;
	margin-bottom: 15px;
	font-weight: normal;
}

.pagination .current,
.pagination a:hover {
	background: #abd38f;
	color: #fff;
	border: 1px solid #abd38f;
}
.pagination .current.prev, .pagination .current.next {
	color: #CCC;
	border-color: #069;
	background: #fff;
}


table.lesson th {
	background-color:#FFeeee;
}

.calendar-time-mark, .calendar-mark {
    font-size: 1.0rem;
}

.list-monthly-calendar th,
.list-monthly-calendar td {
	padding:0!important;
}

.list-monthly-calendar th.list-header {
	width:20%;
}

.list-monthly-calendar th.a8,
.list-monthly-calendar th.a13{
	width:40%;
}

/* 必須マーク */
.must{
	color: #fff;
	margin-right: 10px;
	padding: 6px 10px;
	background: #FF9999;
	border-radius: 20px;
}

/* 任意マーク */
.free {
	color: #fff;
	margin-right: 10px;
	padding: 6px 10px;
	background: #999999;
	border-radius: 20px;
}

.qabox dt {
	border-bottom: 1px dotted #e2546c;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.4;
    margin-left: 36px;
    padding-bottom: 10px;
}

.qabox .pink {
    font-weight: bold;
    color: #e2546c;
    margin-right: 5px;
    font-size: 28px;
}

.qabox dt:before {
	content:"Q.";
	font-weight: bold;
    color: #e2546c;
    margin-right: 5px;
    font-size: 28px;
	margin-left: -36px;
}

.qabox dd {
    margin-bottom: 40px;
	margin-left:35px;
}

.qabox dd:before {
	content:"A.";
	    font-weight: bold;
    color: #5aaee9;
    margin-right: 5px;
    font-size: 25px;
	line-height:1.0;
	margin-left:-32px;
}

.qabox .blue {
    font-weight: bold;
    color: #5aaee9;
    margin-right: 5px;
    font-size: 25px;
	line-height:1.0;
}

.thumbWrap ul.thumb li {
    width: 23%;
	float: left;
    padding: 0;
    margin: 0 1% 0 1%;
	text-align:center;
}

.thumbWrap ul.thumb li:before {
    content: none;
}

.wp-caption .wp-caption-text {
    margin:0;
	    text-indent: 0;
}

img.wp-post-image {
	width:100%;
	height: auto;
}

.xp ul.thumb li {
    width: 31%;
}

	.gall ul {
	padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1%;
    justify-content: space-between;
	}
	.gall ul li {
	padding: 0;
    margin: 0 0 20px;
    list-style-type: none;
    width: 24%;
	box-sizing:border-box;
		text-indent:0;
	}
.gall ul li:before {
	content:none;
}
	.gall ul li p.jimu {
		padding:0;
		margin:0 0 5px;
	    height: 190px;
		overflow:hidden;
		border-radius:8px;
	}
	.gall ul::after {
display: block;
content:"";
width: 24%;
}
	.gall ul::before {
    content: "";
    display: block;
    width: 24%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
    order: 1;  /* 疑似要素beforeの順番を必ず指定する*/
}
	.gall img {
    -webkit-border-radius: 0;
    -moz-border-radius:0;
    -ms-border-radius: 0;
    border-radius: 0;
    width: 100%;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
}
	.gall p.title,
.gall p.cont {
	line-height: 1.4;
    margin-bottom: 3px;
    padding: 0;
	}

	.gall p.title {
	font-weight:500;
	    background: linear-gradient(transparent 56%, #ffeeee 56%);
		font-size: 1.2rem;
	}

	.gall p.cont {
		font-size: 1.0rem;
	}

.wpcf7-submit {
background: #4c5aff;
    padding: 15px 25%;
    border-radius: 10px;
    font-size: 1.2rem;
    color: #fff;
    display: inline-block;
    margin: 20px auto 0;
    border: none;
    cursor: pointer;
}
.wpcf7-submit:hover {
    opacity:0.7;
}
.wpcf7-text,
.wpcf7-select,
.wpcf7-textarea {
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #999;
width: 80%;
}
.wpcf7-textarea {
    width: 80%;
}
.post table th {
    vertical-align: middle;
}
.consent {
text-align:center;
}
.wpcf7-spinner {
    visibility: hidden;
    display: block;
    background-color: #23282d;
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 15px 0 0 auto;
    position: relative;
}

	.accessinfo {
		display:flex;
		    gap: 20px;
	}
	.mapinfo,
	.continfo {
		flex:1;
	}
	.continfo .title {
		display: flex;
    gap: 10px;
    align-items: flex-start;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.4;
	}
	.continfo {
	}
	.continfo p.address {
		margin: 15px 20px 20px;
    line-height: 1.8;
    font-size: 1.2rem;
	}
	.howto {
	margin-bottom: 10px;
    background: #fff4f4;
    padding: 5px 10px;
    border-radius: 5px;
	}
	.howto .title {
	display: table-cell;
    vertical-align: middle;
    text-align: center;
	    background: aliceblue;
    border-radius: 5px;
	}
	.howto .title span {
	    padding: 15px 10px 17px;
    display: inline-block;
    width: 4em;
    font-size: 1.2rem;
	}
	.howto .cont {
	display: table-cell;
    font-size: 1.0rem;
    vertical-align: middle;
    padding-left: 15px;
    line-height: 1.6;
	}
	.bun ul {
	padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1%;
    justify-content: space-between;
	}
	.bun ul li {
	padding: 0;
    margin: 0 0 5px;
    list-style-type: none;
    width: 24%;
	box-sizing:border-box;
	}
	.bun ul li p.jimu {
		padding:0;
		margin:0 0 5px;
	    height: 190px;
		overflow:hidden;
		border-radius:8px;
	}
	.bun ul::after {
display: block;
content:"";
width: 24%;
}
	.bun ul::before {
    content: "";
    display: block;
    width: 24%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
    order: 1;  /* 疑似要素beforeの順番を必ず指定する*/
}
	.bun img {
    -webkit-border-radius: 0;
    -moz-border-radius:0;
    -ms-border-radius: 0;
    border-radius: 0;
    width: 100%;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
}
	.bun p {
	    line-height: 1.3;
    font-size: 1.0rem;
    text-align: center;
		margin-bottom:3px;
	}
	small {
		display:block;
		font-size:0.8rem;
		color: #ff9dd8;
	}
	small.eng {
		font-size:1.2rem;
	}
a.btn--orange {
  color: #fff;
background-color: #8dc0ff;
    border-bottom: 5px solid #4c5aff;
	    padding: 17px 20px;
    margin: 0 auto;
    display: block;
    width: 400px;
    border-radius: 10px;
    text-align: center;
}
a.btn--orange:hover {
  margin-top: 3px;
  color: #fff;
  background: #639ee6;
  border-bottom: 2px solid #4c5aff;
}
a.btn--shadow {
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
}

.bigimg {
	margin-left:-15px;
}

.spnews {
	width: fit-content;
    margin: 0 auto;
    border: 5px solid #8dc0ff;
    padding: 0px 20px 10px;
    border-radius: 10px;
    margin-bottom: 50px;
	text-align:left;
	position:relative;
}

.spnews p {
	border-bottom: 1px dashed #999;
	line-height: 1.3;
    padding: 8px 0;
}

.spnews:before {
	content: url(images/hit.png);
    position: absolute;
    top: -64px;
    left: -47px;
    transform: scale(0.5);
}

.floating {
  position: absolute;
  -webkit-animation: floating 1.4s 1s ease-in-out infinite;
  -webkit-animation-direction: alternate;
  animation: floating 1.4s 1s ease-in-out infinite;
  animation-direction: alternate;
  z-index: 1;
}

@-webkit-keyframes floating {
  0% {
    transform: translate(0, 0px);
  }

  100% {
    transform: translate(0, 20px)
  }
}

@keyframes floating {
  0% {
    transform: translate(0, 0px);
  }

  100% {
    transform: translate(0, 20px)
  }
}

@media all and (-ms-high-contrast: none) {
nav#mainNav ul li:hover ul {
	display:block;
  }
}

/* メインメニュー　PC用
------------------------------------------------------------*/

@media only screen and (min-width:1025px){

nav#mainNav{
    position: sticky;
    z-index: 10;
    top: 0;
	background: #8dc0ff;
	    border-top: 9px solid #4c5aff;
}

nav#mainNav ul{
display:flex;
justify-content: center;
align-items: center;
list-style: none;
}

nav#mainNav ul>li{
float:left;
}
	
nav#mainNav ul li small{
font-size:0.7rem;
}
	
nav#mainNav ul li:hover {
    background: #4c5aff;
}

nav#mainNav ul li a{
display: block;
text-align: center;
_float:left;
padding:5px 20px 5px;
font-size:88%;
font-weight:500;
color:#000000;
line-height: 1.4;
	border-left:1px solid #fff;
}
nav#mainNav ul li:last-child a {
	border-right:1px solid #fff;
}
nav#mainNav ul.sub-menu li a {
	border:none;
}

	nav#mainNav ul li a strong{
	/*font-size: 20px;*/
		color:#FFF;
}

nav#mainNav ul li a strong+span{
display:block;
color:#b8f193;;
	line-height: 0;
	    position: relative;
}
	
nav#mainNav ul li a strong+span img {
width:50px;
}

nav#mainNav ul li a:hover span, nav#mainNav ul li a:hover{
color:#f7fff2;
}

nav#mainNav ul ul{
border-top:0;
}

nav#mainNav ul li ul{
display: none;
}

nav#mainNav ul li:hover ul {
    display: inline-grid;
    position: absolute;
    top: 75px;
    text-align: center;
    z-index: 500;
    margin: auto;
	padding-top: 10px;
}
	
nav#mainNav ul li li{
background:#f9f9f9;
border-bottom:1px dotted #cdcdcd;
float: none;
    padding: 5px 10px;
/*height:40px;
line-height:40px;*/
margin:0;
box-shadow: 1px 1px 2px #ddd;
}

nav#mainNav ul li li:last-child{
border:0;
}

nav#mainNav ul li li a{
width:100%;
height:40px;
padding:0;
line-height:40px;
font-size:16px;
text-align:center;
}

nav#mainNav ul li li a:hover{
color:#cdcdcd;
}

nav div.panel{
display:block !important;
    border-radius: 0 0 10px 10px;
}

a#menu{
display:none;
}
	
	li.hm>a span:after {
    content: "";
    border-bottom: solid 3px #ffffff;
    border-right: solid 3px #ffffff;
    width: 5px;
    height: 5px;
    transform: rotate(45deg);
position: absolute;
    bottom: 15px;
		right:0;
	}

}

/* iPadサイズ以下（1024px）からアコーディオンメニュー
------------------------------------------------------------*/

@media only screen and (max-width:1024px){

nav#mainNav{
clear:both;
	    z-index: 1000;
	position: sticky;
    top: 0;
/*margin-top:-15px;*/
}

nav#mainNav a.menu{
width:100%;
display:block;
height:50px;
line-height:50px;
margin-bottom:0px;
background:#4c5aff url(images/menuOpenw.png) no-repeat 15px 13px;
}

#mainNav a#menu span{
padding-left:40px;
color:#FFFFFF;
}

nav#mainNav a.menuOpen{
background:#8dc0ff url(images/menuOpenw.png) no-repeat 15px -30px;
}

nav .panel{
display:none;
width:100%;
position:relative;
right:0;
top:0;
z-index:1;
}

nav#mainNav ul{
margin:0;padding:0;
}

nav#mainNav ul li{
float:none;
clear:both;
width:100%;
height:auto;
line-height:1.2;
}

nav#mainNav ul li a{
display:block;
padding:15px 20px;
text-align:left;
border-bottom:1px dashed #cdcdcd;
color:#000000;
    font-weight: normal;
}

	
	.hm>a:after {
		content: " ▼";
		font-weight:bold;
		float: right;
	}
	
		.ar>a:after {
		content: " ▲";
		font-weight:bold;
			float: right;
	}

nav#mainNav ul li a strong+span{
display:none;
}

nav#mainNav ul li li{
float:left;
border:0;
background: ghostwhite;
}
	
nav#mainNav ul li li a{
padding-left:40px;
}

nav div.panel{
float:none;
}

#mainImg{
margin-bottom:20px;
}

}


/* iPadサイズ以下（1024px）から 1カラム表示に切り替え
*****************************************************/

@media only screen and (max-width:1024px){

#wrapper, .inner{
width:100%;
}

#header {
    padding:0;
}
	
#header h2 img {
    margin-left: -25px;
}
	
#header h2 {
    margin: 30px 0 0 0;
}
	
#header .contact{
	position:static;
    text-align: center;
    font-size: 100%;
    margin: 0 0 20px;
}

#header h1{
    padding: 0;
    text-align: center;
}

nav#mainNav ul{
margin:0 auto;
    background: #fff;
}
	
	.tat {
		    border-bottom: 10px solid #8dc0ff;
	}

nav#mainNav ul ul{
padding:0;
	display:none;
}

.post h4 {
    margin: 15px 0 15px 0px;
}
	
a.disabled{
    pointer-events: none;
}
	
nav div.panel{
float:none;
}
	
.panel ul, .thumbWrap{
margin:0 auto;
}

.thumbWrap{
width:100%;
margin:0 auto;
}

.thumbWrap ul.thumbUnder li{
width:30%;
float:left;
margin:0 1% 0 2%;
}

.thumbWrap ul.thumbUnder li img{
width:100%;
}

.thumbWrap ul.thumb li{
width:30%;
float:left;
	padding:0;
margin:0 1% 0 2%;
}

#content, #sidebar{
clear:both;
width:95%;
float:none;
margin:0 auto;
padding:10px 0 200px;
}

.banner{
width:100%;
margin:0 auto;
text-align:center;
}

p.banner img{
width:100%;
height:auto;
}

section.widget_search{
text-align:center;
}

#footer li{
margin-bottom:10px;
}

.post h3 {
    margin: 15px 0 25px 0;
}
	
}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/

@media only screen and (max-width:644px){

body{
}
	
.inner{
}

br.smp {
		display:block;
}	
	
.flexslider {
    width: 100%;
}

.continfo .title {
    align-items: center;
    font-size: 4.1vmin;
}
	
.continfo p.address {
    font-size: 4.13vmin;
}
	
.post {
    padding-left: 0px;
	}
	ul.stafflist {
		margin: 0 0 35px 0;
	}
#header h2 img{
max-width:90%;
margin: 0;
}
.spnews {
    padding: 0px 10px 10px;
	}
.newswrap {
    display: flex;
    flex-direction: column;
}

.blog {
    border:none;
	}

.bun ul li {
    width: 49%;
}
	
.gall ul li {
    width: 49%;
}

.accessinfo {
    flex-direction: column;
}	

a.btn--orange {
    width: auto;
}

.bigimg {
	margin-left:0;
}
	
h2.title span {
    font-size: 7vmin;
}
	
#mainImg {
height: 330px;
overflow: hidden;
position: relative;
margin-bottom:35px;
}

#mainImg img {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: auto;
height: 100%;
}

.post table th {
    display: inline-block;
    box-sizing: border-box;
    width: 100%!important;
	padding:10px;
}
.post table td {
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
	padding:10px;
}	
	
ul.oshirase img {
    float: none;
    margin: 5px 25px 15px 0;
    display: block;
    width: 100%;
}

ul.oshirase li {
    border-bottom: 1px dashed #999;
}
	
.oshirase .ostime {
    margin-left: 0px;
}
	
ul.newslist a {
    display: block;
}
	
ul.newslist li {
    padding: 5px 10px;
}

h2.title{
margin-bottom:35px;
}

ul.post img{
display:block;
margin:5px auto 20px auto;
float:none;
width:100%;
}

img.alignright, img.alignleft{
display:block;
margin:5px auto 20px auto;
}

.alignright,.alignleft{
float:none;
}

.thumbWrap ul.thumb li,
.xp ul.thumb li {
    width: 47%;
}	
	
.thumbWrap ul.thumbUnder li{
width:95%;
margin-bottom:10px;
}

.thumbWrap ul.thumbUnder li img{
width:100%;
}

.kokura {
display:block;
}
.gaiyou {
width: 100%;
}
	
}