@charset "utf-8";
/*
Theme Name:GENSEN child
Theme URI:
Description:WordPressテーマTCD「GENSEN」の子テーマ。
Template:gensen_tcd050
Author:
Version:1.0
*/


/*追加調整*/
/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
a:hover, #bread_crumb li a:hover, #bread_crumb li.home a:hover:before, #bread_crumb li.last, #archive_headline, .archive_header .headline, .archive_filter_headline, #related_post .headline, #introduce_header .headline, .introduce_list_col .info .title, .introduce_archive_banner_link a:hover, #recent_news .headline, #recent_news li a:hover, #comment_headline, .side_headline, ul.banner_list li a:hover .caption, .footer_headline, .footer_widget a:hover, #index_news .entry-date, #index_news_mobile .entry-date, .cb_content-carousel a:hover .image .title {
    color: #BF0418!important;
}

#side_col{
	background-color: #585858;
	padding: 2%;
}
@media only screen and (min-width:1025px) {
	#side_col{
		padding: 2% 1%;
	}
}

@media only screen and (max-width: 767px) {
	.slider_video_wrapper:before{
		padding-top: 56.25%!important;
	}
	#header_slider.slider_video, .slider_video_wrapper .slider_video_container{
		height: 100%!important;
	}
}

#left_col .post_content a.mec-has-event-a{
	/*color:#405df1;*/
	color: #fff!important;
}

#left_col .post_content a.mec-has-event-a:hover{
	color: #fff!important;
}

.post_content h3 {
	font-size:130%;
	padding-top:20px;
	padding: 0 0 10px 0;
	margin: 0 0 30px 0;
}


a:hover, #bread_crumb li a:hover, #bread_crumb li.home a:hover:before, #bread_crumb li.last, #archive_headline, .archive_header .headline, .archive_filter_headline, #related_post .headline, #introduce_header .headline, .introduce_list_col .info .title, .introduce_archive_banner_link a:hover, #recent_news .headline, #recent_news li a:hover, #comment_headline, .side_headline, ul.banner_list li a:hover .caption, .footer_headline, .footer_widget a:hover, #index_news .entry-date, #index_news_mobile .entry-date, .cb_content-carousel a:hover .image .title {
    color: #aaa!important;
}
.mec-color-hover {
    color: #fff!important;
}

.mec-event-title a,
.mec-calendar.mec-calendar-daily .mec-calendar-d-top h2,
.mec-calendar.mec-calendar-daily .mec-calendar-a-month h4{
	color: #fff;
}

ul.mec-weekly-view-dates-events li,
ul.mec-daily-view-dates-events li{
	background: #585858!important;
}
/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
/* ヘッダー固定 */
@media only screen and (min-width:1025px) {
	.fix_top.header_fix #header_top{
		box-shadow: 0px 2px 14px 0px rgb(0 0 0 / 20%);
	}
}

#global_menu > ul > li > a{
	font-weight: bold;
}

/* PC SNSメニュー非表示 */
#menu-item-443{display: none!important;}

#global_menu ul ul { display:none; }
#global_menu ul ul li:last-child{display: none;}


/* video, youtube */
.slider_video_wrapper{
	overflow: hidden;
}

/*ドットの網掛け.slider_video_wrapper .slider_video_container:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: radial-gradient(rgba(0, 0, 0, 0.7) 18%, transparent 19%), radial-gradient(rgba(0, 0, 0, 0.7) 18%, transparent 19%);
    background-position: 0 0, 3px 3px;
    background-size: 6px 6px;
    z-index: 2;
}*/

/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
#header_image .caption{
	font-family: futura, "游ゴシック";letter-spacing: 5px;
}

