@charset "utf-8";

/* =============================================================================
   TOP
   ========================================================================== */

/*----------------------------------------------------
	このサイトについて
----------------------------------------------------*/

/* list
---------------------------------------------------- */

#aboutsite li {
	list-style:none;
}


/* box
---------------------------------------------------- */

#aboutsite {
	margin: 0;
	padding: 0;
	width:100% !important;
	letter-spacing: 0.02em;
}

@media only screen and (max-width:767px){
	#aboutsite {
	margin: 0;
	padding: 0;
	}
}

	/* title */

#aboutsite .detail_title {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	background:url(../images/top/search_bg_01.jpg);
    background-repeat: no-repeat;
    background-position: 0 20%;
    background-size: 700px auto;
}

@media only screen and (max-width:767px){
	#aboutsite .detail_title {
    background-size: 100% auto;
	}
}

#aboutsite .detail_title p {
	margin: 0 auto;
	padding: 90px 50px 150px 50px;
	font-size:2.6rem;
	line-height:1.5;
	font-weight:bold;
	text-align: center;
	border: none;
	background: rgba(255,255,255,0.5);
}

@media only screen and (max-width:980px){
	#aboutsite .detail_title p {
	padding: 50px 50px 120px 50px;
	font-size:2rem;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_title p {
	padding: 40px 30px 80px 30px;
	font-size:1.8rem;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_title p {
	padding: 30px 20px 60px 20px;
	font-size:1.5rem;
	}
}

#aboutsite .detail_box01 {
	width:1000px;
	margin: -80px auto 0 auto;
	padding: 50px 100px 30px 100px;
	color:#fff;
	background: #077bc3;
	text-align:center;
	box-sizing: border-box;
}

@media only screen and (max-width:1040px){
	#aboutsite .detail_box01 {
	width: auto;
	margin: -80px 50px 0 50px;
	padding: 50px 60px 30px 60px;
	}
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box01 {
	width: auto;
	margin: -80px 30px 0 30px;
	padding: 50px 60px 30px 60px;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box01 {
	width: auto;
	margin: -50px 30px 0 30px;
	padding: 40px 30px 10px 30px;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box01 {
	margin: -30px 20px 0 20px;
	padding: 30px 20px 10px 20px;
	}
}

	/* h2 */

#aboutsite .detail_box01 h2 {
	margin: 0 0 50px 0;
	padding: 0;
	font-size: 2.6rem;
	line-height:1.5;
	border-bottom: none;
	font-weight:bold;
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box01 h2 {
	font-size: 2.2rem;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box01 h2 {
	margin: 0 0 24px 0;
	font-size: 1.7rem;
	text-align:left;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box01 h2 {
	margin: 0 0 20px 0;
	font-size: 1.5rem;
	}
}


	/* h3 */

#aboutsite .detail_box01 h3 {
    padding: 1em 0.5em;/*上下 左右の余白*/
    color: #fff;/*文字色*/
    background: transparent;/*背景透明に*/
    border-left: solid 5px #7db4e6;/*左線*/
    text-align: left;
    font-size: 120%;
    font-weight: bold;
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box01 h3 {
	font-size: 2.2rem;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box01 h3 {
	margin: 0 0 24px 0;
	font-size: 1.7rem;
	text-align:left;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box01 h3 {
	margin: 0 0 20px 0;
	font-size: 1.5rem;
	}
}



	/* p */

#aboutsite .detail_box01 p {
	text-align:left;
	font-size:1em;
	line-height:1.5;
	text-indent:1em;
}

.main #aboutsite .detail_box01 p + .sup_txt {
	margin-top:-1.5em;
}

#aboutsite .detail_box01 p.sup_txt {
	text-align: right;
	font-size:0.77em;
	text-indent:0;
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box01 p {
	font-size:1em;
	line-height:2;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box01 p {
	font-size:1.4rem;
	line-height:1.8;
	}

	#aboutsite .detail_box01 p.sup_txt {
	font-size:1.1rem;
	text-align:left;
	}
}


	/* image */

.detail1_figure {
	margin: 0 auto 40px auto;
	padding: 0;
	width: 100%;
	display:flex;
	text-align: center;
	box-sizing: border-box;
	justify-content:between;
}

@media only screen and (max-width:980px){
	.detail1_figure {
	margin: 0 auto 30px auto;
	}
}

