@charset "utf-8";

.txt-sub{
font-size:14px;
color:#8c8c8c;
}
.btn-out a{
color:#fff !important;
}
.btn-out a:hover{
color:#000 !important;
}
.btn-in a{
color:#fff !important;
width:460px;
display:block;
padding: 15px 0;
}
.btn-in a:hover{
color:#000 !important;
}
.mgb40{
margin-bottom:40px !important;
}
.btn-right{
text-align:right;
}
.btn-right a{
color:#1111cc;
}
.btn-right a:hover{
color:#7e7ee5;
}
.btn-out a {
    color: #fff !important;
    width: 460px;
    display: block;
    padding:20px 42px 20px 13px;
}
.bg-rank{
padding: 10px !important;
}
.bg-rank{
padding: 10px !important;
}
.txt-str{
font-size:16px;
color:#d32358;
font-weight:bold;
background: #fff78e;
}
.txt-str a{
font-size:16px;
color:#d32358;
font-weight:bold;
text-decoration: underline;
background: #fff78e;
}
.txt-str a:hover{
color:#e87195;
font-weight:bold;
text-decoration: none;
background: #fff78e;
}
.txt-one{
font-size:20px;
color:#ff0000;
font-weight:bold;
background: #fff78e;
}
.txt-one a{
font-size:20px;
color:#ff0000;
font-weight:bold;
text-decoration: underline;
background: #fff78e;
}
.txt-one a:hover{
color:#ff7a7a;
text-decoration: none;
}
.description-box{
margin:0 10px 0 10px;
width: 97%;
background:#ecf6f8;
font-size:15px;
border: 1px solid #d2d3d4;
padding:15px;
}
.description-box p{
margin:0 !important;
}

.exc1 {
  background: url("https://www.cramschool-fees.com/wp/wp-content/uploads/tsunashima_jyuku-banner_hover.png") no-repeat;
}

.exc1 a {
    display: inline-block;
}

.exc1 a:hover {
	background-color: transparent; /* IE6対応 */
}

.exc1 a:hover img {
    visibility: hidden;
}

.exc1 {
    background: url("https://www.cramschool-fees.com/wp/wp-content/uploads/tsunashima_jyuku-banner_hover.png") no-repeat;
width: auto;
background-size: cover;
}

.exc1 a {
    display: inline-block;
}

.exc1 a:hover {
	background-color: transparent; /* IE6対応 */
}

.exc1 a:hover img {
    visibility: hidden;
}
img{
max-width:100% !important;
}
.img-cntr{
margin:0 auto;
text-align:center;
}
.img-cntr img{
border:1px solid #aaa;
}
.txt-quote{
font-size:11px;
color:#999;
}

/*見出し代わり*/

.untertitel{
    background: url(./img/pc/h5_l.png) repeat-y left,#fff;
    border-bottom: 1px solid #d5d5d5;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4;
    margin: 30px 0 20px;
    padding: 5px 0 5px 20px;
}

/*2023.10.20*/
#header .site_ttl:before{
    content: "PR";
    display: inline-block;
    background: #000;
    color: #fff;
    text-align: center;
    width: fit-content;
    margin-right: 1rem;
    font-size: 14px;
    padding: 0 .5rem;
    line-height: 1.4;	
}
#header .site_ttl {
  display: flex;
  align-items: center;
justify-content:center;
}
.copyright_ttl a:before {
  content: "【PR】";
}
@media screen and (min-width: 600px) {
table.custom-table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  font-size: 14px;
  margin: 20px auto;
  width: 100%;
}
table.custom-table tr th {
  background: #f5f5f5;
  border: 1px solid #ccc;
  text-align: center;
  padding: 10px;
  width: 160px;
  box-sizing: border-box;
  white-space: nowrap;
}
table.custom-table tr td {
  background: #fff;
  border: 1px solid #ccc;
  text-align: left;
  padding: 10px;
  font-weight: bold;
}
#page table.custom-table tr td .btn-out {
    width: auto;
}
table.custom-table tr td .btn-out a {
    width: auto;
    font-size: 1rem;
    white-space: nowrap;
}
.column_record {
    border: solid 1px #85c2e0;
    display: block;
    width: 100%;
    margin: auto;
    max-height: 300px;
    overflow-y: scroll;
    padding: 20px;
    background: #fff;
}
ul.column_record li {
    display: block;
    background: none;
    border-bottom: dashed 1px #85c2e0;
    margin-bottom: 10px;
    padding: 0px 0px 5px 0px;
}
}
/***********************************************/

