@charset "UTF-8";
/* CSS Document */
#KV{
  height:820px;
  width:100%;
  display:table;
  background-size:cover;
  background-position:50% 50%;
}

#KV .overlay{
  position:absolute;
  width:100%;
  height:820px;
  background:url(../img/common/bg_grad.png) 50% 50% no-repeat;
  background-size:cover;
}

#KV .cell{
  display:table-cell;
  text-align: center;
  vertical-align: middle;
  padding-top:20px;
  position:relative;
}

#KV .cell h2{
  width:100%;
  font-size:5rem;
  text-align: center;
  margin:0;
  margin-bottom:2.3rem;
  color:white;
  padding: 0 150px;
}

#KV .cell h3{
  width:100%;
  font-size:2.0rem;
  text-align: center;
  margin-bottom:5rem;
  color:white;
  font-weight:200;
}

#KV .cell .campaignName{
  color:white;
  margin-bottom:1rem;
}

#KV .cell .period{
  display:inline-block;
  margin:auto;
  padding:1rem 3rem;
  font-size:1.4rem;
  margin-bottom:6rem;
  color:white;
  border:3px solid #fff;
}

#KV .cell .period span{
  font-weight:600;
  padding-left:2rem;
}


#KV .cell ul {
  padding:0;
}

#KV .cell ul li{
  display:inline-block;
  margin:0 2rem;
}

#KV .cell ul li a{
  border:3px solid #fff;
  padding:6px 8px 10px 12px;
  display:block;
  border-radius: 25px;
  align-items: center;
}

#KV .cell ul li a:hover{
  border:3px solid #76ADCB;
  background:#76ADCB;
}

@media screen and (max-width:1119px){

#KV{
  height:680px;
  width:100%;
  display:table;
  background-size:cover;
  background-position:50% 50%;
}

#KV .overlay{
  position:absolute;
  width:100%;
  height:680px;
  background:url(../img/common/bg_grad.png) 50% 50% no-repeat;
  background-size:cover;
}
#KV .cell h2{
  font-size:3rem;
  padding: 0 100px;
}

}

@media screen and (max-width:767px){

#KV{
  height:500px;
  width:100%;
  display:table;
  background-size:cover;
  background-position:50% 50%;
}

#KV .overlay{
  position:absolute;
  width:100%;
  height:500px;
  background:url(../img/common/bg_grad.png) 50% 50% no-repeat;
  background-size:cover;
}

#KV .cell h2{
  width:100%;
  font-size:2.6rem;
  text-align: center;
  margin-bottom:2rem;
  color:white;
  padding: 0 50px;
}

#KV .cell h3{
  width:100%;
  font-size:1rem;
  text-align: center;
  margin-bottom:3rem;
  color:white;
  font-weight:200;
}

#KV .cell .period{
  width:94%;
  margin:auto;
  padding:1.5rem 0rem;
  font-size:1.2rem;
  text-align: center;
  margin-bottom:2rem;
  color:white;
  border:3px solid #fff;
}


}

.start {
  display:block;
  margin:auto;
  line-height:75px;
  width:515px;
  text-align: left;
  padding-left:60px;
  border:3px solid #000;
  border-radius:50px;
  color:#000;
  font-weight: 400;
  font-size:2rem;
  background-image:url(../img/common/LineAr2.svg);
  background-repeat: no-repeat;
  background-position: 85% 50%;
  background-size:168px 20px;
}

.space {
  margin-left:4em;
}

.inline {
  display: inline-block;
}

#KV .start{
  width:700px;
  border:3px solid #fff;
  color:#fff;
  background-image:url(../img/common/LineAr.svg);
}

#StartWrap .start{
  width:700px;
  border:3px solid #000;
  color:#000;
  background-image:url(../img/common/LineAr2.svg);
}

