@charset "utf-8";

/*
Theme Name: daisenji_child
Template: daisenji_child
Author: t-labo
Author URI: https://takai-laboratory.com/
*/

/*========================*/
/*fade
***************/
/* 画面外にいる状態 */
.fadein {
opacity : 0;
transform : translate(0, 150px);
transition : all 1500ms;
}

/* 画面内に入った状態 */
.fadein.scrollin {
opacity : 1;
transform : translate(0, 0);
}
#wrap {overflow: hidden;}
.indication {animation: mainVisualFadeIn 1.5s ease-out 1s both;}
.indent_content {padding: 100px 0;}
.indent_content02 {margin-top: 50px;}
.content {padding: 40px; position: relative;}
/******************************
HEADER
******************************/
header {position: relative;}
header .head_inner {padding: 10px 0; background: rgba(0,0,0,.8); position: fixed; top: 0; left: 0; right: 0; margin: auto; z-index: 100; transition-duration: .5s; opacity: 0;}
header h1 {font-size: 12px;}
header .nav_none {position: relative; z-index: 110;}
header .inner {margin-top: 10px;}
.global_nav {display: table; width: 600px; padding-right: 20px;}
.global_nav li {display: table-cell; position: relative; line-height: 1; box-sizing: border-box; font-size: 20px;}
.global_nav a::after {
  position: absolute;
  bottom: -5px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #fff;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .3s;
}
.global_nav a:hover::after {
  transform: scale(1, 1);
}
@media screen and (max-width:1300px) { 
	.global_nav {padding-right: 200px;}

}
.front_main {position: relative; width: 100%; height: 100%; box-sizing: border-box; opacity: 0;}
.front_main .swiper-container {height: 100%;}
.front_main .slide-img {height: 100%; width: 100%;}
.front_main .slide-img img {width: 100%; height: 100%; object-fit: cover;}
.front_main .net {position: absolute; content: ''; top: 0; left: 0; width: 100%; height: 100%; background: url("img/header/net.png")top left repeat; z-index: 10;}
.front_main .main_text {position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; z-index: 20;}
.front_main .inview .txt_img {animation: mainLogoFadeIn 2s ease 1s both; animation-delay: 2s; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.front_main .info_box {background: #0b0b0b; width: 2000px; left: 50%; margin-left: -600px; bottom: 0; position: absolute; z-index: 20; padding-left: 20px;}
.front_main .info_box h2 {font-size: 20px; line-height: 1.7; margin-right: 50px;}
.front_main .info_box h2 span {font-size: 25px; box-sizing: border-box; border-bottom: 1px solid #fff;}
.front_main .info_item {background: url("img/header/info_bg.png")bottom 10px right 20px no-repeat; background-color: #fff; width: 287px; box-sizing: border-box; font-size: 16px; line-height: 1; margin-right: 20px;}
.front_main .info_item .img {width: 75px; margin-right: 15px;}
.front_main .info_item .img img {width: 74px; height: 75px; object-fit: cover;}
.front_main .time {margin-bottom: 5px;}
.front_main .info_btn {background: #2b3700; width: 60px; height: 115px; font-size: 18px; line-height: 1; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl;}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.05);
  }
}
@keyframes mainLogoFadeIn {
  0% {
    opacity: 0;
    filter: blur(60px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
  }
}
@keyframes mainVisualFadeIn {
  0% {
    opacity: 0;
    filter: blur(10px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
  }
}
.fadeIn {
  opacity : 0;
transition: opacity .6s cubic-bezier(.25,.1,.25,1);
}
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomUp 10s linear 0s 1 normal both;  
}
.slide-img img{
  display: block;
}
.swiper-container-fade .swiper-slide {overflow: hidden;}
.menu_trigger_box {position: absolute; top: 0; right: 0;}
.menu-trigger {position: relative; z-index: 9999; background: #0b0b0b; width: 92px; height: 92px; box-sizing: border-box; outline: none; border: none;}
.menu-trigger span {content: ''; background: #fff; width: 40px; height: 1px; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; transition: all 0.3s ease-in-out, top 0.5s ease;}
.menu-trigger span:nth-child(1) {top: 35px; bottom: inherit;}
.menu-trigger span:nth-child(3) {top: inherit; bottom: 35px;}
.open header .head_inner {position: absolute; visibility: visible; opacity: 1;}
.open .menu-trigger span:nth-child(1) {
top: 45px;
transform: rotate(45deg);
}
.open .menu-trigger span:nth-child(2) {
transform: translateX(50px);
opacity: 0;
}
.open .menu-trigger span:nth-child(3) {
top: 45px;
bottom: inherit;
transform: rotate(-45deg);
}
.hidden {visibility: hidden;}
.visible {visibility: visible; opacity: 1!important; position: fixed!important;}
@media screen and (max-height: 750px) {
	.front_main .inview .txt_img img {width: 80%;}
}


/*index*/
#index #t01,#index #t02,#index #t03{margin-top: -100px; padding-top: 100px;}
#index .box01 {background: url("img/index/box01_bg.jpg")top left repeat;}
#index .box01 ul {width: 1280px; min-width: 1280px;}
#index .box01 li {width: 240px; margin-right: 20px;}
#index .box01 li:nth-child(5n) {margin-right: 0;}
#index .box01 h2 {margin-right: 20px; min-width: 240px;}
#index .box01 .btn,#index .box06 .btn {font-size: 20px; line-height: 1; width: 355px; height: 60px; margin: 100px auto 0; position: relative; -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; color: #000;}
#index .box01 .btn:hover,#index .box06 .btn:hover {color: #fff; background: #000;}
#index .box01 .btn::before,#index .box06 .btn::before {content: ''; width: 355px; height: 60px; border: 1px solid #000; position: absolute; bottom: -4px; right: -4px; -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}
#index .box01 .btn::after,#index .box06 .btn::after {content: ''; width: 355px; height: 60px; border: 1px solid #000; position: absolute; top: -4px; left: -4px; -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}
#index .box01 .btn:hover::before,#index .box06 .btn:hover::before {bottom: -1px; right: -1px;}
#index .box01 .btn:hover::after,#index .box06 .btn:hover::after {top: -1px; left: -1px;}

#index .insert_img {min-width: 1920px; position: relative; left: 50%; margin-left: -960px;}
#index .box02 {background: url("img/index/box02_bg.jpg")top left repeat;}
#index .box02 h2,#index .box03 h2,#index .box05 h2,#index .box06 h2 {font-size: 30px; position: relative;}
#index .box02 h2::before,#index .box03 h2::before,#index .box05 h2::before,#index .box06 h2::before {content: ''; background: url("img/index/box02_title_icon.png")no-repeat; width: 101px; height: 103px; top: 0; bottom: 0; left: 0; right: 0; margin: auto; font-size: 30px; position: absolute;}
#index .box02 .txt01,#index .box03 .txt01,#index .box05 .txt01,#index .box06 .txt01 {font-size: 18px; line-height: 1; margin: 20px auto 80px;}
#index .box02 li {width: 575px; font-size: 20px;}
#index .box02 li:nth-child(n + 3) {margin-top: 50px;}
#index .box02 ul::before {content: ''; position: absolute; background: url("img/index/box02_bg_icon02.png")no-repeat; width: 594px; height: 790px; right: -590px; top: -200px;}
#index .box02 ul::after {content: ''; position: absolute; background: url("img/index/box02_bg_icon01.png")no-repeat; width: 594px; height: 790px; left: -590px; bottom: -100px;}
#index .box02 li a {position: relative; margin-bottom: 30px; padding: 10px; background: url("img/index/box02_img01.jpg")no-repeat; width: 575px; height: 300px; box-sizing: border-box; transition: all 400ms cubic-bezier(.25,.1,.25,1);}
#index .box02 li:nth-child(2) a {background: url("img/index/box02_img02.jpg")no-repeat;}
#index .box02 li:nth-child(3) a {background: url("img/index/box02_img03.jpg")no-repeat;}
#index .box02 li:nth-child(4) a {background: url("img/index/box02_img04.jpg")no-repeat;}
#index .box02 .txt_box {box-sizing: border-box; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; font-size: 16px; line-height: 1; width: 150px; height: 280px; background: rgba(255,255,255.8); transition: all 400ms cubic-bezier(.25,.1,.25,1);}
#index .box02 .text01 {
	font-size: 50px;    
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	margin: 68px auto 20px;
}
#index .box02 .text03 {
	font-size: 25px;    
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	margin: 68px auto 20px;
}
#index .box02 .bdr_box {box-sizing: border-box; border: 1px solid #fff; width: 100%; height: 100%;}
#index .box02 li:hover .txt_box {background: none; color: #fff;}
#index .box02 li:hover a {background: url("img/index/box02_h_img01.jpg")no-repeat;}
#index .box02 li:nth-child(2):hover a {background: url("img/index/box02_h_img02.jpg")no-repeat;}
#index .box02 li:nth-child(3):hover a {background: url("img/index/box02_h_img03.jpg")no-repeat;}
#index .box02 li:nth-child(4):hover a {background: url("img/index/box02_h_img04.jpg")no-repeat;}






#index .box02 a:hover img {
	filter: alpha(opacity=100);
	opacity: 1;
}


#index .box03 {background: url("img/index/box03_bg.jpg")top center repeat;}
#index .box03 .swiper_all {overflow: hidden; margin-bottom: 100px; max-width: 1100px;}
#index .box03 .swiper-button-prev:after,#index .box03 .swiper-button-next:after {display: none;}
#index .box03 .swiper-button-prev:focus,#index .box03 .swiper-button-next:focus {outline:0;}
#index .box03 .swiper-button-prev {width: 50px; height: 50px; left: -5px;}
#index .box03 .swiper-button-next {width: 50px; height: 50px; right: -5px;}
#index .box03 .swiper-container {overflow: inherit;}
#index .box03 .swiper-slide {margin: 0 50px; font-size: 20px; line-height: 1.5;}
#index .box03 .img {min-width: 550px; margin-right: 50px;}
#index .box03 .pick {font-size: 20px; margin-right: 30px;}
#index .box03 .over {font-size: 60px; line-height: 1; font-style: italic;}
#index .box03 h3 {font-size: 50px; margin: 5px 0 15px;}
#index .box03 .img_inner {margin-top: 10px;}
#index .box03 .img_inner a {margin-right: 10px;}
#index .box03 .img_inner a:nth-child(4) {margin-right: 0;}
#index .box03 .no {font-size: 45px;}
#index .box03 .font_sz{font-size: 35px;}
#index .box04 {background: url("img/index/box04_bg.jpg")top left repeat;}
#index .box04 .box {width: 366px; box-sizing: border-box; border: 1px solid #cbcbcb; position: relative; padding: 4px;}
#index .box04 .box::before,#index .box04 .box::after {content: ''; display: block; width: 1px; height: 0; background: rgba(26,26,26,.65); transition: all 400ms cubic-bezier(.25,.1,.25,1); position: absolute; top: 50%;}
#index .box04 .box::before {left: -1px;}
#index .box04 .box::after {right: -1px;}
#index .box04 a {transition: all 600ms cubic-bezier(.25,.1,.25,1); background: #000;}
#index .box04 a::before,#index .box04 a::after {content: ''; display: block; width: 0; height: 1px; background: rgba(26,26,26,.65); position: absolute; left: 50%; transition: all 400ms cubic-bezier(.25,.1,.25,1);}
#index .box04 a::before {top: -1px;}
#index .box04 a::after {bottom: -1px;}
#index .box04 a p {position: absolute; text-align: center; top: 0; bottom: 0; left: 0; right: 0; margin: auto; z-index: 20; font-size: 20px;}
#index .box04 .box:hover::before,#index .box04 .box:hover::after {top: 0; height: 100%;}
#index .box04 .box:hover a::before,#index .box04 .box:hover a::after {left: 0; width: 100%;}
#index .box04 .box img {transition: all 400ms cubic-bezier(.25,.1,.25,1);}
#index .box04 .box:hover img {opacity: .3;}
#index .box04 .box span {position: relative; line-height: 1;}
#index .box04 .box span::after {content: ''; position: absolute; left: 0; width: 100%; height: 1px; bottom: -11px; background: #fff; transform: scale(0, 1); transform-origin: center top; transition: transform .3s;}
#index .box04 .box:hover span::after {transform: scale(1, 1);}

#index .box05 {background: url("img/index/box05_bg.jpg")top left repeat;}
#index .box05 iframe {box-sizing: border-box; border: 2px solid #b5b5b5; width: 1200px; height: 400px; position: relative; z-index: 10;}
#index .box05 .map {margin-bottom: 100px;}
#index .box05 .map::before {content: ''; position: absolute; background: url("img/index/box05_bg_icon01.png")no-repeat; width: 456px; height: 204px; top: -210px; right: -350px;}
#index .box05 .map::after {content: ''; position: absolute; background: url("img/index/box05_bg_icon02.png")no-repeat; width: 526px; height: 204px; bottom: -200px; left: -380px;}
#index .box05 table {margin-top: 50px; position: relative;}
#index .box05 table::after {content: ''; position: absolute; background: url("img/index/box05_bg_icon03.png")no-repeat; width: 528px; height: 204px; bottom: -100px; right: -500px;}
#index .box05 th,#index .box05 td {font-size: 20px;  padding-bottom: 15px;}
#index .box05 th {padding-right: 50px;}
#index .box06 {background: url("img/index/box06_bg.jpg")top left repeat;}
#index .box06 .blog_item {box-sizing: border-box; border-bottom: 1px solid #b5b5b5; line-height: 1; padding: 20px 0;}
#index .box06 .time {font-size: 20px;}
#index .box06 .tag {background: #2b3700; width: 70px; height: 20px; margin: 0 20px;}

#index .zoom01 {background: url("img/index/zoom_bg.jpg")top left repeat;}

/*========================
FOOTER
========================*/
footer {background: url("img/footer/bg.jpg")top center no-repeat; padding-top: 100px;}
footer .home_link {font-size: 18px; line-height: 1; margin: 50px auto;}
footer .list a {font-size: 20px; line-height: 1; margin-top: 25px;}
footer .list a:nth-child(1) {margin-top: 0;}
footer .box {font-size: 20px; padding-top: 40px;}
footer .txt01 {margin-bottom: 20px;}
footer .copyright {background-color: #000; padding: 10px 0; margin-top: 100px; font-size: 12px; font-weight: normal;}
footer .copyright p:last-child {margin-left: 10px;}

/*pankuzu*/
.pan {padding: 40px 0;}
.pan p {font-weight: bold; margin: 0 auto;}
.pan a {display: inline;}
/*========================
ページ設定
========================*/
/*
サムネ
*************/
.page_thumb {
width: 100%;
margin: auto;
box-sizing: border-box; 
background: url(img/thumb_bg.jpg)center center no-repeat;
height: 500px;
color: #fff;
display: flex;
justify-content: center;
align-items: center;
font-size: 50px;
letter-spacing: 5px;
line-height: 1;
}
.page_thumb span {font-size: 20px; margin-top: 10px; margin-left: 20px;}
.thumb02 {background: url(img/thumb_bg02.jpg)center center no-repeat;} 
.thumb03 {background: url(img/thumb_bg03.jpg)center center no-repeat;} 
.thumb04 {background: url(img/thumb_bg04.jpg)center center no-repeat;} 
.thumb05 {background: url(img/thumb_bg05.jpg)center center no-repeat;} 
.thumb06 {background: url(img/thumb_bg06.jpg)center center no-repeat;} 
.thumb07 {background: url(img/thumb_bg07.jpg)center center no-repeat;} 
.thumb08 {background: url(img/thumb_bg08.jpg)center center no-repeat;} 
.thumb09 {background: url(img/thumb_bg09.jpg)center center no-repeat;} 
.thumb10 {background: url(img/thumb_bg10.jpg)center center no-repeat;} 
.thumb11 {background: url(img/thumb_bg11.jpg)center center no-repeat;} 
.thumb12 {background: url(img/thumb_bg12.jpg)center center no-repeat;} 

/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
.page_thumb img {
height: 120px;
}
}

/*
タイトル
*************/
.page_title {
font-size: 30px;
line-height: 1;
margin-bottom: 40px;
}
.big_page_title {font-size: 70px; letter-spacing: 5px; margin-bottom: 5px;}


/*
記事詳細ページ
***************/

.previous-entries,.next-entries {
color: #fff;
width: 100px;
background: #161616;
padding: 3px 0;
box-sizing: border-box;
font-weight: bold;
text-align: center;
}

.gallery_entry {
display: inline-block;
vertical-align: middle;
width: 12px;
height: 20px;
margin: 0 10% 3px;
}

.nav_archive_btn {
color: #fff;
width: 200px;
background: #161616;
padding: 3px 0;
box-sizing: border-box;
font-weight: bold;
text-align: center;
}
.navigation {margin-bottom: 40px;}

/*ページネーション
*******************/
.paging {
clear: both;
padding: 20px 0;
position: relative;
font-size: 14px;
line-height: 14px;
text-align: center;
}
.paging-box {
display: inline-block;
}
.paging span, .paging a {
display: block;
float: left;
margin: 2px 2px 2px 0;
padding: 10px 15px 10px 15px;
text-decoration: none;
width: auto;
color: #000; /* 文字色 */
background: #ddd; /* 背景色 */
border: 1px solid #bbb;
font-weight: bold;
}
.page-of {display: none !important;}
.paging a:hover{
color: #fff; /* マウスホバー時の文字色 */
background: #ccc; /* マウスホバー時の背景色 */
}
.paging .current{
padding: 10px 15px 10px 15px;
color: #fff; /* 文字色 */
background: #ccc; /* 背景色 */
}
@media only screen and (max-width: 413px) {
.paging {
font-size: 12px;
padding-bottom: 0;
line-height: 12px;
}
.paging span, .paging a {
padding: 8px 10px 8px 10px;
}
.paging .current{
padding: 8px 10px 8px 10px;
}
}
