@charset "UTF-8";

/*
Theme Name: 一条通り歯科医院
Version: 1.0
Author: Arica design
Author URI: http://www.arica.jp
Theme URI: http://www.ichijo-dc.com
*/

html {
	width: 100%;
	height: 100%;
	color: #505050;
	margin: 0;
	padding: 0;
	font-feature-settings: "palt" 1;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,figure {
	margin: 0;
	padding: 0;
}

body{
	font-size: 14px;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体", YuGothic, "游ゴシック","Yu Gothic","メイリオ",Meiryo,"ＭＳ Ｐゴシック","Verdana",sans-serif;
	line-height: 2;
	counter-reset:number;
	height: 100%;
	letter-spacing: 0.1em;
	-webkit-text-size-adjust: none;
}
@media screen and (max-width:782px){
	body {
		font-size: 12px;
	}
}

table {
	font: 100%;
	font-size: inherit;
	border-collapse: collapse;
	border-spacing: 0;
	letter-spacing: 0;
}
caption,th { text-align:left; }

fieldset,img { border: 0;}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}
address,caption,cite,code,dfn,em,th,var {
	font-style: normal;
	font-weight: normal;
}
ol,ul { list-style: none;}

q:before,q:after { content:'';}
abbr,acronym {
	border: 0;
	font-variant: normal;
}
sup { vertical-align: text-top; }
sub { vertical-align: text-bottom;}
input,textarea,select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	outline: 0;
}
legend{ color:#555;}

select,input,button,textarea{ font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体", YuGothic, "游ゴシック","Yu Gothic","メイリオ",Meiryo,"ＭＳ Ｐゴシック","Verdana",sans-serif; }

pre,code,kbd,samp,tt{
	font-family: monospace;
	line-height: 100%;
}

main { display: block; }

a {
	outline: none;
	color: inherit;
	text-decoration: none;
}
a:focus { text-decoration: none; }
a:active { text-decoration: none; }

a img { border: none; }

li img,
dt img,
dd img{ vertical-align: top; }
figure img {
	max-width: 100%;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

::selection {
	background: #a6cdbf;
	color: #fff;
}
::-moz-selection {
	background: #a6cdbf;
	color: #fff;
}

html, body {
	height: 100%;
	text-align: justify;
	text-justify: inter-ideograph;
}
body { -webkit-text-size-adjust: 100%; }

.clear { clear: both; }
.cf:after {
	content: "";
	display: block;
	clear: both;
}

.serif {
	font-family: "ヒラギノ明朝 Pro","Hiragino Mincho Pro","游明朝体", YuMincho, "游明朝","Yu Mincho","メイリオ",Meiryo,"ＭＳ Ｐ明朝","Times New Roman",serif;
}
.sans-serif {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体", YuGothic, "游ゴシック","Yu Gothic","メイリオ",Meiryo,"ＭＳ Ｐゴシック","Verdana",sans-serif;
}

@media screen and (min-width:783px){ .sp { display: none !important; } }
@media screen and (max-width:782px){ .pc { display: none !important; } }

/* ++++++++++++++++++++++++++++++++++++++++ /
/ common
/ ++++++++++++++++++++++++++++++++++++++++*/
#wrapper > header {
	top: 0;
	right: 0;
	width: 100%;
	position: fixed;
	letter-spacing: 0;
	z-index: 9999;
}
#wrapper > header p {
	cursor: pointer;
}
#wrapper > header > p,
#wrapper > header nav {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 9999;
}
#wrapper > header > p {
	background: #20815e url(images/menu.svg) no-repeat;
}
#wrapper > header > p:before {
	left: 0;
	right: 0;
	content: "";
	display: block;
	margin: 0 auto;
	position: absolute;
	border-top: solid #fff;
	border-bottom: solid #fff;
}
#wrapper > header > p:after {
	left: 0;
	right: 0;
	width: 0;
	height: 0;
	content: "";
	display: block;
	margin: 0 auto;
	position: absolute;
	border-style: solid;
	border-color: #0d5d2c #0d5d2c rgba(82,129,49,.5) rgba(82,129,49,.5);
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#wrapper > header > p span {
	left: 0;
	right: 0;
	height: 0;
	margin: 0 auto;
	display: block;
	background: #fff;
	overflow: hidden;
	position: absolute;
}
#wrapper > header nav {
	width: 100%;
	display: none;
	background: rgba(0,0,0,.75);
}
#wrapper > header nav p {
	height: 0;
	overflow: hidden;
	background: #000;
}
#wrapper > header nav p:before,
#wrapper > header nav p:after {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: "";
	margin: auto;
	display: block;
	background: #fff;
	position: absolute;
}
#wrapper > header nav p:before {
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#wrapper > header nav p:after {
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#wrapper > header nav a {
	color: #fff;
	display: block;
	position: relative;
}
@media screen and (min-width:783px){
	#wrapper.admin_bar > header > p,
	#wrapper.admin_bar > header nav {
		top: 32px;
	}
	#wrapper > header > p {
		width: 80px;
		height: 80px;
		background-size: 40px auto;
		-moz-background-size: 40px auto;
		-webkit-background-size: 40px auto;
		background-position: center 51px;
		-moz-background-position: center 51px;
		-webkit-background-position: center 51px;
	}
	#wrapper > header > p span {
		width: 36px;
		top: 29px;
		padding-top: 2px;
	}
	#wrapper > header > p:before {
		top: 20px;
		width: 36px;
		height: 16px;
		border-width: 2px;
	}
	#wrapper > header > p:after {
		border-width: 7px;
		bottom: -7px;
	}
	#wrapper > header nav {
		height: 176px;
		text-align: center;
	}
	#wrapper > header nav p {
		top: 0;
		right: 0;
		width: 80px;
		padding-top: 80px;
		position: absolute;
	}
	#wrapper > header nav p:before,
	#wrapper > header nav p:after {
		width: 28px;
		height: 2px;
	}
	#wrapper > header ul {
		padding-top: 55px;
	}
	#wrapper > header ul li {
		display: inline-block;
		vertical-align: middle;
	}
	#wrapper > header ul li + li {
		margin-left: 25px;
	}
	#wrapper > header ul a {
		padding: 15px;
		font-size: 16px;
		transition-duration: .1s;
		-moz-transition-duration: .1s;
		-webkit-transition-duration: .1s;
		transition-property: color;
		-moz-transition-property: color;
		-webkit-transition-property: color;
	}
	#wrapper > header ul a:hover {
		color: #90b571;
	}
	#wrapper > header ul a:before,
	#wrapper > header ul a:after {
		width: 0;
		height: 0;
		bottom: 0;
		content: "";
		display: block;
		position: absolute;
		border: solid transparent;
		border-width: 5px 0;
		transition-duration: .1s;
		-moz-transition-duration: .1s;
		-webkit-transition-duration: .1s;
	}
	#wrapper > header ul a:before {
		right: 50%;
		border-right-color: #90b571;
	}
	#wrapper > header ul a:after {
		left: 50%;
		border-left-color: #90b571;
	}
	#wrapper > header ul a:hover:before,
	#wrapper > header ul a:hover:after {
		border-width: 5px;
	}
}
@media screen and (max-width:782px){
	#wrapper.admin_bar > header > p,
	#wrapper.admin_bar > header nav {
		top: 46px;
	}
	#wrapper > header > p {
		width: 60px;
		height: 60px;
		background-size: 30px auto;
		-moz-background-size: 30px auto;
		-webkit-background-size: 30px auto;
		background-position: center 38.5px;
		-moz-background-position: center 38.5px;
		-webkit-background-position: center 38.5px;
	}
	#wrapper > header > p span {
		top: 22px;
		width: 27px;
		padding-top: 1.5px;
	}
	#wrapper > header > p:before {
		top: 15px;
		width: 27px;
		height: 12px;
		border-width: 1.5px;
	}
	#wrapper > header > p:after {
		border-width: 5px;
		bottom: -5px;
	}
	#wrapper > header nav {
		height: 100vh;
	}
	#wrapper.admin_bar > header nav {
		height: calc(100vh - 46px);
	}
	#wrapper > header nav p {
		width: 60px;
		float: right;
		padding-top: 60px;
		position: relative;
	}
	#wrapper > header nav p:before,
	#wrapper > header nav p:after {
		width: 14px;
		height: 1px;
	}
	#wrapper > header ul {
		clear: both;
		border-top: 1px solid #707070;
	}
	#wrapper > header li {
		line-height: 60px;
		border-bottom: 1px solid #707070;
	}
	#wrapper > header li a {
		padding: 0 20px;
		position: relative;
	}
	#wrapper > header li a:before,
	#wrapper > header li a:after {
		content: "";
		width: 1px;
		height: 7.5px;
		display: block;
		background: #fff;
		position: absolute;
		right: 20px;
	}
	#wrapper > header li a:before {
		top: 50%;
		transform: skew(-45deg);
		-moz-transform: skew(-45deg);
		-webkit-transform: skew(-45deg);
		transform-origin: top right;
		-moz-transform-origin: top right;
		-webkit-transform-origin: top right;
	}
	#wrapper > header li a:after {
		bottom: 50%;
		transform: skew(45deg);
		-moz-transform: skew(45deg);
		-webkit-transform: skew(45deg);
		transform-origin: bottom right;
		-moz-transform-origin: bottom right;
		-webkit-transform-origin: bottom right;
	}
}

