@charset "utf-8";


/* -----------------------------------------------------------
	全ページ共通
----------------------------------------------------------- */

/* -----------------------------------------------------------
	html・body
----------------------------------------------------------- */

html {
	font-size:62.5%; /* 分かりやすくするために1remを10pxに */
    overflow-y: scroll; /* スクロールバーの有無によるズレ対策 */
}

body{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	background: #FFFFFF;
	color: #333333;
	font-size:14px;
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

/* -----------------------------------------------------------
    #full_wrapper
----------------------------------------------------------- */

.inner{
	width:1100px;
	margin:0 auto;
	position:relative;
	overflow:hidden;
}

.innerBox{
	width:1100px;
	margin:0 auto;
	position:relative;
	overflow:hidden;
}

h1{
    font-weight: normal;
}




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


header{
    padding:0 0 0 0;
}

#headerTopNavi {
	background: #3797C6;
	color: #FFF;
	overflow: hidden;
	font-size: 12px;
	line-height: 12px;
}

#headerTopNavi .siteTitle{
	float: left;
	padding: 12px 0;
}

#headerTopNavi ul{
	overflow: hidden;
	float: right;
	border-right: 1px solid #FFF;
}

#headerTopNavi ul li{
	float: left;
	padding: 12px 0px;
}

#headerTopNavi ul li > a{
	color: #FFF;
	padding: 12px 30px;
	border-left: 1px solid #FFF;
    transition: .4s;
}

#headerTopNavi ul li:nth-child(1) > a::before {
	font-family: FontAwesome;
    content: "\f090";
	margin-right: 5px;
}

#headerTopNavi ul li:nth-child(2) > a::before {
	font-family: FontAwesome;
    content: "\f086";
	margin-right: 5px;
}

#headerTopNavi ul li:nth-child(3) > a::before {
	font-family: FontAwesome;
    content: "\f0e0";
	margin-right: 5px;
}

#headerTopNavi ul li > a:hover {
	background: #2EB4E0;
	text-decoration: none;
}


header > .innerBox .logo{
	float: left;
	margin: 24px 0 0 0;
}


#header_box{
    width:710px;
    float:right;
}

#header_box .header_search{
    clear: both;
    float: right;
    margin:12px 0 12px 0;
}

#header_box .header_nav{
    clear: both;
    background: #FFCCFF;
}


#header_box .search_box{
    float:left;
    margin:0 20px 0 0;
}
#header_box .regist_box{
    float:left;
}

/*-----------  search  -----------*/
dl.search{
    position:relative;
    background-color:#fff;
    border:1px solid #CCC;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    -o-border-radius:2px;
    -ms-border-radius:2px;
    border-radius:2px;
    width: 300px;
}
dl.search dt{
    margin-right:40px;
    padding:3px 0 3px 8px;
}
dl.search dt input{
    width:100%;
    height:24px;
    line-height:24px;
    background:none;
    border:none;
}

dl.search dt input[type="text"]:focus {
  border: none;
  outline: 0;
}


dl.search dd{
    position:absolute;
    top:0;
    right:0;
}
dl.search dd button{
    display:block;
    padding:5px 7px 5px 5px;
    background:none;
    border:none;
}
dl.search dd button span{
    display:block;
    width:20px;
    height:20px;
    background:url('../images/common/search.jpg') no-repeat scroll 0 0;
}

/*-----------  cart_box  -----------*/
.square_btn{
    position: relative;
    display: inline-block;
    font-weight: bold;
    height:32px;
    width: 220px;
    padding: 7px 0 0 0;
    text-align: center;
    text-decoration: none;
    color: #FFFFFF;
    background: #FF5C26;
    transition: .4s;
    }
.square_btn:hover {
    background: #CC0000;
    color: white;
} 

.regist_box a{
	color: #FFFFFF;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	display: block;
    letter-spacing: 0.2ex;
}

.regist_box a::before {
	font-family: FontAwesome;
    content: "\f15c";
	margin-right: 5px;
}


.regist_box a:hover {
	text-decoration: none;
}



/*-----------  nav_new  -----------*/

header nav{
	padding: 0;
    text-align: right;
}

header nav ul{
	overflow: hidden;
    float: right;
    border-right: 1px dotted #999999;
}

header nav ul li{
	float: left;
	vertical-align:middle;
	text-align: center;
	font-size: 12px;
    font-weight: bold;
    padding: 2px 20px;
    border-left: 1px dotted #999999;
}