@media only screen and (max-width:767px){
	.detail1_figure {
	margin: 0 auto 26px auto;
	}
}

@media only screen and (max-width:480px){
	.detail1_figure {
	margin: 0 auto 20px auto;
	}
}

.detail1_figure_inner {
	margin: 0 auto;
	padding: 0 8%;
	width: 33.3%;
	text-align: center;
	box-sizing: border-box;
}

@media only screen and (max-width:767px){
	.detail1_figure_inner {
	padding: 0 7%;
	}
}

@media only screen and (max-width:480px){
	.detail1_figure_inner {
	padding: 0 6%;
	}
}

.detail1_figure_inner div {
	margin: 0 auto;
	padding: 0;
	width:100%;
	max-width:150px;
	position: relative;
}

.detail1_figure_inner div::before {
	content:"";
	display: block;
	padding-top: 100%;
	z-index:5;
	border-radius:50%;
}

.detail1_figure_inner div.f01::before {
	background: url(../images/top/menu_p_01.jpg) no-repeat center center;
	background-size:cover;
}

.detail1_figure_inner div.f02::before {
	background: url(../images/top/menu_p_02.jpg) no-repeat 30% center;
	background-size:cover;
}

.detail1_figure_inner div.f03::before {
	background: url(../images/top/menu_p_03.jpg) no-repeat left center;
	background-size:cover;
}


	/* logo */

#aboutsite .aboutsite_logo {
	margin: 60px auto 0 auto;
	text-align:center;
}

@media only screen and (max-width:980px){
	#aboutsite .aboutsite_logo {
	margin: 50px auto 0 auto;
	}

	#aboutsite .aboutsite_logo img {
	display:inline-block;
	margin: 0 auto;
	width:40%;
	max-width:250px;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .aboutsite_logo {
	margin: 40px auto 0 auto;
	}

	#aboutsite .aboutsite_logo img {
	max-width:200px;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .aboutsite_logo {
	margin: 30px auto 0 auto;
	}
}


	/* box02 */

#aboutsite .detail_box02 {
	margin: 40px auto 80px auto;
	width:900px;
	padding: 0 50px;
	text-align:center;
	box-sizing: border-box;
}

@media only screen and (max-width:1040px){
	#aboutsite .detail_box02 {
	width: auto;
	margin: 40px auto 80px auto;
	padding: 0 100px;
	}
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box02 {
	margin: 30px auto 60px auto;
	padding: 0px 90px;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box02 {
	margin: 26px auto 52px auto;
	padding: 0 60px;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box02 {
	margin: 20px auto 40px auto;
	padding: 0 30px;
	}
}

#aboutsite .detail_box02 p {
	text-align:left;
	font-size:1.06em;
	line-height:2;
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box02 p {
	font-size:1em;
	line-height:1.8;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box02 p {
	font-size:1.4rem;
	line-height:1.7;
	}
}


	/* box03 */

#aboutsite .detail_box03 {
	margin: 0 auto;
	width: 100%;
	padding: 50px;
	text-align:center;
	background:#f0f0f0;
	box-sizing: border-box;
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box03 {
	padding: 20px;
	}
}

#aboutsite .detail_box03 dl {
	margin: 0 auto;
	padding: 0;
}

#aboutsite .detail_box03 dt {
	margin: 0 0 0.25em 0;
	padding: 0;
	font-size:1.5em;
	font-weight:bold;
	text-align:center;
}

#aboutsite .detail_box03 dd {
	margin: 0 0 0.1em 0;
	padding: 0;
	font-size:1.3em;
	text-align:center;
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box03 dt {
	font-size:1.3em;
	}

	#aboutsite .detail_box03 dd {
	font-size:1.2em;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box03 dt {
	font-size:1.5rem;
	}

	#aboutsite .detail_box03 dd {
	font-size:1.4rem;
	}
}



/* このサイトへのリンクについて
---------------------------------------------------- */

