@charset "UTF-8";		
		
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {		
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}	
body {
	line-height: 2;
	font-family: "Lucida Grande", "segoe UI", "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", Meiryo, Verdana, Arial, sans-serif;
	box-sizing: border-box;
	font-size: 17px;
	background-color: #FFF;
}		
		
ol, ul {		
	list-style: none;	
}		
body {		
	-webkit-text-size-adjust: none;	
}		
		
a {
    color: rgb(157,33,70);
    text-decoration: none;
}		
		
a:hover {		
    opacity: 0.8;		
}		
input,label {		
    display: none;		
}		
ul#links01 {
    display: flex;
}		
		
ul#links01 li {
    width: 20%;
    text-align: center;
}		
		
ul#links01 li a {
    text-decoration: none;
    color: rgba(157,33,70,0.5);
    font-size: 13px;
    line-height: 50px;
    display: block;
    font-weight: bold;
}		

header {
    background: rgba(157,33,70,0.2) url(../img/bright-squares.png);
}

.logo {
    width: 60px;
}

.header_inner {
    display: flex;
    max-width: 1290px;
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
}

nav.menu {flex: 1;}

.logo i {color: #FFF;background-color: rgb(157,33,70);padding: 7px 10px;font-size: 40px;}

ul#links01 li a:hover,ul#links01 li a:active {
    border-bottom: none;
    color: rgb(157,33,70);
}

.wrapper-top {
    max-width: 1290px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
    padding: 50px 20px 0;
}

.main_image {
    background: url(../img/main_image.jpg) top center no-repeat;
    background-size: cover;
    width: 100%;
    margin-bottom: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 140px 0;
}

.box {
    width: 23%;
    margin-bottom: 50px;
    background-color: #FFF;
    box-shadow: 0 0 3px #CCC;
}

.box img {
    width: 100%;
}

.box_inner {
    padding: 10px 20px 20px;
    color: #333;
}

.box_inner h2 {
    color: rgb(157,33,70);
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
}

.box_inner p {
    color: #333;
}

.main_image_inner h1 a {
    color: #FFF;
}

.main_image_inner {
    font-weight: bold;
    font-size: 24px;
    padding: 0 30px;
    line-height: 36px;
}

.color1 {
    background-color: rgba(157,33,70,0.05);
}

.content {
    max-width: 1290px;
    margin: 0 auto;
    color: rgba(157,33,70,0.7);
    padding-bottom: 50px;
}

.content p {
    margin-bottom: 30px;
    color: #333;
}

.content h1,.content h2 {
    font-weight: bold;
    text-align: center;
    font-size: 24px;
    margin-bottom: 50px;
}

.wrapper-middle {
    padding: 50px 20px 0;
}

.content img {
    float: left;
    margin: 0 20px 20px 0;
}

.content h3 {
    font-weight: bold;
    font-size: 20px;
    margin: 20px 0;
    border-left: 7px solid rgba(197,43,43);
    color: #333;
    padding: 7px 10px;
}

.color2 {
    background-color: rgba(157,33,70,0.3);
}

.box-wide {
    max-width: 1290px;
    margin: 0 auto 0;
    overflow: hidden;
    padding: 10px 0 50px;
    border-bottom: 1px dotted #999;
}

.box-wide img {
    float: left;
    margin-right: 20px;
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
}

.box-wide_inner h2 {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 10px;
    width: 100%;
}

.box-wide_inner p {
    width: 100%;
    color: #333;
}

.link {
    max-width: 1290px;
    margin: 0 auto;
    display: flex;
    flex-flow: row wrap;
}

.link aside {
    width: 50%;
    padding: 0 20px 50px;
    box-sizing: border-box;
}

.link aside h3 {
    font-weight: bold;
    border-bottom: 1px solid rgba(157,33,70,0.2);
    padding-bottom: 10px;
    margin-bottom: 10px;
    font-family: 'Montserrat', sans-serif;
}

footer p {
    font-size: 14px;
    text-align: center;
}

footer {
    padding: 40px 20px;
}

ul.breadcrumb {
    max-width: 1290px;
    margin: 0 auto;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
}

ul.breadcrumb li {
    display: inline-block;
    font-size: 14px;
}

ul.breadcrumb li:after {
    content: ">";
    margin: 0 0 0 5px;
}

ul.breadcrumb li:last-child:after {
    content: none;
}

.headline {
    width: 100%;
}

.headline h1 {
    font-weight: bold;
    text-align: center;
    font-size: 24px;
    margin-bottom: 50px;
    font-family: 'Montserrat', sans-serif;
}

@media screen and (max-width: 1280px) {		
.menu {		
	padding: 0;	
}		
		
.menu a {		
    display: block;		
    padding: 10px;		
    text-decoration: none;		
    color: #000;		
    line-height: 1;		
    border-top: 1px solid #00000017;		
}		
		
label {
    display: block;
    margin: 0;
    padding: 10px 5px;
    line-height: 1;
    color: rgb(157,33,70);
    cursor :pointer;
    font-size: 30px;
    text-align: right;
}		
		
.menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}		
		
.menu li {		
    max-height: 0;		
    overflow-y: hidden;		
    -webkit-transition: all 0.5s;		
    -moz-transition: all 0.5s;		
    -ms-transition: all 0.5s;		
    -o-transition: all 0.5s;		
    transition: all 0.5s;		
    border-right: none !important;		
}		
		
#menu_bar01:checked ~ #links01 li,		
#menu_bar02:checked ~ #links02 li {		
    max-height: 46px;		
    opacity: 1;		
    background-color: #FFF;		
}		
ul#links01 li {		
    text-align: center;		
    border-right: 1px solid #DDD;		
    width: 100%;		
    font-size: 14px;		
}		
ul#links01 {		
    display: initial;		
}		
ul#links01 li a {
    line-height: 20px;
    display: block;
    font-size: 14px;
}
ul.breadcrumb {
    padding: 0 20px;
}		
}		
@media screen and (max-width: 1024px) {		
.box {
    width: 32%;
    margin-bottom: 20px;
    background-color: #FFF;
    box-shadow: 0 0 3px #CCC;
}
.main_image {
    width: 66%;
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}
		
		
}

@media screen and (max-width: 768px) {		
		
		
		
		
}		
		
@media screen and (max-width: 480px) {		
.main_image {
    width: 100%;
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.main_image_inner {
    font-weight: bold;
    font-size: 24px;
    padding: 30px 30px;
    line-height: 36px;
}
.box {
    width: 100%;
    margin-bottom: 20px;
    background-color: #FFF;
    box-shadow: 0 0 3px #CCC;
}
.content img {
    float: none;
    margin: 0;
    width: 100%;
}
.box-wide img {
    float: none;
    margin: 0 auto 20px;
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
    display: table;
}
.link aside {
    width: 100%;
    padding: 0 20px 50px;
    box-sizing: border-box;
}
.main_image {
    padding: 50px 0;
}
}		
