/*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/

/*
*Modify 2/27/2017
*STUDIO es
*PC first
*Add "Navigation",
*/


/* Table of contents
----------------------------------------------------------
- Grid
- Base Styles
- Typography
- Links
- Buttons
- Forms
- Lists
- Code
- Tables
- Spacing
- Utilities
- Misc (add by es)
- Navigation (add by es)
- Clearing
- Media Queries
*/

/*
- flexbox
*/

/* Grid
========================================================= */
.container {
  position: relative;
  width: 100%;
  max-width: 1146px;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box; }


.column,
.columns {
  width: 100%;
  float: left;
  margin-left: 2.617801%;/* width 1146px -> margin-left 30px */
  box-sizing: border-box; }
.column:first-child,
.columns:first-child {
  margin-left: 0; }


.one.column,
.one.columns                    { width: 5.9336823735%; }/*4.66666666667*/
.two.columns                    { width: 14.4851657941%; }/*13.3333333333*/
.three.columns                  { width: 23.0366492147%; }/*22*/
.four.columns                   { width: 31.5881326353%; }/*30.6666666667*/
.five.columns                   { width: 40.1396160558%; }/*39.3333333333*/
.six.columns                    { width: 48.6910994764%; }/*48*/
.seven.columns                  { width: 57.2425828970%; }/*56.6666666667*/
.eight.columns                  { width: 65.7940663176%; }/*65.3333333333*/
.nine.columns                   { width: 74.3455497382%; }/*74.0*/
.ten.columns                    { width: 82.8970331588%; }/*82.6666666667*/
.eleven.columns                 { width: 91.4485165794%; }/*91.3333333333*/
.twelve.columns                 { width: 100%; margin-left: 0; }

.one-third.column               { width: 31.5881326353%; }/*30.6666666667*/
.two-thirds.column              { width: 65.7940663176%; }/*65.3333333333*/

.one-half.column                { width: 48.6910994764%; }/*48*/


/* Offsets */
.offset-by-one.column,
.offset-by-one.columns          { margin-left: 8.5514834206%;  }/*8.66666666667*/
.offset-by-two.column,
.offset-by-two.columns          { margin-left: 17.1029668412%; }/*17.3333333333*/
.offset-by-three.column,
.offset-by-three.columns        { margin-left: 25.6544502618%; }/*26*/
.offset-by-four.column,
.offset-by-four.columns         { margin-left: 34.2059336824%; }/*34.6666666667*/
.offset-by-five.column,
.offset-by-five.columns         { margin-left: 42.7574171030%; }/*43.3333333333*/
.offset-by-six.column,
.offset-by-six.columns          { margin-left: 51.3089005236%; }/*52*/
.offset-by-seven.column,
.offset-by-seven.columns        { margin-left: 59.8603839442%; }/*60.6666666667*/
.offset-by-eight.column,
.offset-by-eight.columns        { margin-left: 68.4118673647%; }/*69.3333333333*/
.offset-by-nine.column,
.offset-by-nine.columns         { margin-left: 76.9633507853%; }/*78.0*/
.offset-by-ten.column,
.offset-by-ten.columns          { margin-left: 85.5148342059%; }/*86.6666666667*/
.offset-by-eleven.column,
.offset-by-eleven.columns       { margin-left: 94.0663176265%; }/*95.3333333333*/

.offset-by-one-third.column,
.offset-by-one-third.columns    { margin-left: 34.2059336824%; }/*34.6666666667*/
.offset-by-two-thirds.column,
.offset-by-two-thirds.columns   { margin-left: 68.4118673647%; }/*69.3333333333*/

.offset-by-one-half.column,
.offset-by-one-half.columns     { margin-left: 51.3089005236%; }/*52*/



/* margin narrow*/
.n-column,
.n-columns {
  width: 100%;
  float: left;
  margin-left: 2%;
  box-sizing: border-box; }
.n-column:first-child,
.n-columns:first-child {
  margin-left: 0; }

