@import url(https://fonts.googleapis.com/css?family=Pacifico);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);

/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}

body{
	font: 16px  "Noto Sans Japanese", sans-serif;
	-webkit-text-size-adjust:100%;
	overflow-x: hidden;
	color: #333333;
	background: #fff;
	line-height:180%;
}

a{
	color: #1558d6;
	text-decoration: none;
}

a:hover, .active{
  text-decoration: underline;
}

a:active, a:focus,input:active, input:focus{outline:0;}

#header{
	background: linear-gradient(180deg, rgba(198, 14, 36, 0.8), rgba(198, 14, 36, 0.8)) ,url(../images/header-min.png);
	background-size: cover;
}

/* フッター
------------------------------------------------------------*/

#footer {
	clear: both;
	text-align: center;
	padding-top: 1em;
	padding-bottom: 1em;
	font-size: 10px;
	background-color: #111111;
	color: #fff;
}

/* 共通
------------------------------------------------------------*/

h1, h2, h3 {
	font-family: "Noto Sans Japanese", sans-serif;
	font-weight: 900;
	line-height: 160%;
}

img {
	width: 100%;
	height: auto;
}

section {
	clear: both;
}

.inner {
	width: 94%;
	margin: 0 auto;
}

.headinner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1em;
}

.maininner {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 1em;
}

.boxinner {
	max-width: 900px;
	margin: 0 auto;
}

.col2 li {
	display: inline-block;
	width: 100%;
}

.col3 li {
	margin-bottom: 50px;
}

.col3 img {
	max-width: 288px;
	display: block;
	margin: -5px auto 20px;
}

/* 追加CSS
------------------------------------------------------------*/

.bgc01 {
	background-color: #f0fff0;
}

.bgc02 {
	background-color: #c60e24;
}

.box1 {
	padding: 1.5em 1.5em 2em 1.5em;
	border: solid 8px #c60e24;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	margin: 0 0.3em;
}

.box2 {
	padding: 0.5em 1em;
	margin: 0 auto;
	background-color: #c60e24;
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
}

.box3 {
	padding: 1.5em 1.5em 2em 1.5em;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	background-color: #c60e24;
}

.hr01 {
	border-width: 0 0 1px;
	border-style: solid;
}

.fa-big {
	font-size: 8em;
	margin: 0 auto;
}

.column-a {
	height: auto;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0 0.3em;
}

.column-aa {
	height: auto;
	box-sizing: border-box;
	padding: 0;
	width: 100%;
	margin-left: 2em;
}

.column-h {
	height: auto;
	width: 100%;
	margin: auto;
	text-align: center;
}

.column-hh {
	height: auto;
	width: 80%;
	margin: auto
}

.title01 {
	margin: 0;
	color: #ffffff;
	background-color: #000;
}

.arrowtitle01 {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 100px 0 100px;
	border-color: #000 transparent transparent transparent;
	margin: 0 auto;
}

.arrowtitle02 {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 100px 0 100px;
	border-color: #c60e24 transparent transparent transparent;
	margin: 0 auto;
}

#tbl-container {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 1em;
}

table {
	width: 100%;
}

.tbl-01 th {
	background: #0148de;
	border: solid 1px #ccc;
	color: #fff;
	font-weight: normal;
	width: 25%;
	padding: 1em;
}

.tbl-01 td {
	border: solid 1px #ccc;
	background-color: #FFF;
	padding: 1em;
}

.youtube{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}

.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* mailform
----------------------------------------------- */

#mailform {
	text-align: center;
	border: solid 3px #FFF;
	padding: 2em 1em;
}

#mailform .inputText.inputTextLong {
	text-align: center;
	font-size: 1.3em;
	width: 94%;
	height: 1em;
	margin: 5px 0;
	padding: 20px 0;
}

#mailform .textarea_l {
	text-align: center;
	font-size: 1.3em;
	width: 46%;
	height: 1em;
	margin: 5px 3px 5px 0;
	padding: 20px 0;

}

#mailform .textarea_r {
	text-align: center;
	font-size: 1.3em;
	width: 46%;
	height: 1em;
	margin: 5px 0 5px 3px;
	padding: 20px 0;

}

/* スペースCSS
------------------------------------------------------------*/

.space01 {
	padding: 1em 0;
}

.space02 {
	padding: 2em 0;
}

.space03 {
	padding-top: 1em;
}

.space04 {
	padding-top: 0.5em;
}

.space05 {
	padding-top: 1.5em;
}

.position01 {
	text-align: center;
}

/* contactエリア
------------------------------------------------------------*/

