@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New&display=swap');

/*--------------------------------------------------------------------------------------------------

   common

--------------------------------------------------------------------------------------------------*/


/*reset-------------------------------------------------*/
*, *: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;
}

body,div,h1,h2,h3,h4,h5,h6,p,dl,dt,dd {
	margin: 0;
	padding: 0;
}

table {
 border-collapse: collapse;
	border-spacing: 0;
}

img {
	border: none;
	vertical-align: top;
  -webkit-backface-visibility: hidden;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}

header,section,article,aside,footer,nav {
 display: block;
}

/*-------------------------------------------------reset*/


/*common-------------------------------------------------*/
body {
	margin: 0;
	padding: 2em;
	color: #000000;
	font-size: 18px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.4;
    background-color: #111;
}

a:link {
	color: #006699;
}

a:visited {
	color: #993300;
}

a:hover, a:active {
	color: #F26400;
}

.clear:after {
 content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clear {
 display: inline-table;
 overflow: hidden;
}

/* mac \*/
* html .clear {
 height: 1%;
}
.clear {
 display: block;
}
/* macend */

.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}

.alignright {
	float: right;
	margin: 0 0 10px 10px;
}

.aligncenter {
	display: block;
	margin: 0 auto;
}

.sp {
 display: none;
}

/*-------------------------------------------------common*/


/*------------------------------------------------------------------------------------------------
  main
--------------------------------------------------------------------------------------------------*/
.main {
 position: relative;
 background-image: url(../image/back-01.jpg);
 background-size: cover;
 padding: 100px 40px;
 width: 100%;
 max-width: 1600px;
 margin: 0 auto;
 height: calc( 100vh - 4em );
}

.main .inner {
 position: absolute;
 width: 90%;
 margin: 0 auto;
 padding: 40px 100px;
 text-align: center;
 background-color: rgba(255, 255, 255, 0.7);
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
}

.main .inner img.logo {
 width: 410px;
 height: auto;
}

.main .inner h1 {
 margin: 0 0 30px;
 font-weight: bold;
 font-size: 36px;
 letter-spacing: 0.04em;
 color: #153464;
 text-shadow:
 1px 1px 1px #FFF,
	 1px -1px 1px #FFF,
	 -1px 1px 1px #FFF,
	 -1px -1px 1px #FFF,
	 3px 3px 10px #FFF,
		-3px -3px 10px #FFF;
}

.inner .time {
 margin: 0 0 50px;
 border: 2px dotted #000;
 padding: 20px;
 background-color: #FFF;
}

.inner .time dl {
 margin: 0 0 10px;
 display: flex;
 font-size: 28px;
 justify-content: center;
 font-weight: 600;
}

.inner .time dl dt {
 margin-right: 30px;
}

dl.info {
 width: 680px;
 margin: 0 auto;
 display: flex;
 flex-wrap: wrap;
 text-align: left;
 font-size: 24px;
}

dl.info dt {
 width: 90px;
 margin: 0 0 10px;
}

dl.info dd {
 width: calc( 100% - 90px );
 margin: 0 0 10px;
}

.sb_bnr {
 margin: 20px 0 0;
}

.main .inner img.line {
 width: 180px;
 height: auto;
}


/*--------------------------------------------------*/
@media all and (max-width: 1000px){

.main .inner {
 padding: 60px;
}

.inner .time dl {
display: block;
}

.inner .time dl dt {
margin: 0;
}

.inner .time dl dd {
 letter-spacing: 0.04em;
}

dl.info {
 font-size: 20px;
}

}


/*--------------------------------------------------*/
@media all and (max-width: 980px){

.main {
 padding: 20px;
 max-width: 100%;
 background-position: 40% center;
}

.main .inner h1 {
 font-size: 25px;
}

.inner .time dl {
 font-size: 20px;
}

dl.info {
 width: 100%;
 display: block;
}

dl.info dt {
 width: 100%;
 margin: 0;
}

dl.info dd {
 width: 100%;
}

}

/*--------------------------------------------------*/
@media all and (max-width: 680px){

body {
 padding: 1em;
}

.sp {
 display: block;
}

.main {
 height: calc( 100vh - 2em );
}

.main .inner {
 padding: 20px;
}

.inner .time {
 padding: 10px;
}

.main .inner h1 {
 font-size: 22px;
 margin: 0 0 10px;
}

.main .inner img.logo {
 width: 260px;
 height: auto;
}

.inner .time dl {
 font-size: 18px;
}

dl.info {
 font-size: 16px;
}

dl.info dt {
 font-weight: bold;
}

.inner .time {
font-size: 16px;
margin: 0 0 10px;
}

.main .inner img.line {
 width: 160px;
 height: auto;
}


}