.start:hover{
  background-color:#76ADCB;
  background-position: 90% 50%;
  color:white;
  border:3px solid #76ADCB !important;
  background-image:url(../img/common/LineAr.svg);
}

#StartWrap .start:hover{
  background-color:#76ADCB;
  background-position: 90% 50%;
  color:white;
  border:3px solid #76ADCB !important;
  background-image:url(../img/common/LineAr.svg);
}

.fortext{
  position:absolute;
  width:195px;
  height:80px;
  left:50%;
  bottom:2rem;
  margin-left:-97.5px;
}

.fortext img{width:100%;}
.preview-close{
    margin: 20px 0px;
}

@media screen and (max-width:767px){

.start{
  width:90%;
  margin:auto;
  background:none;
  text-align: center;
  padding-left:0;
}

.space{
  margin-left:2em;
}

#KV .start{
  display:block;
  margin:auto;
  line-height:50px;
  text-align: center;
  padding-left:0;
  border-radius:50px;
  font-weight: 400;
  width:80%;
  font-size:1.8rem;
  border:3px solid #fff;
  color:#fff;
  background-image:none;
}

#StartWrap .start{
  display:block;
  margin:auto;
  line-height:50px;
  text-align: center;
  padding-left:0;
  border:3px solid #000;
  border-radius:50px;
  color:#000;
  font-weight: 400;
  width:80%;
  font-size:1.8rem;
  background-image:none;
}

#StartWrap .start:hover{
  display:block;
  margin:auto;
  line-height:50px;
  text-align: center;
  padding-left:0;
  border-radius:50px;
  font-weight: 400;
  width:80%;
  font-size:1.8rem;
  border:3px solid #fff;
  color:#fff;
  background-image:none;
}

#KV .start span,
#StartWrap .start span{display:none;}

.ProjectList .start{
  width:90%;
  margin:auto;
  background:none;
  text-align: center;
  padding-left:0;
  padding:0;
  border-radius: 30px;
  line-height:50px;
  font-size:1.4rem;
}

.start:hover{background-image:none;}

}

/* Domination Wrap */

#DomiWrap{
  padding:3rem 0;
  background:rgba(240,240,240,.8);
  width:100%;
  position: absolute;
  z-index:5;
  box-shadow: 0 3px 3px #ccc;
  transition: .3s;
}

.fixed{
  position:fixed !important;
  top:0;
  left:0;
  width:100%;
}

#DomiWrap .Progress {
  text-align: center;
}

#DomiWrap .Progress ul{
  margin:0;
  padding:0;
}


#DomiWrap .Progress ul li{
  display:block;
}

#DomiWrap .Progress ul li span {
  font-size: 2rem;
  font-weight: 600;
  padding: 0 .5rem;
}

#DomiWrap .DomiBtn a{
  display:block;
  font-size:1.8rem;
  width:calc(100% - 140px);
  line-height:60px;
  text-align: center;
  background:#76ADCB;
  color:white;
  border-radius: 10px;
  box-shadow: 0 3px 3px #ccc;
  float: right;
}

#DomiWrap .DomiBtn a:hover{
  background:#30b298;
}

.fixed .Progress{
  display:none;
}

@media screen and (max-width:767px) {
    body.donatable {
        padding-bottom:80px;
    }

#DomiWrap{
  padding:1rem 0 1.7rem 0;
  background:rgba(240,240,240,.8);
  width:100%;
  position: absolute;
  z-index:9;
  box-shadow: 0 3px 3px #ccc
}

.fixed{
  height:80px;
  position:fixed !important;
  top:auto;
  bottom:0;
  left:0;
  width:100%;
}

.fixed .Progress{
  display:none;
}

#DomiWrap .Progress ul li{
  display:block;
  font-size:1rem;
}

#DomiWrap .Progress ul li span{
  font-size:2rem;
  font-weight:600;
  padding:0 1rem
}

#DomiWrap .Progress .period ul li span{
  font-size:1.4rem !important;
}