.header_nav nav ul li > a {
    color: #222222;
    padding: 5px 0;
    transition: .2s;
    letter-spacing: 1px;
    
}

.header_nav nav ul li > a:hover {
    color: #FF4506;
	text-decoration: none;
}



/*-----------  nav  -----------*/

nav{
	padding:2px 0;
}

nav ul{
	display:table;
	margin:0 auto;
    
}

nav ul li{
	display:table-cell;
	vertical-align:middle;
    
}

/* -----------------------------------------------------------
    #eyecatch
----------------------------------------------------------- */

#eyecatch_box{
    margin-top:15px;
    
}


/* -----------------------------------------------------------
    #wrapper
----------------------------------------------------------- */


/* -----------------------------------------------------------
    #wrap
----------------------------------------------------------- */

#wrap{
	width:1100px;
	margin:0 auto;
	padding:20px 0 60px;
	overflow:hidden;
}

 
/*-----------  #breadcrumb  -----------*/
#breadcrumb{
	width:850px;
    background: #EEEEEE;
    margin-bottom: 10px;
    padding:8px 0px 8px 20px;
}


#breadcrumb ul{
    width: 100%;
    padding:0;
    text-align:left;
    color: #222222;
    font-size:12px;
    letter-spacing: 1px;
    line-height:2;
}

#breadcrumb ul i{
    font-size:14px;
    margin:0 0 0 10px;
}

#breadcrumb ul li {
	margin: 0 10px 0 0;
	text-align: center;
	float: left;
}

/*
#breadcrumb li > a::before {
    content: ">";
	margin-right: 5px;
} 
*/

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

#contents{
	max-width:850px;
	float:right;
    /* background: #FFCCCC; */
}



#contents h1{
    width: 100%;
    padding:12px 0px 10px 20px;
    text-align:left;
    background: #3797C6;
    color: #FFFFFF;
    font-size:26px;
    margin-bottom: 20px;
    font-weight: bold;
}

#detail #contents h2{
    width: 100%;
    padding:5px 0px 10px 20px;
    text-align:left;
    color: #1F1F1F;
    font-size:20px;
    margin-top: 40px;
    margin-bottom: 15px;
    font-weight: bold;
    background:url('../images/common/h2_bg.png') no-repeat ;
}




#sec_top01{
    margin-bottom: 15px;
}


#sec_top01 h2 {
    border-bottom: solid 4px #CCCCCC;
    position: relative;
    font-size: 26px;
    letter-spacing:normal;
    padding: 5px 0 5px 0;
}

#sec_top01 h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #3797C6;
    bottom: -4px;
    width: 75%;
}

#sec_top01 img{
    margin: 10px 0 0 0;
    width: auto;
}

.movie_highlight{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
}

.movie_highlight .movie_parts_h{
    width: 40%;
    padding-right: 20px;
    margin-bottom: 25px;
}

.movie_highlight .movie_parts_v{
    width: 60%;
    padding-right: 20px;
    margin-bottom: 25px;
}


.movie_highlight .movie_parts_v img{
    margin: 10px 0 0 0;
    width: 100%;
}

.movie_highlight p{
    font-size:14px;
    line-height: 2;
	letter-spacing: 0.05em;
    margin-bottom: 10px;
}


.banner_box{
    margin-bottom: 30px;
    overflow: hidden;
}


#sec_top02{
    margin-bottom: 20px;
}


#sec_top02 h2 {
    border-bottom: solid 4px #CCCCCC;
    position: relative;
    font-size: 26px;
    letter-spacing:normal;
    padding: 5px 0 5px 0;

}

#sec_top02 h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #3797C6;
    bottom: -4px;
    width: 75%;
}

#sec_top02 img{
    margin: 20px 0 0 0;
    width: auto;
}



#sec_top03{
    margin-bottom: 20px;
}


#sec_top03 h2 {
    border-bottom: solid 4px #CCCCCC;
    position: relative;
    font-size: 26px;
    letter-spacing:normal;
    padding: 5px 0 5px 0;
    margin-bottom: 20px;
}

#sec_top03 h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #3797C6;
    bottom: -4px;
    width: 30%;
}

#sec_top03 h3 {
    border-bottom: solid 2px #3797C6;
    position: relative;
    font-size: 15px;
    letter-spacing:normal;
    padding: 5px 0 5px 0;
}


