@charset "UTF-8";
/*
 * sp.css
 *
 */

#humberger-menu {
	display:none;
}

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

.navi_right {
	display:none;
}
#humberger-menu {
	display:block;
}
.top_news_box .box {
	width:90%;
	margin:0px auto;
}
.top_about ul {
	width:95%;
    display: block;
}
.top_about li {
	width:90%;
	margin:0px auto;
}
.top_expert ul {
	width:90%;
	margin:0px auto;
}
.top_rinen img {
	display:block;
	margin:0px auto;	
}
.rinen_copy {
	display:block;
	width:380px;
	margin:0px auto;
}
/* about page */
.about_info .about_top ul {
	display:block;
	width:100%;
}
.about_info .about_top ul li {
	width:90%;
	margin:10px auto;
}
.about_info section {
	width:94%;
	padding:0px 10px;
	margin:0px;
}
.about_info img {
	width:100%;
	height:auto;
	object-fit:cover;
}
/* about page end */
/* rule page */
.rule_info section {
	width:88%;
}
/* rule page end */
/* action page */
.action_info section {
	width:88%;
}
.action_info .action_img {
    width: 100%;
}
.action_info .action_img li {
    width: 40%;
}
.action_info video {
	width:90%;
	height:auto;
	margin:10px auto;
}
/* action page end */
}
@media screen and (max-width:1290px){
	.strengths {
		padding: 157px;
	}
	#head-h1 nav {
		padding:0vw 4vw;
	
	}
	

}

@media screen and (max-width:1200px){
	.box {
		width: 100vw;
		margin:0;
		padding: 30px 0px;
	}

	.row1{
		column-gap: 53px;
	}
	.top_info_copy {
    	right: 17%;
	}
	
}
@media screen and (max-width:1050px){
	
	.top_info_copy {
    	right: 25%;
	}
	.row1 {
		width: 109%;
		column-gap: 0px;
}
	.before_pro, .after_pro {
		width:90%;
		display:block;
	}
	.before_pro dd, .after_pro dd {
		width:90%;
	}
	.program_img {
		width:90%;
	}
	#main .plus_img {
		width: 80px;
		height: 77px;
		margin: 10px auto;
		display: block;
	}
}
@media screen and (max-width:950px){
	
	.row1 {
		width: 82%;
		column-gap: 18px;
		display: table-cell;
		padding: 2px 42px;

	}
	.top_info_copy {
    	right: 40%;
	}
}
@media screen and (max-width:950px){
	.text-block {
		padding: 20px;
			
		}
	.container1 h5 {
		margin: 0px auto;
	
	}
	.view_more_link {
    	margin: 5px auto;
	}
	#footerNav ul {
    	width: 700px;
	}
	#footerNav li:first-of-type, #footerNav li:nth-of-type(9){
		border-left:none;
	}
	#footerNav li:first-of-type, #footerNav li:nth-of-type(5){
    	border-left:none;
}
	#footerNav li:first-of-type, #footerNav li:nth-of-type(4),  #footerNav li:nth-of-type(7),#footerNav li:nth-of-type(10) {
    	border-left: 1px solid #fff;
}
.top_copy_box02 .box_left, .top_copy_box03 .box_left{
	width:90%;
	display:block;
	margin:0 auto;
	padding:3%;
}

}

