@charset "utf-8";

html, body                 {width:100%;height:100%;margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
table, caption, tbody, tfoot, thead, tr, th, td, p,
fieldset, form, label, legend, input, textarea,
article, aside, canvas, 
footer, header, nav, section,
b, u, i                    {margin:0;padding:0;list-style:none;font-style:normal;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}

a                          {outline:none;text-decoration:none;}
img                        {border:0 none;vertical-align:top;max-width:100%;height:auto;}
em                         {font-style:normal;font-weight:bold;}
.h a, .f a,
nav a, nav span            {text-decoration:none;}

/* ----------------------------------------------- font */
html                       {font-size:62.5%;}
body                       {font-size:16px;font-size:1.6rem;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
h1, h2,  h3                {font-weight:normal;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
h1                         {font-size:24px;font-size:2.4rem;}
h2                         {font-size:20px;font-size:2.0rem;}
h3                         {font-size:18px;font-size:1.8rem;}

@font-face                 {font-family:'entypo';src:url('fonts/entypo.eot?ac19je');src:url('fonts/entypo.eot?#iefixac19je') format('embedded-opentype'),url('fonts/entypo.woff?ac19je') format('woff'),url('fonts/entypo.ttf?ac19je') format('truetype'),url('fonts/entypo.svg?ac19je#entypo') format('svg');font-weight: normal;font-style: normal;}

/* ============================================================== base */
body                       {color:#3a3a3a;-webkit-text-size-adjust:100%;}
a, a:link                  {color:#0069B5;}
a:visited                  {color:#05a;}
a:hover                    {color:#17c;}
em                         {color:#e21;}


/* For modern browsers */
.cf:before,
.cf:after {
    content:"";
    display:table;
}
 
.cf:after {
    clear:both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.cf {
    zoom:1;
}

/* ============================================================== frame */
.page                      {background-size:cover;background-position:50%;min-height:90%;}
#firstPage                 {background-image:url("./img/first3.jpg");background-position:100% 20%;}
#aboutus                   {background-image:url("./img/aboutus2.jpg");background-color: #f2f2f2;}
#contact                   {background-image:url("./img/contact.jpg");}
.sct                       {padding:70px 0 20px;}
.fx                        {max-width:1200px;margin:0 auto;padding:0 1em;}

#intro                     {position:fixed;height:100%;width:100%;z-index:100;background-image:url("./img/intro.png");background-repeat:no-repeat;background-position:50% 50%;background-size:contain;}
#main                      {height:100%;}

/* ============================================================== elements */
.sct p                     {line-height:1.5;}
.hdg2                      {font-size:1.8em;margin-bottom:1em;text-align:center;}

/* ============================================================== header */
.h                         {background:rgba(255,255,255,0.8);border-bottom:2px solid #e60c15;text-align:center;position:fixed;top:0;left:0;z-index:70;width:100%;}
.h .logo                   {float:left;padding:5px;}
.h .logo img               {height:43px;}

.nv_switch                 {display:block;position:absolute;right:0.5em;top:0.5em;width:2em;height:2em;cursor:pointer;}
.nv_switch:before          {content:"\e696";font-family:'entypo';speak: none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
                            color:#666;display:block;position:absolute;font-size:2em;}
.nv_check                  {display:none;}

.h ul                      {clear:both;}
.h li a                    {color:#333;display:block;line-height:44px;border-top:1px solid #ccc;}
.nv_check + ul li          {max-height:0;overflow:hidden;transition:all 0.2s ease-out;}
.nv_check:checked + ul li  {max-height:44px;}
.h .crt a                  {color:#ef7e57;}


/* ============================================================== firstPage */
.lead                      {font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;padding:1em;margin:0 0 1em;text-align:left;background-color:rgba(255,255,255,0.5);background-repeat:no-repeat;background-position:100% 100%;}
.lead h2                   {font-size:1.7em;font-weight:bold;color:#e83723;margin-bottom:1em;}
.lead p                    {margin-bottom:1em;font-size: 1em;}
.lead p:last-child         {margin-bottom:0;}

.news                      {padding:1em;background-color:rgba(255,255,255,0.75);}
.news h2                   {border-bottom:2px solid #2484C0;margin-bottom:0.5em;font-size:1.6em;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.news dl                   {font-size:0.8em;margin-bottom:1em;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.news dl:last-child        {margin-bottom:0;}
.news dl a                 {color:#266500;}

.news_lst                  {overflow-y:scroll;max-height:6em;}


/* ============================================================== greeting */
.greeting_lead {
	max-width:1000px;
	line-height:1.7;
	margin-left:auto;
	margin-right:auto;}
.greeting_lead span.daihyo_name {
	text-align:right;
	display:block;}

.greeting_lead span.daihyo_name span {
	font-size:150%;}

.greeting_lead2 {
	text-align:center;
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;}
#greeting2 {
	min-height:inherit!important;
	/*background-color:#e83723;
	color:white;*/
	font-size:120%;
	margin:50px 0;
	padding-bottom:150px;}

#greeting2 span {
	color:red;
	font-size:130%;}

/* ============================================================== aboutus */
.aboutus_lead              {font-size:1.2em;}
.solution                  {margin-top:2em;max-width:1060px;}
.solution li               {background:rgba(255,255,255,0.75);margin-bottom:1em;}
.solution h3               {font-size:1.4em;padding:1em;text-align:center;border-bottom:2px solid #e83723;margin-bottom:1em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.solution p                {padding:0 1.5em 1.5em;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.solution .img             {text-align:center;padding:0.5em;}

.map_pic {
    max-height: 450px;
    display: block;
    margin-left: auto;
    margin-right: auto;float: left;
    width:50%;}
.access_txt {width:49%;
	float: right;background-color: #e30919;
	color:white;padding:40px 20px;}

.access_txt h3 i {margin-right: 10px;}
.access_txt h3 {font-size: 130%;margin-bottom:20px;}

/* ============================================================== outline */
.outline_detail            {max-width:1040px;margin:0 auto;}
.outline_tbl               {font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.outline_tbl dl            {margin-bottom:1em;padding-bottom:1em;border-bottom:1px solid #ccc;}
.outline_tbl dt            {color:#e83723;padding:0 0 0.5em;}
.outline_tbl dd            {line-height:1.5;}
.outline_tbl dd span       {display:block;}
.outline_tbl dd i          {display:inline-block;}
.outline_tbl .namae i,
.outline_tbl .addr i       {margin-right:0.5em;}
.outline_detail iframe     {width:100%;height:250px;}

.outline_3p                {padding:20px 0 20px;background:#f1f1f1;}
.outline_3p .fx            {max-width:830px;}
.outline_3p h3             {line-height:1.5;text-align:center;border-bottom:1px solid #e83723;margin-bottom:0.5em;font-weight:bold;}
.outline_3p p              {margin-bottom:2em;color:#525252;font-size:0.8em;}

/* ============================================================== contact */
.contact_form              {margin:0 auto 2em;max-width:890px;}
.contact_form dl           {background:rgba(255,255,255,0.75);padding:0.5em;}
.contact_form dt           {margin-bottom:0.5em;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.sct input[type=text],
.sct select,
.sct textarea              {width:100%;font-size:16px;min-height:1em;padding:0.5em;line-height:1.5;background:#fff;outline:none;border:1px solid #ccc;-webkit-appearance:none;}
.sct select                {height:2.4em;}

.btns                      {text-align:center;padding-top:1em;}
.btn                       {font-size:1.2em;padding:0 2em;line-height:2.4em;height:2.4em;color:#fff;background:#6F7171;display:inline-block;text-align:center;border:0 none;text-decoration:none;vertical-align:top;cursor:pointer;-webkit-appearance:none;}

.print_only {display:none;}

/* ============================================================== footer */
.f                         {max-width:1040px;margin:0 auto;padding:0 1em 2em;text-align:center;}
.f .logo                   {padding:2em 0;margin-bottom:1em;border-top:1px solid #e83723;border-bottom:1px solid #e83723;}
.f .copy                   {font-size:0.8em;line-height:1.2em;font-family:"HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}


/* ============================================================== media query */
@media screen and (min-width: 760px){
	/* ------------------------------------------------------------- frame */
	.sct                       {padding:100px 20px 20px;}

	/* ------------------------------------------------------------- elements */
	.hdg2                      {font-size:4rem;margin-bottom:1em;}

	/* ------------------------------------------------------------- header */
	.h .logo                   {width:20%;padding:12px 0;}
	.nv_check + ul,
	.nv_check:checked + ul     {display:block;}
	.nv_check + ul li,
	.nv_check:checked + ul li  {max-height:none;}
	.nv_switch                 {display:none;}
	.h ul                      {clear:none;display:block;}
	.h li                      {display:inline-block;width:12%;max-width:240px;}
	.h li a                    {padding:12px 0;border-right:1px solid #ccc;border-top:0 none;white-space:nowrap;overflow:hidden;}
	.h li:first-child a        {border-left:1px solid #ccc;}

	/* ------------------------------------------------------------- firstPage */
	.lead                      {margin-top:30%;text-align:left;margin-bottom:8%;width:80%;padding:3em;min-width:34em;margin-left:auto;margin-right:auto;border-width:5px;}
	.lead p span               {display:block;}
	.news                      {padding:2em;}
	.news dl                   {clear:both;width:100%;}
	.news dt                   {float:left;width:6em;}
	.news dd                   {margin-left:7em;}

	/* ------------------------------------------------------------- aboutus */
	.aboutus_lead              {text-align:center;}
	.solution                  {display:table;table-layout:fixed;border-collapse:separate;border-spacing:3px 0;margin:2em auto;width:100%;}
	.solution li               {display:table-cell;width:33%;}
	.solution li p             {min-height:8em;}

	/* ------------------------------------------------------------- outline */
	.outline_tbl dl            {background:#f2f2f2;display:table;margin-bottom:5px;padding-bottom:0;border-bottom:0 none;width:100%;}
	.outline_tbl dt,
	.outline_tbl dd            {padding:1.2em;display:table-cell;}
	.outline_tbl dt            {color:#fff;background:#e83723;padding:0;text-align:center;width:240px;vertical-align:middle;}
	.outline_tbl dd            {line-height:1.5;}
	.outline_detail iframe     {height:400px;}

	.outline_3p                {padding:4em 20px 20px;}
	.outline_3p h3             {font-size:3.2rem;line-height:2em;}
	.outline_3p p              {font-size:1em;margin:0 auto 3em;text-align:center;line-height:2em;}
	.outline_3p p span         {display:block;}

	/* ------------------------------------------------------------- contact */
	.contact_form dl           {display:table;padding:0;width:100%;margin-bottom:1em;}
	.contact_form dt,
	.contact_form dd           {padding:1.2em;display:table-cell;}
	.contact_form dt           {margin-bottom:0;color:#fff;background:rgba(0,0,0,0.5);padding:0;text-align:center;width:240px;vertical-align:middle;}
	.btn                       {padding:0 3em;line-height:3em;height:3em;}

}
@media screen and (max-width: 768px){
	#firstPage {
		background-position: center;
	}
.lead {margin:50vh 0 1em;}

.access_txt,.map_pic {float: none;width:100%;}

}

@media screen and (max-width: 480px){
	#firstPage {
		background-position: center;
	}
	#firstPage.page {
		min-height: 0;
		height: 87vw;
		margin-top: 14vw;
		margin-bottom: 70vw;
	}
	#firstPage .lead {
		margin: 3vw 0 1em;
		background-color: rgba(255, 255, 255, 0.7);
	}
	#firstPage .fx {
	    position: absolute;
	    max-width: 1200px;
	    margin: 0 auto;
	    padding: 0 1em;
	    left: 50%;
	    transform: translateX(-50%);
	    width: 100%;
	    top: 70vw;
	}
}

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

}
