@charset "UTF-8";
/*
Author: 株式会社メックコミュニケーションズ
Author URI: http://www.mec-com.co.jp
*/


/*  CSS Index
--------------------------------------------------------------
ヘッダーのロゴは縦の長さで横幅を自動調整します。
比率に注意してください。
--------------------------------------------------------------
@media print, screen and (min-width: 768px) {pc/print}
@media screen and (max-width: 767px) {sp}
1 : base
 	  : body
 	  : frame(max-width:1160px)
 	  	  : frame.sp0
 	  : clearfix
 	  : accordion
 	  : pc/sp
2 : header
 	  : header_logo
 	  : header_search
 	  : pc(media min-width:1200px)
 	  	  : header_logo(pc)
 	  	  : header_tel(pc)
 	  	  : globalnav_btn(pc)
 	  	  : globalnav(pc)
 	  	  	  : acc_btn(pc)
 	  	  : header_search(pc)
 	  	  : header_sublink(pc)
 	  	  : header_data(pc)
 	  	  : header_toi(pc)
 	  : sp(media min-width:1199px)
 	  	  : header_logo(sp)
 	  	  : header_tel(sp)
 	  	  : globalnav_btn(sp)
 	  	  : globalnav(sp)
 	  	  	  : acc_btn(sp)
 	  	  	  : accordion(sp)
 	  	  : header_search(sp)
 	  	  : header_sublink(sp)
 	  	  : header_data(sp)
 	  	  : header_toi(sp)
3 : main
 	  : path
 	  : pager
4 : single
5 : footer
 	  : footer_nav
 	  : footer_logo
 	  : footer_data
 	  : pagetop
 	  : copyright
6 : print
-----------------------------------------------------------------------------------------*/


