@charset "utf-8";
/* CSS Document */

/*-------MENU------*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/
body {
	margin:0 auto;
	background-color:#000000;
}
	
	
nav.menu {
	width: 990px;
	margin: 0 auto;
}

nav.menu ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
	 
}

nav.menu li  {
 padding:0;
 width: 100%;
}

nav.menu-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display:none;/*--スマホ非表示-*/
}

}

@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/
body {
	margin:0 auto;
	background-color:#000000;
}	
	

nav.menu {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
}

nav.menu ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between; 
}

nav.menu li  {
 padding:0;
 width: 100%;
}

nav.menu-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display:none;/*--スマホ非表示-*/
}

}

@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/
body {
	margin:0 auto;
	background-color:#000000;
}

nav.menu-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
}

nav.menu-smp ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
}


nav.menu-smp li  {
 padding:0;
 width: 100%;
}


nav.menu-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display: block;/*スマートフォンの時は表示*/
}


nav.menu {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
    display: none;/* PCの時は非表示*/
}

}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/


nav.menu-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
}

nav.menu-smp ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
}


nav.menu-smp li  {
 padding:0;
 width: 100%;
}


nav.menu-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display: block;/*スマートフォンの時は表示*/
}


nav.menu {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
    display: none;/* PCの時は非表示*/
}

}



/*---------------------------------
header
------------------------------------*/


@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/
h1{
	width: 100%;
	margin: 0px auto;
	padding: 1px 0px 0px 0px;
	font-size: 80%;
	font-weight: normal;

}


nav.nv-pc {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
}

nav.nv-pc ul {
	width:100%;
	margin: 0 auto;
    padding: 15px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
 background-color:#FFF;
 font-size:18px;
 font-weight:bold;
	 
}

nav.nv-pc a {
	padding:0px 3px 0px 3px;
	display: block;
	color:#03C;
	text-decoration:underline;
}
nav.nv-pc li a:hover {
 padding:0px 3px 0px 3px;
 border-radius: 4px;
 font-size:18px;
 background-color:#d10073;
 color:#FFF;
}

nav.nv-pc p{padding:10px 0px 0px 0px;}
nav.nv-pc p span{font-size:10px; font-weight:bold;}

nav.nv-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
	display:none;
}

}

@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

nav.nv-pc {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
	display:block;
}

nav.nv-pc ul {
	width:100%;
	margin: 0 auto;
    padding: 15px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
 background-color:#FFF;
 font-size:18px;
 font-weight:bold;
	 
}

nav.nv-pc a {
	padding:3px 3px 0px 3px;
	display: block;
	color:#03C;
	text-decoration:underline;
	font-size:14px;
}


nav.nv-pc p{padding:10px 0px 0px 0px;}
nav.nv-pc p span{font-size:10px; font-weight:bold;}

nav.nv-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
	display:none;
}

}

@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

#title{
	width: 100%;
	margin: 0px auto;
	padding: 1px 0px 0px 0px;
	font-size: 80%;
	font-weight: normal;

}

nav.nv-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
}

nav.nv-smp ul {
	width:100%;
	margin: 0 auto;
    padding: 10px 0px 0px 0px;
    display: flex;
      justify-content: space-between;
 background-color:#FFF;
 font-size:18px;
 font-weight:bold;	 
}

nav.nv-smp img{
width: 110px;
    padding: 0px 0px 2px 8px;
}



nav.nv-smp p{padding:0px 5px 5px 0px; text-align:right;}
nav.nv-smp p span{font-size:10px; font-weight:bold;}


nav.nv-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
	display: block;/*スマートフォンの時は表示*/
}


nav.nv-pc {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
       display: none;/* PCの時は非表示*/
}

}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/

h1{
	width: 100%;
	margin: 0px auto;
	padding: 1px 0px 0px 0px;
	font-size: 80%;
	font-weight: normal;

}

nav.nv-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
}

nav.nv-smp ul {
	width:100%;
	margin: 0 auto;
    padding: 10px 0px 0px 0px;
    display: flex;
      justify-content: space-between;
 background-color:#FFF;
 font-size:18px;
 font-weight:bold;	 
}

nav.nv-smp img{
width: 95px;
    padding: 0px 0px 2px 0px;
}

nav.nv-smp p{padding:0px 1px 5px 0px; text-align:right;}
nav.nv-smp p span{font-size:10px; font-weight:bold;}


nav.nv-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
	display: block;/*スマートフォンの時は表示*/
}


nav.nv-pc {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	background-color:#FFF;
	color:#000;
       display: none;/* PCの時は非表示*/
}

}


/*---------------------------------
main image
------------------------------------*/
@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/
.pc_main{ display: block }

.sp_main {display:none;}

}


@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/
.pc_main{ display: block }

.sp_main {display:none;}

}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

.pc_main{display:none;}

.sp_main { display: block }

}


@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/

.pc_main{display:none;}

.sp_main { display: block }

}


/*---*/
#wrapper {
	width:990px;
	margin: 0 auto;
}




#title{
	width: 100%;
	background-color:#03003A;
	color:#FFF;
	height: 15px;
	display:table;
}





.main {
	width:990px;
	margin: 0 auto;
	background-color:#000000;
}

#headMenu li iframe{
	vertical-align: middle;
}

#headMenu .btn_twitter_top,.btn_fb_top {
	transform:scale(1.5);
	-webkit-transform:scale(1.5);
	-moz-transform:scale(1.5);
    width: 100px;
}

#headMenu .btn_twitter_top {
	padding-left: 40px;
	padding-right: 30px;
}

#headMenu .btn_fb_top {
	padding-right: 20px;
	margin-top: -4px;
}




/*----------------------------------contents-----------------------------*/

.menu{
  display: flex;
  flex-direction:column;
  width:990px;
}
.item{
  background-color:#000;
}

.item_spacer{
	margin: 15px 0px 0px 0px;
  background-color:#000;
}

.item_spacer_sub{
	margin: 5px 0px 0px 0px;
  background-color:#000;
}

.item_spacer2{
	margin: 15px 0px 20px 0px;
  background-color:#000;
}


.koushiki{
	margin: 15px 0px 0px 0px;
  background-color:#ffffff;
}

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

#footer {
    width: 100%;
    margin: 0px auto 0;
    background-color: #ffffff;
    color:#000000;
	text-align: center;
	
}

#footer p{
	font-size: 16px;
	padding: 10px 0px 10px 5px;
}

