@charset "utf-8";


/* ---------------------------------------------
 base modules
------------------------------------------------ */

.body {
  min-width: 1200px; /* コンテンツ幅に書き直す */
  clear:both;
}
.wrap{ clear:both; padding-top:90px; }

.inner {
  width: 1200px; /* コンテンツ幅に書き直す */
  margin: 0 auto;
}

.pc { display: block; }
.sp { display: none; }
.en { font-family: 'Barlow Semi Condensed', 'Noto Sans Japanese', sans-serif; }

/* ---------------------------------------------
 header
------------------------------------------------ */

.header{
	background:#fff;
  width:100%;
  height:90px;
  position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:9999;
}

.header::before{
	background:#f2f9fb;
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:50%;
	right:0;
}

.header .inner{
	background:linear-gradient(90deg,#fff 0,#fff 225px,#f2f9fb 225px,#f2f9fb 1200px);
	position:relative;
	height:90px;
}

.header li{
  float:left;
  padding: 0 10px;
}


.header .logo{
  position:absolute;
  left:0;
  top:25px;
  width: 210px;
}
.header .logo img{
	width: 100%;
}

.header .global-navigation{
	color:#60b5ca;
	font-weight:bold;
  margin: 0 160px 0 240px;
  padding: 35px 0 0;
}

.header .global-navigation a{ font-weight:normal; }
.header .global-navigation a:link,
.header .global-navigation a:visited{ color:#0d0c0c; text-decoration:none; }
.header .global-navigation a:hover,
.header .global-navigation a:active { color:#888; text-decoration:none; }

.header .font-size{
	font-size:88%;
  position:absolute;
  right:0;
  top:32px;
}

.header .font-size li{
	background:#fff;
	border:1px solid #60b5ca;
	border-left:none;
	cursor:pointer;
	color:#333;
	display:flex;
	justify-content:center;
	line-height:28px;
	height:28px;
	padding:0 14px;
}

.header .font-size li:first-child{
	border-left:1px solid #60b5ca;
	border-radius:15px 0 0 15px;
}

.header .font-size li:last-child{
	border-radius:0 15px 15px 0;
}

.header .font-size li.select{
	background:#60b5ca;
	color:#fff;
}

/* ---------------------------------------------
 container
------------------------------------------------ */

.container{
  width:1200px;
  margin:110px auto 90px;
}

/* ------ title -------------------------------- */

.page-title{
  height:290px;
	position:relative;
  margin:0 auto;
}
.page-title::before{
	background:url(../images/bg_h1.png) no-repeat 0 0;
	content:"";
	width:316px;
	height:316px;
	position:absolute;
	left:50%;
	bottom:-159px;
	margin-left:-158px;
}
.page-title h1{
	color:#333;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size:300%;
  font-weight:bold;
	text-shadow:0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff;
	line-height:0.6;
	position:absolute;
	left:50%;
	transform:translate(-50%,0);
	bottom:-50px;
}
.page-title h1 .en{
  font-size:33%;
  font-weight:500;
	text-shadow:none;
	text-transform:uppercase;
}

/* ------ topic-path --------------------------- */

.container .topic-path {
  text-align:left;
  margin:15px 0;
  color:#999;
  font-size:78%;
  list-style: none;
}

.topic-path a,
.topic-path a:link,
.topic-path a:hover,
.topic-path a:visited,
.topic-path a:active {
  color:#666666;
  text-decoration:none;
}

/* ------ pagetop ------------------------------ */

.pagetop{
  width: 980px;
  margin: 10px auto;
  text-align:right;
  font-size:78%;
}

.pagetop a,
.pagetop a:link,
.pagetop a:hover,
.pagetop a:visited,
.pagetop a:active {
  text-decoration:none;
  color:#666;
  padding:5px 10px 5px 15px;
}

/* content
------------------------------------------------ */
.content {
/*
  width:840px;
  float:left;
*/
  text-align:left;
	position:relative;
}

/* sidebar
------------------------------------------------ */

.sidebar{
	display:none;
  width:330px;
  float:right;
  text-align:left;
}


/* ------ local-navigation --------------------- */

.sidebar .local-navigation{
  margin-bottom:20px;
}

.sidebar .local-navigation h2{
	color:#60b5ca;
	font-size:156%;
	font-weight:normal;
	position:relative;
  margin:0;
  padding:0 13px;
}

.sidebar .local-navigation h2::before{
	border-top:1px solid #60b5ca;
	content:"";
	position:absolute;
	bottom:11px;
	left:0;
	right:0;
}

.sidebar .local-navigation ul{
	line-height:1.88;
  margin:13px 13px 0;
}

.sidebar .local-navigation ul li{
	position:relative;
	margin:9px 0 0;
  padding:0 0 0 17px;
}

.sidebar .local-navigation ul li::before{
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-top: solid 2px #60b5ca;
  border-right: solid 2px #60b5ca;
  position: absolute;
  top: 0.7em;
  left: -3px;
  transform: rotate(45deg);
}

.sidebar .local-navigation li a:link,
.sidebar .local-navigation li a:visited,
.sidebar .local-navigation li a:hover,
.sidebar .local-navigation li a:active{
	color:#666;
  text-decoration:none;
}

.sidebar .local-navigation.tag ul{
	display:flex;
	font-size:88%;
	flex-wrap:wrap;
	line-height:1.2;
  margin:3px 8px 0;
}

.sidebar .local-navigation.tag ul li{
	white-space:nowrap;
	margin:10px 5px 0;
	padding:0;
}

.sidebar .local-navigation.tag ul li::before{
	display:none;
}

.sidebar .local-navigation.tag li a{
	border:1px solid #ccc;
	border-radius:5px;
	display:block;
  padding:4px 5px 6px 11px;
}

.sidebar .local-navigation.tag li a:link,
.sidebar .local-navigation.tag li a:visited{
	background:#fff;
}
.sidebar .local-navigation.tag li a:hover,
.sidebar .local-navigation.tag li a:active{
	background:#eee;
}

/* ------ banner ------------------------------- */

.sidebar .banner{
  margin-top:0;
}

.sidebar .banner li{
  margin-bottom:10px;
}



/* ---------------------------------------------
 footer
------------------------------------------------ */

.footer{
  clear:both;
	color:#000;
}

.footer .inner{
}

.footer a:link,
.footer a:visited {
  color:#000;
  text-decoration:none;
}
.footer a:hover,
.footer a:active {
  color:#666;
  text-decoration:none;
}

.footer-contact{
	border-top:1px solid #eee;
	border-bottom:1px solid #eee;
}

.footer-contact dt{
	background:#fdfdfd;
	font-size:113%;
	line-height:48px;
	text-align:center;
}

.footer-contact dd{
	background:#fafafa;
	border-top:1px solid #eee;
}

.footer-contact dd .inner{
	display:flex;
	justify-content:space-between;
}

.footer-contact dd .inner::after{
	display:none;
}

.footer-contact address{
	padding:39px 0 20px;
	order:1;
}

.footer-contact address dt{
	background:none;
	font-size:100%;
	font-weight:bold;
	line-height:32px;
	text-align:left;
}

.footer-contact address dt img{
	margin-right:18px;
}

.footer-contact address dd{
	background:none;
	border-top:none;
	font-size:88%;
	text-align:left;
	margin:15px 0 0;
}

.footer-contact .tel{
	padding:18px 0;
	order:2;
}

.footer-contact .tel .icon{
	background:#fff;
	display:inline-block;
	font-weight:600;
	text-align:center;
	width:43px;
	height:27px;
	vertical-align:middle;
	margin:3px 14px 0 0;
}

.footer-contact .tel .tel{
    display: inline-block;
    font-size: 310%;
    vertical-align: middle;
    letter-spacing: 1px;
    line-height: 1.3;
    padding: 0;
}

.footer-contact .tel .tel a{
	text-decoration:none;
}

.footer-contact .tel .notes{
	display:inline-block;
	font-size:88%;
	margin:4px 0 0;
}

.footer-contact .tel .notes .pc{
	display:inline;
}

.footer-contact .contact{
	font-size:113%;
	font-weight:bold;
	text-align:center;
	line-height:73px;
	width:450px;
	height:73px;
	padding:29px 0 39px;
	order:3;
}

.footer-contact .contact a{
	border:2px solid #ddaa10;
	display:block;
}

.footer-contact .contact a:link,
.footer-contact .contact a:visited{
	background:#ddaa10;
	color:#fff;
}
.footer-contact .contact a:hover,
.footer-contact .contact a:active{
	background:transparent;
	color:#ddaa10;
}

.footer-navigation{
  padding:27px 0 43px;
}

.footer-navigation .inner{
	display:flex;
	justify-content:space-between;
	text-align:left;
}

.footer-navigation .inner::after{
	display:none;
}

.footer-navigation ul{
	font-size:88%;
	margin:-24px 0 0;
}

.footer-navigation ul li{
	margin:24px 0 0;
}

.footer-navigation ul li img{
	vertical-align:middle;
	margin-left:7px;
}

.footer-navigation ul div{
	display:flex;
	justify-content:space-between;
}

.footer-navigation ul ul{
	font-size:86%;
	margin:0;
	padding:0 16px;
}

.footer-navigation ul ul li{
	margin:8px 0 0;
}

.copyright{
	background:#5eb4c9;
  color:#fff;
}
.copyright p{
  text-align:center;
  font-size:63%;
	line-height:50px;
}



