@CHARSET "UTF-8";

/*
* 2017 BOSO-Computer
* Global Reset CSS
*/

*,*:BEFORE,*:AFTER
{
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-family: Arial, Roboto, “Droid Sans”, “游ゴシック”, YuGothic, “ヒラギノ角ゴ ProN W3”, “Hiragino Kaku Gothic ProN”, “メイリオ”, Meiryo, sans-serif;
}
html,body
{
	height: 100%;
	width: 100%;
}
html {line-height: 1.5;}
body
{
	min-height: 100%;
	min-width: 100%;
}
div,p,dl,dt,dd,ol,ul,li,h1,h2,h3,h4,h5,h6,main,article,aside,header,footer,section,nav
{
	display: block;
	word-break :break-all;
}
a {text-decoration: none;}
ul,ol {list-style: none;}
img
{
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}
.clearfix
{
	display: block;
	clear: both;
}
.hidden
{
	display: none;
}

/***** hgroupの設定 *****/
h1
{
	font-size: 1.4rem; /* 48px */
	line-height: 1; /* 48px */
}

h2
{
	font-size: 1.4rem; /* 36px */
	line-height: 1.3333; /* 48px */
}

h3
{
	font-size: 1.2rem; /* 24px */
	line-height: 1; /* 24px */
}

/***** wordpress Adminバー位置 *****/
#wpadminbar
{
	/*
	position: absolute !important;
	top: 0 !important;
	bottom: auto !important;
	*/
}

/***** CakePHP アラート *****/
#flashMessage
{
	color: tomato;
	font-size: 1.2rem;
	font-weight: bold;
}

/****************************** 全体で使える共用スタイル ******************************/
.l{text-align: left;}
.c{text-align: center;}
.r{text-align: right;}

.w10{width: 10%;}
.w20{width: 20%;}
.w30{width: 30%;}
.w40{width: 40%;}
.w50{width: 50%;}
.w60{width: 60%;}
.w70{width: 70%;}
.w80{width: 80%;}
.w85{width: 85%;}
.w90{width: 90%;}
.w100{width: 100%;}

.w10p{width: 10px;}
.w20p{width: 20px;}
.w30p{width: 30px;}
.w40p{width: 40px;}
.w50p{width: 50px;}
.w60p{width: 60px;}
.w70p{width: 70px;}
.w80p{width: 80px;}
.w90p{width: 90px;}
.w100p{width: 100px;}
.w110p{width: 110px;}
.w120p{width: 120px;}
.w130p{width: 130px;}
.w140p{width: 140px;}
.w150p{width: 150px;}
.w160p{width: 160px;}
.w170p{width: 170px;}
.w180p{width: 180px;}
.w190p{width: 190px;}
.w200p{width: 200px;}

.p5{padding: 5px;}
.p10{padding: 10px;}
.p15{padding: 15px;}
.p20{padding: 20px;}

.m5{margin: 5px;}
.m10{margin: 10px;}
.m15{margin: 15px;}
.m20{margin: 20px;}
.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}

.fs05{font-size: 0.5rem;}
.fs06{font-size: 0.6rem;}
.fs07{font-size: 0.7rem;}
.fs08{font-size: 0.8rem;}
.fs09{font-size: 0.9rem;}
.fs10{font-size: 1.0rem;}
.fs12{font-size: 1.2rem;}
.fs14{font-size: 1.4rem;}
.fs16{font-size: 1.6rem;}
.fs18{font-size: 1.8rem;}
.fs20{font-size: 2.0rem;}
.fs22{font-size: 2.2rem;}
.fs24{font-size: 2.4rem;}
.fs26{font-size: 2.6rem;}
.fs28{font-size: 2.3rem;}
.fs30{font-size: 3.0rem;}

.fs100{font-size: 100%;}
.fs120{font-size: 120%;}
.fs140{font-size: 140%;}
.fs160{font-size: 160%;}
.fs180{font-size: 180%;}
.fs200{font-size: 200%;}

.bla{color: black;}
.whi{color: white;}
.gry{color: gray;}
.red{color: red;}
.blu{color: blue;}
.dod{color: dodgerblue;}
.grn{color: green;}
.sag{color: seagreen}
.tmt{color: tomato}

.b{font-weight: bold;}
.n{font-weight: normal;}

.u{text-decoration: underline}