#aboutsite .detail_box_link {
	margin:  0 auto;
	padding: 50px 100px 50px 100px;
	background: #f9f9f9;
	text-align:center;
	box-sizing: border-box;
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box_link {
	padding: 50px 90px 30px 90px;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box_link {
	padding: 40px 60px 20px 60px;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box_link {
	padding: 30px 30px 20px 30px;
	}
}

	/* h2 */

#aboutsite .detail_box_link h2 {
	margin: 0 0 30px 0;
	padding: 0;
	font-size: 2.6rem;
	line-height:1.5;
	border-bottom: none;
	font-weight:bold;
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box_link h2 {
	font-size: 2.2rem;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box_link h2 {
	margin: 0 0 24px 0;
	font-size: 1.7rem;
	text-align:left;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box_link h2 {
	margin: 0 0 20px 0;
	font-size: 1.5rem;
	}
}

	/* ul */

#aboutsite .detail_box_link ul {
	width:800px;
	margin: 0 auto 0 auto;
	padding: 0;
	text-align: left;
	box-sizing: border-box;
}

@media only screen and (max-width:1040px){
	#aboutsite .detail_box_link ul {
	width: auto;
	margin: 0 auto 0 auto;
	padding: 0;
	}
}

#aboutsite .detail_box_link li {
	list-style:none;
	margin: 0;
	padding: 0 0 0.5em 0;
}

#aboutsite .detail_box_link li ul {
	margin: 0.5em 0 0 0;
	padding: 0;
}

#aboutsite .detail_box_link li ul li {
	margin: 0;
	padding: 0 0 0 2.5em;
	text-indent:-2.5em;
}

	/* dl */

#aboutsite .detail_box_link dl {
	margin: 0;
	padding: 0;
	display:flex;
	box-sizing: border-box;
}

#aboutsite .detail_box_link dt {
	margin: 0;
	padding: 0;
}

#aboutsite .detail_box_link dt::after {
    content:"：";
    display: inline-block;
	margin: 0 3px 0 0;
	padding:0;
}

#aboutsite .detail_box_link dd {
	margin: 0;
	padding: 0;
}


/* リンク用バナー
---------------------------------------------------- */

#aboutsite .detail_box_link .detail_box_bnr {
	width:800px;
	margin: 50px auto 0 auto;
	padding: 0;
	text-align: center;
	box-sizing: border-box;
}

@media only screen and (max-width:1040px){
	#aboutsite .detail_box_link .detail_box_bnr {
	width: auto;
	}
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box_link .detail_box_bnr {
	margin: 40px auto 0 auto;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box_link .detail_box_bnr {
	margin: 30px auto 0 auto;
	}
	#aboutsite .detail_box_link .detail_box_bnr p {
	text-align:left;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box_link .detail_box_bnr {
	margin: 20px auto 0 auto;
	}
}

	/* h3 */

#aboutsite .detail_box_link .detail_box_bnr h3 {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 2.6rem;
	line-height:1.5;
	border-bottom: none;
	font-weight:bold;
}

@media only screen and (max-width:980px){
	#aboutsite .detail_box_link .detail_box_bnr h3 {
	font-size: 2.2rem;
	}
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box_link .detail_box_bnr h3 {
	margin: 0 0 14px 0;
	font-size: 1.7rem;
	text-align:left;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box_link .detail_box_bnr h3 {
	margin: 0 0 10px 0;
	font-size: 1.5rem;
	}
}

	/* dl */

#aboutsite .detail_box_link .detail_box_bnr dl {
	margin: 0;
	padding: 0;
	display:flex;
	flex-direction: column;
	box-sizing: border-box;
}

#aboutsite .detail_box_link .detail_box_bnr dt {
	margin: 30px 0 4px 0;
	padding: 0;
	font-size:1.5em;
}

#aboutsite .detail_box_link .detail_box_bnr dt:first-child {
	margin-top: 0;
}

#aboutsite .detail_box_link .detail_box_bnr dt::after {
    content:"";
    display: none;
	margin: 0;
	padding:0;
}

#aboutsite .detail_box_link .detail_box_bnr dd {
	margin: 0 0 10px 0;
	padding: 0;
}

#aboutsite .detail_box_link .detail_box_bnr dd:nth-child(3n) {
	background:#d9d9d9;
	font-size:0.9em;
}

#aboutsite .detail_box_link .detail_box_bnr dd img {
	margin: 0;
	padding: 0;
	vertical-align:bottom;
}

#aboutsite .detail_box_link .detail_box_bnr dd .text_code {
	margin: 0;
	padding: 16px;
	background:#f0f0f0;
	text-align:left;
}

@media only screen and (max-width:767px){
	#aboutsite .detail_box_link .detail_box_bnr dt {
	font-size:1.3em;
	}
}

@media only screen and (max-width:480px){
	#aboutsite .detail_box_link .detail_box_bnr dt {
	font-size:1.5rem;
	}
}