/*column% = (1-cm+m)/c
  c:column num
  m:margin %
  case of 12column:(100-12*2+2)/12 = 6.5
  case of third-column:(100-3*2+2)/3= 32
  
  o:one %
  column% = o*c+m*c-1
  case of five: 6.5*5+2*(5-1) = 40.5
*/

.one.n-column,
.one.n-columns                    { width: 6.5%; }
.two.n-columns                    { width: 15%;  }
.three.n-columns                  { width: 23.5%;}
.four.n-columns                   { width: 32%;  }
.five.n-columns                   { width: 40.5%;}
.six.n-columns                    { width: 49%;  }
.seven.n-columns                  { width: 57.5%;}
.eight.n-columns                  { width: 66%;  }
.nine.n-columns                   { width: 74.5%;}
.ten.n-columns                    { width: 83%;  }
.eleven.n-columns                 { width: 91.5%;}
.twelve.n-columns                 { width: 100%; margin-left: 0; }

.one-third.n-column               { width: 32%; }
.two-thirds.n-column              { width: 66%; }

.one-half.n-column                { width: 49%; }




@media (max-width: 960px) {

  .container {
    padding: 0 20px; }

}

@media (max-width: 767px) {

  .column,
  .columns,
  .n-column,
  .n-columns {
    width: 100%  !important;
    float: none;
    margin-left: 0 !important;}

}


/* Base Styles
========================================================= */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html {
  font-size: 62.5%; }
body {
  font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  font-weight: 400;
  font-family: "Raleway", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #222; }


/* Typography
========================================================= */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 300; }
h1 {line-height: 1.2;  letter-spacing: -.1rem;}
h2 {line-height: 1.25; letter-spacing: -.1rem; }
h3 {line-height: 1.3;  letter-spacing: -.1rem; }
h4 {line-height: 1.35; letter-spacing: -.08rem; }
h5 {line-height: 1.5;  letter-spacing: -.05rem; }
h6 {line-height: 1.6;  letter-spacing: 0; }

h1 { font-size: 5.0rem; }
h2 { font-size: 4.2rem; }
h3 { font-size: 3.6rem; }
h4 { font-size: 3.0rem; }
h5 { font-size: 2.4rem; }
h6 { font-size: 1.5rem; }

/* Larger than phablet */
@media (max-width: 767px) {
  h1 { font-size: 4.0rem; }
  h2 { font-size: 3.6rem; }
  h3 { font-size: 3.0rem; }
  h4 { font-size: 2.4rem; }
  h5 { font-size: 1.8rem; }
  h6 { font-size: 1.5rem; }
}

p {
  margin-top: 0; }


/* Links
========================================================= */
a {
  color: #1EAEDB; }
a:hover {
  color: #0FA0CE; }


/* Buttons
========================================================= */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  display: inline-block;
  height: 38px;
  padding: 0 30px;
  color: #555;
  text-align: center;
  font-size: 11px;
  font-weight: 600;
  line-height: 38px;
  letter-spacing: .1rem;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border-radius: 4px;
  border: 1px solid #bbb;
  cursor: pointer;
  box-sizing: border-box; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
  color: #333;
  border-color: #888;
  outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
  color: #FFF;
  background-color: #33C3F0;
  border-color: #33C3F0; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
  color: #FFF;
  background-color: #1EAEDB;
  border-color: #1EAEDB; }


/* Forms
========================================================= */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
  height: 46px;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #a0a0a0;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  min-height: 180px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #33C3F0;
  outline: 0; }
/*label,(disabled by es)*/
legend {
  display: block;
  margin-bottom: .5rem;
  font-weight: 600; }
fieldset {
  padding: 0;
  border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
label > .label-body {
  display: inline-block;
  margin-left: .5rem;
  font-weight: normal; }


/* Lists
========================================================= */
ul {
  list-style: circle inside; }
ol {
  list-style: decimal inside; }
ol, ul {
  padding-left: 0;
  margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
  font-size: 90%; }
li {
  margin-bottom: 1rem; }


/* Code
========================================================= */
code {
  padding: .2rem .5rem;
  margin: 0 .2rem;
  font-size: 90%;
  white-space: nowrap;
  background: #F1F1F1;
  border: 1px solid #E1E1E1;
  border-radius: 4px; }
pre > code {
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre; }


/* Tables
========================================================= */
th,
td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #E1E1E1; }
th:first-child,
td:first-child {
  padding-left: 0; }
th:last-child,
td:last-child {
  padding-right: 0; }


/* Spacing
========================================================= */
button,
.button {
  margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
  margin-bottom: 1.5rem; }
pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }


/* Utilities
========================================================= */
.u-full-width {
  width: 100%;
  box-sizing: border-box; }
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }
.u-pull-right {
  float: right; }
