@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,200..900;1,200..900&family=Crimson+Text:wght@400;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* Reset
------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}
address,em,strong,th {
	font-style: normal;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th {
	text-align: left;
}

hr,legend {
	display: none;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}

img,fieldset {
	border: 0;
	-webkit-backface-visibility: hidden;
}

li {
	list-style-type: none;
}

img {
	vertical-align: top;
}

/*IE6*/
* html img{
	vertical-align: bottom;
}
/*IE7*/
*:first-child+html img{
	vertical-align: bottom;
}

a{
	outline:none;	
}

/* Fonts
------------------------------------------------------------*/
body {
	font-size: 75%; /* IE */
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	/*
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;*/

	-webkit-text-size-adjust: 100%;
  color:#323232;
}
html>/**/body {
	font-size: 12px; /* Except IE */
}

body .cr {
  font-family: "Crimson Text", serif;
  font-weight: 400;
  font-style: normal;
}

body .cr.mid {
  font-weight: 600;
  font-style: normal;
}


/* clearfix
------------------------------------------------------------*/
.cf:after {  
	visibility: hidden;  
	display: block;  
	font-size: 0;  
	content: " ";  
	clear: both;  
	height: 0;  
}  

* html .cf { zoom: 1; } /* IE6 */  
*:first-child+html .cf { zoom: 1; } /* IE7 */  


.ani_none,
.ani_none > *,
.ani_none:before,
.ani_none:after{
	transition:none !important;
	-webkit-transition:none !important;
	-moz-transition:none !important;	
}


/*------------ 初期設定 ------------*/
p {
	color: #323232;
	line-height: 1.7;	
}

/*------------ 全体 ------------*/
html {
}

body {
}

._hover{
	opacity:1;
	transition: all 0.4s;
}

._hover:hover{
	opacity:0.7;
}


/*------------ WRAPPER ------------*/
#wrapper {
	width:950px;
	margin:0 auto;
}

/*------------ HEADER ------------*/

.sp{
	display:none !important;
}
@media screen and (max-width: 768px) {
	
	.sp{
		display:block  !important;
	}
	
	.pc{
		display:none  !important; 	
	}
	
	body ,
	html{
		width:100%;
		min-width:100%;
		/*overflow-x:hidden;*/
	}	
}

/*------------ NAVI ------------*/


/*------------ TOP ------------*/


/*------------ FOOTER ------------*/

footer{
	height:116px;
  background:#FFF;
  display:flex;
  justify-content:space-between;
  padding:0 56px 0 80px;
  font-family: "Noto Sans JP"; 
  padding-bottom:100vh;
  position:relative;
  z-index:10;
}

footer.active{
  padding-bottom:0; 
}

footer .logo{
  padding-top:35px; 
}

footer .logo small{
  display:block;
  color: #838383;
  font-size: 11px;  
  line-height:1;
  margin-top:8px;
}

footer ul{
  display:flex;
  justify-content:flex-end;
  padding-top:47px; 
}

footer ul li:nth-child(1),
footer ul li:nth-child(2){
  margin-right:24px;
}

footer ul li:nth-child(1) img{
  position: relative;
  top: -3px;
}

footer ul li:nth-child(2){
  margin-right:48px;
}

footer ul li:nth-child(3),
footer ul li:nth-child(4){
  margin-right:20px;
}
footer ul li:nth-child(5){
  margin-right:48px;
}
footer ul li:nth-child(6){
  margin-right:24px;
}

footer ul li:nth-child(6) a,
footer ul li:nth-child(7) a{
  color: #333;
  font-size: 11px;  
  text-decoration:none;
  position:relative;
  top:0px;
}

footer ul li:nth-child(6) a:hover,
footer ul li:nth-child(7) a:hover{
  text-decoration:underline; 
}

footer ul li:nth-child(6) a:after,
footer ul li:nth-child(7) a:after{
  content:"";
  display:inline-block;
  margin-left:6px;
  background:url(../images/icon_blank.svg) no-repeat left top;
  background-size:cover;
  width:18px;
  height:19px;
  position:relative;
  top:4px;
}

@media screen and (max-width: 1200px) {
  footer{
    padding:0 15px 0 ;
  }
  
  footer ul li:nth-child(1),
  footer ul li:nth-child(2){
    margin-right:12px;
  }

  footer ul li:nth-child(1) img{
    width: 140px;
  }
  footer ul li:nth-child(2) img{
    width: 110px;
  }

  footer ul li:nth-child(2){
    margin-right:30px;
  }
  footer ul li:nth-child(5){
    margin-right:24px;
  }
  footer ul li:nth-child(6){
    margin-right:12px;
  }
}