#footer p.auther{
	font-size: 16px;
	text-align: right;
	padding: 0px 5px 10px 0px;
}

/*---SNS---*/

/*---sns*--------*/


#sns {
	width: 98%;
	margin: 0 auto;
	padding: 10px 0px 0px 0px;
}

#sns  ul {
	text-align: center;
}

#sns li {
	display: inline-block;
	vertical-align: middle;
}

#sns .btn_twitter,.btn_fb_bottom {
	transform:scale(1.6);
	-webkit-transform:scale(1.6);
	-moz-transform:scale(1.6);
}

#sns .btn_line img {
	width:126px;
	height: auto;
	display: inline-block;
}

#sns .btn_twitter {
	padding:4px 60px 0 0;
}

#sns .btn_fb_bottom {
	margin-top: 0;
	margin-right: 53px;
}





/*-----*/
#scrollUp {
	bottom: 40px;
	right: 20px;
	width:50px;
	height:50px;
	background:url(../images/go_top.png);
	text-indent:-9999px;
}
 

/* image guard */

img {
user-select:none;
-moz-user-select:none;
-ms-user-select:none;
-webkit-user-select:none;
-khtml-user-select:none;
-webkit-user-drag: none;
-khtml-user-drag: none;
-webkit-touch-callout: none;
}

/*-------------------------------------link*/

a:focus, *:focus { outline:none; }

a {outline:none;}

a img {border-style:none;}

area:active{outline:none;}


@media print {
     img { display: none !important; }
 }

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

/*------テキスト部分------*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

.text_area_top{
	background-color:#ffffff;
	width: 98%;
	margin: 0 auto;		
	}

	p.intro_text_TOP{
	background-color:#FFFFFF;
	font-size: 18px;
	line-height: 33px;
	color:#000000;
	padding:10px;
	width: 98%;
	margin: 0 auto;		
	}
	
	
.text_area{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;
	    padding: 10px 0px 10px 0px;
	}
	
	
p.intro_text{
	background-color:#bfe2ef;
	margin:0px 0px 0px 0px;
	font-size: 18px;
	line-height: 30px;
	color:#214761;
	padding:10px;
	}
	
.text_area_osusume{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;
	    padding: 10px 0px 10px 0px;
	}

p.osusume_text{
background-color: #1e2d4a;
    font-size: 18px;
    line-height: 30px;
    color: #ffffff;
    padding: 20px;
    width: 96%;
    margin: 0 auto;
	}	
	
	

.text_area_twitter{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;
	    padding: 0px 0px 20px 0px;
	}
	
.text_area_twitter iframe{
		width: 100% !important;
	height: 650px!important;

	}	
	
p.intro_text_twitter{
	background-color:#FFFFFF;
	margin:0px 0px 0px 0px;
	font-size: 18px;
	line-height: 30px;
	color:#214761;
	padding:10px;
	text-align: center;
	}	
	
	
span.text{font-size: 3.0rem; font-weight:bold;}	


}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

#wrapper {
	width:100%;
	margin: 0 auto;
}

.menu{
  display: flex;
  flex-direction:column;
  width:100%;
}

.text_area_top{
	background-color:#ffffff;
	width: 98%;
	margin: 0 auto;		
	}


p.intro_text_TOP {
	background-color:#FFFFFF;
    margin: 0 auto;
    font-size: 16px;
    line-height: 30px;
	color:#000000;
    padding: 8px;
    width: 96%;
}
	
	
.text_area{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
	padding: 10px 0px 10px 0px;
	}
	
p.intro_text{
	background-color:#bfe2ef;
	margin:0px;	
    font-size: 18px;
    line-height: 30px;
	color:#214761;
	padding:8px;
	}

.text_area_osusume{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
	padding: 10px 0px 10px 0px;
	}

p.osusume_text{
background-color: #1e2d4a;
	margin:0px;	
    font-size: 18px;
    line-height: 30px;
    color: #ffffff;
	padding:8px;
	}		
	
	
.text_area_twitter{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
	padding: 0px 0px 10px 0px;
	}
	
.text_area_twitter iframe{
		width: 100% !important;
	height: 650px!important;

	}		
	
p.intro_text_twitter{
	background-color:#FFFFFF;
	margin:0px;	
    font-size: 18px;
    line-height: 30px;
	color:#214761;
	padding:8px;
	text-align: center;
	}
	
span.text{font-size: 3.0rem; font-weight:bold;}	
}

@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad　タブレット*/

#wrapper {
	width:100%;
	margin: 0 auto;
}

.menu{
  display: flex;
  flex-direction:column;
  width:100%;
}

.text_area_top{
	background-color:#ffffff;
	width: 98%;
	margin: 0 auto;		
	}


p.intro_text_TOP{
	background-color:#FFFFFF;
	margin:0px;	
    font-size: 16px;
    line-height: 33px;
	color:#000000;
	padding:10px;
	width: 98%;
	margin: 0 auto;			
	}	
	
	
.text_area{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
	padding: 10px 0px 10px 0px;
	}
	
p.intro_text{
	background-color:#bfe2ef;
	margin:0px;	
    font-size: 16px;
    line-height: 33px;
	color:#214761;
	padding:10px;
	}
	
.text_area_osusume{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
	padding: 10px 0px 10px 0px;
	}
	
p.osusume_text{
	background-color:#1e2d4a;
	margin:0px;	
    font-size: 16px;
    line-height: 33px;
    color: #ffffff;
	padding:10px;
width: 96%;
    margin: 0 auto;	
	}	
	
.text_area_twitter{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
	padding: 0px 0px 10px 0px;
	}
	
.text_area_twitter iframe{
		width: 100% !important;
	height: 500px!important;

	}		
	
p.intro_text_twitter{
	background-color:#FFFFFF;
	margin:0px;	
    font-size: 16px;
    line-height: 33px;
	color:#214761;
	padding:10px;
	text-align: center;
	}
	
	
span.text{font-size: 3.0rem; font-weight:bold;}	
}
/*------SNS----------*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/
/* ボタン全体 */
.flowbtn11 {
    /* font-family: 'Verdana',sans-serif; */
    /* border-radius: 4px; */
    /* position: relative; */
    display: inline-block;
    width: 98%;
    font-size: 30px;
    color: #fff!important;
    text-decoration: none;
    margin: 5px 5px 5px 5px;
}

