/* reset */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input[type=text]::-ms-clear {  display: none; width : 0; height: 0; }
input[type=text]::-ms-reveal {  display: none; width : 0; height: 0; }
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }

/* custom css */
html, body{
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 400;
	color: #000;
	background-color: #f7f7f7;
	background-image: url("../google_logo.png");
	background-repeat: no-repeat;
	background-position: 80% 1600px;
	background-size: 1300px;
}

header{
	width: 100%;
}

/* search bar */
#google-search-form{
	height: 63px;
	background-color: #4285f4;
}

#google-search-logo{
	padding: 15px 20px 15px 40px;
	display: inline-block;
}

#google-search-logo h1{
	display: none;
}

.google-search-logo-img {
	width: 100px;
}
/* input zone */
#google-search-form input{
	height: 38px;
	max-width: 500px;
	background-color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 1rem;
	color: #4285f4;
	padding-left: 10px;
	border: 0;
	border-radius: 4px;
	position: absolute;
	margin-top: 12px;
}

/* placeholder color */
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #4285f4;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color: #4285f4;
   opacity: 1;
   -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color: #4285f4;
   opacity: 1;
   -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color: #4285f4;
}

/* zoom icon */
#google-search-form .fa-search{
    position: relative;
    bottom: 13px;
    right: -470px;
    color: #4285f4;
}

/******* search menu *******/
/***************************/
/* margin finger and world icon */
.google-search-icon{
	margin-right: 25px; 
}

/* resize svg img and position*/
.google-search-icon img{
	width: 18px;
	height: 18px;
	vertical-align: -3px; 
}

#google-search-menu{
    height: 65px;
    width: 100%;
    background-color: #f7f7f7;
    box-shadow: 0 8px 5px -5px #dfdfdf;
    font-family: 'Montserrat', sans-serif;
}

#google-search-menu ul{
    height: 65px;
    min-width: 900px;
    width: 100%;
    vertical-align: top;
}

/* margin first li */
#google-search-menu ul li:first-child{
    margin-left: 40px;
    vertical-align: middle;
}

.separator{
    vertical-align: middle;
    margin-left: 15px;
    border-right: 2px solid #ebebeb;
    content: '';
    max-height: 35px;
}

/* from third li */
#google-search-menu ul li:nth-child(n+3){
    display: inline-block;
    vertical-align: middle;
    margin-right: 25px;
	height: 65px;
	/* ajust bottom margin */
	box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

#google-search-menu ul li a{
    font-weight: 400;
    font-size: 0.9rem;
    line-height: 65px;
    text-transform: uppercase;
    text-decoration: none;
    color: #94a2b8;
    vertical-align: middle;
}

/* disable last margin */
#google-search-menu ul li:last-child{
	margin-right: 40px;
	position: absolute;
	right: 0;
	top: 65px;
}

#google-search-menu ul li:hover a, #google-search-menu ul li:focus a{
    color: #4285f4;
    display: block;
    height: 67px;
}

/* blue line on hover */
#google-search-menu ul li:hover:nth-child(n+4), #google-search-menu ul li:focus:nth-child(n+4){
	color: #4285f4;
	border-bottom: 4px solid;
}

/* blue line on hover */
#google-search-menu ul li:hover:last-child, #google-search-menu ul li:focus:last-child{
	border-bottom: 0;
}

/* align li and icons */
#google-search-menu ul li{
	display: inline-block;
}

/* margin between icon and li */
#google-search-menu ul li {
    display: inline-block;
    vertical-align: top;
}

/* */
#google-search-menu li:last-child{
	position: absolute;
	right: 0;
	top:0;
}

.fa {
    margin-right: 5px;
}

#google-menu-icon{
	display: none;
}

/***********************************/
#google-main {
    margin: 0 auto;
    max-width: 1700px;
    text-align: center;
}

/******* highlited elements *******/
/**********************************/
/* highlited elements */
.swiper-wrapper{
	margin-top: 10px;
}

.google-highlited{
	display:inline-block;
	width: 1580px;
	margin-top: 40px; 
	text-align: center;
}

