@charset "utf-8";
/*
common.css
全体の調整用SCSS、RESET CSS、clearfixなど
*/
/* ///////////////////////////////////////////////////////////////////////
common
///////////////////////////////////////////////////////////////////////*/
html {
	font-size: 62.5%;
	height: 100%;
	width: 100%;
}

body {
	background: #FFF;
	margin: 0;
	height: 100%;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	-webkit-text-size-adjust: 100%;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
p {
	line-height: 2.0em!important;
}
a {
	color: #000000;
}
a:hover {
	text-decoration: none;
}

a.telLink {
  pointer-events: none!important;
  text-decoration: none!important;
}

@media screen and (min-width: 960px) {
	a[href^="tel:"] {
		pointer-events: none;
		display: inline-block;
	}
}


@media screen and (max-width:960px) {
	a.telLink {
  pointer-events: auto!important;
  text-decoration: underline!important;
}
}

noscript p {
	text-align: center;
	
}
/*　グリッド　*/
.grid {
	margin: 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	list-style: none;
}
.grid-cell {
	margin: 5px;
	padding: 0px;
	line-height: 1.8em;
	flex: 1;
}
.twice {
	flex: 2;
}
/*PCのみorスマホのみで表示*/
body .pc {
	display: inline-block;
}
body .sp {
	display: none!important;
}

@media screen and (max-width:960px) {
body .pc {
	display: none!important;
}
body .sp {
	display: block!important;
}
}
/* ///////////////////////////////////////////////////////////////////////
icon
///////////////////////////////////////////////////////////////////////*/

.arrow {
	position: relative;
	padding: 0 0 0 16px;
	vertical-align: top;
	font-size: 100%;
}
.arrow::before, .arrow::after {
	position: absolute;
	top: .4em;
	bottom: 0;
	left: 0;
	/*margin: auto;*/
	content: "";
	vertical-align: middle;
}
.link_icon::after {
	left: 0px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .link_icon::after {
	top: .2em;
  }
}
.back_icon::after {
	left: 0px;
	width: 8px;
	height: 8px;
	border-bottom: 2px solid #000;
	border-left: 2px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.link-list li {
	position: relative;
	padding: 0 0 0 16px;
	vertical-align: middle;
	font-size: 100%;
}
.link-list li::before, .link-list li::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.link-list li::after {
	left: 0px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* ///////////////////////////////////////////////////////////////////////
accessibility
///////////////////////////////////////////////////////////////////////*/


/* フォントサイズ切り替えボタンのスタイル */
#font-size {
	float: left;
}
#font-size div.medium, #font-size div.large {
	font-size: 13.2px;
	display: inline-block;
	zoom: 1;
	padding: 5px 8px 5px 10px;
	border: 1px solid #E7E7E7;
	cursor: pointer;
	margin-left: 5px;
	background: #FFF;
	font-weight: bold;
	letter-spacing: 0.1em;
	border-radius: 5px;
}
#font-size div.active {
	color: #000;
	background: #E7E7E7;
	border: none;
	border: 1px solid #E7E7E7;
}
#font-size div.active span {
	position: relative;
}
#font-size div.active span::before {
	position: absolute;
	left: 0;
	top: 50%;
	content: ' ';
	height: 0;
	width: 0;
	border: solid transparent;
	border-width: 3px 3px;
	border-left-color: #000;
	margin-top: -3px;
	margin-left: -5px;
}
/*　パンくずリスト　*/
ol#topicpath {
	font-size: 88%;/* 14px */
	width: 100%;
	margin: 0 0 60px 0;
	line-height: 1.8em;
}
ol#topicpath > li {
	display: inline-block;
	padding: 0px;
	margin: 0px
}
ol#topicpath > li:after {
	padding: 5px;
	content: ">";
}
ol#topicpath > li:last-child:after {
	content: " ";
}
/*フォーム全体*/
.search-area #form1 {
	position: relative;
	max-width: 300px;
	margin-top: 5px;
	margin-bottom: 5px;
}
/*検索ボックス*/
.search-area #sbox {
	/*position: absolute;*/
	left: 0;
	top: 0;
	outline: 0;
	height: 26px;
	padding: 1px 15px;
	border-radius: 5px 0 0 5px;
	background: #FFF;
	border: 1px solid #ccc;
	width: 200px;
}
.search-area input {
	border: none;
	background: none;
	-webkit-appearance: none;
}
/*検索ボタン*/
.search-area #sbtn {
	width: 80px;
	height: 30px;
	position: absolute;
	left: 76px;
	top: 0;
	border-radius: 0 5px 5px 0;
	background: #000;
	border: none;
	color: #fff;
	font-size: 13.5px;
	letter-spacing: 0.5em;
	cursor: pointer;
	padding: 0 0 0 20px;
}
.search-area #sbtn:hover {
	background: #555;
}
.search-area .searchForm-submit {
	position: absolute;
	width: 38px;
	height: 38px;
	top: calc(50% - 19px);
	right: 0;
	border-radius: 0 4px 4px 0;
	background: #999;
}
.search-area .searchForm-submit::before {
	position: absolute;
	content: '';
	width: 8px;
	height: 8px;
	top: calc(50% - 6px);
	left: calc(20% - 4px);
	border-radius: 50%;
	box-shadow: 0 0 0 2px #fff;
}
.search-area .searchForm-submit::after {
	position: absolute;
	content: '';
	width: 8px;
	height: 6px;
	top: calc(50% + 3px);
	left: calc(20% + -1px);
	border-top: solid 2px #fff;
	transform: rotate(45deg);
}
/*　本文へ　*/
.skip {
	width: 1px;
	color: #000000;
	font-size: 0.1%;
	line-height: 0.1;
	background-color: #FFFFFF;
	position: absolute;
	left: -3000px;
	z-index: 9999;
}
a.skip {
	background-color: #FFFFFF;
	text-align: center;
	padding: 2px 0;
	top: auto;
}
a.skip:active {
	display: block;
	width: 99.99%;
	font-size: 100%;
	line-height: 1.6;
	top: 0;
	left: 0;
}
a.skip:focus {
	display: block;
	width: 99.99%;
	font-size: 100%;
	line-height: 1.6;
	top: 0;
	left: 0;
}
/* ///////////////////////////////////////////////////////////////////////
RESET CSS
///////////////////////////////////////////////////////////////////////*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, /*label,*/ legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* ///////////////////////////////////////////////////////////////////////
clearfix
///////////////////////////////////////////////////////////////////////*/