@media screen and (max-width: 640px){

.btn-out,.btn-in{
width:95%;
margin:20px auto 20px auto !important;
}
.btn-out a,.btn-in a{
width:100%;
padding:10px 20px 10px 10px;
}
#index .btn-in a,
#category .btn-in a,
#page .btn-in a{
display:block;
width:100%;
padding:20px 20px 20px 0;
}
.description-box{
width:100%;
margin:0 0 20px 0;
}
.tbl-rank{
width:10%;
}
.tbl-name{
width:50%;
}
.tbl-fee{
width:40%;
}
#contents li{
margin:0 0 20px 0;
}
#contents li span{
background: #fff78e;
font-size: 16px;
font-weight: bold;
}
#index .btn-tel, #category .btn-tel, #page .btn-tel{
padding: 20px 0 20px 0;
}

iframe {
    width: 100%;
}

/*見出し代わり*/

.untertitel{
    background: url(./img/pc/h5_l.png) repeat-y left,#fff;
    border-bottom: 1px solid #d5d5d5;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4;
    margin: 30px 0 20px;
    padding: 5px 0 5px 20px;
}
/*2023.10.20*/	
#header .site_ttl:before{
    display: block;
}
#header .site_ttl {
  display: block;
padding-top:15px;
}	
	#footer {
    background: #def6fa;
	    padding: 1px;
}
table.custom-table {
  border: 1px solid #ccc;
  border-bottom: none;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  font-size: 14px;
  margin: 20px auto;
  width: 100%;
  margin-bottom: 20px;
}
table.custom-table thead {
  display:none;
}
table.custom-table tr th {
  background: #f5f5f5;
  border: none;
  border-bottom: 1px solid #ccc;
  display: block;
  text-align: center;
  padding: 10px;
  word-break: break-all;
}
table.custom-table tr td {
  background: #fff;
  border: none;
  border-bottom: 1px solid #ccc;
  display: block;
  text-align: center;
  padding: 10px;
  word-break: break-all;
}
table.custom-table tr td:before {
  content: attr(data-ttl);
  border: 1px solid #ccc;
  background: #f5f5f5;
  display: block;
  font-weight: bold;
  margin-bottom: 4px;
  padding: 4px;
}
.column_record {
    border: solid 1px #85c2e0;
    display: block;
    width: 100%;
    margin: auto;
    max-height: 300px;
    overflow-y: scroll;
    padding: 20px;
    background: #fff;
}
ul.column_record li {
    display: block;
    background: none;
    border-bottom: dashed 1px #85c2e0;
    margin-bottom: 10px;
    padding: 0px 0px 5px 0px;
    word-break: break-all;
}
}
/***********************************************/

/*--------------------------------------
l-parts01
---------------------------------------*/
.l-parts01 {
  position: relative;
<!--
  padding: 5rem 0 0 0;
-->
}
.l-parts01::before {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100vw;
  height: calc(100% + 12rem);
  background: url(img/parts03_bg_01.png) repeat-x left bottom;
  background-size: auto 100%;
  content: '';
  z-index: -1;
}
.l-parts01 .float-wrap:nth-of-type(1) {
  width: 84rem;
  margin: 0 auto 2rem auto;
}
.l-parts01 .float-wrap:nth-of-type(2) {
  width: 84rem;
  margin: 0 auto;
}
.l-parts01 .float-wrap .float-img.fl {
  width: 24rem;
}
.l-parts01 .float-wrap .float-img.fr {
  width: 26rem;
}
.l-parts01 .float-wrap p:not([class]) {
  padding: 4rem 0 0 0;
}

