@charset "UTF-8";


/* font ***********************************************************************/
*, .gothic {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

.mincho {
	font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}


/* misc ***********************************************************************/
p {
	margin: 0 0 1em 0;
	line-height: 1.8em;
}

rt {
	font-size: 50%;
	color: #000;
}

rp {
	font-size: 50%;
}

hr {
	margin: 20px 0;
	border: none;
	border-top: 1px solid #aaa !important;
	border-bottom: none !important;
}

sup {
	margin: 0 0 0 2px;
}

blockquote {
	margin: 2em 0;
	padding: 0 0 0 1em;
	border-left: 4px solid #ccc;
}

.noscript {
	margin: 2em 0;
	padding: 18px 24px;
	line-height: 1.6em;
	background-image: repeating-linear-gradient(-45deg, #FFEDE7 0, #FFEDE7 16px, #fff 16px, #fff 20px);
	border-radius: 8px;
	letter-spacing: 2px;
}

/* img, figure ****************************************************************/
img {
	display: block;
	max-width: 100%;
	height: auto;
}
@media screen and (max-width: 479px) {
	img {
		margin: 0 auto;
	}
}


/* list ***********************************************************************/
ul {
	margin: 1.4em 0;
}

ul.style_check li {
	position: relative;
	list-style-type: none;
}
ul.style_check li::after {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: -1em;
	width: 8px;
	height: 3px;
	border-left: 2px solid #3FA6FF;
	border-bottom: 2px solid #3FA6FF;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

ul.style_arrow li {
	position: relative;
	list-style-type: none;
}
ul.style_arrow li::after,
ul.style_arrow li::before {
	display: block;
	content: '';
	position: absolute;
}
ul.style_arrow li::after {
	top: 6px;
	left: -1em;
	width: 6px;
	height: 6px;
	border-right: 1px solid #F0AF43;
	border-bottom: 1px solid #F0AF43;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
ul.style_arrow li::before {
	top: 9px;
	left: -1.025em;
	width: 8px;
	height: 1px;
	background-color: #F0AF43;
}

table ul, table ol {
	margin: 0;
	padding-left: 1.5em;
}

li {
	margin: 1em 0;
	line-height: 1.4em;
}

dl {
	margin: 0 0 1.6em 0;
}

dt {
	line-height: 1.6em;
	font-size: smaller;
}

dd {
	line-height: 1.2em;
	margin: 0.5em 0 1em 0;
}


/* table **********************************************************************/
table {
	box-sizing: border-box;
	width: 100%;
	margin: 1em 0;
	border: 1px solid #aaa;
	border-bottom: none;
	border-collapse: collapse;
}

table th {
	box-sizing: border-box;
	text-align: left;
	font-weight: normal;
	border: 1px solid #aaa;
	padding: 1em;
	line-height: 1.6em;
	background-color: #fafafa;
	white-space: nowrap;
}
@media screen and (max-width: 959px) {
	table th {
		white-space: normal;
	}
}

table td {
	box-sizing: border-box;
	padding: 1em;
	line-height: 1.6em;
	border: 1px solid #aaa;
}

table th p, table td p {
	margin: 0;
}

table.border,
.border table {
	border: none;
	border-top: 1px solid #aaa;
}

table.border th,
.border table th {
	border: none;
	border-bottom: 1px solid #aaa;
	border-right: 1px solid #aaa;
}

table.border th:last-child,
.border table th:last-child {
	border-right: none;
}

table.border td,
.border table td {
	border: none;
	border-bottom: 1px solid #aaa;
}

table.bordernone,
.bordernone table {
	border: none;
}

table.bordernone th,
.bordernone table th {
	border: none;
	background: none;
}

table.bordernone td,
.bordernone table td {
	border: none;
}

@media screen and (max-width: 479px) {
	table:not(.noflatten) tr {
		position: relative;
	}

	table:not(.noflatten) th {
		display: block;
		border: none;
	}

	table:not(.noflatten) td {
		display: block;
		border: none;
	}
}


/* form ***********************************************************************/
fieldset {
	margin: 16px 0;
	padding: 16px;
	border: 1px solid  #aaa;
}

legend {
	margin: 0 4px;
	padding: 0 4px;
}

label {
	display: inline-block;
	margin: 0 2em 0 0;
}

legend label {
	margin: 0;
}

textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 300px;
	padding: 4px;
	font-size: 1em;
}

input[type=text], input[type=number] {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 4px;
	font-size: 1em;
}

input[type=radio] {
	margin: 0 4px 0 0;
	vertical-align: 2px;
}

input[type=checkbox] {
	margin: 0 4px 0 0;
	vertical-align: 2px;
}

input::-placeholder {
    color: #ccc;
}
input::-webkit-input-placeholder {
    color: #ccc;
}
input::-moz-placeholder {
    color: #ccc;
}
input:-ms-input-placeholder {
    color: #ccc;
}

select {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 5px;
	font-size: 1em;
	border: 1px solid #aaa;
	background-color: #fff;
}

select option {
	padding: 4px;
}

button {
	margin: 8px 8px 0 0;
	padding: 0.5em 1em;
	line-height: 2em;
	font-size: 1em;
	background: #f3f3f3;
	border: 1px solid #ccc;
	color: #333;
	cursor: pointer;
}

.button {
	display: inline-block;
	margin: 8px 8px 0 0;
	padding: 0.5em 1em;
	line-height: 2em;
	font-size: 1em;
	background: #f3f3f3;
	border: 1px solid #ccc;
	text-decoration: none;
	color: #333;
}
a.button:link, a.button:visited, a.button:hover, a.button:active {
	color: #333;
}


/* function *******************************************************************/
.white {
	color: #fff;
}

.white rt {
	color: #fff;
}

.black {
	color: #000;
}

strong, .strong {
	font-weight: bold;
	background: linear-gradient(transparent 60%, #ffff66 60%);
}

i, b, em, .bold, .em {
	font-weight: bold;
	font-style: normal;
}

.larger {
	font-size: larger;
}

.smaller {
	font-size: smaller;
}

.caption {
	clear: both;
	margin-top: 4px;
	font-size: smaller;
	line-height: 1.2em;
}

.w100p {
	width: 100%;
}

.w100 {
	width: 100px !important;
}

.w200 {
	width: 200px !important;
}

.w300 {
	width: 300px !important;
}

.border {
	border: 1px solid #ccc;
}

.note {
	box-sizing: border-box;
	margin: 2em 0;
	padding: 18px 24px;
	line-height: 1.6em;
	border: 4px solid #3FA6FF;
	border-radius: 6px;
}

ul.note,
ol.note {
	padding: 1em 3em;
}

.caution {
	box-sizing: border-box;
	margin: 2em 0;
	padding: 18px 24px;
	line-height: 1.6em;
	border: 4px solid #D30000;
	border-radius: 6px;
}

ul.caution,
ol.caution {
	padding: 1em 3em;
}

.column {
	box-sizing: border-box;
	margin: 2em 0;
	padding: 18px 24px;
	line-height: 1.6em;
	border: 4px solid #0DA867;
	border-radius: 8px;
	background-color: rgba(255, 255, 255, 1);
}

ul.column,
ol.column {
	padding: 1em 3em;
}

.note p:first-child,
.note h1:first-child,
.note h2:first-child,
.note h3:first-child,
.note h4:first-child,
.note h5:first-child,
.note h6:first-child,
.column p:first-child,
.column h1:first-child,
.column h2:first-child,
.column h3:first-child,
.column h4:first-child,
.column h5:first-child,
.column h6:first-child {
	margin-top: 0;
}

.note p:last-child,
.column p:last-child {
	margin-bottom: 0;
}

.clear {
	clear: both;
}

.pagebreak {
	page-break-before: always;
}


/* align **********************************************************************/
.leftarea {
	box-sizing: border-box;
	float: left;
	width: 50%;
}
@media screen and (max-width: 479px) {
	.leftarea {
		float: none;
		width: 100% !important;
	}
}

.rightarea {
	box-sizing: border-box;
	float: right;
	width: 50%;
}
@media screen and (max-width: 479px) {
	.rightarea {
		float: none;
		width: 100% !important;
	}
}

.right {
	text-align: right;
}

.center {
	text-align: center;
}

.left {
	text-align: left;
}

.alignright {
	margin: 0 0 8px 32px !important;
	float: right;
}
@media screen and (max-width: 959px) {
	.alignright {
		float: none !important;
		margin: 16px auto !important;
	}
}

.aligncenter {
	margin: 32px auto !important;
}

.alignleft {
	margin: 0 32px 8px 0 !important;
	float: left;
}
@media screen and (max-width: 959px) {
	.alignleft {
		float: none !important;
		margin: 1em auto !important;
	}
}

img.alignright {
	display: block;
}

img.aligncenter {
	display: block;
}

img.alignleft {
	display: block;
}

.pc_center {
	text-align: center;
}
@media screen and (max-width: 479px) {
	.pc_center {
		text-align: left;
	}
}

.sp_center {
	text-align: left;
}
@media screen and (max-width: 479px) {
	.sp_center {
		text-align: center;
	}
}


/* go2 ************************************************************************/
.go2pdf {
	padding-right: 30px;
	background-image: url(../images/icon_go2pdf.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2xls {
	padding-right: 30px;
	background-image: url(../images/icon_go2xls.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2xlsx {
	padding-right: 30px;
	background-image: url(../images/icon_go2xlsx.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2doc {
	padding-right: 30px;
	background-image: url(../images/icon_go2doc.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2docx {
	padding-right: 30px;
	background-image: url(../images/icon_go2docx.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2ppt {
	padding-right: 30px;
	background-image: url(../images/icon_go2ppt.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2pptx {
	padding-right: 30px;
	background-image: url(../images/icon_go2pptx.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.go2zip {
	padding-right: 30px;
	background-image: url(../images/icon_go2zip.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}


/* clearfix *******************************************************************/
.cf:before, .cf:after {
	display: table;
	content: " ";
}
.cf:after {
	clear: both;
}
.cf {
	*zoom: 1;
}


/* breadclumb *****************************************************************/
#breadcrumbArea ul {
	margin: 8px 0;
	padding: 0;
}

#breadcrumbArea ul li {
	display: inline;
	font-size: smaller;
}

#breadcrumbArea ul li:after {
	content: ' » ';
}

#breadcrumbArea ul li:last-child:after {
	content: '';
}

#breadcrumbArea ul li a {
	text-decoration: none;
}


/* inlinemenu *****************************************************************/
.inlinemenu ul {
	margin: 0;
	padding: 0;
}

.inlinemenu ul li {
	display: inline-block;
}

.inlinemenu ul li:after {
	content: '｜';
}

.inlinemenu ul li:last-child:after {
	content: '';
}

.inlinemenu ul li a {
	text-decoration: none;
}


/* .block, .blockcontents *****************************************************/
.block {
	box-sizing: border-box;
	width: 100%;
	padding: 16px;
}

.blockcontents {
	position: relative;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	*zoom: 1;
}
.blockcontents:before, .blockcontents:after {
	display: table;
	content: " ";
}
.blockcontents:after {
	clear: both;
}


/* for WordPress **************************************************************/
.wp-caption {
	max-width: 100%;
}

.wp-caption-text {
	margin: 8px 0;
	font-size: smaller;
	line-height: 1.4em;
}