* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
img {
  max-width: 100%;
  vertical-align: top;
}
a {
  text-decoration: none;
  color: #005ea7;
  word-break: break-all;
}
ul {
  list-style: none;
}
ol {
  counter-reset: counter;
  list-style-type: none;
}
body, h1, h2, p, dl, dt, dd, ol, ul{
  margin: 0;
  padding: 0;
}

body {
  color: #333333;
  font-family: 'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック';
  overflow-x: hidden;
  font-size: calc( 28 / 750 * 100vw );
}
ol{
  counter-reset: count;
}
main{
  max-width: 750px;
  margin: auto;
  padding: 40px calc( 30 / 750 * 100vw ) 50px;
}
main .mt5{
  margin-top: 5px;
}
main .mt10{
  margin-top: 10px;
}

header{
  padding-bottom: calc( 35 / 750 * 100vw );
  background: url(/wp-content/themes/kuratomo2022/kuratomo_app/common/images/image-border.png.webp) no-repeat bottom center / calc( 120 / 750 * 100vw );
  text-align: center;
}
h1{
  font-size: calc( 46 / 750 * 100vw );
  line-height: 1.3;
}
h1 span{
  display: block;
  font-size: 78%;
}
h1, h2{
  text-align: center;
}
header .date{
  margin-top: 5px;
  font-size: calc( 32 / 750 * 100vw );
  color: #898989;
}
.bold{
  font-weight: bold;
}
@media (min-width: 751px){
  header{
    padding-bottom: 35px;
    background-size: auto;
  }
  header .date{
    font-size: 32px;
  }
}

.container{
  margin-top: 37px;
}
.footnote{
  text-align: left;
}
@media (min-width: 751px){
  main{
    padding: 40px 30px;
    box-sizing: content-box;
  }
}


/* online_shop & gp_shisetsu
--------------------------------------------*/
.global_link-list{
  width: calc( 630 / 750 * 100vw );
  margin: auto;
}
.global_link-item{
  margin-top: 30px;
}
.global_link-heading{
  font-size: calc( 36 / 750 * 100vw );
  color: #898989;
  font-weight: bold;
  text-align: center;
}
.card{
  position: relative;
  margin-top: 10px;
}
.card-image{
 border-radius: 10px;
}
.card-heading{
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  font-size: calc( 32 / 750 * 100vw );
  color: #ffffff;
  font-weight: bold;
  line-height: 2.5;
  border-radius: 0 0 10px 10px;
  text-align: center;
}

.buddhist_altar .card-heading{
  background-color: #333872;
}
.gracehotel .card-heading{
  background-color: #005e5b;
}

.funeral_home_list .card-heading{
  background-color: #6f1e88;
}
.wedding .card-heading{
  background-color: #2badbd;
}
.morino_hotel .card-heading{
  background-color: #4a341f;
}
.travel .card-heading{
  background-color: #e6a000;
}
@media (min-width: 751px){
  body {
    font-size: 28px;
  }
  h1{
    font-size: 46px;
    background-size: 120px
  }
  .global_link-heading{
    font-size: 36px;
  }
  .card-heading{
    font-size: 32px;
  }
  .global_link-list{
    width: 630px;
  }
}