#wrapper > footer {
	color: #fff;
	text-align: center;
	background: #20815e;
}
@media screen and (min-width:783px){
	#wrapper > footer {
		padding: 35px 0 40px;
	}
	#wrapper > footer h1 {
		font-size: 18px;
		margin-bottom: 10px;
	}
	#wrapper > footer ul:before,
	#wrapper > footer li:after {
		content: "｜";
		margin: 0 .5em;
		display: inline-block;
	}
	#wrapper > footer li.home {
		display: none;
	}
	#wrapper > footer li {
		display: inline-block;
	}
}
@media screen and (max-width:782px){
	#wrapper > footer {
		padding: 40px 0 45px;
	}
	#wrapper > footer h1 {
		font-size: 15px;
	}
	#wrapper > footer address {
		margin: 15px 0;
		text-align: justify;
		text-justify: inter-ideograph;
		display: inline-block;
	}
	#wrapper > footer ul {
		margin-bottom: 40px;
		border-bottom: 1px solid #a6cdbf;
	}
	#wrapper > footer li {
		border-top: 1px solid #a6cdbf;
	}
	#wrapper > footer li a {
		display: block;
		font-size: 15px;
		line-height: 65px;
	}
}

.siteName {
	line-height: 0;
	text-align: center;
}
.siteName img {
	vertical-align: middle;
}
.dotsB:before,
.dotsA:after {
	content: "";
	display: block;
	margin-left: auto !important;
	margin-right: auto !important;
	background: url(images/border-dots.svg) no-repeat center center;
	background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
}
#timeTable {
	position: relative;
	background: #90b571;
}
#timeTable:before {
	width: 0;
	height: 0;
	left: 0;
	right: 0;
	content: "";
	display: block;
	margin: 0 auto;
	border: solid;
	position: absolute;
	border-color: #91b472 #91b472 #528131 #528131;
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#timeTable figure {
	line-height: 0;
}
#timeTable .link a {
	color: #90b571;
	display: block;
	text-align: center;
	background: #f5f5eb;
}
#timeTable .link a small {
	display: inline-block;
}
#timeTable .info {
	color: #fff;
}
#timeTable .info table {
	width: 100%;
	table-layout: fixed;
}
#timeTable .info table tr > * {
	border-bottom: 1px solid #bbd2a9;
	text-align: center;
}
#timeTable .info table tr > *:first-child {
	width: 29%;
	text-align: left;
}
#timeTable .info table .poss {
	height: 0;
	overflow: hidden;
	background: #bbd2a9;
	display: inline-block;
	vertical-align: middle;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}
