
/* ========RESET======== */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}


/* ========BASIC======== */


html{

	width:100%;
	height:100%;
	min-height:100%;
    background-image:url(../img/bg.jpg); 
	background-position: center top;
	font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic'
}

html > body{

	height:auto;

}

#main
    {
     margin-left:auto;
     margin-right:auto;
     text-align:center; 
     max-width:100%;
     background-color:#ffffff; 
    }

p {
margin:0px;
padding:10px;

}


br {
   letter-spacing:normal;
}

img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

a {
   color:#68903C;
   text-decoration:none;
}

a:hover {
   color:#ffffff;
   text-decoration:underline;
}

dl,ol,ul {
   margin:0 0 1em 0;
   padding:0;
}

li {
   margin:0 0 0 40px;
   padding:0;
}

 hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}


/* ========MENU======== */
.inner {
    width: 900px;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}
 
/* header */
#top-head {
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 100px auto 0;
    padding: 10px 0 0;
    line-height: 1;
    z-index: 999;
    background-color:rgba(61,61,61,.7);
}
#top-head a,
#top-head {
    color: #fff;
    text-decoration: none;
}
#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
    font-size: 36px;
}

#top-head .logo img {
    float: left;
	max-width: auto;
	max-height: 50px;
}

#global-nav ul {
    list-style: none;
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 14px;
}
#global-nav ul li {
    float: left;
}
#global-nav ul li a {
    padding: 0 10px;
}

/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    height: 55px;
    background: #fff;
    background: rgba(255,255,255,.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
    font-size: 24px;
    color: #333;
}
#top-head.fixed #global-nav ul li a {
    color: #333;
    padding: 0 10px;
}
 
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #666;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}


/* ========MENU MOBILE======== */

@media screen and (max-width: 640px) {
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        background: rgba(255,255,255,1);
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
    }
    #top-head.fixed .logo,
    #top-head .logo {
        position: absolute;
        left: 13px;
        top: 13px;
        color: #333;
        font-size: 26px;
    }
    
    #top-head .logo img {
    float: left;
	max-width: auto;
	max-height: 40px;
	}
	
    
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #333;
        width: 100%;
        text-align: center;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        font-size: 14px;
    }
    #global-nav ul li {
        float: none;
        position: static;
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #fff;
        padding: 18px 0;
    }
    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }
}


/* ========HEADER CUSTOMIZE======== */

#header h1 {
    background-image:url(../img/top.jpg); 
	no-repeat center top;
	margin-top: 0px;
	padding-top:0px;
	text-align:center;
	background-attachment: relative;
	background-position: center center;
	min-height: 600px;
	width: 100%;
}


#header h1 img {
	width:100%;


}


#header h1 a {
   color:#333;
}


#header h1 a:hover {
   color:#92C45B;
}

#header p {
   margin:10px;
   padding:10px ;
   border-bottom:1px solid #CECFCE;
}


@media screen and (max-width: 640px) {
    #header h1 {
    background-image:url(../img/top2.jpg); 
	no-repeat center top;
	margin: 56px 0px 0px 0px;
	padding-top:0px;
	text-align:center;
	background-attachment: relative;
	background-position: center center;
	min-height: 550px;
	width: 100%;
    
    }
}

/* ========SNS======== */

#sns{
    height:100%;
	text-align:center;
   margin:0px;
   padding:10px ;
   	background:#e5e5e5; 
}



/* ========TWITTER======== */

#twitter{
    height:500px;
	text-align:center;
   margin:0px;
   padding:10px ;
   background: linear-gradient(#b7b7b7, #ffffff);
}


/* ========BANNER CUSTOMIZE======== */

#banner{
	text-align:center;
	margin: 0 ;
	padding:10px ;
	background-image:url(../img/banner.jpg); 
}


.t_eff{
    color: #fff;
    font-size: 2.5em;
    font-family: 'Source Sans Pro', sans-serif;
    margin: 10px 0 0;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.illust p{
	color: #f700a4;
	}

.cd p{
	color: #383838;
	}


#banner img{
	text-align: center;
	clear: both;
	padding: 10px 10px 10px 10px;

}

/* ========ABOUT CUSTOMIZE======== */

#about{
	text-align:center;
	margin: 0 ;
	padding:10px ;
	background-image:url(../img/about.jpg); 
}


.t_eff{
    color: #fff;
    font-size: 2.5em;
    font-family: 'Source Sans Pro', sans-serif;
    margin: 10px 0 0;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.illust p{
	color: #f700a4;
	}

.cd p{
	color: #383838;
	}

/* ========CONTENTS======== */


#contents{
	text-align:center;
	margin: 0 ;
	padding: 0 ;
	background:#fff; 
}


#contents h1{
font-weight: bold;
font-size: 1.4em;
margin: 0;
position: relative;
padding: 0.5em 0.5em;
background: rgb(252,0,170);
background: linear-gradient(90deg, rgba(252,0,170,1) 0%, rgba(255,82,210,1) 35%, rgba(252,156,214,0.5858543246400123) 100%);
color: white;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.56);
}


