@charset "UTF-8";

header.page{
    min-height: max-content !important;
    max-height: 30vh !important;
    padding-bottom: .7em !important;
}

.page__header{
  width: 100vw;
  min-height: clamp(180px,35vh,38vh);
  background: url(../images/page_fv.jpg) no-repeat center;
  position: relative;
}
.page__header:after{
  content: '';
background: #ededed;
position: absolute;
top:0;
left:0;
width: 100%;
height: 100%;
z-index: -1;
}
.company__slider, .company__slider__left{
  margin-bottom: 0;
}

/*************************header*****************************/
.local-header{
  background: #F7F6F2;
  min-height: 50vh;
  position: relative;
}

.local-header::after {
  content: '';
  position: absolute;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  border-right: 100vw solid transparent;
  border-left: 100vw solid transparent;
  border-bottom:25.5416666667vw solid #FFFFFF;
}

.Center__title{
  font-size: clamp(24px,32px,36px);
  text-align: center;
  line-height: 1.65;
}

.local-header .title__wrap{
  position: relative;
  z-index: 2;
  text-align: center;
  padding: 0 var(--row-space) var(--col-space);
}

h1.title{
  font-size: clamp(24px,50px,62px);
  text-align: center;
  margin-top:0;
}

section.white{
  background: #fff;
  padding: var(--col-space) var(--row-space);
}

/******************* パンくず *******************/

.breadcrumbs{
  background: linear-gradient(135deg,  rgb(44, 44, 44) 2%,rgba(0,0,0,1) 80%);
  padding: .5em var(--row-space);
  font-size: 0.65rem;
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  color:#fff;
  font-weight: 300;
}

.breadcrumbs a{
  color:#eee;
}

.breadcrumbs a:hover{
  text-decoration: none;
}
/******************* パンくず *******************/
h1.page__title{
    position: absolute;
    font-size: clamp(40px,5vw,60px);
    font-family: "Zen Old Mincho", serif;
    color:#4e4e4e;
    margin: 0;
    top: 50%;
  right: calc(var(--row-space) + 2vw);
  transform: translateY(-50%);
}

h1.page__title::after{
    content: '';
    display: inline-block;
    margin-left: .5em;
    width: 15px;
    height: .5px;
    vertical-align: middle;
    background: #4e4e4e;
}

.page__estate{
    max-width: 1240px;
    margin: auto;
    width: 100%;
}

section.page__estate__wrap{
    padding:var(--row-space) var(--row-space);
}

.single{
    background: #fff;
    padding: calc(var(--row-space) / 2);
}

.single h2.blog__title{
    padding: .75em;
    margin-bottom: .75em;
    background: #202020;
    color:#fff;
    position: relative;
    font-family: "Zen Old Mincho", serif;
    font-size: 1.45rem;
    line-height: 1.455;
    padding-left: 35px;
        }

 .single h2.blog__title:before{
        content: '';
        position: absolute;
        height: 80px;
        width: 10px;
        background: #fff;
        left:10px;
        top: 50%;
  transform: translateY(-50%);
        }
.single .date{
    margin-top: 0;
    font-family: "Zen Old Mincho", serif;
    font-style: italic;
}

.single .more__btn{
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2.5vh;
    margin-top: 2vh;
}
.cate_icon_wrap{
  flex-wrap: wrap;
  display: flex;
  column-gap: .5em;
}

.cate_icon{
  background: #000;
  color:#fff;
  text-align: center;
  padding: 10px;
  max-width: max-content;
  font-size: 0.9rem;
  line-height: 1.0;
}
.cate_icon a{
  color:#fff;
  text-decoration: none;
}

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

    .single{
        padding:var(--col-space) var(--row-space);
    }
    .single .more__btn{
        margin-top: 10vh;
    }
}

section.page__contents{
  padding: var(--col-space) var(--row-space);
  position: relative;
}

section.page__contents .comm__Inner{
  max-width: 1260px;
  margin: auto;
}

.page__contents + .page__contents{
  border-top: 1px solid #ddd;
}

section.page__contents:nth-of-type(2)::before{
  content: '';
  background: #000;
  width: 100px;
  height: 3px;
  position: absolute;
  top: -1.5px;
  left: 50%;
  transform:translateX(-50%);
}

/*********************SNSシェアボタン********************/

