@charset "UTF-8";

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
}

.here {
  color:#f3b71a ;
}

body {
  font-family:"Unbounded","M PLUS 1", sans-serif;
  font-weight:500;
  font-style: normal;
  font-size: 20px;
  color: #3d3d3d;
  letter-spacing: 0.05rem;
  line-height: 1.5;
  background-image: url(../img/bg-yellow.png);
  background-attachment: fixed;
  position: relative;
}

.wrapper {
  max-width: 1000px;
  margin: 0 auto;
}

/* ====================================================
    main
 ====================================================== */
main {
  font-family: "M PLUS 1", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: center;
}

/* ---------------------------------------------------
  レスポンシブ用
  ---------------------------------------------------- */
.u-768 {
  display: none;
}

.u-400 {
  display: none;
}


/* ---------------------------------------------
  explain
  ---------------------------------------------- */
main .explain h3 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 40px;
}


.explain-img {
  max-width: 700px;
  margin: 0 auto;
}

.explain-img img {
  width: 100%;
}


main .explain {
  background-color: #fff;
  border-radius: 25px;
  padding: 40px 0;
  margin-bottom: 100px;
  font-size: 20px;

}

main .explain p {
  margin-bottom: 40px;
  text-align: center;
}

.to-X-btn {
  margin: 0 auto 80px;
}


.to-X-btn a {
  color: #155882;
  border-radius: 15px;
  padding: 16px 100px;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  
  background-color: #155882;
  position: relative;
  overflow: hidden;
  color: #fff;
} 

.to-X-btn a:hover {
  color: #3d3d3d;
  transition: .3s;
  background: #f3b71a;
}

.to-X-btn a::before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 25px;
	width: 0;
	height: 0;
	margin-top: -5px;
	border: 5px solid transparent;
	border-left: 5px solid #fff;
}

.to-X-btn a:hover::before {
	left: 30px;
}

/* -----------------------------------------------
  価格ページ共通項
  --------------------------------------------------*/

#port h2,
#stamp h2,
#illustration h2,
#comic h2 {
  font-size: 64px;
  font-weight: bold;
  margin-bottom: 40px;
}

#port h3,
#stamp h3,
#illustration h3,
#comic h3 {
  font-size:36px; 
  font-weight: bold; 
}

.intro {
  font-size: 30px;
  margin-bottom: 120px;
}

.price {
  font-size: 30px;
}


/* ----------------------------------------
  port 立ち絵
  ----------------------------------------- */

#port {
  background-color: #fafafa;
  border-radius: 25px;
  padding: 80px 20px;
  margin-bottom: 100px;
}


#port .h-sub {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 40px;
}

#port .p-price2 .price,
#port .p-price3 .price {
  line-height: 3;
}



#port .p-price1 img {
  max-width: 280px;
}

#port  img {
  max-width: 250px;
  margin-top: 50px;
}

.p-price-box {
  display: flex;
  justify-content:space-between;
  align-items:baseline;
}

/* ----------------------------------------------------
    stamp スタンプ
  --------------------------------------------------- */

#stamp {
  background-color: #739BB4;
  border-radius: 25px;
  padding: 80px 20px;
  margin-bottom: 100px;
  color: #fff;

}

#stamp .s-price {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

#stamp .s-stc{
  margin-bottom: 40px
}

#stamp .s-price {
  margin-bottom: 100px;
}

#stamp .s-price-img {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 35px;
  align-items: center;
  padding-bottom: 60px;
}

#stamp .s-price-img img {
  width: 100%;
}


/* --------------------------------------------------
   illusutration 一枚絵
   ------------------------------------------------- */
#illustration{
  background-color: #fafafa;
  border-radius: 25px;
  padding: 80px 20px;
  margin-bottom: 100px;
}

.i-price-left {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin-bottom: 50px;
}

.illusut-o-1000 {
  max-width: 900px;
  margin: 0 auto;
}

.illusut-o-1000 img {
  width: 100%;
}

.illusut-u-1000 {
  display: none;
}

/* -------------------------------------------------
   comic マンガ
   ------------------------------------------------ */
#comic{
  background-color: #739BB4;
  border-radius: 25px;
  padding: 80px 20px;
  margin-bottom: 100px;
  color: #fff;
}