#DomiWrap .DomiBtn a{
  display:block;
  font-size:1.8rem;
  width:calc(100% - 165px);;
  line-height:50px;
  text-align: center;
  background:#76ADCB;
  color:white;
  border-radius: 5px;
  box-shadow: 0 3px 3px #ccc;
}
}

/* project */

.Project {
    padding-top: 220px;
}

@media screen and (min-width:480px) and (max-width:991px) {
    .Project {
        padding-top: 280px;
    }

    .Project.donatable {
        padding-top: 330px;
    }
}

@media screen and (max-width:479px) {
    .Project {
        padding-top: 270px;
    }

    .Project.donatable {
        padding-top: 320px;
    }
}

/*.Project h3{
  padding:2rem;
  font-size:1.8rem;
  border-top: solid 1px #c0c0c0;
}*/

.DataWrap{
  padding:3rem 0;
}

.DataWrap .media{
  width:492px;
  padding:0 20px 20px 0;
  height:auto;
  float:left;
}

.iframe {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.iframe iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.DataWrap p{
  padding:0 2rem;
  font-size:1.4rem;
  line-height:2.6rem;
  color:#666;
}


@media screen and (max-width:767px){

    .DataWrap .media{
      width:100%;
      padding:10px;
      height:auto;
      float:left;
    }

  .Project{
    /*padding-top:240px;*/
  }

}

/* モーダルウィンドウ */

#modal-content {
  margin: 0 ;
  padding: 3rem ;
  border: 2px solid #aaa ;
  background: #fff ;
  position: fixed ;
  display: none ;
  z-index: 100 ;
}

#modal-overlay {
  z-index: 90 ;
  display: none ;
  position: fixed ;
  top: 0 ;
  left: 0 ;
  width: 100% ;
  height: 120% ;
  background-color: rgba( 0,0,0, 0.75 ) ;
}

#modal-content h3{
  text-align: center;
  font-size:4rem;
  color:#666;
  margin-bottom:3rem;
}

#modal-content .choiseDomi{
  width:100%;
  border:3px solid #f5f5f5;
  padding:3rem;
  margin:auto;
  margin-bottom:2rem;
}

#modal-content .choiseDomi div{
  margin-bottom:1.5rem;
}

#modal-content .choiseDomi a{
  display:block;
  margin:auto;
  line-height:50px;
  width:100%;
  text-align: center;
  background:#76ADCB;
  border-radius:15px;
  color:white;
  font-weight: 400;
  font-size:1.4rem;
  box-shadow: 0 3px 3px #ccc;
}

#modal-content .choiseDomi a:hover{
  background:#30b298;
}

#modal-close{
  display:block;
  width:200px;
  margin:auto;
  font-size:1.2rem;
  text-align: center;
  padding:1rem;
  color:white;
  background:#999;
  border-radius:30px;
}

@media screen and (max-width:991px){
#modal-content .choiseDomi a{
  display:block;
  margin:auto;
  line-height:40px;
  width:100%;
  text-align: center;
  background:#76ADCB;
  border-radius:15px;
  color:white;
  font-weight: 400;
  font-size:1rem;
  box-shadow: 0 3px 3px #ccc;
}
}
@media screen and (max-width:767px){

.resmes{
  margin:0;
  padding:2rem;
  border-top:1px solid #fff;
}
.res_info {
  left:5%;
  top:0;
  transform:none;
}

#modal-content h3{
  text-align: center;
  font-size:2rem;
}

#modal-content .choiseDomi{
  width:100%;
  border:none;
  padding:1rem;
  margin:auto;
  margin-bottom:2rem;
}

#modal-content .choiseDomi div{
  padding:0 5px;
}

#modal-content .choiseDomi a{
  display:block;
  margin:auto;
  line-height:40px;
  width:100%;
  text-align: center;
  background:#76ADCB;
  border-radius:5px;
  color:white;
  font-weight: 400;
  font-size:1rem;
  box-shadow: 0 3px 3px #ccc;
}

}

