/*
Theme Name: taiseithema
*/
@charset "utf-8";

/*-----------------------------------
テーマ用CSS設定　自由入力
-----------------------------------*/

@media screen and (min-width: 959px) {
	/* 959px以上に適用されるCSS（PC用） */
.pc { display: block !important; }
.sp { display: none !important; }

	/* body全体にフェードイン */
body {
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}

h1{
  font-size:30px;
  padding-top:    30px;  /* 上だけ指定 */
  padding-left:   50px;  /* 左だけ指定 */
  padding-right:  0px;  /* 右だけ指定 */
  padding-bottom: 0px;  /* 下だけ指定 */
  letter-spacing: 0.1rem;
}

h2{
  font-size: 1.7rem;
  text-align: center;
  margin: 0 0 30px 0;
}


#logo {
  padding-top: 20px;
  padding:30px;
  padding-left:80px;
  display:flex;
}

#translate-eng{
  position: absolute;
  right: 250px;
  top: 50px;
  width: 50px;
  height: 40px;
}

#translate-deu{
  position: absolute;
  right: 300px;
  top: 50px;
  width: 50px;
  height: 40px;
}

/*start-hamburger*/
/* 
hamburger(ハンバーガーアイコン)
=================================== */
.hamburger {
  position: absolute;
  right: 50px;
  top: 50px;
  width: 50px;
  height: 40px;
  cursor: pointer;
  z-index: 300;
}

.hamburger__line {
  position: absolute;
  width: 50px;
  height: 3px;
  left: 0;
  background-color: #000;
  transition: all 0.5s;
}

.hamburger__line--1 {
  top: 1px;
}

.hamburger__line--2 {
  top: 18px;
}

.hamburger__line--3 {
  top: 36px;
}

/*ハンバーガーがクリックされたら*/
.open .hamburger__line--1 {
  transform: rotate(-45deg);
  top: 11px;
}

.open .hamburger__line--2 {
  opacity: 0;
}

.open .hamburger__line--3 {
  transform: rotate(45deg);
  top: 11px;
}

/* 
sp-nav(ナビ)
=================================== */
.sp-nav {
  position: fixed;
  right: -100%;
  /*ハンバーガーがクリックされる前はWindow右側に隠す*/
  top: 0px;
  width: 18%;
  /* 出てくるスライドメニューの幅 */
  height: 100vh;
  background-color: #fff;
  transition: all 0.5s;
  z-index: 200;
  overflow-y: auto;
  /* メニューが多くなったらスクロールできるように */
  font-size: 18px;
  padding: 30px;
  line-height:2.5;
}

/*ハンバーガーがクリックされたら右からスライド*/
.open .sp-nav {
  right: 0;
}


/* 
black-bg(ハンバーガーメニュー解除用bg)
=================================== */
.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 5;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
  cursor: pointer;
  z-index: 100;
}

/*ハンバーガーメニューが開いたら表示*/
.open .black-bg {
  opacity: 0.3;
  visibility: visible;
}
/*/end-hamburger*/


#set{
  display: flex;
  margin-top:50px;
}

}
dt {
  font-size: 30px;
  font-weight: bold;
  padding-top: 40px;
  padding-left: 50px;
  padding-right: 200px;
}

dd {
  padding-top: 15px;
  padding-left: 100px;
  font-size: 15px;
  color: #aaaaaaaa;
}

#page-link li a{
  color: #303b46;

}

#page-link li a::before{
  content:'▶';
  font-size:28px;
  color: #ccc;
  padding-right: 30px ;
}

small{
  background:#333;
  color:#fff;
  display: block;
  text-align: right;
  padding:30px;
}




@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
.pc { display: block !important; }
.sp { display: none !important; }

	/* body全体にフェードイン */
body {
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}

h1{
  font-size:30px;
  padding-top:    30px;  /* 上だけ指定 */
  padding-left:   50px;  /* 左だけ指定 */
  padding-right:  0px;  /* 右だけ指定 */
  padding-bottom: 0px;  /* 下だけ指定 */
  letter-spacing: 0.1rem;
}

h2{
  font-size: 1.7rem;
  text-align: center;
  margin: 0 0 30px 0;
}


#logo {
  padding-top: 20px;
  padding:30px;
  padding-left:80px;
  display:flex;
}


/*start-hamburger*/
/* 
hamburger(ハンバーガーアイコン)
=================================== */
.hamburger {
  position: absolute;
  right: 50px;
  top: 50px;
  width: 50px;
  height: 40px;
  cursor: pointer;
  z-index: 300;
}

.hamburger__line {
  position: absolute;
  width: 50px;
  height: 3px;
  left: 0;
  background-color: #000;
  transition: all 0.5s;
}

.hamburger__line--1 {
  top: 1px;
}

.hamburger__line--2 {
  top: 18px;
}

.hamburger__line--3 {
  top: 36px;
}

/*ハンバーガーがクリックされたら*/
.open .hamburger__line--1 {
  transform: rotate(-45deg);
  top: 11px;
}

.open .hamburger__line--2 {
  opacity: 0;
}