@media screen and (max-width:900px){
/* .about page */
.about_info .about_program ul, .about_info .about_annai ul {
	width:94%;
}
/* .about page end */

/* .news page */
.news_info .news_list  ul {
	width:94%;
}
.news_info .news_list ul li p {
	text-align:left;
	padding:0 15px 15px 20px;
}
/* .news page end */
/* rule page */
.after_box {
    width: auto;
    height: auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 30px 10px 0;
    padding: 0;
    border: #D3D1D1 solid 2px;
}
.after_box table {
    margin: 0 auto;
    padding: 20px;
    display: block;
}
.scroll {
	display:block;
    margin: 20px;
    padding: 0;
    color: #FF0000;
}
/* rule page end */
}
@media screen and (max-width:850px){
.contact_info .chuui-jikou {
	width:90%;
}
.contact_info .contact_list a {
	pointer-events:inherit;
	text-decoration:none;
	color:#000;
	font-weight:bold;
}
.contact_info .contact_list table {
    width: 90%;
    box-sizing: border-box;
	border:none;
	border-bottom:#797979 solid 1px;
}
.contact_info .contact_list table th, .contact_info .contact_list table td {
    display: block;
    width: 100%;
	padding:10px;	
    box-sizing: border-box;
	border-bottom:none;
}
.contact_info textarea {
    width: 100%;
}
.contact_info textarea, select {
    margin: 10px auto;
}
.contact_info .contact_list table td br {
	display:block;
}
}
@media screen and (max-width:800px){
	
	.top_info_copy {
    	width: 411px;
	}
	.history_box{
		width:800px;
		padding: 90px 0;
		background-size: 473px 382px;
	}
	.history_box01{
		width:800px;
		background-size: 473px 382px;
	}
	.top_info_copy {
		right: 10%;
		
	}
	
	
	.strengths {
    	padding: 30px 127px;
	}
	
	.wgroup {
    	padding: 20px 21px;
	}
	
	.t-title{
		text-align:center;
	
	}
	
	.font-big{
		display:block;
	}
	.font{
		font-size:10px
		text-align: center; 
	}
	.container1img{
		width: 100%;
        height: 400px;
	}
	.wphoto{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
	.text-block {
		width: 70%;
		padding: 20px 20px;
		
	}
	.text-block1 {
		position: relative;
	}
	.container1 {
		
		position: sticky;
	}
	.container1img{
		width: 100%;
        height: 400px;
	}
	.row1{
		display:table-cell;
		padding: 10px 88px;
	}
	.row2{
		display:table-cell;
		
	}

	#footerNav ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 100%;
		padding:20px 0;
		width:95%;
	}
	#footerNav li {
		width:50%;
		margin:0;
		padding:0;
		border-top:1px solid #fff;
		text-align:left;
		box-sizing:border-box;
	}
	#footerNav li a {
		display: block;
		padding: 15px;
	}
	
	#footerNav li a:hover {
		color:#E50011;
		font-weight:800;
		background-color:#fff;
	}
	#footerNav li a:hover::before {
		color:#000000;
	}
	#footerNav li:first-of-type, #footerNav li:nth-of-type(1), #footerNav li:nth-of-type(3), #footerNav li:nth-of-type(5), #footerNav li:nth-of-type(7), #footerNav li:nth-of-type(9){
		border-left: 1px solid #fff;
	}
	#footerNav li:nth-of-type(4),#footerNav li:nth-of-type(10){
		border-left:none;
	}
	#footerNav li:last-of-type, #footerNav li:nth-of-type(8),#footerNav li:nth-of-type(9) {
		border-bottom: 1px solid #fff;
	}
/* .about page */
	.about_info .kentei_list {
		width:85%;
	}
