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

.plan {
  /* background : #000; */
  /* color : #fff; */
  padding-bottom: 1px;
}

.mv-sp {
  position : relative;
}

.mv-txt {
  position : absolute;
  left : 10%;
  top : 10%;
  line-height : 4;
  font-size : 18px;
  color : #fff;
  letter-spacing: 0.3em;
  text-shadow: 0 0 5px rgba(0,0,0,.5), 0 0 5px rgba(0,0,0,.5);
}

@media screen and (max-width: 767px) {
  .mv-txt {
    top : 20px;
    left : 20px;
    line-height : 4.5;
    font-size : 13px;
    font-weight : bold;
    
  }
}

.head {
  width: 100%;
  /* max-width : calc(100% - 30px); */
  margin : 0 auto;
  padding: 80px 0 0;
  margin-bottom: 80px;
  
}

.head__row {
  display : flex;
  text-align : center;
  justify-content : space-between;
}

.head__row > div {
  width: calc(100% / 3);
  position: relative;
}

.head__item-ttl {
  font-size : 18px;
  text-align:center;
  width:80%;
  background:rgba(0,0,0,.5);
  color:#fff;
  position:absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  padding:20px;
}

.head__item-ttl small {
  font-size:11px;
  display: block;
  text-align: center;
  margin-top: 5px;
}

@media screen and (max-width: 767px) {
  .head {
    padding: 30px 0 0;
    margin-bottom: 30px;
    flex-wrap:wrap;
  }
  .head__row {
    flex-wrap:wrap;
  }
  .head__row > div {
    width:100%;
  }
}

.head .cap {
  text-align:right;
  padding-right:5px;
}

.typelist {
  width : 1000px;
  max-width : calc(100% - 30px);
  margin : 0 auto;
  display : flex;
  flex-wrap : wrap;
  padding: 0 0 0;
  margin-bottom: 80px;
  justify-content : space-between;
}

.typelist li {
  width : calc((100% - 40px) / 2);
  margin-bottom : 10px;
  border:solid 1px #000;
}

@media screen and (max-width: 767px) {
  .typelist li {
  width : 100%;
  }
}

.typelist li a {
  display : flex;
  align-items : center;
  color : #000;
  position : relative;
  padding : 10px 20px;
  height:100%;
}