/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */
/* 問い合わせボタン */
.cmn-btn {
    padding: 14px 15px 14px 15px;
    margin: 0 auto 30px;
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    background: #fff;
    color: #010101;
    position: relative;
    cursor: pointer;
    border-radius: 50px;
    letter-spacing: 0.1em;
    max-width: 300px;
    line-height: 1.4;
    color: #fff!important;
    text-align: center;
    display: block;
    font-size: 15px; 
    background: #c31432;
    background: -webkit-linear-gradient(to right, #240b36, #c31432);
    background: linear-gradient(to right, #6e04bf, #c31432);
}

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer_widget.footer_widget_type2 { -webkit-flex-wrap:none; -ms-flex-wrap:none; flex-wrap:none; }
#footer_widget.footer_widget_type2 .ml_ad_widget { width:25%; /*margin-right:2%;*/margin-right:8%; }
#footer_widget.footer_widget_type2 .widget_nav_menu { /*width:20%;*/ width:17%; }
#footer_widget.footer_widget_type2 .tcdw_banner_list_widget { width:30.666%; }

/*********************
プリセットスタイル追加部分
**********************/
.post_content p{
	font-size: 14px;
}

.sec-heading {
    text-align: center;
    font-size: 25px!important;
    font-family: futura, "游ゴシック";
    font-weight: bold;
    letter-spacing: 5px;
    border-bottom: 1px solid #000;
    padding: 0 0 10px;
	line-height: .9!important;
}

.sec-heading span {
	/*padding: 0 0 10px 0;*/
}

.sec-heading__sub {
	font-size: 11px!important;
	letter-spacing: 1px;
	display: block;
}

.top-info__text {
    line-height: 1.5!important;
    margin: 0 0 10px 0!important;
    font-size: 15px!important;
    font-weight: normal;
}

.top-info__map-image {
    margin: 30px 0;
}

.su-image-carousel-slides-style-default .su-image-carousel-item-content img{
	border: 1px solid #000000!important;
}

.menu-pickup .post_content li{
	padding: 10px 0 8px 0!important;
}

.mec-color-hover {
    color: #ddd!important;
}

.post_content li::marker{
	display: none!important;
}

ol, .menu-list {
  list-style-type: none;
}
.menu-list li {
  list-style-type: none;
}

.post_content ul{
    list-style: circle outside none;
    margin-left: 0;
}

.post_content li { padding: 10px 0 8px 0;border-top: 1px solid #cbcbcb;}
.post_content li:last-child {border-bottom: 1px solid #cbcbcb;}

.post_content td, .post_content th { border:1px solid #bbb; padding:10px 15px; line-height:2.2;width: 90%;
    display: block;text-align: center;
    margin: 0 0 15px 0;
}

/*.has_header_content #header_top {
	background-color: rgba(191,4,24,0.8)!important;
}*/
/*********************
プリセットスタイル追加部分ここまで
**********************/


/*********************
カスタマイズ
**********************/
#cb_1,
#cb_3 {
    /*background: #bf0418;*/
    padding: 80px 0;
}

.mec-event-footer{
	display: none;
}

center {
    margin: 30px 0;
}

#cb_4 iframe {
	position: static;
}

.menu-pickup__item {
    font-size: 15px;
    font-weight: normal;
}

.mec-color-hover{
    color: #fff!important;
}

.loor-guide__caption {
    font-size: 15px;
    text-align: center;
    margin: 0 0 20px;
}

.cmn-text {
    font-size: 13px;
}

.lower-img__caption {
    font-size: 15px;
    font-weight: normal;
}

.side_headline.rich_font {
    letter-spacing: 5px;
    border-bottom: 1px solid #fff;
    padding: 0 0 10px;
    line-height: .9!important;
    text-align: center;
    font-size: 18px;
}

.su-image-carousel-slides-style-default .su-image-carousel-item-content img {
    padding: 0!important;
    background: #fff;
    /*border: 1px solid #bf0418!important;*/
    border-radius: 7px;
}

.sec-heading__title {
    line-height: 1.5;
}

.mec-week-events-container .mec-event-article div {font-size: 35px!important;color: #fff!important;font-family: futura, "游ゴシック"!important;font-weight: bold;line-height: 1.5;margin: 0;}

.mec-wrap.colorskin-custom .mec-color {
  font-size: 12px !important; 
}

.mec-event-carousel-title {
    font-family: futura, "游ゴシック"!important;
    letter-spacing: 4px!important;
}

.credit {
    font-size: x-small;
    text-align: right;
    margin: 0!important;
}

.access-item {
  display: flex;
	padding: 5px 0 0;
}
.access-item dt {
  width: 6em;
	font-size: 16px;
}
.access-item dd {
  width: calc(100% - 6em);
	font-size: 14px;
  font-weight: normal;
}

.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] {
  width: 100% !important;
  max-width: 100% !important;
}

.category {
    text-align: right;
    font-weight: bold;
    font-size: 15px;
}

.men {
    color: #dd3333;
    font-size: 20px;
    padding: 0 3px;
}

.women {
    color: #eeee22;
    font-size: 20px;
    padding: 0 3px;
}

.mix {
    color: #81d742;
    font-size: 20px;
    padding: 0 3px;
}

.mec-event-date-info-year{
	display: none;
}

.mec-event-carousel-title {
	overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family:  futura, "游ゴシック"!important;
}

.page #post_title{
    text-align: center;
    font-size: 25px!important;
    font-family: futura, "游ゴシック";
    font-weight: bold;
    letter-spacing: 5px;
    border-bottom: 1px solid #000;
    padding: 0 0 10px;
	line-height: 1.5!important;
}

.post_content ul{
	  list-style: none!important;
}

.su-image-carousel {
    margin: 1.5em 0 .5em!important;
}

.mec-events-event-categories a {
    pointer-events: none;
}

.mec-calendar .mec-event-article .mec-event-title {
  font-size: 20px !important; 
}

.cmn-text {
    font-size: 13px;
}

.form-annotation {
	padding: 30px 0 0!important;
	font-size: 16px!important;
	color: #000!important;
}

.wpcf7 p{
	color: #000!important;
}
.wpcf7 input.wpcf7-submit {
    background-color: #bf0418!important;
}

.covid-19__info__text {
	line-height: 2.4;
  margin: 0 0 2.4em 0;
  color: #fff;
	font-size: 13px;
}

.o-noteContentText__body h3 {
    font-size: 23px;
}

.covid-19__info__img {
    width: 50%;
    max-width: 400px;
}

.external-article-widget-title {
    font-size: 13px;
}

.iframe-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin: 30px 0;
}