/* Twitter */
.fl_tw1{
background:#55acee;
}
/* Instagramアイコン位置 */
.insta_btn11 .fa-instagram{
position:relative;
z-index:1;	
}
/* Instagram紫グラデ背景色 */
.insta_btn11{
background:-webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
background:linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
overflow:hidden;
}
/* Instagramオレンジグラデ背景色 */
.insta_btn11:before{
content: '';
position:absolute;
top:17px;
left:-75px;
width:100%;
height:100%;
background:-webkit-radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 45%, rgba(255, 88, 96, 0) 80%);
background:radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 80%);
}
/* Facebook */
.fl_fb1{
background:#3b5998;
}

/* LINE */
.fl_li1{
background:#00c300;
}


/* ボタン内テキスト調整 */
.flowbtn11 span{
font-size:14px;	
position:relative;
left:8px;
bottom:2px;
transition:.6s;	
display:inline-block;	
}
/* ulタグの内側余白を０にする */
ul.snsbtniti2{
padding:0!important;
}
/* アイコンボタンの位置調整 */
.snsbtniti2{
display:flex;
flex-flow:row wrap;
}
/* アイコンボタン同士の余白調整 */
.snsbtniti2 li{
flex:0 0 33%;
text-align:center!important;
}

}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

/* ボタン全体 */
.flowbtn11 {
    /* font-family: 'Verdana',sans-serif; */
    /* border-radius: 4px; */
    /* position: relative; */
    display: inline-block;
    width: 98%;
    font-size: 30px;
    color: #fff!important;
    text-decoration: none;
    margin: 5px 5px 5px 5px;
}

/* Twitter */
.fl_tw1{
background:#55acee;
}
/* Instagramアイコン位置 */
.insta_btn11 .fa-instagram{
position:relative;
z-index:1;	
}
/* Instagram紫グラデ背景色 */
.insta_btn11{
background:-webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
background:linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
overflow:hidden;
}
/* Instagramオレンジグラデ背景色 */
.insta_btn11:before{
content: '';
position:absolute;
top:17px;
left:-75px;
width:100%;
height:100%;
background:-webkit-radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 45%, rgba(255, 88, 96, 0) 80%);
background:radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 80%);
}
/* Facebook */
.fl_fb1{
background:#3b5998;
}

/* LINE */
.fl_li1{
background:#00c300;
}


/* ボタン内テキスト調整 */
.flowbtn11 span{
font-size:14px;	
position:relative;
left:8px;
bottom:2px;
transition:.6s;	
display:inline-block;	
}
/* ulタグの内側余白を０にする */
ul.snsbtniti2{
padding:0!important;
}
/* アイコンボタンの位置調整 */
.snsbtniti2{
display:flex;
flex-flow:row wrap;
}
/* アイコンボタン同士の余白調整 */
.snsbtniti2 li{
flex:0 0 33%;
text-align:center!important;
}

}

@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad　タブレット*/
/* ボタン全体 */
.flowbtn11 {
    /* font-family: 'Verdana',sans-serif; */
    /* border-radius: 4px; */
    /* position: relative; */
    display: inline-block;
    width: 98%;
    font-size: 30px;
    color: #fff!important;
    text-decoration: none;
    margin: 5px 5px 5px 5px;
}

/* Twitter */
.fl_tw1{
background:#55acee;
}
/* Instagramアイコン位置 */
.insta_btn11 .fa-instagram{
position:relative;
z-index:1;	
}
/* Instagram紫グラデ背景色 */
.insta_btn11{
background:-webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
background:linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
overflow:hidden;
}
/* Instagramオレンジグラデ背景色 */
.insta_btn11:before{
content: '';
position:absolute;
top:17px;
left:-75px;
width:100%;
height:100%;
background:-webkit-radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 45%, rgba(255, 88, 96, 0) 80%);
background:radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 80%);
}
/* Facebook */
.fl_fb1{
background:#3b5998;
}

/* LINE */
.fl_li1{
background:#00c300;
}


/* ボタン内テキスト調整 */
.flowbtn11 span{
font-size:14px;	
position:relative;
left:8px;
bottom:2px;
transition:.6s;	
display:inline-block;	
}
/* ulタグの内側余白を０にする */
ul.snsbtniti2{
padding:0!important;
}
/* アイコンボタンの位置調整 */
.snsbtniti2{
display:flex;
flex-flow:row wrap;
}
/* アイコンボタン同士の余白調整 */
.snsbtniti2 li{
flex:0 0 33%;
text-align:center!important;
}

}


/*------------2つ並び画像---------------*/


/*-------MENU------*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

nav.picture {
	width: 990px;
	margin: 0 auto;
	background-color: #bfe2ef;
}

nav.picture ul {
    width: 95%;
    margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
    /* justify-content: flex-start; */
    justify-content: space-between;	 
}

nav.picture li  {
 padding:0px 10px 0px 10px;
 width: 100%;
}

nav.picture-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display:none;/*--スマホ非表示-*/
}

}



@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/


nav.picture-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;
	background-color: #bfe2ef;
}

nav.picture-smp ul {
	width:95%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
}


nav.picture-smp li  {
 padding:0px 5px 0px 5px;
 width: 100%;
}


nav.picture-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display: block;/*スマートフォンの時は表示*/
}


nav.picture {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
    display: none;/* PCの時は非表示*/
}

}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/


nav.picture-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;
		background-color: #bfe2ef;
}

nav.picture-smp ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
}


nav.picture-smp li  {
 padding:0px 10px 0px 10px;
 width: 100%;
}


nav.picture-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display: block;/*スマートフォンの時は表示*/
}


nav.picture {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
    display: none;/* PCの時は非表示*/
}

}



@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

nav.picture {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;
		background-color: #bfe2ef;
}

nav.picture ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between; 
}

nav.picture li  {
 padding:0px 10px 0px 10px;
 width: 100%;
}

nav.picture-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display:none;/*--スマホ非表示-*/
}

}



/*******------------特集エリア１　テキスト-----------*******/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

.text_area_special{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;
		padding:0px 0px 10px 0px;
	}
	

.text_area_special2{
	background-color:#131c39;
		width: 100%;
		margin: 0 auto;
		padding:0px 0px 10px 0px;
	}	
	
.text_area_special3{
	background-color:#FFF;
		width: 100%;
		margin: 0 auto;
		padding:0px 0px 10px 0px;
	}	
		
	
p.intro_text_special{
	margin:0px 0px 0px 0px;
	font-size: 18px;
	line-height: 30px;
	color:#FFFFFF;
	padding:10px;
	}