#comic .intro {
  line-height: 1.8;
}

.c-price-box {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin-bottom: 50px;
}

.c-price-img {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 42px;
}

.c-price-img img {
  width: 100%;
}



/* -----
    footer
    ------ */
footer {
  max-width: 1000px;
  margin: 0 auto;
  background-image: url(../img/footer-bg.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position:bottom center;
  min-height: 260px;
  color: #fff;
  font-weight:400;
}

footer a {
  color: #fff;
}

footer .footer-logo img {
  max-width: 77px;
}

footer .footer-X img {
  max-width: 30px;
}

footer .footer-inner {
  max-width: 700px;
  margin: 0 auto;
  padding-top: 94px;

}

footer .footer-inner ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 24px;
  padding-bottom: 52px;
}

footer .copylight {
  text-align: center;
}

@media screen and (max-width:768px) {
  .u-768 {
    display: block;
  }
/* -----------------------------------------------
  価格ページ共通項
  --------------------------------------------------*/

#port h2,
#stamp h2,
#illustration h2,
#comic h2 {
  font-size: 48px;
}

#port h3,
#stamp h3,
#illustration h3,
#comic h3 {
  font-size: 32px;  
}

.intro {
  font-size: clamp(1.125rem, 0.582rem + 2.174vw, 1.625rem);
  margin-bottom: 80px;
}

.price {
  font-size: clamp(1.25rem, 0.842rem + 1.63vw, 1.625rem);
}


/* ---------------------------------------
    案内
  -----------------------------------------*/

 .explain-img {
  max-width: 500px;
}

main .explain {
  font-size: clamp(1rem, 0.728rem + 1.087vw, 1.25rem);
}

/* ----------------------------------------
    port 立ち絵
  ----------------------------------------- */

#port .h-sub {
  font-size: 18px;
}
.p-price-box {
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

.p-price1, .p-price2, .p-price1 {
  margin-bottom: 80px;
}

/* ------------------------------------------
    stamp スタンプ
  -------------------------------------------- */

#stamp .s-price-img {
  display: grid;
  grid-template-columns: repeat(2,1fr);
}

#stamp .s-price {
  flex-wrap: wrap;
  justify-content: center;
}

#stamp .s-price-left {
  padding-bottom: 40px;
}


/* ----------------------------------------------
    illusutration 一枚絵
    ---------------------------------------------- */


.illusut-o-1000 {
  display: none;
}
.illusut-u-1000 {
  display: block;
  max-width: 700px;
}

.illusut-u-1000 img{
  width: 100%;
}

/* -----------------------------------------------
  comic マンガ
  -------------------------------------------------- */
.c-price-img {
  grid-template-columns: repeat(1,300px);
  justify-content: center;
}

.c-price-box {
  flex-wrap: wrap;  
}

.c-price-right {
  padding-top: 40px;
}

}

/* =============================================================== */

@media screen and (max-width:400px) {

.u-400 {
  display: block;
}

  /* 共通項 */

  #port h2,
  #stamp h2,
  #illustration h2,
  #comic h2 {
  font-size: 36px;
}

.price-page p {
  font-size: 16px;
}

.intro {
  margin-bottom: 40px;
}

.to-X-btn a {
  padding: 16px 40px;
  font-size: 14px;
}

/* 案内 */

 .explain-img {
  max-width: 350px;
}


#port .p-stc {
  font-size: 20px;
}

/* 立ち絵 */
#port h3 {
  font-size: 28px;
}

#port .h-sub {
  margin-bottom: 16px;
}

.p-price1, .p-price2, .p-price1 {
  margin-bottom: 40px;
}

/* スタンプ */

.s-price-img {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  justify-content: center;
}

#stamp .s-price {
  flex-wrap: wrap;
  justify-content: center;
}

.s-price-left {
  margin-bottom: 40px;
}


/* イラスト */


.illusut-o-1000 {
  display: none;
}
.illusut-u-1000 {
  display: block;
  max-width: 700px;
}

.illusut-u-1000 img{
  width: 100%;
}

/* マンガ */
.c-price-img {
  grid-template-columns: repeat(1,300px);
  justify-content: center;
}

} 