.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mec-event-date-carousel{
	background: #222!important;
}

.mec-event-date-carousel:after{
	background: #000!important;
}

.counterplan {
    line-height: 1!important;
    font-weight: normal!important;
}

.covid-19__info {
    font-weight: normal!important;
}

.covid-ttl {
    font-size: 23px!important;
}

.access-item-txt {
    margin-bottom: 8px!important;
}

.mec-event-date-carousel {
    background: #000!important;
}

.mec-event-date-carousel {
    top: 0!important;
    background: #000!important;
    height: 50px!important;
    /* padding: 10px 0 0 0!important; */
}

.mec-event-image {
    height: 247px;
	  overflow: hidden;
}

/* movie */
#top-movie-container {
	width: 250px;
	position: relative;
	top: 20px;
	z-index: 11;
	left: 0;
	right: 0;
	margin: auto;
}

#top-movie-container-inner {
	height: 110px;
	overflow: hidden;
	background: #fff034;
	padding-right: 5px;
	-webkit-clip-path: polygon(9% 1%, 100% 0, 91% 100%, 0% 100%);
	clip-path: polygon(9% 1%, 100% 0, 91% 100%, 0% 100%);
}

.movie-cap,.top-movie-caption {
	font-weight: 700;
	text-align: center;
	color: #fff;
	margin: 20px 0;
}

.top-movie-more-btn .arrow-icon {
	display: block;
	margin: 5px auto 0;
}

.top-movie-caption {
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0,0,0,.3);
	padding: 8px 0;
	color: #00b8ff;
	font-size: 16px;
}

#top-movie-thumb-box {
	position: relative;
	height: 103px;
	-webkit-clip-path: polygon(9% 1%, 100% 0, 91% 100%, 0% 100%);
	clip-path: polygon(9% 1%, 100% 0, 91% 100%, 0% 100%);
	cursor: pointer;
}

#top-movie-thumb-box:after {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.player-overlay {
	width: 100%;
	height: 100%;
	color: red;
	background: url(../common/img/overlay.png) rgba(0,0,0,.6);
	background-size: 2px 2px;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	opacity: .5;
}

.play-icon,.pv-box .play-icon {
	width: 54px;
	height: 54px;
	margin: auto;
	display: block;
	line-height: 1em;
	top: 0;
	right: 0;
	bottom: 0;
	position: absolute;
	left: 0;
}

.pv-box .play-icon {
	z-index: 1;
}

#player {
	position: absolute;
	z-index: 0;
	top: -100px;
	left: 0;
	width: 100%;
	height: calc(100% + 200px);
}

#movie-list,.pv-box {
	z-index: 1;
	position: relative;
	left: 0;
	right: 0;
	margin: auto;
	justify-content: center;
}

#movie-ttl {
    color: #fff!important;
    text-align: center;
    font-size: 35px;
    font-family: futura, "游ゴシック";
    font-weight: bold;
    letter-spacing: 5px;
	  border-bottom: 1px solid #fff;
	  padding: 0 0 10px;
}

#movie-box {
	width: 90%;
  margin: 80px auto 50px;
	display: none;
}

