@charset "utf-8";
/*.p-QiconLink 
-------------------------*/
.p-QiconLink {
    position: relative;
    color: inherit;
    text-decoration: none
}
.p-QiconLink::after {
    content: " ";
    background: url(/sim/dialpad/img/icon_help.png) 0 0/contain no-repeat;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-bottom: -5px;
    margin-left: 5px
}
/*.modal
-----------------------*/
.modal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow-y: scroll;
    display: none;
    z-index: 100
}
.modal .modal_bg {
    background-color: rgba(0, 0, 0, 0.8);
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1
}
.modal .modal_contents_wrapper {
    max-width: 890px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    height: 100%
}
@media only screen and (max-width: 599px) {
    .modal .modal_contents_wrapper {
        width: 90%
    }
}
.modal .modal_scrollBox {
    display: table;
    height: 100%;
    width: 100%
}
.modal .modal_scrollBox_inner {
    display: table-cell;
    padding: 60px 0 60px;
    vertical-align: middle
}
.modal .modal_contents {
    background-color: #fff;
    padding: 30px;
    position: relative;
    border-radius: 10px
}
.modal .modal_contents .modal_close {
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 32px;
    line-height: 40px;
    position: absolute;
    right: 20px;
    top: -50px
}
.modal .modal_contents .ttl {
    font-size: 20px;
    font-weight: normal;
    line-height: 140%;
    margin-bottom: 25px;
    text-align: center;
}
@media only screen and (max-width: 599px) {
    .modal .modal_contents .ttl {
        font-size: 19px;
        margin-bottom: 20px
    }
}
.modal .modal_contents .body {
    margin-top: 25px;
    font-size: 15px
}
@media only screen and (max-width: 599px) {
    .modal .modal_contents .body {
        margin-top: 20px;
        font-size: 14px
    }
}
.modal .modal_contents .body img {
    max-width: 100%;
    width: auto
}


/*base
-----------------------*/
@media only screen and (max-width: 599px) {
    h2 > span {
        display: block;
    }
}

@media only screen and (max-width: 359px) {
    h2 {
        font-size: 18px;
    }
}



/*override
-----------------------*/
section.form > .item input[type=radio] + span {
    display: inline-block;
}

@media only screen and (max-width: 599px) {
    section.form > .item .price label {
        display: block;
    }
}
/* ----------------------------------------------------------------------
	
	 add css
	
---------------------------------------------------------------------- */
/* - index.html
---------------------------- */


section.intro {
  margin-bottom: 20px;
}

section.control.main {
  flex-direction: column;
  border: 1px solid #333;
  padding: 25px 15px;
}

section.control.main .btn {
  margin-top: 30px;
}

section.control.main p {
  margin: 0;
}

section.form .item .input .error_message,
section.form .input.hide .error_message{
  color: #ff3c28;
  font-size: 13px;
  padding: 10px 30px 0 30px;
  width: 100%;
}

.input.hide {
  margin-bottom: 15px;
}


section.form .multi_line .error_message {
  color: #ff3c28;
  font-size: 13px;
  padding: 0;
  margin-left: 0;
  margin-bottom: 0;
  margin-top: 5px;
  width: 100%;
}

section.form > .item.multi input[type=radio] + span {
    display: inline-block;
    position: relative;
    padding-left: 25px;
}

section.form > .item.multi input[type=radio] + span::before {
  content: '';
  display: block;
  width: 22px;
  height: 22px;
  background-image: url(../../common/img/radio.png);
  position: absolute;
  top: 12px;
  left: -10px;
}

section.form > .item.multi input[type=radio]:checked + span::before {
  background-image: url(../../common/img/radio_checked.png);
}


section.form > .item input[type=radio] + span.name {
    font-weight: bold;
}
section.form > .item input[type=radio] + span.name span.sub {
    font-weight: normal;
    display: block;
    margin-top: 10px;
    font-size: 14px;
}

@media only screen and (max-width: 599px) {
    section.form > .item .price label {
        display: block;
    }
    
    section.form .item .input .error_message {
      margin-left: 0;
    }
}
.form.option select:disabled {
    background-color: #fafafa;
}
section.form .item.-entry_type {
    margin-left: 20px;
}
section.form .item.-entry_type label {
    border: 1px solid #d0dce4;
    padding: 10px 20px;
    border-radius: 6px;
    display: inline-block;
}

section.form .item.-entry_type label.show {
    display: inline-block;
}