@media screen and (max-width:479px){
    .ownerName , .Date{
        width: 100%;
    }
}

.active-hiden{
  background: #f5f5f5;
  border-radius: 5px;
}

.box {
  position: relative;
  background: #d8d7cd;
  height: 24px;
  width: 100px;
  float: right;
  border-radius: 4px;
  text-align: center;
  border-bottom: 2px solid #d8d7cd;
  margin: 0 5px;
}
.box a{
  display: block;
  color: #6a7373;
}
.box a:active{
  -ms-transform: translateY(4px);
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  border-bottom: none;
}


.box:after {
  content: '';
  position: absolute;
  border-bottom: 10px solid #ccc;
  border-right: 5px solid transparent;
  border-left: 2px solid transparent;
  bottom: 21px;
  left: 5px;
}

.return-message {
  position: relative;
  margin-bottom: 60px;
}

.res_area {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.5);
  display:none;
  z-index:10;
}
.hide_btn {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.5);
  z-index:50;
}
.res_info {
  z-index:100;
  position:fixed;
  left:50%;
  top:50%;
  width:90%;
  -webkit-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -o-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  background:#fff;
  text-align:center;
  padding:40px;
  box-sizing:border-box;
  border-radius:20px;
}
.res_info textarea {
  width:100%;
  margin:20px 0;
  border: dashed;
}
.res_info button{
  width: 30px;
  height: 30px;
  background: #685b5b;
  border-radius: 50%;
  position: absolute;
  right: 10px;
  top: 10px;
}

.resmes{
  margin:0;
  padding:2rem;
  padding-left:10rem;
  border-top:1px solid #fff;
}

.textarea
{
  width:100%;
}

.project-section {
    margin-bottom: 2rem;
}

.project-section:not(:first-child) {
    border-top: solid 1px #c0c0c0;
}

@media screen and (max-width:767px) {
    .project-comment-section {
        border-top: solid 1px #c0c0c0;
    }
}

.project-section-title {
    margin: 3rem 0;
}

.project-section-title > * {
    padding: 0;
}

.project-section-title a {
    cursor: pointer;
    text-decoration: underline;
}

.project-section-title h2 {
    margin: 0;
}

.report-form {
    display: none;
}

.report-form-label {
    padding: 6px;
}

.report-form-input {
    border: 1px solid #ddd;
    color: #555;
    display: block;
    font-size: 1.6rem;
    padding: 6px;
    width: 100%;
}

.report-form-textarea {
  display: none;
}

.report-form-button {
  background-color: #30b298;
  border: 0;
  border-radius: 10px;
  box-shadow: 0 3px 3px #ccc;
  color: white;
  font-size: 1.8rem;
  line-height: 60px;
  width: 100%;
}

.report-form .error-message {
    color: #C3232D;
    font-size: 1.3rem;
    font-style: italic;
    margin-bottom: 1rem;
    padding: 6px;
}

.report-form .textarea.error .error-message {
    margin-top: -17px;
}

.report-cancel-button {
  display: none;
}

.trumbowyg-modal-box label input {
    border-radius: 0;
}

.trumbowyg-modal-box .trumbowyg-modal-button {
    font-size: 14px;
}

.trumbowyg-dropdown-foreColor,
.trumbowyg-dropdown-backColor {
    width: 180px;
}

@media screen and (min-width:767px) {
    .trumbowyg-editor,
    .trumbowyg-textarea {
        min-height: 450px;
    }
}

.report:not(:first-child) {
  margin-top: 3rem
}

.report-title-wrapper {
    display: table;
}

.report-title-wrapper > * {
    display: table-cell;
    vertical-align: middle;
}

.report-title-wrapper .owner-img {
    min-width: 64px;
}

.report-title {
    padding-left: 1rem;
    word-break:break-all;
}