/*base
-----------------------------------------------------------------------------------------*/
*{
	margin: 0; 
	padding: 0; 
	list-style-type: none; 
	font-weight: 400;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
html{
	height:100%;
	font-size:10px;
}
body{
	color:#000;
	background:#FFF;
	text-align:center;
	font-size:1.8rem;
	line-height:1.5;
	height:100%;
	min-width:375px;
	-webkit-text-size-adjust:none;
}
body {
  font-family: Roboto ,"Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
   -webkit-text-size-adjust: 100%;
   overflow-wrap: break-word;
   word-wrap: break-word
}
body * {
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   box-sizing: border-box;
}
ruby{
	ruby-position:under; 
}
ruby rt{
	margin:5px 0;
	letter-spacing:1px;
}
img{
	border-width: 0px;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
	width /***/:auto;
}
* html img{
	border-width: 0px;
	vertical-align: top;
	padding:-1px;
}
*:first-child+html img {
	border-width: 0px;
	vertical-align: middle;
	padding:-1px;
}
h1,h2,h3,h4,h5,h6,p,ul,dl,input,table,figure,ol,.dot{
	font-size:1.8rem;
	line-height:1.5;
	margin:0;
}
@media screen and (max-width: 767px) {body, h1,h2,h3,h4,h5,h6,p,ul,dl,input,table,figure,ol,.dot{font-size:1.7rem;}}
ul > li,
dl > dt,
dl > dd{
	font-size:inherit
}
span{
	font-weight:inherit;
	display:inline-block;
	text-decoration:inherit;
}
em{
	font-weight:700;
	font-style:inherit;
	color:var(--color_notice);
}
strong{
	font-weight:700;
}
a{
	color:inherit;
	font-weight:inherit;
	text-decoration: none;
	outline:none;
	-webkit-text-decoration-skip: none;
}
a:hover {
	text-decoration: none;
	outline:none;
}
a:link,a:visited,a:hover,a:active {
	outline:none;
}
hr{
	border:none;
	border-bottom:1px solid rgba(0,0,0,0.2);
	margin:70px 0;
}
@media screen and (max-width: 767px) {hr{margin:30px 0;}}
#wrapper{
	width:100%;
	min-height:100vh;
	display:flex;
	flex-direction:column;
}
/*-------------------------frame*/
.frame{
	max-width:1160px;
	margin:0 auto;
	text-align:left;
	position:relative;
	padding:0 30px;
}
@media screen and (max-width: 767px) {
.frame{padding:0 20px;}
.frame.sp0{padding:0;}
}
/*-------------------------clearfix*/
.clearfix::after{
	display: block;
	clear: both;
	content: "";
}
/*-------------------------accordion*/
.accordion{
	display:none;
}
.accordion.open{
	display:block;
}
.acc_btn{
	cursor:pointer;
}
/*-------------------------pc/sp*/
@media screen and (max-width: 767px) {#wrapper .pc{display:none;}}
@media print, screen and (min-width: 768px) {#wrapper .sp{display:none;}}



/*header
-----------------------------------------------------------------------------------------*/
/*ヘッダーの高さ*/
@media print, screen and (min-width: 1200px) {#wrapper{--hh:100px;}}
@media screen and (max-width: 1199px) {#wrapper{--hh:80px;}}
#wrapper{
	padding-top:var(--hh);
}
header{
	font-family: "Zen Maru Gothic",serif;
}
/*----------------------------------------------------------------------------------------pc*/
@media print, screen and (min-width: 1200px) {
header{
	z-index:1000;
	width:100%;
	text-align:center;
	max-width:100%;
	min-width:375px;
	position:fixed;
	top:0;
	height:var(--hh);
	background:#FFF;
	backdrop-filter: blur(5px);
	transition:all 0.3s;
}
#wrapper.scroll header{
	top:-50px;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
/*-------------------------header_logo(pc)*/
.header_logo{
	position:absolute;
	left:0;
	top:0;
	transition:all 0.3s;
	z-index:1;
}
.header_logo a{
	height:var(--hh);
	width:400px;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:3.6rem;
	text-align:left;
	line-height:1.25;
	gap:0.2em;
	transition:all 0.3s;
}
.header_logo a:hover{
  transform: scale(1.1);
}
.header_logo a span{
	font-size:0.45em;
}
#wrapper.scroll .header_logo a{
	padding-top:50px;
	font-size:3rem;
}
/*-------------------------globalnav_btn(pc)*/
.globalnav_btn{
	display:none;
}
/*-------------------------globalnav(pc)*/
.globalnav{
	display:block;
	position:absolute;
	top:0;
	right:0;
	padding-left:400px;
	max-width:1400px;
	width:100%;
	padding-top:50px;
}
.globalnav .header_logo{
	display:none;
}
.globalnav nav > ul{
	text-align:center;
	display:flex;
	gap:1px;
}
.globalnav nav > ul > li{
	position:relative;
	flex:1 0 auto;
}
.globalnav nav a{
	height:50px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	font-size:18px;
	font-weight:bold;
	line-height:1.25;
	transition:all 0.3s;
}
.globalnav nav > ul > li:hover > a{
	color:var(--color_mid);
	 transform: scale(1.1);
}
.globalnav nav > ul > li.case:hover > a{/*-----case*/
	color:var(--color_ord);
}
/*acc_btn(pc)*/
.globalnav nav .accordion{
	transition:all 0.5s;
	max-height:0;
	overflow:hidden;
	position:absolute;
	min-width:12em;
	display:none;/*display:block;------------------------------------------------------*/
    left: 50%;
	transform: translateX(-50%);
	border-bottom-right-radius:1em;
	border-bottom-left-radius:1em;
	box-shadow: 0 2px 2px rgba(0,0,0,0.2);
}
.globalnav nav > ul > li:hover .accordion{
	max-height:calc(100vh - 115px);
}
.globalnav nav .accordion li a{
	padding:0 10px;
	font-size:16px;
	white-space:nowrap;
	height:40px;
	background:var(--color_mi2);
	color:var(--color_mid);
}
.globalnav nav .case .accordion li a{/*-----case*/
	background:var(--color_or2);
	color:var(--color_ord);
}
.globalnav nav .accordion li:nth-child(n + 3){
	border-top:1px solid #FFF;
}
.globalnav nav .accordion li a.current,
.globalnav nav .accordion li a:hover{
	background:var(--color_mi1);
	 transform: scale(1.05);
}
.globalnav nav .case .accordion li a.current,
.globalnav nav .case .accordion li a:hover{/*-----case*/
	background:var(--color_or1);
}
/*-------------------------header_sublink(pc)*/
.header_sublink{
	position:absolute;
	top:10px;
	right:20px;
	display:flex;
	gap:15px;
}
.header_sublink p a{
	line-height:40px;
	font-size:16px;
	display:block;
	padding:0 1em;
	border-radius:5px;
	transition:all 0.3s;
}
/*-------------------------header_data(pc)*/
.header_data{
	display:none;
}
}
/*----------------------------------------------------------------------------------------sp*/
@media screen and (max-width: 1199px) {
/*-------------------------header_logo*/
.header_logo{
}
.header_logo a{
	position:absolute;
	left:0;
	top:0;
	transition:all 0.3s;
	height:var(--hh);
	display:flex;
	align-items:center;
	font-size: min(3rem, 7.7vw);
	text-align:left;
	line-height:1.25;
	gap:0.2em;
	padding:0 20px;
}
.header_logo a span{
	font-size:0.45em;
	font-weight:500;
}
.globalnav .header_logo a{
	position:static;
	padding:0;
}
/*-------------------------globalnav_btn(sp)*/
.globalnav_btn{
	position:fixed;
	right:10px;
	top:10px;
	width:60px;
	height:60px;
	z-index:1000;
	background:var(--color_mi);
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	border-radius:100px;
	gap:10%;
	box-shadow: 1px 1px 5px #0000004D;
}
.globalnav_btn span{
	content:"";
	display:block;
	width:40%;
	height:2px;
	background:#000;
	transition: all 0.4s;
}
.globalnav_btn.open span:nth-child(1){
	position:absolute;
	transform:rotate(-45deg);
}
.globalnav_btn.open span:nth-child(2){
	position:absolute;
	transform:translateX(100px);
}
.globalnav_btn.open span:nth-child(3){
	position:absolute;
	transform:rotate(45deg);
}
/*-------------------------globalnav(sp)*/
.globalnav{
	height:100vh;
	width:100%;
	overflow:hidden auto;
	background:#FFF;
	position:fixed;
	top:0;
	left:0;
	z-index:999;
	padding:0 20px;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.globalnav::-webkit-scrollbar {
  display: none;
}
.globalnav nav,
.globalnav .header_logo,
.header_sublink{
	max-width:600px;
	min-width:335px;
	margin:0 auto;
}
.globalnav nav > ul{
	border-bottom:1px dotted #000;
}
.globalnav nav li{
	position:relative;
	border-top:1px dotted #000;
}
.globalnav nav ul li a{
	display:block;
	font-size:20px;
	height:70px;
	display:flex;
	align-items:center;
}
/*acc_btn(sp)*/
.globalnav nav .acc_btn{
	width:100%;
	height:50px;
	position:absolute;
	right:0;
	top:0;
}
.globalnav nav .acc_btn::before,
.globalnav nav .acc_btn::after{
	content:"";
	width:14px;
	height:1.5px;
	background:#000;
	display:block;
	position:absolute;
	right:10px;
	top:34px;
	border-radius:1px;
	transition: all 0.4s;
}
.globalnav nav .acc_btn::before,
.globalnav nav ul li a.current + p.acc_btn.open::before{
	transform:rotate(90deg);
}
.globalnav nav .acc_btn.open::before,
.globalnav nav ul li a.current + p.acc_btn::before{
	transform:rotate(0deg);
}
/*accordion(sp)*/
#wrapper .globalnav nav ul li a.current + p + .accordion{
	display:block;
}
.globalnav nav .accordion a{
	font-size:1.8rem;
	line-height:1.25;
	height:60px;
	padding-left:1.4em;
	background:url(images/ya_mi.svg) left no-repeat;
	background-size:1.2em;
	text-align:left;
}
.globalnav nav .accordion li{
	border-top:1px solid #CCC;
}
/*-------------------------header_sublink(sp)*/
.header_sublink{
	display:flex;
	gap:5px;
	margin-top:15px;
}
.header_sublink p{
	width:100%;
}
.header_sublink p a{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	height:70px;
	font-size:18px;
	line-height:1.25;
	border-radius:8px;
}

/*-------------------------header_data(sp)*/
.header_data::before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:50%;
	z-index:-1;
	transform: translateX(-50%);
	background:var(--color_mi1);
	width:100vw;
	height:100%;
}
.header_data{
	width:360px;
	max-width: 100%;
	margin:0 auto;
	margin-top:10px;
	padding:20px 0;
	margin-top:20px;
	position:relative;
}
.header_data .chara{
	position:absolute;
	right:0;
	bottom:20px;
	width:53px;
}

}


/*main
-----------------------------------------------------------------------------------------*/
main{
	display:block;
	position:relative;
}

/*-------------------------path*/
.path{
	text-align:right;
	line-height:1.75;
	padding:0.5em 1em;
	position:relative;
}
.path li{
	font-size:1.4rem;
	list-style-type:none;
	font-weight:500;
	display: inline-block;
	margin:0;
	padding:0;
}
.path li + li::before {
	content: "/";
	display: inline-block;
	margin:0 0.3em;
}
.path a:hover{
	text-decoration:underline;
}
/*-------------------------icon_c*/
.icon_c{
	background:var(--color_nav1);
	border-radius:100%;
}
/*-------------------------timetable*/
.timetable{
	min-width:700px;
}
.timetable th,
.timetable td{
	border:1px solid var(--color_navd);
	color:var(--color_navd);
	text-align:center;
	font-weight:500;
	height:100px;
}
.timetable th{
	background-color:var(--color_navd);
	color:#FFF;
	border-right:1px solid #FFF;
	height:60px;
}
.timetable th:last-child{
	border-right:1px solid var(--color_navd);
}
@media screen and (max-width: 767px) {
	.timetable{min-width:100%;}
	.timetable th,
	.timetable td{padding:0.3em;height:auto;}
	.timetable td{padding:1em 0.3em;}
}

/*-------------------------layout*/
.layout{
	display:flex;
	gap:60px;
	padding-top:30px;
	padding-bottom:70px;
}
/*contents*/
.contents{
	width:100%;
}
/*sidebar*/
.sidebar{
	flex-shrink:0;
	width:240px;
	order:-1;
}
@media screen and (max-width: 1199px) {
	.layout{flex-wrap:wrap;padding-top:30px;padding-bottom:30px;}
	.sidebar{width:100%;order:1;}
}
/*-------------------------pager*/
.pager{
	margin-top:30px;
	text-align:center;
}
.pager p{
	color:#555;
	font-size:1.4rem;
	margin-bottom:3px;
}
.pager li{
	display:inline-block;
}
.pager li a,
.pager li span{
	display:block;
	background:rgba(0,0,0,0.1);
	width:4rem;
	font-size:1.6rem;
	line-height:4rem;
	text-align:center;
	margin:2px;
	text-decoration:none;
	border-radius:5px;
}
.pager li span{
	color:#FFF;
	background:var(--color_mid);
}
.pager li span.dots{
	background:none;
	color:#4D4D4D;
	width:auto;
	padding:0;
}
.pager li a:hover{
	background-color:#CCCCCC;
}

/*index
-----------------------------------------------------------------------------------------*/
/*-------------------------index_title*/
.index_title{
	background:var(--color_nav2) url(images/nami.svg) bottom repeat-x;
	background-size:460px 20px;
	height:80px;
}
.index_title h1{
	font-family: "Zen Maru Gothic",serif;
	font-size:3.2rem;
	text-align:center;
	font-weight:bold;
	position:relative;
	top:60px;
}
.index_title h1::before{
	content:"";
	display:block;
	height:62px;
	background:url(images/chara_mkrn.svg) center no-repeat;
	background-size:62px;
}
.case .index_title h1::before{
	background-image:url(images/chara_dkrn.svg);
}
@media screen and (max-width: 767px) {
	.index_title{background-size:160px 10px;height:40px;}
	.index_title h1{font-size:2.2rem;top:20px;}
	.index_title h1::before{height:50px;background-size:50px;}
}
/*-------------------------index_list*/
.index_list{
	position:relative;
}
.index_list a{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	height:100%;
	border:1px solid #CCC;
	padding:20px 5px 12px 5px;
	border-radius:10px;
	text-align:center;
}
.index_list a:hover{
	background-color:var(--color_nav2);
}
.index_list img{
	transition:all 0.3s;
	border-radius:100%;
}
.index_list a:hover img{
  transform: scale(1.1);
}
.index_list a > span{
	font-family: "Zen Maru Gothic",serif;
	font-weight:bold;
	line-height:1.25;
	height:3em;
	width:100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

@media screen and (max-width: 549px) {
	.index_list span span{font-size:90%;margin:0 -5px;}
}

/*page
-----------------------------------------------------------------------------------------*/
/*-------------------------page_localnav*/
.page_localnav h2{
	font-family: "Zen Maru Gothic",serif;
	font-size:2.2rem;
	text-align:center;
	font-weight:bold;
	padding-bottom:0.5em;
}
.page_localnav h2::before{
	content:"";
	display:block;
	height:62px;
	background:url(images/chara_mkrn.svg) center no-repeat;
	background-size:62px;
}
.case .page_localnav h2::before{
	background-image:url(images/chara_dkrn.svg);
}
.page_localnav ul{
	border-bottom:1px solid #CCC;
}
.page_localnav li{
	border-top:1px solid #CCC;
}
.page_localnav li a{
	display:flex;
	align-items:center;
	min-height:60px;
	font-size:1.7rem;
	line-height:1.25;
}
.page_localnav li a.current,
.page_localnav li a.uncurrent:hover,
.page_localnav li a:hover{
	background:var(--color_nav2);
}
.page_localnav li a.uncurrent{
	background:none;
}
/*-------------------------page_title*/
.page_title{
	background:var(--color_nav2) url(images/nami.svg) bottom repeat-x;
	background-size:460px 20px;
}
.page_title h1,
.page_title .title{
	font-size:3.2rem;
	line-height:1.25;
	font-weight:bold;
	font-family: "Zen Maru Gothic",serif;
	display:flex;
	align-items:center;
	gap:0.5em;
	padding-top:1em;
	padding-bottom:1.25em;
}
.page_title h1 img,
.page_title .title img{
	width:2.2em;
	flex-shrink:0;
}
@media screen and (max-width: 767px) {
	.page_title{background-size:160px 10px;}
	.page_title h1,
	.page_title .title{font-size:2.2rem;}
}

/*-------------------------page_kiji*/
/*見出し1*/
.page_kiji h2:not(.reset){
	font-weight:bold;
	font-family: "Zen Maru Gothic",serif;
	padding:0.6em;
	font-size:2.4rem;
	line-height:1.25;
	background:var(--color_hai);
	border-left:0.4em solid var(--color_nav);
	margin-top:3em;
	margin-bottom:0.7em;
}
.page_kiji > h2:first-child{
	margin-top:0;
}
/*見出し2*/
.page_kiji h3{
	font-size:2.2rem;
	font-family: "Zen Maru Gothic",serif;
	font-weight:bold;
	color:var(--color_navd);
	border-bottom:1.5px dotted var(--color_navd);
	margin-top:2em;
	padding:0.5em 0;
	margin-bottom:0.7em;
}
/*見出し3*/
.page_kiji h4{
	margin-top:1.5em;
	font-weight:bold;
	margin-bottom:0.3em;
}
@media screen and (max-width: 767px) {
	.page_kiji h2{font-size:2.4rem;letter-spacing:1px;}
	.page_kiji h3{font-size:2rem;margin-top:15px;}
}
/*番号なしリスト*/
.page_kiji ul:not(.reset) > li{
	font-size:inherit;
	margin-left:1em;
	margin-bottom:0.5em;
}
.page_kiji ul:not(.reset) > li:before{ 
	margin-left:-1em;
	display:inline-block; 
	content:'';
	width:1em;
	height:1em;
	background:#000;
	border-radius:50%;
	transform:scale(0.25) translateY(0.5em);
}
.page_kiji ul:not(.reset){
	margin:1em 0;
}
/*dot(ul)*/
.page_kiji ul.dot li:before{ 
	background:var(--color_nav);
	transform:scale(0.8) translateY(0.2em);
}
.page_kiji .hensyu{display:block;top:-50px;}
/*table*/
.page_kiji table{

}



/*single
-----------------------------------------------------------------------------------------*/




/*term
-----------------------------------------------------------------------------------------*/
/*-------------------------term_localnav*/
.term_localnav h2{
	font-weight:bold;
	background:var(--color_nav1);
	padding:0.8em;
}
.term_localnav li{
	border-bottom:1px solid #CCC;
}
.term_localnav li a{
	display:flex;
	align-items:center;
	min-height:60px;
	font-size:1.7rem;
	line-height:1.25;
}
.term_localnav li a:hover{
	background:var(--color_nav2);
}


/*-------------------------term_kiji_data*/
.term_kiji_data{
	display:flex;
	gap:0.8em;
	margin-bottom:20px;
}
.term_kiji_data .cat{
	text-decoration:none;
	padding:0 0.6em;
	border-radius:1em;
}
.term_kiji_data .cat:hover{
	filter:brightness(90%);
}
.term_kiji_data .ya{
	margin-left:auto;
	color:var(--color_link);
	padding:0.5em 0.8em;
	border:1px solid var(--color_link);
	position:absolute;
}
@media print, screen and (min-width: 768px) {
	.term_kiji_data .ya{
		right:20px;
		top:0;
		border-top:none;
		border-bottom-left-radius:1em;
		border-bottom-right-radius:1em;
	}
	.term_kiji_data .ya:hover{
		background:#F1F1F1;
	}
}
@media screen and (max-width: 767px) {
	.single .term_kiji_data .ya{
		border-right:none;
		right:-20px;
		top:-15px;
		border-top-left-radius:2em;
		border-bottom-left-radius:2em;
	}
}
/*-------------------------single*/
.single{
	border:1px solid #000;
	padding:50px;
	position:relative;
}
@media screen and (max-width: 767px) {
	.single{border:none;padding:0;}
}

/*-------------------------term_kiji*/
.term_kiji h1{
	font-weight:bold;
	font-family: "Zen Maru Gothic",serif;
	font-size:2.4rem;
	line-height:1.25;
	padding-bottom:0.5em;
	border-bottom:1px solid #000;
}
.term_kiji h1 span.kyubo{
	font-size:70%;
	padding:0.15em 0.5em;
	margin-left:0.5em;
}
/*見出し1*/
.term_kiji h2{
	font-weight:bold;
	font-family: "Zen Maru Gothic",serif;
	font-size:2rem;
	line-height:1.25;
	padding-bottom:0.5em;
	border-bottom:1px solid #000;
	margin-top:3em;
	margin-bottom:0.7em;
}
.term_kiji section > h2:first-child{
	margin-top:0;
}
/*見出し2*/
.term_kiji h3{
	font-weight:bold;
	font-size:2rem;
	background:var(--color_nav1);
	color:#000;
	padding:0.3em 0.5em;
	margin-top:1.5em;
	margin-bottom:0.5em;
}
/*見出し2*/
.term_kiji h4{
	font-weight:bold;
	font-size:2rem;
	margin-top:1.5em;
	margin-bottom:0.5em;
}
.term_kiji h2 + h3,
.term_kiji h3 + h4{
	margin-top:15px;
}
@media screen and (max-width: 767px) {
	.term_kiji h1{font-size:2rem;}
	.term_kiji h2{font-size:1.8rem;}
	.term_kiji h3{font-size:1.8rem;}
	.term_kiji h4{font-size:1.8rem;}
}
/*番号なしリスト*/
.term_kiji ul:not(.reset) > li{
	font-size:inherit;
	margin-left:1em;
	margin-bottom:0.5em;
}
.term_kiji ul:not(.reset) > li:before{ 
	margin-left:-1em;
	display:inline-block; 
	content:'';
	width:1em;
	height:1em;
	background:#000;
	border-radius:50%;
	transform:scale(0.25) translateY(0.5em);
}
.term_kiji ul:not(.reset){
	margin:1em 0;
}
/*dot(ul)*/
.term_kiji ul.dot li:before{ 
	background:var(--color_nav);
	transform:scale(0.8) translateY(0.2em);
}




/*footer
-----------------------------------------------------------------------------------------*/
footer{
	position:relative;
	margin-top:auto;
}
/*-------------------------pagetop*/
.pagetop a{
	position:fixed;
	bottom:12px;
	right: 12px;
	z-index:20;
	width:70px;
	height:70px;
	border-radius:35px;
	background:#FFF url(images/pagetop.svg) center no-repeat;
	background-size:cover;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
	transition:all 0.3s;
}
.pagetop a:hover{
	background-color:var(--color_mi1);
	margin-bottom:-2px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
}
.pagetop a:hover::before{
	border-color:#FFF;
}
@media screen and (max-width: 767px) {
	.pagetop a{width:50px;height:50px;bottom:8px;right:8px;}
	.pagetop.bottom a{bottom:50px;}
}
/*-------------------------footer_nav*/
.footer_nav{
	background:var(--color_mid);
}
.footer_nav ul{
	display:flex;
	flex-wrap:wrap;
}
.footer_nav li a{
	display:flex;
	align-items:center;
	padding:0 15px;
	color:#FFF;
	font-weight:bold;
	height:70px;
}
.footer_nav li a:hover{
	background:rgba(0,0,0,0.5);
}
@media screen and (max-width: 919px) {
	.footer_nav .frame{padding:15px 10px 15px 0;align-items:end;}
	.footer_nav ul:first-child{display:block;}
	.footer_nav ul a{height:50px;}
	.footer_nav ul:nth-child(2) a{height:60px;padding:5px;}
}
/*-------------------------copyright*/
.copyright{
	border-top:1px solid #999;
	height:60px;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:1.4rem;
}
@media screen and (max-width: 767px) {
	.copyright{font-size:1.2rem;}
}