@charset "utf-8";
/*
Theme Name: 
Theme URI: 
Description: 
Version: 1.0.0
Author: 
Author URI: 
*/

/* -----------------------------------------------

	Site: 
	Type: default styles
	URL: 
	Last Up Date: 
	Version: 1.0
	Author: 
	
	----------------------------------------------
	
	Contents

		1.

----------------------------------------------- */


/* --- 1.style reset --- */
 
/*要素のフォントサイズやマージン・パディング*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
	font-weight: normal;
	font-style: normal;
}

/*スクロールバーを常に表示*/
html {
	overflow-y: scroll;
}

/*行の高さをフォントサイズと同じに*/
body {
    line-height:1;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
 
/*section要素などをブロック要素へ変更*/
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}
 
ol, ul {
    list-style:none;
}
 
/*引用符の表示が出ないように*/
blockquote, q {
    quotes:none;
}
 
/*blockquote要素、q要素の前後にコンテンツを追加しないように*/
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
 
/*a要素のフォントサイズなどをリセットしフォントの縦方向の揃え位置を親要素のベースラインに揃える*/
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
}
 
/* ins要素のデフォルトをセットし、色を変える場合はここで変更できるようにしています */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
 
/* mark要素のデフォルトをセットし、色やフォントスタイルを変える場合はここで変更できるようにしています
また、mark要素とは、文書内の検索結果で該当するフレーズをハイライトして、目立たせる際に使用するようです。*/
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}
 
/*テキストに打ち消し線が付くようにしています*/
del {
    text-decoration: line-through;
}
 
/*IEではデフォルトで点線を下線表示する設定ではないので、下線がつくようにしています
また、マウスオーバー時にヘルプカーソルの表示が出るようにしています*/
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
 
/*隣接するセルのボーダーを重ねて表示し、間隔を0に指定しています*/
table {
    border-collapse:collapse;
    border-spacing:0;
}
 
/*水平罫線のデフォルトである立体的な罫線を見えなくしています*/
hr {
    display:block;
    height:1px;
    border:0;  
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
 
/*縦方向の揃え位置を中央揃えに指定しています*/
input, select {
    vertical-align:middle;
}

/*画像を縦に並べたときに余白が出ないように*/
img {
	vertical-align: bottom;
	font-size:0;
	line-height: 0;
	border: 0;
}

/*文字を太字に*/
strong {
	font-weight: bold;
}

/* box-sizing */
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}



/* --- 2.float --- */
.float-left, .alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 30px;
}
.float-right, .alignright {
	float: right;
	margin-left: 20px;
	margin-bottom: 30px;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.clear:after {
    content: '';
    display: block;
    clear: both;
}
.clear {
	clear: both;
    zoom: 1; /* for IE6/7 */
}



/* --- 3.link --- */
a {
	outline: none;
	text-decoration: none;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
a:link{
}
a:visited{
}
a:hover{
	opacity: 0.5;
}
a:active{
}
a[href $='.pdf'] {
	background: url(images/icon_pdf.gif) no-repeat left;
	padding-left: 20px;
	overflow: hidden;
}
a[href $='.doc'] {
	background: url(images/icon_doc.gif) no-repeat left;
	padding-left: 20px;
	overflow: hidden;
}
a[href $='.xls'] {
	background: url(images/icon_xls.gif) no-repeat left;
	padding-left: 20px;
	overflow: hidden;
}
a[href $='.docx'] {
	background: url(images/icon_doc.gif) no-repeat left;
	padding-left: 20px;
	overflow: hidden;
}
a[href $='.xlsx'] {
	background: url(images/icon_xls.gif) no-repeat left;
	padding-left: 20px;
	overflow: hidden;
}




/* --- 4.text-align --- */
.to-left {
	text-align:left;	
}
.to-center {
	text-align:center;	
}
.to-right {
	text-align:right;	
}


/* --- 5.common --- */
body {
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8em;
	letter-spacing: 0.1em;
}

.Tab{
	display: none;
}

.sp{
	display: none;
}

.Inner{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
}


/* --- 6.header --- */

header {
	position: fixed;
	top: 0;
	width: 100%;
	padding: 20px 0;
	background-color: #0A2850;
	z-index: 100;
}

header .Inner{
	/*直下の子要素レイアウトコントロール*/
	display: flex;
	align-items: center;
}

header h1 img{
	max-width: 300px;
	width: 100%;
	max-height: 38px;
	height: 100%;
}


/* -----------------------
   nav
-------------------------- */
nav{
	/*右寄せ、余白は自動*/
	margin: 0 0 0 auto;
}

nav ul{
	display: flex;
}

nav li{
	margin: 0 0 0 20px;
	font-size: 14px;
}

nav li a{
	color: #fff;
}


/* -----------------------
   footer
-------------------------- */

footer {
	padding: 40px 0 0 0;
	background-color: #0A2850;
	color: #fff;
	font-size: 14px;
}

footer #footer_logo{
	margin-bottom: 40px;
	font-family: 'Noto Serif JP', serif;
	font-size: 32px;
}

footer .LeftBox{
	width: 40%;
	padding: 0 40px 0 0;
}

footer .RightBox{
	width: 60%;
}

footer .RightBox h4{
	color: #FFF;
}

footer #copy{
	width: 100%;
	margin: 40px 0 0 0;
	padding:6px 0;
	background-color: rgba(255, 255, 255, 0.1);
	text-align: center;
	font-size: 12px;
}

footer #copy p{
	margin-bottom: 0;
}






@media screen and (min-width:769px) and ( max-width:1000px) {

}



