@charset "utf-8";




/* -------（リセットCSS）-----------------------------------------------*/ 


body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,form,fieldset,input,textarea,p,blockquote,th,td,header, section, article, footer, article, aside, time ,nav,a,figure{
margin:0;
padding:0;
}

fieldset,img{
	border:0;
	height:auto;
}
address,caption,cite,code,dfn,em,th,var{
font-style:normal;
font-weight:normal;
}
ol,ul{
list-style:none;
}
caption,th{
text-align:left;
}
h1,h2,h3,h4,h5,h6{
font-size:100%;
font-weight:normal;
}
q:before,q:after{
content:'';
}
abbr,acronym{
border:0;
}
p{
text-justify:inter-ideograph;
margin: 0 0 1em 0;
}

header, section, article, footer, article, aside, time ,nav { display: block; }

figure{ line-height:0;}
@charset "utf-8";
*{ box-sizing: border-box;}

/* =base
------------------------------------------------------------------------------------------*/
body {
	text-align: center;
	color: #333;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, sans-serif;
    font-weight: 500;
	font-size: 15px;
	line-height: 1.5em;
    font-feature-settings : "palt";
	background-color: #fff;
	height: 100%;
}
html {overflow-y:scroll; height:100%;}

a {color: #000;text-decoration: none; outline:none; transition: 0.2s ease;}
a:hover {color: #333; opacity: 0.8; transition: 0.2s ease;}
a.active{color: #333;}
a:hover img{opacity:0.8;filter: alpha(opacity=90);}

.pc_only{ display:block !important;}
.sp_only{ display:none !important;}

.pc_only2{ display:block !important;}
.sp_only2{ display:none !important;}


#container{ position:relative; z-index:999;}

@media only screen and (max-width: 1100px){
.pc_only2{ display:none !important;}
.sp_only2{ display:block !important;}
}


@media only screen and (max-width: 768px){
.pc_only{ display:none !important;}
.sp_only{ display:block !important;}
}


.grid4{ position:fixed; left:0; bottom:0; width:100%; height:100vh; z-index:-1; }
.grid4 div{height:100vh; border-right:1px solid #e7e7e7; position:absolute;}
.grid4 .grida{ left:25%; bottom:0;}
.grid4 .gridb{ left:calc(50% - 1px); top:0;}
.grid4 .gridc{ left:75%; bottom:0;}


/* =fade
------------------------------------------------------------------------------------------*/
/*#js_fade2 {position : fixed;top : 0; left: 0;width: 100%; height : 100%;background-color: #000;background-image : url( ../images/loader.jpg );background-repeat : no-repeat; background-size:500px; background-position : 50% 50%; z-index:1000;}*/

#tubular-container{ opacity:0.4;}
#videoContainer,
#bgOverlayContainer{ display:none;}

@media only screen and (max-width: 768px){
/*#js_fade2 { background-size:300px;}*/
}

/********************** header *******************************/
header { text-align:left; position:fixed !important; z-index:50; width:100%; top:0;}

header .head_logo{float: left;margin: 30px 0 0 30px;width: 240px;line-height: 0;}
header .head_logo img{ width: 100%;}
.toggle_nav{ float:right; margin-right: 20px;}

header.fade{ overflow:inherit !important;}

.nav ul{}
.nav li {display:inline-block;float: left;padding:0;margin: 0 2px;}
.nav li a{display:block;line-height: 6.3em;font-size:14px;font-weight:bold;letter-spacing:0.04em;color:#333;text-align:center;transition: all 0.3s ease;padding: 0 13px;position: relative;}
.nav li a:after{content:"";position: absolute;width: 0;height: 2px;background-color: #e95098;right: 0;bottom: 1.6em; transition: 0.2s ease;}
.nav li a.active:after,
.nav li a:hover:after{width: 100%; right: inherit; left: 0; transition: 0.2s ease;}


@media only screen and (max-width: 900px){
header{ padding:0; height: 42px;}
header .head_logo{ width: 120px; margin: 16px 0 0 14px;}

	
.global{
 width:100%;
 position:fixed;
 z-index:10;
 top:0;
 left:0;
 opacity: 0;
 overflow-y: hidden;
 visibility: hidden;
 padding-top:0;
 height:0;
 background-color:rgba(255,255,255,0.7);
 box-sizing: border-box;
 -webkit-transition: 1s ease;
 -moz-transition: 0.5s ease;
 -o-transition: 0.5s ease;
 -ms-transition: 0.5s ease;
 transition:0.5s ease;
 }
.global li{width: 100%;display:inherit;background-color:#fff;margin: 0;}
.nav-active .global{height:100vh;padding-top:42px;overflow: scroll;visibility: visible;opacity: 1;}


.toggle_nav{ -webkit-transition: 0.2s ease;  -moz-transition: 0.2s ease;  -o-transition: 0.2s ease;  -ms-transition: 0.2s ease;  transition: 0.2s ease;}
.nav{ margin-bottom:0; width:100%; height:inherit;}
.nav li{}
.nav li a{ width:100%; max-width:inherit; text-align:center; line-height: 1.5em; padding: 12px 0; margin-bottom: 0px;}
.nav li a.active{ background-color: #e95098; color: #fff;}
.nav li a:after{ display:none;}

ul.sns{ position: relative; left: inherit; top: inherit; transform: inherit; width: 100%; display: inline-block; text-align: center;}
ul.sns li{ display: inline-block; width: 13%; background-color: #000; border: none !important; float: none;}
ul.sns li a{ padding: 14px 12px 12px; line-height: 1.5em;}

/* Default navigation icon */
.nav_trigger { display: block; position: fixed; width: 30px; height: 25px; right:3vw; top: 6px; z-index: 200;}
.nav-active .nav_trigger { opacity: 0.7;}
.nav_icon {display: inline-block;position: relative;width: 30px;height: 3px;background-color: #333;-webkit-transition-property: background-color, -webkit-transform;transition-property: background-color, -webkit-transform;transition-property: background-color, transform;transition-property: background-color, transform, -webkit-transform;-webkit-transition-duration: 300ms;transition-duration: 300ms;}
.nav_icon:before,
.nav_icon:after {content: '';display: block;width: 30px;height: 3px;position: absolute;background: #333;-webkit-transition-property: margin, -webkit-transform;transition-property: margin, -webkit-transform;transition-property: margin, transform;transition-property: margin, transform, -webkit-transform;-webkit-transition-duration: 300ms;transition-duration: 300ms;}
.nav_icon:before { margin-top: -8px;}
.nav_icon:after { margin-top: 8px;}
.nav-active .nav_icon { background: rgba(0, 0, 0, 0);}
.nav-active .nav_icon:before { margin-top: 0; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.nav-active .nav_icon:after { margin-top: 0; -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}

.nav li a:hover span.btm,
.nav li a.active span.btm{ display:none;}
.nav li a span.jp{ font-size:3vw;}

}


/* =foot
-----------------------------------------------------------------------------------------*/
.foot_box_outer{ background-color: #fff; border-top: 1px solid #e7e7e7; padding: 40px 0;}
.foot_box{display: flex;text-align: left;align-items: flex-start;}
.foot_box figure{width: 25%;align-self: center;}
.foot_box figure img{ width: 60%;}
.foot_box nav{width: 25%;}
.foot_box nav li{ margin-bottom: 8px;}
.foot_box nav li:last-child{ margin-bottom: 0;}
.foot_box nav li a{ font-size: 14px; font-weight: bold;}

footer{background-color: #fff;padding: 30px 0 90px;border-top: 1px solid #e7e7e7;}
footer ul{ margin-bottom: 46px;}
footer li{ display: inline-block; font-size: 14px; line-height: 1.5em; margin-right: 20px;}
footer li:last-child{ margin-right: 0;}
footer .txt{}
footer .foot_copy{ font-size: 12px; font-weight: bold;}


@media only screen and (max-width: 768px){
.foot_box_outer{ padding: 20px 0;}
.foot_box figure{ width: 33%;}
.foot_box figure img{ width: 70%;}
.foot_box nav{ width: 33%;}
.foot_box nav li{ margin-bottom: 6px;}
.foot_box nav li a{ font-size: 11px; line-height: 1em;}

footer{ padding:12px 12px 60px;}
footer ul{ margin-bottom: 6px;}
footer li{ width: 50%; float: left; margin-right: 0; margin-bottom: 14px; font-size: 12px;}
footer .txt{ font-size: 12px; line-height: 1.5em;}
footer .foot_copy{ font-size: 11px;}
}

/* =bcn
-----------------------------------------------------------------------------------------*/
.breadcrumb-area{position: relative;width: 100%;background-color: #fff;border-top: 1px solid #e7e7e7;margin-top: 80px;padding: 10px 0;}
.breadcrumb{font-size: 11px;line-height: 1.5em;z-index: 10;color: #e95098;font-weight: bold;max-width: 1100px;margin: 0 auto;width: 94%;text-align: left;}
.breadcrumb span.and{padding:0 14px; font-size: 10px; font-weight: normal; color: #cbcbcb;}
.breadcrumb a{color: #cbcbcb;font-weight:bold;position:relative;margin-right: 26px;}
.breadcrumb a:after{content: "\025b6";position: absolute;font-size: 10px;font-weight: normal;color: #cbcbcb;right: -18px;}
.breadcrumb br{ display: none;}
.breadcrumb .home{position: relative;top: 0;}
.breadcrumb .home img{ transition: 0.3s ease;}
.breadcrumb .home:hover img{ transform: scale(1.1); opacity: 0.9; transition: 0.3s ease;}


@media only screen and (max-width: 768px){
.breadcrumb-area{ margin-top: 20px; padding: 12px 0;}
.breadcrumb{ white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.breadcrumb span.and{ padding: 0 7px; font-family: "Yu Gothic";}
}


/* =ページトップ
------------------------------------------------------------------------------------------*/
.page_top{text-align: right;margin: 0;  width:80px;  text-align:center;position:fixed; right:30px; bottom:40px;  z-index:10}
.page_top a{background-color:#000; display:block;border-radius: 50%;height:80px; width:80px; line-height:80px; color:#fff; font-family: 'Oswald';font-size:12px;}
.page_top a:hover{background-color:#cc0000; text-decoration:none;}


@media only screen and (max-width: 768px){
.page_top{ display:none;}
}


/* =見出し
------------------------------------------------------------------------------------------*/
h1{margin:0;}
h2{margin:0;}
h3{margin:0;}
h4{margin:0;}
h5{margin:0;}

/* =clearfix
------------------------------------------------------------------------------------------*/
.clearfix:after{clear:both;display:block;height:0;line-height:0;visibility:hidden;font-size:0.1em;content:".";}


/* cmn_fix_bnr
------------------------------------------------------ */
.cmn_fix_bnr{position: fixed;left: 0;bottom: 0;display: block;width: 100%;background-color: #e2e2e2e3;color: #f00;font-size: 16px;font-weight: bold;line-height: 1em;letter-spacing: 0.05em;padding: 22px;}
.cmn_fix_bnr:hover{opacity: 0.8; color: #f00;}

@media only screen and (max-width: 768px){
    .cmn_fix_bnr{font-size: 14px;padding: 16px 0;}
}





/**
 * Swiper 5.3.8
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: April 24, 2020
 */

@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, 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") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next';
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}
.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}
.swiper-button-lock {
  display: none;
}
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}
.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}
.swiper-pagination-lock {
  display: none;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}
.swiper-container-flip {
  overflow: visible;
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@charset "utf-8";


/********************** 共通 *******************************/
main{ overflow: hidden;}
main img{ width:100%;}

main.in{ margin-top: 120px;}

.container{ max-width:1200px; width: 94%; margin: 0 auto;}

.more_btn{display: block;font-size: 14px;font-weight: bold;line-height: 1.5em;max-width: 240px;width: 94%;margin: 30px 0 42px auto;padding: 5px 0;overflow:hidden;position:relative;border: 1px solid #333;}
.more_btn:hover{ background-color: #333; color: #fff;}


.page_tit{ font-family: futura-pt, sans-serif; font-size: 60px; font-weight: 500; line-height: 1.2em; margin-bottom: 60px;}
.page_tit span{ font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, sans-serif; display: block; font-size: 0.24em; font-weight: 700; line-height: 1em;}


@media only screen and (max-width: 768px){
	main.in{ margin-top: 70px;}
	.more_btn{ font-size: 12px; margin: 16px auto 0; max-width: inherit; width: 60%;}
	.page_tit{ font-size: 40px; margin-bottom: 30px;}
}


/* NAV TAG */
#nav_tag{ margin-bottom: 30px;}
#nav_tag ul{ overflow:hidden;}
#nav_tag li{margin-bottom: 4px;float: left;width: 24.5%;margin-right: 0.66%; transition: 0.2s ease;}
#nav_tag li:nth-child(4n){ margin-right: 0;}
#nav_tag li a{display: block;font-family: futura-pt, sans-serif;width: 100%;font-size: 16px;font-weight: 500;line-height: 1em;vertical-align: middle;padding: 10px 0;border: 1px solid #aaa; transition: 0.2s ease;}
#nav_tag li a:hover{ background-color: #333; border: 1px solid #333; color:#fff;}

#nav_tag li.current-cat{ transition: 0.2s ease;}
#nav_tag li.current-cat a{ background-color: #333; border: 1px solid #333; color: #fff; transition: 0.2s ease;}

@media only screen and (max-width: 768px){
#nav_tag{ margin-bottom: 12px;}
#nav_tag li{ width: 49.5%; margin-right: 1%; margin-bottom: 1%;}
#nav_tag li:nth-child(2n){ margin-right: 0;}
#nav_tag li a{ width: 100%; font-size: 11px; padding: 6px 0;}
}


/* CONTENTS PARTS */
.contents{ overflow:hidden;}
.contents li{margin-bottom: 12px;}
.contents li dl{ width: 100%; text-align: left; padding: 18px 3%; position: relative;}
.contents li dt{font-size: 16px;font-weight: bold;letter-spacing: 0.05em;line-height: 1.5em;margin-bottom: 6px;}
.contents li dt span{display: inline-block;font-size: 12px;font-weight: 500;line-height: 1em;vertical-align: middle;padding: 5px 10px 3px;margin-right: 14px;position: relative;top: -2px;}
.contents li dt span.new{ background-color:#709ac1; color:#fff;}
.contents li dt span.tag{background-color: #e95098;color:#fff;}
.contents li dd{ font-size: 16px; font-weight: bold; line-height: 1.5em;}
.contents li dd strong{ display: block; margin-bottom: 4px; font-size: 18px; line-height: 1.5em;}
.contents li a{ display:block;}
.contents li a:hover{background-color: rgba(0,0,0, 0.03);}
.contents li a:hover dl:after{border-color: #ccc;border-top: 8px solid transparent;border-bottom: 8px solid transparent;}
.contents li dl:after{ content: ""; position: absolute; width: 0; height: 0; border-left: 8px solid transparent; border-top: 8px solid transparent; border-bottom: 8px solid transparent; right: 1.6%; top: calc(50% - 8px);}

@media only screen and (max-width: 768px){
.contents li{ margin-bottom: 0px;}
.contents li dl{ display: block; padding: 14px 20px 14px 12px;}
.contents li dt{ display: block; margin-bottom: 8px; font-size: 14px;}
.contents li dt span.tag{ font-size: 11px;}
.contents li dd{ display: block; padding-left: 0; font-size: 14px; line-height: 1.5em;}
.contents li dd strong{ font-size: 16px;}
.contents li dl:after{ border-left: 6px solid #ccc; border-top: 6px solid transparent; border-bottom: 6px solid transparent; top: calc(50% - 6px);}
}


/* SINGLE PARTS */
.single{text-align:left;overflow:hidden;position:relative; background-color: rgba(255,255,255,0.7); padding: 2em;}
.single .tit{text-align: left;font-size: 20px;font-weight: bold;line-height: 1.5;margin-bottom: 16px;opacity:1;}
.single .date{padding-bottom: 14px;border-bottom: 1px solid #ccc;font-size: 16px;font-weight: bold;letter-spacing: 0.05em;line-height: 1.5em;margin-bottom: 14px;}
.single .date span{display: inline-block;font-size: 12px;font-weight: 500;line-height: 1em;vertical-align: middle;padding: 3px 10px;margin-right: 14px;position: relative;top: -2px;}
.single .date span.new{ background-color:#709ac1; color:#fff;}
.single .date span.tag{background-color: #e95098;color:#fff;font-size: 11px;top: -1px;}
.single .date span.tag a{ color:#fff;}
.single .date span.tag a:hover{ color: #537595;}
.single .txt_box{ border-bottom: 1px solid #ccc; padding-bottom: 30px;}
.single .txt_box p{ font-size: 16px; line-height: 1.8em; margin-bottom: 2em;}
.single .txt_box a{ color:#537595; text-decoration:underline; display: block; margin-bottom:12px; font-weight: bold;}
.single .txt_box a:hover{ color:#6c92b5;}
.single .txt_box img{ max-width:100%; width:auto; height:auto; display: block; margin-bottom:12px;}


@media only screen and (max-width: 768px){
.single{ padding: 12px;}
.single .tit{font-size: 16px;line-height: 1.4em;margin-bottom: 8px;}
.single .date{margin-bottom: 14px;padding-bottom: 10px;font-size: 12px;}
.single .txt_box{ padding-bottom: 12px;}
.single .txt_box p{font-size: 14px;line-height: 1.6em;}
.single .txt_box a{ font-size: 16px;}
}


/* PAGINATION */
#pagination{position: relative; overflow: hidden; margin-bottom:2vw; padding-top:1vw; display:table; margin:20px auto 0px;}
#pagination .page-numbers{ margin-right: 8px; text-decoration: none; height:40px; line-height: 40px; font-size: 14px; font-weight: bold; width:40px; float:left; padding: 0 16px !important; display:table-cell !important; background-color: #fff; color: #000;}
#pagination .page-numbers.current{color: #fff; background: #537595;}
#pagination .page-numbers.dots{ padding:0 12px !important;}
#pagination .next.page-numbers,
#pagination .prev.page-numbers{ width:75px;}

@media only screen and (max-width: 768px){
#pagination .page-numbers{padding: 0px 12px !important; margin-right:5px; height:35px; line-height:35px; width:35px;}
#pagination .next.page-numbers,
#pagination .prev.page-numbers{ width:32px;}
#pagination .next.page-numbers{padding-left: 12px !important;}
#pagination .page-numbers.dots{ padding:0 9px !important;}
}




/********************** TOP *******************************/
#top{margin-top: 86px;margin-bottom:50px;/* background-color: #f0f0f0; */position: relative;overflow: hidden;padding: 40px 0;}
#top .top_slide{}
#top .top_slide li{ width: 700px !important;}
#top .top_bg{ background-color: #f0f0f0; width: 96%; height: 100%; position: absolute; top: 0; left: 0;}

.top_main{ padding: 86px 0 5vw; display: flex; flex-wrap:wrap;}
.top_main .top_a{ width: 20%; line-height: 0;}

.top_lead{ margin: 0 auto 120px; text-align: left;}
.top_lead .tit{ width: 53%; margin: 0 auto 50px;line-height: 0;}
.top_lead p{ font-size: 20px; font-weight: bold; line-height: 1.8em; margin-bottom: 1.5em;}

.presents{ margin-bottom: 120px;}
.presents .tit{ font-family: futura-pt, sans-serif; font-weight: 500; font-size: 30px; line-height: 1em; color: #000; margin-bottom: 20px;}
.presents .tit span{ display: block; font-size: 0.4em; font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, sans-serif; font-weight: bold;}
.presents .swiper-container{ overflow: inherit;}
.presents ul{}
.presents li{width: 33% !important;line-height: 0;}
.presents li a{ display: block;}
.presents li img{border-top: 1px solid #999;border-bottom: 1px solid #999;border-left: 1px solid #999;}
.presents li:last-child img{ border-right: 1px solid #999;}

#news{background-color: #f0f0f0;margin-bottom: 100px;width: 97%;position: relative;right: -3%;}
#news .container{position: relative;top: -36px;left: -2%;}
#news .tit{font-family: futura-pt, sans-serif;text-align: left;font-size: 60px;font-weight: 500;line-height: 1.2em;margin-bottom: 30px;}
#news .tit span{ display: block; font-size: 0.24em; font-weight: bold; line-height: 1em; font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, sans-serif;}

.bottom_bnr{ margin-bottom: 120px;}
.bottom_bnr ul{ font-size: 0; line-height: 0;}
.bottom_bnr li{ display: inline-block; margin: 0 12px; border: 1px solid #ccc;}
.bottom_bnr li a{ display: block;}
.bottom_bnr li img{width: 360px;}


.youtube{position:relative;width:100%; margin:0 auto; display:block;}
.youtube iframe{position:absolute;top:0;right:0;width:100%;height:100%;}
.youtube  .ro{position:absolute; display:none;top: 50%; left: 50%; margin-left: -25px; margin-top: -25px; width:50px;} 
.youtube:hover .ro{ display: inherit; transition:0.3s;}



@media only screen and (max-width: 768px){
    #top{margin-top: 42px; margin-bottom: 6vw; padding: 6vw 0;}
    #top .top_slide li{ width: 100% !important;}
    
    .top_main{ margin: 42px 0 8vw; padding: 0; justify-content: center; background-color: #000;}
    .top_main .top_a{ width: 25%; line-height: 0;}

    .top_lead{ margin: 0 auto 60px;}
    .top_lead .tit{ margin: 0 auto 6vw; width: 80%; }
    .top_lead p{ font-size: 16px; line-height: 1.7em;}

    .container.pre{ width: 60%;}
    .presents{ margin-bottom: 60px;}
    .presents .tit{ font-size: 24px; margin-bottom: 12px;}
    .presents li{ width: 100% !important;}

    #news{ margin-bottom: 40px;}
    #news .container{ top: -20px;}
    #news .tit{ font-size: 34px; margin-bottom: 12px;}

    .bottom_bnr{ margin-bottom: 40px;}
    .bottom_bnr li{ width: 65%; margin: 0 2% 2%;}
    .bottom_bnr li img{width: 100%;}
}


/********************** NEWS_IN *******************************/
#news_in{ margin-bottom: 30px;}

.paging{ padding-top: 30px; text-align: left;}
.paging a{ display: inline-block; border: 1px solid #fff; padding: 2px 12px; font-size: 14px; font-weight: bold;}
.paging a:hover{ border-color:#537595;}
.paging a.now{ color: #000; background-color: #fff;}
.paging a.now:hover{ border-color:#fff;}
.paging a.next{ padding: 2px 20px;}


/********************** ABOUT *******************************/
#about{}
#about .page_tit{}
#about .page_tit img{ width: auto;}
#about .about_lead{ text-align: left; margin-bottom: 60px;}
#about .about_lead p{ font-size: 20px; font-weight: bold; line-height: 1.8em; margin-bottom: 1.5em;}

#about .about_contents{ margin-bottom: 60px;}
#about .about_nav{margin-bottom: 60px;}
#about .about_nav li{float: left;width: 32%;margin-right: 2%;text-align: center;font-size: 14px;font-weight: bold;line-height: 1.5em;background-color: #fff;color: #333;border: 1px solid #b0b0b0;transition: 0.2s ease;}
#about .about_nav li a{ display: block;padding: 24px 0;}
#about .about_nav li.active{background-color: #333;border: 1px solid #333;color: #fff;}
#about .about_nav li:nth-child(3n){ margin-right: 0;}
#about .about_nav li:hover{background-color: #333;border: 1px solid #333;color: #fff;transition: 0.2s ease;}
#about .about_nav li:hover a{ color: #fff;}

#about .about_list{position: relative;overflow: hidden;text-align: left;}
.aboutwrap{ text-align: left; margin-bottom: 5vw;font-size: 16px; font-weight: 600; line-height: 1.8em;}
.aboutwrap.active{position: relative;opacity: 1;transition: 0.2s ease;visibility: visible;}
.aboutwrap .stit_about{ font-family: futura-pt, sans-serif; font-size: 90px; font-weight: 500; line-height: 1em; margin-bottom: 30px;}
.aboutwrap p strong{ font-size: 1.4em; line-height: 1.5em;}
.aboutwrap figure{ margin-bottom: 20px;}
.aboutwrap figure.mng_img { text-align: center;}
.aboutwrap figure.mng_img img{ width: 70%;}
.aboutwrap figure.prd_img img{ width: 100%;}
.aboutwrap figure.lbl_img img{ width: 100%;}
.aboutwrap figure img{ width: auto; max-width: 100%;}
.aboutwrap .link_btn{ display: block; text-align: center; border: 1px solid #ccc; margin-bottom: 12px; font-size: 16px; padding: 20px 0; transition: 0.2s ease;}
.aboutwrap .link_btn:last-child{ margin-bottom: 40px;}
.aboutwrap .link_btn:hover{ border: 1px solid #333; color:#fff; background-color: #333; transition: 0.2s ease;}

@media only screen and (max-width: 768px){
    #about .page_tit{ width: 70%; margin: 0 auto 20px;}
    #about .page_tit img{ width: 100%;}
    #about .about_lead{ margin-bottom: 20px;}
    #about .about_lead p{ font-size: 15px; line-height: 1.7em;}

    #about .about_contents{ margin-bottom: 20px;}
    #about .about_nav{margin-bottom: 24px;}
    #about .about_nav li{ width: 100%; float: none; font-size: 16px; margin-bottom: 4px;}

    .aboutwrap{ font-size: 15px;}
    .aboutwrap .stit_about{ font-size: 30px; margin-bottom: 12px;}
    .aboutwrap li p{ font-size: 14px; line-height: 1.6em;}
    .aboutwrap li p strong{ font-size: 1.2em;}
    .aboutwrap .link_btn{ font-size: 14px; padding: 12px 0; margin-bottom: 4px;}
	
    .aboutwrap li figure.mng_img img{ width: 100%;}
}


/********************** CONCERT *******************************/
#concert{}
#concert .lead_txt{ font-weight: bold; margin-bottom: 2em;}
#concert .link_btn{ background: #e95098; color: #fff; display: block; width: 60%; margin: 0 auto; padding:1em 0; font-size: 20px; font-weight: bold; line-height: 1.5em;}
#concert .link_btn span{ font-size: 0.6em; line-height: 1.7em; display: block;}
#concert .link_btn:hover{ opacity:0.8;}

@media only screen and (max-width: 768px){
#concert .lead_txt{ text-align: left; margin-bottom: 1.5em;}
#concert .link_btn{ width: 100%; font-size: 16px; line-height: 1.3em;}
}


/********************** ARTIST *******************************/
#artist{}
#artist .stit{ font-size: 20px; font-weight: bold; background-color: #fff; width: 100%; padding: 16px 0; border: 1px solid #ccc; margin-bottom: 40px;}
#artist .container{ max-width:1400px;}
#artist ul{ display: flex; flex-wrap: wrap; margin-bottom: 40px;}
#artist li{width: 24%;margin-bottom: 1.33%;margin-right: 1.33%;text-align: left;position: relative;transition: 0.2s ease;overflow: hidden;}
#artist li:nth-child(4n){ margin-right: 0;}
#artist li a{}
#artist li figure{ line-height: 0;position: relative;padding-top:100%;}
#artist li figure img{ position: absolute; width: auto; height: auto; max-width: 100%; max-height: 100%; top: 50%; left: 50%; transform: translate(-50%,-50%);}
#artist li p{position: absolute;background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0, 0.4), rgba(0,0,0, 0.7));left: 0;bottom: 0px;margin: 0;width: 100%;text-align: center;height: 4vw;color: #fff;font-size: 14px;font-weight: bold;line-height: 1.4em;letter-spacing: 0.08em;justify-content: center;align-items: center; display:flex; flex-direction: column;}
#artist li p .small{ display: block; font-size: 0.8em;}

@media only screen and (max-width: 1400px){
#artist li p{ font-size: 1.1vw;}
}

@media only screen and (max-width: 768px){
#artist .stit{ font-size: 16px; padding: 6px 0; margin-bottom: 16px;}
#artist li{ width: 49%; margin-bottom: 2%; margin-right: 2%;}
#artist li:nth-child(2n){ margin-right: 0;}
#artist li p{font-size: 3vw;height: 13vw;padding-top: 3.7vw;}
}


/* arist single */
#profile {position: relative;}
#profile .container{ max-width: 1400px;}
#profile .artist_prof{ display: flex; justify-content: space-between; margin-bottom:5vw;}
#profile .artist_prof img{ width: 100%;}

#profile .artist_prof .prof_l{width: 32%;}
#profile .artist_prof figure{width: 100%;margin-bottom: 10px;padding-bottom: 100%;position: relative;background-color: #000;right: 0%;}
#profile .artist_prof figure img{transition: 0.2s ease-in;position: absolute;width: auto;height: auto;max-width: 100%;max-height: 100%;left: 50%;top: 50%;transform: translate(-50%,-50%);}

#profile .lang{ margin-bottom: 60px;}
#profile .lang li{float: left;width: 12.75%;margin-right: 1%;text-align: center;font-size: 12px;line-height: 1.5em;background-color: #fff;color: #e95098;padding: 3px 0;border: 1px solid #e95098;transition: 0.2s ease;}
#profile .lang li.active{background-color: #e95098;color: #fff;}
#profile .lang li:nth-child(8n){ margin-right: 0;}
#profile .lang li:hover{cursor: pointer;background-color: #e95098;color: #fff;transition: 0.2s ease;}

#profile .prof_list{position: relative;overflow: hidden;margin-bottom: 40px;font-size: 16px;line-height: 1.8em;}
#profile .prof_list li{position: absolute;top: 0;left: 0;opacity: 0;transition: 0.2s ease;pointer-events: none;}
#profile .prof_list li.active{position: relative;opacity: 1;transition: 0.2s ease;pointer-events: inherit;}
#profile .prof_list li p:last-of-type{ margin-bottom: 0;}

#profile .artist_prof .prof_r{width: 64%;display: flex;text-align: left;}
#profile .artist_prof .prof_detail{/* margin: 50px 0 0; */}
#profile .artist_prof .name{ font-size: 36px; line-height: 1.5em; font-weight: bold; margin-bottom: 20px; position: relative;}
#profile .artist_prof .name span{position: absolute;top: 0;left: 0;opacity: 0;transition: 0.2s ease;pointer-events: none;}
#profile .artist_prof .name span.active{position: relative;opacity: 1;transition: 0.2s ease;pointer-events: inherit;}
#profile .artist_prof .prof_tag{ display: flex; flex-wrap: wrap; margin-bottom: 30px;}
#profile .artist_prof .prof_tag span{ display: block; background-color: #000; color: #fff; padding: 0.4em 1em 0.5em; margin-right: 0.5em; line-height: 1em; font-size: 12px; }
#profile .artist_prof .prof_txt{ margin-bottom: 30px; line-height: 1.7em;}
#profile .artist_prof .prof_link ul{ display: flex; flex-wrap: wrap;}
#profile .artist_prof .prof_link li{  width: 49.5%; margin-right: 1%; margin-bottom: 1%;}
#profile .artist_prof .prof_link li:nth-child(2n){ margin-right: 0;}
#profile .artist_prof .prof_link li a{display: block;padding: 0.75em 1em;text-align: center;background-color: #e95098;color: #fff;}

#profile .artist_prof .prof_sns ul{ display: flex; padding-top: 20px;}
#profile .artist_prof .prof_sns li{ width: 30px; margin-right: 20px;}

@media only screen and (max-width: 768px) {
    #profile { margin-top: 0;}    
    #profile .artist_prof{ display: inherit;margin-bottom: 50px;}
    #profile .artist_prof .prof_l{ width: 100%; }
    #profile .artist_prof figure{ padding-bottom: 100%;}
    #profile .artist_prof .prof_r{ width: 100%;}
    #profile .artist_prof .name{ margin-bottom: 10px;}
    #profile .artist_prof .prof_txt{ margin-bottom: 20px;}
    #profile .artist_prof .prof_link ul{ display: inherit;}
    #profile .artist_prof .prof_link li{ width: 100%;}
    #profile .artist_prof .prof_detail{ margin: 20px 0 0;}
    #profile .artist_prof .prof_sns ul{ justify-content: center;}
	
	#profile .lang{ margin-bottom: 40px;}
	#profile .lang li{ width: 24%; margin-right: 1.33%; padding: 1px 0; font-size: 11px;}
	#profile .lang li:nth-child(4n){ margin-right: 0;}   
	
	#profile .prof_list{ font-size: 14px;}
}


/********************** LABEL *******************************/
#label{}
#label ul{ margin-bottom: 80px;}
#label li{ margin-bottom: 20px;}
#label li a{ border: 1px solid #ccc; display: block; line-height: 0;}
#label li img{}


@media only screen and (max-width: 768px){
#label ul{ margin-bottom: 40px;}
#label li{ margin-bottom: 12px;}
}


/********************** CONTACT *******************************/

#contact{ margin-bottom:30px;}
#contact .page_tit{ margin-bottom: 30px;}
#contact .notice{ margin-bottom: 60px;background-color: #c00; color: #fff; padding: 2em 0; font-weight: bold;}

#contact .notice .btn a{ display: block; background-color: #fff; color: #c00; padding: 1em 0; text-decoration: none; width: 90%; margin: 10px auto 0;}
#contact .notice .btn a:hover{ opacity: 0.9;}

#contact .notice2{ padding-left: 24%;}
#contact .notice p{ margin-bottom: 0;}

#contact .notice a,
#contact .notice2 a{ text-decoration: underline;}

#contact .container{ max-width:900px; }
#contact form{ max-width: 1400px; width: 100%; margin: 0 auto; position:relative;}
#contact .f_contents{ display: table; width: 100%; margin-bottom: 30px;}
#contact .f_contents p{display: table-cell;width: 24%;font-size: 18px;font-weight: bold;line-height: 1.5em;text-align: left;vertical-align: middle;}
#contact .f_contents p .small{ display: block; font-size: 0.7em; line-height: 1.5em;}
#contact .top.f_contents p{ vertical-align: top;}
#contact .f_contents p:nth-child(2){ display: table-cell; width: 76%;}
#contact .f_contents input,
#contact .f_contents textarea{width: 100%;font-size: 16px;line-height: 1.5em;display: block;vertical-align: middle;padding: 12px 16px;background-color: #eee;border: none;color:#000;}
#contact .f_contents textarea{height: 16vw; vertical-align: inherit;font-family: "メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif;}
#contact .f_contents select{width: 50%;height: 40px;padding: 6px;border-radius: 0;}
#contact .send{width: 76%;background: #e95098;border: none;font-size: 20px;font-weight: bold;line-height: 1.5em;padding: 26px 0;cursor: pointer;transition: 0.3s;display: block;margin-left: auto;-webkit-appearance: none;color: #fff;letter-spacing: 0.1em;}
#contact .send:hover{opacity: 0.8;}

#contact .other_contact{}
#contact .other_contact .f_contents p{ font-size: 16px;}

.wpcf7-radio{}
.wpcf7-radio .wpcf7-list-item{ margin: 0; margin-right: 30px; display: table; width: 9%; float: left; text-align: left;}
.wpcf7-radio .wpcf7-list-item.last{ width: 7em;}
.wpcf7-radio .wpcf7-list-item input{ display: table-cell !important; height: 20px; width: 20px !important;}
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label{ display: table-cell; font-size: 16px;}

span.wpcf7-not-valid-tip{ font-size: 12px !important; line-height: 1.5em; font-weight: bold !important}
div.wpcf7-validation-errors, 
div.wpcf7-acceptance-missing{ border:none !important; color: #ff0000; background-color: #fff; font-size: 14px; font-weight: bold;}
div.wpcf7-mail-sent-ok{ border:none !important; color: #000; background-color: #fff; font-size: 14px; font-weight: bold;}
div.wpcf7-response-output{margin: 0 !important;width: 76%;margin-top: -2.6em!important; margin-left: auto !important;border: none !important;font-size: 14px;font-weight: bold;color: #dc3232;}

#contact .other_contact div.wpcf7-response-output{ margin: 0 !important; width: 76%; margin-top: inherit !important; margin-left: inherit !important; position: absolute; bottom: -7px; right: 0;}

.grecaptcha-badge{ z-index: 999;}

@media only screen and (max-width: 768px){
    #contact{ margin-bottom:0;}
    #contact .notice{ font-size: 14px; line-height: 1.5em; margin-bottom: 30px; padding: 1em 0;}
    #contact .notice2{ padding-left: 0;}
    #contact .f_contents{ display: block; margin-bottom: 12px;}
    #contact .f_contents p{ display: block; width: 100%; font-size: 14px; margin-bottom: 2px;}
    #contact .f_contents p:nth-child(2){display: block;width: 100%;}
    #contact .f_contents input,
    #contact .f_contents textarea{ display: block; padding: 6px;}
    #contact .f_contents textarea{height: 50vw;}
    #contact .f_contents select{width: 100%;}
    #contact .send{ width: 100%; font-size: 20px; padding: 14px 0; margin-left: 0;}

    #contact .other_contact{}
    #contact .other_contact .f_contents p{ font-size: 16px;}

    .wpcf7-radio .wpcf7-list-item{ margin-right: 10px; width: 20%;}
    .wpcf7-radio .wpcf7-list-item input{ height: 14px; width: 14px !important;}
    .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label{ font-size: 14px;}

    #contact .other_contact div.wpcf7-response-output,
    div.wpcf7-response-output{ width: 100%;}

}


/********************** 404 *******************************/
.error_404{ max-width: 470px; width: 94%; margin: 160px auto;}
.error_404 .stit{font-size: 60px;margin-bottom: 34px;line-height: 1em;font-family: Oswald;}
.error_404 p{ font-size: 14px; line-height: 1.5em;}
.error_404 a{display: block;border: 1px solid #333;color: #333;text-align: center;line-height: 1em;font-size: 20px;padding: 16px 0;width: 100%;margin: 34px auto 0;font-family: Oswald;}
.error_404 a:hover{ color: #fff; background-color: #333;}

@media (max-width: 768px){
.error_404{ margin: 40px auto 70px;}
.error_404 .stit{ font-size: 40px; margin-bottom: 24px;}
.error_404 p{ font-size: 13px;}
.error_404 a{ margin: 22px auto 0; font-size: 16px; padding: 10px 0;}
}



/*lightbox*/

#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none;}
.cboxIframe{width:100%; height:100%; display:block; border:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box;}
/* 
    User Style:
    Change the following styles to modify the appearance of ColorBox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000;}
#colorbox{outline:none;}
   /* #cboxContent{margin-bottom:60px; overflow:visible;}*/
    #cboxContent{margin-right:60px; overflow:visible; margin-bottom:0;}
        .cboxIframe{background:#000;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{background:#000;}
        #cboxLoadingGraphic{background:url(../images/loading_b.gif) no-repeat center center;}
        #cboxLoadingOverlay{background:#000;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}
        #cboxSlideshow, #cboxClose{text-indent:-9999px; width:40px; height:100%; position:absolute; top:0;background:url(../images/controls2.png) no-repeat 0 0;}
		
        #cboxClose{background-position:7px 0; right:-50px; border:0; outline:none;}
        #cboxClose:hover{background-position:-40px 0;}


@media screen and (max-width: 768px) {
#cboxContent{ margin-right:0; margin-bottom:50px;}
#cboxClose{ right:0; top:inherit; bottom:-35px; height: 22px;}
}