section.form .item.-entry_type label.off {
    display: none;
}

section.form .item.-entry_type label:not(:last-child) {
    margin-right: 10px;
}

/*section.form .item.account {
    align-items: center;
}*/

/*section.form.service .item.account {
    align-items: baseline;
}*/

.sub_title {
    font-size: 16px;
    margin-bottom: 20px;
    margin-left: 20px;
}

.license_caption > .sub_title {
    margin-left: 0;
}

section.form > .item.-head {
  align-items: center;
  margin-bottom: 30px;
}

section.form .item.account .input.-select {
    padding-right: 0;
    margin-right: 30px;
    flex: auto;
}

section.form .item.account.-head .input.-select {
    flex: 0 1 350px;
}


section.form > .item .label.service_head {
  flex: 0 1 150px;
  padding-left: 0;
}


/*section.form .item.account .input.-select.-off {
    padding-right: 0;
    margin-right: 0;
    flex: 1 1 0%;
}*/

section.form select#service {
    width: 460px;
}

.license_caption {
    margin-left: 20px;
    font-size: 14px;
    margin-bottom: 40px;
}

.license_caption > p {
    margin: 0;
}

.license_caption > p + p {
    text-indent: -1em;
    padding-left: 1em;
    margin-top: 10px;
}

.note_attention,
.note_service,
.note_trial,
.note_basic,
.note_add,
.note_option {
    margin-left: 20px;
    font-size: 14px;
    margin-top: -15px;
    margin-bottom: 25px;
    text-indent: -1em;
    padding-left: 1em;
    display: none;
}

.note_service {
    padding: 15px;
    border: 1px solid #d0dce4;
    text-indent: 0;
    padding-left: 15px;
    margin-top: 0;
    margin-bottom: 40px;
}

.note_basic {
    text-indent: 0;
    padding-left: 0;
}

.note_basic > p > span {
    text-indent: -1em;
    padding-left: 1em;
    display: block;
}

.note_basic > p.red {
    color: #ff3c28;
    text-indent: -1em;
    padding-left: 1em;
}


.note_attention {
    color: #ff3c28;
}

.note_attention.mt {
    margin-top: 15px;
}

.note_attention.-on,
.note_service.-on,
.note_trial.-on,
.note_basic.-on,
.note_add.-on,
.note_option.-on {
    display: block;
}

.note_trial span,
.note_basic span,
.note_add span,
.note_option span{
    color: #ff3c28;
}

.title_plan {
    margin-top: 40px;
    display: none;
}

.title_plan.-on {
    display: block;
}


.note_service > span {
    display: block;
    text-indent: -1em;
    padding-left: 1em;
    margin-top: 5px;
    color: #4579e8;
}

.note_service > span.no_block {
    display: inline;
    text-indent: 0;
    padding-left: 0;
    margin-top: 0;
}


.note_trial > span.block {
    display: block;
    margin: 20px 0;
    text-indent: 0;
}

section.service .note_attention {
    margin-left: 0;
}

section.form .item.account .-license {
    margin-right: 30px;
    flex: 0 1 200px;
    padding-left: 0;
}



section.form .option_unit {
    display: none;
}

section.form .option_unit.current {
    display: block;
}

section.form .option_unit .item .label {
  flex: 0 1 350px;
  height: 50px;
  line-height: 50px;
  padding-left: 20px;
  font-size: 15px;
}

section.form .option_unit .item {
    display: flex;
    margin-bottom: 20px;
}

section.form .option_unit .item {
    display: flex;
    margin-bottom: 20px;
}


section.form .item.account .wrap {
    flex: auto;
}

section.form .item.account .wrap.-check_license > div {
    display: inline-block;
}

section.form .item.account .wrap.-check_license > div.-off {
    display: none;
}

section.form .item.account .wrap.-check_license > div > label {
    border: 1px solid #d0dce4;
    padding: 10px 20px;
    border-radius: 6px;
}

section.form .item.account .wrap.-check_license > div > label.no_touch {
    pointer-events: none;
}

section.form .item.account .wrap.-check_license > div + div {
    margin-left: 25px;
}

section.form .item.account .wrap.-check_license > div a {
    margin-left: 8px;
    margin-bottom: -5px;
}

section.form .item.account .wrap.-check_license > div a img {
    width: 20px;
    vertical-align: top;
}

