@charset "UTF-8";

/* CSS Document */

/*==================================================

container
==================================================*/

div#wrapper {
	width: 100%;
	height: 100%;
	position: relative;
	margin: 0 auto;
}


/*==================================================

header
==================================================*/

header {
	width: 100%;
	min-width: 1072px;
	background: #f0a5a4;
}
div#header-inner {
	width: 1072px;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 23px 10px;
}
div#header-visual {
	width: 100%;
	text-align: center;
	background: #FFF;
}
div#header-visual img {
	width: 1072px;
	max-width: 1072px;
	height: auto;
}

/* cf */
div#header-inner:before,
div#header-inner:after {
    content: " ";
    display: table;
}
div#header-inner:after {
    clear: both;
}
div#header-inner {
    *zoom: 1;
}

/* header PC */

#header-logo {
	width: 265px;
	float: left;
	margin-right: 20px;
}
#header-add {
	width: 420px;
	min-height: 80px;
	float: left;
	font-size: 100%;
	color: #FFF;
	font-weight: normal;
	line-height: 160%;
}
#header-tel {
	width: 317px;
	float: right;
	padding-top: 15px;
}
#header-contact {
	width: 317px;
	float: right;
	margin: 5px 0;
}

/* header img */

#header-logo img,#header-contact img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

/* header SP */

#header-logo-sp {
	width: 220px;
	display: none;
	float: left;
	padding-left: 15px;
}
.header-spmenu {
	width: 28px;
	display: none;
	float: right;
	text-align: center;
	cursor: pointer;
	margin-top: 10px;
	margin-right: 15px;
}
#header-logo-sp img,.header-spmenu img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

/*==================================================

Navi
==================================================*/

.fix-blank {
	width: 100%;
	height: 460px;
	position: relative;
	display: none;
}
.fix-body {
	padding-top: 460px;
}
.fix {
	position: fixed;
	z-index: 1000!important;
	top: 0;
	left: 0;
}
nav {
	width: 100%;
	position: relative;
	letter-spacing: 0.2em;
	font-family: 'News Cycle', sans-serif;
	background: #f3a9b6;
	z-index: 1000!important;
}

nav > ul {
	width: 1072px;
	position: relative;
	margin: 0 auto;
}

/* cf */
nav > ul:before,
nav > ul:after {
    content: " ";
    display: table;
}
nav > ul:after {
    clear: both;
}
nav > ul {
     *zoom: 1;
}

nav > ul > li {
	width: 178px;
	position: relative;
	float: left;
	display: table;
	background: #f3a9b6;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
nav > ul > li > a {
	width: 100%;
	display: table-cell;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	vertical-align: middle;
	/* メインメニューの背景 */
	background: #f3a9b6;
	padding: 12px 0;
}

nav > ul > li > a.act {
	color: #f3a9b6;
	background: #FFF;
}
/* メインメニューの背景 オーバー */
.navrollover {
	
}
.navrollover a:hover {
	color: #f3a9b6;
	background: #FFF;
}
nav > ul > li > ul {
	width: 418px;
	display: none;
	position: absolute;
	background: #FFF;
	top: 44px;
	left: 0;
	z-index: 999;
}
nav > ul > li > ul li {
	width: 100%;
}
nav > ul > li > ul li a {
	width: 100%;
	display: block;
	font-size: 16px;
	color: #FFF;
	text-align: center;
	/* サブメニューの背景 */
	background: #f3a9b6;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	padding: 12px 0;
}
/*
nav > ul > li > ul li:first-child a {
	color: #f3a9b6;
	background: #FFF;
}
*/

.sp-only {
	display: none;
}

/*==================================================

contents
==================================================*/

div#contents {
	width: 1072px;
	margin: 0 auto;
	padding: 30px 0;
}

/* cf */
div#contents:before,
div#contents:after {
    content: " ";
    display: table;
}
div#contents:after {
    clear: both;
}
div#contents {
     *zoom: 1;
}

/*==================================================

table
==================================================*/

.t-style1 {
	width: 100%;
}
.t-style1 th {
	width: 15%;
	text-align: left;
	font-weight: normal;
	vertical-align: top;
	padding: 12px 0;
}
.t-style1 td {
	text-align: left;
	vertical-align: top;
	padding: 12px;
}

