@charset "utf-8";
/* CSS Document */

/*****************************/

#openmenu {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	z-index: 100;
	display: none;
	text-align: center;
}

#openmenu h4 {
	width: 1050px;
	margin: 0px auto 0px;
	text-align: left;
}

#openmenu h4 img {
	height: 25px;
}

#openmenu ul {
	width: 1050px;
	margin: 0px auto 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
}

#openmenu ul li {
	margin: 0px 10px 10px 0px;
}

#openmenu .logo2 {
	margin: 40px 0px 20px 0px;
}

#openmenu .logo2 img {
	width: 400px;
}



@media screen and (max-width:768px) {

#openmenu {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	z-index: 100;
	display: none;
	text-align: center;
}

#openmenu h4 {
	width: 90%;
	margin: 0px auto 0px;
	text-align: left;
}

#openmenu h4 img {
	height: 15px;
}

#openmenu ul {
	width: 90%;
	margin: 0px auto 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
}

#openmenu ul li {
	width: 33.333%;
	margin: 0px 0% 0% 0px;
	text-align: center;
}
	
#openmenu ul li img {
	width: 95%;
}

#openmenu .logo2 {
	margin: 40px 0px 20px 0px;
}

#openmenu .logo2 img {
	width: 30%;
}


	
}

/*****************************/


header {
	padding: 40px 0px 0px 0px;
}

header nav {
	position: relative;
	width: 1000px;
	padding: 0px 0px 0px 0px;
	margin: 0px auto;
}

header nav #menu {
	position: absolute;
	top: 0;
	left: 0;
	background: url("../img/common/hun_menu_off.png")no-repeat;
	cursor: pointer;
	width: 52px;
	height: 52px;
}

header nav #menu.active {
	background: url("../img/common/hun_menu_on.png")no-repeat;
	z-index: 150;
}

header nav #logo {
	position: absolute;
	top: 0;
	right: 50%;
	margin-right: -200px;
}

header nav #logo img{
	width: 400px;
}

header nav #sns {
	display: flex;
	position: absolute;
	top: 0;
	left: 80px;
}

/*header #title {
	height: 47px;
	line-height: 47px;
	padding: 150px 0px 10px 0px;
	text-align: center;
}
*/

header h1 {
	padding: 150px 0px 0px 0px;
	margin: 0px 0px 50px 0px;
	width: 100%;
	text-align: center;
	font-size: 3.0em;
}


@media screen and (max-width:768px) {

header {
	padding: 0px 0px 0px 0px;
}
	
header nav {
	position: relative;
	width: 90%;
	padding: 0px 0px 0px 0px;
	margin: 0% auto;
}

header nav #menu {
	position: absolute;
	top: 3vw;
	left: 0;
	background: url("../img/common/hun_menu_off.png")no-repeat;
	cursor: pointer;
	width: 7vw;
	height: 7vw;
	background-size: contain;
}

header nav #menu.active {
	background: url("../img/common/hun_menu_on.png")no-repeat;
	z-index: 150;
	background-size: contain;
	
}

header nav #logo {
	position: absolute;
	top: 6vw;
	right: 50%;
	margin-right: -50%;
}

header nav #logo img{
	width: 30vw;
}

header nav #sns {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	position: absolute;
	top: 3vw;
	left: 10vw;
}

header nav #sns li {
	width: 25px;
}
header nav #sns li img {
	width: 100%;
}
	
/*header #title {
	height: inherit;
	line-height: inherit;
	padding: 20vw 0px 10px 0px;
	text-align: center;
}

header #title img {
	width: 90%;
}*/

header h1 {
	padding: 15vw 0px 0px 0px;
	margin: 0px 0px 10% 0px;
	width: 100%;
	text-align: center;
	font-size: 3.0em;
}
	
header h1 img{
	width: 100%;
}
	
}

/*****************************/

article {
	margin: 0px auto 0px auto;
	width: 1000px;
	padding: 0px 0px 0px 0px;
}


article section {
	width: 780px;
	margin: 0px auto 0px;
	padding: 0px 0px 50px 0px;
	clear: both;
	/*text-align: center;*/
}
article section.photobook {
	width: 894px;
	padding: 0px 0px 0px 0px;
}

