@charset "utf-8";


/*
 * CSS Document
 * 全てのページで読み込むCSS
 */
body {
    font-family: 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
    font-size: 14px;
    line-height: 1.7em;
    padding: 0;
    margin: 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
ul,
li {
    padding: 0;
    margin: 0;
    line-height: 1.7em;
    font-weight: normal;
}
h2 {
    font-size: 42px;
    line-height: 1.5em;
    margin-bottom: 50px;
    letter-spacing: 0.1em;
    text-align: center;
    width: 100%;
}
h2 span {
    display: block;
    font-size: 50%;
}
h3 {
    width: 100%;
}
h3 span {
    display: inline-block;
    font-size: 60%;
    margin-left: 1em;
}
a:hover,
.information_list dl dd a:hover,
#navT a:hover,
.artist-postings a:hover {
    color: #dddddd;
    text-decoration: none;
}
a:hover img {
    opacity: 0.5;
}



/* Global */
[class^="col-"],
.row,
.nav-link {
    padding: 0;
    margin: 0;
}
.container-fluid,
.container {
    margin: 0 auto;
    padding: 0;
}
.small {
    font-size: 50%;
}
.small2 {
    font-size: 70%;
}
.oi {
    padding: 0 0.5em;
}
.top_margin {
    margin-top: 100px;
}
.top_margin20 {
    margin-top: 20px;
}
.top_margin30 {
    margin-top: 30px;
}
.top_margin80 {
    margin-top: 80px;
}
.top_bottom {
    margin-bottom: 50px;
}
.navbar__fixed__top {
    margin-top: 100px;
}
header.navbar__fixed__top .catch-copy {
    margin-top: 70px;
}
.navbar__fixed__padding {
    padding-top: 150px;
    margin-top: -150px;
}
a.ListLink {
    display: block;
    margin-top: 40px;
    text-align: right;
    font-size: 12px;
}
a.ListLink .icon-arrow-right-1 {
    font-size: 80%;
    display: inline-block;
    padding-right: 0.5em;
}
a.ListLink:hover{
    filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}
.border_bottom {
    border-bottom: 1px solid #ddd;
    margin-bottom: 30px;
    padding-bottom: 30px;
}
.border_top {
    border-top: 1px solid #ddd;
    margin-top: 30px;
    padding-top: 30px;
}
.br__not__pc,
.br__not__pc__inline {
    display: none;
}
.br__not__mobile {
    display: block
}
.or_btn-warning {
    display: block;
    text-align: center;
    background-color: #ffc200;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    font-size: 16px;
    margin-top: 1em;
    margin-bottom: 1em;
    padding: 7px 15px;
}
.pdf_link {
    margin-top: 30px;
}
.inner_title1 {
    text-align: center;
    font-size: 26px;
    line-height: 200%;
    margin-bottom: 30px;
}
.inner1 {
    padding: 0.5em 2em 1em 2em;
}



/* table */
table {
    font-size: 12px;
}
table th {
    border-top: none;
}
table th,
table td {
    vertical-align: middle;
}
table th {
    text-align: center;
}
table th.col-1 {
    width: 20%;
}
table th.col-2 {
    width: 10%;
}
table th.col-3 {
    width: 10%;
}
table th.col-4 {
    width: 20%;
}
table th.col-5{
    width: 10%;
}
table th.col-6 {
    width: 30%;
}






.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {display: inline-table;}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */





/* Font Color */
.color-c1 {
    color: #326575;
}
.color-c2 {
    color: #da294b;
}
.color-c3 {
    color: #329339;
}
.border-color-c1,
.border-color-c2,
.border-color-c3 {
    margin: 0 auto;
    display: block;
    width: 60%;
}
.border-color-c1 {
    border: 3px solid #326575;
}
.border-color-c2 {
    border: 3px solid #da294b;
}
.border-color-c3 {
    border: 3px solid #329339;
}



/* 404 */
.error {
    text-align: center;
    margin: 150px auto;
}
.error .error404__img {
    margin-bottom: 70px;
}
.error .error404__msg {
    line-height: 2em;
    font-size: 16px;
}





/* header */
header {
    top: 0;
    padding: 1.5em 0;
    color: #ffffff;
    z-index: 999;
}
header a {
    color: #ffffff;
}
header.top {
    position: absolute;
    text-align: center;
    width: 100%;
}
header .catch-copy {
    width: 100%;
    text-align: center;
    letter-spacing: 0.3em;
    margin-top: 100px;
    -moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    -webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    -ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
}
header .catch-copy h2 {
    font-size: 50px;
    color: #ffffff;
    margin-bottom: 0;
}
header .catch-copy h3 {
    color: #ffffff;
    font-size: 24px;
    margin-bottom: 0;
    line-height: 1.6em;
}
header.top .catch-copy {
    margin-top: 150px;
}
header.bg_error {
    background:#ddd url('../images/error.jpg') no-repeat center center;
    background-size: 100%;
    height: 250px;
    margin-top: 120px;
}
header.bg_error .catch-copy {
    margin-top: 50px;
}
header.bg_contact {
    background:#ddd url('../images/header/header-contact.jpg') no-repeat center center;
    background-size: 100%;
    height: 250px;
    margin-top: 120px;
}
header.bg_contact .catch-copy {
    margin-top: 50px;
}
header.bg_about {
    background:#ddd url('../images/header/header-about.jpg') no-repeat bottom center;
    background-size: 100%;
    height: 400px;
    margin-top: 120px;
}
header.bg_about .catch-copy {
    height: 230px;
}
header.bg_experience_activities {
    background:#ddd url('../images/header/header-experience-activities.jpg') no-repeat center center;
    background-size: 100%;
    height: 400px;
    margin-top: 120px;
}
header.bg_experience_activities .catch-copy {
    height: 230px;
}
header.bg_selection-program {
    background:#ddd url('../images/header/header-selection-program.jpg') no-repeat center center;
    background-size: 100%;
    height: 400px;
    margin-top: 120px;
}
header.bg_selection-program .catch-copy {
    height: 230px;
}
header.bg_activities {
    background:#ddd url('../images/header/header-activities.jpg') no-repeat center center;
    background-size: 100%;
    height: 400px;
    margin-top: 120px;
}
header.bg_activities .catch-copy {
    height: 230px;
}
header.bg_friendship {
    background:#ddd url('../images/header/header-friendship.jpg') no-repeat center center;
    background-size: 100%;
    height: 400px;
    margin-top: 120px;
}
header.bg_friendship .catch-copy {
    height: 230px;
}
header.bg_training-camp {
    margin-top: 100px;
}
header.bg_training-camp img {
    margin: auto;
    width: 100%;
}
/*
header.bg_join {
    background:#ddd url('../images/header_join.jpg') no-repeat center center;
    background-size: 100%;
    height: 400px;
    margin-top: 113px;
}
header.bg_join .catch-copy {
    background-image: url('../images/header_join_logo.png');
    background-size: 25%;
    background-repeat: no-repeat;
    background-position: bottom center;
    height: 230px;
}
header.bg_artist {
    background:#ddd url('../images/header_artist.jpg') no-repeat center center;
    background-size: 100%;
    height: 400px;
    overflow: hidden;
    padding-bottom: 50px;
}
header.bg_artist .catch-copy {
    background-image: url('../images/header_artist_logo.png');
    background-size: 25%;
    background-repeat: no-repeat;
    background-position: bottom center;
    height: 200px;
}
/*



/* arrow-bottom */
header .arrow-bottom {
    margin: 20px auto 0 auto;
    text-align: center;
    width: 100%;
}
header .arrow-bottom img {
    display: block;
    margin: 70px auto 25px auto;
    cursor: pointer;
}
/*
header.top .arrow-bottom {
    display: table;
}
header .arrow-bottom .boxs {
    width: 100%;
    background-color: rgba( 255, 255, 255, 0.6);
    padding-top: 30px;
    padding-bottom: 20px;
}
header .arrow-bottom .boxs a {
    line-height: 1.8em;
    font-size: 20px;
    color: #333;
}
header .arrow-bottom .boxs a .date {
    display: block;
}
header .arrow-bottom .boxs a .date span {
    display: inline-block;
    font-size: 60px;
}
header .arrow-bottom .boxs a .open {
    font-weight: bold;
    display: block;
    font-size: 30px;
    color: crimson;
}
header .arrow-bottom img:hover{
    opacity: 0.7;
}
header .arrow-bottom .info__a, 
header .arrow-bottom .nav-line-go {
    cursor: pointer;
}
*/






/* slider-pro */
.slider-pro  {
}
/*
.slider-pro .sp-button {
    border: 0;
    background-color: #e6e6e6;
    margin: 0 20px;
}
.slider-pro .sp-selected-button {
    background-color: #5fd2d1;
}
*/

.header_about{
	text-align: center;
	margin: 30px auto;
}
.header_about div{
	font-size: 16px;
	line-height: 2em;
}


.nav-bunner{
	width: 1000px;
	margin: 30px auto;
}
.nav-bunner img{
	width: 100%;
	height: auto;
}

/* Global NAV */
.gnav {
    flex-direction: column;
}
.navbar a,
.navbar {
    color: #fff;
    text-decoration: none;
}
.navbar a:hover {
    color: #dddddd;
}
.navbar {
    padding: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
}
.bg-light {
    background-color: transparent!important;
}
.navbar .head {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
}
.navbar .head .logo {
	float: left;
    clear: both;
    width:  250px;
    height: 45px;
}
.navbar .head .logo a {
    position: absolute;
    cursor: pointer;
    display: block;
    left:  63px;
    width: 123px;
    height: 50px;
    background-image: url('../images/logo_a.png');
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
}
.navbar .head .logo a span {
    display: none;
}
.navbar .head .logo a:hover {
    opacity: 0.5;
}
.navbar .head .para {
    float: right;
    width: 100%;
    margin-left: -250px;
    margin-top: 7px;
}
.navbar .head .para .width_box {
    margin-left: 250px;
    padding-left: 15px;
	word-wrap:break-word;
}
.navbar .head .para .width_box .tit {
    float: left;
}
.navbar .head .para .width_box .tit br {
    display: none;
}
.navbar .head .para .width_box .tit h1 {
    font-size: 18px;
}
.navbar .head .para .width_box .lgn {
    float: right;
    text-align: right;
    padding-right: 15px;
    margin-top: 10px;
}
.navbar .head .para .width_box .lgn .inq {
    margin-right: 1em;
}
.navbar .head .para .width_box .lgn .access {
    margin-right: 1em;
}
.navbar .navbar-toggler,
.navbar .navbar-nav {
    display: none;
}


.navbar__fixed {
    background-color: #fff!important;
    color: #000;
    z-index: 99999;
    -webkit-transition: all .5s;
    transition: all .5s;
}
.navbar__fixed a {
    color: #000;
}
.navbar__fixed .head .logo a {
    display: block;
    left: 50px;
    width:  137px;
    height: 50px;
    margin-top: 5px;
    background-image: url('../images/logo_b.png');
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
}
.navbar-expand-sm .navbar-collapse {
    width: 100%;
    text-align: center;
    background-color: #ddd;
}
.navbar__fixed ul.navbar-nav {
    position: relative;
    top: 0;
    display: flex;
    width: 100%;
}
.navbar__fixed ul.navbar-nav li.nav-item {
    display: table;
    width: calc(100% / 4);
}
.navbar__fixed ul.navbar-nav li.nav-item a {
    display: table-cell;
    vertical-align: middle;
    font-size: 14px;
    height: 40px;
    color: #000;
}
.navbar__fixed ul.navbar-nav li.nav-item a.active {
    background-color: #bbb;
}
.navbar__fixed ul.navbar-nav li.nav-item a:hover,
.navbar__fixed ul.navbar-nav li.nav-item a:focus {
    background-color: #666;
    color: #fff;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu {
    width: 100%;
    border: none;
    background-color: #ddd;
    margin: 0;
    padding: 0;
    border-radius: 0;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu a {
    display: block;
    font-size: 14px;
    height: auto;
    padding: 10px 40px;
    border-bottom: 1px solid #ddd;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu a:last-child {
    border-bottom: none;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu a:hover {
    background-color: #ddd;
    color: #000;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu a .oi {
    display: none;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu.mark-1 a:hover,
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu.mark-2 a:hover,
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu.mark-3 a:hover {
    background-repeat: no-repeat;
    background-position: 20px center;
    background-size: 10px auto;
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu.mark-1 a:hover {
    background-image: url('../images/mark-1_t.png');
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu.mark-2 a:hover {
    background-image: url('../images/mark-2_t.png');
}
.navbar__fixed ul.navbar-nav li.nav-item .dropdown-menu.mark-3 a:hover {
    background-image: url('../images/mark-3_t.png');
}




/* NAV */
.nav {
    background-color: #eeeeee;
    width: 100%;
    text-align: center;
    font-size: 26px;
    line-height: 1.6em;
}
.nav a.nav-item {
    min-height: 250px;
    padding: 40px 20px;
    display: block;
    color: #000;
}
.nav a.nav-item img {
    display: block;
    margin: 0 auto 30px auto;
}
.nav a.nav-item .en {
    display: block;
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 20px;
    letter-spacing: 0.2em;
    line-height: 100%;
    font-weight: normal;
}
.nav a.nav-item .comment {
    display: block;
    font-size: 16px;
    line-height: 1.8em;
    font-weight: normal;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #ccc;
}
.nav a.nav-item {
	overflow: hidden;
	position: relative;
}
.nav a.nav-item .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.5);
	-webkit-transition: all 0.4s ease;
	transition: all 0.3s ease;
	-webkit-transform: scale(0); /* 大きさを０にして表示しない */
	transform: scale(0);
}
.nav a.nav-item:hover .mask {
	-webkit-transform: scale(1); /* 大きさを１にして表示する */
	transform: scale(1);
}
.nav a.nav-item .mask .caption {
	font-size: 20px;
    text-align: center;
	color: #ffffff;
    margin-top: 130px;
}



/* footsteps*/
.footsteps {
    margin-top: 20px;
    margin-bottom: 40px;
    font-size: 12px;
}
.footsteps [class^="icon-arrow-"] {
    font-size: 12px;
    padding-left: .5em;
    padding-right: .5em;
}



/* TOP EVENT */
.event_top {
    margin-top: 50px;
    margin-bottom: 60px;
}
.event_top [class^="col-"] {
    padding: 7px;
}
.event_top .comment {
    display: block;
    margin: 0 0 40px 0;
    font-size: 12px;
    line-height: 1.7em;
}
.event_top .row {
    margin-bottom: 30px;
}
.event_top .date {
    padding: 0;
    margin: 10px 0 15px 0;
    font-size: 16px;
    line-height: 150%;
}
.event_top .boreder {
    display: block;
    text-align: center;
    border: 1px solid #999999;
    font-size: 12px;
    padding: 3px 0;
    height: 30px;
    margin: 0 0 15px 0;
}
.event_top .title {
    font-size: 16px;
    line-height: 1.7em;
}
.event_top [class^="col-"] {
	overflow: hidden;
	position: relative;
}
.event_top [class^="col-"] .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.1);
	-webkit-transition: all 0.4s ease;
	transition: all 0.3s ease;
	-webkit-transform: scale(0);	/* 大きさを０にして表示しない */
	transform: scale(0);
}
.event_top [class^="col-"]:hover .mask {
	-webkit-transform: scale(1);	/* 大きさを１にして表示する */
	transform: scale(1);
}
.event_top [class^="col-"] .mask .caption {
	font-size: 130%;
    text-align: center;
	color: #fff;
	padding-top: 80px;
}
.event_top a {
    color: #000000;
}
.event_top a.ListLink {
    color: dodgerblue;
}
.event_top .box-back {
    display: table;
    width: 100%;
    height: 100%;
    margin-top: 45px;
}
.event_top .box-back a {
    display: block;
    width: 100%;
    min-height: 275px;
    background:#fff url('../images/border-1px_a.png') no-repeat top center;
    background-size:100% auto;
}
.event_top .box-back a:hover {
    background:#fff url('../images/border-1px_h.png') no-repeat top center;
    background-size:100% auto;
}
.event_top .box-back a span {
    display: none;
}



/* Artist Postings */
.artist-postings {
    background:#fff url('../images/header/header-artist-postings.jpg') no-repeat top center;
    background-size:100% auto;
    letter-spacing: 0.3em;
    color: #fff;
    padding: 20px 0;
    margin-top: 0;
    margin-bottom: 50px;
}
.artist-postings a {
    color: #fff;
}
.artist-postings h2 {
    margin-bottom: 0;
    letter-spacing: 0;
    text-align: left;
    font-size: 70px;
}
.artist-postings h2 span {
    display: block;
    font-size: 32px;
    line-height: 150%;
}
.artist-postings h3 {
    font-size: 30px;
    text-align: right;
}



/* access */
.access {
    margin-top: 50px;
}
.access .comment {
    display: block;
    margin: 0 0 40px 0;
    font-size: 12px;
    line-height: 1.7em;
}
#gmap {
	height: 500px;
	width: 100%;
}
.access .address {
    margin-top: 50px;
}
.access .address h2 {
    text-align: left;
    font-size: 36px;
    margin: 0;
}
.access .address h2.small {
    font-size: 26px;
}
.access .address h3 {
    font-size: 14px;
}
.access .address img {
    margin-top: 30px;
    margin-bottom: 30px;
}
.access .address .jimukyoku {
    border: 1px solid #93b4c5;
    color: #93b4c5;
    text-align: center;
    width: 150px;
    padding: 5px;
    margin-top: 30px;
}
.access .address address {
    margin-top: 30px;
}
.access .address .tel{
    margin-bottom: 30px;
    line-height: 1.8em;
    font-size: 16px;
}
.access .address .col-md-4 dl {
    display: table;
    width: 100%;
}
.access .address .col-md-4 dt {
    font-weight: normal;
    display: table-cell;
    width: 80px;
}
.access .address .col-md-4 dd {
    line-height: 1.8em;
    font-size: 16px;
    display: table-cell;
}
.access .address .col-md-4 {
    padding-right: 40px;
}
.access .address .col-md-8 {
    padding-left: 40px;
    border-left: 1px solid #ccc;
}
.access .address .col-md-8 dl {
}
.access .address .col-md-8 dt {
    font-weight: normal;
    color: #93b4c5;
    margin-top: 30px;
    margin-bottom: 20px;
}
.access .address .col-md-8 dd {
    line-height: 1.8em;
    font-size: 16px;
    padding-left: 1em;
}
.access .address .col-md-8 dd .title {
    display: block;
    font-size: 14px;
    margin-top: 10px;
}



/* information_list & event_list */
.information_list,
.event_list {
    padding-top: 20px;
    padding-bottom: 30px;
}
.information_list .bg_information,
.event_list .bg_event {
    background-color: #f5f9fa;
}
.information_list .bg_information_list,
.event_list .bg_event_list {
    background-color: #fff;
}
.information_list .comment,
.event_list .comment {
    display: block;
    margin: 0 0 40px 0;
    font-size: 12px;
    line-height: 1.7em;
}
.information_list .ListData dl,
.event_list .ListData dl {
    overflow: hidden;
    border-top: 1px solid #ccc;
    padding: 15px 0 5px 0;
    margin: 0;
}
.information_list .ListData dl:last-child,
.event_list .ListData dl:last-child {
    border-bottom: 1px solid #ccc;
}
.information_list .ListData dl dt,
.event_list .ListData dl dt {
	float: left;
    clear: both;
    font-weight: normal;
    font-size: 12px;
    padding: 0;
    width: 100px;
}
.information_list .ListData dl dd,
.event_list .ListData dl dd {
    float: right;
	width: 100%;
    margin-left: -100px;
}
.information_list .ListData dl dd .width_box,
.event_list .ListData dl dd .width_box {
    margin-left: 100px;
	word-wrap:break-word;
}
.information_list .ListData dl dd a,
.event_list .ListData dl dd a {
    color: #000;
}
.information_list .ListData dl dd a:hover,
.event_list .ListData dl dd a:hover {
    color: #aaa;
}
.information_list .ListData dl dd .date,
.event_list .ListData dl dd .date {
    display: inline-block;
    width: 170px;
}




/* information */
.information {
    margin-top: 50px;
}
.information .col-md-9 {
  padding-right: 2em;  
}

/* 表示する場合 */
.information .date {
    margin: 2em 0 1em 0;
    font-size: 16px;
}
.information h2 {
    font-size: 14px;
    padding: 0;
    margin: 0 0 1em 0;
    text-align: left;
}
.information .comment {
    padding-top: 30px;
} 
.information h3 {
    font-size: 30px;
    margin-top: 1em;
    margin-bottom: 1em;
}
.information h3 .icon {
    padding-top: 1em;
    font-size: 14px;
    text-align: left;
    vertical-align: middle;
}
.information h3 .title {
    line-height: 1.5em;
    display: inline-block;
}
.information h4 {
    font-size: 12px;
    text-align: right;
    margin-bottom: 1em;
}



/* reservation */
.reservation {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
.reservation a img{
	width: calc( 100% / 3 );
}



/* Event */
.event {
    margin-top: 50px;
}
.event .col-md-9 {
  padding-right: 2em;  
}
.event .date {
    margin: 2em 0 1em 0;
    font-size: 16px;
}
.event h2 {
    font-size: 14px;
    padding: 0;
    margin: 0 0 1em 0;
    text-align: left;
}
.event .comment {
    padding-top: 30px;
}
.event h3 {
    font-size: 30px;
    margin-top: 0;
    margin-bottom: 0em;
}
.event h3 .icon {
    padding-top: 1em;
    font-size: 14px;
    text-align: left;
    vertical-align: middle;
}
.event h3 .title {
    line-height: 1.5em;
    display: inline-block;
}
.event .details {
    margin: 1em 0 2em 0;
}
.event .details h4 {
    text-align: right;
    font-size: 12px;
    margin-top: 0;
    margin-bottom: 1em;
}
.event .details dl {
    float: none;
    clear: both;
    overflow: hidden;
    margin-top: 40px;
}
.event .details dt {
	float: left;
    clear: left;
	width: 100px;
}
.event .details dd {
    float: left;
    width: 100%;
    margin-left: -100px;
}
.event .details dd .width_box {
    margin-left: 100px;
	word-wrap:break-word;
}
.event .details .note {
    border-top: 1px solid #dddddd;
    padding-top: 2em;
    padding-bottom: 2em;
}
.event .details [class^="col-"] {
    padding: 0 0 0 0;
}
.event .details [class^="col-"]:nth-child(2n+1) img {
    padding-right: 20px;
}
.event .details [class^="col-"]:nth-child(2n) img {
    padding-left: 20px;
}
.event .btn-block {
    margin-top: 50px;
}


/* Calendar */
.calendar {
    margin-bottom: 50px;
}
.calendar .calendar__ba {
    clear: both;
    width: 100%;
}
.calendar .calendar__ba li {
    width : calc( 100% / 3 );
    list-style: none;
}
.calendar .calendar__ba a {
    font-size: 12px;
    color: #000;
}
.calendar .calendar__ba .calendar__title {
    float: left;
    text-align: center;
    display: block;
    font-size: 14px;
    margin-bottom: 5px;
}
.calendar .calendar__ba .calendar__ba_left {
    float: left;
    text-align: left;
}
.calendar .calendar__ba .calendar__ba_right {
    float: right;
    text-align: right;
}
.calendar table {
    width: 100%;
    margin: 0 auto;
}
.calendar th,
.calendar td {
    width : calc( 100% / 7 );
    font-weight: normal;
    background-color: #eee;
    border: 1px solid #fff;
    text-align: center;
    font-size: 11px;
}
.calendar th {
    background-color: #ddd;
}
.calendar td {
    height: 38px;
}
.calendar td a {
    display: block;
    color: #000;
    font-weight: bold;
    text-decoration: underline;
    text-align: center;
}
.calendar td.glay {
    color: #aaa;
}
.calendar .calendar__today {
    background-color: #aaa;
    color: #fff;
}



/* sidebar schedule */
.schedule {
    margin-bottom: 50px;
}
.schedule h3 {
    text-align: center;
    width: 100%;
    font-size: 14px;
    margin-bottom: 20px;
}
.schedule .schedule-box {
    display: block;
    clear: both;
    margin-bottom: 10px;
    padding: 1px;
}
.schedule .schedule-box .oi {
    padding: 0 0 0 0.5em;
}
.schedule a:hover {
    background-color: #eeeeee;
}
.schedule a.ListLink:hover {
    background-color: transparent;
}
.schedule .schedule-box dl {
    overflow: hidden;
    padding: 0;
    margin: 0;
}
.schedule .schedule-box dt {
	float: left;
    clear: both;
    width: 30%;
}
.schedule .schedule-box dd {
    font-size: 80%;
    margin:0 10px 0 32%;
}





/* SNS */
.sns {
    margin-top: 50px;
    padding-top: 70px;
    padding-bottom: 70px;
    background-color: #f5f9fa;
}
.sns [class^="col-"] {
    padding: 0 15px;
}
.sns .bottom_line {
    padding-bottom: 50px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 50px;
}
.sns .box_size {
    width: 70%;
    margin: 0 auto;
}
.sns .box {
    text-align: center;
    background-color: #fff;
    padding: 40px 70px;
}
.sns #fb-root {
    width: 100%;
}
.sns .line {
    padding-top: 25px;
}
.sns .line div {
    margin-bottom: 10px;
}




/* link */
.link {
    margin-top: 50px;
    margin-bottom: 50px;
}
.link .comment {
    display: block;
    margin: 0 0 40px 0;
    font-size: 12px;
    line-height: 1.7em;
}
.link [class^="col-"] {
    padding: 0 20px;
}


/* footer */
footer {
    background-image: url('../images/footer-img.jpg');
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-top: 50px;
    padding-bottom: 50px;
    margin-top: 0;
    height:  500px;
}
footer [class^="col-"] {
    font-size: 16px;
    margin-bottom: 1em;
}
footer p {
    margin: 0 0 1em 0;
}
footer p a {
    color: #000;
    
}
footer ul {
    margin: 0 0 0 1em;
}
footer ul li {
    list-style: none;
    font-size: 14px;
    line-height: 2em;
}
footer ul li:before {
    font-family: 'icomoon';
    font-size: 76%;
    content: "\e904";
    left: -1em;
    position: relative;
}
footer ul li a {
    color: #000;
}
footer .copy {
    text-align: right;
    border-top: 1px solid #eeeeee;
    padding: 10px;
}
footer .copy .title {
	margin-top: 15px;
}
footer .copy .footer_address {
	text-align: left;
    padding: 10px 30px;
    font-size: 12px;
    background-color: rgba( 255, 255, 255, 0.4 );
}
footer .copy .title {
    font-size: 13px;
}
footer .copy .copyright {
	font-size: 13px;
    margin-top: 10px;
}





/* about */
.about {
}
.about .row {
    margin-top: 50px;
}
.about h2 {
    display: block;
    text-align: left;
    font-size: 24px;
    margin-bottom: 40px;
    padding-left: 20px;
    width: 100%;
}
.about h3 {
    display: block;
    font-size: 16px;
    margin-bottom: 20px;
    padding-left: 25px;
}
.about .about_border_bottom {
    border-bottom: 1px solid #ddd;
}





/* page head */
/* border-bottom on */
.head-text {
    border-bottom: 1px solid #ddd;
    padding-bottom: 40px;
    margin-bottom: 30px;
}
.head-text h2 {
    text-align: center;
}
.head-text p {
    margin: 0;
    text-align: center;
}
.head-text .text-left-100 {
    text-align: left;
    width: 60%;
    margin: 0 auto;
}
/* border-bottom off */
.head-text2 {
    padding-bottom: 30px;
    margin-bottom: 30px;
}
.head-text2 h2 {
    text-align: center;
}
.head-text2 p {
    margin: 0;
    text-align: center;
}
.head-text2 .text-left-100 {
    text-align: left;
    width: 60%;
    margin: 0 auto;
}



/* page */
.page {
    overflow: hidden;
    width: 100%;
}
.page .row {
    margin-top: 40px;
    margin-bottom: 40px;
}
.page .row h2 {
    font-size: 28px;
    text-align: left;
}
.page h3 {
    font-size: 16px;
}
.page .text-right {
    text-align: right;
    padding-right: 30px;
}
.page .text-left {
    text-align: left;
    padding-left: 30px;
}
.page .bg_program {
    background:#ddd url('../images/header/header-selection-program.jpg') no-repeat center center;
    background-size: 100%;
    background-position: center center;
    height: 300px;
    color: #fff;
    text-align: center;
    letter-spacing: 0.3em;
    padding-top: 50px;
    -moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    -webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    -ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
    margin-top: 30px;
    margin-bottom: 60px;
}
.page .bg_program h2 {
    font-size: 46px;
}
.page .bg_culture_base {
    background:#ddd url('../images/header/header-activities_2.jpg') no-repeat center center;
    background-size: 100%;
    background-position: center center;
    height: 300px;
    color: #fff;
    text-align: center;
    letter-spacing: 0;
    padding-top: 30px;
    -moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    -webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    -ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
    margin-top: 10px;
    margin-bottom: 60px;
}
.page .bg_culture_base h2 {
    font-size: 46px;
}
.page .cap_right {
    width: 100%;
    margin-top: 40px;
    text-align: right;
}
.page .cap_left {
    width: 100%;
    margin-top: 40px;
    text-align: left;
}
.page .two_rows .col-md-6 {
    padding-right: 30px;
}




/* 市民とのふれあい */
.page.friendship .row {
    margin: 0 0 50px 0;
}
.page.friendship .row > .padding_5 {
    padding-left: 5px;
    padding-right: 5px;
}
.page.friendship .row > .padding_5:first-child {
    padding-left: 0;
}
.page.friendship .row > .padding_5:last-child {
    padding-right: 0;
}
.page.friendship h2 {
    margin: 0 0 10px 0;
}
.page.friendship h3 {
    margin: 0 0 10px 0;
}
.page.friendship p {
    margin: 0 0 10px 0;
}



/* 滞在中アーティスト */
.page.artists .artists-title {
    text-align: center;
    background-color: #eee;
    font-size: 30px;
    padding: 30px 0;
    margin-bottom: 50px;
}
.page.artists h2 {
    line-height: auto;
    font-size: 30px;
}
.page.artists .row {
    margin-bottom: 40px;
}
.page.artists h2 .n1-title {
    font-family: 'Arial';
    font-size: 40px;
    color: #fff;
    background-color:#ddd;
    padding: 0;
    margin: 30px 0 0 30px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    display: inline-block;
    border-radius: 50%;
}
.page.artists .col-sm-3 {
    padding-right: 30px;
}
.page.artists .atelier-namee {
    font-size: 20px;
    margin-bottom: 30px;
}
.page.artists h3.artists-name {
    font-size: 26px;
    margin-bottom: 30px;
}
.page.artists h3 span {
    display: inline-block;
    margin-left: 1em;
    font-size: 16px;
}
.page.artists p {
    font-size: 14px;
    line-height: 200%;
}
.page.artists ul {
    display: block;
    margin-top: 10px;
    margin: 0 0 0 3em;
    padding: 0;
    width: 100%;
}
.page.artists dl {
    overflow: hidden;
    padding: 0;
    margin: 0;
}
.page.artists dl dt {
	float: left;
    clear: both;
    font-weight: normal;
    padding: 0;
    width: 80px;
}
.page.artists dl dd {
    float: right;
	width: 100%;
    margin-left: -80px;
}
.page.artists dl dd .width_box {
    margin-left: 80px;
	word-wrap:break-word;
}
.page.artists .private_event {
    margin-top: 30px;
}
.page.artists .private_event h4 {
    font-size: 18px;
}
.page.artists .private_event ul {
    display: block;
    padding: 0;
    margin: 10px 0 0 1em;
}
.page.artists .private_event li {
    list-style: none;
    width: 100%;
}




/* 各種申請書 */
.page.written_application {
    text-align: center;
    background-color: #eee;
    font-size: 30px;
    padding: 50px 0 20px 0;
    margin-bottom: 50px;
}
.page.written_application dl {
    overflow: hidden;
    font-size: 16px;
    width: 50%;
    margin: 0 auto;
}
.page.written_application dl dt {
	float: left;
    clear: both;
    font-weight: normal;
    margin-bottom: 10px;
    font-size: 22px;
}
.page.written_application dl dd {
    float: right;
    margin-bottom: 30px;
}



/* map */
.map .col-md-5 {
    padding-right: 20px;
}
.map .col-md-4 { 
    padding-left: 15px;
}
.map .col-md-7 .row {
    margin-bottom: 20px;
}
.map .caption {
    display: block;
    text-align: center;
    margin-top: 10px;
}
.map h3 {
    margin-top: 40px;
    margin-bottom: 40px;
}



/* selection-program */
.selection-program {
    margin-top: 40px;
    margin-bottom: 50px;
    font-size: 16px;
}
.selection-program .download {
    text-align: right;
    margin-bottom: 30px;
}
.selection-program [id^="adventure"] {
    margin-bottom: 70px;
}
.selection-program h3 {
    font-size: 22px;
}
.selection-program h4 {
    font-size: 16px;
    padding-left: 30px;
    margin-top: 30px;
}
.selection-program h5 {
    font-size: 14px;
    padding-left: 30px;
    margin-top: 30px;
}
.selection-program h3:nth-child(2) {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}
.selection-program .row {
    margin: 10px 0 30px 0;
}
.selection-program .col-sm-9 {
    padding-left: 30px;
}
.selection-program ul {
    display: block;
    margin-top: 30px;
    margin-left: 30px;
}
.selection-program ul.img_none {
    margin-left: 30px;
}
.selection-program ul li {
    list-style: none;
}
.selection-program p {
    width: 100%;
    margin: 0 0 0 30px;
}



/* ページャー */
.pagenavi {
    display: block;
    margin-top: 30px;
    margin-bottom: 20px;
    width: 100%;
	text-align: center;
    color: #ddd;
}
.pagenavi a {
    color: #ddd;
}
.pagenavi .next {
    display: inline-block;
    margin-left: 6px;
}
.pagenavi .page,
.pagenavi .current {
	display: inline-block;
	text-decoration: none;
	width: 30px;
	line-height: 28px;
	margin: 0 1px;
    margin-bottom: 10px;
	font-size: 12px;
	border: 1px solid #ccc;
    color: #ccc;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}
.pagenavi .page:hover,
.pagenavi .current {
	color: #fff;
	background-color: #aaa;
	border: 1px solid #aaa;
}
.pagenavi [class^="icon-"] {
	font-size: 12px;
	line-height: 30px;
    color: #444;
}
.pagenavi .page:hover,
.pagenavi [class^="icon-"]:hover {
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}





/*
 * スクロールすると現れて追尾するトップへ戻るボタン
 */
#page-top {
    position: fixed;
    bottom: 10px;
    right: 20px;
    font-size: 8px;
}
#page-top a {
    background: #666;
    text-decoration: none;
    color: #fff;
    width: 70px;
    padding: 10px 0 0 0;
    text-align: center;
    display: block;
    border-radius: 3px;
    filter:alpha(opacity=60);
    -ms-filter: "alpha(opacity=60)";
    -moz-opacity:0.6;
    -khtml-opacity: 0.6;
    opacity:0.6;
    zoom:1;
}
#page-top a .oi {
    font-size: 14px;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}





