@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 : 1000px;
  max-width : calc(100% - 30px);
  margin : 0 auto;
  padding: 60px 0 80px;
  text-align : center;
}

.head__en-title {
  font-size : 14px;
  margin-bottom : 20px;
}

.head__title {
  font-size : 31px;
  line-height : 1.8;
}

.head__title small {
  font-size : 12px;
  line-height : 1;
  display : block;
}

.head__text {
  font-size : 14px;
  margin-top : 20px;
  line-height : 1.8;
}

@media screen and (max-width: 767px) {
  .head {
    padding: 30px 0;
  }
  .head__title {
    font-size : 24px;
  }
}

.gld-bg {
  padding: 80px 0;
  background: linear-gradient(135deg,  #e3dddc 0%,#ffffff 50%,#e3dddc 100%);
}

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

.typelist__item {
  width : calc((100% - 40px) / 3);
  margin-bottom : 10px;
  background: linear-gradient(45deg,  #e4dcc4 0%,#ffffff 50%,#e4dcc4 100%);
  -webkit-box-shadow: 5px 5px 10px 0 rgba(0,0,0,.3);
  box-shadow: 5px 5px 10px 0 rgba(0,0,0,.3);
  position : relative;
}

.typelist__item a.typelist__click {
  display:block;
  padding : 20px 0 40px;
}

.typelist__request {
  text-align : center;
  background: #d08a4c;
  color : #fff;
  font-size : 14px;
  padding : 15% 0;
  display : none;
  transition : 0.5s;
  position : absolute;
  bottom : 10px;
  left : 15px;
  width : calc(100% - 30px);
  border : solid 1px #fff;
  align-items : center;
  justify-content : center;
  font-size : 15px;
}

.comingsoon .typelist__request {
  display : block;
}

@media screen and (max-width: 767px) {
  .gld-bg {
    padding : 20px 10px;
  }
  .typelist__item {
  width : 100%;
  }
}

.typename {
  display : flex;
  flex-direction : column;
  justify-content : center;
  align-items : center;
  width: 50px;
  margin-right : 20px;
}

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

.typename1 {
  font-size : 23px;
  border-bottom : 1px #fff solid;
  display : block;
  width : 100%;
  text-align : center;
  letter-spacing: -0.1em;
}

.typename2 {
  font-size : 11px;
}

.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 : auto;
  font-size : 28px;
}

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

.type {
  margin: 80px 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;
  width : 100%;
  padding : 10% 0;
  margin-bottom : 10%;
  background: linear-gradient(45deg,  #e4dcc4 0%,#ffffff 50%,#e4dcc4 100%);
  -webkit-box-shadow: 5px 5px 10px 0 rgba(0,0,0,.3);
  box-shadow: 5px 5px 10px 0 rgba(0,0,0,.3);
}

@media only screen and (max-width: 767px) {
  .type__title {
    padding : 0;
  }
}

.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%); */
  padding-right: calc(65 / 1000 * 100%);
}

.type__right {
  width: calc(680 / 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: 12px;
  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: 0 auto 80px;
}

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