.report-info-wrapper {
    margin: 2rem 0;
}

.report-info-wrapper > * {
    margin: 0;
    padding: 0;
}

.report-info-wrapper a {
    cursor: pointer;
    text-decoration: underline;
}

.report-info {
    color: #666;
}

.report-info span:last-child {
    padding-left: 1rem;
}

.report-content {
	word-wrap: break-word;
}

.report-content iframe,
.report-content img {
    max-width: 100%;
}

.report-see-more {
    line-height: 50px;
    margin-top: 4rem;
}

/* Flash */

div.message {
    text-align: center;
    cursor: pointer;
    display: block;
    font-weight: normal;
    padding: .5rem 1.5rem !important;
    transition: height 300ms ease-out 0s;
    background-color: #0b5ea5;
    color: white;
    top: 15px;
    right: 15px;
    z-index: 999;
    overflow: hidden;
    /* height: 50px; */
    line-height: 1.5em;
    box-radius: 5px;
}

div.message:before {
    line-height: 0px;
    font-size: 20px;
    height: 12px;
    width: 12px;
    border-radius: 15px;
    text-align: center;
    vertical-align: middle;
    display: inline-block;
    position: relative;
    left: -11px;
/*    background-color: #FFF;*/
    padding: 12px 14px 12px 10px;
    content: "i";
    color: #0b5ea5;
}

div.message.error {
    background-color: #C3232D;
    color: #FFF;

}
div.message.error:before {
    padding: 11px 16px 14px 7px;
    color: #C3232D;
    content: "x";
}

div.message.hidden {
    height: 0;
}

/* project */

.project-supporter {
    white-space: nowrap;
}

.fixed-content {
    display: none;
}

.fixed .fixed-content {
    display: block;
}

@media screen and (min-width:991px) {
    .project-info-wrapper {
      height: 160px;
      position: relative;
    }

    .project-info {
      bottom: 0;
      position: absolute;
      width: 100%;
    }
}

.project-info li:first-child {
    margin-bottom: 20px;
}

.project-social-buttons {
    float: left;
}
.project-social-button {
    border-radius: 10px;
    color: white;
    display: inline-block;
    float: left;
    font-size: 1.8rem;
    line-height: 60px;
    margin-right: 10px;
    text-align: center;
    text-decoration: none;
    width: 60px;
}

.project-social-button.line {
    display: none;
}

.project-social-button img {
    width: 40px;
}

.project-social-button.facebook {
    background: #3B5998;
}

.project-social-button.facebook:hover {
    background: #2a6da2;
}

.project-social-button.twitter {
    background: #0084b4;
}

.project-social-button.twitter:hover {
    background: #00aced;
}

.project-social-button.line {
    background: #00c300;
}

.project-social-button.line:hover {
    background: #32cd32;
}

@media screen and (max-width:767px) {
    .project-social-buttons {
        float: right;
    }

    .project-social-button.line {
        display: block;
    }

    .project-social-button {
        line-height: 50px;
        margin-left: 5px;
        margin-right: 0;
        width: 50px;
    }

    .project-social-button img {
        width: 32px;
    }

    .DomiBtn a {
        float: left;
    }
}

.project-info-mobile li {
    margin-bottom: 1rem;
}

.project-info-mobile p {
    margin: 0;
}
#DomiWrap .Progress .project-info-mobile li span {
    font-size: 1.5rem;
    padding: 0 .5rem 0 0;
}

.project-info-mobile-owner {
    display: table;
}

.project-info-mobile-owner > * {
    display: table-cell;
}

.project-info-mobile-owner-image {
    width: 64px;
}

.project-info-mobile-owner-name {
    line-height: 110%;
}

.project-info-mobile li.project-info-mobile-owner {
    margin-bottom: 2rem;
}

