/* 共通 */
.special { color: #222222; }

.kyoto_university_test-color1 { color: #103a88; }

.sec-box { padding-block: clamp(3em,7vw,70px); }

.bg_hogan { display: block; border-top: 1px solid rgba(0, 0, 0, .06); border-bottom: 1px solid rgba(0, 0, 0, .06);  position: relative; }
.bg_hogan::before {
  content: ""; z-index: -1; position: absolute; top: 0; left: 0; bottom: 0; display: block;
  width: 100%; background-color: #fff; background-image: linear-gradient( transparent 95%, rgba(0, 0, 0, .06) 50%, rgba(0, 0, 0, .06)), linear-gradient( 90deg, transparent 95%, rgba(0, 0, 0, .06) 50%, rgba(0, 0, 0, .06) ); background-size: 16px 16px;
  background-repeat: repeat; }

.bg_stripe { background-color: #e7e9ef; }

/* タイトル */
.sub-ttl { margin-bottom: 1.5em; padding: 0.5em; font-size: clamp(1.063rem, 0.95rem + 0.48vw, 1.25rem); font-weight: bold; text-align: center; background-color: #e5e9f1; }

.sub-ttl2 { margin-bottom: .5em; padding-top: .5em; font-size: 1.2em; font-weight: bold; border-top: 2px solid #e5e9f1; }
.sub-ttl2 span { padding-left: 1.25em; position: relative; }
.sub-ttl2 span::before { content: "◆"; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; color: #103a88; font-size: .85em; }

.sub-ttl3 { margin-bottom: 2em; padding: 0.5em 0; font-size: clamp(20px,5.33vw,24px); font-weight: bold; text-align: center; border: 2px solid #00205b; border-radius: 10px; background: #fff; position: relative; z-index: 1; }

/* ボタン */
.btn-def { padding: .7em 3em .6em 3em; color: #fff; background: #103a88; text-align: center; border: 2px solid #103a88; border-radius: 0; transition: all linear .3s; }
.btn-def:hover { color: #103a88; background: #fff; border: 2px solid #103a88; }

/* ページタイトル */
.pageTitle { display: -webkit-flex; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 1.5em 1.5em 1em; color: #222222; background: url(/img/ritsumeiuni_pageTitle.jpg) no-repeat center /cover; position: relative; }
.pageTitle::before { background-image: url(/img/deco_ttl-darkRed.png); }

.pageTitle .logo-uni > span { display: block; font-weight: bold; }
.pageTitle .logo-uni .logo-dormy { margin-top: 10px; }
.pageTitle .logo-uni .logo-dormy img { margin: 0 10px; }
.pageTitle .logo-uni .logo-kyoto_uni em { margin-right: 5px; color: #103a88; }


/* メッセージ */
.message .s-lead { margin: 0; }
.message .lead { margin: 1em 0 1.5em; }
.message .txt-box { padding: 2em 4em; background: #fff; border: 2px solid #eee; }
.message .apl_icon { padding: .5em 3em 1em; background: #f9efef; border-radius: 3em; position: relative; }
.message .apl_icon::before { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -15px; border: 15px solid transparent; border-top: 15px solid #f9efef; }
.message .apl_icon span { font-size: 1.23em; color:#00205b; }

/* map */
.map .areamap-list > figure { border: 2px solid #eee; }
.map .areamap-list > figure .caption { margin: 0; padding: .5em; text-align: center; background: #e5e9f1; }

/* Youtube */
.youtube { margin-bottom: 0; }
.youtube > .inner { width: 100%;
  aspect-ratio: 16 / 9; }
.youtube iframe { width: 100%;
  height: 100%; }

/* ドーミー4つの特徴 */
.feaList > li { width: 23%; text-align: center; border-radius: 10px; overflow: hidden; background: #fff; position: relative; }
.feaList > li::before { content: ""; position: absolute; bottom: 0; right: 0; border: 10px solid transparent; border-bottom: 10px solid #00205b; border-right: 10px solid #00205b; }
.feaList > li a { display: flex; align-items: stretch; flex-direction: column; color: #222222; }
.feaList > li .dtl { padding: 1.2em .5em 2em; }
.feaList > li h3 { font-size: 1.2em; font-weight: bold; color: #103a88; position: relative; }
.feaList > li h3 + p { margin: .6em 0 0; font-size: .87em; line-height: 1.5; }

.bnr_topics_member { margin-block: 0 min(8vw,80px); }

/* 物件一覧 */
.bukken-box { margin-top: 2em; margin-bottom: 5em; padding: 3em 5.5em 4em; border: 2px solid #d9d9d9; background-color: #fff; position: relative; }
.bukken-box::before { content: ""; position: absolute; top: -2px; right: 0; left: -2px; width: calc(100% + 4px); height: 2px; margin: auto; background-color: #103a88; }

.bukken-box .pickup { position: absolute; top: -2em; right: 0; left: 0; 
  margin: 0; text-align: center; }
.bukken-box .pickup + .bukken-name { margin-top: .8em; }

.bukken-name { color: #103a88; }
.bukken-type .skew { display: inline-block; margin: 0 auto; padding: 0 1.5em; -webkit-transform: skew(-10deg); transform: skew(-10deg); text-align: center; color: #fff; }
.bukken-type .skew > span { display: block; -webkit-transform: skew(10deg); transform: skew(10deg); }

.bukken-type.mens .skew { background-color: #41a1be; }
.bukken-type.ladies .skew { background-color: #ff5f83; }
.bukken-type.ml .skew { background-color: #ffa749; }

.slick-prev::before,
.slick-next::before { border: 2px solid #103a88; }
.slick-prev::after { border-left: 2px solid #103a88; border-bottom: 2px solid #103a88; }
.slick-next::after { border-top: 2px solid #103a88; border-right: 2px solid #103a88; }

.bukken-info { margin-top: 4em; }

.bukken-access-img { margin-block: 2em 3em; }

.sub-ttl2.neighbor { margin-top: 1.5em; }
.bukken-neighbor > li { color: #103a88; border: 1px solid #103a88; }

.bukken-neighbor > li.convini span::before { background-image: url("../img/kyoto_university/ico-conveni.svg"); }
.bukken-neighbor > li.train span::before { background-image: url("../img/kyoto_university/ico-train.svg"); }

.bukken-btn { margin: 3.3em 0 0; text-align: center; }

a .btn_con { display: block; width: 100%; padding: .5em; background: #103a88; color: #fff; text-align: center; border: 2px solid #103a88; border-radius: 0; transition: all .3s; }
a:hover .btn_con { color: #103a88; background: #fff; border: 2px solid #103a88; }
.btn_con::before { display: none; }


/* その他の物件 */
.other-bukken-list > li { width: 31%; }
.other-bukken-list > li a { display: block; background-color: #fff; color: inherit; }

.sps-info { padding: 0 1.25em 1em; }
.sp-list .feature > li { margin-right: 1em; }
.sps-name { color: #00205b; }
.sps-to em { color: #00205b; }
li[class^="ico-"] { padding-left: 1.8em; position: relative; }
li[class^="ico-"]::before { content: "";
    position: absolute;
    top: 60%;
    left: 0;
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background: no-repeat center / contain;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); }


/* xx分（数字）部分 */
.feature li span em { font-size: 1.39em; }

li.ico-bicycle::before { background-image: url(/img/icon/bicycle-navy.svg); }
li.ico-bus::before { background-image: url(/img/icon/bus-navy.svg);}


@media screen and (min-width: 600px) {
  
  /* map */
  .map .areamap-list { display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }
  .map .areamap-list .areamap { width: 60%; }
  .map .areamap-list .areamap2 { width: 35%; }
  
  /* 物件情報 */
  .bukken-btn a { display: inline-block; min-width: 260px; }
}


@media screen and (max-width: 799px) {
  .other-bukken-list > li { width: 48%; font-size: .9em; }
  .sps-feature > li > span { font-size: .85em; }
}


/* スマホ */
@media screen and (max-width: 599px) {
  
  /* 共通 */
  .sub-ttl2 { font-size: 1em; }
  
  /* ページタイトル */
  .pageTitle { min-height: 220px; padding: 1.5em 1em 1em; }
  
  /* メッセージ */
  .message .txt-box { padding: 1em 2em; }
  
  /* ドーミー4つの特徴 */
  .feaList > li { width: 48%; }
  .feaList > li:nth-child(n+3) { margin-top: 4%; }
  
  /* map */
  .map .areamap-list > figure:nth-child(n+2) { margin-top: 1.5em; }
  
  /* 物件一覧 */
  .bukken-box { padding: 2.5em 1.5em; }
  .bukken-box .pickup { width: 60%; margin: auto; top: -1em; }
  
  .bukken-type { font-size: .6em; }
  
  .bukken-slide { margin-top: 1.5em; }
  .bukken-info { margin-top: 2em; }
  
  .btn-def { display: block; padding: .5em 3em; }
  
  
}
