/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap");
html{
	line-height:1.15;
	-webkit-text-size-adjust:100%
	background: #fff;
}
body{
	margin:0
}
h1{
	font-size:2em;margin:0.67em 0
}
hr{
	box-sizing:content-box;
	height:0;overflow:visible
}
pre{
	font-family:monospace, monospace;
	font-size:1em
}
a{
	background-color:transparent
}
abbr[title]{
	border-bottom:none;
	text-decoration:underline;
	text-decoration:underline dotted
}
b,strong{
	font-weight:bolder
}
code,kbd,samp{
	font-family:monospace, monospace;
	font-size:1em
}
small{
	font-size:80%
}
sub,sup{
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline
}
sub{
	bottom:-0.25em
}
sup{
	top:-0.5em
}
img{
	border-style:none
}
button,input,optgroup,select,textarea{
	font-family:inherit;
	font-size:100%;
	line-height:1.15;
	margin:0
}
button,input{
	overflow:visible
}
button,select{
	text-transform:none
}
button,[type="button"],[type="reset"],[type="submit"]{
	-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{
		border-style:none;padding:0
}
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{
	outline:1px dotted ButtonText
}
fieldset{
	padding:0.35em 0.75em 0.625em
}
legend{
	box-sizing:border-box;
	color:inherit;
	display:table;
	max-width:100%;
	padding:0;
	white-space:normal
}
progress{
	vertical-align:baseline
}
textarea{
	overflow:auto
}
[type="checkbox"],[type="radio"]{
	box-sizing:border-box;
	padding:0
}
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{
	height:auto
}
[type="search"]{
	-webkit-appearance:textfield;
	outline-offset:-2px
}
[type="search"]::-webkit-search-decoration{
	-webkit-appearance:none
}
::-webkit-file-upload-button{
	-webkit-appearance:button;
	font:inherit
}
details{
	display:block
}
summary{
	display:list-item
}
template{
	display:none
}
[hidden]{
	display:none
}
html,body{
	font-size:82.5%
}
body{
	background:#fff;
	color:#333;
	font-family:"Noto Sans JP",sans-serif;line-height:1.5
}
::selection{
	color:#fff;
	background:#00bfff
}
a{
	color:#f08c00;
	text-decoration:underline;
	cursor:pointer;
	transition:all 0.3s
}
a:hover{
	color:#ffb957;
	text-decoration:none
}
a:focus{
	outline:none
}
a:focus,*:focus{
	outline:none}
@media print{
	* html body{
		zoom:0.7
	}
}
*{
	box-sizing:border-box;
	padding:0;
	margin:0;
	list-style:none
}
img{
	vertical-align:bottom
}
.pc{
	display:block
}
.sp{
	display:none
}
body{
	word-break:break-all
}
/*header
 * ---------------------------------------*/
header {
	min-width: 1000px;
	width: 100%;
	height: 76px;
	background: #fff;
	box-sizing: border-box;
	z-index: 20;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	clear: both;
	box-shadow: 1px 1px 1px #aaa;
}
.header__bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header__bar h1 {
	display: flex;
}
.header__bar h1 p {
	margin: 0 8px 0 32px;
}
.header__bar h1 p img{
	width: 250px;
}
.header__obj {
	display: flex;
}
.header__login{
    margin-left: 5px;
}
.header__logout {
	margin-right: 5px;
}
.header__mypage {
	margin-right: 32px;
}
.header__login a {
	font-size: 1.2rem;
	font-weight: 500;
	text-decoration: none;
	color: #fff;
	display: block;
	background: url(../images/icon_login.svg) no-repeat 10px center #f08c00;
	border-radius: 5px;
	padding: 10px 10px 10px 30px;
}
.header__logout a, .header__mypage a {
	font-size: 1.2rem;
	font-weight: 500;
	text-decoration: none;
	color: #fff;
	display: block;
	background: no-repeat 10px center #f08c00;
	border-radius: 5px;
	padding: 10px 10px 10px 10px;
}

/*main
 * ----------------------------------*/
main {
	padding-top: 76px;
}
.pgheader {
	width: 100%;
	margin: 20px 0 0 0;
	padding: 0 50px;
	background: #f7fbfd;
}
.pgheader__entry .inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	display: flex;
	align-items: center;
	height: 240px;
}
.pgheader .inner {
	height: 140px;
}
.pgheader__entry .pgheader__title {
	font-size: 2rem;
}
.contact {
	width: 100%;
	padding: 50px 50px 100px;
}
.contact .inner {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
.contact__lead {
	font-size: 1.5rem;
	line-height: 2;
	margin-bottom: 40px;
	text-align: justify;
}
.contact__form {
	margin-bottom: 20px;
}
.contact__form table{
	width: 100%;
	border-collapse: collapse;
}
.contact__form table th {
	font-size: 1.5rem;
	text-align: left;
	border-bottom: 1px solid #ddd;
	padding: 15px;
	width: 15em;
}
.contact__form table td {
	font-size: 1.5rem;
	text-align: left;
	border-bottom: 1px solid #ddd;
	padding: 15px;
}
.contact__form table th input, .contact__form table th textarea, .contact__form table td input, .contact__form table td textarea {
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #ddd;
    padding: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    border-radius: 5px;
}
.contact__btn {
    text-align: center;
}
.contact__btn input {
    display: inline-block;
    width: 100%;
    max-width: 315px;
    margin: 3px 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 18px 50px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    font-weight: 500;
    color: #fff;
    border-radius: 40px;
    background: linear-gradient(to right, #ffaf41, #ff9300);
    border: none;
    cursor: pointer;
    transition: 0.3s;
}
.contact__btn input:hover {
	opacity: 0.5;
}
.req {
    color: #bd3500;
    font-size: 22px;
    line-height: 50%;
}
div.req {
	margin-bottom: 10px;
}

/*footer
 * -----------------------------------*/
.footer {
	width: 100%;
	padding: 60px 50px 140px 50px;
	background: #f7f7f7;
}
.footer .inner {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}
.footer__header {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px;
}
.footer__logo {
    width: 270px;
    margin-right: 50px;
}
.footer__logo a {
    display: block;
}
.footer__logo img {
    width: 100%;
    height: auto;
}
.footer__copy {
    text-align: center;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    color: #666;
}
.footer__copy a {
    text-decoration: none;
    color: #444;
}
.topback {
    position: fixed;
    bottom: 50px;
    left: 50%;
    width: 100%;
    max-width: 1350px;
    text-align: right;
    transform: translate(-50%, 0);
}
.topback a {
    display: inline-block;
    width: 45px;
}
.topback a img {
    width: 100%;
    height: auto;
}

/*login
 * ------------------------------------*/
#wpmem_restricted_msg {
	width: 900px;
	margin: 0 auto;
}
#wpmem_restricted_msg p {
	font-size: 1.2rem;
	text-align: center;
}
main #wpmem_login, main #wpmem_reg {
	width: 900px;
	margin: 0 auto;
}
#wpmem_login fieldset div.button_div, #wpmem_reg fieldset div.button_div {
        text-align: center;
}
#wpmem_login .button_div input.buttons, #wpmem_reg .button_div input.buttons {
	display: inline-block;
    width: 100%;
    max-width: 315px;
    margin: 3px 5px;
	appearance: none;
    padding: 18px 50px;
	font-size: 1.6rem;
    text-align: center;
    font-weight: 500;
    color: #fff;
    border-radius: 40px;
    background: linear-gradient(to right, #ffaf41, #ff9300);
    border: none;
    cursor: pointer;
    transition: 0.3s;
}
#wpmem_login fieldset .link-text {
	text-align: center;
}
.header__login,.header__logout,.header__mypage {
	display: none;
}
@media only screen and (max-width: 768px){
	header {
		min-width: 100%;
		/*height: 115px;*/
		height: 80px;
	}
	.pgheader__entry .pgheader__title {
		font-size: 1.5rem;
	}
	.contact__form table th ,.contact__form table td {
		width: 100%;
		display: block;
	}
	.header__bar {
		flex-flow: column;
	}
	.header__bar h1 {
		justify-content: space-around;
	}
	.header__bar h1 p {
		margin: 0;
		width: 45%;
	}
	.header__bar h1 p img {
    width: 100%;
	}
	.header__mypage {
    margin-right: 0px;
	}
	main {
		/*padding: 115px 10px 0 10px;*/
		padding: 80px 10px 0 10px;
	}
	.contact {
		padding: 20px 5px;
	}
	#wpmem_restricted_msg {
		width: 100%;
		margin: 0 auto;
	}
	main #wpmem_login, main #wpmem_reg {
		width: 100%;
		margin: 0 auto;
	}
	.footer__header {
		flex-flow: column;
	}
	.footer__logo {
		width: 100%;
		margin-right: 0px;
		margin-bottom: 10px;
	}
}