@charset "UTF-8";

/*--------------------------------------------------------
解像度1200px以下
--------------------------------------------------------*/

@media only screen and (max-width: 1200px) {
    .site-header-in,
    .global-nav-in,
    .main-body-in,
    .site-footer-in {
        /*width: 96%;コメントアウト*/
        margin: auto;
    }
    .main-image-in,
    .main-image-in-text,
    .main-image-in-text .main-image-in-text-cont,
    .main-image-in-text.wide .main-image-in-text-cont {
        /*width: 100%;
		padding:0 1em;コメントアウト*/
    }
    .main-image-in-text.wide .main-image-in-text-cont {
        max-width: 950px;
    }
    .col1 .section-wrap,
    .col1 .breadcrumbs,
    .col1 .section-wrap.wide .section-in,
    .col1 .section-wrap.wide {
        /*width: auto;コメントアウト*/
    }
    .col1 .breadcrumbs-in,
    .col1 .float-area {
        
    }
    /*吹き出し*/
    .bubble {
        width: 70%;
    }
    .talker {
        width: 25%;
    }
    .bubble .bubble-in:after,
    .bubble .bubble-in:before {
        top: 30px;
    }
    .together .bubble,
    .together .talker {
        width: 100%;
    }
    .together .talker b {
        max-width: 25%;
    }
    .ranking-list04 .rank-box,
    .ranking-list05 .rank-box,
    .post-list01 .post-box,
    .post-list02 .post-box {
        width: 100%;
    }
    .col1 .ranking-list05 .rank-box,
    .col1 .post-list02 .post-box {
        width: 320px;
    }
  
    .back15 {
        padding-bottom: 3%;
    }
    .navbar {
        display: none
    }
    #acMenu dd {
        display: block;
    }
}


/*解像度1200px以下*/


/*--------------------------------------------------------
解像度599px以下
--------------------------------------------------------*/

