@charset "utf-8";

/*===============================================
●画面の横幅が769px以上
===============================================*/
@media screen and (min-width : 769px ){
#pc------------------------------------------- {
}
header {
    background-image: url("/assets/images/theme/images/index/gradation.png");
    height: 108px;
    background-repeat: repeat-x;
}
 .headerColorScroll {
     background-image: none;
     height: auto;
 }
body {
    overflow-x: hidden;
}
.video_wrapper {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}
.video_wrapper > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
}
.video_wrapper {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
/*.video_wrapper::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0,0,0,0.1);
  background-image: radial-gradient(#111 30%, transparent 31%), radial-gradient(#111 30%, transparent 31%);
  background-size: 4px 4px;
  background-position: 0 0, 2px 2px;
}*/
.snsbk p {
    margin-top: 50px;
    font-size: 16px;
    margin-bottom: 8px;
}
.snsbk {
    width: 225px;
    margin-left: auto;
    margin-right: auto;
}
.snsbk ul {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    width: 225px;
}
.snsbk ul.sp {
    display: none;
}
#news {
    padding-top: 50px;
    width: 1024px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}
#news ul li {
    border-top: 1px solid #b4b4b4;
    font-size: 18px;
    padding-top: 20px;
    padding-bottom: 20px;
    position: relative;
}
#news ul li:last-child {
    border-bottom: 1px solid #b4b4b4;
}
#news ul li time {
    transition: 0.5s ;
    margin-right: 40px;
    padding-left: 10px;
}
#news ul li a {
    color: #5A554B;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
}
#news ul li a:hover {
    text-decoration: none;
}
#news ul li:hover time,
#news ul li:hover
{
    color: #FF9B00;
    transition: 0.5s ;
}
#news p {
    text-align: right;
    margin-top: 20px;
}
#about {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    align-items: center;
    width: 1024px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    margin-top: 80px;
}
#about div {
    width: 480px;
}
#about div p {
    font-size: 15px;
    margin-top: 30px;
    line-height: 2em;
    width: 470px;
}
#about div p+p {
    text-align: right;
}
#about figure {
    position: relative;
    right: -35px;
}
#bland {
    margin-top: 30px;
}
#bland .flex {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    width: 1024px;
    flex-direction: row-reverse;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
}
#bland .flex div:first-child {
    width: 480px;
    margin-right: 0px;
}
#bland .flex div p {
    font-size: 15px;
    margin-top: 30px;
    line-height: 2em;
    left: -64px;
    width: 480px;
    text-align: left;
}
#bland .flex div p+p {
    text-align: right;
}
#bland .flex div+div {
    position: relative;
    left: 29px;
    width: 720px;
}
#bland .flex div+div p {
    width: 720px;
}
#bland .flex2 {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    width: 1024px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    margin-bottom: 10px;
}
#bland .flex3 {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
    width: 80%;
    min-width: 1024px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
}
#bland .flex3 div {
    width: 49.7%!important;
    margin-bottom: 10px;
}
#outline {
    margin-top: 80px;
}
#outline .flex {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
    width: 80%;
    min-width: 1024px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
    margin-top: 40px;
}
#outline .flex div {
    width: 49.7%!important;
    margin-bottom: 10px;
}
#outline .flex2 {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
    width: 80%;
    min-width: 1024px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
}
#outline .flex2 div {
    width: 33%!important;
    margin-bottom: 10px;
}
#enter {
    margin-top: 80px;
}
#enter .flex {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
    width: 80%;
    min-width: 1024px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
    margin-top: 40px;
}
#enter .flex div {
    width: 49.7%!important;
    margin-bottom: 10px;
}
#bland .bannerlink.link02,
#bland .bannerlink.link03,
#bland .bannerlink.link04,
#bland .bannerlink.link05
{
    width: 252px;
    height: 252px;
}
#bland .bannerlink.link06,
#bland .bannerlink.link07
{
    width: 100%;
    height: 550px;
}
#bland .bannerlink.link08,
#bland .bannerlink.link09
{
    width: 100%;
    height: 300px;
}
#bland .bannerlink.link02:after {
    background-image: url("/assets/images/common/images_new/index/brand_banner02.png");
}
#bland .bannerlink.link03:after {
    background-image: url("/assets/images/common/images_new/index/brand_banner03.png");
}
#bland .bannerlink.link04:after {
    background-image: url("/assets/images/common/images_new/index/brand_banner04.png");
}
#bland .bannerlink.link05:after {
    background-image: url("/assets/images/common/images_new/index/brand_banner05.png");
}
#bland .bannerlink.link06:after {
    background-image: url("/assets/images/common/images_new/index/brand_banner06.png");
}
#bland .bannerlink.link07:after {
    background-image: url("/assets/images/common/images_new/index/brand_banner07.png");
}
#bland .bannerlink.link08:after {
    background-image: url("/assets/images/theme/images_new/index/brand_banner08.png");
}
#bland .bannerlink.link09:after {
    background-image: url("/assets/images/theme/images_new/index/brand_banner09.png");
}
#bland .flex2.flex-lpkousyu p a img {
    width: 1024px;
}
#outline .bannerlink.link01,
#outline .bannerlink.link02
{
    width: 100%;
    height: 450px;
}
#outline .bannerlink.link03,
#outline .bannerlink.link04,
#outline .bannerlink.link05
{
    width: 100%;
    height: 325px;
}
#outline .bannerlink.link01:after {
    background-image: url("/assets/images/common/images_new/index/outline_banner01.png");
}
#outline .bannerlink.link02:after {
    background-image: url("/assets/images/common/images_new/index/outline_banner02.png");
}
#outline .bannerlink.link03:after {
    background-image: url("/assets/images/common/images_new/index/outline_banner03.png");
}
#outline .bannerlink.link04:after {
    background-image: url("/assets/images/common/images_new/index/outline_banner04.png");
}
#outline .bannerlink.link05:after {
    background-image: url("/assets/images/common/images_new/index/outline_banner05.png");
}
#enter .bannerlink.link01,
#enter .bannerlink.link02
{
    width: 100%;
    height: 450px;
}
#enter .bannerlink.link01:after {
    background-image: url("/assets/images/common/images_new/index/enter_banner01.png");
}
#enter .bannerlink.link02:after {
    background-image: url("/assets/images/common/images_new/index/enter_banner02.png");
}
#banners {
    width: 1024px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 80px;
    position: relative;
    padding-bottom: 70px;
}
#banners ul {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    margin-top: 20px;
}
#banners ul+p {
    position: absolute;
    right: -30px;
    bottom: 70px;
}

