@charset "UTF-8";
/*



 * sp.css
 *
 */
@media (min-width:1100px) and (max-width:2000px) {
#humberger-menu {
		display:none;
	}
	
}
@media screen and (max-width:1100px){

#head-top{
		display:none;
	
	}
	
	
	.row1 {
		width: 117%;
		column-gap: 56px;
	}
	#headerLogo_left .club_name {
    	margin: 24px 0 0 5px;
	}
	
    #headerLogo_left {
        z-index: 100;
        width: 1100px;
        margin: auto;
        position: fixed;
        background-color: #fff;
        height: 88px;
        box-shadow: 2px 2px 4px;
    }

	.p-top-about {
    	top: 9.5%;
}
#menuToggle {
    right:10px;
}
}
@media screen and (max-width:1290px){
	.strengths {
		padding: 157px;
	}
	#head-h1 nav {
		padding:0vw 4vw;
	
	}
	

}

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

	.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;
}
}
@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: 20px 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;
}

}
@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:77vw;
	}
	#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:#0033FF;
		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;
	}
	#footerNav li:nth-of-type(8) {
		border-bottom: none;
	}

}
@media screen and (max-width:768px){
/*==================================
           各ページ共通
==================================*/
section {
    background: #fff;
    width:100%;
}
#menu li {
    font-size: 14px;
}
.page_ttl h2,
.recruit_page .page_ttl h2 {
font-size:20px;
line-height:2em;
}
body {
	overflow:hidden;
}
.only_pc {
	display:none;
}
#contents .only_sp,
.only_sp {
	display:block;
}