.open .hamburger__line--3 {
  transform: rotate(45deg);
  top: 11px;
}

/* 
sp-nav(ナビ)
=================================== */
.sp-nav {
  position: fixed;
  right: -100%;
  /*ハンバーガーがクリックされる前はWindow右側に隠す*/
  top: 0px;
  width: 18%;
  /* 出てくるスライドメニューの幅 */
  height: 100vh;
  background-color: #fff;
  transition: all 0.5s;
  z-index: 200;
  overflow-y: auto;
  /* メニューが多くなったらスクロールできるように */
  font-size: 18px;
  padding: 30px;
  line-height:2.5;
}

/*ハンバーガーがクリックされたら右からスライド*/
.open .sp-nav {
  right: 0;
}


/* 
black-bg(ハンバーガーメニュー解除用bg)
=================================== */
.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 5;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
  cursor: pointer;
  z-index: 100;
}

/*ハンバーガーメニューが開いたら表示*/
.open .black-bg {
  opacity: 0.3;
  visibility: visible;
}
/*/end-hamburger*/


#set{
  display: flex;
}

section{
  padding-top: 80px;
  padding:30px;
}



#page-link li a::before{
  content:'▶';
  font-size:20px;
  padding:0 30px 0 0;
  color: #ccc;
}


small{
  background:#333;
  color:#fff;
  display: block;
  text-align: right;
  padding:30px;
}

}


@media screen and (max-width: 480px) {
	/* 480px以下に適用されるCSS（スマホ用） */
  .pc { display: block !important; }
  .sp { display: none !important; }

    /* body全体にフェードイン */
  body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
  }
  
  @keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
  }
  
  @-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
  }
  
  h1{
    font-size:30px;
    padding-top:    30px;  /* 上だけ指定 */
    padding-left:   50px;  /* 左だけ指定 */
    padding-right:  0px;  /* 右だけ指定 */
    padding-bottom: 0px;  /* 下だけ指定 */
    letter-spacing: 0.1rem;
  }
  
  h2{
    font-size: 1.7rem;
    text-align: center;
    margin: 0 0 30px 0;
  }
  
  
  #logo {
    padding-top: 20px;
    padding:30px;
    padding-left:80px;
    display:flex;
  }
  
  
  /*start-hamburger*/
  /* 
  hamburger(ハンバーガーアイコン)
  =================================== */
  .hamburger {
    position: absolute;
    right: 50px;
    top: 50px;
    width: 50px;
    height: 40px;
    cursor: pointer;
    z-index: 300;
  }
  
  .hamburger__line {
    position: absolute;
    width: 50px;
    height: 3px;
    left: 0;
    background-color: #000;
    transition: all 0.5s;
  }
  
  .hamburger__line--1 {
    top: 1px;
  }
  
  .hamburger__line--2 {
    top: 18px;
  }
  
  .hamburger__line--3 {
    top: 36px;
  }
  
  /*ハンバーガーがクリックされたら*/
  .open .hamburger__line--1 {
    transform: rotate(-45deg);
    top: 11px;
  }
  
  .open .hamburger__line--2 {
    opacity: 0;
  }
  
  .open .hamburger__line--3 {
    transform: rotate(45deg);
    top: 11px;
  }
  
  /* 
  sp-nav(ナビ)
  =================================== */
  .sp-nav {
    position: fixed;
    right: -100%;
    /*ハンバーガーがクリックされる前はWindow右側に隠す*/
    top: 0px;
    width: 18%;
    /* 出てくるスライドメニューの幅 */
    height: 100vh;
    background-color: #fff;
    transition: all 0.5s;
    z-index: 200;
    overflow-y: auto;
    /* メニューが多くなったらスクロールできるように */
    font-size: 18px;
    padding: 30px;
    line-height:2.5;
  }
  
  /*ハンバーガーがクリックされたら右からスライド*/
  .open .sp-nav {
    right: 0;
  }
  
  
  /* 
  black-bg(ハンバーガーメニュー解除用bg)
  =================================== */
  .black-bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 5;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s;
    cursor: pointer;
    z-index: 100;
  }
  
  /*ハンバーガーメニューが開いたら表示*/
  .open .black-bg {
    opacity: 0.3;
    visibility: visible;
  }
  /*/end-hamburger*/
  
  
  #set{
    display: flex;
  }
  
  section{
    padding-top: 80px;
    padding:30px;
  }
  dt {
      font-weight: bold;
  }
  dd {
      font-size: 20px;
      margin-left: 40%;
  }
  
  section:nth-child(2n){
    background:#f3f3f3;
  }
  
  #main-vidual img{
    width: 100%;
  }
  
  #page-link{
    justify-content: center;
    padding: 100px;
  }
  
  #page-link li {
    color: #333;
    padding:20px;
    padding-right:100px;
    font-size:30px;
  }
  
  #page-link li a{
    color: #333;
    padding:50px;
  }
  
  #page-link li a::before{
    content:'▶';
    font-size:20px;
    padding:0 30px 0 0;
    color: #ccc;
  }
  
  
  small{
    background:#333;
    color:#fff;
    display: block;
    text-align: right;
    padding:30px;
  }
}