#movie-list {
	width: 100%;
	margin: 0 auto;
	display: flex;
}

#movie-ttl-pc {
	margin: 0 auto;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	color: #423332;
}

.movie-inner {
	padding: 4% 0;
	width: 100%;
	margin: 0 auto;
	justify-content: center;
}

.slick-dotted.slick-slider {
	margin-bottom: 0;
	justify-content: center;
	margin: 0 auto;
	width: 100%;
	width: 1000px;
}

.slick-next {
	right: -20px;
}

.slick-prev, .slick-next {
	top: 45%;
	display: none;
}

.slick-prev:after {
	content: url(../img/common/left.png);
	width: 35px;
	height: 16px;
	display: block;
	position: absolute;
	top: 0;
}

.slick-prev:before {
	content: "" !important;
}

.slick-next:before {
	content: "" !important;
}

.slick-next:after {
	content: url(../img/common/right.png);
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	z-index: -1;
}
	
		/* Dots */
.movie-inner .slick-dotted.slick-slider {
	margin-bottom: 30px;
}

.movie-inner .slick-dots {
	position: absolute;
	bottom: 0;
	width: 100%;
	/*/*height: 100%;*/*/
	list-style: none;
	text-align: center;
	display: none;
}

.movie-inner .slick-dots li {
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 7px;
	cursor: pointer;
	display: inline-block;
}

.movie-inner.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

.movie-inner .slick-dots li button:hover,
.movie-inner .slick-dots li button:focus {
	outline: none;
}

.movie-inner .slick-dots li button:hover:before,
.movie-inner .slick-dots li button:focus:before {
	opacity: 1;
}

.movie-inner .slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 8px;
	height: 8px;
	background: none;
	border: 2px solid #d8272b;
	border-radius: 30px;
	content: '';
	text-align: center;
	opacity: .6;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: n;
}

.movie-inner .slick-dots li.slick-active button:before {
	opacity: 1;
	background: #d21e28;
}

.slick-prev:before, .slick-next:before {
	opacity: 1;
}

.pv-box {
	width: 350px;
	margin: 10px;
}

.pv-box-inner {
	display: block;
	position: relative;
	width: 100%;
	box-shadow: 0 0 8px rgba(84, 84, 84, 0.33);
}

.pv-box-inner::after {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.pv-thumb,.youtube {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4%;
}

.movie-cap {
	line-height: 1.9;
	color: #fff;
	padding: 15px 0;
}

#site_loader_overlay{
	background: #000!important;
}

/*.rich_font {
	font-family: "Poppins", "Helvetica Neue", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
}*/

.archive_filter .button input:hover, .archive_sort dt, #post_pagination p, #post_pagination a:hover, #return_top a, .c-pw__btn, #comment_header ul li a:hover, #comment_header ul li.comment_switch_active a, #comment_header #comment_closed p, #introduce_slider .slick-dots li button:hover, #introduce_slider .slick-dots li.slick-active button{
    background-color: #000!important;
}

.mec-owl-theme .owl-dots .owl-dot.active span, .mec-owl-theme .owl-dots .owl-dot:hover span {
    background: #222!important;
}

.su-image-carousel-slides-style-default .su-image-carousel-item-content img {
    padding: 3px;
    background: #282828!important;
    border: 1px solid #ccc;
    border-radius: 7px;
}

.lity-container, .mec-wrap, .mec-wrap div:not([class^=elementor-]) {
    font-size: 22px!important;
    line-height: 2!important;
}

.event-carousel-type1-head .mec-event-date-info {
    font-size: 12px!important;
    top: 13px!important;
}

.mec-event-date.mec-color,
.mec-month-divider span {
    color: #fff!important;
}

.wp-block-image figcaption {
    margin-top: .5em;
    margin-bottom: 1em;
    color: #fff;
}

.mec-calendar .mec-calendar-row dt.mec-has-event.mec-selected-day a, .mec-calendar .mec-calendar-row dt.mec-has-event:hover a {
    color: #fff;
    background: #BF0418!important;
}

.mec-event-date-carousel {
	background: #000!important;
	height: 70px!important;
}

.mec-event-date-carousel {
    padding: 13px;
}

.mec-event-carousel-content{
	background: #000!important;
	color: #222!important;
}

.mec-totalcal-monthlyview.mec-totalcalview-selected {
    color: #fff!important;
}

.mec-color-hover {
    color: #fff!important;
}

.mec-color-hover:hover {
    color: #ddd!important;
}