/* .about page end */
/* .system page */
.system_info .system_list dl{
	width:90%;
	margin:0px auto;
}
/* .system page end */
/* rule page */
.rule_info .rule_list ul {
	width:100%;
}
/* rule page end */
/* action page */
.action_info img {
	width:100%;
	height:auto;
}
/* action page end */
}
@media screen and (max-width:768px){
/*==================================
          全ページ共通
==================================*/
.other_page h2 {
    padding: 60px 0 40px;
}
#contents,
#main {
	width:100%;
}
#contents .only_sp, .only_sp {
    display: block;
}
#contents .only_pc, .only_pc {
    display:none;
}
.tel_no a {
    color: #430000;
}
#contents .tel p {
    padding:0;
}
#main .contact_tel li {
    margin: 20px auto 0;
}
/*==================================
              toppage
==================================*/
.p-top-about  {
   top: 12.67vh;
   left: 4.67vw;
}
.p-top-object_row {
	font-size:15vw;
}
#main .top_news_box h2 {
	margin:5px auto 10px;
	text-align:center;
}
#main .top_news_box .view_more_link {
	margin:20px auto;
}
.top_copy_box02 .box {
    padding: 30px 20px;
}
.rinen_copy {
    margin: 30px auto;
}
.rinen_copy .view_more_link {
    margin: 20px auto 0;
}
.rinen_copy .view_more_link p {
	width:auto;
}
.top_rinen h2 {
	margin:20px auto;
}
#contents .top_copy_box03 .box {
    padding: 30px 20px;
}
#contents .top_copy_box03 .box_left {
    padding: 3%;
}
.box h2 {
	text-align:left;
}
.rinen_copy {
    width: 95%;
}
#contents .top_copy_box03 {
	margin:0 auto;
    background-color: #fff;
	background-size: auto 100%;	
}
.top_copy_box h2 {
	width:90%;
	margin:0 auto 10px;
}
.top_about li {
    margin: 0px auto 20px;
}
.top_about h2 {
    width: 95%;
    margin: 0 auto 20px;
}
.after_pro dd li {
    font-size: 18px;
}
.before_pro dd, .after_pro dd {
    width: 95%;
	margin:20px auto;
}
#contents .top_expert {
	padding:10px;
	background-size:110vw 100%;
	box-sizing:border-box;	
}
.top_expert ul {
    width: 100%;
    margin: 0px auto 20px;
}
.top_expert h3 {
	display:block;
    margin:20px auto 0;
}
.part p {
    text-align:center;
}
.top_expert li {
    padding: 10px;
}
.part_tub {
	display:block;
	margin:0 auto;
}
#contents .top_expert .box {
	width:90%;
	margin:0 auto;
	padding:0;
}
.top_expert h2 {
	margin:20px auto;
}
#main .contact_tel li {
	padding:0;
	box-sizing:border-box;
}
#main .top_news_box {
    padding: 30px 0;
	background-size:auto 100%;	
}
.top_rinen .box {
	padding:10px;
	box-sizing:border-box;
}
.top_rinen img {
    display: block;
    margin: 0px auto;
    width: 300px;
    height: auto;
}
.top_rinen p {
    width: 90%;
    margin: 0 auto;
}
/*==================================
              about
==================================*/
.about_info h3 {
    margin: 40px auto;
	padding:7px 10px;
}
.about_program h4 {
    margin: 40px auto;
	padding:7px 10px;
}
/*==================================
              system
==================================*/
.system_list h3, .system_gaiyou h3 {
    margin: 40px auto;
	padding:7px 10px;
}
.system_list dt, .system_list dd {
    display:block;
	padding:10px;
	width:90%;
}
.system_list {
	width:100%;
	padding:10px;
	box-sizing:border-box;
}
.system_info .system_list dl {
	width:100%;
}
/*==================================
              rule
==================================*/
.rule_list .after_box {
	margin:20px auto;
}
/*==================================
              action
==================================*/
.morning {
    padding: 20px;
    box-sizing: border-box;
}
.action_info video {
    width: 100%;
}
.action_info .action_img li {
    width: 100%;
}

/*==================================
             contact
==================================*/
.contact_info textarea {
    width: 95%;
	margin:0 auto;	
}
/*==================================
              privacy
==================================*/
.rule_list h3 {
    margin: 20px auto;
	padding:7px 10px;
}
.rule_info section {
	width:100%;
	padding:10px;
	box-sizing:border-box;
}
.kojinjyouhou {
    padding: 10px;
}
#main .text-right {
	padding:10px 0;
}
}
@media screen and (max-width: 750px){
	
	.top_info_copy {
		right: 42%;
	}
	.font-big {
    	font-size: 20px;
	}
	.font {
    	font-size: 17px;
	}
	.nana h5{
	height:66px;
	}
	section h2 {
	    font-size: 27px;
	}
	.strengths_chart {
		width: 90%;
		hight: auto;
	}
}