/* one element */
.google-highlited-search{
	display: inline-block;
	vertical-align: top;
	background-color: #FFF;
	width: 500px;
	margin-right: 40px;
	margin-bottom: 20px;
	border-radius: 3px;
	text-align: left;
	text-decoration: none;
	box-shadow: 0 20px 15px -15px #dfdfdf;

    transition: margin-top 200ms linear;
    -webkit-transition: margin-top 200ms linear;
    -moz-transition: margin-top 200ms linear;
    -o-transition: margin-top 200ms linear;
}

.google-highlited-search:hover, .google-highlited-search:focus{
	margin-top: -10px; 
}

/* disable last margin-right */
.google-highlited-search:last-child{
	margin-right: 0px;
}

/* title */
.google-highlited-search-title{
	padding: 15px;
} 

/* favicon link */
.google-highlited-search img:nth-child(1){
	width: 30px;
	height: 30px;
	border-radius: 50%;
	vertical-align: -9px;
}

/* link title */
.google-highlited-search h2{
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	display: inline-block;
	margin-left: 8px;
	color: #1b1d30;
	text-transform: uppercase;
}

/* full img */
.google-highlited-search img{
	width: 100%;
}

/* website description */
.google-highlited-search p{
	padding: 20px 15px 25px 15px;
	margin-bottom: 10px;
	line-height: 1.4rem;
	height: 4.2rem;
	overflow: hidden;
	font-weight: 400;
	text-align: left;
	color: #5f606e;		
	font-size: 0.9rem;
}

/* website link */
.google-highlited-search h3{
	margin: 0 0 17px 15px;
	color: #4285f4;
	font-size: 0.9rem;
}

/******* main search *******/
/***************************/
#google-search{
	display:inline-block;
	width: 1580px;
	height: 1200px;
	margin-top: 20px;
	font-size: 0;
	text-align: left;
	box-shadow: 0 40px 40px -40px #dfdfdf;
}

#google-list{
	display:inline-block;
	width: 1078px;
	height: 100%;
	vertical-align: top;
	background-color: #fff; 
	font-size: 1rem;
	border-right: 2px solid #f4f4f4;
	border-radius: 3px; 
}

#google-search-stats{
	font-size: 0.8rem;
	padding: 20px 0 0 15px;
	margin-bottom: -8px; 
	color: #9daabe;
}

.google-ad{
	margin-right: 8px;
	padding: 4px 8px;
	border-radius: 4px;
	font-size: 0.8rem;
	background-color: #43af60;
	color: #fff;	
} 

.google-ad-link{
	color: #43af60;
	font-size: 0.9rem;
	margin-top: 5px;
} 

.google-list-item{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	color: #5f606e;
	text-decoration: none;
	margin-top: 30px;

	transition: padding-left 200ms linear;
    -webkit-transition: padding-left 200ms linear;
    -moz-transition: padding-left 200ms linear;
    -o-transition: padding-left 200ms linear;
}

.google-list-item:hover, .google-list-item:focus{
	padding-left: 10px;
}

.google-list-item:hover .google-list-item-details h3, .google-list-item:focus .google-list-item-details h3{
	color: #4285f4;
}

.google-list-item:hover .google-ad-title, .google-list-item:focus .google-ad-title{
	color: #43af60;
}

.google-list-item:hover .google-list-item-details, .google-list-item:focus .google-list-item-details{
	background-color: #f7f7f7;
}

.google-list-item-img{
	width: 150px;
	height: 90px;
	margin: 0 0 0 15px;
}

.google-list-item-img img{
	width: 150px;
	height: 100%;
	border-radius: 4px;
}

.google-list-item-details {
	padding-left: 20px;
	width: 100%;

	transition: background-color 200ms linear;
    -webkit-transition: background-color 200ms linear;
    -moz-transition: background-color 200ms linear;
    -o-transition: background-color 200ms linear;
}

.google-list-item-details h3{
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	line-height: 1.6rem;
    max-height: 1.6rem;
    overflow: hidden;

    transition: color 200ms linear;
    -webkit-transition: color 200ms linear;
    -moz-transition: color 200ms linear;
    -o-transition: color 200ms linear;
}

.google-list-item-details p{
	width: 75%;
	font-size: 0.9rem;
	line-height: 1.4rem;
	overflow: hidden;
	height: 2.8rem;
    margin-top: 0;
}