.banner-middle {
    display: flex;
}

.banner-middle > a {
    display: block;
}

.banner-middle > a:not(:last-child) {
    margin: 0 6px 0 0;
}
}



/*===============================================
●画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
	
/*===============================================
●sp-tablet
===============================================*/
#sptablet------------------------------------------- {
}
.video_wrapper > video {
    width: 100%;
    height: auto;
    margin-top: 13%;
}
/*.video_wrapper {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}
.video_wrapper > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    height: 100%;
}
.video_wrapper {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}*/
/*.video_wrapper::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0,0,0,0.1);
  background-image: radial-gradient(#111 30%, transparent 31%), radial-gradient(#111 30%, transparent 31%);
  background-size: 4px 4px;
  background-position: 0 0, 2px 2px;
}*/
.snsbk {
    margin-top: 5%;
}
.snsbk p {
    font-size: 3.5vw;
    margin-bottom: 5px;
}
.snsbk ul.pc {
    display: none;
}
.snsbk ul {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    margin-left: 5%;
    margin-right: 5%;
}
.snsbk ul li {
    width: 32%;
}
#news {
    padding-top: 10%;
    margin-left: 5%;
    margin-right: 5%;
    text-align: left;
}
#news ul li {
    border-top: 1px solid #b4b4b4;
    font-size: 14px;
    padding-top: 3%;
    padding-bottom: 3%;
    position: relative;
    padding-left: 5px;
    padding-right: 5px;
}
#news ul li:last-child {
    border-bottom: 1px solid #b4b4b4;
}
#news ul li time {
    transition: 0.5s ;
    margin-right: 5%;
    display: block;
}
#news ul li a {
    color: #5A554B;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
}
#news ul li a:hover {
    text-decoration: none;
}
#news ul li:hover time,
#news ul li:hover
{
    color: #FF9B00;
    transition: 0.5s ;
}
#news p {
    text-align: right;
    margin-top: 20px;
}
#news p img {
    width: 40%;
}
#about {
    text-align: left;
    margin-top: 10%;
}
#about div {
    margin-left: 5%;
    margin-right: 5%;
}
#about div h2 {
    width: 80%;
}
#about div p {
    font-size: 12px;
    margin-top: 7%;
    line-height: 2em;
}
#about div p+p {
    text-align: right;
    margin-top: 0px;
}
#about div p+p img {
    width: 40%;
}
#about figure {
    margin-top: 8%;
}
#bland h2 {
    width: 80%;
}
#bland {
    margin-top: 30px;
}
#bland .flex div:first-child {
    margin-left: 5%;
    margin-right: 5%;
}
#bland .flex div p {
    font-size: 12px;
    margin-top: 7%;
    line-height: 2em;
    text-align: left;
}
#bland .flex div p+p img {
    width: 55%;
}
#bland .flex div+div {
    margin: 0px;
}
#bland .flex div+div p {
    margin: 0px;
}
#bland .flex2 {
    margin-left: auto;
    margin-right: auto;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
}
#bland .flex2 p {
    width: 50%;
    margin: 0px;
}