#contents h2{
font-weight: bold;
font-size: 1.4em;
margin: 0;
position: relative;
padding: 0.5em 0.5em;
background: -moz-linear-gradient(to right, rgb(255, 199, 0), #fff60a);
background: -webkit-linear-gradient(to right, rgb(255, 199, 0), #fff60a);
background: linear-gradient(to right, rgb(255, 199, 0), #fff60a);
color: white;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.56);
}


#contents h3{
font-weight: bold;
font-size: 1.4em;
margin: 0;
position: relative;
padding: 0.5em 0.5em;
background: -moz-linear-gradient(to right, rgb(255, 124, 111), #ffc994);
background: -webkit-linear-gradient(to right, rgb(255, 124, 111), #ffc994);
background: linear-gradient(to right, rgb(255, 124, 111), #ffc994);
color: white;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.56);
}

#contents h4{
font-weight: bold;
font-size: 1.4em;
margin: 0;
position: relative;
padding: 0.5em 0.5em;
background: -moz-linear-gradient(to right, rgb(218, 9, 255), #ff82fc);
background: -webkit-linear-gradient(to right, rgb(218, 9, 255), #ff82fc);
background: linear-gradient(to right, rgb(218, 9, 255), #ff82fc);
color: white;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.56);
}


.cp_table *, .cp_table *:before, .cp_table *:after {
-webkit-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
}

.cp_table {
width: 100%;
border-collapse: collapse;
}

.cp_table th, .cp_table  td {
width: 70%;
padding: 20px;
margin: 0px;
border: none;
text-align: left;
vertical-align: top;
word-break : break-all;
}
.cp_table th {
width: 30%;
text-align: center;
background: #fff;
}

@media only screen and (max-width:640px) {
.cp_table {
margin: 0;
}
.cp_table th, .cp_table td {
width: 100%;
display: block;
border-top: none;
}
.cp_table tr:first-child th {
border-top: none;
}
}

.cp_table h1 {
border-bottom: solid 3px black;
/*線の種類（実線） 太さ 色*/
}


.tokuten p {
text-align:left;
margin: 0; 
padding: 0;
color:#ff5996;
}

.stokuten p {
text-align:left;
margin: 0; 
padding: 0;
color:#4a6772;
}



.square_btn {
    position: relative;
    display: inline-block;
    padding: 0.25em 0.5em;
    text-decoration: none;
    color: #FFF;
    background: #ffa3c1;
    transition: .4s;
    margin: 5px;
  }

.square_btn:hover {
    background: #82dfff;
    text-decoration: none;
}


.box1{
    width:200px;
    padding: 0.5em;
    margin: 0.5em 0;
    color: #2c2c2f;
    background: #c1c1c1;/*背景色*/
	border-left: double 7px #ff5996;/*左線*/
    border-right: double 7px #ff5996;/*右線*/
}
.box1 p {
	color: #FFF;
    margin: 0; 
    padding: 0;
}

.box2 p {
margin:0 0 20px 0;
padding: 0px;
font-weight: bold;
text-align: left;
}

/* ========STORY CUSTOMIZE======== */

.story{
margin:0 0 20px 0;
padding: 0px;
color: #ff5996;
text-align:left;
border-bottom: double 6px #ff5996;/*下線*/
}


.box4 p {
margin:0 0 20px 0;
padding: 0px;
text-align: left;
font-size: 0.9em;
}


/* ========TOKUTEN CUSTOMIZE======== */

#tokuten{
	text-align:center;
	margin: 0 ;
	padding:10px ;
	background-image:url(../img/tokuten.jpg); 
}

.box3 p {
margin:0 0 20px 0;
padding: 0px;
font-weight: bold;
text-align: center;
}


/* ========VIDEO CUSTOMIZE======== */

.box5 p {
margin: 10px 0px 20px 0px;
padding: 0px;
text-align: left;
font-size: 1.0em;
}


.video_btn{
    position: relative;
    display: inline-block;
    font-weight: bold;
    padding: 10px;
    margin: 3px;
    text-decoration: none;
    background: #ff5996;
    color: white;
    border: double 2px #ff5996;
    transition: .4s;
  }

.video_btn:hover {
    color: #ff5996;
    background: #fff;
    text-decoration: none;
}


/* ========FOOTER CUSTOMIZE======== */
#footer{
	width:100%;
	text-align: center;
	clear: both;
	padding: 30px 0px 0px 0px;
	font-size:0.8em;
	background:#cecece; 
}

#footer img{
	text-align: center;
	clear: both;
	padding: 30px 10px 30px 10px;

}

/* ========PAGETOP CUSTOMIZE========= */
#page_top{
  width: 70px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: rgba(61,61,61,.7);
  opacity: 0.6;
}
#page_top a{
  position: relative;
  display: block;
  width: 70px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: FontAwesome;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -25px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 11px;
  color: #fff;
  position: absolute;
  top: 30px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}