@charset "utf-8";
/*　サブページ用 style_pf.css追加css　*/
/* サブページ共通 */
/* -------------------------------------- ヘッダー header */
header {
  display: block;
  content-visibility: visible;
}
header h1,
header .tel-bnr,
header .logo strong {
  display: none;
  content-visibility: hidden;
}
header .logo {
  padding: .5em 2vw;
  margin-bottom: 0;
  font-weight: bold;
  line-height: 1.4;
}
main {
  border-top: 1px solid #999;
  background-color: #FFFFFF;
}
/* -------------------------------------- パンくずリスト .path */
nav.path {
  padding: 0;
}
nav.path ul {
  display: inline-flex;
  flex-wrap: wrap;
  margin: 0 2vw;
}
nav.path li {
  font-size: .8em;
  white-space: nowrap;
}
nav.path li::after {
  content: "\03e";
  padding: 0 .5em;
}
nav.path li:last-child::after {
  content: "";
}
/* -------------------------------------- サブページコンテンツ .contents */
.contents {
  font-size: 4vw;
}
.contents table {
  width: 100%;
}
.contents tr {
  border-bottom: 1px solid #ccc;
}
.contents tr:last-child {
  border-bottom: none;
}
.contents th {
  display: block;
  width: 100%;
  padding: .5em 0 0;
  text-align: left;
  white-space: nowrap;
  border-bottom: 1px solid #3D232B;
}
.contents td {
  display: block;
  width: 100%;
  padding: .2em 0 .5em;
}
/* __________________________________________ 資料請求 #doc */
.ttlbox {
  padding: 86vw 0 1em;
  text-align: center;
  background-image: url("../ppc-img/pf-doc.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}
.ttlbox h2 {
  margin: 0 0 .3em;
  font-size: 1.6em;
}
.infobox {
  margin-bottom: 2em;
  padding: 2em 4vw 1em;
  background-color: #EBF898;
}
.infobox h3 {
  margin-bottom: 1em;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #3D232B;
}
.infobox .txtbox {
  margin-bottom: .5em;
  padding: 0 5vw;
  text-align: justify;
}
.infobox .txtbox p {
  margin-bottom: 0;
}
.infobox .choice {
  padding: 1em 0;
}
.infobox .choice .docbtn {
  display: block;
  width: 80vw;
  height: 4em;
  margin: 0 auto;
  padding: 0;
  color: #3D232B;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  line-height: 4em;
  background-color: rgba(255,255,255,0.80);
  border: 2px solid #3D232B;
  border-radius: 2em;
  transition: .5s;
}
.infobox .choice .docbtn:active,
.infobox .choice .docbtn:focus {
  transform: scale(.95);
  background-color: rgba(255,255,255,0.10);
}
.infobox .choice p:first-child .docbtn {
  margin: 0 auto 2em;
}
#doc .telno {
  width: 70vw;
  margin: 1em auto;
}
.infobox .formbox {
  margin: 1em 0;
}
.infobox .formbox iframe {
  width: 100%;
  height: 530vw;
}
/* __________________________________________ プライバシーポリシー #privacy */
#privacy ol {
  list-style-type: decimal;
  padding-left: 1em;
}
#privacy h3 {
  font-weight: bold;
  border-bottom: 1px solid #3D232B;
}
#privacy h4 {
  color: #252525;
  font-size: 1em;
}
/* -------------------------------------- お問い合わせ .contact */
#contact iframe {
  width: 100%;
  height: 180vh;
}
/* -------------------------------------- よくある質問 #qa */
#qa dl.minbox {
  padding: 0;
  width: 98vw;
}
#qa h2 {
  font-size: 1.4em;
  margin-bottom: 2em;
}
#qa dl dt, #qa dl dd {
  margin: 0;
  padding: 0 2vw 0 12vw;
  min-height: 10vw;
  background-repeat: no-repeat;
  background-position: left top;
}
#qa dl dt {
  margin-bottom: 0.5em;
  font-size: 1.9rem;
  line-height: 1.2;
  color: #FF3700;
  font-weight: bold;
  background-image: url("../of123-img/ic_q.svg");
  background-size: 10vw 10vw;
} 
#qa dl dt.line1 {
  line-height: 10vw;
}
#qa dl dd {
  margin-bottom: 1.5em;
  padding-bottom: 1em;
  font-size: 1.8rem;
  background-image: url("../of123-img/ic_a.svg");
  background-size: 10vw 10vw;
  border-bottom: 3px dotted #ccc;
}
#qa dl dd:last-child {
  margin-bottom: 0;
}
#qa.a8lp dl dt.a8,
#qa.a8lp dl dd.a8,
#qa.ys_qa dl dt.ys,
#qa.ys_qa dl dd.ys/*,
#qa.doc_qa dl dt.doc,
#qa.doc_qa dl dd.doc*/ {
  display: none;
  content-visibility: hidden;
}
.backbtn a {
  display: block;
  width: 92vw;
  margin: 2em auto;
  padding: .5em 0;
  color: #FFFFFF;
  font-size: 1.1em;
  text-align: center;
  text-decoration: none;
  background-color: #FF3700;
  border-radius: .5em;
  position: relative;
}
.backbtn a::after {
  content: "\025c0";
  position: absolute;
  left: .5em;
  top: calc(50% - .6em);
}
#qa .contents {
  padding: 1.5em 0 0;
}
#qa .ord_eshops .ord-group {
  padding: 2em 0;
}
#qa .lightbox figure {
  top: calc(50% - 15vh);
}
/* PayPay決済の流れ */
#qa .flowbtn label {
  display: block;
  color: #0066CC;
  text-decoration: underline;
}
#qa .flowbtn label:active {
  color: #CC0000;
  text-decoration: none;
}
#qa .toggle + .flowbtn + .tglbox {
  width: 84vw;
  overflow-x: hidden;
  overflow-y: visible;
}
#qa .toggle:checked + .flowbtn + .tglbox {
  max-height: 400vh;
  transition: all 1.5s;
}
.flowbox {
  width: 96vw;
  margin: 0;
  padding: 0;
}
.flowbox ol.flowbox-inner {
  margin-bottom: 0;
}
.flowbox li h3 {
  padding: .1em 4vw;
  color: #FFFFFF;
  font-size: 1em;
  text-shadow: 0 1px 0 rgba(5,29,65,0.40);
  background-color: #b4b0bd;
  border-top: 2px solid #051d41;
  border-bottom: 2px solid #051d41;
}
.flowbox li:nth-child(2) h3 {
  background-color: #a7a0af;
}
.flowbox li:nth-child(3) h3 {
  background-color: #9992a2;
}
.flowbox li:nth-child(4) h3 {
  background-color: #8b8395;
}
.flowbox li:nth-child(5) h3 {
  background-color: #7e7589;
}
.flowbox li:nth-child(6) h3 {
  background-color: #71697d;
}
.flowbox li:nth-child(7) h3 {
  background-color: #5B5564;
}
.flowbox li:nth-child(8) h3 {
  background-color: #3F3B45;
}
.flowbox li h3 + p {
  padding: 0 2vw 0 4vw;
  font-size: 1em;
  text-align: justify;
}
.flowbox li .paypay-img {
  text-align: center;
}
.flowbox li .paypay-img img {
  width: 70vw;
}
.flowbox li .action-arw {
  padding-right: 2vw;
  text-align: right;
  position: relative;
}
.flowbox li .action-arw img {
  width: 50vw;
}
.flowbox li .action-arw::after {
  content: "";
  display: block;
  width: 52vw;
  height: 2.4em;
  border: 5px solid #ff0000;
  position: absolute;
  right: 1vw;
  bottom: 4vw;
  z-index: 10;
}
.flowbox li:nth-child(2) .action-arw::after {
  bottom: 11.5vw;
}
.flowbox li:nth-child(3) .action-arw::after {
  bottom: 8.5vw;
}
.flowbox li .action-arw .arw {
  display: block;
  width: 50vw;
  height: 0;
  padding-top: 8vw;
  background-image: url("/img/pay/paypay-flow/paypay-flow-tap.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  overflow: hidden;
  position: absolute;
  bottom: 5vw;
  left: 0;
  z-index: 20;
}
.flowbox li:nth-child(2) .action-arw .arw {
  bottom: 12.5vw;
}
.flowbox li:nth-child(3) .action-arw .arw {
  bottom: 9.5vw;
}
/* __________________________________________ 皆様のご感想 #voice */
/*#voice p {
  margin-bottom: 0.5em;
}
#voice #howto h2,
#voice #otayori h2,
#voice #hiketa h2 {
  width: 100%;
  border-radius: 0;
}
#voice .page_indx p, #voice .page_indx nav.indx_list {
  margin: 0 2vw;
}
#voice h2 {
  font-size: 1.4em;
  margin-bottom: 2em;
}
#voice .contents {
  font-size: 4.5vw;
}*/
#voice .page_indx {
  margin: 0 2vw;
}
#voice .page_indx .indx_list li {
  margin: 1em 0;
}
#voice .page_indx .indx_list li a {
  display: block;
  padding: 1em 0.5em 1em 3em;
  color: #6A0000;
  font-weight: bold;
  text-decoration: none;
  background-color: #FDE297;
  border-radius: 1em;
  position: relative;
}
#voice .page_indx .indx_list li a::before {
  content: "\025bc";
  font-size: 2em;
  margin-top: -0.7em;
  color: #FFFFFF;
  position: absolute;
  left: 0.2em;
  top: 50%;
}
#voice .ord_eshops, 
#voice .ord_eshops * {
  font-size: inherit;
}
/* -------------------------------------- 使い方 #howto  */
#voice #howto h3 {
  margin: 0;
  padding: 0.5em 0;
  text-align: center;
  color: #FFFFFF;
  font-weight: bold;
  background-color: #FF3700;
}
#voice #howto .yt_play {
  background-image: url("../of123-img/youtube_sumb_voice.jpg");
}
#voice #howto .yt_movie + p {
  font-size: .8em;
  text-align: center;
}
/* -------------------------------------- お便り #otayori  */
#voice #otayori h3 {
  margin-bottom: 0;
  padding: 0.5em 0;
  color: #6A0000;
  font-weight: bold;
}
#voice #otayori h3 + p {
  text-align: center;
  position: relative;
  z-index: 1;
}
#voice #otayori .kansou_hagaki {
  margin: 1em 2vw;
  font-size: .9em;
}
#voice #otayori .kansou_hagaki img {
  width: 30vw;
}
#voice #otayori .kansou_hagaki dt {
  margin-bottom: 0.2em;
  padding-left: 1em;
  color: #0E195F;
  font-weight: bold;
  line-height: 1.2;
  position: relative;
}
#voice #otayori .kansou_hagaki dt::before {
  content: "\025a0";
  display: block;
  width: 5vw;
  font-size: 5vw;
  color: #0E195F;
  position: absolute;
  left: -.2em;
  top: 0;
}
:lang(x)+:-webkit-full-screen-document, #voice #otayori .kansou_hagaki dt::before{
  top: -.2em;
}
#voice #otayori .kansou_hagaki dd {
  margin: 0 0 1em;
  padding-left: 1em;
}
#voice #otayori .kansou_hagaki:nth-of-type(2) dt,
#voice #otayori .kansou_hagaki:nth-of-type(6) dt,
#voice #otayori .kansou_hagaki:nth-of-type(9) dt {
  display: none;
}
#voice #otayori .kansou_hagaki dd:last-child {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 2px dotted #CCCCCC;
}
#voice #otayori .kansou_hagaki .kh_line {
  background:linear-gradient(transparent 60%, #ff6 60%);
}
/* -------------------------------------- ご感想 #hiketa  */
#voice #hiketa h2 {
  margin-bottom: 1em;
}
#voice #hiketa h3 {
  color: #FF3700;
  font-weight: bold;
}
#voice #hiketa .voice_box {
  padding: 0.5em 2vw;
  margin: .5em auto;
  font-size: .9em;
  border: 2px solid #FF3700;
  position: relative;
}
#voice #hiketa .voice_box p:first-of-type {
  width: 22.5vw;
  margin-right: .5em;
  font-size: .8em;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  float: left;
}
#voice .ord {
  padding: 60vw 4vw 1em;
  background-image: url("../ppc-img/p_voice_ord-bg.jpg");
  background-color: #F8F7E3;
  background-repeat: no-repeat;
  background-size: contain;
}
#voice .ord a {
  display: block;
  margin: 1em auto;
  padding: 0.5em 0 0.6em;
  color: #F8F7E3;
  font-size: 1.4em;
  font-weight: bold;
  font-family: "じゅん 201","リュウミン B-KL","Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  text-decoration: none;
  text-align: center;
  background-color: #00740C;
  border-radius: 0.5em;
  position: relative;
  background-image: -webkit-linear-gradient(270deg,rgba(0,150,68,1.00) 0%,rgba(0,116,12,1.00) 100%);
  background-image: -moz-linear-gradient(270deg,rgba(0,150,68,1.00) 0%,rgba(0,116,12,1.00) 100%);
  background-image: -o-linear-gradient(270deg,rgba(0,150,68,1.00) 0%,rgba(0,116,12,1.00) 100%);
  background-image: linear-gradient(180deg,rgba(0,150,68,1.00) 0%,rgba(0,116,12,1.00) 100%);
}
#voice .ord a::after {
  content: "\025b6";
  position: absolute;
  right: 0.6em;
  bottom: 0.6em;
}
/* ----------------------------------------------------------------------------------------------------------------------------- */
/*　PCレイアウトここから　*/
/* ----------------------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width: 481px) {
/* -------------------------------------- ヘッダー header */
header {
  min-height: 60px;
  overflow: visible;
}
header h1,
header .tel-bnr,
header .logo strong {
  display: block;
  content-visibility: visible;
}
header .logo {
  padding: 0;
  margin-bottom: .5em;
  font-weight: normal;
  line-height: 1.2;
}
/* -------------------------------------- パンくずリスト .path */
nav.path {
  padding: 1em 0 0;
}
/* -------------------------------------- サブページコンテンツ .contents */
.contents {
  font-size: 1.6rem;
}
.contents ul, 
.contents ol {
  margin-bottom: 0;
}
.contents table {
  border-collapse: collapse;
}
.contents tr {
  border-bottom: none;
}
.contents th {
  display: table-cell;
  width: 30%;
  padding: 1em 0;
  text-align: center;
}
.contents td {
  display: table-cell;
  width: 70%;
  padding: .5em 0;
  border-bottom: 1px solid #3D232B;
}
.contents tr:last-child th,
.contents tr:last-child td {
  border-bottom: none;
}
/* __________________________________________ 資料請求 #doc */
#doc .contents {
  padding: 20px 0 0;
}
.docbox {
  display: flex;
}
.ttlbox {
  width: 400px;
  padding: 350px 0 20px;
}
.ttlbox h2 {
  margin: 0 0 .2em;
  font-size: 4rem;
  line-height: 1.2;
}
.ttlbox .telbox {
  width: 300px;
  margin: 40px auto;
  padding-bottom: 80px;
  color: #2b5711;
  font-weight: bold;
  background-image: url("/img/parts/lp_tel-no.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
  overflow: hidden;
}
.infobox {
  width: 580px;
  margin-bottom: 0;
  padding: 60px 30px 20px;
}
.infobox h3 {
  margin-bottom: 1.5em;
  font-size: 2.6rem;
  line-height: 3.0;
}
.infobox .txtbox {
  margin-bottom: 1em;
  padding: 0 50px;
}
.infobox .choice {
  display: flex;
  justify-content: space-between;
  padding: 20px 30px;
}
.infobox .choice .docbtn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 210px;
  height: 80px;
  margin: 0;
  font-size: 1.8rem;
  line-height: 1.2;
  background-color: rgba(255,255,255,0.10);
  border: 1px solid #3D232B;
  border-radius: 0;
}
.infobox .choice .docbtn:active,
.infobox .choice .docbtn:focus,
.infobox .choice .docbtn:hover {
  background-color: rgba(255,255,255,1.0);
  transform: none;
  opacity: 1;
}
.infobox .choice p:first-child .docbtn {
  margin: 0;
}
.infobox .formbox {
  width: 430px;
  margin: 30px auto;
}
.infobox .formbox iframe {
  width: 100%;
  height: 2500px;
}
/* -------------------------------------- お問い合わせ .contact */
#contact iframe {
  height: 1200px;
}
/* -------------------------------------- よくある質問 #qa */
#qa h2 {
  font-size: 4rem;
}
#qa dl.minbox {
  padding: 2em 0 0;
  width: 820px;
}
#qa dl dt, #qa dl dd {
  padding: 0 20px 0 150px;
  min-height: 80px;
  background-position: left 40px top;
}
#qa dl dt, #qa dl dt.line1 {
  margin-bottom: 0.5em;
  font-size: 2.6rem;
  line-height: 80px;
  background-size: 80px 80px;
}
#qa dl dt.line2 {
  line-height: 1.6;
}
#qa dl dt.ltsp {
  letter-spacing: -.5px;
}
#qa dl dd {
  font-size: 2.0rem;
  background-size: 80px 80px;
}
.backbtn a {
  width: 650px;
  font-size: 2.4rem;
}
.backbtn a::after {
  left: 30px;
  top: calc(50% - 0.7em);
  transition: .5s;
}
.backbtn a:hover::after {
 left: 20px;
}
#qa .contents {
  padding: 60px 0 0;
}
#qa .ord_eshops .ord-group {
  padding: 60px 0;
  font-size: 2.0rem;
}
#qa .lightbox figure {
  top: calc(50% - 150px);
  left: calc(50% - 375px);
}
/* PayPay決済の流れ */
#qa .flowbtn label {
  display: inline;
  color: #0066CC;
  text-decoration: underline;
  cursor: pointer;
}
#qa .flowbtn label:hover {
  color: #CC0000;
  text-decoration: none;
}
#qa .toggle + .flowbtn + .tglbox {
  width: 650px;
  overflow: hidden;
}
#qa .toggle:checked + .flowbtn + .tglbox {
  max-height: 3000px;
  transition: all 1.5s;
}
.flowbox {
  width: 650px;
  margin: 0;
  padding: 0;
}
.flowbox ol.flowbox-inner {
  margin-bottom: 0;
}
.flowbox li h3 {
  padding: 5px 20px;
  color: #FFFFFF;
  font-size: 1em;
  text-shadow: 0 2px 2px rgba(5,29,65,0.60);
  background-color: #b4b0bd;
  border-top: 2px solid #051d41;
  border-bottom: 2px solid #051d41;
}
.flowbox li:nth-child(2) h3 {
  background-color: #a7a0af;
}
.flowbox li:nth-child(3) h3 {
  background-color: #9992a2;
}
.flowbox li:nth-child(4) h3 {
  background-color: #8b8395;
}
.flowbox li:nth-child(5) h3 {
  background-color: #7e7589;
}
.flowbox li:nth-child(6) h3 {
  background-color: #71697d;
}
.flowbox li h3 + p {
  padding: 0 10px 0 40px;
  font-size: 1em;
  text-align: justify;
}
.flowbox li .paypay-img, 
.flowbox li .action-arw {
  margin-top: -80px;
  padding-right: 10px;
  text-align: right;
  position: relative;
}
.flowbox li:nth-child(8) .paypay-img {
  margin-top: -170px;
}
.flowbox li:first-child .action-arw {
  margin-top: -140px;
}
.flowbox li .paypay-img img, 
.flowbox li .action-arw img {
  width: 250px;
}
.flowbox li .action-arw::after {
  content: "";
  display: block;
  width: 260px;
  height: 60px;
  border: 5px solid #ff0000;
  position: absolute;
  right: 5px;
  bottom: 20px;
  z-index: 10;
}
.flowbox li:nth-child(2) .action-arw::after {
  bottom: 62px;
}
.flowbox li:nth-child(3) .action-arw::after {
  bottom: auto;
}
.flowbox li:nth-child(6) .action-arw::after {
  bottom: 46px;
}
.flowbox li .action-arw .arw {
  display: block;
  width: 200px;
  height: 0;
  padding-top: 34px;
  background-image: url("/img/pay/paypay-flow/paypay-flow-click.png");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
  overflow: hidden;
  position: absolute;
  bottom: 36px;
  left: 50%;
  transform: translateX(-120px);
  z-index: 20;
}
.flowbox li:nth-child(2) .action-arw .arw {
  bottom: 74px;
}
.flowbox li:nth-child(3) .action-arw .arw {
  bottom: auto;
}
.flowbox li:nth-child(6) .action-arw .arw {
  background-image: url("/img/pay/paypay-flow/paypay-flow-tap.png");
  transform: translateX(-100px);
  bottom: 56px;
}
#qa .tglbox p.kome {
  padding-left: 40px;
  font-size: .8em;
}
/* __________________________________________ 皆様のご感想 #voice */
#voice h2 {
  font-size: 4rem;
}
#voice .page_indx {
  width: 720px;
  margin: 0 auto;
}
#voice .page_indx p, #voice .page_indx nav {
  margin: 0;
}
#voice .page_indx li a::before {
  font-size: 1.5em;
  left: 0.5em;
}
/* -------------------------------------- 使い方 #howto  */
#voice #howto h3 {
  margin-bottom: 2em;
  padding: 120px 0 0;
  height: 0;
  background-color: transparent;
  background-image: url("../of123-img/ttl_tsukaikata.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 780px 120px;
  overflow: hidden;
}
/* -------------------------------------- お便り #otayori  */
#voice #otayori h2 {
  width: 780px;
  height: 0;
  margin: 0 auto 1em;
  padding: 113px 0 0;
  background-image: url("../of123-img/p_kansouj_01.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 781px 113px;
  border: none;
  overflow: hidden;
}
#voice #otayori h2::before {
  display: none;
}
#voice #otayori .kansou_hagaki dt::before {
  width: 1em;
  font-size: 1.6em;
  top: -10px;
}
:lang(x)+:-webkit-full-screen-document, #voice #otayori .kansou_hagaki dt::before {
  top: -10px;
}
#voice #otayori .kansou_hagaki {
  margin: 1em auto;
  width: 760px;
}
#voice #otayori .kansou_hagaki img {
  margin-top: -1em;
  width: 330px;
}
#voice .lightbox figure {
  width: 760px;
  text-align: center;
  top: calc(50% - 40vh);
}
/* -------------------------------------- ご感想 #hiketa  */
#voice #hiketa h2 {
  font-size: 3.4rem;
  /*color: #6A0000;
  margin-bottom: 2em;
  border-top: 6px double #6A0000;
  border-bottom: 6px double #6A0000;*/
}
#voice #hiketa .voice_box {
  padding: 0.5em 1em;
  margin: 1em auto;
  /*font-size: .9em;
  border: 2px solid #FF3700;
  position: relative;*/
}
#voice #hiketa .voice_box p:first-of-type {
  width: 120px;
  margin-right: 1em;
  /*font-size: .8em;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  float: left;*/
}
#voice #hiketa .voice_box p:first-of-type img {
  width: 100%;
}
#voice #hiketa .voice_box::after {
  right: 1em;
}
/*#voice #hiketa .voice_box p:nth-last-child(2) {
  padding-right: 0;
}
#voice #hiketa .voice_box p:last-child {
  line-height: 1.2;
  left: 1em;
  top: 1em;
}*/
#voice .ord {
  padding: 455px 0 0;
  background-position: top 2em center;
  background-size: 720px 435px;
}
#voice .ord a {
  margin: 1em auto 2em;
  width: 650px;
}
}