#socialShare {
    width: 100%;
    margin-top: 15px;
    text-align: center;
  }
  
  #socialShare a,
  #socialShare > .socialBox {
    position: relative;
    float: none;
    display: inline-block;
    color: #fff;
    font-size: 20px;
    padding: 5px;
    background-color: transparent;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 50%;
  }
  
  #socialShare  a {
    background-color: rgba(0, 0, 0, 0.2);
    color:#fff;
  }
  
  #socialShare > * > span {
    background-color: rgba(0, 0, 0, 0.6);
    box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.15);
    display: block;
    color: #fff;
    font-size: 16px;
    padding: 8px;
    width: 34px;
    height: 34px;
    line-height: 22px;
    text-align: center;
    border-radius: 50%;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all .35s ease-in-out;
    -moz-transition: all .35s ease-in-out;
    transition: all .35s ease-in-out;
  }
  #socialShare > * > span:hover,
  #socialShare > .open > span {
    -webkit-transform: scale(1.25);
    -moz-transform: scale(1.25);
    transform: scale(1.25);
    -webkit-transition: all .15s ease-in-out;
    -moz-transition: all .15s ease-in-out;
    transition: all .15s ease-in-out;
  }
  
  #socialGallery {
    left: 50%;
    margin: 0 auto 0;
    position: relative;
    top: 10px;
    transform: translate(-50%, 0);
    visibility: hidden;
    width: 400px;
  }
  
  #socialGallery a {
    visibility: hidden;
    opacity: 0;
    margin: 5px 2px;
    background-color: rgba(0, 0, 0, 0.6);
    position: relative;
    top: 10px;
    line-height: 1.4;
  }
  
  #socialGallery a > span {
    position: relative;
    top: 4px;
    left: 4px;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
  }
  
  .socialToolBox {
    cursor: default;
  }
  
  .pointer {
    cursor: pointer
  }
  
  .facebook:hover {
    background: #3b5998 !important
  }
  
  .google:hover {
    background: #dd4b39 !important
  }
  
  .instagram:hover {
    background: #517fa4 !important
  }
  
  .tumblr:hover {
    background: #32506d !important
  }
  
  .twitter:hover {
    background: #00aced !important
  }
  
  .youtube:hover {
    background: #bb0000 !important
  }
  
/***************** コンサート詳細 ******************/
.detail_part .title{
  font-family: "Zen Old Mincho", serif;
  font-size: 20px;
  margin-bottom: 1em;
  font-style: italic;
  letter-spacing: 0.083em;
}

.detail_part  *{
  color:#262626;

}

.detail_part dl{
  margin-top: 20px;
  border-bottom: 1px solid rgba(180, 165, 146, 0.5);
  border-top: 1px solid rgba(180, 165, 146, 0.5);
  display: flex;
  font-size: 1.0rem;
}
.detail_part dl dt{
  padding: 1em;
  display: flex;
  align-items: center;
  border-right: 1px solid rgba(180, 165, 146, 0.5);
  width:25%;
  color:#262626;
  font-family: "Source Han Serif";
}
.detail_part dl dd{
  font-family: "Source Han Serif";
  font-weight: normal;
  letter-spacing: 0.08em;
  text-align: left;
  color: #262626;
  padding: 1em;
  margin-bottom: 0;
  line-height: 1.8;
}

/******************* メールフォーム *******************/

dl.border{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  border-top: 1px solid #eee;
}

dl.border dt{
  background: #f6fff4;
  padding: .5em;
  width: 30%;
  text-align: center;
  border-bottom: 1px solid #cfdfd6;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-weight: bold;
}
dl.border dd{
  margin: 0;
  padding: 0 1em;
  width: 70%;
  border-bottom: 1px solid #eee;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.form-attention{
  padding: 1em;
  background: #fafafa;
  line-height: 1.85;
}
input[type="radio"]{
  width:25px;
  height:25px;
  vertical-align:top;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="password"],
select,
textarea {
border-radius: 3px;
padding:1em .5em;
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.1);
border:solid 1px #a7a7a7;
margin:auto;
width:100%;
display:block;
line-height:1.4;
font-size: 16px;
font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
}

.wpcf7-not-valid-tip{
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 14px;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
border:solid 2px #000;
background-color: #f2f2f2;
}

input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="date"] {
    background-color: #fafafa;
    width: 100%;
}