.contactspace01 {
	padding-top: 1em;
}

.contactspace02 {
	padding-top: 2em;
}

.contactspace03 {
	padding-top: 3em;
}

.contactposition01 {
	text-align: center;
}

.contactposition02 {
	text-align: left;
}

/* フォント
------------------------------------------------------------*/

.under {
	background: linear-gradient(transparent 50%, #ffffad 50%);
}

.under01 {
	background: linear-gradient(transparent 80%, #0148de 80%);
}

.a-normal {
	font-weight: normal;
}

.a-900 {
	font-weight: 900;
}

.a-fonw {
	color: #fff;
}

.a-fongr {
	color: #19a78e;
}

.a-fony {
	color: #fff000;
}

.a-fonr {
	color: #c60e24;
}

.fon14 {
	font-size: 14px;
}

.fon24 {
	font-size: 24px;
}

.fon32 {
	font-size: 32px;
}

.fon24h {
	font-size: 24px;
}

.fon42h {
	font-size: 42px;
}

.fon68h {
	font-size: 68px;
}

.line140 {
	line-height: 140%;
}

/* ボタン
------------------------------------------------------------*/

.btn01-square-shadow {
	display: inline-block;
	padding: 1em 0.5em;
	text-decoration: none;
	background: -moz-linear-gradient(top, #14b9fb, #0148de);
	/*ボタン色*/
	background: -webkit-linear-gradient(top, #14b9fb, #0148de);
	/*ボタン色*/
	background: linear-gradient(to bottom, #14b9fb, #0148de);
	/*ボタン色*/
	/*ボタン色*/
	color: #FFF;
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
	border-radius: 3px;
	width: 93%;
	max-width: 650px;
	border: solid 3px #FFF;
	border-radius: 100vh;
}

.btn01-square-shadow:active {
	/*ボタンを押したとき*/
	-webkit-transform: translateY(4px);
	transform: translateY(4px);
	/*下に動く*/
	box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
	/*影を小さく*/
	border-bottom: none;
}

/* RESPONSIVE 設定
------------------------------------------------------------*/

@media only screen and (min-width: 1200px) {
	.inner {
		width: 1024px;
	}

}

@media only screen and (min-width: 800px) {

	.col3 {
		text-align: center;
	}

	.col3 li {
		display: inline-block;
		width: 29%;
		padding: 0 1.5%;
		margin-bottom: 0;
		vertical-align: top;
		text-align: left;
	}

}

@media only screen and (max-width: 920px) {
	.col3 li {
		margin: 0 auto;
		display: inline-block;
		max-width: 237px;
		vertical-align: top;
	}

	.fon24 {
		font-size: 22px;
	}

	.fon32 {
		font-size: 28px;
	}

	.fon24h {
		font-size: 18px;
	}

	.fon42h {
		font-size: 28px;
	}

	.fon68h {
		font-size: 42px;
	}

}

@media only screen and (min-width: 641px) {
	.col2 li {
		width: 43%;
		padding: 0 3%;
		vertical-align: top;
	}

}

@media only screen and (max-width: 640px) {
	.tbl-01 {
		width: 95%;
	}

	.tbl-01 th {
		display: block;
		width: 94%;
	}

	.tbl-01 td {
		display: block;
		width: 95%;
	}

}

@media all and (min-width: 500px) {
	.wrapper {
		display: flex;
	}

}

@media (max-width: 414px) {
	/* 横幅が414px以下の場合に適用するスタイル */

	.fon14 {
		font-size: 12px;
	}

	.fon24 {
		font-size: 18px;
	}

	.fon32 {
		font-size: 20px;
	}

	.fon24h {
		font-size: 16px;
	}

	.fon42h {
		font-size: 24px;
	}

	.fon68h {
		font-size: 40px;
	}

	.col3 li {
		padding: 0 1em;
	}

	.contactposition01 {
		text-align: left;
	}

	.position01 {
		text-align: left;
	}

	#mailform .inputText.inputTextLong {
		font-size: 1em;
		width: 94%;
		height: 0.5em;
	}

	#mailform .textarea_l {
		font-size: 1em;
		width: 45%;
		height: 0.5em;
	}

	#mailform .textarea_r {
		font-size: 1em;
		width: 45%;
		height: 0.5em;
	}

	.column-aa {
		margin: 1em 0;
	}

	.br-sp {
		display: none;
	}

	#header{
		background: linear-gradient(180deg, rgba(198, 14, 36, 0.8), rgba(198, 14, 36, 0.8)) ,url(../images/header-min-sp.png);
		background-size: cover;
	}

}