#timeTable .info li {
	padding-left: 1em;
	text-indent: -1em;
}
.pageTitle {
	color: #20815e;
	text-align: center;
	font-family: "ヒラギノ明朝 Pro","Hiragino Mincho Pro","游明朝体", YuMincho, "游明朝","Yu Mincho","メイリオ",Meiryo,"ＭＳ Ｐ明朝","Times New Roman",serif;
}
.pageTitle small {
	display: block;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体", YuGothic, "游ゴシック","Yu Gothic","メイリオ",Meiryo,"ＭＳ Ｐゴシック","Verdana",sans-serif;
}
#map iframe {
	width: 100%;
}
@media screen and (min-width:783px){
	#wrapper > header + .siteName {
		padding-top: 80px;
	}
	#wrapper > header + .siteName img {
		height: 70px;
	}
	.siteName.foot {
		padding: 190px 0;
	}
	.siteName img {
		height: 110px;
	}
	.dotsB:before,
	.dotsA:after {
		width: 34px;
		height: 10px;
	}
	#timeTable {
		padding: 100px 0;
	}
	#timeTable:before {
		top: -10px;
		border-width: 10px;
	}
	#timeTable:after {
		content: "";
		display: block;
		clear: both;
	}
	#timeTable .inner {
		margin: 0 auto;
		max-width: 960px;
	}
	#timeTable .image {
		float: left;
		width: calc(50% - 25px);
	}
	#timeTable .link a {
		margin-top: 50px;
		font-size: 18px;
		line-height: 90px;
		border-radius: 45px;
		-moz-border-radius: 45px;
		-webkit-border-radius: 45px;
	}
	#timeTable .link a span {
		font-size: 16px;
	}
	#timeTable .image + .info {
		float: right;
		width: calc(50% - 25px);
	}
	#timeTable .info > * + * {
		margin-top: 20px;
	}
	#timeTable .info table {
		font-size: 18px;
		margin-top: -20px;
	}
	#timeTable .info table tr > * {
		height: 58px;
	}
	#timeTable .info table tr > *:last-child {
		width: 11%;
	}
	#timeTable .info table .poss {
		width: 15px;
		padding-top: 15px;
	}
	#timeTable .info address {
		font-size: 16px;
		line-height: 1.75;
	}
	.pageTitle {
		font-size: 28px;
		line-height: 1;
		padding: 40px 0;
	}
	.pageTitle small {
		font-size: 14px;
		margin-bottom: 20px;
	}
	#map {
		max-width: 960px;
		margin-left: auto;
		margin-right: auto;
		padding: 100px 0 180px;
	}
	#map iframe {
		height: 600px;
	}
}
@media screen and (max-width:782px){
	#wrapper > header + .siteName {
		padding-top: 60px;
		padding-bottom: 77px;
	}
	#wrapper > header + .siteName img {
		height: 70px;
	}
	.siteName.foot {
		padding: 100px 0;
	}
	.siteName img {
		height: 70px;
	}
	.dotsB:before,
	.dotsA:after {
		width: 25.5px;
		height: 7.5px;
	}
	#timeTable {
		padding: 50px 25px;
	}
	#timeTable:before {
		top: -5px;
		border-width: 5px;
	}
	#timeTable .image {
		padding: 0 25px;
	}
	#timeTable .link a {
		font-size: 11px;
		line-height: 55px;
		margin-top: 25px;
		border-radius: 27px;
		-moz-border-radius: 27px;
		-webkit-border-radius: 27px;
	}
	#timeTable .link a small {
		font-size: 10px;
	}
	#timeTable .info table {
		font-size: 13.5px;
		margin-top: 36px;
		margin-bottom: 18px;
	}
	#timeTable .info table tbody th {
		font-size: 12px;
	}
	#timeTable .info table tr > * {
		height: 44px;
	}
	#timeTable .info table tr > *:last-child {
		width: 16%;
	}
	#timeTable .info table .poss {
		width: 13px;
		padding-top: 13px;
	}
	#timeTable .info > * + * {
		margin-top: 15px;
	}
	.pageTitle {
		font-size: 21px;
		line-height: 1;
		padding: 20px 0;
	}
	.pageTitle small {
		font-size: 10px;
		margin-bottom: 12px;
	}
	#map {
		padding: 100px 0 75px;
	}
	#map .map {
		position: relative;
		padding-top: 62.4%;
	}
	#map iframe {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		position: absolute;
	}
	#map .mapCap {
		padding: 17px 25px;
	}
}
#news {
	color: #20815e;
}
#news ul {
	border-top: 1px solid #a6cdbf;
}
#news li {
	border-bottom: 1px solid #a6cdbf;
}
#news li a {
	display: block;
	position: relative;
}
#news li a:hover {
	color: #a6cdbf;
}
#news li a:after {
	top: 0;
	bottom: 0;
	right: 3px;
	content: "";
	width: 11px;
	height: 11px;
	margin: auto 0;
	display: block;
	position: absolute;
	border-top: 1px solid #a6cdbf;
	border-right: 1px solid #a6cdbf;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#news li a time {
	position: relative;
}
#news li a time:after {
	left: 0;
	right: 0;
	height: 0;
	content: "";
	display: block;
	position: absolute;
	border-top: 1px solid #a6cdbf;
}
#news .archive {
	text-align: center;
}
#news .train a:hover {
	color: #a6cdbf;
}
#news .train a:before {
	content: "";
	display: block;
	margin: 0 auto;
	background: url(images/train.svg) no-repeat center center;
	background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
}
@media screen and (min-width:783px){
	#news .pageTitle {
		margin-top: 40px;
	}
	#news ul {
		margin: 0 auto;
		max-width: 760px;
	}
	#news li a {
		font-size: 16px;
		line-height: 36px;
		overflow: hidden;
		padding: 30px 30px 30px 0;
	}
	#news li a time {
		float: left;
	}
	#news li a span {
		display: block;
		margin-left: 140px;
	}
	#news li a time:after {
		bottom: 2px;
	}
	#news .archive {
		margin-top: 40px;
	}
	#news .train {
		margin: 0 auto;
		max-width: 760px;
		position: relative;
	}
	#news .train a {
		right: 0;
		bottom: 0;
		display: block;
		position: absolute;
	}
	#news .train a:before {
		width: 110px;
		height: 65px;
	}
}
@media screen and (max-width:782px){
	#news ul {
		margin: 0 25px;
	}
	#news li a {
		font-size: 15px;
		line-height: 2;
		padding: 10px 30px 10px 0;
	}
	#news li a time {
		font-size: 12px;
	}
	#news li a time:after {
		bottom: -5px;
	}
	#news li a span {
		display: block;
		margin-top: 5px;
	}
	#news p {
		font-size: 15px;
		text-align: center;
	}
	#news .archive {
		margin: 40px 0 36px;
	}
	#news .train a:before {
		width: 85px;
		height: 50px;
	}
}
#calendar {}
@media screen and (min-width:783px){
	#calendar {
		padding: 55px 0 200px;
	}
	#calendar .inner {
		width: 760px;
		margin: 15px auto 0;
	}
	#calendar .inner iframe {
		width: 100%;
		height: 532px;
	}
}
@media screen and (max-width:782px){
	#calendar {
		padding: 65px 25px 100px;
	}
	#calendar .inner iframe {
		width: 100%;
		height: 300px;
	}
}
.page .pageTitle {
}
.page .pageTitle:after {
	content: "";
	display: block;
	max-width: 760px;
	margin: 0 auto;
	border-top: 1px solid #a6cdbf;
}
#news .box {
	border-bottom: 1px solid #a6cdbf;
}
.page .box {
	padding-bottom: 0;
}
.box .title {
	color: #20815e;
	text-align: center;
}
.box figure {
	text-align: center;
}
.box figure img {
	vertical-align: middle;
}
.box figure:before,
.box figure:after,
.box .define:before,
.box .define:after {
	content: "";
	display: block;
	margin: 0 auto;
	background: url(images/news/border.svg) no-repeat center center;
	background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
}
.box figure:after,
.box .define:after {
	transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
}
.box .define {
	color: #20815e;
	text-align: center;
}
.box p + p {
	margin-top: .5em;
}
.box .blockList {
	text-align: center;
}
.box .green {
	color: #20815e;
}
@media screen and (min-width:783px){
	.page .pageTitle {
		padding-top: 80px;
		padding-bottom: 0;
	}
	.page .pageTitle:after {
		margin-top: 40px;
	}
	.box {
		font-size: 16px;
		padding: 100px 0;
	}
	.box .title {
		font-size: 26px;
		margin-bottom: 35px;
	}
	.box .textC {
		text-align: center;
	}
	.post #post.train .box .textC {
		text-align: justify;
		text-justify: inter-ideograph;
	}
	.box .textC + .textL {
		margin-top: 35px;
	}
	.box figure,
	.box .define {
		margin: 60px 0 80px;
	}
	.box figure img {
		margin: 30px;
		max-width: 640px;
	}
	.box figure:before,
	.box figure:after,
	.box .define:before,
	.box .define:after {
		width: 422px;
		height: 10px;
	}
	.box .define:before {
		margin-bottom: 40px;
	}
	.box .define:after {
		margin-top: 40px;
	}
	.box .define {
		line-height: 40px;
	}
	.box .blockList {
		padding: 0 20px;
		max-width: 960px;
		margin: 80px auto;
	}
	.box .blockList ul {
		width: 100%;
		display: table;
		table-layout: fixed;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		border-left: 1px solid #a6cdbf;
		border-right: 1px solid #a6cdbf;
	}
	.box .blockList .blockItem {
		padding: 15px 0;
	}
	.box .blockList ul .blockItem {
		display: table-cell;
	}
	.box .blockList .blockItem + .blockItem {
		border-left: 1px solid #a6cdbf;
	}
	.box small {
		font-size: 14px;
	}
}
@media screen and (max-width:782px){
	.page .pageTitle {
		margin: 0 25px;
	}
	.page .pageTitle:after {
		margin-top: 22px;
	}
	.box {
		margin: 0 25px;
		padding: 40px 0;
		font-size: 15px;
	}
	.box .title {
		font-size: 18px;
		line-height: 1.7;
		margin-bottom: 10px;
	}
	.page .box .title {
		margin-bottom: 30px;
	}
	.box .textC + .textL {
		margin-top: 10px;
	}
	.box figure,
	.box .define {
		margin: 48px 0;
	}
	.box figure:before,
	.box figure:after,
	.box .define:before,
	.box .define:after {
		width: 211px;
		height: 5px;
	}
	.box .define:before {
		margin-bottom: 40px;
	}
	.box .define:after {
		margin-top: 40px;
	}
	.box figure img {
		margin: 15px 0;
		max-width: 100%;
	}
	.box .blockList {
		margin: 40px 0;
	}
	.box .blockList .blockItem {
		min-height: 126px;
		line-height: 126px;
		border-left: 1px solid #a6cdbf;
		border-right: 1px solid #a6cdbf;
	}
	.box .blockList .blockItem + .blockItem {
		margin-top: 50px;
	}
	.box .blockList .blockItem div {
		line-height: 2;
		display: inline-block;
		vertical-align: middle;
	}
	.box small {
		font-size: 12px;
		line-height: 1.5;
		display: inline-block;
	}
	.box .green {
		text-align: center;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ home
/ ++++++++++++++++++++++++++++++++++++++++*/
.home #mainVis {
	width: 100%;
	background: url(images/home/mainvis.jpg) no-repeat;
}
.home #mainVis div {
	width: 100%;
	margin: 0 auto;
	max-width: 900px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	text-orientation: upright;
}
.home #mainVis h1 {
	font-weight: normal;
}
@media screen and (min-width:783px){
	.home #mainVis {
		color: #fff;
		height: 800px;
		background-size: auto 100%;
		-moz-background-size: auto 100%;
		-webkit-background-size: auto 100%;
		background-position: center center;
	}
	.home #mainVis div {
		padding: 140px 50px 0;
	}
	.home #mainVis h1 {
		font-size: 36px;
		line-height: 1.7;
		margin-left: 54px;
	}
	.home #mainVis p {
		font-size: 18px;
		line-height: 2.2;
	}
	.home #mainVis + .siteName {
		margin-top: -37px;
	}
	.home #mainVis + .dotsA:after {
		margin: 100px auto;
	}
}
@media screen and (max-width:782px){
	.home #mainVis {
		color: #20815e;
		padding-top: 425px;
		background-position: center top;
		background-size: auto 400px;
		-moz-background-size: auto 400px;
		-webkit-background-size: auto 400px;
	}
	.home #mainVis div {
		width: 245px;
		height: 350px;
	}
	.home #mainVis h1 {
		font-size: 24px;
		line-height: 1.875;
	}
	.home #mainVis p {
		height: 3
		50px;
		font-size: 15px;
		line-height: 2;
		margin-right: 25px;
	}
	.home #mainVis + .dotsA:after {
		margin: 50px auto;
	}
}

