@charset "utf-8";
/*
Theme Name: 只野彩佳
Theme URI: https://www.tadanoayaka.com/wp-content/themes/tadano/
Description:只野彩佳's theme
Version: 1.0
Author:Coco-Factory
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&family=Noto+Serif+JP&display=swap');


/* # =================================================================
   # Original style
   # ================================================================= */

body{
	font-family:'Noto Sans JP', sans-serif;
	letter-spacing: 0.02em;
	background:#F5F5F5;
	color: #333;
	font-size:1rem;
	line-height:1.85;
	overflow-x:hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%; 
	word-wrap: break-word;
}

@media screen and (max-width:769px) {    
body{
	font-size:0.8rem;
}
	
}

a{
	color: #333;
	text-decoration: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
	outline: none;
}

h1,h2,h3,h4,h5,h6,#header,.btn{
	font-family: 'Noto Serif JP', serif;
	letter-spacing: 0.05em;
	font-weight: normal;
}


.lead{
	line-height: 2.2;	
}

@media screen and (max-width:769px) {
.lead{
	line-height: 1.85;	
}
}

.wrapper a{
	color:#1D68AB;
	text-decoration: underline;
}

.wrapper a:hover{
	text-decoration: none;
}

em{
    font-style: italic;
}

.font-s{
    font-size:0.8rem;
}

@media screen and (max-width:500px) {    
	.profile .font-s{
		display: block;
	}
}

@media screen and (max-width:426px) {    
.font-s{
    font-size:0.7rem;
}
}

ul{
	list-style: none;
}

.wrapper ul{
	margin:0 0 50px 1.2em;
}

.wrapper ul.form-list,
.wrapper ul.blocks-gallery-grid{
	margin:0 0 50px 0;
}

.wrapper ul li{
	list-style: disc;
}

.wrapper ul.form-list li,
.wrapper ul.blocks-gallery-grid li{
     list-style: none;   
}

.wrapper ol{
	margin:0 0 50px 2.2em;
}

.wrapper ol li{
	list-style: decimal;
}

.wrapper p{
	margin:0 0 20px 0;
}

.wrapper p.mb-80{
	margin:0 0 80px 0;
}

@media screen and (max-width:769px) {
.wrapper p.mb-80{
	margin:0 0 50px 0;
}
}

*{box-sizing:border-box;}

.pc-none{
		display:none;
}

.d-none{
		display:none!important;
}

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

.cl{
	overflow: hidden;
}

/* wordpress editor */

.aligncenter{
	display: block;
	clear: both;
	margin:0 auto 30px auto;
	text-align:center;
}
 
.alignleft{
	float:left;
	margin:0 30px 30px 0;
}

.alignright{
	float:right;
	margin:0 0 30px 30px;
}

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

.alignleft,
.alignright{
	float: none;
	display: block;
	margin:0 auto 20px auto;
}	
	
}

.wp-block-columns{
    flex-wrap: nowrap!important;    
}

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

.wp-block-columns{
    flex-wrap: wrap!important;    
}
}

.wp-block-media-text,
.wp-block-table,
.wp-block-separator{
    margin: 0 0 50px 0;
}

.wp-block-table th,
.wp-block-table td{
    padding: 10px;
}

figure.gallery ul{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 0 50px 0;
}


figure.gallery li.gallery-item{
	list-style: none;
}

.gallery-columns-3 .gallery-item{
	width:31.333%;
	margin:0 0 15px 0;
}

.gallery-columns-4 .gallery-item{
	width:23%;
	margin:0 0 15px 0;
} 

.wp-caption-text{
	display: block!important;
}

/* video */
.wp-block-webfactory-map,
.wp-block-embed-youtube .wp-block-embed__wrapper {
  position: relative;
  padding-bottom: 52.65%;
  height: 0;
  overflow: hidden;
  z-index: 1;
	margin-bottom: 50px;
}

.wp-block-webfactory-map iframe,
.wp-block-webfactory-map object,
.wp-block-webfactory-mapr embed,
.wp-block-embed-youtube .wp-block-embed__wrapper iframe,
.wp-block-embed-youtube .wp-block-embed__wrapper object,
.wp-block-embed-youtube .wp-block-embed__wrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 782px){
.wp-block-column:not(:first-child) {
    margin-left: 62px!important;
}
}

.wp-pagenavi{
	display: flex;
	justify-content: center;
	padding: 50px 0;
}

