@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);


/*---基本設定ここから-----------------------------------------------------------------------------------------------------*/
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;
}
th,td{
	text-align: left;
	vertical-align: top;
}

/* 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;
}

article, aside, dialog, figure, footer, header,hgroup, menu, nav, section { display: block; }

img{border: 0; vertical-align: bottom;-ms-interpolation-mode: bicubic; }


/* For modern browsers */
.clearfix:before,.clearfix:after,.cf:before,.cf:after{
	content:"";
	display:table;
}
.clearfix:after,.cf:after{clear:both;}
.clearfix,.cf{zoom:1;}/* For IE 6/7 (trigger hasLayout) */
/*---基本設定ここまで-----------------------------------------------------------------------------------------------------*/


html{
	color: black;
	background: white;
	overflow-y: scroll;	/*ここでスクロールバーを常に表示*/
	scroll-behavior: smooth;
}
body{
	text-align: left;
	font-size: 16px;
	font-family: 'Noto Sans JP','Gothic', 'CenturyGothic', 'AppleGothic', sans-serif;
	word-wrap: break-word;
}

.weight100   {
    font-weight:100
    }
 
.weight300   {
    font-weight:300
    }
 
.weight400   {
    font-weight:400
    }
 
.weight500   {
    font-weight:500
    }
 
.weight600   {
    font-weight:600
    }
 
.weight700   {
    font-weight:700
    }
 
.weight900   {
    font-weight:900
    }

#box{
	width: 100%;
	margin: 0 auto;
	background: url(image/box-back.jpg) repeat-y;
	position:relative
}

/*-----------------------------------------------------
@@ ヘッダ
------------------------------------------------------*/
div.page-header{
}

h1.top{
	height: 200px;
}

h1.top a{
	font-size: 0px;
	text-indent:-9988px;	/*文字を飛ばして見えなくする*/
	overflow: hidden;	/*はみ出す場合は消す*/
	outline:none;	/*リンクの点線を無くす*/
	position: absolute;
	top: 0;
	left: 0;
}

h1.top a img{
	display: block;
	width: 200px;
	height: auto;
	margin:  50px 0 0 100px;
}

h1 a:hover{
	opacity: 0.6;
}

div#page-top{
}
/*-----------------------------------------------------
@@ グローバルナビゲーション
------------------------------------------------------*/
ul.nav{
	padding: 0;
	text-align: right;
	margin-right: 15%;
	}
	ul.nav li{
	display: inline-block;
	}
	
	ul.nav li a{
	display: block;
	padding: 1em;
	color: #00a99d;
	text-decoration: none;
	}
	ul.nav a::first-line{
	font-size: 16px;
	}
/*-----------------------------------------------------
@@ フッタ
------------------------------------------------------*/
ul.nav_foot{
	padding: 0;
	text-align: left;
	margin: 100px 0 0 5%;
	}
	ul.nav_foot li{
	display: inline-block;
	}
	
	
	ul.nav_foot li a{
	display: block;
	padding: 1em;
	color: #00a99d;
	text-decoration: none;
	}
	ul.nav_foot a::first-line{
	font-size: 16px;
	}

small{
	color: #00a99d;
	font-size: 70%;
	font-weight: 300;
	float: right;
	margin: 0 0 50px 0;	
}
/*-----------------------------------------------------
@@ メイン
------------------------------------------------------*/
#main{
	width: 960px;
	margin: 0 auto;
	text-align: left;
}

/*-----------------------------------------------------
@@ スクロール　矢印
------------------------------------------------------*/
section.arrow{
	height: 1000px;
	font-size: 0;
	display: none;
  }
  
  .button{
	width: 7%;
	position: fixed;
	right: 0;
	bottom: 0;
	font-size: 50px;
	color: #fff;
	/* background: #000; */
	padding: 10px;
	cursor: pointer;
	transition: .3s;
	
	/*デフォルトで非表示にする*/
	opacity: 0;
	visibility: hidden;
  }
  
  /*このクラスが付与されると表示する*/
  .active{
	opacity: 1;
	visibility: visible;
  }

/*-----------------------------------------------------
@@ For media queries
レスポンシブ Web デザイン　Responsive Web Design
------------------------------------------------------*/
/* set image max width to 100% */
video,
img, object {
	max-width: 100%;
	height: auto;
	/* ie8.css参照 */
}

.video embed,
.video object,
.video iframe {
	width: 100%;
	height: auto;
}


/*-----------------------------------------------------
@@ index インデックス
------------------------------------------------------*/
 /*ふわっ　scroll_up ｜下から上へ出現*/
.scroll_up {
	transition: 0.8s ease-in-out;
	transform: translateY(30px);
	opacity: 0;
  }
  .scroll_up.on {
	transform: translateY(0);
	opacity: 1.0;
  }
	

