﻿@charset "utf-8";


/* reset */
/* -------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
html {width:100%; height:100%; overflow-y:scroll;}
h1,h2,h3,h4,h5,h6 {font-size:100%; font-weight:bold;}
p, ul, ol, dl, address, blockquote, table, div {font-size:100%;}
p {margin:0 0 0 0;}
ol,ul {list-style:none;}
fieldset,img {border:0; vertical-align:top;}
table {border-collapse:collapse; border-spacing:0;}
caption,th {text-align:left;}
th {vertical-align:top; font-weight:normal; text-align:left;}
td {vertical-align:top;}
address,caption,cite,code,dfn,em,strong,th,var {font-style:normal; font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}


/* common */
/* -------------------------------------------------------- */
html,body {font-variant-ligatures:none;}
html {font-size:62.5%;}
body {font-size:16px; font-size:1.6rem; font-family:Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; line-height:1.6; color:#000; text-align:center; -webkit-text-size-adjust:100%; text-size-adjust:100%; background:none;}

h1, h2, h3, h4, h5, h6, h7 {line-height:1.2;}
p, li, dt, dd, th, td, address, blockquote, div {line-height:inherit; text-align:inherit;}
input, select, option, textarea, button {font-size:14px; font-size:1.4rem; font-family:Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; line-height:1; vertical-align:middle; text-align:inherit; color:inherit; outline:none;}
textarea {line-height:1.4;}
input[type='submit'],input[type='reset'],input[type='button'], button {color:inherit; cursor:pointer; -ms-appearance:none; -webkit-appearance:none; appearance:none;}
:placeholder-shown {color:#ccc;}
::-webkit-input-placeholder {color:#ccc;}
:-moz-placeholder {color:#ccc; opacity:1;}
::-moz-placeholder {color:#ccc; opacity:1;}
:-ms-input-placeholder {color:#ccc;}

strong {font-weight:bold;}
ol {list-style-type:decimal; margin-left:2.2em;}
img {max-width:100%; width:auto; height:auto; line-height:0; vertical-align:top; border:0; display:inline;}
sup, sub {line-height:1; vertical-align:top; display:inline-block;}

a {color:#000; text-decoration:underline;}
a:hover {color:#000; text-decoration:none;}


/* decision */
/* -------------------------------------------------------- */
#bpCheck {display:none;}

body .pc {display:block;}
br.pc, span.pc, img.pc {display:inline;}
body .sp, br.sp, span.sp, img.sp {display:none;}

a.off {pointer-events:none; cursor:default; opacity:0.3;}
a.tel {pointer-events:none; cursor:default;}
body.mobile a.tel {pointer-events:auto; cursor:pointer;}

.cfix::before,
.cfix::after {display:table; content:" ";}
.cfix::after {clear:both;}

@media screen and (max-width:767px){
	#bpCheck {display:block;}

	body .pc, br.pc, span.pc, img.pc {display:none;}
	body .sp {display:block;}
	br.sp, span.sp, img.sp {display:inline;}
}


/* container */
/* -------------------------------------------------------- */
#container {width:100%; overflow:hidden;}


/* header */
/* -------------------------------------------------------- */
#header {width:100%; position:relative; top:0; left:0; z-index:300;}
#header .logo {text-align:left; padding:10px 15px; background-color:rgba(255,255,255,1); box-sizing:border-box;}
#header .logo img {width:160px;}
body.top #header .logo {display:none;}

#gNavBtn {width:70px; height:70px; background-color:rgba(255,255,255,0.4); border-radius:5px; position:fixed; top:15px; right:15px; z-index:310; cursor:pointer; display:block; transition-property:opacity;}
#gNavBtn::before {content:'MENU'; width:100%; font-size:1.6rem; font-weight:bold; line-height:1; letter-spacing:0.1em; text-align:center; margin:0 0 0 0.05em; display:block; position:absolute; top:66%; left:0;}
#gNavBtn > span {width:76%; height:4px; background-color:rgba(0,0,0,1); border-radius:4px; display:block; position:absolute; top:35%; left:12%; transition-property:background-color;}
#gNavBtn > span::before,
#gNavBtn > span::after {content:''; width:100%; height:4px; background-color:rgba(0,0,0,1); border-radius:4px; display:block; position:absolute; left:0;}
#gNavBtn > span::before {top:-12px; transition-property:top;}
#gNavBtn > span::after {bottom:-12px; transition-property:bottom;}
body.load #gNavBtn,
body.load #gNavBtn > span::before,
body.load #gNavBtn > span::after {transition-duration:0.3s; transition-delay:0s; transition-timing-function:ease;}

#gNavCheck {display:none;}
#gNavCheck:checked + #header #gNavBtn > span {background-color:rgba(0,0,0,0);}
#gNavCheck:checked + #header #gNavBtn > span::before {top:0; transform:rotate(45deg); transition-property:transform;}
#gNavCheck:checked + #header #gNavBtn > span::after {bottom:0; transform:rotate(-45deg); transition-property:transform;}

#gNav {width:240px; height:100%; background-color:rgba(0,0,0,0.6); position:fixed; top:0; right:-240px; z-index:305; overflow:auto; transition:right 0.6s ease;}
#gNavCheck:checked + #header #gNav {right:0;}
#gNav ul {padding:100px 0 0 0;}
#gNav ul > li {font-size:2.0rem; font-weight:bold; line-height:1; letter-spacing:0.2em; color:#fff; text-align:center; padding:1.0em 0;}
#gNav ul > li span {font-size:80%;}
#gNav ul > li a {text-decoration:none; color:#fff; display:block;}

@media screen and (max-width:767px){
	#header .logo {padding:5px 10px;}
	#header .logo img {width:110px;}

	#gNavBtn {width:50px; height:50px; top:5px; right:10px;}
	#gNavBtn::before {font-size:1.2rem;}
	#gNavBtn > span {height:2px;}
	#gNavBtn > span::before,
	#gNavBtn > span::after {height:2px;}
	#gNavBtn > span::before {top:-8px;}
	#gNavBtn > span::after {bottom:-8px;}
}


/* footer */
/* -------------------------------------------------------- */
#footer {padding:50px 0 10px 0;}
#footer .logo {padding:60px 0 0 0; position:relative;}
#footer .logo img {width:160px;}
#footer .logo::before {content:''; width:100%; height:100%; background:url(../img/logo_mark.png) center top no-repeat; background-size:323px auto; display:block; position:absolute; top:0; left:0;}
#footer .contact > .tel {font-size:1.8rem; font-weight:bold; letter-spacing:0.1em;}
#footer .contact > .tel a {font-size:120%; text-decoration:none; color:#000; display:inline-block;}
#footer .contact > .tel a:hover {text-decoration:underline; color:#000;}
#footer .contact > .mail {font-size:1.8rem; font-weight:bold;}
#footer .contact > .mail a {text-decoration:none; color:#000;}
#footer .contact > .mail a:hover {text-decoration:underline; color:#000;}
#footer .copy {font-size:1.4rem; letter-spacing:0.1em; margin:2.0em 0 0 0;}
.pagetop {position:fixed; bottom:-70px; right:0; z-index:290; transition:bottom 0.3s ease;}
.pagetop a {width:70px; height:70px; font-size:1.6rem; font-weight:bold; line-height:1.1; text-align:center; text-decoration:none; color:#000; background-color:rgba(255,255,255,0.4); border-radius:5px 0 0 0; display:flex; justify-content:center; align-items:center;}
body.move .pagetop {bottom:0;}

@media screen and (max-width:767px){
	#footer {padding:30px 0 50px 0;}
	#footer .logo {padding:40px 0 0 0; position:relative;}
	#footer .logo::before {background-size:240px auto;}
	#footer .contact > .tel {font-size:1.6rem;}
	#footer .contact > .mail {font-size:1.6rem;}
	#footer .copy {font-size:1.2rem; letter-spacing:0.05em;}
	.pagetop {bottom:-50px;}
	.pagetop a {width:50px; height:50px; font-size:1.2rem;}
	body.move .pagetop {bottom:0;}
}


/* contents */
/* -------------------------------------------------------- */
#contents {padding:30px 0 50px 0;}
body.top #contents {padding:0;}

.sec {max-width:1030px; margin:0 auto; padding:0 15px; box-sizing:border-box;}
#loading-layer {width:100%; height:100%; background-color:rgba(255,255,255,0.8); display:block; position:fixed; top:0; left:0; opacity:0; pointer-events:none; z-index:9999; transition:opacity 0.3s ease;}
#loading-layer svg {width:60px; height:60px; margin:-30px 0 0 -30px; display:block; position:absolute; top:50%; left:50%;}
body.loading #loading-layer {opacity:1; pointer-events:auto;}
body.loading #loading-layer svg {animation:loading 2s linear 0s infinite normal none;}
@keyframes loading {
	0% {transform:rotate(0deg);}
	100% {transform:rotate(360deg);}
}

.ttl-01 {font-size:2.6rem; font-weight:normal; text-align:left;}
.ttl-02 {font-size:2.0rem; font-weight:700; text-align:left;}

.page-ttl {padding:1.0em 0; background-color:#fff; box-shadow:0 0 3px rgba(0,0,0,0.7); position:relative; z-index:3;}
.page-ttl .ttl {font-size:150%; font-weight:600; text-align:left;}

.breadcrumb-list {padding:0.5em 0; background-color:#fff; box-shadow:0 0 3px rgba(0,0,0,0.5); position:relative; z-index:1;}
.breadcrumb-list ul {text-align:left; display:flex; flex-wrap:wrap;}
.breadcrumb-list li {font-size:87.5%; line-height:1.2; padding:0 1.6em 0 0; position:relative;}
.breadcrumb-list li::before {content:'/'; font-size:140%; display:block; position:absolute; top:-0.15em; right:0.4em;}
.breadcrumb-list li:last-of-type {padding-right:0;}
.breadcrumb-list li:last-of-type::before {display:none;}

@media screen and (max-width:767px){
	#contents {padding:20px 0 30px 0;}
	body.top #contents {padding:0;}
	.sec {padding:0 5.0vw;}
	.ttl-01 {font-size:2.0rem;}
	.ttl-02 {font-size:1.8rem;}
	.page-ttl {padding:1.0em 0;}
	.page-ttl .ttl {font-size:125%;}

	.breadcrumb-list li {font-size:75%; padding:0 1.2em 0 0;}
	.breadcrumb-list li::before {right:0.1em;}
}

/* page-nav */
.page-nav {padding:20px 0;}
.page-nav ul {display:flex; flex-wrap:wrap; justify-content:center; align-items:center;}
.page-nav li {padding:0.3em 0.1em 0 0.1em;}
.page-nav a,
.page-nav span {width:2.5em; line-height:1; padding:0.3em 0 0.4em 0; text-align:center; display:block; border-radius:2px;}
.page-nav a {color:#000; text-decoration:none; border:solid 1px #ccc;}
.page-nav a:hover,
.page-nav span {color:#000; text-decoration:none; background:#eee; border:solid 1px #aaa;}
.page-nav li.prev {padding-right:10px;}
.page-nav li.next {padding-left:10px;}
.page-nav li.prev a,
.page-nav li.next a {width:auto; color:#000; text-decoration:none; border:0;}
.page-nav li.prev a:hover,
.page-nav li.next a:hover {width:auto; color:#000; text-decoration:underline; background:none; border:0;}
.page-nav li.prev span,
.page-nav li.next span {width:auto; color:#ccc; text-decoration:none; background:none; border:0;}

.page-nav2 {margin:30px 0 0 0; display:flex; flex-wrap:wrap; justify-content:center;}
.page-nav2 > li {padding:1.2em 0.6em 0 0.6em;}
.page-nav2 > li.none {pointer-events:none; opacity:0;}
.page-nav2 > li a {line-height:1; white-space:nowrap; text-decoration:none; padding:0.6em 1.5em 0.8em 1.5em; background-color:#fff; border:solid 1px rgba(0,0,0,0.3); border-radius:5px; box-sizing:border-box; display:block; position:relative; transition:background-color 0.3s ease;}
.page-nav2 > li a:hover {background-color:rgba(0,0,0,0.1);}
.page-nav2 > li a svg {width:12px; height:12px; margin:-6px 0 0 0; fill:#222; display:block; position:absolute; top:50%;}
.page-nav2 > li.prev a {padding-left:2.2em;}
.page-nav2 > li.prev a svg {left:0.4em; transform:rotate(90deg);}
.page-nav2 > li.next a {padding-right:2.2em;}
.page-nav2 > li.next a svg {right:0.4em; transform:rotate(-90deg);}

@media screen and (max-width:767px){
	.page-nav {padding:15px 0;}
	.page-nav a,
	.page-nav span {font-size:87.5%; padding:0.3em 0 0.4em 0;}
	.page-nav li.prev {padding-right:5px;}
	.page-nav li.next {padding-left:5px;}

	.page-nav2 {margin:20px 0 0 0;}
	.page-nav2 > li {font-size:87.5%; padding:0.8em 0.3em 0 0.3em;}

}

/* top */
.top-mv {height:100vh; position:relative;}
.top-mv .imgs {width:100%; height:calc(100% - 40px); position:absolute; top:0; left:0; z-index:1; overflow:hidden;}
.top-mv .imgs > div {width:100%; height:100vh; position:absolute; top:0; left:0; opacity:0; transform:scale(1,1); will-change:transform;}
.top-mv .imgs > div:last-of-type {position:relative;}
.top-mv .imgs > div.on {opacity:1; transform:scale(1.03,1.03);}
.top-mv .imgs .img {width:100%; height:100vh; background-repeat:no-repeat; background-position:center center; background-size:cover; position:absolute; top:0; left:0;}
.top-mv .ctx {width:100%; height:calc(100vh - 40px); display:flex; flex-wrap:wrap; justify-content:center; align-items:center; position:relative; z-index:5;}
.top-mv .ctx .logo {max-width:328px; width:100%; margin:0 auto;}
.top-mv .ctx .catch {font-size:2.6rem; font-weight:bold; line-height:1.2; letter-spacing:0.1em; margin:1.0em 0 0 0;}
.top-mv .ctx .catch > span {padding:0.2em 0.5em 0.3em 0.5em; background-color:rgba(255,255,255,0.6); border-radius:5px; display:inline-block;}
.top-mv .btns {max-width:520px; margin:-80px auto 0 auto; display:flex; justify-content:space-between; position:relative; z-index:10;}
.top-mv .btns a {width:120px; height:120px; font-size:2.4rem; font-weight:bold; line-height:1; text-decoration:none; color:#000; display:flex; justify-content:center; align-items:center; position:relative;}
.top-mv .btns a > span {padding:1.0em 0 0 0; display:block; position:relative; z-index:5;}
.top-mv .btns a > span > span {font-size:80%;}
.top-mv .btns a::before {content:''; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; display:block; position:absolute; left:0; pointer-events:none; z-index:3;}
.top-mv .btns a.icon1::before {background-image:url(../img/icon_01.png); background-size:47px auto; top:-35%;}
.top-mv .btns a.icon2::before {background-image:url(../img/icon_02.png); background-size:66px auto; top:-28%;}
.top-mv .btns a.icon3::before {background-image:url(../img/icon_03.png); background-size:91px auto; top:-28%;}
.top-mv .btns a::after {content:''; width:100%; height:100%; background-color:rgba(255,255,255,0.7); box-shadow:1px 1px 3px rgba(0,0,0,0.3); border:1px solid rgba(0,0,0,0.5); border-radius:100%; box-sizing:border-box; display:block; position:absolute; left:0; pointer-events:none; z-index:1; transition:transform 0.3s ease;}
.top-mv .btns a:hover::after {transform:scale3d(1.1,1.1,1);}

@media screen and (max-width:767px){
	.top-mv {}
	.top-mv .imgs {height:calc(100% - 30px);}
	.top-mv .ctx {height:calc(100vh - 30px);}
	.top-mv .ctx .catch {font-size:1.8rem;}
	.top-mv .btns {max-width:inherit; margin:-30px -8.0vw 0 -8.0vw; flex-wrap:wrap; justify-content:center;}
	.top-mv .btns > div {max-width:110px; width:33.33%; padding:0;}
	.top-mv .btns a {width:100%; height:60px; font-size:2.0rem;}
	.top-mv .btns a.icon1::before {background-size:37px auto; top:-50%;}
	.top-mv .btns a.icon1::after {border-radius:10px 0 0 10px;}
	.top-mv .btns a.icon2::before {background-size:56px auto; top:-42%;}
	.top-mv .btns a.icon3::before {background-size:70px auto; top:-42%;}
	.top-mv .btns a.icon3::after {border-radius:0 10px 10px 0;}
	.top-mv .btns a::after {width:calc(100% + 2px); border-radius:0; left:-1px;}
	.top-mv .btns a:hover::after {transform:scale3d(1,1,1);}
}

/* news */
.news-list {margin:30px 0 0 0;}
.news-list .list {margin:10px 0 0 0;}
.news-list .list > div {padding:10px 0 0 0;}
.news-list .list a {text-decoration:none; color:#000; background-color:rgba(0,0,0,0); display:flex; justify-content:space-between; align-items:center; position:relative; transition:background-color 0.3s ease;}
.news-list .list a:hover {background-color:rgba(0,0,0,0.05);}
.news-list .list .img {width:100px;}
.news-list .list .img > div {width:100%; padding:100% 0 0 0; background-repeat:no-repeat; background-position:center center; background-size:60% auto; position:relative; overflow:hidden;}
.news-list .list .img img {width:100%; height:100%; object-fit:cover; display:block; position:absolute; top:0; left:0;}
.news-list .list .ctx {text-align:left; padding:0 0 0 2.0em; flex:1;}
.news-list .list .ctx dt {font-size:1.4rem;}
.news-list .list .ctx dd {font-size:1.6rem;}

.news-sec .detail {text-align:left;}
.news-sec .detail .date {font-size:1.6rem;}
.news-sec .detail .title {font-size:2.0rem; font-weight:700; border-bottom:solid 1px #333;}
.news-sec .detail .ctx > div {margin:30px 0 0 0; padding:30px 0 0 0; border-top:dotted 1px #333;}
.news-sec .detail .ctx > div:first-of-type {margin-top:0; border-top:none;}
.news-sec .detail .ctx .ttl {font-size:1.6rem; font-weight:700;}
.news-sec .detail .ctx .ttl + .txt {margin:0.5em 0 0 0;}
.news-sec .detail .ctx .img {margin:15px 0 0 0;}

@media screen and (max-width:767px){
	.news-list .list {margin:0;}
	.news-list .list a {display:block;}
	.news-list .list > div {padding:20px 0 0 0;}
	.news-list .list .img {width:auto;}
	.news-list .list .img > div {width:100%; padding:30% 0 0 0; background-size:auto 70%;}
	.news-list .list .ctx {padding:0.5em 0 0 0; flex:1;}
	.news-list .list .ctx dt {font-size:1.2rem;}
	.news-list .list .ctx dd {font-size:1.4rem;}
	
	.news-sec .detail .date {font-size:1.4rem;}
	.news-sec .detail .title {font-size:1.8rem;}
	.news-sec .detail .ctx .ttl {font-size:1.6rem;}
	.news-sec .detail .ctx .txt {font-size:1.4rem;}
}

/* activity */
.activity-sec .list {margin:-20px -10px 0 -10px; display:flex; flex-wrap:wrap;}
.activity-sec .list > div {width:33.33%; width:calc(100% / 3); padding:20px 10px 0 10px; box-sizing:border-box;}
.activity-sec .list a {text-decoration:none; border:1px solid #999; border-radius:5px; box-sizing:border-box; display:block; position:relative; overflow:hidden; transition:opacity 0.3s ease;}
.activity-sec .list a:hover {opacity:0.7;}
.activity-sec .list .img {width:100%;}
.activity-sec .list .img div {width:100%; padding:60% 0 0 0; background-color:#eee; background-repeat:no-repeat; background-position:center center; background-size:auto 60%; position:relative;}
.activity-sec .list .img img {width:100%; height:100%; object-fit:cover; display:block; position:absolute; top:0; left:0;}
.activity-sec .list .ctx dt {font-size:1.4rem; line-height:1; color:#fff; padding:0.2em 0.5em; background-color:rgba(0,0,0,0.5); position:absolute; top:0; right:0;}
.activity-sec .list .ctx dd {font-size:1.6rem; text-align:center; padding:0.3em;}
.activity-sec .detail {text-align:left;}
.activity-sec .detail .date {font-size:1.6rem;}
.activity-sec .detail .title {font-size:2.0rem; font-weight:700; border-bottom:solid 1px #333;}
.activity-sec .detail .ctx > div {margin:30px 0 0 0; padding:30px 0 0 0; border-top:dotted 1px #333;}
.activity-sec .detail .ctx > div:first-of-type {margin-top:0; border-top:none;}
.activity-sec .detail .ctx > div::before,
.activity-sec .detail .ctx > div::after {display:table; content:" ";}
.activity-sec .detail .ctx > div::after {clear:both;}
.activity-sec .detail .ctx > div:nth-of-type(odd) .img {padding:0 0 1.0em 1.0em; float:right;}
.activity-sec .detail .ctx > div:nth-of-type(even) .img {padding:0 1.0em 1.0em 0; float:left;}
.activity-sec .detail .ctx .ttl {font-size:1.6rem; font-weight:700;}
.activity-sec .detail .ctx .ttl + .txt {margin:0.5em 0 0 0;}
.activity-sec .detail .ctx .img {max-width:40%; width:100%; display:block; box-sizing:border-box;}
.activity-sec .detail .network {margin:50px 0 0 0; position:relative;}
.activity-sec .detail .network .box {width:100%; height:500px; border:1px solid #999; border-radius:5px; box-sizing:border-box; position:relative; overflow:hidden;}
.activity-sec .detail .network .network {width:100%; height:100%; margin:0; position:absolute; top:0; left:0;}
.activity-sec .detail .network .modal {width:100%; height:100%; background-color:rgba(0,0,0,0.9); display:flex; justify-content:center; align-items:center; position:absolute; top:0; left:0; z-index:400; overflow:hidden; opacity:0; pointer-events:none; transition:opacity 0.6s ease;}
.activity-sec .detail .network .modal.on {opacity:1; pointer-events:auto;}
.activity-sec .detail .network .modal dl {text-align:left; color:#fff; padding:1.0em; box-sizing:border-box;}
.activity-sec .detail .network .modal dt {font-size:1.8rem; border-bottom:solid 1px #fff;}
.activity-sec .detail .network .modal dt i {font-size:83%; font-style:normal; margin:0 0.5em 0 0; display:inline-block;}
.activity-sec .detail .network .modal dd {font-size:1.4rem; line-height:1.4;}
.activity-sec .detail .network .modal dd > div {margin:0.8em 0 0 0;}
.activity-sec .detail .network .modal dd a {font-size:1.4rem; text-decoration:none; color:#000; padding:0.2em 1.0em; background-color:rgba(255,255,255,0.8); border-radius:3px; box-sizing:border-box; display:inline-block; transition:opacity 0.3s ease;}
.activity-sec .detail .network .modal dd a:hover {opacity:0.7;}
.activity-sec .detail .network .modal .close {width:30px; height:30px; display:block; position:absolute; top:10px; right:10px;}
.activity-sec .detail .network .modal .close::before,
.activity-sec .detail .network .modal .close::after {content:''; width:100%; height:2px; margin:-1px 0 0 0; background-color:#fff; display:block; position:absolute; top:50%; left:0;}
.activity-sec .detail .network .modal .close::before {transform:rotate(-45deg);}
.activity-sec .detail .network .modal .close::after {transform:rotate(45deg);}

@media screen and (max-width:767px){
	.activity-sec .list {margin:-10px -3px 0 -3px;}
	.activity-sec .list > div {width:50%; padding:10px 3px 0 3px;}
	.activity-sec .list .ctx dt {font-size:1.2rem;}
	.activity-sec .list .ctx dd {font-size:1.4rem;}
	.activity-sec .detail .date {font-size:1.4rem;}
	.activity-sec .detail .title {font-size:1.8rem;}
	.activity-sec .detail .ctx > div {display:flex; flex-wrap:wrap;}
	.activity-sec .detail .ctx > div:nth-of-type(odd) .img {padding:0; float:none;}
	.activity-sec .detail .ctx > div:nth-of-type(even) .img {padding:0; float:none;}
	.activity-sec .detail .ctx .ttl {width:100%; font-size:1.6rem; order:1;}
	.activity-sec .detail .ctx .txt {width:100%; font-size:1.4rem; order:2;}
	.activity-sec .detail .ctx .img {max-width:100%; margin:1.2em 0 0 0; order:3;}
	.activity-sec .detail .network {margin:30px 0 0 0;}
	.activity-sec .detail .network .modal .close {width:20px; height:20px; top:5px; right:5px;}
}
@media screen and (max-width:460px){
	.activity-sec .list > div {width:100%;}
}

/* inst */
.inst-sec .list {text-align:left;}
.inst-sec .list > div {padding:0.3em 0; border-bottom:dotted 1px #999; display:flex; flex-wrap:wrap;}
.inst-sec .list .name {font-size:1.8rem; padding:0 1.0em 0 0;}
.inst-sec .list .name span {font-size:85%; margin:0 0.5em 0 0; display:inline-block;}
.inst-sec .list .number {padding:0 0.5em 0 0;}
.inst-sec .list .number a {text-decoration:none;}
.inst-sec .list .hp {padding:0 0.5em 0 0; align-self:center;}
.inst-sec .list .hp a {font-size:1.2rem; line-height:1; white-space:nowrap; text-decoration:none; color:#fff; padding:0.3em 0.5em; background-color:#666; border-radius:3px; display:block;}
@media screen and (max-width:767px){
}

/* contact */
.contact-sec {text-align:left;}
.contact-sec form {display:block;}
.contact-sec .form > dl {padding:20px 0; display:flex;}
.contact-sec .form > dl > dt {width:10em;}
.contact-sec .form > dl > dd {box-sizing:border-box; flex:1;}
.contact-sec .form input[type=text],
.contact-sec .form input[type=password],
.contact-sec .form input[type=number],
.contact-sec .form input[type=email],
.contact-sec .form select,
.contact-sec .form textarea {width:100%; font-size:1.6rem; padding:10px; background:#fff; border-radius:3px; border:solid 1px #666; box-sizing:border-box;}
.contact-sec .form select {width:auto;}
.contact-sec .form textarea {height:6em;}
.contact-sec .form input.error,
.contact-sec .form select.error,
.contact-sec .form textarea.error {background-color:#fee;}
.contact-sec .form .address-clm > div {margin:10px 0 0 0;}
.contact-sec .form .address-clm > div:first-of-type {width:8em; margin-top:0;}
.contact-sec .btns {text-align:center; margin:30px 0 0 0; display:flex; flex-wrap:wrap; justify-content:center;}
.contact-sec .btns > li {padding:5px 10px;}
.contact-sec .btns button {height:40px; white-space:nowrap; letter-spacing:0.1em; text-align:center; text-decoration:none; color:#000; padding:0 30px; background-color:#ccc; border:none; border-radius:5px; display:flex; justify-content:center; align-items:center; transition:opacity 0.3s ease;}
.contact-sec .btns button:hover {opacity:0.7;}
.contact-sec .erro-txt {color:#c00; margin:5px 0 0 0;}
.contact-sec input.inputCheck {display:none;}
@media screen and (max-width:767px){
	.contact-sec .form > dl {display:block;}
	.contact-sec .form > dl > dt {width:auto;}
}