article section.photobook ul {
	width: 894px;
	margin: 0px auto 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	list-style: none;
}

article section.photobook ul li {
	width: 282px;
	margin: 0px 0px 24px 0px;
}

article section.photobook ul li img {
	width: 100%;
}

article h2 {
	font-size: 2.4em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 15px 0px;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
}

article h3 {
	font-size: 1.2em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
}

article h4 {
	font-size: 1.3em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
}

article h5 {
	font-size: 1.2em;
	font-weight: 600;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
}

article h6 {
	font-size: 1.0em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 5px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
}

article p {
	margin: 0px 0px 50px 0px;
}

article section .service {
	text-align: left;
	width: 700px;
	margin: 0px auto 50px;
}

article section ul {
	margin: 0px 0px 50px 20px;
	list-style: outside;
}

article section .faq {
	text-align: left;
	width: 700px;
	margin: 0px auto 50px;
}

article section .faq dt {
	margin: 0px 0px 10px 0px;
	background: url("../img/common/icon_q.png")no-repeat top left;
	text-indent: 0px;
	padding-left: 60px;
	min-height: 43px;
}

article section .faq dd {
	margin: 0px 0px 50px 0px;
	background: url("../img/common/icon_a.png")no-repeat top left;
	text-indent: 0px;
	padding-left: 60px;
	min-height: 43px;
}

article section ol {
	margin: 0px 0px 50px 20px;
	list-style: decimal;
}

article section table {
	width: 800px;
	margin: 0px auto 80px;
	/*border-top: solid 1px #898989;*/
}

article section table tr th {
	padding: 0px 15px;
	/*border-bottom: solid 1px #898989;*/
	font-weight: 400;
	text-align: left;
	white-space: nowrap !important;
}

article section table tr td {
	padding: 10px 15px;
	text-align: left;
	/*border-bottom: solid 1px #898989;*/
	white-space: normal;
}

article section table tr td p,
article section table tr td dl{
	margin: 0px 0px 0px 0px;
}

article section table tr td ul,
article section table tr td ol{
	margin: 0px 0px 0px 20px;
}


article section input[type="text"],
article section input[type="email"] {
	font-family: 'Noto Sans JP', sans-serif;
    border-style: none;
    border: solid 1px #999;
    line-height: 1.0em;
    font-size: 1.0em;
    padding: 7px;
    margin: 0px 0px 0px 0px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
}

article section textarea {
	font-family: 'Noto Sans JP', sans-serif;
    border-style: none;
    border: solid 1px #999;
    line-height: 1.5em;
    font-size: 1.0em;
    padding: 7px;
    margin: 0px 0px 0px 0px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
	width: 600px;
	height: 250px;
}

article section label {
	margin: 0px 0px 0px 20px;
}

figcaption {
	color: #FFF;
    margin: 5px 0px 30px;
    text-align: center;
    font-size: 0.85em;
    line-height: 1.5em;
}

article section a.label {
	background: #000 url("../img/common/bg_link_label.png")no-repeat top right;
	padding: 0px 25px 0px 15px;
	line-height: 31px;
	text-decoration: none;
	font-weight: 600;
	color: #FFF;
}

article section a.label:hover {
	text-decoration: none;
	color: #FFF;
}

article section a.label:visited {
	text-decoration: none;
	color: #FFF;
}

article section a.link_out {
	background: url("../img/common/link_out.png")no-repeat 200px center;
	padding: 10px 60px 10px 20px;
	border: 5px solid #000;
	-moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    -o-border-radius: 50px;
    -ms-border-radius: 50px;
	font-family: 'Noto Serif JP', serif;
	text-decoration: none;
	font-weight: 600;
	float: right;
}

article section a.link_out:hover {
	text-decoration: none;
}

article section a.link_out:visited {
	text-decoration: none;
}

article section .link {
	padding: 5px 30px 5px 30px;
	border: 5px solid #000;
	-moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    -o-border-radius: 50px;
    -ms-border-radius: 50px;
	font-family: 'Noto Serif JP', serif;
	text-decoration: none;
	font-weight: 600;
	text-align: center;
}