.clearfix::after {
	content: "";
	display: table;
	clear: both;
}

/* ///////////////////////////////////////////////////////////////////////
pagetop
///////////////////////////////////////////////////////////////////////*/
.pagetop {
	position: fixed;
	bottom: 15px;
	right: 22px;
	opacity: 0;
	filter: alpha(opacity=0);
	-webkit-transform: scale(0.3);
	-moz-transform: scale(0.3);
	-ms-transform: scale(0.3);
	-o-transform: scale(0.3);
	transform: scale(0.3);
	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	-o-transition: all .4s;
	transition: all .4s;
  z-index:100;
}
.pagetop a {
	display: block;
	width: 67px;
	height: 69px;
	text-align: center;
	color: #fff;
	font-size: 24px;
	text-decoration: none;
	line-height: 50px;
}
.pagetop.show {
	opacity: 1;
	filter: alpha(opacity=100);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

@media screen and (max-width:960px) {
	body {
	font-size: 88%!important;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
}



/* ----------------------------------------------------------------
スマホ・タブレット用の設定
---------------------------------------------------------------- */
@media screen and (max-width:960px) {
	
ol#topicpath {
	margin: 0 0 30px 0;
}	

.news-document .arrow::before, .news-document .arrow::after {
	position: absolute;
	/*top: -1.8em;*/
	top: .2em;
	bottom: 0;
	vertical-align: top!important;
}

.dm .news-document .arrow::before, .dm .news-document .arrow::after {
	position: absolute;
	top: .2em;
	bottom: 0;
	vertical-align: top!important;
}

}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, body {
	font-family: 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
}

/*翻訳用*/

.search-area #sbtn:lang((en) {
		letter-spacing:0;
}


:lang((zh-cn)){
}

:lang((zh-tw)){
}

:lang((ko)){
}