.entry-t-style {
	width: 100%;
}
.entry-t-style th {
	width: 25%;
	line-height: 200%;
	font-weight: normal;
	text-align: left;
	border-bottom: 2px solid #f3aab7;
	padding: 20px;
}
.entry-t-style th strong {
	font-weight: bold;
	color: #F00;
}
.entry-t-style td {
	text-align: left;
	line-height: 200%;
	border-bottom: 2px solid #EEE;
	padding: 20px;
}
.entry-t-style td strong {
	font-weight: normal;
	color: #F00;
}
.entry-t-style td input,.entry-t-style td textarea {
	font-size: 117%;
	margin: 8px 5px;
	padding: 5px;
}

/*==================================================

form
==================================================*/

.form-style {
	
}
.form-style input[type="checkbox"] {
	margin: 0 0.5em;
}
.form-style input[type="text"],.form-style textarea {
	font-size: 12px;
	border: 1px solid #CCC;
	margin: 1%;
	padding: 0.5%;
}
.form-style input:focus,.form-style textarea:focus {
	background: #eaf6fd;
}
.form-style select {
	border: 1px solid #CCC;
	margin: 5px 0;
}
.formwidth-ss {
	width: 5%;
}
.formwidth-s {
	width: 15%;
}
.formwidth-ms {
	width: 25%;
}
.formwidth-m {
	width: 45%;
}
.formwidth-l {
	width: 80%;
}
.regi-buttun {
	text-align: center;
	margin: 5% 0;
}
.r-button1 {
	-webkit-appearance: none;
	font-size: 14px;
	color: #FFF;
	cursor: pointer;
	background: #f3aab7;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	margin: 0 20px 5%;
	padding: 8px 50px;
}
.r-button2 {
	-webkit-appearance: none;
	font-size: 14px;
	color: #FFF;
	cursor: pointer;
	padding: 8px 50px;
	background: #CCC;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}


/*==================================================

footer
==================================================*/

.pagetop {
	width: 55px;
	height: 55px;
	position: fixed;
	display: none;
	right: 30px;
	bottom: 50px;
	z-index: 999!important;
}

footer {
	width: 100%;
	min-width: 1072px;
	background: #efa4a3;
}
div#footer-inner {
	width: 1072px;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 40px 10px;
}
/* cf */
div#footer-inner:before,
div#footer-inner:after {
    content: " ";
    display: table;
}
div#footer-inner:after {
    clear: both;
}
div#footer-inner {
    *zoom: 1;
}
#footer-logo {
	width: 60%;
	float: left;
}
#footer-logo h1 {
	width: 30%;
	float: left;
}
#footer-logo p {
	width: 65%;
	font-size: 84%;
	float: right;
	color: #FFF;
}
#footer-logo ul {
	width: 65%;
	display: table;
	float: right;
}
#footer-logo ul li {
	display: table-cell;
	font-size: 84%;
	color: #FFF;
}
#footer-logo ul li:before {
	content: "\0025b6";
	font-size: 85%;
}
#footer-logo ul li a {
	font-size: 84%;
	color: #FFF;
}
#footer-sns {
	width: 32%;
	float: right;
	font-family: 'News Cycle', sans-serif;
}
#footer-sns dl {
	width: 100%;
	display: table;
}
#footer-sns dl dt {
	width: 30%;
	display: table-cell;
	font-size: 125%;
	color: #FFF;
	text-align: right;
	padding: 0 3%;
}
#footer-sns dl dd {
	width: 11%;
	display: table-cell;
	text-align: center;
	padding: 0 3%;
}
#footer-logo h1 img,#footer-sns dd img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
#footer-sns p.copy {
	font-size: 100%;
	text-align: right;
	color: #FFF;
	padding-top: 30px;
}


/*==================================================

size m
==================================================*/