@media only screen and (max-width: 599px) {
    html,
    body,
    .containr {
        min-width: 0;
    }
    html {
        overflow-x: hidden;
        overflow-y: scroll;
    }
    html,
    body {
        width: 100%;
        -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
    }
    textarea,
    input {
        max-width: 95%;
    }
    input[type="submit"],
    input[type="image"],
    input[type="reset"],
    input[type="button"],
    input[type="file"] {
        max-width: none;
    }
    blockquote {
        position: relative;
        margin: 2em 0;
        padding: 115px 20px 80px;
        background: #eee;
    }
    .site-header-in,
    .global-nav-in,
    .main-body-in,
    .site-footer-in {
        width: 100%;
    }
    .col2 .main-conts,
    .col2 .sub-conts,
    .col2r .main-conts,
    .col2r .sub-conts {
        float: none;
        width: auto;
    }
    /*ヘッダー*/
    .site-header-conts,
    .site-title,
    .header-box {
        display: block;
    }
    .header-box {
        margin-top: 15px;
    }
    .site-header-conts {
        padding-top: 50px;
    }
    .no-gn .site-header-conts {
        padding-top: 0;
    }
    .site-header-conts {
        padding-bottom: 10px;
    }
    .site-title {
        padding: 15px 15px 0;
        font-size: 1.4em;
    }
    .site-header-p {
        padding: 10px 15px 0 15px;
        line-height: 1.2em;
    }
    .site-header-p2 {
        padding: 10px 15px 0 35px;
        line-height: 1.2em;
        background: url(../images/hello_pc__17.jpg) no-repeat 15px 12px;
    }
    .normal-screen .site-title {
        font-size: 2em;
    }
    .normal-screen .lp-catch {
        padding: 15px 15px 0;
        font-size: 1em;
    }
    .header-box {
        margin-left: 0;
        text-align: center;
    }
    .site-header-in {
        position: relative;
        padding-bottom: 1em;
    }
    .global-nav {
        display: none;
    }
    .pcr-spc {
        text-align: center;
		margin-bottom:6px;
    }
    .top-box {
        background: none;
		padding-left: 2%;
		padding-right: 2%;
		padding-bottom: 4%;
    }
    .top-box-in {
        width: 100%;
		padding-bottom: 20px;
    }
    .main-t {
        padding: 20px 1em 30px 1em;
        height: 100%;
        background: url(../images/hello_pc_24_1.jpg);
    }
	
	.box-pace {
		border:#f7b6a5 solid 4px;
		border-radius:8px;
		width: 100%;
		height: auto;
		margin:40px auto ;
		position: relative;
	}
	.box-pace h3 {
		position: inherit;
		font-size: 20px;
		color: #ef5214;
		left: 170px;
		top: -20px;
		height: auto;
		width: 50%;
		text-shadow: 0 2px 0 #fff, 2px 0 0 #fff, 0 -2px 0 #fff, -2px 0 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff, 2px 2px 0 #fff;
		line-height: 1.4em
	}
	.box-pace1 {
		background:#fff5e5 url(../images/pace_1.png) 10px bottom no-repeat;
	}
	
	.box-pace2 {
		background:#fff5e5 url(../images/pace_2.png) 10px bottom no-repeat;
	}
	
	.box-pace3 {
		background:#fff5e5 url(../images/pace_3.png) 10px bottom no-repeat;
	}
	
	.box-pace4 {
		background:#fff5e5 url(../images/pace_4.png) 10px bottom no-repeat;
	}
	
	.box-pace5 {
		background:#fff5e5 url(../images/pace_5.png) 10px bottom no-repeat;
	}
	
	.box-pace6 {
		background:#fff5e5 url(../images/pace_6.png) 10px bottom no-repeat;
	}
	.table-type1 th {
		background: #EAE3D0;
		padding: 12px 8px 12px 12px !important;
		width: 35% !important;
	}
	.table-type1 td {
		padding:16px 12px !important;
	}
	.list form input.short {
		width: 75%;
		margin: 0 0 0.5em 0.3em;
	}
	span.br:before {
		content: "\A" ;
		white-space: pre ;
	}
	.list form input.middium2 {
		width: 65%;
		margin: 0 0 0.8em 0.5em;
	}
	span.sp-left {
		margin-left:5em;
	}
	.sp-select {
		width:95%;
	}
	.form-area .sel1 {
		margin-bottom:0.5em;
	}
	#japan .dt-accompanist {
		padding:25px 0;
	}
	#japan .dt-accompanist-child {
		padding:15px 25px;
	}
	.special .special-box {
		border:none;
		margin:0; 
		padding:0 10px 20px 0;
	}
	.box-ipad3 table{
		border-collapse:collapse;border-spacing:0px;
		clear:both;
		width:100%;
		margin:1em 0 0 0px;
		clear:both;
	}
	h1#bgn {
		margin-top:-1em;
	}
	.main-body .box-ipad5 h3 {
		margin:10px 0 10px 10px;
		font-weight:bold;
	}
	ul#listmenu {
		margin-left:10px;
	}
	.sp-open {
	}
	.sp-open span.op , .sp-open2 span.op2 , .sp-open3 span.op3 {
		float:right;
		margin-top:-20px;
		margin-bottom:15px;
		display:block;
		width:27px;
		height:21px;
	}
	.sp-open .sp-close , .sp-open2 .sp-close , .sp-open3 .sp-close{
		display: none;
		clear:both;
	}
	.sp-open.active .sp-close , .sp-open2.active .sp-close , .sp-open3.active .sp-close{
		display: block;
	}
	.sp-open .op , .sp-open2 .op2 , .sp-open3 .op3 {
		background:url(../images/bt01-b.png) no-repeat center center;
		background-size:20px;
	}
	.sp-open.active .op , .sp-open2.active .op2 , .sp-open3.active .op3 {
		background:url(../images/bt01-t.png) no-repeat center center;
		background-size:20px;
	}
	.footer-info {
		position:relative;
		margin-top:2em;
	}
	.footer-info .info {
		position: absolute;
        right: -4px;
        top: -45px;
        width: 80px;
        height: auto;
	}
	ul.sp-menu-icon {
		float:right;
		xdisplay:none;
		margin-bottom:0;
		margin-left:0;
	}
	.navbar.smaller ul.sp-menu-icon {
		display:block;
	}
	ul.sp-menu-icon li {
		float:left;
		list-style:none;
		margin-bottom:0;
	}
	ul.sp-menu-icon li img {
		width:48px;
	}
	#sp-areamap {
		width:95%;
		margin:10px auto 10px;
		background:url(../images/sp_map_title.png) left top no-repeat;
		background-size: 230px;
	}
	#sp-areamap ul {
		margin:0 0 0 1%;
		padding:0;
	}
	#sp-areamap ul li {
		list-style:none;
		border:1px solid #CCC;
		border-radius: 4px;
		background: #FFF;
		box-shadow: #CCC 1px 2px 0 0;
		margin: 0 1% 5px 0;
		padding: 0;
		width: 32%;
		height: 55px;
		float: left;
		position: relative;
		box-sizing: border-box;
	}
	#sp-areamap ul li.hok {
		float: right;
		margin: 0 2% 5px 66%;
	}
	#sp-areamap ul li a {
		display:block;
		padding:10px 0 30px;
		text-align: center;
		color:#333;
		font-size:14px;
		line-height:1.2em;
		font-weight:bold;
		text-decoration:none;
		background:url(../images/arrow_b.gif) no-repeat center 30px;
	}
	p.main-copy em.kou {
		font-size: 30px;
	}
	.navbar {
		border-bottom:1px solid #EEE!important;
	}
	#w1001 .inner img {float:none; text-align:center; display:none;}
	#w1001 .inner .txt {float:left;width:100%;}
	#w1001 .inner .txt p span {font-weight:bold;color:#12c4f0;}
	
	#w1001 .info {background:#fcf0dd;border:2px solid #ffa328;padding:15px 15px 15px 15px;font-size:14px;color:#333;}
	#w1001 .info img {margin-bottom:15px; width:100%;}
	#w1001 .info ul {margin:5px 0 5px 5px;}
	#w1001 .info ul li {font-size:21px;font-weight:bold;line-height:1.3;}
	
	
	#w1002 p {margin:0 0 30px 0;}
	#w1002 ul {display:block;width:100%;margin-bottom:25px; margin-left:0;}
	#w1002 ul li {display:block;text-align:left;}
	#w1002 ul li p {display:block;font-size:16px;line-height:1.4;margin:15px 2em 0 0.5em;}
	#w1002 ul li.last p{margin-right:0;}
	
	#w1002 a{display:block;width:215px;height:38px;position:relative;overflow:hidden;float:right;}
	#w1002 a:hover{font-size:1px;}
	#w1002 a:hover img{position:relative;top:-38px;}
	
	
	#w1003 ul {margin-bottom:25px;border-collapse: separate;border-spacing: 3px 0; margin-left:0;}
	#w1003 ul li {display:block;width:100%;margin:0 0 20px 0;text-align:left;border:2px solid #f49d3d;padding:0 0 20px 0;vertical-align:top;}
	#w1003 ul li img {
		width:190px;
		margin:0 auto;
	}
	#w1003 ul li:first-child {margin-left:0;}
	#w1003 ul li p {font-size:16px;margin:15px 15px 0 15px;}
	
	#w1004 ul {text-align:center; margin-left:0;}
	#w1004 ul li {margin-bottom:10px; list-style:none;}
	#w1004 ul li img {
		width:100%;
	}
    /*グローバルナビ*/
    /*ここからコメントアウト

	.global-nav{
		position: absolute;
		top: 0;
		width: 100%;
		margin: 0;
		border: 0;
	}
	
	.global-nav ul{
		display: none;
		position: absolute;
		top: 50px;
		left: 10px;
		z-index: 50;
		width: 80%;
		border: 0;
		background: #DC0E1B;

	}
	
	.global-nav-panel{
		display: block;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 10px;
		background: #DC0E1B;
		color: #fff;
		cursor: pointer;
	}

	.global-nav-in li{
		display: list-item;
		width: auto;
		border-right: 0;
		border-bottom: 1px solid #999;
		text-align: left;
	}
	
	.global-nav-in li ul{
		position: static;
		width: auto;
		margin-left: 1em;
	}
	
	.global-nav-in li ul li{
		width: auto;
		border-bottom: 0;
	}
	
	.global-nav-in li a,
	.global-nav li ul li a{
		padding: 1em;
		padding-right: 2em;
		background: url(../images/icon/icon-gn-arw.png) right center no-repeat;
	}
	
	*/
    .w594 {
        width: 100%;
    }
    .top-box4 {
        background: none;
        padding-top: 30px;
    }
    .box-a,
    .box-c {
        float: none;
        width: 100%;
        margin-left: 0;
    }
    .box-b,
    .box-d,
    .box-g,
    .box-h {
        float: none;
        text-align: center;
        width: 100%
    }
    .box-g,
    .box-h {
        margin: 10px 0;
    }
    .back6,
    .back7 {
        background: url(../images/hello_pc_5_72.png) bottom no-repeat;
        width: 100%;
        margin: 20px 0 0 0;
        background-size: contain;
    }
    .site-header-in, .dn {
        display: none !important;
    }
    .spo {
        display: block;
    }
    .spo2 {
        display: block;
        margin: auto;
    }
    .navbar {
        display: block;
        /* Bootstrap Changes */
        border: none;
        width: 100%;
        left: auto;
        right: auto;
		min-height:46px!important;
    }
    .site-title2 {
        margin: 0 0 0 10px;
        padding: 10px 0 5px;
        float: left;
		width:45%;
		font-size:1em!important;
    }
    h1.site-title {
        display: none;
    }
    .site-title2 img {
        width: 95%;
    }
    /*line324-333 imgの拡縮カット*/
    /*以下で代用*/
    img.res1 {
        height: auto;
        max-width: 100%;
    }
    img.res1 {
        max-width: none\9;
        /*IE8への対応*/
    }
    html:not(:target) img.res1 {
        max-width: 100%;
        /*IE9以上への対応*/
    }
    img.res2 {
        height: auto;
        max-width: 80%;
    }
    img.res2 {
        max-width: none\9;
        /*IE8への対応*/
    }
    html:not(:target) img.res2 {
        max-width: 80%;
        /*IE9以上への対応*/
    }
    img.res3 {
        height: auto;
        max-width: 45%;
    }
    img.res3 {
        max-width: none\9;
        /*IE8への対応*/
    }
    html:not(:target) img.res3 {
        max-width: 45%;
        /*IE9以上への対応*/
    }
    img.res4 {
        height: auto;
        max-width: 50%;
        float: right;
    }
    img.res4 {
        max-width: none\9;
        /*IE8への対応*/
    }
    html:not(:target) img.res4 {
        max-width: 50%;
        /*IE9以上への対応*/
        float: right;
    }
	img.res5 {
        height: auto;
        max-width: 95%;
        
    }
    img.res5 {
        max-width: none\9;
        /*IE8への対応*/
    }
    html:not(:target) img.res5 {
        max-width: 95%;
        /*IE9以上への対応*/
      
    }
    img.mx110 {
        height: auto;
        width: 95%;
        max-height: 130px
    }
    img.mx110 {
        max-width: none\9;
        /*IE8への対応*/
    }
    html:not(:target) img.mx110 {
        height: auto;
        /*IE9以上への対応*/
        width: 95%;
        max-height: 130px
    }
    .main-image-in,
    .main-image-in-text,
    .main-image-in-text .main-image-in-text-cont,
    .main-image-in-text.wide .main-image-in-text-cont {
        width: 100%;
        padding: 0 1em;
    }
    .main-image-in-text-cont2,
    .main-image-in-text.wide2 {
        width: 100%;
        padding: 0;
    }
    .m15-tp {
        margin-top: 0!important;
    }
    .m1em {
        margin: 0 1em;
    }
    .p1em {
        padding: 0 1em;
    }
    w60p {
        width: 60%;
    }
    w40p {
        width: 40%;
    }
    .box-u {
        background: url(../images/sp_05_s.jpg) repeat-x top #fc94a3;
        height: 580px;
        background-size: auto 300px;
    }
    .back24 {
        background: url(../images/sp_06.png) no-repeat top left;
        height: 230px;
        background-size: contain;
        position: relative;
    }
    .back24 h3 {
        margin-top: 0;
    }
    .back24 .bn3 {
        position: absolute;
        top: 95%;
        left: 5%;
    }
    .back24 .bn4 {
        position: absolute;
        right: -6px;
        top: 82px;
        width: 96px;
        height: auto;
    }
	.back24 .bn5 {
		position: absolute;
		left: 10px;
		bottom:-155px;
		width: 100%;
	}
	.back26,.back27	{background-size: cover;}
    dl.s1 {
        width: 100%;
        margin-bottom: 10px;
        padding: 0 1em 0 0;
        overflow: hidden;
    }
    dl.s1 dt {
        /*float: left;
        margin-right: 10px;
        padding: 10px 0 0 0;
        font-size: 12px;*/
    }
    dl.s1 dd {
        /*padding: 10px 0;
        border-bottom: none;
        padding-left: 0;
        line-height: 1.4em;
        font-size: 12px;
        margin-left: 35%;
        text-align: left;*/
    }
    dl.s1 dd a {
        /*font-weight: bold;*/
    }
    .rank {
        width: 100%;
        background-size: contain;
        margin: auto;
        margin-bottom: 20px;
    }
    .rank-b {
        width: 100%;
        background-size: contain;
        margin: auto;
    }
    .rank ul {
        padding: 25% 0 0 0;
        margin-left: 15%;
    }
    .rank ul li {
        line-height: 1.5em;
        padding-right: 10px;
    }
    .rank ul li.r1 {
        background: url(../images/rank_1.jpg) left center no-repeat;
        padding-left: 50px;
        font-size: 1em;
    }
    .rank ul li.r2 {
        background: url(../images/rank_2.jpg) left center no-repeat;
        padding-left: 50px;
        font-size: 1em;
    }
    .rank ul li.r3 {
        background: url(../images/rank_3.jpg) left center no-repeat;
        padding-left: 50px;
        font-size: 1em;
    }
    .rank ul li.r4 {
        background: url(../images/rank_4.jpg) left center no-repeat;
        padding-left: 50px;
        font-size: 90%;
    }
    .rank ul li.r5 {
        background: url(../images/rank_5.jpg) left center no-repeat;
        padding-left: 50px;
        font-size: 90%;
    }
    .col1 .section-wrap,
    .col1 .float-area {
        width: 100%;
    }
    .section-in h2,
    .mos h2 {    

    }
    .ms {
        padding-top: 0 !important;
        padding-bottom: 30px !important;
		text-align:center !important;
		line-height: 1.4em !important;
		font-size: 250% !important;
		margin: 0;
        padding: 0 !important;
        text-align: center !important;
    }
    .br-sp {
        display: inline;
    }
	.br-pc {
		display: none;
	}
    .k-head {
        margin-top: 10px !important;
    }
    .k-sec {
		margin-left:5%
    }
    .t-box {
        height: 115px;
        overflow: hidden;
    }
    .clear-pc {
        clear: none;
    }
    .dtl2 a,
    .dtl3 a {
        width: 90%;
    }
    .dtl3 a {
        font-size: 16px;
    }
    .dtl4 a {
        width: 100%;
    }
    .top-box5 {
        margin: 0 1em;
        background: #FFFFFF none;
        padding: 10px 10px 30px 10px;
    }
    .top-box5-in {
        margin: 1em;
        width: 90%
    }
    .m0-b-sp {
        margin-bottom: 0 !important;
    }
    .safe,.safe2 {
        /*width: 100%;
        margin: 0 auto 50px auto;
        padding-left: 0;*/
		padding-top: 0;
    }
    .safe li,.safe2 li {
        /*list-style: none;
        margin-bottom: 5px;
        padding-left: 0px;
        height: auto;
        padding: 4px 0 5px 54px;
        line-height: 1.6em;*/
		padding-top: 0;
		font-size: 18px;
    }
	.safe li:before{
		top: 30%;
		left: -30px;
		font-size: 130%;
		width: 30px;
		height: 30px;
		line-height: 28px;
	}
	
    .safe li span,.safe2 li span {
        font-size: 18px;
    }
    .safe li span.safeg,.safe2 li span.safeg {
        /*color: #ff9933;*/
    }
    .safe li.s1,.safe2 li.s1 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_03.png);
        background-size: 40px auto;
    }
    .safe li.s2,.safe2 li.s2 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_06.png);
        background-size: 40px auto;
    }
    .safe li.s3,.safe2 li.s3 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_08.png);
        background-size: 40px auto;
    }
    .safe li.s4,.safe2 li.s4 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_10.png);
        background-size: 40px auto;
    }
    .safe li.s5,.safe2 li.s5 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_12.png);
        background-size: 40px auto;
    }
    .safe li.s6,.safe2 li.s6 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_14.png);
        background-size: 40px auto;
    }
    .safe li.s7,.safe2 li.s7 {
        background-repeat: no-repeat;
        background-position: left top;
        background-image: url(../images/safe_7_16.png);
        background-size: 40px auto;
    }
    .top-box6 {
		min-height: 184px;
	}
    
    .top-box6 h3 {
        font-size: 28px;
        font-weight: 400;
        color: #FFF;
        margin-top: 0;
        padding: 0.7em 1em 1em 1em;
    }
    .top-box6 h3 span {
        font-size: 38px;
        color: #FFFD74;
    }
    .voice-t1 {
        background: url(../images/sp_19_t.png) no-repeat left top;
        width: 100%;
        background-size: 84px 104px;
        min-height: 295px;
    }
    .voice-t1 div {
        left: auto;
        top: auto;
        margin: 103px 0 0 0;
        color: #FFF;
        width: 100%;
        background: #F16F9C;
        border-radius: 12px;
        padding: 0;
		height:190px;
    }
    .voice-t1 h3,
    .voice-t2 h3,
    .voice-t3 h3 {
        font-size: 21px;
        padding: 0.2em 0.3em 0 0.3em;
        margin: 10px 0 10px 20px;
        text-indent: -20px;
    }
    .voice-t1 p,
    .voice-t2 p,
    .voice-t3 p {
        margin: 0 0 10px 35px;
    }
    .voice-t2 {
        background: url(../images/sp_20_t.png) no-repeat right top;
        width: 100%;
        min-height: 270px;
        background-size: 84px 104px;
    }
    .voice-t2 div {
        left: auto;
        top: auto;
        color: #FFF;
        width: 100%;
        margin: 103px 0 0 0;
        background: #48AB8D;
        border-radius: 12px;
        padding-bottom: 10px;
        height: auto;
    }
    .voice-t3 {
        background: url(../images/sp_21_t.png) no-repeat left top;
        width: 100%;
        min-height: 270px;
        background-size: 84px 104px;
    }
    .voice-t3 div {
        left: auto;
        top: auto;
        color: #FFF;
        width: 100%;
        margin: 103px 0 0 0;
        background: #EA5404;
        border-radius: 12px;
        padding-bottom: 10px;
        height: 160px;
    }
    .back6 {
        background: none;
    }
    .back6t {
        margin-bottom: 10px;
        border-bottom-right-radius: 12px;
        border-bottom-left-radius: 12px;
    }
    .back6-in {
        padding: 1em;
    }
    .back8,
    .back19 {
        background-repeat: repeat-x;
        background-position: bottom;
        background-image: url(../images/sp_39.jpg);
    }
    .back9 {
        margin: 0 10% 0 0;
    }
    .back12 {
        background-repeat: repeat-x;
        background-position: top;
        background-image: none;
        background-color: #E3F4EE;
    }
    .top-box7,
    .top-box9 {
        background-image: none;
        padding: 0;
        height: 130px;
        width: 100%;
        margin: auto;
    }
    .top-box7 h3 {
        font-size: 26px;
        font-weight: bold;
        color: #FFF;
        line-height: 1.4em;
        padding: 1em;
    }
    .top-box8 h3 {
        font-size: 30px;
    }
    .top-box9 h3 {
        font-size: 24px;
        font-weight: bold;
        color: #FFF;
        line-height: 1.4em;
        padding: 0.5em 1em;
    }
    .box-j {
        width: 20%;
        margin: 0;
    }
    .box-k {
        float: none;
        margin: 10px 0 0 0;
        width: 100%;
    }
    .box-m,
    .box-o {
        float: left;
        width: 100%;
        margin: 0;
    }
    .box-k h4 {
        margin: 40px 0 25px 25%;
        font-size: 24px;
        line-height: 1.4em;
    }
    .sp-t {
        margin-top: 60px !important;
    }
    .box-l {
        border-bottom-right-radius: 8px;
        border-bottom-left-radius: 8px;
        margin-bottom: 20px;
        padding-bottom: 1em;
    }
    .box-v {
        background: url(../images/sp_29.jpg) no-repeat;
        background-size: contain;
        width: 100%;
        margin: 0;
        position: relative;
        height: 260px;
    }
    .box-v h3 {
        position: absolute;
        font-size: 24px;
        color: #ef5214;
        left: 30px;
        top: 20px;
        width: 80%;
    }
    .back17 {
        background: #FFF;
        margin: 0;
    }
    .back18 {
        background: #FFF;
        margin: 0;
        padding: 0;
    }
    .box-s {
        background: #F7F4ED url(../images/hello_pc_6_07.jpg) no-repeat bottom;
        width: 100%;
        background-size: contain;
        height: 300px;
        margin: auto;
    }
    .box-s ul {
        font-size: 16px;
        padding: 1em 0;
        margin: 0 0 0 1em;
    }
    .box-s ul li {
        list-style: none;
        background: url(../images/dot1.gif) no-repeat left 10px;
        padding-left: 26px;
        padding-bottom: 0.5em;
    }
    .box-s ul li span {
        font-size: 22px;
        color: #E7286B;
        font-weight: bold;
    }
    #acMenu dl {
        margin-bottom: 0;
    }
    #acMenu dt {
        display: block;
        cursor: pointer;
        background-repeat: no-repeat !important;
        background-position: 95% !important;
        background-image: url(../images/sp_arrow_2.png) !important;
        background-size: 5% !important;
    }
    #acMenu dd {
        /*display: none;*/
    }
    #acMenu dt.active {
        background-repeat: no-repeat !important;
        background-position: 95% !important;
        background-image: url(../images/sp_arrow_1.png) !important;
        background-size: 5% !important;
    }
    #acMenu .open {
        display: block;
        background-image: url(../images/sp_arrow_2.png);
    }
    .dt-accompanist {
        padding: 25px 0;
        /*margin-right: 1em;
        margin-left: 1em;*/
        font-size: 100%;
    }
    .dt-accompanist div {
        width: 100%;
        margin: 0 1em;
    }
    .dt-accompanist-child {
        padding: 1em;
        font-size: 100%;
    }
    .dd-menu {
        /*margin-right: 1em;
        margin-left: 1em;*/
        font-size: 100%;
    }
	.dd-menu ul {width:100%;}
	
	.dd-menu ul li {
		margin-bottom:0.8em;
	}
	
    .top-box10 {
        background-position: left bottom;
        padding: 0;
        height: 180px;
        width: 100%;
        margin: auto;
        background-size: 30% !important;
    }
    .top-box10 h3 {
        font-size: 200%;
        font-weight: 700;
        color: #FFF;
        line-height: 1.4em;
        padding: 0.5em 0.5em 0.5em 1em;
        text-indent: 0;
    }
    .back20 {
        background-position: center;
        background-size: contain;
        margin: 0;
        border-bottom-right-radius: 12px;
        border-bottom-left-radius: 12px;
        padding: 2em 0;
    }
    .back21 {
        background: #FFF;
        margin: 0;
    }
    .p50-b-pc {
        padding-bottom: 0px !important;
    }
    .p50-b-sp {
        padding-bottom: 50px !important;
    }
    .p100-b-pc {
        padding-bottom: 0px !important;
    }
     
    .site-footer-nav2 li {
        padding: 0;
    }
    .main-body {
        margin: 0;
    }
    .smaller img.roll-img-a {
        display: none;
    }
    .smaller img.roll-img-b {
        display: block;
        margin-top: 2%;
        width: 100%;
        height: auto;
    }
    .smaller .roll-img-c {
        display: block;
        float: left;
        margin-top: 5px;
        position: relative;
        width: 64%;
        left: auto;
        right: auto;
        display: flex;
        justify-content: center;
    }
    .smaller .roll-img-c img {
        max-height: 43px;
        width: auto;
    }
    .smaller {
        height: 52px;
    }
    .navbar.smaller .sb-toggle-right {
        /*width: 58px;*/
        max-height: 19px;
        float: right;
        padding: 10px;
        margin: 1%;
        background-color: #C7BEA1;
        border-radius: 4px;
        border: 2px solid #FFF;
    }
    .navbar-default.smaller {
        background:#FFF;
    }
    .border-r {
        border-right: none;
        height: auto;
    }
    p.main-copy {
        font-size: 24px;
    }
    p.main-copy span {
        font-size: 40px;
    }
    .m1em {
        margin: 0;
    }
    .al-r-pc {
        text-align: center;
    }
    .safe-7 {
        font-size: 50px;
    }
    .safe-t {
        font-size: 25px;
        text-align: center;
        font-weight: bold;
    }
    .df1 {
        font-size: 26px;
    }
    .site-footer-nav2 li {
        margin: 0;
    }
    .site-footer-nav2 img.res2 {
        margin: 0 auto 5px auto;
    }
    .page-top {
        right: 10px;
    }
    html.sb-active-right p.page-top {
        display: none !important;
    }
    .col3-wrap .col {
        width: 100%;
		margin-left:0;
    }
    .icon-a5 {
        left: 0;
        top: 0;
        width: 96%;
        position: static;
        padding: 2%;
        background: #FFF;
    }
    /* Googleカスタム検索のデザインをカスタマイズ */
    /* 設置位置や全体幅は .icon-a5 側のほうで調整 */
    #gsc-sp .gsc-control-cse,
    #gsc-sp .gsc-control-cse-ja,
    #gsc-sp .gsib_a {
        margin: 0 !important;
        padding: 0 !important;
    }
    /* テキスト入力フォームとボタンの位置 */
    #gsc-sp table.gsc-search-box td,
    #gsc-sp table.gsc-search-box input {
        vertical-align: top !important;
    }
    /* テキスト入力フォーム */
    #gsc-sp input[type="text"] {
        /*	width:100px !important;*/
        padding-right: 28px !important;
        border: 1px solid #d2d2d2/*#dddddd*/
        !important;
        height: 29px !important;
    }
    #gsc-sp input[type="text"]:focus {
        border: 1px solid #d7d2c1/*#008ee1*/
        !important;
        outline: 0;
        /*safariの自動フォーカスを切る */
    }
    #gcs-sp .gsc-search-box .gsc-input > input:focus,
    .gsc-input-box-focus {
        box-shadow: none !important;
        /*firefoxの自動フォーカス時の影を切る */
    }
    .gsc-input-box {
        border: none !important;
    }
    /* テキスト入力フォームの影を消す */
    #gsc-sp #gsc-iw-id1 {
        border: none !important;
    }
    /* テキスト入力フォームの背景画像位置調整 */
    #gsc-sp #gs_tti0 input {
        background-position: 5px 5px !important;
    }
    /* ボタンのサイズと色 */
    #gsc-sp input.gsc-search-button {
        padding: 7px !important;
        /* 13px四方の虫メガネアイコンに余白をつけることでサイズの調整 */
        background: #d7d2c1 !important;
        background: -ms-linear-gradient(top, #d7d2c1 0%, #d7d2c1 100%);
        /* IE10+ */
        filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#d7d2c1', endColorstr='#d7d2c1', GradientType=0);
        /* IE6-9 */
        border: 1px solid #d7d2c1 !important;
    }
    /* ボタンの位置調整と角丸 */
    #gsc-sp .gsc-search-button {
        margin: 1px 0 0 19px !important;
        border-radius: 3px;
    }
    /* 入力時に出る「×」ボタンの位置調整 */
    #gsc-sp .gsib_b a {
        position: absolute;
        top: 3px;
        left: -5px;
    }
    /* 入力時に出る×ボタン -- Firefox位置調整 -- */
    #gsc-sp .gsib_b span {
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        padding: 2px 5px 0 0;
    }
    #acMenu2 dt {
        display: block;
        cursor: pointer;
        background: url(../images/sp_btn_1.jpg) no-repeat 90%;
        background-size: 20px;
        min-height: 1.5em;
        padding: 1em 2.5em 1em 1em;
        background-color: #FBFAF8;
        color: #010;
        font-weight: normal;
        border-top: 1px solid #EEE8D8;
        border-bottom: 1px solid #EEE8D8;
    }
    #acMenu2 dd {
        /*background:#F9F6F0;*/
        display: block;
    }
    #acMenu2 dd {
        background: #F9F6F0;
        display: none;
        overflow: hidden;
        /*iphoneタッチ時消えるbug回避*/
    }
    #acMenu2 dt.active {
        background-image: url(../images/sp_btn_2.jpg);
        background-color: #FBFAF8;
    }
    .psp {
    padding-bottom: 50px;
}
    
    .m50bp-m10bs {
    margin-bottom: 10px;
}
.modal-content {
    position:fixed;
    display:none;
    z-index:2;
    width:100%;
    margin:0;
    padding:1em;
    border:2px solid #aaa;
    background:#fff;
}