/* download
--------------------------------------------*/
[data-directory="download"] main{
  padding-bottom: 0;
}
.app_image{
  display: block;
  max-width: 510px;
  width: calc( 510 / 750 * 100vw );
  margin: 0 auto;
}
.app_detail{
  margin-top: 40px;
}
.app_detail-heading{
  margin: 0 calc(50% - 50vw);
  background-color: #c95980;
  font-size: calc( 56 / 750 * 100vw );
  color: #ffffff;
  font-weight: bold;
  text-align: center;
}
.app_detail-heading span{
  display: inline-block;
  margin-right: 2vw;
  font-size: 162%;
  font-style: italic;
}
.app_detail ol{
  margin-right: calc(50% - 50vw);
}
.app_detail li{
  position: relative;
  display: flex;
  margin-top: 40px;
  font-size: calc( 35 / 750 * 100vw );
  color: #4c4c4c;
  text-align: left;
}
.app_detail li span{
  font-size:127%;
  color: #ce587b;
  font-weight: bold;
}
.app_detail li:before{
  display: block;
  width: calc( 110 / 750 * 100vw );
  height: inherit;
  margin-top: 1vw;
  margin-right: calc( 15 / 750 * 100vw );
  padding-top: 4vw;
  padding-right: 1vw;
  background: url(/wp-content/themes/kuratomo2022/kuratomo_app/common/images/image-speech_bubble.png.webp) no-repeat top center / 100%;
  font-family: 'Roboto', sans-serif;
  font-size: calc( 60 / 750 * 100vw );
  color: #ffffff;
  font-weight: 700;
  text-align: center;

  counter-increment: count;
  content: counter(count);
}
.app_detail-text{
  position: relative;
}
.app_detail-text:before {
  content: 'merit';
  position: absolute;
  top: 2.2vw;
  left: calc( -102 / 750 * 100vw );
  font-family: 'Roboto', sans-serif;
  font-size: calc( 22 / 750 * 100vw );
  color: #ffffff;
  font-weight: 700;
  text-align: center;
}
[data-directory="download"] .footnote{
  margin-top: 30px;
}

.app_download{ 
  margin: 40px  calc(50% - 50vw) 0;
  padding: 40px;
  background-color: #e299ad;
  text-align: center;
}
.app_download-list{
  width: calc( 510 / 750 * 100vw );
  margin: auto;
}
.app_download-list li + li{
  margin-top: 25px;
}
@media (min-width: 751px){
  .app_detail-heading{
    font-size: 56px;
  }
  .app_detail li{
    font-size: 33px;
  }
  .app_detail li:before{
    width: 110px;
    margin-top: 5px;
    margin-right: 15px;
    padding-top: 28px;
    padding-right: 10px;
    font-size: 60px;
  }
  .app_detail-text:before{
    top: 15px;
    left: -100px;
    font-size: 22px;
  }
}

/* about_pt
--------------------------------------------*/
[data-directory="about_pt"] li{
  margin-top: 10px;
}
[data-directory="about_pt"] ol li{
  text-indent: -1em;
  padding-left: 1em;
}
[data-directory="about_pt"] section{
  margin-top: 35px;
}
.point-heading{
  /* margin-bottom: 25px; */
  background-color: #faf8f9;
  font-size: calc( 36 / 750 * 100vw );
  color: #3177a0;
  line-height: 2.2;
}
.point-body{
  padding-top: 25px;
}

.point_method-list{
  margin-top: 10px;
}
/* .point_method-list li{
  text-indent: -1em;
  padding-left: 1em;
} */
.point_method-list li span{
  font-weight: bold;
}
[data-directory="about_pt"] dt{
  font-weight: bold;
}
[data-directory="about_pt"] dl{
  margin-top: 25px;
}
[data-directory="about_pt"] dd{
  margin-top: 10px;
}
.point_method_case{
  margin-top: 20px;
}
.point_method_case table{
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border: 1px solid #333333;
}
.point_method_case table + table{
  margin-top: 10px;
}
.point_method_case td{
  padding: 5px 0 5px 5px;
  line-height: 1.2;
  border-top: 1px solid #333333;
}
.point_method_case td:first-of-type{
  width: 56%;
  border-right: 1px solid #333333;
}
.point_method_case table th{
  text-align: center;
  line-height: 2
}
.purchase-table th{
  background-color: #DDEBF7;
}
.event-table th{
  background-color: #E2EFDA;
}
.service-table th{
  background-color: #FFF2CC;
}
.point_method_caution-list li{
  margin-top: 10px;
}
.point_exchange-list{
  padding-left: 1.5em;
}
.point_exchange-list li{
  color: #3177a0;
  list-style: disc;
}
.point_exchange-list li span{
  font-weight: bold;
  text-decoration: underline;
}
.point_exchange-list div{
  color: #333333;
}
.point_run_out-list li{
  text-indent: -1em;
  padding-left: 1em;
}
.point_run_out-list ol{
  margin-left: -1em;
}
.point_run_out-list ol li{
  margin-top: 5px;
}
.point_rank-table{
  width: 100%;
  text-align: center;
  margin-bottom: 1em;
}
.point_rank-table th{
    padding: 10px 0;
  background-color: #6e6e6f;
  color: #ffffff;
  line-height: 1.2;
}
.point_rank-table tr{
  line-height: 2;
}
.point_rank-table td{
  width: 28%;
}
.point_rank-table .head{
  width: 35%;
}
.point_rank-table .black .head{
  background-color: #333333;
  color: #ffffff;
}
.point_rank-table .platinum .head{
  background-color: #e1e1e1;
}
.point_rank-table .gold .head{
  background-color: #bca566;
}
.point_rank-table .silver .head{
  background-color: #acacac;
}
.point_rank-table .bronze .head{
  background-color: #bc9366;
}