/* contact */
.contact {
    margin-top: 60px;
    margin-bottom: 50px;
    font-size: 16px;
}
.contact .contact__block {
    border: 1px solid #ccc;
    padding: 20px;
    margin-top: 30px;
    line-height: 2em;
}
.contact form {
    width: 90%;
    margin: 30px auto 30px auto;
}
.contact form address {
    text-align: left;
}
.contact form .tel {
    font-family: 'Nova Flat';
    font-size: 26px;
}
.contact form #error {
    width: 90%;
    border: 1px solid #bd1446;
    margin: 0 auto 50px auto;
}
.contact h3 {
    text-align: center;
    margin-bottom: 60px;
}
.contact form #error h2 {
    background-color: #bd1446;
    color: #ffffff;
    font-size: 20px;
    margin: 0;
    padding: 10px;
}
.contact form #error h3 {
    font-size: 14px;
    text-align: center;
    margin: 5px 0;
    padding: 0;
    color: #333;
}
.contact form .row {
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    margin-top: 20px;
    padding-bottom: 20px;
}
.contact form .row.border-not {
    border-bottom: none;
}
.contact form .contact__head {
    padding-bottom: 60px;
}
.contact form .row .row {
    border-bottom: none;
    margin-bottom: 5px;
    padding-bottom: 5px;
}
.contact form a {
    text-decoration: underline;
}
.contact form .col-form-label {
    margin-top: 10px;
    color: #000;
}
.contact form .wa {
    display: inline-block;
    margin-left: 1em;
    color: #ffffff;
    font-weight: 200;
    background-color: #FA8072;
    border-radius: 4px;
    padding: 3px 10px;
    font-size: 10px;
}
.contact form .entry_title {
    background-color: #777;
    color: #fff;
    font-size: 20px;
    padding: 10px 1em;
}
.contact form .form-control {
    background-color: #efefef;
    font-size: 18px;
}
.contact form .form-text {
    font-size: 16px;
    line-height: 1.7em;
}
.contact form [id^="name"] {
    display: inline-block;
    width: 200px;
}
.contact form [id^="name_type"] {
    display: inline-block;
    margin-left: 1em;
}
.contact form [id^="grade"] {
    display: inline-block;
    width: 50px;
    text-align: center;
}
.contact form [id^="grade_label"] {
    display: inline-block;
    width: 80px;
}
.contact form [id^="zip"] {
    display: inline-block;
    width: 100px;
}
.contact form #add_pref {
    display: inline-block;
    width: 100px;
}
.contact form #add_city {
    display: inline-block;
    width: 180px;
}
.contact form #add_twon {
    display: inline-block;
    width: 260px;
}
.contact form #tel1,
.contact form #tel2,
.contact form #tel3 {
    display: inline-block;
    width: 100px;
}
.contact form .person {
    text-align: center;
    margin-top: 30px;
}
.contact form .button {
    text-align: center;
}
.contact form .button .btn-secondary,
.contact form .button .btn-warning,
.contact form .button a {
    border: none;
    margin: 30px 20px 0 20px;
    padding: 15px 50px;
    color: #ffffff;
    text-decoration: none;
}
.contact form dl.event_form1,
.contact form dl.event_form2 {
    overflow: hidden;
    width: 100%;
    margin: 0;
}
.contact form dl.event_form1 dt {
	float: left;
    clear: both;
    font-weight: normal;
    width: auto;
    margin-left: 1em;
}
.contact form dl.event_form1 dd {
    float: left;
    margin-top: 5px;
    margin-left: 2em;
    width: auto;
}
.contact form dl.event_form2 dt {
	float: left;
    clear: both;
    font-weight: normal;
    width: auto;
}
.contact form dl.event_form2 dd {
    float: left;
    margin-top: 5px;
    margin-left: 2em;
    width: auto;
}