p.intro_text_special3{
	margin:0px 0px 0px 0px;
	font-size: 18px;
	line-height: 30px;
	color:#000000;
	padding:10px;
	}	
		
}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/
	
.text_area_special{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;
				padding:0px 0px 10px 0px;	
	}

.text_area_special2{
		background-color:#131c39;
		width: 100%;
		margin: 0 auto;
				padding:0px 0px 10px 0px;	
	}

.text_area_special3{
	background-color:#FFF;
		width: 100%;
		margin: 0 auto;
				padding:0px 0px 10px 0px;	
	}


p.intro_text_special{
	margin:0px;	
    font-size: 18px;
    line-height: 30px;
	color:#FFFFFF;
	padding:8px;
	}
	
p.intro_text_special3{
	margin:0px;	
    font-size: 18px;
    line-height: 30px;
	color:#000000;
	padding:8px;
	}	
}


@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad　タブレット*/
.text_area_special{
	background-color:#ffffff;
		width: 100%;
		margin: 0 auto;	
		padding:0px 0px 10px 0px;
	
	}

.text_area_special2{
		background-color:#131c39;
		width: 100%;
		margin: 0 auto;	
		padding:0px 0px 10px 0px;
	
	}
	
.text_area_special3{
	background-color:#FFF;
		width: 100%;
		margin: 0 auto;	
		padding:0px 0px 10px 0px;
	
	}	


p.intro_text_special{
	margin:0px;	
    font-size: 16px;
    line-height: 33px;
	color:#FFFFFF;
	padding:10px;
	}
	
p.intro_text_special3{
	margin:0px;	
    font-size: 16px;
    line-height: 33px;
	color:#000000;
	padding:10px;
	}	
	

}


/*******------------特集エリア１　画像-----------*******/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

nav.picture_red {
	width: 990px;
	margin: 0 auto;

}

nav.picture_red ul {
    width: 95%;
    margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
    /* justify-content: flex-start; */
    justify-content: space-between;	 
}

nav.picture_red li  {
 padding:0px 10px 0px 10px;
 width: 100%;
}

nav.picture_red-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display:none;/*--スマホ非表示-*/
}

}



@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/


nav.picture_red-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;
}

nav.picture_red-smp ul {
	width:95%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
}


nav.picture_red-smp li  {
 padding:0px 5px 0px 5px;
 width: 100%;
}



nav.picture_red {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
    display: none;/* PCの時は非表示*/
}

}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/


nav.picture_red-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
}

nav.picture_red-smp ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between;
}


nav.picture_red-smp li  {
 padding:0px 5px 0px 5px;
 width: 100%;
}





nav.picture_red {
	width: 990px;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
    display: none;/* PCの時は非表示*/
}

}



@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

nav.picture_red {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
}

nav.picture_red ul {
	width:100%;
	margin: 0 auto;
    padding: 0px 0px 0px 0px;
    display: flex;
    flex-direction: row;
/*justify-content: flex-start;*/
 justify-content: space-between; 
}

nav.picture_red li  {
 padding:0px 5px 0px 5px;
 width: 100%;
}

nav.picture_red-smp {
	width: 100%;
	margin: 0 auto;
	padding-top: 0px;	
	color:#000;
	display:none;/*--スマホ非表示-*/
}

}

/***-------youtube area------***/
.movie-area {
    padding: 0px 0px 15px 0px;
    width: 96%;
    margin: 0 auto;
background-color:#ffffff;	
}


/****--------------おすすめテキストの画像用------------------****/
@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/


.wrap_photo {
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 0px;
	background-color: #ffffff;
	    margin: 0px 0px 20px 0px;
}

.wrap_photo p{
	font-size:18px;
	line-height:30px;
	width:100%;
}

.pic_area {
  width: 100%;
    margin: 10px 2% 2% 2%;

}

.pic_area img {
  width: 100%;
  height:auto;
}	
	
}




@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

.wrap_photo {
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 0px;
	background-color: #ffffff;
	    margin: 0px 0px 20px 0px;
}

.wrap_photo p{
    font-size: 16px;
    line-height: 30px;
    width: 95%;
    margin: 0 auto;
    padding: 10px 0px 0px 0px;
}
	
  .pic_area {
    width:100%;
    margin-left: 0;
	padding: 2% 0 2% 0;
    text-align: center;
  }

  .pic_area img {
    width:96%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }
	
}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

.wrap_photo p{
    font-size: 16px;
    line-height: 30px;
    width: 95%;
    margin: 0 auto;
    padding: 10px 0px 0px 0px;
}

  .wrap_photo {
    flex-direction: column;
	background-color: #ffffff;
	    margin: 0px 0px 15px 0px;  
  }
	
  .pic_area {
    width:100%;
    margin:0 0 2% 0;
    text-align: center;
  }

  .pic_area img {
    width:100%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }	
	
  }


@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/

.wrap_photo p{
    font-size: 16px;
    line-height: 30px;
    width: 95%;
    margin: 0 auto;
    padding: 10px 0px 0px 0px;
}

  .wrap_photo {
    flex-direction: column;
	background-color: #ffffff;
	    margin: 0px 0px 15px 0px;
  }

  .pic_area {
    width:100%;
    margin:0 0 2% 0;
    text-align: center;
  }

  .pic_area img {
    width:100%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }	
	
}


/****--------------記事用------------------****/
@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/


.special_tokusyu {
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 0px;
}

.special_tokusyu p{
	font-size:18px;
	line-height:30px;
	width:100%;
}



h3.title {
    font-size: 24px;
    padding: 10px 10px 18px 10px;
    margin: 0;
    color: #C80003;
	font-weight: 800;
}

h3.title_bg {
    font-size: 24px;
    padding: 10px;
    margin: 0 0 15px 0;
    display: inline-block;
    background-color: #d01d1d;
    color: #ffffff;
}
	
h3.title_white {
    font-size: 24px;
    padding: 10px;
    margin: 0 0 15px 0;
    display: inline-block;
    color: #ffffff;
}	

.pic_special {
  margin-left: 1%;
  margin-right: 1%;
}

.pic_special img {
  width: 100%;
  height:auto;
}

	
.pic_special2 {
  margin-left: 1%;
  margin-right: 1%;
}

.pic_special2 img {
  width: 100%;
  height:auto;
}
	
.pic_special_pc {
  margin-left: 1%;
  margin-right: 1%;
}

