@charset "UTF-8";
/* CSS Document */

/*input[type="text"],*/


button,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}


input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p,
dl, dt, dd, ol, ul, li
{
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
  box-sizing: border-box;
  letter-spacing: 0.02em;
  color:#3c3c3c;
}

div,section{
  box-sizing: border-box;
  letter-spacing: 0.02em;
  color:#3c3c3c;
}

body {
  line-height:1.5;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: normal;
  padding-top: 150px;
}

ul {
  list-style:none;
}

a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
transition: 0.5s;
}

a:hover{
  opacity: 0.8;
}

/* change colours to suit your needs */
mark {
  background-color:#ff9;
  color:#000; 
  font-style:italic;
   font-weight:bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom:1px dotted;
  cursor:help;
}

table {
  border-collapse:collapse;
  border-spacing:0;
}

.eng *{
  font-family: "Castoro Titling", serif;
  font-weight: 400;
  font-style: normal;
}

.min *{
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-style: normal;
}

.min02 *{
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
}

.fw-n{
  font-weight: normal !important;
}

.eng{
  font-family: "Castoro Titling", serif;
  font-weight: 400;
  font-style: normal;
}

.min{
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-style: normal;
}

.min02{
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
}

/* change border colour to suit your needs */
hr {
  display:block;
  height:1px;
  border:0;   
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}

input, select {
  vertical-align:middle;
}

img{
  max-width: 100%;
}

.oz_profileListSec01_btnBtn {
  -webkit-appearance: none;
}

.sp{
  display: none;
}

.fw-n{
  font-weight: normal;
}

  #oz_wrapper,
.oz_ovhidden{
    width: 100vw;
    overflow-x: hidden;
  }

.oz_h1{
  padding: 2px;
  background: #575757;
  text-align: right;
  width: 100%;
}

.oz_h1 span{
  display: block;
  margin: auto;
  width: 90%;
  font-size: 12px;
  color:#ffffff;
}

/* main */
.oz_spLogo,.oz_spHead,.oz_navFirst,.spFoot{
  display: none;
}

.oz_headcontWrap{
/*  background:  #222222;
  padding-bottom: 40px;*/
  padding-bottom: 8px;
}

  .baseCl{
    background: #93835c;
  }
  
  .oz_head{
    position: absolute;
    height:auto;
    width: 100%;
    box-sizing: border-box;
    z-index: 100;
    top:0;
    left: 0;
    background:  #ffff;
  }

/*.oz_headlink_text01{
  color:#3c3c3c;
}*/

.oz_head.oz_pageHead{
  background: #ffffff !important;
}
  
  .oz_menuBox{
    display: flex;
    align-items: center;
    width: 90%;
    max-width: 1100px;
    margin: auto;
    padding-left: 200px;
    padding-bottom: 10px;
  }

  .oz_logo{
    font-size: 13px;
    font-weight: normal;
    letter-spacing: 0;
  }  

  .oz_logo .oz_h1span{
    font-size: 28px;
    font-weight: normal;
     color: #ffffff;
  } 
  
  .oz_headText{
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
  }
  
  .oz_headText_pt01{
    margin-right: 20px;
    font-size: 16px;
  }
  
  .oz_headText_pt01_span{
    color:#93835c;
  }
  
  .oz_headText_pt02{
    font-size: 25px;
    display: flex;
    align-items:center;
    margin-right: 20px;
     color: #ffffff;
  }
  
  .oz_headText_pt02_span{
    display: flex;
    margin-right: 8px;
    font-size: 16px;
  }

.ft20{
  font-size: 20px;
  color: #ffffff;
  display: inline-block;
  margin-right: 5px;
}

.oz_headlink{
  text-decoration: none;
}
  
  .oz_headlink.oz_headBtn{
    font-size: 16px;
    color:#ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    width: 130px;
    border-radius: 100px;
    text-decoration: none;
}

  
.oz_header_wrap{
  position: relative;
  /*height: 55px;*/
      display: flex;
    justify-content: flex-end;
  align-items: center;
  width: 90%;
    margin: auto;
    max-width: 1600px;
  padding-left: 200px; 
}

.oz_headText02_pt01{
  margin-right: 20px;
}

.oz_logoimg{
  position: absolute;
  /*top:-22.5px;*/
  left: 0;
}

.oz_headline_inner{
    width: 100%;
    max-width: 1100px;
    margin: auto;
}

  @media screen and (min-width:1101px){
    .oz_menuBox .oz_menuBoxList{
      position: relative;
    }
    
  .oz_menuBox{
    width: auto;
    justify-content: space-between;
    flex-wrap: wrap;
    text-align: center;
  }
    
  .oz_logo02{
    padding-left: 50px;
  }  
    
    .oz_menuBox .oz_headlink{
      padding: 10px;
      display: block;
    }
    
    .oz_headlink_text02{
      font-size: 20px;
      margin-bottom:0;
      color:#93835c;
      display: block;
      width: 100%;
    }
    
    .oz_headlink_text01{
      font-size: 14px;
      display: block;
      width: 100%;
    }
    
  }

  .oz-image{
    position: relative;
    width: 100%;
    height: 460px;
    overflow: hidden;
  }
  
  .oz-image_img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
  }
  
        .single-image .oz-image_img{
            display: block;
            margin: 0 auto;
        }
  

  .oz_main{
    padding-top: 80px;
    background: #ffff;
  }

  .oz_maintext{
    position: absolute;
    top:calc(50% - 88px);
    width: 100%;
    text-align: center;
  }