input[type="date" i] {
  padding: .75em;
  margin-bottom: 1em;
}

input[type="text"], input[type="email"], input[type="tel"], input[type="search"], input[type="password"], select, textarea{
  width: 100%;
  color:#010101;
}

input[type="reset"],
input[type="button"],
input[type="submit"],
button {
   color: #FFFFFF;
    display:block;
   margin:1em auto 0 auto;
   padding:25px;
   -moz-appearance: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    cursor: pointer;
    background-color: #f3bf20;
    border: 0px;
     -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    width:100%;
    box-sizing:broder-box;
    font-size:1.4rem;
    font-weight:400;
    letter-spacing:1px;
    max-width: 500px;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    transition: all .3s;
}

input[type="reset"]:hover, input[type="button"]:hover, input[type="submit"]:hover, button:hover{
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.0);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.0);
    background:#db450a;
}


select{
 font-size:1.0rem;
 }

 dl.form dt p, dl.form dd p{
  margin-bottom: 0;
 }

 span.text_red{
  background:#fe0000;
  text-align:center;
  color:#fff;
  margin-left:5px;
  display:inline-block;
  line-height:1.0;
  font-size:0.85rem;
  padding:3px;
  font-weight:normal;
  } 
  
hr{position: relative;background: #ddd;opacity: 1;margin: var(--col-space) auto;}

dl.privacy {
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;

}

dl.privacy dt{
  font-weight: bold;
  font-size: 1.1rem;
}

dl.privacy dd{
  margin-bottom: 2em;
}

.points__flex{
  display: flex;
  justify-content: space-between;
}

.points__flex.align__center{
  align-items: center;
}

.points__flex:nth-of-type(even){
  flex-direction: row-reverse;
}

.points__wrap{
  border:2px solid #f3bf20;
  padding: clamp(1em,1.5em,1.5em);
  width: calc(96% / 3);
}

.points__wrap .number{
  border-radius: 4.46em;
  background: #f3bf20;
  font-size: 0.85rem;
  text-align: center;
  padding: .5em;
  max-width: 30%;
  margin: -45px auto 0;
  font-size: 1.2rem;
  color:#fff;
  line-height: 1.1;
  font-weight: bold;
}

.points__wrap h3{
  color:#f3bf20;
  text-align: center;
  font-weight: 600;
  line-height: 1.55;
}

.points__flex .member__wrap{
  width: calc(98% / 2);
}

.points__flex + .points__flex{
  margin-top: var(--row-space);
}

.re__ico{
  background: #f3bf20;
  color:#fff;
  max-width: max-content;
  padding: 5px 1em;
  font-size: 0.9rem;
  display: block;
}

.re__ico.gray{
  background: #a7a7a7;
}

/**********************************/

h3.achievement{
  background: #202020;
  color:#fff;
  padding: .75em;
  margin-bottom: 1em;
  font-size: 1.45rem;
  font-family: "Zen Old Mincho", serif;

}

.searchResult{
  display: flex;
  flex-wrap: wrap;
  column-gap: 2%;
  row-gap: 1.5vh
}

.achivements_cont{
  width: var(--flex_fourth);
  padding: .5em;
  border-top: 2px solid #ddd;
  border-bottom: 2px solid #ddd;
  font-size: 0.85rem;
}

#achivements .comm__Inner, .achievement__search{
  max-width: 1240px;
  margin: auto;
}

h3.B-border{
  border-bottom: 4px solid #f3bf20;
  padding-bottom: .5em;
  padding-left: .5em;
  font-family: "Zen Old Mincho", serif;
  font-weight: bold;
}

section#achivements{
  padding: var(--col-space) var(--row-space);
}

.achievement__search{
  margin-top: var(--col-space);
}

.achievement__search.mt{
  margin-top: 0;
}

.hidden-search-field{
  margin-bottom: 1em !important;
}

.other_top1{
  padding: var(--col-space) var(--row-space);
}

.other_top1 .Center{
  text-align: center;
}

h4.city{
  padding: .5em .5em .5em 1.5em;
  border: 1px solid #ccc;
  background: #fcfeff;
  position: relative;
}

h4.city::before{
  content: '';
  background: #f3bf20;
  width: 5px;
  border-radius: 1.46em;
  height: 50%;
  position: absolute;
  top: 50%;
  left: .5em;
  transform: translateY(-50%);
}