@charset "utf-8";
#googlefont{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400,500,700,900;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500,600,700,900;
	font-family: "Bebas Neue", sans-serif;
	font-family: 'Roboto Condensed', sans-serif;
	font-family: "M PLUS 1p";
	color: hsl(24, 21%, 31%);
	color: hsl(330, 100%, 27%);
	color: hsl(47, 66%, 69%);
	color: hsl(33, 41%, 64%);
	color: hsl(28, 48%, 39%);
	color: hsl(40, 33%, 95%);
	color: hsl(0, 0%, 94%);
}
@media screen and (max-width: 699px) {
  :target {
    scroll-margin-top: 0;
  }
}
@media screen and (min-width: 700px) {
  :target {
    scroll-margin-top: 150px;
  }
}

html {
	font-size: 67.5%;
	scroll-behavior: smooth;
}
body{
	font-family:'Noto Sans JP',"メイリオ","ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", arial,helvetica,clean,sans-serif;
	margin:0;
	padding:0;
	animation:fadeIn 1s ease 0s 1 normal;
	-webkit-animation:fadeIn 1s ease 0s 1 normal;
}
body.Mn1{
	color: hsl(24, 21%, 31%);
	background: hsl(37, 54%, 82%);
}
body.Mn2{
	color: hsl(24, 21%, 31%);
	background: hsl(48, 65%, 82%);
}
body.Sbtop{
	color: hsl(24, 21%, 31%);
	background: hsl(37, 54%, 82%);
}
body.Sbsub{
	color: hsl(0, 0%, 0%);
	background: hsl(0, 0%, 100%);
}
@keyframes fadeIn {
    0% {opacity:0}
    100% {opacity:1}
}
@-webkit-keyframes fadeIn {
    0% {opacity:0}
    100% {opacity:1}
}
section, article, aside, header, main, footer, nav, hgroup {
  display:block;
}
textarea {
	line-height:150%;
}
input,select,textarea {
	font-family:'Noto Sans JP',"メイリオ","ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", arial,helvetica,clean,sans-serif;
}
dl, dl dt, dl dd{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

@media screen and (max-width:699px) {
	body{
		font-size: 1.2rem;
		line-height:175%;
	}
	body.main{text-align:left;}
	.brsm::before {
		content: "\A" ;
		white-space: pre ;
	}
	p{margin: 1.5em 0;}
}
@media screen and (min-width:700px) {
	body{
		font-size:1.6rem;
		line-height:200%;
	}
	body.main{text-align:center;}
	.brtb::before {
		content: "\A" ;
		white-space: pre ;
	}
	p{margin: 1.5em 0;}
}
@media screen and (min-width:1200px) {
	.brtb::before {
		content: "" ;
		white-space:initial ;
	}
	.brpc::before {
		content: "\A" ;
		white-space: pre ;
	}
}
/* リンク制御 */
a.txnon{
	color:#333;
	text-decoration:none;
}
/*
a:link {
	color:#069;
	text-decoration :underline;
}
a:visited {
	color:#069;
	text-decoration :underline;
}
a:hover {
	color:#39c;
	text-decoration :none;
}
*/
table{
	font-size:inherit;
	border-collapse:collapse;
	border-spacing:0;
}
object, embed {
	vertical-align:bottom;
}
h1,h2,h3,h4,h5,h6{
	font-size:100%;
	font-weight:normal;
	margin:0;
}
/* list制御 */
ul[class^="bsc"], ol[class^="bsc"]{
	padding: 0;
	margin: 0;
}
ul[class^="bsc"] > li, ol[class^="bsc"] > li{
	padding: 0 0 0 ;
	margin: 0 0 1rem 2rem;
}
@media screen and (max-width:699px) {
	ul[class^="bsc"] > li, ol[class^="bsc"] > li{
		padding: 0 0 0 ;
		margin: 0 0 1rem 1.5rem;
	}
}
@media screen and (min-width:700px) {
}
@media screen and (min-width:1200px) {
}
ol[class^="num"]{
	text-align:left;
	padding:0;
	margin: 0;
	list-style:none;
}
ol.num01 > li{
	padding: 0 0 0 .3em;
	margin: 0;
	position: relative;
}
ol.num01 > li::before{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: -1em;
}
ol.num01 > li:nth-child(1)::before{content:"① "; }
ol.num01 > li:nth-child(2)::before{content:"② "; }
ol.num01 > li:nth-child(3)::before{content:"③ "; }
ol.num01 > li:nth-child(4)::before{content:"④ "; }
ol.num01 > li:nth-child(5)::before{content:"⑤ "; }
ol.num01 > li:nth-child(6)::before{content:"⑥ "; }
ol.num01 > li:nth-child(7)::before{content:"⑦ "; }
ol.num01 > li:nth-child(8)::before{content:"⑧ "; }
ol.num01 > li:nth-child(9)::before{content:"⑨ "; }
ol.num01 > li:nth-child(10)::before{content:"⑩ "; }
ol.num01 > li:nth-child(11)::before{content:"⑪ "; }
ol.num01 > li:nth-child(12)::before{content:"⑫ "; }
ol.num01 > li:nth-child(13)::before{content:"⑬ "; }
ol.num01 > li:nth-child(14)::before{content:"⑭ "; }
ol.num01 > li:nth-child(15)::before{content:"⑮ "; }
ol.num01 > li:nth-child(16)::before{content:"⑯ "; }
ol.num01 > li:nth-child(17)::before{content:"⑰ "; }
ol.num01 > li:nth-child(18)::before{content:"⑱ "; }
ol.num01 > li:nth-child(19)::before{content:"⑲ "; }
ol.num01 > li:nth-child(20)::before{content:"⑳ "; }
@media screen and (max-width:699px) {
	ol.num01 > li{
		margin: 0 0 1rem 1rem;
	}
}
@media screen and (min-width:700px) {
}
@media screen and (min-width:1200px) {
}
ul[class^="ccle"]{
	text-align:left;
	padding: 0;
	margin: 3rem 0 5rem;
}
ul[class^="ccle"] li{
	padding:0;
	margin: 0 0 0 3rem;
	list-style:none;
}
ul[class^="ccle"] li:before{
	content:"● ";
	margin-left:-18px;
}
ul[class^="kome"]{
	text-align:left;
	padding:0;
	margin:20px 0;
	list-style:none;
}
ul[class^="kome"] li{
	padding:0;
	margin:0 0 10px 1.35em;
}
ul[class^="kome"] li:before{
	content:"※ ";
	margin-left:-1.35em;
}
ul.komewaku{
	margin:0 0 0 20px;
}
/*******************************
form制御
********************************/
input.full,input.hf,input.qt,input.mini,input.minimum,input.md,input.nonsize{
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	font-size: 1em;
	padding: 0.4em 0.8em;
	background: hsla(0, 0%, 0%, .1);
	border: none;
	border-radius: 0;
	outline: none;
	box-sizing: border-box;
}
input.full{width:100%;}
input.hf{width:50%;}
input.qt{width:25%;}
input.mini{width:100px;}
input.minimum{width:30px;}
input.nonsize{box-sizing: border-box;}
textarea.full {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	font-size: 1em;
	width: 100%;
	padding: 0.4em 0.8em;
	background: hsla(0, 0%, 0%, .1);
    border: none;
	border-radius: 0;
	outline: none;
	box-sizing: border-box;
}
select.non{
	font-size: 1em;
	padding: 0.4em 0.8em;
	background: hsla(0, 0%, 0%, .1);
    border: none;
	border-radius: 0;
	outline: none;
	box-sizing:border-box;
}

/*******************************
img制御
********************************/
img {
	border:0;
	vertical-align:top;
	zoom:1;
}
img.icons {
	vertical-align:middle;
}
img.photo{
	box-sizing: border-box;
	border: .7rem solid #FFF;
	-webkit-box-shadow:#333 1px 1px 3px;
	box-shadow:hsla(0, 0%, 0%, .2) 1px 1px 3px;
}
img.bxsdw{
	box-sizing: border-box;
	transition: all 1.2s ease-out;
}
img.bxsdw.move{
	box-shadow:hsla(0, 0%, 50%, .2) -1.5rem 1.5rem 0;
}
/*******************************
ボタン制御
********************************/
/**** ボタン *****/
button[class^="btn"]{
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	font-size: 1em;
	color: hsl(0, 0%, 100%);
	padding: 1em 5em;
	margin: 0 0 1em;
	background: hsl(222, 40%, 33%);
	border: none;
	border-radius: 0;
	cursor: pointer;
	display: inline-block;
	transition: all .3s;
}
button[class^="btn"]:hover,
button[class^="btn"]:focus {
	outline: none;
	background-color: hsl(222, 40%, 43%);
}
button[class^="btn"]::-moz-foucus-inner {
	border: none;
	padding: 0;
}

/**** リンクボタン *****/
[class^="lkbtn_"] a{
	color: hsl(0,0%,100%);
	font-size: 1.1em;
	font-weight: 700;
	line-height: 150%;
	text-align: center;
	text-decoration: none;
	padding: .5em 3em;
	margin: 1.5em 0;
	border-radius: .4em;
	display:inline-block;
	box-sizing:border-box;
	transition:0.3s ease-in;
}
[class^="lkbtn_"] a:hover{opacity: 0.8;}
.lkbtn_black a{background-color:hsl(0, 0%, 0%);}
.lkbtn_purple a{background-color:hsl(327, 87%, 34%);}
.lkbtn_brown a{background-color:hsl(28, 48%, 39%);}

/*******************************
テーブル風テーブルdldtdd
********************************/
dl[class^="tbl_"]{
	width:100%;
	border:1px solid hsl(0,0%,60%);
	border-top:none;
	background:hsl(198,33.3%,82.4%);
	overflow:hidden;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;/* Android2… */
}
dl[class^="tbl_"] dt{
	border-top:1px solid hsl(0,0%,60%);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;/* Android2… */
}
dl[class^="tbl_"] dd{
	border-top:1px solid hsl(0,0%,60%);
	background:hsl(0,0%,100%);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;/* Android2… */
}
dl.tbl_2{
	background:hsl(0,0%,10%);
}
dl.tbl_2 dd{
	background:hsla(0,0%,100%, .3);
}
@media screen and (max-width:699px) {
	dl.tbl_1 dt{
		padding:8px;
		margin:0;
	}
	dl.tbl_1 dd{
		padding:8px;
		margin:0px;
	}
	dl.tbl_2{
		font-size: 1.3rem;
	}
	dl.tbl_2 dt{
		padding:8px;
		margin:0;
	}
	dl.tbl_2 dd{
		padding:8px;
		margin:0px;
	}
	dl[class^="tbl_"] dd img{
		width:100%;
		display:block;
	}
}
@media screen and (min-width:700px) {
	dl.tbl_1{
		font-size:1.4rem;
		line-height:140%;
	}
	dl.tbl_1 dt{
		width:110px;
		float:left;
		padding:8px 10px;
	}
	dl.tbl_1 dd{
		margin-left:110px;
		padding:8px 10px;
		border-left:1px solid hsl(70.6,18.5%,63.9%);
	}
	dl.tbl_2{
		font-size:1.4rem;
		line-height:140%;
	}
	dl.tbl_2 dt{
		width:110px;
		float:left;
		padding:8px 10px;
	}
	dl.tbl_2 dd{
		margin-left:110px;
		padding:8px 10px;
		border-left:1px solid hsl(70.6,18.5%,63.9%);
	}
	dl[class^="tbl_"] dd img{
		width:50%;
		display:block;
	}
}
/*******************************
テーブル制御
********************************/
table[class^="bsc_"]{
	width:100%;
	border:1px solid #333;
	margin:3rem 0;
}
table[class^="bsc_"] tr th{
	color: hsl(41, 51%, 45%);
	border:1px solid hsl(0, 0%, 30%);
	background-color:hsl(0, 0%, 0%);
}
table[class^="bsc_"] tr td{
	border:1px solid #999;
}
table.bsc_1 tr th , table.bsc_2 tr th{
	font-weight:normal;
	padding: 1rem;
}
table.bsc_1 tr td , table.bsc_2 tr td{
	padding: 1rem;
}
/* カレンダー */
table.bsc_cale tr th{
	font-size:0.9em;
	text-align:center;
	width:14.28571428571429%;
	width:calc(100% / 7);
	width:-webkit-calc(100% / 7);
}
table.bsc_cale tr td{
	line-height:120%;
	text-align:center;
}
table.bsc_cale tr td a{
	color:#333;
	padding:15px 0;
	text-decoration:none;
	display:block;
	-webkit-transition:background-color 0.3s;
	transition:background-color 0.3s ease-in;
}
table.bsc_cale tr td a:hover{background:hsla(0,0%,0%,0.1);}
table.bsc_cale tr td.on-d a,table.bsc_cale tr td.to-d a{
	font-size:1.1em;
	display:block;
}
table.bsc_cale tr td.hori-d a{
	color:#FFF;
	background:hsl(0,100%,40%);
	display:block;
	-webkit-transition:background-color 0.3s;
	transition:background-color 0.3s ease-in;
}
table.bsc_cale tr td.hori-d a:hover{background:hsla(0,100%,40%,0.7);}
@media only screen and (max-width:599px) {
table.bsc_cale tr td span{
	font-size:0.8em;
	display:block;
}
}
@media screen and (min-width:600px) {
table.bsc_cale tr td span{
	font-size:0.8em;
}
}
/********************************
画像レイアウト
左右_画像+文章→上下_画像+文章
*********************************/
[class^="l-row"]{
	display:flex;
}
@media screen and (max-width: 699px) {
	.l-row90{flex-direction:column;}
	.l-row90re{flex-direction:column-reverse;}
	.l-row80{flex-direction:column;}
	.l-row80re{flex-direction:column-reverse;}
	.l-row75{flex-direction:column;}
	.l-row75re{flex-direction:column-reverse;}
	.l-row70{flex-direction:column;}
	.l-row70re{flex-direction:column-reverse;}
	.l-row65{flex-direction:column;}
	.l-row65re{flex-direction:column-reverse;}
	.l-row60{flex-direction:column;}
	.l-row60re{flex-direction:column-reverse;}
	.l-row55{flex-direction:column;}
	.l-row55re{flex-direction:column-reverse;}
	.l-row50{flex-direction:column;}
	.l-row50re{flex-direction:column-reverse;}
	.l-row45{flex-direction:column;}
	.l-row45re{flex-direction:column-reverse;}
	.l-row40{flex-direction:column;}
	.l-row40re{flex-direction:column-reverse;}
	.l-row35{flex-direction:column;}
	.l-row35re{flex-direction:column-reverse;}
	.l-row30{flex-direction:column;}
	.l-row30re{flex-direction:column-reverse;}
	.l-row25{flex-direction:column;}
	.l-row25re{flex-direction:column-reverse;}
	.l-row20{flex-direction:column;}
	.l-row20re{flex-direction:column-reverse;}
	.l-row10{flex-direction:column;}
	.l-row10re{flex-direction:column-reverse;}
	.wth100100 img{width:100%;}
	.wth10090 img{width:100%;}
	.wth10080 img{width:100%;}
	.wth10070 img{width:100%;}
	.wth10060 img{width:100%;}
	.wth10050 img{width:100%;}
	.wth10040 img{width:100%;}
	.wth10030 img{width:100%;}
	.wth10020 img{width:100%;}
	.wth10010 img{width:100%;}
	.wth90100 img{width:90%;}
	.wth80100 img{width:80%;}
	.wth70100 img{width:70%;}
	.wth60100 img{width:60%;}
	.wth50100  img{width:50%;}
	.wth40100 img{width:40%;}
	.wth30100 img{width:30%;}
	.wth20100 img{width:20%;}
	.wth10100 img{width:10%;}
	.wth9090 img{width:90%;}
	.wth9050 img{width:90%;}
	.wth8080 img{width:80%;}
	.wth8050 img{width:80%;}
	.wth50100 img{width:50%;}
}
@media screen and (min-width: 700px) {
	[class^="l-row"]{
		flex-direction:row;
		justify-content: space-between;
	}
	.l-row90 > div{width:87%;}
	.l-row90 > div:last-child{width:7%;}
	.l-row90re > div{width:87%;}
	.l-row90re > div:last-child{width:7%;}
	.l-row80 > div{width:77%;}
	.l-row80 > div:last-child{width:17%;}
	.l-row80re > div{width:77%;}
	.l-row80re > div:last-child{width:17%;}
	.l-row75 > div{width:72%;}
	.l-row75 > div:last-child{width:22%;}
	.l-row75re > div{width:72%;}
	.l-row75re > div:last-child{width:22%;}
	.l-row70 > div{width:67%;}
	.l-row70 > div:last-child{width:27%;}
	.l-row70re > div{width:67%;}
	.l-row70re > div:last-child{width:27%;}
	.l-row65 > div{width:62%;}
	.l-row65 > div:last-child{width:32%;}
	.l-row65re > div{width:62%;}
	.l-row65re > div:last-child{width:32%;}
	.l-row60 > div{width:57%;}
	.l-row60 > div:last-child{width:37%;}
	.l-row60re > div{width:57%;}
	.l-row60re > div:last-child{width:37%;}
	.l-row55 > div{width:52%;}
	.l-row55 > div:last-child{width:42%;}
	.l-row55re > div{width:52%;}
	.l-row55re > div:last-child{width:42%;}
	.l-row50 > div{width:47%;}
	.l-row50 > div:last-child{width:47%;}
	.l-row50re > div{width:47%;}
	.l-row50re > div:last-child{width:47%;}
	.l-row45 > div{width:42%;}
	.l-row45 > div:last-child{width:52%;}
	.l-row45re > div{width:42%;}
	.l-row45re > div:last-child{width:52%;}
	.l-row40 > div{width:37%;}
	.l-row40 > div:last-child{width:57%;}
	.l-row40re > div{width:37%;}
	.l-row40re > div:last-child{width:57%;}
	.l-row35 > div{width:32%;}
	.l-row35 > div:last-child{width:62%;}
	.l-row35re > div{width:32%;}
	.l-row35re > div:last-child{width:62%;}
	.l-row30 > div{width:27%;}
	.l-row30 > div:last-child{width:67%;}
	.l-row30re > div{width:27%;}
	.l-row30re > div:last-child{width:67%;}
	.l-row25 > div{width:22%;}
	.l-row25 > div:last-child{width:72%;}
	.l-row25re > div{width:22%;}
	.l-row25re > div:last-child{width:72%;}
	.l-row20 > div{width:17%;}
	.l-row20 > div:last-child{width:77%;}
	.l-row20re > div{width:17%;}
	.l-row20re > div:last-child{width:77%;}
	.l-row10 > div{width:12%;}
	.l-row10 > div:last-child{width:82%;}
	.l-row10re > div{width:12%;}
	.l-row10re > div:last-child{width:82%;}
	.wth100100 img{width:100%;}
	.wth10090 img{width:90%;}
	.wth10080 img{width:80%;}
	.wth10070 img{width:70%;}
	.wth10060 img{width:60%;}
	.wth10050 img{width:50%;}
	.wth10040 img{width:40%;}
	.wth10030 img{width:30%;}
	.wth10020 img{width:20%;}
	.wth10010 img{width:10%;}
	.wth90100 img{width:100%;}
	.wth80100 img{width:100%;}
	.wth70100 img{width:100%;}
	.wth60100 img{width:100%;}
	.wth50100 img{width:100%;}
	.wth40100 img{width:100%;}
	.wth30100 img{width:100%;}
	.wth20100 img{width:100%;}
	.wth10100 img{width:100%;}
	.wth9090 img{width:90%;}
	.wth9050 img{width:50%;}
	.wth8080 img{width:80%;}
	.wth8050 img{width:50%;}
	.wth50100 img{width:100%;}
}
@media screen and (min-width: 1000px) {
}
/*******************************
文字制御
********************************/
/* text-align制御 */
.ct{text-align:center;}
.rt{text-align:right;}
.lt{text-align:left;}
@media screen and (max-width:599px) {
	.r-l{text-align:right;}
	.r-c{text-align:right;}
	.l-r{text-align:left;}
	.l-c{text-align:left;}
	.c-l{text-align:center;}
	.c-r{text-align:center;}
}
@media screen and (min-width:600px) {
	.r-l{text-align:left;}
	.r-c{text-align:center;}
	.l-r{text-align:right;}
	.l-c{text-align:center;}
	.c-l{text-align:left;}
	.c-r{text-align:right;}
}
/* fontサイズ */
.fxxs  {font-size:0.7em;}
.fxs {font-size:0.8em;}
.fs {font-size:0.9em;}
.fl {font-size:1.1em;}
.fxl {font-size:1.3em;}
.fxxl {font-size:1.5em;}
.fxxs,.fxs,.fs,.fl,.fxl,.fxxl{
	line-height:175%;
}
/* fontカラー */
.f-black {color: hsl(0, 0%, 0%);}
.f-white {color: hsl(0, 0%, 100%);}
.f-red {color: hsl(0, 100%, 35%);}
.f-blue {color: hsl(199, 100%, 30%);}
.f-lblue {color: hsl(216, 100%, 50%);}
.f-orange {color: hsl(24, 100%, 50%);}
.f-yellow {color: hsl(48, 66%, 55%);}
.f-green {color: hsl(71, 37%, 55%) ;}
.f-pink {color: hsl(345, 100%, 60%);}
.f-purple {color: hsl(300, 100%, 20%);}
.f-brown {color: hsl(28, 48%, 39%);}


/* 行数省略 */
[class^="txtomit"]{
  overflow: hidden;
	line-height: 135%;
}
.txtomit1 {
  text-overflow: ellipsis;
  white-space: nowrap;
}
.txtomit2{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.txtomit3{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