.oz-slider .slick-slide .oz_maintextimg {
    display: inline;
}

  .oz_TopSec01{
    padding: 140px 0 110px;
    background-image: url("../images/oz_sec01Bk.png");
    background-size: cover;
    background-position: center left;
  }
  
  .oz_content{
    width: 90%;
    max-width: 900px;
    margin: auto;
  }

  .oz_TopSec01 .oz_content{
    display: flex;
    justify-content: flex-end;
  }
  
  .oz_TopSec01_cont{
    width: 50%;
  }
  
  .oz_Title{
    font-size: 40px;
    font-weight: normal;
    margin-bottom: 50px;
    line-height: 1.5em;
  }
  
  .oz_SubTitle{
    display: block;
    font-size: 15px;
    color:#93835c;
    line-height: 1.5em;
  }
    
.oz_TopSec02{
  padding: 160px 0 80px;
  background:url("../images/oz_sec02BK.png") center;
  background-size: cover;
}

.oz_tc{
  text-align: center;
}

  .oz_TopSec02_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  
  .oz_TopSec02_item{
    width: calc((100% - 130px) / 3);
    margin-right: 65px;
  }
  
  .oz_TopSec02_item:nth-child(3n + 3),
  .oz_TopSec02_item:last-child{
    margin-right: 0;
  }
  
  .oz_TopSec02_item:nth-child(N + 4){
    margin-top: 40px;
  }
  
  .oz_TopSec02_item_img{
    text-align: center;
  }
  
  .oz_TopSec02_item_text01{
    text-align: center;
    margin: 20px 0;
    font-size: 22px;
  }

  .oz_profText01{
    font-size: 36px;
    margin-bottom: 10px;
  }
  
  .oz_profText_span{
    font-size: 22px;
    display: inline-block;
    margin-left: 10px;
  }
  
  .oz_profText02{
    color:#93835c;
    margin-bottom: 50px;
  }
  
  .oz_profBtn{
    display: inline-flex;
    font-size: 16px;
    color:#ffffff;
    justify-content: center;
    align-items: center;
    height: 40px;
    width: 180px;
    border-radius: 100px;
    text-decoration: none;
    background:#222222;
    margin-top: 50px;
  }

  .oz_TopSec04{
    padding:130px 0 100px;
  }
  
  .oz_week{
    display: flex;
    justify-content: center;
    margin-bottom: 40px;
  }
  
  .oz_date{
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    height: 90px;
    width:90px;
    margin:0 10px;
    background: #e2e2e2;
    color: #7e7e7e;
    font-size: 16px;
    text-align: center;
  }

.oz_date_block{
  text-decoration: none;
  color:#7e7e7e;
}
  
  .oz_dateText{
    font-size: 22px;
    color:#7e7e7e;
  }
  
  .oz_date.oz_sun{
    background: #fddfe8;
  }
  
  .oz_date.oz_mon{
    background: #3c3c3c;
  }  
  
  .oz_date.oz_mon .oz_date_block,
  .oz_date.oz_mon .oz_dateText{
    color:#ffffff;
  }  

.oz_TopSec04Cont_box_link{
  text-decoration: none;
}

.oz_TopSec04{
  padding-bottom: 80px;
}
  
  .oz_TopSec04Cont{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
  }
  
  .oz_TopSec04Cont_box{
    width: calc((100% - 60px) / 3);
  }
  
  .oz_TopSec04Cont_box:nth-child(3n + 2){
    margin-left: 30px;
    margin-right: 30px;
  }
  
  .oz_TopSec04Cont_img{
    width: 100%;
    height: auto;
    aspect-ratio:1/1.311;
    position: relative;
  }
  
  .oz_sec04Img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  
  .oz_TopSec04Icon{
    padding: 8px 20px;
    background: #f50014;
    color:#ffffff;
    position: absolute;
    top:10px;
    left: 10px;
  }
  
  .oz_TopSec04Schedule{
    text-align: center;
    padding: 8px;
    position: absolute;
    left: 10px;
    bottom:15px;
    width: calc(100% - 20px);
    background: rgba(255 255 255 / 90%);
  }
  
  .oz_TopSec04Span{
    color:#93835c;
  }
  
  .oz_TopSec04Text01{
    font-size: 14px;
    margin-top: 10px;
  }
  
  .oz_TopSec04Text02{
    font-size: 22px;
  }
  
  .oz_TopSec04Text03{
    font-size: 14px;
    margin-bottom: 20px;
    color:#93835c;
  }
  
  .oz_TopSec04list{
    display: flex;
    flex-wrap: wrap;
  }
  
  .oz_TopSec04item{
    padding: 5px 10px;
    border:1px solid #bfbfbf;
    margin-right: 8px;
    font-size: 15px;
  }
  
  .oz_linkBtnWrap{
    text-align: center;
  }
  
  .oz_linkBtn01{
    display: inline-flex;
    font-size: 16px;
    color:#ffffff;
    justify-content: center;
    align-items: center;
    height: 40px;
    width: 260px;
    border-radius: 100px;
    text-decoration: none;
    background:#222222;
    margin-bottom: 20px;
  }  
  
  .oz_linkBtn02{
    display: inline-flex;
    font-size: 16px;
    color:#222222;
    justify-content: center;
    align-items: center;
    height: 40px;
    width: 260px;
    border-radius: 100px;
    text-decoration: none;
    border:1px solid #222222;
  }    
  
  .oz_TopSec05{
    padding: 95px 0 100px;
    background:url("../images/oz_sec05BK.png") center;
    background-size: cover;
  }

  .oz_TopSec05 h2.is-style-section_ttl {
    color: #fff;
  }

 .oz_TopSec05 h2.is-style-section_ttl small{
    color: #fff;
  }

  .oz_TopSec05_contWrap{
    display: flex;
    flex-wrap: wrap;
  }  
  
  .oz_TopSec05 .oz_wt,
  .oz_TopSec05 .oz_SubTitle{
    color:#ffffff;
  }
  
  .oz_TopSec05_cont{
    background: #ffffff;
    margin-bottom: 30px;
    width: calc((100% - 60px) / 3);
    margin-right: 30px;
    padding: 0;
  }
  
  .oz_TopSec05_cont:nth-child(3n + 3){
    margin-right: 0;
  }
  
  .oz_TopSec05_img{
    aspect-ratio:1 / 1.311;
    width: 100%;
    padding: 0;
  }
  
  .oz_sec05Img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  
  .oz_TopSec05_box{
    padding: 20px;
    width: 100%;
  }  

  .oz_TopSec05_cont a{
  text-decoration: none;
  }
  
  .oz_TopSec05_boxText01{
    font-size: 16px;
    margin: 5px 0;
    color:#93835c;
    font-weight: 600;
  }
  
  .oz_TopSec05_boxText02{
    font-size: 13px;
    color:#8e8e8e;
  }
  
  .oz_TopSec05_boxText03{
    font-size: 16px;
    font-weight: bold;
  }

  .oz_Top  
  .oz_linkBtnWrap02{
    margin-top: 60px;
  }


