@charset "utf-8";
/* CSS Document */
/* スマホファースト */
/*___________ 基本設定 ___________ */
body {
  margin: 0;
  font-size: 1rem;
  position: relative;
}
strong {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 900;
}
ol, ul {
  padding: 0;
  list-style-type: none;
}
p, li {
  font-size: 4.5vw;
}
img {
  width: 100%;
  height: auto;
}
picture {
  display: block;
}
.pc_view,
.is-pc {
  display: none;
}
span.pc_view,
span.is-pc {
  display: none;
}
.smp_view,
.is-sp {
  display: block;
}
span.smp_view, 
span.is-sp {
  display: inline;
}
.pc_block {
  display: inline;
}
.smp_block {
  display: block;
}
.txt_block {
  display: block;
}
/* ____ リンクテキスト ____ */
a {
  color: #0066CC;
  text-decoration: underline;
}
a:visited {
  color: #0066CC;
  text-decoration: underline;
}
a:hover, a:active, /* for IE (Keyboard) */ a:focus { /* for Netscape (Keyboard) */
  color: #CC0000;
  text-decoration: none;
  transition: 0.5s;
  opacity: 0.8;
}
a:hover img {
  opacity: 0.8;
}
/* ____ フロート設定 ____ */
.flo-l {
  float: left;
  margin-right: 3vw;
}
.flo-r {
  float: right;
  margin-left: 3vw;
}
/* ____ フロートボックス解除用 ____ */
.clear {
  clear: both;
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
/* ____ テキストカラー ____ */
.red {
  color: #CC0000;
}
.blue {
  color: #0066CC;
}
.grn {
  color: #008000;
}
.ora {
  color: #d14400;
}
.gry {
  color: #999999;
}
.wht {
  color: #FFFFFF;
}
.bg-yell {
  background-color: #FFFFF4;
  border: 1px solid #CCCC00;
  margin: 10px;
  padding: 10px;
}
.bg-yell4 {
  background-color: #ffefbd;
  margin: auto;
  padding: 0;
  text-align: center;
}
.bg-yell4 p {
  margin-bottom: 0;
}
.bg-orange3 {
  margin: 2vw;
  padding: 2.5vw 1vw;
  border: 2px solid #CC6600;
  overflow: hidden;
}
.auto_br {
  word-break: keep-all;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
/* ____ テキスト設定 ____ */
.txt_sm {
  font-size: 80%;
}
em {
  font-style: normal;
  font-weight: bold;
  font-size: 1.4em;
}
.b {
  font-weight: bold;
}
.s {
  text-decoration: line-through;
}
.u {
  text-decoration: underline;
}
.f11 {
  font-size: 11px;
  line-height: 130%;
}
.f12 {
  font-size: 12px;
  line-height: 140%;
}
.f13 {
  font-size: 13px;
  line-height: 18px;
}
.f14 {
  font-size: 14px;
  line-height: 140%;
}
.f16 {
  font-size: 16px;
  line-height: 140%;
}
.f18 {
  font-size: 18px;
  line-height: 140%;
}
.f24 {
  font-size: 24px;
  line-height: 140%;
}
/* 文字揃え */
.txt_r {
  text-align: right;
}
.txt_l {
  text-align: left;
}
.txt_c, .center {
  text-align: center;
}
/* ____ 余白設定 ____ */
.ma20 {
  margin: 20px 0;
}
.mt10 {
  margin-top: 10px;
}
.mt20 {
  margin-top: 20px;
}
.mt40 {
  margin-top: 40px;
}
.mt80 {
  margin-top: 80px;
}
.ml20 {
  margin-left: 20px;
}
.mb0 {
  margin-bottom: 0;
}
.mb1em {
  margin-bottom: 1em;
}
.mb2em {
  margin-bottom: 2em;
}
.mtb2em {
  margin: 2em 0;
}
.pd3 {
  padding: 3vw;
}
/* ____ ボックス設定 ____ */
/* フレキシブルボックス */
.flexbox {
  display: block;
}
/* 大枠ボックス */
main.wrapper {
  margin: 0 auto;
  width: 100%;
  overflow: hidden;
  background-color: #FFFFFF;
  z-index: 0;
}
section {
  padding: 4vw 0;
  overflow: hidden;
}
.wrapper {
  width: 96vw;
  margin: 0 auto;
  position: relative;
}
.inner {
  padding: 0 0.5em;
}
.inner.wrapper {
  width: 96vw;
  padding: 0;
}
.notice_box {
  width: 92vw;
  margin: 1em auto 2em auto;
}
/* ボックス内共通設定 */
h1 {
  margin: 0;
}
h2 {
  margin-bottom: 1em;
  font-size: 6vw;
  line-height: 1.2;
  color: #650000;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
  overflow: hidden;
}
h3 {
  margin-bottom: 1em;
  font-size: 1.2em;
  color: #380000;
}
h4 {
  margin-bottom: 0.5em;
  color: #32210c;
  font-size: 1.2em;
}
section p {
  margin-bottom: 1em;
}
.v_hdn {
  visibility: hidden;
}
/*lightbox 拡大画像開始----------------------------------------------*/
.lightbox {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all .5s;
}
.lightbox picture {
  position: relative;
}
.lightbox:target {
  visibility: visible;
  opacity: 1;
}
.lightbox figure, .lightbox div.info_box {
  position: relative;
  width: 96%;
  max-width: 900px;
  z-index: 110;
}
.lightbox figure img {
  position: relative;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
  z-index: 900;
}
.lightbox figcaption {
  position: relative;
  padding: 0.6rem 2.4rem 0.6rem 0.6rem;
  color: #fff;
  z-index: 101;
}
.lightbox .close {
  display: block;
  position: absolute;
  right: 0;
  top: -3rem;
  text-decoration: none;
  z-index: 100;
}
.lightbox .close::after {
  content: "\00d7";
  position: relative;
  width: 2rem;
  height: 2rem;
  font-size: 1.5rem;
  padding: 0 0 0.15rem;
  color: #fff;
  cursor: pointer;
  background-color: rgba(0, 0, 0, .5);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.lightbox .close::before {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  position: fixed;
  background-color: rgba(0, 0, 0, .8);
  cursor: default;
}
.lightbox .close:hover {
  opacity: 1;
}
a.no-link.sp {
  pointer-events: none;
}
/*lightbox 拡大画像開始----------------------------------------------*/
.lightbox {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all .5s;
}
.lightbox picture {
  position: relative;
}
.lightbox:target {
  visibility: visible;
  opacity: 1;
}
.lightbox figure, .lightbox div.info_box {
  position: relative;
  width: 96%;
  max-width: 900px;
  z-index: 110;
}
.lightbox figure img {
  position: relative;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  margin: auto;
  z-index: 900;
}
.lightbox figcaption {
  position: relative;
  padding: 0.6rem 2.4rem 0.6rem 0.6rem;
  color: #fff;
  z-index: 101;
}
.lightbox .close {
  display: block;
  position: absolute;
  right: 0;
  top: -3rem;
  text-decoration: none;
  z-index: 100;
}
.lightbox .close::after {
  content: "\00d7";
  position: relative;
  width: 2rem;
  height: 2rem;
  font-size: 1.5rem;
  padding: 0 0 0.15rem;
  color: #fff;
  cursor: pointer;
  background-color: rgba(0, 0, 0, .5);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.lightbox .close::before {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  position: fixed;
  background-color: rgba(0, 0, 0, .8);
  cursor: default;
}
.lightbox .close:hover {
  opacity: 1;
}
a.no-link.sp {
  pointer-events: none;
}
/* -------------------------------------- ヘッダー header  */
header .wrapper {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 18vw;
  padding: 0.2em 0.5em;
  background-color: #FFFFFF;
  border-bottom: 3px solid #CCCCCC;
  position: fixed;
  top: 0;
  z-index: 100;
}
header .wrapper:has(.logo) {
  align-items: flex-end;
}
/* -------------------------------------- 追従リンク .fix_btn */
.fix_btn {
  width: 100px;
  position: fixed;
  right: 0;
  bottom: 10vw;
  z-index: 99;
}
.fix_btn p {
  margin: 0;
}
.logo {
  width: 60%;
  max-width: 250px;
  margin-bottom: 0;
}
/*.tel img {
  width: 180px;
}
.bg {
  background-color: #888888;
  color: #FFFFFF;
  font-size: 0.7em;
  padding: 0.1em;
  text-align: center;
  margin-bottom: 0.2em;
}*/
.sp-logo {
  width: 60%;
  height: auto;
  margin: 0;
  padding-top: .5em;
}
/* ボタン */
#ord_open {
  position: fixed;
  top: 10px;
  left: 10px;
  display: flex;
  width: 23vw;
  height: 13vw;
  justify-content: center;
  align-items: center;
  background-color: #FFFFFF;
  border: 1px solid #888888;
  border-radius: 3px;
}
#ord_open::before {
  content: "メニュー";
  display: block;
  width: 75px;
  color: #888888;
  position: absolute;
  font-size: 3vw;
  bottom: 3px;
}
.sen, .sen::before, .sen::after {
  content: "";
  display: block;
  width: 55px;
  height: 3px;
  border-radius: 3px;
  background-color: #888888;
  position: absolute;
}
.sen {
  top: 14px;
}
.sen::before {
  top: 9px;
}
.sen::after {
  bottom: 9px;
}
/* メニュー */
.nav-tel {
  margin: 1em auto;
}
.nav-bnr {
  margin-bottom: 4em;
}
.pc_menu {
  display: none;
}
/* ------------------------------------- スライドメニュー #slide_menu */
#slide_menu a {
  display: block;
  height: 100%;
  padding: 2vh 0;
  color: #2E1800;
  text-decoration: none;
  white-space: nowrap;
}
#slide_menu a:hover, #slide_menu a:active, #slide_menu a:focus {
  background-color: #FFFFFF;
}
#slide_menu button, #slide_menu button:focus {
  width: 100%;
  padding: 2vh 0;
  color: #2E1800;
  font-weight: normal;
  border: none;
  background-color: transparent;
  outline: none;
}
#slide_menu button:hover, #slide_menu button:active {
  opacity: .8;
  background-color: #FFECC0;
}
/* メニュー */
#slide_menu nav {
  width: 100%;
  height: 0;
  background-color: #FFFFFF;
  text-align: center;
  overflow-x: hidden;
  overflow-y: scroll;
  position: fixed;
  top: 18vw;
  left: 0;
  transition: .5s;
  z-index: 999;
}
#slide_menu nav li {
  border-bottom: 2px dotted #FFECC0;
}
#slide_menu nav .nav-tel img {
  max-width: 90vw;
}
#slide_menu nav .nav-tel {
  margin-bottom: 1em;
}
/* メニューを開いた時 */
#slide_menu nav.open-menu {
  height: 70%;
}
#fadeLayer {
  position: fixed;
  top: 18vw;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
  visibility: hidden;
  z-index: 10;
}
#fadeLayer p {
  width: 100%;
  position: fixed;
  bottom: 8%;
  color: #FFFFFF;
  text-shadow: none;
  text-align: center;
}
/* -------------------------------------- ページ内リンク位置調整（固定ヘッダー対策）  */
#ord, #miryoku, #syoukai, #qa {
  padding: 22vw 0 4vw;
  margin-top: -20vw;
}
/* -------------------------------------- メインビジュアル .main_v  */
.main_v.wrapper {
  width: 100%;
  padding-top: 18vw;
}
.subp main {
  padding-top: 18vw;
}
/* -------------------------------------- 特典バナー用 .timer-div  */
.timer-div {
  margin: 1em auto;
  text-align: center;
}
.timer-div img {
  width: 96vw;
}
/* -------------------------------------- オンライン視聴について .flow-online  */
.flow {
  width: 96vw;
  margin: 0 2vw 1em;
  border: 1px solid #0170B9;
}
.flow .toggle + .title {
  width: 96vw;
  margin: -1px 0 0;
  padding: .5em .5em .5em 0;
  background-color: #0170B9;
  background-image: url("/img/online-info/ic_online.svg");
  background-repeat: no-repeat;
  background-size: 56px 48px;
  background-position: left 2vw center;
  text-shadow: 0 2px 2px rgba(0, 51, 67, 0.70);
  position: relative;
  left: calc(50% - 48vw);
}
.flow .toggle + .title::after, .flow .toggle + .title::before {
  box-shadow: 0 2px 2px rgba(0, 51, 67, 0.70);
}
.flow .toggle + .title::before {
  transform: rotate(90deg);
  box-shadow: 2px 0 2px rgba(0, 51, 67, 0.70);
}
.tglbox.flow-online {
  padding: 0 4vw;
}
.tglbox.flow-online h3 {
  margin-top: .5em;
  padding-left: .5em;
  color: #0170B9;
  font-weight: bold;
  text-align: left;
  border-top: none;
  border-bottom: none;
  border-left: 5px solid #0170B9;
}
.tglbox.flow-online p {
  padding: 0;
  font-size: 1.1em;
  line-height: 1.4;
}
.tglbox.flow-online .mark_ylw {
  background: linear-gradient(transparent 60%, #ffe500 60%);
}
.tglbox.flow-online .w70 {
  width: 70%;
}
.tglbox.flow-online .txt_c {
  margin: .5em 0;
}
.tglbox.flow-online .limit-info {
  display: block;
  margin: 0 0 1em;
  padding: 0;
  font-size: .8em;
}
.tglbox.flow-online .yasu {
  margin-bottom: .5em;
  position: relative;
}
.tglbox.flow-online .yasu::before {
  content: "";
  width: 100px;
  height: 130px;
  background-image: url(../img/pf_tokucho-img.jpg);
  background-size: auto 130px;
  background-position: left bottom;
  background-repeat: no-repeat;
  position: absolute;
  right: 0;
  top: 0;
}
/* -------------------------------------- アコーディオンコンテンツ */
.title {
  display: block;
  margin: 0 2vw;
  padding: 1em .5em 1em 0;
  color: #FFFFFF;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 2px 2px #271100;
  background-color: #602B00;
  position: relative;
}
.toggle {
  display: none;
}
.title, .tglbox {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
}
.title::after, .title::before {
  content: "";
  position: absolute;
  right: 6vw;
  top: calc(50% - 1rem);
  width: 2px;
  height: 2rem;
  background-color: #FFFFFF;
  box-shadow: 0 2px 2px #271100;
  transition: all 0.3s;
}
.title::before {
  transform: rotate(90deg);
  box-shadow: 2px 0 2px #271100;
}
.tglbox {
  max-height: 0;
  overflow: hidden;
  transition: all .5s;
}
.tglbox p {
  margin: 0;
  padding: .5em 0 0;
  font-size: 0.9em;
  line-height: 1.5;
}
.tglbox p:last-child {
  padding: .5em 0;
}
.toggle:checked + .title + .tglbox {
  max-height: 2000px;
  transition: all 1.5s;
}
.toggle:checked + .title::after {
  transform: rotate(90deg) !important;
}
/* -------------------------------------- レッスン動画 .movie */
.movie {
  text-align: center;
}
.movie h2 {
  height: 0;
  padding-top: 23.6vw;
  background-image: url("../img/sax_movie-ttl.jpg");
}
.yt_bg {
  background-color: #000000;
}
.yt_movie {
  background-color: #000000;
  position: relative;
  margin: 0 auto;
}
.yt_movie a {
  display: block;
  position: relative;
}
.yt_movie a::after {
  content: "";
  display: block;
  margin: -30px 0 0 -50px;
  width: 100px;
  height: 60px;
  border-radius: 10px;
  background-image: url("/img/parts/play3kaku.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50px 30px;
  background-color: rgba(0, 0, 0, 0.80);
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 999;
}
.yt_movie a:hover::after {
  background-color: rgba(227, 14, 0, 1.00);
}
.yt_bg_txt {
  font-size: 0.8em;
  font-weight: bold;
  margin: 0.5em 0 1em;
}
.yt_play {
  position: absolute;
  background-image: url("../img/youtube_movie.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  overflow: hidden;
}
.yt_play:hover {
  cursor: pointer;
}
.yt_play::before {
  content: "";
  display: block;
  width: 100px;
  height: 60px;
  border-radius: 10px;
  background-image: url("/img/parts/play3kaku.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50px 30px;
  background-color: rgba(0, 0, 0, 0.80);
  position: absolute;
  left: calc(50% - 50px);
  top: calc(50% - 30px);
  z-index: 100;
}
.yt_play:hover::before {
  cursor: pointer;
  background-color: rgba(227, 14, 0, 1.00);
}
.yt_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* -------------------------------------- 講師紹介 .prof */
.prof .prof_ttl {
  background-image: url("../img/sax_prof-ttl.jpg");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 29vw 29vw;
}
.prof .prof_ttl h2 {
  margin: 0 0 5vw 30vw;
  padding: 0 0 5vw;
  border-bottom: 1px solid #000000;
  font-size: 1.6em;
}
.prof .prof_box {
  margin-bottom: 1em;
  padding: 0.5em 2vw;
  background-color: #F0F0F0;
  position: relative;
}
.prof h3 {
  margin-bottom: 0.5em;
  padding-left: 0.5em;
  border-left: 5px solid #32210C;
}
.prof_box {
  margin-bottom: 1em;
  padding: 0.5em 2vw;
  background-color: #F0F0F0;
  position: relative;
}
.prof .prof_box {
  margin-bottom: 1em;
  padding: 0.5em 2vw;
  background-color: #F0F0F0;
  position: relative;
}
.prof h3 {
  margin-bottom: 0.5em;
  padding-left: 0.5em;
  border-left: 5px solid #32210C;
}
.prof_box p {
  font-size: 0.9em;
}
.prof_box_txt {
  margin-right: 28vw;
}
.prof_box .prof_img {
  width: 25vw;
  position: absolute;
  right: 1vw;
  top: 1vw;
}
.prof_box table {
  display: block;
  margin-bottom: 1em;
  padding: 0.5em 2vw;
  font-size: 0.9em;
  background-color: #FFFFFF;
}
.prof_box tr {
  border-bottom: 1px dotted #CCCCCC;
}
.prof_box th, .prof_box td {
  display: block;
}
.prof_box th {
  padding-top: 0.5em;
  color: #380000;
}
.prof_box td {
  padding-bottom: 0.5em;
}
.prof_box tr:last-of-type {
  border-bottom: none;
}
.prof_box tr:last-of-type td {
  margin-bottom: 0;
}
.disco li:first-child {
  margin-bottom: 0.5em;
}
.disco .gray_box {
  padding: 0.5em 2vw;
  background-color: #F0F0F0;
}
.disco summary {
  width: 80%;
  background-color: #7d7d7d;
  color: #FFFFFF;
  text-align: center;
  padding: 0.3em;
  margin: 0 auto 1em auto;
}
.disco summary::after {
  unicode-bidi: isolate;
  font-variant-numeric: tabular-nums;
  text-transform: none;
  text-indent: 0px !important;
  text-align: start !important;
  text-align-last: start !important;
}
.idea_box_img {
  width: 80vw;
  margin: 0 auto 1em;
}
/* -------------------------------------- 推薦者の声 .recom */
.recom.inner.wrapper {
  width: 100%;
  padding: 1em 2vw 0.5em;
  margin-bottom: 2em;
  background-color: #380000;
}
.recom h2 {
  margin-bottom: 0.6em;
  font-size: 2.2em;
  color: #EEDE9D;
  text-align: center;
}
.recom_box {
  padding: 0.5em 2vw;
  background-color: #FFFFFF;
}
.recom_box .recom_ttl {
  padding-left: 26vw;
  color: #650000;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  position: relative;
}
.recom_box .recom_ttl p:first-child {
  margin-bottom: 0.5em;
  padding: 0 0 0.5em 1em;
  font-weight: 900;
  border-bottom: 1px solid #000000;
  text-indent: -1em;
}
.recom_box .recom_ttl p:nth-child(2) {
  height: 0;
  padding-top: 12vw;
  background-image: url("../img/sax_rec-name.jpg");
  background-repeat: no-repeat;
  background-size: contain;
  overflow: hidden;
}
.recom_box .recom_ttl p:last-child {
  width: 25vw;
  position: absolute;
  left: 0;
  top: 0.5em;
}
.recom_box .recom_prof {
  padding: 0.5em 2vw;
  font-size: 0.8em;
  background-color: #F0F0F0;
}
/* -------------------------------------- サックス教材について .about */
.about h2 {
  margin-top: 2em;
  margin-bottom: 0;
  padding: 0.5em 2vw;
  color: #EEDE9D;
  text-align: center;
  background-color: #460000;
}
.about h3 {
  height: 0;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  padding-top: 30vw;
}
.about h3:first-of-type {
  background-image: url("../img/sax_gimon_ttl01_sp.gif");
}
.about h3:nth-of-type(2) {
  background-image: url("../img/sax_gimon_ttl02_sp.gif");
}
.about h3:last-of-type {
  background-image: url("../img/sax_gimon_ttl03_sp.gif");
}
.about .about_img {
  margin: 0 auto 1em;
  padding: 0 2vw;
  width: 96vw;
  border: 2px solid #460000;
  border-radius: 1em;
}
.about .about_img h4 {
  margin: 0.5em auto;
  width: 80%;
  line-height: 2em;
  color: #EEDE9D;
  text-align: center;
  background-color: #460000;
  border-radius: 1em;
}
.about .about_img .flexbox {
  display: flex;
  justify-content: space-around;
}
.about .gakufu_ttl {
  height: 0;
  margin: 0 0 1em 0;
  padding-top: 40vw;
  background-image: url("../img/sax_about_ttl.jpg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100%;
  overflow: hidden;
}
.about .flexbox {
  display: flex;
  justify-content: center;
  margin-top: 2em;
}
.about .flexbox .flexitem img {
  width: 120px;
}
.saranitxt {
  color: #d15900;
  font-weight: bold;
  font-size: 1.4em;
  margin-bottom: 0;
  padding-left: 1em;
}
.gamentxt {
  font-weight: bold;
  text-align: center;
  color: #704224;
  margin-bottom: 0.5em;
  padding: 0.5em;
}
.answer {
  width: 50%;
  margin: 0 auto 1em 1em;
}
.yazirusi {
  text-align: center;
  width: 80px;
  margin: 0 auto;
}
/* -------------------------------------- 楽しく続く理由 .reason */
.reason picture:first-of-type {
  margin-bottom: 3em;
}
/* -------------------------------------- 各弾の中身は .nakami */
.nakami h2 {
  height: 0;
  overflow: hidden;
  background-image: url("../img/sax_smp_reason_ttl01.jpg");
  background-size: 100%;
  padding-top: 37vw;
  margin-bottom: 0;
  background-color: #FFFFFF;
}
.nakami h3 {
  margin-bottom: 0;
  padding: 0.5em 2vw;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 7vw;
  color: #FFFFFF;
  text-align: center;
  background-color: #460000;
}
.nakami .lessonbox h3 {
  background-color: inherit;
  color: #411400;
  border-bottom: 1px solid #411400;
  text-align: left;
  padding: 0.2em;
  margin-bottom: 0.2em;
  font-size: 1.1em;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN";
}
.nakami .lessonbox ul {
  padding-left: 2em;
  list-style-type: disc;
}
.lessonbox .flexbox:last-child p {
  text-align: center;
}
.lessonbox .flexbox:last-child img {
  width: auto;
}
.nakami h3 .smp_block {
  font-family: inherit;
  font-size: 3.4vw;
}
.naiyou_txt {
  padding: 0.5em 2vw;
  position: relative;
}
.naiyou_txt_first {
  font-weight: bold;
  color: #460000;
  padding-right: 35vw;
}
.naiyou_img_last {
  width: 35vw;
  position: absolute;
  top: 0.5em;
  right: 2vw;
}
.set_list {
  padding: 0 2vw;
}
.set_list h4 {
  display: block;
  margin-bottom: 2vw;
  padding: 0 2vw;
  font-size: 1em;
  font-weight: normal;
  color: #EEDE9D;
  background-color: #460000;
}
.set_list ul {
  margin-bottom: 0;
  padding-left: 2em;
  list-style-type: disc;
}
.m_list {
  margin-bottom: 1em;
}
.kansyuu {
  font-size: 0.9em;
  text-align: right;
}
.naiyou_ttl {
  display: none;
}
.nakami_box {
  padding: 0 2vw;
}
.nakami_box h3 {
  margin: 0;
  padding: 0.2em 0.5em;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  font-size: 6vw;
  color: #460000;
  text-align: left;
  background-color: transparent;
  border-left: 10px solid #8F0000;
  font-weight: 900;
}
.nakami_box h3 .smp_block {
  font-size: 1em;
}
.nakami_box h4 {
  padding-left: 0.5em;
  font-size: 1.1em;
  border-bottom: 2px solid #8F0000;
}
.nakami_box h4 span:first-of-type {
  display: block;
  color: #8F0000;
}
.second .nakami_box h3 {
  border-left: 10px solid #0C206E;
}
.second .nakami_box h4 {
  border-bottom: 2px solid #0C206E;
}
.second .nakami_box h4 span:first-of-type {
  color: #0C206E;
}
.third .nakami_box h3 {
  border-left: 10px solid #655706;
}
.third .nakami_box h4 {
  border-bottom: 2px solid #655706;
}
.third .nakami_box h4 span:first-of-type {
  color: #655706;
}
/* -------------------------------------- 分かりやすい工夫 .idea */
.idea h2 {
  font-size: 5.5vw;
  text-align: center;
}
.idea .idea_box {
  padding: 0.5em;
  margin-bottom: 0.5em;
  background-image: url("../img/idea-bg_01.png"), url("../img/idea-bg_02.png"), url("../img/idea-bg_03.png");
  background-repeat: no-repeat, no-repeat, repeat-y;
  background-position: left top, left bottom, left top;
  background-size: contain;
}
.idea .idea_box h3 {
  margin: 0.5em 0 0.5em 0;
  padding-top: 9vw;
  width: 100%;
  height: 0;
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100%;
  overflow: hidden;
}
.idea .idea_box:nth-of-type(1) h3 {
  padding-top: 8vw;
  background-image: url("../img/sax_idea-01_ttl.jpg");
}
.idea .idea_box:nth-of-type(2) h3 {
  padding-top: 12vw;
  background-image: url("../img/sax_idea-02_ttl.jpg");
}
.idea .idea_box:nth-of-type(3) h3 {
  padding-top: 6.8vw;
  background-image: url("../img/sax_idea-03_ttl.jpg");
}
.idea .idea_box:nth-of-type(4) h3 {
  padding-top: 6vw;
  background-image: url("../img/sax_idea-04_ttl.jpg");
}
.idea .idea_box > .flexitem:first-child p {
  padding: 0 0 0 1em;
}
.idea .idea_box:nth-of-type(3) {
  position: relative;
}
.idea .idea_box:nth-of-type(3) .flexitem:first-of-type p img {
  width: 60vw;
}
.idea .idea_box:nth-of-type(3) .flexitem:last-of-type {
  width: 25vw;
  position: absolute;
  bottom: -1em;
  right: 4vw;
}
/* ------------------------------------- DVD無しでも動画が見られます .watch */
.watch {
  padding-top: calc(70px + 2em);
}
.watch::before {
  content: "";
  display: block;
  width: 140px;
  height: 100px;
  background-image: url("../img/p_doyo_sumaho_img.jpg");
  background-repeat: no-repeat;
  background-size: 140px;
  position: absolute;
  left: calc(50% - 70px);
  top: 0;
  opacity: 1;
}
.watch p:first-of-type {
  text-align: center;
}
.watch-type {
  overflow: hidden;
  padding: 5vw 0;
  margin-bottom: 0;
}
.watch-type li {
  width: 60vw;
  margin-top: -70px;
  padding: 100px 0 0;
  text-align: center;
  position: relative;
}
.watch-type li:first-child {
  margin-top: 0;
}
.watch-type li:nth-child(odd) {
  float: left;
}
.watch-type li:nth-child(even) {
  float: right;
}
.watch-type li:first-child, .watch-type li:nth-child(2) {
  line-height: 1.4;
}
.watch-type li::before {
  content: "";
  display: block;
  width: 200px;
  height: 200px;
  background-image: url("../img/bg_maru.jpg");
  background-repeat: no-repeat;
  background-size: auto 200px;
  background-position: left 0 top;
  position: absolute;
  left: calc(50% - 100px);
  top: -20px;
  mix-blend-mode: multiply;
}
.watch-type li::after {
  content: "";
  display: block;
  width: 150px;
  height: 100px;
  background-image: url("../img/sax_lesson_img_box.png");
  background-repeat: no-repeat;
  background-size: 550px auto;
  background-position: left top;
  position: absolute;
  left: calc(50% - 75px);
  top: 0;
}
.watch-type li:nth-child(2)::after {
  background-position: left -150px top;
}
.watch-type li:nth-child(3)::after {
  background-position: left -300px top;
}
.watch-type li:nth-child(4)::after {
  background-position: left -430px top;
}
.watch-type li p {
  position: relative;
  z-index: 10;
}
/* -------------------------------------- 金銭比較 .hikaku */
.hikaku h2 {
  text-align: center;
  color: #EC3B04;
}
.hikaku h2::before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 50vw;
  height: 11vw;
  background-image: url("../img/sax_hikaku-next.jpg");
  background-repeat: no-repeat;
  background-size: contain;
}
.hikaku picture {
  margin-bottom: 1em;
}
.hikaku .b {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #460000;
}
.hikaku strong {
  color: #EC3B04;
}
/* -------------------------------------- 教材内容・価格 .item */
.item {
  padding-bottom: 0;
  color: #4b1500;
}
.item > p:first-of-type {
  margin-bottom: 0.5em;
  line-height: 2;
  text-align: center;
  color: #FFFFFF;
  background-color: #EC3B04;
}
.item h2 {
  color: #000000;
  font-size: 5vw;
  text-align: center;
}
.item h2 .smp_block {
  font-size: 1.2em;
}
.item_sub-ttl {
  padding: 0.5em 0;
  margin-bottom: 0.5em;
  text-align: center;
  color: #FFFFFF;
  background-color: #522303;
}
.item_sub-ttl > p {
  margin-bottom: 0.2em;
  font-size: 1.4em;
}
.item_sub-ttl > p:last-of-type {
  margin-bottom: 0;
  font-size: 1em;
}
.item ul::before {
  display: block;
  padding: 0.2em 2vw;
  color: #FFFFFF;
}
ul.item_dai1::before {
  content: "第1弾";
  background-color: #8F0000;
}
ul.item_dai2::before {
  content: "第2弾";
  background-color: #0C206E;
}
ul.item_dai3::before {
  content: "第3弾";
  background-color: #655706;
}
.item ul li {
  padding-left: 2vw;
}
.kaisetsu {
  margin: 0 2vw 1em;
  background-color: #FBFFB9;
  border: 2px solid #EC3B04;
  position: relative;
}
.kaisetsu h3 {
  margin-bottom: 0.2em;
  padding: 0.2em 0 0.2em 26vw;
  color: #FBFFB9;
  font-weight: normal;
  background-color: #EC3B04;
}
.kaisetsu h3 .smp_block {
  color: #FFFFFF;
}
.kaisetsu_txt {
  padding-left: 26vw;
}
.kaisetsu_txt strong {
  color: #EC3B04;
}
.kaisetsunaiyou_txt {
  padding: 0 2vw;
  margin-bottom: 0.2em;
}
.kaisetsu_img {
  width: 22vw;
  position: absolute;
  left: 2vw;
  top: 1em;
}
/* -------------------------------------- オンラインまたはDVD.sentaku */
.sentaku {
  width: 96vw;
  margin: 0 auto;
  text-align: center;
}
.sentaku .flexbox img {
  width: 35vw;
}
.sentaku p:first-of-type {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: bold;
}
.sentaku .flexbox {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
}
.sentaku .maru {
  background-color: #FFFFFF;
  border: solid 5px #01b4ed;
  color: #01b4ed;
  border-radius: 50%;
  width: 15vw;
  height: 15vw;
  margin: 1em auto;
}
.sentaku .maru p {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 7vw;
  font-weight: bold;
  margin: 0;
  height: 12vw;
}
/* -------------------------------------- 購入ボタン .ord_btn */
.ord_btn {
  text-align: center;
  padding-bottom: 0;
}
.ord_btn p {
  margin: 0;
}
.ord_btn p.btntop img {
  width: 60vw;
  margin-bottom: 0.5em;
}
.ord_btn > p:nth-of-type(2) {
  margin-bottom: 1em;
}
/* -------------------------------------- e-shopsカート .ord_eshops */
.ord_eshops, .ord_eshops * {
  margin: 0;
  padding: 0;
  text-align: center;
}
.ord_eshops .ord-group {
  margin-bottom: 1em;
  padding: 1em 0;
  color: #0A3500;
}
.btn_only .ord_eshops .ord-group {
  margin-bottom: 0;
}
.ord_eshops label.type-select {
  position: relative;
}
.ord_eshops label.type-select::before, .ord_eshops label.type-select::after {
  position: absolute;
  content: "";
  pointer-events: none;
}
.ord_eshops label.type-select::before {
  content: "";
  display: inline-block;
  width: 2.6em;
  height: 3em;
  background-color: #008539;
  border-radius: 0 1.5em 1.5em 0;
  right: 0;
}
.ord_eshops label.type-select::after {
  content: '';
  width: .8em;
  height: .8em;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-80%) rotate(45deg);
}
.ord_eshops label.type-select select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  min-width: 230px;
  height: 3em;
  padding: 0 3em 0 1em;
  margin-bottom: .5em;
  text-align: center;
  line-height: calc(3em - 4px);
  background-color: #FFFFFF;
  border: 2px solid #008539;
  border-radius: 1.5em;
  color: #333333;
  font-size: 1em;
  cursor: pointer;
}
.ord_eshops label.type-select select:focus {
  outline: 1px solid #008539;
}
.ord_eshops label.type-select select option {
  font-size: 1.2em;
}
/* 購入ボタン */
input[type="submit"] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.ord_eshops .buybtn {
  display: block;
  width: 96vw;
  height: 0;
  margin: 0 auto;
  padding-top: 28vw;
  background-image: url("../img/sax_smp_buy-btn.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100vw auto;
}
#sax_1dan .buybtn {
  background-image: url("../img/sax_smp_buy-1dan-btn.jpg");
}
#sax_23set .buybtn {
  padding-top: 16vw;
  background-image: url("../img/sax23rd/smp/topbtn_smp.png");
}
.pay-type {
  margin: 1em 0 0;
  text-align: center;
  font-size: .8em;
  line-height: 1.4;
}
.btn_only .pay-type, 
.btn_only .yuudou {
  display: none;
  content-visibility: hidden;
}
/* -------------------------------------- 誘導ボタンなど .yuudou */
section.yuudou {
  padding: 2em 0;
  text-align: center;
}
section.yuudou p {
  margin-bottom: 0;
}
section.yuudou .bn_1dan_txt {
  color: #bf2a00;
  font-size: 3.8vw;
  padding: 0 0.5em;
  font-weight: bold;
  text-align: left
}
/* -------------------------------------- 特典なし（スマホ） */
.bg-orange2 {
	margin: 5px;
	padding: 3px;
	border: 2px solid #C60002;
	border-radius: 10px;
}
.bg-red-k2 {
	background-color: #CA0000;
	color: #FFFFFF;
	border-radius: 10px;
	line-height: 12px;
	margin-top: 2px;
	margin-right: 2px;
	margin-bottom: 2px;
	margin-left: 0px;
	padding-top: 2px;
	padding-right: 5px;
	padding-bottom: 2px;
	padding-left: 5px;
}
.red2 {
	color: #CF0006;
}
.ttl {
	font-size: 1.0em;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #3A0000;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 5px;
	padding-left: 5px;
	-webkit-border-radius: 3px;
	margin-top: 8px;
	margin-right: 5px;
	margin-bottom: 5px;
	margin-left: 5px;
	line-height: 1.6em;
}
.bg-gray2 {
	background-color: #ECECEA;
	padding: 3px;
	margin-top: 2px;
	margin-right: 0px;
	margin-bottom: 2px;
	margin-left: 0px;
	font-size: 12px;
}
.engi {
	color: #FFFFFF;
	background-color: #CC0000;
	margin: 5px;
	padding: 2px;
	text-align: center;
}
.yell {
	font-weight: bold;
	color: #660;
}
.bg-orange2 p {
    margin: 0.3em 0.5em;
}
.bg-gray2 p {
	font-size: 15px;
}
/* -------------------------------------- お客様の声 .voice */
.voice {
  background-color: #7a4b00;
  padding: 0;
}
.voice_ttl {
  background-image: url("../img/sax_voice-top_ttl_sp.jpg");
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 29vw;
  margin-bottom: 0;
  margin-top: 0;
  position: relative;
}
.voice_ttl::after {
  content: "";
  display: block;
  width: 170px;
  height: 150px;
  background-image: url("../img/sax_voice-kyara.png");
  background-size: 70%;
  background-repeat: no-repeat;
  position: absolute;
  top: 3vw;
  right: -7vw;
}
.voice_box {
  padding: 3vw;
  margin: 0 3vw 3vw 3vw;
  background-color: #FFFFFF;
}
.kansou {
  margin: 0;
  padding: 0 0.5em 1em;
  width: 100%;
}
.kansou h2 {
  height: 0;
  margin-bottom: 0;
  padding-top: 32vw;
  background-image: url(../img/sax_smp_voice-ttl.jpg);
  background-color: #FFFFFF;
}
.kansou h3 {
  font-size: 1.1em;
  color: #EC3B04;
}
.kansou .notice_box {
  margin: 0;
  padding: 0 0.5em 1em;
  width: 100%;
  background-color: #522303;
}
.kansou_box {
  margin: 0 auto 1em;
  padding: 0.5em;
  width: 92vw;
  background-color: #FFFFFF;
  position: relative;
}
.kansou_box:last-of-type {
  margin: 0 auto;
}
.kansou_box p:last-child img {
  margin-right: 2vw;
  width: auto;
  height: auto;
}
.kansou_box p {
  font-size: 0.9em;
}
.kansou_box p:last-child {
  text-align: right;
  font-weight: bold;
  position: absolute;
  right: 2vw;
  bottom: 0.8em;
}
.kansou_box p:nth-last-child(2) {
  width: 55vw;
  margin-bottom: 2em;
}
.notice_box .kansou_box:first-of-type p:nth-last-child(2) {
  width: 100%;
}
.kansou_box::after {
  content: "※実践されたお客様個人のご感想です。";
  display: block;
  clear: both;
  padding-top: 0.2em;
  white-space: pre;
  font-size: 0.8em;
  text-align: right;
  color: #666666;
}
.kansou > p:last-of-type a {
  display: block;
  margin: 0.5em auto;
  padding: 0.5em 0;
  width: 90vw;
  color: #FFFFFF;
  font-family: "リュウミン B-KL", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  text-align: center;
  text-decoration: none;
  background-color: #EC3B04;
  border-radius: 0.5em;
  position: relative;
}
/* -------------------------------------- よくある質問 .qanda */
.qanda h2 {
  padding: 0.5em 0;
  text-align: center;
  color: #FFFFFF;
  background-color: #460000;
}
.qanda dl.notice_box {
  padding: 0;
  width: 98vw;
}
.qanda dl dt, .qanda dl dd {
  padding-left: 12vw;
  min-height: 10vw;
  background-repeat: no-repeat;
  background-position: left top;
}
.qanda dl dt {
  margin-bottom: 0.5em;
  font-size: 5vw;
  line-height: 1.2;
  color: #801240;
  background-image: url("../img/sax_qanda-q-icon.jpg");
  background-size: 10vw 10vw;
}
.qanda dl dt.line1 {
  line-height: 10vw;
}
.qanda dl dd {
  margin-bottom: 1.5em;
  padding-bottom: 1em;
  font-size: 1em;
  background-image: url("../img/sax_qanda-a-icon.jpg");
  background-size: 10vw 10vw;
  border-bottom: 3px dotted #ccc;
}
.qanda dl dd:last-child {
  margin-bottom: 0;
}
/* -------------------------------------- さいごに .message */
.message {
  padding-top: 2em;
}
.message h2 {
  height: auto;
  text-align: center;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.4em;
  line-height: 1.2;
  color: #4b1500;
}
.message_box {
  margin: 0 auto;
  padding: 0 6vw 1em;
  width: 100%;
  background-image: url("../img/message-bg_01.jpg"), url("../img/message-bg_02.jpg"), url("../img/message-bg_03.png");
  background-repeat: no-repeat, no-repeat, repeat-y;
  background-position: left top, left bottom, left top;
  background-size: contain;
  overflow: hidden;
}
.message_box .flo-l {
  margin: 0 auto 0.5em;
  width: 50%;
  float: none;
}
.message_box p:last-child {
  font-size: 1.2em;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}
/* -------------------------------------- ショップインフォ .shopinfo */
#shopinfo {
  margin: 0 auto;
  padding: 0 0 6em;
  font-size: 0.8em;
}
#shopinfo .asp_info {
  padding: 0 2vw;
  background-image: url("/img/pay/infotop.jpg");
  background-repeat: no-repeat;
  background-position: right top 3em;
  background-size: 40vw auto;
}
#shopinfo .asp_info ol li {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 0.9em;
}
#shopinfo img {
  width: auto;
  max-width: 100%;
}
#shopinfo .flexbox {
  align-items: flex-start;
  justify-content: center;
}
#shopinfo .shopinfo_l {
  width: 100%;
  padding: 0 0.5em 0;
  border-right: none;
}
#shopinfo .shopinfo_r {
  width: 100%;
  padding: 0 0.5em 0;
}
#shopinfo h2, #shopinfo h3 {
  margin-top: 0.5em;
  padding: 10px 0 0 20px;
  height: 36px;
  position: relative;
  color: #FFFFFF;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 4vw;
  font-weight: normal;
  background-image: url("/img/pay/shop_ttl_bg.gif");
  background-repeat: no-repeat;
  background-size: cover;
}
#shopinfo h3 {
  padding: 8px 0 0 20px;
}
#shopinfo h2::before, #shopinfo h3::before {
  content: "";
  display: block;
  width: 3px;
  height: 1em;
  background-color: #FFFFFF;
  position: absolute;
  top: 10px;
  left: 10px;
}
#shopinfo h4 {
  margin-top: 1em;
  font-size: 1.2em;
}
p.conveni {
  position: relative;
}
p.conveni a {
  font-size: 11px;
  letter-spacing: -1px;
  position: absolute;
  left: 145px;
  bottom: 8px;
}
#shopinfo p {
  font-size: 3.5vw;
  margin-bottom: 0.5em;
}
#shopinfo ul {
  font-size: 95%;
  letter-spacing: -1px;
  padding-left: 0;
  list-style-type: none;
}
#shopinfo ul li {
  font-size: 3.5vw;
  /*  text-indent: -2.8em;
  padding-left: 2.5em;*/
}
#shopinfo .maxw60 {
  max-width: 60%;
}
#shopinfo .maxh60 {
  max-height: 60px;
}
#shopinfo .othershop {
  padding-right: 18vw;
  position: relative;
}
#shopinfo .othershop::after {
  content: "";
  width: 16vw;
  height: 20vw;
  background-image: url("/img/parts/othershop_bg.png");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: -4vw;
}
#shopinfo .othershop h4 {
  color: #880015;
  font-size: 1.1em;
  white-space: nowrap;
  border: none;
}
#shopinfo .othershop p {
  text-align: right;
  margin-bottom: .5em;
}
#shopinfo .caution {
  background-color: #FFFFF4;
  border: 1px solid #CCCC00;
  padding: 1em;
}
#shopinfo .conv-ex {
  padding: 0.5em 2vw;
  background-color: #F0F0F0;
}
#shopinfo .conv-ex ol {
  margin-bottom: 0;
}
#shopinfo .conv-ex ol li {
  padding-left: 2.5em;
  font-size: 0.9em;
  text-indent: -3em;
}
/* -------------------------------------- フッター footer */
footer {
  color: #FFFFFF;
  background-color: #423636;
  border-top: 4px double #F5F2E9;
}
footer .wrapper {
  padding: 1em 0;
}
footer a, footer a:visited {
  color: #FFFFFF;
  text-decoration: none;
}
footer a:hover {
  color: #F5F2E9;
}
footer .flexbox {
  justify-content: center;
  margin-bottom: 2em;
}
footer nav ul li {
  padding: 0.5em 0;
  font-size: 1em;
  text-align: center;
  border-bottom: 1px dotted #AFA483;
  position: relative;
}
footer nav ul li a {
  display: block;
  padding: 0.5em 0;
}
footer nav ul li::after {
  content: "\03e";
  font-weight: bold;
  position: absolute;
  top: 1em;
  right: 1em;
}
footer .copy {
  font-size: 0.8em;
  text-align: center;
}
/* __________________________________________ ↓ここからサブページ用 */
/* -------------------------------------- ヘッダー header  */
.subp header {
  display: block;
}
.subp header p {
  margin-bottom: 0;
}
.subp header .wrapper.flexbox p:first-of-type img {
  width: 80vw;
  height: auto;
}
.subp header h1, .subp header .wrapper.flexbox p:nth-of-type(2) {
  display: none;
}
/* -------------------------------------- パンくずリスト .path  */
.path {
  padding: 0.5em 0 1em;
}
.path ul {
  justify-content: flex-start;
}
.path li {
  font-size: 3.5vw;
}
.path li::after {
  content: "＞";
  font-size: 3.5vw;
  margin: 0 0.5em;
}
.path li:last-child::after {
  content: "";
  padding-right: 0;
  margin-right: 0;
}
.subp section {
  padding-left: 0.5em;
  padding-right: 0.5em;
  font-size: 1rem;
}
.subp section h2 {
  width: 96vw;
  height: auto;
  margin: 0 auto 1em;
  padding: 0.5em 0;
  color: #FFFFFF;
  text-align: center;
  background-color: #423636;
  border-radius: 0.5em;
}
.subp section li {
  font-size: 100%;
}
.subp section .notice_box {
  margin-bottom: 2em;
  padding: 1em;
  width: 100%;
  font-size: 100%;
}
.subp section .notice_box table {
  width: 100%;
}
.subp section .notice_box tr {
  border-bottom: 1px solid #ccc;
}
.subp section .notice_box tr:last-child {
  border-bottom: none;
}
.subp section .notice_box th {
  display: block;
  width: 100%;
  padding: 0.5em 0 0;
  white-space: nowrap;
}
.subp section .notice_box td {
  display: block;
  width: 100%;
  padding: 0 0 0.5em;
}
.subp ul {
  margin-bottom: 0;
}
/* __________________________________________ プライバシーポリシー #privacy */
#privacy ol {
  list-style-type: decimal;
  padding-left: 1em;
}
#privacy .notice_box p, #privacy .notice_box li {
  font-size: 4vw;
}
#privacy h4 {
  color: #252525;
  font-size: 1em;
}
/* __________________________________________ 運営者情報 #company */
#company ol {
  list-style-type: decimal;
  padding-left: 1em;
}
#company iframe {
  width: 100%;
  height: 40vh;
}
#company section ol, #company section ul {
  margin-bottom: 0;
}
/* __________________________________________ お問い合わせ .contact */
#contact iframe {
  width: 100%;
  height: 300vw;
}
/* __________________________________________ 皆様のご感想 #kansou_site */
#kansou_site .notice_box.inner.wrapper {
  padding: 0;
}
#kansou_site .voice_box {
  margin: 0 auto 1em;
  padding: 0.5em 0.5em 2em;
  position: relative;
  border: 1px solid #CCCCCC;
}
#kansou_site .voice_box:last-of-type {
  margin-bottom: 0;
}
#kansou_site .voice_box h3 {
  margin-bottom: 0.5em;
  font-size: 1em;
  color: #EC3B04;
}
#kansou_site .voice_box p {
  margin-bottom: 0.5em;
  font-size: 0.9em;
}
#kansou_site .voice_box p:nth-last-child(2) {
  margin-bottom: 1em;
  width: 60vw;
}
#kansou_site .voice_box.b-img p:nth-last-child(2) {
  margin-bottom: 2em;
}
#kansou_site .voice_box.l-img p:nth-last-child(2), .voice_box.l-img p:nth-last-child(3) {
  width: 60vw;
}
#kansou_site .voice_box.no-img p:nth-last-child(2) {
  width: 100%;
}
#kansou_site .voice_box p:last-child {
  text-align: right;
  font-weight: bold;
  position: absolute;
  right: 0;
  bottom: 1.2em;
}
#kansou_site .voice_box p:last-child img {
  margin: 0.2em 2vw 0 0;
  width: auto;
  max-width: 100px;
  height: auto;
  max-height: 120px;
}
#kansou_site .voice_box::after, #kansou_site .notice_box .flexbox:last-of-type::after {
  content: "※実践されたお客様個人のご感想です。";
  display: block;
  width: 100%;
  clear: both;
  padding-top: 0.2em;
  white-space: pre;
  font-size: 0.8em;
  text-align: right;
  color: #666666;
}
#kansou_site .voice_box::after {
  position: absolute;
  right: 0;
  bottom: 0.5em;
}
#kansou_site .notice_box .flexbox {
  margin-bottom: 1em;
}
#kansou_site .voice_img_box {
  text-align: center;
  font-weight: bold;
}
#kansou_site .voice_img_box p:first-child {
  margin-bottom: 0;
}
#kansou_site .back_btn a {
  width: 15vw;
  height: 15vw;
  position: fixed;
  right: 2.5vw;
  top: 20vw;
  border-radius: 5px;
  background-color: #eb6100;
  color: #FFFFFF;
  line-height: 15vw;
  text-align: center;
  text-decoration: none;
  font-size: 5vw;
  font-weight: bold;
  z-index: 999;
}
@media screen and (min-width: 481px) {
  body {
    font-size: 1.125rem;
    background-color: #F0F0F0;
  }
  p, li {
    font-size: 1em;
  }
  img {
    width: auto;
    height: auto;
  }
  picture {
    text-align: center;
  }
  .pc_view,
  .is-pc {
    display: block;
  }
  span.pc_view, 
  span.is-pc {
    display: inline;
  }
  .smp_view,
  .is-sp {
    display: none;
  }
  span.smp_view, 
  span.is-sp {
    display: none;
  }
  .pc_block {
    display: block;
  }
  .smp_block {
    display: inline;
  }
  /* ____ ボックス設定 ____ */
  /* フレキシブルボックス */
  .flexbox {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  /* 大枠ボックス */
  main.wrapper {
    margin: 1em auto;
    padding: 0;
    width: 980px;
    border: 1px solid #999;
    box-sizing: content-box;
  }
  section {
    padding: 2em 0;
  }
  .wrapper {
    width: 980px;
  }
  .inner {
    padding: 0 1.5em;
  }
  .inner.wrapper {
    width: 760px;
  }
  .notice_box {
    width: 650px;
  }
  /* ボックス内共通設定 */
  h1 {
    font-size: 0.8rem;
    line-height: 1;
    text-align: right;
    font-weight: normal;
  }
  h2 {
    line-height: 1.2;
    font-size: 1.4em;
  }
  section p {
    margin-bottom: 1em;
  }
  .v_hdn {
    visibility: hidden;
  }
  /*lightbox 拡大画像開始----------------------------------------------*/
  .lightbox figure {
    width: auto;
  }
  .lightbox img {
    max-width: 900px;
  }
  a.no-link.sp {
    pointer-events: auto;
  }
  /* -------------------------------------- PCメニュー pc_menu  */
  .pc_menu {
    display: block;
    padding-top: 1em;
    border-bottom: 1px solid #000000;
    background-color: #FFFFFF;
    position: relative;
    z-index: 10;
  }
  .pc_menu .wrapper {
    padding: 0;
    justify-content: space-between;
  }
  .pc_menu .wrapper.flexbox p {
    margin: 0;
    line-height: 0;
  }
  /*lightbox 拡大画像開始----------------------------------------------*/
  .lightbox figure {
    width: auto;
  }
  .lightbox img {
    max-width: 900px;
  }
  a.no-link.sp {
    pointer-events: auto;
  }
  /* -------------------------------------- ヘッダー header  */
  header .wrapper {
    width: 0;
    height: 0;
    padding: 0;
    background-color: inherit;
    border-bottom: none;
    top: 0;
    z-index: 100;
  }
  .sp-logo {
    display: none;
    margin: 0;
    padding-top: 0;
  }
  /*.tel {
    display: none;
  }
  .free_tell {
    width: 235px;
  }*/
  /* -------------------------------------- 追従リンク .fix_btn */
  .fix_btn {
    right: calc(50% - 600px);
    bottom: 100px;
  }
  /* ボタン */
  #ord_open {
    position: fixed;
    top: inherit;
    left: inherit;
    padding: 0 9px 0 9px;
    bottom: 60px;
    right: calc(50% - 600px);
    display: block;
    margin: 0;
    width: 80px;
    height: 80px;
    justify-content: center;
    align-items: center;
    background-color: #FFFFFF;
    border: 1px solid #888888;
    border-radius: 3px;
    cursor: pointer;
  }
  #ord_open::before {
    width: 65px;
    color: #888888;
    position: absolute;
    font-size: 15px;
    bottom: 3px;
  }
  .sen, .sen::before, .sen::after {
    width: 60px;
    height: 4px;
  }
  .sen {
    top: 24px;
  }
  .sen::before {
    top: 15px;
  }
  .sen::after {
    bottom: 15px;
  }
  /* ------------------------------------- スライドメニュー #slide_menu */
  #slide_menu a, #slide_menu button, #slide_menu button:focus {
    padding: .8em 0;
  }
  /* メニュー */
  #slide_menu nav {
    width: 500px;
    overflow-y: hidden;
    bottom: 0;
    right: calc(50% - 600px);
    top: inherit;
    left: inherit;
  }
  #slide_menu nav .nav-tel img {
    width: 270px;
  }
  #slide_menu nav .nav-tel {
    margin: 1em 0;
  }
  /* メニューを開いた時 */
  #slide_menu nav.open-menu {
    height: 550px;
    border-radius: 10px 10px 0 0;
    box-shadow: 0 0 6px 3px rgba(191, 191, 191, 0.50);
  }
  #fadeLayer {
    background-color: transparent;
  }
  #fadeLayer p {
    display: none;
  }
  /* -------------------------------------- ページ内リンク位置調整（固定ヘッダー対策）  */
  #ord, #miryoku, #qa {
    padding: 2em 0;
    margin-top: 0;
  }
  #syoukai {
    padding: 0;
    margin-top: 0;
  }
  /* -------------------------------------- メインビジュアル .main_v  */
  .main_v.wrapper {
    padding-top: 0;
  }
  .subp main {
    padding-top: 0;
  }
  /* -------------------------------------- 特典バナー用 .timer-div  */
  .timer-div img {
    width: auto;
  }
  /* -------------------------------------- オンライン視聴について .flow-online  */
  .flow {
    width: 780px;
    margin: 0 auto 60px;
  }
  .flow .toggle + .title {
    width: 780px;
    padding: 1.5em 0;
    font-size: 1.5rem;
    left: calc(50% - 390px);
  }
  .tglbox.flow-online {
    padding: 0 40px;
  }
  .tglbox.flow-online h3 {
    margin-top: 1em;
    font-size: 1.5rem;
    border-left: 8px solid #0170B9;
  }
  .tglbox.flow-online p {
    padding: .5em 0;
  }
  .tglbox.flow-online .w70 {
    width: 430px;
  }
  .tglbox.flow-online .txt_c {
    margin: 1em 0;
  }
  .tglbox.flow-online .yasu {
    width: 550px;
    margin: 0 auto 1em;
    padding: 50px 0;
  }
  .tglbox.flow-online .yasu::before {
    width: 163px;
    height: 242px;
    background-size: 163px 242px;
    background-position: left top;
    right: 0;
  }
  .tglbox.flow-online img {
    width: 504px;
  }
  .toggle:checked + .title + .tglbox.flow-online {
    max-height: 2680px;
  }
  /* -------------------------------------- アコーディオンコンテンツ */
  .title {
    margin: 0 auto;
  }
  .title:hover {
    cursor: pointer;
  }
  .title::after, .title::before {
    right: 50px;
  }
  .tglbox p {
    padding: 1em 0 0;
    font-size: 1em;
  }
  .tglbox p:last-child {
    padding: 1em 0;
  }
  /* -------------------------------------- レッスン動画 .movie */
  .movie h2 {
    padding-top: 165px;
    background-image: url("../img/sax_movie-ttl.jpg");
  }
  .yt_bg {
    width: 640px;
    height: 368px;
    margin: 0 auto;
    padding: 1em auto;
    background-color: #000000;
  }
  .yt_movie a:hover {
    opacity: 1;
  }
  .yt_movie img {
    width: 480px;
    height: auto;
  }
  .yt_movie a:hover img {
    opacity: 1;
  }
  .yt_bg_txt {
    font-size: 0.8em;
    font-weight: bold;
    margin: 0.5em 0 2em;
  }
  .yt_play {
    background-size: contain;
  }
  /* -------------------------------------- 講師紹介 .prof */
  .prof .prof_ttl {
    min-height: 200px;
    margin-bottom: 1em;
    background-position: left 0.5em top;
    background-size: 200px 200px;
  }
  .prof .prof_ttl h2, .prof .prof_ttl p {
    margin: 0 0 0.5em 230px;
    padding: 0.2em 0;
  }
  .prof_box {
    padding: 1em;
  }
  .prof_box_txt {
    margin-right: 200px;
  }
  .prof_box .prof_img {
    width: 210px;
    position: absolute;
    right: 0.2em;
    top: 0em;
  }
  .prof_box table {
    display: table;
    padding: 0.5em 1em;
    border: 15px solid #FFFFFF;
  }
  .prof_box tbody > tr:first-of-type td, .prof_box tbody > tr:nth-of-type(2) td {
    padding-right: 180px;
  }
  .prof_box th, .prof_box td {
    display: table-cell;
    padding: 0.5em 1em;
    vertical-align: middle;
  }
  .prof_box th {
    white-space: nowrap;
  }
  .disco ul.flexbox {
    justify-content: center;
  }
  .disco .gray_box {
    margin: 0 1em;
    padding: 0.5em 1em;
  }
  .disco .flexitem, .idea_box_img {
    width: 50%;
  }
  .disco .flexitem {
    padding-top: 1em;
    align-self: flex-start;
  }
  .idea_box_img {
    text-align: center;
  }
  /* -------------------------------------- 推薦者の声 .recom */
  .recom.inner.wrapper {
    width: 760px;
    padding: 1em;
  }
  .recom_box {
    padding: 0.5em 1em;
  }
  .recom_box .recom_ttl {
    margin-bottom: 2em;
    padding-left: 150px;
  }
  .recom_box .recom_ttl p:first-child {
    padding: 1em 0 0.5em 1em;
    font-size: 1.25em;
  }
  .recom_box .recom_ttl p:nth-child(2) {
    padding-top: 70px;
  }
  .recom_box .recom_ttl p:last-child {
    width: 140px;
  }
  .recom_box > p {
    margin: 0 1em 1em;
  }
  .recom_box p.recom_prof {
    margin: 0 0 1em 0;
    padding: 0.5em 1em;
  }
  /* -------------------------------------- サックス教材について .about */
  .about h2 {
    margin-bottom: 1em;
    padding: 190px 0 0 0;
    height: 0;
    background-image: url("../img/sax_about-ttl.jpg");
  }
  .about h3 {
    background-size: auto;
    padding-top: 160px;
  }
  .about h3:first-of-type {
    background-image: url("../img/sax_gimon_ttl01_pc.gif");
  }
  .about h3:nth-of-type(2) {
    background-image: url("../img/sax_gimon_ttl02_pc.gif");
  }
  .about h3:last-of-type {
    background-image: url("../img/sax_gimon_ttl03_pc.gif");
  }
  .answer {
    width: 645px;
    margin: 3em auto 1em auto;
  }
  .answer img {
    width: 250px;
  }
  .about .about_img {
    padding: 0 1em;
    width: 800px;
    text-align: center;
  }
  .about .about_img h4 {
    margin: 1em auto;
  }
  .about .flexbox .flexitem img {
    width: auto;
  }
  .about .about_img .flexbox {
    display: flex;
    justify-content: space-around;
  }
  .about .about_img img {
    width: 380px;
    height: auto;
  }
  .about .gakufu_ttl {
    margin-top: 2em;
    padding-top: 216px;
    background-image: url("../img/sax_about-q_03_1.jpg");
    background-size: auto;
  }
  /* -------------------------------------- 各弾の中身は .nakami */
  .nakami h2 {
    padding: 120px 0 0 0;
    height: 0;
    background-image: url("../img/sax_nakami-ttl.jpg");
    background-size: auto;
    overflow: hidden;
  }
  .nakami h2 .bg-yell4 {
    background-color: transparent;
  }
  .nakami .naiyou > h3 {
    padding: 200px 0 0 0;
    background-color: transparent;
    height: 0;
    background-image: url("../img/sax_1dan-ttl.jpg");
    background-repeat: no-repeat;
    background-position: left top 1.5em;
    overflow: hidden;
  }
  .second .naiyou > h3 {
    background-image: url("../img/sax_2dan-ttl.jpg");
  }
  .third .naiyou > h3 {
    background-image: url("../img/sax_3dan-ttl.jpg");
  }
  .nakami h3 {
    font-size: 1.6em;
  }
  .naiyou_txt {
    padding: 0 1em;
  }
  .nakami .naiyou_txt_first {
    margin-bottom: 0.2em;
    padding-right: 35%;
    font-size: 1.5em;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    line-height: 1.2;
  }
  .nakami .naiyou_txt p:nth-child(2) {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
  .naiyou_img_last {
    width: 35%;
    right: 1em;
  }
  .set_list {
    margin-bottom: 1em;
    padding: 220px 0 0 0;
    height: 0;
    background-image: url("../img/sax_1dan-list.jpg");
    background-repeat: no-repeat;
    background-position: center bottom;
    overflow: hidden;
  }
  .i-top_lp .set_list {
    background-image: url("../img/sax_1dan-list-dvd.jpg");
  }
  .second .set_list {
    padding-top: 250px;
    background-image: url("../img/sax_2dan-list.jpg");
  }
  .i-top_lp .second .set_list {
    background-image: url("../img/sax_2dan-list-dvd.jpg");
  }
  .third .set_list {
    padding-top: 230px;
    background-image: url("../img/sax_3dan-list.jpg");
  }
  .i-top_lp .third .set_list {
    background-image: url("../img/sax_3dan-list-dvd.jpg");
  }
  .nakami_box {
    padding: 0 1em;
    width: 760px;
  }
  .nakami_box h3 {
    margin: 0 0 1em 0;
    padding: 0.2em 1em;
    font-size: 1em;
    color: #FFFFFF;
    background-color: #8F0000;
    border-left: none;
  }
  .nakami_box .flexbox {
    flex-direction: row-reverse;
    padding: 0.5em;
  }
  .nakami_box h4 {
    padding-left: 120px;
    text-indent: -120px;
    border-bottom: 2px solid #8F0000;
  }
  .nakami_box h4 span:first-of-type {
    display: inline-block;
    width: 120px;
    text-indent: 0;
  }
  .nakami_box h4.long span:first-of-type {
    width: auto;
    margin-right: 0.5em;
  }
  .second .nakami_box h3 {
    background-color: #0C206E;
  }
  .third .nakami_box h3 {
    background-color: #655706;
  }
  .nakami_box .flexitem + p {
    margin: 0.5em auto 0;
    width: 220px;
    align-self: flex-start;
  }
  .nakami_box .flexbox .flexitem:first-child {
    width: 450px;
    align-self: flex-start;
  }
  .nakami_box .flexbox .flexitem p {
    padding: 0;
  }
  .lessonbox {
    padding-top: 0;
  }
  .lessonbox .flexitem {
    width: 370px;
  }
  .lessonbox .flexbox {
    align-items: flex-start;
  }
  .lessonbox .flexbox:last-child {
    display: flex;
    justify-content: space-around;
    margin-top: 2em;
  }
  /* -------------------------------------- 分かりやすい工夫 .idea */
  .idea h2 {
    font-size: 1.35em;
    padding-top: 200px;
    height: 0;
    background-image: url("../img/sax_idea_ttl.jpg");
  }
  .idea .idea_box {
    width: 890px;
    padding: 0.5em 1em;
    margin: 0 auto 0.5em;
  }
  .idea .idea_box h3 {
    background-size: auto;
  }
  .idea .idea_box .flexitem {
    align-self: flex-end;
  }
  .idea .idea_box:nth-of-type(1) h3 {
    padding-top: 40px;
  }
  .idea .idea_box:nth-of-type(2) h3 {
    padding-top: 80px;
  }
  .idea .idea_box:nth-of-type(3) h3 {
    padding-top: 40px;
  }
  .idea .idea_box:nth-of-type(4) h3 {
    padding-top: 40px;
  }
  .idea .idea_box:nth-of-type(3) {
    position: relative;
  }
  .idea .idea_box:nth-of-type(3) .flexitem:first-of-type p img {
    width: auto;
  }
  .idea .idea_box:nth-of-type(3) .flexitem:last-of-type {
    width: auto;
    position: absolute;
    bottom: -1em;
    right: 1em;
  }
  /* ------------------------------------- DVD無しでも動画が見られます .watch */
  .watch {
    overflow: visible;
  }
  .watch.wrapper {
    width: 760px;
  }
  .watch-type {
    display: flex;
    overflow: visible;
    padding: 0;
  }
  .watch-type li {
    width: 225px;
    margin-top: 0;
    padding: 150px 0 0;
    letter-spacing: -1px;
    text-align: center;
    position: relative;
  }
  .watch::before {
    width: 200px;
    height: 120px;
    background-size: 160px;
    left: calc(50% - 80px);
  }
  .watch p:first-of-type {
    margin-top: 1em;
  }
  .watch-type li:first-child {
    margin-left: 0;
    letter-spacing: -1px;
  }
  .watch-type li:first-child, .watch-type li:nth-child(2) {
    line-height: 1.8;
  }
  .watch-type li:nth-child(3) {
    margin-top: 20px;
    margin-left: -40px;
  }
  .watch-type li:nth-child(odd) {
    float: none;
  }
  .watch-type li:nth-child(even) {
    margin-top: 120px;
    margin-left: -40px;
    float: none;
  }
  .watch-type li::before {
    width: 225px;
    height: 225px;
    background-size: auto 225px;
    background-position: left 0 top;
    left: calc(50% - 100px);
    top: 60px;
    opacity: .5;
  }
  .watch-type li::after {
    width: 225px;
    height: 150px;
    background-size: 900px;
    left: calc(50% - 100px);
  }
  .watch-type li:nth-child(2)::after {
    background-position: left -280px top;
  }
  .watch-type li:nth-child(3)::after {
    background-position: left -510px top;
  }
  .watch-type li:nth-child(4)::after {
    background-position: left -710px top;
  }
  .watch-type li p {
    width: 240px;
  }
  /* -------------------------------------- 金銭比較 .hikaku */
  .hikaku {
    padding-top: 100px;
    position: relative;
  }
  .hikaku h2 {
    font-size: 2.2em;
    text-align: center;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
  .hikaku h2::before {
    margin-left: -160px;
    width: 320px;
    height: 70px;
    position: absolute;
    top: 0;
    left: 50%;
  }
  /* -------------------------------------- 教材内容・価格 .item */
  .item > p:first-of-type {
    display: none;
  }
  .item h2 {
    padding-top: 210px;
    font-size: 1.2em;
    height: 0;
    background-image: url("../img/sax_item-ttl.jpg");
  }
  .item ul::before {
    display: none;
  }
  .item ul {
    margin: 1.5em auto;
    padding-left: 100px;
    width: 600px;
    background-repeat: no-repeat;
    background-position: left center;
  }
  .item ul.item_dai1 {
    background-image: url("../img/sax_item-1dan.jpg");
  }
  .item ul.item_dai2 {
    background-image: url("../img/sax_item-2dan.jpg");
  }
  .item ul.item_dai3 {
    background-image: url("../img/sax_item-3dan.jpg");
    margin: 1.5em auto 2em auto;
  }
  .item ul li {
    padding-left: 0;
  }
  /* -------------------------------------- オンラインまたはDVD.sentaku */
  .sentaku {
    width: 760px;
    margin-bottom: 2em;
  }
  .sentaku .flexbox img {
    width: auto;
  }
  .sentaku p:first-of-type {
    margin-top: 1em;
    margin-bottom: 0;
  }
  .sentaku .maru {
    width: 100px;
    height: 100px;
    margin: 0 2em;
  }
  .sentaku .maru p {
    margin: 0;
    height: 85px;
    font-size: 2em;
  }
  /* -------------------------------------- 購入ボタン .ord_btn */
  .ord_btn p.btntop img {
    width: 358px;
  }
  .ord_btn .pc_view {
    margin-top: 2em;
  }
  /* -------------------------------------- e-shopsカート .ord_eshops */
  .ord_eshops, .ord_eshops * {
    margin: 0;
    padding: 0;
    text-align: center;
  }
  .ord_eshops .ord-group {
    margin-bottom: 30px;
    padding: 30px 0;
  }
  .ord_eshops label.type-select::before {
    width: 3em;
  }
  .ord_eshops label.type-select::after {
    top: 35%;
    transform: translateY(-50%) rotate(45deg);
    right: 1.2em;
  }
  .ord_eshops label.type-select select {
    width: 650px;
    margin-bottom: 1em;
  }
  /* 購入ボタン */
  .ord_eshops .buybtn {
    width: 760px;
    padding-top: 115px;
    background-image: url("../img/sax16_n_cart.jpg");
    background-size: 760px auto;
    transition: .5s;
  }
  #sax_1dan .buybtn {
    width: 798px;
    background-image: url("../img/sax1dan_n_cart.jpg");
    background-size: 798px auto;
  }
  #sax_23set .buybtn {
    padding-top: 91px;
    background-image: url("../img/sax23rd/topbtn2.png");
  }
  .ord_eshops .buybtn:hover,
  .ord_eshops .buybtn:active {
    opacity: .8;
  }
  /* -------------------------------------- お客様の声 .voice */
  .voice {
    width: 760px;
    margin: 0 auto;
  }
  .voice_ttl {
    background-image: url("../img/sax_voice-top_ttl_pc.jpg");
    background-size: auto;
    padding-top: 200px;
  }
  .voice_ttl::after {
    width: 205px;
    height: 188px;
    background-image: url("../img/sax_voice-kyara.png");
    background-size: auto;
    background-repeat: no-repeat;
    position: absolute;
    top: 25px;
    right: 220px;
  }
  .voice_box {
    padding: 1em;
    margin: 0 1em 1em 1em;
    background-color: #FFFFFF;
  }
  .kansou {
    width: 760px;
    margin: 0 auto;
    padding: 0;
  }
  .kansou h2 {
    padding-top: 180px;
    background-image: url("../img/sax_voice-ttl.jpg");
  }
  .kansou .notice_box {
    margin: 0 auto 1em;
    padding: 1em 1.5em;
    width: 760px;
    border-radius: 0;
  }
  .kansou_box {
    width: 680px;
    margin: 0 auto 1em;
    padding: 1em 1.5em;
  }
  .kansou_box:last-of-type {
    margin: 0 auto;
  }
  .kansou_box p:last-child img {
    margin-right: 1em;
  }
  .kansou_box p:last-child {
    right: 1em;
    bottom: 1.2em;
  }
  .kansou_box p:nth-last-child(2) {
    width: 80%;
  }
  .kansou > p:last-of-type a {
    margin: 1em auto;
    padding: 0.5em 0;
    width: 650px;
    font-size: 2em;
  }
  /* -------------------------------------- よくある質問 .qanda */
  .qanda h2 {
    padding: 100px 0 0 0;
    height: 0;
    background-image: url("../img/sax_qanda-ttl.jpg");
    background-position: left top;
  }
  .qanda dl.notice_box {
    padding: 2em 0 0;
    width: 640px;
  }
  .qanda dl dt, .qanda dl dd {
    padding-left: 80px;
    min-height: 60px;
  }
  .qanda dl dt, 
  .qanda dl dt.line1 {
    margin-bottom: 0.5em;
    font-size: 1.6rem;
    line-height: 60px;
    background-size: 60px 60px;
  }
  .qanda dl dt.line2 {
    line-height: 1.2;
  }
  .qanda dl dd {
    background-size: 55px 55px;
  }
  /* -------------------------------------- さいごに .message */
  .message {
    padding-top: 4em;
  }
  .message h2 {
    font-size: 1.8rem;
  }
  .message_box {
    margin: 0 auto;
    padding: 3em 2.5em;
    width: 710px;
  }
  .message_box .flo-l {
    margin: 0 1em 1em 0;
    width: 200px;
    float: left;
  }
  .message_box p:last-child {
    font-size: 1.4em;
  }
  /* -------------------------------------- ショップインフォ .shopinfo */
  #shopinfo {
    padding: 4em 3em;
    font-size: 0.8em;
  }
  #shopinfo .asp_info {
    padding: 0 40px;
    background-size: 326px 113px;
    background-position: right 40px top;
  }
  #shopinfo img {
    width: auto;
    max-width: 100%;
  }
  #shopinfo .flexbox {
    align-items: flex-start;
    justify-content: center;
  }
  #shopinfo .shopinfo_l {
    width: 420px;
    padding-right: 19px;
    border-right: 1px dotted #CCCCCC;
  }
  #shopinfo .shopinfo_r {
    width: 420px;
    padding-left: 20px;
  }
  #shopinfo h2, #shopinfo h3 {
    font-size: 1.2em;
  }
  #shopinfo h3 {
    padding: 8px 0 0 20px;
  }
  #shopinfo h4 {
    margin-top: 1em;
    font-size: 1em;
  }
  #shopinfo p {
    font-size: 1em;
  }
  #shopinfo ul li {
    font-size: 1em;
    /*  text-indent: -2.8em;
  padding-left: 2.5em;*/
  }
  #shopinfo .maxw60 {
    max-width: 140px;
  }
  #shopinfo .maxh60 {
    max-height: 60px;
  }
  #shopinfo .othershop {
    margin-top: 20px;
    padding-right: 80px;
    position: relative;
  }
  #shopinfo .othershop::after {
    content: "";
    width: 70px;
    height: 90px;
    background-image: url("/img/parts/othershop_bg.png");
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    overflow: hidden;
    position: absolute;
    right: 0;
    bottom: -10px;
    z-index: 0;
  }
  #shopinfo .othershop h4 {
    color: #880015;
    white-space: nowrap;
    border: none;
  }
  #shopinfo .othershop p {
    text-align: right;
    margin-bottom: .5em;
  }
  #shopinfo .conv-ex {
    padding: 0.5em;
  }
  /* -------------------------------------- フッター footer */
  footer {
    border: none;
  }
  footer .wrapper {
    border-top: none;
  }
  footer .f_nav {
    z-index: 10;
    background-color: #FFFFFF;
    border-top: 1px solid #000000;
  }
  footer .f_nav > .flexbox:last-child {
    padding: 1em 20px;
    margin-bottom: 0;
    justify-content: space-between;
    border-top: none;
  }
  footer nav ul li {
    font-size: 0.8em;
    border-bottom: none;
    position: static;
  }
  footer nav ul li a {
    display: inline;
    padding: 0;
  }
  footer nav ul li::after {
    content: "|";
    margin: 0 0.5em;
    font-weight: normal;
    position: static;
  }
  footer nav ul li:last-of-type::after, footer nav ul li:nth-of-type(6)::after {
    content: "";
    margin: 0;
  }
  footer nav.c_nav ul.flexbox {
    flex-wrap: wrap;
    /*width: 540px;*/
    margin: 0 auto;
    padding-bottom: 1em;
  }
  footer nav.c_nav ul.flexbox li {
    padding-top: 0;
  }
  /* __________________________________________ ↓ここからサブページ用 */
  /* -------------------------------------- ヘッダー header  */
  .subp header .wrapper.flexbox p:first-of-type img {
    width: auto;
  }
  .subp header h1, .subp header .wrapper.flexbox p:nth-of-type(2) {
    display: block;
  }
  /* -------------------------------------- パンくずリスト .path  */
  .path {
    padding: 1em 0 1em 1em;
  }
  .path li {
    font-size: 0.8em;
  }
  .path li::after {
    font-size: 0.8em;
  }
  /* -------------------------------------- コンテンツ領域 */
  .subp section {
    padding-left: 1em;
    padding-right: 1em;
    font-size: 0.9em;
    line-height: 1.4;
  }
  .subp section h2 {
    width: 100%;
    padding: 1em 0;
    color: #423636;
    background-color: transparent;
    border-radius: 0;
  }
  .subp section .notice_box table {
    border: none;
  }
  .subp section .notice_box th {
    display: table-cell;
    width: 35%;
    padding: 0.5em 0;
    text-align: center;
  }
  .subp section .notice_box td {
    display: table-cell;
    width: 65%;
    padding: 0.5em 0;
  }
  /* __________________________________________ 運営者情報 #company */
  #company section h2 {
    margin-top: 0;
  }
  #company iframe {
    display: block;
    width: 425px;
    height: 350px;
    margin: 0 auto 2em;
  }
  /* __________________________________________ プライバシーポリシー #privacy */
  #privacy ol {
    padding-left: 2em;
  }
  #privacy .notice_box p, #privacy .notice_box li {
    font-size: 0.9em;
  }
  /* __________________________________________ お問い合わせ .contact */
  #contact iframe {
    height: 1200px;
  }
  /* __________________________________________ 皆様のご感想 #kansou_site */
  #kansou_site main {
    position: relative;
  }
  #kansou_site .voice_box {
    padding: 1em 1em 3.5em;
  }
  #kansou_site .voice_box h3 {
    font-size: 1.1em;
  }
  #kansou_site .voice_box p:nth-last-child(2) {
    width: 550px;
  }
  #kansou_site .voice_box.l-img p:nth-last-child(2), #kansou_site .voice_box.l-img p:nth-last-child(3) {
    width: 550px;
  }
  #kansou_site .voice_box.no-img p:nth-last-child(2) {
    width: 100%;
  }
  #kansou_site .voice_box p:last-child {
    bottom: 1em;
  }
  #kansou_site .voice_box p:last-child img {
    margin: 0.2em 1em 0 0;
    width: auto;
    max-width: 100px;
    height: auto;
    max-height: 100px;
  }
  #kansou_site .notice_box .flexbox {
    margin-bottom: 0;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
  }
  #kansou_site .notice_box .flexbox .voice_box {
    margin-bottom: 1em;
    width: 370px;
    align-self: stretch;
  }
  #kansou_site .notice_box .flexbox .voice_box p:nth-last-child(2) {
    width: 220px;
  }
  #kansou_site .notice_box .flexbox .no-img p:nth-last-child(2) {
    width: 100%;
  }
  #kansou_site .back_btn a {
    line-height: 50px;
    font-size: 1em;
    z-index: 9999;
    right: 2.5vw;
    top: -8vh;
    border-radius: 5px;
    background-color: #eb6100;
    color: #FFFFFF;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    width: 200px;
    height: 50px;
    margin: 15vh auto;
  }
}
/* -------------------------------------- ヤマト運輸ネコポス対応 .yamato-post */
.yamato-post p {
  margin-bottom: 0;
  text-align: center;
}
.yamato-post p.post-txt {
  content-visibility: hidden;
  display: none;
}
.yamato-post p.post-txt {
  content-visibility: visible;
  display: block;
  margin: 0 6vw;
  text-align: justify;
  font-size: .8em;
}
@media screen and (min-width: 481px) {
  .yamato-post p.post-txt {
    content-visibility: visible;
    display: block;
    width: 650px;
    margin: 0 auto 1em;
    text-align: center;
    font-size: .8em;
  }
}