.wp-pagenavi a, .wp-pagenavi span{
	border-right:none!important;
	border-top:none!important;
	border-left:none!important;
	border-width:2px!important;
	adding: 3px 15px!important;
	margin:0 10px!important;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink{
	border:none!important;
}

/* img
------------------------------ */
img{
	max-width:100%;
	height: auto;
}

img[src$=".svg"],
img[src$=".svgz"]{
	width: 100%;
}

.profile-img img,
.article-block figure img,
.wp-block-image img,
.wp-block-gallery img,
.wp-block-column figure img{
	width:100%;
}

@media screen and (max-width:769px) {
	.profile-img img{
		width: 270px;
	}
	
}

/* color
------------------------------ */

.font-red{
	color:#B20808;
}

.font-gray{
	color:#8C8C8C;
}

/* align
------------------------------ */

.txt-center{
	text-align: center;
}

.txt-right{
	text-align: right;
}

@media screen and (min-width:767px) {
.pc-txt-center{
	text-align: center;
}
}


/* margin padding
------------------------------ */

.m-auto{
	margin-right:auto;
	margin-left:auto;
}

.mx-10{
	margin-right:10px;
	margin-left:10px;
}

.my-30{
	margin-top:30px;
	margin-bottom:30px;
}

.my-50{
	margin-top:50px;
	margin-bottom:50px;
}

@media screen and (max-width:769px) {
.my-50{
	margin-top:30px;
	margin-bottom:30px;
}
}

.mr-10 {
	margin-right:10px;
}

.mr-20 {
	margin-right:20px;
}
.mr-30 {
	margin-right:30px;
}

.mt-20 {
	margin-top:20px;
}
.mt-30 {
	margin-top:30px;
}
.mt-50 {
	margin-top:50px;
}
@media screen and (max-width:769px) {
.mt-50 {
	margin-top:30px;
}	
}

.mb-10 {
	margin-bottom:10px;
}

.mb-20 {
	margin-bottom:20px;
}

.mb-30 {
	margin-bottom:30px;
}

.mb-40 {
	margin-bottom:40px;
}

.mb-50 {
	margin-bottom:50px;
}

.mb-80 {
	margin-bottom:80px;
}

.mb-100 {
	margin-bottom:100px;
}

@media screen and (max-width:769px) {
.mb-50 {
	margin-bottom:30px;
}	

.mb-80 {
	margin-bottom:50px;
}	
}

.p-10{
	padding:10px;
}

.p-20{
	padding:20px;
}

.p-30{
	padding:30px;
}

.p-50{
	padding:50px;
}

.p-80{
	padding:80px;
}

@media screen and (max-width:769px) {
.p-80{
	padding:0;
}
.p-50{
	padding:30px;
}
}

.px-10{
	padding-right:10px;
	padding-left:10px;
}

.px-15{
	padding-right:15px;
	padding-left:15px;
}

.px-20{
	padding-right:20px;
	padding-left:20px;
}

.px-30{
	padding-right:30px;
	padding-left:30px;
}

.py-20{
	padding-top:20px;
	padding-bottom:20px;
}

.py-30{
	padding-top:30px;
	padding-bottom:30px;
}

.py-40{
	padding-top:40px;
	padding-bottom:40px;
}

.py-50{
	padding-top:50px;
	padding-bottom:50px;
}

.py-80{
	padding-top:80px;
	padding-bottom:80px;
}


@media screen and (max-width:769px) {
.py-50{
	padding-top:30px;
	padding-bottom:30px;
}

.py-80{
	padding-top:50px;
	padding-bottom:50px;
}

}

.pl-30{
	padding-left:30px;
}

.pr-30{
	padding-right:30px;
}
.pt-30 {
	padding-top:30px;
}
.pt-40 {
	padding-top:40px;
}
.pt-50 {
	padding-top:50px;
}
.pt-80 {
	padding-top:80px;
}

.pt-100 {
	padding-top:100px;
}

.pb-10 {
	padding-bottom:10px;
}

.pb-20 {
	padding-bottom:20px;
}

.pb-30 {
	padding-bottom:30px;
}

.pb-40 {
	padding-bottom:40px;
}

.pb-50 {
	padding-bottom:50px;
}

.pb-80 {
	padding-bottom:80px;
}

@media screen and (max-width:769px) {
.pb-80 {
	padding-bottom:50px;
}  
.pt-80 {
	padding-top:50px;
}
}

/* flex
------------------------------ */

.flex{
	display: flex;
}

.flex-wrap{
	flex-wrap:wrap;
}

.justify-between{
	justify-content: space-between;
}

.justify-around{
	justify-content: space-around;
}

.justify-center{
	justify-content: center;
}

.justify-end{
     justify-content: flex-end;   
}


.align-items-center{
	align-items: center;
}

.align-items-end{
    align-items: end;
}

.align-content-center{
	align-content: center;
}

.row-reverse{
	flex-direction: row-reverse;
}


/* # =================================================================
   # ANIMATION
   # ================================================================= */

/* fadeIn */
.fadeIn{
animation-name: fadeInAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
/* fadeUp */

.fadeUp{
animation-name: fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(50px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/* fadeDown */

.fadeDown{
animation-name: fadeDownAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeDownAnime{
  from {
    opacity: 0;
	transform: translateY(-50px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

.blur {
    animation-name: blurAnime;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes blurAnime{
  from {
	filter: blur(10px);
	transform: scale(1.02);
 	opacity: 0;
  }

  to {
	filter: blur(0);
	transform: scale(1);
	 opacity: 1;
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeInTrigger,
.fadeUpTrigger,
.fadeDownTrigger,
.blurTrigger{
    opacity: 0;
}

/* # =================================================================
   # LOADING
   # ================================================================= */


/* Loading背景画面設定　*/
#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 999999;
	text-align:center;
	background:#F5F5F5;
}

/* Loading画像中央配置　*/
#splash-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	animation-name: fadeInAnime;
	animation-duration:3s;
	animation-fill-mode:forwards;
	opacity:0;
}


@keyframes fadeInAnime{
  from {
    opacity: 0;
	  
  }

  to {
    opacity: 1;
  }
}

#splash-logo p{
	white-space: nowrap;
	letter-spacing: 0.3em;
	font-size:0.9rem;
	font-family: 'Noto Serif JP', serif;
}

/* # =================================================================
   # HEADER
   # ================================================================= */

#header{
	position: relative;
    padding: 0 30px 30px 0;
}

@media screen and (max-width:760px) {
#header{
	padding:0 0 50px 0;
	}
	
}

.english-btn{
	position: relative;
	right:30px;
	text-align: right;
}

@media screen and (max-width:760px) {    
.english-btn{
	top:-10px;
	right:10px;
}
}

.english-btn a{
	display: inline-block;
	border:1px solid #959595;
	padding: 3px 20px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size:0.9rem;
}

.english-btn a:hover{
	background:#ddd;	
}


.sub-title{
	font-size:1.8rem;
	letter-spacing: 0.2em;
    line-height: 1.5;
}

@media screen and (max-width:1024px) {    
.sub-title{
	font-size: 1.3rem;
}	
}

@media screen and (max-width:760px) {    
.sub-title{
	font-size: 1.1rem;
    position: absolute;
    left: 54px;
    top: -8px;
}
	
.english-btn a{
	padding: 6px 20px;
	font-size:0.7rem;
}	
}
	
@media screen and (max-width:426px) {    
.sub-title{
	font-size: 0.8rem;
	left: 50px;
    top: -5px;
}
}

/* # =================================================================
   # Layout
   # ================================================================= */

.row{
	margin: 0 auto;
	padding: 30px 0;
}

@media screen and (max-width:760px) {    
.row{
	padding: 20px 0 20px 20px;
	}
}

.inner{
	width:100%;
	max-width:700px;
	margin: 0 auto;
}

.inner-l{
	width:100%;
	max-width:1150px;
	margin: 0 auto;
}

#container{
	padding:0 0 0 180px;
}

.top-area{
	padding: 0 180px 0 0;
}

@media screen and (max-width:1024px) {
#container{
	padding:0 0 0 140px;
}
	
.top-area{
	padding: 0 140px 0 0;
}

}

@media screen and (max-width:950px) {
#container{
	padding:0 0 0 120px;
}
	
.top #container,
.top-area{
	padding:0!important;
}
	
.top-area header{
	margin:0!important;
}
	
}

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

#container,
#footer-contact,
#footer{
	padding:0 20px;
	flex-wrap: wrap;
}	
}

.side-area{
	width:180px;
}

.main-area{
	width:calc(100% - 180px);
}

@media screen and (max-width:1024px) {
.side-area{
	width:140px;	
}
.main-area{
	width:calc(100% - 140px);
}
}

@media screen and (max-width:950px) {
.side-area{
	width:120px;	
}
.main-area{
	width:calc(100% - 120px);
}
	
.top #container .side-area,
.top #container .main-area{
	width: 100%;
	}
}