.oz_spfoot{
 position: fixed;
  bottom:-100px;
}

.oz_spfoot02{
 position: fixed;
  bottom:-100px;
}

  .oz_foot{
    padding: 145px 0 50px;
    background: #f0f0f0;
    text-align: center;
  }
  
  .foot_logo{
    font-size: 44px;
    color:#222222;
    margin-bottom: 10px;
  }
  
  .foot_tel__link {
    text-decoration: none;
    color:#222222;
  }
  
  .foot_tel__text01{
    color:#222222;
    font-size: 32px;
    line-height: 1.5em;
  }
  
.foot_tel__text01 i{
  color:#222222;
}

  .foot_tel__text02{
    color:#222222;
    font-size:14px;
    line-height: 1.5em;
  }
  
.oz_footTel{
  display: inline-block;
  margin-right: 10px;
}

  .oz_foot__cont02__ListWrap{
    max-width: 1200px;
    margin: auto;
    display: flex;
    justify-content: center;
    margin-top: 50px;
    flex-wrap: wrap;
  }
  
.oz_foot__cont02__List{
  margin-top: 8px;
}

  .oz_foot__cont02__List .oz_tdnone{
    color:#222222;
    font-size: 15px;
    text-decoration: none;
  }
  
  .oz_foot__cont02__List:not(:last-child):after{
    content:"　　";
    color:#222222;
  }
  
  .oz_foot__cont02__copy{
    text-align: center;
    margin-top: 30px;
    color:#222222;
    font-size: 12px;
  }

/* ver02 top */
  .oz_headWrap02{
    display: flex;
    align-items: baseline;
    margin-top: 10px;
  } 
  
  .oz_headText02_pt01{
    margin-left: 20px;
    font-size: 16px;
  }
  
  .oz_headText02_pt02{
    font-size: 28px;
    display: flex;
    align-items:center;
    margin-left: 20px;
    line-height: 1em;
  }

  .oz-slider02Wrap{
    /*width: 100vw;*/
    width: 100%;
    overflow: hidden;
    /*padding-bottom: 30px;*/
    padding-top: 25px;
    /*background: #222222;*/
  }

  .oz-slider02{
    width: 100%;
    margin: auto;
    overflow: visible;
  }
  
  .oz-slider02 .slick-list{
    overflow: visible !important;
    margin: auto;
    width: 100%;
    max-width: 1000px;
  }
  
  .oz-slider02 .oz-image02{
    padding: 0 25px;
  }
  
          .oz-slider02 .slick-dots li button:before {
            font-size: 12px;
            color: black;
            opacity: 0.75;
        }

        .oz-slider02 .slick-dots li.slick-active button:before {
            color: black;
            opacity: 1;
        }

        .oz-slider02 .slick-dots {
            display: flex !important;
            justify-content: center;
          position: absolute;
          width: 100%;
          bottom:20px;
          left: 0;
        }

        .oz-slider02 .slick-dots li {
            margin: 0 5px;
          text-indent:-9999px;
          height: 10px;
          width:10px;
          background: #d9d9d9;
          border-radius: 100px;
        }
  
  .oz-slider02 .slick-dots li.slick-active{
    background: #93835c;
  }

  .oz_TopSec01_b{
    padding: 80px 0 40px;
  } 
  
  .oz_TopSec01_b_Box{
    max-width: 620px;
    margin: auto;
  }
  
  .oz_TopSec01_b_Box:not(:last-child){
    margin-bottom: 60px;
  }

  .oz_TopSec01_b_text01{
    margin-bottom: 5px;
    color:#93835c;
    font-size:13px;
  }
  
  .oz_TopSec01_b_text02{
    font-size: 20px;
    padding-bottom: 8px;
    margin-bottom: 20px;
    border-bottom: 1px dashed #cccccc;
  }
  
  .oz_TopSec01_b_text03{
    font-size: 16px;
    text-align: justify;
  }

.oz_TopSec_slide{
  /*width: 100vw;*/
  width: 100%;
  overflow: hidden;
  padding:  0;
  /*padding: 145px 0 0;*/
}

  .oz_topSlide_list__img{
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;
    aspect-ratio:1/1.312;
    position: relative;
  }
  
  .oz_topSlide_list__item{
    padding:0 10px;
    position: relative;
  }
  
  .oz_topSlide_list__inner{
    height: 100%;
  }
  
  .oz_topSlide_list__box{
    padding:20px 0 40px;
  }
  
  .oz_topSlide_list{
    overflow: visible;
    position: relative;
  }
  
  .oz_topSlide_list .slick-list{
    overflow: visible;
  }
  
  .oz_topSlide_list__text02{
    font-size: 13px;
    color:#93835c;
    margin-bottom: 30px;
  }
  
  .oz_topSlide_list__text01{
    font-size: 22px;
    line-height: 28px;
  }
  
  .oz_topSlide_list .prev{
    position: absolute;
    z-index: 10;
    left: -15px;
    top:160px;
}
  
    .oz_topSlide_list .next{
    position: absolute;
    z-index: 10;
    right: -15px;
    top:160px;
}
  