section.form .item.account .wrap.-check_license .error_message {
    margin-top: 10px;
}

section.form .item.account .wrap .num_wrap {
    display: flex;
}

section.form.option .option_unit.-trial .item .label {
    display: block;
    line-height: 2;
    height: auto;
}

section.form .option_unit .item .input .error_message {
  color: #ff3c28;
  font-size: 13px;
  padding: 10px 30px 0 30px;
  width: 100%;
}


section.form .item .input.-auto {
    flex: auto;
}

section.form .item .input.-ex_acc.-off {
   /*opacity: 0;*/
   display: none;
}

section.form .item.account .input .inner {
    display: flex;
    align-items: center;
}
section.form .item.account .input .inner .label-sm {
    padding-right: 15px;
}
section.form .item.account .input .inner .input-sm input {
    padding: 15px;
    width: 134px;
}

section.form.service .num_error {
    margin-left: 20px;
}

section.form.service .num_error,
section.form .item.account .opt_num_error,
section.form .item.account .opt_dp_num_error{
    font-size: 13px;
    margin-top: 15px;
}

section.form.service .num_error > span,
section.form .item.account .opt_num_error > span,
section.form .item.account .opt_dp_num_error > span{
    color: #ff3c28;
}

section.form.service .item.account {
    margin-left: 20px;
}

section.form.service .service_attention {
    margin-left: 20px;
    font-size: 13px;
}

section.form.service .service_attention span {
    color: #ff3c28;
    font-weight: bold;
}

section.form.service .item.-line_talk,
section.form.service .item.-line_sell,
section.form.service .item.-line_support{
    display: none;
}

section.form.service .item.-line_talk.on,
section.form.service .item.-line_sell.on,
section.form.service .item.-line_support.on{
    display: flex;
    /*color: #c00;
    font-size: 17px;*/
}



@media only screen and (min-width: 600px) {
    section.form > .item .input.-phone input {
        width: 130px
    }
}
@media only screen and (max-width: 599px) {
    section.form > .item .input.-phone input {
        width: 80px
    }
}


@media only screen and (max-width: 599px) {
    section.form .item.-entry_type {
        margin-left: 0px;
    }
    section.form .item.-entry_type label {
        display: block;
    }
    section.form .item.-entry_type label:not(:first-child) {
        margin-top: 10px;
    }
    section.form .item.-entry_type label:not(:last-child) {
        margin-right: 0px;
    }
    
    section.form .item.-entry_type label.show {
        display: block;
    }
    
    section.form .item.account.-head .input.-select {
        flex: auto;
    }
    
    .sub_title {
        font-size: 15px;
        margin-left: 0;
    }
    
    section.form select#service {
        width: 100%;
    }
    
    section.form .item.account .wrap.-check_license > div {
        display: flex;
        width: 100%;
        align-items: center;
    }
    
    section.form .item.account .wrap.-check_license > div > label {
        width: 100%;
    }
    
    section.form .item.account .wrap.-check_license > div + div {
        margin-left: 0;
        margin-top: 15px;
    }
    
    section.form.service .item.-line_talk.on,
    section.form.service .item.-line_sell.on,
    section.form.service .item.-line_support.on{
        display: block;
    }
    
    section.form > .item.-head {
      margin-bottom: 0;
    }
    
    section.form .item.account .-license {
        font-size: 15px;
        margin-bottom: 20px;
    }
    
    .note_attention,
    .note_service,
    .note_trial,
    .note_add,
    .note_option{
        margin-left: 0px;
        font-size: 14px;
        margin-top: -5px;
        margin-bottom: 10px;
    }
    
    .note_basic,.note_add {
        margin: 0;
        margin-bottom: 25px;
    }
    
    .note_service {
        margin: 0;
        margin-top: 20px;
        margin-bottom: 25px;
    }
    
    .license_caption {
        margin-left: 0;
        margin-bottom: 25px;
    }
    
    section.form .option_unit .item .label {
      height: auto;
      line-height: initial;
      padding-left: 0px;
    }
    
    section.form .option_unit .item {
      display: block;
      margin-bottom: 15px;
    }
    
    section.form .item.account .input {
        margin-bottom: 25px;
    }
    section.form .item.account .input.-select {
        margin-right: 0;
    }
    
    section.form .item.account .wrap .num_wrap {
        display: block;
    }
    
    section.form .item.account .input .inner .label-sm {
        height: auto;
        line-height: initial;
        padding-left: 0px;
        margin-bottom: 6px;
        font-size: 14px;
    }
    section.form .item.account .input .inner {
        display: block;
    }
    section.form .item.account .input .inner .label-sm {
        padding-right: 0;
    }
    section.form .item.account .input .inner .input-sm input {
        padding: 15px;
        width: 100%;
    }
    section.form .item.account + .item.account {
        margin-top: 30px;
    }
    section.form.option .item .label {
        font-size: 15px;
        margin-bottom: 20px;
    }
    section.form.service .item.account {
        margin-left: 0;
    }
}