/*  event entry */
.contact form .contact__head__event {
    border: none;
    font-size: 14px;
    line-height: 170%;
}
.contact form .contact__head__event .category {
    font-size: 12px;
}
.contact form .contact__head__event h3 {
    line-height: 170%;
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    margin: 0 0 20px 0;
}
.contact form .participants {
    line-height: 100%;
    font-size: 20px;
    color: crimson;
    margin-bottom: 10px;
}



/* radio */
form .rc {
    margin-top: 5px;
}
form .rc input[type="radio"] {
    position: relative;
    -webkit-appearance: button;
    appearance: button;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    content: "";
    background-color: #FFF;
    border: 1px solid #ccc;
    -webkit-border-radius: 20px;
    border-radius: 20px;
    -webkit-box-shadow: inset 4px 4px 10px rgba(0,0,0,0.1);
    box-shadow: inset 4px 4px 10px rgba(0,0,0,0.1);
    vertical-align: middle;
    cursor: pointer;
    margin-right: 0.5em;
}
form .rc input[type="radio"]:checked:after {
    display: block;
    position: absolute;
    top: 2px;
    left: 2px;
    content: "";
    width: 14px;
    height: 14px;
    background: #ffc200;
    -webkit-border-radius: 14px;
    border-radius: 142px;
}





