@charset "utf-8";
/*=============================================================
 contents Layout
=============================================================*/
/*------------------------------------------------------------
 message
-------------------------------------------------------------*/
.message .ttl-h2-message-box{
	position: relative;
	color: #333;
	margin-bottom: 60px;
	height: 420px;
}
.message .ttl-h2-message-box:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(/group/img/message_p01_bg.png) 0 0 no-repeat;
    position: absolute;
    top: 122px;
    left: 30%;
}
.message .ttl-h2-message{
	position: absolute;
	top: 46%;
	left: 58px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	font-size: 27px;
	font-weight: 500;
	line-height: 1.6;
}
.message .ttl-h2-message-photo{position: absolute;}
.message .ttl-h2-message-bg{
	position: absolute;
	top: 120px;
	right:-48px;
	z-index: 3;
}
.message .ttl-h2-message>span.name{
	font-size: 16px;
	display: block;
	margin-top: 40px;
}
.message .ttl-h2-message>span.name>strong{font-size: 22px;}
.message p.name {
	text-align:right;
    margin-top:25px;
}
.message p.name span{font-size:20px;}

/* 202206 */
.message .ttl-h2-message-box2{
	position: relative;
    color: #333;
    margin-bottom: 60px;
    height: 147px;
    background: #eee;
}
.message .ttl-h2-message-box2:before{
position: absolute;
    content: "";
    border: 45px solid transparent;
    border-top: 45px solid #ca004c;
    border-left: 45px solid #ca004c;
    top: 0;
    left: 0;
}
.message .ttl-h2-message-box2 .ttl-h2-message-bg{
    bottom:-31px;	
}


@media only screen and (max-width:767px), only screen and (max-device-width:767px){
	.message .ttl-h2-message-box2:before{
		border-width:26px;
	}
	.message .ttl-h2-message-box2 .ttl-h2-message{
	 position:absolute;
	 top: 50%;
    left: 30px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
	margin-top: 0;
	width: 80%;
	}
	.message .ttl-h2-message-box2:after{
		position: absolute;
		content:"";
		display: block;
		top:-15px;
		right:0;
		width:30%;
		height:120%;
		background:url(/group/img/message_p01_bg2_sp.png) 80% 0 no-repeat;
		background-size:contain;
	}
}

/*------------------------------------------------------------
 philosophy
-------------------------------------------------------------*/
/* gray-box
-------------------------------------------------------------*/
.philosophy .philosophy-box{
	text-align: center;
	background-color: #f2f2f2;
	padding: 70px 30px;
	color: #333;
}
.philosophy .ttl-h3-philosophy>span{
	display: inline-block;
	position: relative;
	margin-top: 74px;
	color: #ca004c;
	font-size: 30px;
	font-weight: normal;
	letter-spacing: 0.2em;
	margin-bottom: 36px;
}
.philosophy .ttl-h3-philosophy:first-child>span{margin-top: 0;}
.philosophy .ttl-h3-philosophy>span:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -14px;
	display: inline-block;
	background-color: #ca004c;
	width: 32px;
	height: 1px;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translate(-50%);
}
.philosophy .ttl-h3-philosophy>span>span{font-size: 20px;}

.philosophy .ttl-h3-philosophy02{
	font-size: 36px;
	font-weight: normal;
	font-style: italic;
	letter-spacing: .2em;
}
.philosophy .ttl-sub-philosophy{
	font-size: 20px;
	letter-spacing: .2em;
	margin-bottom: 50px;
}
/*------------------------------------------------------------
 outline
-------------------------------------------------------------*/
.outline .outline-box{

}
.outline .outline-box>ul{
	text-align: center;
	margin-bottom: 19px;
}
.outline .outline-box>ul>li.aokihd{
	width: 490px;
	margin: 0 auto;
	letter-spacing: 0.14em;
	position: relative;
	background: #f2f2f2 url(../../shared/img/bg_ttl_2nd.png) repeat center center;
}
.outline .outline-box>ul>li.aokihd:before {
	position: absolute;
	content: "";
	border: 50px solid transparent;
	border-top: 50px solid #ca004c;
	border-left: 50px solid #ca004c;
	top: 0;
	left: 0;
	transition: all 0.5s ease 0s;
}
.outline .outline-box>ul>li.aokihd>.aokihd-box{
	display: block;
	padding: 10px;
}
.outline .outline-box>ul>li.aokihd h2{
	margin:18px 0 10px; 
	font-size: 23px;
}
.outline .outline-box>ul>li.aokihd>.aokihd-box>.txt{
	display: block;
	font-size: 14px;
	letter-spacing: 0;
	margin-bottom: 30px;
}
.outline .outline-box>ul>li .imgBox{
	display: block;
	background-color: #fff;
	padding: 10px 20px 36px;
}
.outline .outline-box>ul>li .imgBox>img{width: 46%;}