.movie_flex{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;

}

.movie_flex .movie_parts{
    width: 50%;
    padding-right: 20px;
    margin-bottom: 25px;
}

.video{
    position:relative;
    width:100%;
    padding-top:56.25%;
    margin-top: 10px;
}
.video iframe{
    position:absolute;
    top:0;
    right:0;
    width:100%;
    height:100%;
}







/*-----------  sidearea  -----------*/

#sidearea{
	max-width:230px;
	float:left;
}

#sidearea h2{
    width: 230px;
    padding:10px 0px 8px 0px;
    text-align:center;
    background: #57C3E7;
    color: #FFFFFF;
}

#sidearea h2.h2_dousa{
    background: #3797C6;
}

#sidearea h2.h2_tairyoku{
    background: #E3665B;
}

#sidearea h2.h2_sankou{
    background: #FF9326;
}




#sidearea h3{
    padding:6px 0px 4px 15px;
    font-size: 13px;
    margin: 5px 0 0 0;
}

#sidearea h3::before {
	font-family: FontAwesome;
    content: "\f0da";
	margin-right: 10px;
    
}

#sidearea .sub_title{
    font-size: 10px;
}

#category{
    background: #EEEEEE;
    padding-bottom: 1px;
    
}

#category ul{
	margin:5px;
    background: #FFFFFF;
    overflow: hidden;
}

#category ul li{
	line-height:1.8;
    font-size: 12px;
    border-bottom: 1px dotted #CCCCCC;
    padding:0px 0;
    margin:0px 0px;
}

#category ul li:last-child {
     border-bottom: none;
}


#category ul li a { 
    display:block;
    width: 100%; /* 横幅 */
    padding:10px 10px 8px 15px; /* a要素内の余白 */
    letter-spacing: normal;
}

#category ul li a:hover{
    text-decoration: underline;
    color: #FF4506;
}


#side_banner{
    margin-top: 20px;
}

#side_banner img{
    margin-bottom: 10px;
    width: 100%;
}



/* -----------------------------------------------------------
    footer
----------------------------------------------------------- */


footer{
    background: #EEEEEE;
}

#fmenu_box{
	width:1100px;
	margin:0 auto;
	position:relative;
	overflow:hidden;
    padding:25px 0;
}

#fmenu_box .corp{
	width:280px;
	float: left;
    padding:40px 0 40px 0;
    /* border-right: 1px solid #CCCCCC; */
}
#fmenu_box .corp .corp_txt{
	margin:10px 0 0 2px;
    font-size: 11px;
	text-align: left;
    line-height: 2;
}


#fmenu_box .fmenu{
	width:820px;
	float: left;
    padding:15px 0 15px 40px;
    font-weight: bold;
    border-left: 1px solid #CCCCCC;
}


#fmenu_box ul{
	margin:10px 0 0 10px; 
    overflow: hidden;
    width:180px;
    float: left;
}


#fmenu_box ul.fcommon{
	margin:47px 0 0 10px; 
    overflow: hidden;
    width:180px;
    float: left;
}

#fmenu_box ul li{
	line-height:1.7;
    font-size: 11px;
    padding:7px 0;
    margin:0 0 0 0;
    font-weight: normal;
}

#fmenu_box ul li.fmenu_title{
	font-size: 14px;
    font-weight: bold;
}



#fmenu_box ul li > a::before {
    content: "-";
	margin-right: 5px;
    color:#444444;
}


#fmenu_box ul li > a{
	
}

footer .copyright{
	font-size:11px;
	font-size:1.1rem;
	color:#fff;
	background:#57C3E7;
	text-align:center;
	padding:10px 0;
}

.pagetop {
	display: none;
	position: fixed;
	bottom: 60px;
	right: 55px;
}
.pagetop a {
	display: block;
	width: 62px;
	height: 62px;
	text-align: center;
	color: #fff;
	font-size: 24px;
	text-decoration: none;
	line-height: 50px;
}




.migration {
	display:none;
	position: fixed;
	top: 60px;
	right: 0;
    width: 160px;
}
 
.migration a {
    display: block;
    text-align: center;
    color: #222;
    font-size: 12px;
    text-decoration: none;
	filter:alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;
    margin-bottom: 7px;
}
.migration a:hover {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 12px;
    text-decoration: none;
	filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}