.u-pull-left {
  float: left; }


.u-pull-right.columns {
  margin-left: 2.617801%;
}
.u-pull-left.column,
.u-pull-left.columns {
  margin-left: 0; }


/* Misc
========================================================= */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1; }



/* Image */
.img-left,.img-right {
  font-size: 0.9em;
}
.img-left {
  padding-right: 3rem;
}
.img-right {
  padding-left: 3rem;
  float: right;
}
.img-left:after,
.img-right:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

@media (max-width: 767px) {
	.img-left {
	  padding-right: 0;
	}
	.img-right {
	  padding-left: 0;
	  float: none;
	}
}


/* Navigation (add by es)
========================================================= */
.nav ul,
ul.nav{
  display: block;
  margin: 0;
  padding: 0;
  text-align: center;
}

.nav ul li,
ul.nav li {
  list-style-type: none;
  float: left;
  margin: 0;
}

.nav ul li a,
ul.nav li a{
  display: block;
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  text-decoration: none;
  line-height: 2;
}
.nav ul li.row2 a,
ul.nav li.row2 a{
  line-height: 1;
}

.nav ul li a:hover,
ul.nav li a:hover{
  background: #fbfbfb;
}

.nav-bar li,
.nav-box li a{
  border-style: solid;
  border-width: 1px;
  border-color: #eee;
}

.nav-box li a{
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  background: #fff;
  box-sizing: border-box;
}

.nav-bar li{
  border-left-width: 0px;
  min-height: 3rem;
}
.nav-bar li a{
  min-height: 3rem;
}
.nav-bar li:first-child,
.nav-bar li:first-child a{
  border-left-width: 1px;
  border-radius: 5px 0 0 5px;
  -moz-border-radius: 5px 0 0 5px;
  -webkit-border-radius: 5px 0 0 5px;
  -o-border-radius: 5px 0 0 5px;
  -ms-border-radius: 5px 0 0 5px;
}
.nav-bar li:last-child,
.nav-bar li:last-child a{
  border-radius: 0 5px 5px 0;
  -moz-border-radius: 0 5px 5px 0;
  -webkit-border-radius: 0 5px 5px 0;
  -o-border-radius: 0 5px 5px 0;
  -ms-border-radius: 0 5px 5px 0;
}

.nav-box li{
  padding-left: 20px;
  padding-bottom: 20px;
}
.nav-box ul,ul.nav-box {
  margin-left: -20px;
}

.nav-line li {
	display: inline-block;
	float: none;
}
.nav-line ul li a,
ul.nav-line li a{
	padding: 1px 10px;
	margin-top: 3px;
	border-right: solid 1px ;
}
.nav-line ul li:first-child a,
ul.nav-line li:first-child a{
	border-left: solid 1px;
}





@media (max-width: 960px) {

}