.home #news {
	color: #20815e;
	background: url(images/home/bg_news.jpg) no-repeat right top;
}
@media screen and (min-width:783px){
	.home #news {
		padding-top: 100px;
	}
	.home #news .pageTitle {
		margin-top: 60px;
	}
}
@media screen and (max-width:782px){
	.home #news {
		padding-top: 48px;
		background-size: 300px 300px;
		-moz-background-size: 300px 300px;
		-webkit-background-size: 300px 300px;
	}
	.home #news .pageTitle {
		margin-top: 170px;
	}
}
.home #pages {
	color: #fff;
	position: relative;
	background: #20815e;
}
.home #pages:before {
	width: 0;
	height: 0;
	left: 0;
	right: 0;
	content: "";
	display: block;
	margin: 0 auto;
	border: solid;
	position: absolute;
	border-color: #91b472 #91b472 #145b2c #145b2c;
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
.home #pages .pageTitle {
	color: #fff;
}
.home #pages a:after {
	content: "";
	width: 10px;
	height: 10px;
	display: block;
	margin: 0 auto;
	border-left: 1px solid #a6cdbf;
	border-bottom: 1px solid #a6cdbf;
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
.home .siteName.foot {
	padding: 0;
}
@media screen and (min-width:783px){
	.home #pages:before {
		top: -10px;
		border-width: 10px;
	}
	.home #pages ul {
		margin: 0 auto;
		max-width: 960px;
		overflow: hidden;
		padding: 100px 0;
	}
	.home #pages li {
		float: left;
		width: calc((100% - 60px) / 3);
	}
	.home #pages li + li {
		margin-left: 30px;
	}
	.home #pages li figure {
		overflow: hidden;
	}
	.home #pages .pageTitle {
		padding-bottom: 30px;
		transition-duration: .3s;
		-moz-transition-duration: .3s;
		-webkit-transition-duration: .3s;
		transition-property: color;
		-moz-transition-property: color;
		-webkit-transition-property: color;
	}
	.home #pages li a:hover .pageTitle {
		color: #a6cdbf;
	}
	.home #pages li a figure img {
		transition-duration: .3s;
		-moz-transition-duration: .3s;
		-webkit-transition-duration: .3s;
		transition-property: transform;
		-moz-transition-property: transform;
		-webkit-transition-property: transform;
		transform-origin: center center;
		-moz-transform-origin: center center;
		-webkit-transform-origin: center center;
	}
	.home #pages li a:hover figure img {
		transform: scale(1.05);
		-moz-transform: scale(1.05);
		-webkit-transform: scale(1.05);
	}
}
@media screen and (max-width:782px){
	.home #pages:before {
		top: -5px;
		border-width: 5px;
	}
	.home #pages ul {
		padding: 50px 75px;
	}
	.home #pages li + li {
		margin-top: 30px;
	}
	.home #pages .pageTitle {
		padding-bottom: 15px;
	}
}
@media screen and (min-width:783px){
	.home #map + .siteName {
		margin-bottom: 200px;
	}
}
@media screen and (max-width:782px){
	.home #map + .siteName {
		margin-bottom: 100px;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ news
/ ++++++++++++++++++++++++++++++++++++++++*/
.archive .pager span {
	text-decoration: underline;
}
.archive .pager a:hover {
	color: #a6cdbf;
}
.archive .pager > * + * {
	margin-left: 1em;
}
.archive .pager .next {
	margin-left: 2em;
}
.archive .pager .prev {
	margin-right: 1em;
}
@media screen and (min-width:783px){
	.archive #news .train {
		margin-top: 65px;
	}
	.archive .pager {
		font-size: 16px;
		max-width: 760px;
		margin: 0 auto;
		padding-top: 30px;
	}
}
@media screen and (max-width:782px){
	.archive .pager {
		font-size: 15px;
		margin: 50px 0;
		text-align: center;
	}
}

