@charset "UTF-8";
.container {
	width: 1024px;
	margin: 0 auto;
	color: #003399;
}
.container .contents {
	max-width: 1000px;
	margin: 0 auto;
}

@media screen and (max-width: 800px) {
div.container,  div.container .contents,  div.txt-box {
	width: 100%;
}
}
/* title box / text only , photo bg */
.ttl-nav-box {
	position: relative;
}
.ttl-box {
	position: relative;
	line-height: 1;
	color: #fff;
	background-image: url(../img/ttl01bg01.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	text-align: center;
	padding: 34px 0;
}
.ttl-box .txt-box h1 {
	font-size: 350.00%; /* 52.5px */
	font-family: "游ゴシック体", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

@media screen and (min-width: 801px) { /* new pc */
div.ttl-box .txt-box {
	width: 1024px;
	margin: 0 auto;
}
}

@media screen and (max-width: 800px) { /* new sp */
div.ttl-box .txt-box h1 {
	font-size: 300.00%; /* 48px */
}
div.ttl-nav-box .catnav ul li {
	float: none;
	display: block;
	width: 100%;
}
div.ttl-nav-box .catnav ul li a {
	display: block;
	height: auto;
	padding: 1em;
}
div.ttl-nav-box .catnav ul li:first-child a {
	padding: 1em;
}
}
.pd4per {
	padding: 0 4% 4%;
}

/* contact =============================== */
.form-box{
	padding-top:32px;
}
.container .line-box{
	border-bottom: 1px solid #CCCCCC;
	padding:2% 4%;
}

.container .line-box .table-outer{
		max-width:800px;
		width:100%;
		margin:0 auto;
}
.container .line-box dl{
	display:table;
	width:inherit;
	overflow:hidden;
}

.container .line-box dl dt{
	overflow:hidden;
	width:36%;
	display:table-cell;
	vertical-align:top;
	font-weight:bold;
}
.container .line-box dl dd{
	overflow:hidden;
	display:table-cell;
	vertical-align:middle;
	padding-left:4%;
}

/* title */
.container .line-box dt p.must:after{
	content:"必須";
	background-color:#FF647B;
	color:#fff;
	float:right;
	width:2.5em;
	text-align:center;
	font-weight:normal;
}

@media screen and (max-width: 480px) { /* sp */
	div.container .line-box dl,
	div.container .line-box dt,
	div.container .line-box dd{
		width:100%;
		float:none;
		display:block;
	}
	
	div.container .line-box dd{
		padding: 1% 0 0
	}
}

/* form style */
.container .line-box dd input[type="text"],
.container .line-box dd select,
.container .line-box dd textarea{
	border:1px solid #003399;
	padding:8px;
	transition: 0.3s;
	width:100%;
}


/* matter */
.container .line-box .matter dt,
.container .line-box .matter dd{
	display:block;
	padding-left:0;
}
.container .line-box .matter-box{
	clear:both;
}

.container .line-box .matter-box ul{
	padding:0;
}


.container .line-box .matter-box li{
	list-style:none;
	width:49%;
	float:left;
}
.container .line-box .matter-box li.nth-child-2n{
	float:right;
}

@media screen and (max-width: 400px) { /* sp txt-full */
	div.container .line-box .matter-box li,
	div.container .line-box .matter-box li.nth-child-2n{
		float:none;
		width:100%;
	}
}

.container .line-box .matter-box label{
	padding:8px 0;
	margin-right:0;
	margin-left:2em;
	text-indent:-2em;
}


@media screen and (max-width: 480px) { /* sp */
	.container .line-box .matter-box label{
		padding:8px 0;
	}
}

/* submit button */
.button-box{
	text-align:center;
	padding:64px 4% 120px;
}

.container .button-w{
	width:15em;
	display:block;
	height:50px;
	margin:0 auto 24px;
	border: 1px solid #003399;
	background-color:#fff;
	transition: 0.3s;
	position:relative;
}

.container .button-box .button-w:before{
	content:"";
	position:absolute;
	left: 1em;
	top:41%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #003399;
	border-right: 1px solid #003399;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.container .button-w .submit-w{
	border:none;
	width:15em;
	height:50px;
	color:#003399;
	background-color:transparent;
	cursor:pointer;
}


.container .button-b{
	width:15em;
	display:block;
	height:50px;
	margin:0 auto 24px;
	border: 1px solid #003399;
	background-color:#003399;
	transition: 0.3s;
	position:relative;
}

.container .button-box .button-b:before{
	content:"";
	position:absolute;
	right: 1em;
	top:41%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.container .button-b .submit-b{
	border:none;
	width:15em;
	height:50px;
	color:#fff;
	background-color:transparent;
	cursor:pointer;
}

.container .button-w,
.container .button-b{
	display:inline-block;
}

.container .button-w:hover,
.container .button-b:hover{
	 opacity: 0.6;
   filter: alpha(opacity=60);
  -ms-filter: "alpha(opacity=60)";
	text-decoration:none;
}

/* privacy */
#privacy {
	height: 145px;
	border:1px solid #CCCCCC;
	margin:24px auto 0;
	padding:8px;
	overflow-y: scroll;
	max-width:800px;
}
html:first-child #privacy { /* SafariとOpera用 */
overflow : scroll;
}
#privacy dl,
#privacy dt {
	display:inline;
}

#privacy dd {
	margin:10px 0 20px 15px;
}

/* confirm
----------------------------------------------------- */
.container h2.text {
    font-size: 237.50%;
    margin-bottom: 16px;
}

.confirm-box{
	max-width:800px;
	margin:0 auto;
	padding-top:32px;
}

@media screen and (max-width: 480px) { /* sp */
	div.container .confirm-box .line-box dd {
		padding-left:1em;
	}
}

.confirm-box p.confirm-message{
	padding:4%;
	text-align:center;
}

.confirm-box .back-button a{
	background-color:#eeeeee;
	padding:8px;
	border-radius:4px;
}

/* sendmail
----------------------------------------------------- */
.sendmail-box{
	max-width:800px;
	margin:32px auto 0;
}

.sendmail-box .button-box{
	padding-bottom:0;
}

.container .sendmail-box .button-w{
	width:15em;
	display:block;
	height:50px;
	line-height:50px;
	margin:0 auto 24px;
	border:none;
}

.container .sendmail-box .button-w a{
	color:#003399;
	border:1px solid #003399;
}

.container .sendmail-box .button-w a:before{
right: 1em;
width: 8px;
height: 8px;
border-top: 1px solid #003399;
border-right: 1px solid #003399;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* arrow */
.arrow{
position: relative;
display: inline-block;
color: #000;
vertical-align: middle;
text-decoration: none;
width:100%;
}

.container a.arrow:hover{
	 opacity: 0.6;
   filter: alpha(opacity=60);
  -ms-filter: "alpha(opacity=60)";
	text-decoration:none;
}