@media screen and (min-width:1281px )
{ 
.pc { display: block !important; }
.sp { display: none !important; } 

    footer{
		background: #ddd;
		height:auto;
        margin:0 auto;
        padding:2vw 00;
        width:100%;
    }
    footer .wrap{
        width:1280px;
        text-align: center;
		margin: 0 auto;
    }

	footer .flex_box{
		padding: 0;
  		margin:  0;
	    width: 100%;
		display: flex;
		align-items:center;
		justify-content:center;	
	}
	
	footer  .flex_box-item:nth-child(1) {
		width:50%;
		text-align: left;
		background-position:top;
        background-size:contain;
	}	
	footer  .flex_box-item:nth-child(2) {
		width:50%;
		background-position:top;
        background-size:contain;
	}	
	
	footer h1{
        margin:0 auto;
        font-size:min(2.25vw,42px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 900;
		font-style: normal;
		padding:0;
		line-height: 2em;
    }
	footer h2{
        margin:1vw auto 0 auto;
        font-size:min(1.5vw,18px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 900;
		font-style: normal;
		padding:0;
    }
	footer h4{
        margin:0 auto;
        font-size:min(1vw,14px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		line-height: 1.5em;
		padding:0;
    }
	footer iframe{
		margin:60px auto 0 auto;
        width: 100%;
        aspect-ratio: 4/3.8; //アスペクト比（縦横比）を指定
	}
    footer .copyright{
        width:100%;
        font-size:min(1vw,14px);
		color:#222;
        text-align:center;
        padding:0;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin: 2vw auto 0 auto;
    }
	footer .pp{
		width:100%;
        font-size:min(1.25vw,6px);
		text-align:center;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin:1vw auto 2vw auto;
		color:#222;
	}
	footer .pp a:link{
		color:#222;
	}
	footer .pp a:visited{
		color:#222;
	}
	footer .pp a:hover{
		color:#fff;
	}
	footer .linkBtn{
		position:relative;
		font-size:min(1.5vw,18px);
		margin:1.5vw 0 0 0;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		display: inline-block;
	} 
	footer .linkBtn a:link{
		color:#222;
		border:1px solid #222;
		padding:8px 36px 8px 8px;
	}
	footer .linkBtn a:visited{
		color:#222;
		border:1px solid #222;
		padding:8px 36px 8px 8px;
	}
	footer .linkBtn a:hover{
		color:#222;
		border:1px solid #222;
		background: #999;
		padding:8px 36px 8px 8px;
	}
/*	footer .linkBtn:after{
		content:"";
		position:absolute;
		right:5px;
		content: '\f144';
		font-family: 'Font Awesome 5 Free';
		 font-size:min(1.5vw,18px);
		font-weight: 900;
		color:#222;
		margin:10px 0 0 2px;
	}*/
   footer .position{
        display: flex;
        justify-content:flex-start;
        list-style: none;
        margin:0;
		padding: 0;
    }  
	footer .position li a{
        color:#666;
		font-size:28px;
		margin-right: 10px;
    }  
	footer .position li a:link{
        color:#666;
    }  
   footer .position li a:hover{
        color:#000;
    }  
}


@media screen and (min-width:641px ) and (max-width:1280px)
{
.pc { display: block !important; }
.sp { display: none !important; } 
	
    footer{
		background: #ddd;
		height:auto;
        margin:0 auto;
        padding:2vw 00;
        width:100%;
    }
    footer .wrap{
        width:90%;
		min-width:300px;
        text-align: center;
		margin: 0 auto;
    }

	footer .flex_box{
		padding: 0;
  		margin:  0;
	    width: 100%;
		display: flex;
		align-items:center;
		justify-content:center;	
	}
	
	footer  .flex_box-item:nth-child(1) {
		width:50%;
		background-position:top;
        background-size:contain;
		text-align: left;
	}	
	footer  .flex_box-item:nth-child(2) {
		width:50%;
		background-position:top;
        background-size:contain;
	}	
	
	footer h1{
        margin:0 auto;
        font-size:min(2.25vw,42px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 900;
		font-style: normal;
		padding:0;
		line-height: 2em;
    }
	footer h2{
        margin:1vw auto 0 auto;
        font-size:min(1.5vw,18px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 900;
		font-style: normal;
		padding:0;
    }
	footer h4{
        margin:0 auto;
        font-size:min(1vw,14px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		line-height: 1.5em;
		padding:0;
    }
	footer iframe{
		margin:2vw auto 0 auto;
        width: 100%;
        aspect-ratio: 4/4.5; //アスペクト比（縦横比）を指定
	}
    footer .copyright{
        width:100%;
        font-size:min(1vw,14px);
		color:#222;
        text-align:center;
        padding:0;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin: 2vw auto 0 auto;
    }
	footer .pp{
		width:100%;
        font-size:min(1vw,10px);
		text-align:center;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin:1vw auto 2vw auto;
	}
	footer .pp a:link{
		color:#222;
	}
	footer .pp a:visited{
		color:#222;
	}
	footer .pp a:hover{
		color:#fff;
	}
	footer .linkBtn{
		position:relative;
		font-size:min(1.5vw,18px);
		margin:1.5vw 0 0 0;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		display: inline-block;
	} 
	footer .linkBtn a:link{
		color:#222;
		border:1px solid #222;
		padding:1vw 3vw 1vw 1vw;
	}
	footer .linkBtn a:visited{
		color:#222;
		border:1px solid #222;
	}
	footer .linkBtn a:hover{
		color:#222;
		border:1px solid #222;
		background: #999;
	}
/*	footer .linkBtn:after{
		content:"";
		position:absolute;
		right:1vw;
		content: '\f144';
		font-family: 'Font Awesome 5 Free';
		 font-size:min(1.5vw,18px);
		font-weight: 900;
		color:#222;
		margin:0.75vw 0 0 1vw;
	}
	*/
   footer .position{
        display: flex;
        justify-content:flex-start;
        list-style: none;
        margin:0;
		padding: 0;
    }  
	footer .position li a{
        color:#666;
		font-size:2.5vw;
		margin-right: 1vw;
    }  
	footer .position li a:link{
        color:#666;
    }  
   footer .position li a:hover{
        color:#000;
    }  
}


/* スマートフォン用 */

@media screen and (max-width:640px )
{
.pc { display: none !important; }
.sp { display: block !important; } 

	footer{
		width:100%;
		height:auto;
		margin: 5vw auto 0 auto;
		padding:2vw 0;
		background: #ddd;
	}
    footer .wrap{
        width:90%;
		min-width:300px;
        text-align: center;
		margin: 0 auto;
    }

	footer .flex_box{
	}
	footer  .flex_box-item:nth-child(1) {
		text-align: left;
	}	
	footer  .flex_box-item:nth-child(2) {
	}
	
	footer h1{
        margin:0 auto;
        font-size:max(4vw,21px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 900;
		font-style: normal;
		padding:0;
		line-height: 2em;
    }
	footer h2{
        margin:2vw auto 0 auto;
        font-size:max(2.75vw,16px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 900;
		font-style: normal;
		padding:0;
    }
	footer h4{
        margin:0 auto;
        font-size:max(2.25vw,14px);
        text-align: left;
		color:#222;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		line-height: 1.5em;
		padding:0;
    }
	footer iframe{
		margin:0 auto;
        width: 100%;
        aspect-ratio: 4/4; //アスペクト比（縦横比）を指定
	}
    footer .copyright{
        width:100%;
        font-size:min(1.25vw,10px);
		color:#222;
        text-align:center;
        padding:0;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin: 2vw auto 0 auto;
    }
	footer .pp{
		width:100%;
        font-size:min(1.25vw,10px);
		text-align:center;
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin:1vw auto 2vw auto;
	}
	footer .pp a:link{
		color:#222;
	}
	footer .pp a:visited{
		color:#222;
	}
	footer .pp a:hover{
		color:#fff;
	}
	footer .linkBtn{
		position:relative;
		font-size:max(2.75vw,16px);
		font-family: "toppan-bunkyu-mincho-pr6n", serif;
		font-weight: 400;
		font-style: normal;
		margin:4vw 0; 
		padding: 3vw 0;
		border:1px solid #222;
		width:100%;
		text-align: center;
	} 
	footer .linkBtn a:link{
		color:#222;
	}
	footer .linkBtn a:visited{
		color:#222;
	}
	footer .linkBtn a:hover{
		color:#222;
	}
/*	footer .linkBtn:after{
		content:"";
		position:absolute;
		right:3vw;
		content: '\f144';
		font-family: 'Font Awesome 5 Free';
		font-size:max(4vw,21px);
		font-weight: 900;
		color:#222;
		margin:0.7vw 0 0 1vw;
	}
	*/
	footer .position{
        display: flex;
        justify-content:flex-start;
        list-style: none;
        margin:0;
		padding: 0;
    }  
	footer .position li a{
        color:#666;
		font-size:7vw;
		margin-right: 3vw;
    }  
	footer .position li a:link{
        color:#666;
    }  
   footer .position li a:hover{
        color:#000;
    }  

}