.post #post header {
	text-align: center;
}
.post #post .pageTitle.trainCat {
	position: relative;
}
.post #post .pageTitle.trainCat:before {
	content: "";
	margin: auto 0;
	display: block;
	position: absolute;
	background: url(images/train.svg) no-repeat center center;
}
.post #post .pageTitle:after {
	width: 100%;
	height: 0px;
	content: "";
	display: block;
	border-top: 1px solid #a6cdbf;
}
.post #post .date {
	color: #20815e;
	display: inline-block;
}
.post #post .date:after {
	height: 0;
	content: "";
	display: block;
	border-top: 1px solid #a6cdbf;
}
@media screen and (min-width:783px){
	.post #post {
		max-width: 760px;
		margin: 0 auto;
		padding-top: 45px;
	}
	.post #post .pageTitle.trainCat:before {
		top: 40px;
		width: 105px;
		height: 62px;
		right: calc(50% + 110px);
	}
	.post #post .pageTitle:after {
		margin-top: 44px;
	}
	.post #post .date {
		font-size: 16px;
	}
}
@media screen and (max-width:782px){
	.post #post .pageTitle:after {
		margin-top: 25px;
	}
	.post #post .pageTitle.trainCat:before {
		top: 20px;
		width: 78.5px;
		height: 46.5px;
		right: calc(50% + 85px);
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ about
/ ++++++++++++++++++++++++++++++++++++++++*/
@media screen and (min-width:783px){
	.page.about #cont {
		background: url(images/home/bg_news.jpg) no-repeat;
		background-position: right 488px;
	}
}
@media screen and (max-width:782px){
	.page.about #cont .bg {
		margin: 0 -25px;
		padding-top: 300px;
		background: url(images/home/bg_news.jpg) no-repeat right top;
		background-size: 300px 300px;
		-moz-background-size: 300px 300px;
		-webkit-background-size: 300px 300px;
	}
	.page.about #cont .bg dl {
		margin-top: 0;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ info