h5 a {
	color:#000;
}
/*==================================
            footer
==================================*/
#footer .footer_ad {
    margin: 0 auto 20px;
}
.footer_logo .club_name {
    margin: 20px auto;
}
.footer_logo .club_name h2 {
    font-size: 24px;
}
/*==================================
            toppage
==================================*/
.p-top-about  {
   top: 12.67vh;
   left: 4.67vw;
}
.p-top-object_row {
	font-size:15vw;
}
.home #contents {
	background-color:#fff;
	margin-top:470px;
}
.top_copy_box {
    padding: 30px 0;
}
.history_box01 {
    width: 100%;
    background-size: auto 100%;
    padding:20px;
	box-sizing:border-box;	
	border:none;
}
.top_info_copy {
	width:70%;
	right:auto;
	margin:0 auto;
	display:block;
	float:none;
}
.top_info_copy p {
	text-align:left;
}
.history_box {
    width: 100%;
    background-size: auto 100%;
    padding:20px;
	box-sizing:border-box;	
	border:none;
}
.container1 {
    margin: 50px 0;
}
.container1img{
	width: 150%;
	height:370px;
}
.container1 .view_more_link {
    margin:5px auto;
}
.container1 p {
    font-size: 10px;
	font-weight:bold;
}
.card-title {
    font-size: 10px;
	font-weight:bold;
}
.column1 {
	margin:0 auto 20px;
}
.history_box01 h4 {
    margin: 0 auto 10px;
}
.wgroup li {
    margin: 0 auto;
    padding: 20px;
}
/*==================================
            strengths
==================================*/
.sectionLv05 {
    width:100%;
}
.title,
.kokoro .title2  {
    font-size:inherit;
    width:100%;
    left: auto;
    margin: 0 auto;
	padding:40px;
	box-sizing:border-box;
	background-image:url(../../common/img/door.jpg);
	background-position:center;
	background-repeat:no-repeat;
	background-size:auto 100%;	
}
.kokoro .title2  {
	background-image:url(../../common/img/sworks.jpg);
}
#app:nth-of-type(3) .title {
	background-image:url(../../common/img/rules.jpg);
}
.mozart-inner {
	width:80%;
	margin:0 auto;
    font-size: 20px;
	display:block;
}
.title-inner{
	padding:20px;
	background: rgba(255,255,255,0.9);
}
.slideAnimeRightLeft {
	margin:20px auto;
	padding:10px;
    font-size: 16px;
	line-height:1.7em;
}
.cafe-inner {
    font-size: 22px;
}
.strengths_page .image,
.strengths_page .image2 {
	display:none;
}
.slideAnimeRightLeft {
    margin:0 auto;
	padding:0;
}
.strengths_list li {
    background-size: auto 100%;
}
.strengths_copy h3 {
    background:none;
}
.strengths_copy {
    width: 84%;
    display: block;
    margin: 0 auto;
}
.strengths_copy h3 {
	padding:20px 20px 0;
	background: rgba(255,255,255,0.9);
	border-left:none;
}
.strengths_list li:nth-of-type(2) h3 {
	border-left:none;	
}
.strengths_list li:nth-of-type(3) h3 {
	border-left:none;	
}
.strengths_list li:nth-of-type(4) h3 {
	border-left:none;
}
.strengths_no {
	display:block;
    width: 84%;
	margin:0 auto;
	background: rgba(255,255,255,0.9)	
}
.strengths_copy p {
	border-left:none;
}
.strengths_no p {
	border-bottom:#003692 solid 3px;
}
.strengths_list li:nth-of-type(2) .strengths_no p {
	border-bottom: #00AD8D solid 3px;
}
.strengths_list li:nth-of-type(3) .strengths_no p {
	border-bottom: #88C121 solid 3px;
}
.strengths_list li:nth-of-type(4) .strengths_no p {
	border-bottom: #5192CE solid 3px;
}
/*==================================
            services
==================================*/
#top_contents01 {
    margin-top: 30px;
    width: 100%;
}
#top_contents01 li div {
    width: 80%;
    float: none;
    padding: 20px;
    margin: 0 auto;
	background: rgba(255,255,255,0.9);	
}
#top_contents01 li div .view_more_link {
	background:none;
	padding:0;
	margin:10px auto;
	float:none;
}
#top_contents01 li h3 {
    text-align:center;
	font-size:24px;
}
#top_contents01 li {
    padding:30px 20px;
    background-size: auto 150%;
    margin: 30px auto;
}
#top_contents01 li:nth-of-type(2) div,
#top_contents01 li:nth-of-type(3) div,
#top_contents01 li:nth-of-type(4) div {
    float: none;
}
#top_contents01 li p {
    padding:20px 10px 10px;
}
#top_contents01 li:nth-of-type(4) {
    background-position:center;
}
/*==================================
             works
==================================*/
.example-image {
    width: 10rem;
    height: 10rem;
}
.slideimg {
    padding: 10px;
}
.works_list {
	margin-top:20px;
	width: 100%;
}
.slideimg1 {
    padding: 10px;
}
/*==================================
              company
==================================*/
.company_top {
    margin-top:0;
	width: 100%;
}
.effect-fade-left img {
    width: 89vw;
    height: auto;
    margin: 20px;
}
.boxs {
	width:90%;
    padding: 20px;
    margin: 0 auto;
}
.sectionLv02,
.sectionLv03 {
    width:100%;
    padding: 20px;
	box-sizing:border-box;	
}
.sectionLv02 h2 {
	margin:0 auto;
}
.p-table__label,
.p-table__detail {
    padding: 10px;
}
.boxs h4 {
    margin: 0 auto 10px;
}
.p-company-qualified {
    padding:0;
	box-sizing:border-box;
	border:none;	
}
.p-company-qualified__item {
    width: 100%;
}
.p-company-qualified div {
    width: 100%; 
}
.rinen {
    width: 100%; 
    margin: 0 auto;
    background-position: 50% 10%;
}
.rinen h6 {
	padding:10px 0;
    font-size: 20px;
}
.p-top-about01 {
	width:100%;
    margin: 0 auto -180px;
}
.sectionLv04 iframe {
	display:block;
	width:90%;
	margin:0 auto;
}
.p-top-object_row01 {
    font-size: 4rem;
    padding: 0 0 70px;
    margin: 0 auto;
    width: 322px;
}
/*==================================
             recruit
==================================*/
.recruit_page .sectionLv01 {
    position: inherit;
    width: 100%;
	margin:0 auto;
}
.recruit_page .float_block img {
    width: 90%;
    margin: 0 auto;
    float: none;
    display: block;
}
.recruit_page .float_block {
	margin:30px auto 50px;
}
.recruit_page .view_more_link {
    margin: 20px auto 30px;
}
.recruit_page .rinen {
    margin: 0 auto 50px;
}
.p-tbl__row {
	padding:0;
	border:none;
}
.p-tbl__hd {
    width: 100%;
}
.p-tbl__row p {
    width: 100%;
	margin:0 auto;
    padding: 10px;
	box-sizing:border-box;
	font-size:16px;
}
.p-tbl__data {
    width: auto;
    padding: 10px;
	font-size:16px;	
}
/*==================================
                 qa
==================================*/
.qa_page .sectionLv01 {
    width:100%;
	margin:0 auto;
}
.cp_qa .cp_actab label {
    font-size: 16px;
    padding: 20px 30px 20px 10px;
}
.cp_qa .cp_actab .cp_actab-content p {
    margin: 2em;
}
/*==================================
               contact
==================================*/
.contact_page .sectionLv01 {
    width: 90%;
    margin: 30px auto;
}
.contact_page .sectionLv01 p,
.contact_page .sectionLv02 p {
    font-size: 16px;
    padding: 20px;
}
.contact_page .sectionLv02 p {
    padding:10px;
	text-align:left;
}
.contact_page .sectionLv01 h2 {
    font-size: 20px;
}
.contact_page .sectionLv02 h2 {
	padding:0 0 10px;
}
.btn input {
    display: block;
    margin: 0 auto;
}
.contact_page .box_con form {
    padding:0;
}
.contact_tel h3, .contact-title {
    width:100%;
}
.contact_tel {
	margin:0 auto;
    padding: 20px;
	box-sizing:border-box;
}
.contact_tel p a {
	color:#000;
	font-weight:bold;
}
/*==================================
              sitemap
==================================*/
.sitemap_page .sectionLv01 {
    width: 90%;
    margin: 30px auto;
}
.sitemap_disp_level_1 {
    margin: 0 auto;
}
#sitemap_list li {
    font-size:16px;
}
/*==================================
              privacy_page
==================================*/
.privacy_page .sectionLv01 {
    width: 90%;
    margin: 30px auto;
}
.kojinjyouhou {
    margin:0 auto;
    padding:0;
}
.privacy_page h3 {
    margin:0 auto;
}
}
@media screen and (max-width: 750px){
	
	.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:600px){

	.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;
		font-size:16px;
	}
	
	.text-block {
		width: 70%;
		padding: 20px 20px;
		
	}
	.text-block1 {
		position: relative;
	}
	.container1 {
		
		position: sticky;
	}
	
	.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;
		box-sizing:border-box;		
		}
	.page_ttl {
    padding:20px 0;
	margin:0 auto;
	background-size: 120% auto;	
}
}