.oz_topSlide_listIcon {
    padding: 8px 20px;
    background: #f50014;
    color: #ffffff;
    position: absolute;
    top: 10px;
    left: 20px;
  width: 90px;
  text-align: center;
}  

.oz_topSlide_listIcon.pt02 {
    background: #666666;
}

.oz_topSlide_listIcon02 {
    padding: 4px;
    background: #ffffff;
    color: #000000;
    position: absolute;
    top: 55px;
    left: 20px;
    text-align: center;
    width: 90px;
}  

  .oz_tdnone{
    text-decoration: none;
  }

 
  .oz_TopSecCupon{
    padding: 100px 0 120px;
  }
  
  .oz_TopSecCupon_cont{
    padding: 60px;
    border:1px solid #e0e0e0;
  }

.oz_TopSecCupon_cont:not(:last-child){
  margin-bottom: 60px;
}
  
  .oz_TopSecCuponTitle{
    display: flex;
    padding: 10px 0;
    margin-bottom: 20px;
    border-bottom: 1px solid #93835c;
    font-size: 22px;
    align-items: center;
  }
  
  .oz_cpIcon{
    display: inline-block;
    margin-right: 10px;
  }
  
  .oz_TopSecCuponText{
    font-size: 16px;
  }

  .oz_TopSecBnr{
    padding: 50px 0;
  }

.oz_entryLogo{
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  top:calc(50% - 250px);
}


  .oz_entry_text{
    text-align: center;
    position: absolute;
    width: 100%;
    bottom:70px;
    color:#000000;
    font-size: 15px;
    line-height: 26px;
  }  
  
  .oz_pink{
    color:#f50014;
  }
  
.oz_overlay {
    display: none;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    position: fixed;
    z-index: 9999999;
    top: 0;
    left: 0;
}
.oz_entry_wrap{
width: 660px;
height: auto;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
display: flex;
  justify-content: space-between;
}

.oz_entry{
display: flex;
justify-content: center;
  text-align: center;
  align-items: center;
  height: 120px;
  width: 300px;
  background: #000000;
  transition: 0.5s;
}
 
.oz_entry:hover{
  opacity: 0.8;
  }
  
.oz_entry .oz_entry_text01{
font-size: 40px;
  letter-spacing: 0.1em;
  color:#ffffff;
  line-height: 1em;
}  
  
.oz_entry .oz_entry_text02{
font-size: 18px;
  color:#f50014;
}  
  
.oz_entry.oz_pt02{
box-sizing: border-box;
  background: #f50014;
}
 
.oz_entry.oz_pt02 .oz_entry_text01{
  color:#ffffff;
}  
  
.oz_entry.oz_pt02 .oz_entry_text02{
  color:#000000;
}  

.oz_entrylink{
  color:#000000;
}

/*other*/
  .oz_systemWrap{
    padding: 80px 0 130px;
    background: #f4f4f4;
    /*background: #ffffff;*/
  }
  
  .oz_systemBox{
    background: #ffffff;
    padding:80px 0 50px;
    position: relative;
    margin-bottom: 40px;
  }
  
/*.oz_systemTitle{
  background: url("../images/other/oz_systemTitle.png") center;
  background-size: contain;
  width: 308px;
  text-align: center;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 26px;
  font-weight: normal;
  margin: auto;
  margin-bottom: 20px;
  color:#93835c;
  background-repeat: no-repeat;
}*/

.oz_systemTitle02{
  color:#3c3c3c;
}

  .oz_TopSystem_table{
    width: 100%;
    max-width: 630px;
    margin: auto;
    margin-bottom: 20px;
  }
  
  .oz_TopSystem_th{
    font-size: 18px;
    text-align: left;
    font-weight: normal;
    padding: 8px;
    border-bottom: 1px solid #ededed;
    vertical-align: middle;
    width: 50%;
  }
  
  .oz_TopSystem_td{
    font-size: 18px;
    text-align: right;
    font-weight: normal;
    padding: 8px;
    border-bottom: 1px solid #ededed;
    vertical-align: middle;
    width: 50%;
  }
  
  .oz_TopSystem_span{
    color:#93835c;
    font-size: 20px;
  }
  
  .oz_TopSystem_small{
    color:#93835c;
    font-size: 24px;
  }
  
  .oz_TopSystem_text{
    width: 100%;
    max-width: 630px;
    margin: auto;
    font-size: 15px;
  }


/*  .oz_systemBox:before{
  content:" ";
  display: block;  
  width: 61px;
  height: 61px;
  background:url("../images/other/oz_systemImg.png") center;
  background-size: contain;
  position: absolute;
  top:10px;
    left: 10px;
}

  .oz_systemTitle:before{
  content:" ";
  display: block;
  width: 61px;
  height: 61px;
  background:url("../images/other/oz_systemImg.png") center;
  background-size: contain;
  position: absolute;
    top:10px;
    right: 10px;
    transform: rotate(90deg)
}

  .oz_systemBox:after{
  content:" ";
  display: block;  
  width: 61px;
  height: 61px;
  background:url("../images/other/oz_systemImg.png") center;
  background-size: contain;
  position: absolute;
    bottom:10px;
    left: 10px;
    transform: rotate(-90deg)
}

  .oz_systemTitle:after{
  content:" ";
  display: block;
  width: 61px;
  height: 61px;
  background:url("../images/other/oz_systemImg.png") center;
  background-size: contain;
  position: absolute;
    bottom:10px;
    right: 10px;
    transform: rotate(180deg);
}*/

.oz_TopSystem_tr{
  display: flex;
  width: 100%;
}

.oz_systemLastBox{
  margin-bottom: 0;
}

  .oz_TopSystem_th_last{
    width: 100%;
  }
  
  .oz_TopSystem_text02{
    font-size: 16px;
    margin-top: 10px;
  }
  
  .oz_TopSystem_text03{
    width: 100%;
    max-width: 630px;
    margin: auto;
    font-size: 18px;
    margin-bottom: 20px;
  }
  
  .oz_TopSystem_card{
    width: 100%;
    max-width: 630px;
    margin: auto;
    margin-bottom: 30px;
  }

