@charset "utf-8";

/*	基本設定、リンクカラーなど　*/
/*
@import url('https://fonts.googleapis.com/css?family=Lato');
*/

@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

.table_tour_list .table_cell{
    position: relative;
}
span.ribon_g {
    position: absolute;
    display: block;
    top: -7px;
    left: -10px;
    padding: 0.1rem 1rem;
    background-color: #0e8377;
    color: #fff;
    font-weight:bold;
    font-size: 14px;
    font-family: 'Lato','Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
    z-index: 10;
}

span.ribon_g::before {
    position: absolute;
    bottom: 100%;
    left: 0;
    top:26px;
    width: 0px;
    height: 0px;
    border: none;
    border-bottom: 5px solid transparent;
    border-right: 10px solid #444;
    content: '';
}
span.ribon_f {
    position: absolute;
    display: block;
    top: -7px;
    left: -10px;
    padding: 0.1rem 1rem;
    background-color: #204bac;
    color: #fff;
    font-weight:bold;
    font-size: 14px;
    font-family: 'Lato','Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
    z-index: 10;
}

span.ribon_f::before {
    position: absolute;
    bottom: 100%;
    top:26px;
    left: 0;
    width: 0px;
    height: 0px;
    border: none;
    border-bottom: 5px solid transparent;
    border-right: 10px solid #444;
    content: '';
}

.fin span.ribon_g::before {
    top:16px;
    border-bottom: 5px solid transparent;
}

.fin span.ribon_f::before {
    top:16px;
    border-bottom: 5px solid transparent;
}

.group1 span.ribon_g::before {
    top:16px;
    border-bottom: 5px solid transparent;
}

.group1 span.ribon_f::before {
    top:16px;
    border-bottom: 5px solid transparent;
}

.group2 span.ribon_g::before {
    top:16px;
    border-bottom: 5px solid transparent;
}

.group2 span.ribon_f::before {
    top:16px;
    border-bottom: 5px solid transparent;
}


.en_top span.ribon_g::before {
    top:31px;
}
.en_top span.ribon_f::before {
    top:31px;
}

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

.en_top span.ribon_g {
    font-size: 12px;
    top: 0;
    left: 0;
    padding: 0.05em 0.5em;
}
.en_top span.ribon_f {
    font-size: 12px;
    top: 0;
    left: 0;
    padding: 0.05em 0.8em;    
}
.en_top span.ribon_g::before {
    display: none;
}
.en_top span.ribon_f::before {
    display: none;
}   
}


body {
font-family: Raleway,sans-serif;
    /*font-family: 'Lato','Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';*/
	width:100% !important; height:100%;
	color:#333; font-size:16px !important; margin:0;
}


a{
	color:#333;
	text-decoration:underline;
}

a:hover {
	color:#55908C;
	text-decoration:underline;
}

/*a:visited {
	color:#89568c;
}

a:active {
	color:#0d5170;
}*/

h1{
	font-size:10px;
	letter-spacing:1px;
	line-height:220%;
	color:#FFF;
	font-weight:normal;
	float:left;
}

h2{ font-size:400%;padding-bottom:3% !important;line-height:100%; margin:5% 0 0 0 ; color:#111}

h3,h4{
	margin-bottom:3px; line-height:140%; font-size:18px;
}
@media only screen and (max-width: 767px) {
h2{ font-size:280% !important;padding-bottom:3% !important;line-height:100%; margin:5% 0 0 0 ; color:#111}
}

/*　汎用class　*/

.hover:hover{
opacity: 0.7 ;

}

.imgR {
	float: right;
	margin: 0 0 10px 10px;
}

.imgL {
	float: left;
	margin: 0 10px 10px 0;
}

.clear_f{
	overflow: hidden;
}

.stxt{
	font-size:10px;
}

.red{
	color:#e60012;
}

.red_bold{
	color:#C00;
	font-weight:bold;
}

.navy_bold{
	color:#002e73;
	font-weight:bold;
}

.orange{
	color:#ee8115;
}

.shuppatsu{
	font-size:15px;
    color:#C00;
	font-weight:bold;
    }

dl {
  width:100%;
  overflow:hidden;
}
dt {
  float:left;
  width:160px;
  padding:1px 0px;
  font-weight:bold;
}
dd {
  width:365px;
  padding:1px 0px;
 /*float:none;
 /margin-left:90px;
 /width:auto;*/
}
dt img{
	margin-bottom:-2px;
}

a.anchor {
    display: block;
    height: 0px;
    overflow: hidden;
    text-indent: -9999px;
    padding-bottom: 20px;
    margin-top: -40px;
}

#pageTop {
  position: fixed;
  bottom: -15px;
  right: 0px;
}
 
#pageTop a {
  display: table-cell;
  vertical-align: middle;
  text-align:center;
  z-index: 999;
  width: 50px;
  height: 50px;
  background-color:#222;
  color: #fff;
  font-family:"Arial", Courier, monospace;
  font-size:80%;
  letter-spacing:1px;
  text-decoration: none;
  text-align: center;
}
 