.pic_special_pc img {
  width: 100%;
  height:auto;
}
	
.pic_special_smp {
display: none;
  }	


}

@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

h3.title {
    font-size: 20px;
    padding: 20px 10px 10px 10px;
    margin: 0;
    color: #C80003;
	font-weight: 800;
}

h3.title_bg {
    font-size: 20px;
    padding: 10px;
    margin: 0 0 15px 0;
    display: inline-block;
    background-color: #d01d1d;
    color: #ffffff;
}

.special_tokusyu p{
    font-size: 16px;
    line-height: 30px;
    width: 95%;
    margin: 0 auto;
    padding: 10px 0px 0px 0px;
}

.special_tokusyu {
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 0px;
}

  .pic_special {
    margin-left: 0;
	padding: 0 0 0 0;
    text-align: center;
  }

  .pic_special img {
    width:90%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }
	
  .pic_special2 {
    margin-left: 0;
	padding: 2% 0 0 0;
    text-align: center;
  }

  .pic_special2 img {
    width:90%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }
  
.pic_special_pc {
  margin-left: 1%;
  margin-right: 1%;
}

.pic_special_pc img {
  width: 100%;
  height:auto;
}

.pic_special_smp {
display: none;
  }	
	
}

@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/
h3.title {
    font-size: 18px;
    line-height: 26px;
    padding: 10px 0px 5px 10px;
    color: #C80003;
    font-weight: 700;
}
	
h3.title_bg {
    font-size: 18px;
    padding: 10px;
    margin: 0 ;
    display: block;
    background-color: #d01d1d;
    color: #ffffff;
}	

h3.title_white {
    font-size: 18px;
    padding: 10px;
    margin: 0;
    display: inline-block;
    color: #ffffff;
}	
	
h3.title_white {
    font-size: 18px;
    padding: 10px;
    margin: 0;
    color: #ffffff;
}		

.special_tokusyu p{
    font-size: 16px;
    line-height: 30px;
    width: 95%;
    margin: 0 auto;
    padding: 10px 0px 0px 0px;
}

.special_tokusyu {display: flex; flex-direction: column-reverse;}
 

  .pic_special {
    width:100%;
    margin-left: 0;
	padding: 3% 0 0 0; 
    text-align: center;
  }

  .pic_special img {
    width:92%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }
	
  .pic_special2 {
display: none;
  }	
	
  .pic_special2 img {
    width:92%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }	
  
.pic_special_smp {
    width:100%;
    margin-left: 0;
	padding: 3% 0 0 0; 
    text-align: center;
  }	

.pic_special_pc {
display: none;
}	

}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/
h3.title {
    font-size: 18px;
    line-height: 26px;
    padding: 10px 0px 5px 10px;
    color: #C80003;
    font-weight: 700;
}

h3.title_bg {
    font-size: 18px;
    padding: 10px;
    margin: 0 ;
    display: block;
    background-color: #d01d1d;
    color: #ffffff;
}
	
h3.title_white {
    font-size: 18px;
    padding: 10px;
    margin: 0 ;
    display: inline-block;
    color: #ffffff;
}	

.special_tokusyu p{
    font-size: 16px;
    line-height: 30px;
    width: 95%;
    margin: 0 auto;
    padding: 10px 0px 0px 0px;
}

  .special_tokusyu {
    display: flex;
  }

  .pic_special {
    width:100%;
    margin-left: 0;
	padding: 3% 0 0 0; 
    text-align: center;
  }

  .pic_special img {
    width:92%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }
	
	
  .pic_special2 {
	  display: none;
  }	
	
  .pic_special2 img {
    width:92%;
    height:auto;
	object-fit: cover;
    font-family: 'object-fit: cover;';
  }	
	
  
.pic_special_smp {
    width:100%;
    margin-left: 0;
	padding: 3% 0 0 0; 
    text-align: center;
  }	

.pic_special_pc {
display: none;
}	
  

}

/**---**/


.special_waku{
    width:100%;
	margin:12px 0px 0px 0px;

}

/*-----interview用----*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/



.special_interview {
  display:flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-bottom: 0px;
}

.special_interview p{
	font-size:24px;
	line-height:38px;
    width: 96%;
    margin: 0 auto;
}
	p.date{	font-size: 24px; color: #fa2b2b; padding: 0px 0px 10px 0px;}
	span.date_small{font-size: 18px; color: #fa2b2b;}
	span.large{	font-size:28px; font-weight: 900;}	
	span.mid{font-size:20px;}	
	span.small{font-size: 16px; color: #fa2b2b;}	
	a.oubolink {text-decoration: underline; color:#0076ff;}

.interview_text {
	  margin:0;
	  padding:20px 0px 20px 13px;
	  width:100%;

}
	
.interview_text2 {
	  margin:0;
	  padding:10px 0px 10px 0px;
	  width:100%;

}

h3.interview_special {
  font-size: 24px;
  margin-top: 2%;
  margin-bottom: 2%;
  /*display:inline;*/
}

h3.interview_special_two {
  font-size: 24px;
  margin-top: 2%;
  margin-bottom: 4%;
  /*display:inline;*/
}
	
.pic_interview {
  width: 50%;
  margin:2%;
}

.pic_interview img {
  width: 100%;
  height:auto;
}

.pic_interview_first {
  width: 100%;
  margin-right:2%;
  margin-bottom:2%;	
}

.pic_interview_first img {
  width: 100%;
  height:auto;
  margin: 20px 0px 0px 0px;
}


.pic_interview_top {
  width: 100%;
}

.pic_interview_top img {
    width:100%;
    height:auto;
  }



}

@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

/*-----interview用----*/

.special_interview {
  display:flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-bottom: 0px;
}