.outline .outline-box>ul>li:nth-child(2)>ul{
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-top: 37px;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li{
	/*202208追加*/
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	/*202208追加*/
	width: 320px;
	background-color: #eeeeee;
	padding: 10px;
	box-sizing: border-box;
}
.outline .outline-box>ul>li:nth-child(2)>ul:before{
	content: '';
	position: absolute;
	top: -37px;
	left: 50%;
	border-left: 1px solid #808080;
	width: 0;
	height: 37px;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li.fashion:before, .outline .outline-box>ul>li:nth-child(2)>ul>li.fashion:after,
.outline .outline-box>ul>li:last-child>ul>li.entertainment:before, .outline .outline-box>ul>li:last-child>ul>li.entertainment:after{
	content: '';
	position: absolute;
	top: -20px;
	right: 50%;
	border-top: 1px solid #808080;
	width: 338px;
	height: 20px;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li.fashion:after{
	left: 160px;
	border-left: 1px solid #808080;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li.entertainment:before{left:50%;}
.outline .outline-box>ul>li:nth-child(2)>ul>li.entertainment:after{
	left:50%;	
	border-right: 1px solid #808080;
}
.outline .outline-box li>.ttl-sub{
	display: block;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	padding: 3px 0;
	margin-bottom: 20px;
}
.outline .outline-box li.fashion>.ttl-sub{background-color: #055cac;}
.outline .outline-box li.anniversaire>.ttl-sub{background-color: #fb6694;}
.outline .outline-box li.entertainment>.ttl-sub{background-color: #ff7700;}
.outline .outline-box li>.imgBox>ul>li figcaption{margin-bottom: 10px;}
.outline .outline-box>ul>li:nth-child(2)>ul>li>h2{
	font-size: 20px;
	margin-bottom: 20px;
}
.outline .outline-box li.fashion>.imgBox,
.outline .outline-box li.anniversaire>.imgBox,
.outline .outline-box li.entertainment>.imgBox{
	min-height: 292px;
}
.outline .outline-box li>.imgBox>ul{
	font-size: 11px;
	letter-spacing: 0;
}
.outline .outline-box li.fashion>.imgBox>ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.outline .outline-box li.fashion>.imgBox>ul>li{
	width: 45%;
	margin-bottom: 40px;
}
.outline .outline-box li.fashion>.imgBox>ul>li:nth-child(3), .outline .outline-box li.fashion>.imgBox>ul>li:nth-child(4){margin-bottom: 0;}

.outline .outline-box li.fashion>.imgBox>ul>li img{width: 70%;}

.outline .outline-box li.anniversaire>.imgBox>ul>li{margin-top: 40px;}
.outline .outline-box li.anniversaire>.imgBox>ul>li img{width: 60%;}

.outline .outline-box li.entertainment>.imgBox>ul{
	display: flex;
	flex-wrap: wrap;
}
.outline .outline-box li.fashion>.imgBox>ul>li:last-child{width: 100%;}

.outline .outline-box li.fashion>.imgBox>ul>li:last-child>figure{
	margin: 0 auto;
	width: 50%;
}
.outline .outline-box li.entertainment>.imgBox>ul>li:first-child{margin-bottom: 40px;}
.outline .outline-box li.entertainment>.imgBox>ul>li{width: 50%;}
.outline .outline-box li.entertainment>.imgBox>ul>li img{width: 60%;}

.outline .multiColumn2 ul{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.outline .multiColumn2 ul li{
	width: 49%;
}
.outline .multiColumn2 ul li a{
    position: relative;
    display: block;
    padding: 18px 20px 18px 40px;
    font-size: 16px;
    color: #ca004c;
    font-weight: bold;
    background: #eaeaea;
    text-decoration: none;
}
.outline .multiColumn2 ul li a:hover{
    text-decoration: underline;
}
.outline .multiColumn2 ul li a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 20px;
    margin-top: -5px;
    display: inline-block;
    vertical-align: middle;
    width: 8px;
    height: 11px;
    background: url("/group/img/icon_arr02.png") center center no-repeat;
    background-size: auto;
    background-size: contain;
}
.outline .multiColumn2 ul li p{
    margin-top: 5px;
    font-size: 14px;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:767px), only screen and (max-device-width:767px){
/*------------------------------------------------------------
 message
-------------------------------------------------------------*/
.message .ttl-h2-message-box{
	position: relative;
	margin-bottom: 0;
	height: auto;
}
.message .ttl-h2-message-box:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background: url(/group/img/message_p01_bg2_sp.png) 0 0 no-repeat;
	background-size: 90%;
	position: absolute;
	top: 17px;
	left: 6%;
}
.message .ttl-h2-message{
	position: static;
	top: 45%;
	left: 45%;
	/* transform: translate(-50%, -50%); */
	/* width: 75%; */
	margin-top: 70px;
	font-size: 16px;
}
.message .ttl-h2-message-photo{position: static;}
.message .ttl-h2-message-bg{/* display: none; */}
.message .ttl-h2-message>span.name{
	font-size: 12px;
	margin-top: 10px;
}
.message .ttl-h2-message>span.name>strong{font-size: 18px;}
.message p.name span{font-size:16px;}
/*------------------------------------------------------------
 philosophy
-------------------------------------------------------------*/
/* gray-box
-------------------------------------------------------------*/
.philosophy .philosophy-box{padding: 50px 30px;}
.philosophy .philosophy-box p{
	font-size: 16px;
	line-height: 1.8;
}
.philosophy .ttl-h3-philosophy>span{
	margin-top: 74px;
	font-size: 22px;
	margin-bottom: 32px;
}
.philosophy .ttl-h3-philosophy>span>span{font-size: 16px;}

.philosophy .ttl-h3-philosophy02{
	font-size: 24px;
	letter-spacing: .1em;
}
.philosophy .ttl-sub-philosophy{
	font-size:18px;
	margin-bottom: 30px;
}
/*------------------------------------------------------------
 outline
-------------------------------------------------------------*/
.outline .outline-box>ul>li.aokihd{width: 100%;}
.outline .outline-box>ul>li.aokihd:before {
	border: 40px solid transparent;
	border-top: 40px solid #ca004c;
	border-left: 40px solid #ca004c;
}
.outline .outline-box>ul>li.aokihd h2{font-size: 18px;}
.outline .outline-box>ul>li.aokihd>.aokihd-box>.txt{margin-bottom: 20px;}
.outline .outline-box>ul>li .imgBox>img{width: 54%;}	
.outline .outline-box>ul>li:nth-child(2)>ul{display:block;}
.outline .outline-box>ul>li:nth-child(2)>ul>li{
	width: auto;
	margin-left: 40px;
	margin-bottom: 30px;
}
.outline .outline-box>ul>li:nth-child(2)>ul:before{
	content: '';
	position: absolute;
	top: -37px;
	left: 10px;;
	border-left: 1px solid #808080;
	width: 0;
	height: 75%;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li.fashion:before, .outline .outline-box>ul>li:nth-child(2)>ul>li.fashion:after,
.outline .outline-box>ul>li:last-child>ul>li.entertainment:before, .outline .outline-box>ul>li:last-child>ul>li.entertainment:after{
	content: none;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li{position: relative;}
.outline .outline-box>ul>li:nth-child(2)>ul>li.fashion:before, .outline .outline-box>ul>li:nth-child(2)>ul>li.anniversaire:before, .outline .outline-box>ul>li:nth-child(2)>ul>li.entertainment:before{
	content: '';
	position: absolute;
	top: 50%;
	left: -30px;
	border-top: 1px solid #808080;
	width: 30px;
}
.outline .outline-box>ul>li:nth-child(2)>ul>li.entertainment:after{
	content: '';
	position: absolute;
	top: 0;
	left: -30px;
	height: 50%;
	border-left: 1px solid #808080;
	border-right: none;
	border-top:none;
}
.outline .multiColumn2 ul li{
	width: 100%;
}
	
	
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones (portrait)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:440px){

}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones small (portrait)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:374px){

}
