@charset "utf-8";

/* --------------------------------------------- */
/* ▼モバイルファースト (全環境に共通のデザイン) */
/* --------------------------------------------- */
section {
	overflow: hidden;
}
body.ps_page {
	font-size: 16px;
}
header.ps_header {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #001ca8), color-stop(1.00, #2476ff));
	background: -webkit-linear-gradient(#001ca8, #2476ff);
	background: -moz-linear-gradient(#001ca8, #2476ff);
	background: -o-linear-gradient(#001ca8, #2476ff);
	background: -ms-linear-gradient(#001ca8, #2476ff);
	background: linear-gradient(#001ca8, #2476ff);
	padding: 20px 10px;
	border-bottom: 5px solid #039;
	-webkit-box-shadow: 0 5px 10px #aaa;
	-moz-box-shadow: 0 5px 10px #aaa;
	box-shadow: 0 5px 10px #aaa;
}
header.ps_header h1 {
	font-size: 18px;
	color: #FFF;
}
div.catch_image img {
	max-width: 100%;
	height: auto;
	background-size: cover;
}
div.catch_image p.description {
	font-size: 16px;
	padding: 10px;
}
div.wrap {
	width: 100%;
	margin: auto;
}
article.ps_article {
	width: 93%;
	margin: auto;
	overflow: hidden;
}
.ps_contents_area a {
    text-decoration:  underline;
}

.ps_contents_area a:hover {
	color: #6CF;
}

.ps_contents_area h1, .ps_contents_area h2, .ps_contents_area h3 {
	margin: 1em 0;
	font-size: 18px;
	padding: 5px 10px;
	border-left: 10px solid #039;
	border-bottom: 3px dashed #039;
	overflow: hidden;
}
footer.ps_footer {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #2476ff), color-stop(1.00, #001ca8));
	background: -webkit-linear-gradient(#2476ff, #001ca8);
	background: -moz-linear-gradient(#2476ff, #001ca8);
	background: -o-linear-gradient(#2476ff, #001ca8);
	background: -ms-linear-gradient(#2476ff, #001ca8);
	background: linear-gradient(#2476ff, #001ca8);
	text-align: center;
	color: #fff;
	margin-top: 1em;
	padding: 20px;
	border-top: 5px solid #039;
}
.ps_contents_area p {
	line-height: 180%;
	margin-bottom: 1em;
	font-size: 16px;
}
.ps_contents_area ul, .ps_contents_area ol {
	margin: 1em 1em 1em 1.5em;
	list-style-position: outside;
}
.ps_contents_area ul li, .ps_contents_area ol li {
	margin-bottom: 0.5em;
}
.ps_contents_area dl {
	margin: 1em 0;
}
.ps_contents_area dl dt {
	font-weight: bold;
}
.ps_contents_area dl dd {
	padding-left: 3em;
}
.ps_contents_area table {
	width: 100%;
	margin: 1em 0;
	border: 1px solid #CCC;
}
.ps_contents_area table th {
	padding: 10px;
	border: 1px solid #CCC;
}
.ps_contents_area table td {
	padding: 10px;
	border: 1px solid #CCC;
}
footer.ps_footer a {
	color: #FFF;
}

div.ps_contents_area img {
	max-width:  100%;
	height: auto !important;
	border: none;
}

p.description_noimg {
	width: 100%;
	padding: 15px;
}

ul.sub_menu {
    text-align: center;
    font-size: 14px;
    list-style: none;
    margin: 0 1em;
}
ul.sub_menu li {
    background: #F0F8FF;
    border: 1px solid #0220AB;
    margin-top: -1px;
}
ul.sub_menu li a {
    text-decoration: none;
    display: block;
    padding: 1em 0;
}

ul.sub_menu li a:hover {
    color: #6CF;
}

ol.breadcrumb {
    list-style: none;
    font-size: 14px;
    margin: 1em;
}

ol.breadcrumb li {
    display: inline-block;
}

a.arrow:before {
	background: url(./images/arrow.gif) no-repeat left center;
}

@media all and (max-width: 767px) {
	/* 画像表示 */
	p>img {
		display: block;
		margin: auto !important;
		float: none !important;
	}

}

/* -------------------------------------------- */
/* ▼タブレット用デザインとして付け足すデザイン */
/* -------------------------------------------- */
@media all and (min-width: 768px) {
}
/* ------------------------------------ */
/* ▼PC用デザインとして付け足すデザイン */
/* ------------------------------------ */
@media all and (min-width: 900px) {

body.ps_page {
	width: 100%;
	margin: auto;
}
header.ps_header {
	margin-bottom: 1em;
}
div.wrap {
	width: 900px;
	margin: auto;
}

main.ps_main {
	border: 1px solid #CCC;
	border-radius: .5em;
	padding: 10px;
	margin: 1em 0;
}
header.ps_header {
	margin-bottom: 20px;
}
header.ps_header h1 {
	width: 900px;
	margin: auto;
}
div.catch_image {
	position: relative;
	margin-bottom: 1em;
}
div.catch_image p.description {
	font-size: 20px;
	position: absolute;
	top: 10%;
	left: 5%;
	text-shadow: 2px 3px 3px #fff;
	font-weight: bold;
}
p.description_noimg {
	width: 100%;
}
ul.sub_menu li {
	display: inline-block;
    border: none;
    margin-top: 0;
	background: none;
}
ul.sub_menu li a {
	background: none;
    text-decoration: underline;
    display: inline;
    border: none;
    padding: 0;
}
div.ps_foot_free_area {
}
}