@media screen and (max-width: 500px){
	#headerLogo_left h1 img{
		width: 280px;
	}
	section p {
    	font-size: 16px;
	}
	
	
	.row1 {
	  
		padding: 10px 30px;
	}
	
	.t-title {
		padding: 0px 10px;
	}
	#menuToggle {
    	right:10px;
	}

	.strengths {
    padding: 30px 6px;
	}
#headerLogo_left .club_name {
    margin: 24px 0 0 15px;
}	
.wp-block-file.dl_pdf .wp-block-file__button
 {
    margin-left: 34px;
}
}



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

.nana{
 		grid-template-columns: repeat(1, 1fr);
	}
.nana h5{
    text-align: center;
    font-size: 24px;
	height:44px;
}	
.wp-block-file.dl_pdf .wp-block-file__button
 {
    margin-left: 32px;
}

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

	.wgroup {
    	padding: 0px 0px;
	}
	section h2 {
		padding: 10px 0;
		font-size: 24px;
	}
	.t-title {
		padding: 12px 8px;
		box-sizing: border-box;
	}	
	.font {
    	font-size: 15px;
	}
	.font-big {
    	font-size: 27px;
		letter-spacing: 9px;
	}
	.row1 {
		padding: 10px 0;
		display: block;
		margin: 0 auto;
		width:100%;
	}
	#footerNav li a {
    	text-align: center;
	}
	#footerNav ul {
		display: block;
		width: 100%;
		padding: 20px 0;
	}
	#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(9) {
    	border-bottom: none;
	}
#footerNav li {
    width: 90%;
	margin:0 auto;
}	
.wp-block-file.dl_pdf .wp-block-file__button {
    margin-left: 121px;
	
}	

}
@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;
}

.wp-block-file.dl_pdf .wp-block-file__button
 {
    margin-left: 34px;
}
.wp-block-file.dl_pdf .wp-block-file__button {
        margin-left: 113px;
    }

}

@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;
	}
}