.conpanies-wrap {
    display: flex;
    max-width: 1100px;
    margin: 0 auto;
}

.company-wrap {
    width: calc(100% / 3);
    margin: 1rem;
    border-radius: 1.8rem;
    background: #dff6fa;
    padding: 5px;
}

.company-wrap .catch-title span {
    font-size: 2.2rem;
}

.company-wrap .btn-web a {
    width: 95%;
    font-size: 1.6rem;
}

.company-features {
    min-height: 10rem;
}

.l-parts04-list .l-parts04-body::before {
    display: none;
} 

p.btn-internal.additional-banner a {
    width: 45%;
}

.catch-title {
  padding: 0.5rem;
  background: #262a7f;
  border-radius: 1.8rem 1.8rem 0 0;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
.catch-title span {
  font-size: 4rem;
  color: #fa8336;
}
.catch-title span span {
  color: #fa8336;
}

.company-name {
    text-align: center;
    font-size: 1.5rem;
    color: #262a7f;
    font-weight: bold;
	margin:10px 0;
}

.reason {
    text-align: center;
    margin-top: 2.4rem;
    font-size: 1.8rem;
    font-weight: bold;
    color: rgb(3, 113, 113);
}

#index .conpanies-wrap .btn-out{
	width:90%;
	margin: auto;
}

.conpanies-wrap .btn-out a{
	width:90%;
	margin: auto;
}

.lp2_kuchikomi {
    border: solid 1px #dce1e2;
    width: 94%;
    margin: 0 auto 20px;
    overflow-y: scroll;
    padding: 20px;
    background: #fff;
}

.custom-box {
    display: flex;
    justify-content: center;
}



.custom-box dl {
    display: flex;
    flex-direction: column;
    width: 48%;
    margin: 0 auto;
}


.selectionBoxGoogle {
    width: 100%;
    padding: 15px 0;
    margin: 14px 0 0;
}

.selectionBoxGoogle dt {
    background: #142244;
    vertical-align: middle;
    text-align: center;
    padding: 1rem;
    font-size: 1.1rem;
    line-height: 1.2;
    font-weight: bold;
    color: #fff;
}

.selectionBoxGoogle dd {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    padding: 10px;
    font-size: 16px;
    line-height: 1.2;
    font-weight: bold;
    background: #fff;
    min-height: 75px;
}
.selectionBoxGoogle dd span {
    color: #dc405d;
    font-size: 25px;
}



@media screen and (max-width: 599px){

.btn-out,.btn-in{
width:95%;
margin:20px auto 20px auto;
}
.btn-out a,.btn-in a{
width:100%;
padding:10px 20px 10px 10px;
}
#index .btn-in a,
#category .btn-in a,
#page .btn-in a{
display:block;
width:100%;
padding:20px 20px 20px 0;
}
.description-box{
width:100%;
margin:0 0 20px 0;
}
.tbl-rank{
width:10%;
}
.tbl-name{
width:50%;
}
.tbl-fee{
width:40%;
}
#contents li{
margin:0 0 20px 0;
}
#contents li span{
background: #fff78e;
font-size: 16px;
font-weight: bold;
}
#index .btn-tel, #category .btn-tel, #page .btn-tel{
padding: 20px 0 20px 0;
}

iframe {
    width: 100%;
}
#index table.lp2table {
    width: 100%;
}
#index table.lp2table th,
#index table.lp2table td {
    padding: 6px;
}
#index table.lp2table .btn-out a {
    width: 100%;
    font-size: 14px;
    min-width: 130px;
	padding-right: 20px;
}

.conpanies-wrap {
    display: block;
    margin: 0 auto;
}
.company-wrap {
    width:100%;
    margin:1rem 0rem;
    border-radius: 1.8rem;
    background: #dff6fa;
    padding: 5px;
}


}
