@charset "UTF-8";
/*
	Theme Name: 	aozora2-sr
	Description:	チームあおぞら(女性版)のテーマ
	Theme URI: 		https://team-aozora.com/
	Author:			Kazunari Matsumoto
	Author URI:		https://raizzenet.com/
	Version:		1.0.0
	License:		GNU General Public License
	License URI:	http://www.gnu.org/licenses/gpl-2.0.html
*/
* {
	margin:0;
	padding:0;
}

body {
	font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 游ゴシック体, 'Yu Gothic', YuGothic, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size:16px;
	margin:0 auto;
	color: #383838
	max-width: 1024px;
	background: #fff;
}
h1,h2,h3,h4,h5,h6 {
	line-height: 1.3;
	clear: both;
}
@media only screen and (max-width: 768px) {body { width: 768px; }}
@media only screen and (max-width: 640px) {body { width: 640px; }}
@media only screen and (max-width: 600px) {body { width: 600px; }}
@media only screen and (max-width: 568px) {body { width: 568px; }}
@media only screen and (max-width: 540px) {body { width: 540px; }}
@media only screen and (max-width: 480px) {body { width: 480px; }}
@media only screen and (max-width: 440px) {body { width: 440px; }}
@media only screen and (max-width: 428px) {body { width: 428px; }}
@media only screen and (max-width: 414px) {body { width: 414px; }}
@media only screen and (max-width: 400px) {body { width: 400px; }}
@media only screen and (max-width: 390px) {body { width: 390px; }}
@media only screen and (max-width: 384px) {body { width: 384px; }}
@media only screen and (max-width: 375px) {body { width: 375px; }}
@media only screen and (max-width: 360px) {body { width: 360px; }}
@media only screen and (max-width: 320px) {body { width: 320px; }}

ul {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
li {
	line-height: 1.8;
}
address {
	margin: 8px 0;
	padding: 0;
}
h1 {
	font-size: 32px;
	font-weight: 700;
	margin: 0px 0 32px 0;
	padding: 12px 0 4px 4px;
	text-align: center;
}
/*
h1 a {
	text-decoration: none;
	display: block;
}
*/
h2 {
	font-weight: 400;
	margin: 0px 0 12px 0;
	padding: 12px 0 4px 4px;
}
h3 {
	font-weight: 400;
	margin: 32px 0 4px 0;
	padding: 12px 0 4px 4px;
}
h4 {
	font-weight: 400;
	margin: 8px 0;
	padding: 0;
	padding: 0px;
}
p {
	line-height: 1.7;
	margin: 8px 0 16px 0;
	padding: 0;
}
.fsize18 { font-size: 18px; }
.font120 { font-size: 120%; }
.font130 { font-size: 130%; }
.red { color: #f00;}
.required { background: #f00; color:#fff; padding: 2px; font-size: 14px; }
.required2 { background: #f00; color:#fff; padding: 2px; font-size: 16px; }

table {
	box-sizing: border-box;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 8px 0 16px 0;
	padding: 0;
	border: none;
}
th, td {
	box-sizing: border-box;
	text-align: left;
	padding: 8px 8px;
	vertical-align: top;
	border: none;
}

.alignright {
	box-sizing: border-box;
	padding: 0 0 0 16px;
	float: right;
}
.alignleft {
	box-sizing: border-box;
	padding: 0 16px 0 0;
	float: left;
}
.aligncenter {
	text-align: center;
	margin: 0 auto;
	clear: both;
	display: block;
}
#wrapper {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	display: block;
	clear: both;
}

#header {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 16px 0;
	display: block;
	position: relative;
	text-align: center;
}
#header #head-pickup {
	width: 100%;
	margin: 42px 0 0 0;
	display: flex;
	justify-content: center
}
#header #head-pickup .box {
	width: 30%;
	text-align: center;
	padding: 12px 0;
}
#header #head-pickup .box img {
	vertical-align: middle;
}
#header #head-pickup .box .line-box {
	padding: 2px 8px;
	border: 3px solid #6dbbf4;
	border-radius: 11px;
	display: inline-block;
}
#header #head-pickup .box .line-box .moji {
	font-size: 20px;
	font-weight: 400;
	vertical-align: middle;
	color: #6dbbf4;
}
@media only screen and (max-width: 480px) {
	#header #head-pickup {
		flex-wrap: wrap;
	}
	#header #head-pickup .box {
		width: 100%;
	}
}
#header #logo {
	font-size: 28px;
	margin: 12px auto 8px auto;
	padding: 8px 64px 8px 64px;
	letter-spacing: 0.15em;
	line-height: 1.8;
	color: #fff;
	background: #ffdbed;
	border-radius: 10px;
	display: inline-block;
}
#header #logo a {
	text-decoration: none;
	color: #383838;