@media screen and (max-width:760px) {
.side-area{
	width:auto;
}
	
#container .side-area,
.main-area{
	width:100%;	
}	
}

.wd30{
	width:30%;
}

.wd42{
	width:42%;
}

.wd50{
	width:47%;
}

.wd70{
	width:65%;
}

@media screen and (max-width:1200px) {
.wd42,
.wd50{
	width:100%;
}	
}

@media screen and (max-width:769px) {    
.wd30, 
.wd70{
	width:100%;
}
	
.profile-img .wd30{
	width:30%;
}
.profile-img .wd70{
	width:65%;
}	
}

.slider li{
	height:67vh;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.under-img{
	height:40vh;
	margin:0 0 50px 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}



@media screen and (min-width:769px) {
.under-img{
	display: none;
}
	
}


@media screen and (max-width:760px) {
	
.slider li{
		height: 30vh;
		margin: 0 0 0 50px;
}
	
.under-img{
	height: 26vh;
	margin:0 0 30px 50px;
	}
	
	.single .main-area header{
		padding:20px 0 0 0;
	}	
}

.fancybox-thumbs__list a:before{
	border-color:#1D68AB!important;
}

.article-block:first-child{
	border-top:1px solid #959595;
}
.border-b{
	border-bottom:1px solid #959595;
}

.article-block a{
	display: block;	
}

@media screen and (max-width:760px) {
.article-block a{
	padding-right:0;
	padding-left:0;
}
	
.top .article-block a{
	padding:10px 20px;
}
}

.article-block a:hover{
	background:#ececec;	
}


.btn{
    /*線の基点とするためrelativeを指定*/
	position:relative;
    /*ボタンの形状*/  
	color:#333;
    padding: 10px 30px;
	display:inline-block;
    text-decoration: none;
    outline: none;
}

/*テキストの設定*/
.btn span{
    /*テキストを前面に出すためz-indexの値を高く設定*/
	position:relative;
	z-index: 2;
}

.btn:hover span{
	color: #fff;
}

/*線の設定*/
.btn::after {
	content:'';
    /*絶対配置で線の位置を決める*/
	position:absolute;
	z-index:1;
	bottom:0;
	left:0;
    /*線の形状*/
	background:#333;
	width:100%;
	height:3px;
    /*アニメーションの指定*/
	transition:all 0.3s ease-in-out;
}

/*線が伸びて背景に*/
.btn:hover::after {
	height:100%;
}

@media screen and (max-width:760px) {    
.btn:hover span{
	color: #333;
}
	
.btn:hover::after  {
	height:3px;
	}

	
}

.separate-p p{
	columns: 2;
	column-gap: 5em;
}

@media screen and (max-width:1200px) {
.separate-p p{
	columns:auto;
	column-gap:normal;
}
	
}

/* # =================================================================
   # Title
   # ================================================================= */
.vt{
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}


h1{
	font-size:2.5rem;
	letter-spacing: 0.7em;
    padding: 45px 0 0 0;
	line-height: 1;
}


.under-heading{
	font-size:2.3rem;
	letter-spacing: 0.2em;	
	line-height: 1.3;
}

.top .under-heading {
    font-size: 1.8rem;
    letter-spacing: 0.5em;
}

.top .top-area .under-heading {
    letter-spacing: 0.2em;
}

.under-heading span{
	display: block;
	font-size:1.2rem;
	padding: 10px 0 0 0;
}

.top .under-heading span{
	font-size:1rem;
	letter-spacing: 0.2em;
}

.under-heading span:first-letter{
	text-transform: uppercase;
}

@media screen and (max-width:1200px) {
.top .under-heading{
	letter-spacing: 0.2em;
}
}

@media screen and (max-width:1024px) {    
h1,
.under-heading{
	font-size:1.9rem;
}
	
.top .under-heading{
	font-size:1.6rem;
}
}

@media screen and (max-width:950px) {
.top header.side-area .under-heading{
	padding:0 0 30px 0;
	-ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
	text-align: left;
	font-size: 1.3rem;
}	
	
	.top-news header.side-area,
	.top-gallery header.side-area{
		justify-content: space-between;
		padding: 0 0 0 40px;
	}
	
}


@media screen and (max-width:760px) {    
h1{
    font-size: 1.4rem;
    padding: 0;
    position: absolute;
    left:20px;
    top: 20px;
	z-index: 2;
	letter-spacing: 0.8em;
}

.under-heading{
	padding:0 0 30px 0;
	-ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
	text-align: center;
	font-size: 1.3rem;
}	
	
.under-heading span{
	font-size: 1rem;
}
}

@media screen and (max-width:426px) {   
.top .under-heading,
.under-heading{
	font-size: 1.2rem!important;
	line-height: 1;
}
	
.under-heading span{
	font-size: 0.8rem!important;
}
}

.heading01{
	font-size: 1rem;
	font-family:'Noto Sans JP', sans-serif;
}

.heading02{
	font-size:1.8rem;
	letter-spacing: 0.2em;	
	text-transform: uppercase;
}

@media screen and (max-width:1024px) {    
.heading02{
	font-size:1.4rem;
	}
}

.top-profile-area .heading02,
.profile article .heading02{
	text-transform: inherit;	
}

.single header .heading02{
	display: inline;
	text-transform: inherit;
	padding: 0 0 0 20px;
}

@media screen and (max-width:426px) {  
	
.heading01{
	font-size: 0.9rem;
}
	
.heading02{
	font-size:1.1rem;
	}
}

.profile-area h3{
	font-size:1.2rem;
	letter-spacing: 0.2em;	
	text-transform: uppercase;
	margin:30px 0;
}

.profile-area h3::before{
	content:'-';
}

@media screen and (max-width:426px) {    
.profile-area h3{
	font-size:1.1rem;
	}
}


/* # =================================================================
   # g-navi
   # ================================================================= */

@media screen and (max-width:760px) {    
#g-nav{
	position: relative;
	top:20px;
	z-index: 1;
}
	
}