@media only screen and (max-width: 768px) {
	
	div#wrapper {
		width: 100%;
	}
	
	/*==================================================
	
	header
	==================================================*/
	
	header {
		width: 100%;
		min-width: 100%;
	}
	div#header-inner {
		width: 100%;
		padding: 10px 0;
	}
	#header-logo,#header-add,#header-tel,#header-contact {
		display: none;
	}
	.add-header {
		height: 2000px;
		background: #f0a5a4;
	}
	div#header-visual {
		width: 100%;
		text-align: center;
		background: #FFF;
	}
	div#header-visual img {
		width: 90%;
		max-width: 90%;
		height: auto;
	}
	
	/* header SP*/
	#header-logo-sp {
		display: block;
	}
	.header-spmenu {
		display: block;
	}
	
	/*==================================================
	
	Navi
	==================================================*/
	
	.fix-body {
		padding-top: 200px;
	}
	nav {
		width: 100%;
		height: 2000px;
		display: none;
		letter-spacing: 0;
		position: absolute;
		background: #f3a9b6;
		top: 78px;
		left: 0;
	}
	nav a {
		color: #FFF;
	}
	nav > ul {
		width: 100%;
		position: relative;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		padding: 0 15px;
	}
	
	nav > ul > li {
		width: 100%;
		position: relative;
		float: none;
		display: block;
		border-top: 1px solid #FFF;
	}
	nav > ul > li img {
		width: 40%;
		max-width: 40%;
		height: auto;
	}
	nav > ul > li > a {
		width: 100%;
		display: block;
		font-size: 117%;
		color: #FFF;
		text-align: left;
		background: url(../../images/arrow_02.png) no-repeat #f3a9b6 right center;
		padding: 7px 0;
	}
	nav > ul > li:first-child {
		display: none;
	}
	nav > ul > li > a.act {
		color: #FFF;
		background: url(../../images/arrow_02.png) no-repeat #f3a9b6 right center;
	}
	nav > ul > li.bl {
		width: 100%;
		display: block;
		font-size: 117%;
		color: #FFF;
		text-align: left;
		padding: 10px 0;
	}
	nav > ul > li > ul {
		width: 100%;
		display: block;
		position: relative;
		background: #FFF;
		top: 0;
		left: 0;
		z-index: 999;
	}
	nav > ul > li > ul li {
		width: 100%;
		border-top: 1px solid #FFF;
	}
	nav > ul > li > ul li a {
		width: 100%;
		display: block;
		font-size: 100%;
		color: #F2A9B6;
		text-align: left;
		background: url(../../images/arrow_03.png) no-repeat #fdeef1 right center;
		padding: 10px 15px;
	}
	nav > ul > li > ul li:first-child a {
		color: #F2A9B6;
		background: url(../../images/arrow_03.png) no-repeat #fdeef1 right center;
	}
	.sp-only {
		display: block;
	}
	.contact-navi {
		width: 68%;
		float: left;
		font-size: 84%;
		color: #FFF;
		line-height: 150%;
	}
	.sns-navi {
		width: 15%;
		float: right;
	}
	.sns-navi h1 {
		width: 100%;
		font-size: 84%;
		text-align: center;
		color: #FFF;
		margin: 0 auto;
		padding: 0;
	}
	.sns-navi h1 img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	/* cf */
	.sns-navi:before,
	.sns-navi:after {
		content: " ";
		display: table;
	}
	.sns-navi:after {
		clear: both;
	}
	.sns-navi {
		*zoom: 1;
	}
	.sns-navi p {
		width: 50%;
		float: left;
		text-align: center;
		padding: 3%;
	}
	.sns-navi p img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	
	/*==================================================
	
	contents
	==================================================*/
	
	div#contents {
		width: 90%;
		margin: 0 auto;
		padding: 30px 0;
	}
	
	/*==================================================
	
	table
	==================================================*/
	
	.entry-t-style {
		width: 100%;
		margin-top: 20px;
	}
	.entry-t-style th {
		display: block;
		width: 100%;
		font-size: 100%;
		color: #FFF;
		letter-spacing: 0;
		border: none;
		background: #f3aab7;
		text-align: center;
		border: none;
		padding: 10px 0;
	}
	.entry-t-style td {
		display: block;
		width: 100%;
		font-size: 100%;
		letter-spacing: 0;
		border: none;
		padding: 10px 0;
	}
	.entry-t-style td input,.entry-t-style td textarea {
		font-size: 100%;
		margin: 8px 5px;
		padding: 5px;
	}
	
	/*==================================================
	
	footer
	==================================================*/
	
	footer {
		width: 100%;
		min-width: 100%;
	}
	div#footer-inner {
		width: 90%;
		margin: 0 auto;
		padding: 30px 0;
	}
	#footer-logo {
		width: 50%;
		float: left;
	}
	#footer-logo h1 {
		width: 60%;
		float: none;
	}
	#footer-logo p {
		width: 100%;
		float: none;
		padding: 10px 0;
	}
	#footer-logo ul {
		width: 100%;
		display: table;
		float: none;
	}
	#footer-logo ul li {
		display: table-cell;
		padding-right: 10px;
	}
	#footer-logo ul li:before {
		content: "\0025b6";
		font-size: 85%;
	}
	#footer-sns {
		width: 45%;
		float: right;
		font-family: 'News Cycle', sans-serif;
		padding-top: 15px;
	}
	#footer-sns dl {
		width: 100%;
		display: table;
	}
	#footer-sns dl dt {
		width: 30%;
		display: table-cell;
		font-size: 120%;
		text-align: right;
		padding: 0 3%;
	}
}