article section a.link:hover {
	text-decoration: none;
}

article section a.link:visited {
	text-decoration: none;
}

article input[type="submit"].link {
	padding: 10px 30px 10px 30px;
	border: 5px solid #000;
	-moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    -o-border-radius: 50px;
    -ms-border-radius: 50px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	text-align: center;
	font-size: 1.0em;
}

@media screen and (max-width:768px) {
	
article {
	margin: 0px auto;
	width: 90%;
	padding: 0px 0px 0px 0px;
}

article section {
	width: 100%;
	margin: 0px auto 0px;
	padding: 0px 0px 10% 0px;
	clear: both;
	text-align: left;
}
article section.photobook {
	width: 100%;
	padding: 0px 0px 0px 0px;
}
	
article section.photobook ul {
	width: 100%;
	margin: 0px auto 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

article section.photobook ul li {
	width: 30%;
	margin: 0px 0px 2% 0px;
	list-style: none;
}

article section.photobook ul li img {
	width: 100%;
}

article h2 {
	width: 100%;
	font-size: 2.0em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 15px 0px;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
}

article h3 {
	width: 100%;
	font-size: 1.6em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
}

article section h4 {
	width: 100%;
	font-size: 1.3em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
}

article h5 {
	width: 100%;
	font-size: 1.2em;
	font-weight: 600;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
}

article h6 {
	width: 100%;
	font-size: 1.0em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 5px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
}

article section p {
	margin: 0px 0px 50px 0px;
}
	
article section div img {
	width: 100%;
	height: inherit;
}
	
article section p img {
	width: 100%;
	height: inherit;
}
	
article section .photo img {
	width: 100%;
	height: inherit;
}

article section .service {
	text-align: left;
	width: 100%;
	margin: 0px auto 50px;
}

article section ul {
	margin: 0px 0px 50px 20px;
	list-style: outside;
}

article section .faq {
	text-align: left;
	width: 100%;
	margin: 0px auto 50px;
}

article section .faq dt {
	margin: 0px 0px 10px 0px;
	background: url("../img/common/icon_q.png")no-repeat top left;
	text-indent: 0px;
	padding-left: 60px;
	min-height: 43px;
}

article section .faq dd {
	margin: 0px 0px 50px 0px;
	background: url("../img/common/icon_a.png")no-repeat top left;
	text-indent: 0px;
	padding-left: 60px;
	min-height: 43px;
}

article section ol {
	margin: 0px 0px 50px 20px;
	list-style: decimal;
}

article section table {
	width: 100%;
	margin: 0px auto 80px;
	/*border-top: solid 1px #898989;*/
}

article section table tr th {
	padding: 10px 15px;
	/*border-bottom: solid 1px #898989;*/
	font-weight: 400;
	text-align: left;
	white-space: nowrap !important;
	display: block;
}

article section table tr td {
	padding: 10px 15px;
	text-align: left;
	/*border-bottom: solid 1px #898989;*/
	white-space: normal;
	display: block;
}

article section table tr td p,
article section table tr td dl{
	margin: 0px 0px 0px 0px;
}

article section table tr td ul,
article section table tr td ol{
	margin: 0px 0px 0px 20px;
}


article section input[type="text"],
article section input[type="email"] {
	font-family: 'Noto Sans JP', sans-serif;
    border-style: none;
    border: solid 1px #999;
    line-height: 1.0em;
    font-size: 1.0em;
    padding: 7px;
    margin: 0px 0px 0px 0px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
}

article section textarea {
	font-family: 'Noto Sans JP', sans-serif;
    border-style: none;
    border: solid 1px #999;
    line-height: 1.5em;
    font-size: 1.0em;
    padding: 7px;
    margin: 0px 0px 0px 0px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
	width: 100%;
	height: 250px;
}

article section label {
	margin: 0px 0px 0px 20px;
}

figcaption {
	color: #FFF;
    margin: 5px 0px 30px;
    text-align: center;
    font-size: 0.85em;
    line-height: 1.5em;
}
	
article section a.label {
	background: #000 url("../img/common/bg_link_label.png")no-repeat top right;
	padding: 0px 25px 0px 15px;
	line-height: 31px;
	text-decoration: none;
	font-weight: 600;
	color: #FFF;
}

article section a.label:hover {
	text-decoration: none;
	color: #FFF;
}

article section a.label:visited {
	text-decoration: none;
	color: #FFF;
}
	
article section a.link_out {
	background: url("../img/common/link_out.png")no-repeat 90% center;
	padding: 10px 60px 10px 20px;
	border: 5px solid #000;
	-moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    -o-border-radius: 50px;
    -ms-border-radius: 50px;
	font-family: 'Noto Serif JP', serif;
	text-decoration: none;
	font-weight: 600;
	float: right;
}

article section a.link_out:hover {
	text-decoration: none;
}

article section a.link_out:visited {
	text-decoration: none;
}
	
article input[type="submit"].link {
	padding: 5px 30px 5px 30px;
	border: 5px solid #000;
	-moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    -o-border-radius: 50px;
    -ms-border-radius: 50px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	text-align: center;
	font-size: 1.3em;
}

}


/*****************************/

article section table.contact {
	margin: 0px 0px 20px 0px;
	border-top: none;
}

article section table.contact tr th {
	padding: 10px 15px;
	text-align: left;
	border-bottom: none;
	font-weight: 600;
	white-space: nowrap !important;
}

article section table.contact tr td {
	padding: 20px 15px;
	border-bottom: none;
	white-space: normal;
}

.w30 {
	width: 26%;
}

.w50 {
	width: 46%;
}

.w100 {
	width: 96%;
}

@media screen and (max-width:768px) {
	
article section table.contact {
	width: 100%;
	margin: 0px auto 10%;
	border-top: none;
}

article section table.contact tr th {
	padding: 2% 0%;
	text-align: left;
	border-bottom: none;
	font-weight: 600;
	white-space: nowrap !important;
	display: block;
	background-color: #FFF;
	text-align: left;
}

article section table.contact tr td {
	padding: 2%;
	border-bottom: none;
	white-space: normal;
	display: block;
}

.w30 {
	width: 96%;
}

.w50 {
	width: 96%;
}

.w100 {
	width: 96%;
}

}


/*****************************************************************/

footer {
	width: 100%;
	height: 500px;
	margin: 0px 0px 30px 0px;
	position: relative;
	background: url("../img/common/shinji_shimada.png")no-repeat center 280px ;
}

footer #pagetop {
	position: fixed;
	bottom: 0px;
	right: 50%;
	margin-right: -600px;
	z-index: 5;
}

