@charset "UTF-8";

html, body {
  margin: 0;
  
  color: #333;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
a{
	color: #ff93dd;
}
a:hover{
	text-decoration: none;
	color: #fff;
}
.color-pink{
	color: #ff93dd;
}
.btn-pink{
	background: #ff93dd;
	color: #fff;
	border-radius:  15px;
}
.btn-pink:hover{
	background: #FFC7ED;
}
.luxbar-brand{
	line-height: .5rem;
}
/*hero*/
.header { /*ヘッダ部分*/
  position: relative;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100vh;
  min-height: 400px;
  min-width: 300px;
  color: #333;
}
.header:after { /*下部にうっすらグラデーションで影を作る*/
  content: "";
  width: 100%;
  height: 15%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(225, 225, 225, 1.00) 100%);
}
.header:before { /*疑似要素に背景画像を指定、常時アニメーションさせつつ、スクロール時は固定*/
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0) scale(1.0, 1.0);
  transform: translateZ(0);
  background: #fff url("../img/index/hero.jpg") top center no-repeat;
  background-size: cover;
  background-attachment: fixed;
  animation: grow 60s linear 10ms infinite;
  transition: all 0.2s ease-in-out;
  z-index: -2
}
.logo{
	position: absolute;
	top: 20px;
	left: -50px;
}
@keyframes grow { /*微差で拡大/縮小するアニメーション設定*/
  0% {
    transform: scale(1)
  }
  50% {
    transform: scale(1.2)
  }
}
.content {
  padding: 5% 10%;
  text-align: justify
}
/*scroll*/
.arrowWrap {
  position: absolute;
  right: 0;
  bottom: 150px;
  height: 200px
}
.arrowInner p {
  font-size: 12px;
  text-align: end;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  color: #333;
}
.arrow {
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #eee;
  position: relative;
  overflow: hidden;
}
.arrow::before {
  content: '';
  width: 2px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #333;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}
@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}

.c-header{	
	background: url("../img/index/hero.jpg" ) no-repeat;
	background-size: cover;
	background-position: center center;
	height: 350px;
	text-align: center;
}
@media screen and (min-width: 768px) {
	#target { 
    display:flex;
}

/*Message*/
	#message .message {
    position: absolute;
    left: 0;
  }
#message {
  background-image: url("../img/index/message.svg");
  background-repeat: no-repeat;
  background-size: 70%;
	background-position: center left;
	background-attachment: fixed;
}

#policy {
  background-image: url("../img/index/policy.svg");
  background-repeat: no-repeat;
  background-size: 70%;
  background-position: right;
  background-attachment: fixed;
}
	#profile {
  background-image: url("../img/index/profile.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center left;
  background-attachment: fixed;
}
	#post {
  background-image: url("../img/index/post.svg");
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: center left;
  background-attachment: fixed;
}
	#blog {
  background-image: url("../img/blog/Blog.svg");
  background-repeat: no-repeat;
  background-size: 70%;
	background-position:  center;
	background-attachment: fixed;
}
	#books {
  background-image: url("../img/index/books.svg");
  background-repeat: no-repeat;
  background-size: 15%;
  background-position:  right;
  background-attachment: fixed;
}
	#supporter{
	background-image: url("../img/index/support.svg");
	background-repeat: no-repeat;
	background-size: 70%;
	background-position: center right;
	background-attachment: fixed;
}

#contact{
	background-image: url("../img/index/contact.svg");
	background-repeat: no-repeat;
	background-size: 70%;
	background-position: center left;
	background-attachment: fixed;
}
	#thanks{
		background-image: url("../../support/img/thanks.svg");
	background-repeat: no-repeat;
	background-size: 70%;
	background-position: center center;
	background-attachment: fixed;
		height: 100vh;
	}
}
@media screen and (max-width: 767px) {
	.header{
		background: url("../img/index/hero.jpg") no-repeat;
		background-size: cover;
		background-position: center;
	}
	.logo{
	position: absolute;
	top: 20px;
	left: -40px;
	width: 250px;
}
	#message,
	#post,
	#contact{
		background: #fff !important;  
	}
	#profile,
	#policy,
	#supporter{
  position: relative;
  z-index: 0;
}
#profile::after,
	#policy::after,
	#supporter::after{
  content: '';
  position: absolute;
  left:0;
  top: 0;
  transform: skewY(-7deg);
  transform-origin: bottom left;
 background-color: #efefef;
  z-index: -1;
  width:100%;
  height:100%;
}
	
}
.shadow-pink {
  box-shadow: 15px 15px 0 #ff93dd;
}
#message h1:first-letter {
  color: #ff93dd;
}