.modal-content p {
    margin:0;
    padding:0;
}

.modal-overlay {
    z-index:3;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    
}

.modal-open {
    color:#00f;
    text-decoration:underline;
}

.modal-open:hover {
    cursor:pointer;
    color:#f00;
}

.modal-close {
    color:#00f;
    text-decoration:underline;
}

.modal-close:hover {
    cursor:pointer;
    color:#f00;
}

   table.table-data,
    table.table-data tbody,
    table.table-data tr,
    table.table-data th,
    table.table-data td{
        display:block;
    }

     table.table-data,
     .table-data th,
     .table-data td{
        border: none !important;
    }

    table.table-data tr{
        border: 1px solid #eee;
    }

    table.table-data tbody,
    table.table-data th,
    table.table-data td{
       
    }


    table.table-data thead{
        display:none;
    }

#slider {margin-left:10px;}

	table.top_matrix {
		border-spacing: 2px; /* 補足：PCは5px、スマホは2pxにてブレイクポイント切り替えしてください(この行は 2px と書いているとおり、スマホ用です) */
	}
	table.top_matrix th {
		font-size: 2.8vw;
	}
	table.top_matrix th .aside {
		font-size: 1.8vw;
	}
	table.top_matrix td {
		font-size: 2.6vw;
	}
	table.top_matrix tr.h_line td {
		font-size: 3vw;
	}
	table.top_matrix tr.h_line td .aside {
		font-size: 2vw;
	}
	table.top_matrix tr.m_line td .aside {
		font-size: 1.8vw;
	}
	table.top_matrix tr.m_line td.current {
		font-size: 4vw;
	}
	table.top_matrix tr.m_line td.current .aside {
		font-size: 2.6vw;
	}