/ ++++++++++++++++++++++++++++++++++++++++*/
.page.info #dept {
	text-align: center;
}
.page.info #dept figure {
	margin: 0;
}
.page.info #dept figure:before,
.page.info #dept figure:after {
	content: none;
}
.page.info #dept li div {
	border-left: 1px solid #a6cdbf;
	border-right: 1px solid #a6cdbf;
}
.page.info #dept li dl {
	display: inline-block;
	vertical-align: middle;
}
.page.info #dept li dt {
	color: #20815e;
}
@media screen and (min-width:783px){
	.page.info #dept {
		padding: 0 25px;
	}
	.page.info #dept figure img {
		height: 135px;
		margin: 0 0 40px;
	}
	.page.info #dept li {
		max-width: 760px;
		margin: 150px auto 0;
	}
	.page.info #dept li div {
		height: 196px;
		line-height: 196px;
	}
	.page.info #dept li dl {
		line-height: 2;
	}
	.page.info #dept li dt {
		font-size: 26px;
	}
}
@media screen and (max-width:782px){
	.page.info #dept figure img {
		height: 101px;
	}
	.page.info #dept li {
		margin-top: 100px;
	}
	.page.info #dept li dl {
		padding: 0 25px;
	}
	.page.info #dept li dd {
		text-align: justify;
		text-justify: inter-ideograph;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ calendar