.special_interview p{
	font-size:22px;
	line-height:36px;
    width: 96%;
    margin: 0 auto;
}

	p.date{	font-size: 22px; color: #fa2b2b; padding: 0px 0px 10px 0px;}
	span.date_small{font-size: 18px; color: #fa2b2b;}
	span.large{	font-size:28px; font-weight: 900;}	
	span.mid{font-size:20px;}	
	span.small{font-size: 16px; color: #fa2b2b;}	
	a.oubolink {text-decoration: underline; color:#0076ff;}	
	
.interview_text {
		  margin:0;
	  padding:0px 0px 10px 5px;
	  width:100%;

}
	
.interview_text2 {
		  margin:0;
	  padding:10px 0px 10px 0px;
	  width:100%;

}	

h3.interview_special {
  font-size: 24px;
  margin-top: 2%;
  margin-bottom: 2%;
  /*display:inline;*/
}

h3.interview_special_two {
  font-size: 24px;
  margin-top: 2%;
  margin-bottom: 4%;
  /*display:inline;*/
}
	
.pic_interview {
  width: 50%;
  margin:2%;
}

.pic_interview img {
  width: 100%;
  height:auto;
}

.pic_interview_first {
  width: 100%;
  margin-right:2%;
  margin-bottom:2%;	
}

.pic_interview_first img {
  width: 100%;
  height:auto;
  margin: 20px 0px 0px 0px;
}


.pic_interview_top {
  width: 100%;
}

.pic_interview_top img {
    width:100%;
    height:auto;
  }



}

@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

/*-----interview用----*/

.special_interview {
  display:flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 0px;
}

.special_interview p{
	font-size:18px;
	line-height:26px;
    width: 96%;
    margin: 0 auto;
}
	
	p.date{	font-size: 18px; color: #fa2b2b; padding: 0px 0px 10px 0px;}
	span.date_small{font-size: 18px; color: #fa2b2b;}
	span.large{	font-size:22px; font-weight: 900;}	
	span.mid{font-size:16px;}	
	span.small{font-size: 14px; color: #fa2b2b;}	
	a.oubolink {text-decoration: underline; color:#0076ff;}		

.interview_text {
		  margin:0;
	  padding:0px 0px 10px 0px;
	  width:100%;
}
	
.interview_text2 {
		  margin:0;
	  padding:10px 0px 10px 0px;
	  width:100%;

}	

h3.interview_special {
font-size: 18px;
    line-height: 26px;
    padding: 10px 0px 5px 0px;
  /*display:inline;*/
}

h3.interview_special_two {
font-size: 18px;
    line-height: 26px;
    padding: 10px 0px 5px 0px;
  /*display:inline;*/
}
	
.pic_interview {
  width: 50%;
  margin:2%;
}

.pic_interview img {
  width: 100%;
  height:auto;
}

.pic_interview_first {
  width: 90%;
	margin: 0 auto;
}

.pic_interview_first img {
  width: 100%;
  height:auto;
  margin: 20px 0px 20px 0px;
}


.pic_interview_top {
  width: 100%;
}

.pic_interview_top img {
    width:100%;
    height:auto;
  }


}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/

/*-----interview用----*/

.special_interview {
  display:flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  margin-bottom: 0px;
}

.special_interview p{
	font-size:16px;
	line-height:30px;
    width: 96%;
    margin: 0 auto;
}
	
		p.date{	font-size: 16px; color: #fa2b2b; padding: 0px 0px 10px 0px;}
	span.date_small{font-size: 14px; color: #fa2b2b;}
	span.large{	font-size:18px; font-weight: 900;}	
	span.mid{font-size:16px;}	
	span.small{font-size: 14px; color: #fa2b2b;}	
	a.oubolink {text-decoration: underline; color:#0076ff;}		

.interview_text {
		  margin:0;
	  padding:0px 0px 10px 0px;
	  width:100%;
}
	
.interview_text2 {
		  margin:0;
	  padding:10px 0px 10px 0px;
	  width:100%;
}	

h3.interview_special {
font-size: 18px;
    line-height: 26px;
    padding: 10px 0px 5px 0px;
  /*display:inline;*/
}

h3.interview_special_two {
font-size: 18px;
    line-height: 26px;
    padding: 10px 0px 5px 0px;
  /*display:inline;*/
}
	
.pic_interview {
  width: 50%;
  margin:2%;
}

.pic_interview img {
  width: 100%;
  height:auto;
}

.pic_interview_first {
  width: 90%;
	margin: 0 auto;
}

.pic_interview_first img {
  width: 100%;
  height:auto;
  margin: 20px 0px 20px 0px;
}


.pic_interview_top {
  width: 100%;
}

.pic_interview_top img {
    width:100%;
    height:auto;
  }



}



.special_waku{
    width:100%;
	margin:12px 0px 0px 0px;

}


/* 動画を囲うdiv */
.video {
  position: relative;
  width:100%; /* 横幅は100%にしておく(ここを変えたい場合は実装コード2の方法を確認してください) */
  height:0; /* 高さは0にしておく(padding-topで高さを指定するため) */
  padding-top: 56.25%; /* 高さを指定(16:9) */
}

/* YouTube埋め込み用のiframe */
.video iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/*-----年表------*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
    background-color: #ffffff;
	padding: 20px;
}

dl dt {
  text-align: right;
  width: 8.5em;
  padding: 0.5em 1.0em 0.5em 0.5em;
  position: relative;
color: #FFFFFF;
}

dl dt img {
    margin: 10px 10px 10px 10px;
    padding: 5px;
}
	
dl dt::after {
  content: '●';
  position: absolute;
  right: -0.55em;
  top: 2px;
  font-size: 22px;
  color:#D30003;
}

dl dd {
  width: calc(100% - 8.5em);
  padding: 0.5em 2.0em 3.0em;
  border-left: 2px solid #ccc;
}

dl dd h2 {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 5px;
	color: #FFFFFF;
}
	
	p.year{
    font-size: 18px;
    line-height: 28px;
    /* font-weight: bold; */
    margin: 20px 0px 0px 0px;
    padding: 10px;
    color: #FFFFFF;
    background-color: #0b0c3c;
		
	}
	
span.y_title {font-size: 20px;font-weight: 800;padding: 0 0 15px 0;display: inline-block;}	

}


@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
    background-color: #ffffff;
	padding: 20px;
}

dl dt {
  text-align: right;
  width: 8.5em;
  padding: 0.5em 1.0em 0.5em 0.5em;
  position: relative;
color: #FFFFFF;
}

dl dt img {
    margin: 10px 10px 10px 10px;
    padding: 5px;
}
	
dl dt::after {
  content: '●';
  position: absolute;
  right: -0.55em;
  top: 2px;
  font-size: 22px;
  color:#D30003;
}

dl dd {
  width: calc(100% - 8.5em);
  padding: 0.5em 2.0em 3.0em;
  border-left: 2px solid #ccc;
}

dl dd h2 {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 5px;
	color: #FFFFFF;
}
	
	p.year{
    font-size: 18px;
    line-height: 28px;
    /* font-weight: bold; */
    margin: 20px 0px 0px 0px;
    padding: 10px;
    color: #FFFFFF;
    background-color: #0b0c3c;
		
	}
	
span.y_title {font-size: 20px;font-weight: 800;padding: 0 0 15px 0;display: inline-block;}
	
}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/

dl {
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
    background-color: #ffffff;
    padding: 10px 0px 10px 0px;
}

dl dt {
    text-align: right;
    width: 7.5em;
    padding: 0.5em 1em 0.5em 0.5em;
    position: relative;
    color: #FFFFFF;
}

dl dt img {
    margin: 10px 0px 10px 5px;
    /* padding: 5px; */
}
	
dl dt::after {
  content: '●';
  position: absolute;
  right: -0.55em;
  top: 2px;
  font-size: 22px;
  color:#D30003;
}

dl dd {
    width: calc(95% - 6.5em);
    padding: 0.5em 0.8em 2em;
    border-left: 2px solid #ccc;
}

dl dd h2 {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 5px;
    color: #FFFFFF;
}
	
p.year {
    font-size: 16px;
    line-height: 28px;
    /* font-weight: bold; */
    /* margin: 20px 0px 0px 0px; */
    padding: 8px;
    color: #FFFFFF;
    background-color: #0b0c3c;
}
	
span.y_title {font-size: 18px;font-weight: 800;padding: 0 0 15px 0;display: inline-block;}

}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/

dl {
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
    background-color: #ffffff;
    padding: 10px 0px 10px 0px;
}

dl dt {
    text-align: right;
    width: 7.5em;
    padding: 0.5em 1em 0.5em 0.5em;
    position: relative;
    color: #FFFFFF;
}

dl dt img {
    margin: 10px 0px 10px 5px;
    /* padding: 5px; */
}
	
dl dt::after {
  content: '●';
  position: absolute;
  right: -0.55em;
  top: 2px;
  font-size: 22px;
  color:#D30003;
}

dl dd {
    width: calc(95% - 6.5em);
    padding: 0.5em 0.8em 2em;
    border-left: 2px solid #ccc;
}

dl dd h2 {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 5px;
    color: #FFFFFF;
}
	
p.year {
    font-size: 16px;
    line-height: 28px;
    /* font-weight: bold; */
    /* margin: 20px 0px 0px 0px; */
    padding: 8px;
    color: #FFFFFF;
    background-color: #0b0c3c;
}
	
span.y_title {font-size: 18px;font-weight: 800;padding: 0 0 15px 0;display: inline-block;}


}



/*------------------------------
3本線メニュー CSS
------------------------------*/
.header {
display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0px 10px 10px;
    background-color: rgb(255 255 255 / 100%);
}

.logo {}

div.top{
/*    position: fixed;*/
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    z-index: 10000;	
	}  


/* チェックボックス　非表示 */
.drawer-hidden {
  display: none;
}

/* 3本線アイコンの設置スペース */
.drawer-open {
  display: flex;
  height: 30px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 99999;/* 重なり順を一番上に */
  cursor: pointer;
}

/* ハンバーガーメニューのアイコン */
.drawer-open span,
.drawer-open span:before,
.drawer-open span:after {
  content: '';
  display: block;
  height: 4px;
  width: 30px;
  border-radius: 2px;
  background: #4d4d4d;
  transition: 0.5s;
  position: absolute;
}

/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
  bottom: 8px;
}

/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#togglenav:checked ~ .drawer-open span {
  background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#togglenav:checked ~ .drawer-open span::before {
  bottom: 0;
  transform: rotate(45deg);
	background: #333;
}

#togglenav:checked ~ .drawer-open span::after {
  top: 0;
  transform: rotate(-45deg);
	background: #333;
}
  