@media screen and (min-width:767px) and (max-width:991px) {
    .project-info-mobile br {
        display: none;
    }

    .project-info-mobile span {
        margin-left: .5rem;
    }

    #DomiWrap .Progress ul.project-info-mobile-sub {
        margin-top: -1.2rem;
    }
}

.project-description:not(:first-child) {
    margin-top: 2rem;
}

.donation-sample-wrapper {
    margin-top: 2rem;
}

.donation-sample-caption {
    margin-bottom: 1rem;
}

.donation-sample {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}

.donation-sample > li {
    display: table;
    margin-bottom: 1rem;
    padding: 0;
}

.donation-sample > li > * {
    display: table-cell;
    vertical-align: top;
}

@media screen and (min-width:991px) {
    .donation-sample > li:nth-child(odd) {
        padding-right: 0.725rem;
    }

    .donation-sample > li:nth-child(even) {
        padding-left: 0.725rem;
    }
}

.donation-sample-image-wrapper {
    position: relative;
    height: 80px;
    width: 80px;
}

.donation-sample-image {
    font-family: 'object-fit: cover;';
    height: 80px;
    object-fit: cover;
    width: 80px;
}

.donation-sample-credit {
    bottom: 0;
    color: #fff;
    left: 0;
    font-size: 6px;
    line-height: 1;
    padding: 3px;
    position: absolute;
    text-shadow: 0 0 1px #000;
    width: 80px;
	word-wrap: break-word;
}

.donation-sample-dot {
    padding-left: .5rem;
    text-align: center;
}

.donation-sample-descriptions  {
    padding: 0;
}

.donation-sample-descriptions > li {
    display: table;
}

.donation-sample-descriptions > li > * {
    display: table-cell;
    vertical-align: top;
}

.donation-sample-description {
    width: 100%;
}

.donation-sample-notice {
    color: #666;
    font-size: 8px;
}

.comment-wrapper:not(:last-child) {
    margin-bottom: 4rem;
}

.comment {
    background: #eee;
    border-radius: 10px;
    padding: 2rem;
}

.comment-info,
.response-info {
    display: table;
}

.comment-info > *,
.response-info > * {
    display: table-cell;
    vertical-align: top;
    width: 100%;
    word-wrap: break-word;
}

.comment-info-time,
.response-info-time {
    min-width: 6rem;
    text-align: right;
    width: 6rem;
}

.comment-text,
.response-text {
    color: #666;
    margin-top: 2rem;
    word-wrap: break-word;
}

.response {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    margin-left: 2rem;
    margin-top: 1rem;
    padding: 2rem;
}

.comment-buttons {
    margin-top: .5rem;
    text-align: right;
}

.comment-buttons a {
    cursor: pointer;
    text-decoration: underline;
}

.comment-cancel-button {
    display: none;
}

.comment-answer-form {
    display: none;
    margin-left: 2rem;
    margin-top: 1rem;
    text-align: right;
}

.comment-answer-form textarea {
    border: 1px solid #ddd;
    border-radius: 10px;
    height: 250px;
    padding: 2rem;
}

.comment-answer-form button {
    background-color: #30b298;
    border: 0;
    border-radius: 10px;
    box-shadow: 0 3px 3px #ccc;
    color: white;
    font-size: 1.8rem;
    line-height: 60px;
    margin-top: 1rem;
    width: 100%;
}

.comment-see-more {
    background-image: none;
    line-height: 50px;
    margin-top: 4rem;
    padding-left: 0;
    text-align: center;
    width: auto;
}

.comment-see-more:hover {
    background-image: none;
}

.project-preview-buttons {
    margin-bottom: 2rem;
}

.project-preview-buttons li:not(:first-child) {
    margin-top: 1rem;
}

@media screen and (max-width:767px) {
    .project-preview-buttons a {
        background-image: none;
        padding-left: 0;
        text-align: center;
    }

    .project-preview-buttons a:hover {
        background-image: none;
    }
}