#bland .flex2.flex-myenecle,
#bland .flex2.flex-lpkousyu {
    width: 80%;
    margin-bottom: 15px;
}

#bland .flex2.flex-myenecle p,
#bland .flex2.flex-lpkousyu p {
    width: 100%;
    margin: 0 auto;
}

#bland .flex3 {
}
#bland .flex3 div {
    margin: 0px;
}
#outline {
    margin-top: 10%;
}
#outline .flex {
    margin-top: 8%;
}
#outline .flex div {
}
#outline .flex2 {
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
}
#outline .flex2 div {
}
#enter {
    margin-top: 10%;
}
#enter .flex {
    margin-left: auto;
    margin-right: auto;
    flex-shrink: 0;
    margin-top: 8%;
}
#enter .flex div {
}

#banners {
    margin-left: 10%;
    margin-right: 10%;
    margin-top: 10%;
    position: relative;
    padding-bottom: 10%;
}
#banners ul {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
    margin-top: 5%;
}
#banners ul li {
    width: 49.6%;
    margin-bottom: 0.5%;
}
#banners ul+p {
    position: absolute;
    right: -25px;
    bottom: 40px;
}
#banners ul+p img {
    width: 65%;
}

.banner-middle {
    display: block;
}

.banner-middle > a {
    display: block;
}

.banner-middle > a:not(:last-child) {
    margin: 0  0 0.5% 0;
}
}



/*===============================================
●画面の横幅が400pxまで
===============================================*/
@media screen and (max-width:400px){
/*===============================================
●sp400
===============================================*/
#sp400------------------------------------------- {
}
}



/*===============================================
●画面の横幅が320pxまで
===============================================*/
@media screen and (max-width:320px){
/*===============================================
●sp320
===============================================*/
#sp320------------------------------------------- {
}
}



/*===============================================
●画面の横幅が481pxから768pxまで
===============================================*/
@media screen and (min-width:481px) and (max-width:768px) {
/*===============================================
●tablet
===============================================*/
#tab------------------------------------------- {
}
}



/*===============================================
●画面の横幅が481pxから768pxまで
===============================================*/
@media screen and (min-width:769px) and (max-width:1366px) {
/*===============================================
●macbook
===============================================*/
#macbook------------------------------------------- {
}
.video_wrapper > video {
    height: 720px;
    width: auto;
}
}