.typelist li a:hover {
  color:#fff;
  background: radial-gradient(ellipse at center,  #716f6f 0%,#525050 100%);
}

li.nolink a:hover {
  background : #eee;
  color:#000;
}

.typename {
  display : flex;
  align-items : center;
  width: 60px;
  margin-right : 20px;
}

@media screen and (max-width: 767px) {
  .typename {
    margin-right : 10px;
  }
}

.typename1 {
  font-size : 23px;
  display : block;
  width : 100%;
  text-align : center;
  /* letter-spacing: -0; */
}

.typename2 {
  font-size: 12px;
}

.typerequest {
  display : none;
  position : absolute;
  top: 50%;
  left: calc(50% + 30px);
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  background : #d08a4c;
  padding : 5px 20px;
  width : 200px;
  text-align : center;
}

.nolink .typerequest {
  display : block;
}

.typeldk {
  font-size : 19px;
}

.typespec {
  margin-left: 20px;
  font-size: 22px;
}

@media screen and (max-width: 767px) {
  .typeldk {
    font-size: 18px;
  }
  .typespec {
    font-size: 23px;
  }
}

.type {
  margin : 0 0 0;
  padding-bottom : 100px;
}

.type__inner {
  width: 1000px;
  max-width : calc(100% - 50px);
  margin : 0 auto 0;
  padding : 0;
  position : relative;
  padding : 0;
}

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

@media only screen and (max-width: 767px) {
  .type {
    margin: 0 0 20px;
    flex-direction: column;
    padding: 0px 0 10px;
    max-width : 100%;
  }
  .type__inner {
    padding: 20px 0;
    margin: 0 0;
    max-width: 100%;
  }
}


.type__title {
  display : block;
  border-bottom: #fff solid 1px;
  width : 100%;
}

.type__area {
  width : 100%;
  display : block;
  margin-bottom: 60px;
}

.type__floor {
  width : 160px;
  display : block;
  margin : 0 auto;
}

.type__left{
  /* flex : 1; */
  /* background: linear-gradient(135deg,  #00236b 0%,#004897 24%,#0075ca 50%,#0075ca 79%,#004895 100%); */
  width: calc(300 / 1000 * 100%);
}

.type__right {
  width: calc(610 / 1000 * 100%);
  padding: 0px;
  background : #fff;
  min-width: 520px;
}

.type__footer {
  width : 100%;
}

.type__figure {
  width: 100%;
  display : block;
  margin : 0 auto;
}

@media only screen and (max-width: 1023px) {
  .type__right {
    min-width: auto;
  }
}

@media only screen and (max-width: 767px) {
  .type__left {
    width : 100%;
    padding : 5%;
    margin: 0 0 0;
  }

  .type__right,
  .type__figure {
    width : 100%;
    /* margin-top: 0; */
  }
}

.type__copy {
  font-size : 22px;
  margin : 0;
  border-bottom : 1px #000 solid;
  text-align : center;
  padding : 30px 0;
}

.type__text {
  margin: 20px 0 0;
  padding : 0;
  list-style-type : none;
  font-size : 15px;
  text-align : center;
  border-top: solid 1px #fff;
}

.type__text li {
  /* color: #fff; */
  border-bottom: solid 1px #000;
  padding : 30px 0;
  font-size : 15px;
  line-height : 1.6em;
}

.type__text li:last-child {
  border-bottom:0;
}

.type__small {
  margin-top : 10px;
  font-size : 12px;
  display: inline;
  color: #000;
}

.info__icons {
  margin-top: 40px;
  text-align: left;
}

.info__icon {
  margin: 0 0 10px;
  max-width: 100%;
  display : flex;
  align-items: center;
  justify-content: left;
}

.info__icon img {
  width : auto;
  height : 100%;
}

.side-icons > div {
  flex-wrap : wrap;
}

.side-icons img {
  display : block;
  margin-bottom : 10px;
}

.info__icon img:nth-of-type(1) {
  height: 16px;
  padding-right : 20px;
}

.info__icon img:nth-of-type(2) {
  height : 15px;
}


.type__cap {
  font-size : 10px;
}

/*@media only screen and (max-width: 1023px) {
  .info__icon {
    width : auto;
    height : 25px;
  }
}*/

@media only screen and (max-width: 1023px) {
  .type__copy {
    font-size : 24px;
  }
}

@media only screen and (max-width: 767px) {
  .type__copy {
    font-size : 18px;
    padding : 20px 0;
  }
  .type__text li {
    font-size: 16px;
    padding : 15px 0;
  }

  .type__small {
    font-size: 12px;
  }

  .info__icons {
    text-align : center;
  }

  .info__icon {
    height: auto;
    margin: 10px auto 5px;
    display : block;
  }

  .type__cap {
    font-size : 10px;
  }
}

.type-links {
  width : 100%;
  margin-top : 20px;
}

.type-links .msn-madori__actions {
  justify-content : center;
}

.type-links .msn-madori__actions .msn-madori__actionItem {
    min-width: none;
    flex-basis:inherit;
    -webkit-box-flex:inherit;
    -ms-flex-positive:inherit;
    flex-grow: inherit;
    max-width: none;
    width: 80%;
    display: block;
    margin-right : 5px;
    margin-left : 5px;
}

@media screen and (max-width: 767px) {
  .type-links {
    width : 80%;
    margin : 20px auto 0;
  }
  .type-links .msn-madori__actions .msn-madori__actionItem {
    width: 100%;
  }
}

.type-links .msn-madori__actions .msn-madori__actionItem a {
  display : block;
  height : auto;
  padding : 15px;
  width : 100%!important;
  max-width : none;
  text-align : center;
}

.navigation {
    margin-top : 0;
}

sub {
      vertical-align: 4px;
      font-size: 12px;
}


/*======*/

.head__ttl {
  color : #af040f;
  text-align : center;
  /* margin-top : 40px; */
  margin-bottom: 0;
  font-size : 32px;
}

.head__flex {
  margin-bottom : 80px;
  text-align : center;
}

@media only screen and (max-width:767px) {
  .bukken__title {
    font-size : 20px;
  }
  .head__flex {
    margin-bottom : 40px;
  }
}

.plan-copy {
  font-size : 35px;
  text-align : center;
  margin : 0 auto 0;
  display: inline-block;
  line-height: 170%;
  font-weight: 300;
  /*letter-spacing: 0.1em;*/
  color: #d24648;
}

.plan-copy small {
  font-size : clamp(10px,0.4em,14px);
}

@media only screen and (max-width:767px) {
  .plan-copy {
    font-size : 5.4vw;
  }
}


/*=追加=*/

@media screen and (max-width: 767px) {
  .vpc767 {
    display: none;
  }
}
@media not screen, screen and (min-width: 768px) {
  .vsp767 {
    display: none;
  }
}

.bnr {
  width : 1000px;
  max-width : calc(100% - 40px);
  margin: 0 auto 50px;
  display : block;
}


@media only screen and (max-width: 767px) {
  .bnr {
    margin : 30px auto 50px;
  }
}

  .sp {
    display: none;
}

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

  .line-height {
    line-height: 2.5;
}

.box {/* background: #efefef; */padding:10px;/* margin-bottom:15px; */}
.box p {
margin:0;
padding:0;
}

.casbee {
  width: 589px;
  max-width : calc(100% - 30px);
  margin : 40px auto 60px;
}

.casbee__note {
  font-size : 11px;
  margin-top : 5px;
}