//	text-shadow: 1px 2px 2px #383838;
}
@media only screen and (max-width: 800px) {
	#header { display: inline-block; }
}
@media only screen and (max-width: 480px) {
	#header #logo {
		font-size: 20px;
		padding: 16px 8px 16px 8px;
		margin: 0 0 8px 0;
	}
}
@media only screen and (max-width: 375px) {
	#header #logo {
		font-size: 18px;
	}
}
@media only screen and (max-width: 320px) {
	#header #logo {
		font-size: 16px;
	}
}
.member {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 32px 0;
	display: inline-block;
}
.member-photo {
	width: 20%;
	float: right;
}
.member-photo img {
	width: 100%;
}
.member-tbl {
	margin: 0;
	padding: 0;
}
.member-tbl th {
	font-weight: 400;
	vertical-align: middle;
	margin: 0;
	padding: 6px 8px;
}
.member-tbl td {
	padding: 6px 8px;
}
@media only screen and (max-width: 480px) {
	.member-photo {
		width: 100%;
		float: none;
		text-align: center;
		display: block;
	}
	.member-photo img {
		width: 80%;
		margin: 0 auto;
	}
	.member-tbl {
		margin: 0 0 24px 0;
	}
}
.top-contents {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 56px 0;
	padding: 0 5%;
	clear: both;
	display: inline-block;
}
.top-contents h1 {
	font-size: 32px;
	margin: 0 auto 32px auto;
	padding: 8px 0;
	text-shadow: 1px 2px 2px rgba(0,0,0,0.1);
	text-align: center;
}
.top-contents h2 {
	font-size: 32px;
	margin: 16px 0;
	padding: 0 0 4px 0;
	border-bottom: solid 4px #ffdbed;
	text-shadow: 1px 2px 2px rgba(0,0,0,0.1);
	text-align: left;
}
.top-contents h3 {
	font-size: 24px;
	margin: 32px 0 12px 0;
	padding: 0 0 4px 0;
	border-bottom: solid 4px #ffdbed;
	text-shadow: 1px 2px 2px rgba(0,0,0,0.1);
	text-align: left;
}
.top-contents h4 {
	font-size: 16px;
	font-weight: bold;
	margin: 32px 0 0 0;
	padding: 0 0 0 0;
	text-align: left;
}

.price-tbl {
	width: 95%;
	margin: 0 auto;
}
.price-tbl th, .price-tbl td {
	padding: 8px;
	border-bottom: 1px solid #666;
	vertical-align: middle;
}
.contact-form {
	width: 95%;
	margin: 0 auto;
	padding: 0px;
	font-size: 16px;
}
.contact-form li {
	margin: 0 0 16px 0;
	padding: 0;
	list-style: none
}
.contact-form  label {
	margin: 0 0 4px 0;
	width: 100%;
	display: block;
}
.form-input-error {
	color: #f00;
}
.contact-form .sel_d {
	border: 1px solid #666;
	font-size: 18px;
	padding: 16px 16px;
}
.contact-form .sel_d option {
	padding: 8px 16px;
}
.contact-form input[type="text"],
.contact-form textarea {
	box-sizing: border-box;
	width: 100%;
	font-size: 16px;
	padding:10px;
	border-radius: 4px;
	border: 1px solid #ddd;
	box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.9);
}
.contact-form input[type="submit"] {
	box-sizing: border-box;
	text-align: center;
	width: 40%;
	font-size: 20px;
	margin: 16px auto 16px auto;
	padding: 8px 16px;
	border: 2px solid #666;
	border-radius: 9px;
	box-shadow: 0 4px 4px -3px #666;
	background: #fff;
	display: block;
	cursor: pointer;
}
.contact-form input[type="submit"]:hover {
	color: #f00;
	box-shadow: none;
}
.forms-check label {
	margin: 8px 0;
	padding: 0 0 0 24px;
	font-size: 20px;
	line-height: 20px;
	display: inline-block;
	cursor: pointer;
	position: relative;
}
.forms-check label:before {
	content: '';
	width: 20px;
	height: 20px;
	display: inline-block;
	position: absolute;
	left: 0;
	background: #fff;
	box-shadow: inset 1px 2px 3px 0px #000;
	border-radius: 6px 6px 6px 6px;
}
.forms-check input[type=checkbox] {
	display: none;
}
.forms-check input[type=checkbox]:checked + label:before {
	content: '\2713';
	font-size: 20px;
	color: #fff;
	background-color: #06f;
}
#contact-response {
	font-size: 18px;
	margin: 32px 0 16px;
	text-align: center;
}
details {
	box-sizing: border-box;
	width: 100%;
	margin: 8px 0 16px;
	padding: 0;
}
summary {
	font-size: 18px;
	cursor: pointer;
}
details p {
	margin: 8px 0 16px;
	padding: 0 16px;
}
details[open] {
	background: #fbfbfb;
}
#footer {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 32px 0 0;
	text-align: center;
	background: #fff;
	color: #383838;
	clear: both;
	display: block;
}
#footer #info {
	box-sizing: border-box;
	width: 100%;
	margin: 32px auto 64px auto;
	text-align: center;
	color: #383838;
	letter-spacing: 2px;
}
#footer #info .msg1 {
	font-size: 26px;
	color: #FFA500;
}
#footer #info .msg2 {
	font-size: 20px;
}
#footer #info .msg2 a {
	color: #383838;
	font-size: 20px;
	text-decoration: none;
}
#footer #info .msg3 {
	font-size: 18px;
}
#copyright {
	font-size: 14px;
	margin: 0;
	padding: 8px 0 8px 0;
	text-align: center;
	clear: both;
	color: #383838;
	display: block;
}
#copyright a {
	text-decoration: none;
}
.fn {
	color: #383838;
}
@media only screen and (max-width: 800px) {
	#footer {
		margin: 0;
	}
}
@media only screen and (max-width: 320px) {
	#footer #info {
		letter-spacing: 1px;
	}

	#footer #info .msg2, #footer #info .msg2 a {
		font-size: 18px;
	}
}
#page-top {
	width: 64px;
	height: 64px;
	right: 12px;
	bottom: 12px;
	border: 1px solid rgba(0,0,0,0.4);
	box-shadow: 1px 1px 1px #ccc;
	border-radius: 50%;
	background: rgba(0,0,0,0.4);
	display: none;
	position: fixed;
	z-index: 100;
}
#page-top:after, #page-top:hover:after {
	content: "";
	width: 20px;
	height: 20px;
	top: 25px;
	left: 18px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: absolute;
}
#page-top:after {
	border-top: 8px solid #fff;
	border-right: 8px solid #fff;
}
#page-top:hover:after {
	border-top: 8px solid #f00;
	border-right: 8px solid #f00;
}