/* prof */
  .oz_other_pageTitle{
    margin-top: 80px;
    margin-bottom: 50px;
  } 
  
  .oz_other_pageTitle_span{
    text-align: center;
    font-size: 40px;
    display: block;
  }
  
  .oz_other_pageTItle_small{
    font-size: 22px;
    display: block;
    text-align: center;
  }
  
  .oz_profileTable{
    margin-top: 35px;
    width: 100%;
  }
  
  .oz_profileTable_th{
    width: 50%;
    padding: 15px 0;
    font-weight: normal;
    font-size: 16px;
    color:#93835c;
    text-align: left;
    border-bottom: 1px solid #f8f8f8;
  }
  
  .oz_profileTable_td{
    width: 50%;
    padding: 10px 0;
    font-weight: normal;
    font-size: 16px;
    text-align: left;
    border-bottom: 1px solid #f8f8f8;
  }

.oz_profileTable_tr{
  display: flex;
}

.oz_profileTable_tr.col2,
.oz_profileTable_tr.col2 .oz_profileTable_td,
.oz_profileTable_tr.col2 .oz_profileTable_th{
  display: block;
  width: 100%;
}
  
  .oz_bdnone{
    border-bottom:0;
    width: 100%;
  }
  
  .oz_profileTable_td.oz_bdnone{
    padding-top: 0;
  }

  .oz_profSns{
    display: flex;
    margin-top: 110px;
  }
  
  .oz_prof{
    margin-right: 15px;
  }
  
  
 .oz_profileSec01_cont01{
    display: flex;
    justify-content: space-between;
    margin: auto;
   margin-bottom: 130px;
  }
  
  .oz_profileSec01_box01{
    max-width: 420px;
    aspect-ratio:1/0.764;
    height: 550px;
    width: 100%;
  }
  
  .oz_profileSec01_box02{
    width: 100%;
    max-width: 420px;
  }  
  
  .oz_profileSec01_box02_Icon{
    display: flex;
    flex-wrap: wrap;
  }
  
  .oz_profileSec01_box02_IconDetail{
    margin-right: 8px;
    border:1px solid #d7d7d7;
    font-size: 15px;
    padding:8px 15px;
    color:#3c3c3c;
    margin-bottom: 8px;
  }
  
  .oz_profileSec01_box02_text01{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 30px;
  }
  
  .oz_profileSec01_box02_text01_a{
    font-size: 26px;
    margin-right: 20px;
    align-items: center;
    letter-spacing: 0.1em;
    font-weight: 400;
    margin: 10px 0;
  }
  
  .oz_profileSec01_box02_text01_a .oz_profileSec01_box02_text01_a_span{
    font-size: 18px;
    display: inline-block;
    margin-left: 10px;
    letter-spacing: 0.1em;
  }

.oz_profileSec01_box02_text01_aBox{
    width: calc(100% - 30px);
    padding-right: 10px;
}
  
  .oz_profileSec01_box02_text01_b{
    display: flex;
    align-items: center;
    position: relative;
    top:-5px;
    width: 178px;
  }
  
  .oz_profileSec01_box02_text01_b_icon01{
    height: 38px;
    padding: 10px 20px;
    color:#ffffff;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    background: #ba002f;
    margin-right: 8px;
    font-size: 16px;
  }
  
  .oz_profileSec01_box02_text01_b_icon02{
    padding-top: 5px;
  }

  .oz_profileSec01_ImgBox{
    width: 100%;
    max-width: 420px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
  }
  
  .oz_profileSec01_ImgBoxInner{
    width: calc((100% - 12px) / 5);
    margin-right: 3px;
    margin-bottom: 3px;
    line-height: 0;
    box-sizing: border-box;
    aspect-ratio:0.764 / 1;
  }
  
  .oz_profileSec01_ImgBoxInner.oz_current{
    border:1px solid #000000;
  }
  
  .oz_profileSec01_ImgBoxInner:nth-child(5n + 5){
    margin-right: 0;
  }
  
  .oz_profileSec01Title{
    margin-top: 70px;
    color:#3c3c3c;
    font-size: 22px;
    font-weight: normal;
    margin-bottom: 40px;
    background-repeat: no-repeat;
    text-align: center;
  }

  .oz_profileSec01_cont02_box{
    display: flex;
    flex-wrap: wrap;
  }
  
  .oz_profileSec01_cont02_boxInner{
    width: 126px;
    margin-right: 3px;
    margin-bottom: 3px;
  }
  
.oz_profileSec01_box01_img{
  width: 100%;
  height: 550px;
  object-fit: cover;
}

.oz_profileSec01_ImgBox_img{
  width: 100%;
  object-fit: cover;
  height: 100%;
  object-position: center;
}

  .oz_profileSec01_cont02_boxInner:nth-child(7n + 7){
    margin-right: 0;
  }
  
  .oz_profileSec01_cont02_boxTitle01{
    font-size: 24px;
    color:#ffffff;
    height: 45px;
    background: #000000;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    font-weight: normal;
  }

.oz_profileSec01_cont02_boxTitle01 .oz_profileSec01_cont02_boxTitle01_span{
  font-size: 18px;
  color:#ffffff;
}
  
  .oz_profileSec01_cont02_boxTitle02{
    font-size: 18px;
    color:#535354;
    height: 65px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    border: 1px solid #d8d8d8;
    border-top: none;
    margin-bottom: 3px;
    line-height: 22px;
  }  
  
  .oz_profileSec01_cont02_boxTitle02.oz_none:after{
    content:" ";
    display: inline-block;
    background: #535354;
    height: 1px;
    width: 25px;
  }
  
  .oz_profileSec01_cont02_boxTitle03{
    font-size: 18px;
    height: 45px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    border: 1px solid #d8d8d8;
  }  
  
  .oz_profileSec01_cont02_boxTitle03 .oz_profileSec01_cont02_boxLink{
    color:#93835c;
  }  

  .oz_profileSec01_cont02_boxTitle03.-area{
    margin-top: 3px;
  }