.top_matrix_back { height:auto;
background:url(../images/hello_pc_5_02.jpg) 0 top no-repeat ;
background-size:80% auto;
padding-top: 120px;}

.p5-b-sp { padding-bottom:5px !important;}
.p10-b-sp { padding-bottom:10px !important;}

.left,.right {
        float: none;
        display: block;
        margin-right: auto !important;
        margin-left: auto !important;
        text-align: center;
    }
	
.main-body h3.center {margin:auto !important;
padding:10px !important;} 	

.bx-controls-direction {
display:none;
}

    /*ここまで*/
    /*Retina（高解像度）ディスプレイ用*/
    @media screen and (-webkit-min-device-pixel-ratio:2),
    (min-resolution: 2dppx) {
        .global-nav-in li a,
        .global-nav li ul li a {
            background: url(../images/icon/icon-gn-arw@2x.png) right center no-repeat;
            -webkit-background-size: 27px 18px;
            background-size: 27px 18px;
        }
    }
    @media screen and (max-width: 450px) {
        .rank ul {
            padding: 25% 0 0 0;
            margin-left: 8%;
        }
    }
    /* iPHone4,iPhone5,iPhone5sのみ */
    @media screen and (max-width: 374px) {
        p.main-copy {
            font-size: 20px;
        }
        p.main-copy span {
            font-size: 36px;
        }
        .t-box h3 {
            font-size: 26px
        }
        .t-box2 h3 {
            font-size: 20px
        }
        .box-v h3 {
            font-size: 21px;
        }
        .box-s ul li span {
            font-size: 20px;
        }
        .top-box9 h3 {
            font-size: 20px;
            padding: 1em;
        }
        .top-box10 h3 {
            font-size: 180%;
            font-weight: 600;
            padding: 1em;
        }
        .voice-t1,
        .voice-t2 {
            min-height: 230px;
        }
        .voice-t3 {
            min-height: 250px;
        }
        .voice-t1 div,
        .voice-t2 div,
        .voice-t3 div {
            top: 100px;
        }
        .voice-t1 h3,
        .voice-t2 h3,
        .voice-t3 h3 {
            font-size: 18px;
        }
        .smaller .roll-img-c {
            /*display: block;*/
            width: 64%;
        }
        .sp-t {
            margin-top: 50px !important;
        }
        .box-k h4 {
            font-size: 21px;
        }
        .voice-t1 {
            min-height: 270px;
        }
        .voice-t2 {
            min-height: 250px;
        }
        .voice-t3 {
            min-height: 280px;
        }
        .voice-t1 div {
            left: auto;
            top: auto;
            margin: 103px 0 0 0;
            color: #FFF;
            width: 100%;
            background: #F16F9C;
            border-radius: 12px;
            padding: 0;
        }
        .voice-t2 div {
            left: auto;
            top: auto;
            color: #FFF;
            width: 100%;
            margin: 103px 0 0 0;
            background: #48AB8D;
            border-radius: 12px;
            padding-bottom: 10px;
            height: auto;
        }
        .voice-t3 div {
            left: auto;
            top: auto;
            color: #FFF;
            width: 100%;
            margin: 103px 0 0 0;
            background: #EA5404;
            border-radius: 12px;
            padding-bottom: 10px;
            height: auto;
        }
        .voice-t1 p,
        .voice-t2 p,
        .voice-t3 p {
            margin: 0 0 10px 35px;
        }
        .top-box6 {
	background-size: auto 200px;
	height: 200px;
}

.top-box6 h3 {
    padding:  1em;
}

.top_matrix_back { height:auto;
background:url(../images/hello_pc_5_02.jpg) 0 top no-repeat ;
background-size:80% auto;
padding-top: 100px;}
    dl.s1 dd {
   
        /*margin-left: 45%;*/
    }

    }
    /*--------------------------------------------------------
	メインビジュアル
	--------------------------------------------------------*/
    .main-image-in-text-cont {
        padding: 1em;
    }
    .main-copy {
        margin-bottom: 10px;
        font-size: 2em;
        text-align: center;
    }
    .sub-copy {
        font-size: 1em;
    }
    .section-wrap,
    .col1 .section-wrap.wide {
        padding: 0;
        border: 0;
    }
    .col1 .section-wrap {
        padding: 0;
    }
    .section-wrap .section-in,
    .col1 .section-wrap.wide .section-in,
    .float-area,
    .col1 .float-area {
        padding: 15px;
    }
    .col1 .sub-conts .section-wrap .section-in {
        padding: 0 20px 30px;
    }
	.sub-conts .section-wrap .section-in {
		width : 80%;
		padding:0 0 30px;
	}
	.sub-conts .section-wrap .section-in img {
		width:100%;
	}
	.sub-conts .section-wrap .section-in .line img {
		width: auto;
	}
	
    .section-wrap .section-in .section-title,
    .section-wrap .article-header .section-title {
        xmargin: -15px 0 0;
        padding: 15px;
        font-size: 24px;
    }
    .sub-conts .section-wrap .section-in .section-title,
    .sub-conts .section-wrap .article-header .section-title,
    .col1 .sub-conts .section-wrap .section-in .section-title,
    .col1 .sub-conts .section-wrap .article-header .section-title {
        margin: 0 -20px;
        padding: 10px 10px 0 20px;
    }
    .main-body h1,
    .main-body h2,
    .main-body h3,
    .main-body h4,
    .main-body h5,
    .main-body h6 {
        margin: 35px 0 20px;
    }
    .main-body h1,
    .main-body h2 {
        text-align: left;
    }
    /*パンくずリスト*/
    .breadcrumbs-in {
        margin-bottom: 1em;
        padding: 0 1em;
    }
    .col1 .breadcrumbs-in {
        width: auto;
    }
    /*フッターナビ*/
    .site-footer-nav {
        display: block;
        text-align: left;
    }
    .site-footer-nav li,
    .site-footer-nav li:first-child {
        display: list-item;
        margin-left: 20px;
    }
    /*コピーライト*/
    .copyright {
		text-align: left;
        padding: 15px 70px 15px 15px;
    }
    .page-top img {
        width: 100%;
    }
    /*最新情報*/
    .news .news-thumb {
        float: none;
        text-align: center;
    }
    .main-body .news-title {
        font-size: 1.25em;
    }
    /*テーブル（左端がth、右側がtdの場合にスマホ表示で立て並びに変化）*/
    .table-block,
    .table-block thead,
    .table-block tbody,
    .table-block tfoot,
    .table-block tr,
    .table-block th,
    .table-block td {
        display: block;
    }
    .table-block {
        border-bottom: 1px solid #959595;
    }
    .table-block th,
    .table-block td {
        float: left;
        width: 100%!important;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
    .table-block:after {
        content: '';
        display: block;
        clear: both;
        height: 0;
    }
    .table-scroll:before {
        content: "※はみ出ている場合、横にスクロールできます。"
    }
    /*バナーエリア*/
    .banner-list li {
        text-align: center;
    }
    .banner-list li,
    .col1 .banner-list li,
    .main-conts .banner-list li {
        display: list-item;
        margin-left: 0;
    }
    /*ボタン*/
    .btn-area {
        text-align: center;
    }
    .btn {
        float: none;
        margin-right: 0;
        margin-left: 0;
    }
    .btn-area .btn {
        display: block;
        margin-right: auto;
        margin-left: auto;
    }
    .btn-green,
    .btn-blue,
    .btn-orange,
    .btn-red {
        padding: 25px;
    }
    .btn-form01 {
        padding: 25px 40px;
    }
    .btn-form02 {
        padding: 25px 20px;
    }
    /*ソーシャルボタン*/
    .sns-list li {
        margin-right: 1em;
        margin-left: 0;
    }
    /*登場人物紹介２*/
    .col1 .cast-box02 .cast {
        min-height: 0;
        padding-top: 210px;
    }
    .col1 .cast-box02 .cast-name,
    .col1 .cast-box02 .cast-profile {
        padding-left: 0;
    }
    .col1 .cast-box02 .cast .cast-headshot {
        width: 100%;
    }
    /*ランキング*/
    .rank-thumb {
        float: none;
    }
    .sub-conts .ranking-list03 .rank-thumb,
    .col2 .sub-conts .ranking-list03 .rank-thumb,
    .col2r .sub-conts .ranking-list03 .rank-thumb {
        float: left;
    }
    .col1 .ranking-list04 li,
    .col1 .ranking-list05 li,
    .col1 .post-list01 li,
    .col1 .post-list02 li {
        display: block;
        margin-right: auto;
        margin-left: auto;
    }
    .comparative-list01 .rank-thumb,
    .comparative-list02 .rank-thumb {
        display: inline-block;
        float: none;
    }
    .ranking-list04 .rank-box,
    .ranking-list05 .rank-box,
    .post-list01 .post-box,
    .post-list02 .post-box {
        width: 320px;
    }
    /*関連記事*/
    .related-articles-thumbs02 li {
        float: none;
        width: auto;
        margin-left: 0;
    }
    .eye-catch {
        float: none;
        margin: 0 0 1em;
        text-align: center;
    }
    .icon-a1,
    .icon-a2,
    .icon-a3,
    .icon-a4 {
        visibility: hidden;
    }
    .w594 {
        width: 100%;
    }
    .top-box4 {
        background: none;
        padding-top: 30px;
    }
    .back1 {
        background: url(../images/hello_pc_2_03.jpg) repeat-x;
        height: 600px;
    }
	
	.rank-thumb2 {
	float: none;
	text-align:center;
	margin-left: 0;
}
	
.sv-box {
margin-top:30px;}


.sv-box h3{font-size:5.5vw;
top:-40px;} 

.sv-box h4{margin-top:30px;font-size:4.2vw;} 

.sv-box .photo {float:none; text-align:center;
margin-top:20px;
margin-bottom:20px;}

div.sv-txt {
    width: auto;
    background: #fff;
    margin: 0;
	padding:0;
    height: auto;
}

div.sv-txt dl dt {
    margin: 0;
    padding: 6px 0 5px 5px;
    display: block;
    width: auto;
    height: 28px;
}
div.sv-txt dl dt.aka {
    
}
div.sv-txt dl dt {
    margin: 0;
    padding: 6px 0 5px 5px;
    display: block;
    height: 28px;
}


div.sv-txt dl dd {
    padding:0;
    margin: 10px;
    line-height: 1.4em;
    border-bottom: 1px solid #eee;
}

.al-c-pc {text-align:left;}

.table-type1 th { 
width:auto !important;}

.sp-side {width:100% !important;}

.school-6,.school-10 {margin:1em !important;
width:92% !important;
box-sizing: border-box !important;}



#newsInfo {
margin:1em !important;
}