#nums_id {
  display: flex;
  width: 100%;
}

#nums_id label {
  width: 100%;
  padding: 10px 15px;
}

#nums_id label:nth-child(3n) {
  margin-right: 0;
}


.multi_line {
  border-bottom: 1px solid #d0dce4;
  padding: 15px;
  padding: 15px 30px;
  margin: 0 20px;
  /*border-radius: 6px;*/
  position: relative;
  /*display: none;*/
}

.multi_line.-first {
  border-top: 1px solid #d0dce4;
}

.input + .multi_line {
  border-top: 1px solid #d0dce4;
}


.select_plan.on_normal .multi_line.-normal { display: block;}
.select_plan.on_large .multi_line.-large { display: block;}
.select_plan.on_campaign .multi_line.-campaign { display: block;}

/*.multi_line + .multi_line {
  margin-top: 20px;
}*/

.multi_line .name {
  font-weight: bold;
  display: inline-block;
}

/*.multi_line .name,
.basic_line > .name{
  color: #4579e8;
  display: flex;
  align-items: center;
  justify-content: space-between;
}*/

.multi_line .name > .inner,
.basic_line > .name > .inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.multi_line .name .-ttl,
.basic_line > .name > .inner .-ttl{
  position: relative;
  padding-left: 30px;
  z-index: 2;
  /*cursor: pointer;*/
}

/*.multi_line .name{
  color: #4579e8;
}*/

.basic_line > .name {
  color: #333;
}

/*.multi_line .name:hover {
  cursor: pointer;
}*/

.multi_line .name.-checkbox {
  padding-left: 30px;
  padding-left: 0;
  position: relative;
  z-index: 1;
  width: 100%;
  /*margin-right: 20px;*/
}

.multi_line .name.-checkbox::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -8px;
  left: 0;
  width: 22px;
  height: 22px;
  background-image: url(../../common/img/cb.png);
  z-index: 1;
}

.multi_line.on > .name.-checkbox::before,
.-plan.on > .name.-checkbox::before,
.option_block .basic_line.on > .name.-checkbox::before{
  background-position: 0px -22px;
}

.multi_line .name .-btn ul,
.basic_line > .name .-btn ul{
  display: flex;
  margin: 0;
  padding: 0;
}

.multi_line .name .-btn ul li,
.basic_line > .name .-btn ul li{
  list-style: none;
  font-size: 12px;
}

.multi_line .name .-btn ul li + li,
.basic_line > .name .-btn ul li + li{
  margin-left: 5px;
}

.multi_line .name .-btn ul li a,
.basic_line > .name .-btn ul li a{
  text-decoration: none;
  display: block;
  background-color: #888;
  color: #FFF;
  border-radius: 3px;
  padding: 2px 6px
}
  

.multi_line .detail_block {
  padding-left: 30px;
}

.multi_line .txt {
  font-size: 14px;
  margin-bottom: 0;
  margin-top: 15px;
  font-weight: normal;
  padding-left: 30px;
}

.basic_line .name {
  /*margin-top: 25px;*/
}

.option_block .basic_line + .basic_line {
  margin-top: 25px;
}

.basic_line.-plan {
  border-bottom: 1px solid #ebebeb;
  padding: 20px;
}

.service_wrap {
  display: none;
  display: block;
}

.multi_line.on .service_wrap {
  display: block;
}

.detail_block > .service_wrap .inner .basic_line:first-child {
  border-top: 1px solid #ebebeb;
}

.plan_wrap {
  display: none;
}

.-plan.on .plan_wrap {
  display: block;
}

section.form .item.account {
  display: flex;
  align-items: center;
}

section.form .item.calc {
  padding-left: 30px;
  margin-top: 20px;
}

section.form .item.calc .label .price:before {
  content: '\0a5';
}

section.form .item.calc > div + div {
  margin-left: 20px;
}