.google-list-item-details h4:not(.google-ad-link){
	color: #4285f4;
	font-size: 0.9rem;
	margin-top: 5px;
}

/******* sidebar **********/
/**************************/
#sidebar{
	display:inline-block;
	width: 500px;
	height: 100%;
	overflow: hidden;
	background-color: #fff; 
	color: #5f606e;
	border-radius: 3px; 
	font-size: 0.95rem;
}

#sidebar h4{
	font-family: 'Montserrat', sans-serif;
	font-size: 1.2rem;
	text-transform: uppercase;
	color: #1b1d30;
}

#sidebar p{
	font-weight: 400;
	padding-top: 30px;
	line-height: 1.4rem;
	font-size: 0.9rem;
}

#sidebar strong{
	color: #4285f4;
}

#sidebar b{
	color: #4285f4;
}

#wikipedia{
	max-height: 620px;
	margin: 60px 40px 0 40px;
	padding-bottom: 30px;
	border-bottom: 1px solid #f4f4f4;	
	overflow: hidden;
}

#google-image{
	height: 500px;
	margin: 25px 40px 0 40px;
}

#google-image h4{
	max-height: 520px;
	margin-bottom: 20px;
}

#google-image ul{
	width: 100%;
	margin-top: 10px;
	font-size: 0;
}

#google-image ul li{
	display: inline-block;
	width: 48%;
	height: 130px;
	padding-right: 2%; 
	padding-bottom: 2%;
}

#google-image ul li img{
	width: 100%;
	height: 100%;	
}

#google-image a{
	display: block;
	margin-top: 20px;
	color: #4285f4;
	font-size: 0.9rem;
	text-decoration: none;	
}

/********** search list nav *******/
/**********************************/

#google-nav-list {
    text-align: left;
    display: inline-block;
    width: 1580px;
    height: 40px;
    padding: 30px 0 0 0;
}

#google-nav-list ul {
    margin-left: 15px;
    display: inline-block;
}

#google-nav-list ul li {
    margin-right: 13px;
    display: inline-block;
}

#google-nav-list ul li a:hover, #google-nav-list ul li a:focus, #google-nav-list ul li:first-child a{
	color: #db3236;
}

#google-nav-list ul li a {
    text-decoration: none;
    font-size: 1.2rem;
    font-weight: 700;
    color: #4285f4;
    line-height: 40px;
}

.google-nav-list-logo {
    display: inline-block;
    width: 120px;
    vertical-align: top;
}

.google-nav-list-logo img{
	width: 100%;
	height: 100%;
}

footer{
	display: inline-block;
	width: 1580px;
	margin-top: 80px;
	margin-bottom: 60px;	
	text-align: left;
	font-size: 0.9em;
}

footer a{
	color: #7f808b;
	text-decoration: none;
	line-height: 1.8em;
}

footer a:hover, footer a:focus{
	color: #4285f4;
}


/* Medium pc screen display */
@media screen and (max-width: 1600px) {
	html, body{
		background-position: 80% 1610px;
		background-size: 1000px;
	}

	.google-highlited {
	   	width: 1250px;
	}

	.google-highlited-search {
	    width: 400px;
	    margin-right: 25px;
	}

	#google-search {
	    width: 1250px;
	}

	#google-list {
	    width: 848px;
	}

	#sidebar {
	    width: 400px;
	}

	#wikipedia {
	    margin: 60px 20px 0 20px;
	}

	#google-image {
	    margin: 25px 20px 0 20px;
	}

	#google-image ul li {
	    height: 110px;
	}

	#google-nav-list {
	    width: 1250px;
	}

	footer {
	    width: 1250px;
	}
}

/* Small pc screen display */
@media screen and (max-width: 1300px) {
	html, body{
		background-position: 80% 1620px;
		background-size: 700px;
	}

	#google-search-menu ul li:last-child {
	    position: initial;
	    margin-right: 0;
	}
	
	.google-highlited {
	   	width: 950px;
	}

	.google-highlited-search {
	    width: 307px;
   	 	margin-right: 14px;
	}

	#google-search {
	    width: 950px;
	}

	#google-list {
	    width: 641px;
	}

	.google-list-item-details h3 {
   		width: 90%;
	}

	.google-list-item-details p {
	    width: 95%;
	    height: 2.6rem;
	}

	.google-ad-link {
	    margin-top: 12px;
	}

	#sidebar {
	    width: 307px;
	}

	#sidebar p {
	    padding-top: 20px;
	}

	#wikipedia {
		margin: 55px 15px 0 15px;
		padding-bottom: 120px;
	}

	#google-image {
	    margin: 25px 15px 0 15px;
	    max-height: 360px;
	}

	#google-image ul li {
	    height: 80px;
	}

	#google-nav-list {
	    width: 950px;
	}

	footer {
	    width: 950px;
	}
}