.sch_btn { 
width:auto;
background: #F06797 url(../images/search_btn_02.png) no-repeat 12px 15px;
background-size:15%;
}

.sch_2 {
	position: absolute;
	left: 75%;
	top: 5%;
	
}

img.sch_2 {width:20%;
height: auto;}

.sch_3 {
	color: #FFF !important;
	font-size: 32px;
	padding:0 0 10px 20%;
	margin:0;
	line-height:1em !important;
}


.sch_3 span {font-size:26px;}

.sch_4 {
	width: auto;
	margin:0 2px 0 2px;
	background:#FFF;
	padding: 15px;
	box-sizing: border-box;
}

.sch_4 span {color:#F06797;}

.sch_5 {
	float: none;
	color:#fff !important;
	margin:0 0 0 20% !important;
	padding-top:10px;
}

.mos_btn {
	width: auto;
	background-position: 12px 15px;
	background-image: url(../images/mos_2.jpg);
	background-size:30%;
}

.mos_1 {
	color: #FFF !important;
	font-size: 24px;
	padding: 10px 10px 5px 40%;
	margin: 0;
	background:url(../images/mos_3.jpg) no-repeat 35% 18px;
	line-height:1.4em;
	
}

.nv-btm {margin-bottom:10px !important;}

.mos_2 {
	padding: 15px 20px 5px 20px;
}

div.pull-right{
float: none !important;
text-align: center;
}

nav.smaller {height:auto !important;}

.mos-bt {
	margin: 10px 0!important;
}

a.button-sub3 {width:100%;}

.voice-ttl {
	border-bottom: #EAE3D0 solid 3px;
}
.voice-ttl h3 {
	position:relative;
	margin: 30px 0 0 5px;
	line-height:1.4em;
}
.voice-ttl h3 span {
	position: static;
	
}

.voice-ttl h3 span:before {
	content: "\A" ;
	white-space: pre ;
}

.al-c-sp {text-align:center;
}

.m20-b-pc {margin-bottom:0 !important;}

#kaikou table.school-6 {
	width:100%!important;
	margin:0!important;
	font-size:1em!important;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	word-break: normal;
	word-wrap: break-word;
}
#kaikou table.school-6 th {
	text-align:center!important;
	padding:1em 0!important;
	width:20%!important;
	font-size:0.9em!important;
}
#kaikou table.school-6 td {
	text-align:center!important;
	padding:0.2em!important;
	vertical-align:middle;
}
/*
#kaikou table.school-6,
#kaikou table.school-6 tbody,
#kaikou table.school-6 tr,
#kaikou table.school-6 th,
#kaikou table.school-6 td{
	display:block;
}
*/