/*----------------------MENU用--------------------*/

/* トグルボタン 
#togglenav {display: none;}
*/
 
 #togglenav:checked ~ .togglenav-bg {
    pointer-events: auto;
    background-color: rgba(0, 0, 0, 0.3);
	}

#togglenav:checked ~ .drawer {
  -webkit-transform: translateX(0);
  transform: translateX(0);

}



/* トグルを押した時の背景 */
.togglenav-bg {
  cursor: pointer;
  position: fixed;
  top: 0px;
  right: 0px;
  pointer-events: none;
  z-index: 100;
  width: 100%;
  height: 100%;
  transition: background-color .6s; 

}

/* メニュー  左から出てくる*/
.drawermenu {
	overflow: auto;
    position: fixed;
 width: 100%;
  height: 100%;
  top: 0;
  right: 100%;/* メニューを画面の外に飛ばす */
  z-index: 9999;
  background: #fff;
  transition: .5s;
	overflow-scrolling: touch;
	-webkit-overflow-scrolling: touch;	
	}


#togglenav:checked ~ .drawermenu {
  left: 0;/* メニューを画面に入れる */
}



/*---------------ハンバーガーMENU内のリスト----------------------*/




.menu_all{
	width:100%;
	margin:0 auto 10px auto;
}

.right_in{
  width:100%;
}

h3.menu_title{
    color: #ffffff;
    font-size: 16px;
    display: flex;
    align-items: center;
    margin: 0px;
    padding: 10px;
    background-color: #535353;
	}
	
h3.menu_title a{

    color: #ffffff;
	}	

h3.menu_title_sub{
	color: #333;
	font-size: 16px;
	display: flex;
	align-items: center;
	margin:0px;
	padding:10px;	
	border-bottom: 1px solid #4b4b4b;
	}	
	
.menu_list
{
	-webkit-flex-wrap: wrap;
  	flex-wrap:         wrap;
	/*border: 1px solid #ddd;*/
}

.menu_list li
{
	display: flex;
	align-items:center;
	width: 98%;
	margin:0 auto;
	margin-bottom: 2%;
	border-bottom: 1px solid #ddd;
	font-weight:bold;
}

.menu_list li.last{
	border-bottom: 1px solid #ddd;	
	}

.menu_list li .txt {
	text-align:left;
	padding:15px 0px 15px 20px;
	color:#333;

}

.menu_list p{
	font-size:14px;
}
	
/*------検索ボタン-------*/

.button-seerch {
    margin: 0;
    padding: 5px 10px 5px 10px;
    border: none;
    display: inline-block;
    color: #fff;
    position: relative;
    cursor: pointer;
    border-radius: 4px;
}
	
.button-green {
    background: #333;
    color: #fff;
}

.button_menu {
  width: 50%;
  margin: 0px 0;
  text-align: center;
  font-size: 14px;
}