.oz_profileSec01{
  padding-bottom: 120px;
}

.oz_profBlog_contWrap{
    display: flex;
  flex-wrap: wrap;
  }
  
  .oz_profBlog_cont{
    width:calc((100% - 60px) / 3);
    margin-right: 30px;
    background: #ffffff;
  }
  
  .oz_profBlog_cont:nth-child(3n + 3){
    margin-right: 0;
  }
  
  .oz_profBlog_img{
    width: 100%;
    height: auto;
    aspect-ratio:1/1.3;
    line-height: 0;
  }
  
  .oz_profBlog_img .oz_sec05Img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  
  .oz_oz_profBlog_box{
    padding: 20px;
  }
  
  .oz_oz_profBlog_Text01 {
    margin-bottom: 3px;
    font-size: 13px;
    color: #93835c;
  }
  
  .oz_oz_profBlog_Text02 {
    font-size: 16px;
  }

  .oz_profBlog_link{
    text-decoration: none;
  }

  .oz_profSns {
    display: flex;
    gap: 16px;
    margin-top: 20px;
    flex-wrap: wrap;
    align-items: center;
  }
  .oz_profIcon {
    width: 27px;
    height: 27px;
    transition: opacity 0.3s;
  }
  .oz_profIcon:hover {
    opacity: 0.7;
  }
  .oz_emailBox {
    display: flex;
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 6px 8px;
    background: #f9f9f9;
    gap: 8px;
    font-size: 14px;
  }
  .oz_emailBox input {
    border: none;
    background: transparent;
    font-size: 14px;
    width: auto;
  }
  .oz_emailBox button {
    background: #eee;
    border: 1px solid #ccc;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
  }
  .oz_scheduleNotice {
    font-size: 14px;
    color: #666;
    text-align: center;
    line-height: 1.8;
    padding: 12px 16px;
  }

  .oz_TopSec06_UdBnr{
    margin: 90px 0 70px;
  }
  
  .oz_TopSec06_UdBnr__listWrap{
    display: flex;
    flex-wrap: wrap;
  }
  
  .oz_TopSec06_UdBnr__list{
    width: calc((100% - 60px) / 4);
    margin-bottom: 20px;
  }
  
  .oz_TopSec06_UdBnr__list:not(:nth-child(4n + 4)){
    margin-right:20px;
  } 

  
/*  .oz_reviewSec02_contWrap{
    display: flex;
    flex-wrap: wrap;
  }

  .oz_reviewSec02_cont{
    width: calc(50% - 30px);
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    padding-bottom: 45px;
    border-bottom: 1px dotted #eeeeee;
  }
  
  .oz_reviewSec02_cont:nth-child(odd){
    margin-right: 30px;
  }
  
  .oz_reviewSec02_box01{
    width: 200px;
  }
  
  .oz_reviewSec02_box01_img{
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;
    aspect-ratio:1/1.294;
  }
  
  .oz_reviewSec02_box02{
    width: calc(100% - 230px);
  }
  
  .oz_Review__Name{
    font-size: 20px;
    margin-bottom: 15px;
  }
  
  .oz_Review__Name_span{
    font-size: 16px;
  }
  
  .oz_reviewSec02_box02 .oz_reviewBox{
    padding-right: 60px;
  }

    .oz_Review__Rate{
    font-size: 20px;
    margin-bottom: 10px;
    color:#e14169;
  }
  
  .oz_Review__Rate .oz_Review__RateSpan{
    color:#c1c1c1;
  }*/

  .oz_reviewSec01_contWrap{
    display: flex;
    flex-wrap: wrap;
  }

  .oz_reviewSec01_cont{
    width: calc(50% - 30px);
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    padding-bottom: 45px;
    border-bottom: 1px dotted #eeeeee;
  }
  
  .oz_reviewSec01_cont:nth-child(odd){
    margin-right: 30px;
  }
  
  .oz_reviewSec01_box01{
    width: 200px;
  }
  
  .oz_reviewSec01_box01_img{
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;
    aspect-ratio:1/1.294;
  }
  
  .oz_reviewSec01_box02{
    width: calc(100% - 230px);
  }
  
  .oz_Review__Name{
    font-size: 20px;
    margin-bottom: 15px;
  }
  
  .oz_Review__Name_span{
    font-size: 16px;
  }
  
  .oz_reviewSec01_box02 .oz_reviewBox{
    padding-right: 60px;
  }

    .oz_Review__Rate{
    font-size: 20px;
    margin-bottom: 10px;
    color:#e14169;
  }
  
  .oz_Review__Rate .oz_Review__RateSpan{
    color:#c1c1c1;
  }
  
/****************************/
/* 20250326 */
/****************************/

.oz_btnWrap{
  text-align: center;
}
.oz_profBtn.amen_btn{
  background: #333;
}

.oz_TopSec04Icon {
  right: 10px !important;
  left: auto !important;
  background: #F60011 !important;
}

.oz-block-fullWide.oz_block .oz-block-fullWide__inner h3 {
    margin: 30px 0 35px !important;
    padding: 15px 0 !important;
    border-top: #b9b9b9 1px solid !important;
    border-bottom: #b9b9b9 1px solid !important;
    font-size: 20px !important;
    position: relative;
}

@media screen and (max-width: 767px) {
    .oz-block-fullWide.oz_block .oz-block-fullWide__inner h3 {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
        letter-spacing: -0.5px !important;
        font-size: 16px !important;
    }
}