@media screen and (max-width: 768px) {
  footer{
    display:block;
    height:auto;
    padding:10.6vw 5.3vw;
  }
  
  footer .logo{
    padding-top:0; 
  }
  
  footer .logo img{
    width:21.86vw; 
  }
  
  footer .logo small{
    font-size: 2.93vw;  
    margin-top:2.13vw;
  }
  
  footer ul{
    display:flex;
    justify-content:flex-start;
    flex-wrap:wrap;
    padding-top:10.6vw;; 
  }
  
  footer ul li:nth-child(1),
  footer ul li:nth-child(2){
    margin-right:0;
    width:100%;
    margin-bottom:6.4vw;
  }

  footer ul li:nth-child(1) img{
    position: relative;
    top: -0px;
  }


  footer ul li:nth-child(1) img{
    width:44.53vw; 
  }

  footer ul li:nth-child(2) img{
    width:38vw;
  }
  
  footer ul li:nth-child(3),
  footer ul li:nth-child(4){
    margin-right:5.3vw;
  }
  footer ul li:nth-child(5){
    margin-right:50vw;
  }
  
  footer ul li:nth-child(3) img,
  footer ul li:nth-child(4) img,
  footer ul li:nth-child(5) img{
    width:6.6vw;
  }
  
  footer ul li:nth-child(6){
    margin-right:6.4vw;
  }
  
  footer ul li:nth-child(6) a,
  footer ul li:nth-child(7) a{
    font-size: 2.93vw;  
  }
  
  
  footer ul li:nth-child(6) a:after,
  footer ul li:nth-child(7) a:after{
    content:"";
    display:inline-block;
    margin-left:1.6vw;
    background:url(../images/icon_blank.svg) no-repeat left top;
    background-size:cover;
    width:4.8vw;
    position:relative;
    top:1vw;
  }
  
  footer ul li:nth-child(6),
  footer ul li:nth-child(7){
    margin-top:3vw;
  }
}

/*-------- text_right --------*/
.t_right {
	text-align: right;
}

/*-------- text_left --------*/
.t_left {
	text-align: left;
}

/*-------- center --------*/
.t_center {
	text-align: center;
}

/*-------- ClearBoth --------*/
.cb {
	clear: both;
}

/*-------- FONT --------*/

.bold{
	font-weight:700;
}

.f10{
	font-size:10px;
}

.f14{
	font-size:14px;
}

/*-------- HEIGHT --------*/

.h350{
	height:350px;	
}

.h375{
	height:375px;	
}

.h500{
	height:420px;	
}

.h600{
	height:470px;	
}

/*-------- MARGIN --------*/

.ml3{
	margin:0 0 0 3px;
}

.ml10{
	margin:0 0 0 10px;
}

.ml30{
	margin:0 0 0 30px;
}

.ml40{
	margin:0 0 0 40px;
}

.ml60{
	margin:0 0 0 60px;
}

.ml70{
	margin:0 0 0 70px;
}

.mb10{
	margin:0 0 10px 0;
}

.mb15{
	margin:0 0 15px 0;
}

.mt3{
	margin:3px 0 0 0;
}

.mt10{
	margin:10px 0 0 0;
}


.mt20{
	margin:20px 0 0 0;
}

.mt30{
	margin:30px 0 0 0;
}

/*-------- PADDING --------*/

.pt5{
	padding-top:5px;
}

.pt10{
	padding-top:10px;
}

.pt15{
	padding-top:15px;
}

.pt20{
	padding-top:20px;
}

.pt25{
	padding-top:25px;
}

.pt30{
	padding-top:30px;
}

.pt40{
	padding-top:40px;
}

.pt60{
	padding-top:60px;
}

.pl10{
	padding-left:10px;	
}

.pl12{
	padding-left:12px;	
}

.pl15{
	padding-left:15px;	
}

.pl20{
	padding-left:20px;	
}

.pl30{
	padding-left:30px;	
}

.pl40{
	padding-left:40px;	
}

.pl50{
	padding-left:50px;	
}

.pl60{
	padding-left:60px;	
}

.pl70{
	padding-left:70px;	
}

.pl80{
	padding-left:80px;	
}

.pl100{
	padding-left:100px;	
}

.pr100{
	padding-right:100px;	
}


.pb20{
	padding-bottom:20px;	
}

/*-------- COMMON --------*/

.hidden{
	overflow:hidden;
}

.abs{
	position:absolute;
}