/* Smartphone and tablet display */
@media screen and (max-width: 1000px){
	body, html{
		min-width: 300px;
		background-position: bottom;
    	background-size: 400px;
	}

	#google-main{
	    margin: 20px auto 0 auto;
	}

	#google-search-form{
	    height: 63px;
	}

	#google-search-form input{
	    padding-left: 10px;
	    position: initial;
	}

	#google-search-form .fa-search {
	    bottom: 0;
	    left: -30px;
	}

	.google-search-logo-img{
	    vertical-align: middle;
	}

	#google-search-menu-wrapper{
		display: none;
		position: fixed;
		top: 0;
		width: 100%;
		height: 100%;
		background:rgba(0,0,0,0.6);
		z-index: 999;
	}

	#google-search-menu{
		display: none;
		position: fixed;
		top: 0;
		right: 0;
		width: 200px;
		height: 100%;
		background:rgba(247,247,247,1);
		border-right: 1px solid #dfdfdf;
		z-index: 1000;
	}

	#google-search-menu ul{
		display: block;
		width: 200px;
		height: 100%;
		min-width: 0;
	}
	
	#google-search-menu ul li{
	    width: 200px;
	    border-bottom: 1px solid #dfdfdf;
	}

	#google-search-menu ul li:nth-child(-n+3), #google-search-menu ul li:last-child{
	    display: none;
	}

	#google-search-menu ul li:nth-child(n+3){
	    margin-right: 0;
	}

	#google-search-menu ul li a{
		display: block;
	    width: 200px;
	}

	#google-search-menu ul li:hover:nth-child(n+4) {
	    border-bottom: 1px solid #dfdfdf;
	}

	#google-search-menu .fa{
		margin-left: 20px;
	}

	#google-menu-icon{
		display: inline-block;
	    position: relative;
	    left: -10px;
	    top: 6px;
	    color: #fff;
	    cursor: pointer;
	}

	.google-search-icon{
	    margin-right: 0;
	}

	#google-search{
		height: auto;
	    width: 97%;
	    margin-top: 5px;
	}

	.swiper-pagination{
	    position: static;
	    margin-top: 10px;
	}

	.swiper-wrapper, .swiper-container{
		width: 100%;
	}

    .swiper-slide{
        width: 85%;
    }

	.google-highlited{
	    margin-top: 0;
	}

	.google-highlited-search {
   	 	margin-right: 0;
	}
	.google-highlited-search:hover, .google-highlited-search:focus{
		margin-top: 0; 
	}

	#google-list{
	    border-right: none;
	    padding-bottom: 40px;
	    width: 100%;
	}

	.google-list-item{
	    margin-top: 20px;
	}

	.google-list-item-details{
	    padding-left: 20px;
	    padding-right: 20px;
	    width: 100%;
	}

	.google-list-item-details h3, .google-list-item-details p{
	    width: 100%;
	}

	#sidebar{
	    display: none;
	}

	#google-nav-list{
	    width: 100%;
	    text-align: center;
	}

	.google-nav-list-logo{
	    width: 80px;
	    height: 40px;
	}

	#google-nav-list ul{
	    margin-left: 10px;
	}

	#google-nav-list ul li{
	    margin-right: 3px;
	}

	footer{
	    width: 90%;
	    margin: 30px 0 40px 0;
	    text-align: center;
	}
}

/* Small smartphone display */
@media screen and (max-width: 740px){
	#google-search-form .fa-search{
	    display: none;
	}

	#google-menu-icon {
    	left: 10px;
	}
}	

/* Small smartphone display */
@media screen and (max-width: 500px){
	.google-list-item-img{
	    display: none;
	}
}