#g-nav .sns-link,
#g-nav .english-btn{
	display: none;
}

#g-nav.panelactive .sns-link{
	display: flex;
	width:100%;
}

#g-nav.panelactive .english-btn{
	display: block;
	text-align: center;
	top:inherit;
	right:inherit;
}

#g-nav.panelactive .english-btn a {
	padding: 8px 40px;
}

.panelactive #g-nav-list{
	display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
	background: rgba(245,245,245,0.9);
}

.panelactive #g-nav-list nav{
	display: flex;
    justify-content: center;
	flex-wrap: wrap;
}


#g-nav-link{
	float: right;
}

.panelactive #g-nav-link.vt{
	float:none;
}

#g-nav-link li{
	line-height: 1.5;
	letter-spacing: 0.25em;
    margin: 0 30px;
}

@media screen and (max-width:1024px) {    
#g-nav-link li{
    margin: 0 19px;
}
}

@media screen and (max-width:760px) {    
#g-nav-link li{
	line-height: 1.2;
	letter-spacing: 0.15em;
}	
}

#g-nav-link li a:hover{
	color:#1D68AB; 	
}

#g-nav-link li span{
	display: block;
	font-size:0.7rem;
}

@media screen and (max-width:500px) {    
 #g-nav-link li span{
	font-size:0.5rem;
}   
}

