@charset "utf-8";


/* ---------------------------------------------
 base modules
------------------------------------------------ */

.body {
  min-width: 1300px; /* コンテンツ幅に書き直す */
  clear:both;
}
.wrap{ clear:both; }

.inner {
  width: 1200px; /* コンテンツ幅に書き直す */
  margin: 0 auto;
}

.pc { display: block; }
.sp { display: none; }

/* ---------------------------------------------
 header
------------------------------------------------ */

.header .header-inner{
	background:#fff;
	border-radius:10px;
	box-shadow:0 0 8px rgba(0,0,0,0.13);
	min-width:1200px;
	height:70px;
  position:fixed;
	top:20px;
	left:50px;
	right:50px;
	z-index:9999;
}

.header .logo{
  position:absolute;
  left:20px;
  top:17px;
}

.header .global-navigation{
	font-weight:bold;
	margin:0 28px 0 0;
}

.header .global-navigation ul{
	display:flex;
	justify-content:flex-end;
	line-height:70px;
}

.header .global-navigation ul li::after{
	display:inline;
	content:"/";
	margin:0 0.6em 0;
}
.header .global-navigation ul li:nth-child(8)::after{
	content:"";
	margin:0 0em 0 1em;
}
.header .global-navigation ul li:last-child::after{
	display:none;
}

.header .global-navigation ul li a{
	display:inline-block;
}

.header .global-navigation ul li a:link,
.header .global-navigation ul li a:visited{
	color:#000;
	text-decoration:none;
}
.header .global-navigation ul li a:hover,
.header .global-navigation ul li a:active{
	color:#666;
	text-decoration:none;
}

.header .global-navigation ul li a.parent{
	position:relative;
	padding-right:20px;
}

.header .global-navigation ul li a.parent::after{
	border-top:2px solid #000;
	border-right:2px solid #000;
	content:"";
	width:6px;
	height:6px;
	position:absolute;
	top:50%;
	right:0;
	transform:rotate(135deg);
	margin:-5px 0 0;
}

.header .global-navigation ul li dl{
	background:#fff;
	border-radius:0 0 10px 10px;
	box-shadow:0 9px 8px rgba(0,0,0,0.13);
	display:none;
	text-align:left;
	line-height:1.5;
	position:absolute;
	top:60px;
	left:0;
	right:0;
	padding:19px 40px 41px;
}

.header .global-navigation ul li a:hover + dl,
.header .global-navigation ul li dl:hover{
	display:flex;
	flex-wrap: wrap;
	max-height: 65vh;
	overflow-y: auto;
}

.header .global-navigation ul li dl dt{
	box-sizing:border-box;
	width:15%;
	margin:20px 0 30px;
	padding:0 20px 0 0;
}

.header .global-navigation ul li dl dd{
	font-weight:normal;
/*	flex:1;*/
	width:85%;
	margin-bottom: 30px;
}

.header .global-navigation ul li dl dd ul{
	justify-content:flex-start;
	flex-wrap:wrap;
	line-height:1.5;
	margin:4px 0 0 -25px;
}

.header .global-navigation ul li dl dd ul li{
	position:relative;
	margin:16px 0 0 25px;
	/* padding:0 0 0 17px; */
	
	padding: 0 0 0 10px;
}

.header .global-navigation ul li dl dd ul li::before{
	background:#ffde00;
	content:"";
	/* width:8px; */
	/* height:2px; */
	position:absolute;
	/* top:0.7em; */
	left:0;

	top: 0.2rem;
	height: 1rem;
	width: 3px;
}

.header .global-navigation ul li dl dd ul li::after{
	display:none;
}

.header .global-navigation ul li dl dd ul li a:link,
.header .global-navigation ul li dl dd ul li a:visited{
	color:#000;
	text-decoration:none;
}
.header .global-navigation ul li dl dd ul li a:hover,
.header .global-navigation ul li dl dd ul li a:active{
	color:#000;
	text-decoration:underline;
}