/ ++++++++++++++++++++++++++++++++++++++++*/
.page.calendar #calendar {
	padding-bottom: 0;
}
.page.calendar #timeTable {
	background: none;
	position: static;
}
.page.calendar #timeTable:before {
	content: none;
}
.page.calendar #timeTable .inner {
	max-width: 760px;
}
.page.calendar #timeTable .info {
	float: none;
	width: auto;
	color: #20815e;
}
.page.calendar #timeTable table .poss {
	background: #20815e;
}
.page.calendar #timeTable .info .caution,
.page.calendar #timeTable .info address {
	color: #505050;
}
@media screen and (min-width:783px){
	.page.calendar #timeTable .info .caution {
		font-size: 14px;
	}
	.page.calendar #calendar .calText {
		font-size: 14px;
		max-width: 760px;
		margin: 30px auto 0;
	}
}
@media screen and (max-width:782px){
	.page.calendar #calendar {
		padding: 0;
	}
	.page.calendar #calendar .calText {
		font-size: 12px;
		margin-top: 20px;
	}
	.page.calendar #timeTable {
		padding: 94px 0 0;
	}
	.page.calendar #timeTable .info .caution,
	.page.calendar #timeTable .info address {
		font-size: 12px;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ equipment
/ ++++++++++++++++++++++++++++++++++++++++*/
.page.equipment #image {
	text-align: center;
}
.page.equipment #image img {
	max-width: 100%;
}
.page.equipment .box figure:before,
.page.equipment .box figure:after {
	content: none;
}
.page.equipment .box figure img {
	margin: 0;
	width: 100%;
}
.page.equipment .box .blockItem a {
	text-decoration: underline;
}
@media screen and (min-width:783px){
	.page.equipment #image {
		max-width: 960px;
		margin: 85px auto 0;
	}
	.page.equipment .box ul + ul .blockItem {
		padding-top: 0;
	}
	.page.equipment .box .blockItem {
		padding: 33px 44px;
	}
	.page.equipment .box figure {
		margin: 0 0 20px;
		padding: 0;
	}
}
@media screen and (max-width:782px){
	.page.equipment #image {
		padding: 40px 25px 0;
	}
	.page.equipment #image + .box {
		padding: 0 25px;
	}
.page.equipment 	.box .blockList {
		margin: 0;
	}
	.page.equipment .box .blockList .blockItem {
		border: none;
		text-align: justify;
		text-justify: inter-ideograph;
		margin-top: 50px;
	}
	.page.equipment .box .blockList .blockItem p {
		font-size: 18px;
	}
	.page.equipment .box .blockList .blockItem p + p {
		margin-top: 0;
	}
	.page.equipment .box .blockList .blockItem p small {
		font-size: 15px;
		line-height: 2;
	}
	.page.equipment .box figure {
		margin: 0 0 15px;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++ /
/ access
/ ++++++++++++++++++++++++++++++++++++++++*/
@media screen and (min-width:783px){
	.page.access #map {
		padding-bottom: 75px;
	}
}
@media screen and (max-width:782px){
	.page.access #map {
		padding-top: 80px;
	}
}