.point_rank-table .black td{
  background-color: #999999;
}
.point_rank-table .platinum td{
  background-color: #f0f0f0;
}
.point_rank-table .gold td{
  background-color: #ebe4d1;
}
.point_rank-table .silver td{
  background-color: #d5d5d5;
}
.point_rank-table .bronze td{
  background-color: #ddc9b2;
}
.footnote{
  margin-top: 10px;
}
.with-point-link{
  flex-direction: row;
  flex-wrap: wrap;
}
.point-link{
  display: block;
}
.help-list dd.js-accordion-content-padding{
  padding-top: 15px;
}
@media (min-width: 751px){
  .point-heading{
    font-size: 36px;
  }
}

/* help
--------------------------------------------*/
[data-directory="help"] .help-detail{
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", YuGothic, 'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ Ｐゴシック', sans-serif;
}
.help-heading{
  font-size: calc( 36 / 750 * 100vw );
  color: #898989;
}
.help-detail{
  margin-top: 35px;
}
.help-detail > dt{
  text-align: center;
}
.help-detail-body{
  margin-top: 25px;
}
.help-list p{
  display: flex;
}
.help-list dt{
  padding: 20px calc( 30 / 750 * 100vw ) 20px calc( 60 / 750 * 100vw );
  background-color: #faf8f9;
  border-bottom: 1px solid #c1c1c1;
  font-weight: bold;
}
.help-list dd{
  padding: 0 calc( 30 / 750 * 100vw );
}
.help-list dd p{
  padding-top: 15px;
  padding-bottom: 15px;
  line-height: 1.8;
}
.help-list dt p::before,
.help-list dd p::before{
  margin-right: calc( 20 / 750 * 100vw );
  font-size: calc( 48 / 750 * 100vw );
}
@media (min-width: 751px){
  .help-heading{
    font-size: 36px;
  }
  .help-list dt{
    padding-left: 70px;
    padding-right: 30px;
  }
  .help-list dd{
    padding-left: 30px;
    padding-right: 30px;
  }
  .help-list li p::before{
    margin-right: 20px;
    font-size: 48px;
  }
}

/* terms
--------------------------------------------*/
.terms-list{
  margin-top: 35px;
}
.terms-list dt{
  margin-top: 25px;
  font-weight: bold;
}
.terms-list dd{
  margin-top: 10px;
}
.terms-list li{
  margin-top: 10px;
  padding-left: 1em;
  text-indent: -0.9em;
}
.terms-list li::before{
  counter-increment: count;
  content: counter(count)".";
}
.ordered-child-list{
  width: calc(100% + 1em);
  margin-left: -1em;
}
.ordered-child-list li::before{
  display: none;
}

