﻿@charset "utf-8";

/* ---------------------------------------------
　layout modules
------------------------------------------------ */

/* base modules
------------------------------------------------ */
.content p,
.content ul,
.content dl,
.content ol,
.content table,
.content blockquote{
	margin: 20px 0 0;
	line-height:1.8em;
}

.content ul p, .content ul dl, .content ul ol,
.content dl p, .content dl ul, .content dl ol,
.content ol p, .content ol ul, .content ol dl,
.content table p, .content table ul, .content table dl, .content table ol{
	margin: 0;
}

.content p img, .content dl img, .content ul img {
	vertical-align: middle;
}

.column-image-left,.column-image-center,.column-image-right { margin-top:20px !important; }

/* common modules
------------------------------------------------ */

em         { background: linear-gradient(transparent 60%, #fed270 0%); }
.attention { color: #c8000d; }

.small    { font-size:87%;  }
.x-small  { font-size:78%;  }

.large    { font-size:107%; }
.x-large  { font-size:120%; }

.bold     { font-weight:bold; }

.center{ text-align: center; }
.right { text-align:right;   }
.left  { text-align:left!important;    }

.float-l{ float: left;  }
.float-r{ float: right; }
.clear  { clear: both;  }

.img-l{ float:left;  margin:0 25px 10px 0; }
.img-r{ float:right; margin:0 0 10px 25px; }

.nowrap         { white-space:nowrap; }
.nomargintop    { margin-top: 0 !important; }
.content .nocss { margin:0; padding:0; border:none; background:none; }

a[href*="tel:"] {
  color: #333;
	pointer-events: none;
}

/* --- anchor --- */

.anchor{
	padding-left: 15px;
	margin-bottom: 5px;
	position: relative;
}

.anchor:before {
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	position: absolute;
	top: 0.5em;
	left: 0;
	transform: rotate(45deg);
}

/* --- ext icon --- */

a[href$='.xls'], a[href$='.xlsx']{
	background: url(../images/fileicon/xls.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='.doc'], a[href$='.docx']{
	background: url(../images/fileicon/doc.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='pdf']{
	background: url(../images/fileicon/pdf.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a.no-icon[href$='pdf']{
	background: none;
	padding-right: 0px;
}

a[href$='ppt']{
	background: url(../images/fileicon/ppt.png) no-repeat 100% 50%;
	padding-right: 25px;
}



/* --- openwin --- */

.openwin{
	padding-right: 15px;
}

/* ---　pagetop-in　 --- */

.pagetop-in{
    text-align:right;
}

.pagetop-in a{
	padding-left: 15px;
	margin-bottom: 5px;
	position: relative;
}

.pagetop-in a:before {
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	border-top: solid 2px #333;
	border-left: solid 2px #333;
	position: absolute;
	top: 0.5em;
	left: 0;
	transform: rotate(45deg);
}

/* --- blockquote --- */

blockquote,
.acms-entry blockquote{
	background:#eee;
	border:1px solid #ddd;
	margin-top:40px;
	padding:30px;
}



/* ------ title -------------------------------- */
.content h1,
.content .wysiwyg h1{
	clear:both;
    background:transparent;
	font-size:2.6rem;
	font-weight:normal;
	text-align:center;
	line-height:1.3;
    /*text-transform: uppercase;*/
    margin-top: 80px;
}

.content h2,
.content .wysiwyg h2{
	clear:both;
    background:transparent;
	font-size:2.2rem;
	font-weight:normal;
	text-align:center;
	line-height:1.3;
    /*text-transform: uppercase;*/
    margin-top: 80px;
}

.content h2 a:link,
.content h2 a:visited,
.content h2 a:hover,
.content h2 a:active{ text-decoration:none; }


.content h3,
.content .wysiwyg h3{
	clear:both;
    background:transparent;
	font-size:2rem;
	font-weight:normal;
	text-align:center;
	line-height:1.3;
    /*text-transform: uppercase;*/
    margin-top: 50px;
}

.content h4,
.content .wysiwyg h4{
	clear:both;
    background:transparent;
	font-size:1.5rem;
	font-weight:bold;
	text-align:center;
	line-height:1.3;
    /*text-transform: uppercase;*/
    margin-top: 50px;
}

.content h5,
.content .wysiwyg h5{
	clear:both;
    background:transparent;
	font-size:1.5rem;
	font-weight:normal;
	text-align:center;
	line-height:1.3;
    /*text-transform: uppercase;*/
    margin-top: 50px;
}

.content h2 span.pc {
	display: inline;
}


/* ------ ul dl -------------------------------- */


/* --- normal list --- */

.list li,
.list dt{
	position: relative;
    margin-left: 18px;
}

.list li:before,
.list dt:before{
  display: block;
  content: '';
  position: absolute;
  top: .69em;
  left: -1em;
  width: 5px;
  height: 5px;
  background-color: #333;
}

.list li ul li:before{
  display: block;
  content: '';
  position: absolute;
	top: .69em;
	left: -1em;
	width: 6px;
	height: 6px;
	background-color: #333;
	border-radius: 6px 6px 6px 6px;
}

.list li ul li:after{
	display: block;
	content: '';
	position: absolute;
	top: .75em;
	left: -0.95em;
	width: 4px;
	height: 4px;
	background-color: #fff;
	border-radius: 4px 4px 4px 4px;
  }

/* --- link list --- */

.link li,
.link dt{
	padding-left: 15px;
	margin-bottom: 5px;
	position: relative;
}

.link li:before,
.link dt:before{
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	position: absolute;
	top: 0.5em;
	left: 0;
	transform: rotate(45deg);
}

.list dt,
.link dt {
  font-weight: bold;
  margin-top: 10px;
}

.list dd,
.link dd,
.list .date,
.link .date,
.list .category,
.link .category,
.list .title,
.link .title {
  padding-left: 1em;
}

/* --- number list --- */

ol {
	counter-reset:number;
	padding:0;/* paddingキャンセル */
	list-style:none;/* olがはき出す数字を消す */
}

ol > li {
	text-indent: -30px;
	padding-left: 30px;
}

ol > li:before {
	counter-increment: number;
	content: counter(number) ". " !important;
	font-weight: bold;
	text-align: right;
	display: inline-block !important;
	width: 25px !important;
	margin-right: 5px;
	border: none !important;
	transform: none !important;
	position: relative !important;
	top: 0 !important;
}

/* --- attention list --- */

.rice li{
	margin:0 0 5px 1em;
	text-indent:-1em;
}

/* --- compact list --- */

.compact li{
	display:inline;
	margin-right:10px;
}

/* --- within compact list --- */

.within {
	padding: 10px 20px;
    background: #eee;
    font-size: 87%;
}

.within li {
	padding-left: 15px;
	margin-bottom: 5px;
	position: relative;
}

ul.within li:before {
	content: '';
	display: block;
	width: 4px;
	height: 4px;
    border-top: 0;
	border-bottom: solid 2px #333;
	border-right: solid 2px #333;
	position: absolute;
	top: 0.5em;
	left: 0;
	transform: rotate(45deg);
}

.exclusion::before {
	opacity: 0;
}

.content ul ul, .content dl dl, .content ol ol {
	margin-top: 5px;
}

/* --- horizonal --- */

.horizonal{
    border-top:1px solid #ddd;
}

.horizonal dt {
  clear: left;
  float: left;
  width: 10em;
  padding:8px 8px 8px 0;
}

.horizonal dd {
  padding:8px 15px 8px 11em;
  border-bottom:1px solid #ddd;
}



/* ------ layout frame ------------------------- */

.content .layout-frame {
	clear: both;
	margin-left: -20px;
}

.content .layout-3col {
	margin-left: -15px;
}

.content .layout-unit {
	float: left;
	display: inline;
	margin-left: 20px;
}

.content .layout-3col .layout-unit {
	margin-left: 15px;
}

/* 1200px */
.grid-1 { width: 90px; }
.grid-2 { width:190px; }
.grid-3 { width:290px; }
.grid-4 { width:390px; }
.grid-5 { width:490px; }
.grid-6 { width:590px; }
.grid-7 { width:690px; }
.grid-8 { width:790px; }
.grid-9 { width:890px; }
.grid-10{ width:990px; }
.grid-11{ width:1090px; }

/* 840px */
.c-main-container .grid-1 { width: 75px; }
.c-main-container .grid-2 { width:130px; }
.c-main-container .grid-3 { width:200px; }
.c-main-container .grid-4 { width:270px; }
.c-main-container .grid-5 { width:340px; }
.c-main-container .grid-6 { width:410px; }
.c-main-container .grid-7 { width:480px; }
.c-main-container .grid-8 { width:550px; }
.c-main-container .grid-9 { width:620px; }
.c-main-container .grid-10{ width:690px; }
.c-main-container .grid-11{ width:760px; }

/* ------ btn-more ------------------------- */

p.btn-more{
	font-size:113%;
	font-weight:600;
	text-align:center;
	line-height:48px;
	width:248px;
	margin:35px auto 0 !important;
}

p.btn-more a{
	border:1px solid #0ba2c7;
	display:block;
	transition:all .1s;
}

p.btn-more a,
p.btn-more a:link,
p.btn-more a:hover,
p.btn-more a:visited,
p.btn-more a:active {
	text-decoration:none;
	color:#0ba2c7;
}

p.btn-more a:hover,
p.btn-more a:active {
	border-radius:24px;
}

/* ------ social media ------------------------- */

.social-icon ul{
	margin:20px auto;
	text-align:center;
}

.social-icon ul li{
	display:inline-block;
}

.social-icon ul li a {
	display: block;
	width: 60px;
	height: 60px;
	text-indent: -99999px;
	font-size: 50%;
	border-radius:50%;
}

@media screen and ( min-width:750px ){
	.facebook:hover {
		background:url(../images/svg/facebook.svg) center center no-repeat;
		background-size: 100%;
		background-color: #3b5998!important;
	}
}
.facebook {
	background:url(../images/svg/facebookClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #3b5998;
}
@media screen and ( min-width:750px ){
	.twitter:hover {
		background:url(../images/svg/twitter.svg) center center no-repeat;
		background-size: 100%;
		background-color: #00aced!important;
	}
}
.twitter {
	background:url(../images/svg/twitterClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #00aced;
}
@media screen and ( min-width:750px ){
	.google:hover {
		background:url(../images/svg/google.svg) center center no-repeat;
		background-size: 100%;
		background-color: #d64136!important;
	}
}
.google {
	background:url(../images/svg/googleClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #d64136;
}
@media screen and ( min-width:750px ){
	.line:hover {
		background:url(../images/svg/line.svg) center center no-repeat;
		background-size: 100%;
		background-color: #2cbf13!important;
	}
}
.line {
	background:url(../images/svg/lineClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #2cbf13;
}



/* ------ table -------------------------------- */

table{
	border-collapse:collapse;
	border:3px solid #eee;
	width:100%;
	-webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

}

table th,
table td{
	padding:10px;
	vertical-align:top;
	border:3px solid #fff;
	background:#fafafa;
}

table th{
	background:#eee;
	font-weight:bold;
}

table thead th,
th.head {
	background:#dadada;
	text-align:center;
}

table.edit-works-member div{
	width: 17%;
}

/* --- noborder --- */

table.noborder,
table.noborder td,
table.noborder th{
	border:0;
	background: none;
}

/* index
------------------------------------------------ */

.index {
	clear: both;
	margin: 0 0 0 -20px;
}

.index dl {
	position: relative;
	float: left;
	display: inline;
	margin-left: 20px;
	width: 350px;
	background: #eee;
}

.index dt {
	padding: 7px;
	background:#ddd;
}

.index dt a {
	text-decoration:none;
}

.index dd {
	padding: 7px;
}


/* cms
------------------------------------------------ */

/* --- entry-date --- */

.entry-date {
	text-align: right;
	font-size: 87%;
}

/* --- entry-navigation / pager-navigation --- */

.entry-navigation,
.pager-navigation{
	font-size:87%;
	margin:50px 0 0;
}

.entry-navigation a:link, .entry-navigation a:visited, .entry-navigation a:hover, .entry-navigation a:active,
.pager-navigation a:link, .pager-navigation a:visited, .pager-navigation a:hover, .pager-navigation a:active{
	text-decoration:none;
}

.entry-navigation ul,
.pager-navigation ul{
	margin:0;
}

/* entry-navigation */

.entry-navigation{
  width: 100%;
  background:#eee;
  position: absolute;
  bottom: -70px;
  left: 0;
}

.entry-navigation ul{
  margin: 0 auto!important;
  width: 100%;
  height: 55px;
  text-align: center;
}

.entry-navigation ul li{
  width: 33%;
  display: inline-block;
  font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  position: relative;
  vertical-align: middle;
}

.entry-navigation ul li.home{
    width: 33.3%;
}

.entry-navigation ul li a{
    display: block;
    padding: 15px;
}

.entry-navigation ul li.entry-prev a,
.entry-navigation ul li.entry-next a{
    background: #fafafa;
}

.entry-navigation ul li a:active,
.entry-navigation ul li a:hover{
    background: #eaeaea;
}

.entry-navigation ul li.home a:active,
.entry-navigation ul li.home a:hover{
    background: #eaeaea;
}

.entry-navigation ul li a:link,
.entry-navigation ul li a:active,
.entry-navigation ul li a:hover,
.entry-navigation ul li a:visited{
    text-decoration: none;
    color: #333;
}

.entry-navigation ul li.entry-prev a:before{
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	border-bottom: solid 1px #333;
	border-left: solid 1px #333;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: rotate(45deg) translate(-50%,0);
}

.entry-navigation ul li.entry-next a:after{
	content: '';
	display: block;
	width: 4px;
	height: 4px;
	border-top: solid 1px #333;
	border-right: solid 1px #333;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: rotate(45deg) translate(-50%,0);
}



/* pager-navigation */

.pager-navigation ul li{
	float:left;
	text-align:center;
	margin-right:10px;
	line-height:1;
}

.pager-navigation ul li span.cur{
	background:#0ba2c7;
	color:#fff;
	display:block;
	line-height:1;
	padding:0.8em 1em;
	position:relative;
}

.pager-navigation ul li a:link,
.pager-navigation ul li a:visited{
	background:#eee;
	color:#666;
	display:block;
	line-height:1;
	padding:0.8em 1em;
	position:relative;
}

.pager-navigation ul li a:hover,
.pager-navigation ul li a:active{
	background:#CECECE;
}

/* 続きを読むリンク */
.search.entry p.continue {
	margin: 0;
	padding: 0;
}

.search.entry p.continue a {
	display: block;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid #E8E8E8;
}

.search.entry p.continue a:hover {
	background-color: #F0F0F0;
}

/* キャプション */
.acms-entry [class*="column-image-"] .caption,
.acms-entry [class*="column-media-"] .caption,
.acms-entry [class*="column-eximage-"] .caption {
	text-align: center;
	font-size: .85em;
	color: #999;
	margin-top: 10px;
}