footer #pagetop img {
	cursor: pointer;
}


/*footer h4 {
	text-align: center;
	font-size: 1.2em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 30px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: 0.3em;
}*/

footer section p {
	text-align: center;
	margin: 0px 0px 30px 0px;
}

#copyright {
	text-align: center;
	margin: 230px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	font-size: 0.7em;
	font-weight: 600;
}

@media screen and (max-width:768px) {

footer {
	width: 90%;
	height: inherit;
	margin: 0px auto 0%;
	position: relative;
	background: url("../img/common/shinji_shimada.png")no-repeat center 80vw;
	background-size: contain;
}

footer #pagetop {
	position: fixed;
	bottom: 0;
	right: 5%;
	margin: 0px;
	z-index: 5;
}
	
footer #pagetop img {
	cursor: pointer;
}
	

/*footer h4 {
	text-align: center;
	width: 100%;
	font-size: 1.8em;
	font-weight: 600;
	line-height: 1.5em;
	margin: 0px 0px 30px 0px;
	padding: 0px 0px 0px 0px;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: 0.3em;
}*/

footer section p {
	text-align: center;
	margin: 0px 0px 150px 0px;
}

#copyright {
	text-align: center;
	margin: 0px 0px 5vw 0px;
	font-family: 'Noto Serif JP', serif;
	font-size: 0.8em;
	font-weight: 600;
}
	

}

/*****************************/