.bgblu{background-color: blue;}
.bgred{background-color: red;}
.bggre{background-color: green;}
.bgyel{background-color: yellow;}
.bgpnk{background-color: pink;}
.bgptq{background-color: paleturquoise;}
.bgrbl{background-color: royalblue;}
.bgolv{background-color: olive;}
.bgmmg{background-color: mediumseagreen;}
.bgtmt{background-color: tomato;}
.bgpru{background-color: peru;}
.bgdor{background-color: darkorange;}
.bgstb{background-color: steelblue;}
.bgchc{background-color: chocolate;}
.bgfgr{background-color: forestgreen;}

.lsp1{letter-spacing: 1px;}
.lsp2{letter-spacing: 2px;}
.lsp3{letter-spacing: 3px;}
.lsm1{letter-spacing: -1px;}
.lsm2{letter-spacing: -2px;}
.lsm3{letter-spacing: -3px;}

.lh08{line-height: 0.8;}
.lh10{line-height: 1;}
.lh12{line-height: 1.2;}
.lh14{line-height: 1.4;}
.lh16{line-height: 1.6;}
.lh18{line-height: 1.8;}
.lh20{line-height: 2;}

.tbl{display: table;}
.row{display: table-row;}
.cell{display: table-cell;}

.hidden{display: none;}

/***** デフォルトでスマホサイズの指定 *****/
html
{
	font-size: 100%;
}

.mbbr
{
	display: inline;
}

.pcbr
{
	display: none;
}

/***** 画面サイズ768px以上の指定 *****/
@media screen and (min-width:768px)
{
	html
	{
		font-size: 87.5%;
	}

	.mbbr
	{
		display: none;
	}

	.pcbr
	{
		display: inline;
	}

	.tel
	{
		pointer-events: none;
	}
}

/***** 画面サイズ1024px以上の指定 *****/
@media screen and (min-width:1024px)
{
	html
	{
		font-size: 100%;
	}
}

/***** デフォルトでスマホサイズの指定 *****/
.body
{
	background: #1C488D;
	position: relative;
}

#pagetop
{
	position: absolute;
	top: -50px;
	left: 0;
}

header
{
	margin-top: 50px;
}

header h1,
header .breadcrumbs
{
	display: block;
}

header .breadcrumbs
{
	color: white;
}

.pagetop_link
{
	display: inline-block;
	-webkit-clip-path: polygon(50% 0%, 100% 15%, 100% 100%, 50% 85%, 0 100%, 0 16%);
	clip-path: polygon(50% 0%, 100% 15%, 100% 100%, 50% 85%, 0 100%, 0 16%);
	position: fixed;
	bottom: -100px;
	right: 10px;
	background: white;
	color: #1C488D;
	font-size: 2rem;
	text-align: center;
	padding: 0 10px;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	z-index: 100;
}

.sp_menu
{
	display: table;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	background: white;
	z-index: 101;
	box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.3);
}

.sp_menu div
{
	display: table-cell;
}

.sp_menu div:NTH-CHILD(1)
{
	text-align: left;
}

.sp_menu div:NTH-CHILD(2)
{
	text-align: right;
}

.content_wrapper
{
	padding: 10px;
	margin: auto;
	width: 100%;
}

.content_one_sidebar,
.content_one
{
	background: white;
	margin: 0 0 15px 0;
	width: calc(100% - 20px);

	display: inline-block;
	float: left;
}

.content_one_sidebar
{
	position: absolute;
	top: -100px;
	left: -100%;
	z-index: 99;
	width: 70%;
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.4);
}

.content_one h3
{
	line-height: 1.1;
	padding: 5px;
	font-size: 1.2rem;
	font-weight: normal;
}

.content_one_excerpt
{
	padding: 5px;
	font-size: 0.8rem;
}

.content_one h3 a,
.content_one_excerpt a
{
	color: darkblue;
}

.content_one img
{
	width: 100%;
	height: auto;
}

.are-images-unloaded
{
	opacity: 0;
}

.pagenation
{
	font-size: 0.8rem;
	text-align: right;
}

.next_link
{
	color: blue;
}

footer
{
	margin-top: 20px;
	font-size: 0.8rem;
	text-align: center;
	color: white;
}

.footer_caution
{
	font-weight: bold;
	color: red;
	font-size: 1rem;
}

.infinite-scroll-last,
.infinite-scroll-error
{
	text-align: center;
	color: white;
	font-size: 2rem;
	font-weight: bold;
}

/* Snow */
#snow_canvas
{
	z-index: 30000000000000;
	position: fixed;
	top:0;
	left: 0;
}