/*open btn*/

.openbtn{
	display: none;
}

.openbtn.fadeDown{
	position: fixed;
    top: 15px;
    right: 15px;
    z-index: 9999;
    background:#F5F5F5;
	border:1px solid #8C8C8C;
    cursor: pointer;
    width: 60px;
    height: 60px;
	display: block;
}
.openbtn span:nth-of-type(1) ,
.openbtn span:nth-of-type(2),
.openbtn span:nth-of-type(3) {
	display: inline-block;
    transition: all .4s;
    position: absolute;
    height: 1px;
    border-radius: 2px;
    background: #666;
    width: 36px;
    left: 11px;
}


.openbtn span:nth-of-type(1) {
	top:10px;
}

.openbtn span:nth-of-type(2) {
	top:18px;
}

.openbtn span:nth-of-type(3) {
	top:26px;
}

.openbtn span:nth-of-type(4) {
    position: absolute;
    left: 8px;
    top:34px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: #333;
    font-size: 0.7rem;
    line-height: 1.7;
}

.openbtn.active span:nth-of-type(1) {
	top:15px;
    transform: translateY(6px) rotate(-160deg);
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    transform: translateY(-6px) rotate(158deg);
}

/*hide menu*/

#g-nav.panelactive{
    position:fixed;
    z-index: 999;
	top: 0;
	left:0;
	width:100%;
    height: 100vh;
}


/* # =================================================================
   # CONTACT
   # ================================================================= */