/* checkbox */
form .rc.checkbox_block label  {
    display: block;
}
form .rc .checkbox {
    display: inline-block;
    position: relative;
    margin-right: 0.5em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: button;
    appearance: button;
    width: 20px;
    height: 20px;
    border: 1px solid #ccc;
    vertical-align: middle;
    border-radius: 4px;
    -webkit-box-shadow: inset 4px 4px 10px rgba(0,0,0,0.1);
    box-shadow: inset 4px 4px 10px rgba(0,0,0,0.1);
}

form .rc .checkbox:checked::after {
    position: absolute;
    content: "";
    top: -1px;
    left: 5px;
    width: 8px;
    height: 15px;
    border-right: 3px solid #ffc200;
    border-bottom: 3px solid #ffc200;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg); 
}





/* アーティスト公募資料 */
.activities-offering {
    font-size: 16px;
    line-height: 200%;
}
.activities-offering .anchor-link {
    text-align: center;
    background-color: #eee;
    font-size: 20px;
    padding: 30px 0;
    margin-bottom: 50px;
}
.activities-offering dl {
    overflow: hidden;
    padding: 0;
    margin: 0;
}
.activities-offering dl dt {
	float: left;
    clear: both;
    padding: 0;
    width: 120px;
    margin-bottom: 15px;
}
.activities-offering dl dd {
    float: right;
	width: 100%;
    margin-left: -120px;
    margin-bottom: 15px;
}
.activities-offering dl dd .width_box {
    margin-left: 120px;
	word-wrap:break-word;
}
.activities-offering ul {
    width: 100%;
    margin: 0 1em;
    padding: 0 1em;
}
.activities-offering ol {
    width: 100%;
    margin: 0 1em;
    padding: 0 1em;
}
.activities-offering p {
    margin: 40px 0 20px 0;
}
.activities-offering .link {
    margin: 0 0 50px 0;
}
.activities-offering .address {
    border-top: 1px solid #ddd;
    margin: 30px 0 0 0;
    padding: 30px 0 0 0;
}