/***** 画面サイズ768px以上の指定 *****/
@media screen and (min-width:768px)
{
	header
	{
		margin-top: 0;
		display: table;
		width: 100%;
		height: 100px;
	}

	header h1,
	header .breadcrumbs
	{
		display: table-cell;
	}

	header .breadcrumbs
	{
		vertical-align: top;
		padding: 10px;
		text-align: right;
	}

	.sp_menu
	{
		display: none;
	}

	.content_wrapper
	{
		width: 738px;
	}

	.content_one_sidebar,
	.content_one
	{
		width: 220px;
		/* width: calc((100% - 50px) / 3); */
	}

	.content_one_sidebar
	{
		position: relative;
		top: auto;
		left: auto;
	}
}

/***** 画面サイズ1024px以上の指定 *****/
@media screen and (min-width:1024px)
{
	.content_wrapper
	{
		width: 994px;
	}

	.content_one_sidebar,
	.content_one
	{
		width: 270px;
		/* width: calc((100% - 60px) / 4); */
	}

	.content_one_sidebar
	{
		box-shadow: none;
	}
}

/***** 画面サイズ1200px以上の指定 *****/
@media screen and (min-width:1200px)
{
	.content_wrapper
	{
		width: 1170px;
	}

	.content_one_sidebar,
	.content_one
	{
		width: 280px;
		/* width: calc((100% - 60px) / 4); */
	}
}

/***** 画面サイズ1600px以上の指定 *****/
@media screen and (min-width:1600px)
{
	.content_wrapper
	{
		width: 1570px;
	}

	.content_one_sidebar,
	.content_one
	{
		/* width: calc((100% - 70px) / 5); */
		width: 300px;
	}
}



/* ページローディング用CSSアニメーション */
.cssload-loader {
	width: 86px;
	height: 86px;
	line-height: 86px;
	margin: 29px auto;
	position: relative;
	box-sizing: border-box;
	text-align: center;
	z-index: 0;
	text-transform: uppercase;
		-o-text-transform: uppercase;
		-ms-text-transform: uppercase;
		-webkit-text-transform: uppercase;
		-moz-text-transform: uppercase;
}

.cssload-loader:before,
.cssload-loader:after {
	opacity: 0;
	box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	content: "\0020";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 57px;
	border: 3px solid rgb(0,174,255);
	box-shadow: 0 0 29px rgb(0,174,255), inset 0 0 29px rgba(0,174,255,0.95);
		-o-box-shadow: 0 0 29px rgb(0,174,255), inset 0 0 29px rgba(0,174,255,0.95);
		-ms-box-shadow: 0 0 29px rgb(0,174,255), inset 0 0 29px rgba(0,174,255,0.95);
		-webkit-box-shadow: 0 0 29px rgb(0,174,255), inset 0 0 29px rgba(0,174,255,0.95);
		-moz-box-shadow: 0 0 29px rgb(0,174,255), inset 0 0 29px rgba(0,174,255,0.95);
}

.cssload-loader:after {
	z-index: 1;
	animation: cssload-gogoloader 2.3s infinite 1.15s;
		-o-animation: cssload-gogoloader 2.3s infinite 1.15s;
		-ms-animation: cssload-gogoloader 2.3s infinite 1.15s;
		-webkit-animation: cssload-gogoloader 2.3s infinite 1.15s;
		-moz-animation: cssload-gogoloader 2.3s infinite 1.15s;
}

.cssload-loader:before {
	z-index: 2;
	animation: cssload-gogoloader 2.3s infinite;
		-o-animation: cssload-gogoloader 2.3s infinite;
		-ms-animation: cssload-gogoloader 2.3s infinite;
		-webkit-animation: cssload-gogoloader 2.3s infinite;
		-moz-animation: cssload-gogoloader 2.3s infinite;
}



@keyframes cssload-gogoloader {
	0% {
		transform: scale(0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: scale(1);
		opacity: 0;
	}
}

@-o-keyframes cssload-gogoloader {
	0% {
		-o-transform: scale(0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-o-transform: scale(1);
		opacity: 0;
	}
}

@-ms-keyframes cssload-gogoloader {
	0% {
		-ms-transform: scale(0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-ms-transform: scale(1);
		opacity: 0;
	}
}

@-webkit-keyframes cssload-gogoloader {
	0% {
		-webkit-transform: scale(0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-webkit-transform: scale(1);
		opacity: 0;
	}
}

@-moz-keyframes cssload-gogoloader {
	0% {
		-moz-transform: scale(0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-moz-transform: scale(1);
		opacity: 0;
	}
}