@charset "UTF-8";
/* CSS Document */

a:link{
	color:inherit;
	text-decoration:none;
}

a:visited{
	color:inherit;
	text-decoration:none;
}

span{
	display:inline-block;
}


html {
	height: 100%;
	overflow-y:scroll;
	font-size:62.5%;
}

body {
	font-family:-apple-system,'BlinkMacSystemFont','Segoe UI','Avenir','Helvetica Neue','Helvetica','Arial',"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	line-height:1.5em;
	height: 100%;
	min-height:100vh;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction:column;
	-ms-flex-direction:column;
	flex-direction:column;
	color:#333;
	font-size:1.5em;
	background-image:url(../campaign/img/bg.jpg);
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	background-attachment:fixed;
}

header,footer{
	-ms-flex:0 0 auto;
	flex:0 0 auto;
}

#wrap{
	-ms-flex:1 0 auto;
	flex: 1 0 auto;
}

img {
	max-width:100%;
	height:auto;
}
 
.clearfix {
	min-height: 1px;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.stem{
	max-width:1200px;
	margin:0 auto;
	padding:8px;
	box-sizing:border-box;
}

#container01 .stem{
	padding-top:24px;
}

a.overwhite{
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all  0.2s ease;
}

a.overwhite:hover{
    cursor:pointer;
    filter: alpha(opacity=60);        
    -ms-filter: "alpha(opacity=60)"; 
    -moz-opacity:0.6;                
    -khtml-opacity: 0.6;        
    opacity:0.6;
    zoom:1;
}

/*
#wrap {
	padding-bottom:98px;
}
*/

/*ウェブピクセルバージョン*/

.inner {
	max-width:1200px;
    margin: 0 auto;
	padding:8px;
	box-sizing:border-box;
}

.inner:after {
    content: "";
    clear: both;
    display: block;
}
 
/* header */
#top-head {
	position: absolute;
	width: 100%;
	margin:0 auto;
	padding:0;
	line-height: 1em;
	height:auto;
	background-color:#EEB;
	z-index:50;
}

#top-head a,
#top-head {
    color: #000;
    text-decoration: none;
}

#top-head .inner {
    position: relative;
}

#top-head .easy_logo {
    float: left;
    font-size: 36px;
}

#global-nav ul {
    list-style: none;
    position: absolute;
    right: 0;
    top: 50%;
	transform: translateY(-50%);
	display:table;
}

#global-nav ul li {
	display:table-cell;
}

#global-nav ul li a {
    padding: 0 24px ;
	background-color:#EEB;
}
 
/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 0px;
    height: 64px;
    background-color:#EEB;
	transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}

#top-head.fixed .easy_logo {
    font-size: 24px;
    color: #000;
}

#top-head.fixed #global-nav ul li a {
    color: #000;
    padding: 0 24px;
}
 
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}

#nav-toggle div {
    position: relative;
}

#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background-color:#000;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
    top: 0;
}

#nav-toggle span:nth-child(2) {
    top: 11px;
}

#nav-toggle span:nth-child(3) {
    top: 22px;
}

#indiv_header_image{
	height:340px;
	background-color:#999;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	color:#FFF;
	position:relative;
}

#bread_crumbs{
	background-color:#000;
	color:#FFF;
}

#bread_crumbs_ct{
	max-width:1200px;
	padding:12px;
	box-sizing:border-box;
	margin:0 auto;
	font-size:0.75em;
}

#bread_crumbs_ct ol li{
	display:inline-block;
}

.bc_box li + li::before{
	display:inline-block;
	content:'\003e';
	margin:0 0.75em;
}

h1{
	text-align:center;
	background-color:#066;
	color:#FFF;
	padding-top:8px;
	padding-bottom:8px;
}

h1:first-line{
	font-size:2em;
	line-height:1.5em;
	font-weight:bold;
}

h2{
	font-size:1.5em;
	font-weight:bold;
	border-bottom:2px solid #066;
	padding-bottom:0.25em;
	margin-bottom:0.75em;
}

footer{
	width:100%;
	background-color:#066;
	color:#FFF;
}

#footer_upper{
	overflow:hidden;
}

#footer_upper_left{
}

#footer_upper ul{
	display:flex;
	justify-content:space-between;
	float:right;
	width:50%;
	margin:0 auto;
}

#footer_upper ul li{
	display:inline-block;
	padding:0 0 0 12px;
	position:relative;
}

.ft_arrow {
    content: '';
    width: 6px;
    height: 6px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 45%;
    left: -5%;
}	

#copylight{
	background-color:#000;
	color:#DDD;
	text-align:center;
}

#copylight .stem{
	padding:16px;
}

#copylight_container{
	max-width:1200px;
	margin:0 auto;
	padding:0 16px;
}

#page_top{
    position:fixed;
    right:20px;
    bottom:20px;
    text-align:center;
}

#page_top img{
	vertical-align:bottom;
}

#page_top img:hover{
    cursor:pointer;
    filter: alpha(opacity=60);        /* ie lt 8 */
    -ms-filter: "alpha(opacity=60)";  /* ie 8 */
    -moz-opacity:0.6;                 /* FF lt 1.5, Netscape */
    -khtml-opacity: 0.6;              /* Safari 1.x */
    opacity:0.6;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

#page_top a{
}


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

html{
}

/*
body {
	background-image:url(../campaign/img/bg_sp.jpg);
	background-position:center top;
	background-size:100%;
}
*/
body::before {
  background:url('../campaign/img/bg_sp.jpg') no-repeat left top;
  background-size: 100% auto;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-bottom: 108px;
  content: "";
  z-index: -1;
}   

#wrap {
}

header{
	height:40vw;
}

#top-head {
	top: 0;
	position: fixed;
	margin-top: 0;
	background-color:#FDD;
}

#top-head,
.inner {
	width: 100%;
	padding:0px;
	font-size:0.75em;
}

/* Fixed reset */
#top-head.fixed {
	padding-top: 0;
}

#mobile-head {
	width: 100%;
	height: 64px;
	z-index:999;
	top:0;
	position: relative;
	background-color:#EEB;
}

#top-head.fixed .easy_logo,
#top-head .easy_logo {
	position: absolute;
	left: 50%;
	top: 8px;
	margin-left:-24px;
	color: #000;
	font-size: 26px;
	max-width:48px;
}

nav{
	vertical-align:bottom;
}

#global-nav {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -500px;
	width: 100%;
	text-align: center;
	padding-top:8px;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	z-index:-200;
	display: block;
}

#global-nav ul {
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
	transform: translateY(30%);
	display: inline;
	z-index:-50;
	margin:0;
}

#global-nav ul li {
	float: none;
	position: static;
	display:block;
	margin:0;
	background-color:#EEB;
}

#top-head #global-nav ul li a,
#top-head.fixed #global-nav ul li a {
	width: 100%;
	display: block;
	color: #000;
	padding: 16px 0;
	font-size:1.75em;
	background-color:#EEB;
}

#nav-toggle {
	display: block;
	margin-top:4px;
}
/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* #global-nav スライドアニメーション */
.open #global-nav {
	/* #global-nav top + #mobile-head height */
	-moz-transform: translateY(556px);
	-webkit-transform: translateY(556px);
	transform: translateY(556px);
}

#indiv_header_image{
	margin-top:64px;
	height:20vw;
}

h1:first-line{
	font-size:1.75em;
}

#footer_upper_left{
	text-align:center;
}

#footer_upper ul{
	float:none;
	width:100%;
	margin-bottom:8px;
	font-size:0.75em;
}

}