/*==================================================

size s
==================================================*/

@media only screen and (max-width: 480px) {
	
	
	/*==================================================
	
	header
	==================================================*/
	
	
	/* header SP*/
	
	#header-logo-sp {
		width: 180px;
		display: block;
		float: left;
	}
	.header-spmenu {
		width: 28px;
		display: block;
		float: right;
		text-align: center;
		cursor: pointer;
		margin-top: 7px;
	}
	#header-logo-sp img,.header-spmenu img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	
	/*==================================================
	
	Navi
	==================================================*/
	
	.fix-body {
		padding-top: 150px;
	}
	nav {
		width: 100%;
		display: none;
		position: absolute;
		background: #f3a9b6;
		top: 60px;
		left: 0;
	}
	nav > ul > li > a {
		font-size: 100%;
	}
	nav > ul > li.bl {
		font-size: 100%;
	}
	nav > ul > li > ul li a {
		font-size: 100%;
	}
	.sns-navi {
		width: 25%;
		float: right;
	}
	
	/*==================================================
	
	contents
	==================================================*/
	
	div#contents {
		width: 90%;
		margin: 0 auto;
		padding: 20px 0;
	}
	
	/*==================================================
	
	table
	==================================================*/
	
	.t-style1 {
		
	}
	.t-style1 th {
		width: 100%;
		display: block;
		text-align: center;
		background: #EEE;
	}
	.t-style1 td {
		width: 100%;
		display: block;
		text-align: left;
		vertical-align: top;
		padding: 12px;
	}
	
	/*==================================================
	
	footer
	==================================================*/
	
	#footer-logo {
		width: 100%;
		float: none;
	}
	#footer-logo h1 {
		width: 50%;
		margin: 0 auto;
	}
	#footer-logo p {
		text-align: center;
		padding: 15px 0;
	}
	#footer-logo ul {
		width: 70%;
		margin: 0 auto;
	}
	#footer-logo ul li {
		display: table-cell;
		padding-right: 10px;
	}
	#footer-logo ul li:before {
		content: "\0025b6";
		font-size: 85%;
	}
	#footer-sns {
		width: 100%;
		float: none;
		font-family: 'News Cycle', sans-serif;
		padding-top: 0;
	}
	#footer-sns dl {
		width: 100%;
		display: none;
	}
	#footer-sns p.copy {
		font-size: 100%;
		text-align: center;
		padding-top: 20px;
	}
	
}

@media only screen and (max-width: 375px) {
	
	
	/*==================================================
	
	header
	==================================================*/
	
	header {
		width: 100%;
	}
	#header-logo,#header-add,#header-contact {
		display: none;
	}
	
	/* header SP*/
	
	#header-logo-sp {
		width: 160px;
		display: block;
		float: left;
	}
	.header-spmenu {
		width: 28px;
		display: block;
		float: right;
		text-align: center;
		cursor: pointer;
	}
	#header-logo-sp img,.header-spmenu img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	
	/*==================================================
	
	Navi
	==================================================*/
	
	.fix-body {
		padding-top: 125px;
	}
	nav {
		width: 100%;
		display: none;
		position: absolute;
		background: #f3a9b6;
		top: 56px;
		left: 0;
	}
	nav > ul > li > a {
		font-size: 92%;
	}
	nav > ul > li.bl {
		font-size: 92%;
	}
	nav > ul > li > ul li a {
		font-size: 92%;
	}
	
	/*==================================================
	
	contents
	==================================================*/
	
	div#contents {
		width: 90%;
		margin: 0 auto;
		padding: 15px 0;
	}
	
	/*==================================================
	
	footer
	==================================================*/
	
	#footer-logo ul {
		width: 90%;
		margin: 0 auto;
	}
	
}

@media only screen and (max-width: 320px) {
	
	
	/*==================================================
	
	header
	==================================================*/
	
	/* header SP*/
	
	#header-logo-sp {
		width: 140px;
		display: block;
		float: left;
	}
	.header-spmenu {
		width: 28px;
		display: block;
		float: right;
		text-align: center;
		cursor: pointer;
		margin-top: 4px;
	}
	#header-logo-sp img,.header-spmenu img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	
	/*==================================================
	
	Navi
	==================================================*/
	
	.fix-body {
		padding-top: 110px;
	}
	nav {
		width: 100%;
		display: none;
		position: absolute;
		background: #f3a9b6;
		top: 46px;
		left: 0;
	}
	
}