.mw_wp_form_preview .form ul{
    margin: 0 0 80px 0;
}

input , button , textarea , select {
	margin:0;
	padding:0;
	border:none;
	border-radius:0;
	outline:none;
	background:none;
}

input[type='text'] , 
input[type='email'] , 
textarea{
	width:100%;
	border:1px solid #C4C4C4;
    border-radius: 5px;
	background:#F3F3F3;
	padding: 10px;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	font-size: 16px;
}

input[type='text'] , input[type='email'] {
	height:50px;
}

.mw_wp_form_preview dl{
	padding:0 0 10px 0;
	border-bottom:1px solid #C4C4C4;
}

textarea {
	height:300px;
}

@media screen and (max-width:769px) {
.form-list dt{
	margin:0 0 10px 0;
}
}

.contact-btn{
	border:1px solid #aaa;
	padding: 10px 20px;
	border-radius: 5px;
	transition: all 0.5s;
}

.contact-btn:hover{
	background:#ddd;	
}

/* # =================================================================
   # top
   # ================================================================= */

.top .article-block{
	margin-left:180px;
}

@media screen and (max-width:1200px) {
.top .article-block{
	margin:0 20px;
}	
}

.top-gallery ul{
	margin-right:30px;
}

@media screen and (max-width:950px) {
.top-gallery ul{
	margin-right:20px;
	margin-left:20px;
}	
}

.top-profile-area{
	position: relative;
}

.top-profile-area:after{
	content:'';
	position: absolute;
	left:50%;
	width:1px;
	height: 100%;
	background:#8C8C8C;
}

@media screen and (max-width:1200px) {
.top-profile-area:after{
	display: none;
}
	
}

.message-area{
	line-height: 2.8;
}

@media screen and (max-width:1200px) {
.top .message-area{
	border-top:1px solid #8C8C8C;
	border-bottom:1px solid #8C8C8C;
	padding:50px 40px;
}
}

@media screen and (max-width:500px) {
.message-area{
	line-height: 2;
}
	
.top .message-area{
	padding:50px 20px;
}
	
}

.top-news header,
.top-gallery header{
	position: relative;
}

@media screen and (max-width:950px) {
	.top-news.pb-30,
	.top-gallery.pb-30{
		padding:0;
	}
	
}

.page-link{
	position: absolute;
	bottom:0;
}

.page-link a{
	font-family: 'Noto Serif JP', serif;
	text-transform: uppercase;
	position: relative;
	display: inline-block;
	background:url(img/arrow-t.svg) no-repeat bottom center;
	padding: 0 0 60px 0;
	margin: 0 0 0 22px;
	top:-10px;
}

.page-link a:hover{
	top:0;	
}

@media screen and (max-width:950px) {
.page-link{
	right:25px;
	bottom:inherit;
}

.page-link a{
	background:url(img/arrow-w.svg) no-repeat bottom;
	padding: 0 5px 15px 0;
	margin: 0;
	top:inherit;
}

.page-link a:hover{
	top:inherit;	
}
	
}

@media screen and (max-width:1200px) {
	.top-profile-area .wd42:first-child{
		padding: 20px 40px;
	}		
}

@media screen and (max-width:500px) {
	.top-profile-area .wd42:first-child{
		padding: 20px;
	}
	
	.top-profile-area .wd42 .txt-right{
		text-align: center;
	}
	
}


/* # =================================================================
   # footer
   # ================================================================= */

#footer-contact{
	text-align: center;
}

#footer small{
	display: block;
	text-align: center;
}

.sns-link{
	font-size:1.6rem;
}

.sns-link a{
	color: #666;	
}

.sns-link a:hover{
	color: #999;	
}

/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right:20px;
	bottom:0;
	z-index: 2;
	opacity: 0;
	transform: translateY(100px);
}

@media screen and (max-width:769px) {    
#page-top {
	right: 0;
}
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
	}
	
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}


/*リンクの形状*/
#page-top a{
	display: block;
	width: 60px;
	height: 40px;
	transition:all 0.3s;
    position: relative;
}

#page-top a::before{
     content:'';
    position: absolute;
	left: 38%;
    top: -3px;
    background:#8C8C8C;
    width:2px;
    height: 20px;
    transform: rotate(45deg);
}

#page-top a::after{
    content:'';
    position: absolute;
    left: 61%;
    top: -4px;
    background:#8C8C8C;
    width:2px;
    height: 20px; 
    transform: rotate(-45deg);
}