/* citizens-exchange-project */
.citizens-exchange-project {
    
}
.citizens-exchange-project h2 {
    text-align: center;
    background-color: #eee;
    font-size: 30px;
    padding: 30px 0;
    margin-bottom: 0;
}



/* water-and-Land */
.water-and-Land {
    
}
.water-and-Land h2 {
    text-align: center;
    background-color: #eee;
    font-size: 30px;
    padding: 30px 0;
    margin-bottom: 50px;
}
.water-and-Land h3 {
    font-size: 22px;
}
.water-and-Land p {
    
}



.training-camp {

}
.training-camp-head-text {
    text-align: center;
    line-height: 1.7em;
    font-size: 20px;
    color: #231815;
}
.training-camp h2 {
    font-size: 25px;
    font-weight: bold;
    color: #3badb3;
    display: flex;
	align-items: center;
}
.training-camp h2:before, 
.training-camp h2:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #231815;
	display: block;
}
.training-camp h2:before {
	margin-right: 1em;
}
.training-camp h2:after {
	margin-left: 1em;
}
.training-camp p {
    font-size: 16px;
}
.training-camp .training-camp-box {
    width: 900px;
    margin: 0 auto;
}
.training-camp .option {
    background-color: #e2f2f3;
    font-size: 24px;
    margin-top: 50px;
    margin-bottom: 50px;
    padding-bottom: 20px;
}
.training-camp .option p {
    text-align: center;
}
.training-camp .option h3 {
    text-align: center;
    font-size: 24px;
    color: #37b6bd;
    height: 24px;
    line-height: 100%;
    top: -13px;
    position: relative;
}
.training-camp .option .row {
    padding: 0;
    margin-bottom: 10px;
}
.training-camp .option .row > div {
    padding: 0 15px;
}
.training-camp .option .option-box {
    border: 1px solid #37b6bd;
    background-color: #ffffff;
    font-size: 15px;    
}
.training-camp .option .option-box div:first-child {
    text-align: center;
    background-color: #37b6bd;
    padding: 10px;
    color: #ffffff;
}
.training-camp .option .option-box div:last-child {
    padding: 10px 30px;
}
.training-camp .option span {
    margin-bottom: 15px;
}
.training-camp .case {
    margin-top: 50px;
}
.training-camp .case div:first-child {
    background: #37b7be;
    border-radius: 20px;
    padding: 5px 12px;
    width: 120px;
    color: #ffffff;
    text-align: center;
    margin-bottom: 30px;
}
.training-camp .case div:nth-child(2) {    
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.training-camp .case div span:first-child {
    font-size: 16px;
    font-weight: bold;
}
.training-camp .case img {
    margin-bottom: 20px;
}
.training-camp .toiawase {
    text-align: center;
}
.training-camp .toiawase span {
    color: #37b6bd;
}
.training-camp .toiawase .tel {
    margin-top: 40px;
}
.training-camp .toiawase .tel span {
    font-size: 32px;
    color: #000000;
}
.training-camp .toiawase .tel > span > span {
    font-size: 16px;
}
.training-camp .toiawase .contact-link {
    margin-top: 50px;
    margin-bottom: 100px;
}
.training-camp .toiawase .contact-link a {
    background-color: #333333;
    font-size: 16p5;
    color: #ffffff;
    padding: 10px 20px;
    display: inline-block;
}
.training-camp .toiawase .contact-link a:hover {
    opacity: 0.5;
}



#vrview {
    display: block;
    height: 400px;
    width: 100%;
}


