 body {
     background: #EFEFEF;
     font-size: 14px;
     color: #303030;
 }
 
 a {
     text-decoration: none;
     color: inherit;
 }
 
 a:hover {
     color: inherit;
     opacity: .6;
 }
 
 ul {
     list-style: none;
     padding-left: 0;
 }
 
 .nav-btn {
     text-align: center;
 }
 
 .btn {
     display: inline-block;
     width: 90%;
     max-width: 300px;
     color: #fff;
     font-weight: 600;
 }
 
 .btn a {
     display: block;
 }
 
 .btn-blue {
     background: #33B1B8;
 }
 
 .btn-yellow {
     background: #E3C252;
 }
 
 h1 {
     font-size: 24px;
     font-weight: 600;
     padding: 30px 10px;
     border-bottom: solid 1px #ddd;
     margin: 0;
 }
 
 .h1-sub {
     display: block;
     color: #aaa;
     font-size: 12px;
     font-weight: 100;
     margin-bottom: 10px;
 }
 
 h2 {
     font-size: 20px;
     border-top: solid 1px #E3C252;
     border-bottom: solid 1px #E3C252;
     padding: 15px 10px;
     font-weight: 600;
 }
 
 h3 {
     font-size: 18px;
     font-weight: 600;
     position: relative;
     line-height: 1.5;
     padding: 6px 18px;
     display: inline-block;
     top: 0;
     margin-left: 15px;
     margin-top: 20px;
 }
 
 h3:before,
 h3:after {
     position: absolute;
     top: 0;
     content: '';
     width: 8px;
     height: 100%;
     display: inline-block;
 }
 
 h3:before {
     border-left: solid 3px #E3C252;
     border-top: solid 3px #E3C252;
     border-bottom: solid 3px #E3C252;
     left: 0;
 }
 
 h3:after {
     content: '';
     border-top: solid 3px #E3C252;
     border-right: solid 3px #E3C252;
     border-bottom: solid 3px #E3C252;
     right: 0;
 }
 
 h4 {
     display: inline-block;
     font-size: 18px;
     font-weight: 600;
     margin-left: 20px;
     color: #33B1B8;
     border-bottom: solid 1px #33B1B8;
 }
 
 .text-yellow {
     color: #C3A84A;
     /*     font-weight: 600;*/
 }
 
 i.text-yellow {
     margin-right: 6px;
 }
 
 .text-blue {
     color: #33B1B8;
     font-weight: 600;
 }
 
 i.text-blue {
     color: #33B1B8;
     font-weight: 600;
     margin-right: 6px;
 }
 
 .text-marking {
     background: linear-gradient(transparent 70%, #a6d8db 0%);
     font-weight: 600;
 }
 /***** ヘッダー *****/
 
 header {
     background: #FFF;
     border-top: solid 5px #33B1B8;
     text-align: center;
     padding: 10px 0 0 0;
     margin-bottom: 10px;
 }
 
 .haeder-lead {
     font-size: 12px;
 }
 
 .header-logo img {
     display: block;
     margin: 10px auto;
     width: 150px;
 }
 
 .navbar {
     border-top: solid 1px #ddd;
     border-bottom: solid 1px #ddd;
     padding: 0px;
 }
 
 .navbar-nav .nav-item .nav-link {
     font-size: 12px;
     width: 160px;
     margin: 0 10px;
     color: #303030;
 }
 
 .navbar-nav .nav-item .active {
     /*     border-bottom: 2px solid #E3C252;*/
     color: #E3C252!important;
     font-weight: 600;
 }
 
 @media (max-width: 991px) {
     .navbar-toggler {
         position: absolute;
         top: -65px;
         right: 5px;
         border: none;
     }
     .navbar-nav .nav-item .nav-link {
         width: 100%;
     }
 }
 /* 
 @media (min-width: 768px) {
     .header-spacer {
         display: none;
     }
     .navbar-toggler {
         display: none;
     }
 }
*/
 /***** メイン-記事 *****/
 
 .content-section {
     background: #fff;
     margin: 20px 0;
     border-top: solid 4px #E3C252;
     padding-bottom: 20px;
 }
 
 p {
     padding: 10px 50px;
     font-size: 14px;
     line-height: 2;
 }
 
 .p-intro {
     background: #FAFAFA;
     line-height: 2;
     margin: 0 0 30px 0;
     padding: 30px;
 }
 
 .p-ul {
     margin-left: 60px;
 }
 
 @media (max-width: 992px) {
     p {
         padding: 5px 20px;
     }
     .p-ul {
         margin-left: 30px;
     }
 }
 /***** メイン-アプリランキング *****/
 
 .app-list {
     margin: 10px;
 }
 
 .app-item {
     /*    border: solid 1px #ddd;*/
     background: #FBF8F0;
     padding: 10px;
     margin-bottom: 10px;
 }
 
 .app-maker {
     color: #aaa;
     font-size: 12px;
 }
 
 .app-name {
     font-size: 28px;
     font-weight: 600;
 }
 
 .app-img {
     text-align: center;
     width: 50%;
 }
 
 .app-spec table th {
     background: #E3C252;
     color: #fff;
     width: 35%;
     border: solid 5px #FBF8F0;
     padding-left: 3px;
 }
 
 .app-lead {
     color: #E3C252;
     margin: 5px 0;
     padding: 5px;
     font-size: 16px;
     font-weight: 600;
 }
 
 .app-dsc p {
     font-size: 14px;
     line-height: 1.5;
 }
 
 .app-dl div {
     width: 100%;
     min-width: 150px;
     background: #33B1B8;
     text-align: center;
     margin: 5px;
     padding: 10px;
     border-radius: 3px;
 }
 
 .app-dl div a {
     display: block;
     color: #fff;
     font-size: 18px;
     font-weight: 600;
 }
 
 .app-dl div a i {
     margin-right: 5px;
     color: #E3C252;
 }
 
 @media (max-width: 768px) {
     .app-img {
         margin: 15px auto;
         width: 100%;
     }
     .app-spec table {
         margin: 0 auto;
     }
 }
 /***** メイン-スクール検索 *****/
 
 .pref-list {
     margin: 2rem;
     padding: 0px;
     background-image: url(img/map.png);
     background-repeat: no-repeat;
     background-position: right 0px bottom 5px;
     background-size: 250px;
     /*     background: rgba(250, 250, 250, 0.2);*/
 }
 
 .pref-select {
     font-size: 16px;
     padding: 5px 10px;
 }
 
 .pref-list {
     /*    position: relative;*/
 }
 
 .pref-list input {
     padding: 5px 20px;
     background: #33B1B8;
     color: #fff;
     box-shadow: none;
     border: none;
     border-radius: 3px;
 }
 
 .pref-img {
     /*    position: absolute;*/
 }
 
 .pref-img img {
     display: block;
     max-width: 200px;
     margin: 20px 10px;
 }
 /***** メイン-スクール一覧＆オンライン一覧 *****/
 
 .list-item {
     padding: 20px;
     /*     border-top: solid 1px #ddd;*/
     border-bottom: solid 1px #ddd;
 }
 
 .list-name {
     font-size: 20px;
     font-weight: bold;
     margin-bottom: 5px;
     padding-left: 5px;
 }
 
 .list-name-school {
     border-left: solid 6px #33B1B8;
 }
 
 .list-name-online {
     border-left: solid 6px #E3C252;
 }
 
 .list-info {
     font-size: 12px;
 }
 
 .list-info-row {
     display: flex;
     margin-bottom: 5px;
 }
 
 .list-info-header {
     color: #fff;
     padding: 3px 5px;
     min-width: 95px;
     margin-right: 5px;
 }
 
 .list-info-header-school {
     background: #a6d8db;
 }
 
 .list-info-header-online {
     background: #f0d68d;
 }
 
 .list-info-content {
     padding: 3px 5px;
 }
 
 .list-info-postcode {
     margin-right: 5px;
 }
 
 .pagination {
     margin-top: 20px;
 }
 
 .page-item {}
 
 .page-item .page-link {
     color: #fff;
     background: #33B1B8;
     border: 0;
 }
 
 .page-item.disabled .page-link {
     color: #fff;
     background: #33B1B8;
     opacity: .5;
 }
 
 .online-btn {
     border: 0;
     background: #33B1B8;
     color: #fff;
     padding: 5px 10px;
 }
 /***** サイド *****/
 
 #contents ul li a {
     display: block;
     padding: 10px;
     line-height: 3;
     font-weight: 600;
 }
 
 #contents ul li a:hover {
     background: #eee;
 }
 
 .contents-sub {
     padding-left: 30px;
     font-size: 12px;
     line-height: 2;
 }
 /***** サイドー教材 *****/
 
 .textbook-item {
     margin: 10px;
     padding: 10px;
     /*     border:solid 1px #ddd;*/
     background: #fafafa;
 }
 
 .textbook-item-img img {
     display: block;
     margin: 0 auto;
 }
 
 .textbook-item-name {
     font-weight: 600;
     font-size: 16px;
 }
 
 .textbook-item-price {
     font-weight: 600;
     color: orange;
     font-size: 16px;
     text-align: end;
 }
 
 .textbook-item-num {
     font-size: 16px;
     margin-right: 3px;
 }
 
 .textbook-item-yen {
     font-size: 12px;
 }
 
 .textbook-item-tax {
     color: #aaa;
     font-size: 11px;
     font-weight: 100;
 }
 
 .textbook-list-wrapper {
     display: flex;
     flex-wrap: wrap;
     margin: 20px auto;
     padding: 0;
 }
 
 .textbook-list-item {
     display: inline-block;
     width: 25%;
     box-sizing: border-box;
     font-size: 12px;
     padding: 10px;
 }
 
 .textbook-list-img {
     text-align: center;
 }
 
 .textbook-list-name {
     font-weight: bold;
 }
 
 .textbook-list-price {
     color: orange;
     font-size: 12px;
     font-weight: 600;
     text-align: end;
 }
 
 @media (max-width: 992px) {
     .textbook-list-item {
         width: 50%;
         padding: 10px 20px;
     }
 }
 /***** サイドーオンライン *****/
 
 .online-list .online-item {
     padding: 10px 15px;
 }
 /***** フッター *****/
 
 footer {
     background: #303030;
     padding: 50px 20px 20px 20px;
     margin: 0;
 }
 /***** バナー *****/
 
 .banners {
     text-align: center;
     margin: 10px auto;

 }
 
 .banner-long {
     display: block;
     margin: 10px auto;
 }
 
 .banner-640 {
     display: block;
     margin: 10px auto;
 }
 
 .banner-468 {
     display: block;
     margin: 10px auto;
 }
 
 .banner-300 {
     display: none;
 }
 
 .banner-180 {
     display: block;
     margin: 10px auto;
 }
 
 @media (max-width: 992px) {
     .banner-180 {
         display: inline;
     }
     .banner-long {
         display: none;
     }
 }
 
 @media (max-width: 768px) {
     .banner-468 {
         display: block;
         margin: 10px auto;
     }
     .banner-300 {
         display: none;
     }
 }
 
 @media (max-width: 576px) {
     .banner-468 {
         display: none;
     }
     .banner-300 {
         display: block;
         margin: 10px auto;
     }
 }
 
 @media (max-width: 360px) {
     .banner-180 {
         display: block;
     }
 }