.mec-dark-mode .mec-event-content p{
	color: #000;
}

.mec-calendar{
	background-color: #585858;
}

.mec-event-list-standard .mec-event-meta span.mec-event-d, .mec-event-list-standard .mec-event-meta span.mec-event-m{
	color: #ccc;
}

.access-item  {
    font-size: 15px!important;
}

.mec-dark-mode .mec-wrap .mec-single-title,
.mec-dark-mode .mec-wrap h1,
.mec-dark-mode .mec-wrap h4{
	color: #000000;
}

.mec-dark-mode .mec-slider-t5 .mec-slider-t5-content,
.mec-dark-mode .mec-event-grid-modern .mec-event-content{
	background: #aaaaaa;
}

.mec-dark-mode .mec-slider-t5-wrap{
	background-color: #aaaaaa;
}
/*.side_widget img,	
.side_widget a {
	pointer-events: none!important;
	}*/

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

#header{
    box-shadow: 0px 2px 14px 0px rgb(0 0 0 / 20%);
}

	
#header_slider .caption .catchphrase{
	text-align: right;	
	}	
	
#index_header_search {
    display: none;
}

#global_menu {
    background-color: #b8b8b8!important;
}

	
.event-carousel-type1-head .mec-event-date-info {
    top: 0px!important;
}	
	
.home-default #main_col{
	margin-top: 0px!important;
}
	
#header_slider .item{
	min-height: 31vh!important;
}	
	
#header_slider .item img{
	height: 31vh!important;
}	
	
#header_slider .item:before{
	padding-top: 0!important;
}
@media screen and (max-width: 767px) {
  #header_slider .item:before { padding-top: 56.25%!important; }
}
	
#cb_1,
#cb_3 {
    padding: 40px 0;
}	
	
#cb_2,
#cb_4 {
	padding: 40px 0;
}	
	
.textwidget p img {
    text-align: center;
    width: 70%;
    margin: 0 auto;
	  border-radius: 5px;
}	
	
.catchphrase.rich_font{
    text-align: right!important;
}	
	
.su-image-carousel-slides-style-default .su-image-carousel-item-content{
	width: 90%;
}	

.banner_list li {
	width: 80%!important;
	margin: 0 auto!important;
}	
	
#movie-ttl {
    font-size: 25px;
}
	
#movie-list {
    justify-content: end;
}	
	
.lity-container, .mec-wrap, .mec-wrap div:not([class^=elementor-]) {
    font-size: 17px!important;
    line-height: 2!important;
}	

#header_top #global_menu a:hover, #global_menu .current-menu-item > a{
	background-color: #000!important;
	color: #fff!important;
}	
	
.post_content > :last-child {
	  /*margin: 15px;*/
    /*font-size: 20px!important;*/
}
	
.mec-event-image {
    height: 200px;
    overflow: hidden;
}	
	
/* SP SNSメニュー表示 */
#menu-item-443{display: block!important;}	
	
.mec-event-date-carousel {
    padding: 0;
	  height: 40px!important;
}	
	
.event-carousel-type1-head .mec-event-date-carousel:after {
    top: 35px!important;
}	
	
.mec-owl-theme .owl-dots .owl-dot {
		width: 10px!important;
	}
	
}

/* youtubeサイズ調整 */
.content__youtube {
  width: 100%;
  height: auto;
  position: relative;
  padding-top: 56.7%;
  margin: 0 auto 1.4em !important;
}
.content__youtube iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 320px) {
	
	.mec-event-image {
    height: 160px;
	}
}

/* お知らせ・ニュースティッカー */
#index_news_mobile { display:none; }
#index_news { margin:0; height:65px; line-height:65px; overflow:hidden; position:relative; border-bottom:1px solid #ddd; position:relative;display:block;z-index: 5; }
#index_news ol { margin:0; padding:0; position:absolute; }
#index_news ol li { margin:0; padding:0; height:65px; font-size:14px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
#index_news ol li a { display:block; padding:0; text-decoration:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;color: #000!important; }
#index_news .entry-date { display:inline-block; margin:0 18px 0 0; font-size:12px; color:#b69e84; text-decoration:none !important; }
#index_news .archive_link { margin:0; text-align:right; position:absolute; top:0; right:0; }
#index_news .archive_link a { display:inline-block; text-decoration:none; }
#index_news .archive_link a:after { content:'\e910'; font-family:'design_plus'; display:inline-block; padding:0 0 0 8px;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}