.header .global-navigation a[target="_blank"] {
	background: none;
	padding-right: 0;
}

.header .global-navigation img {
	height: 30px;
	width: 30px;
	margin: 20px 0;
}

.header .utility-navigation{
	position:fixed;
	top:120px;
	right:0;
	z-index:9999;
}

.header .utility-navigation > div{
	background:#fff;
	border-radius:10px 0 0 10px;
	box-shadow:0 0 8px rgba(0,0,0,0.13);
	display:flex;
	width:291px;
	height:50px;
	position:absolute;
}

.header .utility-navigation .navi-btn{
	cursor:pointer;
	text-indent:100%;
	position:relative;
	overflow:hidden;
	white-space:nowrap;
	width:50px;
	height:50px;
}

.header .utility-navigation .navi-cont{
	width:241px;
}

.header .utility-navigation .search{
	top:0;
	right:-241px;
}

.header .utility-navigation .search .navi-btn{
	background:url(../images/icon_search_001.png) 14px 14px no-repeat;
}

.header .utility-navigation .search .navi-cont .gsc-control-cse{
	border:none;
	padding:0;
}

.header .utility-navigation .search .navi-cont form.gsc-search-box{
	box-sizing:border-box;
	margin:0;
	padding:10px 20px 0 0;
}

.header .utility-navigation .search .navi-cont form.gsc-search-box table{
	border:none;
	margin:0;
}

.header .utility-navigation .search .navi-cont form.gsc-search-box table td{
	border:none;
	padding:0;
}

.header .utility-navigation .search .navi-cont .gsc-search-button-v2{
	height:30px;
	margin-left:5px;
}

.header .utility-navigation .color{
	top:60px;
	right:-241px;
}

.header .utility-navigation .color .navi-btn{
	background:url(../images/icon_color_001.png) 13px 11px no-repeat;
}

.header .utility-navigation .color .navi-cont ul{
	display:flex;
	margin:9px 0 0 16px;
}

.header .utility-navigation .color .navi-cont ul li{
	box-sizing:border-box;
	border-radius:50%;
	cursor:pointer;
	font-weight:bold;
	text-align:center;
	line-height:33px;
	width:33px;
	height:33px;
	margin:0 0 0 9px;
}

.header .utility-navigation .color .navi-cont ul li#color-white{
	background:#fff;
	border:1px solid #382928;
	color:#000;
}

.header .utility-navigation .color .navi-cont ul li#color-blue{
	background:#0213fa;
	border:1px solid #0213fa;
	color:#fbec02;
}

.header .utility-navigation .color .navi-cont ul li#color-yellow{
	background:#fbec02;
	border:1px solid #fbec02;
	color:#000;
}

.header .utility-navigation .color .navi-cont ul li#color-black{
	background:#000;
	border:1px solid #000;
	color:#fff;
}

/* #adminBox + .body .header .header-inner{
	top:110px;
} */

#adminBox + .body .header .utility-navigation{
	top:210px;
}

/* ---------------------------------------------
 container
------------------------------------------------ */

.container{
  width:1200px;
  margin:0 auto;
}

/* ------ title -------------------------------- */

.page-title{
	background:url(../images/bg_pagetitle_001.jpg) 50% 50% / cover no-repeat;
	position:relative;
	width:100%;
	height:280px;
}

.page-title h1{
	color:#fff;
  font-size:250%;
  font-weight:bold;
  text-align:center;
	/* text-shadow:0 0 8px #000; */
	white-space:nowrap;
	position:absolute;
	top:50%;
	left:50%;
	margin-top:35px;
	transform:translate(-50%,-50%);
	color: #000;
}

/* ------ topic-path --------------------------- */

.container .topic-path{
  font-size:75%;
	font-weight:bold;
  text-align:left;
  margin:17px 0;
  list-style:none;
}

.color-blue .topic-path{
  color:#fbec02;
}
.color-black .topic-path{
  color:#fff;
}