/*
#kaikou table.school-6,
#kaikou table.school-6 th,
#kaikou table.school-6 td{
	border: none !important;
}

#kaikou table.school-6 tr{
	border: 1px solid #eee;
}

#kaikou table.school-6 tbody,
#kaikou table.school-6 th,
#kaikou table.school-6 td{	
}
*/

table.school-10,
table.school-10 tbody,
table.school-10 tr,
table.school-10 th,
table.school-10 td{
	display:block;
	margin:0em !important;
	width:100% !important;
	border-bottom:none;
}
table.school-10 {
	border-bottom:none;
}
table.school-10 th {
	padding: 1em 1em 0;
	margin: 0;
	color: #fff;
	width:90% !important;
}
table.school-10 td {
	padding: 1em;
	font-size: 16px;
	border-bottom:none;
	width:95% !important;
}
table.school-10 th span {
	font-size: 14px;
	padding: 0.3em 0.6em;
	background-color: #DF5D5D;
	border-radius: 5px;
}

.box-lesson {
	padding: 10px 10px 1px;
	height:auto;
	line-height:1.9;
	background: url(../images/form-telbox_sp.png) no-repeat right center #ED6895 !important;
	margin-bottom:0px;
}
.section-in .box-lesson p.preopen {
	padding:0px 0 10px;
}
.school-detail-area {
	margin-top:-20px;
}
.line0 {
	line-height:1!important;
}
p.cam-txt {
	width:95%;
	font-size:.8em;
	padding:.4em .8em 0;
}
.main-conts .spot h2 {
	color:#FFF;
	margin-top:0px;
	margin-bottom:15px;
	font-weight:bold;
	font-size:1.4em;
	padding:8px 15px 15px 15px;
	background:#FF7931;
}
.main-conts .spot ul {
	margin:0 10px 0 25px!important;
}
#japan.main-conts .spot {
	position:relative;
}
#japan.main-conts .spot .imgs {
	position:absolute;
	right:40px;
	top:-46px;
	display:none;
}

}
/*解像度736px以下*/