/* cast */
.oz_profileSec01_cont02{
  margin-bottom: 130px;
}

 .oz_castSec02_box03{
    display: flex;
    flex-wrap: wrap;
  }
  
  .oz_castSec02_box03_boxInner{
    width: 147px;
    margin-right: 3px;
    margin-bottom: 3px;
  }
  
  .oz_castSec02_box03_boxInner:nth-child(6n + 6){
    margin-right: 0;
  }
  
  .oz_castSec02_box03_boxTitle01{
    font-size: 18px;
    color:#ffffff;
    height: 45px;
    background: var(--color_sub);
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
  }
  
  .oz_castSec02_box03_boxTitle02{
    color:#535354;
    height: 45px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    border: 1px solid #d8d8d8;
    border-top: none;
    font-size: 26px;
  }  


/* cast list */

  .oz_castListSec01_contWrap{
    padding:25px 50px 35px;
    background: #f5f5f5;
  }
  
  .oz_castListSec01_btn{
    text-align: center;
    padding: 15px;
    background: #3c3c3c;
    font-size: 20px;
    color:#ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 40px;
  }
  
  .oz_castListSec01_btnIcon{
    display: inline-block;
    margin-right: 8px;
  }
  
  .oz_castListSec01_listWrap{
    margin-bottom: 30px;
  }
  
  .oz_castListSec01_listTitle{
    margin-bottom: 10px;
    font-size: 18px;
    color:#3c3c3c;
  }
  
  .oz_castListSec01_listTitle:before{
    content:"";
    display: inline-block;
    width: 8px;
    height: 8px;
    transform: rotate(45deg);
    background: var(--color_sub);
    margin-right: 10px;
  }
  
  .oz_castListSec01_listBox{
    display: flex;
    flex-wrap: wrap;
  }
  
  .oz_castListSec01_list{
    margin-right: 8px;
    margin-bottom: 8px;
    border:1px solid #d7d7d7;
    font-size: 15px;
    padding:8px 15px;
    border-radius: 6px;
    color:#3c3c3c;
    background: #ffffff;
  }
  
  .oz_castListSec01_btnWrap{
    text-align: center;
  }

  .oz_castListSec01_btnBtn{
    display: inline-block;
    width: 220px;
    padding: 10px 0;
    color:#ffffff;
    background: var(--color_sub);
    border-radius: 100px;
    font-size: 18px;
    border: none;
  }

  .oz_hidden-checkbox {
      display: none;
  }

  .oz_select {
      display: inline-block;
  }
  
  .oz_select .oz_castListSec01_list:hover {
      background-color:#D5C7A5;
      cursor: pointer;
  }

  .oz_hidden-checkbox:checked + label .oz_castListSec01_list{
      background-color: var(--color_sub);
    color:#ffffff;
  }

.oz_castTagWrap {
  position: absolute;
  top: 8px;
  left: 8px;
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}

.oz_castTag {
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
  /*border-radius: 4px;*/
  background-color: #1d2089; /* デフォルトは東京と同じピンク系 */
}

/* 大阪だけ紫系に上書き */
.oz_castTag.osaka {
  background-color: #e83e8c; /* 紫系（例：濃いラベンダー） */
}

/* calendar */
.oz_Calendar--Container {
    max-width: 100%;
    margin: auto;
}

.oz_Calendar--Inner {
    padding: 10px;
}

.oz_Calendar--Header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.oz_Calendar--Prev a, .oz_Calendar--Next a {
    color: #3c3c3c;
    font-size: 20px;
}

.oz_Calendar--CurrentMonth {
    flex: 2;
    text-align: center;
    font-size: 20px;
    color: #3c3c3c;
}

.oz_Calendar--Table {
    width: 100%;
    border-collapse: collapse;
}

.oz_Calendar--Table th, .oz_Calendar--Table td {
    border: 1px solid #ccc;
    padding: 10px;
    text-align: center;
    width: calc(100% / 7);
}

.oz_Calendar--DayHeader {
    background-color: #f4f4f4;
}

.oz_Calendar--DayHeader .oz_Calendar--Sunday {
    color: #e80111;
}

.oz_Calendar--DayHeader .oz_Calendar--Saturday {
    color: #009fe9;
}

.oz_Calendar--DayCell {
    vertical-align: top;
}

.oz_Calendar--Date {
    font-size: 18px;
    display: block;
}

.oz_Calendar--TimeInfo {
    font-size: 14px;
    color: #666;
}

h2.is-style-section_ttl{
  font-size: 40px;
  font-weight: normal;
  margin-bottom: 50px;
  line-height: 1.5em;
  text-align: center;    
  font-family: "Castoro Titling", serif;
  font-weight: 400;
  font-style: normal;
}

h2.is-style-section_ttl small{
  display: block;
  font-size: 15px;
  color: #93835c;
  line-height: 1.5em;
}

h2.is-style-section_ttl.-sys{
  text-align: center;
  font-size: 26px;
  margin-bottom: 20px;
  font-weight: normal;
}

.oz-slider02 .prev,
.oz-slider02 .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
}

.oz-slider02 .prev {
  left: 0;
}

.oz-slider02 .next {
  right: 0;
}

.oz-slider02 .prev img,
.oz-slider02 .next img {
  width: 40px;
  height: auto;
  opacity: 0.6;
  transition: opacity 0.3s;
}

.oz-slider02 .prev:hover img,
.oz-slider02 .next:hover img {
  opacity: 1;
}


.oz_rankLabel {
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  color: #93835c;
  background-color: #f4f4f4;
  padding: 4px 12px;
  border-radius: 20px;
  margin-bottom: 10px;
  text-align: center;
  line-height: 1;
}

.oz_sister_block {
  margin-top: 16px;
  text-align: center;
}

.oz_sister_heading {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
  /*font-weight: bold;*/
  color: #333;
  font-size: 16px;
}

.oz_sister_title {
  margin: 0 12px;
}

.oz_sister_line {
  content: "";
  display: inline-block;
  width: 40px;
  height: 1px;
  background-color: #999;
}

.oz_sister_btn_wrap {
  display: flex;
  justify-content: center;
}