@media screen and (max-width: 768px) {
	
	.pc{
		display: none;
	}
	
	.sp{
		display: block;
	}
	
	/* -----------------------
	   footer
	-------------------------- */
	
	footer .LeftBox{
		width: 100%;
		padding: 0 0 40px 0;
	}

	footer .RightBox{
		width: 100%;
	}
	
}


@media screen and (max-width: 1000px){
	
	header .pc{
		display: none;
	}
	
	.Tab{
		display: block;
	}
	
	header {
		position: fixed;
		top: 0;
		width: 100%;
		height: 68px;
		padding: 20px 0;
		background-color: #0A2850;
		z-index: 100;
	}

	header .Inner{
		display: block;
	}
	
	header h1{
		float: left;
		max-width: 214px;
		max-height: 28px;
	}

	header h1 img{
		max-width: 214px;
		width: 100%;
		max-height: 28px;
		height: 100%;
	}
	
	
	/* --- MenuBtn --- */
	
	.MenuBtn{
		position: relative;
		float: right;
		width: 24px;
		height: 24px;
		margin-top: 2px;
		cursor: pointer;
		z-index: 110;
	}
	
	.Bar{
		position: absolute;
		right: 0px;
		display: block;
		width: 24px;
		height: 2px;
		background-color: rgba(255, 255, 255, 0.8);
		transition: all .3s;
	}
	
	.BarTop{
		top: 1px;
	}
	
	.BarMid{
		top: 11px;
	}
	
	.BarBottom{
		bottom: 1px;
	}
	
	/* 開閉時のメニューボタンの動き */
	
	.MenuBtn.close .BarTop{
		transform: translate(0, 10px) rotate(45deg);
		transition: transform .3s;
	}
	
	.MenuBtn.close .BarMid{
		opacity: 0;
		transition: opacity .3s;
	}
	
	.MenuBtn.close .BarBottom{
		transform: translate(0, -10px) rotate(-45deg);
		transition: transform .3s;
	}
	
	


	/* -----------------------
	   nav
	-------------------------- */
	.NavBox{
		display: none;
		position: fixed;
		top: 68px;
		left: 0;
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 20px 20px 60px 0px;
		background-color: rgba(10, 40, 80, 0.9);
		border-top: 1px solid #FFF;
	}

	.NavBox nav ul{
		display: block;
	}

	.NavBox nav li{
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		font-size: 14px;
	}

	.NavBox nav li a{
		display: block;
		padding: 16px 0; 
		color: #fff;
	}

	
	
}



/* ----------------------------------------
   スマホのみ
------------------------------------------- */

@media screen and (max-width: 500px){
	
	/* --- footer --- */
	footer #footer_logo{
		font-size: 24px;
	}
	
}





/* --- etc --- */

#PageTop {
    position: fixed;
    bottom: 50px;
    right: 50px;
	z-index: 1000;
	text-align: center;
}
.Round {
	border-radius: 5px;        /* デフォルト */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
}







/* --- お問い合わせフォーム --- */

#Contents #Form .Inner{
	padding: 180px 20px 60px 20px;
}

#Form{
	background-color: #FFFDEE;
}

#form-tbl table{
	width: 100%;
	margin: 40px 0;
	border: 1px solid #0A2850;
}

#form-tbl th{
	width: 360px;
	padding: 20px;
	border-bottom: 1px solid #FFF;
	color: #FFF;
	text-align: left;
	background-color: #0A2850;
}

#form-tbl tr:last-child th{
	border-bottom: 1px solid #0A2850;
}

#form-tbl td{
	padding: 20px;
	border-bottom: 1px solid #0A2850;
	background-color: #FFF;
}

#form-tbl tr:last-child td{
	border-bottom: none;
}

#form-tbl span{
	font-size: 12px;
	line-height: 1.4em;
}

#form-tbl th span.Required{
	float: right;
	padding: 4px 8px;
	width: 60px;
	border: solid 4px #CC0000;
	background-color: #FFF;
	color: #CC0000;
	text-align: center;
}

#form-tbl input[type="text"], #form-tbl textarea{
	display: block;
	max-width: 600px;
	width: 100%;
	padding: 10px;
}

#form-tbl .btn{
	text-align: center;
}


#form-tbl input[type="submit"]{
	width: 180px;
	padding: 14px;
	border: none;
	background-color: #EB8C0F;
	color: #fff;
	font-size: 16px;
	cursor: pointer;
}

#form-tbl input[type="reset"], #form-tbl input[type="button"]{
	width: 180px;
	margin: 0 0 0 40px;
	padding: 14px;
	border: none;
	background-color: #C4C4C4;
	color: #333;
	font-size: 16px;
	cursor: pointer;
}

/* エラーメッセージを赤字に */
#Form p.msg {
	color: #dd0000;
	margin: 2em;
}

#Form span.msg {
	color: #dd0000;
}




@media screen and (max-width: 768px){

	#form-tbl table{
		margin: 0 auto 40px auto;
	}
	
	#form-tbl th{
		display: block;
		width: 100%;
		padding: 10px 20px;
	}
	
	#form-tbl td{
		display: block;
	}
	
	#form-tbl th span.Required{
		float: none;
		margin: 0 0 0 10px;
	}
	
	#form-tbl input, #form-tbl textarea{
		display: block;
		width: 100%;
		margin: 0 auto;
	}
	
	#form-tbl input[type="checkbox"]{
		display: inline-block;
		width: auto;
	}
	
	#form-tbl input[type="submit"]{
		margin: 0 auto 40px auto;
	}
	
	#form-tbl input[type="reset"]{
		margin: 0 auto;
	}

}


@media screen and (max-width: 500px){
	
	#form-tbl th span.Required{
		display: block;
		margin: 0;
	}
}