@media (max-width: 767px) {

	.nav ul li,
	ul.nav li {
		float: none;
	}
	.nav-box li {
		padding-left: 0;
	}
	.nav-bar li {
		border-top-style: solid;
		border-top-width: 1px;
		border-bottom-width : 0px;
		border-left-width: 1px;
		min-height: auto;
	}
	.nav-bar li a{
		min-height: auto;
	}
	.nav-bar li:first-child,
	.nav-bar li:first-child a{
	  border-radius: 5px 5px 0 0;
	  -moz-border-radius: 5px 5px 0 0;
	  -webkit-border-radius: 5px 5px 0 0;
	  -o-border-radius: 5px 5px 0 0;
	  -ms-border-radius: 5px 5px 0 0;
	}
	.nav-bar li:last-child,
	.nav-bar li:last-child a{
	  border-bottom-width: 1px;
	  border-radius: 0 0 5px 5px;
	  -moz-border-radius: 0 0 5px 5px;
	  -webkit-border-radius: 0 0 5px 5px;
	  -o-border-radius: 0 0 5px 5px;
	  -ms-border-radius: 0 0 5px 5px;
	}

	.nav-box li{
	  padding-left: 0;
	  padding-bottom: 5px;
	  width: 100% !important;
	}
	.nav-box ul,ul.nav-box {
	  margin-left: 0;
	}

}


/* Clearing
========================================================= */

/* Self Clearing Goodness */
.container:after,
.row:after,
.nav:after,
.u-cf {
  content: "";
  display: table;
  clear: both; }


/* Images
========================================================= */
img {max-width: 100%}

@media (max-width: 767px) {
	img {height: auto;}
}



/* Media Queries
========================================================= */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/


/* Larger than mobile */
@media (max-width: 400px) {}

/* Larger than phablet (also point when grid becomes active) */
@media (max-width: 767px) {}

/* Larger than tablet */
@media (max-width: 750px) {}

/* Larger than desktop */
@media (max-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}



/* Flexbox
========================================================= */

/*親に設定*/
.flexbox {
	display: -webkit-flex;
	display: flex;
	list-style-type: none;
}

.fx-wrap {
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.fx-center {
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.fx-space-between{
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.fx-items-strech{
	-webkit-align-items: stretch;
	align-items: stretch;
}

.fx-txt-center,
.fx-txt-center li,
.fx-txt-center div,
.fx-txt-center p{
	text-align: center;
}

.fx-img-center img{
	display: block;
	margin-left: auto;
	margin-right: auto;
}



/*一番使う組み合わせ*/
.i-flexbox {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
	-webkit-align-items: stretch;
	align-items: stretch;
	list-style-type: none;
	text-align: left;
	padding-bottom: 2em;
}

.i-flexbox img:first-child{
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding-right: 5px;
}

.i-flexbox > li, i-flexbox > div, i-flexbox > p{
	box-sizing: border-box;
}


/*2カラム*/
.fx-2col{
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.fx-2col > li, .fx-2col > div, fx-2col > p{
	width: 48.5%;
}



/*3カラム*/
.fx-3col{
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.fx-3col > li, .fx-3col > div, fx-3col > p{
	width: 25%;
	margin: 10px;
}


/*4カラム*/
.fx-4col{
	-webkit-justify-content: space-start;
	justify-content: space-start;
}
.fx-4col > li, .fx-4col > div, fx-4col > p{
	width: 23%;
	margin-left: 1%;
	margin-right: 1%;
}



@media (max-width: 767px) {

	/*1カラム*/
	.fx-sp-1col > li, .fx-sp-1col > div, .fx-sp-1col > p{
		width: 100%;
	}

	/*2カラム*/
	.fx-sp-2col > li, .fx-sp-2col > div, .fx-sp-2col > p{
		width: 46%;
		margin-left: 2%;
		margin-right: 2%;
	}
	
	
	/*3カラム*/
	.fx-sp-3col > li, .fx-sp-3col > div, fx-sp-3col > p{
		width: 25%;
		margin: 10px;
	}
	
	/*4カラム*/
	.fx-sp-4col > li, .fx-sp-4col > div, fx-sp-4col > p{
		width: 23%;
	}


}