@media screen and (max-width:700px){
/* .system page */
.system_info .system_gaiyou img{
	width:90%;
	height:auto;
	margin:0px auto;
}
/* .system page end */
}
@media screen and (max-width:600px){
.contact_tel ul {
	width:100%;
	display:block;
}
#main .contact_tel li {
	width:90%;
}
/* action page end */
}
@media screen and (max-width:600px){
	
	
	.top_info_copy {
    	right: 61%;
	}

	.top_info_copy {
    	width: 45vw;
	}
	.history_box{
		padding: 90px 0;
		background-size: 473px 382px;
	}
	.
	.strengths {
    	padding: 30px 67px;
	}
	
	
	.wgroup {
    	padding: 20px 24px;
	}

	.text-block1{
		position: inherit;
		
	}

	.t-title{
		text-align: center;   
		font-size: 12px;
		
	}
	
	.wphoto{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
	
	.t-c{
		text-align:left;
	}
	
	.text-block {
		width: 70%;
		padding: 20px 20px;
		
	}
	.text-block1 {
		position: relative;
	}
	.container1 {
		
		position: sticky;
	}
	.container1img{
		width: 100%;
        height: 400px;
	}
	
	.row1{
		display:table-cell;
		padding: 10px 88px;
	}
	.row2{
		display:table-cell;
		
	}
	.en_copy p, .page .en_copy h3, .error404 .en_copy h3 {
    	top: 250px;
		font-size: 28px;
	}
	.en_copy {
   
    	width: 275px;
	}
	.nana li {
    	padding: 18px;
		}
	.page_ttl {
    padding: 7vw 0 17px;
}
}


@media screen and (max-width: 500px){
	#headerIn h1 a img {
		width:300px;
	}
	#headerIn h1 {
		margin: 16px 85px 16px 10px;
	}
	#headerLogo_left h1 img{
		width:57vw;
		margin-top:9px;	
	}
	.top_info_copy {
    	right: 66%;
	}

	.top_info_copy {
    	width: 41vw;
	}
	.card-title {
		font-size: 14px;
		font-weight: 600;
	}
	.row1 {
	  
		padding: 10px 30px;
	}
	
	.t-title {
		padding: 0px 10px;
	}
	#menuToggle {
    	right:10px;
	}

	.strengths {
    padding: 30px 6px;
	}
	#top_contents01 li div {
    width: 60vw;
	}
	.br_kaigyo1 {
		display:none;
	}
}

@media screen and (max-width: 400px){
	.text-block {
		width: 70%;
		padding: 20px 0px 0px 0px;
	}
	.top_info_copy {
    	right: 74%;
	}
	.t-c {
		font-size: 14px;
	}
	.wgroup {
    	padding: 0px 0px;
	}
	section h2 {
		padding: 0px;
		font-size: 20px;
	}
	.top_info_copy {
    	right: 63%;
	}
	
	.t-title {
		padding: 0px 8px;
	}
	.font {
    	font-size: 15px;
	}
	.font-big {
    	font-size: 27px;
		letter-spacing: 9px;
	}
	.row1 {
    	padding: 10px 5px;
	}
	.view_more_link {
    	width: 145px;
	}
	#footerNav li {
		width:100%;
	}
	#footerNav li a {
    	text-align: center;
	}
	#footerNav ul {
		display: block;
		width: 90%;
	}
	#footerNav li:first-of-type, #footerNav li:nth-of-type(2), #footerNav li:nth-of-type(4), #footerNav li:nth-of-type(6), #footerNav li:nth-of-type(8), #footerNav li:nth-of-type(10){
    	border-left: 1px solid #fff;
	}
	#footerNav li:nth-of-type(8) {
		border-bottom:none;
	}
	
}

@media screen and (max-width: 450px){
.top_info_copy {
    	right: 58%;
	}
.nana{
 		grid-template-columns: repeat(1, 1fr);
	}
.nana h5{
		font-size:20px;
		height:62px;
	}
}
@media screen and (max-width:370px){
#block_recommend {
    display: table-footer-group;
	}
#block_recommend ul li:last-child {
	margin-top: 0;
	margin-left: 0px;
	}
.strengths {
    padding: 30px 60px;
}

}

@media screen and (max-width: 300px){
	.top_info_copy {
    	right: 69%;
	}
	
	
	.row1 {
  
    	padding: 10px 10px;
	}
}

@media screen and (max-width: 200px){
	.box {
    	width: 200px;
	}
	.row1 {
  
    	padding: 10px 0px;
	}
}