#pageTop a:hover {
  text-decoration: none;
  background-color:#55908C}
  
  
/* ココから追記　*/

.box_top_feature{
    float: right;
    padding:0 0 10px 20px;
}
.box_top_feature img{width: 250px;
}

.box_youtube{
padding:10px 0px 15px 0px}

.box_youtube iframe{
width: 100%; height: 500px;}

.table_cell{display: table-cell;}
.box_960{ width:960px; margin:0 auto}
.container{height: 100%; width: 100%;}
.content{height: 100%; max-height:900px; width: 100%;}
.box_kimg{ height:80%; width:100%; background-position:center top; background-repeat:no-repeat; z-index:100; position:relative; padding-top:0px; }
/*.box_kimg{ background-image: url(../images/kimg_003.jpg); height:620px; width:100%; background-position:center top; background-repeat:no-repeat; z-index:100; position:relative; padding-top:100px;}
*/
@media only screen and (max-width: 767px) {
}



.txt_title{ z-index:200; position:absolute; color: #fff; top:18%; }
.txt_title li{ margin-bottom:10px; position:relative}

.txt_title_01{
    font-weight: 700; font-style: italic; font-size:230%; line-height: 100%;
}
.txt_title_02{
    font-weight: 800; font-style: italic; font-size:700%; line-height: 100%;
}
.txt_title_03{
    font-weight: 700; font-style: italic; font-size:230%; line-height: 120%;
}
.txt_title_04{
    font-weight: 500; font-style: italic; font-size:120%; width: 50%;
}

.en_navi{ width:auto; margin:30px auto 60px auto; font-size:16px; font-weight:600; text-align:center; display:table; line-height:100%;}
.en_navi li{ border-left:1px solid #666; padding:0 20px; display:table-cell}
.en_navi li:first-child{ border-left:0}
.en_navi a{	color:#333;	text-decoration:none;}
.en_navi a:hover {	color:#55908C;	text-decoration:underline;}
.box_color{ background-image:url(../images/bg_color.gif); background-repeat:repeat-y; width:958px; margin:0 auto; padding:1px;}
.box_color_in{ background-color:#FFF; padding:20px 60px 40px 60px; }
.box_color_in p{}

.p_about{ text-align:left;}
.logo{ float: right; margin: 0 0 10px 10px}
/*.logo{ display: block; position:relative;top:200px; left:520px;}
*/



.box_why{ display: table}

.box_why .p_about{ display: table-cell; width: 30%; padding-right: 3%; line-height: 140%; font-size: 90%;}
.img_001{ background-image:url(../images/img_01e.jpg); height:490px; position:relative; display:block; background-repeat: no-repeat; background-position:left; margin-right:62%; margin-top:240px;}
.box_history{ width:600px; margin:-710px 0 0 360px;}

.td1{width:50px;}



@media only screen and (max-width: 767px) {
.box_top_feature{
    float: none;
    width: 100%;
    padding:10px 0 0 0;
    text-align: center;
}
.box_top_feature img{width:80%;}

    
    
.box_gnavi{ width: 100%; overflow-x: scroll; }
.box_kimg{ height:50%; width:100%; background-position:center top; background-repeat:no-repeat; z-index:100; position:relative; font-size:64%;}
.box_color_in{ line-height: 140%;}
.box_history{ width:94%; padding: 0 3%; margin:0}

#pageTop {
    display: none;
}
     
.txt_title{ font-size: 70%;}
    
    
.box_color{ width:94%; margin:30px auto 0 auto; padding:1px;margin-bottom: 7%;}
.box_color_in{ background-color:#FFF; padding:20px 20px 20px 20px; }
.box_color_in td{line-height: 140%;}
.p_about{ width:100%; text-align:left;}
.box_why{ display: block}
.box_why .p_about{ display:block; width: 100%; padding-right: 3%; line-height: 140%; font-size: 90%;}

.en_navi{ width:auto; margin:40px auto 70px auto; font-size:16px; font-weight:600; text-align:center; display:table; line-height:100%;}
.en_navi li{ border-left:1px solid #666; padding:0 20px; display:table-cell}
.en_navi li:first-child{ border-left:0}
.en_navi a{	color:#333;	text-decoration:none;}
.en_navi a:hover {	color:#55908C;	text-decoration:underline;}
}


.img_002{ background-image:url(../images/img_02.jpg); height:490px; position:relative; display:block; background-repeat: no-repeat; background-position:left; margin-right:59%; margin-top:150px;}
.box_company{ width:auto; margin:-750px 0 0 0; text-align:right}
.box_company .overview{ margin:10px 0px 0px 410px; width:550px;}
.box_company .overview td{ padding:0px 0px 0px 15px;text-align:left; }

.overview{ margin:10px 0px 0px 0px; }
.overview td{ padding:0px 0px 0px 15px; }
.overview td.ttl_over{ width:155px; font-weight:bold;background-image: url(../images/bg_dotted_4px.gif); background-repeat:repeat-y; background-position:right; padding:0px;}

.box_overview{padding:20px;}


@media only screen and (max-width: 767px) {
.txt_title_04{
    font-weight: 500; font-style: italic; font-size:120%; width: 80%;line-height: 160%;
}

.img_002{display: none;}
.box_company{ width:auto; margin:50px 0 0 0; text-align:left; padding: 0 3%;}
.box_company .overview{ margin:10px 0px 0px 10px; width:100%; line-height: 140%;}
.overview td.ttl_over{ width:105px;}
    
#bg_slide{
    display: none;
    }    
    
}

.box_footer{ background-color:#333; padding:60px 0px 90px 0px; margin-top:30px; color:#FFF; font-size:14px; text-align:center}
.box_footer a{	color:#fff;	text-decoration:none;}
.box_footer a:hover {	color:#fff;	text-decoration:underline;}

.tate1{ position:fixed; left:18px; top: 33%;}
.tate2{ position:fixed; right:18px; top:34%;}

.box_footer .imgR{
    text-align: right !important;
    margin-top: -25px;
}
.box_footer .imgR img{
    margin-left: 10px;
    display: inline;
}

.area_sns{
    background-color: #fff;
    text-align: center;
    display: block;
    vertical-align: middle;
    padding:1px;
  /*  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAGUlEQVQYV2NkYGD4z8DAwMiABFA4MHEKBQFmoAEGlW1mUAAAAABJRU5ErkJggg==) repeat;*/
    background: url(../images/bg_color.gif) repeat;
    margin: 25px auto 0 auto;
    width:960px;
    font-size: 14px;
}
.area_sns_in{padding: 9px; background-color: #fff;}
.area_sns img{
    margin:0 5px -10px 15px ;
}

@media only screen and (max-width: 767px) {
.box_footer{ background-color:#333; padding:40px 0px 50px 0px; margin-top:40px; color:#FFF; font-size:14px; text-align:center}
.box_footer a{	color:#fff;	text-decoration:none;}
.box_footer a:hover {	color:#fff;	text-decoration:underline;}
.box_footer div{ float: none !important; font-size:90%; }
.box_footer .box_960{ padding-bottom:0px;}
.box_footer .imgR{
    text-align:center !important;
    margin-top:0px;
}
.area_sns{
    text-align: center;
    display: block;
    vertical-align: middle;
    margin: 25px auto 0 auto;
    width:89%;
    font-size: 12px;
    }
.area_sns img{
    margin:0 5px -10px 5px ;
}
}


/*　背景の流れる画像　*/
#bg_slide{
	width:100%;
	margin: -30px;
	height:113px;
	position: relative;
	top:-220px;
/*	left:2px;　なぜか入っていた不明だが削除*/
	overflow: hidden;
	z-index:-1;
}
#bg_slide ul{
position: relative;
width:2400px;
height:113px;
margin:0px;
padding:0px;
overflow:hidden;
}

#bg_slide ul li{
float:left;
width:800px;
height:113px;
}

.list_history{ line-height:140%; margin-left:10px;} 
.list_history td{padding-bottom:12px}
.td_year{ vertical-align:top; width:50px; font-style:italic;}


/* Card */
.box_rec{
    padding: 4% 0 0 0;
    width: 100%;
/*background-image: radial-gradient(#333 1px, #444 1px);
background-image: repeating-linear-gradient(45deg, #6e6e6e 0, #6e6e6e 1px, #666 0, #666 50%);*/

background-size: 10px 10px;
}
.box_rec h1{
    float: none;
    padding: 2% 0 !important;
    line-height: 120%;
}

.box_rec h2{
    margin:0 0 0% 0 !important;
    text-align: center;
}


h1.title{
    letter-spacing: 0;
}
.post-module {
  position: relative;
  z-index: 1;
  display: block;
  min-width: 270px;
  height: 430px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.post-module:hover,
.hover {
}
.post-module:hover .thumbnail img,
.hover .thumbnail img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  transform: scale(1.1);
  opacity: 0.6;
}
.post-module .thumbnail {
  background: #000000;
  height: auto;
  overflow: hidden;
}
.post-module .thumbnail .date {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
  background: #006f47;
  width: 55px;
  height: 55px;
  padding: 12.5px 0;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  color: #FFFFFF;
  font-weight: 700;
  text-align: center;
  -webkti-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.c_trek .post-module .thumbnail .date {
  background: #008fb3;
}

.post-module .thumbnail .date .day {
  font-size: 18px;
}
.post-module .thumbnail .date .month {
  margin-top:2px;
  font-size: 12px;
}
.post-module .thumbnail img {
  display: block;
  width: 120%;
    margin-left: -10%;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.post-module .post-content {
  position: absolute;
  bottom: 0;
  background: #efefef;
  width: 100%;
    min-height: 210px;
  padding: 24px;
  -webkti-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s cubic-bezier(0.37, 0.75, 0.61, 1.05) 0s;
  -moz-transition: all 0.3s cubic-bezier(0.37, 0.75, 0.61, 1.05) 0s;
  -ms-transition: all 0.3s cubic-bezier(0.37, 0.75, 0.61, 1.05) 0s;
  -o-transition: all 0.3s cubic-bezier(0.37, 0.75, 0.61, 1.05) 0s;
  transition: all 0.3s cubic-bezier(0.37, 0.75, 0.61, 1.05) 0s;
}
.post-module .post-content .category {
  position: absolute;
  top: -24px;
  left: 0;
  background: #111;
  padding: 5px 20px;
  color: #FFFFFF;
  font-size: 18px;
  font-weight: 600;
}

.category2 {
  position: absolute;
  top:0px;
  right:0;
  background:#C7191C;
  padding: 4px 10px;
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 600;
  line-height: 180%;
}
@media only screen and (max-width: 767px) {
.category2 {
  padding: 4px;
}
    }

.post-module .post-content .category span {
	font-size: 13px;
	padding-right: 5px;
}

.c_trek .post-content .category {
  background: #008fb3;
}
.post-module .post-content .title {
  margin: 0;
  padding: 0 0 10px;
  color: #333333;
  font-size: 20px;
  font-weight: 700;
    line-height: 120%;
}
.post-module .post-content .sub_title {
  margin: 0;
  padding:5px 0 0 0px;
  color: #006f47;
  font-size: 16px;
  font-weight: 600;
    text-align: left;
}

.c_trek .post-content .sub_title {
  color: #008fb3;
}
.post-module .post-content .description {
  display: none;
  color: #333;
  font-size: 14px;
  line-height: 1.8em;
}
.post-module .post-content .post-meta {
  margin: 10px 0 0;
  color: #666666;
}
.post-module .post-content .post-meta .timestamp {
  margin: 0 16px 0 0;
}
.post-module .post-content .post-meta a {
  color: #666666;
  text-decoration: none;
}
.hover .post-content .description {
  display: block !important;
  height: auto !important;
  opacity: 1 !important;
}
.box_rec .container {
  margin: 0 auto;
  margin-bottom: 30px;    
  max-width: 1300px !important;
}
.box_rec .container:before,
.box_rec .container:after {
  content: '';
  display: block;
  clear: both;
}
.box_rec .container .column {
  width: 24.5%;
  padding: 0 0 0 20px;
  min-width: 300px !important;
  -webkti-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
	margin-bottom: 30px;
}
.box_rec .container .column .demo-title {
  margin: 0 0 15px;
  color: #666666;
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
}
.box_rec .container .info {
  width: 300px;
  margin: 50px auto;
  text-align: center;
}
.box_rec .container .info h1 {
  margin: 0 0 15px;
  padding: 0;
  font-size: 24px;
  font-weight: bold;
  color: #333333;
}
.box_rec .container .info span {
  color: #666666;
  font-size: 12px;
}
.box_rec .container .info span a {
  color: #000000;
  text-decoration: none;
}
.box_rec .container .info span .fa {
  color: #e74c3c;
}


@media only screen and (max-width: 767px) {
.box_rec h2{
    font-size:200% !important;
    text-align: left;
    padding-left: 15px;
    }
.box_rec .container .column {
  width:49.7%;
  margin-right: 1px;
  padding: 0px;
  min-width: 100px !important;
  -webkti-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
	margin-bottom: 1px;
}
.box_rec .container .column .demo-title {
  margin: 0 0 15px;
  color: #666666;
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
}
.post-module {
  position: relative;
  z-index: 1;
  display: block;
  min-width: 100px;
  height: 300px;
  background: #efefef;

}
.post-module .post-content .title {
  margin: 0;
  padding: 0 0 10px;
    letter-spacing: 0;
  color: #333333;
  font-size:17px;
  font-weight: 700;
    height: 62px;
    overflow: scroll;
    line-height: 120%;
}
.post-module .post-content {
  position: absolute;
  bottom: 0;
    min-height: auto;
  background: #efefef;
  width: 100%;
  padding:20px 10px 10px 10px;
}
.post-module .post-content .post-meta {
  margin: 0px;
}
.post-module .post-content .category {
  top: -20px;
  padding: 2px 10px;
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 600;
}    
    
}

/* 中ページのグローバルナビ　*/
#gnav li.gnavi_01{ background: url("../images/saiyu.gif") !important; background-repeat: no-repeat !important;background-position:bottom 10px left !important; padding-left: 40px;}
#gnav li.gnavi_01 a{ display:block !important; width: 100% !important; height: 100% !important; }

.gnavi_area{width: 100%;;box-shadow:0px 0px 15px 0px rgba(0, 0, 0, 0.5); z-index: 10; position: relative; background-color: #FFF;}
.list_gnavi{white-space: nowrap;overflow-x: hidden; min-width:auto; margin:7px auto 5px auto; max-width: 980px; display: table;}
.list_gnavi li{display:table-cell;  font-weight:600; font-size:100%; vertical-align: middle;background:#fff;padding:0px 30px 0px 0px;}
.list_gnavi li:first-child{margin-left:0%;}

.list_gnavi a {
  position: relative;
  display: inline-block;
  transition: .3s;
  text-decoration:none;
  color:#333;
}
.list_gnavi a:hover {
  color:#006f47;
}

.list_gnavi a::after {
  position: absolute;
  bottom:1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: #006f47;
  opacity: 0;
  transition: .3s;
}
.list_gnavi a:hover::after {
  bottom: 0;
  opacity: 1;
}

.list_gnavi li.gnavi_sms{
    background:none;
    width: 100%;
    text-align: right;
    padding: 0 0 0 30px;
}
.list_gnavi li.gnavi_sms img{
    margin: 10px 5px 0 0;
		max-width:unset;
}

.list_gnavi li.gnavi_sms img:hover{
  opacity: 0.6;
  transition-duration: 0.3s;}

.list_gnavi li.gnavi_sms a{
  position: static;
  text-decoration:none;
}

.list_gnavi li.gnavi_sms a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: none;
  opacity: 0;
  transition: .3s;
}
/*
.list_gnavi li.gnavi_logo{
    display: block;
    position: relative;
    left: 0;
    margin-top: -10px;
}

.list_gnavi li.gnavi_logo a{
  position: static;
  text-decoration:none;
}

.list_gnavi li.gnavi_logo a::after {
  position: absolute;
  bottom: .3em;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: none;
  opacity: 0;
  transition: .3s;
}
*/

.box_who{
    font-size: 120%;
    padding: 30px 0px 30px 0px;
}

.box_news{
border-style:solid;
border-width:1px 0px 1px 0px;
border-color:#333;
padding:0px 0px;
margin: 0 auto;
width: 960px;
background-color: #f9f9f9;
height: 108px;
overflow-y: scroll;
}

.ticker {
height:auto;
width:100%;
list-style: none;
font-size:100%;
}

.ticker li {
height:20px;
line-height:120%;
padding:0 0 10px 2%;
text-align: left;
overflow: hidden;
}

.open {
	cursor:pointer;
    text-decoration: underline;
}
#pop-up {
	display: none;
}
.overlay2 {
	display: none;
}
#pop-up:checked + .overlay2 {
	display: block;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 99999;
	background: rgba(0, 0, 0, 0.6);
}
.window {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 50%;
	max-width: 800px;
    padding: 30px 40px;
	height: auto;
	background-color: #fff;
	border-radius: 4px;
	align-items: center;
	transform: translate(-50%, -50%);
}
.close {
	position: absolute;
	top: 15px;
	right: 15px;
	cursor:pointer;
    background-color: #111;
    padding: 10px 20px;
    color: #fff;
}

/* ---------------------------- */
/* --- ModalSection --- */
/* ---------------------------- */
.ModalLayer {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
transition: opacity 0.65s;
pointer-events: none;
opacity: 0;
z-index: 10000;
}
.ModalLayer.isShow {
transition: opacity 0.65s;
pointer-events: auto;
opacity: 1;
}
.ModalLayer-Mask {
position: absolute;
background: rgba(123,123,123,0.5);
width: 100%;
height: 100vh;
}
.ModalLayer-Inner {
position: absolute;
top: 50%;
left: 50%;
width: 100%;
max-width: 960px;
transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
    
.box_news{
width: 100%;
background-color: #f9f9f9;
padding-bottom: 20px;
}    
    
.ticker {
height:100px;
width:100%;
overflow: scroll;
list-style: none;
font-size:100%;
}

.ticker li {
height:20px;
width:100%;
line-height:120%;
padding-left:0%;
text-align: left;
padding:2px 15px;
white-space: nowrap
}    
    
.ModalLayer-Inner {
padding-left: 24px;
padding-right: 24px;
max-height: 70%;
width: 90%;
overflow: scroll;
line-height: 140%;
}
}
.ModalSection {
background: #fff;
}
.Modal-Inner {
border-top: 5px solid #55908d;
margin-left: auto;
margin-right: auto;
padding: 20px;
max-width: 90%;
}
.Modal-Inner-Headline {
text-align: left;
font-size: 24px;
}
.Modal-Inner-Text {
text-align: left;
}

/*タブ*/
.tab-wrap {
    display: flex;
    flex-wrap: wrap;
}
.tab-label {
    color: White;
    background: LightGray;
    margin-right: 5px;
    padding: 6px 30px;
    order:-1;
    font-weight: bold;
}
.tab-content {
    width: 100%;
    display: none;
}
.tab-switch:checked+.tab-label {
    background: #0e8377;
}
.tab-switch:checked+.tab-label+.tab-content {
    display: block;
}
.tab-switch {
    display: none;
}




/*----------------------------------------------------
	レスポンシブ
----------------------------------------------------*/
@media only screen and (max-width: 767px) {

.box_who{
    font-size:100%;
    padding: 30px 10px 30px 10px;
    line-height: 140%;
    width:90% !important;
}
    
    
.list_gnavi { margin-top: 5px; margin-left: 10px;}
.list_gnavi li{;padding:0px 0px 0px 20px; }
.list_gnavi a {border-bottom: 1px solid #333; padding-bottom:2px;}
    .gnavi_sms a{border: none;}
    
    .box_rec{
    margin-top:2%;
}    
.post-module .post-content .sub_title {
  font-size: 14px !important;
}
#box_kimg {
    height: 500px !important;
}  
.logo{ float: none; width: 80%; height: 80%; padding:10% 5%;}

.tate1{display: none}
.tate2{display: none}

.box_960{ width:100%; margin:0 auto}
.box_kimg .box_960{padding-left: 20px !important}

	body{
		border-top:0px;
	}
	body:before{
		border:0;
	}
	
	.header_box{
		margin:0;
		z-index:25;
	}
	}


.box_gallery .slider .slick-current .text {
    opacity: 1;
    -moz-transform: translate(0, 0%);
    -o-transform: translate(0, 0%);
    -ms-transform: translate(0, 0%);
    -webkit-transform: translate(0, 0%);
    transform: translate(0, 0%);
}

.box_gallery .slider .text {
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    text-align: center;
    background: rgba(0, 0, 0, 0.4);
    opacity: 0;
    font-size: 12px;
    color: #fff;
    transition: 1.6s;
}

@media only screen and (max-width: 767px) {
.box_gallery .slider .text {
    text-align: left;
    margin-left: 10px;
    bottom: -1px;
}
}

/*----------------------------------------------------
	SNSフィード
----------------------------------------------------*/

.sns_column {
 max-width: 960px;
 margin: 0 auto;
 margin-top: -15px;    
 margin-bottom: 70px;    
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
.sns_column div{
 width: 460px;
/*border: solid 1px #b7b3b3;*/
}
.sns_column h3{
 position: relative;    
 text-align: center;
 font-size: 170%;
 margin: 0px;  
 font-weight: 700;    
}
.sns_column .box_insta h3::before{
  content: "";
  display: block;
  width: 200px;
  height: 30px;
  background: url("../images/line_red.png") no-repeat;
  background-size: contain;
  position: absolute;
  left: 63%;
  top: 120%;
  transform: translate(-50%, -50%) rotate(5deg);
  opacity: 0.7;
}   
.sns_column .box_fb h3::before{
  content: "";
  display: block;
  width: 200px;
  height: 30px;
  background: url("../images/line_blue.png") no-repeat;
  background-size: contain;
  position: absolute;
  left: 62%;
  top: 120%;
  transform: translate(-50%, -50%) rotate(5deg);
  opacity: 0.7;    
}    
.sns_column .box_insta h3 img{
    display: inline;
    height: 30px;
    vertical-align: -0.2em;
    margin-right: 6px;
}
.sns_column .box_fb h3 img{
    display: inline;
    height: 30px;
    vertical-align: -0.1em;
}      
.sns_column p{
 text-align: center;
 font-size: 90%;
 margin: 5px 0 10px 0;
}
ul.insta_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;    
}
ul.insta_list li{
    position: relative;
    width: calc((100% - 20px)/3);
}
ul.insta_list img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;	
}
ul.insta_list li:nth-child(n+10){
  display: none;    
}      
ul.insta_list li a p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-top: -10px;    
}
ul.insta_list li a p span {
  font-size: 100%;
}
ul.insta_list li i{
  font-family: "Font Awesome 5 Free";
  content: "\f004";    
  font-weight: 900;    
  color: #d76565;
} 
.box_fb .fb-page {
    width: 100%;
    margin: 0 auto;
    text-align: center;
} 
      
@media screen and (max-width: 750px){
    .sns_column{
        margin-top: 0px;  
        margin-bottom: 0px;
    }
    .sns_column div{
        width: 100%;
        margin: 0px;
        padding: 0% 5% 5% 5%;
    }
    ul.insta_list li{
        width: calc((100% - 20px)/2);
    }
    ul.insta_list li:nth-child(n+7){
  display: none;
    }
    .sns_column h3{
        font-size: 150%;
    }    
    .sns_column .box_insta h3::before {
    left: 68%;
    }
    .sns_column .box_fb h3::before {
    left: 68%;
    }
    .box_fb .fb-page{
    width: 100%;
}}     