@import url("https://www.mandarake.co.jp/lib/cmmn.css");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:900&display=swap");
body {
  font-size: 1em;
  line-height: 150%;
  padding: 0;
  margin: 0;
  text-align: center;
  background-image: url(../img/bg.jpg);
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
}

div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

h1, h2, h3 {
  line-height: 150%;
}

.global_foot {
  color: #fff;
  width: 100%;
  max-width: 100%;
}

.global_foot a {
  color: #fff;
}

.content {
  max-width: 1200px;
  margin: auto;
  padding: 0 0 50px;
}

.hero {
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
	flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
}

@media only screen and (max-width: 768px) {
  .hero {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media only screen and (min-width: 769px) {
  .hero {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.hero__read {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.hero__read--t1 {
  width: 340px;
}

@media only screen and (max-width: 768px) {
  .hero__read--t1 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
}

.hero__read--t2 {
  width: 340px;
}

@media only screen and (max-width: 768px) {
  .hero__read--t2 {
    
	  -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
}

@media only screen and (min-width: 769px) {
  .hero__read--t2 {
    padding: 0 20px 0 0;
  }
}

.hero__read p {
  margin: 25px;
}

.hero__read span {
  background-color: rgba(0, 0, 0, 0.9);
  color: #fff;
  display: inline-block;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.7rem;
  padding: 10px 12px 5px;
}

@media only screen and (max-width: 768px) {
  .hero__img {
    max-width: 480px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

@media only screen and (min-width: 769px) {
  .hero__img {
    max-width: 550px;
  }
}

.hero__img img {
  max-width: 100%;
}

.hero__box {
  width: 49.5%;
}

.title {
  color: #000;
  line-height: 150%;
  text-shadow: #fff 1px 1px 1px ,#fff 1px -1px 1px ,#fff -1px -1px 1px ,#fff -1px 1px 1px ,#fff -1px 0px 1px ,#fff 0px 1px 1px;
  width: calc(100% - 20px);
}

@media only screen and (max-width: 768px) {
  .title {
    font-size: 1.7rem;
    margin: 50px auto 0 auto;
  }
}

@media only screen and (min-width: 769px) {
  .title {
    font-size: 2.5rem;
    margin: 100px auto 0 auto;
  }
}

.title__text {
  display: inline-block;
}

.coment {
  background-color: #c5d1d6;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.15rem;
  line-height: 160%;
  text-align: left;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .coment {
    margin: 50px auto 0 auto;
    padding: 25px 0;
  }
}

@media only screen and (min-width: 769px) {
  .coment {
    background-color: #dce7ea;
    margin: 100px auto 0 auto;
    padding: 50px 0;
  }
}

.coment__content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  padding: 0 10px;
  width: 100%;
}

@media only screen and (min-width: 769px) {
  .coment__content {
    max-width: 1200px;
  }
}

.coment p {
  margin: 15px 0 0 0;
}

.coment a {
	cursor: pointer;
	color: #486B97;
   text-decoration: none;
	word-break: break-all;
}

.coment a:hover {
	color: #946349;
   text-decoration: underline;
}

h2 {
  font-size: 1.5rem;
  line-height: 150%;
  margin: 0;
  padding: 0;
}

h3 {
  border-bottom: 1px dotted #666;
  font-size: 1.125rem;
  line-height: 150%;
  margin: 0 0 0 0;
  padding: 12px 0 10px 10px;
}

h3 span {
  border: 1px solid #666;
  border-radius: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  margin: 0 5px 0 0;
  text-align: center;
  width: 29px;
}

.image {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .image {
	  margin: 50px 0 0;
	  padding: 0 10px;
  }
}

@media only screen and (min-width: 769px) {
  .image {
	  max-width: 1200px;
	  margin: 80px auto 0;
  }
}

@media only screen and (max-width: 768px) {
  .image_item {
    width: 48.3%;
	  margin: 0 0 15px;
  }
}

@media only screen and (min-width: 769px) {
  .image_item {
	  width: 24%;
	  margin: 0 0 30px;
  }
}

.image_item img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

.how_to_buy {
  background-color: rgba(255, 255, 255, 0.9);
	box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
  .how_to_buy {
    margin: 35px 0 0 0;
	  padding: 25px 10px;
  }
}

@media only screen and (min-width: 769px) {
  .how_to_buy {
    margin: 50px 0 0 0;
	  padding: 35px;
  }
}

.how_to_buy__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (min-width: 769px) {
  .how_to_buy__inner {
    margin: 15px 0 0 0;
  }
}

@media only screen and (max-width: 768px) {
  .how_to_buy__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media only screen and (min-width: 769px) {
  .how_to_buy__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-line-pack: start;
        align-content: flex-start;
  }
}

.how_to_buy__area {
  text-align: left;
  border: 1px solid #333;
  padding: 15px;
}

@media only screen and (max-width: 768px) {
  .how_to_buy__area {
    width: 100%;
    margin: 20px 0 0 0;
  }
}

@media only screen and (min-width: 769px) {
  .how_to_buy__area {
    width: 49%;
  }
}

.how_to_buy p {
  margin: 0 0 20px;
	text-align: left;
}

@media only screen and (max-width: 768px) {
  .how_to_buy p {
	  font-size: 1.0rem;
	  line-height: 1.9rem;
	}
}

@media only screen and (min-width: 769px) {
  .how_to_buy p {
	  font-size: 1.1rem;
	  line-height: 2.1rem;
	}
}

.moshikomi {
  background-color: #292929;
  display: block;
  text-align: center;
  font-size: 1.5rem;
  line-height: 150%;
  padding: 10px 20px;
  color: #fff;
  border-radius: 5px;
  text-decoration: none;
}

@media only screen and (max-width: 768px) {
  .moshikomi {
	  font-size: 1.15rem;
	  margin: 20px auto 0;
	}
}

@media only screen and (min-width: 769px) {
 	.moshikomi {
	  font-size: 1.5rem;
		margin: 25px auto 0;
	}
}

.moshikomi:hover {
	opacity: 0.8;
}

.mailform {
  margin: 50px 0 0 0;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 25px;
}

.mailform__short {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
  .mailform__short {
	  width: 40%;
	}
}

@media only screen and (min-width: 769px) {
 	.mailform__short {
	  width: 30%;
	}
}

.mailform__middle {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
  .mailform__middle {
	  width: 100%;
	}
}

@media only screen and (min-width: 769px) {
 	.mailform__middle {
	  width: 50%;
	}
}

.mailform__long {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
  .mailform__long {
	  width: 100%;
	}
}

@media only screen and (min-width: 769px) {
 	.mailform__long {
	  width: 80%;
	}
}

.mailform__max {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mailform table {
  margin: 5px 0 0 0;
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

.mailform tr {
	display: flex;
	width: 100%;
}

@media only screen and (max-width: 768px) {
  .mailform tr {
		flex-direction: column;
	}
}

.mailform th, .mailform td {
  border-bottom: 1px solid #ccc;
  padding: 10px 0 9px 0;
  font-weight: normal;
}

@media only screen and (max-width: 768px) {
  .mailform th {
	  width: 100%;
	}
}

@media only screen and (min-width: 769px) {
 	.mailform th {
	  width: 25%;
	}
}

@media only screen and (max-width: 768px) {
  .mailform td {
	  width: 100%;
	}
}

@media only screen and (min-width: 769px) {
 	.mailform td {
	  width: 75%;
	  text-align: left;
	}
}

.mailform .submit {
  margin: 15px 0 0 0;
}

.mailform input[type=text],
.mailform input[type=email] {
  -webkit-appearance: none;
  border: 1px solid #ccc;
  font-size: 1.15rem;
  padding: 6px 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mailform input[type=submit] {
  -webkit-appearance: none;
  border: 1px solid #ccc;
  font-size: 1.25rem;
  padding: 5px 20px;
  background-color: #163b73;
  color: #fff;
}

.mailform .submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px 0 0;
}

@media only screen and (max-width: 768px) {
  .mailform .submit {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

@media only screen and (min-width: 769px) {
  .mailform .submit {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
  }
}

.mailform .submit input[type=submit] {
  -webkit-appearance: none;
  border: none;
  font-size: 1.2rem;
  margin: auto;
  padding: 5px 15px;
}

.mailform .submit input[type=submit]:first-child {
  background-color: #292929;
  color: #fff;
  padding: 5px 25px;
}