/*--------------------------------------------------------
解像度480px以下
--------------------------------------------------------*/

@media only screen and (max-width: 480px) {
    ここまで/*段組*/
    .col4-wrap,
    .col3-wrap,
    .col2-wrap {
        margin: 0 0 1em;
    }
    .col4-wrap .col,
    .col4-wrap .col_2of4,
    .col4-wrap .col_3of4,
    .col3-wrap .col,
    .col3-wrap .col_2of3,
    .col2-wrap .col {
        float: none;
        margin-left: 0;
    }
    .col4-wrap .col,
    .col4-wrap .col_2of4,
    .col4-wrap .col_3of4,
    .col3-wrap .col,
    .col3-wrap .col_2of3,
    .col2-wrap .col {
        width: auto;
    }
    .left,
    .right {
        float: none;
        display: block;
        margin-right: auto;
        margin-left: auto;
        text-align: center;
    }
    .ranking-list04 .rank-box,
    .ranking-list05 .rank-box,
    .post-list01 .post-box,
    .post-list02 .post-box,
    .col1 .ranking-list05 .rank-box,
    .col1 .post-list02 .post-box {
        width: 100%;
    }
    .icon-a1,
    .icon-a2,
    .icon-a3,
    .icon-a4 {
        visibility: hidden;
    }
    .w594 {
        width: 100%;
    }
}