.js-accordion-content{
  display: none;
}
.js-accordion-toggle{
  position: relative;
  cursor: pointer;
}
.js-accordion-toggle::before {
  content: "＋";
  position: absolute;
  left: calc( 20 / 750 * 100vw );
  top: 20px;
  color: #898989;
  font-size: calc( 32 / 750 * 100vw );
  line-height: 1.3;
}
.js-accordion-toggle.open::before {
  content: "－";
}
[data-directory="about_pt"] .js-accordion-toggle::before{
  top: 50%;
  left: calc( 20 / 750 * 100vw );
  right: auto;
  transform: translateY(-50%);
  font-size: calc( 50 / 750 * 100vw );
}
@media (min-width: 751px){
  .js-accordion-toggle::before {
    left: 20px;
    font-size: 36px;
  }
  [data-directory="about_pt"] .js-accordion-toggle::before{
    font-size: 50px;
  }
}

/* online_entry
--------------------------------------------*/
[data-directory="online_entry"] main{
  padding-bottom: 0;
}
[data-directory="online_entry"] li {
  margin-top: 10px;
}
[data-directory="online_entry"] p + p{
  margin-top: 10px;
}
.safety-container{
  margin-top: 25px;
}
.safety-heading{
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc( 100 / 750 * 100vw );
  background-color: #61a952;
  font-size: calc( 36 / 750 * 100vw );
  color: #ffffff;
  font-weight: bold;
  text-align: center;
}
.safety-dody{
  padding: 8px calc( 22 / 750 * 100vw ) 18px;
  background-color: #faf8f9;
  white-space: nowrap;
}
.safety-dody li{
  padding-left: calc( 46 / 750 * 100vw );
  background-repeat: no-repeat;
  background-size: calc( 36 / 750 * 100vw );
  background-position: top 1.1vw left; 
  font-size: calc( 31 / 750 * 100vw );
  color: #4c4c4c;
  font-weight: bold;
}
.safety-dody li:first-child{
  background-image: url('/wp-content/themes/kuratomo2022/kuratomo_app/common/images/num-1.png.webp');
}
.safety-dody li:nth-child(2){
  background-image: url('/wp-content/themes/kuratomo2022/kuratomo_app/common/images/num-2.png.webp');
}
.safety-dody li:nth-child(3){
  background-image: url('/wp-content/themes/kuratomo2022/kuratomo_app/common/images/num-3.png.webp');
}
.safety-dody li:nth-child(4){
  background-image: url('/wp-content/themes/kuratomo2022/kuratomo_app/common/images/num-4.png.webp');
}
.safety-dody li:nth-child(5){
  background-image: url('/wp-content/themes/kuratomo2022/kuratomo_app/common/images/num-5.png.webp');
}
.safety-dody li:last-child{
  background-image: url('/wp-content/themes/kuratomo2022/kuratomo_app/common/images/num-6.png.webp');
}
.safety-container + p{
  margin-top: 25px;
}
.movie{
  margin-top: 25px;
}
.movie {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.movie iframe {
  width: 100%;
  height: 100%;
}

.inquiry{
  width: 100vw;
  margin: 35px calc(50% - 50vw) 0;
  padding: 35px calc( 60 / 750 * 100vw ) 70px;
  background-color: #faf8f9;
  text-align: center;
}
.inquiry-heading{
  font-size: calc( 42 / 750 * 100vw );
  color: #61a952;
  font-weight: bold;
}
.inquiry-body{
  margin-top: 25px;
}
.inquiry-body a{
  display: block;
  margin-top: 10px;
}
.inquiry-body dt{
  color: #333333;
  font-size: calc( 36 / 750 * 100vw );
  font-weight: bold;
}
.acceptance{
  margin-top: 10px;
  color: #333333;
  font-size: calc( 28 / 750 * 100vw );
}
.help-list .text-indent{
  margin-left: 1em;
  text-indent: -1em;
  line-height: 1.8;
}
.js-accordion-content ul li ,
.js-accordion-content ol li{
  line-height: 1.8;
}
@media (min-width: 751px){
  .safety-heading{
    height: 100px;
    font-size: 36px;
  }
  .safety-dody li{
    padding-left: 46px;
    font-size: 31px;
    background-size: 36px;
    background-position: top 6px left;
  }
  .inquiry-heading{
    font-size: 42px;
  }
  .inquiry-body dt{
    font-size: 36px;
  }
  .acceptance{
    font-size: 28px
  }
}