@charset "utf-8";

/* font */
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp.min.css');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Serif:ital,opsz,wght@0,8..144,100..900;1,8..144,100..900&display=swap');

/* reset */
* { padding: 0; margin: 0; box-sizing: border-box; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, caption, cite, code, dfn, em, var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
q:before, q:after { content: ''; }
abbr, acronym { border: 0; }
section, article { display: block; }

/* iOS reset */
input[type=text] { border:none; -webkit-border-radius : 0; -webkit-appearance : none; -webkit-tap-highlight-color : rgba(0,0,0,0); }
input[type="submit"],
input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration { display: none; }
input[type="submit"]::focus,input[type="button"]::focus { outline-offset: -0.15em; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background: transparent; }
button,input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none; background: transparent; }
input[type="radio"] { display: none; }
input[type="radio"]:checked + label { background: #ff0000; }

/* base */
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body {
  animation: openPage 5s ease 0s 1 normal;
  -webkit-animation: openPage 5s ease 0s 1 normal;
  -webkit-font-smoothing: auto;
  font-feature-settings: 'palt';
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-kerning: normal;
  -webkit-font-kerning: normal;
  font-family: "A-OTF A1明朝 Std Bold", "A1明朝", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 15px;
  text-align: center;
  letter-spacing: 0.25em;
  font-weight: 500;
  box-sizing: border-box;
  background-color: #ffffff;
  color: #000000;
  padding: 0;
  margin: 0;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
}
img { vertical-align: bottom; height: auto; width: 100%; }
::selection { background: #222222; color: #ffffff; }
::-moz-selection { background: #222222; }

/* link */
a:link, a:visited, a:active { color: #008cce; text-decoration: underline; text-decoration-thickness: 1px; word-break: break-all !important; transition: 0.2s linear; }
a:hover { color: #cccccc; }

/* clear */
.clear { clear: both; }
.cbox { zoom: 100%; }
.cbox:after { content: ""; clear: both; height: 0; display: block; visibility: hidden; }

/* options */
.r { border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; overflow: hidden; }
.rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-feature-settings : "pkna"; }
.pc { display:block; }
.sp { display:none; }
.pcbr { display:block; }
.spbr { display:inline; }
.pc_inline { display:inline; }
.sp_inline { display:none; }
.sp_menu { display:none; }

/* openPage */
.openPage { opacity : 0; transition: opacity 2s; }
@keyframes openPage { 0% { opacity: 0 } 100% { opacity: 1 } }
@-webkit-keyframes openPage { 0% { opacity: 0 } 100% { opacity: 1 } }

/* cWrap */
.cWrap { position: relative; padding:0 0; }

/* cHeader */
.cHeader {  }
.cHeader .cHeader__knitting { width: 14%; position: fixed; left: 4%; top: 3rem; }
.cHeader .cHeader__title { position: fixed; top:4rem; right:4%; font-size: 2.5em; line-height: 1.8em; letter-spacing: 0.25em; text-align: left; }

/* cMain */
.cMain { background-color: #fff; width: auto; padding: 0 5rem 5rem 5rem; margin: 4rem 12% 3rem 22%; border-left:solid 1px #ccc; border-right: solid 1px #ccc; }
.cMain .cMain_title { padding: 0 0 5rem 0; }
.cMain .cMain_sec h1 { font-family: "Roboto Serif", serif; font-weight: 400; font-size: 2.5em; line-height: 1.5em; letter-spacing: 1.35em; padding: 1.5em 0 1.5em 0.15em; border-top: solid 1px #ccc; border-bottom: solid 1px #ccc; }
.cMain .cMain_sec p { font-size: 1.6em; line-height: 1.8em; text-align: justify; margin-bottom: 1.5em; }
.cMain .cMain_sec p:last-child { margin-bottom:0; }
.cMain .cMain_sec p.q { color:#008cce; margin: 4em 0 2em; }
.cMain .cMain_sec p.a { padding: 1.5em 1.75em; background-color:#eeeeee; box-shadow: 1.5rem 1.5rem 0 #ffee88; margin-bottom: 4em; }
.cMain .cMain_sec .mData { border-top:solid 1px #666; border-bottom: solid 1px #666; padding:3em 0; margin:5em 0; }
.cMain .cMain_sec .mData .mData--title { font-size: 2em; line-height: 1.8em; text-align: center; margin:0 0 0.5em 0; }
.cMain .cMain_sec .mData p { font-size: 1.4em; line-height: 1.8em; text-align: center; }
.cMain .cMain_sec .mPhoto { position: relative; text-align: left; margin: 5em 0 8em 0; }
.cMain .cMain_sec .mPhoto { box-shadow: 1.5rem 1.5rem 0 #ffee88; }
.cMain .cMain_sec .mProduct { background-color:#eeeeee; padding:5em; margin:3em 0 0 0; box-shadow: 1.5rem 1.5rem 0 #ffee88; }
.cMain .cMain_sec .mProduct .mProduct--photo { margin:1em 0; }
.cMain .cMain_sec .mProduct .mProduct--title { font-size: 2.5em; line-height: 1.8em; letter-spacing: 0.15em; text-align: center; margin:2em 0 1em 0; }
.cMain .cMain_sec .mProduct dl { display:flex; justify-content: space-between; flex-wrap: wrap; }
.cMain .cMain_sec .mProduct dl dt { width: 25%; font-size: 1.4em; line-height: 1.8em; font-weight: normal; text-align: left; margin: 0.5em 0; }
.cMain .cMain_sec .mProduct dl dd { width: 75%; font-size: 1.4em; line-height: 1.8em; font-weight: normal; text-align: left; margin: 0.5em 0; }
.cMain .cMain_sec .mProduct dl dd .mProduct--price { font-size: 1.6em; line-height: 1em; margin:0 0 0.25em 0; }
.cMain .cMain_sec .mProduct dl dd .mProduct--price span { font-size: 0.6em; margin:0 0 0 0.25em; }
.cMain .cMain_sec .mProduct dl dd .mProduct--cap { font-size: 0.8em; line-height: 1.8em; margin: 0.25em 0; }
.cMain .cMain_sec .mProduct .cartjs_product_num { display:none; }
.cMain .cMain_sec .mProduct .cartjs_cart_in input { display:block; width:100%; margin:1.5em 0 0 0; font-size: 1.4em; letter-spacing: 0.15em; line-height: 1em; background-color: #008cce; padding:1em; color:#fff; border-radius: 3em; }
.cMain .cMain_sec .mProduct .cartjs_cart_in input:hover { background-color: #222222; color:#ffffff; }

/* cFooter */
.cFooter { line-height: 1.75em; padding: 2em 0; text-align: center; }
.cFooter .cFooter_main { font-size: 1.4em; margin-top: 3em; margin-bottom: 1em; }
.cFooter .cFooter_sub { font-size: 1em; margin-top: 3em; margin-bottom: 1em; }

/* sp */
@media screen and (max-width: 960px) {

body { font-size: 11px; }

/* sp */
.pc { display: none; }
.sp { display: block; }
.pcbr { display: inline; }
.spbr { display: block; }

/* cWrap */
.cWrap { position: relative; padding:0 0 0 0; }

/* cHeader */
.cHeader { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; padding: 2.5rem 0 0 5%; }
.cHeader .cHeader__knitting { width: 50%; position: static; }
.cHeader .cHeader__title { position: absolute; top:3rem; right:13%; font-size: 2.2em; line-height: 2em; text-align: left; }

/* cMain */
.cMain { width: 90%; padding: 0 0; border-right: none; border-left: none; margin: 0 auto 5em auto; }
.cMain .cMain_title { padding: 6em 0 4em 0; }
.cMain .cMain_sec h1 { width:100%; font-size: 2em; margin: 0 0 0 0; letter-spacing: 0.75em; padding:1em 0; }
.cMain .cMain_sec .mPhoto { position: relative; text-align: left; margin: 3em 0 4em 0; box-shadow: 2.75vw 5.5vw 0 #ffee88; }
.cMain .cMain_sec .mPhoto figcaption { display:block; padding: 1.5em 2em; font-size: 1em; line-height: 2em; }
.cMain .cMain_sec p.a { box-shadow: 2.75vw 5.5vw 0 #ffee88; margin-bottom: 5em; }
.cMain .cMain_sec .mProduct { background-color: #eeeeee; padding: 3em; margin:3em 0; box-shadow: 2.75vw 5.5vw 0 #ffee88; }
.cMain .cMain_sec .mProduct .mProduct--photo { margin:0 0; }
.cMain .cMain_sec .mProduct .mProduct--title { font-size: 1.8em; line-height: 1.8em; text-align: center; margin:1.5em 0 0.75em 0; }
.cMain .cMain_sec .mProduct dl { display:flex; justify-content: space-between; flex-wrap: wrap; }
.cMain .cMain_sec .mProduct dl dt { width: 30%; font-size: 1.4em; line-height: 1.8em; font-weight: normal; text-align: left; margin: 0.5em 0; }
.cMain .cMain_sec .mProduct dl dd { width: 70%; font-size: 1.4em; line-height: 1.8em; font-weight: normal; text-align: left; margin: 0.5em 0; }
.cMain .cMain_sec .mProduct dl dd .mProduct--price { font-size: 1.6em; line-height: 1em; margin:0 0 0.25em 0; }
.cMain .cMain_sec .mProduct dl dd .mProduct--price span { font-size: 0.5em; margin:0 0 0 0.25em; }
.cMain .cMain_sec .mProduct dl dd .mProduct--cap { font-size: 0.8em; line-height: 1.8em; margin: 0.25em 0; }
.cMain .cMain_sec .mProduct .cartjs_product_num { display:none; }
.cMain .cMain_sec .mProduct .cartjs_cart_in input { display:block; width:100%; margin:1.5em 0 0 0; font-size: 1.4em; letter-spacing: 0.15em; line-height: 1em; background-color: #008cce; padding:1em; color:#fff; border-radius: 3em; }
.cMain .cMain_sec .mProduct .cartjs_cart_in input:hover { background-color: #ffffff; color:#008cce; }

/* cFooter */
.cFooter { line-height: 1.75em; padding: 2em 0; text-align: center; }
.cFooter .cFooter_main { font-size: 1.4em; margin-top: 3em; margin-bottom: 1em; }
.cFooter .cFooter_sub { font-size: 1em; margin-top: 3em; margin-bottom: 1em; }

}
@media screen and (max-width: 374px) {
body { font-size: 11px; }
}
@media screen and (min-width: 471px) and (max-width: 1380px) {
body { font-size: 12px; }
}
@media screen and (min-width: 1381px) and (max-width: 1450px) {
body { font-size: 13px; }
}
@media screen and (min-width: 1451px) and (max-width: 1550px) {
body { font-size: 14px; }
}
@media screen and (min-width: 1551px) and (max-width: 1650px) {
body { font-size: 15px; }
}