.youtube {
  width: 100%;
  height: 0;
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
}

.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/*common*/
.rtl {
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  vertical-align: middle;
  color: #ff93dd;
  padding: 10px;
}
.small {
  font-size: 1rem;
}
.bg-pink{
	background: #ff93dd;
}

.luxbar-menu-pink,.luxbar-menu-pink .dropdown ul{background-color:#FF93DD;color:#FFFFFF}
.luxbar-menu-pink .active,.luxbar-menu-pink .luxbar-item:hover{background-color:#FFC7ED}
.luxbar-menu-pink .luxbar-hamburger span,.luxbar-menu-pink .luxbar-hamburger span::before,.luxbar-menu-pink .luxbar-hamburger span::after{background-color:#FFFFFF}

/*Blog*/

.text-shadow{
	text-shadow:  1px 1px 1px #999;
}

#logon{
	background-color: #f89b9e;
background-image: -webkit-linear-gradient(bottom right, #f89b9e 0%, #c9d9ff 74%);
background-image: -o-linear-gradient(bottom right, #f89b9e 0%, #c9d9ff 74%);
background-image: linear-gradient(to top left, #f89b9e 0%, #c9d9ff 74%);
	height:  100vh;
}

#logon .loginBox{
	background: #fff;
	padding: 20px;
	border-radius: 15px;
}
@media (min-width: 481px){
.jumbotron {
  background-image: url("../img/blog/2019_1.jpg");
  background-size: cover;
  background-position: center;
	background-attachment: fixed;
	height: 70vh;
	margin-bottom: 0;
}
}
@media (max-width: 480px){
  .jumbotron{
  background-image: url("../img/blog/2019_2.jpg");
  background-size: cover;
  background-position: center ;
	height: 70vh;
	margin-bottom: 0;
	  -webkit-appearance: none;
	  position: relative;
  }
	#blog-head{
		position: absolute;
		bottom: 10px;
	}
}

#blog a,
#diet a{
	color:  #333;
	text-decoration: none;
}
.newtArticle,.article{
	border:  solid 1px #ff93dd;
	transition: all .3s ease-out;
	box-shadow:  5px 5px #ff93dd;
}
.newtArticle:hover,
.article:hover{
	background-color: #fff;
	box-shadow: 0 0 #ff93dd;
}

.sideBar{
	border-left:  solid 1px #ff93dd;
	padding-left: 5px;
}
.border-b-pink{
	border-bottom:  solid 1px #ff93dd;
	padding-left: 5px;
}
#article{
	background:  rgba(255,255,255,0.7);
}
#article h1,
#article h2,
#article h3{
	border-left:  solid 5px #ff93dd;
	padding-left: 10px;
}
#article a{
	color: #666;
	text-decoration: underline;
}
#article a[target]:after{
	 font-family:"Font Awesome 5 Free";
	font-weight: 900;
	content: '\f35d';
	padding-left:  5px;
}
#article a:hover{
	color:  #ff93dd;
}
blockquote{
    position:relative;
    border-top:1px solid #ccc;
    border-bottom:1px solid #ccc;
    padding:10px;
	font-style: italic;
	background: #fff;
}
blockquote:before{
    position:absolute;
    background-color:#fff;
	border-left:  solid 1px #ccc;
    color:#ccc;
    font-family:"Font Awesome 5 Free";
    content: '\f10d';
    line-height:1;
	font-weight: 900;
    text-align:center;
    top:-20px;
    left:-10px;
    padding:10px;
    font-size:20px;
}
blockquote:after{
    position:absolute;
    right:-10px;
    bottom:-20px;
   background-color:#fff;
	border-right:  solid 1px #ccc;
    padding:10px;
    color:#ccc;
    font-family:"Font Awesome 5 Free";
    content:'\f10e';
    line-height:1;
	font-weight: 900;
    text-align:center;
    font-size:20px;
}
blockquote cite {
    display: block;
    padding-right:30px;
    font-size: 0.8rem;
    text-align: right;
    color: #808080;
}

.index-blog{
	padding:  10px;
}

.index-blog img{
	width:  100%;
  	height:  250px;
  	object-fit:  cover;
}