.bunner {
    text-align: center;
    margin: 50px auto 20px auto;
}
.bunner img {
    width: 1130px;
    height: auto;
}



.futaba {
    margin-top: 50px;
    background-color: #ffc200;
    padding: 20px 5px 15px 5px;
    text-align: center;
}
.futaba:hover {
    opacity: 0.8;
}
.futaba a {
    color: #fff;
    font-size: 36px;
    font-weight: bold;
    line-height: 1.2em;
}
.futaba a span {
    font-size: 22px;
}



/* 追加 */

.yoyaku_2F .flex,
.flow_step .flex{
    display: flex;
}

.yoyaku_2F.head-text2{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.yoyaku_2F.head-text2 p{
    padding-bottom: 50px;
}

.yoyaku_2F.head-text2 .map{
    max-width: 500px;
    margin-bottom: 50px;
}

.yoyaku_2F.head-text2 .map img{
    width: 100%;
}

.yoyaku_2F h2,
.yoyaku_2F h3{
    text-align: center;
    font-size: 40px;
    margin-bottom: 50px;
}

.yoyaku_2F .number {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: -15%;
    width: 50px;
    height: 50px;
    box-sizing: border-box;
    padding-top: 2px;
    padding-left: 2px;
    border-radius: 50%;
    font-size: 28px;
    font-weight: 500;
    background: #000;
    color: #fff;
}

.yoyaku_2F .line {
    display: block;
    height: 100%;
    border-right: 1px dashed #000;
}

.yoyaku_2F .number_line {
    width: 70px;
    padding-right: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

.yoyaku_2F .container{
    padding-bottom: 50px;
}

.yoyaku_2F .contents{
    margin-bottom: 50px;
}

.yoyaku_2F .container .flex:last-of-type .contents{
    margin-bottom: 0;
}

.yoyaku_2F .contents > p:not(:last-child),
.yoyaku_2F .contents > a:not(:last-child),
.yoyaku_2F .contents > div:not(:last-child){
    margin-bottom: 30px;
}

.yoyaku_2F a{
    color: #4595d1;
    font-weight: 700;
    display: inline-block;
}

.yoyaku_2F a .under_line{
    border-bottom: 1px solid #4595d1;
}

.yoyaku_2F a:hover{
    opacity: 0.5;
}

.yoyaku_2F h4{
    margin-bottom: 30px;
    letter-spacing: 0.05em;
}

.yoyaku_2F h5:before{
    content: "■";
    display: inline-block;
    font-size: 20px;
    padding-right: 5px;
    color: #b2b2b2;
}

.yoyaku_2F h5{
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
}

.yoyaku_2F .caution{
    border: 1px solid #4d4d4d;
    border-radius: 10px;
    padding: 30px;
    display: flex;
    align-items: center;
}

.yoyaku_2F .caution span{
    display: flex;
    flex-direction: column;
    font-weight: 700;
    white-space: nowrap;
    padding-right: 30px;
}

.yoyaku_2F .caution span img{
    padding-bottom: 10px;
}

.shinsei_flow{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 100px;
}

.shinsei_flow .container{
    max-width: 1040px;
}

.flow_step{
    display: flex;
}

.flow_step > div{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 260px;
    padding: 0 40px;
    position: relative;
}

.flow_step > div:after{
    content: "";
    display: inline-block;
    background-size:contain;
    background-position: center;
    background-repeat: no-repeat;
    width:28px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.flow_step01 > div:after{
    background-image: url(../images/flow_tri_g.png);
}

.flow_step02 > div:after{
    background-image: url(../images/flow_tri_b.png);
}


.flow_step > div:first-of-type:after{
    background: none;
}

.flow_step > div:first-of-type{
    border-left: 1px solid #000;
}

.flow_step > div:last-of-type{
    border-right: 1px solid #000;
}

.flow_step h4{
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5em;
    margin-bottom: 10px;
    height: 42px;
}

.flow_step01 h4{
    color: #31c5be;
}

.flow_step02 h4{
    color: #30a1ff;
}

.flow_step .note{
    font-size: 12px;
    line-height: 1.5em;
}

.flow_step .step_status{
    align-items: flex-end;
    justify-content: space-between;
    padding-top: 14px;
}

.flow_step .step{
    height: 45px;
    padding-right: 20px;
    flex-wrap: nowrap;
}

.flow_step .status{
    height: 20px;
    color: #808080;
    font-size: 20px;
    font-weight: 500;
    flex-wrap: nowrap;
}

.flow_step .status img{
    max-width: 20px;
}

.flow_step .step img:not(:last-of-type),
.flow_step .status img:not(:last-of-type){
    margin-right: 8px;
}

.flow_step .step img,
.flow_step .status img{
    height: 100%;
}

.flow_icon{
    display: flex;
    padding-top: 30px;
    padding-bottom: 50px;
}

.flow_icon span{
    display: flex;
    height: 20px;
    font-size: 12px;
    align-items: center;
}

.flow_icon span:not(:last-of-type){
    padding-right: 30px;
}

.flow_icon span img{
    max-width: 30px;
    height: 100%;
    padding-right: 10px;
}

.re_friendship .container > .row:not(:last-of-type){
    border-bottom: 1px solid #ddd;
}

.re_friendship h2.floor{
    color: #31c5be;
    margin-bottom: 30px;
}

.re_friendship h2 span{
    display: inline;
    padding-left: 10px;
}

.re_friendship table,
.re_friendship th,
.re_friendship td{
    border-collapse: collapse;
    border:1px solid #333;
}

.re_friendship th,
.re_friendship td{
    padding: 5px 10px;
    font-size: 14px;
}

.re_friendship th span{
    font-size: 12px;
    display: block;
    font-weight: normal;
}

.re_friendship td{
    text-align: center;
}

.re_friendship table{
    margin-right: 0;
    margin-left: auto;
}

.re_friendship .cap_left .note{
    display: block;
    font-size: 12px;
}

.re_friendship .cap_left .underline{
    text-decoration: underline;
}

.re_friendship .cap_left .note_important{
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: #d00000;
    background: linear-gradient(transparent 50%, #ffcccc 0%);
}