.oz_sister_btns {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-bottom: 16px;
}

.oz_sister_btn {
  background: #f0f0f0;
  padding: 8px 24px;
  border-radius: 24px;
  font-size: 16px;
  color: #333;
  text-decoration: none;
  /*box-shadow: inset 0 -1px 0 rgba(0,0,0,0.05);*/
  transition: background 0.3s ease;
} 

/* PC版での上書き */
@media screen and (min-width: 801px) {
  .oz_systemBox h2 {
    background: none;
    width: auto;
  }
}

.oz_castIconGroup {
  position: absolute;
  bottom: 16px;
  right: 8px;
  display: flex;
  gap: 6px;
  z-index: 10;
}

.oz_castTwitterIconWrap {
  background-color: rgba(0, 0, 0, 0.7);
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  position: relative;
}

.oz_castTwitterIcon {
  width: 20px;
  height: 20px;
}

.oz_castLineIconWrap {
  background-color: #05b903; /* LINE公式の緑 (#06C755) */
}

.oz_castBlueskyIconWrap{
  background-color: #0F73FF;
}

.oz_castTwitterIcon img {
  width: 100%;
  height: auto;
  display: block;
}

.oz_reviewCount {
  font-size: 14px;
  color: #555;
  text-align: center;
  margin-bottom: 40px;
}

/* ============================================
   ツイキャス アーカイブ (archive-twitcast.php)
   ============================================ */

/* ── 共通レイアウト ── */
.cnt-area {
  padding: 60px 0;
}
.cnt-box {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 30px;
}
.bg-beige01 {
  background: #f7f4ef;
}

/* ── ページタイトル ── */
.cm-pagettl-area {
  position: relative;
}
.cm-pagettl-box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 260px;
  overflow: hidden;
}
.pagettl-line {
  position: absolute;
  left: 40px;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 55%;
  background: #93835c;
  z-index: 3;
}
.pagettl-ttl-box {
  position: relative;
  z-index: 2;
  text-align: center;
}
.cm-ttl01 .en-box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 8px;
}
.cm-ttl01 .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #93835c;
  display: inline-block;
  flex-shrink: 0;
}
.cm-ttl01 .en {
  font-size: 13px;
  letter-spacing: 0.2em;
  color: #93835c;
  text-transform: uppercase;
}
.cm-ttl01 h1.ja {
  font-size: 30px;
  font-weight: normal;
  letter-spacing: 0.1em;
  color: #3c3c3c;
  margin: 0;
}
.pagettl-photo-box {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.pagettl-photo-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.pagettl-photo-box::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.6);
}

/* ── パンくずリスト ── */
.cm-breadcrumb {
  padding: 10px 30px;
  background: #f7f4ef;
}
.cm-breadcrumb ol {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  font-size: 13px;
  color: #888;
  max-width: 1100px;
}
.cm-breadcrumb li + li::before {
  content: '›';
  margin-right: 4px;
  color: #aaa;
}
.cm-breadcrumb a {
  color: #93835c;
  text-decoration: none;
}
.cm-breadcrumb a:hover {
  text-decoration: underline;
}

/* ── イントロテキスト ── */
.cm-intro-text-area {
  padding: 48px 0 40px;
}
.cm-text-box01 p {
  font-size: 15px;
  line-height: 2;
  color: #555;
}
.cm-text-box01 a {
  color: #93835c;
  text-decoration: underline;
}

/* ── 月別目次 ── */
.twitcast-toc-area {
  padding: 0 0 48px;
}
.twitcast-toc {
  border: 1px solid #e0dcd5;
  padding: 24px 28px;
  background: #fff;
}
.twitcast-toc-ttl {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: #93835c;
  margin-bottom: 14px;
}
.twitcast-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}
.twitcast-toc-list a {
  font-size: 13px;
  color: #3c3c3c;
  text-decoration: none;
  padding: 4px 14px;
  border: 1px solid #d4cfc8;
  display: inline-block;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.twitcast-toc-list a:hover {
  background: #93835c;
  color: #fff;
  border-color: #93835c;
}

/* ── 月グループ ── */
.twitcast-list-wrap {
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.twitcast-month-group {
  scroll-margin-top: 170px;
}
.twitcast-month-ttl {
  font-size: 17px;
  font-weight: normal;
  letter-spacing: 0.08em;
  color: #93835c;
  border-left: 3px solid #93835c;
  padding-left: 12px;
  margin: 0 0 20px;
}

/* ── カードグリッド ── */
.cm-card-list01 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

/* ── カード ── */
.card-link {
  display: block;
  text-decoration: none;
  color: inherit;
  height: 100%;
}
.card {
  background: #fff;
  border: 1px solid #e8e4de;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: box-shadow 0.2s, transform 0.2s;
}
.card-link:hover .card {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  transform: translateY(-2px);
}
.card .photo-box {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  flex-shrink: 0;
}
.card .photo-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.card .text-box {
  padding: 16px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.card .header-box {
  margin-bottom: 10px;
}
.card .meta-row {
  margin-bottom: 6px;
}
.card time.date {
  font-size: 12px;
  color: #999;
  letter-spacing: 0.05em;
}
.card .ttl {
  font-size: 14px;
  font-weight: normal;
  line-height: 1.6;
  color: #3c3c3c;
  margin: 0;
}
.card .body-box {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 8px;
  margin-top: auto;
  padding-top: 10px;
}
.card .desc {
  font-size: 13px;
  color: #777;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.card .link-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

/* ================================================================
   アーカイブページ 説明文
   ================================================================ */

.oz_archiveDesc {
  margin: 0 0 40px;
}

.oz_archiveDesc p {
  font-size: 14px;
  line-height: 2;
  color: #555;
}

@media screen and (max-width: 768px) {
  .oz_archiveDesc {
    margin: 0 0 30px;
  }

  .oz_archiveDesc p {
    font-size: 13px;
  }
}