body {
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

.protect{
  pointer-events:none;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-touch-callout:none;
  -moz-user-select:none;
  touch-callout:none;
  user-select:none;
}

/*　ハンバーガーボタン */
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 32px;
  top   : 32px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
  
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #555;
  -webkit-transition: 0.5s all;
  -moz-transition   : 0.5s all;
  transition        : 0.5s all;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */

.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}
.hamburger.active span:nth-child(2) {
  left: 60%;
  opacity: 0;
  -webkit-animation: active-btn17-bar02 .8s forwards;
  animation: active-hamburger-bar02 .8s forwards;
}
@-webkit-keyframes active-hamburger-bar02 {
  100% {
    height: 0;
  }
}
@keyframes active-hamburger-bar02 {
  100% {
    height: 0;
  }
}
.hamburger.active span:nth-child(3) {
  top: 16px;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}


.hamburger::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  content: '';
  width: 80px;
  height: 80px;
  margin: -45px 0 0 -43px;
  border-radius: 50%;
  border: 2px solid rgba(0, 0, 0, 0);
  transition: all .75s;
}
.hamburger.active::after {
  border: 2px solid #555;
}

nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  top  : 0;
  left : 0;
  color: #555;
  background: #fff;
  text-align: center;
  transform: translateX(100%);
  transition: all 0.6s;
  width: 100%;
}

nav.globalMenuSp ul {
  background-image: url(background_shori.png);
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li a:hover{
  color:red;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #555;
  padding: 1.5em 0;
  text-decoration :none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  transform: translateX(0%);
}

/*------------------------------

ここからアコーディオンのCSS

------------------------------*/
/* チェックボックスを非表示にする */
.accordion-hidden{
  display: none;
}

/* Question部分 */
.accordion-open {
  display: block;
  padding: 10px;
  background: #ffff66;
  cursor: pointer;
  margin: 5px 0;
  font-weight: 700;
}

/* Answer部分は最初は表示しない */
.accordion-close {
  display: block;
  height: 0;
  overflow: hidden;
  padding: 0;
  opacity: 0;
  transition: 0.5s;/* 表示速度の設定 */
}

/* チェックボックスにチェックが入ったらAnswer部分を表示 */
.accordion-hidden:checked + .accordion-open + .accordion-close {
  height: auto;
  opacity: 1;
  padding: 10px;
  background: #ffffff;
  font-weight: 700;
}




@charset "UTF-8";

/* reset */
html{
	color:#000;background:#fff;
}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{
	margin:0;padding:0;
}
table{
	border-collapse:collapse;border-spacing:0;
}
fieldset,img{
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var{
	font-style:normal;font-weight:normal;
}
li{
	list-style:none;
}caption,th{
	text-align:left;
}
h1,h2,h3,h4,h5,h6{
	font-size:100%;font-weight:normal;
}
q::before,q::after{
	content:'';
}
abbr,acronym{
	border:0;font-variant:normal;
}
sup{
	vertical-align:text-top;
}
sub{
	vertical-align:text-bottom;
}
input,textarea,select{
	font-family:inherit;font-size:inherit;font-weight:inherit;
}
input,textarea,select{*font-size:100%;}legend{
	color:#000;
}

/* base */
body{
	font : normal normal normal 12px /1.231 "ヒラギノ角ゴ Pro W3";background-size : auto auto; -webkit-text-size-adjust: none;background : none 0% 0% repeat scroll #ffffff;background-origin : padding-box;background-clip : border-box;
}
a{
	text-decoration:none;
}
section{
	margin-bottom:10px; clear:both;


}

h1,h2{
	margin-bottom : 24px;
}
/* 垂直方向のマージンを統一 */

 
h1{
    font-size : 20px; 
    line-height : 1; 
    text-decoration: underline;   
    /* 要素の高さ：48px（要素を配置するときの高さの基準の2倍）*/
}
 
h2{
	font-size: 18px;
	line-height: 1.3333;/* 要素の高さ：48px（要素を配置するときの高さの基準の2倍） */

}

h3{
	font-size:18px; font-weight:bold; color:#ffffff; margin-top:10px; margin-bottom:10px; background:#cccc00; padding:5px;
}


/* サムネイルつき矢印リスト */
.list3 ul{
	border-bottom: 1px solid #ccc;
	}
	.list3 ul li{
		background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#f0f0f0));
		background: linear-gradient(#fff, #f0f0f0);
		border-top: 1px solid #ccc;
		height: 150px;
		margin: 0px;
	}
	.list3 ul li a{
		background : url(list_mark1.png) 100% 50% / auto auto no-repeat scroll padding-box border-box transparent;
		color: #666;
		display: block;
		height: 150px;
		margin: 0;
		padding: 0 20px 0 0;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		text-decoration: none;
	}
	.list3 ul li img{
		float: left;
		height: 150px;
		width: 100px;
		margin-right: 10px;
	}
	.list3 ul li a strong{
		color: #000;
		display: block;
		font-weight: bold;
		padding-top: 17px;
	}