section.form .item.calc > .calc_total .total:before {
  content: '\0a5';
}

section.form .item.calc .input input {
  width: 130px;
  padding: 15px;
}

section.form .item.calc .input .error_message {
  padding: 0;
  margin-top: 10px;
}

section.form .detail_block .option_block {
  background-color: #f7f7f7;
  padding: 20px;
  margin-left: 30px;
  margin-top: 30px;
}

section.form .option_block .item.calc {
  display: none;
}

section.form .option_block .basic_line.on .item.calc {
  display: flex;
}

.off {
  display: none !important;
}

ul.windows_icon {
  display: flex;
  margin: 0;
  padding: 0;
  max-width: 940px;
  width: 100%;
  flex-wrap: wrap;
  /*justify-content: center;*/
}

ul.windows_icon.-center {
  justify-content: center;
}

ul.windows_icon > li {
  list-style: none;
  text-align: center;
  /*padding: 12px;*/
  box-sizing: border-box;
  width: calc(12.5% - 70px / 8 );
  margin-right: 10px;
}

ul.windows_icon > li:nth-child(8n) {
  margin-right: 0;
}

ul.windows_icon > li:nth-child(n + 9) {
  margin-top: 15px;
}

.modal .modal_contents .body ul.windows_icon > li img {
  max-width: 50px;
  width: 100%;
  vertical-align: top;
}

ul.windows_icon > li .name {
  font-weight: bold;
  font-size: 13px;
  margin-top: 5px;
}

ul.windows_icon > li .name .opt {
  display: block;
  font-size: 11px;
}

.modal_contents_inner .body p {
  margin: 5px 0 0;
}

.modal_contents_inner .body ul.windows_icon + p {
  margin-top: 15px;
}

.num_error {
  font-size: 13px;
  color: #ff3c28;
  margin-left: 30px;
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {

ul.windows_icon.-center.-pc {
  justify-content: left;
}

ul.windows_icon > li {
  width: calc(16.66% - 50px / 6 );
}

ul.windows_icon > li:nth-child(8n) {
  margin-right: 10px;
}

ul.windows_icon > li:nth-child(6n) {
  margin-right: 0;
}

ul.windows_icon > li:nth-child(n + 7) {
  margin-top: 15px;
}


}

@media only screen and (max-width: 599px) {

.modal .modal_contents {
  padding: 20px;
}


#nums_id {
  display: block;
}

#nums_id label {
  padding: 10px 20px;
}

.multi_line {
  margin: 0;
  padding: 20px 15px;
}

.multi_line .detail_block {
  padding-left: 0;
}

.basic_line.-plan {
  padding: 15px 0;
}

.multi_line .name.-checkbox {
  padding-left: 0;
}


.multi_line .option_block .name.-checkbox {
  /*padding-left: 30px;*/
}

.multi_line .name.-checkbox.no_cap {
  padding-left: 30px;
}

.multi_line .name.-checkbox {
  /*padding-left: 30px;*/
}

.multi_line .name > .inner,
.basic_line > .name > .inner{
  display: block;
}

.multi_line .name > .inner .-ttl,
.basic_line > .name > .inner .-ttl{
  padding-left: 30px;
}

.multi_line .name .-btn,
.basic_line > .name .-btn {
  margin-top: 10px;
}

section.form .item.calc .input {
  margin-bottom: 0;
}

section.form .item.calc > div + div {
  margin-left: 7px;
}

section.form .item.calc {
  padding-left: 0;
  font-size: 15px;
}

section.form .item.calc .input input {
  width: 92px;
  padding: 15px 10px;
  font-size: 15px;
}

section.form .item.calc  .input .error_message {
  width: 92px;
}

section.form .detail_block .option_block {
  margin-left: 0;
  padding: 15px;
}


section.form .item.calc .label .price {
  display: block;
}


ul.windows_icon > li {
  width: calc(33.33% - 16px / 3 );
  margin-right: 8px
}

ul.windows_icon > li:nth-child(6n) {
  margin-right: 8px;
}

ul.windows_icon > li:nth-child(3n) {
  margin-right: 0;
}

ul.windows_icon > li:nth-child(n + 4) {
  margin-top: 15px;
}

ul.windows_icon > li:nth-child(8n) {
  margin-right: 8px;
}

.multi_line .txt {
  padding-left: 0;
}

}