@media only screen and (max-width: 599px) {
	
	/*-----------------
	サテライト用デザイン追加
	----------------- */
		
	/* 背景を下まで伸ばす */
	/*.box-u{
		overflow: hidden;
	}
	
	.box-u:after{
		content: "";
		display: block;
		clear: both;
		overflow: hidden;
	}*/

	/* 上部バナー */
	.pc-banner{
		display: none;
	}
	
	.sp-banner{
		display: block;
		margin-bottom: 40px;
	}
	
	.sp-banner img{
		width: 100%;
	}
	
	/* 背景 */
	.main-bg1{
		padding-top: 20px;
	}
	
	.main-bg2{
		padding-top: 20px;
		padding-bottom: 70px;
	}
	
	/* タイトル */
	.main-title-bg{
		margin-left: 2%;
		margin-right: 2%;
	}
	
	h2.main-title{
		line-height: 150%;
		padding-left: 12%;
		font-size: 150%;
	}
	
	h2.main-title:after{
	    border-width: 0 0 30px 30px;
	}
	
	/* こんな教室です */
	.school-photo{
		margin: 0 auto;
	}
	
	.school-photo li{
		width: 30%;
		margin-right: 2%;
		border: #ffebce 3px solid;
	}
	
	.school-photo li:last-child{
		margin-right: 0;
	}
	
	/* 教室の情報 */
	.main-info-bg{
		margin: 0 2%;
	}
	
	.main-info-bg{
		padding: 2%;
	}
	
	.main-info{
		padding: 3%;
	}
	
	.main-info h3{
		font-size: 130%;
		margin-top: 2%;
		padding-left: 50px;
	}
	
	.main-info h3:before{
		top: 30%;
		width: 30px;
		height: 30px;
		line-height: 30px;
	}
	
	.main-info h3:after{
		top: 30%;
		left: 24px;
	}

	.main-info-left{
		width: 100%;
		padding-left: 0;
	}
	
	.main-info-right{
		width: 100%;
	}
	
	.main-info-left dd{
		padding-bottom: 4%;
	}
	
	.main-info-left table {
		border: none;
	}
	.main-info-left table thead {
		display: none;
		
	}
	.main-info-left table tr {
		border-top: 1px solid #ffcb00;
		display: block;
		margin-bottom: 20px;
	}
	.main-info-left table td {
		clear: both;
		border-right: 1px solid #ffcb00;
		display: block;
		text-align: left;
		margin-bottom: 1px;
		padding: 10px;
		height: 20px;
	}

	.main-info-left table td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		background: #ffcb00;
		color: #000;
		width: 30%;
		height: 20px;
		margin: -10px 20px 0 -10px;
		padding: 10px;
	}

	.main-info-left table .td2{
		height: 50px;
	}

	.main-info-left table .td3{
		height: 80px;
	}

	.main-info-left table .td4{
		height: 110px;
	}

	.main-info-left table .td2::before,
	.main-info-left table .td3::before,
	.main-info-left table .td4::before{
		height: inherit;
	}
	
	.btn-goolmaps a{
		width: 70%;
	}
	
	.google-maps {
		height: 0;
		overflow: hidden;
		padding-bottom: 80%;
		position: relative;
	}
	
	.google-maps iframe {
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
	}
	
	/* 料金 */
	.bg-white{
		margin: 2%;
		padding: 2%;
	}
	
	.bg-white table {
		width: 100%;
	}
	
	.bg-white table thead {
		display: none;
	}
	
	.bg-white table tr {
		display: block;
		margin-bottom: 20px;
	}
	
	.bg-white table td {
		clear: both;
		display: block;
		text-align: left;
		border-bottom: #ffcb00 1px solid;
		border-left: none;
		width: 94%;
		vertical-align: middle;
	}
	
	.bg-white table td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		color: #000;
		width: 25%;
		margin-right: 10px;
		display: block;
		padding: 10px;
	}
	
	.bg-white table td:nth-child(2)::before{
		margin-top: -5px;
	}
	
	/* お申し込み */
	.back24 dl{
		padding-top: 10px;
		padding-left: 0;
	}
	
	.back24 .bn1, .back24 .bn3, .back24 .bn5{
		position: static;
		margin-top: 30px;
	} 
	
	.back24 dl dt{
		font-size: 160%;
		padding-left: 100px;
		text-align: justify;
		text-justify: distribute;
	}
	
	.back24 dl dd{
		padding: 50px 0 0 0;
	}
	
	.back24 dl dd .bn1 a, .site-footer-in dl dd .bn1 a{
		font-size: 116%;
		text-align: center;
		width: 90%;
		padding: 2% 5% 2% 9%;
	}
	
	.back24 dl dd .bn1 a{
		width: 84%;
	}
	
	.back24 .bn2{
		top: 60%;
		left: 70%;
	}
	
	.back24 dl dd .bn3 a, .back24 dl dd .bn3 p.sp-btn, .site-footer-in dl dd .bn3 a, .site-footer-in dl dd .bn3 p.sp-btn{
		font-size: 110%;
		text-align: center;
		width: 90%;
		padding: 2% 4%;
	}
	
	/* 人気の理由 */
	.main-reason-left{
		width: 100%;
	}
	
	.main-reason-left p, .main-reason-right p{
		text-align: center;
	}
	
	.main-reason-left img{
		width: 96%;
	}
	
	.main-reason-right{
		width: 100%;
		padding-top: 10px;
		padding-right: 0;
	}
	
	/* お知らせ・教室ブログ */
	.main-news-left, .main-blog-right{
		width: 100%;
	}
	
	.main-news-left h3{
		margin-top: 0;
	}
	
	/* 講座紹介 */
	.ms-pc{
		display: none;
	}
	
	/* インストラクターのご紹介 */
	.teacher-photo{
		padding: 0 1%;
	}
	
	.teacher-photo li{
		padding: 1%;
		width: 31.5%;
	}
	
	.teacher-photo li img{
		width: 100%;
	}
	
	.teacher-info{
		padding: 0 2%;
	}
	
	.teacher-info dt{
		width: 92%;
		padding: 3% 4%;
		box-shadow: none;
	}
	
	.teacher-info dd{
		clear: both;
		width: 100%;
		margin: 0;
		padding: 0;
		top: 0;
		left: 0;
	}
	
	.teacher-info dd .bg-white3{
		width: 92%;
		padding: 3% 4%;
		position: static;
	}
	
	/* 生徒様の声 */
	h3.t_voice.al-c{
		text-align: left;
	}
	
	h3.t_voice{
		font-size: 140%;
		padding-right: 2%;
	}
	
	h3.t_voice:before{
		width: 30px;
		height: 30px;
		line-height: 30px;
		top: 30%;
		left: 2%;
	}
	
	h3.t_voice:after{
		top: 30%;
		left: 9%;
	}
	
	img.voice-img{
		width: 96%;
		margin: 0 auto;
	}
	
	.st-voice{
		margin: 0 0 0 2%;
	}
	
	.st-voice dt{
		max-width: 28%;
	}
	
	.st-voice dt img{
		border-radius: 50%;
		width: 100%;
		height: auto;
	}

	.st-voice dt p:last-child{
		text-align: left;
	}
	
	.st-voice dd{
		margin-right: 4%;
		padding-left: 30%;
	}
	
	.balloon-left{
		padding: 3% 5%;
		border-radius:20px;
		-moz-border-radius:20px;
		-webkit-border-radius:20px;
		box-shadow:3px 3px 0px 0px #f98301;
		-moz-box-shadow:3px 3px 0px 0px #f98301;
		-webkit-box-shadow:3px 3px 0px 0px #f98301;
	}
	
	.balloon-left:before{
		top: 22px;
		left: -30px;
		border: 13px solid transparent;
		border-right: 13px solid #FFF;
		border-width: 8px 15px;
	}
	
	.balloon-left:after{
		top: 20px;
		left: -39px;
		border: 15px solid transparent;
		border-right: 15px solid #f98301;
		border-width: 10px 18px;
	}
	
	/* よくある質問 */
	.faq {
		margin: 2%;
	}
	
	.faq dd{
		padding: 10px 2% 20px 60px;
	}
	
	/* フッター */
	.site-footer-nav2 li a span{
		display: block;
	}
	
	.site-footer-in dl{
		padding: 2%;
		width: 96%;
	}
	
	.site-footer-in dl dd .bn1, .site-footer-in dl dd .bn3{
		position: static;
	}
	
	.site-footer-in dl dt{
		font-size: 120%;
	}
	
	.site-footer-in dl dd{
		width: 100%;
		padding-left: 0;
		padding-top: 80px;
	}
	
	.site-footer-in dl dd div{
		float: inherit;
	}
	
	.site-footer-in dl dd div.bn2{
		position: relative;
		top: -180px;
		left: 66%;
		z-index: 99;
		margin: 0;
	}
	
	.site-footer-in dl dd div.bn3{
		margin-top: -90px;
	}
	
	.site-footer-in dl dd div.bn3 .fa{
		font-size: 160%;
	}
	
	/*---------------------------
	内部ページの教室紹介
	---------------------------*/
	.page-school-photo, h3.t_h3{
		margin: 0 2%;
	}
	
	h3.t_h3_form{
		margin-left: -2%;
	}
	
	.page-school-photo li{
		width: 30%;
		border: #ffebce 3px solid;
		margin-right: 2%;
	}
	
	.school-box{
		padding: 10px 2% 30px 2%;
	}
	
	.school-box.main-info-left, .school-box.main-info-left table,.school-box.main-info-left .table-notice{
		width: 96%;
		margin-bottom: 0;
		margin-left: auto;
		margin-right: auto;
	}
	
	.school-box.main-info-left .table-notice{
		margin-top: -10px;
	}
	
	.school-box table td span{
		font-size: 100%;
	}
	
	.main-info-left table td.admissionfee, .main-info-left table td.admissionfee::before{
		height: 40px;
	}
	
	.school-box .main-info-left, .school-box .main-info-right{
		width: 100%;
	}
	
	.school-box .main-info-left dt{
		margin-bottom: 5px;
	}
	
	.school-box .main-info-left dd{
		margin-bottom: 10px;
	}
	
	/*---------------------------
	お問い合わせ
	---------------------------*/
	.img_pc{display: none;}
	.img_sp{display: block;}
	
	.article-body{
		padding: 0 2%;
	}
	
	p.m40-t img.img_sp, p.m20-t img.img_sp{
		width: 100%;
	}
	
	ul.news-arrow{
		margin-top: 0px;
		margin-bottom: 0px;
	}
	
	ul.news-arrow li{
		font-size: 100%;
	}

	.info-h-5 th{
		font-size: 100%;
		width: 92%;
		padding: 4%;
	}
	
	.info-h-5 th span{
		margin-right: 10px
	}

	.info-h-5 td{
		font-size: 100%;
		padding: 4%;
	}
	
	.info-h-5 td input.wsmall{
		width: 95%;
	}

	.info-h-5 td select{
	    width: 95% !important;
	}

	button.css_btn_class{
		font-size: 140% !important;
		width: 99%;
		margin-top: 0;
		padding: 20px 2%;
	}
	
	.info-h-5 td input.short {
	    width: 83%;
	    margin-bottom: 10px;
	}
	
	.info-h-5 td input.short2 {
	    width: 22%;
	}
	
	.info-h-5 td input.middium2 {
	    margin: 0 0.5em 0.5em 0.5em;
	    width: 70% !important;
	}
	
	span.sp-left{
	    margin-left: 0.5em;
	}
	
	.info-h-5 td .schedule-input{
		margin-bottom: 20px;
	}
	
	.taiken td select.short-select {
	    width: 28% !important;
	}

	iframe.form{
		width:100%;
	}

}