.topic-path a,
.topic-path a:link,
.topic-path a:visited{
  color:#000;
  text-decoration:none;
}
.topic-path a:hover,
.topic-path a:active{
  color:#000;
  text-decoration:underline;
}

.color-blue .topic-path a,
.color-blue .topic-path a:link,
.color-blue .topic-path a:visited,
.color-blue .topic-path a:hover,
.color-blue .topic-path a:active{
  color:#fbec02;
}
.color-black .topic-path a,
.color-black .topic-path a:link,
.color-black .topic-path a:visited,
.color-black .topic-path a:hover,
.color-black .topic-path a:active{
  color:#fff;
}

.topic-path li{
	display:inline-block;
	text-indent:0;
	padding:0;
}

.topic-path li::before{
	display:none;
}

.topic-path li::after{
	content:"/";
	display:inline;
	margin:0 0.3em 0 0.5em;
}

.topic-path li:last-child::after{
	display:none;
}

/* content
------------------------------------------------ */

.content {
  text-align:left;
	/* width: 1000px; */
	margin: 0 auto;
}

.two-column .content {
  width:840px;
  float:left;
}

/* index-list */
.index-list ul {
	border-top: 1px solid #ddd;
}
.index-list a {
	text-decoration: none;
	display: block;
	border-bottom: 1px solid #ddd;
	color: #000;
	padding: 1rem;
	position: relative;
	transition: all .3s ease-in-out;
}
.index-list a::after {
	content: '';
	right: 1rem;
	top: 1.7rem;
	width: 4px;
	height: 4px;
	border-top: 2px solid #FFDE00;
	border-right: 2px solid #FFDE00;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
}
.index-list a:hover {
	background-color: #ffde0021;
	opacity: 1;
}
.index-list .index-list-child {
	margin-top: 0;
	border-top: 0;
	display: flex;
	flex-wrap: wrap;
}
.index-list-child li {
	width: 50%;
}
.index-list-child a {
	padding-left: 2rem;
}


/* sidebar
------------------------------------------------ */

.sidebar{
	display:flex;
	justify-content:space-between;
  text-align:left;
	margin:50px 0 0;
}


/* ------ infoNav ------------------------------ */

.sidebar .infoNav{
	width:330px;
}

.sidebar .infoNav h2{
	border-bottom:1px solid #ffde00;
	font-family:"LoveloBlack";
	font-size:156%;
  font-weight:normal;
  margin:0;
  padding:0 12px 11px;
}

.sidebar .infoNav ul{
	line-height:1.875;
  margin:24px 13px 0;
}

.sidebar .infoNav.backnumber ul{
	display:flex;
	flex-wrap:wrap;
	margin-top:19px;
}

.sidebar .infoNav ul li{
	margin:5px 0 0;
}

.sidebar .infoNav.backnumber ul li{
	box-sizing:border-box;
	width:50%;
}

.sidebar .infoNav li a{
	display:inline-block;
}

.sidebar .infoNav li a:link,
.sidebar .infoNav li a:visited{
	color:#666;
  text-decoration:none;
}
.sidebar .infoNav li a:hover,
.sidebar .infoNav li a:active{
	color:#666;
  text-decoration:underline;
}



/* ---------------------------------------------
 footer
------------------------------------------------ */

.footer{
  background:#f5f5f5;
  clear:both;
	margin:0;
}

.footer a:link,
.footer a:visited{
  color:#000;
  text-decoration:none;
}
.footer a:hover,
.footer a:active{
  color:#000;
  text-decoration:underline;
}

.footer .footer-row-01{
	padding:49px 0 66px;
}

.footer .footer-row-01 ul{
	display:flex;
	flex-wrap:wrap;
	font-size:88%;
	font-weight:bold;
	text-align:left;
	margin:0 0 0 -31px;
}

.footer .footer-row-01 ul li{
	position:relative;
	margin:9px 0 0 31px;
	padding:0 0 0 21px;
}