@media only screen and (max-width: 359px) {

section.form .item.calc .input input {
  width: 60px;
  padding: 15px 5px;
}


}

.multi_line > .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

.multi_line .name .-ttl, .basic_line > .name > .inner .-ttl {
  padding-left: 0;
}


.multi_line > .inner > .left {
  display: flex;
  align-items: center;
}

.multi_line > .inner > .left div + div {
  padding-left: 15px;
  margin-left: 15px;
  border-left :1px solid #CCC;
}



.multi_line > .inner > .right input {
  width: 130px;
  padding: 15px;
}

.baseplan , .place_n{
  font-weight: bold;
}

.plan_attention {
  margin-top: 10px;
}

.plan_attention p {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 13px;
  margin: 0;
}

.plan_attention p::before {
  content: "※";
  display: inline-block;
  width: 0.5em;
  padding-left: 15px;
}

.multi_line .name {
  position: relative;
  flex: 0 0 430px;
}

.multi_line > .inner .cp {
  position: absolute;
  top: -15px;
  left: -25px;
  left: -16px;
}

.multi_line > .inner .cp .inner {
  position: relative;
  display: inline-block;
  padding: 3px 5px;
  /*border: 1px solid #000000;*/
  border-radius: 4px;
  background-color: #FFD700;
  text-align: left;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
}

.multi_line > .inner .cp .inner::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 27%;
  border-style: solid;
  /*border-width: 20px 10px 0 10px;*/
  border-color: #000000 transparent transparent;
  translate: -50% 100%;
}

.multi_line > .inner .cp .inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 27%;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #FFD700 transparent transparent;
  translate: -50% 100%;
}


.cp2{
  position:absolute;
  top:-16px;
  left:-40px;
  z-index:2;
  width:36px;
  padding:5px 0 14px; /* 下の切れ込み分だけ増やす */
  text-align:center;
  font-size:12px;
  font-weight:bold;
  color:#fff;
  background:#ff785b;
  line-height:1.3;
  clip-path: polygon(
    0 0,        100% 0,
    100% 100%,  50% 82%,
    0 100%
  );

  /* ズーム時の描画割れ対策（保険） */
  transform: translateZ(0);
  backface-visibility: hidden;
}

.cp2:after{ content:none; } /* border三角は使わない */
.cp2 span.block{ display:block; }

@media only screen and (max-width: 599px) {
  .multi_line > .inner{
    display: block;
  }

  .multi_line > .inner > .left{
    display: block;
  }

  .multi_line > .inner > .left div + div{
    padding-left: 0 !important;
    margin-left: 0 !important;
    border-left: 0 !important;
  }

  .multi_line .name{
    display: block;
  }

  .multi_line .baseplan,
  .multi_line .place_n{
    display: inline-block;
    vertical-align: bottom;
    margin-top: 10px;
  }

  .multi_line .baseplan{
    font-size: 12px;
    margin-right: 15px;
    
    
  }


  /* 3行目：入力欄は横幅いっぱい */
  .multi_line > .inner > .right{
    margin-top: 10px;
  }

  .multi_line > .inner > .right input{
    width: 100% !important;
    box-sizing: border-box;
  }

  /* 注釈はそのまま下（余白だけ） */
  .multi_line .plan_attention{
    margin-top: 8px;
  }
  
  /* cp2の基準 */
  .multi_line > .inner{
    position: relative;
  }

  /* 横長リボン本体 */
  .cp2{
    position: absolute;
    top: -13px;
    left: -10px;
    width: 100px;           /* 好みで調整 */
    padding: 4px;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    border-radius: 0;

    /* 右がVカットのリボン形 */
    clip-path: polygon(
      0 0,
      100% 0,
      calc(100% - 6px) 50%,
      100% 100%,
      0 100%
    );
  }

  /* 既存の三角は消す */
  .cp2:after{
    content: none;
  }

  /* 1行表示にする */
  .cp2 span.block{
    display: inline;
  }
  .cp2 .inner{
    white-space: nowrap;
  }
  
  .cp2 + .left{
    padding-top: 10px;
  }
  
}

@media only screen and (min-width: 600px) {
  .multi_line > .inner > .left {
    min-width: 0;
    flex-wrap: nowrap;
  }

  .multi_line .name {
    flex: 0 0 430px;
    min-width: 0;
  }

  .multi_line .baseplan,
  .multi_line .place_n {
    white-space: nowrap;
    flex: 0 0 auto;
  }
}