/*「貴方の想いを、デザインでカタチにします。」*/
div.thought-text{
	margin: 100px 0 100px 50px;
}

p.thought{
	font-family: 'Klee One', cursive;
	font-size: 120%;
	line-height: 2;
}

/*見出し*/
h1.heading{
	color: #00a99d;
	font-size: 170%;
	text-align: center;
	margin: 100px 0 30px 0 ;
	border-bottom: #00a99d 1px solid;
	padding-bottom: 5px;
}

/*プロフィール写真*/
div.profile-img{
	float: left;
	padding: 0 0 0 50px;
	width: 25%;
}
div.profile-img img{
}

/*プロフィール内容*/
div.profile-text{
	color: #777777;
	float: left;
	font-size: 90%;
	width: 65%;
	line-height: 2;
	margin: 20px 0 0 35px;
}

/*SNS*/
div.sns{
	float: right;
	width: 5%;
	margin: 0 3% 0 0;
}

div.sns a{
}

div.sns a:hover{
	opacity: 0.6;
}

/*works*/
div.works-flex{
	display: flex;
	flex-wrap: wrap;
}

div.works{
	width: 30%;
	margin: 20px 5% 0 0;
}

div.works:nth-of-type(3n){
	margin-right: 0%;
}

div.works img{
}

p.works-title{
	color: #777777;
	font-weight: 600;
	text-align: center;
	margin: 0 0 10px 0;
}

p.works-text{
	color: #777777;
	text-align: center;
	margin: 0 0 10px 0;
	line-height: 1.5;
}

 /*メールフォーム*/
 #formWrap {
	width:700px;
	margin:0 auto;
	color:#777777;
	line-height:120%;
	font-size:90%;
}
table.formTable {
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td, table.formTable th {
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th {
	width:30%;
	font-weight:normal;
	background:#e2f5f5;
	text-align:left;
}
p.form_head{
	text-align: center;
	line-height: 1.5;
	margin: 0 0 15px 0;	
}
.require{
	color:#F00;

}
p.form_submit{
	text-align: center;
	padding: 20px 0 0 0;
}

p.form_submit input{
	border: 1px solid #ccc;
	background-color: #ddd;
    padding: 10px;
	border-radius: 10%;
}
p.form_submit input:hover{
	background-color: #eee;
}

/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:572px) {
#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
form input[type="text"], form textarea {
	width:80%;
	padding:5px;
	font-size:110%;
	display:block;
}
form input[type="submit"], form input[type="reset"], form input[type="button"] {
	display:block;
	width:100%;
	height:40px;
}
}


/*-----------------------------------------------------
@@ スマホ版 768px以下の場合
------------------------------------------------------*/
@media screen and (max-width: 768px) {
/* 768px以下の場合 (スマホ等)*/

#box{
	width: 100%;
	margin: 0 auto;
	background: none
}

div.page-header{
	margin: 20px 0 0 0;
}

h1.top{
	height: 100px;
	text-align: center;
}

h1.top a{
	position: static;
	top: auto;
	left: auto;	
}

h1.top a img{
	margin:  50px auto 0;
}

#main{
	width: 100%;
	text-align: left;
}

ul.nav {
    margin-right: 5%;
}

.button{
	width: 15%;
}

/*「貴方の想いを、デザインでカタチにします。」*/
div.thought-text {
    margin: 100px 5% 100px 5%;
}

p.thought {
    font-size: 100%;
}

/*プロフィール写真*/
div.profile-img {
    float: none;
    padding: 5% auto 5%;
    width: 80%;
}

/*プロフィール内容*/
div.profile-text {
    color: #777777;
    float: none;
    width: 90%;
    margin: 20px 5% 35px;
}

/*SNS*/
div.sns {
    float: none;
    width: 20%;
    margin: 0 auto 0;
}

/*works*/
div.works-flex{
	display: block;
}

div.works {
    width: 90%;
    margin: 20px auto 0;
}

div.works:nth-of-type(3n) {
	margin-right: 5%;
}

 /*メールフォーム*/
p.form_submit input {
    border-radius: 0%;
}

small {
    margin: 50px 5% 50px 0;
}
/******************/
}/* 768px以下の場合ここまで */










/*------------------------------------------------------
@@ Retina用背景画像
------------------------------------------------------*/
@media 
only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-device-pixel-ratio: 1.5) {

	div.retinaback {
		background: url(image/aaaaa-2x.jpg); /* 2倍サイズの画像 */
		-webkit-background-size: 100px 100px; /* 表示させるサイズ WebKit */
		background-size: 100px 100px; /* 表示させるサイズ WebKit以外 */
	}

}