.footer .footer-row-01 ul li::before{
	background:#000;
	border-radius:50px;
	content:"";
	width:13px;
	height:13px;
	position:absolute;
	top:0.4em;
	left:0;
}

.footer .footer-row-01 ul li::after{
	border-top:1px solid #f5f5f5;
	border-right:1px solid #f5f5f5;
	content:"";
	width:4px;
	height:4px;
	position:absolute;
	top:0.65em;
	left:3px;
	transform:rotate(45deg);
}

.footer .footer-row-02{
	background:#ffde00;
	position:relative;
	padding:47px 0 46px;
}

.footer .footer-row-02::before{
  background:url(../images/bg_footer_001.png) 50% 0 repeat-x;
	content:"";
	height:10px;
	position:absolute;
	top:-10px;
	left:0;
	right:0;
}

.footer .footer-row-02 .inner{
	position:relative;
}

.footer .footer-row-02 address dl{
	text-align:left;
}

.footer .footer-row-02 address dl dt{
	font-size:88%;
	font-weight:bold;
	line-height:1.5;
}

.footer .footer-row-02 address dl dt span{
	display:block;
	font-size:114%;
	margin:1px 0 0;
}

.footer .footer-row-02 address dl dd{
	font-size:88%;
	margin:9px 0 0;
}
/*
.copyright{
	font-size:69%;
	text-align:right;
	position:absolute;
	right:0;
	bottom:0;
}
*/
.footer .pagetop{
	position:absolute;
	right:-2px;
	top:-171px;
	z-index:9999;
}

.footer .pagetop p{
	background:url(../images/icon_pagetop.png) 0 0 no-repeat;
	color:#842b32;
	cursor:pointer;
	display:block;
	width:141px;
	height:163px;
}

.footer .pagetop p span{
	display:block;
	font-size:88%;
	font-weight:bold;
	text-align:center;
	letter-spacing:0.05em;
	width:96px;
	margin:0 auto 0 5px;
	padding:39px 0 0;
}



/* ---------------------------------------------
 color
------------------------------------------------ */

.color-blue{
	background:#0213fa;
}

.color-blue .content,
.color-blue .content a{
	color:#fbec02 !important;
}

.color-yellow{
	background:#fbec02;
}

.color-yellow .content,
.color-yellow .content a{
	color:#000 !important;
}

.color-black{
	background:#000;
}

.color-black .content,
.color-black .content a{
	color:#fff !important;
}


/* faq */
.color-blue .faq-list dt.faq-tab,
.color-blue .faq-list dd.faq-cont,
.color-yellow .faq-list dt.faq-tab,
.color-yellow .faq-list dd.faq-cont,
.color-black .faq-list dt.faq-tab,
.color-black .faq-list dd.faq-cont {
  background: inherit;
}
.color-blue .faq-list dt.faq-tab{
  border: 1px solid yellow;
}
.color-yellow .faq-list dt.faq-tab{
  border: 1px solid #000;
}
.color-black .faq-list dt.faq-tab{
  border: 1px solid #fff;
}

.adress-list{
        display: flex;
        justify-content: space-between;
        text-align: left;
        flex-wrap: wrap;
        box-sizing: border-box;
}
.adress-list::after{
	display: none;
}
.adress-list address{
        width: 20%;
}
.adress-list address{
      width: 23.5%;
			padding:0 0px 0 15px;
			border-left: 1px #ffffff solid;
			margin-bottom: 30px;
}
.adress-list address:nth-child(4n){
			border-right: 1px #ffffff solid;
}
p.copyright{
        position:relative;
		padding:0 0px 0 15px;
		/* border-left: 1px #ffffff solid;
		width: 20%; */
		font-size: 65%!important;
		font-weight: 300!important;
		margin-bottom: 30px;
		text-align: right;
}
.adress-list p.copyright small{
    position: absolute;
      left: 15px;
      bottom: 10px;
}
.adress-list p.foot-tel{
	margin-top: 5px!important;
}