.cal100per {
  width: 95%;
}

.menu100per {
  width: 90%;
}	
	
.contact-asterisk-txt {
  color: #ef7e99;
  font-weight: bold;
}

input, textarea {
  border: 1px solid #ebebea;
  border-radius: 5px;
  padding: 10px;
  margin: 5px 0;
  font-size: 14px;
}

.button {
  width: 100%;
  margin: 40px 0;
  text-align: center;
  font-size: 17px;
  font-size: 1.7rem;
}

.w100per {
  width: 100%;
}	

h3.menu_title_sub {
    color: #343434;
    font-size: 16px;
    /* display: flex; */
    /* align-items: center; */
    /* margin: 0px; */
    padding: 10px;
    font-weight: 700;
    border-bottom: 1px solid #4b4b4b;
	}	
	


/*-footer-*/

/*--------------------
footer
--------------------*/
@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/
	
.footer-area {
  background: #383838;
  color: #fff;
  padding: 30px 0;
}

footer {
  width: 100%;
  margin: 0 auto;
}

.footer-main {
  /*width: 720px;*/
  width: 100%;
  margin: 0 auto;
}

.footer-txt {
  text-align: center;
  margin: 0 30px;
}

.footer-logo {
  width: 320px;
  margin: 10px auto;
}

.footer-logo a {
  display: block;
}

.footer-under-area {
  margin: 20px auto 0;
}

.footer-menu {
display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 12px;
}

.footer-menu li {
  margin: 0 0 10px;
  padding: 0 15px;
  border-right: 1px solid #fff;
  line-height: 1;
}

.footer-menu li:last-child {
  border-right: none;
}

.footer-menu li a {
  color: #fff;
}

.footer-copy {
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
    margin: 30px 0px 50px 0px;
}

.foot-banner {
  margin: 20px auto;
  text-align: center;
}
    	
	
.footer {
display: none
}

}
 


@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/

.footer-area {
  background: #383838;
  color: #fff;
  padding: 30px 0;
}

footer {
  width: 100%;
  margin: 0 auto;
}

.footer-main {
  /*width: 720px;*/
  width: 100%;
  margin: 0 auto;
}

.footer-txt {
  text-align: center;
  margin: 0 30px;
}

.footer-logo {
  width: 320px;
  margin: 10px auto;
}

.footer-logo a {
  display: block;
}

.footer-under-area {
  margin: 20px auto 0;
}

.footer-menu {
display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 12px;
}

.footer-menu li {
  margin: 0 0 10px;
  padding: 0 15px;
  border-right: 1px solid #fff;
  line-height: 1;
}

.footer-menu li:last-child {
  border-right: none;
}

.footer-menu li a {
  color: #fff;
}

.footer-copy {
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
    margin: 30px 0px 50px 0px;
}

.foot-banner {
  margin: 20px auto;
  text-align: center;
}
    	
	
.footer {
display: none;
}


}



@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/
.footer-area {
display: none;
}	
	
.footer {
  background: #383838;
  color: #fff;
  padding: 30px 0 50px 0;
  margin: 10px 0px 0px 0px;
}

.footer a {
  display: block;
  color: #fff;
  font-size: 10px;  font-size: 1.0rem;
  line-height:12px; line-height:1.2rem; 
}

.footer-txt {
  text-align: center;
  margin: 0 30px;
  font-size:16px; 
}


.footer-logo {
  display: table;
  margin: 10px auto;
}

.footer-under-area {
  margin: 0px auto 10px auto;
}



.footer-navbar {
    display:table;
    margin:0 auto;
}


.footer-navbar li {
    display:table-cell;
	padding: 0px 0px 10px 0px;
}
.footer-navbar li + li {
    padding-left:25px;
}

.footer-copy {
  font-size: 10px;
  font-size: 1.0rem;
 text-align: center;
}

}




@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/
	
.footer-area {
display: none;
}	
	
.footer {
  background: #383838;
  color: #fff;
  padding: 30px 0 50px 0;
  margin: 10px 0px 0px 0px;
}

.footer a {
  display: block;
  color: #fff;
  font-size: 10px;  font-size: 1.0rem;
  line-height:12px; line-height:1.2rem; 
}

.footer-txt {
  text-align: center;
  margin: 0 30px;
  font-size:16px; 
}


.footer-logo {
  display: table;
  margin: 10px auto;
}

.footer-under-area {
  margin: 0px auto 10px auto;
}



.footer-navbar {
    display:table;
    margin:0 auto;
}


.footer-navbar li {
    display:table-cell;
	padding: 0px 0px 10px 0px;
}
.footer-navbar li + li {
    padding-left:25px;
}

.footer-copy {
  font-size: 10px;
  font-size: 1.0rem;
 text-align: center;
}

}


@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

.item_pc{
  margin: 2px 0px 0px 0px;	
  background-color:#000;
}

.item_sp{
	display:none;
}

}


@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/
	
.item_pc{
  margin: 2px 0px 0px 0px;	
  background-color:#000;
}
	
.item_sp{
	display:none;
}	
	
}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/	
.item_sp{
  margin: 2px 0px 0px 0px;	
  background-color:#000;
}

.item_pc{
  display: none;
}
	
}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/
.item_sp{
  margin: 2px 0px 0px 0px;	
  background-color:#000;
}
	
.item_pc{
  display: none;
}
	
}

/*--提供--*/

@media screen and (min-width: 1025px){ 
/*ウィンドウ幅が1025px以上の場合に適用　PC*/

.teikyou{
  background-color:#000;
    color: #fff;
	padding: 4px; 
	text-align: right; 
	font-size: 12px;
}
	
}


@media screen and (max-width: 1024px) and (min-width: 768px){
/*ipad*/
	
.teikyou{
  background-color:#000;
    color: #fff;
	padding: 4px; 
	text-align: right; 
	font-size: 12px;	
}

	
}


@media screen and (max-width: 767px){
/*ウィンドウ幅が767px以上の場合に適用　スマホ*/	
.teikyou{
  background-color:#000;
    color: #fff;
	padding: 4px; 
	text-align: right; 
	font-size: 10px;	
}

	
}

@media screen and (max-width: 320px){
/*ウィンドウ幅が320px以上の場合に適用　スマホ*/
.teikyou{
  background-color:#000;
    color: #fff;
	padding: 4px; 
	text-align: right; 
	font-size: 10px;	
}

	
}	

